From 996d70308fa9a903ce7370d3f767ae2eaba7a265 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Mon, 22 May 2023 16:11:54 -0600 Subject: [PATCH 001/406] start some layer table updates --- src/assets/t9n/layer-table/resources.json | 1 + src/assets/t9n/layer-table/resources_en.json | 1 + src/components/layer-table/layer-table.tsx | 71 ++++++++++++++++++-- src/demos/crowdsource-manager.html | 4 ++ 4 files changed, 71 insertions(+), 6 deletions(-) diff --git a/src/assets/t9n/layer-table/resources.json b/src/assets/t9n/layer-table/resources.json index e68edb092..fa5a58d02 100644 --- a/src/assets/t9n/layer-table/resources.json +++ b/src/assets/t9n/layer-table/resources.json @@ -3,6 +3,7 @@ "delete": "Delete", "editMultiple": "Edit Multiple", "exportCSV": "Export to CSV", + "filters": "Filters", "more": "More", "selectAll": "Select all", "showSelected": "Show selected", diff --git a/src/assets/t9n/layer-table/resources_en.json b/src/assets/t9n/layer-table/resources_en.json index e68edb092..fa5a58d02 100644 --- a/src/assets/t9n/layer-table/resources_en.json +++ b/src/assets/t9n/layer-table/resources_en.json @@ -3,6 +3,7 @@ "delete": "Delete", "editMultiple": "Edit Multiple", "exportCSV": "Export to CSV", + "filters": "Filters", "more": "More", "selectAll": "Select all", "showSelected": "Show selected", diff --git a/src/components/layer-table/layer-table.tsx b/src/components/layer-table/layer-table.tsx index 3a597b74b..078d8baec 100644 --- a/src/components/layer-table/layer-table.tsx +++ b/src/components/layer-table/layer-table.tsx @@ -211,40 +211,95 @@ export class LayerTable {
this._zoom()} > {this._translations.zoom} this._editMultiple()} > {this._translations.editMultiple} this._filter()} + > + {this._translations.filters} + + this._delete()} > {this._translations.delete} + + + this._selectAll(true)} + textLabel={this._translations.selectAll} + value={this._translations.selectAll} + /> + this._selectAll(true)} + textLabel="Natural Resources" + value="Natural Resources" + /> + this._selectAll(true)} + textLabel="Natural Resources" + value="Natural Resources" + /> + this._selectAll(true)} + textLabel="Natural Resources" + value="Natural Resources" + /> + this._selectAll(true)} + textLabel="Natural Resources" + value="Natural Resources" + /> + this._selectAll(true)} + textLabel="Natural Resources" + value="Natural Resources" + /> + + + this._selectAll(true)} + > {this._translations.selectAll} @@ -339,6 +394,10 @@ export class LayerTable { this._selectedIndexes = []; } + protected _filter(): void { + alert("do whatever this button is supposed to do") + } + /** * Select all rows that are not currently selectd * diff --git a/src/demos/crowdsource-manager.html b/src/demos/crowdsource-manager.html index a5415233f..8a31d4613 100644 --- a/src/demos/crowdsource-manager.html +++ b/src/demos/crowdsource-manager.html @@ -42,6 +42,10 @@ function addValues() { const demo = document.getElementById("demo"); demo.mapInfos = [{ + id: "4fa949c89bb04ecb8a9f5ad119448333", + name: "CS TIL DATA" + }, + { id: "863e4f6f2a7840db896cc1b1606d552d", name: "Name of map 1" }, { From 6de7220d24c6a2a3a00c6b3f611828079198d51a Mon Sep 17 00:00:00 2001 From: John Hauck Date: Wed, 24 May 2023 12:09:22 -0600 Subject: [PATCH 002/406] start update to map layer picker --- src/components.d.ts | 6 +++ src/components/crowdsource-manager/readme.md | 4 +- src/components/layer-table/layer-table.tsx | 3 ++ src/components/layer-table/readme.md | 6 ++- .../map-layer-picker/map-layer-picker.tsx | 38 ++++++++++++++----- src/components/map-layer-picker/readme.md | 19 ++++++---- src/components/map-select-tools/readme.md | 2 +- src/components/public-notification/readme.md | 2 +- src/components/refine-selection/readme.md | 2 +- 9 files changed, 59 insertions(+), 23 deletions(-) diff --git a/src/components.d.ts b/src/components.d.ts index c00dc6c51..193d52bdd 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -196,6 +196,8 @@ export namespace Components { * esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html */ "mapView": __esri.MapView; + "placeholderIcon": string; + "scale": "s" | "m" | "l"; /** * string[]: list of layer ids that have been selected by the end user */ @@ -204,6 +206,7 @@ export namespace Components { * SelectionMode: "single" | "multi" Should the component support selection against a single layer or multiple layers. */ "selectionMode": SelectionMode; + "type": "select" | "combobox"; } interface MapSearch { /** @@ -1099,6 +1102,8 @@ declare namespace LocalJSX { * Emitted on demand when a layer is selected */ "onLayerSelectionChange"?: (event: MapLayerPickerCustomEvent) => void; + "placeholderIcon"?: string; + "scale"?: "s" | "m" | "l"; /** * string[]: list of layer ids that have been selected by the end user */ @@ -1107,6 +1112,7 @@ declare namespace LocalJSX { * SelectionMode: "single" | "multi" Should the component support selection against a single layer or multiple layers. */ "selectionMode"?: SelectionMode; + "type"?: "select" | "combobox"; } interface MapSearch { /** diff --git a/src/components/crowdsource-manager/readme.md b/src/components/crowdsource-manager/readme.md index 00b014732..e0c7307d6 100644 --- a/src/components/crowdsource-manager/readme.md +++ b/src/components/crowdsource-manager/readme.md @@ -65,6 +65,8 @@ graph TD; layer-table --> edit-record-modal layer-table --> map-layer-picker layer-table --> calcite-button + layer-table --> calcite-combobox + layer-table --> calcite-combobox-item layer-table --> calcite-split-button layer-table --> calcite-dropdown-group layer-table --> calcite-dropdown-item @@ -80,8 +82,8 @@ graph TD; calcite-input --> calcite-icon map-layer-picker --> calcite-select map-layer-picker --> calcite-combobox - map-layer-picker --> calcite-combobox-item map-layer-picker --> calcite-option + map-layer-picker --> calcite-combobox-item calcite-select --> calcite-icon calcite-combobox --> calcite-chip calcite-combobox --> calcite-icon diff --git a/src/components/layer-table/layer-table.tsx b/src/components/layer-table/layer-table.tsx index 078d8baec..b7f1f9a19 100644 --- a/src/components/layer-table/layer-table.tsx +++ b/src/components/layer-table/layer-table.tsx @@ -207,6 +207,9 @@ export class LayerTable { this._layerSelectionChanged(evt)} + placeholderIcon='layers' + scale='l' + type='combobox' />
edit-record-modal layer-table --> map-layer-picker layer-table --> calcite-button + layer-table --> calcite-combobox + layer-table --> calcite-combobox-item layer-table --> calcite-split-button layer-table --> calcite-dropdown-group layer-table --> calcite-dropdown-item @@ -60,8 +64,8 @@ graph TD; calcite-input --> calcite-icon map-layer-picker --> calcite-select map-layer-picker --> calcite-combobox - map-layer-picker --> calcite-combobox-item map-layer-picker --> calcite-option + map-layer-picker --> calcite-combobox-item calcite-select --> calcite-icon calcite-combobox --> calcite-chip calcite-combobox --> calcite-icon diff --git a/src/components/map-layer-picker/map-layer-picker.tsx b/src/components/map-layer-picker/map-layer-picker.tsx index 7be5360f0..93b262f46 100644 --- a/src/components/map-layer-picker/map-layer-picker.tsx +++ b/src/components/map-layer-picker/map-layer-picker.tsx @@ -49,6 +49,8 @@ export class MapLayerPicker { */ @Prop() mapView: __esri.MapView; + @Prop() placeholderIcon = ""; + /** * string[]: list of layer ids that have been selected by the end user */ @@ -61,6 +63,10 @@ export class MapLayerPicker { */ @Prop({ mutable: true, reflect: true }) selectionMode: SelectionMode = "single"; + @Prop() scale: "s" | "m" | "l" = "m"; + + @Prop() type: "select" | "combobox" = "select"; + //-------------------------------------------------------------------------- // // State (internal) @@ -147,7 +153,7 @@ export class MapLayerPicker {
- {this.selectionMode === "multi" ? this._getCombobox() : this._getSelect()} + {this.selectionMode === "multi" || this.type === "combobox" ? this._getCombobox() : this._getSelect()}
@@ -173,8 +179,9 @@ export class MapLayerPicker { label="" onCalciteSelectChange={(evt) => this._layerSelectionChange(evt)} ref={(el) => { this._layerElement = el }} + scale={this.scale} > - {this._addMapLayersOptions()} + {this._addSelectMapLayersOptions()} ); } @@ -191,9 +198,11 @@ export class MapLayerPicker { this._layerSelectionChange(evt)} + placeholder-icon={this.placeholderIcon} + scale={this.scale} selection-mode={this.selectionMode} > - {this._addMapLayersOptions()} + {this._addComboboxMapLayersOptions()} ); } @@ -203,17 +212,26 @@ export class MapLayerPicker { * * @returns Array of ComboBox items or Select options for the ids of the layers */ - _addMapLayersOptions(): VNode[] { + _addSelectMapLayersOptions(): VNode[] { + return this.layerIds.reduce((prev, cur) => { + if (state.managedLayers.indexOf(state.layerNameHash[cur]) < 0 && (this.enabledLayerIds.length > 0 ? this.enabledLayerIds.indexOf(cur) > -1 : true)) { + prev.push( + this.selectedLayerIds.indexOf(cur) > -1 ? + () : + () + ); + } + return prev; + }, []); + } + + _addComboboxMapLayersOptions(): VNode[] { return this.layerIds.reduce((prev, cur) => { if (state.managedLayers.indexOf(state.layerNameHash[cur]) < 0 && (this.enabledLayerIds.length > 0 ? this.enabledLayerIds.indexOf(cur) > -1 : true)) { prev.push( - this.selectionMode === "multi" && this.selectedLayerIds.indexOf(cur) > -1 ? + this.selectedLayerIds.indexOf(cur) > -1 ? () : - this.selectionMode === "multi" ? - () : - this.selectedLayerIds.indexOf(cur) > -1 ? - () : - () + () ); } return prev; diff --git a/src/components/map-layer-picker/readme.md b/src/components/map-layer-picker/readme.md index ea26b8764..de207a9b1 100644 --- a/src/components/map-layer-picker/readme.md +++ b/src/components/map-layer-picker/readme.md @@ -7,12 +7,15 @@ ## Properties -| Property | Attribute | Description | Type | Default | -| ------------------ | ---------------- | --------------------------------------------------------------------------------------------------------------------- | --------------------- | ----------- | -| `enabledLayerIds` | -- | string[]: Optional list of enabled layer ids If empty all layers will be available | `string[]` | `[]` | -| `mapView` | -- | esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html | `MapView` | `undefined` | -| `selectedLayerIds` | -- | string[]: list of layer ids that have been selected by the end user | `string[]` | `[]` | -| `selectionMode` | `selection-mode` | SelectionMode: "single" \| "multi" Should the component support selection against a single layer or multiple layers. | `"multi" \| "single"` | `"single"` | +| Property | Attribute | Description | Type | Default | +| ------------------ | ------------------ | --------------------------------------------------------------------------------------------------------------------- | ------------------------ | ----------- | +| `enabledLayerIds` | -- | string[]: Optional list of enabled layer ids If empty all layers will be available | `string[]` | `[]` | +| `mapView` | -- | esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html | `MapView` | `undefined` | +| `placeholderIcon` | `placeholder-icon` | | `string` | `""` | +| `scale` | `scale` | | `"l" \| "m" \| "s"` | `"m"` | +| `selectedLayerIds` | -- | string[]: list of layer ids that have been selected by the end user | `string[]` | `[]` | +| `selectionMode` | `selection-mode` | SelectionMode: "single" \| "multi" Should the component support selection against a single layer or multiple layers. | `"multi" \| "single"` | `"single"` | +| `type` | `type` | | `"combobox" \| "select"` | `"select"` | ## Events @@ -34,16 +37,16 @@ - calcite-select - calcite-combobox -- calcite-combobox-item - calcite-option +- calcite-combobox-item ### Graph ```mermaid graph TD; map-layer-picker --> calcite-select map-layer-picker --> calcite-combobox - map-layer-picker --> calcite-combobox-item map-layer-picker --> calcite-option + map-layer-picker --> calcite-combobox-item calcite-select --> calcite-icon calcite-combobox --> calcite-chip calcite-combobox --> calcite-icon diff --git a/src/components/map-select-tools/readme.md b/src/components/map-select-tools/readme.md index 813b502f0..c08d01e40 100644 --- a/src/components/map-select-tools/readme.md +++ b/src/components/map-select-tools/readme.md @@ -106,8 +106,8 @@ graph TD; calcite-slider --> calcite-graph map-layer-picker --> calcite-select map-layer-picker --> calcite-combobox - map-layer-picker --> calcite-combobox-item map-layer-picker --> calcite-option + map-layer-picker --> calcite-combobox-item calcite-combobox --> calcite-chip calcite-combobox --> calcite-icon calcite-chip --> calcite-icon diff --git a/src/components/public-notification/readme.md b/src/components/public-notification/readme.md index fe8fb5ace..49321471b 100644 --- a/src/components/public-notification/readme.md +++ b/src/components/public-notification/readme.md @@ -125,8 +125,8 @@ graph TD; calcite-slider --> calcite-graph map-layer-picker --> calcite-select map-layer-picker --> calcite-combobox - map-layer-picker --> calcite-combobox-item map-layer-picker --> calcite-option + map-layer-picker --> calcite-combobox-item calcite-combobox --> calcite-chip calcite-combobox --> calcite-icon calcite-chip --> calcite-icon diff --git a/src/components/refine-selection/readme.md b/src/components/refine-selection/readme.md index e4c39545f..6eb3e68f1 100644 --- a/src/components/refine-selection/readme.md +++ b/src/components/refine-selection/readme.md @@ -58,8 +58,8 @@ graph TD; refine-selection --> calcite-list-item map-layer-picker --> calcite-select map-layer-picker --> calcite-combobox - map-layer-picker --> calcite-combobox-item map-layer-picker --> calcite-option + map-layer-picker --> calcite-combobox-item calcite-select --> calcite-icon calcite-combobox --> calcite-chip calcite-combobox --> calcite-icon From d9e5090bb744c437317b3802a10bd5f3e3d34346 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Thu, 25 May 2023 11:58:56 -0600 Subject: [PATCH 003/406] remove multi select --- src/components.d.ts | 10 +----- .../map-layer-picker/map-layer-picker.tsx | 36 ++++++------------- src/components/map-layer-picker/readme.md | 17 +++++---- .../test/map-layer-picker.spec.tsx | 26 -------------- .../map-select-tools/map-select-tools.tsx | 2 -- .../refine-selection/refine-selection.tsx | 1 - src/utils/interfaces.ts | 2 -- 7 files changed, 20 insertions(+), 74 deletions(-) diff --git a/src/components.d.ts b/src/components.d.ts index 193d52bdd..cb95e018c 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -5,7 +5,7 @@ * It contains typing information for all components that exist in this project. */ import { HTMLStencilElement, JSXBase } from "@stencil/core/internal"; -import { DistanceUnit, EDrawMode, EExpandType, IExportInfos, IInfoCardValues, IInventoryItem, IMapInfo, IMediaCardValues, ISearchConfiguration, ISearchResult, ISelectionSet, ISketchGraphicsChange, ISolutionSpatialReferenceInfo, ISpatialRefRepresentation, IValueChange, SelectionMode } from "./utils/interfaces"; +import { DistanceUnit, EDrawMode, EExpandType, IExportInfos, IInfoCardValues, IInventoryItem, IMapInfo, IMediaCardValues, ISearchConfiguration, ISearchResult, ISelectionSet, ISketchGraphicsChange, ISolutionSpatialReferenceInfo, ISpatialRefRepresentation, IValueChange } from "./utils/interfaces"; import { UserSession } from "@esri/solution-common"; export namespace Components { interface AddRecordModal { @@ -202,10 +202,6 @@ export namespace Components { * string[]: list of layer ids that have been selected by the end user */ "selectedLayerIds": string[]; - /** - * SelectionMode: "single" | "multi" Should the component support selection against a single layer or multiple layers. - */ - "selectionMode": SelectionMode; "type": "select" | "combobox"; } interface MapSearch { @@ -1108,10 +1104,6 @@ declare namespace LocalJSX { * string[]: list of layer ids that have been selected by the end user */ "selectedLayerIds"?: string[]; - /** - * SelectionMode: "single" | "multi" Should the component support selection against a single layer or multiple layers. - */ - "selectionMode"?: SelectionMode; "type"?: "select" | "combobox"; } interface MapSearch { diff --git a/src/components/map-layer-picker/map-layer-picker.tsx b/src/components/map-layer-picker/map-layer-picker.tsx index 93b262f46..17c903aea 100644 --- a/src/components/map-layer-picker/map-layer-picker.tsx +++ b/src/components/map-layer-picker/map-layer-picker.tsx @@ -16,7 +16,6 @@ import { Component, Element, Event, EventEmitter, Host, h, Prop, State, VNode, Watch } from "@stencil/core"; import { getMapLayerHash, getMapLayerIds } from "../../utils/mapViewUtils"; -import { SelectionMode } from "../../utils/interfaces"; import state from "../../utils/publicNotificationStore"; @Component({ @@ -56,13 +55,6 @@ export class MapLayerPicker { */ @Prop({ mutable: true }) selectedLayerIds: string[] = []; - /** - * SelectionMode: "single" | "multi" - * - * Should the component support selection against a single layer or multiple layers. - */ - @Prop({ mutable: true, reflect: true }) selectionMode: SelectionMode = "single"; - @Prop() scale: "s" | "m" | "l" = "m"; @Prop() type: "select" | "combobox" = "select"; @@ -87,7 +79,7 @@ export class MapLayerPicker { /** * HTMLCalciteSelectElement: The html element for selecting layers */ - protected _layerElement: HTMLCalciteSelectElement; + protected _layerElement: HTMLCalciteSelectElement | HTMLCalciteComboboxElement; //-------------------------------------------------------------------------- // @@ -103,9 +95,7 @@ export class MapLayerPicker { async watchStateHandler(newValue: boolean, oldValue: boolean): Promise { if (newValue !== oldValue) { await this._setLayers(); - if (this.selectionMode === "single") { - this.layerSelectionChange.emit([this.layerIds[0]]); - } + this.layerSelectionChange.emit([this.layerIds[0]]); } } @@ -138,7 +128,7 @@ export class MapLayerPicker { */ async componentWillLoad(): Promise { await this._setLayers(); - if (this.selectionMode === "single" && (this.layerIds.length > 0 || this.selectedLayerIds.length === 1)) { + if (this.layerIds.length > 0 || this.selectedLayerIds.length === 1) { this.layerSelectionChange.emit( this.selectedLayerIds.length === 1 ? [this.selectedLayerIds[0]] : [this.layerIds[0]] ); @@ -153,7 +143,7 @@ export class MapLayerPicker {
- {this.selectionMode === "multi" || this.type === "combobox" ? this._getCombobox() : this._getSelect()} + {this.type === "combobox" ? this._getCombobox() : this._getSelect()}
@@ -177,7 +167,7 @@ export class MapLayerPicker { return ( this._layerSelectionChange(evt)} + onCalciteSelectChange={() => this._layerSelectionChange()} ref={(el) => { this._layerElement = el }} scale={this.scale} > @@ -197,10 +187,11 @@ export class MapLayerPicker { return ( this._layerSelectionChange(evt)} + onCalciteComboboxChange={() => this._layerSelectionChange()} placeholder-icon={this.placeholderIcon} + ref={(el) => { this._layerElement = el }} scale={this.scale} - selection-mode={this.selectionMode} + selection-mode="single" > {this._addComboboxMapLayersOptions()} @@ -230,7 +221,7 @@ export class MapLayerPicker { if (state.managedLayers.indexOf(state.layerNameHash[cur]) < 0 && (this.enabledLayerIds.length > 0 ? this.enabledLayerIds.indexOf(cur) > -1 : true)) { prev.push( this.selectedLayerIds.indexOf(cur) > -1 ? - () : + () : () ); } @@ -267,13 +258,8 @@ export class MapLayerPicker { * * @returns Promise when the operation has completed */ - _layerSelectionChange(evt: CustomEvent): void { - this.selectedLayerIds = this.selectionMode === "single" ? - [this._layerElement.value] : evt.detail?.selectedItems.map( - (item: HTMLCalciteComboboxItemElement) => { - return item.value; - } - ) || []; + _layerSelectionChange(): void { + this.selectedLayerIds = Array.isArray(this._layerElement.value) ? this._layerElement.value : [this._layerElement.value]; this.layerSelectionChange.emit(this.selectedLayerIds); } } diff --git a/src/components/map-layer-picker/readme.md b/src/components/map-layer-picker/readme.md index de207a9b1..0428c9092 100644 --- a/src/components/map-layer-picker/readme.md +++ b/src/components/map-layer-picker/readme.md @@ -7,15 +7,14 @@ ## Properties -| Property | Attribute | Description | Type | Default | -| ------------------ | ------------------ | --------------------------------------------------------------------------------------------------------------------- | ------------------------ | ----------- | -| `enabledLayerIds` | -- | string[]: Optional list of enabled layer ids If empty all layers will be available | `string[]` | `[]` | -| `mapView` | -- | esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html | `MapView` | `undefined` | -| `placeholderIcon` | `placeholder-icon` | | `string` | `""` | -| `scale` | `scale` | | `"l" \| "m" \| "s"` | `"m"` | -| `selectedLayerIds` | -- | string[]: list of layer ids that have been selected by the end user | `string[]` | `[]` | -| `selectionMode` | `selection-mode` | SelectionMode: "single" \| "multi" Should the component support selection against a single layer or multiple layers. | `"multi" \| "single"` | `"single"` | -| `type` | `type` | | `"combobox" \| "select"` | `"select"` | +| Property | Attribute | Description | Type | Default | +| ------------------ | ------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------ | ----------- | +| `enabledLayerIds` | -- | string[]: Optional list of enabled layer ids If empty all layers will be available | `string[]` | `[]` | +| `mapView` | -- | esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html | `MapView` | `undefined` | +| `placeholderIcon` | `placeholder-icon` | | `string` | `""` | +| `scale` | `scale` | | `"l" \| "m" \| "s"` | `"m"` | +| `selectedLayerIds` | -- | string[]: list of layer ids that have been selected by the end user | `string[]` | `[]` | +| `type` | `type` | | `"combobox" \| "select"` | `"select"` | ## Events diff --git a/src/components/map-layer-picker/test/map-layer-picker.spec.tsx b/src/components/map-layer-picker/test/map-layer-picker.spec.tsx index 18531401c..06b499c39 100644 --- a/src/components/map-layer-picker/test/map-layer-picker.spec.tsx +++ b/src/components/map-layer-picker/test/map-layer-picker.spec.tsx @@ -101,30 +101,4 @@ xdescribe('map-layer-picker', () => { `); }); - - it('renders multi selection mode', async () => { - const page = await newSpecPage({ - autoApplyChanges: true, - components: [MapLayerPicker], - template: () => ( - - ), - }); - expect(page.root).toEqualHtml(` - -
-
- - - - -
-
-
- `); - }); }); diff --git a/src/components/map-select-tools/map-select-tools.tsx b/src/components/map-select-tools/map-select-tools.tsx index a91271d45..8ccade898 100644 --- a/src/components/map-select-tools/map-select-tools.tsx +++ b/src/components/map-select-tools/map-select-tools.tsx @@ -569,7 +569,6 @@ export class MapSelectTools { mapView={this.mapView} onLayerSelectionChange={(evt) => { void this._layerSelectionChange(evt) }} selectedLayerIds={this.layerViews.map(l => l.layer.id)} - selectionMode={"single"} />
@@ -645,7 +644,6 @@ export class MapSelectTools { mapView={this.mapView} onLayerSelectionChange={(evt) => this._inputLayerSelectionChange(evt)} selectedLayerIds={this.selectLayerView ? [this.selectLayerView.layer.id] : this.selectionSet ? [this.selectionSet.layerView.layer.id] : []} - selectionMode={"single"} /> diff --git a/src/components/refine-selection/refine-selection.tsx b/src/components/refine-selection/refine-selection.tsx index 2de3a1bba..b9d088f95 100644 --- a/src/components/refine-selection/refine-selection.tsx +++ b/src/components/refine-selection/refine-selection.tsx @@ -213,7 +213,6 @@ export class RefineSelection { onLayerSelectionChange={(evt) => { void this._layerSelectionChange(evt) }} ref={(el) => { this._layerPicker = el }} selectedLayerIds={[this._refineLayer.layer.id]} - selectionMode={"single"} /> Date: Tue, 30 May 2023 16:55:05 -0600 Subject: [PATCH 004/406] update word wrap --- src/components/public-notification/public-notification.css | 4 ++++ src/components/public-notification/public-notification.tsx | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/src/components/public-notification/public-notification.css b/src/components/public-notification/public-notification.css index ae1b719cc..bc72395b2 100644 --- a/src/components/public-notification/public-notification.css +++ b/src/components/public-notification/public-notification.css @@ -224,3 +224,7 @@ --calcite-ui-foreground-2: var(--calcite-ui-brand-hover); --calcite-ui-text-1: var(--calcite-ui-text-inverse) } + +.word-wrap-anywhere { + word-wrap: anywhere; +} diff --git a/src/components/public-notification/public-notification.tsx b/src/components/public-notification/public-notification.tsx index 5b3898847..97ac9b8f8 100644 --- a/src/components/public-notification/public-notification.tsx +++ b/src/components/public-notification/public-notification.tsx @@ -1156,7 +1156,7 @@ export class PublicNotification { ): VNode { return ( -
{message}
+
{message}
); } From 721f72a128c2b342ce7a00bcc631548a5dccbc16 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Tue, 30 May 2023 17:13:01 -0600 Subject: [PATCH 005/406] set for map-select-tools and refine remove btn --- .../public-notification/public-notification.tsx | 9 +++++---- src/components/refine-selection/refine-selection.css | 4 ++++ src/components/refine-selection/refine-selection.tsx | 4 ++-- 3 files changed, 11 insertions(+), 6 deletions(-) diff --git a/src/components/public-notification/public-notification.tsx b/src/components/public-notification/public-notification.tsx index 97ac9b8f8..1ee3069db 100644 --- a/src/components/public-notification/public-notification.tsx +++ b/src/components/public-notification/public-notification.tsx @@ -665,7 +665,7 @@ export class PublicNotification { return ( {this._getLabel(this._translations.myLists)} - {this._getNotice(hasSets ? this._translations.listHasSetsTip : this._translations.selectLayerAndAdd, "padding-sides-1 padding-bottom-1")} + {this._getNotice(hasSets ? this._translations.listHasSetsTip : this._translations.selectLayerAndAdd, "padding-sides-1 padding-bottom-1", "word-wrap-anywhere")} {hasSets ? this._getSelectionSetList() : (this._getOnboardingImage())}
{ this._setPageType(EPageType.SELECT) }} width="full">{this._translations.add} @@ -852,7 +852,7 @@ export class PublicNotification { return ( {this._getLabel(this._translations.stepTwoFull, true)} - {this._getNotice(noticeText)} + {this._getNotice(noticeText, "padding-1", "word-wrap-anywhere")}
-
{message}
+
{message}
); } diff --git a/src/components/refine-selection/refine-selection.css b/src/components/refine-selection/refine-selection.css index bf2805874..95d94ed0c 100644 --- a/src/components/refine-selection/refine-selection.css +++ b/src/components/refine-selection/refine-selection.css @@ -108,3 +108,7 @@ html[dir="rtl"] .main-label { .font-weight-500 { font-weight: 500; } + +.word-wrap-anywhere { + word-wrap: anywhere; +} diff --git a/src/components/refine-selection/refine-selection.tsx b/src/components/refine-selection/refine-selection.tsx index 2de3a1bba..45c8290b6 100644 --- a/src/components/refine-selection/refine-selection.tsx +++ b/src/components/refine-selection/refine-selection.tsx @@ -232,7 +232,7 @@ export class RefineSelection { > this._setSelectionMode(ESelectionMode.ADD)} value={ESelectionMode.ADD} > @@ -242,7 +242,7 @@ export class RefineSelection { this._setSelectionMode(ESelectionMode.REMOVE)} value={ESelectionMode.REMOVE} > From 0a57eabf83e8790990f8ad15a5c70dd5e1032676 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Tue, 30 May 2023 19:10:05 -0600 Subject: [PATCH 006/406] update version --- CHANGELOG.md | 5 ++++- package-lock.json | 4 ++-- package.json | 2 +- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 68aebb767..49870e21c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,8 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm ## [Unreleased] +## [0.5.16] - May 30th 2023 + ## [0.5.15] - May 24th 2023 ## [0.5.14] - May 23rd 2023 @@ -163,4 +165,5 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm [0.5.13]: https://github.com/Esri/solution.js/compare/v0.5.12...v0.5.13 "v0.5.13" [0.5.14]: https://github.com/Esri/solution.js/compare/v0.5.13...v0.5.14 "v0.5.14" [0.5.15]: https://github.com/Esri/solution.js/compare/v0.5.14...v0.5.15 "v0.5.15" -[Unreleased]: https://github.com/Esri/solution.js/compare/v0.5.15...HEAD "Unreleased Changes" +[0.5.16]: https://github.com/Esri/solution.js/compare/v0.5.15...v0.5.16 "v0.5.16" +[Unreleased]: https://github.com/Esri/solution.js/compare/v0.5.16...HEAD "Unreleased Changes" diff --git a/package-lock.json b/package-lock.json index 0cbe7c460..adfec79fa 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@esri/solutions-components", - "version": "0.5.15", + "version": "0.5.16", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@esri/solutions-components", - "version": "0.5.15", + "version": "0.5.16", "license": "Apache-2.0", "dependencies": { "@esri/hub-common": "^12.37.1", diff --git a/package.json b/package.json index 5746e5426..c649e6b4b 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@esri/solutions-components", - "version": "0.5.15", + "version": "0.5.16", "description": "Web Components for Esri's Solutions Applications", "main": "dist/index.cjs.js", "module": "dist/index.js", From 372492bd62dd2000499e7cd4dc1da346da353297 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Tue, 30 May 2023 19:13:30 -0600 Subject: [PATCH 007/406] 0.5.16 was already on npm --- CHANGELOG.md | 7 +++++-- package.json | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 49870e21c..d864fd898 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,7 +6,9 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm ## [Unreleased] -## [0.5.16] - May 30th 2023 +## [0.5.17] - May 30th 2023 + +## [0.5.16] - May 25th 2023 ## [0.5.15] - May 24th 2023 @@ -166,4 +168,5 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm [0.5.14]: https://github.com/Esri/solution.js/compare/v0.5.13...v0.5.14 "v0.5.14" [0.5.15]: https://github.com/Esri/solution.js/compare/v0.5.14...v0.5.15 "v0.5.15" [0.5.16]: https://github.com/Esri/solution.js/compare/v0.5.15...v0.5.16 "v0.5.16" -[Unreleased]: https://github.com/Esri/solution.js/compare/v0.5.16...HEAD "Unreleased Changes" +[0.5.17]: https://github.com/Esri/solution.js/compare/v0.5.16...v0.5.17 "v0.5.17" +[Unreleased]: https://github.com/Esri/solution.js/compare/v0.5.17...HEAD "Unreleased Changes" diff --git a/package.json b/package.json index c649e6b4b..d09c518e4 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@esri/solutions-components", - "version": "0.5.16", + "version": "0.5.17", "description": "Web Components for Esri's Solutions Applications", "main": "dist/index.cjs.js", "module": "dist/index.js", From 46038300fc964f3278c07643fd7e7c568f9c5ab5 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Tue, 30 May 2023 19:14:05 -0600 Subject: [PATCH 008/406] update package lock --- package-lock.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/package-lock.json b/package-lock.json index adfec79fa..015cd1d19 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@esri/solutions-components", - "version": "0.5.16", + "version": "0.5.17", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@esri/solutions-components", - "version": "0.5.16", + "version": "0.5.17", "license": "Apache-2.0", "dependencies": { "@esri/hub-common": "^12.37.1", From 52c373ab1e51e54ece49a56838188c25dcc4d728 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Wed, 31 May 2023 09:47:43 -0600 Subject: [PATCH 009/406] list changes --- src/components/crowdsource-manager/readme.md | 16 ++--- src/components/layer-table/layer-table.css | 4 ++ src/components/layer-table/layer-table.tsx | 63 +++----------------- src/components/layer-table/readme.md | 4 -- src/components/map-card/map-card.tsx | 6 +- src/components/map-card/readme.md | 16 +++-- src/demos/crowdsource-manager.html | 8 +-- 7 files changed, 38 insertions(+), 79 deletions(-) diff --git a/src/components/crowdsource-manager/readme.md b/src/components/crowdsource-manager/readme.md index e0c7307d6..9113fbc39 100644 --- a/src/components/crowdsource-manager/readme.md +++ b/src/components/crowdsource-manager/readme.md @@ -48,8 +48,8 @@ graph TD; map-card --> calcite-icon map-card --> calcite-tooltip map-card --> calcite-block - map-card --> calcite-pick-list - map-card --> calcite-pick-list-item + map-card --> calcite-list + map-card --> calcite-list-item calcite-action-bar --> calcite-action-group calcite-action-group --> calcite-action-menu calcite-action-group --> calcite-action @@ -59,14 +59,16 @@ graph TD; calcite-block --> calcite-loader calcite-block --> calcite-action-menu calcite-handle --> calcite-icon - calcite-pick-list-item --> calcite-icon - calcite-pick-list-item --> calcite-action + calcite-list --> calcite-scrim + calcite-list --> calcite-filter + calcite-filter --> calcite-input + calcite-input --> calcite-progress + calcite-input --> calcite-icon + calcite-list-item --> calcite-icon layer-table --> calcite-panel layer-table --> edit-record-modal layer-table --> map-layer-picker layer-table --> calcite-button - layer-table --> calcite-combobox - layer-table --> calcite-combobox-item layer-table --> calcite-split-button layer-table --> calcite-dropdown-group layer-table --> calcite-dropdown-item @@ -78,8 +80,6 @@ graph TD; calcite-modal --> calcite-icon calcite-button --> calcite-loader calcite-button --> calcite-icon - calcite-input --> calcite-progress - calcite-input --> calcite-icon map-layer-picker --> calcite-select map-layer-picker --> calcite-combobox map-layer-picker --> calcite-option diff --git a/src/components/layer-table/layer-table.css b/src/components/layer-table/layer-table.css index 14ed9a931..4c07326f0 100644 --- a/src/components/layer-table/layer-table.css +++ b/src/components/layer-table/layer-table.css @@ -29,3 +29,7 @@ .table-border { border: 1px solid var(--calcite-ui-border-2); } + +.w-400 { + width: 400px; +} diff --git a/src/components/layer-table/layer-table.tsx b/src/components/layer-table/layer-table.tsx index b7f1f9a19..12bea9ed7 100644 --- a/src/components/layer-table/layer-table.tsx +++ b/src/components/layer-table/layer-table.tsx @@ -204,13 +204,15 @@ export class LayerTable { const multiFeaturesSelected = this._selectedIndexes.length > 1; return (
- this._layerSelectionChanged(evt)} - placeholderIcon='layers' - scale='l' - type='combobox' - /> +
+ this._layerSelectionChanged(evt)} + placeholderIcon='layers' + scale='l' + type='combobox' + /> +
- - this._selectAll(true)} - textLabel={this._translations.selectAll} - value={this._translations.selectAll} - /> - this._selectAll(true)} - textLabel="Natural Resources" - value="Natural Resources" - /> - this._selectAll(true)} - textLabel="Natural Resources" - value="Natural Resources" - /> - this._selectAll(true)} - textLabel="Natural Resources" - value="Natural Resources" - /> - this._selectAll(true)} - textLabel="Natural Resources" - value="Natural Resources" - /> - this._selectAll(true)} - textLabel="Natural Resources" - value="Natural Resources" - /> - - - {this._translations.selectAll} diff --git a/src/components/layer-table/readme.md b/src/components/layer-table/readme.md index 331030051..b8057b8a1 100644 --- a/src/components/layer-table/readme.md +++ b/src/components/layer-table/readme.md @@ -24,8 +24,6 @@ - [edit-record-modal](../edit-record-modal) - [map-layer-picker](../map-layer-picker) - calcite-button -- calcite-combobox -- calcite-combobox-item - calcite-split-button - calcite-dropdown-group - calcite-dropdown-item @@ -37,8 +35,6 @@ graph TD; layer-table --> edit-record-modal layer-table --> map-layer-picker layer-table --> calcite-button - layer-table --> calcite-combobox - layer-table --> calcite-combobox-item layer-table --> calcite-split-button layer-table --> calcite-dropdown-group layer-table --> calcite-dropdown-item diff --git a/src/components/map-card/map-card.tsx b/src/components/map-card/map-card.tsx index 4ac7439ec..06771a8bc 100644 --- a/src/components/map-card/map-card.tsx +++ b/src/components/map-card/map-card.tsx @@ -348,10 +348,10 @@ export class MapCard { const listClass = show ? "map-list" : "display-none"; return (
- + {this.mapInfos.map(mapInfo => { return ( - this._webMapSelected(mapInfo.id)} selected={mapInfo.id === this._loadedId} @@ -359,7 +359,7 @@ export class MapCard { /> ) })} - +
); } diff --git a/src/components/map-card/readme.md b/src/components/map-card/readme.md index a96afea70..bf4fe3f54 100644 --- a/src/components/map-card/readme.md +++ b/src/components/map-card/readme.md @@ -35,8 +35,8 @@ - calcite-icon - calcite-tooltip - calcite-block -- calcite-pick-list -- calcite-pick-list-item +- calcite-list +- calcite-list-item ### Graph ```mermaid @@ -47,8 +47,8 @@ graph TD; map-card --> calcite-icon map-card --> calcite-tooltip map-card --> calcite-block - map-card --> calcite-pick-list - map-card --> calcite-pick-list-item + map-card --> calcite-list + map-card --> calcite-list-item calcite-action-bar --> calcite-action-group calcite-action-group --> calcite-action-menu calcite-action-group --> calcite-action @@ -65,8 +65,12 @@ graph TD; calcite-block --> calcite-action-menu calcite-scrim --> calcite-loader calcite-handle --> calcite-icon - calcite-pick-list-item --> calcite-icon - calcite-pick-list-item --> calcite-action + calcite-list --> calcite-scrim + calcite-list --> calcite-filter + calcite-filter --> calcite-input + calcite-input --> calcite-progress + calcite-input --> calcite-icon + calcite-list-item --> calcite-icon crowdsource-manager --> map-card style map-card fill:#f9f,stroke:#333,stroke-width:4px ``` diff --git a/src/demos/crowdsource-manager.html b/src/demos/crowdsource-manager.html index 8a31d4613..b5e78d761 100644 --- a/src/demos/crowdsource-manager.html +++ b/src/demos/crowdsource-manager.html @@ -41,16 +41,16 @@ From 85d7dc069a9748fced0325933448fa3ae0bbc044 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Wed, 31 May 2023 09:56:12 -0600 Subject: [PATCH 010/406] update strings --- .../t9n/map-select-tools/resources_ar.json | 4 ++-- .../t9n/map-select-tools/resources_bg.json | 4 ++-- .../t9n/map-select-tools/resources_bs.json | 4 ++-- .../t9n/map-select-tools/resources_ca.json | 4 ++-- .../t9n/map-select-tools/resources_cs.json | 4 ++-- .../t9n/map-select-tools/resources_da.json | 4 ++-- .../t9n/map-select-tools/resources_de.json | 4 ++-- .../t9n/map-select-tools/resources_el.json | 4 ++-- .../t9n/map-select-tools/resources_es.json | 4 ++-- .../t9n/map-select-tools/resources_et.json | 4 ++-- .../t9n/map-select-tools/resources_fi.json | 4 ++-- .../t9n/map-select-tools/resources_fr.json | 4 ++-- .../t9n/map-select-tools/resources_he.json | 4 ++-- .../t9n/map-select-tools/resources_hr.json | 4 ++-- .../t9n/map-select-tools/resources_hu.json | 4 ++-- .../t9n/map-select-tools/resources_id.json | 4 ++-- .../t9n/map-select-tools/resources_it.json | 4 ++-- .../t9n/map-select-tools/resources_ja.json | 4 ++-- .../t9n/map-select-tools/resources_ko.json | 4 ++-- .../t9n/map-select-tools/resources_lt.json | 4 ++-- .../t9n/map-select-tools/resources_lv.json | 4 ++-- .../t9n/map-select-tools/resources_nb.json | 4 ++-- .../t9n/map-select-tools/resources_nl.json | 4 ++-- .../t9n/map-select-tools/resources_pl.json | 4 ++-- .../t9n/map-select-tools/resources_pt-BR.json | 4 ++-- .../t9n/map-select-tools/resources_pt-PT.json | 4 ++-- .../t9n/map-select-tools/resources_ro.json | 4 ++-- .../t9n/map-select-tools/resources_ru.json | 4 ++-- .../t9n/map-select-tools/resources_sk.json | 4 ++-- .../t9n/map-select-tools/resources_sl.json | 4 ++-- .../t9n/map-select-tools/resources_sr.json | 4 ++-- .../t9n/map-select-tools/resources_sv.json | 4 ++-- .../t9n/map-select-tools/resources_th.json | 4 ++-- .../t9n/map-select-tools/resources_tr.json | 4 ++-- .../t9n/map-select-tools/resources_uk.json | 4 ++-- .../t9n/map-select-tools/resources_vi.json | 4 ++-- .../t9n/map-select-tools/resources_zh-CN.json | 4 ++-- .../t9n/map-select-tools/resources_zh-HK.json | 4 ++-- .../t9n/map-select-tools/resources_zh-TW.json | 4 ++-- .../t9n/public-notification/resources_ar.json | 20 +++++++++---------- .../t9n/public-notification/resources_bg.json | 20 +++++++++---------- .../t9n/public-notification/resources_bs.json | 20 +++++++++---------- .../t9n/public-notification/resources_ca.json | 20 +++++++++---------- .../t9n/public-notification/resources_cs.json | 20 +++++++++---------- .../t9n/public-notification/resources_da.json | 20 +++++++++---------- .../t9n/public-notification/resources_de.json | 20 +++++++++---------- .../t9n/public-notification/resources_el.json | 20 +++++++++---------- .../t9n/public-notification/resources_es.json | 20 +++++++++---------- .../t9n/public-notification/resources_et.json | 20 +++++++++---------- .../t9n/public-notification/resources_fi.json | 20 +++++++++---------- .../t9n/public-notification/resources_fr.json | 20 +++++++++---------- .../t9n/public-notification/resources_he.json | 20 +++++++++---------- .../t9n/public-notification/resources_hr.json | 20 +++++++++---------- .../t9n/public-notification/resources_hu.json | 20 +++++++++---------- .../t9n/public-notification/resources_id.json | 20 +++++++++---------- .../t9n/public-notification/resources_it.json | 20 +++++++++---------- .../t9n/public-notification/resources_ja.json | 20 +++++++++---------- .../t9n/public-notification/resources_ko.json | 20 +++++++++---------- .../t9n/public-notification/resources_lt.json | 20 +++++++++---------- .../t9n/public-notification/resources_lv.json | 20 +++++++++---------- .../t9n/public-notification/resources_nb.json | 20 +++++++++---------- .../t9n/public-notification/resources_nl.json | 20 +++++++++---------- .../t9n/public-notification/resources_pl.json | 20 +++++++++---------- .../public-notification/resources_pt-BR.json | 20 +++++++++---------- .../public-notification/resources_pt-PT.json | 20 +++++++++---------- .../t9n/public-notification/resources_ro.json | 20 +++++++++---------- .../t9n/public-notification/resources_ru.json | 20 +++++++++---------- .../t9n/public-notification/resources_sk.json | 20 +++++++++---------- .../t9n/public-notification/resources_sl.json | 20 +++++++++---------- .../t9n/public-notification/resources_sr.json | 20 +++++++++---------- .../t9n/public-notification/resources_sv.json | 20 +++++++++---------- .../t9n/public-notification/resources_th.json | 20 +++++++++---------- .../t9n/public-notification/resources_tr.json | 20 +++++++++---------- .../t9n/public-notification/resources_uk.json | 20 +++++++++---------- .../t9n/public-notification/resources_vi.json | 20 +++++++++---------- .../public-notification/resources_zh-CN.json | 20 +++++++++---------- .../public-notification/resources_zh-HK.json | 20 +++++++++---------- .../public-notification/resources_zh-TW.json | 20 +++++++++---------- .../t9n/refine-selection/resources_ar.json | 14 ++++++------- .../t9n/refine-selection/resources_bg.json | 14 ++++++------- .../t9n/refine-selection/resources_bs.json | 14 ++++++------- .../t9n/refine-selection/resources_ca.json | 14 ++++++------- .../t9n/refine-selection/resources_cs.json | 14 ++++++------- .../t9n/refine-selection/resources_da.json | 14 ++++++------- .../t9n/refine-selection/resources_de.json | 14 ++++++------- .../t9n/refine-selection/resources_el.json | 14 ++++++------- .../t9n/refine-selection/resources_es.json | 14 ++++++------- .../t9n/refine-selection/resources_et.json | 14 ++++++------- .../t9n/refine-selection/resources_fi.json | 14 ++++++------- .../t9n/refine-selection/resources_fr.json | 14 ++++++------- .../t9n/refine-selection/resources_he.json | 14 ++++++------- .../t9n/refine-selection/resources_hr.json | 14 ++++++------- .../t9n/refine-selection/resources_hu.json | 14 ++++++------- .../t9n/refine-selection/resources_id.json | 14 ++++++------- .../t9n/refine-selection/resources_it.json | 14 ++++++------- .../t9n/refine-selection/resources_ja.json | 14 ++++++------- .../t9n/refine-selection/resources_ko.json | 14 ++++++------- .../t9n/refine-selection/resources_lt.json | 14 ++++++------- .../t9n/refine-selection/resources_lv.json | 14 ++++++------- .../t9n/refine-selection/resources_nb.json | 14 ++++++------- .../t9n/refine-selection/resources_nl.json | 14 ++++++------- .../t9n/refine-selection/resources_pl.json | 14 ++++++------- .../t9n/refine-selection/resources_pt-BR.json | 14 ++++++------- .../t9n/refine-selection/resources_pt-PT.json | 14 ++++++------- .../t9n/refine-selection/resources_ro.json | 14 ++++++------- .../t9n/refine-selection/resources_ru.json | 14 ++++++------- .../t9n/refine-selection/resources_sk.json | 14 ++++++------- .../t9n/refine-selection/resources_sl.json | 14 ++++++------- .../t9n/refine-selection/resources_sr.json | 14 ++++++------- .../t9n/refine-selection/resources_sv.json | 14 ++++++------- .../t9n/refine-selection/resources_th.json | 14 ++++++------- .../t9n/refine-selection/resources_tr.json | 14 ++++++------- .../t9n/refine-selection/resources_uk.json | 14 ++++++------- .../t9n/refine-selection/resources_vi.json | 14 ++++++------- .../t9n/refine-selection/resources_zh-CN.json | 14 ++++++------- .../t9n/refine-selection/resources_zh-HK.json | 14 ++++++------- .../t9n/refine-selection/resources_zh-TW.json | 14 ++++++------- 117 files changed, 741 insertions(+), 741 deletions(-) diff --git a/src/assets/t9n/map-select-tools/resources_ar.json b/src/assets/t9n/map-select-tools/resources_ar.json index e20040fdd..2d2bef463 100644 --- a/src/assets/t9n/map-select-tools/resources_ar.json +++ b/src/assets/t9n/map-select-tools/resources_ar.json @@ -10,6 +10,6 @@ "sketchLayer": "طبقة المخطط", "useLayerFeatures": "استخدام معالم الطبقة", "inputLayer": "الطبقة المدخلة", - "useLayerFeaturesTooltip": "بيت_Choose a layer and use the sketch tools to point to features that can be used as a boundary to select intersecting features from the input layer__________________________________________________________________________لاحقة.", - "useSearchDistanceTootip": "بيت_Define a distance for a search buffer that will select input features that intersect the buffer_________________________________________________لاحقة." + "useLayerFeaturesTooltip": "اختر طبقة واستخدم أدوات الرسم للإشارة إلى المعالم التي يمكن استخدامها كحدود لتحديد المعالم المتقاطعة من طبقة الإدخال.", + "useSearchDistanceTootip": "حدد مسافة لنطاق البحث والتي ستحدد المعالم المدخلة التي تتقاطع مع النطاق." } diff --git a/src/assets/t9n/map-select-tools/resources_bg.json b/src/assets/t9n/map-select-tools/resources_bg.json index ebd44d346..b9c37f4fb 100644 --- a/src/assets/t9n/map-select-tools/resources_bg.json +++ b/src/assets/t9n/map-select-tools/resources_bg.json @@ -10,6 +10,6 @@ "sketchLayer": "Слой със скица", "useLayerFeatures": "Използване на обекти на слоя", "inputLayer": "Входен слой", - "useLayerFeaturesTooltip": "й_Choose a layer and use the sketch tools to point to features that can be used as a boundary to select intersecting features from the input layer__________________________________________________________________________й.", - "useSearchDistanceTootip": "й_Define a distance for a search buffer that will select input features that intersect the buffer_________________________________________________й." + "useLayerFeaturesTooltip": "Изберете слой и използвайте инструментите за скициране, за да посочите обекти, които могат да се използват като граница за селекция на пресичащи се обекти от входния слой.", + "useSearchDistanceTootip": "Дефиниране на разстояние за буфер за търсене, при което се селектират входни обекти, които пресичат буфера." } diff --git a/src/assets/t9n/map-select-tools/resources_bs.json b/src/assets/t9n/map-select-tools/resources_bs.json index 00933e6a9..efddbe37a 100644 --- a/src/assets/t9n/map-select-tools/resources_bs.json +++ b/src/assets/t9n/map-select-tools/resources_bs.json @@ -10,6 +10,6 @@ "sketchLayer": "Sloj skice", "useLayerFeatures": "Upotrijebi geoobjekte sloja", "inputLayer": "Unesi sloj", - "useLayerFeaturesTooltip": "Č_Choose a layer and use the sketch tools to point to features that can be used as a boundary to select intersecting features from the input layer__________________________________________________________________________ž.", - "useSearchDistanceTootip": "Č_Define a distance for a search buffer that will select input features that intersect the buffer_________________________________________________ž." + "useLayerFeaturesTooltip": "Odaberite sloj i pomoću alata za skiciranje pokažite na geoobjekte koji se mogu koristiti kao granice za odabir geoobjekata koji se presijecaju iz ulaznog sloja.", + "useSearchDistanceTootip": "Definirajte udaljenost za pojas pretraživanja koji će odabrati ulazne geoobjekte koji sijeku pojas." } diff --git a/src/assets/t9n/map-select-tools/resources_ca.json b/src/assets/t9n/map-select-tools/resources_ca.json index c24467751..6487b2d9d 100644 --- a/src/assets/t9n/map-select-tools/resources_ca.json +++ b/src/assets/t9n/map-select-tools/resources_ca.json @@ -10,6 +10,6 @@ "sketchLayer": "Capa d'esbós", "useLayerFeatures": "Utilitza entitats de la capa", "inputLayer": "Capa d'entrada", - "useLayerFeaturesTooltip": "ó_Choose a layer and use the sketch tools to point to features that can be used as a boundary to select intersecting features from the input layer__________________________________________________________________________à.", - "useSearchDistanceTootip": "ó_Define a distance for a search buffer that will select input features that intersect the buffer_________________________________________________à." + "useLayerFeaturesTooltip": "Trieu una capa i feu servir les eines d'esbós per apuntar a entitats que es poden fer servir com a límits per seleccionar les entitats intersecants de la capa d'entrada.", + "useSearchDistanceTootip": "Definiu la distància d'una àrea d'influència de cerca que seleccionarà les entitats d'entrada que intersequen amb l'àrea d'influència." } diff --git a/src/assets/t9n/map-select-tools/resources_cs.json b/src/assets/t9n/map-select-tools/resources_cs.json index 55b5053aa..8a200808a 100644 --- a/src/assets/t9n/map-select-tools/resources_cs.json +++ b/src/assets/t9n/map-select-tools/resources_cs.json @@ -10,6 +10,6 @@ "sketchLayer": "Vrstva skici", "useLayerFeatures": "Použít prvky vrstvy", "inputLayer": "Vstupní vrstva", - "useLayerFeaturesTooltip": "Ř_Choose a layer and use the sketch tools to point to features that can be used as a boundary to select intersecting features from the input layer__________________________________________________________________________ů.", - "useSearchDistanceTootip": "Ř_Define a distance for a search buffer that will select input features that intersect the buffer_________________________________________________ů." + "useLayerFeaturesTooltip": "Zvolte vrstvu a pomocí nástrojů skicování označte prvky, které lze použít jako hranici pro výběr protínajících prvků ze vstupní vrstvy.", + "useSearchDistanceTootip": "Definujte vzdálenost pro vyhledávací obalovou zónu, pomocí níž lze vybrat vstupní prvky, které tuto obalovou zónu protínají." } diff --git a/src/assets/t9n/map-select-tools/resources_da.json b/src/assets/t9n/map-select-tools/resources_da.json index 17395d29e..fce6e777b 100644 --- a/src/assets/t9n/map-select-tools/resources_da.json +++ b/src/assets/t9n/map-select-tools/resources_da.json @@ -10,6 +10,6 @@ "sketchLayer": "Skitselag", "useLayerFeatures": "Brug lagobjekter", "inputLayer": "Input-lag", - "useLayerFeaturesTooltip": "ø_Choose a layer and use the sketch tools to point to features that can be used as a boundary to select intersecting features from the input layer__________________________________________________________________________å.", - "useSearchDistanceTootip": "ø_Define a distance for a search buffer that will select input features that intersect the buffer_________________________________________________å." + "useLayerFeaturesTooltip": "Vælg et lag, og brug skitseværktøjerne til at pege på objekter, der kan bruges som en grænse til at vælge gennemskærende objekter fra inputlaget.", + "useSearchDistanceTootip": "Definer en afstand til en søgebuffer, som vil vælge de inputobjekter, der gennemskærer bufferen." } diff --git a/src/assets/t9n/map-select-tools/resources_de.json b/src/assets/t9n/map-select-tools/resources_de.json index 84f206b94..3f98f7feb 100644 --- a/src/assets/t9n/map-select-tools/resources_de.json +++ b/src/assets/t9n/map-select-tools/resources_de.json @@ -10,6 +10,6 @@ "sketchLayer": "Skizzen-Layer", "useLayerFeatures": "Layer-Features verwenden", "inputLayer": "Eingabe-Layer", - "useLayerFeaturesTooltip": "ä_Choose a layer and use the sketch tools to point to features that can be used as a boundary to select intersecting features from the input layer__________________________________________________________________________Ü.", - "useSearchDistanceTootip": "ä_Define a distance for a search buffer that will select input features that intersect the buffer_________________________________________________Ü." + "useLayerFeaturesTooltip": "Wählen Sie einen Layer aus, und verwenden Sie die Skizzenwerkzeuge, um auf Features zu zeigen, die als Grenze verwendet werden können, um überschneidende Features aus dem Eingabe-Layer auszuwählen.", + "useSearchDistanceTootip": "Definieren Sie einen Abstand für einen Suchpuffer zur Auswahl von Eingabe-Features, die den Puffer überschneiden." } diff --git a/src/assets/t9n/map-select-tools/resources_el.json b/src/assets/t9n/map-select-tools/resources_el.json index 6ab99e287..55b01815e 100644 --- a/src/assets/t9n/map-select-tools/resources_el.json +++ b/src/assets/t9n/map-select-tools/resources_el.json @@ -10,6 +10,6 @@ "sketchLayer": "Θεματικό επίπεδο σχεδίασης", "useLayerFeatures": "Χρήση στοιχείων θεματικών επιπέδων", "inputLayer": "Θεματικό επίπεδο εισόδου", - "useLayerFeaturesTooltip": "Đ_Choose a layer and use the sketch tools to point to features that can be used as a boundary to select intersecting features from the input layer__________________________________________________________________________ớ.", - "useSearchDistanceTootip": "Đ_Define a distance for a search buffer that will select input features that intersect the buffer_________________________________________________ớ." + "useLayerFeaturesTooltip": "Επιλέξτε ένα θεματικό επίπεδο και χρησιμοποιήστε τα εργαλεία σχεδίασης για να υποδείξετε χαρακτηριστικά που μπορούν να χρησιμοποιηθούν ως όριο για την επιλογή τεμνόμενων χαρακτηριστικών από το θεματικό επίπεδο εισόδου.", + "useSearchDistanceTootip": "Καθορίστε μια απόσταση για μία προσωρινή αναζήτηση που θα επιλέξει χαρακτηριστικά εισόδου που τέμνουν την προσωρινή." } diff --git a/src/assets/t9n/map-select-tools/resources_es.json b/src/assets/t9n/map-select-tools/resources_es.json index a6b18d2a2..2e13c89e8 100644 --- a/src/assets/t9n/map-select-tools/resources_es.json +++ b/src/assets/t9n/map-select-tools/resources_es.json @@ -10,6 +10,6 @@ "sketchLayer": "Capa de boceto", "useLayerFeatures": "Usar entidades de capa", "inputLayer": "Capa de entrada", - "useLayerFeaturesTooltip": "á_Choose a layer and use the sketch tools to point to features that can be used as a boundary to select intersecting features from the input layer__________________________________________________________________________Ó.", - "useSearchDistanceTootip": "á_Define a distance for a search buffer that will select input features that intersect the buffer_________________________________________________Ó." + "useLayerFeaturesTooltip": "Elija una capa y utilice la herramienta de bosquejo para señalar las entidades que se pueden utilizar como límites con el fin de seleccionar entidades intersecantes de la capa de entrada.", + "useSearchDistanceTootip": "Defina una distancia para la zona de influencia de búsqueda que seleccionará las entidades de entrada que cortan la zona de influencia." } diff --git a/src/assets/t9n/map-select-tools/resources_et.json b/src/assets/t9n/map-select-tools/resources_et.json index ba095dc47..8b98b3c22 100644 --- a/src/assets/t9n/map-select-tools/resources_et.json +++ b/src/assets/t9n/map-select-tools/resources_et.json @@ -10,6 +10,6 @@ "sketchLayer": "Visandikiht", "useLayerFeatures": "Kasuta kihi objekte", "inputLayer": "Sisendkiht", - "useLayerFeaturesTooltip": "Š_Choose a layer and use the sketch tools to point to features that can be used as a boundary to select intersecting features from the input layer__________________________________________________________________________ä.", - "useSearchDistanceTootip": "Š_Define a distance for a search buffer that will select input features that intersect the buffer_________________________________________________ä." + "useLayerFeaturesTooltip": "Valige kiht ja kasutage visandustööriistu, et osutada objektidele, mida saab kasutada piirina lõikuvate objektide valimiseks sisendkihilt.", + "useSearchDistanceTootip": "Määrake otsingupuhvri kaugus, millega valitakse puhvriga lõikuvad sisendobjektid." } diff --git a/src/assets/t9n/map-select-tools/resources_fi.json b/src/assets/t9n/map-select-tools/resources_fi.json index 2fb8751e8..b45266af8 100644 --- a/src/assets/t9n/map-select-tools/resources_fi.json +++ b/src/assets/t9n/map-select-tools/resources_fi.json @@ -10,6 +10,6 @@ "sketchLayer": "Luonnoskarttataso", "useLayerFeatures": "Käytä karttatason kohteita", "inputLayer": "Lähtöaineiston karttataso", - "useLayerFeaturesTooltip": "Å_Choose a layer and use the sketch tools to point to features that can be used as a boundary to select intersecting features from the input layer__________________________________________________________________________ö.", - "useSearchDistanceTootip": "Å_Define a distance for a search buffer that will select input features that intersect the buffer_________________________________________________ö." + "useLayerFeaturesTooltip": "Valitse leikkaavia kohteita lähtöaineiston karttatasosta valitsemalla karttataso ja käyttämällä luonnostyökaluja, joilla voidaan osoittaa rajana käytettäviin kohteisiin.", + "useSearchDistanceTootip": "Määritä etäisyys hakupuskurille, joka valitsee puskurin leikkaavat lähtöaineiston kohteet." } diff --git a/src/assets/t9n/map-select-tools/resources_fr.json b/src/assets/t9n/map-select-tools/resources_fr.json index 4ffc8f33a..98c991daa 100644 --- a/src/assets/t9n/map-select-tools/resources_fr.json +++ b/src/assets/t9n/map-select-tools/resources_fr.json @@ -10,6 +10,6 @@ "sketchLayer": "Couche de dessin", "useLayerFeatures": "Utiliser des entités de la couche", "inputLayer": "Couche en entrée", - "useLayerFeaturesTooltip": "æ_Choose a layer and use the sketch tools to point to features that can be used as a boundary to select intersecting features from the input layer__________________________________________________________________________Â.", - "useSearchDistanceTootip": "æ_Define a distance for a search buffer that will select input features that intersect the buffer_________________________________________________Â." + "useLayerFeaturesTooltip": "Choisir une couche et utiliser les outils de dessin afin de désigner les entités qui peuvent être utilisées comme limites pour sélectionner les entités d’intersection dans la couche en entrée.", + "useSearchDistanceTootip": "Définir une distance pour une zone tampon de recherche qui servira à sélectionner les entités en entrée qui intersectent la zone tampon." } diff --git a/src/assets/t9n/map-select-tools/resources_he.json b/src/assets/t9n/map-select-tools/resources_he.json index 8b23df8eb..03703391c 100644 --- a/src/assets/t9n/map-select-tools/resources_he.json +++ b/src/assets/t9n/map-select-tools/resources_he.json @@ -10,6 +10,6 @@ "sketchLayer": "שכבת שרטוט", "useLayerFeatures": "השתמש בישויות שכבה", "inputLayer": "שכבת קלט", - "useLayerFeaturesTooltip": "כן_Choose a layer and use the sketch tools to point to features that can be used as a boundary to select intersecting features from the input layer__________________________________________________________________________ש.", - "useSearchDistanceTootip": "כן_Define a distance for a search buffer that will select input features that intersect the buffer_________________________________________________ש." + "useLayerFeaturesTooltip": "בחר שכבה והשתמש בכלי הסקיצה כדי להצביע על ישויות שיכולות לשמש כגבול לצורך בחירת ישויות מצטלבות מתוך שכבת הקלט.", + "useSearchDistanceTootip": "הגדר מרחק לכל חיץ חיפוש שישמש לבחירת ישויות קלט המצטלבות עם החיץ." } diff --git a/src/assets/t9n/map-select-tools/resources_hr.json b/src/assets/t9n/map-select-tools/resources_hr.json index 00933e6a9..efddbe37a 100644 --- a/src/assets/t9n/map-select-tools/resources_hr.json +++ b/src/assets/t9n/map-select-tools/resources_hr.json @@ -10,6 +10,6 @@ "sketchLayer": "Sloj skice", "useLayerFeatures": "Upotrijebi geoobjekte sloja", "inputLayer": "Unesi sloj", - "useLayerFeaturesTooltip": "Č_Choose a layer and use the sketch tools to point to features that can be used as a boundary to select intersecting features from the input layer__________________________________________________________________________ž.", - "useSearchDistanceTootip": "Č_Define a distance for a search buffer that will select input features that intersect the buffer_________________________________________________ž." + "useLayerFeaturesTooltip": "Odaberite sloj i pomoću alata za skiciranje pokažite na geoobjekte koji se mogu koristiti kao granice za odabir geoobjekata koji se presijecaju iz ulaznog sloja.", + "useSearchDistanceTootip": "Definirajte udaljenost za pojas pretraživanja koji će odabrati ulazne geoobjekte koji sijeku pojas." } diff --git a/src/assets/t9n/map-select-tools/resources_hu.json b/src/assets/t9n/map-select-tools/resources_hu.json index 5e158070c..f34477032 100644 --- a/src/assets/t9n/map-select-tools/resources_hu.json +++ b/src/assets/t9n/map-select-tools/resources_hu.json @@ -10,6 +10,6 @@ "sketchLayer": "Vázlat réteg", "useLayerFeatures": "Réteg vektoros elemek használata", "inputLayer": "Bemenő réteg", - "useLayerFeaturesTooltip": "í_Choose a layer and use the sketch tools to point to features that can be used as a boundary to select intersecting features from the input layer__________________________________________________________________________ő.", - "useSearchDistanceTootip": "í_Define a distance for a search buffer that will select input features that intersect the buffer_________________________________________________ő." + "useLayerFeaturesTooltip": "Válasszon réteget, és a vázlateszközök használatával jelölje ki azokat a vektoros elemeket, amelyek a bemeneti réteg határaiként vagy metszéspontjaiként használhatók.", + "useSearchDistanceTootip": "Határozzon meg egy távolságot a keresési pufferhez, amely kiválasztja a puffert metsző bemeneti vektoros elemeket." } diff --git a/src/assets/t9n/map-select-tools/resources_id.json b/src/assets/t9n/map-select-tools/resources_id.json index f9af3a240..b1463330e 100644 --- a/src/assets/t9n/map-select-tools/resources_id.json +++ b/src/assets/t9n/map-select-tools/resources_id.json @@ -10,6 +10,6 @@ "sketchLayer": "Layer Sketsa", "useLayerFeatures": "Gunakan fitur layer", "inputLayer": "Layer input", - "useLayerFeaturesTooltip": "ng_Choose a layer and use the sketch tools to point to features that can be used as a boundary to select intersecting features from the input layer__________________________________________________________________________ny.", - "useSearchDistanceTootip": "ng_Define a distance for a search buffer that will select input features that intersect the buffer_________________________________________________ny." + "useLayerFeaturesTooltip": "Pilih layer dan gunakan alat sketsa untuk menunjuk ke fitur yang dapat digunakan sebagai batas untuk memilih fitur yang berpotongan dari layer input.", + "useSearchDistanceTootip": "Tentukan jarak untuk buffer pencarian yang akan memilih fitur input yang memotong buffer." } diff --git a/src/assets/t9n/map-select-tools/resources_it.json b/src/assets/t9n/map-select-tools/resources_it.json index 460bcfc5e..c4f7fdf33 100644 --- a/src/assets/t9n/map-select-tools/resources_it.json +++ b/src/assets/t9n/map-select-tools/resources_it.json @@ -10,6 +10,6 @@ "sketchLayer": "Layer schizzo", "useLayerFeatures": "Utilizza feature del layer", "inputLayer": "Layer di input", - "useLayerFeaturesTooltip": "é_Choose a layer and use the sketch tools to point to features that can be used as a boundary to select intersecting features from the input layer__________________________________________________________________________È.", - "useSearchDistanceTootip": "é_Define a distance for a search buffer that will select input features that intersect the buffer_________________________________________________È." + "useLayerFeaturesTooltip": "Scegliere un layer e utilizzare gli strumenti di schizzo per puntare alle feature che possono essere utilizzate come un confine per selezionare feature intersecanti dal layer di input.", + "useSearchDistanceTootip": "Definire una distanza per un buffer di ricerca che selezionerà le feature di input che intersecano il buffer." } diff --git a/src/assets/t9n/map-select-tools/resources_ja.json b/src/assets/t9n/map-select-tools/resources_ja.json index 341c5ec95..c15b627c0 100644 --- a/src/assets/t9n/map-select-tools/resources_ja.json +++ b/src/assets/t9n/map-select-tools/resources_ja.json @@ -10,6 +10,6 @@ "sketchLayer": "スケッチ レイヤー", "useLayerFeatures": "レイヤー フィーチャの使用", "inputLayer": "入力レイヤー", - "useLayerFeaturesTooltip": "須_Choose a layer and use the sketch tools to point to features that can be used as a boundary to select intersecting features from the input layer__________________________________________________________________________鷗.", - "useSearchDistanceTootip": "須_Define a distance for a search buffer that will select input features that intersect the buffer_________________________________________________鷗." + "useLayerFeaturesTooltip": "レイヤーを選択し、スケッチ ツールを使用して、境界として使用できるフィーチャをポイントすることで、交差するフィーチャを入力レイヤーから選択します。", + "useSearchDistanceTootip": "検索バッファーの距離を定義して、バッファーと交差する入力フィーチャを選択します。" } diff --git a/src/assets/t9n/map-select-tools/resources_ko.json b/src/assets/t9n/map-select-tools/resources_ko.json index ad51e141f..810a22423 100644 --- a/src/assets/t9n/map-select-tools/resources_ko.json +++ b/src/assets/t9n/map-select-tools/resources_ko.json @@ -10,6 +10,6 @@ "sketchLayer": "스케치 레이어", "useLayerFeatures": "레이어 피처 사용", "inputLayer": "입력 레이어", - "useLayerFeaturesTooltip": "한_Choose a layer and use the sketch tools to point to features that can be used as a boundary to select intersecting features from the input layer__________________________________________________________________________빠.", - "useSearchDistanceTootip": "한_Define a distance for a search buffer that will select input features that intersect the buffer_________________________________________________빠." + "useLayerFeaturesTooltip": "레이어를 선택하고 스케치 도구를 사용하여 입력 레이어에서 교차 피처를 선택하기 위한 경계로 사용할 수 있는 피처를 가리킵니다.", + "useSearchDistanceTootip": "버퍼와 교차하는 입력 피처를 선택할 검색 버퍼의 거리를 정의합니다." } diff --git a/src/assets/t9n/map-select-tools/resources_lt.json b/src/assets/t9n/map-select-tools/resources_lt.json index 8c1c0e201..59dd48452 100644 --- a/src/assets/t9n/map-select-tools/resources_lt.json +++ b/src/assets/t9n/map-select-tools/resources_lt.json @@ -10,6 +10,6 @@ "sketchLayer": "Eskizo sluoksnis", "useLayerFeatures": "Naudoti sluoksnio elementus", "inputLayer": "Įvesties sluoksnis", - "useLayerFeaturesTooltip": "Į_Choose a layer and use the sketch tools to point to features that can be used as a boundary to select intersecting features from the input layer__________________________________________________________________________š.", - "useSearchDistanceTootip": "Į_Define a distance for a search buffer that will select input features that intersect the buffer_________________________________________________š." + "useLayerFeaturesTooltip": "Pasirinkite sluoksnį ir naudokite eskizavimo įrankius, kad nurodytumėte elementus, kurie gali būti naudojami kaip riba, norint pasirinkti susikertančius įvesties sluoksnio elementus.", + "useSearchDistanceTootip": "Apibrėžkite paieškos buferio zonos atstumą, kuriuo bus pasirenkami įvesties elementai, susikertantys su buferio zona." } diff --git a/src/assets/t9n/map-select-tools/resources_lv.json b/src/assets/t9n/map-select-tools/resources_lv.json index 7d7571c2c..0f03212d8 100644 --- a/src/assets/t9n/map-select-tools/resources_lv.json +++ b/src/assets/t9n/map-select-tools/resources_lv.json @@ -10,6 +10,6 @@ "sketchLayer": "Skiču slānis", "useLayerFeatures": "Izmantot slāņa elementus", "inputLayer": "Ievades slānis", - "useLayerFeaturesTooltip": "ķ_Choose a layer and use the sketch tools to point to features that can be used as a boundary to select intersecting features from the input layer__________________________________________________________________________ū.", - "useSearchDistanceTootip": "ķ_Define a distance for a search buffer that will select input features that intersect the buffer_________________________________________________ū." + "useLayerFeaturesTooltip": "Izvēlieties slāni un izmantojiet skiču rīkus, lai norādītu elementus, kurus var izmantot kā robežu, lai atlasītu krustojošos elementus no ievades slāņa.", + "useSearchDistanceTootip": "Nosakiet attālumu meklēšanas buferzonai, kas izvēlēsies ievades elementus, kas šķērso buferzonu." } diff --git a/src/assets/t9n/map-select-tools/resources_nb.json b/src/assets/t9n/map-select-tools/resources_nb.json index 05cb17eb1..ac21e47c4 100644 --- a/src/assets/t9n/map-select-tools/resources_nb.json +++ b/src/assets/t9n/map-select-tools/resources_nb.json @@ -10,6 +10,6 @@ "sketchLayer": "Skisselag", "useLayerFeatures": "Bruk laggeoobjekter", "inputLayer": "Inndatalag", - "useLayerFeaturesTooltip": "å_Choose a layer and use the sketch tools to point to features that can be used as a boundary to select intersecting features from the input layer__________________________________________________________________________ø.", - "useSearchDistanceTootip": "å_Define a distance for a search buffer that will select input features that intersect the buffer_________________________________________________ø." + "useLayerFeaturesTooltip": "Velg et lag og bruk skisseverktøyene til å peke til et geoobjekt som kan brukes som en grense for å velge kryssende geoobjekter fra inndatalaget.", + "useSearchDistanceTootip": "Definer en avstand for en søkebuffer som velger inndatageoobjekter som krysser bufferen." } diff --git a/src/assets/t9n/map-select-tools/resources_nl.json b/src/assets/t9n/map-select-tools/resources_nl.json index 5c973b399..52a60caf9 100644 --- a/src/assets/t9n/map-select-tools/resources_nl.json +++ b/src/assets/t9n/map-select-tools/resources_nl.json @@ -10,6 +10,6 @@ "sketchLayer": "Tekenlaag", "useLayerFeatures": "Laagobjecten gebruiken", "inputLayer": "Invoerlaag", - "useLayerFeaturesTooltip": "IJ_Choose a layer and use the sketch tools to point to features that can be used as a boundary to select intersecting features from the input layer__________________________________________________________________________ä.", - "useSearchDistanceTootip": "IJ_Define a distance for a search buffer that will select input features that intersect the buffer_________________________________________________ä." + "useLayerFeaturesTooltip": "Kies een laag en gebruik de schetstool om objecten aan te wijzen die als een grens kunnen worden gebruikt voor het selecteren van kruisende objecten uit de invoerlaag.", + "useSearchDistanceTootip": "Definieer een afstand voor een zoekbuffer die invoerobjecten zal selecteren die met de buffer kruisen." } diff --git a/src/assets/t9n/map-select-tools/resources_pl.json b/src/assets/t9n/map-select-tools/resources_pl.json index 050e1c5df..b524676c7 100644 --- a/src/assets/t9n/map-select-tools/resources_pl.json +++ b/src/assets/t9n/map-select-tools/resources_pl.json @@ -10,6 +10,6 @@ "sketchLayer": "Warstwa szkicu", "useLayerFeatures": "Użyj obiektów warstwy", "inputLayer": "Warstwa wejściowa", - "useLayerFeaturesTooltip": "ł_Choose a layer and use the sketch tools to point to features that can be used as a boundary to select intersecting features from the input layer__________________________________________________________________________ą.", - "useSearchDistanceTootip": "ł_Define a distance for a search buffer that will select input features that intersect the buffer_________________________________________________ą." + "useLayerFeaturesTooltip": "Wybierz warstwę i za pomocą narzędzi do szkicowania wskaż obiekty, których można użyć jako granicy w celu wybrania przecinających się obiektów z warstwy wejściowej.", + "useSearchDistanceTootip": "Zdefiniuj odległość dla bufora wyszukiwania, który posłuży do wybrania obiektów wejściowych przecinających ten bufor." } diff --git a/src/assets/t9n/map-select-tools/resources_pt-BR.json b/src/assets/t9n/map-select-tools/resources_pt-BR.json index e374c6b54..dc696e97a 100644 --- a/src/assets/t9n/map-select-tools/resources_pt-BR.json +++ b/src/assets/t9n/map-select-tools/resources_pt-BR.json @@ -10,6 +10,6 @@ "sketchLayer": "Camada de Esboço", "useLayerFeatures": "Usar feições da camada", "inputLayer": "Camada de entrada", - "useLayerFeaturesTooltip": "ã_Choose a layer and use the sketch tools to point to features that can be used as a boundary to select intersecting features from the input layer__________________________________________________________________________Ç.", - "useSearchDistanceTootip": "ã_Define a distance for a search buffer that will select input features that intersect the buffer_________________________________________________Ç." + "useLayerFeaturesTooltip": "Escolha uma camada e use as ferramentas de esboço para apontar para as feições que podem ser usadas como um limite para selecionar as feições de intersecção da camada de entrada.", + "useSearchDistanceTootip": "Defina uma distância para um buffer de pesquisa que selecionará feições de entrada que interseccionam o buffer." } diff --git a/src/assets/t9n/map-select-tools/resources_pt-PT.json b/src/assets/t9n/map-select-tools/resources_pt-PT.json index 8f4d0b11f..75c2eb6c2 100644 --- a/src/assets/t9n/map-select-tools/resources_pt-PT.json +++ b/src/assets/t9n/map-select-tools/resources_pt-PT.json @@ -10,6 +10,6 @@ "sketchLayer": "Camada de Desenho", "useLayerFeatures": "Utilizar elementos da camada", "inputLayer": "Camada de entrada", - "useLayerFeaturesTooltip": "ã_Choose a layer and use the sketch tools to point to features that can be used as a boundary to select intersecting features from the input layer__________________________________________________________________________Ç.", - "useSearchDistanceTootip": "ã_Define a distance for a search buffer that will select input features that intersect the buffer_________________________________________________Ç." + "useLayerFeaturesTooltip": "Selecione uma camada e utilize as ferramentas de desenho para apontar para elementos que podem ser utilizados como um limite para selecionar elementos de interseção a partir da camada de entrada.", + "useSearchDistanceTootip": "Defina uma distância para um buffer de pesquisa que irá selecionar elementos de entrada que intersetam o buffer." } diff --git a/src/assets/t9n/map-select-tools/resources_ro.json b/src/assets/t9n/map-select-tools/resources_ro.json index fd9536628..bda8417a3 100644 --- a/src/assets/t9n/map-select-tools/resources_ro.json +++ b/src/assets/t9n/map-select-tools/resources_ro.json @@ -10,6 +10,6 @@ "sketchLayer": "Strat tematic schiță", "useLayerFeatures": "Utilizare obiecte spațiale strat tematic", "inputLayer": "Strat tematic de intrare", - "useLayerFeaturesTooltip": "Ă_Choose a layer and use the sketch tools to point to features that can be used as a boundary to select intersecting features from the input layer__________________________________________________________________________ș.", - "useSearchDistanceTootip": "Ă_Define a distance for a search buffer that will select input features that intersect the buffer_________________________________________________ș." + "useLayerFeaturesTooltip": "Alegeți un strat tematic și folosiți instrumente de trasare pentru a indica obiecte spațiale care pot fi utilizate ca limită pentru a selecta obiecte spațiale care se intersectează din stratul tematic de intrare.", + "useSearchDistanceTootip": "Definiți o distanță pentru un buffer de căutare care va selecta obiectele spațiale de intrare care intersectează bufferul." } diff --git a/src/assets/t9n/map-select-tools/resources_ru.json b/src/assets/t9n/map-select-tools/resources_ru.json index 6a43032c2..4e7b058a3 100644 --- a/src/assets/t9n/map-select-tools/resources_ru.json +++ b/src/assets/t9n/map-select-tools/resources_ru.json @@ -10,6 +10,6 @@ "sketchLayer": "Слой скетча", "useLayerFeatures": "Использовать слой объектов", "inputLayer": "Входной слой", - "useLayerFeaturesTooltip": "Ж_Choose a layer and use the sketch tools to point to features that can be used as a boundary to select intersecting features from the input layer__________________________________________________________________________Я.", - "useSearchDistanceTootip": "Ж_Define a distance for a search buffer that will select input features that intersect the buffer_________________________________________________Я." + "useLayerFeaturesTooltip": "Выберите слой и используйте инструменты скетча, чтобы указать объекты, которые могут использоваться как границы для выбора пересекающихся объектов из входного слоя.", + "useSearchDistanceTootip": "Определите расстояние для буфера поиска, который будет выбирать входные объекты, пересекающие буфер." } diff --git a/src/assets/t9n/map-select-tools/resources_sk.json b/src/assets/t9n/map-select-tools/resources_sk.json index 672abdbea..4b230983c 100644 --- a/src/assets/t9n/map-select-tools/resources_sk.json +++ b/src/assets/t9n/map-select-tools/resources_sk.json @@ -10,6 +10,6 @@ "sketchLayer": "Vrstva pre skice", "useLayerFeatures": "Použiť prvky vrstvy", "inputLayer": "Vstupná vrstva", - "useLayerFeaturesTooltip": "ĺ_Choose a layer and use the sketch tools to point to features that can be used as a boundary to select intersecting features from the input layer__________________________________________________________________________ľ.", - "useSearchDistanceTootip": "ĺ_Define a distance for a search buffer that will select input features that intersect the buffer_________________________________________________ľ." + "useLayerFeaturesTooltip": "Vyberte vrstvu a pomocou nástrojov na skicovanie ukážte na prvky, ktoré možno použiť ako hranicu pre výber pretínajúcich sa prvkov zo vstupnej vrstvy.", + "useSearchDistanceTootip": "Definujte vzdialenosť pre obalovú zónu vyhľadávania, ktorá vyberie vstupné prvky pretínajúce zónu." } diff --git a/src/assets/t9n/map-select-tools/resources_sl.json b/src/assets/t9n/map-select-tools/resources_sl.json index f9162a93b..47d940a83 100644 --- a/src/assets/t9n/map-select-tools/resources_sl.json +++ b/src/assets/t9n/map-select-tools/resources_sl.json @@ -10,6 +10,6 @@ "sketchLayer": "Sloj skice", "useLayerFeatures": "Uporabi geoobjekte sloja", "inputLayer": "Vhodni sloj", - "useLayerFeaturesTooltip": "Š_Choose a layer and use the sketch tools to point to features that can be used as a boundary to select intersecting features from the input layer__________________________________________________________________________č.", - "useSearchDistanceTootip": "Š_Define a distance for a search buffer that will select input features that intersect the buffer_________________________________________________č." + "useLayerFeaturesTooltip": "Izberite sloj in uporabite orodja za skiciranje, da določite geoobjekte, ki jih je mogoče uporabiti kot meje za izbor sekajočih geoobjektov za vhodni sloj.", + "useSearchDistanceTootip": "Določite razdaljo za iskanje obrisov, ki bo izbral vhodne geoobjekte, ki sekajo obris." } diff --git a/src/assets/t9n/map-select-tools/resources_sr.json b/src/assets/t9n/map-select-tools/resources_sr.json index 1710b9a81..c8022df7f 100644 --- a/src/assets/t9n/map-select-tools/resources_sr.json +++ b/src/assets/t9n/map-select-tools/resources_sr.json @@ -10,6 +10,6 @@ "sketchLayer": "Sloj skice", "useLayerFeatures": "Koristi geoobjekte sloja", "inputLayer": "Ulazni sloj", - "useLayerFeaturesTooltip": "Č_Choose a layer and use the sketch tools to point to features that can be used as a boundary to select intersecting features from the input layer__________________________________________________________________________ž.", - "useSearchDistanceTootip": "Č_Define a distance for a search buffer that will select input features that intersect the buffer_________________________________________________ž." + "useLayerFeaturesTooltip": "Izaberite sloj i koristite alate za crtanje da naglasite osobine koje mogu da se koriste kao granice ili geoobjekti ukrštanja za ulazni sloj.", + "useSearchDistanceTootip": "Definišite distancu za bafer pretrage koja će odabrati ulazne osobine koje presecaju bafer." } diff --git a/src/assets/t9n/map-select-tools/resources_sv.json b/src/assets/t9n/map-select-tools/resources_sv.json index 9b310f13f..e568fdf11 100644 --- a/src/assets/t9n/map-select-tools/resources_sv.json +++ b/src/assets/t9n/map-select-tools/resources_sv.json @@ -10,6 +10,6 @@ "sketchLayer": "Skisslager", "useLayerFeatures": "Använd lagergeoobjekt", "inputLayer": "Indatalager", - "useLayerFeaturesTooltip": "Å_Choose a layer and use the sketch tools to point to features that can be used as a boundary to select intersecting features from the input layer__________________________________________________________________________ö.", - "useSearchDistanceTootip": "Å_Define a distance for a search buffer that will select input features that intersect the buffer_________________________________________________ö." + "useLayerFeaturesTooltip": "Välj ett lager och använd skissverktygen för att peka på geoobjekt som kan användas som en gräns för att välja geoobjekt som skär varandra från indatalagret.", + "useSearchDistanceTootip": "Definiera ett avstånd för en sökbuffert som kommer att markera indatageoobjekt som korsar bufferten." } diff --git a/src/assets/t9n/map-select-tools/resources_th.json b/src/assets/t9n/map-select-tools/resources_th.json index f875b9011..698de33fa 100644 --- a/src/assets/t9n/map-select-tools/resources_th.json +++ b/src/assets/t9n/map-select-tools/resources_th.json @@ -10,6 +10,6 @@ "sketchLayer": "ชั้นข้อมูลการวาด", "useLayerFeatures": "ใช้ฟีเจอร์ชั้นข้อมูล", "inputLayer": "ชั้นข้อมูลอินพุท", - "useLayerFeaturesTooltip": "ก้_Choose a layer and use the sketch tools to point to features that can be used as a boundary to select intersecting features from the input layer__________________________________________________________________________ษฺ.", - "useSearchDistanceTootip": "ก้_Define a distance for a search buffer that will select input features that intersect the buffer_________________________________________________ษฺ." + "useLayerFeaturesTooltip": "เลือกชั้นข้อมูล แล้วใช้เครื่องมือการวาดเพื่อชี้ไปยังฟีเจอร์ที่สามารถใช้เป็นขอบเขตในการเลือกฟีเจอร์ที่ตัดกันจากชั้นข้อมูลอินพุทได้", + "useSearchDistanceTootip": "กำหนดระยะทางสำหรับบัฟเฟอร์การค้นหาที่จะเลือกฟีเจอร์อินพุทที่ตัดกับบัฟเฟอร์" } diff --git a/src/assets/t9n/map-select-tools/resources_tr.json b/src/assets/t9n/map-select-tools/resources_tr.json index fdd98c9a6..9f2dd2789 100644 --- a/src/assets/t9n/map-select-tools/resources_tr.json +++ b/src/assets/t9n/map-select-tools/resources_tr.json @@ -10,6 +10,6 @@ "sketchLayer": "Çizim Katmanı", "useLayerFeatures": "Katman detaylarını kullan", "inputLayer": "Girdi katman", - "useLayerFeaturesTooltip": "ı_Choose a layer and use the sketch tools to point to features that can be used as a boundary to select intersecting features from the input layer__________________________________________________________________________İ.", - "useSearchDistanceTootip": "ı_Define a distance for a search buffer that will select input features that intersect the buffer_________________________________________________İ." + "useLayerFeaturesTooltip": "Girdi katmanında kesişen detayları seçmek için bir sınır olarak kullanılabilecek detaylara işaret etmek için bir katman seçin ve taslak çizim araçlarını kullanın.", + "useSearchDistanceTootip": "Arabellekle kesişen girdi detaylarını seçecek bir arama arabelleği için bir mesafe tanımlayın." } diff --git a/src/assets/t9n/map-select-tools/resources_uk.json b/src/assets/t9n/map-select-tools/resources_uk.json index 4a6cab5b4..502515a82 100644 --- a/src/assets/t9n/map-select-tools/resources_uk.json +++ b/src/assets/t9n/map-select-tools/resources_uk.json @@ -10,6 +10,6 @@ "sketchLayer": "Шар скетчу", "useLayerFeatures": "Використовувати об’єкти шару", "inputLayer": "Вхідний шар", - "useLayerFeaturesTooltip": "ґ_Choose a layer and use the sketch tools to point to features that can be used as a boundary to select intersecting features from the input layer__________________________________________________________________________Ї.", - "useSearchDistanceTootip": "ґ_Define a distance for a search buffer that will select input features that intersect the buffer_________________________________________________Ї." + "useLayerFeaturesTooltip": "Виберіть шар і за допомогою інструментів «Скетч» вкажіть об’єкти, які можна використовувати як кордони для вибору об’єктів, які перетинаються із вхідного шару.", + "useSearchDistanceTootip": "Визначте відстань для буфера пошуку, який вибиратиме вхідні об’єкти, які перетинають буфер." } diff --git a/src/assets/t9n/map-select-tools/resources_vi.json b/src/assets/t9n/map-select-tools/resources_vi.json index 6bfdfce68..63c28ec4f 100644 --- a/src/assets/t9n/map-select-tools/resources_vi.json +++ b/src/assets/t9n/map-select-tools/resources_vi.json @@ -10,6 +10,6 @@ "sketchLayer": "Lớp Phác họa", "useLayerFeatures": "Sử dụng các đối tượng trong lớp", "inputLayer": "Lớp đầu vào", - "useLayerFeaturesTooltip": "Đ_Choose a layer and use the sketch tools to point to features that can be used as a boundary to select intersecting features from the input layer__________________________________________________________________________ớ.", - "useSearchDistanceTootip": "Đ_Define a distance for a search buffer that will select input features that intersect the buffer_________________________________________________ớ." + "useLayerFeaturesTooltip": "Chọn một lớp và sử dụng các công cụ phác hoạ để chỉ đến đối tượng mà có thể được sử dụng làm ranh giới để chọn đối tượng giao cắt từ lớp đầu vào.", + "useSearchDistanceTootip": "Xác định khoảng cách cho vùng đệm tìm kiếm mà sẽ chọn đối tượng đầu vào sẽ giao cắt với vùng đệm." } diff --git a/src/assets/t9n/map-select-tools/resources_zh-CN.json b/src/assets/t9n/map-select-tools/resources_zh-CN.json index cb96560b4..98a03bcd5 100644 --- a/src/assets/t9n/map-select-tools/resources_zh-CN.json +++ b/src/assets/t9n/map-select-tools/resources_zh-CN.json @@ -10,6 +10,6 @@ "sketchLayer": "草图图层", "useLayerFeatures": "使用图层要素", "inputLayer": "输入图层", - "useLayerFeaturesTooltip": "试_Choose a layer and use the sketch tools to point to features that can be used as a boundary to select intersecting features from the input layer__________________________________________________________________________验.", - "useSearchDistanceTootip": "试_Define a distance for a search buffer that will select input features that intersect the buffer_________________________________________________验." + "useLayerFeaturesTooltip": "选择图层,并使用草图工具指向可用作边界的要素,以从输入图层中选择相交要素。", + "useSearchDistanceTootip": "定义搜索缓冲区的距离,该距离将选择与缓冲区相交的输入要素。" } diff --git a/src/assets/t9n/map-select-tools/resources_zh-HK.json b/src/assets/t9n/map-select-tools/resources_zh-HK.json index aa0d1d3e5..d36502927 100644 --- a/src/assets/t9n/map-select-tools/resources_zh-HK.json +++ b/src/assets/t9n/map-select-tools/resources_zh-HK.json @@ -10,6 +10,6 @@ "sketchLayer": "描繪圖層", "useLayerFeatures": "使用圖層圖徵", "inputLayer": "輸入圖層", - "useLayerFeaturesTooltip": "試_Choose a layer and use the sketch tools to point to features that can be used as a boundary to select intersecting features from the input layer__________________________________________________________________________驗.", - "useSearchDistanceTootip": "試_Define a distance for a search buffer that will select input features that intersect the buffer_________________________________________________驗." + "useLayerFeaturesTooltip": "選擇圖層並使用描繪工具指向可作為邊界的圖徵,以便從輸入圖層中選擇相交圖徵。", + "useSearchDistanceTootip": "定義搜尋緩衝區的距離,該距離將選擇與緩衝區相交的輸入圖徵。" } diff --git a/src/assets/t9n/map-select-tools/resources_zh-TW.json b/src/assets/t9n/map-select-tools/resources_zh-TW.json index aa0d1d3e5..d36502927 100644 --- a/src/assets/t9n/map-select-tools/resources_zh-TW.json +++ b/src/assets/t9n/map-select-tools/resources_zh-TW.json @@ -10,6 +10,6 @@ "sketchLayer": "描繪圖層", "useLayerFeatures": "使用圖層圖徵", "inputLayer": "輸入圖層", - "useLayerFeaturesTooltip": "試_Choose a layer and use the sketch tools to point to features that can be used as a boundary to select intersecting features from the input layer__________________________________________________________________________驗.", - "useSearchDistanceTootip": "試_Define a distance for a search buffer that will select input features that intersect the buffer_________________________________________________驗." + "useLayerFeaturesTooltip": "選擇圖層並使用描繪工具指向可作為邊界的圖徵,以便從輸入圖層中選擇相交圖徵。", + "useSearchDistanceTootip": "定義搜尋緩衝區的距離,該距離將選擇與緩衝區相交的輸入圖徵。" } diff --git a/src/assets/t9n/public-notification/resources_ar.json b/src/assets/t9n/public-notification/resources_ar.json index 962c180f4..a2d594793 100644 --- a/src/assets/t9n/public-notification/resources_ar.json +++ b/src/assets/t9n/public-notification/resources_ar.json @@ -10,24 +10,24 @@ "selectedFeatures": "{{n}} معالم محددة", "noNotifications": "ليس لديك قائمة إخطارات حتى الآن.", "notifications": "إخطارات", - "myLists": "بيت_Create and edit lists______________________لاحقة", + "myLists": "إنشاء وتحرير القوائم", "stepTwoFull": "إنشاء قائمة جديدة", "cancel": "إلغاء الأمر", "done": "تم", - "selectPDFLabelOption": "بيت_Format options_______________لاحقة", - "removeDuplicate": "بيت_Remove duplicates___________________لاحقة:", + "selectPDFLabelOption": "خيارات التنسيق", + "removeDuplicate": "إزالة العناصر المكررة:", "numDuplicates": "{{n}} عناصر مكررة", - "selectLayerAndAdd": "بيت_Create lists of features to export as CSV and PDF. Use selection tools to choose which features to include and then click Create list____________________________________________________________________لاحقة.", - "selectSearchTip": "بيت_Select features from the input layer to add to your list. Draw with sketch tools, specify a search distance, and use features from another layer to select overlapping features_________________________________________________________________________________________لاحقة.", + "selectLayerAndAdd": "قم بإنشاء قوائم بالمعالم لتصديرها كملف CSV وPDF. استخدم أدوات التحديد لاختيار المعالم المراد تضمينها ثم انقر فوق إنشاء قائمة.", + "selectSearchTip": "حدد المعالم من طبقة الإدخال لإضافتها إلى قائمتك. ارسم باستخدام أدوات الرسم، وحدد مسافة البحث، واستخدم المعالم من طبقة أخرى لتحديد المعالم المتداخلة.", "selectLayerTip": "يرجى رسم الأشكال لتحديد المعالم المطلوبة من الطبقة المحددة، وسيتم استخدام النتائج لتحديد المعالم في طبقة المرسل إليه.", "selectSketchTip": "يتم استخدام أدوات المخطط لرسم الرسومات على الخريطة وتحديد المعالم المتقاطعة في طبقة المرسل إليه.", "optionalSearchDistance": "وإضافة مسافة البحث اختياريًا.", - "listHasSetsTip": "بيت_Edit or delete existing lists or click Create new list_____________________________لاحقة.", + "listHasSetsTip": "قم بتحرير القوائم الموجودة أو حذفها أو انقر فوق إنشاء قائمة جديدة.", "uniqueCout": "عدد القيم المميزة: {{n}}", "searchDistance": "مسافة البحث", "useLayerFeatures": "استخدام معالم الطبقة", "export": "تصدير", - "exportTip": "بيت_Select lists to include in the exported file. Export lists as CSV and PDF______________________________________لاحقة.", + "exportTip": "حدد القوائم المراد تضمينها في الملف المصدر. تصدير القوائم كملف CSV وPDF.", "title": "اللقب", "addTitle": "إضافة عنوان", "titlePlaceholder": "أدخل العنوان هنا", @@ -35,8 +35,8 @@ "pdfOptions": "خيارات PDF", "csvOptions": "خيارات CSV", "refineSelection": "تحسين التحديد", - "refineTip": "بيت_Refine and finalize your lists by using sketch tools to add or remove selected features_____________________________________________لاحقة.", + "refineTip": "قم بتحسين قوائمك وإنهائها باستخدام أدوات الرسم لإضافة المعالم المحددة أو إزالتها.", "refineTipNoSelections": "لا يوجد أي تحديدات لتحسينها. انتقل إلى القوائم الخاصة بي لإنشاء قائمة من المعالم.", - "duplicatesTip": "بيت_Duplicate features are always removed. When enabled, pop-ups from each layer will be compared and any duplicate pop-up information will be removed___________________________________________________________________________لاحقة.", - "exportListsLabel": "بيت_My lists_________________لاحقة" + "duplicatesTip": "تتم دائمًا إزالة المعالم المكررة. عند التمكين، ستتم مقارنة النوافذ المنبثقة من كل طبقة وستتم إزالة أي معلومات منبثقة مكررة.", + "exportListsLabel": "القوائم الخاصة بي" } \ No newline at end of file diff --git a/src/assets/t9n/public-notification/resources_bg.json b/src/assets/t9n/public-notification/resources_bg.json index c8abaadeb..a2bcd4d14 100644 --- a/src/assets/t9n/public-notification/resources_bg.json +++ b/src/assets/t9n/public-notification/resources_bg.json @@ -10,24 +10,24 @@ "selectedFeatures": "{{n}} избрани обекти", "noNotifications": "Все още нямате списък с известия.", "notifications": "Известия", - "myLists": "й_Create and edit lists______________________й", + "myLists": "Създаване и редактиране на списъци", "stepTwoFull": "Създаване на нов списък", "cancel": "Отказ", "done": "Готово", - "selectPDFLabelOption": "й_Format options_______________й", - "removeDuplicate": "й_Remove duplicates___________________й:", + "selectPDFLabelOption": "Опции за форматиране", + "removeDuplicate": "Премахване на дублирания:", "numDuplicates": "{{n}} дублирания", - "selectLayerAndAdd": "й_Create lists of features to export as CSV and PDF. Use selection tools to choose which features to include and then click Create list____________________________________________________________________й.", - "selectSearchTip": "й_Select features from the input layer to add to your list. Draw with sketch tools, specify a search distance, and use features from another layer to select overlapping features_________________________________________________________________________________________й.", + "selectLayerAndAdd": "Създаване на списъци с обекти за експортиране като CSV и PDF. Използвайте инструменти за селекция, за да изберете кои обекти да включите, и след това натиснете върху Създаване на списък.", + "selectSearchTip": "Изберете обекти от входния слой, за да ги добавите към списъка си. Чертайте с инструменти за скициране, задайте разстояние за търсене и използвайте обекти от друг слой, за да изберете припокриващи се обекти.", "selectLayerTip": "Начертайте фигури, за да изберете обекти от избрания слой за избор; резултатите ще бъдат използвани за избор на обекти от слоя адресат", "selectSketchTip": "Използвайте инструменти за скициране, за да начертаете графики в картата, за да изберете пресичащи се обекти в слоя адресат.", "optionalSearchDistance": "и по желание добавете разстояние за търсене.", - "listHasSetsTip": "й_Edit or delete existing lists or click Create new list_____________________________й.", + "listHasSetsTip": "Редактирайте или изтрийте съществуващите списъци или натиснете върху Създаване на нов списък.", "uniqueCout": "Уникален брой: {{n}}", "searchDistance": "Търсене на разстояние", "useLayerFeatures": "Използвайте обекти на слоя", "export": "Експорт", - "exportTip": "й_Select lists to include in the exported file. Export lists as CSV and PDF______________________________________й.", + "exportTip": "Изберете списъци, които да включите в експортирания файл. Експортирайте списъци като CSV и PDF.", "title": "Заглавие", "addTitle": "Добавяне на заглавие", "titlePlaceholder": "Въведете заглавие тук", @@ -35,8 +35,8 @@ "pdfOptions": "PDF опции", "csvOptions": "CSV опции", "refineSelection": "Прецизиране на избор", - "refineTip": "й_Refine and finalize your lists by using sketch tools to add or remove selected features_____________________________________________й.", + "refineTip": "Прецизирайте и завършвайте списъците си, като използвате инструментите за скициране, за да добавяте или премахвате селектирани обекти.", "refineTipNoSelections": "Няма селекции за прецизиране. Отидете в Моите списъци, за да създадете списък с обекти.", - "duplicatesTip": "й_Duplicate features are always removed. When enabled, pop-ups from each layer will be compared and any duplicate pop-up information will be removed___________________________________________________________________________й.", - "exportListsLabel": "й_My lists_________________й" + "duplicatesTip": "Дублиращите се обекти винаги се премахват. Когато е разрешено, изскачащите прозорци от всеки слой ще бъдат сравнени и всяка дублираща се изскачаща информация ще бъде премахната.", + "exportListsLabel": "Моите списъци" } \ No newline at end of file diff --git a/src/assets/t9n/public-notification/resources_bs.json b/src/assets/t9n/public-notification/resources_bs.json index fbcb90073..52c785b30 100644 --- a/src/assets/t9n/public-notification/resources_bs.json +++ b/src/assets/t9n/public-notification/resources_bs.json @@ -10,24 +10,24 @@ "selectedFeatures": "{{n}} odabrani geoobjekti", "noNotifications": "Još nemate popis obavijesti.", "notifications": "Obavijesti", - "myLists": "Č_Create and edit lists______________________ž", + "myLists": "Stvaranje i uređivanje popisa", "stepTwoFull": "Stvori novi popis", "cancel": "Odustani", "done": "Gotovo", - "selectPDFLabelOption": "Č_Format options_______________ž", - "removeDuplicate": "Č_Remove duplicates___________________ž:", + "selectPDFLabelOption": "Opcije formata", + "removeDuplicate": "Ukloni duplikate:", "numDuplicates": "{{n}} duplikati", - "selectLayerAndAdd": "Č_Create lists of features to export as CSV and PDF. Use selection tools to choose which features to include and then click Create list____________________________________________________________________ž.", - "selectSearchTip": "Č_Select features from the input layer to add to your list. Draw with sketch tools, specify a search distance, and use features from another layer to select overlapping features_________________________________________________________________________________________ž.", + "selectLayerAndAdd": "Stvorite popise geoobjekata za izvoz kao CSV i PDF. Upotrijebite alate za odabir kako biste odabrali geoobjekte koje ćete uključiti, a zatim kliknite Stvori popis.", + "selectSearchTip": "Odaberite geoobjekte iz ulaznog sloja koje želite dodati na svoj popis. Crtajte alatima za skiciranje, odredite udaljenost pretraživanja i koristite geoobjekte iz drugog sloja za odabir geoobjekata koje se preklapaju.", "selectLayerTip": "Nacrtajte oblike za odabir geoobjekata iz odabranog sloja za odabir; a rezultati će se koristiti za odabir geoobjekata iz sloja primatelja", "selectSketchTip": "Koristite alate za skiciranje za crtanje grafike na karti kako biste odabrali značajke koje se presijecaju u sloju primatelja.", "optionalSearchDistance": "Opcionalno možete dodati i udaljenost pretrage.", - "listHasSetsTip": "Č_Edit or delete existing lists or click Create new list_____________________________ž.", + "listHasSetsTip": "Uredite ili izbrišite postojeće popise ili kliknite Stvori novi popis.", "uniqueCout": "Jedinstven zbroj: {{n}}", "searchDistance": "Pretraži udaljenost", "useLayerFeatures": "Upotrijebi geoobjekte sloja", "export": "Izvezi", - "exportTip": "Č_Select lists to include in the exported file. Export lists as CSV and PDF______________________________________ž.", + "exportTip": "Odaberite popise za uključivanje u izvezenu datoteku. Izvezite popise u CSV i PDF formatu.", "title": "Naziv", "addTitle": "Dodaj naslov", "titlePlaceholder": "Unesite naslov ovdje", @@ -35,8 +35,8 @@ "pdfOptions": "Opcije PDF-a", "csvOptions": "Opcije CSV-a", "refineSelection": "Pročisti odabir", - "refineTip": "Č_Refine and finalize your lists by using sketch tools to add or remove selected features_____________________________________________ž.", + "refineTip": "Pročistite i finalizirajte svoje popise pomoću alata za skiciranje za dodavanje ili uklanjanje odabranih geoobjekata.", "refineTipNoSelections": "Nema odabira za precizirati. Idite na Moje popise da biste stvorili popis geoobjekata.", - "duplicatesTip": "Č_Duplicate features are always removed. When enabled, pop-ups from each layer will be compared and any duplicate pop-up information will be removed___________________________________________________________________________ž.", - "exportListsLabel": "Č_My lists_________________ž" + "duplicatesTip": "Duplicirani geoobjekti uvijek se uklanjaju. Kada je omogućeno, skočni prozori sa svakog sloja će se uspoređivati i svi dupli podaci u skočnim prozorima bit će uklonjeni.", + "exportListsLabel": "Moji popisi" } \ No newline at end of file diff --git a/src/assets/t9n/public-notification/resources_ca.json b/src/assets/t9n/public-notification/resources_ca.json index 55cb7457d..37b2204df 100644 --- a/src/assets/t9n/public-notification/resources_ca.json +++ b/src/assets/t9n/public-notification/resources_ca.json @@ -10,24 +10,24 @@ "selectedFeatures": "{{n}} entitats seleccionades", "noNotifications": "Encara no teniu cap llista de notificacions.", "notifications": "Notificacions", - "myLists": "ó_Create and edit lists______________________à", + "myLists": "Crea i edita llistes", "stepTwoFull": "Crea una llista nova", "cancel": "Cancel·la", "done": "Fet", - "selectPDFLabelOption": "ó_Format options_______________à", - "removeDuplicate": "ó_Remove duplicates___________________à:", + "selectPDFLabelOption": "Opcions de format", + "removeDuplicate": "Elimina els duplicats:", "numDuplicates": "{{n}} duplicats", - "selectLayerAndAdd": "ó_Create lists of features to export as CSV and PDF. Use selection tools to choose which features to include and then click Create list____________________________________________________________________à.", - "selectSearchTip": "ó_Select features from the input layer to add to your list. Draw with sketch tools, specify a search distance, and use features from another layer to select overlapping features_________________________________________________________________________________________à.", + "selectLayerAndAdd": "Creeu llistes d'entitats per exportar-les com a CSV i PDF. Feu servir eines de selecció per triar les entitats que voleu incloure i, a continuació, feu clic a Crea una llista.", + "selectSearchTip": "Seleccioneu entitats de la capa d'entrada per afegir-les a la llista. Dibuixeu amb les eines d'esbós, especifiqueu una distància de cerca i feu servir les entitats d'una altra capa per seleccionar les entitats superposades.", "selectLayerTip": "Dibuixeu formes per seleccionar entitats de la capa de selecció triada; els resultats es faran servir per seleccionar entitats de la capa de destinataris", "selectSketchTip": "Feu servir les eines d'esbós per dibuixar gràfics al mapa per seleccionar entitats que s'intersequen a la capa de destinataris.", "optionalSearchDistance": "i, opcionalment, afegiu una distància de cerca.", - "listHasSetsTip": "ó_Edit or delete existing lists or click Create new list_____________________________à.", + "listHasSetsTip": "Editeu o suprimiu llistes existents o feu clic a Crea una llista nova.", "uniqueCout": "Recompte únic: {{n}}", "searchDistance": "Distància de cerca", "useLayerFeatures": "Utilitza entitats de la capa", "export": "Exporta", - "exportTip": "ó_Select lists to include in the exported file. Export lists as CSV and PDF______________________________________à.", + "exportTip": "Seleccioneu les llistes que voleu incloure al fitxer exportat. Exporteu llistes com a CSV i PDF.", "title": "Títol", "addTitle": "Afegeix un títol", "titlePlaceholder": "Introduïu un títol aquí", @@ -35,8 +35,8 @@ "pdfOptions": "Opcions de PDF", "csvOptions": "Opcions de CSV", "refineSelection": "Delimita la selecció", - "refineTip": "ó_Refine and finalize your lists by using sketch tools to add or remove selected features_____________________________________________à.", + "refineTip": "Delimiteu i enllestiu les llistes mitjançant eines d'esbós per afegir o eliminar entitats seleccionades.", "refineTipNoSelections": "No hi ha cap selecció per delimitar. Aneu a Les meves llistes per crear una llista d'entitats.", - "duplicatesTip": "ó_Duplicate features are always removed. When enabled, pop-ups from each layer will be compared and any duplicate pop-up information will be removed___________________________________________________________________________à.", - "exportListsLabel": "ó_My lists_________________à" + "duplicatesTip": "Les entitats duplicades sempre s'eliminen. Si aquesta opció està habilitada, es compararan les finestres emergents de cada capa i se n'eliminarà la informació duplicada.", + "exportListsLabel": "Les meves llistes" } \ No newline at end of file diff --git a/src/assets/t9n/public-notification/resources_cs.json b/src/assets/t9n/public-notification/resources_cs.json index 67cee6719..4d19da484 100644 --- a/src/assets/t9n/public-notification/resources_cs.json +++ b/src/assets/t9n/public-notification/resources_cs.json @@ -10,24 +10,24 @@ "selectedFeatures": "{{n}} vybraných prvků", "noNotifications": "Zatím nemáte žádný seznam oznámení.", "notifications": "Oznámení", - "myLists": "Ř_Create and edit lists______________________ů", + "myLists": "Vytvořit a upravit seznamy", "stepTwoFull": "Vytvořit nový seznam", "cancel": "Storno", "done": "Hotovo", - "selectPDFLabelOption": "Ř_Format options_______________ů", - "removeDuplicate": "Ř_Remove duplicates___________________ů:", + "selectPDFLabelOption": "Možnosti formátu", + "removeDuplicate": "Odstranit duplikáty:", "numDuplicates": "{{n}} duplikátů", - "selectLayerAndAdd": "Ř_Create lists of features to export as CSV and PDF. Use selection tools to choose which features to include and then click Create list____________________________________________________________________ů.", - "selectSearchTip": "Ř_Select features from the input layer to add to your list. Draw with sketch tools, specify a search distance, and use features from another layer to select overlapping features_________________________________________________________________________________________ů.", + "selectLayerAndAdd": "Vytvořte seznamy prvků pro export do formátu CSV a PDF. Pomocí nástrojů výběru zvolte prvky, které chcete zahrnout, a pak klikněte na tlačítko Vytvořit seznam.", + "selectSearchTip": "Ze vstupní vrstvy vyberte prvky, které chcete přidat do seznamu. Kreslete pomocí nástrojů skicování, zadejte vzdálenost vyhledávání a použijte prvky z jiné vrstvy k výběru překrývajících se prvků.", "selectLayerTip": "Nakreslete do mapy tvary, pomocí nichž vyberete prvky ze zvolené vrstvy výběru. Výsledky se použijí pro výběr prvků z vrstvy adresátů.", "selectSketchTip": "Pomocí nástrojů skicování nakreslete do mapy grafiku. Tím se vyberou prvky, které leží v průniku s vrstvou adresátů.", "optionalSearchDistance": "a volitelně přidejte vzdálenost vyhledávání.", - "listHasSetsTip": "Ř_Edit or delete existing lists or click Create new list_____________________________ů.", + "listHasSetsTip": "Upravte nebo odstraňte stávající seznamy nebo klikněte na tlačítko Vytvořit nový seznam.", "uniqueCout": "Jedinečný počet: {{n}}", "searchDistance": "Vzdálenost vyhledávání", "useLayerFeatures": "Použít prvky vrstvy", "export": "Exportovat", - "exportTip": "Ř_Select lists to include in the exported file. Export lists as CSV and PDF______________________________________ů.", + "exportTip": "Vyberte seznamy, které chcete zahrnout do exportovaného souboru. Exportovat seznamy jako CSV a PDF.", "title": "Nadpis", "addTitle": "Přidat název", "titlePlaceholder": "Zde zadejte název", @@ -35,8 +35,8 @@ "pdfOptions": "Možnosti PDF", "csvOptions": "Možnosti CSV", "refineSelection": "Upřesnit výběr", - "refineTip": "Ř_Refine and finalize your lists by using sketch tools to add or remove selected features_____________________________________________ů.", + "refineTip": "Upřesněte a dokončete své seznamy pomocí nástrojů skicování a přidejte nebo odeberte vybrané prvky.", "refineTipNoSelections": "Neexistují žádné výběry, které by bylo možné upřesnit. Přejděte na Moje seznamy a vytvořte seznam prvků.", - "duplicatesTip": "Ř_Duplicate features are always removed. When enabled, pop-ups from each layer will be compared and any duplicate pop-up information will be removed___________________________________________________________________________ů.", - "exportListsLabel": "Ř_My lists_________________ů" + "duplicatesTip": "Duplicitní prvky jsou vždy odebrány. Pokud je aktivní, vyskakovací okna v jednotlivých vrstvách se porovnají a všechny duplicitní informace vyskakovacích oken budou odebrány.", + "exportListsLabel": "Moje seznamy" } \ No newline at end of file diff --git a/src/assets/t9n/public-notification/resources_da.json b/src/assets/t9n/public-notification/resources_da.json index 8100845b4..acd0c9da7 100644 --- a/src/assets/t9n/public-notification/resources_da.json +++ b/src/assets/t9n/public-notification/resources_da.json @@ -10,24 +10,24 @@ "selectedFeatures": "{{n}} valgte objekter", "noNotifications": "Du har endnu ingen notifikationsliste.", "notifications": "Meddelelser", - "myLists": "ø_Create and edit lists______________________å", + "myLists": "Opret og rediger lister", "stepTwoFull": "Opret ny liste", "cancel": "Annullér", "done": "Udført", - "selectPDFLabelOption": "ø_Format options_______________å", - "removeDuplicate": "ø_Remove duplicates___________________å:", + "selectPDFLabelOption": "Formateringsindstillinger", + "removeDuplicate": "Fjern dubletter:", "numDuplicates": "{{n}} dubletter", - "selectLayerAndAdd": "ø_Create lists of features to export as CSV and PDF. Use selection tools to choose which features to include and then click Create list____________________________________________________________________å.", - "selectSearchTip": "ø_Select features from the input layer to add to your list. Draw with sketch tools, specify a search distance, and use features from another layer to select overlapping features_________________________________________________________________________________________å.", + "selectLayerAndAdd": "Opret lister med objekter, der kan eksporteres som CSV og PDF. Brug markeringsværktøjerne til at vælge, hvilke objekter der skal medtages, og klik derefter på Opret liste.", + "selectSearchTip": "Vælg objekter fra inputlaget, der skal tilføjes til din liste. Tegn med skitseværktøjer, angiv en søgeafstand, og brug objekter fra et andet lag til at vælge overlappende objekter.", "selectLayerTip": "Tegn former for at vælge objekter fra det valgte markeringslag; resultaterne vil blive brugt til at vælge objekter fra adressat-laget", "selectSketchTip": "Brug skitseværktøjer til at tegne grafik på kortet for at vælge objekter, der gennemskærer hinanden i adressat-laget.", "optionalSearchDistance": "og tilføj eventuelt søgeafstand.", - "listHasSetsTip": "ø_Edit or delete existing lists or click Create new list_____________________________å.", + "listHasSetsTip": "Rediger eller slet eksisterende lister, eller klik på Opret ny liste.", "uniqueCout": "Entydigt antal: {{n}}", "searchDistance": "Søgeafstand", "useLayerFeatures": "Brug lagobjekter", "export": "Eksportér", - "exportTip": "ø_Select lists to include in the exported file. Export lists as CSV and PDF______________________________________å.", + "exportTip": "Vælg lister, der skal medtages i den eksporterede fil. Eksporter lister som CSV og PDF.", "title": "Titel", "addTitle": "Tilføj titel", "titlePlaceholder": "Indtast titel her", @@ -35,8 +35,8 @@ "pdfOptions": "PDF-indstillinger", "csvOptions": "CSV-indstillinger", "refineSelection": "Forfin valget", - "refineTip": "ø_Refine and finalize your lists by using sketch tools to add or remove selected features_____________________________________________å.", + "refineTip": "Forfin og færdiggør dine lister ved at bruge skitseværktøjer til at tilføje eller fjerne objekter.", "refineTipNoSelections": "Der er ingen markeringer at forfine. Gå til Mine lister for at oprette en liste med objekter.", - "duplicatesTip": "ø_Duplicate features are always removed. When enabled, pop-ups from each layer will be compared and any duplicate pop-up information will be removed___________________________________________________________________________å.", - "exportListsLabel": "ø_My lists_________________å" + "duplicatesTip": "Dublet-objekter fjernes altid. Når den er aktiveret, sammenlignes pop-up-vinduer fra hvert lag, og eventuelle dublet-oplysninger fjernes.", + "exportListsLabel": "Mine lister" } \ No newline at end of file diff --git a/src/assets/t9n/public-notification/resources_de.json b/src/assets/t9n/public-notification/resources_de.json index 357ab379b..153fbb383 100644 --- a/src/assets/t9n/public-notification/resources_de.json +++ b/src/assets/t9n/public-notification/resources_de.json @@ -10,24 +10,24 @@ "selectedFeatures": "{{n}} ausgewählte Features", "noNotifications": "Es ist noch keine Benachrichtigungsliste vorhanden.", "notifications": "Benachrichtigungen", - "myLists": "ä_Create and edit lists______________________Ü", + "myLists": "Listen erstellen und bearbeiten", "stepTwoFull": "Neue Liste erstellen", "cancel": "Abbrechen", "done": "Fertig", - "selectPDFLabelOption": "ä_Format options_______________Ü", - "removeDuplicate": "ä_Remove duplicates___________________Ü:", + "selectPDFLabelOption": "Formatoptionen", + "removeDuplicate": "Duplikate entfernen:", "numDuplicates": "{{n}} Duplikate", - "selectLayerAndAdd": "ä_Create lists of features to export as CSV and PDF. Use selection tools to choose which features to include and then click Create list____________________________________________________________________Ü.", - "selectSearchTip": "ä_Select features from the input layer to add to your list. Draw with sketch tools, specify a search distance, and use features from another layer to select overlapping features_________________________________________________________________________________________Ü.", + "selectLayerAndAdd": "Erstellen Sie Listen von Features für den Export als CSV und PDF. Wählen Sie mit den Auswahlwerkzeugen die Features aus, die Sie einbeziehen möchten, und klicken Sie dann auf \"Liste erstellen\".", + "selectSearchTip": "Wählen Sie Features aus dem Eingabe-Layer aus, um sie zur Liste hinzuzufügen. Zeichnen Sie mit Skizzenwerkzeugen, legen Sie eine Suchentfernung fest, und verwenden Sie Features aus einem anderen Layer, um überlappende Features auszuwählen.", "selectLayerTip": "Zeichnen Sie Shapes, um Features aus dem ausgewählten Auswahl-Layer auszuwählen. Die Ergebnisse werden zum Auswählen von Features aus dem Adressat-Layer verwendet.", "selectSketchTip": "Verwenden Sie Skizzenwerkzeuge, um Grafiken in der Karte zu zeichnen und überschneidende Features im Adressat-Layer auszuwählen.", "optionalSearchDistance": "Fügen Sie optional eine Suchentfernung hinzu.", - "listHasSetsTip": "ä_Edit or delete existing lists or click Create new list_____________________________Ü.", + "listHasSetsTip": "Bearbeiten oder löschen Sie vorhandene Listen, oder klicken Sie auf \"Neue Liste erstellen\".", "uniqueCout": "Eindeutige Anzahl: {{n}}", "searchDistance": "Suchentfernung", "useLayerFeatures": "Layer-Features verwenden", "export": "Exportieren", - "exportTip": "ä_Select lists to include in the exported file. Export lists as CSV and PDF______________________________________Ü.", + "exportTip": "Wählen Sie die Listen aus, die in die exportierte Datei einbezogen werden sollen. Listen können als CSV und PDF exportiert werden.", "title": "Titel", "addTitle": "Titel hinzufügen", "titlePlaceholder": "Titel hier eingeben", @@ -35,8 +35,8 @@ "pdfOptions": "PDF-Optionen", "csvOptions": "CSV-Optionen", "refineSelection": "Auswahl verfeinern", - "refineTip": "ä_Refine and finalize your lists by using sketch tools to add or remove selected features_____________________________________________Ü.", + "refineTip": "Verfeinern und finalisieren Sie die Listen mit Skizzenwerkzeugen, um ausgewählte Features hinzuzufügen oder zu entfernen.", "refineTipNoSelections": "Es sind keine Auswahlen zum Verfeinern vorhanden. Wechseln Sie zu \"Eigene Listen\", um eine Feature-Liste zu erstellen.", - "duplicatesTip": "ä_Duplicate features are always removed. When enabled, pop-ups from each layer will be compared and any duplicate pop-up information will be removed___________________________________________________________________________Ü.", - "exportListsLabel": "ä_My lists_________________Ü" + "duplicatesTip": "Doppelte Features werden grundsätzlich entfernt. Wenn diese Option aktiviert ist, werden die Pop-ups der einzelnen Layer verglichen und alle doppelten Pop-up-Informationen entfernt.", + "exportListsLabel": "Eigene Listen" } \ No newline at end of file diff --git a/src/assets/t9n/public-notification/resources_el.json b/src/assets/t9n/public-notification/resources_el.json index 59960ceeb..36b5ca078 100644 --- a/src/assets/t9n/public-notification/resources_el.json +++ b/src/assets/t9n/public-notification/resources_el.json @@ -10,24 +10,24 @@ "selectedFeatures": "{{n}} επιλεγμένα στοιχεία", "noNotifications": "Δεν έχετε ακόμη λίστα ειδοποιήσεων.", "notifications": "Ειδοποιήσεις", - "myLists": "Đ_Create and edit lists______________________ớ", + "myLists": "Δημιουργία και επεξεργασία λιστών", "stepTwoFull": "Δημιουργία νέας λίστας", "cancel": "Ακύρωση", "done": "Τέλος", - "selectPDFLabelOption": "Đ_Format options_______________ớ", - "removeDuplicate": "Đ_Remove duplicates___________________ớ:", + "selectPDFLabelOption": "Επιλογές μορφότυπου", + "removeDuplicate": "Κατάργηση διπλότυπων:", "numDuplicates": "{{n}} διπλότυπα", - "selectLayerAndAdd": "Đ_Create lists of features to export as CSV and PDF. Use selection tools to choose which features to include and then click Create list____________________________________________________________________ớ.", - "selectSearchTip": "Đ_Select features from the input layer to add to your list. Draw with sketch tools, specify a search distance, and use features from another layer to select overlapping features_________________________________________________________________________________________ớ.", + "selectLayerAndAdd": "Δημιουργήστε λίστες χαρακτηριστικών που μπορεί να εξαχθούν σε αρχείο CSV και PDF. Χρησιμοποιήστε την επιλογή εργαλείων για να επιλέξτε ποια εργαλεία θα συμπεριλαμβάνονται και έπειτα κάντε κλικ στη Δημιουργία λίστας.", + "selectSearchTip": "Επιλέξτε στοιχεία από το θεματικό επίπεδο εισόδου για προσθήκη στη λίστα σας. Σχεδιάστε με εργαλεία σχεδιασμού, καθορίστε μια απόσταση αναζήτησης και χρησιμοποιήστε στοιχεία από ένα άλλο θεματικό επίπεδο για να επιλέξετε επικαλυπτόμενα στοιχεία.", "selectLayerTip": "Σχεδιάστε σχήματα για να επιλέξετε στοιχεία από το επιλεγμένο θεματικό επίπεδο επιλογής, τα αποτελέσματα θα χρησιμοποιηθούν για την ειλογή στοιχείων από το θεματικό επίπεδο αποδέκτη", "selectSketchTip": "Χρησιμοποιήστε εργαλεία σχεδίασης για να σχεδιάσετε γραφικά στον χάρτη για επιλογή τεμνόμενων στοιχείων στο θεματικό επίπεδο αποδέκτη.", "optionalSearchDistance": "και προαιρετικά προσθέστε την απόσταση αναζήτησης.", - "listHasSetsTip": "Đ_Edit or delete existing lists or click Create new list_____________________________ớ.", + "listHasSetsTip": "Επεξεργαστείτε ή διαγράψτε υπάρχουσες λίστες ή κάντε κλικ στη «Δημιουργία νέας λίστας».", "uniqueCout": "Μοναδικό πλήθος: {{n}}", "searchDistance": "Απόσταση αναζήτησης", "useLayerFeatures": "Χρήση στοιχείων θεματικών επιπέδων", "export": "Εξαγωγή", - "exportTip": "Đ_Select lists to include in the exported file. Export lists as CSV and PDF______________________________________ớ.", + "exportTip": "Επιλέξτε λίστες για συμπερίληψη στο εξαγόμενο αρχείο. Εξαγωγή λιστών σε CSV και PDF.", "title": "Τίτλος", "addTitle": "Προσθήκη τίτλου", "titlePlaceholder": "Εισαγωγή τίτλου εδώ", @@ -35,8 +35,8 @@ "pdfOptions": "Επιλογές PDF", "csvOptions": "Επιλογές CSV", "refineSelection": "Περιορισμός επιλογής", - "refineTip": "Đ_Refine and finalize your lists by using sketch tools to add or remove selected features_____________________________________________ớ.", + "refineTip": "Περιορίστε και οριστικοποιήστε τις λίστες σας με εργαλεία σχεδίασης για να προσθέσετε ή να καταργήσετε επιλεγμένα στοιχεία.", "refineTipNoSelections": "Δεν υπάρχουν επιλογές προς περιορισμό. Μεταβείτε στην ενότητα «Οι λίστες μου» για να δημιουργήσετε λίστα χαρακτηριστικών.", - "duplicatesTip": "Đ_Duplicate features are always removed. When enabled, pop-ups from each layer will be compared and any duplicate pop-up information will be removed___________________________________________________________________________ớ.", - "exportListsLabel": "Đ_My lists_________________ớ" + "duplicatesTip": "Τα αντίγραφα στοιχείων πάντα καταργούνται. Όταν ενεργοποιηθεί, τα αναδυόμενα παράθυρα από κάθε επίπεδο θα συγκριθούν και τυχόν αντίγραφα αναδυόμενων πληροφοριών θα καταργηθούν.", + "exportListsLabel": "Οι λίστες μου" } \ No newline at end of file diff --git a/src/assets/t9n/public-notification/resources_es.json b/src/assets/t9n/public-notification/resources_es.json index ce86e33b7..3192b33ba 100644 --- a/src/assets/t9n/public-notification/resources_es.json +++ b/src/assets/t9n/public-notification/resources_es.json @@ -10,24 +10,24 @@ "selectedFeatures": "{{n}} entidades seleccionadas", "noNotifications": "Todavía no tiene ninguna lista de notificación.", "notifications": "Notificaciones", - "myLists": "á_Create and edit lists______________________Ó", + "myLists": "Crear y editar listas", "stepTwoFull": "Crear lista nueva", "cancel": "Cancelar", "done": "Listo", - "selectPDFLabelOption": "á_Format options_______________Ó", - "removeDuplicate": "á_Remove duplicates___________________Ó:", + "selectPDFLabelOption": "Opciones de formato", + "removeDuplicate": "Eliminar duplicados:", "numDuplicates": "{{n}} duplicados", - "selectLayerAndAdd": "á_Create lists of features to export as CSV and PDF. Use selection tools to choose which features to include and then click Create list____________________________________________________________________Ó.", - "selectSearchTip": "á_Select features from the input layer to add to your list. Draw with sketch tools, specify a search distance, and use features from another layer to select overlapping features_________________________________________________________________________________________Ó.", + "selectLayerAndAdd": "Cree listas de entidades para exportar como CSV y PDF. Utilice herramientas de selección para elegir las entidades que se van a incluir y luego haga clic en Crear lista.", + "selectSearchTip": "Seleccione entidades de la capa de entrada para agregar a su lista. Dibuje con las herramientas de bosquejo, especifique una distancia de búsqueda y utilice entidades de otra capa para seleccionar entidades superpuestas.", "selectLayerTip": "Dibuje formas para seleccionar entidades de la capa de selección elegida; los resultados se utilizarán para seleccionar entidades de la capa destinataria", "selectSketchTip": "Utilice las herramientas de boceto para dibujar gráficos en el mapa con el fin de seleccionar entidades intersecantes en la capa destinataria.", "optionalSearchDistance": "y, opcionalmente, agregar la distancia de búsqueda.", - "listHasSetsTip": "á_Edit or delete existing lists or click Create new list_____________________________Ó.", + "listHasSetsTip": "Edite o elimine las listas existentes o haga clic en Crear lista nueva.", "uniqueCout": "Recuento único: {{n}}", "searchDistance": "Distancia de búsqueda", "useLayerFeatures": "Usar entidades de capa", "export": "Exportar", - "exportTip": "á_Select lists to include in the exported file. Export lists as CSV and PDF______________________________________Ó.", + "exportTip": "Seleccione las listas que se vayan a incluir en el archivo exportado. Exporte listas como CSV y PDF.", "title": "Título", "addTitle": "Agregar título", "titlePlaceholder": "Introducir título aquí", @@ -35,8 +35,8 @@ "pdfOptions": "Opciones de PDF", "csvOptions": "Opciones de CSV", "refineSelection": "Refinar selección", - "refineTip": "á_Refine and finalize your lists by using sketch tools to add or remove selected features_____________________________________________Ó.", + "refineTip": "Limpie y termine las listas con las herramientas de bosquejo para agregar o eliminar entidades seleccionadas.", "refineTipNoSelections": "No hay selecciones para restringir. Vaya a Mis listas para crear una lista de entidades.", - "duplicatesTip": "á_Duplicate features are always removed. When enabled, pop-ups from each layer will be compared and any duplicate pop-up information will be removed___________________________________________________________________________Ó.", - "exportListsLabel": "á_My lists_________________Ó" + "duplicatesTip": "Las entidades duplicadas se eliminan siempre. Cuando se habilita, los elementos emergentes de cada capa se comparan y la información de los elementos emergentes duplicados se elimina.", + "exportListsLabel": "Mis listas" } \ No newline at end of file diff --git a/src/assets/t9n/public-notification/resources_et.json b/src/assets/t9n/public-notification/resources_et.json index b575f0453..ac5ac2e53 100644 --- a/src/assets/t9n/public-notification/resources_et.json +++ b/src/assets/t9n/public-notification/resources_et.json @@ -10,24 +10,24 @@ "selectedFeatures": "{{n}} valitud objektid", "noNotifications": "Teil pole veel teadete loendit.", "notifications": "Teavitused", - "myLists": "Š_Create and edit lists______________________ä", + "myLists": "Loendite loomine ja muutmine", "stepTwoFull": "Loo uus loend", "cancel": "Loobu", "done": "Valmis", - "selectPDFLabelOption": "Š_Format options_______________ä", - "removeDuplicate": "Š_Remove duplicates___________________ä:", + "selectPDFLabelOption": "Formaadi valikud", + "removeDuplicate": "Eemalda duplikaadid:", "numDuplicates": "{{n}} duplikaati", - "selectLayerAndAdd": "Š_Create lists of features to export as CSV and PDF. Use selection tools to choose which features to include and then click Create list____________________________________________________________________ä.", - "selectSearchTip": "Š_Select features from the input layer to add to your list. Draw with sketch tools, specify a search distance, and use features from another layer to select overlapping features_________________________________________________________________________________________ä.", + "selectLayerAndAdd": "Looge objektide loend, mille saab eksportida CSV- ja PDF-failina. Valige valiku tööriistadega objektid, mis soovite kaasata, ja seejärel klõpsake nuppu Loo loend.", + "selectSearchTip": "Valige sisendkihilt objektid, mis soovite lisada oma loendisse. Joonistage visandustööriistadega, määrake otsitav vahemaa ja kasutage mõne muu kihi objekte, et valida kattuvad objektid.", "selectLayerTip": "Joonistage kujundid, et valida objekte valitud valikukihilt; tulemusi kasutatakse objektide valimiseks adressaadi kihilt", "selectSketchTip": "Kasutage visandustööriistu kaardile graafika joonistamiseks, et valida lõikuvaid objekte adressaadi kihilt.", "optionalSearchDistance": "ja soovi korral lisage otsitav vahemaa.", - "listHasSetsTip": "Š_Edit or delete existing lists or click Create new list_____________________________ä.", + "listHasSetsTip": "Redigeerige või kustutage olemasolevaid loendeid või klõpsake nuppu Loo uus loend.", "uniqueCout": "Kordumatu arv: {{n}}", "searchDistance": "Otsitav vahemaa", "useLayerFeatures": "Kasuta kihi objekte", "export": "Ekspordi", - "exportTip": "Š_Select lists to include in the exported file. Export lists as CSV and PDF______________________________________ä.", + "exportTip": "Valige eksporditavas failis kaasatavad loendid. Eksportige loendid CSV- ja PDF-failina.", "title": "Pealkiri", "addTitle": "Lisage pealkiri", "titlePlaceholder": "Sisestage pealkiri siia", @@ -35,8 +35,8 @@ "pdfOptions": "PDF-i valikud", "csvOptions": "CSV valikud", "refineSelection": "Täpsusta valikut", - "refineTip": "Š_Refine and finalize your lists by using sketch tools to add or remove selected features_____________________________________________ä.", + "refineTip": "Täpsustage ja vormistage lõplikult oma loendid, kasutades visandustööriistu valitud objektide lisamiseks või eemaldamiseks.", "refineTipNoSelections": "Täpsustamiseks pole ühtegi valikut. Objektiloendi loomiseks avage Minu loendid.", - "duplicatesTip": "Š_Duplicate features are always removed. When enabled, pop-ups from each layer will be compared and any duplicate pop-up information will be removed___________________________________________________________________________ä.", - "exportListsLabel": "Š_My lists_________________ä" + "duplicatesTip": "Objektiduplikaadid eemaldatakse alati. Kui see on lubatud, võrreldakse iga kihi hüpikaknaid ja teabe hüpikakende duplikaadid eemaldatakse.", + "exportListsLabel": "Minu loendid" } \ No newline at end of file diff --git a/src/assets/t9n/public-notification/resources_fi.json b/src/assets/t9n/public-notification/resources_fi.json index 31c9b11bf..fe32d8264 100644 --- a/src/assets/t9n/public-notification/resources_fi.json +++ b/src/assets/t9n/public-notification/resources_fi.json @@ -10,24 +10,24 @@ "selectedFeatures": "{{n}} valittua kohdetta", "noNotifications": "Sinulla ei ole vielä ilmoitusluetteloa.", "notifications": "Ilmoitukset", - "myLists": "Å_Create and edit lists______________________ö", + "myLists": "Luo ja muokkaa luetteloita", "stepTwoFull": "Luo uusi luettelo", "cancel": "Peruuta", "done": "Valmis", - "selectPDFLabelOption": "Å_Format options_______________ö", - "removeDuplicate": "Å_Remove duplicates___________________ö:", + "selectPDFLabelOption": "Muotoiluasetukset", + "removeDuplicate": "Poista kaksoiskappaleet:", "numDuplicates": "{{n}} kaksoiskappaletta", - "selectLayerAndAdd": "Å_Create lists of features to export as CSV and PDF. Use selection tools to choose which features to include and then click Create list____________________________________________________________________ö.", - "selectSearchTip": "Å_Select features from the input layer to add to your list. Draw with sketch tools, specify a search distance, and use features from another layer to select overlapping features_________________________________________________________________________________________ö.", + "selectLayerAndAdd": "Luo luettelo kohteista, jotka viedään CSV- tai PDF-tiedostoon. Valitse sisällytettävät kohteet valintatyökaluilla ja napsauta sitten Luo luettelo.", + "selectSearchTip": "Valitse luetteloosi lisättävät kohteet lähtöaineiston karttatasosta. Piirrä luonnostyökaluilla, määritä hakuetäisyys ja valitse päällekkäiset kohteet käyttämällä toisen karttatason kohteita.", "selectLayerTip": "Piirtämällä muotoja voit valita kohteita valitusta valintakarttatasosta; tulosten avulla valitaan kohteita vastaanottajan karttatasosta", "selectSketchTip": "Luonnostyökaluilla voit piirtää kaavioita karttaan ja valita leikkaavia kohteita vastaanottajan karttatasossa.", "optionalSearchDistance": "ja valinnaisesti lisätään hakuetäisyys.", - "listHasSetsTip": "Å_Edit or delete existing lists or click Create new list_____________________________ö.", + "listHasSetsTip": "Muokkaa tai poista aiemmin luotuja luetteloita tai napsauta Luo uusi luettelo.", "uniqueCout": "Yksilöllinen määrä: {{n}}", "searchDistance": "Hakuetäisyys", "useLayerFeatures": "Käytä karttatason kohteita", "export": "Vie", - "exportTip": "Å_Select lists to include in the exported file. Export lists as CSV and PDF______________________________________ö.", + "exportTip": "Valitse vietyyn tiedostoon sisällytettävät luettelot. Vie luettelot CSV- ja PDF-tiedostoina.", "title": "Otsikko", "addTitle": "Lisää otsikko", "titlePlaceholder": "Kirjoita otsikko tähän", @@ -35,8 +35,8 @@ "pdfOptions": "PDF-asetukset", "csvOptions": "CSV-asetukset", "refineSelection": "Tarkenna valintaa", - "refineTip": "Å_Refine and finalize your lists by using sketch tools to add or remove selected features_____________________________________________ö.", + "refineTip": "Tarkenna ja viimeistele luetteloita käyttämällä luonnostyökaluja, jotta voit lisätä tai poistaa valittuja kohteita.", "refineTipNoSelections": "Tarkennettavia valintoja ei ole. Luo kohdeluettelo siirtymällä kohtaan Omat luettelot.", - "duplicatesTip": "Å_Duplicate features are always removed. When enabled, pop-ups from each layer will be compared and any duplicate pop-up information will be removed___________________________________________________________________________ö.", - "exportListsLabel": "Å_My lists_________________ö" + "duplicatesTip": "Kohteiden kaksoiskappaleet poistetaan aina. Kun toiminto on käytössä, jokaisen karttatason ponnahdusikkunoita verrataan ja mahdolliset ponnahdusikkunoiden tietojen kaksoiskappaleet poistetaan.", + "exportListsLabel": "Omat luettelot" } \ No newline at end of file diff --git a/src/assets/t9n/public-notification/resources_fr.json b/src/assets/t9n/public-notification/resources_fr.json index 3cf451a3f..a373fcec1 100644 --- a/src/assets/t9n/public-notification/resources_fr.json +++ b/src/assets/t9n/public-notification/resources_fr.json @@ -10,24 +10,24 @@ "selectedFeatures": "{{n}} entités sélectionnées", "noNotifications": "Il n’existe aucune liste de notifications pour le moment.", "notifications": "Notifications", - "myLists": "æ_Create and edit lists______________________Â", + "myLists": "Créer et modifier des listes", "stepTwoFull": "Créer une nouvelle liste", "cancel": "Annuler", "done": "Terminé", - "selectPDFLabelOption": "æ_Format options_______________Â", - "removeDuplicate": "æ_Remove duplicates___________________Â:", + "selectPDFLabelOption": "Options de format", + "removeDuplicate": "Supprimer les doublons :", "numDuplicates": "{{n}} doublons", - "selectLayerAndAdd": "æ_Create lists of features to export as CSV and PDF. Use selection tools to choose which features to include and then click Create list____________________________________________________________________Â.", - "selectSearchTip": "æ_Select features from the input layer to add to your list. Draw with sketch tools, specify a search distance, and use features from another layer to select overlapping features_________________________________________________________________________________________Â.", + "selectLayerAndAdd": "Créez des listes d’entités à exporter au format CSV et PDF. Utilisez les outils de sélection pour choisir les entités à inclure, puis cliquez sur Créer une liste.", + "selectSearchTip": "Sélectionnez les entités de la couche en entrée à ajouter à la liste. Dessinez avec les outils de dessin, spécifiez une distance de recherche et utilisez les entités d’une autre couche pour sélectionner des entités superposées.", "selectLayerTip": "Dessinez des formes pour sélectionner des entités dans la couche de sélection choisie. Les résultats servent à sélectionner des entités dans la couche de destinataires", "selectSketchTip": "Utilisez les outils de dessin pour tracer des graphismes sur la carte et sélectionner les entités d’intersection dans la couche de destinataires.", "optionalSearchDistance": "et ajoutez éventuellement une distance de recherche.", - "listHasSetsTip": "æ_Edit or delete existing lists or click Create new list_____________________________Â.", + "listHasSetsTip": "Modifiez ou supprimez des listes existantes ou cliquez sur Créer une nouvelle liste.", "uniqueCout": "Nombre de valeurs uniques : {{n}}", "searchDistance": "Distance de recherche", "useLayerFeatures": "Utiliser des entités de la couche", "export": "Exporter", - "exportTip": "æ_Select lists to include in the exported file. Export lists as CSV and PDF______________________________________Â.", + "exportTip": "Sélectionnez les listes à inclure dans le fichier exporté. Exportez les listes au format CSV et PDF.", "title": "Titre", "addTitle": "Ajouter un titre", "titlePlaceholder": "Saisir un titre ici", @@ -35,8 +35,8 @@ "pdfOptions": "Options PDF", "csvOptions": "Options CSV", "refineSelection": "Affiner la sélection", - "refineTip": "æ_Refine and finalize your lists by using sketch tools to add or remove selected features_____________________________________________Â.", + "refineTip": "Affinez et finalisez vos listes en utilisant les outils de dessin pour ajouter ou supprimer les entités sélectionnées.", "refineTipNoSelections": "Aucune sélection à affiner. Accédez à Mes listes pour créer une liste d’entités.", - "duplicatesTip": "æ_Duplicate features are always removed. When enabled, pop-ups from each layer will be compared and any duplicate pop-up information will be removed___________________________________________________________________________Â.", - "exportListsLabel": "æ_My lists_________________Â" + "duplicatesTip": "Les entités dupliquées sont toujours supprimées. Lorsque cette option est activée, les fenêtres contextuelles de chaque couche sont comparées et les informations dupliquées sont supprimées.", + "exportListsLabel": "Mes listes" } \ No newline at end of file diff --git a/src/assets/t9n/public-notification/resources_he.json b/src/assets/t9n/public-notification/resources_he.json index 2e5c657db..e2c721a52 100644 --- a/src/assets/t9n/public-notification/resources_he.json +++ b/src/assets/t9n/public-notification/resources_he.json @@ -10,24 +10,24 @@ "selectedFeatures": "נבחרו {{n}} ישויות", "noNotifications": "אין לך עדיין רשימת התראות.", "notifications": "הודעות", - "myLists": "כן_Create and edit lists______________________ש", + "myLists": "יצירה ועריכה של רשימות", "stepTwoFull": "צור רשימה חדשה", "cancel": "ביטול", "done": "בוצע", - "selectPDFLabelOption": "כן_Format options_______________ש", - "removeDuplicate": "כן_Remove duplicates___________________ש:", + "selectPDFLabelOption": "אפשרויות פורמט", + "removeDuplicate": "הסר כפילויות:", "numDuplicates": "{{n}} כפילויות", - "selectLayerAndAdd": "כן_Create lists of features to export as CSV and PDF. Use selection tools to choose which features to include and then click Create list____________________________________________________________________ש.", - "selectSearchTip": "כן_Select features from the input layer to add to your list. Draw with sketch tools, specify a search distance, and use features from another layer to select overlapping features_________________________________________________________________________________________ש.", + "selectLayerAndAdd": "צור רשימות של ישויות לייצוא כקובץ CSV או PDF. השתמש בכלי בחירה כדי לקבוע אילו ישויות ייכללו, ואז לחץ על 'צור רשימה'.", + "selectSearchTip": "בחר משכבת הקלט ישויות שיתווספו לרשימה שלך. צייר בעזרת כלי סקיצה, ציין מרחק חיפוש והשתמש בישויות משכבה אחרת כדי לבחור ישויות חופפות.", "selectLayerTip": "שרטט צורות כדי לבחור ישויות משכבת הבחירה שנבחרה; התוצאות ישמשו לבחיתר יישויות משכבת הנמען.", "selectSketchTip": "השתמש בכלי שרטוט כדי לצייר גרפיקות במפה לבחירת ישויות מצלבות בשכבות הנמען.", "optionalSearchDistance": "ואופציונלית הוסף מרחק חיפוש.", - "listHasSetsTip": "כן_Edit or delete existing lists or click Create new list_____________________________ש.", + "listHasSetsTip": "ערוך או מחק רשימות קיימות או לחץ על 'צור רשימה חדשה'.", "uniqueCout": "ספירת ייחודיים: {{n}}", "searchDistance": "מרחק חיפוש", "useLayerFeatures": "השתמש בישויות שכבה", "export": "ייצא", - "exportTip": "כן_Select lists to include in the exported file. Export lists as CSV and PDF______________________________________ש.", + "exportTip": "בחר רשימות שייכללו בקובץ המיוצא. ייצא רשימות כקובץ CSV או PDF.", "title": "כותרת", "addTitle": "הוסף כותרת", "titlePlaceholder": "הוסף כותרת כאן", @@ -35,8 +35,8 @@ "pdfOptions": "אפשרויות PDF", "csvOptions": "אפשרויות CSV", "refineSelection": "חידוד בחירה", - "refineTip": "כן_Refine and finalize your lists by using sketch tools to add or remove selected features_____________________________________________ש.", + "refineTip": "חדד והשלם את הרשימות שלך בעזרת כלי סקיצה להוספה או להסרה של ישויות שנבחרו.", "refineTipNoSelections": "אין בחירות לחידוד. עבור אל 'הרשימות שלי' כדי ליצור רשימת ישויות.", - "duplicatesTip": "כן_Duplicate features are always removed. When enabled, pop-ups from each layer will be compared and any duplicate pop-up information will be removed___________________________________________________________________________ש.", - "exportListsLabel": "כן_My lists_________________ש" + "duplicatesTip": "הסר תמיד ישויות כפולות. כשאפשרות זו מופעלת, מתבצעת השוואה בין החלונות קופצים מכל שכבה וכל התוכן הכפול בחלונות אלה יוסר.", + "exportListsLabel": "הרשימות שלי" } \ No newline at end of file diff --git a/src/assets/t9n/public-notification/resources_hr.json b/src/assets/t9n/public-notification/resources_hr.json index fbcb90073..52c785b30 100644 --- a/src/assets/t9n/public-notification/resources_hr.json +++ b/src/assets/t9n/public-notification/resources_hr.json @@ -10,24 +10,24 @@ "selectedFeatures": "{{n}} odabrani geoobjekti", "noNotifications": "Još nemate popis obavijesti.", "notifications": "Obavijesti", - "myLists": "Č_Create and edit lists______________________ž", + "myLists": "Stvaranje i uređivanje popisa", "stepTwoFull": "Stvori novi popis", "cancel": "Odustani", "done": "Gotovo", - "selectPDFLabelOption": "Č_Format options_______________ž", - "removeDuplicate": "Č_Remove duplicates___________________ž:", + "selectPDFLabelOption": "Opcije formata", + "removeDuplicate": "Ukloni duplikate:", "numDuplicates": "{{n}} duplikati", - "selectLayerAndAdd": "Č_Create lists of features to export as CSV and PDF. Use selection tools to choose which features to include and then click Create list____________________________________________________________________ž.", - "selectSearchTip": "Č_Select features from the input layer to add to your list. Draw with sketch tools, specify a search distance, and use features from another layer to select overlapping features_________________________________________________________________________________________ž.", + "selectLayerAndAdd": "Stvorite popise geoobjekata za izvoz kao CSV i PDF. Upotrijebite alate za odabir kako biste odabrali geoobjekte koje ćete uključiti, a zatim kliknite Stvori popis.", + "selectSearchTip": "Odaberite geoobjekte iz ulaznog sloja koje želite dodati na svoj popis. Crtajte alatima za skiciranje, odredite udaljenost pretraživanja i koristite geoobjekte iz drugog sloja za odabir geoobjekata koje se preklapaju.", "selectLayerTip": "Nacrtajte oblike za odabir geoobjekata iz odabranog sloja za odabir; a rezultati će se koristiti za odabir geoobjekata iz sloja primatelja", "selectSketchTip": "Koristite alate za skiciranje za crtanje grafike na karti kako biste odabrali značajke koje se presijecaju u sloju primatelja.", "optionalSearchDistance": "Opcionalno možete dodati i udaljenost pretrage.", - "listHasSetsTip": "Č_Edit or delete existing lists or click Create new list_____________________________ž.", + "listHasSetsTip": "Uredite ili izbrišite postojeće popise ili kliknite Stvori novi popis.", "uniqueCout": "Jedinstven zbroj: {{n}}", "searchDistance": "Pretraži udaljenost", "useLayerFeatures": "Upotrijebi geoobjekte sloja", "export": "Izvezi", - "exportTip": "Č_Select lists to include in the exported file. Export lists as CSV and PDF______________________________________ž.", + "exportTip": "Odaberite popise za uključivanje u izvezenu datoteku. Izvezite popise u CSV i PDF formatu.", "title": "Naziv", "addTitle": "Dodaj naslov", "titlePlaceholder": "Unesite naslov ovdje", @@ -35,8 +35,8 @@ "pdfOptions": "Opcije PDF-a", "csvOptions": "Opcije CSV-a", "refineSelection": "Pročisti odabir", - "refineTip": "Č_Refine and finalize your lists by using sketch tools to add or remove selected features_____________________________________________ž.", + "refineTip": "Pročistite i finalizirajte svoje popise pomoću alata za skiciranje za dodavanje ili uklanjanje odabranih geoobjekata.", "refineTipNoSelections": "Nema odabira za precizirati. Idite na Moje popise da biste stvorili popis geoobjekata.", - "duplicatesTip": "Č_Duplicate features are always removed. When enabled, pop-ups from each layer will be compared and any duplicate pop-up information will be removed___________________________________________________________________________ž.", - "exportListsLabel": "Č_My lists_________________ž" + "duplicatesTip": "Duplicirani geoobjekti uvijek se uklanjaju. Kada je omogućeno, skočni prozori sa svakog sloja će se uspoređivati i svi dupli podaci u skočnim prozorima bit će uklonjeni.", + "exportListsLabel": "Moji popisi" } \ No newline at end of file diff --git a/src/assets/t9n/public-notification/resources_hu.json b/src/assets/t9n/public-notification/resources_hu.json index 97f0b9483..ef7e3eef5 100644 --- a/src/assets/t9n/public-notification/resources_hu.json +++ b/src/assets/t9n/public-notification/resources_hu.json @@ -10,24 +10,24 @@ "selectedFeatures": "{{n}} kiválasztott vektoros elem", "noNotifications": "Önnek még nincs értesítési listája.", "notifications": "Értesítések", - "myLists": "í_Create and edit lists______________________ő", + "myLists": "Listák létrehozása és szerkesztése", "stepTwoFull": "Új lista létrehozása", "cancel": "Mégse", "done": "Kész", - "selectPDFLabelOption": "í_Format options_______________ő", - "removeDuplicate": "í_Remove duplicates___________________ő:", + "selectPDFLabelOption": "Formátumbeállítások", + "removeDuplicate": "Ismétlődők eltávolítása:", "numDuplicates": "{{n}} ismétlődő", - "selectLayerAndAdd": "í_Create lists of features to export as CSV and PDF. Use selection tools to choose which features to include and then click Create list____________________________________________________________________ő.", - "selectSearchTip": "í_Select features from the input layer to add to your list. Draw with sketch tools, specify a search distance, and use features from another layer to select overlapping features_________________________________________________________________________________________ő.", + "selectLayerAndAdd": "Létrehozhatja a CSV- vagy PDF-fájlba exportálandó vektoros elemek listáit. Válassza ki a kijelölőeszközökkel a felvenni kívánt vektoros elemeket, majd kattintson a Lista létrehozása gombra.", + "selectSearchTip": "Válassza ki a listára felvenni kívánt vektoros elemeket a bemeneti rétegből. Rajzoljon a vázlateszközökkel, adjon meg egy keresési távolságot, és használja egy másik réteg vektoros elemeit az átfedő vektoros elemek kiválasztásához.", "selectLayerTip": "Alakzatok rajzolása a választott kiválasztási réteg vektoros elemeinek kijelölésére; az eredményeket a címzett réteg vektoros elemeinek kiválasztására fogja használni.", "selectSketchTip": "A vázlateszközökkel grafikákat rajzolhat a térképen a címzett réteg metszéspontjainak kijelölésére.", "optionalSearchDistance": "és opcionálisan hozzáadhatja a keresési távolságot.", - "listHasSetsTip": "í_Edit or delete existing lists or click Create new list_____________________________ő.", + "listHasSetsTip": "Szerkessze vagy törölje a meglévő listákat, vagy kattintson az Új lista létrehozása gombra.", "uniqueCout": "Egyedi szám: {{n}}", "searchDistance": "Keresési távolság", "useLayerFeatures": "Réteg vektoros elemek használata", "export": "Exportálás", - "exportTip": "í_Select lists to include in the exported file. Export lists as CSV and PDF______________________________________ő.", + "exportTip": "Válassza ki az exportált fájlba felvenni kívánt listákat. Exportálja a listákat CSV és PDF formátumban.", "title": "Cím", "addTitle": "Cím megadása", "titlePlaceholder": "Itt adja meg a címet", @@ -35,8 +35,8 @@ "pdfOptions": "PDF opciók", "csvOptions": "CSV opciók", "refineSelection": "Kijelölés finomítása", - "refineTip": "í_Refine and finalize your lists by using sketch tools to add or remove selected features_____________________________________________ő.", + "refineTip": "Finomítsa és véglegesítse listáit a vázlateszközökkel a vektoros elemek hozzáadásához vagy eltávolításához.", "refineTipNoSelections": "Nincsenek finomítandó választások. Menjen a Saját listák menüpontba, hogy létrehozza a vektoros elemek listáját.", - "duplicatesTip": "í_Duplicate features are always removed. When enabled, pop-ups from each layer will be compared and any duplicate pop-up information will be removed___________________________________________________________________________ő.", - "exportListsLabel": "í_My lists_________________ő" + "duplicatesTip": "A vektoros elemek ismétlődései mindig el lesznek távolítva. Ha engedélyezve van, az egyes rétegek előugró ablakai össze lesznek hasonlítva, és az előugró ablakok ismétlődő információi el lesznek távolítva.", + "exportListsLabel": "Saját listák" } \ No newline at end of file diff --git a/src/assets/t9n/public-notification/resources_id.json b/src/assets/t9n/public-notification/resources_id.json index 40700dd38..663318135 100644 --- a/src/assets/t9n/public-notification/resources_id.json +++ b/src/assets/t9n/public-notification/resources_id.json @@ -10,24 +10,24 @@ "selectedFeatures": "{{n}} fitur yang dipilih", "noNotifications": "Anda belum memiliki daftar notifikasi.", "notifications": "Notifikasi", - "myLists": "ng_Create and edit lists______________________ny", + "myLists": "Membuat dan mengedit daftar", "stepTwoFull": "Buat daftar baru", "cancel": "Batalkan", "done": "Selesai", - "selectPDFLabelOption": "ng_Format options_______________ny", - "removeDuplicate": "ng_Remove duplicates___________________ny:", + "selectPDFLabelOption": "Opsi format", + "removeDuplicate": "Hapus duplikat:", "numDuplicates": "{{n}} duplikat", - "selectLayerAndAdd": "ng_Create lists of features to export as CSV and PDF. Use selection tools to choose which features to include and then click Create list____________________________________________________________________ny.", - "selectSearchTip": "ng_Select features from the input layer to add to your list. Draw with sketch tools, specify a search distance, and use features from another layer to select overlapping features_________________________________________________________________________________________ny.", + "selectLayerAndAdd": "Buat daftar fitur untuk diekspor sebagai CSV dan PDF. Gunakan alat seleksi untuk memilih fitur mana yang akan disertakan, lalu klik Buat daftar.", + "selectSearchTip": "Pilih fitur dari layer input untuk ditambahkan ke daftar Anda. Gambarlah dengan alat sketsa, tentukan jarak pencarian, dan gunakan fitur dari layer lain untuk memilih fitur yang tumpang tindih.", "selectLayerTip": "Gambar bentuk untuk memilih fitur dari layer pemilihan yang dipilih; hasilnya akan digunakan untuk memilih fitur dari layer penerima", "selectSketchTip": "Gunakan alat sketsa untuk menggambar grafik di peta untuk memilih fitur simpangan di layer penerima.", "optionalSearchDistance": "dan secara opsional menambahkan jarak pencarian.", - "listHasSetsTip": "ng_Edit or delete existing lists or click Create new list_____________________________ny.", + "listHasSetsTip": "Edit atau hapus daftar yang ada atau klik Buat daftar baru.", "uniqueCout": "Jumlah Unik: {{n}}", "searchDistance": "Jarak pencarian", "useLayerFeatures": "Gunakan fitur layer", "export": "Ekspor", - "exportTip": "ng_Select lists to include in the exported file. Export lists as CSV and PDF______________________________________ny.", + "exportTip": "Pilih daftar untuk disertakan dalam file yang diekspor. Ekspor daftar sebagai CSV dan PDF.", "title": "Judul", "addTitle": "Tambahkan judul", "titlePlaceholder": "Masukkan judul di sini", @@ -35,8 +35,8 @@ "pdfOptions": "Opsi PDF", "csvOptions": "Opsi CSV", "refineSelection": "Perjelas pilihan", - "refineTip": "ng_Refine and finalize your lists by using sketch tools to add or remove selected features_____________________________________________ny.", + "refineTip": "Sempurnakan dan selesaikan daftar Anda dengan menggunakan alat sketsa untuk menambah atau menghapus fitur yang dipilih.", "refineTipNoSelections": "Tidak ada pilihan yang dapat diperjelas. Buka Daftar saya untuk membuat daftar fitur.", - "duplicatesTip": "ng_Duplicate features are always removed. When enabled, pop-ups from each layer will be compared and any duplicate pop-up information will be removed___________________________________________________________________________ny.", - "exportListsLabel": "ng_My lists_________________ny" + "duplicatesTip": "Fitur duplikat selalu dihapus. Saat diaktifkan, pop-up dari setiap layer akan dibandingkan dan informasi pop-up duplikat apa pun akan dihapus.", + "exportListsLabel": "Daftar saya" } \ No newline at end of file diff --git a/src/assets/t9n/public-notification/resources_it.json b/src/assets/t9n/public-notification/resources_it.json index c2d9c3b1b..715b58bdf 100644 --- a/src/assets/t9n/public-notification/resources_it.json +++ b/src/assets/t9n/public-notification/resources_it.json @@ -10,24 +10,24 @@ "selectedFeatures": "{{n}} feature selezionate", "noNotifications": "Non si dispone di alcun elenco di notifica.", "notifications": "Notifiche", - "myLists": "é_Create and edit lists______________________È", + "myLists": "Creare e modificare elenchi", "stepTwoFull": "Crea nuovo elenco", "cancel": "Annulla", "done": "Completato", - "selectPDFLabelOption": "é_Format options_______________È", - "removeDuplicate": "é_Remove duplicates___________________È:", + "selectPDFLabelOption": "Opzioni per il formato", + "removeDuplicate": "Rimuovi duplicati:", "numDuplicates": "{{n}} duplicati", - "selectLayerAndAdd": "é_Create lists of features to export as CSV and PDF. Use selection tools to choose which features to include and then click Create list____________________________________________________________________È.", - "selectSearchTip": "é_Select features from the input layer to add to your list. Draw with sketch tools, specify a search distance, and use features from another layer to select overlapping features_________________________________________________________________________________________È.", + "selectLayerAndAdd": "Creare elenchi di feature da esportare in formato CSV e PDF. Usare gli strumenti di selezione per scegliere quale feature utilizzare, quindi fare clic su Crea elenco.", + "selectSearchTip": "Selezionare feature dal layer di input da aggiungere all'elenco. Disegnare con gli strumenti di schizzo, specificare una distanza di ricerca e usare le feature di un altro layer per selezionare feature che si sovrappongono.", "selectLayerTip": "Disegnare delle figure per selezionare le feature dal layer di selezione scelto; i risultati verranno utilizzati per selezionare le feature dal layer destinatario", "selectSketchTip": "Utilizzare gli strumenti di disegno per disegnare figure nella mappa e selezionare feature intersecanti nel layer destinatario.", "optionalSearchDistance": "e facoltativamente aggiungere la distanza di ricerca.", - "listHasSetsTip": "é_Edit or delete existing lists or click Create new list_____________________________È.", + "listHasSetsTip": "Modificare o eliminare elenchi esistenti o fare clic su Crea nuovo elenco.", "uniqueCout": "Conteggio univoco: {{n}}", "searchDistance": "Distanza di ricerca", "useLayerFeatures": "Utilizza feature del layer", "export": "Esporta", - "exportTip": "é_Select lists to include in the exported file. Export lists as CSV and PDF______________________________________È.", + "exportTip": "Selezionare elenchi da includere nel file esportato. Esportare elenchi in formato CSV e PDF.", "title": "Titolo", "addTitle": "Aggiungi titolo", "titlePlaceholder": "Inserire titolo qui", @@ -35,8 +35,8 @@ "pdfOptions": "Opzioni PDF", "csvOptions": "Opzioni CSV", "refineSelection": "Ottimizza selezione", - "refineTip": "é_Refine and finalize your lists by using sketch tools to add or remove selected features_____________________________________________È.", + "refineTip": "Affinare e finalizzare gli elenchi utilizzando gli strumenti di schizzo per aggiungere o rimuovere feature selezionate.", "refineTipNoSelections": "Non ci sono selezioni da affinare. Vai su I miei elenchi per creare un elenco di feature.", - "duplicatesTip": "é_Duplicate features are always removed. When enabled, pop-ups from each layer will be compared and any duplicate pop-up information will be removed___________________________________________________________________________È.", - "exportListsLabel": "é_My lists_________________È" + "duplicatesTip": "Le feature duplicate vengono sempre rimosse. Quando abilitato, si confrontano i pop-up di ciascun layer e tutte le informazioni pop-up duplicate saranno rimosse.", + "exportListsLabel": "I miei elenchi" } \ No newline at end of file diff --git a/src/assets/t9n/public-notification/resources_ja.json b/src/assets/t9n/public-notification/resources_ja.json index b2e4a1917..d21a1978e 100644 --- a/src/assets/t9n/public-notification/resources_ja.json +++ b/src/assets/t9n/public-notification/resources_ja.json @@ -10,24 +10,24 @@ "selectedFeatures": "{{n}} の選択フィーチャ", "noNotifications": "通知リストがまだありません。", "notifications": "通知", - "myLists": "須_Create and edit lists______________________鷗", + "myLists": "リストの作成および編集", "stepTwoFull": "新しいリストの作成", "cancel": "キャンセル", "done": "完了", - "selectPDFLabelOption": "須_Format options_______________鷗", - "removeDuplicate": "須_Remove duplicates___________________鷗:", + "selectPDFLabelOption": "書式設定オプション", + "removeDuplicate": "重複を削除:", "numDuplicates": "{{n}} の重複", - "selectLayerAndAdd": "須_Create lists of features to export as CSV and PDF. Use selection tools to choose which features to include and then click Create list____________________________________________________________________鷗.", - "selectSearchTip": "須_Select features from the input layer to add to your list. Draw with sketch tools, specify a search distance, and use features from another layer to select overlapping features_________________________________________________________________________________________鷗.", + "selectLayerAndAdd": "CSV および PDF としてエクスポートするフィーチャのリストを作成します。 選択ツールを使用して、含めるフィーチャを選択してから、リストの作成をクリックします。", + "selectSearchTip": "リストに追加するフィーチャを入力レイヤーから選択します。 スケッチ ツールで描画して、検索距離を指定し、別のレイヤーのフィーチャを使用して、重なり合っているフィーチャを選択します。", "selectLayerTip": "図形を描画して、選択した選択レイヤーからフィーチャを選択します。結果は宛先レイヤーからのフィーチャの選択に使用されます", "selectSketchTip": "スケッチ ツールを使用して、マップにグラフィックスを描画し、宛先レイヤー内の交差するフィーチャを選択します。", "optionalSearchDistance": "必要に応じて、検索距離を追加します。", - "listHasSetsTip": "須_Edit or delete existing lists or click Create new list_____________________________鷗.", + "listHasSetsTip": "既存のリストを編集または削除するか、新しいリストの作成をクリックします。", "uniqueCout": "個別の数: {{n}}", "searchDistance": "検索距離", "useLayerFeatures": "レイヤー フィーチャの使用", "export": "エクスポート", - "exportTip": "須_Select lists to include in the exported file. Export lists as CSV and PDF______________________________________鷗.", + "exportTip": "エクスポートしたファイルに含めるリストを選択します。 リストを CSV および PDF としてエクスポートします。", "title": "タイトル", "addTitle": "タイトルの追加", "titlePlaceholder": "ここにタイトルを入力", @@ -35,8 +35,8 @@ "pdfOptions": "PDF オプション", "csvOptions": "CSV オプション", "refineSelection": "選択の調整", - "refineTip": "須_Refine and finalize your lists by using sketch tools to add or remove selected features_____________________________________________鷗.", + "refineTip": "リストを絞り込んで確定するには、スケッチ ツールを使用して、選択したフィーチャを追加または削除します。", "refineTipNoSelections": "絞り込む選択セットがありません。 マイ リストに移動して、フィーチャのリストを作成します。", - "duplicatesTip": "須_Duplicate features are always removed. When enabled, pop-ups from each layer will be compared and any duplicate pop-up information will be removed___________________________________________________________________________鷗.", - "exportListsLabel": "須_My lists_________________鷗" + "duplicatesTip": "重複するフィーチャは常に削除されます。 有効化されている場合、各レイヤーのポップアップが比較され、重複するポップアップ情報がすべて削除されます。", + "exportListsLabel": "マイ リスト" } \ No newline at end of file diff --git a/src/assets/t9n/public-notification/resources_ko.json b/src/assets/t9n/public-notification/resources_ko.json index b49dbf3f5..60ce2af04 100644 --- a/src/assets/t9n/public-notification/resources_ko.json +++ b/src/assets/t9n/public-notification/resources_ko.json @@ -10,24 +10,24 @@ "selectedFeatures": "선택한 피처 {{n}}개", "noNotifications": "아직 알림 목록이 없습니다.", "notifications": "알림", - "myLists": "한_Create and edit lists______________________빠", + "myLists": "목록 생성 및 편집", "stepTwoFull": "새 목록 생성", "cancel": "취소", "done": "완료", - "selectPDFLabelOption": "한_Format options_______________빠", - "removeDuplicate": "한_Remove duplicates___________________빠:", + "selectPDFLabelOption": "형식 옵션", + "removeDuplicate": "중복 제거:", "numDuplicates": "중복 {{n}}개", - "selectLayerAndAdd": "한_Create lists of features to export as CSV and PDF. Use selection tools to choose which features to include and then click Create list____________________________________________________________________빠.", - "selectSearchTip": "한_Select features from the input layer to add to your list. Draw with sketch tools, specify a search distance, and use features from another layer to select overlapping features_________________________________________________________________________________________빠.", + "selectLayerAndAdd": "CSV 및 PDF로 내보낼 피처 목록을 생성합니다. 선택 항목 도구를 사용하여 포함할 피처를 선택한 다음 목록 생성을 클릭합니다.", + "selectSearchTip": "입력 레이어에서 피처를 선택하여 목록에 추가합니다. 스케치 도구로 그리고, 검색 거리를 지정하고, 다른 레이어의 피처를 사용하여 중첩 피처를 선택합니다.", "selectLayerTip": "쉐이프를 그려 선택한 선택 레이어에서 피처를 선택합니다. 결과는 수신인 레이어에서 피처를 선택하는 데 사용됩니다.", "selectSketchTip": "스케치 도구를 사용하여 맵에 그래픽을 그려 수신인 레이어에서 교차 피처를 선택합니다.", "optionalSearchDistance": "필요에 따라 검색 거리를 추가합니다.", - "listHasSetsTip": "한_Edit or delete existing lists or click Create new list_____________________________빠.", + "listHasSetsTip": "기존 목록을 편집 또는 삭제하거나 새 목록 생성을 클릭합니다.", "uniqueCout": "고유 개수: {{n}}", "searchDistance": "검색 거리", "useLayerFeatures": "레이어 피처 사용", "export": "내보내기", - "exportTip": "한_Select lists to include in the exported file. Export lists as CSV and PDF______________________________________빠.", + "exportTip": "내보낸 파일에 포함할 목록을 선택합니다. 목록을 CSV 및 PDF로 내보냅니다.", "title": "제목", "addTitle": "제목 추가", "titlePlaceholder": "여기에 제목 입력", @@ -35,8 +35,8 @@ "pdfOptions": "PDF 옵션", "csvOptions": "CSV 옵션", "refineSelection": "선택 항목 세부 조정", - "refineTip": "한_Refine and finalize your lists by using sketch tools to add or remove selected features_____________________________________________빠.", + "refineTip": "스케치 도구를 사용해 선택한 피처를 추가하거나 제거하여 목록을 세부 조정하고 마무리합니다.", "refineTipNoSelections": "세부 조정할 선택 항목이 없습니다. 내 목록으로 이동하여 피처 목록을 생성합니다.", - "duplicatesTip": "한_Duplicate features are always removed. When enabled, pop-ups from each layer will be compared and any duplicate pop-up information will be removed___________________________________________________________________________빠.", - "exportListsLabel": "한_My lists_________________빠" + "duplicatesTip": "중복 피처는 항상 제거됩니다. 활성화된 경우 각 레이어의 팝업을 비교하여 중복 팝업 정보가 모두 제거됩니다.", + "exportListsLabel": "내 목록" } \ No newline at end of file diff --git a/src/assets/t9n/public-notification/resources_lt.json b/src/assets/t9n/public-notification/resources_lt.json index 94727df09..a0698912b 100644 --- a/src/assets/t9n/public-notification/resources_lt.json +++ b/src/assets/t9n/public-notification/resources_lt.json @@ -10,24 +10,24 @@ "selectedFeatures": "Pasirinkta elementų: {{n}}", "noNotifications": "Dar neturite pranešimų sąrašo.", "notifications": "Pranešimai", - "myLists": "Į_Create and edit lists______________________š", + "myLists": "Kurti ir redaguoti sąrašus", "stepTwoFull": "Kurti naują sąrašą", "cancel": "Atšaukti", "done": "Atlikta", - "selectPDFLabelOption": "Į_Format options_______________š", - "removeDuplicate": "Į_Remove duplicates___________________š:", + "selectPDFLabelOption": "Formato variantai", + "removeDuplicate": "Pašalinti dublikatus:", "numDuplicates": "{{n}} dublikatai (-ų)", - "selectLayerAndAdd": "Į_Create lists of features to export as CSV and PDF. Use selection tools to choose which features to include and then click Create list____________________________________________________________________š.", - "selectSearchTip": "Į_Select features from the input layer to add to your list. Draw with sketch tools, specify a search distance, and use features from another layer to select overlapping features_________________________________________________________________________________________š.", + "selectLayerAndAdd": "Sukurkite elementų, kuriuos norite eksportuoti į CSV ir PDF failą, sąrašus. Naudodami pasirinkimo įrankius pasirinkite, kuriuos elementus norite įtraukti, tada spustelėkite Kurti sąrašą.", + "selectSearchTip": "Iš įvesties sluoksnio pasirinkite elementus, kuriuos norite įtraukti į sąrašą. Braižykite naudodami eskizavimo įrankius, nurodykite paieškos atstumą ir naudokite kito sluoksnio elementus, kad pasirinktumėte persidengiančius elementus.", "selectLayerTip": "Braižykite figūras, kuriose galite pasirinkti elementus. Rezultatai bus naudojami adresato sluoksnio ypatybėms pasirinkti", "selectSketchTip": "Naudokite eskizų įrankius, norėdami kurti grafiką žemėlapyje, kad galėtumėte pasirinkti susikertančias adresato sluoksnio ypatybes.", "optionalSearchDistance": "ir pasirinktinai pridėti paieškos atstumą.", - "listHasSetsTip": "Į_Edit or delete existing lists or click Create new list_____________________________š.", + "listHasSetsTip": "Redaguokite arba ištrinkite esamus sąrašus arba spustelėkite Kurti naują sąrašą.", "uniqueCout": "Unikalus skaičius: {{n}}", "searchDistance": "Paieškos atstumas", "useLayerFeatures": "Naudoti sluoksnio elementus", "export": "Eksportuoti", - "exportTip": "Į_Select lists to include in the exported file. Export lists as CSV and PDF______________________________________š.", + "exportTip": "Pasirinkite sąrašus, kuriuos norite įtraukti į eksportuotą failą. Eksportuokite sąrašus CSV ir PDF formatu.", "title": "Pavadinimas", "addTitle": "Pridėti pavadinimą", "titlePlaceholder": "Įveskite pavadinimą čia", @@ -35,8 +35,8 @@ "pdfOptions": "PDF parinktys", "csvOptions": "CSV parinktys", "refineSelection": "Tikslinti pasirinkimą", - "refineTip": "Į_Refine and finalize your lists by using sketch tools to add or remove selected features_____________________________________________š.", + "refineTip": "Norėdami pridėti arba pašalinti pasirinktus elementus, patikslinkite ir užbaikite sąrašus naudodami eskizavimo įrankius.", "refineTipNoSelections": "Nėra pasirinkimo apimties, kurią galima būtų patikslinti. Norėdami sukurti elementų sąrašą, eikite į Mano sąrašai.", - "duplicatesTip": "Į_Duplicate features are always removed. When enabled, pop-ups from each layer will be compared and any duplicate pop-up information will be removed___________________________________________________________________________š.", - "exportListsLabel": "Į_My lists_________________š" + "duplicatesTip": "Pasikartojantys elementai visada pašalinami. Jei ši parinktis įjungta, kiekvieno sluoksnio iššokantieji langai bus palyginami ir visa pasikartojanti iššokančiųjų langų informacija bus pašalinama.", + "exportListsLabel": "Mano sąrašai" } \ No newline at end of file diff --git a/src/assets/t9n/public-notification/resources_lv.json b/src/assets/t9n/public-notification/resources_lv.json index ae23f84e6..b6a8851ab 100644 --- a/src/assets/t9n/public-notification/resources_lv.json +++ b/src/assets/t9n/public-notification/resources_lv.json @@ -10,24 +10,24 @@ "selectedFeatures": "{{n}} izvēlētie elementi", "noNotifications": "Jums vēl nav paziņojumu saraksta.", "notifications": "Paziņojumi", - "myLists": "ķ_Create and edit lists______________________ū", + "myLists": "Izveidot un rediģēt sarakstus", "stepTwoFull": "Izveidot jaunu sarakstu", "cancel": "Atcelt", "done": "Gatavs", - "selectPDFLabelOption": "ķ_Format options_______________ū", - "removeDuplicate": "ķ_Remove duplicates___________________ū:", + "selectPDFLabelOption": "Formāta opcijas", + "removeDuplicate": "Noņemt dublikātus:", "numDuplicates": "{{n}} dublikāti", - "selectLayerAndAdd": "ķ_Create lists of features to export as CSV and PDF. Use selection tools to choose which features to include and then click Create list____________________________________________________________________ū.", - "selectSearchTip": "ķ_Select features from the input layer to add to your list. Draw with sketch tools, specify a search distance, and use features from another layer to select overlapping features_________________________________________________________________________________________ū.", + "selectLayerAndAdd": "Izveidojiet to elementu sarakstus, ko eksportēt kā CSV un PDF. Izmantojiet izvēles rīkus, lai atlasītu, kurus elementus iekļaut, un pēc tam noklikšķiniet uz Izveidot sarakstu.", + "selectSearchTip": "Izvēlieties elementus no ievades slāņa, ko pievienot sarakstam. Zīmējiet ar skiču rīkiem, norādiet meklēšanas attālumu un izmantojiet cita slāņa elementus, lai izvēlētos elemetus, kas pārklājas.", "selectLayerTip": "Zīmējiet formas, lai atlasītu elementus no izvēlētā atlases slāņa; rezultāti tiks izmantoti, lai izvēlētu elementus no adresāta slāņa", "selectSketchTip": "Izmantojiet skiču rīkus, lai kartē uzzīmētu grafikus un adresāta slānī atlasītu krustojošos elementus.", "optionalSearchDistance": "un pēc izvēles pievienojiet meklēšanas attālumu.", - "listHasSetsTip": "ķ_Edit or delete existing lists or click Create new list_____________________________ū.", + "listHasSetsTip": "Rediģējiet vai dzēsiet esošos sarakstus vai noklikšķiniet uz Izveidot jaunu sarakstu.", "uniqueCout": "Unikāls skaits: {{n}}", "searchDistance": "Meklēšanas attālums", "useLayerFeatures": "Izmantot slāņa elementus", "export": "Eksportēt", - "exportTip": "ķ_Select lists to include in the exported file. Export lists as CSV and PDF______________________________________ū.", + "exportTip": "Izvēlieties sarakstus, ko iekļaut eksportētajā failā. Esportēt sarakstus kā CSV un PDF.", "title": "Nosaukums", "addTitle": "Pievienot nosaukumu", "titlePlaceholder": "Šeit ievadiet virsrakstu", @@ -35,8 +35,8 @@ "pdfOptions": "PDF opcijas", "csvOptions": "CSV opcijas", "refineSelection": "Precizēt atlasi", - "refineTip": "ķ_Refine and finalize your lists by using sketch tools to add or remove selected features_____________________________________________ū.", + "refineTip": "Precizējiet un pabeidziet sarakstus, izmantojot skiču rīkus, lai pievienotu vai noņemtu izvēlētos elementus.", "refineTipNoSelections": "Nav atlases, ko precizēt. Atveriet Mani saraksti, lai izveidotu elementu sarakstu.", - "duplicatesTip": "ķ_Duplicate features are always removed. When enabled, pop-ups from each layer will be compared and any duplicate pop-up information will be removed___________________________________________________________________________ū.", - "exportListsLabel": "ķ_My lists_________________ū" + "duplicatesTip": "Dubultie elementi vienmēr tiek noņemti. Ja šī opcija ir iespējota, tiek salīdzināti katra slāņa uznirstošie logi un tiek noņemts jebkurš uznirstošās informācijas dublikāts.", + "exportListsLabel": "Mani saraksti" } \ No newline at end of file diff --git a/src/assets/t9n/public-notification/resources_nb.json b/src/assets/t9n/public-notification/resources_nb.json index 28d2089ad..dadba9bab 100644 --- a/src/assets/t9n/public-notification/resources_nb.json +++ b/src/assets/t9n/public-notification/resources_nb.json @@ -10,24 +10,24 @@ "selectedFeatures": "{{n}} valgte geoobjekter", "noNotifications": "Du har ingen varslingsliste ennå.", "notifications": "Kunngjøringer", - "myLists": "å_Create and edit lists______________________ø", + "myLists": "Opprett og rediger lister", "stepTwoFull": "Opprett ny liste", "cancel": "Avbryt", "done": "Ferdig", - "selectPDFLabelOption": "å_Format options_______________ø", - "removeDuplicate": "å_Remove duplicates___________________ø:", + "selectPDFLabelOption": "Formatalternativer", + "removeDuplicate": "Fjern duplikater:", "numDuplicates": "{{n}} duplikater", - "selectLayerAndAdd": "å_Create lists of features to export as CSV and PDF. Use selection tools to choose which features to include and then click Create list____________________________________________________________________ø.", - "selectSearchTip": "å_Select features from the input layer to add to your list. Draw with sketch tools, specify a search distance, and use features from another layer to select overlapping features_________________________________________________________________________________________ø.", + "selectLayerAndAdd": "Opprett lister over geoobjekter som skal eksporteres som CSV eller PDF. Bruk valgverktøy til å velge hvilke geoobjekter som skal inkluderes, og klikk deretter på Opprett liste.", + "selectSearchTip": "Velg geoobjekter fra inndatalaget som skal legges til i listen. Tegn med skisseverktøy, angi en søkeavstand, og bruk geoobjekter fra andre lag til å velge overlappende geoobjekter.", "selectLayerTip": "Tegn former for å velge geoobjekter fra utvalgslaget som er valgt. Resultatene blir brukt til å velge geoobjekter fra adressatlaget.", "selectSketchTip": "Bruk skisseverktøy til å tegne grafikk i kartet for å velge kryssende geoobjekter i adressatlaget.", "optionalSearchDistance": "og legg eventuelt til søkeavstand.", - "listHasSetsTip": "å_Edit or delete existing lists or click Create new list_____________________________ø.", + "listHasSetsTip": "Rediger eller slett eksisterende lister, eller klikk på Opprett ny liste.", "uniqueCout": "Antall unike verdier: {{n}}", "searchDistance": "Søkeavstand", "useLayerFeatures": "Bruk laggeoobjekter", "export": "Eksporter", - "exportTip": "å_Select lists to include in the exported file. Export lists as CSV and PDF______________________________________ø.", + "exportTip": "Velg lister som skal inkluderes i den eksporterte filen. Eksporter lister som CSV og PDF.", "title": "Tittel", "addTitle": "Legg til tittel", "titlePlaceholder": "Skriv inn tittel her", @@ -35,8 +35,8 @@ "pdfOptions": "PDF-alternativer", "csvOptions": "CSV-alternativer", "refineSelection": "Begrens utvalg", - "refineTip": "å_Refine and finalize your lists by using sketch tools to add or remove selected features_____________________________________________ø.", + "refineTip": "Finjuster og ferdigstill listene ved å bruke skisseverktøy til å legge til eller fjerne valgte geoobjekter.", "refineTipNoSelections": "Det er ingen utvalg å finjustere. Gå til Mine lister for å opprette en liste med geoobjekter.", - "duplicatesTip": "å_Duplicate features are always removed. When enabled, pop-ups from each layer will be compared and any duplicate pop-up information will be removed___________________________________________________________________________ø.", - "exportListsLabel": "å_My lists_________________ø" + "duplicatesTip": "Duplikate geoobjekter fjernes alltid. Når dette er valgt, blir popuper fra hvert lag sammenlignet og eventuell duplisert popup-informasjon blir fjernet.", + "exportListsLabel": "Mine lister" } \ No newline at end of file diff --git a/src/assets/t9n/public-notification/resources_nl.json b/src/assets/t9n/public-notification/resources_nl.json index 81edbd83b..9b6919998 100644 --- a/src/assets/t9n/public-notification/resources_nl.json +++ b/src/assets/t9n/public-notification/resources_nl.json @@ -10,24 +10,24 @@ "selectedFeatures": "{{n}} geselecteerde objecten", "noNotifications": "U hebt nog geen meldingenlijst", "notifications": "Meldingen", - "myLists": "IJ_Create and edit lists______________________ä", + "myLists": "Lijsten maken en bewerken", "stepTwoFull": "Nieuwe lijst maken", "cancel": "Annuleren", "done": "Gereed", - "selectPDFLabelOption": "IJ_Format options_______________ä", - "removeDuplicate": "IJ_Remove duplicates___________________ä:", + "selectPDFLabelOption": "Indelingsopties", + "removeDuplicate": "Duplicaten verwijderen:", "numDuplicates": "{{n}} duplicaten", - "selectLayerAndAdd": "IJ_Create lists of features to export as CSV and PDF. Use selection tools to choose which features to include and then click Create list____________________________________________________________________ä.", - "selectSearchTip": "IJ_Select features from the input layer to add to your list. Draw with sketch tools, specify a search distance, and use features from another layer to select overlapping features_________________________________________________________________________________________ä.", + "selectLayerAndAdd": "Maak lijsten van objecten die u als CSV en PDF wilt exporteren. Gebruik selectietools om te kiezen welke objecten u wilt opnemen en klik dan op Lijst maken.", + "selectSearchTip": "Selecteer objecten in de invoerlaag die u aan uw lijst wilt toevoegen. Teken met schetstools, specificeer een zoekafstand en gebruik objecten uit een andere laag om overlappende objecten te selecteren.", "selectLayerTip": "Teken vormen om objecten uit de gekozen selectielaag te selecteren; de resultaten worden gebruikt om objecten uit de geadresseerde-laag te selecteren", "selectSketchTip": "Gebruik schetstools om illustraties op de kaart te tekenen om kruisende objecten in de geadresseerde-laag te selecteren.", "optionalSearchDistance": "en optioneel een zoekafstand toe te voegen.", - "listHasSetsTip": "IJ_Edit or delete existing lists or click Create new list_____________________________ä.", + "listHasSetsTip": "Bewerk of verwijder bestaande links of klik op Nieuwe lijst maken.", "uniqueCout": "Uniek aantal: {{n}}", "searchDistance": "Zoekafstand", "useLayerFeatures": "Laagobjecten gebruiken", "export": "Exporteren", - "exportTip": "IJ_Select lists to include in the exported file. Export lists as CSV and PDF______________________________________ä.", + "exportTip": "Selecteer lijsten die u in het geëxporteerde bestand wilt opnemen. Exporteer lijsten als CSV en PDF.", "title": "Titel", "addTitle": "Titel toevoegen", "titlePlaceholder": "Voer hier een titel in", @@ -35,8 +35,8 @@ "pdfOptions": "PDF-opties", "csvOptions": "CSV-opties", "refineSelection": "Selectie verfijnen", - "refineTip": "IJ_Refine and finalize your lists by using sketch tools to add or remove selected features_____________________________________________ä.", + "refineTip": "Verfijn en finaliseer uw lijsten door schetstools te gebruiken om geselecteerde objecten toe te voegen of te verwijderen.", "refineTipNoSelections": "Er zijn geen selecties die u kunt verfijnen Ga naar Mijn lijsten om een lijst met objecten te maken.", - "duplicatesTip": "IJ_Duplicate features are always removed. When enabled, pop-ups from each layer will be compared and any duplicate pop-up information will be removed___________________________________________________________________________ä.", - "exportListsLabel": "IJ_My lists_________________ä" + "duplicatesTip": "Dubbele objecten worden altijd verwijderd. Indien ingeschakeld, worden pop-ups uit elke laag vergeleken en worden alle dubbele pop-upgegevens verwijderd.", + "exportListsLabel": "Mijn lijsten" } \ No newline at end of file diff --git a/src/assets/t9n/public-notification/resources_pl.json b/src/assets/t9n/public-notification/resources_pl.json index 0c512dfac..2831e9c55 100644 --- a/src/assets/t9n/public-notification/resources_pl.json +++ b/src/assets/t9n/public-notification/resources_pl.json @@ -10,24 +10,24 @@ "selectedFeatures": "Wybrane obiekty: {{n}}", "noNotifications": "Nie masz jeszcze listy powiadomień.", "notifications": "Powiadomienia", - "myLists": "ł_Create and edit lists______________________ą", + "myLists": "Twórz i edytuj listy", "stepTwoFull": "Utwórz nową listę", "cancel": "Anuluj", "done": "Gotowe", - "selectPDFLabelOption": "ł_Format options_______________ą", - "removeDuplicate": "ł_Remove duplicates___________________ą:", + "selectPDFLabelOption": "Opcje formatowania", + "removeDuplicate": "Usuń duplikaty:", "numDuplicates": "Duplikaty: {{n}}", - "selectLayerAndAdd": "ł_Create lists of features to export as CSV and PDF. Use selection tools to choose which features to include and then click Create list____________________________________________________________________ą.", - "selectSearchTip": "ł_Select features from the input layer to add to your list. Draw with sketch tools, specify a search distance, and use features from another layer to select overlapping features_________________________________________________________________________________________ą.", + "selectLayerAndAdd": "Twórz listy obiektów do wyeksportowania do plików CSV i PDF. Wybierz obiekty do uwzględnienia za pomocą narzędzi wyboru, a następnie kliknij opcję Utwórz listę.", + "selectSearchTip": "Wybierz obiekty z warstwy wejściowej, aby dodać je do listy. Rysuj za pomocą narzędzi do szkicowania, określ odległość wyszukiwania i użyj obiektów z innej warstwy, aby wybrać nakładające się obiekty.", "selectLayerTip": "Narysuj kształty, aby wybrać obiekty z wybranej warstwy wyboru; wyniki zostaną wykorzystane do wyboru obiektów z warstwy adresów", "selectSketchTip": "Za pomocą narzędzi do szkicowania narysuj grafiki na mapie, aby wybrać przecinające się obiekty w warstwie adresów.", "optionalSearchDistance": "i opcjonalnie dodaj odległość wyszukiwania.", - "listHasSetsTip": "ł_Edit or delete existing lists or click Create new list_____________________________ą.", + "listHasSetsTip": "Edytuj lub usuń istniejące listy albo kliknij opcję Utwórz nową listę.", "uniqueCout": "Liczba unikalnych: {{n}}", "searchDistance": "Odległość wyszukiwania", "useLayerFeatures": "Użyj obiektów warstwy", "export": "Eksportuj", - "exportTip": "ł_Select lists to include in the exported file. Export lists as CSV and PDF______________________________________ą.", + "exportTip": "Wybierz listy do uwzględnienia w eksportowanym pliku. Wyeksportuj listy do plików CSV i PDF.", "title": "Tytuł", "addTitle": "Dodaj tytuł", "titlePlaceholder": "Wprowadź tutaj tytuł", @@ -35,8 +35,8 @@ "pdfOptions": "Opcje PDF", "csvOptions": "Opcje CSV", "refineSelection": "Doprecyzuj wybór", - "refineTip": "ł_Refine and finalize your lists by using sketch tools to add or remove selected features_____________________________________________ą.", + "refineTip": "Doprecyzuj i dokończ listy za pomocą narzędzi do szkicowania, dodając lub usuwając wybrane obiekty.", "refineTipNoSelections": "Brak selekcji do doprecyzowania. Przejdź do obszaru Moje listy, aby utworzyć listę obiektów.", - "duplicatesTip": "ł_Duplicate features are always removed. When enabled, pop-ups from each layer will be compared and any duplicate pop-up information will be removed___________________________________________________________________________ą.", - "exportListsLabel": "ł_My lists_________________ą" + "duplicatesTip": "Powielone obiekty są zawsze usuwane. W przypadku ich włączenia okna podręczne z poszczególnych warstw są porównywane i wszelkie powielone informacje podręczne są usuwane.", + "exportListsLabel": "Moje listy" } \ No newline at end of file diff --git a/src/assets/t9n/public-notification/resources_pt-BR.json b/src/assets/t9n/public-notification/resources_pt-BR.json index a7ffcc31c..c1ba2f52a 100644 --- a/src/assets/t9n/public-notification/resources_pt-BR.json +++ b/src/assets/t9n/public-notification/resources_pt-BR.json @@ -10,24 +10,24 @@ "selectedFeatures": "{{n}} feições selecionadas", "noNotifications": "Você ainda não tem lista de notificação.", "notifications": "Notificações", - "myLists": "ã_Create and edit lists______________________Ç", + "myLists": "Criar e editar listas", "stepTwoFull": "Criar nova lista", "cancel": "Cancelar", "done": "Concluir", - "selectPDFLabelOption": "ã_Format options_______________Ç", - "removeDuplicate": "ã_Remove duplicates___________________Ç:", + "selectPDFLabelOption": "Opções de formato", + "removeDuplicate": "Remover duplicados:", "numDuplicates": "{{n}} duplicados", - "selectLayerAndAdd": "ã_Create lists of features to export as CSV and PDF. Use selection tools to choose which features to include and then click Create list____________________________________________________________________Ç.", - "selectSearchTip": "ã_Select features from the input layer to add to your list. Draw with sketch tools, specify a search distance, and use features from another layer to select overlapping features_________________________________________________________________________________________Ç.", + "selectLayerAndAdd": "Crie listas de feições para exportar como CSV e PDF. Use as ferramentas de seleção para escolher quais feições incluir e clique em Criar lista.", + "selectSearchTip": "Selecione feições da camada de entrada para adicionar à sua lista. Desenhe com ferramentas de esboço, especifique uma distância de pesquisa e use feições de outra camada para selecionar feições sobrepostas.", "selectLayerTip": "Desenhe formas para selecionar feições da camada de seleção escolhida; os resultados serão usados para selecionar feições da camada de destino", "selectSketchTip": "Use ferramentas de esboço para desenhar gráficos no mapa para selecionar feições de intersecção na camada de destino.", "optionalSearchDistance": "e, opcionalmente, adicionar distância de pesquisa.", - "listHasSetsTip": "ã_Edit or delete existing lists or click Create new list_____________________________Ç.", + "listHasSetsTip": "Edite ou exclua listas existentes ou clique em Criar nova lista.", "uniqueCout": "Contagem Única: {{n}}", "searchDistance": "Distância de pesquisa", "useLayerFeatures": "Usar feições da camada", "export": "Exportar", - "exportTip": "ã_Select lists to include in the exported file. Export lists as CSV and PDF______________________________________Ç.", + "exportTip": "Selecione listas para incluir no arquivo exportado. Exporte listas como CSV e PDF.", "title": "Título", "addTitle": "Adicionar título", "titlePlaceholder": "Insira título aqui", @@ -35,8 +35,8 @@ "pdfOptions": "Opções do PDF", "csvOptions": "Opções do CSV", "refineSelection": "Refinar seleção", - "refineTip": "ã_Refine and finalize your lists by using sketch tools to add or remove selected features_____________________________________________Ç.", + "refineTip": "Refine e finalize suas listas usando ferramentas de esboço para adicionar ou remover feições selecionadas.", "refineTipNoSelections": "Não há seleções para refinar. Vá até Minhas listas para criar uma lista de feições.", - "duplicatesTip": "ã_Duplicate features are always removed. When enabled, pop-ups from each layer will be compared and any duplicate pop-up information will be removed___________________________________________________________________________Ç.", - "exportListsLabel": "ã_My lists_________________Ç" + "duplicatesTip": "Feições duplicadas são sempre removidas. Quando habilitado, os pop-ups de cada camada serão comparados e qualquer informação de pop-up duplicada será removida.", + "exportListsLabel": "Minhas listas" } \ No newline at end of file diff --git a/src/assets/t9n/public-notification/resources_pt-PT.json b/src/assets/t9n/public-notification/resources_pt-PT.json index 9b79f8636..df0443222 100644 --- a/src/assets/t9n/public-notification/resources_pt-PT.json +++ b/src/assets/t9n/public-notification/resources_pt-PT.json @@ -10,24 +10,24 @@ "selectedFeatures": "{{n}} elemento(s) selecionado(s)", "noNotifications": "Ainda não tem nenhuma lista de notificações.", "notifications": "Notificações", - "myLists": "ã_Create and edit lists______________________Ç", + "myLists": "Criar e editar listas", "stepTwoFull": "Criar nova lista", "cancel": "Cancelar", "done": "Concluído", - "selectPDFLabelOption": "ã_Format options_______________Ç", - "removeDuplicate": "ã_Remove duplicates___________________Ç:", + "selectPDFLabelOption": "Opções de formato", + "removeDuplicate": "Remover duplicados:", "numDuplicates": "{{n}} duplicados", - "selectLayerAndAdd": "ã_Create lists of features to export as CSV and PDF. Use selection tools to choose which features to include and then click Create list____________________________________________________________________Ç.", - "selectSearchTip": "ã_Select features from the input layer to add to your list. Draw with sketch tools, specify a search distance, and use features from another layer to select overlapping features_________________________________________________________________________________________Ç.", + "selectLayerAndAdd": "Crie listas de elementos para exportar como CSV e PDF. Utilize ferramentas de seleção para escolher os elementos a incluir e, em seguida, clique em Criar lista.", + "selectSearchTip": "Selecione elementos da camada de entrada para adicionar à sua lista. Desenhe com ferramentas de desenho, especifique uma distância de pesquisa e utilize elementos de outra camada para selecionar elementos sobrepostos.", "selectLayerTip": "Desenhe formas para selecionar elementos da camada de seleção escolhida. Os resultados serão utilizados para selecionar elementos da camada de destinatário", "selectSketchTip": "Utilize ferramentas de desenho para desenhar gráficos no mapa para selecionar elementos de intersecção na camada de destinatário.", "optionalSearchDistance": "e, opcionalmente, adicionar a distância de pesquisa.", - "listHasSetsTip": "ã_Edit or delete existing lists or click Create new list_____________________________Ç.", + "listHasSetsTip": "Edite ou elimine as listas existentes ou clique em Criar nova lista.", "uniqueCout": "Contagem Única: {{n}}", "searchDistance": "Distância de pesquisa", "useLayerFeatures": "Utilizar elementos da camada", "export": "Exportar", - "exportTip": "ã_Select lists to include in the exported file. Export lists as CSV and PDF______________________________________Ç.", + "exportTip": "Selecione as listas a incluir no ficheiro exportado. Exporte listas como CSV e PDF.", "title": "Título", "addTitle": "Adicionar título", "titlePlaceholder": "Introduzir título aqui", @@ -35,8 +35,8 @@ "pdfOptions": "Opções de PDF", "csvOptions": "Opções de CSV", "refineSelection": "Refinar seleção", - "refineTip": "ã_Refine and finalize your lists by using sketch tools to add or remove selected features_____________________________________________Ç.", + "refineTip": "Refine e finalize as suas listas ao utilizar ferramentas de desenho para adicionar ou remover elementos selecionados.", "refineTipNoSelections": "Não existem seleções para refinar. Aceda a As minhas listas para criar uma lista de elementos.", - "duplicatesTip": "ã_Duplicate features are always removed. When enabled, pop-ups from each layer will be compared and any duplicate pop-up information will be removed___________________________________________________________________________Ç.", - "exportListsLabel": "ã_My lists_________________Ç" + "duplicatesTip": "Os elementos duplicados são sempre removidos. Quando esta opção está ativada, os pop-ups de cada camada são comparados e qualquer informação duplicada é removida.", + "exportListsLabel": "As minhas listas" } \ No newline at end of file diff --git a/src/assets/t9n/public-notification/resources_ro.json b/src/assets/t9n/public-notification/resources_ro.json index ead4e1239..18a7ac5cb 100644 --- a/src/assets/t9n/public-notification/resources_ro.json +++ b/src/assets/t9n/public-notification/resources_ro.json @@ -10,24 +10,24 @@ "selectedFeatures": "{{n}} obiecte spațiale selectate", "noNotifications": "Încă nu aveți o listă de notificări.", "notifications": "Notificări", - "myLists": "Ă_Create and edit lists______________________ș", + "myLists": "Creare și editare liste", "stepTwoFull": "Creare listă nouă", "cancel": "Anulare", "done": "Gata", - "selectPDFLabelOption": "Ă_Format options_______________ș", - "removeDuplicate": "Ă_Remove duplicates___________________ș:", + "selectPDFLabelOption": "Opțiuni de format", + "removeDuplicate": "Eliminare duplicate:", "numDuplicates": "{{n}} duplicate", - "selectLayerAndAdd": "Ă_Create lists of features to export as CSV and PDF. Use selection tools to choose which features to include and then click Create list____________________________________________________________________ș.", - "selectSearchTip": "Ă_Select features from the input layer to add to your list. Draw with sketch tools, specify a search distance, and use features from another layer to select overlapping features_________________________________________________________________________________________ș.", + "selectLayerAndAdd": "Creați liste de obiecte spațiale pentru a exporta în format CSV și PDF. Folosiți obiectele spațiale de selecție pentru a alege de obiecte spațiale să includeți și apoi faceți clic pe Creare listă.", + "selectSearchTip": "Selectați obiecte spațiale din stratul tematic de intrare pentru a le adăuga în lista dvs. Trasați cu instrumentele de trasare, specificați o distanță de căutare și folosiți obiecte spațiale dintr-un alt strat tematic pentru a selecta obiectele spațiale suprapuse.", "selectLayerTip": "Trasați forme pentru a selecta obiecte spațiale din stratul tematic de selecție ales; rezultatele vor fi folosite pentru a selecta obiecte spațiale din stratul tematic al destinatarului", "selectSketchTip": "Folosiți instrumentele de desen pentru a trasa grafice pe hartă pentru a selecta obiecte spațiale care se intersectează în stratul tematic destinatar.", "optionalSearchDistance": "și, opțional, adăugați distanța de căutare.", - "listHasSetsTip": "Ă_Edit or delete existing lists or click Create new list_____________________________ș.", + "listHasSetsTip": "Editați sau ștergeți listele existente sau faceți clic pe Creare listă nouă.", "uniqueCout": "Număr unic: {{n}}", "searchDistance": "Căutare distanţă", "useLayerFeatures": "Utilizare obiecte spațiale strat tematic", "export": "Export", - "exportTip": "Ă_Select lists to include in the exported file. Export lists as CSV and PDF______________________________________ș.", + "exportTip": "Selectați listele pentru a le include în fișierul exportat. Exportați listele în format CSV și PDF.", "title": "Titlu", "addTitle": "Adăugați un titlu", "titlePlaceholder": "Introduceți titlul aici", @@ -35,8 +35,8 @@ "pdfOptions": "Opțiuni PDF", "csvOptions": "Opțiuni CSV", "refineSelection": "Rafinare selecție", - "refineTip": "Ă_Refine and finalize your lists by using sketch tools to add or remove selected features_____________________________________________ș.", + "refineTip": "Rafinați și finalizați listele dvs. folosind instrumentele de schițare pentru a adăuga sau elimina obiecte spațiale selectate.", "refineTipNoSelections": "Nu există selecții de rafinat. Accesați Listele mele pentru a crea o listă de obiecte spațiale.", - "duplicatesTip": "Ă_Duplicate features are always removed. When enabled, pop-ups from each layer will be compared and any duplicate pop-up information will be removed___________________________________________________________________________ș.", - "exportListsLabel": "Ă_My lists_________________ș" + "duplicatesTip": "Obiectele spațiale duplicate sunt întotdeauna eliminate. Când este activat, pop-upurile din fiecare strat tematic vor fi comparate și orice informații pop-upurile duplicate vor fi eliminate.", + "exportListsLabel": "Listele mele" } \ No newline at end of file diff --git a/src/assets/t9n/public-notification/resources_ru.json b/src/assets/t9n/public-notification/resources_ru.json index 2f6a729e6..8b9638891 100644 --- a/src/assets/t9n/public-notification/resources_ru.json +++ b/src/assets/t9n/public-notification/resources_ru.json @@ -10,24 +10,24 @@ "selectedFeatures": "{{n}} выбранных объектов", "noNotifications": "У вас еще нет списка уведомлений.", "notifications": "Уведомления", - "myLists": "Ж_Create and edit lists______________________Я", + "myLists": "Создание и редактирование списков", "stepTwoFull": "Создать новый список", "cancel": "Отмена", "done": "Готово", - "selectPDFLabelOption": "Ж_Format options_______________Я", - "removeDuplicate": "Ж_Remove duplicates___________________Я:", + "selectPDFLabelOption": "Опции форматирования", + "removeDuplicate": "Удалить дубликаты:", "numDuplicates": "{{n}} дубликатов", - "selectLayerAndAdd": "Ж_Create lists of features to export as CSV and PDF. Use selection tools to choose which features to include and then click Create list____________________________________________________________________Я.", - "selectSearchTip": "Ж_Select features from the input layer to add to your list. Draw with sketch tools, specify a search distance, and use features from another layer to select overlapping features_________________________________________________________________________________________Я.", + "selectLayerAndAdd": "Создавайте списки объектов для экспорта в форматы CSV и PDF. Используйте инструменты выборки, чтобы выбрать объекты для включения, а затем щелкните Создать список.", + "selectSearchTip": "Выберите объекты из входного слоя, чтобы добавить их в список. Рисуйте с помощью инструментов скетча, указывайте расстояние поиска и используйте объекты из другого слоя для выбора перекрывающихся объектов.", "selectLayerTip": "Нарисуйте области, чтобы выбрать объекты из слоя выборки; результаты будут использоваться для выбора объектов из слоя адресатов", "selectSketchTip": "Используйте инструменты скетча, чтобы нарисовать графику на карте для выборки пересекающихся объектов в слое адресатов.", "optionalSearchDistance": "дополнительно, введите расстояние поиска.", - "listHasSetsTip": "Ж_Edit or delete existing lists or click Create new list_____________________________Я.", + "listHasSetsTip": "Редактируйте или удаляйте существующие списки или щелкните Создать новый список.", "uniqueCout": "Количество уникальных: {{n}}", "searchDistance": "Расстояние поиска", "useLayerFeatures": "Использовать слой объектов", "export": "Экспорт", - "exportTip": "Ж_Select lists to include in the exported file. Export lists as CSV and PDF______________________________________Я.", + "exportTip": "Выберите списки, которые войдут в файл экспорта. Экспорт списков в формате CSV и PDF.", "title": "Заголовок", "addTitle": "Добавить заголовок", "titlePlaceholder": "Введите заголовок здесь", @@ -35,8 +35,8 @@ "pdfOptions": "Опции PDF", "csvOptions": "Опции CSV", "refineSelection": "Уточните выборку", - "refineTip": "Ж_Refine and finalize your lists by using sketch tools to add or remove selected features_____________________________________________Я.", + "refineTip": "Уточняйте и дорабатывайте свои списки с помощью инструментов скетча, чтобы добавлять или удалять выбранные объекты.", "refineTipNoSelections": "Выборки для уточнения отсутствуют. Перейдите в Мои списки, чтобы создать список объектов.", - "duplicatesTip": "Ж_Duplicate features are always removed. When enabled, pop-ups from each layer will be compared and any duplicate pop-up information will be removed___________________________________________________________________________Я.", - "exportListsLabel": "Ж_My lists_________________Я" + "duplicatesTip": "Повторяющиеся объекты всегда удаляются. Если этот параметр включен, всплывающие окна каждого слоя будут сравниваться, а любая повторяющаяся всплывающая информация будет удалена.", + "exportListsLabel": "Мои списки" } \ No newline at end of file diff --git a/src/assets/t9n/public-notification/resources_sk.json b/src/assets/t9n/public-notification/resources_sk.json index 5a380226a..c12a60139 100644 --- a/src/assets/t9n/public-notification/resources_sk.json +++ b/src/assets/t9n/public-notification/resources_sk.json @@ -10,24 +10,24 @@ "selectedFeatures": "{{n}} vybraných prvkov", "noNotifications": "Zatiaľ nemáte žiadny zoznam notifikácií.", "notifications": "Upozornenia", - "myLists": "ĺ_Create and edit lists______________________ľ", + "myLists": "Vytvorte a editujte zoznamy", "stepTwoFull": "Vytvoriť nový zoznam", "cancel": "Zrušiť", "done": "Hotovo", - "selectPDFLabelOption": "ĺ_Format options_______________ľ", - "removeDuplicate": "ĺ_Remove duplicates___________________ľ:", + "selectPDFLabelOption": "Možnosti formátu", + "removeDuplicate": "Odstrániť duplikáty:", "numDuplicates": "{{n}} duplikátov", - "selectLayerAndAdd": "ĺ_Create lists of features to export as CSV and PDF. Use selection tools to choose which features to include and then click Create list____________________________________________________________________ľ.", - "selectSearchTip": "ĺ_Select features from the input layer to add to your list. Draw with sketch tools, specify a search distance, and use features from another layer to select overlapping features_________________________________________________________________________________________ľ.", + "selectLayerAndAdd": "Vytváranie zoznamov prvkov na export ako CSV a PDF. Pomocou nástrojov výberu vyberte prvky, ktoré chcete zahrnúť, a potom kliknite na tlačidlo Vytvoriť zoznam.", + "selectSearchTip": "Vyberte prvky zo vstupnej vrstvy, ktoré chcete pridať do zoznamu. Kreslite pomocou nástrojov na skicovanie, zadajte vzdialenosť vyhľadávania a použite prvky z inej vrstvy na výber prekrývajúcich sa prvkov.", "selectLayerTip": "Kreslenie tvarov pre výber prvkov zo zvolenej vrstvy výberu; výsledky sa použijú na výber prvkov z vrstvy adresáta", "selectSketchTip": "Pomocou nástrojov pre skice nakreslite grafiku v mape pre výber pretínajúcich sa prvkov vo vrstve adresáta.", "optionalSearchDistance": "a voliteľne pridajte vyhľadávaciu vzdialenosť.", - "listHasSetsTip": "ĺ_Edit or delete existing lists or click Create new list_____________________________ľ.", + "listHasSetsTip": "Upravte alebo odstráňte existujúce zoznamy alebo kliknite na Vytvoriť nový zoznam.", "uniqueCout": "Počet unikátnych: {{n}}", "searchDistance": "Vyhľadávacia vzdialenosť", "useLayerFeatures": "Použiť prvky vrstvy", "export": "Export", - "exportTip": "ĺ_Select lists to include in the exported file. Export lists as CSV and PDF______________________________________ľ.", + "exportTip": "Vyberte zoznamy, ktoré chcete zahrnúť do exportovaného súboru. Exportujte zoznamy ako CSV a PDF.", "title": "Názov", "addTitle": "Pridať názov", "titlePlaceholder": "Tu zadajte názov", @@ -35,8 +35,8 @@ "pdfOptions": "Možnosti PDF", "csvOptions": "Možnosti CSV", "refineSelection": "Spresniť výber", - "refineTip": "ĺ_Refine and finalize your lists by using sketch tools to add or remove selected features_____________________________________________ľ.", + "refineTip": "Spresnite a finalizujte vaše zoznamy pomocou nástrojov pre skicovanie, aby ste pridali alebo odstránili vybrané prvky.", "refineTipNoSelections": "Neexistujú žiadne výbery na spresnenie. Prejdite do časti Moje zoznamy a vytvorte zoznam prvkov.", - "duplicatesTip": "ĺ_Duplicate features are always removed. When enabled, pop-ups from each layer will be compared and any duplicate pop-up information will be removed___________________________________________________________________________ľ.", - "exportListsLabel": "ĺ_My lists_________________ľ" + "duplicatesTip": "Duplicitné prvky sa vždy odstránia. Ak je zapnuté, pop-up okná z každej vrstvy sa porovnajú a všetky duplicitné pop-up informácie sa odstránia.", + "exportListsLabel": "Moje zoznamy" } \ No newline at end of file diff --git a/src/assets/t9n/public-notification/resources_sl.json b/src/assets/t9n/public-notification/resources_sl.json index 1f82915ea..e448e2676 100644 --- a/src/assets/t9n/public-notification/resources_sl.json +++ b/src/assets/t9n/public-notification/resources_sl.json @@ -10,24 +10,24 @@ "selectedFeatures": "Število izbranih geoobjektov: {{n}}", "noNotifications": "Nimate še seznama obvestil.", "notifications": "Obvestila", - "myLists": "Š_Create and edit lists______________________č", + "myLists": "Ustvarjanje in urejanje seznamov", "stepTwoFull": "Ustvari nov seznam", "cancel": "Prekliči", "done": "Končano", - "selectPDFLabelOption": "Š_Format options_______________č", - "removeDuplicate": "Š_Remove duplicates___________________č:", + "selectPDFLabelOption": "Možnosti formata", + "removeDuplicate": "Odstrani podvojitve:", "numDuplicates": "Število podvojitev {{n}}", - "selectLayerAndAdd": "Š_Create lists of features to export as CSV and PDF. Use selection tools to choose which features to include and then click Create list____________________________________________________________________č.", - "selectSearchTip": "Š_Select features from the input layer to add to your list. Draw with sketch tools, specify a search distance, and use features from another layer to select overlapping features_________________________________________________________________________________________č.", + "selectLayerAndAdd": "Ustvarite seznam geoobjektov, ki jih je mogoče izvoziti v datoteko CSV ali PDF. Z izbornimi orodji izberite, kateri geoobjekti bodo vključeni, nato kliknite Ustvari seznam.", + "selectSearchTip": "Izbrane geoobjekte iz vhodnega sloja bodo dodane vašemu seznamu. Narišite z orodji za skiciranje, določite razdaljo iskanja in s pomočjo geoobjekta z drugega sloja izberite geoobjekt prekrivanja.", "selectLayerTip": "Narišite oblike za izbiro geoobjektov iz izbranega sloja izbire; rezultati bodo uporabljeni za izbiro geoobjektov iz sloja naslovnika", "selectSketchTip": "Uporabite orodja za skiciranje za risanje grafik na karti za izbiro sekajočih geoobjektov na sloju naslovnika.", "optionalSearchDistance": "in izbirno dodajte iskalno razdaljo.", - "listHasSetsTip": "Š_Edit or delete existing lists or click Create new list_____________________________č.", + "listHasSetsTip": "Uredite ali izbrišite obstoječe sezname kliknite Ustvari nov seznam", "uniqueCout": "Števec enoličnih: {{n}}", "searchDistance": "Poišči razdaljo", "useLayerFeatures": "Uporabi geoobjekte sloja", "export": "Izvozi", - "exportTip": "Š_Select lists to include in the exported file. Export lists as CSV and PDF______________________________________č.", + "exportTip": "Izberite sloje, ki bodo vključeni v izvoženo datoteko. Izvozite sezname kot CSV in PDF.", "title": "Naslov", "addTitle": "Dodaj ime", "titlePlaceholder": "Tukaj vnesi naslov", @@ -35,8 +35,8 @@ "pdfOptions": "Možnosti PDF", "csvOptions": "Možnosti CSV", "refineSelection": "Natančno določi izbiro", - "refineTip": "Š_Refine and finalize your lists by using sketch tools to add or remove selected features_____________________________________________č.", + "refineTip": "S pomočjo orodij za skiciranje izpopolnite in dokončajte svoje sezname, da dodate ali odstranite izbrane geoobjekte.", "refineTipNoSelections": "Za izpopolnitev ni na voljo nobene izbire. Pojdite na Moji seznami, da ustvarite seznam geoobjektov.", - "duplicatesTip": "Š_Duplicate features are always removed. When enabled, pop-ups from each layer will be compared and any duplicate pop-up information will be removed___________________________________________________________________________č.", - "exportListsLabel": "Š_My lists_________________č" + "duplicatesTip": "Podvojeni geoobjekti so vedno odstranjeni. Ko je omogočeno, bodo pojavna okna z vsakega sloja primerjana in vsako podvojeno pojavno okno bo odstranjeno.", + "exportListsLabel": "Moji seznami" } \ No newline at end of file diff --git a/src/assets/t9n/public-notification/resources_sr.json b/src/assets/t9n/public-notification/resources_sr.json index b6ed9a5ac..dd1fc65b1 100644 --- a/src/assets/t9n/public-notification/resources_sr.json +++ b/src/assets/t9n/public-notification/resources_sr.json @@ -10,24 +10,24 @@ "selectedFeatures": "{{n}} selektovana(ih) geoobjek(a)ta", "noNotifications": "Još uvek nemate listu obaveštenja.", "notifications": "Obaveštenja", - "myLists": "Č_Create and edit lists______________________ž", + "myLists": "Kreiraj i uredi liste", "stepTwoFull": "Kreiraj novu listu", "cancel": "Otkaži", "done": "Završeno", - "selectPDFLabelOption": "Č_Format options_______________ž", - "removeDuplicate": "Č_Remove duplicates___________________ž:", + "selectPDFLabelOption": "Opcije za format", + "removeDuplicate": "Ukloni duplikate:", "numDuplicates": "{{n}} duplikata", - "selectLayerAndAdd": "Č_Create lists of features to export as CSV and PDF. Use selection tools to choose which features to include and then click Create list____________________________________________________________________ž.", - "selectSearchTip": "Č_Select features from the input layer to add to your list. Draw with sketch tools, specify a search distance, and use features from another layer to select overlapping features_________________________________________________________________________________________ž.", + "selectLayerAndAdd": "Kreirajte liste osobina za izvoz kao CSV i PDF. Izaberite koje alate da omogućite za izbor geoobjekata na mapi", + "selectSearchTip": "Koristite osobine iz ulaznog sloja da dodate na vašu listu. Nacrtajte uz pomoć alata za crtanje, navedite udaljenost pretrage, i koristite osobine iz drugog sloja da odaberete osobine koje se preklapaju.", "selectLayerTip": "Nacrtajte oblike da biste selektovali geoobjekte iz izabranog sloja za selekciju; rezultati će se koristiti za selekciju geoobjekata iz sloja primaoca", "selectSketchTip": "Koristite alatke za skiciranje da biste nacrtali grafiku na mapi i da biste selektovali geoobjekte koji se ukrštaju u sloju primaoca.", "optionalSearchDistance": "i opciono za dodavanje rastojanja pretrage.", - "listHasSetsTip": "Č_Edit or delete existing lists or click Create new list_____________________________ž.", + "listHasSetsTip": "Uredite ili izbrišite postojeće liste ili izaberite sloj i kliknite na Kreiraj novu listu.", "uniqueCout": "Jedinstveni broj: {{n}}", "searchDistance": "Rastojanje pretrage", "useLayerFeatures": "Koristi geoobjekte sloja", "export": "Izvezi", - "exportTip": "Č_Select lists to include in the exported file. Export lists as CSV and PDF______________________________________ž.", + "exportTip": "Odaberite liste da uključite u izvezenu datoteku. Izvezite liste kao CSV i PDF.", "title": "Naslov", "addTitle": "Dodaj naslov", "titlePlaceholder": "Unesite naslov ovde", @@ -35,8 +35,8 @@ "pdfOptions": "Opcije PDF datoteke", "csvOptions": "Opcije CSV datoteke", "refineSelection": "Precizirajte selekciju", - "refineTip": "Č_Refine and finalize your lists by using sketch tools to add or remove selected features_____________________________________________ž.", + "refineTip": "Precizirajte i dovršite svoje liste koristeći alatke za skiciranje da biste dodali ili uklonili odabrane osobine.", "refineTipNoSelections": "Nema selekcija za preciziranje. Idite u Moje liste da biste kreirali listu geoobjekata.", - "duplicatesTip": "Č_Duplicate features are always removed. When enabled, pop-ups from each layer will be compared and any duplicate pop-up information will be removed___________________________________________________________________________ž.", - "exportListsLabel": "Č_My lists_________________ž" + "duplicatesTip": "Diplirane osobine se uvek uklanjaju. Kada su omogućeni, iskačući prozori iz svakog sloja će biti upoređeni i bilo koji duplikat iskačuće informacije će biti uklonjen.", + "exportListsLabel": "Moje liste" } \ No newline at end of file diff --git a/src/assets/t9n/public-notification/resources_sv.json b/src/assets/t9n/public-notification/resources_sv.json index a09ea3141..18b4a7e8e 100644 --- a/src/assets/t9n/public-notification/resources_sv.json +++ b/src/assets/t9n/public-notification/resources_sv.json @@ -10,24 +10,24 @@ "selectedFeatures": "{{n}} valda geoobjekt", "noNotifications": "Du har ingen meddelandelista än.", "notifications": "Aviseringar", - "myLists": "Å_Create and edit lists______________________ö", + "myLists": "Skapa och redigera listor", "stepTwoFull": "Skapa ny lista", "cancel": "Avbryt", "done": "Klar", - "selectPDFLabelOption": "Å_Format options_______________ö", - "removeDuplicate": "Å_Remove duplicates___________________ö:", + "selectPDFLabelOption": "Formatalternativ", + "removeDuplicate": "Ta bort dubbletter:", "numDuplicates": "{{n}} dubbletter", - "selectLayerAndAdd": "Å_Create lists of features to export as CSV and PDF. Use selection tools to choose which features to include and then click Create list____________________________________________________________________ö.", - "selectSearchTip": "Å_Select features from the input layer to add to your list. Draw with sketch tools, specify a search distance, and use features from another layer to select overlapping features_________________________________________________________________________________________ö.", + "selectLayerAndAdd": "Skapa listor över geoobjekt som ska exporteras som CSV och PDF. Använd markeringsverktyg för att välja vilka geoobjekt som ska inkluderas och klicka sedan på Skapa lista.", + "selectSearchTip": "Välj geoobjekt från indatalagret och lägg till i din lista. Rita med skissverktyg, ange ett sökavstånd och använd geoobjekt från ett annat lager för att välja överlappande geoobjekt.", "selectLayerTip": "Markera geoobjekt från det valda urvalslagret genom att rita former; resultaten används för att markera geoobjekt från mottagarlagret", "selectSketchTip": "Använd skissverktyg för att rita grafik i kartan för att välja geoobjekt som skär varandra i mottagarlagret.", "optionalSearchDistance": "och lägg till sökavstånd som tillval.", - "listHasSetsTip": "Å_Edit or delete existing lists or click Create new list_____________________________ö.", + "listHasSetsTip": "Redigera eller ta bort befintliga listor eller klicka på Skapa ny lista.", "uniqueCout": "Antal unika: {{n}}", "searchDistance": "Sökavstånd", "useLayerFeatures": "Använd lagergeoobjekt", "export": "Exportera", - "exportTip": "Å_Select lists to include in the exported file. Export lists as CSV and PDF______________________________________ö.", + "exportTip": "Välj listor att inkludera i den exporterade filen. Exportera listor som CSV och PDF.", "title": "Titel", "addTitle": "Lägg till titel", "titlePlaceholder": "Ange titel här", @@ -35,8 +35,8 @@ "pdfOptions": "PDF-alternativ", "csvOptions": "CSV-alternativ", "refineSelection": "Förfina urval", - "refineTip": "Å_Refine and finalize your lists by using sketch tools to add or remove selected features_____________________________________________ö.", + "refineTip": "Förfina och slutför dina listor med hjälp av skissverktyg för att lägga till eller ta bort valda geoobjekt.", "refineTipNoSelections": "Det finns inga val att förfina. Gå till Mina listor för att skapa en lista över geoobjekt.", - "duplicatesTip": "Å_Duplicate features are always removed. When enabled, pop-ups from each layer will be compared and any duplicate pop-up information will be removed___________________________________________________________________________ö.", - "exportListsLabel": "Å_My lists_________________ö" + "duplicatesTip": "Dubblerade geoobjekt tas alltid bort. När alternativet är aktiverat jämförs popupfönster från varje lager och eventuell dubblerad popupinformation tas bort.", + "exportListsLabel": "Mina listor" } \ No newline at end of file diff --git a/src/assets/t9n/public-notification/resources_th.json b/src/assets/t9n/public-notification/resources_th.json index 192e9770d..546a027b2 100644 --- a/src/assets/t9n/public-notification/resources_th.json +++ b/src/assets/t9n/public-notification/resources_th.json @@ -10,24 +10,24 @@ "selectedFeatures": "{{n}} ฟีเจอร์ที่เลือก", "noNotifications": "คุณยังไม่มีรายการการแจ้งเตือนในขณะนี้", "notifications": "การแจ้งเตือน", - "myLists": "ก้_Create and edit lists______________________ษฺ", + "myLists": "สร้างและแก้ไขรายการ", "stepTwoFull": "สร้างรายการใหม่", "cancel": "ยกเลิก", "done": "สำเร็จ", - "selectPDFLabelOption": "ก้_Format options_______________ษฺ", - "removeDuplicate": "ก้_Remove duplicates___________________ษฺ:", + "selectPDFLabelOption": "ตัวเลือกรูปแบบ", + "removeDuplicate": "ลบรายการซ้ำ:", "numDuplicates": "{{n}} รายการซ้ำ", - "selectLayerAndAdd": "ก้_Create lists of features to export as CSV and PDF. Use selection tools to choose which features to include and then click Create list____________________________________________________________________ษฺ.", - "selectSearchTip": "ก้_Select features from the input layer to add to your list. Draw with sketch tools, specify a search distance, and use features from another layer to select overlapping features_________________________________________________________________________________________ษฺ.", + "selectLayerAndAdd": "สร้างรายการฟีเจอร์ที่จะส่งออกเป็นไฟล์ CSV และ PDF ใช้เครื่องมือการเลือก เพื่อเลือกฟีเจอร์ที่จะรวมไว้ จากนั้นคลิก สร้างรายการ", + "selectSearchTip": "เลือกฟีเจอร์จากชั้นข้อมูลอินพุทเพื่อเพิ่มลงในรายการของคุณ วาดด้วยเครื่องมือการวาด ระบุระยะทางการค้นหา แล้วใช้ฟีเจอร์จากชั้นข้อมูลอื่นในการเลือกฟีเจอร์ที่ทับซ้อนกัน", "selectLayerTip": "วาดรูปทรงเพื่อเลือกฟีเจอร์จากชั้นข้อมูลการเลือกที่ต้องการ ผลลัพธ์จะถูกนำไปใช้ในการเลือกฟีเจอร์จากชั้นข้อมูลผู้รับ", "selectSketchTip": "ใช้เครื่องมือการวาดเพื่อวาดกราฟิกในแผนที่ เพื่อเลือกฟีเจอร์ที่ตัดกันในชั้นข้อมูลผู้รับ", "optionalSearchDistance": "และเลือกเพิ่มระยะทางการค้นหาได้", - "listHasSetsTip": "ก้_Edit or delete existing lists or click Create new list_____________________________ษฺ.", + "listHasSetsTip": "แก้ไขหรือลบรายการที่มีอยู่ หรือคลิก สร้างรายการใหม่", "uniqueCout": "จำนวนที่ไม่ซ้ำกัน: {{n}}", "searchDistance": "ระยะทางการค้นหา", "useLayerFeatures": "ใช้ฟีเจอร์ชั้นข้อมูล", "export": "ส่งออก", - "exportTip": "ก้_Select lists to include in the exported file. Export lists as CSV and PDF______________________________________ษฺ.", + "exportTip": "เลือกรายการที่จะรวมไว้ในไฟล์ที่ส่งออก ส่งออกรายการในรูปแบบ CSV และ PDF", "title": "คำนำหน้า", "addTitle": "เพิ่มชื่อ", "titlePlaceholder": "ป้อนชื่อที่นี่", @@ -35,8 +35,8 @@ "pdfOptions": "ตัวเลือก PDF", "csvOptions": "ตัวเลือก CSV", "refineSelection": "ปรับแต่งการเลือก", - "refineTip": "ก้_Refine and finalize your lists by using sketch tools to add or remove selected features_____________________________________________ษฺ.", + "refineTip": "ปรับแต่งและสรุปรายการของคุณโดยใช้เครื่องมือการวาด เพื่อเพิ่มหรือลบฟีเจอร์ที่เลือก", "refineTipNoSelections": "ไม่มีการเลือกที่จะปรับแต่ง ไปที่ รายการของฉัน เพื่อสร้างรายการฟีเจอร์", - "duplicatesTip": "ก้_Duplicate features are always removed. When enabled, pop-ups from each layer will be compared and any duplicate pop-up information will be removed___________________________________________________________________________ษฺ.", - "exportListsLabel": "ก้_My lists_________________ษฺ" + "duplicatesTip": "ฟีเจอร์ที่ซ้ำจะถูกลบออกเสมอ เมื่อเปิดใช้งาน ป็อปอัพจากแต่ละชั้นข้อมูลจะถูกเปรียบเทียบ จากนั้นข้อมูลป็อปอัพใดๆ ที่ซ้ำจะถูกลบออก", + "exportListsLabel": "รายการของฉัน" } \ No newline at end of file diff --git a/src/assets/t9n/public-notification/resources_tr.json b/src/assets/t9n/public-notification/resources_tr.json index c0b22a935..879339b2b 100644 --- a/src/assets/t9n/public-notification/resources_tr.json +++ b/src/assets/t9n/public-notification/resources_tr.json @@ -10,24 +10,24 @@ "selectedFeatures": "{{n}} seçilen detaylar", "noNotifications": "Henüz bir bildirim listeniz yok.", "notifications": "Bildirimler", - "myLists": "ı_Create and edit lists______________________İ", + "myLists": "Listeler oluştur ve düzenle", "stepTwoFull": "Yeni liste oluştur", "cancel": "İptal", "done": "Bitti", - "selectPDFLabelOption": "ı_Format options_______________İ", - "removeDuplicate": "ı_Remove duplicates___________________İ:", + "selectPDFLabelOption": "Biçim seçenekleri", + "removeDuplicate": "Yinelenenleri kaldır:", "numDuplicates": "{{n}} yineleme", - "selectLayerAndAdd": "ı_Create lists of features to export as CSV and PDF. Use selection tools to choose which features to include and then click Create list____________________________________________________________________İ.", - "selectSearchTip": "ı_Select features from the input layer to add to your list. Draw with sketch tools, specify a search distance, and use features from another layer to select overlapping features_________________________________________________________________________________________İ.", + "selectLayerAndAdd": "CSV ve PDF olarak duşa aktarmak için detay listeleri oluşturun. Hangi detayların dahil edileceğini seçmek için seçme araçlarını kullanın ve daha sonra Liste oluştur'a tıklayın.", + "selectSearchTip": "Listenize eklemek için girdi katmanınızdan detaylar seçin. Taslak çizim araçlarıyla çizin, bir arama mesafesi belirtin ve çakışan detayları seçmek için başka bir katmandan detaylar kullanın.", "selectLayerTip": "Seçilen seçim katmanından detayları seçmek için şekiller çizin; sonuçlar, alıcı katmanından detayları seçmek için kullanılacaktır", "selectSketchTip": "Alıcı katmanındaki kesişen detayları seçmek için haritada grafikler çizmek amacıyla çizim araçlarını kullanın.", "optionalSearchDistance": "ve isteğe bağlı olarak arama mesafesi ekleyin.", - "listHasSetsTip": "ı_Edit or delete existing lists or click Create new list_____________________________İ.", + "listHasSetsTip": "Mevcut listeleri düzenleyin veya silin ya da Yeni liste oluştur seçeneğine tıklayın.", "uniqueCout": "Benzersiz Sayı: {{n}}", "searchDistance": "Arama mesafesi", "useLayerFeatures": "Katman detaylarını kullan", "export": "Dışa Aktar", - "exportTip": "ı_Select lists to include in the exported file. Export lists as CSV and PDF______________________________________İ.", + "exportTip": "Dışa aktarılan dosyaya dahil etmek için listeleri seçin. CSV ve PDF olarak listeleri dışa aktarın.", "title": "Başlık", "addTitle": "Başlık ekle", "titlePlaceholder": "Başlığı buraya girin", @@ -35,8 +35,8 @@ "pdfOptions": "PDF Seçenekleri", "csvOptions": "CSV Seçenekleri", "refineSelection": "Seçimi iyileştir", - "refineTip": "ı_Refine and finalize your lists by using sketch tools to add or remove selected features_____________________________________________İ.", + "refineTip": "Seçili detayları eklemek veya kaldırmak için taslak çizim araçlarını kullanarak listelerinizi iyileştirin ve sonlandırın.", "refineTipNoSelections": "İyileştirilecek bir seçim yok. Bir detaylar listesi oluşturmak için Listelerime gidin.", - "duplicatesTip": "ı_Duplicate features are always removed. When enabled, pop-ups from each layer will be compared and any duplicate pop-up information will be removed___________________________________________________________________________İ.", - "exportListsLabel": "ı_My lists_________________İ" + "duplicatesTip": "Çoklu detaylar mutlaka kaldırılır. Etkinleştirildiğinde, her katmandan gelen açılır pencereler karşılaştırılacak ve çoklu tüm açılır pencere bilgileri kaldırılacaktır.", + "exportListsLabel": "Listelerim" } \ No newline at end of file diff --git a/src/assets/t9n/public-notification/resources_uk.json b/src/assets/t9n/public-notification/resources_uk.json index a10fe2da6..ba9f2f72c 100644 --- a/src/assets/t9n/public-notification/resources_uk.json +++ b/src/assets/t9n/public-notification/resources_uk.json @@ -10,24 +10,24 @@ "selectedFeatures": "{{n}} об'єкти(-ів) вибрано", "noNotifications": "У вас ще немає списку повідомлень.", "notifications": "Повідомлення", - "myLists": "ґ_Create and edit lists______________________Ї", + "myLists": "Створення та редагування списків", "stepTwoFull": "Створити новий список", "cancel": "Скасувати", "done": "Готово", - "selectPDFLabelOption": "ґ_Format options_______________Ї", - "removeDuplicate": "ґ_Remove duplicates___________________Ї:", + "selectPDFLabelOption": "Опції формату", + "removeDuplicate": "Видалити дублікати:", "numDuplicates": "{{n}} дублікати", - "selectLayerAndAdd": "ґ_Create lists of features to export as CSV and PDF. Use selection tools to choose which features to include and then click Create list____________________________________________________________________Ї.", - "selectSearchTip": "ґ_Select features from the input layer to add to your list. Draw with sketch tools, specify a search distance, and use features from another layer to select overlapping features_________________________________________________________________________________________Ї.", + "selectLayerAndAdd": "Створіть списки об'єктів для експорту у формати CSV і PDF. Використовуйте інструменти вибору, щоб вибрати, які об'єкти включити, а потім натисніть «Створити список».", + "selectSearchTip": "Виберіть об’єкти з вхідного шару, щоб додати їх до списку. Малюйте за допомогою інструментів «Скетч», вказуйте відстань пошуку та використовуйте об’єкти з іншого шару, щоб вибрати об’єкти, що перекриваються.", "selectLayerTip": "Намалюйте форми, щоб вибрати об’єкти з вибраного шару вибору; результати будуть використані для вибору об'єктів із шару адресату", "selectSketchTip": "Використовуйте інструменти ескізу, щоб намалювати графіки на карті, щоб вибрати об’єкти, що перетинаються, у шарі адресату.", "optionalSearchDistance": "і за бажанням додайте відстань пошуку.", - "listHasSetsTip": "ґ_Edit or delete existing lists or click Create new list_____________________________Ї.", + "listHasSetsTip": "Відредагуйте або видаліть наявні списки або натисніть «Створити новий список».", "uniqueCout": "Унікальна кількість: {{n}}", "searchDistance": "Відстань пошуку", "useLayerFeatures": "Використовувати об’єкти шару", "export": "Експорт", - "exportTip": "ґ_Select lists to include in the exported file. Export lists as CSV and PDF______________________________________Ї.", + "exportTip": "Виберіть списки для включення в файл експорту. Експортуйте списки як CSV і PDF.", "title": "Заголовок", "addTitle": "Додати заголовок", "titlePlaceholder": "Ввести заголовок тут", @@ -35,8 +35,8 @@ "pdfOptions": "Опції PDF", "csvOptions": "Опції CSV", "refineSelection": "Уточнити вибірку", - "refineTip": "ґ_Refine and finalize your lists by using sketch tools to add or remove selected features_____________________________________________Ї.", + "refineTip": "Уточніть і завершіть свої списки за допомогою інструментів «Скетч», щоб додати або видалити вибрані об'єкти.", "refineTipNoSelections": "Немає вибірок для уточнення. Перейдіть в «Мої списки», щоб створити список об’єктів.", - "duplicatesTip": "ґ_Duplicate features are always removed. When enabled, pop-ups from each layer will be compared and any duplicate pop-up information will be removed___________________________________________________________________________Ї.", - "exportListsLabel": "ґ_My lists_________________Ї" + "duplicatesTip": "Дубльовані об'єкти завжди видаляються. Якщо увімкнено, спливаючі вікна з кожного шару порівнюватимуться, а будь-яка повторювана інформація про спливаючі вікна буде видалена.", + "exportListsLabel": "Мої списки" } \ No newline at end of file diff --git a/src/assets/t9n/public-notification/resources_vi.json b/src/assets/t9n/public-notification/resources_vi.json index cd7da247c..86010721b 100644 --- a/src/assets/t9n/public-notification/resources_vi.json +++ b/src/assets/t9n/public-notification/resources_vi.json @@ -10,24 +10,24 @@ "selectedFeatures": "{{n}} đối tượng được chọn", "noNotifications": "Bạn chưa có danh sách thông báo nào.", "notifications": "Thông báo", - "myLists": "Đ_Create and edit lists______________________ớ", + "myLists": "Tạo và chỉnh sửa danh sách", "stepTwoFull": "Tạo danh sách mới", "cancel": "Hủy", "done": "Hoàn tất", - "selectPDFLabelOption": "Đ_Format options_______________ớ", - "removeDuplicate": "Đ_Remove duplicates___________________ớ:", + "selectPDFLabelOption": "Tùy chọn định dạng", + "removeDuplicate": "Xóa các mục trùng lặp:", "numDuplicates": "{{n}} mục trùng lặp", - "selectLayerAndAdd": "Đ_Create lists of features to export as CSV and PDF. Use selection tools to choose which features to include and then click Create list____________________________________________________________________ớ.", - "selectSearchTip": "Đ_Select features from the input layer to add to your list. Draw with sketch tools, specify a search distance, and use features from another layer to select overlapping features_________________________________________________________________________________________ớ.", + "selectLayerAndAdd": "Tạo danh sách các đối tượng để xuất ra dưới dạng CSV và PDF. Sử dụng các công cụ lựa chọn để chọn đối tượng cần đưa vào, sau đó nhấp vào Tạo danh sách.", + "selectSearchTip": "Lựa chọn đối tượng từ lớp đầu vào để thêm vào danh sách của bạn. Vẽ bằng công cụ phác hoạ, chỉ rõ khoảng cách tìm kiếm và sử dụng các đối tượng từ các lớp khác để lựa chọn các đối tượng chồng lắp.", "selectLayerTip": "Vẽ các hình dạng để chọn đối tượng từ lớp lựa chọn đã chọn; kết quả sẽ được sử dụng để chọn các đối tượng từ lớp người nhận", "selectSketchTip": "Sử dụng các công cụ phác họa để vẽ đồ họa trong bản đồ nhằm chọn các đối tượng giao cắt trong lớp người nhận.", "optionalSearchDistance": "và thêm khoảng cách tìm kiếm tùy ý.", - "listHasSetsTip": "Đ_Edit or delete existing lists or click Create new list_____________________________ớ.", + "listHasSetsTip": "Chỉnh sửa hoặc xóa danh sách hiện có hoặc nhấp vào Tạo danh sách mới.", "uniqueCout": "Số lượng Duy nhất: {{n}}", "searchDistance": "Khoảng cách tìm kiếm", "useLayerFeatures": "Sử dụng các đối tượng trong lớp", "export": "Xuất", - "exportTip": "Đ_Select lists to include in the exported file. Export lists as CSV and PDF______________________________________ớ.", + "exportTip": "Lựa chọn các danh sách để đưa vào tệp đã xuất. Xuất danh sách dưới dạng CSV và PDF.", "title": "Tiêu đề", "addTitle": "Thêm tiêu đề", "titlePlaceholder": "Nhập tiêu đề ở đây", @@ -35,8 +35,8 @@ "pdfOptions": "Tùy chọn PDF", "csvOptions": "Tùy chọn CSV", "refineSelection": "Lựa chọn tinh chỉnh", - "refineTip": "Đ_Refine and finalize your lists by using sketch tools to add or remove selected features_____________________________________________ớ.", + "refineTip": "Tinh chỉnh và hoàn thiện danh sách của bạn bằng các công cụ phác hoạ để thêm hoặc xóa đối tượng đã lựa chọn.", "refineTipNoSelections": "Không có lựa chọn nào để tinh chỉnh. Đến Danh sách của tôi để tạo danh sách đối tượng.", - "duplicatesTip": "Đ_Duplicate features are always removed. When enabled, pop-ups from each layer will be compared and any duplicate pop-up information will be removed___________________________________________________________________________ớ.", - "exportListsLabel": "Đ_My lists_________________ớ" + "duplicatesTip": "Đối tượng trùng nhau sẽ luôn bị xoá. Sau khi được bật, cửa sổ pop-up từ mỗi lớp sẽ được so sánh và tất cả các thông tin pop-up trùng nhau sẽ bị xóa.", + "exportListsLabel": "Danh sách của tôi" } \ No newline at end of file diff --git a/src/assets/t9n/public-notification/resources_zh-CN.json b/src/assets/t9n/public-notification/resources_zh-CN.json index 72c9e3fc5..c4ceead0e 100644 --- a/src/assets/t9n/public-notification/resources_zh-CN.json +++ b/src/assets/t9n/public-notification/resources_zh-CN.json @@ -10,24 +10,24 @@ "selectedFeatures": "{{n}} 个所选要素", "noNotifications": "您还没有通知列表。", "notifications": "通知", - "myLists": "试_Create and edit lists______________________验", + "myLists": "创建和编辑列表", "stepTwoFull": "新建列表", "cancel": "取消", "done": "完成", - "selectPDFLabelOption": "试_Format options_______________验", - "removeDuplicate": "试_Remove duplicates___________________验:", + "selectPDFLabelOption": "格式选项", + "removeDuplicate": "移除重复项:", "numDuplicates": "{{n}} 个重复项", - "selectLayerAndAdd": "试_Create lists of features to export as CSV and PDF. Use selection tools to choose which features to include and then click Create list____________________________________________________________________验.", - "selectSearchTip": "试_Select features from the input layer to add to your list. Draw with sketch tools, specify a search distance, and use features from another layer to select overlapping features_________________________________________________________________________________________验.", + "selectLayerAndAdd": "创建要导出为 CSV 和 PDF 的要素列表。 使用选择工具选择要包含的要素,然后单击“创建列表”。", + "selectSearchTip": "从输入图层中选择要添加到列表中的要素。 使用草图工具进行绘制,指定搜索距离,并使用来自另一个图层的要素来选择重叠要素。", "selectLayerTip": "绘制形状以从所选选择图层中选择要素;结果将用于从地址图层中选择要素", "selectSketchTip": "使用草图工具在地图中绘制图形以选择地址图层中的相交要素。", "optionalSearchDistance": "并可选择添加搜索距离。", - "listHasSetsTip": "试_Edit or delete existing lists or click Create new list_____________________________验.", + "listHasSetsTip": "编辑或删除现有列表,或单击“新建列表”。", "uniqueCout": "唯一计数:{{n}}", "searchDistance": "搜索距离", "useLayerFeatures": "使用图层要素", "export": "导出", - "exportTip": "试_Select lists to include in the exported file. Export lists as CSV and PDF______________________________________验.", + "exportTip": "选择要包含在导出的文件中的列表。 将列表导出为 CSV 和 PDF。", "title": "标题", "addTitle": "添加标题", "titlePlaceholder": "在此处输入标题", @@ -35,8 +35,8 @@ "pdfOptions": "PDF 选项", "csvOptions": "CSV 选项", "refineSelection": "优化选择", - "refineTip": "试_Refine and finalize your lists by using sketch tools to add or remove selected features_____________________________________________验.", + "refineTip": "通过使用草图工具添加或移除所选要素来优化和完成列表。", "refineTipNoSelections": "不存在要优化的选择内容。 转到“我的列表”以创建要素列表。", - "duplicatesTip": "试_Duplicate features are always removed. When enabled, pop-ups from each layer will be compared and any duplicate pop-up information will be removed___________________________________________________________________________验.", - "exportListsLabel": "试_My lists_________________验" + "duplicatesTip": "重复要素始终会被移除。 启用后,将比较每个图层的弹出窗口,并移除任何重复的弹出窗口信息。", + "exportListsLabel": "我的列表" } \ No newline at end of file diff --git a/src/assets/t9n/public-notification/resources_zh-HK.json b/src/assets/t9n/public-notification/resources_zh-HK.json index 21beb2623..09a6a2298 100644 --- a/src/assets/t9n/public-notification/resources_zh-HK.json +++ b/src/assets/t9n/public-notification/resources_zh-HK.json @@ -10,24 +10,24 @@ "selectedFeatures": "{{n}} 個選擇的圖徵", "noNotifications": "您還沒有通知清單。", "notifications": "通知", - "myLists": "試_Create and edit lists______________________驗", + "myLists": "建立和編輯清單", "stepTwoFull": "建立新清單", "cancel": "取消", "done": "完成", - "selectPDFLabelOption": "試_Format options_______________驗", - "removeDuplicate": "試_Remove duplicates___________________驗:", + "selectPDFLabelOption": "格式選項", + "removeDuplicate": "移除重複項目:", "numDuplicates": "{{n}} 個重複項目", - "selectLayerAndAdd": "試_Create lists of features to export as CSV and PDF. Use selection tools to choose which features to include and then click Create list____________________________________________________________________驗.", - "selectSearchTip": "試_Select features from the input layer to add to your list. Draw with sketch tools, specify a search distance, and use features from another layer to select overlapping features_________________________________________________________________________________________驗.", + "selectLayerAndAdd": "建立要匯出為 CSV 和 PDF 的圖徵清單。 使用選擇工具以選擇要包含的圖徵,然後按一下「建立清單」。", + "selectSearchTip": "從輸入圖層中選擇要新增到清單中的圖徵。 使用描繪工具繪製,指定搜尋距離,並使用來自其他圖層的圖徵來選擇重疊圖徵。", "selectLayerTip": "繪製形狀以從選定的選擇圖層中選擇圖徵;結果將用於從收件者圖層中選擇圖徵", "selectSketchTip": "使用描繪工具,在地圖中繪製圖形以選擇地址圖層中的相交圖徵。", "optionalSearchDistance": "並選擇性地新增搜尋距離。", - "listHasSetsTip": "試_Edit or delete existing lists or click Create new list_____________________________驗.", + "listHasSetsTip": "編輯或刪除現有清單,或按一下「建立新清單」。", "uniqueCout": "唯一計數: {{n}}", "searchDistance": "搜尋距離", "useLayerFeatures": "使用圖層圖徵", "export": "匯出", - "exportTip": "試_Select lists to include in the exported file. Export lists as CSV and PDF______________________________________驗.", + "exportTip": "選擇要包含在匯出檔案中的清單。 將清單匯出為 CSV 和 PDF。", "title": "標題", "addTitle": "新增標題", "titlePlaceholder": "在這裡輸入標題", @@ -35,8 +35,8 @@ "pdfOptions": "PDF 選項", "csvOptions": "CSV 選項", "refineSelection": "精細化選擇", - "refineTip": "試_Refine and finalize your lists by using sketch tools to add or remove selected features_____________________________________________驗.", + "refineTip": "使用描繪工具新增或移除所選圖徵,以精細化和完成您的清單。", "refineTipNoSelections": "沒有要精細化的選擇。 移至「我的清單」以建立圖徵清單。", - "duplicatesTip": "試_Duplicate features are always removed. When enabled, pop-ups from each layer will be compared and any duplicate pop-up information will be removed___________________________________________________________________________驗.", - "exportListsLabel": "試_My lists_________________驗" + "duplicatesTip": "一律移除重複的圖徵。 啟用後,將比較每個圖層的快顯視窗,並移除任何重複的快顯視窗資訊。", + "exportListsLabel": "我的清單" } \ No newline at end of file diff --git a/src/assets/t9n/public-notification/resources_zh-TW.json b/src/assets/t9n/public-notification/resources_zh-TW.json index 21beb2623..09a6a2298 100644 --- a/src/assets/t9n/public-notification/resources_zh-TW.json +++ b/src/assets/t9n/public-notification/resources_zh-TW.json @@ -10,24 +10,24 @@ "selectedFeatures": "{{n}} 個選擇的圖徵", "noNotifications": "您還沒有通知清單。", "notifications": "通知", - "myLists": "試_Create and edit lists______________________驗", + "myLists": "建立和編輯清單", "stepTwoFull": "建立新清單", "cancel": "取消", "done": "完成", - "selectPDFLabelOption": "試_Format options_______________驗", - "removeDuplicate": "試_Remove duplicates___________________驗:", + "selectPDFLabelOption": "格式選項", + "removeDuplicate": "移除重複項目:", "numDuplicates": "{{n}} 個重複項目", - "selectLayerAndAdd": "試_Create lists of features to export as CSV and PDF. Use selection tools to choose which features to include and then click Create list____________________________________________________________________驗.", - "selectSearchTip": "試_Select features from the input layer to add to your list. Draw with sketch tools, specify a search distance, and use features from another layer to select overlapping features_________________________________________________________________________________________驗.", + "selectLayerAndAdd": "建立要匯出為 CSV 和 PDF 的圖徵清單。 使用選擇工具以選擇要包含的圖徵,然後按一下「建立清單」。", + "selectSearchTip": "從輸入圖層中選擇要新增到清單中的圖徵。 使用描繪工具繪製,指定搜尋距離,並使用來自其他圖層的圖徵來選擇重疊圖徵。", "selectLayerTip": "繪製形狀以從選定的選擇圖層中選擇圖徵;結果將用於從收件者圖層中選擇圖徵", "selectSketchTip": "使用描繪工具,在地圖中繪製圖形以選擇地址圖層中的相交圖徵。", "optionalSearchDistance": "並選擇性地新增搜尋距離。", - "listHasSetsTip": "試_Edit or delete existing lists or click Create new list_____________________________驗.", + "listHasSetsTip": "編輯或刪除現有清單,或按一下「建立新清單」。", "uniqueCout": "唯一計數: {{n}}", "searchDistance": "搜尋距離", "useLayerFeatures": "使用圖層圖徵", "export": "匯出", - "exportTip": "試_Select lists to include in the exported file. Export lists as CSV and PDF______________________________________驗.", + "exportTip": "選擇要包含在匯出檔案中的清單。 將清單匯出為 CSV 和 PDF。", "title": "標題", "addTitle": "新增標題", "titlePlaceholder": "在這裡輸入標題", @@ -35,8 +35,8 @@ "pdfOptions": "PDF 選項", "csvOptions": "CSV 選項", "refineSelection": "精細化選擇", - "refineTip": "試_Refine and finalize your lists by using sketch tools to add or remove selected features_____________________________________________驗.", + "refineTip": "使用描繪工具新增或移除所選圖徵,以精細化和完成您的清單。", "refineTipNoSelections": "沒有要精細化的選擇。 移至「我的清單」以建立圖徵清單。", - "duplicatesTip": "試_Duplicate features are always removed. When enabled, pop-ups from each layer will be compared and any duplicate pop-up information will be removed___________________________________________________________________________驗.", - "exportListsLabel": "試_My lists_________________驗" + "duplicatesTip": "一律移除重複的圖徵。 啟用後,將比較每個圖層的快顯視窗,並移除任何重複的快顯視窗資訊。", + "exportListsLabel": "我的清單" } \ No newline at end of file diff --git a/src/assets/t9n/refine-selection/resources_ar.json b/src/assets/t9n/refine-selection/resources_ar.json index 731886b5a..6d67f091f 100644 --- a/src/assets/t9n/refine-selection/resources_ar.json +++ b/src/assets/t9n/refine-selection/resources_ar.json @@ -1,9 +1,9 @@ { - "add": "بيت_Add_______لاحقة", - "remove": "بيت_Remove_____________لاحقة", - "featuresAdded": "بيت_Features added: {{n}}______________________لاحقة", - "featuresRemoved": "بيت_Features removed: {{n}}________________________لاحقة", - "totalSelected": "بيت_Total selected: {{n}}______________________لاحقة", - "inputLayer": "بيت_Input layer____________لاحقة", - "inputLayerTip": "بيت_Choose input layer to review selected features from, update selected features from one input layer at a time________________________________________________________لاحقة." + "add": "إضافة", + "remove": "إزالة", + "featuresAdded": "المعالم التي تمت إضافتها: {{n}}", + "featuresRemoved": "المعالم التي تمت إزالتها: {{n}}", + "totalSelected": "إجمالي المحدد: {{n}}", + "inputLayer": "الطبقة المدخلة", + "inputLayerTip": "اختر طبقة الإدخال لمراجعة المعالم المحددة منها، وتحديث المعالم المحددة من طبقة إدخال واحدة في كل مرة." } diff --git a/src/assets/t9n/refine-selection/resources_bg.json b/src/assets/t9n/refine-selection/resources_bg.json index dfb431694..627e160db 100644 --- a/src/assets/t9n/refine-selection/resources_bg.json +++ b/src/assets/t9n/refine-selection/resources_bg.json @@ -1,9 +1,9 @@ { - "add": "й_Add_______й", - "remove": "й_Remove_____________й", - "featuresAdded": "й_Features added: {{n}}______________________й", - "featuresRemoved": "й_Features removed: {{n}}________________________й", - "totalSelected": "й_Total selected: {{n}}______________________й", - "inputLayer": "й_Input layer____________й", - "inputLayerTip": "й_Choose input layer to review selected features from, update selected features from one input layer at a time________________________________________________________й." + "add": "Добавяне", + "remove": "Премахване", + "featuresAdded": "Добавени обекти: {{n}}", + "featuresRemoved": "Премахнати обекти: {{n}}", + "totalSelected": "Общо избрани: {{n}}", + "inputLayer": "Входен слой", + "inputLayerTip": "Изберете входен слой, от който да прегледате избраните обекти, актуализирайте избраните обекти от един слой входни данни в даден момент." } diff --git a/src/assets/t9n/refine-selection/resources_bs.json b/src/assets/t9n/refine-selection/resources_bs.json index 0bef24359..b1f0f4a2b 100644 --- a/src/assets/t9n/refine-selection/resources_bs.json +++ b/src/assets/t9n/refine-selection/resources_bs.json @@ -1,9 +1,9 @@ { - "add": "Č_Add_______ž", - "remove": "Č_Remove_____________ž", - "featuresAdded": "Č_Features added: {{n}}______________________ž", - "featuresRemoved": "Č_Features removed: {{n}}________________________ž", - "totalSelected": "Č_Total selected: {{n}}______________________ž", - "inputLayer": "Č_Input layer____________ž", - "inputLayerTip": "Č_Choose input layer to review selected features from, update selected features from one input layer at a time________________________________________________________ž." + "add": "Dodaj", + "remove": "Ukloni", + "featuresAdded": "Dodani geoobjekti: {{n}}", + "featuresRemoved": "Uklonjeni geoobjekti: {{n}}", + "totalSelected": "Ukupno odabrano: {{n}}", + "inputLayer": "Unesi sloj", + "inputLayerTip": "Odaberite ulazni sloj iz kojeg ćete pregledati odabrane geoobjekte, ažurirajte odabrane geoobjekte iz jednog po jednog ulaznog sloja." } diff --git a/src/assets/t9n/refine-selection/resources_ca.json b/src/assets/t9n/refine-selection/resources_ca.json index 8276854bf..2d30009b1 100644 --- a/src/assets/t9n/refine-selection/resources_ca.json +++ b/src/assets/t9n/refine-selection/resources_ca.json @@ -1,9 +1,9 @@ { - "add": "ó_Add_______à", - "remove": "ó_Remove_____________à", - "featuresAdded": "ó_Features added: {{n}}______________________à", - "featuresRemoved": "ó_Features removed: {{n}}________________________à", - "totalSelected": "ó_Total selected: {{n}}______________________à", - "inputLayer": "ó_Input layer____________à", - "inputLayerTip": "ó_Choose input layer to review selected features from, update selected features from one input layer at a time________________________________________________________à." + "add": "Afegeix", + "remove": "Elimina", + "featuresAdded": "Entitats afegides: {{n}}", + "featuresRemoved": "Entitats eliminades: {{n}}", + "totalSelected": "Total seleccionat: {{n}}", + "inputLayer": "Capa d'entrada", + "inputLayerTip": "Trieu la capa d'entrada les entitats seleccionades de la qual voleu revisar. Actualitzeu les entitats seleccionades d'una capa d'entitats cada vegada." } diff --git a/src/assets/t9n/refine-selection/resources_cs.json b/src/assets/t9n/refine-selection/resources_cs.json index 5e5b81d7d..ed7bd92bd 100644 --- a/src/assets/t9n/refine-selection/resources_cs.json +++ b/src/assets/t9n/refine-selection/resources_cs.json @@ -1,9 +1,9 @@ { - "add": "Ř_Add_______ů", - "remove": "Ř_Remove_____________ů", - "featuresAdded": "Ř_Features added: {{n}}______________________ů", - "featuresRemoved": "Ř_Features removed: {{n}}________________________ů", - "totalSelected": "Ř_Total selected: {{n}}______________________ů", - "inputLayer": "Ř_Input layer____________ů", - "inputLayerTip": "Ř_Choose input layer to review selected features from, update selected features from one input layer at a time________________________________________________________ů." + "add": "Přidat", + "remove": "Odebrat", + "featuresAdded": "Přidané prvky: {{n}}", + "featuresRemoved": "Odebrané prvky: {{n}}", + "totalSelected": "Celkem vybráno: {{n}}", + "inputLayer": "Vstupní vrstva", + "inputLayerTip": "Zvolte vstupní vrstvu, ve které chcete vybrané prvky zkontrolovat, a aktualizujte vybrané prvky postupně po jedné vstupní vrstvě." } diff --git a/src/assets/t9n/refine-selection/resources_da.json b/src/assets/t9n/refine-selection/resources_da.json index 2508c4715..21ccd2b8e 100644 --- a/src/assets/t9n/refine-selection/resources_da.json +++ b/src/assets/t9n/refine-selection/resources_da.json @@ -1,9 +1,9 @@ { - "add": "ø_Add_______å", - "remove": "ø_Remove_____________å", - "featuresAdded": "ø_Features added: {{n}}______________________å", - "featuresRemoved": "ø_Features removed: {{n}}________________________å", - "totalSelected": "ø_Total selected: {{n}}______________________å", - "inputLayer": "ø_Input layer____________å", - "inputLayerTip": "ø_Choose input layer to review selected features from, update selected features from one input layer at a time________________________________________________________å." + "add": "Tilføj", + "remove": "Fjern", + "featuresAdded": "Objekter tilføjet: {{n}}", + "featuresRemoved": "Objekter fjernet: {{n}}", + "totalSelected": "I alt markeret: {{n}}", + "inputLayer": "Input-lag", + "inputLayerTip": "Vælg inputlag til at gennemgå de valgte objekter, opdater de valgte objekter fra ét inputlag ad gangen." } diff --git a/src/assets/t9n/refine-selection/resources_de.json b/src/assets/t9n/refine-selection/resources_de.json index 576abd78d..6275bb586 100644 --- a/src/assets/t9n/refine-selection/resources_de.json +++ b/src/assets/t9n/refine-selection/resources_de.json @@ -1,9 +1,9 @@ { - "add": "ä_Add_______Ü", - "remove": "ä_Remove_____________Ü", - "featuresAdded": "ä_Features added: {{n}}______________________Ü", - "featuresRemoved": "ä_Features removed: {{n}}________________________Ü", - "totalSelected": "ä_Total selected: {{n}}______________________Ü", - "inputLayer": "ä_Input layer____________Ü", - "inputLayerTip": "ä_Choose input layer to review selected features from, update selected features from one input layer at a time________________________________________________________Ü." + "add": "Hinzufügen", + "remove": "Entfernen", + "featuresAdded": "Features hinzugefügt: {{n}}", + "featuresRemoved": "Features entfernt: {{n}}", + "totalSelected": "Insgesamt ausgewählt: {{n}}", + "inputLayer": "Eingabe-Layer", + "inputLayerTip": "Wählen Sie einen Eingabe-Layer aus, um ausgewählte Features zu überprüfen, und aktualisieren Sie ausgewählte Features einzelner Eingabe-Layer." } diff --git a/src/assets/t9n/refine-selection/resources_el.json b/src/assets/t9n/refine-selection/resources_el.json index 50f239c83..48401f5dd 100644 --- a/src/assets/t9n/refine-selection/resources_el.json +++ b/src/assets/t9n/refine-selection/resources_el.json @@ -1,9 +1,9 @@ { - "add": "Đ_Add_______ớ", - "remove": "Đ_Remove_____________ớ", - "featuresAdded": "Đ_Features added: {{n}}______________________ớ", - "featuresRemoved": "Đ_Features removed: {{n}}________________________ớ", - "totalSelected": "Đ_Total selected: {{n}}______________________ớ", - "inputLayer": "Đ_Input layer____________ớ", - "inputLayerTip": "Đ_Choose input layer to review selected features from, update selected features from one input layer at a time________________________________________________________ớ." + "add": "Προσθήκη", + "remove": "Κατάργηση", + "featuresAdded": "Προστέθηκαν στοιχεία: {{n}}", + "featuresRemoved": "Καταργήθηκαν στοιχεία: {{n}}", + "totalSelected": "Σύνολο επιλεγμένων: {{n}}", + "inputLayer": "Θεματικό επίπεδο εισόδου", + "inputLayerTip": "Επιλέξτε θεματικό επίπεδο εισόδου για να ελέγξετε επιλεγμένα στοιχεία, ενημερώστε επιλεγμένα στοιχεία από ένα θεματικό επίπεδο εισόδου κάθε φορά." } diff --git a/src/assets/t9n/refine-selection/resources_es.json b/src/assets/t9n/refine-selection/resources_es.json index 475937036..20c3b77fe 100644 --- a/src/assets/t9n/refine-selection/resources_es.json +++ b/src/assets/t9n/refine-selection/resources_es.json @@ -1,9 +1,9 @@ { - "add": "á_Add_______Ó", - "remove": "á_Remove_____________Ó", - "featuresAdded": "á_Features added: {{n}}______________________Ó", - "featuresRemoved": "á_Features removed: {{n}}________________________Ó", - "totalSelected": "á_Total selected: {{n}}______________________Ó", - "inputLayer": "á_Input layer____________Ó", - "inputLayerTip": "á_Choose input layer to review selected features from, update selected features from one input layer at a time________________________________________________________Ó." + "add": "Añadir", + "remove": "Eliminar", + "featuresAdded": "Entidades agregadas: {{n}}", + "featuresRemoved": "Entidades eliminadas: {{n}}", + "totalSelected": "Total seleccionado: {{n}}", + "inputLayer": "Capa de entrada", + "inputLayerTip": "Elija la capa de entrada para revisar las entidades seleccionadas en ella y actualice las entidades seleccionadas en una capa de entrada de una en una." } diff --git a/src/assets/t9n/refine-selection/resources_et.json b/src/assets/t9n/refine-selection/resources_et.json index 11613ae97..ed23452db 100644 --- a/src/assets/t9n/refine-selection/resources_et.json +++ b/src/assets/t9n/refine-selection/resources_et.json @@ -1,9 +1,9 @@ { - "add": "Š_Add_______ä", - "remove": "Š_Remove_____________ä", - "featuresAdded": "Š_Features added: {{n}}______________________ä", - "featuresRemoved": "Š_Features removed: {{n}}________________________ä", - "totalSelected": "Š_Total selected: {{n}}______________________ä", - "inputLayer": "Š_Input layer____________ä", - "inputLayerTip": "Š_Choose input layer to review selected features from, update selected features from one input layer at a time________________________________________________________ä." + "add": "Lisa", + "remove": "Eemalda", + "featuresAdded": "Lisatud objektid: {{n}}", + "featuresRemoved": "Eemaldatud objektid: {{n}}", + "totalSelected": "Kõik valitud: {{n}}", + "inputLayer": "Sisendkiht", + "inputLayerTip": "Valige sisendkiht, millel soovite valitud objektid üle vaadata, uuendage valitud objektid ühel sisendkihil korraga." } diff --git a/src/assets/t9n/refine-selection/resources_fi.json b/src/assets/t9n/refine-selection/resources_fi.json index 844618ea8..f52537388 100644 --- a/src/assets/t9n/refine-selection/resources_fi.json +++ b/src/assets/t9n/refine-selection/resources_fi.json @@ -1,9 +1,9 @@ { - "add": "Å_Add_______ö", - "remove": "Å_Remove_____________ö", - "featuresAdded": "Å_Features added: {{n}}______________________ö", - "featuresRemoved": "Å_Features removed: {{n}}________________________ö", - "totalSelected": "Å_Total selected: {{n}}______________________ö", - "inputLayer": "Å_Input layer____________ö", - "inputLayerTip": "Å_Choose input layer to review selected features from, update selected features from one input layer at a time________________________________________________________ö." + "add": "Lisää", + "remove": "Poista", + "featuresAdded": "Lisätyt kohteet: {{n}}", + "featuresRemoved": "Poistetut kohteet: {{n}}", + "totalSelected": "Valittu yhteensä: {{n}}", + "inputLayer": "Lähtöaineiston karttataso", + "inputLayerTip": "Valitse lähtöaineiston karttataso, josta voit tarkastella valittuja kohteita. Päivitä valitut kohteet yhdestä lähtöaineiston karttatasosta kerrallaan." } diff --git a/src/assets/t9n/refine-selection/resources_fr.json b/src/assets/t9n/refine-selection/resources_fr.json index bc341dbd6..532bf6324 100644 --- a/src/assets/t9n/refine-selection/resources_fr.json +++ b/src/assets/t9n/refine-selection/resources_fr.json @@ -1,9 +1,9 @@ { - "add": "æ_Add_______Â", - "remove": "æ_Remove_____________Â", - "featuresAdded": "æ_Features added: {{n}}______________________Â", - "featuresRemoved": "æ_Features removed: {{n}}________________________Â", - "totalSelected": "æ_Total selected: {{n}}______________________Â", - "inputLayer": "æ_Input layer____________Â", - "inputLayerTip": "æ_Choose input layer to review selected features from, update selected features from one input layer at a time________________________________________________________Â." + "add": "Ajouter", + "remove": "Supprimer", + "featuresAdded": "Entités ajoutées : {{n}}", + "featuresRemoved": "Entités supprimées : {{n}}", + "totalSelected": "Nombre total d’entités sélectionnées : {{n}}", + "inputLayer": "Couche en entrée", + "inputLayerTip": "Choisissez la couche en entrée dans laquelle examiner les entités sélectionnées. Mettez à jour les entités sélectionnées d’une seule couche en entrée à la fois." } diff --git a/src/assets/t9n/refine-selection/resources_he.json b/src/assets/t9n/refine-selection/resources_he.json index e1496a1c2..631147383 100644 --- a/src/assets/t9n/refine-selection/resources_he.json +++ b/src/assets/t9n/refine-selection/resources_he.json @@ -1,9 +1,9 @@ { - "add": "כן_Add_______ש", - "remove": "כן_Remove_____________ש", - "featuresAdded": "כן_Features added: {{n}}______________________ש", - "featuresRemoved": "כן_Features removed: {{n}}________________________ש", - "totalSelected": "כן_Total selected: {{n}}______________________ש", - "inputLayer": "כן_Input layer____________ש", - "inputLayerTip": "כן_Choose input layer to review selected features from, update selected features from one input layer at a time________________________________________________________ש." + "add": "הוספה", + "remove": "הסרה", + "featuresAdded": "ישויות שנוספו: {{n}}", + "featuresRemoved": "ישויות שהוסרו: {{n}}", + "totalSelected": "סה\"כ נבחרו: {{n}}", + "inputLayer": "שכבת קלט", + "inputLayerTip": "בחר שכבת קלט כדי לעיין בישויות שנבחרו מתוכה, עדכן את הישויות שנבחרו משכבת קלט אחת בכל פעם." } diff --git a/src/assets/t9n/refine-selection/resources_hr.json b/src/assets/t9n/refine-selection/resources_hr.json index 0bef24359..b1f0f4a2b 100644 --- a/src/assets/t9n/refine-selection/resources_hr.json +++ b/src/assets/t9n/refine-selection/resources_hr.json @@ -1,9 +1,9 @@ { - "add": "Č_Add_______ž", - "remove": "Č_Remove_____________ž", - "featuresAdded": "Č_Features added: {{n}}______________________ž", - "featuresRemoved": "Č_Features removed: {{n}}________________________ž", - "totalSelected": "Č_Total selected: {{n}}______________________ž", - "inputLayer": "Č_Input layer____________ž", - "inputLayerTip": "Č_Choose input layer to review selected features from, update selected features from one input layer at a time________________________________________________________ž." + "add": "Dodaj", + "remove": "Ukloni", + "featuresAdded": "Dodani geoobjekti: {{n}}", + "featuresRemoved": "Uklonjeni geoobjekti: {{n}}", + "totalSelected": "Ukupno odabrano: {{n}}", + "inputLayer": "Unesi sloj", + "inputLayerTip": "Odaberite ulazni sloj iz kojeg ćete pregledati odabrane geoobjekte, ažurirajte odabrane geoobjekte iz jednog po jednog ulaznog sloja." } diff --git a/src/assets/t9n/refine-selection/resources_hu.json b/src/assets/t9n/refine-selection/resources_hu.json index 97f4fc4c1..3a9f4d5b4 100644 --- a/src/assets/t9n/refine-selection/resources_hu.json +++ b/src/assets/t9n/refine-selection/resources_hu.json @@ -1,9 +1,9 @@ { - "add": "í_Add_______ő", - "remove": "í_Remove_____________ő", - "featuresAdded": "í_Features added: {{n}}______________________ő", - "featuresRemoved": "í_Features removed: {{n}}________________________ő", - "totalSelected": "í_Total selected: {{n}}______________________ő", - "inputLayer": "í_Input layer____________ő", - "inputLayerTip": "í_Choose input layer to review selected features from, update selected features from one input layer at a time________________________________________________________ő." + "add": "Hozzáadás", + "remove": "Eltávolítás", + "featuresAdded": "Hozzáadott vektoros elemek: {{n}}", + "featuresRemoved": "Eltávolított vektoros elemek: {{n}}", + "totalSelected": "Kijelölve összesen: {{n}}", + "inputLayer": "Bemenő réteg", + "inputLayerTip": "Válasszon bemeneti réteget a kijelölt vektoros elemek ellenőrzéséhez, valamint a kijelölt vektoros elemek egy bemeneti rétegből egyszerre történő frissítéséhez." } diff --git a/src/assets/t9n/refine-selection/resources_id.json b/src/assets/t9n/refine-selection/resources_id.json index a5ce2b6ce..7f05e3fbf 100644 --- a/src/assets/t9n/refine-selection/resources_id.json +++ b/src/assets/t9n/refine-selection/resources_id.json @@ -1,9 +1,9 @@ { - "add": "ng_Add_______ny", - "remove": "ng_Remove_____________ny", - "featuresAdded": "ng_Features added: {{n}}______________________ny", - "featuresRemoved": "ng_Features removed: {{n}}________________________ny", - "totalSelected": "ng_Total selected: {{n}}______________________ny", - "inputLayer": "ng_Input layer____________ny", - "inputLayerTip": "ng_Choose input layer to review selected features from, update selected features from one input layer at a time________________________________________________________ny." + "add": "Tambahkan", + "remove": "Hapus", + "featuresAdded": "Fitur ditambahkan: {{n}}", + "featuresRemoved": "Fitur dihapus: {{n}}", + "totalSelected": "Total yang dipilih: {{n}}", + "inputLayer": "Layer input", + "inputLayerTip": "Pilih layer input untuk meninjau fitur yang dipilih, perbarui fitur yang dipilih dari satu layer input pada satu waktu." } diff --git a/src/assets/t9n/refine-selection/resources_it.json b/src/assets/t9n/refine-selection/resources_it.json index cda7297ac..f4d92683c 100644 --- a/src/assets/t9n/refine-selection/resources_it.json +++ b/src/assets/t9n/refine-selection/resources_it.json @@ -1,9 +1,9 @@ { - "add": "é_Add_______È", - "remove": "é_Remove_____________È", - "featuresAdded": "é_Features added: {{n}}______________________È", - "featuresRemoved": "é_Features removed: {{n}}________________________È", - "totalSelected": "é_Total selected: {{n}}______________________È", - "inputLayer": "é_Input layer____________È", - "inputLayerTip": "é_Choose input layer to review selected features from, update selected features from one input layer at a time________________________________________________________È." + "add": "Aggiungi", + "remove": "Rimuovi", + "featuresAdded": "Feature aggiunte: {{n}}", + "featuresRemoved": "Feature rimosse: {{n}}", + "totalSelected": "Totale selezionato: {{n}}", + "inputLayer": "Layer di input", + "inputLayerTip": "Scegliere il layer di input per rivedere, aggiornare le feature selezionate da un layer di input alla volta." } diff --git a/src/assets/t9n/refine-selection/resources_ja.json b/src/assets/t9n/refine-selection/resources_ja.json index da143a2e9..ab9550f42 100644 --- a/src/assets/t9n/refine-selection/resources_ja.json +++ b/src/assets/t9n/refine-selection/resources_ja.json @@ -1,9 +1,9 @@ { - "add": "須_Add_______鷗", - "remove": "須_Remove_____________鷗", - "featuresAdded": "須_Features added: {{n}}______________________鷗", - "featuresRemoved": "須_Features removed: {{n}}________________________鷗", - "totalSelected": "須_Total selected: {{n}}______________________鷗", - "inputLayer": "須_Input layer____________鷗", - "inputLayerTip": "須_Choose input layer to review selected features from, update selected features from one input layer at a time________________________________________________________鷗." + "add": "追加", + "remove": "削除", + "featuresAdded": "追加したフィーチャ数: {{n}}", + "featuresRemoved": "削除したフィーチャ数: {{n}}", + "totalSelected": "選択した総数: {{n}}", + "inputLayer": "入力レイヤー", + "inputLayerTip": "選択したフィーチャを確認するための入力レイヤーを選択し、一度に 1 つの入力レイヤーから選択したフィーチャを更新します。" } diff --git a/src/assets/t9n/refine-selection/resources_ko.json b/src/assets/t9n/refine-selection/resources_ko.json index 5c08c7b3a..9a8b6f7f6 100644 --- a/src/assets/t9n/refine-selection/resources_ko.json +++ b/src/assets/t9n/refine-selection/resources_ko.json @@ -1,9 +1,9 @@ { - "add": "한_Add_______빠", - "remove": "한_Remove_____________빠", - "featuresAdded": "한_Features added: {{n}}______________________빠", - "featuresRemoved": "한_Features removed: {{n}}________________________빠", - "totalSelected": "한_Total selected: {{n}}______________________빠", - "inputLayer": "한_Input layer____________빠", - "inputLayerTip": "한_Choose input layer to review selected features from, update selected features from one input layer at a time________________________________________________________빠." + "add": "추가", + "remove": "제거", + "featuresAdded": "추가된 피처 수: {{n}}", + "featuresRemoved": "제거된 피처 수: {{n}}", + "totalSelected": "선택한 총수: {{n}}", + "inputLayer": "입력 레이어", + "inputLayerTip": "선택한 피처를 검토할 입력 레이어를 선택하고, 선택한 피처를 한 번에 하나의 입력 레이어에서 업데이트합니다." } diff --git a/src/assets/t9n/refine-selection/resources_lt.json b/src/assets/t9n/refine-selection/resources_lt.json index b0f0b6e37..70a72fc18 100644 --- a/src/assets/t9n/refine-selection/resources_lt.json +++ b/src/assets/t9n/refine-selection/resources_lt.json @@ -1,9 +1,9 @@ { - "add": "Į_Add_______š", - "remove": "Į_Remove_____________š", - "featuresAdded": "Į_Features added: {{n}}______________________š", - "featuresRemoved": "Į_Features removed: {{n}}________________________š", - "totalSelected": "Į_Total selected: {{n}}______________________š", - "inputLayer": "Į_Input layer____________š", - "inputLayerTip": "Į_Choose input layer to review selected features from, update selected features from one input layer at a time________________________________________________________š." + "add": "Pridėti", + "remove": "Panaikinti", + "featuresAdded": "Pridėta elementų: {{n}}", + "featuresRemoved": "Pašalinta elementų: {{n}}", + "totalSelected": "Iš viso pasirinkta: {{n}}", + "inputLayer": "Įvesties sluoksnis", + "inputLayerTip": "Pasirinkite įvesties sluoksnį, jei norite peržiūrėti jame pasirinktus elementus. Vienu metu galima atnaujinti tik vieno įvesties sluoksnio pasirinktus elementus." } diff --git a/src/assets/t9n/refine-selection/resources_lv.json b/src/assets/t9n/refine-selection/resources_lv.json index b13663860..e146cc53e 100644 --- a/src/assets/t9n/refine-selection/resources_lv.json +++ b/src/assets/t9n/refine-selection/resources_lv.json @@ -1,9 +1,9 @@ { - "add": "ķ_Add_______ū", - "remove": "ķ_Remove_____________ū", - "featuresAdded": "ķ_Features added: {{n}}______________________ū", - "featuresRemoved": "ķ_Features removed: {{n}}________________________ū", - "totalSelected": "ķ_Total selected: {{n}}______________________ū", - "inputLayer": "ķ_Input layer____________ū", - "inputLayerTip": "ķ_Choose input layer to review selected features from, update selected features from one input layer at a time________________________________________________________ū." + "add": "Pievienot", + "remove": "Noņemt", + "featuresAdded": "Pievienotie elementi: {{n}}", + "featuresRemoved": "Noņemtie elementi: {{n}}", + "totalSelected": "Kopā atlasīts: {{n}}", + "inputLayer": "Ievades slānis", + "inputLayerTip": "Izvēlieties ievades slāni, kurā pārskatīt izvēlētos elementus, atjauniniet izvēlētos elelemtus pa vienam ievades slānim." } diff --git a/src/assets/t9n/refine-selection/resources_nb.json b/src/assets/t9n/refine-selection/resources_nb.json index eb123c783..ea4b26057 100644 --- a/src/assets/t9n/refine-selection/resources_nb.json +++ b/src/assets/t9n/refine-selection/resources_nb.json @@ -1,9 +1,9 @@ { - "add": "å_Add_______ø", - "remove": "å_Remove_____________ø", - "featuresAdded": "å_Features added: {{n}}______________________ø", - "featuresRemoved": "å_Features removed: {{n}}________________________ø", - "totalSelected": "å_Total selected: {{n}}______________________ø", - "inputLayer": "å_Input layer____________ø", - "inputLayerTip": "å_Choose input layer to review selected features from, update selected features from one input layer at a time________________________________________________________ø." + "add": "Legg til", + "remove": "Fjern", + "featuresAdded": "Geoobjekter som er lagt til: {{n}}", + "featuresRemoved": "Geoobjekter som er fjernet: {{n}}", + "totalSelected": "Totalt antall valgte: {{n}}", + "inputLayer": "Inndatalag", + "inputLayerTip": "Velg inndatalag med geoobjekter som skal vurderes. Oppdater valgte geoobjekter fra et inndatalag om gangen." } diff --git a/src/assets/t9n/refine-selection/resources_nl.json b/src/assets/t9n/refine-selection/resources_nl.json index e97711648..a8ddf81d0 100644 --- a/src/assets/t9n/refine-selection/resources_nl.json +++ b/src/assets/t9n/refine-selection/resources_nl.json @@ -1,9 +1,9 @@ { - "add": "IJ_Add_______ä", - "remove": "IJ_Remove_____________ä", - "featuresAdded": "IJ_Features added: {{n}}______________________ä", - "featuresRemoved": "IJ_Features removed: {{n}}________________________ä", - "totalSelected": "IJ_Total selected: {{n}}______________________ä", - "inputLayer": "IJ_Input layer____________ä", - "inputLayerTip": "IJ_Choose input layer to review selected features from, update selected features from one input layer at a time________________________________________________________ä." + "add": "Toevoegen", + "remove": "Verwijderen", + "featuresAdded": "Toegevoegde objecten: {{n}}", + "featuresRemoved": "Verwijderde objecten: {{n}}", + "totalSelected": "Totaal geselecteerd: {{n}}", + "inputLayer": "Invoerlaag", + "inputLayerTip": "Kies een invoerlaag om geselecteerde objecten hieruit door te nemen, werk geselecteerde objecten uit één invoerlaag een voor een bij." } diff --git a/src/assets/t9n/refine-selection/resources_pl.json b/src/assets/t9n/refine-selection/resources_pl.json index bba471e7a..d3873d393 100644 --- a/src/assets/t9n/refine-selection/resources_pl.json +++ b/src/assets/t9n/refine-selection/resources_pl.json @@ -1,9 +1,9 @@ { - "add": "ł_Add_______ą", - "remove": "ł_Remove_____________ą", - "featuresAdded": "ł_Features added: {{n}}______________________ą", - "featuresRemoved": "ł_Features removed: {{n}}________________________ą", - "totalSelected": "ł_Total selected: {{n}}______________________ą", - "inputLayer": "ł_Input layer____________ą", - "inputLayerTip": "ł_Choose input layer to review selected features from, update selected features from one input layer at a time________________________________________________________ą." + "add": "Dodaj", + "remove": "Usuń", + "featuresAdded": "Dodane obiekty: {{n}}", + "featuresRemoved": "Usunięte obiekty: {{n}}", + "totalSelected": "Wybrane łącznie: {{n}}", + "inputLayer": "Warstwa wejściowa", + "inputLayerTip": "Wybierz warstwę wejściową zawierającą wybrane obiekty, które chcesz przejrzeć. Aktualizuj wybrane obiekty z jednej warstwy wejściowej naraz." } diff --git a/src/assets/t9n/refine-selection/resources_pt-BR.json b/src/assets/t9n/refine-selection/resources_pt-BR.json index 1a3ff2742..6206aab29 100644 --- a/src/assets/t9n/refine-selection/resources_pt-BR.json +++ b/src/assets/t9n/refine-selection/resources_pt-BR.json @@ -1,9 +1,9 @@ { - "add": "ã_Add_______Ç", - "remove": "ã_Remove_____________Ç", - "featuresAdded": "ã_Features added: {{n}}______________________Ç", - "featuresRemoved": "ã_Features removed: {{n}}________________________Ç", - "totalSelected": "ã_Total selected: {{n}}______________________Ç", - "inputLayer": "ã_Input layer____________Ç", - "inputLayerTip": "ã_Choose input layer to review selected features from, update selected features from one input layer at a time________________________________________________________Ç." + "add": "Adicionar", + "remove": "Remover", + "featuresAdded": "Feições adicionadas: {{n}}", + "featuresRemoved": "Feições removidas: {{n}}", + "totalSelected": "Total selecionado: {{n}}", + "inputLayer": "Camada de entrada", + "inputLayerTip": "Escolha a camada de entrada para revisar as feições selecionadas, atualize as feições selecionadas de uma camada de entrada por vez." } diff --git a/src/assets/t9n/refine-selection/resources_pt-PT.json b/src/assets/t9n/refine-selection/resources_pt-PT.json index 1a3ff2742..41a53bcc6 100644 --- a/src/assets/t9n/refine-selection/resources_pt-PT.json +++ b/src/assets/t9n/refine-selection/resources_pt-PT.json @@ -1,9 +1,9 @@ { - "add": "ã_Add_______Ç", - "remove": "ã_Remove_____________Ç", - "featuresAdded": "ã_Features added: {{n}}______________________Ç", - "featuresRemoved": "ã_Features removed: {{n}}________________________Ç", - "totalSelected": "ã_Total selected: {{n}}______________________Ç", - "inputLayer": "ã_Input layer____________Ç", - "inputLayerTip": "ã_Choose input layer to review selected features from, update selected features from one input layer at a time________________________________________________________Ç." + "add": "Adicionar", + "remove": "Remover", + "featuresAdded": "Elementos adicionados: {{n}}", + "featuresRemoved": "Elementos removidos: {{n}}", + "totalSelected": "Total de selecionados: {{n}}", + "inputLayer": "Camada de entrada", + "inputLayerTip": "Escolha a camada de entrada a partir da qual pretende rever os elementos selecionados. Atualize os elementos selecionados a partir de uma camada de entrada de cada vez." } diff --git a/src/assets/t9n/refine-selection/resources_ro.json b/src/assets/t9n/refine-selection/resources_ro.json index af1042697..b4eccf9f7 100644 --- a/src/assets/t9n/refine-selection/resources_ro.json +++ b/src/assets/t9n/refine-selection/resources_ro.json @@ -1,9 +1,9 @@ { - "add": "Ă_Add_______ș", - "remove": "Ă_Remove_____________ș", - "featuresAdded": "Ă_Features added: {{n}}______________________ș", - "featuresRemoved": "Ă_Features removed: {{n}}________________________ș", - "totalSelected": "Ă_Total selected: {{n}}______________________ș", - "inputLayer": "Ă_Input layer____________ș", - "inputLayerTip": "Ă_Choose input layer to review selected features from, update selected features from one input layer at a time________________________________________________________ș." + "add": "Adăugare", + "remove": "Eliminare", + "featuresAdded": "Obiecte spațiale adăugate: {{n}}", + "featuresRemoved": "Obiecte spațiale eliminate: {{n}}", + "totalSelected": "Total selectate: {{n}}", + "inputLayer": "Strat tematic de intrare", + "inputLayerTip": "Alegeți stratul tematic de intrare pentru a consulta obiectele spațiale din acesta, actualizați obiectele spațiale selectate dintr-un strat tematic la un moment dat." } diff --git a/src/assets/t9n/refine-selection/resources_ru.json b/src/assets/t9n/refine-selection/resources_ru.json index eba3f2faa..e77e843f1 100644 --- a/src/assets/t9n/refine-selection/resources_ru.json +++ b/src/assets/t9n/refine-selection/resources_ru.json @@ -1,9 +1,9 @@ { - "add": "Ж_Add_______Я", - "remove": "Ж_Remove_____________Я", - "featuresAdded": "Ж_Features added: {{n}}______________________Я", - "featuresRemoved": "Ж_Features removed: {{n}}________________________Я", - "totalSelected": "Ж_Total selected: {{n}}______________________Я", - "inputLayer": "Ж_Input layer____________Я", - "inputLayerTip": "Ж_Choose input layer to review selected features from, update selected features from one input layer at a time________________________________________________________Я." + "add": "Добавить", + "remove": "Удалить", + "featuresAdded": "Добавлено объектов: {{n}}", + "featuresRemoved": "Удалено объектов: {{n}}", + "totalSelected": "Всего выбрано: {{n}}", + "inputLayer": "Входной слой", + "inputLayerTip": "Выберите входной слой для просмотра выбранных объектов, обновляйте выбранные объекты из одного входного слоя за раз." } diff --git a/src/assets/t9n/refine-selection/resources_sk.json b/src/assets/t9n/refine-selection/resources_sk.json index 5f01d9921..add5f19e6 100644 --- a/src/assets/t9n/refine-selection/resources_sk.json +++ b/src/assets/t9n/refine-selection/resources_sk.json @@ -1,9 +1,9 @@ { - "add": "ĺ_Add_______ľ", - "remove": "ĺ_Remove_____________ľ", - "featuresAdded": "ĺ_Features added: {{n}}______________________ľ", - "featuresRemoved": "ĺ_Features removed: {{n}}________________________ľ", - "totalSelected": "ĺ_Total selected: {{n}}______________________ľ", - "inputLayer": "ĺ_Input layer____________ľ", - "inputLayerTip": "ĺ_Choose input layer to review selected features from, update selected features from one input layer at a time________________________________________________________ľ." + "add": "Pridať", + "remove": "Odstrániť", + "featuresAdded": "Pridané prvky: {{n}}", + "featuresRemoved": "Odstránené prvky: {{n}}", + "totalSelected": "Celkom vybraných: {{n}}", + "inputLayer": "Vstupná vrstva", + "inputLayerTip": "Vyberte vstupnú vrstvu na preskúmanie vybraných prvkov, aktualizujte vybrané prvky z jednej vstupnej vrstvy naraz." } diff --git a/src/assets/t9n/refine-selection/resources_sl.json b/src/assets/t9n/refine-selection/resources_sl.json index c9647b62e..c2e2e354f 100644 --- a/src/assets/t9n/refine-selection/resources_sl.json +++ b/src/assets/t9n/refine-selection/resources_sl.json @@ -1,9 +1,9 @@ { - "add": "Š_Add_______č", - "remove": "Š_Remove_____________č", - "featuresAdded": "Š_Features added: {{n}}______________________č", - "featuresRemoved": "Š_Features removed: {{n}}________________________č", - "totalSelected": "Š_Total selected: {{n}}______________________č", - "inputLayer": "Š_Input layer____________č", - "inputLayerTip": "Š_Choose input layer to review selected features from, update selected features from one input layer at a time________________________________________________________č." + "add": "Dodaj", + "remove": "Odstrani", + "featuresAdded": "Dodani geoobjekti: {{n}}", + "featuresRemoved": "Odstranjeni geoobjekti: {{n}}", + "totalSelected": "Skupaj izbranih: {{n}}", + "inputLayer": "Vhodni sloj", + "inputLayerTip": "Izberite geobjektni sloj za pregled izbranih funkcij, posodobite izbrane funkcije iz enega geobjekta naenkrat." } diff --git a/src/assets/t9n/refine-selection/resources_sr.json b/src/assets/t9n/refine-selection/resources_sr.json index 0bef24359..b88b93bad 100644 --- a/src/assets/t9n/refine-selection/resources_sr.json +++ b/src/assets/t9n/refine-selection/resources_sr.json @@ -1,9 +1,9 @@ { - "add": "Č_Add_______ž", - "remove": "Č_Remove_____________ž", - "featuresAdded": "Č_Features added: {{n}}______________________ž", - "featuresRemoved": "Č_Features removed: {{n}}________________________ž", - "totalSelected": "Č_Total selected: {{n}}______________________ž", - "inputLayer": "Č_Input layer____________ž", - "inputLayerTip": "Č_Choose input layer to review selected features from, update selected features from one input layer at a time________________________________________________________ž." + "add": "Dodaj", + "remove": "Ukloni", + "featuresAdded": "Dodate osobine: {{n}}", + "featuresRemoved": "Uklonjene osobine: {{n}}", + "totalSelected": "Ukupno odabrano: {{n}}", + "inputLayer": "Ulazni sloj", + "inputLayerTip": "Odaberite ulazni sloj da pregledate osobine, ažurirate odabrane osobine iz ulaznih slojeva - jedan po jedan." } diff --git a/src/assets/t9n/refine-selection/resources_sv.json b/src/assets/t9n/refine-selection/resources_sv.json index 844618ea8..8ae96107f 100644 --- a/src/assets/t9n/refine-selection/resources_sv.json +++ b/src/assets/t9n/refine-selection/resources_sv.json @@ -1,9 +1,9 @@ { - "add": "Å_Add_______ö", - "remove": "Å_Remove_____________ö", - "featuresAdded": "Å_Features added: {{n}}______________________ö", - "featuresRemoved": "Å_Features removed: {{n}}________________________ö", - "totalSelected": "Å_Total selected: {{n}}______________________ö", - "inputLayer": "Å_Input layer____________ö", - "inputLayerTip": "Å_Choose input layer to review selected features from, update selected features from one input layer at a time________________________________________________________ö." + "add": "Lägg till", + "remove": "Ta bort", + "featuresAdded": "Tillagda geoobjekt: {{n}}", + "featuresRemoved": "Borttagna geoobjekt: {{n}}", + "totalSelected": "Totalt antal valda: {{n}}", + "inputLayer": "Indatalager", + "inputLayerTip": "Välj indatalager som valda geoobjekt ska granskas från, uppdatera valda geoobjekt från ett indatalager åt gången." } diff --git a/src/assets/t9n/refine-selection/resources_th.json b/src/assets/t9n/refine-selection/resources_th.json index 16c79dc85..e4380a872 100644 --- a/src/assets/t9n/refine-selection/resources_th.json +++ b/src/assets/t9n/refine-selection/resources_th.json @@ -1,9 +1,9 @@ { - "add": "ก้_Add_______ษฺ", - "remove": "ก้_Remove_____________ษฺ", - "featuresAdded": "ก้_Features added: {{n}}______________________ษฺ", - "featuresRemoved": "ก้_Features removed: {{n}}________________________ษฺ", - "totalSelected": "ก้_Total selected: {{n}}______________________ษฺ", - "inputLayer": "ก้_Input layer____________ษฺ", - "inputLayerTip": "ก้_Choose input layer to review selected features from, update selected features from one input layer at a time________________________________________________________ษฺ." + "add": "เพิ่ม", + "remove": "ลบทิ้ง", + "featuresAdded": "ฟีเจอร์ที่เพิ่ม: {{n}}", + "featuresRemoved": "ฟีเจอร์ที่ลบออก: {{n}}", + "totalSelected": "ที่เลือกทั้งหมด: {{n}}", + "inputLayer": "ชั้นข้อมูลอินพุท", + "inputLayerTip": "เลือกชั้นข้อมูลอินพุทที่จะตรวจสอบฟีเจอร์ที่เลือกจาก อัปเดตฟีเจอร์ที่เลือกจากครั้งละหนึ่งชั้นข้อมูลอินพุท" } diff --git a/src/assets/t9n/refine-selection/resources_tr.json b/src/assets/t9n/refine-selection/resources_tr.json index 546067746..b875da0bf 100644 --- a/src/assets/t9n/refine-selection/resources_tr.json +++ b/src/assets/t9n/refine-selection/resources_tr.json @@ -1,9 +1,9 @@ { - "add": "ı_Add_______İ", - "remove": "ı_Remove_____________İ", - "featuresAdded": "ı_Features added: {{n}}______________________İ", - "featuresRemoved": "ı_Features removed: {{n}}________________________İ", - "totalSelected": "ı_Total selected: {{n}}______________________İ", - "inputLayer": "ı_Input layer____________İ", - "inputLayerTip": "ı_Choose input layer to review selected features from, update selected features from one input layer at a time________________________________________________________İ." + "add": "Ekle", + "remove": "Kaldır", + "featuresAdded": "Eklenen detaylar: {{n}}", + "featuresRemoved": "Kaldırılan detaylar: {{n}}", + "totalSelected": "Toplam seçili: {{n}}", + "inputLayer": "Girdi katman", + "inputLayerTip": "Seçili detayların inceleneceği girdi katmanını seçin, her seferinde tek bir girdi katmanında seçili detayları güncelleyin." } diff --git a/src/assets/t9n/refine-selection/resources_uk.json b/src/assets/t9n/refine-selection/resources_uk.json index 0f544d4d9..3d2993508 100644 --- a/src/assets/t9n/refine-selection/resources_uk.json +++ b/src/assets/t9n/refine-selection/resources_uk.json @@ -1,9 +1,9 @@ { - "add": "ґ_Add_______Ї", - "remove": "ґ_Remove_____________Ї", - "featuresAdded": "ґ_Features added: {{n}}______________________Ї", - "featuresRemoved": "ґ_Features removed: {{n}}________________________Ї", - "totalSelected": "ґ_Total selected: {{n}}______________________Ї", - "inputLayer": "ґ_Input layer____________Ї", - "inputLayerTip": "ґ_Choose input layer to review selected features from, update selected features from one input layer at a time________________________________________________________Ї." + "add": "Додати", + "remove": "Вилучити", + "featuresAdded": "Об'єктів додано: {{n}}", + "featuresRemoved": "Об'єктів видалено: {{n}}", + "totalSelected": "Усього вибрано: {{n}}", + "inputLayer": "Вхідний шар", + "inputLayerTip": "Виберіть вхідний шар для перегляду вибраних об’єктів, оновіть вибрані об’єкти з одного вхідного шару за раз." } diff --git a/src/assets/t9n/refine-selection/resources_vi.json b/src/assets/t9n/refine-selection/resources_vi.json index 50f239c83..edbf4e7fb 100644 --- a/src/assets/t9n/refine-selection/resources_vi.json +++ b/src/assets/t9n/refine-selection/resources_vi.json @@ -1,9 +1,9 @@ { - "add": "Đ_Add_______ớ", - "remove": "Đ_Remove_____________ớ", - "featuresAdded": "Đ_Features added: {{n}}______________________ớ", - "featuresRemoved": "Đ_Features removed: {{n}}________________________ớ", - "totalSelected": "Đ_Total selected: {{n}}______________________ớ", - "inputLayer": "Đ_Input layer____________ớ", - "inputLayerTip": "Đ_Choose input layer to review selected features from, update selected features from one input layer at a time________________________________________________________ớ." + "add": "Thêm", + "remove": "Gỡ bỏ", + "featuresAdded": "Đối tượng đã thêm: {{n}}", + "featuresRemoved": "Đối tượng đã xoá: {{n}}", + "totalSelected": "Tổng số đối tượng đã chọn: {{n}}", + "inputLayer": "Lớp đầu vào", + "inputLayerTip": "Chọn lớp đầu vào để xem lại các đối tượng đã chọn, cập nhật các đối tượng đã chọn từ một lớp đầu vào tại một thời điểm." } diff --git a/src/assets/t9n/refine-selection/resources_zh-CN.json b/src/assets/t9n/refine-selection/resources_zh-CN.json index f7737d6d3..96cf0c082 100644 --- a/src/assets/t9n/refine-selection/resources_zh-CN.json +++ b/src/assets/t9n/refine-selection/resources_zh-CN.json @@ -1,9 +1,9 @@ { - "add": "试_Add_______验", - "remove": "试_Remove_____________验", - "featuresAdded": "试_Features added: {{n}}______________________验", - "featuresRemoved": "试_Features removed: {{n}}________________________验", - "totalSelected": "试_Total selected: {{n}}______________________验", - "inputLayer": "试_Input layer____________验", - "inputLayerTip": "试_Choose input layer to review selected features from, update selected features from one input layer at a time________________________________________________________验." + "add": "添加", + "remove": "移除", + "featuresAdded": "添加的要素:{{n}}", + "featuresRemoved": "移除的要素:{{n}}", + "totalSelected": "所选总数:{{n}}", + "inputLayer": "输入图层", + "inputLayerTip": "选择输入图层以查看所选要素,一次从一个输入图层更新所选要素。" } diff --git a/src/assets/t9n/refine-selection/resources_zh-HK.json b/src/assets/t9n/refine-selection/resources_zh-HK.json index 6ed269f9b..1b5006c59 100644 --- a/src/assets/t9n/refine-selection/resources_zh-HK.json +++ b/src/assets/t9n/refine-selection/resources_zh-HK.json @@ -1,9 +1,9 @@ { - "add": "試_Add_______驗", - "remove": "試_Remove_____________驗", - "featuresAdded": "試_Features added: {{n}}______________________驗", - "featuresRemoved": "試_Features removed: {{n}}________________________驗", - "totalSelected": "試_Total selected: {{n}}______________________驗", - "inputLayer": "試_Input layer____________驗", - "inputLayerTip": "試_Choose input layer to review selected features from, update selected features from one input layer at a time________________________________________________________驗." + "add": "新增", + "remove": "移除", + "featuresAdded": "已新增圖徵: {{n}}", + "featuresRemoved": "已移除圖徵: {{n}}", + "totalSelected": "選擇總計: {{n}}", + "inputLayer": "輸入圖層", + "inputLayerTip": "選擇輸入圖層以檢閱所選圖徵,一次從一個輸入圖層更新所選圖徵。" } diff --git a/src/assets/t9n/refine-selection/resources_zh-TW.json b/src/assets/t9n/refine-selection/resources_zh-TW.json index 6ed269f9b..1b5006c59 100644 --- a/src/assets/t9n/refine-selection/resources_zh-TW.json +++ b/src/assets/t9n/refine-selection/resources_zh-TW.json @@ -1,9 +1,9 @@ { - "add": "試_Add_______驗", - "remove": "試_Remove_____________驗", - "featuresAdded": "試_Features added: {{n}}______________________驗", - "featuresRemoved": "試_Features removed: {{n}}________________________驗", - "totalSelected": "試_Total selected: {{n}}______________________驗", - "inputLayer": "試_Input layer____________驗", - "inputLayerTip": "試_Choose input layer to review selected features from, update selected features from one input layer at a time________________________________________________________驗." + "add": "新增", + "remove": "移除", + "featuresAdded": "已新增圖徵: {{n}}", + "featuresRemoved": "已移除圖徵: {{n}}", + "totalSelected": "選擇總計: {{n}}", + "inputLayer": "輸入圖層", + "inputLayerTip": "選擇輸入圖層以檢閱所選圖徵,一次從一個輸入圖層更新所選圖徵。" } From d66c4fa034225abbaf35ffd38dcf68f7cce47cd3 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Wed, 31 May 2023 10:00:05 -0600 Subject: [PATCH 011/406] update version --- CHANGELOG.md | 5 ++++- package-lock.json | 4 ++-- package.json | 2 +- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index d864fd898..5d01e54c3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,8 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm ## [Unreleased] +## [0.5.18] - May 31st 2023 + ## [0.5.17] - May 30th 2023 ## [0.5.16] - May 25th 2023 @@ -169,4 +171,5 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm [0.5.15]: https://github.com/Esri/solution.js/compare/v0.5.14...v0.5.15 "v0.5.15" [0.5.16]: https://github.com/Esri/solution.js/compare/v0.5.15...v0.5.16 "v0.5.16" [0.5.17]: https://github.com/Esri/solution.js/compare/v0.5.16...v0.5.17 "v0.5.17" -[Unreleased]: https://github.com/Esri/solution.js/compare/v0.5.17...HEAD "Unreleased Changes" +[0.5.18]: https://github.com/Esri/solution.js/compare/v0.5.17...v0.5.18 "v0.5.18" +[Unreleased]: https://github.com/Esri/solution.js/compare/v0.5.18...HEAD "Unreleased Changes" diff --git a/package-lock.json b/package-lock.json index 015cd1d19..904383480 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@esri/solutions-components", - "version": "0.5.17", + "version": "0.5.18", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@esri/solutions-components", - "version": "0.5.17", + "version": "0.5.18", "license": "Apache-2.0", "dependencies": { "@esri/hub-common": "^12.37.1", diff --git a/package.json b/package.json index d09c518e4..ff2aeb96a 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@esri/solutions-components", - "version": "0.5.17", + "version": "0.5.18", "description": "Web Components for Esri's Solutions Applications", "main": "dist/index.cjs.js", "module": "dist/index.js", From 1010ddbc77fd36b7d667bcf6e5a3ee00f1285a5e Mon Sep 17 00:00:00 2001 From: John Hauck Date: Wed, 31 May 2023 13:09:23 -0600 Subject: [PATCH 012/406] card-manager --- src/assets/t9n/comment-card/resources.json | 2 +- src/assets/t9n/comment-card/resources_en.json | 2 +- src/components.d.ts | 26 ++++ src/components/card-manager/card-manager.css | 4 - src/components/card-manager/card-manager.tsx | 128 ++++++++++++------ src/components/card-manager/readme.md | 28 +++- src/components/comment-card/comment-card.css | 4 + src/components/comment-card/comment-card.tsx | 9 +- src/components/comment-card/readme.md | 20 +++ src/demos/card-manager.html | 13 +- src/utils/interfaces.ts | 6 + 11 files changed, 182 insertions(+), 60 deletions(-) diff --git a/src/assets/t9n/comment-card/resources.json b/src/assets/t9n/comment-card/resources.json index 0db3279e4..1affa8583 100644 --- a/src/assets/t9n/comment-card/resources.json +++ b/src/assets/t9n/comment-card/resources.json @@ -1,3 +1,3 @@ { - + "addRecord": "Add Record" } diff --git a/src/assets/t9n/comment-card/resources_en.json b/src/assets/t9n/comment-card/resources_en.json index 0db3279e4..1affa8583 100644 --- a/src/assets/t9n/comment-card/resources_en.json +++ b/src/assets/t9n/comment-card/resources_en.json @@ -1,3 +1,3 @@ { - + "addRecord": "Add Record" } diff --git a/src/components.d.ts b/src/components.d.ts index cb95e018c..bffb3bf8b 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -50,8 +50,21 @@ export namespace Components { "unit": DistanceUnit; } interface CardManager { + /** + * any: Still need to understand what this one will look like + */ + "commentsCardValues": any; + /** + * IInfoCardValues: key value pairs to show in the info card component + */ + "infoCardValues": IInfoCardValues; + /** + * IMediaCardValues[]: Array of objects that contain the name, description, and image to display + */ + "mediaCardValues": IMediaCardValues[]; } interface CommentCard { + "commentsCardValues": any; } interface CrowdsourceManager { /** @@ -950,8 +963,21 @@ declare namespace LocalJSX { "unit"?: DistanceUnit; } interface CardManager { + /** + * any: Still need to understand what this one will look like + */ + "commentsCardValues"?: any; + /** + * IInfoCardValues: key value pairs to show in the info card component + */ + "infoCardValues"?: IInfoCardValues; + /** + * IMediaCardValues[]: Array of objects that contain the name, description, and image to display + */ + "mediaCardValues"?: IMediaCardValues[]; } interface CommentCard { + "commentsCardValues"?: any; } interface CrowdsourceManager { /** diff --git a/src/components/card-manager/card-manager.css b/src/components/card-manager/card-manager.css index e67c3b2e8..ca31fdd4b 100644 --- a/src/components/card-manager/card-manager.css +++ b/src/components/card-manager/card-manager.css @@ -34,10 +34,6 @@ width: 100%; } -.w-1-2 { - width: 50%; -} - .padding-bottom-1 { padding-bottom: 1rem; } diff --git a/src/components/card-manager/card-manager.tsx b/src/components/card-manager/card-manager.tsx index 1fe4d3e1f..1c4e74e44 100644 --- a/src/components/card-manager/card-manager.tsx +++ b/src/components/card-manager/card-manager.tsx @@ -14,11 +14,10 @@ * limitations under the License. */ -import { Component, Element, Host, h, State } from '@stencil/core'; +import { Component, Element, Host, h, Prop, State } from '@stencil/core'; import CardManager_T9n from "../../assets/t9n/card-manager/resources.json"; import { getLocaleComponentStrings } from "../../utils/locale"; - -// TODO maybe just move to the manager component directly +import { ECardType, IInfoCardValues, IMediaCardValues } from "../../utils/interfaces"; @Component({ tag: 'card-manager', @@ -39,6 +38,21 @@ export class CardManager { // //-------------------------------------------------------------------------- + /** + * IInfoCardValues: key value pairs to show in the info card component + */ + @Prop() infoCardValues: IInfoCardValues = {}; + + /** + * IMediaCardValues[]: Array of objects that contain the name, description, and image to display + */ + @Prop() mediaCardValues: IMediaCardValues[] = []; + + /** + * any: Still need to understand what this one will look like + */ + @Prop() commentsCardValues: any; + //-------------------------------------------------------------------------- // // Properties (protected) @@ -51,15 +65,15 @@ export class CardManager { */ @State() _translations: typeof CardManager_T9n; - protected _showInfoCard; - - protected _showMediaCard; - - protected _showCommentsCard; - - protected _fakeValues; + /** + * Controls what card type to display + */ + @State() _currentCardType = ECardType.INFO; - protected _fakeInfos; + /** + * Reference element that controls switching between cards + */ + protected _cardTypeElement: HTMLCalciteSegmentedControlElement; //-------------------------------------------------------------------------- // @@ -85,48 +99,68 @@ export class CardManager { // //-------------------------------------------------------------------------- + /** + * StencilJS: Called once just after the component is first connected to the DOM. + * + * @returns Promise when complete + */ async componentWillLoad(): Promise { await this._getTranslations(); - - const href = window.location.href; - const url = href.substring(0, href.lastIndexOf('/')); - const img = `${url}/data/generic.png`; - this._fakeValues = [{ - name: "Filename.png", - description: "This is an example of what a media description looks like.", - url: img - }, { - name: "Filename2.png", - description: "Another example of what a media description looks like.", - url: img - }, { - name: "Filename3.png", - description: "And another example of a media description.", - url: img - }]; - this._fakeInfos = { - "Details": "Details info goes here", - "Name": "Name here", - "Phone": "(000) 000-0000", - "Email": "example@gmail.com", - "Date": "May 11, 2022" - }; } + /** + * Renders the component. + */ render() { - // const mediaCardClass =; - // const infoCardClass = ""; + + const infoChecked= this._currentCardType === ECardType.INFO; + const mediaChecked = this._currentCardType === ECardType.MEDIA; + const commentsChecked = this._currentCardType === ECardType.COMMENT; + + const infoCardClass = infoChecked ? "" : "display-none"; + const mediaCardClass = mediaChecked ? "" : "display-none"; + const commentsCardClass = commentsChecked ? "" : "display-none"; return (
- {this._translations.information} - {this._translations.media} - {/* {this._translations.comments} */} + this._setDisplayCard()} + ref={(el) => { this._cardTypeElement = el }} + width='full' + > + + {this._translations.information} + + + {this._translations.media} + + + {this._translations.comments} + +
- -
@@ -139,6 +173,15 @@ export class CardManager { // //-------------------------------------------------------------------------- + /** + * Set the current card type to display + * + * @protected + */ + protected _setDisplayCard(): void { + this._currentCardType = this._cardTypeElement.value as ECardType; + } + /** * Fetches the component's translations * @@ -149,5 +192,4 @@ export class CardManager { const messages = await getLocaleComponentStrings(this.el); this._translations = messages[0] as typeof CardManager_T9n; } - } diff --git a/src/components/card-manager/readme.md b/src/components/card-manager/readme.md index f1d86a835..1eddffb90 100644 --- a/src/components/card-manager/readme.md +++ b/src/components/card-manager/readme.md @@ -5,25 +5,39 @@ +## Properties + +| Property | Attribute | Description | Type | Default | +| -------------------- | ---------------------- | --------------------------------------------------------------------------------------------- | -------------------- | ----------- | +| `commentsCardValues` | `comments-card-values` | any: Still need to understand what this one will look like | `any` | `undefined` | +| `infoCardValues` | -- | IInfoCardValues: key value pairs to show in the info card component | `IInfoCardValues` | `{}` | +| `mediaCardValues` | -- | IMediaCardValues[]: Array of objects that contain the name, description, and image to display | `IMediaCardValues[]` | `[]` | + + ## Dependencies ### Depends on -- calcite-button -- [media-card](../media-card) +- calcite-segmented-control +- calcite-segmented-control-item - [info-card](../info-card) +- [media-card](../media-card) +- [comment-card](../comment-card) ### Graph ```mermaid graph TD; - card-manager --> calcite-button - card-manager --> media-card + card-manager --> calcite-segmented-control + card-manager --> calcite-segmented-control-item card-manager --> info-card - calcite-button --> calcite-loader - calcite-button --> calcite-icon + card-manager --> media-card + card-manager --> comment-card + calcite-segmented-control-item --> calcite-icon + info-card --> calcite-label media-card --> calcite-label media-card --> calcite-button - info-card --> calcite-label + calcite-button --> calcite-loader + calcite-button --> calcite-icon style card-manager fill:#f9f,stroke:#333,stroke-width:4px ``` diff --git a/src/components/comment-card/comment-card.css b/src/components/comment-card/comment-card.css index 5fb2a40a9..04c36b6a1 100644 --- a/src/components/comment-card/comment-card.css +++ b/src/components/comment-card/comment-card.css @@ -17,3 +17,7 @@ :host { display: block; } + +.w-100 { + width: 100%; +} diff --git a/src/components/comment-card/comment-card.tsx b/src/components/comment-card/comment-card.tsx index 8fb0e4120..af0a5a082 100644 --- a/src/components/comment-card/comment-card.tsx +++ b/src/components/comment-card/comment-card.tsx @@ -14,7 +14,7 @@ * limitations under the License. */ -import { Component, Element, Host, h } from '@stencil/core'; +import { Component, Element, Host, h, Prop } from '@stencil/core'; @Component({ tag: 'comment-card', @@ -35,6 +35,9 @@ export class CommentCard { // //-------------------------------------------------------------------------- + // not sure what this will look like yet + @Prop() commentsCardValues: any; + //-------------------------------------------------------------------------- // // State (internal) @@ -74,7 +77,9 @@ export class CommentCard { render() { return ( - +
+ {this.commentsCardValues} +
); } diff --git a/src/components/comment-card/readme.md b/src/components/comment-card/readme.md index 3e58c144a..26cb8cd31 100644 --- a/src/components/comment-card/readme.md +++ b/src/components/comment-card/readme.md @@ -5,6 +5,26 @@ +## Properties + +| Property | Attribute | Description | Type | Default | +| -------------------- | ---------------------- | ----------- | ----- | ----------- | +| `commentsCardValues` | `comments-card-values` | | `any` | `undefined` | + + +## Dependencies + +### Used by + + - [card-manager](../card-manager) + +### Graph +```mermaid +graph TD; + card-manager --> comment-card + style comment-card fill:#f9f,stroke:#333,stroke-width:4px +``` + ---------------------------------------------- *Built with [StencilJS](https://stenciljs.com/)* diff --git a/src/demos/card-manager.html b/src/demos/card-manager.html index 4429851cc..0e5e28e2e 100644 --- a/src/demos/card-manager.html +++ b/src/demos/card-manager.html @@ -46,8 +46,9 @@ const url = href.substring(0, href.lastIndexOf('/')); const img = `${url}/data/generic.png`; - const demo = document.getElementById("demo-media"); - demo.values = [{ + const demo = document.getElementById("demo"); + + demo.mediaCardValues = [{ name: "Filename.png", description: "This is an example of what a media description looks like.", url: img @@ -61,6 +62,14 @@ url: img }]; + demo.infoCardValues = { + "Details": "Details info goes here", + "Name": "Name here", + "Phone": "(000) 000-0000", + "Email": "example@gmail.com", + "Date": "May 11, 2022" + }; + } diff --git a/src/utils/interfaces.ts b/src/utils/interfaces.ts index 1c90be6ab..1a9f4d97e 100644 --- a/src/utils/interfaces.ts +++ b/src/utils/interfaces.ts @@ -19,6 +19,12 @@ import { IItemTemplate } from '@esri/solution-common'; +export enum ECardType { + COMMENT="COMMENT", + INFO="INFO", + MEDIA="MEDIA" +} + export enum ELayoutMode { GRID = "GRID", HORIZONTAL = "HORIZONTAL", From 100d355aaaf75a1eddea3c54eb1a2a3a520b8247 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Thu, 1 Jun 2023 17:11:37 -0600 Subject: [PATCH 013/406] update image viewing --- src/components/card-manager/card-manager.css | 8 ++ src/components/card-manager/card-manager.tsx | 33 ++--- src/components/card-manager/readme.md | 4 +- src/components/media-card/media-card.css | 54 ++++++++ src/components/media-card/media-card.tsx | 127 +++++++++++++++---- src/components/media-card/readme.md | 4 +- src/demos/card-manager.html | 39 +++++- src/demos/media-card.html | 38 +++++- src/utils/interfaces.ts | 5 + 9 files changed, 267 insertions(+), 45 deletions(-) diff --git a/src/components/card-manager/card-manager.css b/src/components/card-manager/card-manager.css index ca31fdd4b..45cd87fea 100644 --- a/src/components/card-manager/card-manager.css +++ b/src/components/card-manager/card-manager.css @@ -37,3 +37,11 @@ .padding-bottom-1 { padding-bottom: 1rem; } + +.position-relative { + position: relative; +} + +.focus-margin { + margin: 1px 1px 0px 1px; +} diff --git a/src/components/card-manager/card-manager.tsx b/src/components/card-manager/card-manager.tsx index 1c4e74e44..1e7fdce94 100644 --- a/src/components/card-manager/card-manager.tsx +++ b/src/components/card-manager/card-manager.tsx @@ -122,9 +122,10 @@ export class CardManager { const commentsCardClass = commentsChecked ? "" : "display-none"; return ( -
-
+ +
this._setDisplayCard()} ref={(el) => { this._cardTypeElement = el }} width='full' @@ -149,20 +150,22 @@ export class CardManager {
-
- - - +
+
+ + + +
-
+
); } diff --git a/src/components/card-manager/readme.md b/src/components/card-manager/readme.md index 1eddffb90..56b449cd0 100644 --- a/src/components/card-manager/readme.md +++ b/src/components/card-manager/readme.md @@ -18,6 +18,7 @@ ### Depends on +- calcite-shell - calcite-segmented-control - calcite-segmented-control-item - [info-card](../info-card) @@ -27,6 +28,7 @@ ### Graph ```mermaid graph TD; + card-manager --> calcite-shell card-manager --> calcite-segmented-control card-manager --> calcite-segmented-control-item card-manager --> info-card @@ -34,8 +36,8 @@ graph TD; card-manager --> comment-card calcite-segmented-control-item --> calcite-icon info-card --> calcite-label - media-card --> calcite-label media-card --> calcite-button + media-card --> calcite-label calcite-button --> calcite-loader calcite-button --> calcite-icon style card-manager fill:#f9f,stroke:#333,stroke-width:4px diff --git a/src/components/media-card/media-card.css b/src/components/media-card/media-card.css index 4b51c87d6..0f3dd3ec4 100644 --- a/src/components/media-card/media-card.css +++ b/src/components/media-card/media-card.css @@ -54,3 +54,57 @@ width: 100%; height: 100%; } + +.position-relative { + position: relative; +} + +.image-button-container { + position: absolute; + right: 0.25rem; + top: 0.25rem; + background-color: var(--calcite-ui-background); + padding: 0.25rem; +} + +html[dir="rtl"] .image-button-container { + position: absolute; + left: 0.25rem; + top: 0.25rem; +} + +.padding-right-25 { + padding-right: 0.5rem; +} + +html[dir="rtl"] .padding-right-25 { + padding-left: 0.25rem; +} + +div.image-container { + border: 1px solid #ccc; +} + +div.image-container:hover { + border: 1px solid #777; +} + +* { + box-sizing: border-box; +} + +div.image-container img { + width: 100%; + height: 100px; + object-fit: cover; +} + +.container { + padding: 0px 6px 6px 0px; + float: left; + width: 33%; +} + +.container:nth-child(3n) { + padding-right: 0px; +} diff --git a/src/components/media-card/media-card.tsx b/src/components/media-card/media-card.tsx index 7752c28ba..284efd274 100644 --- a/src/components/media-card/media-card.tsx +++ b/src/components/media-card/media-card.tsx @@ -14,10 +14,10 @@ * limitations under the License. */ -import { Component, Element, Host, h, Prop, State, Watch } from '@stencil/core'; +import { Component, Element, Host, h, Prop, State, VNode, Watch } from '@stencil/core'; import MediaCard_T9n from "../../assets/t9n/media-card/resources.json"; import { getLocaleComponentStrings } from "../../utils/locale"; -import { IMediaCardValues } from '../../utils/interfaces'; +import { EImageDisplayType, IMediaCardValues } from '../../utils/interfaces'; @Component({ tag: 'media-card', @@ -49,6 +49,11 @@ export class MediaCard { // //-------------------------------------------------------------------------- + /** + * The display type controls how the images will be viewed + */ + @State() _displayType = EImageDisplayType.GALLERY; + /** * The index controls what image from values to display */ @@ -130,26 +135,93 @@ export class MediaCard { * Renders the component. */ render() { - const v = this.values?.length > 0 ? this.values[this._index] : undefined; - const total = (this.values || []).length; - const imgNum = this._index + 1; return ( -
-
- +
+
+ this._setImageDisplay(EImageDisplayType.GRID)} + scale="s" + /> + this._setImageDisplay(EImageDisplayType.GALLERY)} + scale="s" + />
- - - {v?.name} - - - - - {v?.description} - - + {this._getImageDisplay()}
+ + ); + } + + //-------------------------------------------------------------------------- + // + // Functions (protected) + // + //-------------------------------------------------------------------------- + + /** + * Render the image view based on the current display type + * + * @protected + */ + protected _getImageDisplay(): VNode { + return this._displayType === EImageDisplayType.GRID ? + this._getGridDisplay() : this._getGallerydDisplay(); + } + + /** + * Render the Grid image view + * + * @protected + */ + protected _getGridDisplay(): VNode { + return ( +
+ { + this.values.map(v => { + return ( +
+
+ {v.name} +
+
+ ) + }) + } +
+
+ ); + } + + /** + * Render the Gallery image view + * + * @protected + */ + protected _getGallerydDisplay(): VNode { + const v = this.values?.length > 0 ? this.values[this._index] : undefined; + const total = (this.values || []).length; + const imgNum = this._index + 1; + return ( +
+ + + + + {v?.name} + + + + + {v?.description} + +
@@ -176,16 +248,10 @@ export class MediaCard {
- +
); } - //-------------------------------------------------------------------------- - // - // Functions (protected) - // - //-------------------------------------------------------------------------- - /** * Resets the index to 0 * @@ -213,6 +279,17 @@ export class MediaCard { this._index -= 1; } + /** + * Store the current display type + * + * @protected + */ + protected _setImageDisplay( + displayType: EImageDisplayType + ): void { + this._displayType = displayType; + } + /** * Fetches the component's translations * diff --git a/src/components/media-card/readme.md b/src/components/media-card/readme.md index 33a65fa60..645b01b89 100644 --- a/src/components/media-card/readme.md +++ b/src/components/media-card/readme.md @@ -20,14 +20,14 @@ ### Depends on -- calcite-label - calcite-button +- calcite-label ### Graph ```mermaid graph TD; - media-card --> calcite-label media-card --> calcite-button + media-card --> calcite-label calcite-button --> calcite-loader calcite-button --> calcite-icon card-manager --> media-card diff --git a/src/demos/card-manager.html b/src/demos/card-manager.html index 0e5e28e2e..a1055a91d 100644 --- a/src/demos/card-manager.html +++ b/src/demos/card-manager.html @@ -28,7 +28,8 @@ align-self: center; } .column { - width: 350px; + width: 360px; + height: 340px; padding: 1rem; border: 1px solid var(--calcite-ui-border-2); } @@ -60,6 +61,42 @@ name: "Filename3.png", description: "And another example of a media description.", url: img + }, { + name: "Filename.png", + description: "This is an example of what a media description looks like.", + url: img + }, { + name: "Filename2.png", + description: "Another example of what a media description looks like.", + url: img + }, { + name: "Filename3.png", + description: "And another example of a media description.", + url: img + }, { + name: "Filename.png", + description: "This is an example of what a media description looks like.", + url: img + }, { + name: "Filename2.png", + description: "Another example of what a media description looks like.", + url: img + }, { + name: "Filename3.png", + description: "And another example of a media description.", + url: img + },{ + name: "Filename.png", + description: "This is an example of what a media description looks like.", + url: img + }, { + name: "Filename2.png", + description: "Another example of what a media description looks like.", + url: img + }, { + name: "Filename3.png", + description: "And another example of a media description.", + url: img }]; demo.infoCardValues = { diff --git a/src/demos/media-card.html b/src/demos/media-card.html index ed2a34371..9f3caa677 100644 --- a/src/demos/media-card.html +++ b/src/demos/media-card.html @@ -29,6 +29,7 @@ } .column { width: 350px; + height: 300px; padding: 1rem; border: 1px solid var(--calcite-ui-border-2); } @@ -59,8 +60,43 @@ name: "Filename3.png", description: "And another example of a media description.", url: img + }, { + name: "Filename.png", + description: "This is an example of what a media description looks like.", + url: img + }, { + name: "Filename2.png", + description: "Another example of what a media description looks like.", + url: img + }, { + name: "Filename3.png", + description: "And another example of a media description.", + url: img + }, { + name: "Filename.png", + description: "This is an example of what a media description looks like.", + url: img + }, { + name: "Filename2.png", + description: "Another example of what a media description looks like.", + url: img + }, { + name: "Filename3.png", + description: "And another example of a media description.", + url: img + },{ + name: "Filename.png", + description: "This is an example of what a media description looks like.", + url: img + }, { + name: "Filename2.png", + description: "Another example of what a media description looks like.", + url: img + }, { + name: "Filename3.png", + description: "And another example of a media description.", + url: img }]; - } diff --git a/src/utils/interfaces.ts b/src/utils/interfaces.ts index 1a9f4d97e..5ed74f133 100644 --- a/src/utils/interfaces.ts +++ b/src/utils/interfaces.ts @@ -25,6 +25,11 @@ export enum ECardType { MEDIA="MEDIA" } +export enum EImageDisplayType { + GRID="GRID", + GALLERY="GALLERY" +} + export enum ELayoutMode { GRID = "GRID", HORIZONTAL = "HORIZONTAL", From 3f80d0d86f724ae2d48556c9525d4ebc1a3b172a Mon Sep 17 00:00:00 2001 From: John Hauck Date: Fri, 2 Jun 2023 08:52:29 -0600 Subject: [PATCH 014/406] update button display --- src/components/media-card/media-card.tsx | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/components/media-card/media-card.tsx b/src/components/media-card/media-card.tsx index 284efd274..94b34aa16 100644 --- a/src/components/media-card/media-card.tsx +++ b/src/components/media-card/media-card.tsx @@ -135,19 +135,21 @@ export class MediaCard { * Renders the component. */ render() { + const gridButonApperance = this._displayType === EImageDisplayType.GRID ? "solid" : "outline-fill"; + const galleryButtonApperance = this._displayType === EImageDisplayType.GALLERY ? "solid" : "outline-fill"; return (
this._setImageDisplay(EImageDisplayType.GRID)} scale="s" /> this._setImageDisplay(EImageDisplayType.GALLERY)} scale="s" From 4e008b7d048bd0d0c507f51bfc869145cd6cd36a Mon Sep 17 00:00:00 2001 From: John Hauck Date: Fri, 2 Jun 2023 12:44:33 -0600 Subject: [PATCH 015/406] media card style updates --- src/components/media-card/media-card.css | 35 ++++++++++++++++++------ src/components/media-card/media-card.tsx | 12 ++++---- 2 files changed, 33 insertions(+), 14 deletions(-) diff --git a/src/components/media-card/media-card.css b/src/components/media-card/media-card.css index 0f3dd3ec4..75fd0c099 100644 --- a/src/components/media-card/media-card.css +++ b/src/components/media-card/media-card.css @@ -35,6 +35,10 @@ font-style: italic; } +.min-height-50 { + min-height: 50px; +} + .button-width { min-width: 120px; } @@ -61,7 +65,7 @@ .image-button-container { position: absolute; - right: 0.25rem; + right: 1rem; top: 0.25rem; background-color: var(--calcite-ui-background); padding: 0.25rem; @@ -69,40 +73,53 @@ html[dir="rtl"] .image-button-container { position: absolute; - left: 0.25rem; + left: 1rem; top: 0.25rem; + background-color: var(--calcite-ui-background); + padding: 0.25rem; } -.padding-right-25 { +.padding-right-5 { padding-right: 0.5rem; } -html[dir="rtl"] .padding-right-25 { - padding-left: 0.25rem; +.margin-right-5 { + margin-right: 5px; +} + +html[dir="rtl"] .margin-right-5 { + margin-left: 5px; +} + +html[dir="rtl"] .padding-right-5 { + padding-left: 0.5rem; } div.image-container { - border: 1px solid #ccc; + border: 1px solid var(--calcite-ui-background); + box-sizing: border-box } div.image-container:hover { - border: 1px solid #777; + border: 1px solid var(--calcite-ui-brand-hover); } -* { +/* * { box-sizing: border-box; -} +} */ div.image-container img { width: 100%; height: 100px; object-fit: cover; + box-sizing: border-box } .container { padding: 0px 6px 6px 0px; float: left; width: 33%; + box-sizing: border-box } .container:nth-child(3n) { diff --git a/src/components/media-card/media-card.tsx b/src/components/media-card/media-card.tsx index 94b34aa16..f070f1cdd 100644 --- a/src/components/media-card/media-card.tsx +++ b/src/components/media-card/media-card.tsx @@ -139,11 +139,11 @@ export class MediaCard { const galleryButtonApperance = this._displayType === EImageDisplayType.GALLERY ? "solid" : "outline-fill"; return ( -
+
this._setImageDisplay(EImageDisplayType.GRID)} scale="s" @@ -190,7 +190,9 @@ export class MediaCard { return (
- {v.name} + + {v.name} +
) @@ -219,7 +221,7 @@ export class MediaCard { {v?.name} - + {v?.description} @@ -243,7 +245,7 @@ export class MediaCard { >{this._translations.previous}
this._incrementIndex()} >{this._translations.next} From 012ff8b3af6c60a5240c0c3cac394492b57eddd3 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Fri, 2 Jun 2023 15:42:46 -0600 Subject: [PATCH 016/406] start comment card --- src/components.d.ts | 2 ++ src/components/card-manager/card-manager.tsx | 22 ++++++++---- src/components/card-manager/readme.md | 2 ++ src/components/comment-card/comment-card.css | 16 +++++++++ src/components/comment-card/comment-card.tsx | 37 ++++++++++++++++---- src/components/comment-card/readme.md | 16 +++++++-- 6 files changed, 80 insertions(+), 15 deletions(-) diff --git a/src/components.d.ts b/src/components.d.ts index bffb3bf8b..fd8ef5f0d 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -65,6 +65,7 @@ export namespace Components { } interface CommentCard { "commentsCardValues": any; + "feature": __esri.Feature; } interface CrowdsourceManager { /** @@ -978,6 +979,7 @@ declare namespace LocalJSX { } interface CommentCard { "commentsCardValues"?: any; + "feature"?: __esri.Feature; } interface CrowdsourceManager { /** diff --git a/src/components/card-manager/card-manager.tsx b/src/components/card-manager/card-manager.tsx index 1e7fdce94..26cf7237b 100644 --- a/src/components/card-manager/card-manager.tsx +++ b/src/components/card-manager/card-manager.tsx @@ -14,7 +14,7 @@ * limitations under the License. */ -import { Component, Element, Host, h, Prop, State } from '@stencil/core'; +import { Component, Element, Host, h, Listen, Prop, State } from '@stencil/core'; import CardManager_T9n from "../../assets/t9n/card-manager/resources.json"; import { getLocaleComponentStrings } from "../../utils/locale"; import { ECardType, IInfoCardValues, IMediaCardValues } from "../../utils/interfaces"; @@ -38,6 +38,11 @@ export class CardManager { // //-------------------------------------------------------------------------- + /** + * any: Still need to understand what this one will look like + */ + @Prop() commentsCardValues: any; + /** * IInfoCardValues: key value pairs to show in the info card component */ @@ -48,11 +53,6 @@ export class CardManager { */ @Prop() mediaCardValues: IMediaCardValues[] = []; - /** - * any: Still need to understand what this one will look like - */ - @Prop() commentsCardValues: any; - //-------------------------------------------------------------------------- // // Properties (protected) @@ -70,6 +70,8 @@ export class CardManager { */ @State() _currentCardType = ECardType.INFO; + @State() features: __esri.Feature[]; + /** * Reference element that controls switching between cards */ @@ -93,6 +95,14 @@ export class CardManager { // //-------------------------------------------------------------------------- + /** + * Handle changes to the buffer distance value + */ + @Listen("selectionChange", { target: "window" }) + mapChanged(event: CustomEvent): void { + this.features = event.detail; + } + //-------------------------------------------------------------------------- // // Functions (lifecycle) diff --git a/src/components/card-manager/readme.md b/src/components/card-manager/readme.md index 56b449cd0..b5d878554 100644 --- a/src/components/card-manager/readme.md +++ b/src/components/card-manager/readme.md @@ -40,6 +40,8 @@ graph TD; media-card --> calcite-label calcite-button --> calcite-loader calcite-button --> calcite-icon + comment-card --> calcite-shell + comment-card --> calcite-button style card-manager fill:#f9f,stroke:#333,stroke-width:4px ``` diff --git a/src/components/comment-card/comment-card.css b/src/components/comment-card/comment-card.css index 04c36b6a1..483a78138 100644 --- a/src/components/comment-card/comment-card.css +++ b/src/components/comment-card/comment-card.css @@ -21,3 +21,19 @@ .w-100 { width: 100%; } + +.background { + background: var(--calcite-ui-foreground-2); +} + +.button-placement { + float: right; + margin-right: 5px; + margin-bottom: 5px; +} + +html[dir="rtl"] .button-placement { + float: left; + margin-left: 5px; + margin-bottom: 5px; +} diff --git a/src/components/comment-card/comment-card.tsx b/src/components/comment-card/comment-card.tsx index af0a5a082..1baaf6e66 100644 --- a/src/components/comment-card/comment-card.tsx +++ b/src/components/comment-card/comment-card.tsx @@ -14,7 +14,9 @@ * limitations under the License. */ -import { Component, Element, Host, h, Prop } from '@stencil/core'; +import { Component, Element, Host, h, Prop, State } from '@stencil/core'; +import CommentCard_T9n from "../../assets/t9n/comment-card/resources.json"; +import { getLocaleComponentStrings } from "../../utils/locale"; @Component({ tag: 'comment-card', @@ -38,12 +40,20 @@ export class CommentCard { // not sure what this will look like yet @Prop() commentsCardValues: any; + @Prop() feature: __esri.Feature; + //-------------------------------------------------------------------------- // // State (internal) // //-------------------------------------------------------------------------- + /** + * Contains the translations for this component. + * All UI strings should be defined here. + */ + @State() _translations: typeof CommentCard_T9n; + //-------------------------------------------------------------------------- // // Properties (protected) @@ -74,12 +84,27 @@ export class CommentCard { // //-------------------------------------------------------------------------- + /** + * StencilJS: Called once just after the component is first connected to the DOM. + * + * @returns Promise when complete + */ + async componentWillLoad(): Promise { + await this._getTranslations(); + } + + /** + * Renders the component. + */ render() { return ( -
- {this.commentsCardValues} -
+ +
+ {this.feature?.view.popup.content} +
+ {this._translations.addRecord} +
); } @@ -97,8 +122,8 @@ export class CommentCard { * @protected */ protected async _getTranslations(): Promise { - // const messages = await getLocaleComponentStrings(this.el); - // this._translations = messages[0] as typeof BufferTools_T9n; + const messages = await getLocaleComponentStrings(this.el); + this._translations = messages[0] as typeof CommentCard_T9n; } } diff --git a/src/components/comment-card/readme.md b/src/components/comment-card/readme.md index 26cb8cd31..185c98c3b 100644 --- a/src/components/comment-card/readme.md +++ b/src/components/comment-card/readme.md @@ -7,9 +7,10 @@ ## Properties -| Property | Attribute | Description | Type | Default | -| -------------------- | ---------------------- | ----------- | ----- | ----------- | -| `commentsCardValues` | `comments-card-values` | | `any` | `undefined` | +| Property | Attribute | Description | Type | Default | +| -------------------- | ---------------------- | ----------- | --------- | ----------- | +| `commentsCardValues` | `comments-card-values` | | `any` | `undefined` | +| `feature` | -- | | `Feature` | `undefined` | ## Dependencies @@ -18,9 +19,18 @@ - [card-manager](../card-manager) +### Depends on + +- calcite-shell +- calcite-button + ### Graph ```mermaid graph TD; + comment-card --> calcite-shell + comment-card --> calcite-button + calcite-button --> calcite-loader + calcite-button --> calcite-icon card-manager --> comment-card style comment-card fill:#f9f,stroke:#333,stroke-width:4px ``` From 2c23f2f2dbd0d8a917dcb4b1521d4524d4a11d39 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Mon, 5 Jun 2023 14:13:29 -0600 Subject: [PATCH 017/406] consistent symbols for graphics in draw tools --- .../map-draw-tools/map-draw-tools.tsx | 24 +++++++++++++++++++ .../map-select-tools/map-select-tools.tsx | 1 + 2 files changed, 25 insertions(+) diff --git a/src/components/map-draw-tools/map-draw-tools.tsx b/src/components/map-draw-tools/map-draw-tools.tsx index 5899e0957..ea070a068 100644 --- a/src/components/map-draw-tools/map-draw-tools.tsx +++ b/src/components/map-draw-tools/map-draw-tools.tsx @@ -165,6 +165,7 @@ export class MapDrawTools { @Watch("graphics") graphicsWatchHandler(v: any, oldV: any): void { if (v && v.length > 0 && JSON.stringify(v) !== JSON.stringify(oldV) && this._sketchGraphicsLayer) { + this._updateGraphicsSymbols(v); this._sketchGraphicsLayer.removeAll(); this._sketchGraphicsLayer.addMany(v); } @@ -521,6 +522,29 @@ export class MapDrawTools { }, 100); } + /** + * Any time graphics are added update the symbology so they will always be consistent + * regardless of where they are from. + * https://github.com/Esri/solutions-components/issues/246 + * + * reshape tool only supports a single graphic + * + * @protected + */ + protected _updateGraphicsSymbols( + graphics: __esri.Graphic[] + ): void { + // graphics will only be of one gemetry type + const graphic = graphics[0]; + const type = graphic.geometry.type; + const symbol = type === "point" ? this.pointSymbol : + type === "polyline" ? this.polylineSymbol : + type === "polygon" ? this.polygonSymbol : undefined; + if (symbol) { + graphics.forEach(g => g.symbol = symbol); + } + } + /** * Fetches the component's translations * diff --git a/src/components/map-select-tools/map-select-tools.tsx b/src/components/map-select-tools/map-select-tools.tsx index a91271d45..2f04267e8 100644 --- a/src/components/map-select-tools/map-select-tools.tsx +++ b/src/components/map-select-tools/map-select-tools.tsx @@ -779,6 +779,7 @@ export class MapSelectTools { const clearLabel = this._searchClearLabel(); void this._clearResults(false, clearLabel); } + this._searchWidget.resultGraphic.visible = false; }); } } From bdf3a6e7d21d936786f001855dd27fb5c548cb2a Mon Sep 17 00:00:00 2001 From: John Hauck Date: Mon, 5 Jun 2023 17:15:25 -0600 Subject: [PATCH 018/406] popup issue --- src/components/map-select-tools/map-select-tools.tsx | 2 +- src/components/public-notification/public-notification.tsx | 6 ++++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/src/components/map-select-tools/map-select-tools.tsx b/src/components/map-select-tools/map-select-tools.tsx index 2f04267e8..44c491d5a 100644 --- a/src/components/map-select-tools/map-select-tools.tsx +++ b/src/components/map-select-tools/map-select-tools.tsx @@ -753,6 +753,7 @@ export class MapSelectTools { this._searchWidget = new this.Search(searchOptions); this._searchWidget.popupEnabled = false; + this._searchWidget.resultGraphicEnabled = false; this._searchWidget.on("search-clear", () => { const clearLabel = this._searchClearLabel(); @@ -779,7 +780,6 @@ export class MapSelectTools { const clearLabel = this._searchClearLabel(); void this._clearResults(false, clearLabel); } - this._searchWidget.resultGraphic.visible = false; }); } } diff --git a/src/components/public-notification/public-notification.tsx b/src/components/public-notification/public-notification.tsx index 1ee3069db..8cddcaecf 100644 --- a/src/components/public-notification/public-notification.tsx +++ b/src/components/public-notification/public-notification.tsx @@ -357,7 +357,7 @@ export class PublicNotification { this._checkPopups(); if (this.mapView?.popup) { - this.mapView.popup.autoOpenEnabled = pageType !== EPageType.LIST ? false : this._popupsEnabled; + (this.mapView as any).popupEnabled = pageType !== EPageType.LIST ? false : this._popupsEnabled; } if (pageType === EPageType.EXPORT) { @@ -1518,7 +1518,9 @@ export class PublicNotification { */ protected _checkPopups(): void { if (typeof this._popupsEnabled !== 'boolean') { - this._popupsEnabled = this.mapView?.popup.autoOpenEnabled; + // this is a temp workaround to handle a mapView spec change + // I don't see where we can get early access to 4.27 types in our package.json + this._popupsEnabled = (this.mapView as any)?.popupEnabled; } } From 658e41bab89ba97ed53c69b5e93717cf5c15a8af Mon Sep 17 00:00:00 2001 From: John Hauck Date: Mon, 5 Jun 2023 20:47:41 -0600 Subject: [PATCH 019/406] update version --- CHANGELOG.md | 5 ++++- package-lock.json | 4 ++-- package.json | 2 +- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 5d01e54c3..968d05e27 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,8 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm ## [Unreleased] +## [0.5.19] - June 6th 2023 + ## [0.5.18] - May 31st 2023 ## [0.5.17] - May 30th 2023 @@ -172,4 +174,5 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm [0.5.16]: https://github.com/Esri/solution.js/compare/v0.5.15...v0.5.16 "v0.5.16" [0.5.17]: https://github.com/Esri/solution.js/compare/v0.5.16...v0.5.17 "v0.5.17" [0.5.18]: https://github.com/Esri/solution.js/compare/v0.5.17...v0.5.18 "v0.5.18" -[Unreleased]: https://github.com/Esri/solution.js/compare/v0.5.18...HEAD "Unreleased Changes" +[0.5.19]: https://github.com/Esri/solution.js/compare/v0.5.18...v0.5.19 "v0.5.19" +[Unreleased]: https://github.com/Esri/solution.js/compare/v0.5.19...HEAD "Unreleased Changes" diff --git a/package-lock.json b/package-lock.json index 904383480..ed3bffdab 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@esri/solutions-components", - "version": "0.5.18", + "version": "0.5.19", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@esri/solutions-components", - "version": "0.5.18", + "version": "0.5.19", "license": "Apache-2.0", "dependencies": { "@esri/hub-common": "^12.37.1", diff --git a/package.json b/package.json index ff2aeb96a..11503db03 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@esri/solutions-components", - "version": "0.5.18", + "version": "0.5.19", "description": "Web Components for Esri's Solutions Applications", "main": "dist/index.cjs.js", "module": "dist/index.js", From 03a8abfceeffdd97f4a81bb3710842ad389089dc Mon Sep 17 00:00:00 2001 From: John Hauck Date: Tue, 6 Jun 2023 14:36:57 -0600 Subject: [PATCH 020/406] set result graphic visible = false --- src/components/map-select-tools/map-select-tools.tsx | 1 + 1 file changed, 1 insertion(+) diff --git a/src/components/map-select-tools/map-select-tools.tsx b/src/components/map-select-tools/map-select-tools.tsx index 44c491d5a..654ee5a71 100644 --- a/src/components/map-select-tools/map-select-tools.tsx +++ b/src/components/map-select-tools/map-select-tools.tsx @@ -776,6 +776,7 @@ export class MapSelectTools { ); this._drawTools.graphics = graphics; this._drawTools.updateGraphics(); + this._searchWidget.resultGraphic.visible = false; } else { const clearLabel = this._searchClearLabel(); void this._clearResults(false, clearLabel); From 6642e27f903b4a8ae68dcec59e25c417a2c637c2 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Tue, 6 Jun 2023 15:04:09 -0600 Subject: [PATCH 021/406] update version --- CHANGELOG.md | 5 ++++- package-lock.json | 4 ++-- package.json | 2 +- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 968d05e27..9ab206861 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,8 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm ## [Unreleased] +## [0.5.20] - June 7th 2023 + ## [0.5.19] - June 6th 2023 ## [0.5.18] - May 31st 2023 @@ -175,4 +177,5 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm [0.5.17]: https://github.com/Esri/solution.js/compare/v0.5.16...v0.5.17 "v0.5.17" [0.5.18]: https://github.com/Esri/solution.js/compare/v0.5.17...v0.5.18 "v0.5.18" [0.5.19]: https://github.com/Esri/solution.js/compare/v0.5.18...v0.5.19 "v0.5.19" -[Unreleased]: https://github.com/Esri/solution.js/compare/v0.5.19...HEAD "Unreleased Changes" +[0.5.20]: https://github.com/Esri/solution.js/compare/v0.5.19...v0.5.20 "v0.5.20" +[Unreleased]: https://github.com/Esri/solution.js/compare/v0.5.20...HEAD "Unreleased Changes" diff --git a/package-lock.json b/package-lock.json index ed3bffdab..c648af7bb 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@esri/solutions-components", - "version": "0.5.19", + "version": "0.5.20", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@esri/solutions-components", - "version": "0.5.19", + "version": "0.5.20", "license": "Apache-2.0", "dependencies": { "@esri/hub-common": "^12.37.1", diff --git a/package.json b/package.json index 11503db03..b6e51b710 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@esri/solutions-components", - "version": "0.5.19", + "version": "0.5.20", "description": "Web Components for Esri's Solutions Applications", "main": "dist/index.cjs.js", "module": "dist/index.js", From 3f959d06d0780d429c77b579095ce5c4c4f5f3d2 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Thu, 8 Jun 2023 11:38:18 -0600 Subject: [PATCH 022/406] put card content in shells and css updates --- src/components/card-manager/card-manager.css | 4 + src/components/card-manager/card-manager.tsx | 86 +++++++++---------- src/components/card-manager/readme.md | 2 + src/components/info-card/info-card.tsx | 4 +- src/components/info-card/readme.md | 2 + src/components/media-card/media-card.css | 16 +--- src/components/media-card/media-card.tsx | 88 ++++++++++++-------- src/components/media-card/readme.md | 2 + 8 files changed, 111 insertions(+), 93 deletions(-) diff --git a/src/components/card-manager/card-manager.css b/src/components/card-manager/card-manager.css index 45cd87fea..7e6328a31 100644 --- a/src/components/card-manager/card-manager.css +++ b/src/components/card-manager/card-manager.css @@ -45,3 +45,7 @@ .focus-margin { margin: 1px 1px 0px 1px; } + +.overflow-auto { + overflow: auto; +} diff --git a/src/components/card-manager/card-manager.tsx b/src/components/card-manager/card-manager.tsx index 26cf7237b..eec6b4922 100644 --- a/src/components/card-manager/card-manager.tsx +++ b/src/components/card-manager/card-manager.tsx @@ -132,50 +132,52 @@ export class CardManager { const commentsCardClass = commentsChecked ? "" : "display-none"; return ( - -
- this._setDisplayCard()} - ref={(el) => { this._cardTypeElement = el }} - width='full' - > - + +
+ this._setDisplayCard()} + ref={(el) => { this._cardTypeElement = el }} + width='full' > - {this._translations.information} - - - {this._translations.media} - - - {this._translations.comments} - - -
-
-
- - - + + {this._translations.information} + + + {this._translations.media} + + + {this._translations.comments} + + +
+
+
+ + + +
-
-
+ +
); } diff --git a/src/components/card-manager/readme.md b/src/components/card-manager/readme.md index b5d878554..63ca630d5 100644 --- a/src/components/card-manager/readme.md +++ b/src/components/card-manager/readme.md @@ -35,8 +35,10 @@ graph TD; card-manager --> media-card card-manager --> comment-card calcite-segmented-control-item --> calcite-icon + info-card --> calcite-shell info-card --> calcite-label media-card --> calcite-button + media-card --> calcite-shell media-card --> calcite-label calcite-button --> calcite-loader calcite-button --> calcite-icon diff --git a/src/components/info-card/info-card.tsx b/src/components/info-card/info-card.tsx index 86cf2378d..d6da4e3d2 100644 --- a/src/components/info-card/info-card.tsx +++ b/src/components/info-card/info-card.tsx @@ -89,7 +89,7 @@ export class InfoCard { render() { return ( -
+
{this.cardTitle}
@@ -100,7 +100,7 @@ export class InfoCard {
-
+ ); } diff --git a/src/components/info-card/readme.md b/src/components/info-card/readme.md index 9012d6115..ae16187cd 100644 --- a/src/components/info-card/readme.md +++ b/src/components/info-card/readme.md @@ -21,11 +21,13 @@ ### Depends on +- calcite-shell - calcite-label ### Graph ```mermaid graph TD; + info-card --> calcite-shell info-card --> calcite-label card-manager --> info-card style info-card fill:#f9f,stroke:#333,stroke-width:4px diff --git a/src/components/media-card/media-card.css b/src/components/media-card/media-card.css index 75fd0c099..a460713cc 100644 --- a/src/components/media-card/media-card.css +++ b/src/components/media-card/media-card.css @@ -83,14 +83,6 @@ html[dir="rtl"] .image-button-container { padding-right: 0.5rem; } -.margin-right-5 { - margin-right: 5px; -} - -html[dir="rtl"] .margin-right-5 { - margin-left: 5px; -} - html[dir="rtl"] .padding-right-5 { padding-left: 0.5rem; } @@ -104,10 +96,6 @@ div.image-container:hover { border: 1px solid var(--calcite-ui-brand-hover); } -/* * { - box-sizing: border-box; -} */ - div.image-container img { width: 100%; height: 100px; @@ -125,3 +113,7 @@ div.image-container img { .container:nth-child(3n) { padding-right: 0px; } + +html[dir="rtl"] .container:nth-child(3n) { + padding-left: 0px; +} diff --git a/src/components/media-card/media-card.tsx b/src/components/media-card/media-card.tsx index f070f1cdd..ecbda8f29 100644 --- a/src/components/media-card/media-card.tsx +++ b/src/components/media-card/media-card.tsx @@ -135,26 +135,9 @@ export class MediaCard { * Renders the component. */ render() { - const gridButonApperance = this._displayType === EImageDisplayType.GRID ? "solid" : "outline-fill"; - const galleryButtonApperance = this._displayType === EImageDisplayType.GALLERY ? "solid" : "outline-fill"; return (
-
- this._setImageDisplay(EImageDisplayType.GRID)} - scale="s" - /> - this._setImageDisplay(EImageDisplayType.GALLERY)} - scale="s" - /> -
{this._getImageDisplay()}
@@ -167,14 +150,37 @@ export class MediaCard { // //-------------------------------------------------------------------------- + protected _getImageButtonContainer() : VNode { + const gridButonApperance = this._displayType === EImageDisplayType.GRID ? "solid" : "outline-fill"; + const galleryButtonApperance = this._displayType === EImageDisplayType.GALLERY ? "solid" : "outline-fill"; + return ( +
+ this._setImageDisplay(EImageDisplayType.GRID)} + scale="s" + /> + this._setImageDisplay(EImageDisplayType.GALLERY)} + scale="s" + /> +
+ ); + } + /** * Render the image view based on the current display type * * @protected */ protected _getImageDisplay(): VNode { + const toggleButtons = this._getImageButtonContainer(); return this._displayType === EImageDisplayType.GRID ? - this._getGridDisplay() : this._getGallerydDisplay(); + this._getGridDisplay(toggleButtons) : this._getGallerydDisplay(toggleButtons); } /** @@ -182,23 +188,28 @@ export class MediaCard { * * @protected */ - protected _getGridDisplay(): VNode { + protected _getGridDisplay( + toggleButtons: VNode + ): VNode { return (
- { - this.values.map(v => { - return ( -
-
- - {v.name} - + {toggleButtons} +
+ { + this.values.map(v => { + return ( +
+
+ + {v.name} + +
-
- ) - }) - } -
+ ) + }) + } +
+
); } @@ -208,12 +219,15 @@ export class MediaCard { * * @protected */ - protected _getGallerydDisplay(): VNode { + protected _getGallerydDisplay( + toggleButtons: VNode + ): VNode { const v = this.values?.length > 0 ? this.values[this._index] : undefined; const total = (this.values || []).length; const imgNum = this._index + 1; return ( -
+ + {toggleButtons} @@ -227,7 +241,7 @@ export class MediaCard { -
+
@@ -245,14 +259,14 @@ export class MediaCard { >{this._translations.previous} this._incrementIndex()} >{this._translations.next}
-
+
); } diff --git a/src/components/media-card/readme.md b/src/components/media-card/readme.md index 645b01b89..965f4b1b6 100644 --- a/src/components/media-card/readme.md +++ b/src/components/media-card/readme.md @@ -21,12 +21,14 @@ ### Depends on - calcite-button +- calcite-shell - calcite-label ### Graph ```mermaid graph TD; media-card --> calcite-button + media-card --> calcite-shell media-card --> calcite-label calcite-button --> calcite-loader calcite-button --> calcite-icon From f9272d57dee9701399204c1b5db0c2dee63a46c0 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Thu, 8 Jun 2023 15:44:07 -0600 Subject: [PATCH 023/406] handle the opening of add record --- src/components.d.ts | 20 +++++++++++ .../add-record-modal/add-record-modal.tsx | 34 ++++++++++++++++-- src/components/add-record-modal/readme.md | 13 +++++++ src/components/card-manager/card-manager.css | 9 +++++ src/components/card-manager/card-manager.tsx | 35 +++++++++++++++---- src/components/card-manager/readme.md | 16 +++++++++ src/components/comment-card/comment-card.tsx | 25 +++++++++++-- src/components/comment-card/readme.md | 7 ++++ .../crowdsource-manager.css | 13 +++++-- .../crowdsource-manager.tsx | 23 ++++++------ src/components/crowdsource-manager/readme.md | 29 ++++++++++++--- 11 files changed, 195 insertions(+), 29 deletions(-) diff --git a/src/components.d.ts b/src/components.d.ts index fd8ef5f0d..fef9cd6b6 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -611,10 +611,18 @@ export namespace Components { "value": string; } } +export interface AddRecordModalCustomEvent extends CustomEvent { + detail: T; + target: HTMLAddRecordModalElement; +} export interface BufferToolsCustomEvent extends CustomEvent { detail: T; target: HTMLBufferToolsElement; } +export interface CommentCardCustomEvent extends CustomEvent { + detail: T; + target: HTMLCommentCardElement; +} export interface DeductCalculatorCustomEvent extends CustomEvent { detail: T; target: HTMLDeductCalculatorElement; @@ -911,6 +919,14 @@ declare global { } declare namespace LocalJSX { interface AddRecordModal { + /** + * Emitted on demand when a buffer is generated. + */ + "onModalClosed"?: (event: AddRecordModalCustomEvent) => void; + /** + * Emitted on demand when a buffer is generated. + */ + "onModalOpened"?: (event: AddRecordModalCustomEvent) => void; /** * When true the component is displayed */ @@ -980,6 +996,10 @@ declare namespace LocalJSX { interface CommentCard { "commentsCardValues"?: any; "feature"?: __esri.Feature; + /** + * Emitted on demand when a buffer is generated. + */ + "onOpenAddRecord"?: (event: CommentCardCustomEvent) => void; } interface CrowdsourceManager { /** diff --git a/src/components/add-record-modal/add-record-modal.tsx b/src/components/add-record-modal/add-record-modal.tsx index ee2236b8a..42b080e00 100644 --- a/src/components/add-record-modal/add-record-modal.tsx +++ b/src/components/add-record-modal/add-record-modal.tsx @@ -14,7 +14,7 @@ * limitations under the License. */ -import { Component, Element, Host, h, Prop, State } from '@stencil/core'; +import { Component, Element, Event, EventEmitter, Host, h, Prop, State } from '@stencil/core'; import AddRecordModal_T9n from "../../assets/t9n/add-record-modal/resources.json"; import { getLocaleComponentStrings } from "../../utils/locale"; @@ -42,7 +42,7 @@ export class AddRecordModal { /** * When true the component is displayed */ - @Prop({ mutable: true }) open = false; + @Prop({ mutable: true, reflect: true }) open = false; //-------------------------------------------------------------------------- // @@ -85,6 +85,16 @@ export class AddRecordModal { // //-------------------------------------------------------------------------- + /** + * Emitted on demand when a buffer is generated. + */ + @Event() modalClosed: EventEmitter; + + /** + * Emitted on demand when a buffer is generated. + */ + @Event() modalOpened: EventEmitter; + //-------------------------------------------------------------------------- // // Functions (lifecycle) @@ -107,7 +117,7 @@ export class AddRecordModal { return (
- + this._modalClose()} onCalciteModalOpen={() => this._modalOpen()} open={this.open} width="s">
{this._translations.addRecord}
@@ -198,6 +208,24 @@ export class AddRecordModal { this.open = false; } + /** + * Emit the modal close event + * + * @returns void + */ + protected _modalClose(): void { + this.modalClosed.emit(); + } + + /** + * Emit the modal open event + * + * @returns void + */ + protected _modalOpen(): void { + this.modalOpened.emit(); + } + /** * Gets the result file from browse * diff --git a/src/components/add-record-modal/readme.md b/src/components/add-record-modal/readme.md index 6b07eff92..8b1ca21d8 100644 --- a/src/components/add-record-modal/readme.md +++ b/src/components/add-record-modal/readme.md @@ -12,8 +12,20 @@ | `open` | `open` | When true the component is displayed | `boolean` | `false` | +## Events + +| Event | Description | Type | +| ------------- | --------------------------------------------- | ------------------- | +| `modalClosed` | Emitted on demand when a buffer is generated. | `CustomEvent` | +| `modalOpened` | Emitted on demand when a buffer is generated. | `CustomEvent` | + + ## Dependencies +### Used by + + - [card-manager](../card-manager) + ### Depends on - calcite-modal @@ -35,6 +47,7 @@ graph TD; calcite-input --> calcite-icon calcite-button --> calcite-loader calcite-button --> calcite-icon + card-manager --> add-record-modal style add-record-modal fill:#f9f,stroke:#333,stroke-width:4px ``` diff --git a/src/components/card-manager/card-manager.css b/src/components/card-manager/card-manager.css index 7e6328a31..5d3140ee3 100644 --- a/src/components/card-manager/card-manager.css +++ b/src/components/card-manager/card-manager.css @@ -38,6 +38,10 @@ padding-bottom: 1rem; } +.padding-1 { + padding: 1rem; +} + .position-relative { position: relative; } @@ -49,3 +53,8 @@ .overflow-auto { overflow: auto; } + +.border { + border: 1px solid var(--calcite-ui-border-2); + border-radius: 5px; +} diff --git a/src/components/card-manager/card-manager.tsx b/src/components/card-manager/card-manager.tsx index eec6b4922..4361936fb 100644 --- a/src/components/card-manager/card-manager.tsx +++ b/src/components/card-manager/card-manager.tsx @@ -60,17 +60,25 @@ export class CardManager { //-------------------------------------------------------------------------- /** - * Contains the translations for this component. - * All UI strings should be defined here. + * When true the add record modal will be displayed */ - @State() _translations: typeof CardManager_T9n; + @State() _addRecordOpen = false; /** * Controls what card type to display */ @State() _currentCardType = ECardType.INFO; - @State() features: __esri.Feature[]; + /** + * The current selected features + */ + @State() _features: __esri.Feature[]; + + /** + * Contains the translations for this component. + * All UI strings should be defined here. + */ + @State() _translations: typeof CardManager_T9n; /** * Reference element that controls switching between cards @@ -96,11 +104,19 @@ export class CardManager { //-------------------------------------------------------------------------- /** - * Handle changes to the buffer distance value + * Store the selected features */ @Listen("selectionChange", { target: "window" }) mapChanged(event: CustomEvent): void { - this.features = event.detail; + this._features = event.detail; + } + + /** + * Sets the state flag that will open the modal + */ + @Listen("openAddRecord", { target: "window" }) + openAddRecord(): void { + this._addRecordOpen = true; } //-------------------------------------------------------------------------- @@ -132,7 +148,7 @@ export class CardManager { const commentsCardClass = commentsChecked ? "" : "display-none"; return ( -
+
+ this._addRecordClosed()} open={this._addRecordOpen}/> ); } @@ -188,6 +205,10 @@ export class CardManager { // //-------------------------------------------------------------------------- + protected _addRecordClosed(): void { + this._addRecordOpen = false; + } + /** * Set the current card type to display * diff --git a/src/components/card-manager/readme.md b/src/components/card-manager/readme.md index 63ca630d5..6b1ffe251 100644 --- a/src/components/card-manager/readme.md +++ b/src/components/card-manager/readme.md @@ -16,6 +16,10 @@ ## Dependencies +### Used by + + - [crowdsource-manager](../crowdsource-manager) + ### Depends on - calcite-shell @@ -24,6 +28,7 @@ - [info-card](../info-card) - [media-card](../media-card) - [comment-card](../comment-card) +- [add-record-modal](../add-record-modal) ### Graph ```mermaid @@ -34,6 +39,7 @@ graph TD; card-manager --> info-card card-manager --> media-card card-manager --> comment-card + card-manager --> add-record-modal calcite-segmented-control-item --> calcite-icon info-card --> calcite-shell info-card --> calcite-label @@ -44,6 +50,16 @@ graph TD; calcite-button --> calcite-icon comment-card --> calcite-shell comment-card --> calcite-button + add-record-modal --> calcite-modal + add-record-modal --> calcite-label + add-record-modal --> calcite-input + add-record-modal --> calcite-button + calcite-modal --> calcite-scrim + calcite-modal --> calcite-icon + calcite-scrim --> calcite-loader + calcite-input --> calcite-progress + calcite-input --> calcite-icon + crowdsource-manager --> card-manager style card-manager fill:#f9f,stroke:#333,stroke-width:4px ``` diff --git a/src/components/comment-card/comment-card.tsx b/src/components/comment-card/comment-card.tsx index 1baaf6e66..d408531db 100644 --- a/src/components/comment-card/comment-card.tsx +++ b/src/components/comment-card/comment-card.tsx @@ -14,7 +14,7 @@ * limitations under the License. */ -import { Component, Element, Host, h, Prop, State } from '@stencil/core'; +import { Component, Element, Event, EventEmitter, Host, h, Prop, State } from '@stencil/core'; import CommentCard_T9n from "../../assets/t9n/comment-card/resources.json"; import { getLocaleComponentStrings } from "../../utils/locale"; @@ -78,6 +78,11 @@ export class CommentCard { // //-------------------------------------------------------------------------- + /** + * Event that will trigger the opening of the add record modal + */ + @Event() openAddRecord: EventEmitter; + //-------------------------------------------------------------------------- // // Functions (lifecycle) @@ -103,7 +108,13 @@ export class CommentCard {
{this.feature?.view.popup.content}
- {this._translations.addRecord} + this._addRecord()} + slot="footer" + > + {this._translations.addRecord} +
); @@ -115,6 +126,16 @@ export class CommentCard { // //-------------------------------------------------------------------------- + /** + * Emit the open add record event + * + * @returns void + * @protected + */ + protected _addRecord(): void { + this.openAddRecord.emit(); + } + /** * Fetches the component's translations * diff --git a/src/components/comment-card/readme.md b/src/components/comment-card/readme.md index 185c98c3b..5003b5635 100644 --- a/src/components/comment-card/readme.md +++ b/src/components/comment-card/readme.md @@ -13,6 +13,13 @@ | `feature` | -- | | `Feature` | `undefined` | +## Events + +| Event | Description | Type | +| --------------- | --------------------------------------------- | ------------------- | +| `openAddRecord` | Emitted on demand when a buffer is generated. | `CustomEvent` | + + ## Dependencies ### Used by diff --git a/src/components/crowdsource-manager/crowdsource-manager.css b/src/components/crowdsource-manager/crowdsource-manager.css index 2a00574fb..7f77936fe 100644 --- a/src/components/crowdsource-manager/crowdsource-manager.css +++ b/src/components/crowdsource-manager/crowdsource-manager.css @@ -134,11 +134,18 @@ } .border { - border-width: 1px; - border-style: solid; - border-color: var(--calcite-ui-border-3); + border-width: 1px solid var(--calcite-ui-border-3); } .position-relative { position: relative; } + +.height-50 { + height: 50%; +} + +.height-50-margin { + margin: 1rem 0rem 1rem 1rem; + height: calc(50% - 4rem); +} diff --git a/src/components/crowdsource-manager/crowdsource-manager.tsx b/src/components/crowdsource-manager/crowdsource-manager.tsx index 974b8a743..0d66fa791 100644 --- a/src/components/crowdsource-manager/crowdsource-manager.tsx +++ b/src/components/crowdsource-manager/crowdsource-manager.tsx @@ -14,7 +14,7 @@ * limitations under the License. */ -import { Component, Element, Host, h, Listen, Prop, State, VNode } from '@stencil/core'; +import { Component, Element, Host, h, Prop, State, VNode } from '@stencil/core'; import CrowdsourceManager_T9n from "../../assets/t9n/crowdsource-manager/resources.json"; import { getLocaleComponentStrings } from "../../utils/locale"; import { ELayoutMode, IMapInfo } from '../../utils/interfaces'; @@ -94,24 +94,24 @@ export class CrowdsourceManager { // //-------------------------------------------------------------------------- - /** - * Handle changes to the buffer distance value - */ - @Listen("mapChanged", { target: "window" }) - mapChanged(event: CustomEvent): void { - this._mapView = event.detail; - } - //-------------------------------------------------------------------------- // // Functions (lifecycle) // //-------------------------------------------------------------------------- + /** + * StencilJS: Called once just after the component is first connected to the DOM. + * + * @returns Promise when complete + */ async componentWillLoad(): Promise { await this._getTranslations(); } + /** + * Renders the component. + */ render() { return ( @@ -238,9 +238,12 @@ export class CrowdsourceManager { const mapSizeClass = this._getMapSizeClass(layoutMode, panelOpen); return (
-
+
+
+ +
); } diff --git a/src/components/crowdsource-manager/readme.md b/src/components/crowdsource-manager/readme.md index 9113fbc39..0b7d26324 100644 --- a/src/components/crowdsource-manager/readme.md +++ b/src/components/crowdsource-manager/readme.md @@ -21,6 +21,7 @@ - calcite-tooltip - calcite-shell - [map-card](../map-card) +- [card-manager](../card-manager) - [layer-table](../layer-table) ### Graph @@ -31,6 +32,7 @@ graph TD; crowdsource-manager --> calcite-tooltip crowdsource-manager --> calcite-shell crowdsource-manager --> map-card + crowdsource-manager --> card-manager crowdsource-manager --> layer-table calcite-panel --> calcite-action calcite-panel --> calcite-action-menu @@ -65,6 +67,29 @@ graph TD; calcite-input --> calcite-progress calcite-input --> calcite-icon calcite-list-item --> calcite-icon + card-manager --> calcite-shell + card-manager --> calcite-segmented-control + card-manager --> calcite-segmented-control-item + card-manager --> info-card + card-manager --> media-card + card-manager --> comment-card + card-manager --> add-record-modal + calcite-segmented-control-item --> calcite-icon + info-card --> calcite-shell + info-card --> calcite-label + media-card --> calcite-button + media-card --> calcite-shell + media-card --> calcite-label + calcite-button --> calcite-loader + calcite-button --> calcite-icon + comment-card --> calcite-shell + comment-card --> calcite-button + add-record-modal --> calcite-modal + add-record-modal --> calcite-label + add-record-modal --> calcite-input + add-record-modal --> calcite-button + calcite-modal --> calcite-scrim + calcite-modal --> calcite-icon layer-table --> calcite-panel layer-table --> edit-record-modal layer-table --> map-layer-picker @@ -76,10 +101,6 @@ graph TD; edit-record-modal --> calcite-label edit-record-modal --> calcite-button edit-record-modal --> calcite-input - calcite-modal --> calcite-scrim - calcite-modal --> calcite-icon - calcite-button --> calcite-loader - calcite-button --> calcite-icon map-layer-picker --> calcite-select map-layer-picker --> calcite-combobox map-layer-picker --> calcite-option From c49fe5407adf0fa861e32c0c901362692db19173 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Mon, 12 Jun 2023 13:51:01 -0600 Subject: [PATCH 024/406] start Feature widget and update doc --- src/components.d.ts | 62 ++++++---- src/components/card-manager/card-manager.tsx | 49 ++++++-- src/components/card-manager/readme.md | 12 +- src/components/comment-card/comment-card.tsx | 5 - src/components/comment-card/readme.md | 13 +- .../crowdsource-manager.tsx | 14 ++- src/components/crowdsource-manager/readme.md | 1 - src/components/info-card/info-card.tsx | 115 ++++++++++++------ src/components/info-card/readme.md | 10 +- src/components/layer-table/layer-table.tsx | 14 ++- src/components/layer-table/readme.md | 7 ++ .../map-layer-picker/map-layer-picker.tsx | 8 +- src/components/map-search/map-search.tsx | 2 +- src/components/map-search/readme.md | 8 +- .../map-select-tools/map-select-tools.tsx | 2 +- src/components/map-select-tools/readme.md | 2 +- .../public-notification.tsx | 2 +- src/components/public-notification/readme.md | 2 +- src/components/refine-selection/readme.md | 2 +- .../refine-selection/refine-selection.tsx | 2 +- src/utils/interfaces.ts | 4 - 21 files changed, 216 insertions(+), 120 deletions(-) diff --git a/src/components.d.ts b/src/components.d.ts index fef9cd6b6..a1522ecd7 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -5,7 +5,7 @@ * It contains typing information for all components that exist in this project. */ import { HTMLStencilElement, JSXBase } from "@stencil/core/internal"; -import { DistanceUnit, EDrawMode, EExpandType, IExportInfos, IInfoCardValues, IInventoryItem, IMapInfo, IMediaCardValues, ISearchConfiguration, ISearchResult, ISelectionSet, ISketchGraphicsChange, ISolutionSpatialReferenceInfo, ISpatialRefRepresentation, IValueChange } from "./utils/interfaces"; +import { DistanceUnit, EDrawMode, EExpandType, IExportInfos, IInventoryItem, IMapInfo, IMediaCardValues, ISearchConfiguration, ISearchResult, ISelectionSet, ISketchGraphicsChange, ISolutionSpatialReferenceInfo, ISpatialRefRepresentation, IValueChange } from "./utils/interfaces"; import { UserSession } from "@esri/solution-common"; export namespace Components { interface AddRecordModal { @@ -55,9 +55,13 @@ export namespace Components { */ "commentsCardValues": any; /** - * IInfoCardValues: key value pairs to show in the info card component + * esri/views/layers/FeatureLayerView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-layers-FeatureLayerView.html + */ + "layerView": __esri.FeatureLayerView; + /** + * esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html */ - "infoCardValues": IInfoCardValues; + "mapView": __esri.MapView; /** * IMediaCardValues[]: Array of objects that contain the name, description, and image to display */ @@ -65,7 +69,6 @@ export namespace Components { } interface CommentCard { "commentsCardValues": any; - "feature": __esri.Feature; } interface CrowdsourceManager { /** @@ -85,13 +88,13 @@ export namespace Components { } interface InfoCard { /** - * string: the components title + * esri/Graphic: https://developers.arcgis.com/javascript/latest/api-reference/esri-Graphic.html */ - "cardTitle": string; + "graphic": __esri.Graphic; /** - * IInfoCardValues: key value pairs to show in the components table + * esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html */ - "values": IInfoCardValues; + "mapView": __esri.MapView; } interface JsonEditor { /** @@ -225,7 +228,7 @@ export namespace Components { */ "clear": () => Promise; /** - * esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html + * esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html */ "mapView": __esri.MapView; /** @@ -281,7 +284,7 @@ export namespace Components { */ "layerViews": __esri.FeatureLayerView[]; /** - * esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html + * esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html */ "mapView": __esri.MapView; /** @@ -382,7 +385,7 @@ export namespace Components { */ "featureHighlightEnabled": boolean; /** - * esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html + * esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html */ "mapView": __esri.MapView; /** @@ -428,7 +431,7 @@ export namespace Components { */ "enabledLayerIds": string[]; /** - * esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html + * esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html */ "mapView": __esri.MapView; /** @@ -627,6 +630,10 @@ export interface DeductCalculatorCustomEvent extends CustomEvent { detail: T; target: HTMLDeductCalculatorElement; } +export interface LayerTableCustomEvent extends CustomEvent { + detail: T; + target: HTMLLayerTableElement; +} export interface MapCardCustomEvent extends CustomEvent { detail: T; target: HTMLMapCardElement; @@ -985,9 +992,13 @@ declare namespace LocalJSX { */ "commentsCardValues"?: any; /** - * IInfoCardValues: key value pairs to show in the info card component + * esri/views/layers/FeatureLayerView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-layers-FeatureLayerView.html + */ + "layerView"?: __esri.FeatureLayerView; + /** + * esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html */ - "infoCardValues"?: IInfoCardValues; + "mapView"?: __esri.MapView; /** * IMediaCardValues[]: Array of objects that contain the name, description, and image to display */ @@ -995,9 +1006,8 @@ declare namespace LocalJSX { } interface CommentCard { "commentsCardValues"?: any; - "feature"?: __esri.Feature; /** - * Emitted on demand when a buffer is generated. + * Event that will trigger the opening of the add record modal */ "onOpenAddRecord"?: (event: CommentCardCustomEvent) => void; } @@ -1023,13 +1033,13 @@ declare namespace LocalJSX { } interface InfoCard { /** - * string: the components title + * esri/Graphic: https://developers.arcgis.com/javascript/latest/api-reference/esri-Graphic.html */ - "cardTitle"?: string; + "graphic"?: __esri.Graphic; /** - * IInfoCardValues: key value pairs to show in the components table + * esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html */ - "values"?: IInfoCardValues; + "mapView"?: __esri.MapView; } interface JsonEditor { /** @@ -1054,6 +1064,10 @@ declare namespace LocalJSX { * esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html */ "mapView"?: __esri.MapView; + /** + * Emitted on demand when a layer is selected + */ + "onFeatureSelectionChange"?: (event: LayerTableCustomEvent) => void; } interface ListItem { } @@ -1156,7 +1170,7 @@ declare namespace LocalJSX { } interface MapSearch { /** - * esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html + * esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html */ "mapView"?: __esri.MapView; /** @@ -1206,7 +1220,7 @@ declare namespace LocalJSX { */ "layerViews"?: __esri.FeatureLayerView[]; /** - * esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html + * esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html */ "mapView"?: __esri.MapView; /** @@ -1294,7 +1308,7 @@ declare namespace LocalJSX { */ "featureHighlightEnabled"?: boolean; /** - * esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html + * esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html */ "mapView"?: __esri.MapView; /** @@ -1344,7 +1358,7 @@ declare namespace LocalJSX { */ "enabledLayerIds"?: string[]; /** - * esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html + * esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html */ "mapView"?: __esri.MapView; /** diff --git a/src/components/card-manager/card-manager.tsx b/src/components/card-manager/card-manager.tsx index 4361936fb..049213159 100644 --- a/src/components/card-manager/card-manager.tsx +++ b/src/components/card-manager/card-manager.tsx @@ -17,12 +17,14 @@ import { Component, Element, Host, h, Listen, Prop, State } from '@stencil/core'; import CardManager_T9n from "../../assets/t9n/card-manager/resources.json"; import { getLocaleComponentStrings } from "../../utils/locale"; -import { ECardType, IInfoCardValues, IMediaCardValues } from "../../utils/interfaces"; +import { ECardType, IMediaCardValues } from "../../utils/interfaces"; +import { queryFeaturesByID } from "../../utils/queryUtils"; +import { getMapLayerView } from "../../utils/mapViewUtils"; @Component({ tag: 'card-manager', styleUrl: 'card-manager.css', - shadow: true, + shadow: false, }) export class CardManager { //-------------------------------------------------------------------------- @@ -44,9 +46,14 @@ export class CardManager { @Prop() commentsCardValues: any; /** - * IInfoCardValues: key value pairs to show in the info card component + * esri/views/layers/FeatureLayerView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-layers-FeatureLayerView.html */ - @Prop() infoCardValues: IInfoCardValues = {}; + @Prop() layerView: __esri.FeatureLayerView; + + /** + * esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html + */ + @Prop() mapView: __esri.MapView; /** * IMediaCardValues[]: Array of objects that contain the name, description, and image to display @@ -70,9 +77,9 @@ export class CardManager { @State() _currentCardType = ECardType.INFO; /** - * The current selected features + * The current selected graphics */ - @State() _features: __esri.Feature[]; + @State() _graphics: __esri.Graphic[]; /** * Contains the translations for this component. @@ -104,11 +111,26 @@ export class CardManager { //-------------------------------------------------------------------------- /** - * Store the selected features + * Query the layer for the provided ids and store the result graphics */ - @Listen("selectionChange", { target: "window" }) - mapChanged(event: CustomEvent): void { - this._features = event.detail; + @Listen("featureSelectionChange", { target: "window" }) + async featureSelectionChange( + evt: CustomEvent + ): Promise { + const ids = evt.detail; + const featureSet = await queryFeaturesByID(ids, this.layerView.layer) + this._graphics = featureSet.features; + } + + /** + * Get the layer view for the provided layer id + */ + @Listen("layerSelectionChange", { target: "window" }) + async layerSelectionChange( + evt: CustomEvent + ): Promise { + const id: string = evt.detail[0]; + this.layerView = await getMapLayerView(this.mapView, id); } /** @@ -138,7 +160,6 @@ export class CardManager { * Renders the component. */ render() { - const infoChecked= this._currentCardType === ECardType.INFO; const mediaChecked = this._currentCardType === ECardType.MEDIA; const commentsChecked = this._currentCardType === ECardType.COMMENT; @@ -146,6 +167,9 @@ export class CardManager { const infoCardClass = infoChecked ? "" : "display-none"; const mediaCardClass = mediaChecked ? "" : "display-none"; const commentsCardClass = commentsChecked ? "" : "display-none"; + + // TODO ask team what I'm supposed to do with multi-select + const graphic = this._graphics?.length > 0 ? this._graphics[0] : undefined; return (
@@ -181,7 +205,8 @@ export class CardManager {
add-record-modal calcite-segmented-control-item --> calcite-icon info-card --> calcite-shell - info-card --> calcite-label media-card --> calcite-button media-card --> calcite-shell media-card --> calcite-label diff --git a/src/components/comment-card/comment-card.tsx b/src/components/comment-card/comment-card.tsx index d408531db..1d66d796d 100644 --- a/src/components/comment-card/comment-card.tsx +++ b/src/components/comment-card/comment-card.tsx @@ -40,8 +40,6 @@ export class CommentCard { // not sure what this will look like yet @Prop() commentsCardValues: any; - @Prop() feature: __esri.Feature; - //-------------------------------------------------------------------------- // // State (internal) @@ -105,9 +103,6 @@ export class CommentCard { return ( -
- {this.feature?.view.popup.content} -
this._addRecord()} diff --git a/src/components/comment-card/readme.md b/src/components/comment-card/readme.md index 5003b5635..8ae4ae40a 100644 --- a/src/components/comment-card/readme.md +++ b/src/components/comment-card/readme.md @@ -7,17 +7,16 @@ ## Properties -| Property | Attribute | Description | Type | Default | -| -------------------- | ---------------------- | ----------- | --------- | ----------- | -| `commentsCardValues` | `comments-card-values` | | `any` | `undefined` | -| `feature` | -- | | `Feature` | `undefined` | +| Property | Attribute | Description | Type | Default | +| -------------------- | ---------------------- | ----------- | ----- | ----------- | +| `commentsCardValues` | `comments-card-values` | | `any` | `undefined` | ## Events -| Event | Description | Type | -| --------------- | --------------------------------------------- | ------------------- | -| `openAddRecord` | Emitted on demand when a buffer is generated. | `CustomEvent` | +| Event | Description | Type | +| --------------- | ----------------------------------------------------------- | ------------------- | +| `openAddRecord` | Event that will trigger the opening of the add record modal | `CustomEvent` | ## Dependencies diff --git a/src/components/crowdsource-manager/crowdsource-manager.tsx b/src/components/crowdsource-manager/crowdsource-manager.tsx index 0d66fa791..478a3870f 100644 --- a/src/components/crowdsource-manager/crowdsource-manager.tsx +++ b/src/components/crowdsource-manager/crowdsource-manager.tsx @@ -14,7 +14,7 @@ * limitations under the License. */ -import { Component, Element, Host, h, Prop, State, VNode } from '@stencil/core'; +import { Component, Element, Host, h, Listen, Prop, State, VNode } from '@stencil/core'; import CrowdsourceManager_T9n from "../../assets/t9n/crowdsource-manager/resources.json"; import { getLocaleComponentStrings } from "../../utils/locale"; import { ELayoutMode, IMapInfo } from '../../utils/interfaces'; @@ -94,6 +94,16 @@ export class CrowdsourceManager { // //-------------------------------------------------------------------------- + /** + * Listen for mapChanged event to be fired then store the new mapView so components will be updated + */ + @Listen("mapChanged", { target: "window" }) + async mapChanged( + evt: CustomEvent + ): Promise { + this._mapView = evt.detail; + } + //-------------------------------------------------------------------------- // // Functions (lifecycle) @@ -242,7 +252,7 @@ export class CrowdsourceManager {
- +
); diff --git a/src/components/crowdsource-manager/readme.md b/src/components/crowdsource-manager/readme.md index 0b7d26324..a3214b1fd 100644 --- a/src/components/crowdsource-manager/readme.md +++ b/src/components/crowdsource-manager/readme.md @@ -76,7 +76,6 @@ graph TD; card-manager --> add-record-modal calcite-segmented-control-item --> calcite-icon info-card --> calcite-shell - info-card --> calcite-label media-card --> calcite-button media-card --> calcite-shell media-card --> calcite-label diff --git a/src/components/info-card/info-card.tsx b/src/components/info-card/info-card.tsx index d6da4e3d2..0958e75cf 100644 --- a/src/components/info-card/info-card.tsx +++ b/src/components/info-card/info-card.tsx @@ -14,13 +14,13 @@ * limitations under the License. */ -import { Component, Element, Host, h, Prop, VNode } from '@stencil/core'; -import { IInfoCardValues } from '../../utils/interfaces'; +import { Component, Element, Host, h, Prop, Watch } from '@stencil/core'; +import { loadModules } from "../../utils/loadModules"; @Component({ tag: 'info-card', styleUrl: 'info-card.css', - shadow: true, + shadow: false, }) export class InfoCard { //-------------------------------------------------------------------------- @@ -38,14 +38,14 @@ export class InfoCard { //-------------------------------------------------------------------------- /** - * string: the components title + * esri/Graphic: https://developers.arcgis.com/javascript/latest/api-reference/esri-Graphic.html */ - @Prop() cardTitle = ""; + @Prop() graphic: __esri.Graphic; /** - * IInfoCardValues: key value pairs to show in the components table + * esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html */ - @Prop() values: IInfoCardValues = {}; + @Prop() mapView: __esri.MapView; //-------------------------------------------------------------------------- // @@ -59,12 +59,42 @@ export class InfoCard { // //-------------------------------------------------------------------------- + /** + * esri/widgets/Feature: https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Feature.html + * used for module import + */ + protected Feature: typeof import("esri/widgets/Feature"); + + /** + * esri/widgets/Feature: https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Feature.html + * used for widget instance + */ + protected _feature: __esri.Feature; + //-------------------------------------------------------------------------- // // Watch handlers // //-------------------------------------------------------------------------- + /** + * Watch for changes to the graphic and update the feature widget + */ + @Watch("graphic") + graphicWatchHandler(): void { + if (this._feature && this.graphic) { + this._feature.graphic = this.graphic; + } + } + + /** + * Watch for changes to the mapView and re-init the Feature widget + */ + @Watch("mapView") + mapViewWatchHandler(): void { + this._initFeatureWidget(); + } + //-------------------------------------------------------------------------- // // Methods (public) @@ -83,6 +113,22 @@ export class InfoCard { // //-------------------------------------------------------------------------- + /** + * StencilJS: Called once just after the component is first connected to the DOM. + * + * @returns Promise when complete + */ + async componentWillLoad(): Promise { + await this._initModules();; + } + + /** + * StencilJS: Init the feature widget after the comoponent loads + */ + async componentDidLoad(): Promise { + this._initFeatureWidget(); + } + /** * Renders the component. */ @@ -90,16 +136,7 @@ export class InfoCard { return ( -
- {this.cardTitle} -
-
- - - {this._getRows()} - -
-
+
); @@ -112,27 +149,33 @@ export class InfoCard { //-------------------------------------------------------------------------- /** - * Render the user defined values as table rows + * Load esri javascript api modules + * + * @returns Promise resolving when function is done + * + * @protected + */ + protected async _initModules(): Promise { + const [Feature] = await loadModules([ + "esri/widgets/Feature" + ]); + this.Feature = Feature; + } + + /** + * Init the Feature widget so we can display the popup content * - * @returns array of row nodes * @protected */ - protected _getRows(): VNode[] { - return Object.keys(this.values).map(k => { - return ( - - - - {k} - - - - - {this.values[k]} - - - - ); - }) + protected _initFeatureWidget(): void { + if (this.mapView && !this._feature) { + // map and spatialReference must be set for Arcade + // expressions to execute and display content + this._feature = new this.Feature({ + map: this.mapView.map, + spatialReference: this.mapView.spatialReference, + container: "feature-node" + }); + } } } diff --git a/src/components/info-card/readme.md b/src/components/info-card/readme.md index ae16187cd..1342739be 100644 --- a/src/components/info-card/readme.md +++ b/src/components/info-card/readme.md @@ -7,10 +7,10 @@ ## Properties -| Property | Attribute | Description | Type | Default | -| ----------- | ------------ | ---------------------------------------------------------------- | ----------------- | ------- | -| `cardTitle` | `card-title` | string: the components title | `string` | `""` | -| `values` | -- | IInfoCardValues: key value pairs to show in the components table | `IInfoCardValues` | `{}` | +| Property | Attribute | Description | Type | Default | +| --------- | --------- | --------------------------------------------------------------------------------------------------------- | --------- | ----------- | +| `graphic` | -- | esri/Graphic: https://developers.arcgis.com/javascript/latest/api-reference/esri-Graphic.html | `Graphic` | `undefined` | +| `mapView` | -- | esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html | `MapView` | `undefined` | ## Dependencies @@ -22,13 +22,11 @@ ### Depends on - calcite-shell -- calcite-label ### Graph ```mermaid graph TD; info-card --> calcite-shell - info-card --> calcite-label card-manager --> info-card style info-card fill:#f9f,stroke:#333,stroke-width:4px ``` diff --git a/src/components/layer-table/layer-table.tsx b/src/components/layer-table/layer-table.tsx index 12bea9ed7..0898ba738 100644 --- a/src/components/layer-table/layer-table.tsx +++ b/src/components/layer-table/layer-table.tsx @@ -14,7 +14,7 @@ * limitations under the License. */ -import { Component, Element, Host, h, Prop, State, VNode, Watch } from '@stencil/core'; +import { Component, Element, Event, EventEmitter, Host, h, Prop, State, VNode, Watch } from '@stencil/core'; import LayerTable_T9n from "../../assets/t9n/layer-table/resources.json"; import { loadModules } from "../../utils/loadModules"; import { getLocaleComponentStrings } from "../../utils/locale"; @@ -116,6 +116,9 @@ export class LayerTable { // //-------------------------------------------------------------------------- + /** + * watch for changes in map view and get the first layer + */ @Watch("mapView") async mapViewWatchHandler(): Promise { const mapLayerIds = await getMapLayerIds(this.mapView); @@ -134,6 +137,11 @@ export class LayerTable { // //-------------------------------------------------------------------------- + /** + * Emitted on demand when a layer is selected + */ + @Event() featureSelectionChange: EventEmitter; + //-------------------------------------------------------------------------- // // Functions (lifecycle) @@ -322,6 +330,10 @@ export class LayerTable { }, container: node } as __esri.FeatureTableProperties); + + this._table.highlightIds.on("change", () => { + this.featureSelectionChange.emit(this._table.highlightIds.toArray()) + }); } } diff --git a/src/components/layer-table/readme.md b/src/components/layer-table/readme.md index b8057b8a1..f36a0a1f9 100644 --- a/src/components/layer-table/readme.md +++ b/src/components/layer-table/readme.md @@ -12,6 +12,13 @@ | `mapView` | -- | esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html | `MapView` | `undefined` | +## Events + +| Event | Description | Type | +| ------------------------ | ------------------------------------------ | ----------------------- | +| `featureSelectionChange` | Emitted on demand when a layer is selected | `CustomEvent` | + + ## Dependencies ### Used by diff --git a/src/components/map-layer-picker/map-layer-picker.tsx b/src/components/map-layer-picker/map-layer-picker.tsx index 17c903aea..4e20da3db 100644 --- a/src/components/map-layer-picker/map-layer-picker.tsx +++ b/src/components/map-layer-picker/map-layer-picker.tsx @@ -92,11 +92,9 @@ export class MapLayerPicker { * */ @Watch("mapView") - async watchStateHandler(newValue: boolean, oldValue: boolean): Promise { - if (newValue !== oldValue) { - await this._setLayers(); - this.layerSelectionChange.emit([this.layerIds[0]]); - } + async mapViewWatchHandler(): Promise { + await this._setLayers(); + this.layerSelectionChange.emit([this.layerIds[0]]); } //-------------------------------------------------------------------------- diff --git a/src/components/map-search/map-search.tsx b/src/components/map-search/map-search.tsx index b98404108..ccc720c8a 100644 --- a/src/components/map-search/map-search.tsx +++ b/src/components/map-search/map-search.tsx @@ -40,7 +40,7 @@ export class MapSearch { //-------------------------------------------------------------------------- /** - * esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html + * esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html */ @Prop() mapView: __esri.MapView; diff --git a/src/components/map-search/readme.md b/src/components/map-search/readme.md index 520f87be1..3d2160063 100644 --- a/src/components/map-search/readme.md +++ b/src/components/map-search/readme.md @@ -7,10 +7,10 @@ ## Properties -| Property | Attribute | Description | Type | Default | -| --------------------- | --------- | ------------------------------------------------------------------------------------------------------ | ---------------------- | ----------- | -| `mapView` | -- | esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html | `MapView` | `undefined` | -| `searchConfiguration` | -- | ISearchConfiguration: Configuration details for the Search widget | `ISearchConfiguration` | `undefined` | +| Property | Attribute | Description | Type | Default | +| --------------------- | --------- | --------------------------------------------------------------------------------------------------------- | ---------------------- | ----------- | +| `mapView` | -- | esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html | `MapView` | `undefined` | +| `searchConfiguration` | -- | ISearchConfiguration: Configuration details for the Search widget | `ISearchConfiguration` | `undefined` | ## Events diff --git a/src/components/map-select-tools/map-select-tools.tsx b/src/components/map-select-tools/map-select-tools.tsx index 8ccade898..696c8ba85 100644 --- a/src/components/map-select-tools/map-select-tools.tsx +++ b/src/components/map-select-tools/map-select-tools.tsx @@ -89,7 +89,7 @@ export class MapSelectTools { @Prop() layerViews: __esri.FeatureLayerView[] = []; /** - * esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html + * esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html */ @Prop() mapView: __esri.MapView; diff --git a/src/components/map-select-tools/readme.md b/src/components/map-select-tools/readme.md index c08d01e40..1bbd8aabe 100644 --- a/src/components/map-select-tools/readme.md +++ b/src/components/map-select-tools/readme.md @@ -18,7 +18,7 @@ | `geometries` | -- | esri/geometry: https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry.html | `Geometry[]` | `[]` | | `isUpdate` | `is-update` | boolean: When true a new label is not generated for the stored selection set | `boolean` | `false` | | `layerViews` | -- | esri/views/layers/FeatureLayerView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-layers-FeatureLayerView.html | `FeatureLayerView[]` | `[]` | -| `mapView` | -- | esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html | `MapView` | `undefined` | +| `mapView` | -- | esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html | `MapView` | `undefined` | | `noResultText` | `no-result-text` | string: The value to show for no results when left empty the default text "0 selected features from {layerTitle}" will be shown | `string` | `undefined` | | `searchConfiguration` | -- | ISearchConfiguration: Configuration details for the Search widget | `ISearchConfiguration` | `undefined` | | `selectLayerView` | -- | esri/views/layers/FeatureLayerView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-layers-FeatureLayerView.html | `FeatureLayerView` | `undefined` | diff --git a/src/components/public-notification/public-notification.tsx b/src/components/public-notification/public-notification.tsx index 1ee3069db..f37ce38ec 100644 --- a/src/components/public-notification/public-notification.tsx +++ b/src/components/public-notification/public-notification.tsx @@ -87,7 +87,7 @@ export class PublicNotification { @Prop() featureHighlightEnabled: boolean; /** - * esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html + * esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html */ @Prop() mapView: __esri.MapView; diff --git a/src/components/public-notification/readme.md b/src/components/public-notification/readme.md index 49321471b..a96e0193e 100644 --- a/src/components/public-notification/readme.md +++ b/src/components/public-notification/readme.md @@ -17,7 +17,7 @@ | `defaultBufferUnit` | `default-buffer-unit` | number: The default value to show for the buffer unit ("feet"\|"meters"\|"miles"\|"kilometers") | `"feet" \| "kilometers" \| "meters" \| "miles"` | `undefined` | | `featureEffect` | -- | The effect that will be applied when featureHighlightEnabled is true esri/layers/support/FeatureEffect: https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-FeatureEffect.html | `FeatureEffect` | `undefined` | | `featureHighlightEnabled` | `feature-highlight-enabled` | boolean: When enabled features will be highlighted when their notification list item is clicked. | `boolean` | `undefined` | -| `mapView` | -- | esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html | `MapView` | `undefined` | +| `mapView` | -- | esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html | `MapView` | `undefined` | | `noResultText` | `no-result-text` | string: The value to show for no results when left empty the default text "0 selected features from {layerTitle}" will be shown | `string` | `undefined` | | `searchConfiguration` | -- | ISearchConfiguration: Configuration details for the Search widget | `ISearchConfiguration` | `undefined` | | `selectionLayerIds` | -- | string[]: List of layer ids that should be shown as potential selection layers when skectching with "Use layer features" option | `string[]` | `[]` | diff --git a/src/components/refine-selection/readme.md b/src/components/refine-selection/readme.md index 6eb3e68f1..f02e22ead 100644 --- a/src/components/refine-selection/readme.md +++ b/src/components/refine-selection/readme.md @@ -11,7 +11,7 @@ | --------------------- | --------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------- | ----------- | | `addresseeLayer` | -- | esri/views/layers/FeatureLayerView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-layers-FeatureLayerView.html | `FeatureLayerView` | `undefined` | | `enabledLayerIds` | -- | string[]: Optional list of enabled layer ids If empty all layers will be available | `string[]` | `[]` | -| `mapView` | -- | esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html | `MapView` | `undefined` | +| `mapView` | -- | esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html | `MapView` | `undefined` | | `selectionSets` | -- | utils/interfaces/ISelectionSet: An array of user defined selection sets | `ISelectionSet[]` | `[]` | | `sketchLineSymbol` | -- | esri/symbols/SimpleLineSymbol \| JSON representation : https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-SimpleLineSymbol.html | `SimpleLineSymbol` | `undefined` | | `sketchPointSymbol` | -- | esri/symbols/SimpleMarkerSymbol \| JSON representation: https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-SimpleMarkerSymbol.html | `SimpleMarkerSymbol` | `undefined` | diff --git a/src/components/refine-selection/refine-selection.tsx b/src/components/refine-selection/refine-selection.tsx index 12e25a007..19c65a56d 100644 --- a/src/components/refine-selection/refine-selection.tsx +++ b/src/components/refine-selection/refine-selection.tsx @@ -54,7 +54,7 @@ export class RefineSelection { @Prop() enabledLayerIds: string[] = []; /** - * esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html + * esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html */ @Prop() mapView: __esri.MapView; diff --git a/src/utils/interfaces.ts b/src/utils/interfaces.ts index 5ed74f133..398e99725 100644 --- a/src/utils/interfaces.ts +++ b/src/utils/interfaces.ts @@ -430,10 +430,6 @@ export interface IQueryExtentResponse { extent: __esri.Extent; } -export interface IInfoCardValues { - [key: string]: string; -} - export interface IMediaCardValues { name: string; description: string; From 5145756289e4e833c7cc31deeb8d209b3286ae22 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Mon, 12 Jun 2023 16:01:54 -0600 Subject: [PATCH 025/406] show loading icon in cards when fetching data --- src/assets/t9n/comment-card/resources.json | 3 +- src/assets/t9n/comment-card/resources_en.json | 3 +- src/assets/t9n/info-card/resources.json | 3 ++ src/assets/t9n/info-card/resources_en.json | 3 ++ src/assets/t9n/media-card/resources.json | 3 +- src/assets/t9n/media-card/resources_en.json | 3 +- src/components.d.ts | 24 ++++++++++ src/components/card-manager/card-manager.tsx | 14 +++++- src/components/card-manager/readme.md | 3 ++ src/components/comment-card/comment-card.css | 4 ++ src/components/comment-card/comment-card.tsx | 10 ++++- src/components/comment-card/readme.md | 9 ++-- src/components/crowdsource-manager/readme.md | 3 ++ src/components/info-card/info-card.css | 4 ++ src/components/info-card/info-card.tsx | 44 ++++++++++++++----- src/components/info-card/readme.md | 11 +++-- src/components/media-card/media-card.css | 4 ++ src/components/media-card/media-card.tsx | 10 ++++- src/components/media-card/readme.md | 9 ++-- src/utils/downloadUtils.ts | 2 +- src/utils/queryUtils.ts | 4 +- 21 files changed, 142 insertions(+), 31 deletions(-) create mode 100644 src/assets/t9n/info-card/resources.json create mode 100644 src/assets/t9n/info-card/resources_en.json diff --git a/src/assets/t9n/comment-card/resources.json b/src/assets/t9n/comment-card/resources.json index 1affa8583..b354698db 100644 --- a/src/assets/t9n/comment-card/resources.json +++ b/src/assets/t9n/comment-card/resources.json @@ -1,3 +1,4 @@ { - "addRecord": "Add Record" + "addRecord": "Add Record", + "fetchingData": "Fetching data" } diff --git a/src/assets/t9n/comment-card/resources_en.json b/src/assets/t9n/comment-card/resources_en.json index 1affa8583..b354698db 100644 --- a/src/assets/t9n/comment-card/resources_en.json +++ b/src/assets/t9n/comment-card/resources_en.json @@ -1,3 +1,4 @@ { - "addRecord": "Add Record" + "addRecord": "Add Record", + "fetchingData": "Fetching data" } diff --git a/src/assets/t9n/info-card/resources.json b/src/assets/t9n/info-card/resources.json new file mode 100644 index 000000000..949c1a1ce --- /dev/null +++ b/src/assets/t9n/info-card/resources.json @@ -0,0 +1,3 @@ +{ + "fetchingData": "Fetching data" +} diff --git a/src/assets/t9n/info-card/resources_en.json b/src/assets/t9n/info-card/resources_en.json new file mode 100644 index 000000000..949c1a1ce --- /dev/null +++ b/src/assets/t9n/info-card/resources_en.json @@ -0,0 +1,3 @@ +{ + "fetchingData": "Fetching data" +} diff --git a/src/assets/t9n/media-card/resources.json b/src/assets/t9n/media-card/resources.json index 21646b5de..2ba1f8072 100644 --- a/src/assets/t9n/media-card/resources.json +++ b/src/assets/t9n/media-card/resources.json @@ -1,4 +1,5 @@ { "next": "Next", - "previous": "Previous" + "previous": "Previous", + "fetchingData": "Fetching data" } diff --git a/src/assets/t9n/media-card/resources_en.json b/src/assets/t9n/media-card/resources_en.json index 21646b5de..2ba1f8072 100644 --- a/src/assets/t9n/media-card/resources_en.json +++ b/src/assets/t9n/media-card/resources_en.json @@ -1,4 +1,5 @@ { "next": "Next", - "previous": "Previous" + "previous": "Previous", + "fetchingData": "Fetching data" } diff --git a/src/components.d.ts b/src/components.d.ts index a1522ecd7..9fabf3749 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -69,6 +69,10 @@ export namespace Components { } interface CommentCard { "commentsCardValues": any; + /** + * boolean: when true a loading indicator will be shown + */ + "isLoading": boolean; } interface CrowdsourceManager { /** @@ -91,6 +95,10 @@ export namespace Components { * esri/Graphic: https://developers.arcgis.com/javascript/latest/api-reference/esri-Graphic.html */ "graphic": __esri.Graphic; + /** + * boolean: when true a loading indicator will be shown + */ + "isLoading": boolean; /** * esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html */ @@ -321,6 +329,10 @@ export namespace Components { "sketchPolygonSymbol": __esri.SimpleFillSymbol; } interface MediaCard { + /** + * boolean: when true a loading indicator will be shown + */ + "isLoading": boolean; /** * IMediaCardValues[]: Array of objects that contain the name, description, and image to display */ @@ -1006,6 +1018,10 @@ declare namespace LocalJSX { } interface CommentCard { "commentsCardValues"?: any; + /** + * boolean: when true a loading indicator will be shown + */ + "isLoading"?: boolean; /** * Event that will trigger the opening of the add record modal */ @@ -1036,6 +1052,10 @@ declare namespace LocalJSX { * esri/Graphic: https://developers.arcgis.com/javascript/latest/api-reference/esri-Graphic.html */ "graphic"?: __esri.Graphic; + /** + * boolean: when true a loading indicator will be shown + */ + "isLoading"?: boolean; /** * esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html */ @@ -1261,6 +1281,10 @@ declare namespace LocalJSX { "sketchPolygonSymbol"?: __esri.SimpleFillSymbol; } interface MediaCard { + /** + * boolean: when true a loading indicator will be shown + */ + "isLoading"?: boolean; /** * IMediaCardValues[]: Array of objects that contain the name, description, and image to display */ diff --git a/src/components/card-manager/card-manager.tsx b/src/components/card-manager/card-manager.tsx index 049213159..b246756be 100644 --- a/src/components/card-manager/card-manager.tsx +++ b/src/components/card-manager/card-manager.tsx @@ -71,6 +71,11 @@ export class CardManager { */ @State() _addRecordOpen = false; + /** + * When true a loading indicator will be shown in the current card + */ + @State() _cardLoading = false; + /** * Controls what card type to display */ @@ -118,8 +123,10 @@ export class CardManager { evt: CustomEvent ): Promise { const ids = evt.detail; - const featureSet = await queryFeaturesByID(ids, this.layerView.layer) - this._graphics = featureSet.features; + this._cardLoading = true; + const featureSet = ids.length > 0 ? await queryFeaturesByID(ids, this.layerView.layer, false) : undefined; + this._cardLoading = false; + this._graphics = featureSet?.features || []; } /** @@ -206,14 +213,17 @@ export class CardManager {
diff --git a/src/components/card-manager/readme.md b/src/components/card-manager/readme.md index 050d59ab2..691dd11e3 100644 --- a/src/components/card-manager/readme.md +++ b/src/components/card-manager/readme.md @@ -43,11 +43,14 @@ graph TD; card-manager --> add-record-modal calcite-segmented-control-item --> calcite-icon info-card --> calcite-shell + info-card --> calcite-loader + media-card --> calcite-loader media-card --> calcite-button media-card --> calcite-shell media-card --> calcite-label calcite-button --> calcite-loader calcite-button --> calcite-icon + comment-card --> calcite-loader comment-card --> calcite-shell comment-card --> calcite-button add-record-modal --> calcite-modal diff --git a/src/components/comment-card/comment-card.css b/src/components/comment-card/comment-card.css index 483a78138..9f9d3f3be 100644 --- a/src/components/comment-card/comment-card.css +++ b/src/components/comment-card/comment-card.css @@ -37,3 +37,7 @@ html[dir="rtl"] .button-placement { margin-left: 5px; margin-bottom: 5px; } + +.display-none { + display: none; +} diff --git a/src/components/comment-card/comment-card.tsx b/src/components/comment-card/comment-card.tsx index 1d66d796d..12e9f7e7f 100644 --- a/src/components/comment-card/comment-card.tsx +++ b/src/components/comment-card/comment-card.tsx @@ -40,6 +40,11 @@ export class CommentCard { // not sure what this will look like yet @Prop() commentsCardValues: any; + /** + * boolean: when true a loading indicator will be shown + */ + @Prop() isLoading = false; + //-------------------------------------------------------------------------- // // State (internal) @@ -100,9 +105,12 @@ export class CommentCard { * Renders the component. */ render() { + const loadingClass = this.isLoading ? "" : "display-none"; + const commentCardClass = this.isLoading ? "display-none" : ""; return ( - + + this._addRecord()} diff --git a/src/components/comment-card/readme.md b/src/components/comment-card/readme.md index 8ae4ae40a..f5b441dd2 100644 --- a/src/components/comment-card/readme.md +++ b/src/components/comment-card/readme.md @@ -7,9 +7,10 @@ ## Properties -| Property | Attribute | Description | Type | Default | -| -------------------- | ---------------------- | ----------- | ----- | ----------- | -| `commentsCardValues` | `comments-card-values` | | `any` | `undefined` | +| Property | Attribute | Description | Type | Default | +| -------------------- | ---------------------- | ---------------------------------------------------- | --------- | ----------- | +| `commentsCardValues` | `comments-card-values` | | `any` | `undefined` | +| `isLoading` | `is-loading` | boolean: when true a loading indicator will be shown | `boolean` | `false` | ## Events @@ -27,12 +28,14 @@ ### Depends on +- calcite-loader - calcite-shell - calcite-button ### Graph ```mermaid graph TD; + comment-card --> calcite-loader comment-card --> calcite-shell comment-card --> calcite-button calcite-button --> calcite-loader diff --git a/src/components/crowdsource-manager/readme.md b/src/components/crowdsource-manager/readme.md index a3214b1fd..980c934d0 100644 --- a/src/components/crowdsource-manager/readme.md +++ b/src/components/crowdsource-manager/readme.md @@ -76,11 +76,14 @@ graph TD; card-manager --> add-record-modal calcite-segmented-control-item --> calcite-icon info-card --> calcite-shell + info-card --> calcite-loader + media-card --> calcite-loader media-card --> calcite-button media-card --> calcite-shell media-card --> calcite-label calcite-button --> calcite-loader calcite-button --> calcite-icon + comment-card --> calcite-loader comment-card --> calcite-shell comment-card --> calcite-button add-record-modal --> calcite-modal diff --git a/src/components/info-card/info-card.css b/src/components/info-card/info-card.css index 23e46c8d1..30898618b 100644 --- a/src/components/info-card/info-card.css +++ b/src/components/info-card/info-card.css @@ -45,3 +45,7 @@ tr:nth-child(odd) { .font-color-3 { color: var(--calcite-ui-text-3); } + +.display-none { + display: none; +} diff --git a/src/components/info-card/info-card.tsx b/src/components/info-card/info-card.tsx index 0958e75cf..6b5b6aba4 100644 --- a/src/components/info-card/info-card.tsx +++ b/src/components/info-card/info-card.tsx @@ -14,7 +14,9 @@ * limitations under the License. */ -import { Component, Element, Host, h, Prop, Watch } from '@stencil/core'; +import { Component, Element, Host, h, Prop, State, Watch } from '@stencil/core'; +import InfoCard_T9n from "../../assets/t9n/info-card/resources.json"; +import { getLocaleComponentStrings } from "../../utils/locale"; import { loadModules } from "../../utils/loadModules"; @Component({ @@ -42,6 +44,11 @@ export class InfoCard { */ @Prop() graphic: __esri.Graphic; + /** + * boolean: when true a loading indicator will be shown + */ + @Prop() isLoading = false; + /** * esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html */ @@ -53,6 +60,12 @@ export class InfoCard { // //-------------------------------------------------------------------------- + /** + * Contains the translations for this component. + * All UI strings should be defined here. + */ + @State() _translations: typeof InfoCard_T9n; + //-------------------------------------------------------------------------- // // Properties (protected) @@ -82,7 +95,8 @@ export class InfoCard { */ @Watch("graphic") graphicWatchHandler(): void { - if (this._feature && this.graphic) { + this._initFeatureWidget(); + if (this._feature) { this._feature.graphic = this.graphic; } } @@ -119,24 +133,21 @@ export class InfoCard { * @returns Promise when complete */ async componentWillLoad(): Promise { - await this._initModules();; - } - - /** - * StencilJS: Init the feature widget after the comoponent loads - */ - async componentDidLoad(): Promise { - this._initFeatureWidget(); + await this._initModules(); + await this._getTranslations(); } /** * Renders the component. */ render() { + const loadingClass = this.isLoading ? "" : "display-none"; + const featureNodeClass = this.isLoading ? "display-none" : ""; return ( -
+ +
); @@ -178,4 +189,15 @@ export class InfoCard { }); } } + + /** + * Fetches the component's translations + * + * @returns Promise when complete + * @protected + */ + protected async _getTranslations(): Promise { + const messages = await getLocaleComponentStrings(this.el); + this._translations = messages[0] as typeof InfoCard_T9n; + } } diff --git a/src/components/info-card/readme.md b/src/components/info-card/readme.md index 1342739be..b37d20be3 100644 --- a/src/components/info-card/readme.md +++ b/src/components/info-card/readme.md @@ -7,10 +7,11 @@ ## Properties -| Property | Attribute | Description | Type | Default | -| --------- | --------- | --------------------------------------------------------------------------------------------------------- | --------- | ----------- | -| `graphic` | -- | esri/Graphic: https://developers.arcgis.com/javascript/latest/api-reference/esri-Graphic.html | `Graphic` | `undefined` | -| `mapView` | -- | esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html | `MapView` | `undefined` | +| Property | Attribute | Description | Type | Default | +| ----------- | ------------ | --------------------------------------------------------------------------------------------------------- | --------- | ----------- | +| `graphic` | -- | esri/Graphic: https://developers.arcgis.com/javascript/latest/api-reference/esri-Graphic.html | `Graphic` | `undefined` | +| `isLoading` | `is-loading` | boolean: when true a loading indicator will be shown | `boolean` | `false` | +| `mapView` | -- | esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html | `MapView` | `undefined` | ## Dependencies @@ -22,11 +23,13 @@ ### Depends on - calcite-shell +- calcite-loader ### Graph ```mermaid graph TD; info-card --> calcite-shell + info-card --> calcite-loader card-manager --> info-card style info-card fill:#f9f,stroke:#333,stroke-width:4px ``` diff --git a/src/components/media-card/media-card.css b/src/components/media-card/media-card.css index a460713cc..b593b2286 100644 --- a/src/components/media-card/media-card.css +++ b/src/components/media-card/media-card.css @@ -117,3 +117,7 @@ div.image-container img { html[dir="rtl"] .container:nth-child(3n) { padding-left: 0px; } + +.display-none { + display: none; +} diff --git a/src/components/media-card/media-card.tsx b/src/components/media-card/media-card.tsx index ecbda8f29..dcdff79af 100644 --- a/src/components/media-card/media-card.tsx +++ b/src/components/media-card/media-card.tsx @@ -43,6 +43,11 @@ export class MediaCard { */ @Prop() values: IMediaCardValues[] = []; + /** + * boolean: when true a loading indicator will be shown + */ + @Prop() isLoading = false; + //-------------------------------------------------------------------------- // // State (internal) @@ -135,9 +140,12 @@ export class MediaCard { * Renders the component. */ render() { + const loadingClass = this.isLoading ? "" : "display-none"; + const mediaCardClass = this.isLoading ? "display-none" : ""; return ( -
+ +
{this._getImageDisplay()}
diff --git a/src/components/media-card/readme.md b/src/components/media-card/readme.md index 965f4b1b6..4c3acb90e 100644 --- a/src/components/media-card/readme.md +++ b/src/components/media-card/readme.md @@ -7,9 +7,10 @@ ## Properties -| Property | Attribute | Description | Type | Default | -| -------- | --------- | --------------------------------------------------------------------------------------------- | -------------------- | ------- | -| `values` | -- | IMediaCardValues[]: Array of objects that contain the name, description, and image to display | `IMediaCardValues[]` | `[]` | +| Property | Attribute | Description | Type | Default | +| ----------- | ------------ | --------------------------------------------------------------------------------------------- | -------------------- | ------- | +| `isLoading` | `is-loading` | boolean: when true a loading indicator will be shown | `boolean` | `false` | +| `values` | -- | IMediaCardValues[]: Array of objects that contain the name, description, and image to display | `IMediaCardValues[]` | `[]` | ## Dependencies @@ -20,6 +21,7 @@ ### Depends on +- calcite-loader - calcite-button - calcite-shell - calcite-label @@ -27,6 +29,7 @@ ### Graph ```mermaid graph TD; + media-card --> calcite-loader media-card --> calcite-button media-card --> calcite-shell media-card --> calcite-label diff --git a/src/utils/downloadUtils.ts b/src/utils/downloadUtils.ts index 88fbb101d..823d2b723 100644 --- a/src/utils/downloadUtils.ts +++ b/src/utils/downloadUtils.ts @@ -421,7 +421,7 @@ async function _prepareLabels( const [intl] = await loadModules(["esri/intl"]); // Get the features to export - const featureSet = await queryFeaturesByID(ids, layer); + const featureSet = await queryFeaturesByID(ids, layer, true); // Get field data types. Do we have any domain-based fields? const attributeTypes: IAttributeTypes = {}; diff --git a/src/utils/queryUtils.ts b/src/utils/queryUtils.ts index d52de15f7..d99365cd1 100644 --- a/src/utils/queryUtils.ts +++ b/src/utils/queryUtils.ts @@ -82,10 +82,12 @@ export async function queryObjectIds( */ export async function queryFeaturesByID( ids: number[], - layer: __esri.FeatureLayer + layer: __esri.FeatureLayer, + returnGeometry: boolean ): Promise<__esri.FeatureSet> { const q = layer.createQuery(); q.objectIds = ids; + q.returnGeometry = returnGeometry; return layer.queryFeatures(q); } From e868f582a91049b85f55774cd8e6c1bfb275589b Mon Sep 17 00:00:00 2001 From: John Hauck Date: Tue, 13 Jun 2023 08:15:02 -0600 Subject: [PATCH 026/406] css updates --- src/components/card-manager/card-manager.css | 2 +- src/components/card-manager/card-manager.tsx | 2 +- src/components/comment-card/comment-card.css | 4 ++++ src/components/comment-card/comment-card.tsx | 2 +- src/components/crowdsource-manager/crowdsource-manager.css | 6 +++++- src/components/crowdsource-manager/crowdsource-manager.tsx | 2 +- src/components/media-card/media-card.tsx | 2 +- 7 files changed, 14 insertions(+), 6 deletions(-) diff --git a/src/components/card-manager/card-manager.css b/src/components/card-manager/card-manager.css index 5d3140ee3..1c74b8ca2 100644 --- a/src/components/card-manager/card-manager.css +++ b/src/components/card-manager/card-manager.css @@ -54,7 +54,7 @@ overflow: auto; } -.border { +.border-rounded { border: 1px solid var(--calcite-ui-border-2); border-radius: 5px; } diff --git a/src/components/card-manager/card-manager.tsx b/src/components/card-manager/card-manager.tsx index b246756be..2cdc1578c 100644 --- a/src/components/card-manager/card-manager.tsx +++ b/src/components/card-manager/card-manager.tsx @@ -179,7 +179,7 @@ export class CardManager { const graphic = this._graphics?.length > 0 ? this._graphics[0] : undefined; return ( -
+
- + this._addRecord()} diff --git a/src/components/crowdsource-manager/crowdsource-manager.css b/src/components/crowdsource-manager/crowdsource-manager.css index 7f77936fe..d4aa198c5 100644 --- a/src/components/crowdsource-manager/crowdsource-manager.css +++ b/src/components/crowdsource-manager/crowdsource-manager.css @@ -23,6 +23,10 @@ padding-top: 51px; } +.padding-1 { + padding: 1rem; +} + .header-title { display: flex; float: left; @@ -134,7 +138,7 @@ } .border { - border-width: 1px solid var(--calcite-ui-border-3); + border: 1px solid var(--calcite-ui-border-3); } .position-relative { diff --git a/src/components/crowdsource-manager/crowdsource-manager.tsx b/src/components/crowdsource-manager/crowdsource-manager.tsx index 478a3870f..84f8b1e47 100644 --- a/src/components/crowdsource-manager/crowdsource-manager.tsx +++ b/src/components/crowdsource-manager/crowdsource-manager.tsx @@ -251,7 +251,7 @@ export class CrowdsourceManager {
-
+
diff --git a/src/components/media-card/media-card.tsx b/src/components/media-card/media-card.tsx index dcdff79af..f5efd8720 100644 --- a/src/components/media-card/media-card.tsx +++ b/src/components/media-card/media-card.tsx @@ -234,7 +234,7 @@ export class MediaCard { const total = (this.values || []).length; const imgNum = this._index + 1; return ( - + {toggleButtons} From e3d3990b1e945a333c51c77a17d33dc49aa5549f Mon Sep 17 00:00:00 2001 From: John Hauck Date: Tue, 13 Jun 2023 09:32:27 -0600 Subject: [PATCH 027/406] remove 4.26 types workarounds --- package-lock.json | 14 +++++++------- package.json | 2 +- src/components/map-draw-tools/map-draw-tools.tsx | 2 +- .../public-notification/public-notification.tsx | 6 ++---- 4 files changed, 11 insertions(+), 13 deletions(-) diff --git a/package-lock.json b/package-lock.json index c648af7bb..27c1aca60 100644 --- a/package-lock.json +++ b/package-lock.json @@ -26,7 +26,7 @@ "@stencil/postcss": "^2.1.0", "@stencil/sass": "^2.0.0", "@stencil/store": "^2.0.1", - "@types/arcgis-js-api": "^4.26.0-next", + "@types/arcgis-js-api": "^4.27.0-next", "@types/jest": "^27.5.2", "@types/node": "^16.11.11", "@types/puppeteer": "^5.4.2", @@ -1837,9 +1837,9 @@ "dev": true }, "node_modules/@types/arcgis-js-api": { - "version": "4.26.0", - "resolved": "https://registry.npmjs.org/@types/arcgis-js-api/-/arcgis-js-api-4.26.0.tgz", - "integrity": "sha512-rQSgYUy2FqPTFu47h2ibXhh5RdoQ/dgIXNdUcLTwebJ8OeXFvuzF5+hHmzKr2aLfX8w34W08ZIhUwiE4m+vBLQ==", + "version": "4.27.0", + "resolved": "https://registry.npmjs.org/@types/arcgis-js-api/-/arcgis-js-api-4.27.0.tgz", + "integrity": "sha512-sjbbvVTOvzZRUR6rrA4KSbxlvAnclAen2Km+IHlUEYxu7zQKAiSW+zQL6MkQw8ujvYEZRHj8VBttcvjONzmNIg==", "dev": true }, "node_modules/@types/babel__core": { @@ -11840,9 +11840,9 @@ "dev": true }, "@types/arcgis-js-api": { - "version": "4.26.0", - "resolved": "https://registry.npmjs.org/@types/arcgis-js-api/-/arcgis-js-api-4.26.0.tgz", - "integrity": "sha512-rQSgYUy2FqPTFu47h2ibXhh5RdoQ/dgIXNdUcLTwebJ8OeXFvuzF5+hHmzKr2aLfX8w34W08ZIhUwiE4m+vBLQ==", + "version": "4.27.0", + "resolved": "https://registry.npmjs.org/@types/arcgis-js-api/-/arcgis-js-api-4.27.0.tgz", + "integrity": "sha512-sjbbvVTOvzZRUR6rrA4KSbxlvAnclAen2Km+IHlUEYxu7zQKAiSW+zQL6MkQw8ujvYEZRHj8VBttcvjONzmNIg==", "dev": true }, "@types/babel__core": { diff --git a/package.json b/package.json index b6e51b710..7f2202307 100644 --- a/package.json +++ b/package.json @@ -35,7 +35,7 @@ "@stencil/postcss": "^2.1.0", "@stencil/sass": "^2.0.0", "@stencil/store": "^2.0.1", - "@types/arcgis-js-api": "^4.26.0-next", + "@types/arcgis-js-api": "^4.27.0-next", "@types/jest": "^27.5.2", "@types/node": "^16.11.11", "@types/puppeteer": "^5.4.2", diff --git a/src/components/map-draw-tools/map-draw-tools.tsx b/src/components/map-draw-tools/map-draw-tools.tsx index ea070a068..78d3868fc 100644 --- a/src/components/map-draw-tools/map-draw-tools.tsx +++ b/src/components/map-draw-tools/map-draw-tools.tsx @@ -397,7 +397,7 @@ export class MapDrawTools { }, undoRedoMenu: false, settingsMenu: this.drawMode === EDrawMode.SKETCH - } as any // temp workaround since we need duplicateButton flag that is not in 4.26 types but will be in the 4.27 modules we get from IA + } }); this._sketchViewModel = new this.SketchViewModel({ diff --git a/src/components/public-notification/public-notification.tsx b/src/components/public-notification/public-notification.tsx index 8cddcaecf..ba7dcdd77 100644 --- a/src/components/public-notification/public-notification.tsx +++ b/src/components/public-notification/public-notification.tsx @@ -357,7 +357,7 @@ export class PublicNotification { this._checkPopups(); if (this.mapView?.popup) { - (this.mapView as any).popupEnabled = pageType !== EPageType.LIST ? false : this._popupsEnabled; + this.mapView.popupEnabled = pageType !== EPageType.LIST ? false : this._popupsEnabled; } if (pageType === EPageType.EXPORT) { @@ -1518,9 +1518,7 @@ export class PublicNotification { */ protected _checkPopups(): void { if (typeof this._popupsEnabled !== 'boolean') { - // this is a temp workaround to handle a mapView spec change - // I don't see where we can get early access to 4.27 types in our package.json - this._popupsEnabled = (this.mapView as any)?.popupEnabled; + this._popupsEnabled = this.mapView?.popupEnabled; } } From b779e4bc8270fde12c3706e2c37c238a0e01f3c4 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Tue, 13 Jun 2023 12:08:51 -0600 Subject: [PATCH 028/406] update card manager --- src/components/card-manager/card-manager.css | 10 ++--- src/components/card-manager/card-manager.tsx | 38 +++++++++---------- src/components/comment-card/comment-card.css | 4 -- src/components/comment-card/comment-card.tsx | 2 +- .../crowdsource-manager.css | 5 +-- .../crowdsource-manager.tsx | 4 +- src/components/media-card/media-card.css | 10 ----- src/components/media-card/media-card.tsx | 4 +- 8 files changed, 30 insertions(+), 47 deletions(-) diff --git a/src/components/card-manager/card-manager.css b/src/components/card-manager/card-manager.css index 1c74b8ca2..3a417ff03 100644 --- a/src/components/card-manager/card-manager.css +++ b/src/components/card-manager/card-manager.css @@ -15,11 +15,7 @@ */ :host { - display: block; -} - -.display-inline-table { - display: inline-table; + display: block !important; } .display-flex { @@ -58,3 +54,7 @@ border: 1px solid var(--calcite-ui-border-2); border-radius: 5px; } + +card-manager { + display: block; +} diff --git a/src/components/card-manager/card-manager.tsx b/src/components/card-manager/card-manager.tsx index 2cdc1578c..4b6d5919d 100644 --- a/src/components/card-manager/card-manager.tsx +++ b/src/components/card-manager/card-manager.tsx @@ -179,8 +179,8 @@ export class CardManager { const graphic = this._graphics?.length > 0 ? this._graphics[0] : undefined; return ( -
- +
+
-
-
- - - -
+
+ + +
diff --git a/src/components/comment-card/comment-card.css b/src/components/comment-card/comment-card.css index e6e894ed8..9f9d3f3be 100644 --- a/src/components/comment-card/comment-card.css +++ b/src/components/comment-card/comment-card.css @@ -41,7 +41,3 @@ html[dir="rtl"] .button-placement { .display-none { display: none; } - -.position-relative { - position: relative; -} diff --git a/src/components/comment-card/comment-card.tsx b/src/components/comment-card/comment-card.tsx index 4f6c4469a..12e9f7e7f 100644 --- a/src/components/comment-card/comment-card.tsx +++ b/src/components/comment-card/comment-card.tsx @@ -110,7 +110,7 @@ export class CommentCard { return ( - + this._addRecord()} diff --git a/src/components/crowdsource-manager/crowdsource-manager.css b/src/components/crowdsource-manager/crowdsource-manager.css index d4aa198c5..fb612ae99 100644 --- a/src/components/crowdsource-manager/crowdsource-manager.css +++ b/src/components/crowdsource-manager/crowdsource-manager.css @@ -149,7 +149,6 @@ height: 50%; } -.height-50-margin { - margin: 1rem 0rem 1rem 1rem; - height: calc(50% - 4rem); +.adjusted-height-50 { + height: calc(50% - 17px); } diff --git a/src/components/crowdsource-manager/crowdsource-manager.tsx b/src/components/crowdsource-manager/crowdsource-manager.tsx index 84f8b1e47..c5ddef358 100644 --- a/src/components/crowdsource-manager/crowdsource-manager.tsx +++ b/src/components/crowdsource-manager/crowdsource-manager.tsx @@ -248,11 +248,11 @@ export class CrowdsourceManager { const mapSizeClass = this._getMapSizeClass(layoutMode, panelOpen); return (
-
+
- +
); diff --git a/src/components/media-card/media-card.css b/src/components/media-card/media-card.css index b593b2286..ca2de1ac0 100644 --- a/src/components/media-card/media-card.css +++ b/src/components/media-card/media-card.css @@ -53,16 +53,6 @@ align-items: center; } -.img-container { - object-fit: scale-down; - width: 100%; - height: 100%; -} - -.position-relative { - position: relative; -} - .image-button-container { position: absolute; right: 1rem; diff --git a/src/components/media-card/media-card.tsx b/src/components/media-card/media-card.tsx index f5efd8720..5bfcc5395 100644 --- a/src/components/media-card/media-card.tsx +++ b/src/components/media-card/media-card.tsx @@ -234,9 +234,9 @@ export class MediaCard { const total = (this.values || []).length; const imgNum = this._index + 1; return ( - + {toggleButtons} - + From 32e504c989ff41821de59fa39ea38554374cd8e7 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Tue, 13 Jun 2023 13:52:08 -0600 Subject: [PATCH 029/406] don't use -next --- package-lock.json | 2 +- package.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/package-lock.json b/package-lock.json index 27c1aca60..1324cf356 100644 --- a/package-lock.json +++ b/package-lock.json @@ -26,7 +26,7 @@ "@stencil/postcss": "^2.1.0", "@stencil/sass": "^2.0.0", "@stencil/store": "^2.0.1", - "@types/arcgis-js-api": "^4.27.0-next", + "@types/arcgis-js-api": "^4.27.0", "@types/jest": "^27.5.2", "@types/node": "^16.11.11", "@types/puppeteer": "^5.4.2", diff --git a/package.json b/package.json index 7f2202307..fa2c9cbe5 100644 --- a/package.json +++ b/package.json @@ -35,7 +35,7 @@ "@stencil/postcss": "^2.1.0", "@stencil/sass": "^2.0.0", "@stencil/store": "^2.0.1", - "@types/arcgis-js-api": "^4.27.0-next", + "@types/arcgis-js-api": "^4.27.0", "@types/jest": "^27.5.2", "@types/node": "^16.11.11", "@types/puppeteer": "^5.4.2", From 9b974939c8710f551700087f64879bc14ae6c4db Mon Sep 17 00:00:00 2001 From: John Hauck Date: Tue, 13 Jun 2023 14:20:25 -0600 Subject: [PATCH 030/406] update version --- CHANGELOG.md | 5 ++++- package-lock.json | 4 ++-- package.json | 2 +- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 9ab206861..857dfa6c3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,8 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm ## [Unreleased] +## [0.6.0] - June 13th 2023 + ## [0.5.20] - June 7th 2023 ## [0.5.19] - June 6th 2023 @@ -178,4 +180,5 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm [0.5.18]: https://github.com/Esri/solution.js/compare/v0.5.17...v0.5.18 "v0.5.18" [0.5.19]: https://github.com/Esri/solution.js/compare/v0.5.18...v0.5.19 "v0.5.19" [0.5.20]: https://github.com/Esri/solution.js/compare/v0.5.19...v0.5.20 "v0.5.20" -[Unreleased]: https://github.com/Esri/solution.js/compare/v0.5.20...HEAD "Unreleased Changes" +[0.6.0]: https://github.com/Esri/solution.js/compare/v0.5.20...v0.6.0 "v0.6.0" +[Unreleased]: https://github.com/Esri/solution.js/compare/v0.6.0...HEAD "Unreleased Changes" diff --git a/package-lock.json b/package-lock.json index c648af7bb..9ed1eeaa9 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@esri/solutions-components", - "version": "0.5.20", + "version": "0.6.0", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@esri/solutions-components", - "version": "0.5.20", + "version": "0.6.0", "license": "Apache-2.0", "dependencies": { "@esri/hub-common": "^12.37.1", diff --git a/package.json b/package.json index b6e51b710..e65006bcb 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@esri/solutions-components", - "version": "0.5.20", + "version": "0.6.0", "description": "Web Components for Esri's Solutions Applications", "main": "dist/index.cjs.js", "module": "dist/index.js", From 13a41da5145fe930e0f09f2c7b7e19e80cf0ed44 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Tue, 13 Jun 2023 15:48:26 -0600 Subject: [PATCH 031/406] update demos to js api 4.27.0 --- src/demos/buffer-tools.html | 4 ++-- src/demos/comment-card.html | 4 ++-- src/demos/crowdsource-manager.html | 4 ++-- src/demos/crowdsource-reporter.html | 4 ++-- src/demos/demo-map.html | 4 ++-- src/demos/layer-table.html | 4 ++-- src/demos/list-item.html | 4 ++-- src/demos/map-card.html | 4 ++-- src/demos/map-draw-tools.html | 4 ++-- src/demos/map-layer-picker.html | 4 ++-- src/demos/map-search.html | 4 ++-- src/demos/map-select-tools.html | 4 ++-- 12 files changed, 24 insertions(+), 24 deletions(-) diff --git a/src/demos/buffer-tools.html b/src/demos/buffer-tools.html index e39d297f4..2c97e870f 100644 --- a/src/demos/buffer-tools.html +++ b/src/demos/buffer-tools.html @@ -46,12 +46,12 @@ - + + diff --git a/src/demos/crowdsource-manager.html b/src/demos/crowdsource-manager.html index b5e78d761..186123422 100644 --- a/src/demos/crowdsource-manager.html +++ b/src/demos/crowdsource-manager.html @@ -30,12 +30,12 @@ - + + + diff --git a/src/demos/layer-table.html b/src/demos/layer-table.html index 8460696cf..c01343b0b 100644 --- a/src/demos/layer-table.html +++ b/src/demos/layer-table.html @@ -45,12 +45,12 @@ - + + + + + + + diff --git a/src/utils/queryUtils.ts b/src/utils/queryUtils.ts index d4fbbdb25..7e0e695df 100644 --- a/src/utils/queryUtils.ts +++ b/src/utils/queryUtils.ts @@ -63,6 +63,31 @@ export async function queryAllIds( return await layer.queryObjectIds(query); } +/** + * Query the feature for any image attachments + * + * @param layer the layer to retrieve attachments from + * + * @returns Promise with any attachments from the feature + */ +export async function queryAttachments( + layer: __esri.FeatureLayer, + objectIds: number[] +): Promise { + return await layer.queryAttachments({ + attachmentTypes: [ + "image/jpeg", + "image/png", + "image/gif", + "image/jpg", + "image/tif", + "image/tiff", + "image/bmp" + ], + objectIds + }); +} + /** * Query the layer for OIDs based on any user drawn geometries or buffers * From b1f1ed272a752b85839a3a86d2511c1d9fc31115 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Mon, 3 Jul 2023 14:01:35 -0600 Subject: [PATCH 061/406] misc updates --- src/assets/t9n/card-manager/resources.json | 3 +- src/assets/t9n/card-manager/resources_en.json | 3 +- src/assets/t9n/layer-table/resources.json | 3 +- src/assets/t9n/layer-table/resources_en.json | 3 +- src/components/card-manager/card-manager.tsx | 30 +++++++++++++------ src/components/card-manager/readme.md | 2 ++ src/components/crowdsource-manager/readme.md | 1 + src/components/info-card/info-card.tsx | 6 +++- src/components/layer-table/layer-table.tsx | 21 ++++++++----- src/components/media-card/media-card.css | 5 ++++ src/components/media-card/media-card.tsx | 2 +- 11 files changed, 57 insertions(+), 22 deletions(-) diff --git a/src/assets/t9n/card-manager/resources.json b/src/assets/t9n/card-manager/resources.json index 3cdafa5bf..f097ed5d9 100644 --- a/src/assets/t9n/card-manager/resources.json +++ b/src/assets/t9n/card-manager/resources.json @@ -1,5 +1,6 @@ { "information": "Information", "media": "Media", - "comments": "Comments" + "comments": "Comments", + "selectFeaturesToStart": "Select a record to get started" } diff --git a/src/assets/t9n/card-manager/resources_en.json b/src/assets/t9n/card-manager/resources_en.json index 3cdafa5bf..f097ed5d9 100644 --- a/src/assets/t9n/card-manager/resources_en.json +++ b/src/assets/t9n/card-manager/resources_en.json @@ -1,5 +1,6 @@ { "information": "Information", "media": "Media", - "comments": "Comments" + "comments": "Comments", + "selectFeaturesToStart": "Select a record to get started" } diff --git a/src/assets/t9n/layer-table/resources.json b/src/assets/t9n/layer-table/resources.json index a7d36621f..5373bd98f 100644 --- a/src/assets/t9n/layer-table/resources.json +++ b/src/assets/t9n/layer-table/resources.json @@ -15,5 +15,6 @@ "confirm": "Are you sure?", "deleteRows": "Delete Data", "deleteDisabled": "Delete Disabled", - "editMultipleDisabled": "Edit Multiple Disabled" + "editMultipleDisabled": "Edit Multiple Disabled", + "showAll": "Show all" } diff --git a/src/assets/t9n/layer-table/resources_en.json b/src/assets/t9n/layer-table/resources_en.json index a7d36621f..5373bd98f 100644 --- a/src/assets/t9n/layer-table/resources_en.json +++ b/src/assets/t9n/layer-table/resources_en.json @@ -15,5 +15,6 @@ "confirm": "Are you sure?", "deleteRows": "Delete Data", "deleteDisabled": "Delete Disabled", - "editMultipleDisabled": "Edit Multiple Disabled" + "editMultipleDisabled": "Edit Multiple Disabled", + "showAll": "Show all" } diff --git a/src/components/card-manager/card-manager.tsx b/src/components/card-manager/card-manager.tsx index c88992eb5..7ef73185e 100644 --- a/src/components/card-manager/card-manager.tsx +++ b/src/components/card-manager/card-manager.tsx @@ -229,11 +229,14 @@ export class CardManager { const infoCardClass = infoChecked ? "" : "display-none"; const mediaCardClass = mediaChecked ? "" : "display-none"; const commentsCardClass = commentsChecked ? "" : "display-none"; + const featuresClass = this._graphics?.length > 0 ? "" : "display-none"; + const messageClass = this._graphics?.length > 0 ? "display-none" : ""; + const mediaClass = this._attachmentsSupported ? "" : "display-none"; return (
- +
{this._translations.information} - - {this._translations.media} - + { + this._attachmentsSupported ? ( + + {this._translations.media} + + ) : (undefined) + } { this._infoCard = el }} /> @@ -280,8 +287,13 @@ export class CardManager { />
+
+ +
{this._translations.selectFeaturesToStart}
+
+
- this._addRecordClosed()} open={this._addRecordOpen}/> + this._addRecordClosed()} open={this._addRecordOpen} />
); } diff --git a/src/components/card-manager/readme.md b/src/components/card-manager/readme.md index 16f62ada5..267c8be2f 100644 --- a/src/components/card-manager/readme.md +++ b/src/components/card-manager/readme.md @@ -28,6 +28,7 @@ - [info-card](../info-card) - [media-card](../media-card) - [comment-card](../comment-card) +- calcite-notice - [add-record-modal](../add-record-modal) ### Graph @@ -39,6 +40,7 @@ graph TD; card-manager --> info-card card-manager --> media-card card-manager --> comment-card + card-manager --> calcite-notice card-manager --> add-record-modal calcite-segmented-control-item --> calcite-icon info-card --> calcite-shell diff --git a/src/components/crowdsource-manager/readme.md b/src/components/crowdsource-manager/readme.md index afeb53569..5135ecf01 100644 --- a/src/components/crowdsource-manager/readme.md +++ b/src/components/crowdsource-manager/readme.md @@ -76,6 +76,7 @@ graph TD; card-manager --> info-card card-manager --> media-card card-manager --> comment-card + card-manager --> calcite-notice card-manager --> add-record-modal calcite-segmented-control-item --> calcite-icon info-card --> calcite-shell diff --git a/src/components/info-card/info-card.tsx b/src/components/info-card/info-card.tsx index dd67a6d80..ddb54d39a 100644 --- a/src/components/info-card/info-card.tsx +++ b/src/components/info-card/info-card.tsx @@ -258,9 +258,13 @@ export class InfoCard { actionBar: false, closeButton: false, heading: false + }, + viewModel: { + featureViewModelAbilities: { + attachmentsContent: false + } } }); - this._features.close(); } } diff --git a/src/components/layer-table/layer-table.tsx b/src/components/layer-table/layer-table.tsx index b56229a6c..53a6758f1 100644 --- a/src/components/layer-table/layer-table.tsx +++ b/src/components/layer-table/layer-table.tsx @@ -78,6 +78,11 @@ export class LayerTable { */ @State() _selectedIndexes: number[] = []; + /** + * boolean: When true only selected records will be shown in the table + */ + @State() _showOnlySelected = false; + /** * Contains the translations for this component. * All UI strings should be defined here. @@ -150,11 +155,6 @@ export class LayerTable { */ protected _selectAllElement: HTMLCalciteCheckboxElement; - /** - * boolean: When true only selected records will be shown in the table - */ - protected _showOnlySelected = false; - /** * esri/widgets/FeatureTable: https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-FeatureTable.html */ @@ -195,7 +195,9 @@ export class LayerTable { */ @Watch("_layerView") async _layerViewWatchHandler(): Promise { - this._editEnabled = this._layerView?.layer.editingEnabled; + this._fetchingData = true; + this._resetTable(); + this._fetchingData = false; } //-------------------------------------------------------------------------- @@ -413,7 +415,10 @@ export class LayerTable { iconStart="selected-items-filter" onClick={() => this._showSelected()} > - {this._translations.showSelected} + { + this._showOnlySelected ? this._translations.showAll : + this._translations.showSelected + } {toggleButtons} - + From 28ac50e6eb3d61ea048ed03c86dbbb8e14d3c2f2 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Mon, 3 Jul 2023 14:43:47 -0600 Subject: [PATCH 062/406] add tooltips --- src/components/card-manager/card-manager.tsx | 24 ++++++++++++++++++-- src/components/card-manager/readme.md | 5 ++++ src/components/comment-card/comment-card.tsx | 4 ++++ src/components/comment-card/readme.md | 2 ++ src/components/crowdsource-manager/readme.md | 5 ++++ src/components/info-card/info-card.tsx | 4 ++++ src/components/info-card/readme.md | 2 ++ src/components/layer-table/layer-table.tsx | 23 ++++++++++++++++++- src/components/layer-table/readme.md | 2 ++ src/components/media-card/media-card.tsx | 8 +++++++ src/components/media-card/readme.md | 2 ++ 11 files changed, 78 insertions(+), 3 deletions(-) diff --git a/src/components/card-manager/card-manager.tsx b/src/components/card-manager/card-manager.tsx index 7ef73185e..b25e83645 100644 --- a/src/components/card-manager/card-manager.tsx +++ b/src/components/card-manager/card-manager.tsx @@ -246,26 +246,46 @@ export class CardManager { > {this._translations.information} - { + + {this._translations.information} + + {/* { this._attachmentsSupported ? ( {this._translations.media} ) : (undefined) - } + } */} + + {this._translations.media} + + + {this._translations.media} + {this._translations.comments} + + {this._translations.comments} +
diff --git a/src/components/card-manager/readme.md b/src/components/card-manager/readme.md index 267c8be2f..833ec3c19 100644 --- a/src/components/card-manager/readme.md +++ b/src/components/card-manager/readme.md @@ -25,6 +25,7 @@ - calcite-shell - calcite-segmented-control - calcite-segmented-control-item +- calcite-tooltip - [info-card](../info-card) - [media-card](../media-card) - [comment-card](../comment-card) @@ -37,6 +38,7 @@ graph TD; card-manager --> calcite-shell card-manager --> calcite-segmented-control card-manager --> calcite-segmented-control-item + card-manager --> calcite-tooltip card-manager --> info-card card-manager --> media-card card-manager --> comment-card @@ -46,6 +48,7 @@ graph TD; info-card --> calcite-shell info-card --> calcite-loader info-card --> calcite-button + info-card --> calcite-tooltip info-card --> edit-record-modal info-card --> calcite-alert calcite-button --> calcite-loader @@ -86,9 +89,11 @@ graph TD; media-card --> calcite-button media-card --> calcite-shell media-card --> calcite-label + media-card --> calcite-tooltip comment-card --> calcite-loader comment-card --> calcite-shell comment-card --> calcite-button + comment-card --> calcite-tooltip add-record-modal --> calcite-modal add-record-modal --> calcite-label add-record-modal --> calcite-input diff --git a/src/components/comment-card/comment-card.tsx b/src/components/comment-card/comment-card.tsx index 7422da92d..8af42fb4a 100644 --- a/src/components/comment-card/comment-card.tsx +++ b/src/components/comment-card/comment-card.tsx @@ -110,11 +110,15 @@ export class CommentCard { this._addRecord()} slot="footer" > {this._translations.addRecord} + + {this._translations.addRecord} + ); diff --git a/src/components/comment-card/readme.md b/src/components/comment-card/readme.md index 1bfa907fd..8f5b5655a 100644 --- a/src/components/comment-card/readme.md +++ b/src/components/comment-card/readme.md @@ -30,6 +30,7 @@ - calcite-loader - calcite-shell - calcite-button +- calcite-tooltip ### Graph ```mermaid @@ -37,6 +38,7 @@ graph TD; comment-card --> calcite-loader comment-card --> calcite-shell comment-card --> calcite-button + comment-card --> calcite-tooltip calcite-button --> calcite-loader calcite-button --> calcite-icon card-manager --> comment-card diff --git a/src/components/crowdsource-manager/readme.md b/src/components/crowdsource-manager/readme.md index 5135ecf01..d6008a53b 100644 --- a/src/components/crowdsource-manager/readme.md +++ b/src/components/crowdsource-manager/readme.md @@ -73,6 +73,7 @@ graph TD; card-manager --> calcite-shell card-manager --> calcite-segmented-control card-manager --> calcite-segmented-control-item + card-manager --> calcite-tooltip card-manager --> info-card card-manager --> media-card card-manager --> comment-card @@ -82,6 +83,7 @@ graph TD; info-card --> calcite-shell info-card --> calcite-loader info-card --> calcite-button + info-card --> calcite-tooltip info-card --> edit-record-modal info-card --> calcite-alert calcite-button --> calcite-loader @@ -119,9 +121,11 @@ graph TD; media-card --> calcite-button media-card --> calcite-shell media-card --> calcite-label + media-card --> calcite-tooltip comment-card --> calcite-loader comment-card --> calcite-shell comment-card --> calcite-button + comment-card --> calcite-tooltip add-record-modal --> calcite-modal add-record-modal --> calcite-label add-record-modal --> calcite-input @@ -135,6 +139,7 @@ graph TD; layer-table --> map-layer-picker layer-table --> calcite-action-bar layer-table --> calcite-action + layer-table --> calcite-tooltip layer-table --> calcite-dropdown layer-table --> calcite-button layer-table --> calcite-dropdown-group diff --git a/src/components/info-card/info-card.tsx b/src/components/info-card/info-card.tsx index ddb54d39a..383085086 100644 --- a/src/components/info-card/info-card.tsx +++ b/src/components/info-card/info-card.tsx @@ -188,11 +188,15 @@ export class InfoCard { this._openEditRecord()} width="full" > {this._translations.edit} + + {this._translations.edit} +
calcite-shell info-card --> calcite-loader info-card --> calcite-button + info-card --> calcite-tooltip info-card --> edit-record-modal info-card --> calcite-alert calcite-button --> calcite-loader diff --git a/src/components/layer-table/layer-table.tsx b/src/components/layer-table/layer-table.tsx index 53a6758f1..49f9882e4 100644 --- a/src/components/layer-table/layer-table.tsx +++ b/src/components/layer-table/layer-table.tsx @@ -357,37 +357,53 @@ export class LayerTable { appearance="solid" disabled={!featuresSelected} icon="magnifying-glass" + id="magnifying-glass" label={this._translations.zoom} onClick={() => this._zoom()} text={this._translations.zoom} textEnabled={true} /> + + {this._translations.zoom} + this._editMultiple()} text={this._translations.editMultiple} textEnabled={true} /> + + {this._translations.editMultiple} + this._filter()} text={this._translations.filters} text-enabled="true" textEnabled={true} /> + + {this._translations.filters} + this._delete()} text={this._translations.delete} text-enabled textEnabled={true} /> + + {this._translations.delete} + map-layer-picker layer-table --> calcite-action-bar layer-table --> calcite-action + layer-table --> calcite-tooltip layer-table --> calcite-dropdown layer-table --> calcite-button layer-table --> calcite-dropdown-group diff --git a/src/components/media-card/media-card.tsx b/src/components/media-card/media-card.tsx index 579724098..c066a5dc5 100644 --- a/src/components/media-card/media-card.tsx +++ b/src/components/media-card/media-card.tsx @@ -268,15 +268,23 @@ export class MediaCard { class="padding-start-1 button-width" color="neutral" disabled={imgNum === 1 || (this.values || []).length === 0} + id="solutions-previous" onClick={() => this._decrementIndex()} >{this._translations.previous}
+ + {this._translations.previous} + this._incrementIndex()} >{this._translations.next} + + {this._translations.next} +
diff --git a/src/components/media-card/readme.md b/src/components/media-card/readme.md index 4c3acb90e..2ad93d243 100644 --- a/src/components/media-card/readme.md +++ b/src/components/media-card/readme.md @@ -25,6 +25,7 @@ - calcite-button - calcite-shell - calcite-label +- calcite-tooltip ### Graph ```mermaid @@ -33,6 +34,7 @@ graph TD; media-card --> calcite-button media-card --> calcite-shell media-card --> calcite-label + media-card --> calcite-tooltip calcite-button --> calcite-loader calcite-button --> calcite-icon card-manager --> media-card From 973365e2cefc273565410bee89eec0ebc88a72b8 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Mon, 3 Jul 2023 15:19:10 -0600 Subject: [PATCH 063/406] fix edit enabled issue --- src/components/card-manager/card-manager.tsx | 11 ----------- .../edit-record-modal/edit-record-modal.css | 4 ++++ .../edit-record-modal/edit-record-modal.tsx | 4 +++- src/components/layer-table/layer-table.tsx | 1 + 4 files changed, 8 insertions(+), 12 deletions(-) diff --git a/src/components/card-manager/card-manager.tsx b/src/components/card-manager/card-manager.tsx index b25e83645..36e4ee55d 100644 --- a/src/components/card-manager/card-manager.tsx +++ b/src/components/card-manager/card-manager.tsx @@ -254,17 +254,6 @@ export class CardManager { {this._translations.information} - {/* { - this._attachmentsSupported ? ( - - {this._translations.media} - - ) : (undefined) - } */} 0 && this.graphics[0] ? !(this.graphics[0].layer as __esri.FeatureLayer).editingEnabled : true; + const contentClass = this.editMode === EEditMode.MULTI ? "padding-sides-bottom-1" : ""; + return (
@@ -254,7 +256,7 @@ export class EditRecordModal { ) : undefined } -
+
{ this.editMode === EEditMode.MULTI ? this._getFieldInputs(editDisabled) : (
) diff --git a/src/components/layer-table/layer-table.tsx b/src/components/layer-table/layer-table.tsx index 49f9882e4..c9bf1f740 100644 --- a/src/components/layer-table/layer-table.tsx +++ b/src/components/layer-table/layer-table.tsx @@ -519,6 +519,7 @@ export class LayerTable { protected _resetTable(): void { if (this._layerView?.layer && this._table) { this._table.layer = this._layerView.layer; + this._editEnabled = this._layerView.layer.editingEnabled; this._table.view = this.mapView; this._table.editingEnabled = this._editEnabled; this._table.clearSelectionFilter(); From 60f2bb3a2afae584e44d504ddabb99da3c89cd33 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Wed, 5 Jul 2023 12:33:38 -0600 Subject: [PATCH 064/406] add map-tools --- src/assets/t9n/map-card/resources.json | 8 +- src/assets/t9n/map-card/resources_en.json | 8 +- src/assets/t9n/map-tools/resources.json | 9 + src/assets/t9n/map-tools/resources_en.json | 9 + src/components.d.ts | 35 ++- src/components/crowdsource-manager/readme.md | 25 +- src/components/layer-table/layer-table.tsx | 42 ++-- src/components/layer-table/readme.md | 11 +- src/components/map-card/map-card.css | 7 + src/components/map-card/map-card.tsx | 153 +++--------- src/components/map-card/readme.md | 40 ++- .../map-layer-picker/map-layer-picker.tsx | 29 +-- src/components/map-layer-picker/readme.md | 4 + src/components/map-select-tools/readme.md | 1 + src/components/map-tools/map-tools.css | 31 +++ src/components/map-tools/map-tools.tsx | 236 ++++++++++++++++++ src/components/map-tools/readme.md | 60 +++++ .../map-tools/test/map-tools.e2e.ts | 27 ++ .../map-tools/test/map-tools.spec.tsx | 34 +++ src/components/public-notification/readme.md | 1 + src/components/refine-selection/readme.md | 5 +- 21 files changed, 556 insertions(+), 219 deletions(-) create mode 100644 src/assets/t9n/map-tools/resources.json create mode 100644 src/assets/t9n/map-tools/resources_en.json create mode 100644 src/components/map-tools/map-tools.css create mode 100644 src/components/map-tools/map-tools.tsx create mode 100644 src/components/map-tools/readme.md create mode 100644 src/components/map-tools/test/map-tools.e2e.ts create mode 100644 src/components/map-tools/test/map-tools.spec.tsx diff --git a/src/assets/t9n/map-card/resources.json b/src/assets/t9n/map-card/resources.json index 31a1df008..0304fa9de 100644 --- a/src/assets/t9n/map-card/resources.json +++ b/src/assets/t9n/map-card/resources.json @@ -1,9 +1,3 @@ { - "mapName": "Map Name", - "home": "Home", - "list": "List", - "search": "Search", - "zoomIn": "Zoom In", - "zoomOut": "Zoom Out", - "expand": "Expand" + "mapName": "Map Name" } diff --git a/src/assets/t9n/map-card/resources_en.json b/src/assets/t9n/map-card/resources_en.json index 31a1df008..0304fa9de 100644 --- a/src/assets/t9n/map-card/resources_en.json +++ b/src/assets/t9n/map-card/resources_en.json @@ -1,9 +1,3 @@ { - "mapName": "Map Name", - "home": "Home", - "list": "List", - "search": "Search", - "zoomIn": "Zoom In", - "zoomOut": "Zoom Out", - "expand": "Expand" + "mapName": "Map Name" } diff --git a/src/assets/t9n/map-tools/resources.json b/src/assets/t9n/map-tools/resources.json new file mode 100644 index 000000000..9a05d95cd --- /dev/null +++ b/src/assets/t9n/map-tools/resources.json @@ -0,0 +1,9 @@ +{ + "home": "Home", + "list": "List", + "search": "Search", + "zoomIn": "Zoom In", + "zoomOut": "Zoom Out", + "expand": "Expand", + "basemap": "Basemap" +} diff --git a/src/assets/t9n/map-tools/resources_en.json b/src/assets/t9n/map-tools/resources_en.json new file mode 100644 index 000000000..9a05d95cd --- /dev/null +++ b/src/assets/t9n/map-tools/resources_en.json @@ -0,0 +1,9 @@ +{ + "home": "Home", + "list": "List", + "search": "Search", + "zoomIn": "Zoom In", + "zoomOut": "Zoom Out", + "expand": "Expand", + "basemap": "Basemap" +} diff --git a/src/components.d.ts b/src/components.d.ts index c384363cf..6b84ca852 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -362,6 +362,13 @@ export namespace Components { */ "sketchPolygonSymbol": __esri.SimpleFillSymbol; } + interface MapTools { + "layout": "horizontal" | "vertical"; + /** + * esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html + */ + "mapView": __esri.MapView; + } interface MediaCard { /** * boolean: when true a loading indicator will be shown @@ -704,6 +711,10 @@ export interface MapSelectToolsCustomEvent extends CustomEvent { detail: T; target: HTMLMapSelectToolsElement; } +export interface MapToolsCustomEvent extends CustomEvent { + detail: T; + target: HTMLMapToolsElement; +} export interface PublicNotificationCustomEvent extends CustomEvent { detail: T; target: HTMLPublicNotificationElement; @@ -835,6 +846,12 @@ declare global { prototype: HTMLMapSelectToolsElement; new (): HTMLMapSelectToolsElement; }; + interface HTMLMapToolsElement extends Components.MapTools, HTMLStencilElement { + } + var HTMLMapToolsElement: { + prototype: HTMLMapToolsElement; + new (): HTMLMapToolsElement; + }; interface HTMLMediaCardElement extends Components.MediaCard, HTMLStencilElement { } var HTMLMediaCardElement: { @@ -955,6 +972,7 @@ declare global { "map-layer-picker": HTMLMapLayerPickerElement; "map-search": HTMLMapSearchElement; "map-select-tools": HTMLMapSelectToolsElement; + "map-tools": HTMLMapToolsElement; "media-card": HTMLMediaCardElement; "pci-calculator": HTMLPciCalculatorElement; "pdf-download": HTMLPdfDownloadElement; @@ -1157,10 +1175,6 @@ declare namespace LocalJSX { * esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html */ "mapView"?: __esri.MapView; - /** - * Emitted when the expand button is clicked - */ - "onExpandMap"?: (event: MapCardCustomEvent) => void; /** * Emitted when a new map is loaded */ @@ -1350,6 +1364,17 @@ declare namespace LocalJSX { */ "sketchPolygonSymbol"?: __esri.SimpleFillSymbol; } + interface MapTools { + "layout"?: "horizontal" | "vertical"; + /** + * esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html + */ + "mapView"?: __esri.MapView; + /** + * Emitted when the expand button is clicked + */ + "onExpandMap"?: (event: MapToolsCustomEvent) => void; + } interface MediaCard { /** * boolean: when true a loading indicator will be shown @@ -1645,6 +1670,7 @@ declare namespace LocalJSX { "map-layer-picker": MapLayerPicker; "map-search": MapSearch; "map-select-tools": MapSelectTools; + "map-tools": MapTools; "media-card": MediaCard; "pci-calculator": PciCalculator; "pdf-download": PdfDownload; @@ -1685,6 +1711,7 @@ declare module "@stencil/core" { "map-layer-picker": LocalJSX.MapLayerPicker & JSXBase.HTMLAttributes; "map-search": LocalJSX.MapSearch & JSXBase.HTMLAttributes; "map-select-tools": LocalJSX.MapSelectTools & JSXBase.HTMLAttributes; + "map-tools": LocalJSX.MapTools & JSXBase.HTMLAttributes; "media-card": LocalJSX.MediaCard & JSXBase.HTMLAttributes; "pci-calculator": LocalJSX.PciCalculator & JSXBase.HTMLAttributes; "pdf-download": LocalJSX.PdfDownload & JSXBase.HTMLAttributes; diff --git a/src/components/crowdsource-manager/readme.md b/src/components/crowdsource-manager/readme.md index d6008a53b..3c95d561b 100644 --- a/src/components/crowdsource-manager/readme.md +++ b/src/components/crowdsource-manager/readme.md @@ -46,23 +46,21 @@ graph TD; calcite-popover --> calcite-action calcite-popover --> calcite-icon calcite-scrim --> calcite-loader + map-card --> map-tools map-card --> calcite-action-bar - map-card --> calcite-action-group - map-card --> calcite-action - map-card --> calcite-icon - map-card --> calcite-tooltip - map-card --> calcite-block + map-card --> calcite-button map-card --> calcite-list map-card --> calcite-list-item + map-tools --> calcite-action + map-tools --> calcite-action-bar + map-tools --> calcite-action-group + map-tools --> calcite-icon + map-tools --> calcite-tooltip calcite-action-bar --> calcite-action-group calcite-action-group --> calcite-action-menu calcite-action-group --> calcite-action - calcite-block --> calcite-scrim - calcite-block --> calcite-icon - calcite-block --> calcite-handle - calcite-block --> calcite-loader - calcite-block --> calcite-action-menu - calcite-handle --> calcite-icon + calcite-button --> calcite-loader + calcite-button --> calcite-icon calcite-list --> calcite-scrim calcite-list --> calcite-filter calcite-filter --> calcite-input @@ -86,8 +84,6 @@ graph TD; info-card --> calcite-tooltip info-card --> edit-record-modal info-card --> calcite-alert - calcite-button --> calcite-loader - calcite-button --> calcite-icon edit-record-modal --> calcite-modal edit-record-modal --> calcite-notice edit-record-modal --> calcite-button @@ -136,8 +132,8 @@ graph TD; layer-table --> edit-record-modal layer-table --> calcite-alert layer-table --> calcite-link - layer-table --> map-layer-picker layer-table --> calcite-action-bar + layer-table --> map-layer-picker layer-table --> calcite-action layer-table --> calcite-tooltip layer-table --> calcite-dropdown @@ -148,6 +144,7 @@ graph TD; map-layer-picker --> calcite-select map-layer-picker --> calcite-combobox map-layer-picker --> calcite-dropdown + map-layer-picker --> calcite-action map-layer-picker --> calcite-button map-layer-picker --> calcite-dropdown-group map-layer-picker --> calcite-dropdown-item diff --git a/src/components/layer-table/layer-table.tsx b/src/components/layer-table/layer-table.tsx index c9bf1f740..840cc3c4f 100644 --- a/src/components/layer-table/layer-table.tsx +++ b/src/components/layer-table/layer-table.tsx @@ -148,7 +148,7 @@ export class LayerTable { /** * esri/core/reactiveUtils: https://developers.arcgis.com/javascript/latest/api-reference/esri-core-reactiveUtils.html */ - protected reactiveUtils: typeof import ("esri/core/reactiveUtils"); + protected reactiveUtils: typeof import("esri/core/reactiveUtils"); /** * HTMLCalciteCheckboxElement: Element to force selection of all records @@ -338,21 +338,21 @@ export class LayerTable { const multiFeaturesSelected = this._selectedIndexes.length > 1; return (
-
- this._layerSelectionChanged(evt)} - placeholderIcon="layers" - scale="l" - type="dropdown" - /> -
+
+ this._layerSelectionChanged(evt)} + placeholderIcon="layers" + scale="l" + type="dropdown" + /> +
{ - const opts = { - include: this._layerView.layer - }; + const opts = { + include: this._layerView.layer + }; const hitTestResult = await this.mapView.hitTest(evt.detail, opts); if (hitTestResult.results.length > 0) { hitTestResult.results.forEach((result: any) => { - const id = (result.graphic as __esri.Graphic).getObjectId(); - const index = this._table.highlightIds.indexOf(id); - if (index > -1) { - this._table.highlightIds.removeAt(index); - } else { - this._table.highlightIds.add(id); - } + const id = (result.graphic as __esri.Graphic).getObjectId(); + const index = this._table.highlightIds.indexOf(id); + if (index > -1) { + this._table.highlightIds.removeAt(index); + } else { + this._table.highlightIds.add(id); + } }); } } diff --git a/src/components/layer-table/readme.md b/src/components/layer-table/readme.md index 1e5a9867d..0c79097cd 100644 --- a/src/components/layer-table/readme.md +++ b/src/components/layer-table/readme.md @@ -46,8 +46,8 @@ Promise that resolves when the operation is complete - [edit-record-modal](../edit-record-modal) - calcite-alert - calcite-link -- [map-layer-picker](../map-layer-picker) - calcite-action-bar +- [map-layer-picker](../map-layer-picker) - calcite-action - calcite-tooltip - calcite-dropdown @@ -64,8 +64,8 @@ graph TD; layer-table --> edit-record-modal layer-table --> calcite-alert layer-table --> calcite-link - layer-table --> map-layer-picker layer-table --> calcite-action-bar + layer-table --> map-layer-picker layer-table --> calcite-action layer-table --> calcite-tooltip layer-table --> calcite-dropdown @@ -116,9 +116,13 @@ graph TD; calcite-alert --> calcite-icon calcite-alert --> calcite-chip calcite-link --> calcite-icon + calcite-action-bar --> calcite-action-group + calcite-action-group --> calcite-action-menu + calcite-action-group --> calcite-action map-layer-picker --> calcite-select map-layer-picker --> calcite-combobox map-layer-picker --> calcite-dropdown + map-layer-picker --> calcite-action map-layer-picker --> calcite-button map-layer-picker --> calcite-dropdown-group map-layer-picker --> calcite-dropdown-item @@ -126,9 +130,6 @@ graph TD; map-layer-picker --> calcite-combobox-item calcite-select --> calcite-icon calcite-dropdown-item --> calcite-icon - calcite-action-bar --> calcite-action-group - calcite-action-group --> calcite-action-menu - calcite-action-group --> calcite-action crowdsource-manager --> layer-table style layer-table fill:#f9f,stroke:#333,stroke-width:4px ``` diff --git a/src/components/map-card/map-card.css b/src/components/map-card/map-card.css index 1570ff109..a50649f36 100644 --- a/src/components/map-card/map-card.css +++ b/src/components/map-card/map-card.css @@ -111,3 +111,10 @@ /* .block-button:focus { @apply bg-foreground-2 text-color-1 fill-color-1 focus-inset; } */ + +.map-tools { + position: absolute; + top: 40px; + right: 0px; + padding: 1rem; +} diff --git a/src/components/map-card/map-card.tsx b/src/components/map-card/map-card.tsx index 5919c69b8..e141857bd 100644 --- a/src/components/map-card/map-card.tsx +++ b/src/components/map-card/map-card.tsx @@ -18,7 +18,7 @@ import { Component, Element, Event, EventEmitter, Host, h, Prop, State, VNode, W import MapCard_T9n from "../../assets/t9n/map-card/resources.json"; import { loadModules } from "../../utils/loadModules"; import { getLocaleComponentStrings } from "../../utils/locale"; -import { EExpandType, IMapInfo } from "../../utils/interfaces"; +import { IMapInfo } from "../../utils/interfaces"; // TODO navigation and accessability isn't right for the map list // tab does not go into the list when it's open @@ -76,9 +76,9 @@ export class MapCard { @State() _translations: typeof MapCard_T9n; /** - * string: id of the map to display + * IMapInfo: id and name of the map to display */ - @State() _webMapId = ""; + @State() _webMapInfo: IMapInfo; //-------------------------------------------------------------------------- // @@ -113,10 +113,10 @@ export class MapCard { //-------------------------------------------------------------------------- /** - * Called each time the _webMapId prop is changed. + * Called each time the _webMapInfo prop is changed. */ - @Watch("_webMapId") - _webMapIdWatchHandler(v: any, oldV: any): void { + @Watch("_webMapInfo") + _webMapInfoWatchHandler(v: IMapInfo, oldV: IMapInfo): void { if (v && JSON.stringify(v) !== JSON.stringify(oldV)) { this._loadMap(v); } @@ -126,9 +126,9 @@ export class MapCard { * Called each time the mapInfos prop is changed. */ @Watch("mapInfos") - mapInfosWatchHandler(v: any, oldV: any): void { + mapInfosWatchHandler(v: IMapInfo[], oldV: IMapInfo[]): void { if (v && JSON.stringify(v) !== JSON.stringify(oldV)) { - this._loadMap(v[0].id); + this._loadMap(v[0]); } } @@ -144,11 +144,6 @@ export class MapCard { // //-------------------------------------------------------------------------- - /** - * Emitted when the expand button is clicked - */ - @Event() expandMap: EventEmitter; - /** * Emitted when a new map is loaded */ @@ -173,7 +168,7 @@ export class MapCard { */ componentDidRender() { // the container node for the map view needs to exist before the view is created - this._loadMap(this._webMapId); + this._loadMap(this._webMapInfo); } /** @@ -185,6 +180,7 @@ export class MapCard { {this._getToolbar()} {this._getMapNameList(this._mapListExpanded)}
(this._mapDiv = el)}/> + ); } @@ -223,32 +219,27 @@ export class MapCard {
{this._getMapPicker()} - {this._getActionGroup("home", false, this._translations.home, () => this._goHome())} - {this._getActionGroup("list", false, this._translations.list, () => this._showList())} - {this._getActionGroup("magnifying-glass-plus", false, this._translations.search, () => this._search())} - {this._getActionGroup("plus", false, this._translations.zoomIn, () => this._zoomIn())} - {this._getActionGroup("minus", false, this._translations.zoomOut, () => this._zoomOut())} - {this._getActionGroup("expand", false, this._translations.expand, () => this._expand())}
); } /** - * Load the webmap for the provided id + * Load the webmap for the provided webMapInfo * - * @param id the webmap id to load + * @param webMapInfo the webmap id and name to load * * @returns void * * @protected */ protected _loadMap( - id: string + webMapInfo: IMapInfo ): void { + const id = webMapInfo?.id; // on the first render use the first child of the provided mapInfos - if (id === "" && this.mapInfos.length > 0) { - id = this.mapInfos[0].id; + if ((id === "" || !id) && this.mapInfos.length > 0) { + this._webMapInfo = this.mapInfos[0]; } if (this._loadedId !== id) { const webMap = new this.WebMap({ @@ -267,45 +258,6 @@ export class MapCard { } } - /** - * Get a calcite action group for the current action - * - * @param icon the icon to display for the current action - * @param disabled should the action be disabled - * @param tip information tip to display helpful details to end user - * @param func the associated onClick function to execute - * - * @returns the dom node for the action group - * - * @protected - */ - protected _getActionGroup( - icon: string, - disabled: boolean, - tip: string, - func: any - ): VNode { - return ( - - - - - - {tip} - - - ); - } - /** * Get a calcite action group for the map list * Actions do not support multiple icons so this uses a block @@ -317,19 +269,17 @@ export class MapCard { protected _getMapPicker(): VNode { const mapListIcon = this._mapListExpanded ? "chevron-up" : "chevron-down"; return ( - - this._chooseMap()} - > - - - - {this._translations.mapName} - - - + this._chooseMap()} + width="full" + > + {this._webMapInfo?.name} + ); } @@ -353,7 +303,7 @@ export class MapCard { return ( this._webMapSelected(mapInfo.id)} + onClick={() => this._webMapSelected(mapInfo)} selected={mapInfo.id === this._loadedId} value={mapInfo.id} /> @@ -367,17 +317,17 @@ export class MapCard { /** * Fired when the user clicks on the map list * - * @param id the web map id selected from the list + * @param webMapInfo the web map id and name selected from the list * * @returns void * * @protected */ protected _webMapSelected( - id: string + webMapInfo: IMapInfo ): void { this._mapListExpanded = false; - this._webMapId = id; + this._webMapInfo = webMapInfo; } /** @@ -389,47 +339,6 @@ export class MapCard { */ protected _chooseMap(): void { this._mapListExpanded = !this._mapListExpanded; - if (this._mapListExpanded) { - //const mapList = document.getElementById("mapList"); - // TODO figure out why this doesn't work - //await (mapList.children[0] as HTMLCalcitePickListItemElement).setFocus(); - } - } - - // Need to discuss this with the team - protected _goHome(): void { - alert("go home") - } - - // need to discuss this with the team - protected _showList(): void { - alert("show list") - } - - // Need to discuss this with the team - protected _search(): void { - alert("search") - } - - // Need to explore map fixed zoom in considerations - protected _zoomIn(): void { - alert("zoom in") - } - - // Need to explore map fixed zoom out considerations - protected _zoomOut(): void { - alert("zoom out") - } - - /** - * Emit the expand map event - * - * @returns void - * - * @protected - */ - protected _expand(): void { - this.expandMap.emit(EExpandType.EXPAND); } /** diff --git a/src/components/map-card/readme.md b/src/components/map-card/readme.md index 09a1f10a2..46238e989 100644 --- a/src/components/map-card/readme.md +++ b/src/components/map-card/readme.md @@ -15,10 +15,9 @@ ## Events -| Event | Description | Type | -| ------------ | ----------------------------------------- | --------------------------------------------------------- | -| `expandMap` | Emitted when the expand button is clicked | `CustomEvent` | -| `mapChanged` | Emitted when a new map is loaded | `CustomEvent` | +| Event | Description | Type | +| ------------ | -------------------------------- | ---------------------- | +| `mapChanged` | Emitted when a new map is loaded | `CustomEvent` | ## Dependencies @@ -29,44 +28,39 @@ ### Depends on +- [map-tools](../map-tools) - calcite-action-bar -- calcite-action-group -- calcite-action -- calcite-icon -- calcite-tooltip -- calcite-block +- calcite-button - calcite-list - calcite-list-item ### Graph ```mermaid graph TD; + map-card --> map-tools map-card --> calcite-action-bar - map-card --> calcite-action-group - map-card --> calcite-action - map-card --> calcite-icon - map-card --> calcite-tooltip - map-card --> calcite-block + map-card --> calcite-button map-card --> calcite-list map-card --> calcite-list-item + map-tools --> calcite-action + map-tools --> calcite-action-bar + map-tools --> calcite-action-group + map-tools --> calcite-icon + map-tools --> calcite-tooltip + calcite-action --> calcite-loader + calcite-action --> calcite-icon calcite-action-bar --> calcite-action-group calcite-action-group --> calcite-action-menu calcite-action-group --> calcite-action calcite-action-menu --> calcite-action calcite-action-menu --> calcite-popover - calcite-action --> calcite-loader - calcite-action --> calcite-icon calcite-popover --> calcite-action calcite-popover --> calcite-icon - calcite-block --> calcite-scrim - calcite-block --> calcite-icon - calcite-block --> calcite-handle - calcite-block --> calcite-loader - calcite-block --> calcite-action-menu - calcite-scrim --> calcite-loader - calcite-handle --> calcite-icon + calcite-button --> calcite-loader + calcite-button --> calcite-icon calcite-list --> calcite-scrim calcite-list --> calcite-filter + calcite-scrim --> calcite-loader calcite-filter --> calcite-input calcite-input --> calcite-progress calcite-input --> calcite-icon diff --git a/src/components/map-layer-picker/map-layer-picker.tsx b/src/components/map-layer-picker/map-layer-picker.tsx index 08d10aaeb..eb9e1d864 100644 --- a/src/components/map-layer-picker/map-layer-picker.tsx +++ b/src/components/map-layer-picker/map-layer-picker.tsx @@ -241,20 +241,21 @@ export class MapLayerPicker { _getDropdown(): VNode { return ( - -
- {this.selectedLayerName} -
-
+ + +
+ {this.selectedLayerName} +
+
+
{this._getDropdownItems()} diff --git a/src/components/map-layer-picker/readme.md b/src/components/map-layer-picker/readme.md index 891800b16..7edcc4d85 100644 --- a/src/components/map-layer-picker/readme.md +++ b/src/components/map-layer-picker/readme.md @@ -38,6 +38,7 @@ - calcite-select - calcite-combobox - calcite-dropdown +- calcite-action - calcite-button - calcite-dropdown-group - calcite-dropdown-item @@ -50,6 +51,7 @@ graph TD; map-layer-picker --> calcite-select map-layer-picker --> calcite-combobox map-layer-picker --> calcite-dropdown + map-layer-picker --> calcite-action map-layer-picker --> calcite-button map-layer-picker --> calcite-dropdown-group map-layer-picker --> calcite-dropdown-item @@ -59,6 +61,8 @@ graph TD; calcite-combobox --> calcite-chip calcite-combobox --> calcite-icon calcite-chip --> calcite-icon + calcite-action --> calcite-loader + calcite-action --> calcite-icon calcite-button --> calcite-loader calcite-button --> calcite-icon calcite-dropdown-item --> calcite-icon diff --git a/src/components/map-select-tools/readme.md b/src/components/map-select-tools/readme.md index d41438630..a482b2f58 100644 --- a/src/components/map-select-tools/readme.md +++ b/src/components/map-select-tools/readme.md @@ -107,6 +107,7 @@ graph TD; map-layer-picker --> calcite-select map-layer-picker --> calcite-combobox map-layer-picker --> calcite-dropdown + map-layer-picker --> calcite-action map-layer-picker --> calcite-button map-layer-picker --> calcite-dropdown-group map-layer-picker --> calcite-dropdown-item diff --git a/src/components/map-tools/map-tools.css b/src/components/map-tools/map-tools.css new file mode 100644 index 000000000..961cbab6d --- /dev/null +++ b/src/components/map-tools/map-tools.css @@ -0,0 +1,31 @@ +/** @license + * Copyright 2022 Esri + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +:host { + display: block; +} + +.display-none { + display: none; +} + +.border { + border: 1px solid var(--calcite-ui-border-3); +} + +.margin-top-1-2 { + margin-top: 0.5rem; +} diff --git a/src/components/map-tools/map-tools.tsx b/src/components/map-tools/map-tools.tsx new file mode 100644 index 000000000..f95a7ce4c --- /dev/null +++ b/src/components/map-tools/map-tools.tsx @@ -0,0 +1,236 @@ +/** @license + * Copyright 2022 Esri + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { Component, Element, Event, EventEmitter, Host, h, Prop, State, VNode } from '@stencil/core'; +import MapTools_T9n from "../../assets/t9n/map-tools/resources.json"; +import { getLocaleComponentStrings } from "../../utils/locale"; +import { EExpandType } from "../../utils/interfaces"; + +@Component({ + tag: 'map-tools', + styleUrl: 'map-tools.css', + shadow: true, +}) +export class MapTools { + //-------------------------------------------------------------------------- + // + // Host element access + // + //-------------------------------------------------------------------------- + + @Element() el: HTMLMapToolsElement; + + //-------------------------------------------------------------------------- + // + // Properties (public) + // + //-------------------------------------------------------------------------- + + @Prop() layout: "horizontal" | "vertical" = "vertical"; + + /** + * esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html + */ + @Prop() mapView: __esri.MapView; + + //-------------------------------------------------------------------------- + // + // State (internal) + // + //-------------------------------------------------------------------------- + + /** + * Contains the translations for this component. + * All UI strings should be defined here. + */ + @State() _translations: typeof MapTools_T9n; + + /** + * When true the tool action bar will be displayed + */ + @State() _showTools = true; + + /** + * When true the basemap picker will be displayed + */ + @State() _showBasemapPicker = false; + + //-------------------------------------------------------------------------- + // + // Properties (protected) + // + //-------------------------------------------------------------------------- + + //-------------------------------------------------------------------------- + // + // Watch handlers + // + //-------------------------------------------------------------------------- + + //-------------------------------------------------------------------------- + // + // Methods (public) + // + //-------------------------------------------------------------------------- + + //-------------------------------------------------------------------------- + // + // Events (public) + // + //-------------------------------------------------------------------------- + + /** + * Emitted when the expand button is clicked + */ + @Event() expandMap: EventEmitter; + + //-------------------------------------------------------------------------- + // + // Functions (lifecycle) + // + //-------------------------------------------------------------------------- + + /** + * StencilJS: Called once just after the component is first connected to the DOM. + */ + async componentWillLoad(): Promise { + await this._getTranslations(); + } + + /** + * StencilJS: Renders the component. + */ + render() { + const toggleIcon = this._showTools ? "chevrons-up" : "chevrons-down"; + const toolsClass = this._showTools ? "" : "display-none"; + return ( + +
+ { this._toggleTools() }} + text="" + /> + + {this._getActionGroup("home", false, this._translations.home, () => this._goHome())} + {this._getActionGroup("plus", false, this._translations.zoomIn, () => this._zoomIn())} + {this._getActionGroup("minus", false, this._translations.zoomOut, () => this._zoomOut())} + {this._getActionGroup("list", false, this._translations.list, () => this._showList())} + {this._getActionGroup("magnifying-glass", false, this._translations.search, () => this._search())} + {this._getActionGroup("expand", false, this._translations.expand, () => this._expand())} + {this._getActionGroup("basemap", false, this._translations.basemap, () => this._toggleBasemapPicker())} + +
+
+ ); + } + + /** + * Get a calcite action group for the current action + * + * @param icon the icon to display for the current action + * @param disabled should the action be disabled + * @param tip information tip to display helpful details to end user + * @param func the associated onClick function to execute + * + * @returns the dom node for the action group + * + * @protected + */ + protected _getActionGroup( + icon: string, + disabled: boolean, + tip: string, + func: any + ): VNode { + return ( + + + + + + {tip} + + + ); + } + + // Need to discuss this with the team + protected _goHome(): void { + alert("go home") + } + + // need to discuss this with the team + protected _showList(): void { + alert("show list") + } + + // Need to discuss this with the team + protected _search(): void { + alert("search") + } + + // Need to explore map fixed zoom in considerations + protected _zoomIn(): void { + alert("zoom in") + } + + // Need to explore map fixed zoom out considerations + protected _zoomOut(): void { + alert("zoom out") + } + + protected _toggleBasemapPicker(): void { + this._showBasemapPicker = !this._showBasemapPicker; + } + + /** + * Emit the expand map event + * + * @returns void + * + * @protected + */ + protected _expand(): void { + this.expandMap.emit(EExpandType.EXPAND); + } + + protected _toggleTools(): void { + this._showTools = !this._showTools; + } + + /** + * Fetches the component's translations + * + * @returns Promise when complete + * @protected + */ + protected async _getTranslations(): Promise { + const messages = await getLocaleComponentStrings(this.el); + this._translations = messages[0] as typeof MapTools_T9n; + } +} diff --git a/src/components/map-tools/readme.md b/src/components/map-tools/readme.md new file mode 100644 index 000000000..84a317422 --- /dev/null +++ b/src/components/map-tools/readme.md @@ -0,0 +1,60 @@ +# map-tools + + + + + + +## Properties + +| Property | Attribute | Description | Type | Default | +| --------- | --------- | ------------------------------------------------------------------------------------------------------ | ---------------------------- | ------------ | +| `layout` | `layout` | | `"horizontal" \| "vertical"` | `"vertical"` | +| `mapView` | -- | esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html | `MapView` | `undefined` | + + +## Events + +| Event | Description | Type | +| ----------- | ----------------------------------------- | --------------------------------------------------------- | +| `expandMap` | Emitted when the expand button is clicked | `CustomEvent` | + + +## Dependencies + +### Used by + + - [map-card](../map-card) + +### Depends on + +- calcite-action +- calcite-action-bar +- calcite-action-group +- calcite-icon +- calcite-tooltip + +### Graph +```mermaid +graph TD; + map-tools --> calcite-action + map-tools --> calcite-action-bar + map-tools --> calcite-action-group + map-tools --> calcite-icon + map-tools --> calcite-tooltip + calcite-action --> calcite-loader + calcite-action --> calcite-icon + calcite-action-bar --> calcite-action-group + calcite-action-group --> calcite-action-menu + calcite-action-group --> calcite-action + calcite-action-menu --> calcite-action + calcite-action-menu --> calcite-popover + calcite-popover --> calcite-action + calcite-popover --> calcite-icon + map-card --> map-tools + style map-tools fill:#f9f,stroke:#333,stroke-width:4px +``` + +---------------------------------------------- + +*Built with [StencilJS](https://stenciljs.com/)* diff --git a/src/components/map-tools/test/map-tools.e2e.ts b/src/components/map-tools/test/map-tools.e2e.ts new file mode 100644 index 000000000..aa5e7797c --- /dev/null +++ b/src/components/map-tools/test/map-tools.e2e.ts @@ -0,0 +1,27 @@ +/** @license + * Copyright 2022 Esri + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { newE2EPage } from '@stencil/core/testing'; + +xdescribe('map-tools', () => { + it('renders', async () => { + const page = await newE2EPage(); + await page.setContent(''); + + const element = await page.find('map-tools'); + expect(element).toHaveClass('hydrated'); + }); +}); diff --git a/src/components/map-tools/test/map-tools.spec.tsx b/src/components/map-tools/test/map-tools.spec.tsx new file mode 100644 index 000000000..a9f2f7f87 --- /dev/null +++ b/src/components/map-tools/test/map-tools.spec.tsx @@ -0,0 +1,34 @@ +/** @license + * Copyright 2022 Esri + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { newSpecPage } from '@stencil/core/testing'; +import { MapTools } from '../map-tools'; + +xdescribe('map-tools', () => { + it('renders', async () => { + const page = await newSpecPage({ + components: [MapTools], + html: ``, + }); + expect(page.root).toEqualHtml(` + + + + + + `); + }); +}); diff --git a/src/components/public-notification/readme.md b/src/components/public-notification/readme.md index 6af9dd0ed..b7b2e9449 100644 --- a/src/components/public-notification/readme.md +++ b/src/components/public-notification/readme.md @@ -127,6 +127,7 @@ graph TD; map-layer-picker --> calcite-select map-layer-picker --> calcite-combobox map-layer-picker --> calcite-dropdown + map-layer-picker --> calcite-action map-layer-picker --> calcite-button map-layer-picker --> calcite-dropdown-group map-layer-picker --> calcite-dropdown-item diff --git a/src/components/refine-selection/readme.md b/src/components/refine-selection/readme.md index 53425ed1f..c33433d92 100644 --- a/src/components/refine-selection/readme.md +++ b/src/components/refine-selection/readme.md @@ -59,6 +59,7 @@ graph TD; map-layer-picker --> calcite-select map-layer-picker --> calcite-combobox map-layer-picker --> calcite-dropdown + map-layer-picker --> calcite-action map-layer-picker --> calcite-button map-layer-picker --> calcite-dropdown-group map-layer-picker --> calcite-dropdown-item @@ -68,14 +69,14 @@ graph TD; calcite-combobox --> calcite-chip calcite-combobox --> calcite-icon calcite-chip --> calcite-icon + calcite-action --> calcite-loader + calcite-action --> calcite-icon calcite-button --> calcite-loader calcite-button --> calcite-icon calcite-dropdown-item --> calcite-icon calcite-combobox-item --> calcite-icon calcite-popover --> calcite-action calcite-popover --> calcite-icon - calcite-action --> calcite-loader - calcite-action --> calcite-icon calcite-segmented-control-item --> calcite-icon map-draw-tools --> calcite-action calcite-list --> calcite-scrim From 7ece88cc48e0ae341f1950f709089a67b4ef8756 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Wed, 5 Jul 2023 12:52:44 -0600 Subject: [PATCH 065/406] use buttons for edit multiple and delete --- src/components/crowdsource-manager/readme.md | 2 +- src/components/layer-table/layer-table.tsx | 29 ++++++++++++++------ src/components/layer-table/readme.md | 4 +-- 3 files changed, 23 insertions(+), 12 deletions(-) diff --git a/src/components/crowdsource-manager/readme.md b/src/components/crowdsource-manager/readme.md index 3c95d561b..f88ef865f 100644 --- a/src/components/crowdsource-manager/readme.md +++ b/src/components/crowdsource-manager/readme.md @@ -136,8 +136,8 @@ graph TD; layer-table --> map-layer-picker layer-table --> calcite-action layer-table --> calcite-tooltip - layer-table --> calcite-dropdown layer-table --> calcite-button + layer-table --> calcite-dropdown layer-table --> calcite-dropdown-group layer-table --> calcite-dropdown-item calcite-link --> calcite-icon diff --git a/src/components/layer-table/layer-table.tsx b/src/components/layer-table/layer-table.tsx index 840cc3c4f..b3ca204f1 100644 --- a/src/components/layer-table/layer-table.tsx +++ b/src/components/layer-table/layer-table.tsx @@ -369,13 +369,19 @@ export class LayerTable { this._editMultiple()} - text={this._translations.editMultiple} - textEnabled={true} - /> + text="" + > + + {this._translations.editMultiple} + + {this._translations.editMultiple} @@ -394,13 +400,18 @@ export class LayerTable { this._delete()} - text={this._translations.delete} - text-enabled - textEnabled={true} - /> + text="" + > + + {this._translations.delete} + + {this._translations.delete} diff --git a/src/components/layer-table/readme.md b/src/components/layer-table/readme.md index 0c79097cd..e35bd3186 100644 --- a/src/components/layer-table/readme.md +++ b/src/components/layer-table/readme.md @@ -50,8 +50,8 @@ Promise that resolves when the operation is complete - [map-layer-picker](../map-layer-picker) - calcite-action - calcite-tooltip -- calcite-dropdown - calcite-button +- calcite-dropdown - calcite-dropdown-group - calcite-dropdown-item @@ -68,8 +68,8 @@ graph TD; layer-table --> map-layer-picker layer-table --> calcite-action layer-table --> calcite-tooltip - layer-table --> calcite-dropdown layer-table --> calcite-button + layer-table --> calcite-dropdown layer-table --> calcite-dropdown-group layer-table --> calcite-dropdown-item calcite-panel --> calcite-action From 18ea6af05c9f23ac25871e9a1430fe862388586c Mon Sep 17 00:00:00 2001 From: John Hauck Date: Wed, 5 Jul 2023 14:28:40 -0600 Subject: [PATCH 066/406] add info icon --- .../t9n/crowdsource-manager/resources.json | 3 ++- .../t9n/crowdsource-manager/resources_en.json | 3 ++- .../crowdsource-manager.css | 14 +++++++++++++ .../crowdsource-manager.tsx | 21 ++++++++++++++++++- src/components/crowdsource-manager/readme.md | 4 ++++ src/components/media-card/media-card.css | 2 +- 6 files changed, 43 insertions(+), 4 deletions(-) diff --git a/src/assets/t9n/crowdsource-manager/resources.json b/src/assets/t9n/crowdsource-manager/resources.json index 34cc69e2c..4ce0e1ffa 100644 --- a/src/assets/t9n/crowdsource-manager/resources.json +++ b/src/assets/t9n/crowdsource-manager/resources.json @@ -5,5 +5,6 @@ "close": "Close", "grid": "Grid", "vertical": "Vertical", - "horizontal": "Horizontal" + "horizontal": "Horizontal", + "appInfo": "Some basic information about the app" } diff --git a/src/assets/t9n/crowdsource-manager/resources_en.json b/src/assets/t9n/crowdsource-manager/resources_en.json index 76ac39682..33bf7b454 100644 --- a/src/assets/t9n/crowdsource-manager/resources_en.json +++ b/src/assets/t9n/crowdsource-manager/resources_en.json @@ -5,5 +5,6 @@ "close": "Close", "grid": "Grid", "vertical": "Vertical", - "horizontal": "Horizontal" + "horizontal": "Horizontal", + "appInfo": "Some basic information about the app" } diff --git a/src/components/crowdsource-manager/crowdsource-manager.css b/src/components/crowdsource-manager/crowdsource-manager.css index bd12e03ad..829460836 100644 --- a/src/components/crowdsource-manager/crowdsource-manager.css +++ b/src/components/crowdsource-manager/crowdsource-manager.css @@ -148,3 +148,17 @@ .adjusted-height-50 { height: calc(50% - 17px); } + +.icon-color { + --calcite-ui-icon-color: var(--calcite-ui-brand); +} + +.icon { + cursor: pointer; +} + +.tooltip-message { + padding: 5px 8px; + font-weight: var(--calcite-font-weight-normal); + color: var(--calcite-ui-text-2); +} diff --git a/src/components/crowdsource-manager/crowdsource-manager.tsx b/src/components/crowdsource-manager/crowdsource-manager.tsx index f38b4a793..a7316bfd6 100644 --- a/src/components/crowdsource-manager/crowdsource-manager.tsx +++ b/src/components/crowdsource-manager/crowdsource-manager.tsx @@ -132,7 +132,26 @@ export class CrowdsourceManager { heading={this._translations.header} >
-
Layout
+
+ + + + {this._translations.appInfo} + + +
+
+ {this._translations.layout} +
{this._getAction("grid-background", ELayoutMode.GRID, this._translations.grid)} {this._getAction("horizontal-background", ELayoutMode.VERTICAL, this._translations.horizontal)} {this._getAction("vertical-background", ELayoutMode.HORIZONTAL, this._translations.vertical)} diff --git a/src/components/crowdsource-manager/readme.md b/src/components/crowdsource-manager/readme.md index f88ef865f..2c15440ae 100644 --- a/src/components/crowdsource-manager/readme.md +++ b/src/components/crowdsource-manager/readme.md @@ -18,6 +18,8 @@ - calcite-shell - calcite-panel +- calcite-icon +- calcite-popover - calcite-action - calcite-tooltip - [map-card](../map-card) @@ -30,6 +32,8 @@ graph TD; crowdsource-manager --> calcite-shell crowdsource-manager --> calcite-panel + crowdsource-manager --> calcite-icon + crowdsource-manager --> calcite-popover crowdsource-manager --> calcite-action crowdsource-manager --> calcite-tooltip crowdsource-manager --> map-card diff --git a/src/components/media-card/media-card.css b/src/components/media-card/media-card.css index 69f7f021e..bfb93524a 100644 --- a/src/components/media-card/media-card.css +++ b/src/components/media-card/media-card.css @@ -79,7 +79,7 @@ html[dir="rtl"] .padding-right-5 { } div.image-container { - border: 1px solid var(--calcite-ui-background); + border: 1px solid var(--calcite-ui-foreground-3); box-sizing: border-box } From 29ee1bf872e8f85e1c41cc59ee38636b8be29c02 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Thu, 6 Jul 2023 08:36:59 -0600 Subject: [PATCH 067/406] fix hit test and minor css update --- src/components/crowdsource-manager/crowdsource-manager.css | 6 +++++- src/components/crowdsource-manager/crowdsource-manager.tsx | 2 +- src/components/layer-table/layer-table.tsx | 7 +++++-- 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/src/components/crowdsource-manager/crowdsource-manager.css b/src/components/crowdsource-manager/crowdsource-manager.css index 829460836..2d25e9f52 100644 --- a/src/components/crowdsource-manager/crowdsource-manager.css +++ b/src/components/crowdsource-manager/crowdsource-manager.css @@ -23,6 +23,10 @@ padding: 1rem; } +.padding-1-2 { + padding: 0.5rem; +} + .header-title { display: flex; float: left; @@ -146,7 +150,7 @@ } .adjusted-height-50 { - height: calc(50% - 17px); + height: calc(50% - 0.5rem); } .icon-color { diff --git a/src/components/crowdsource-manager/crowdsource-manager.tsx b/src/components/crowdsource-manager/crowdsource-manager.tsx index a7316bfd6..04b26097d 100644 --- a/src/components/crowdsource-manager/crowdsource-manager.tsx +++ b/src/components/crowdsource-manager/crowdsource-manager.tsx @@ -273,7 +273,7 @@ export class CrowdsourceManager {
-
+
diff --git a/src/components/layer-table/layer-table.tsx b/src/components/layer-table/layer-table.tsx index b3ca204f1..efad3fd49 100644 --- a/src/components/layer-table/layer-table.tsx +++ b/src/components/layer-table/layer-table.tsx @@ -544,12 +544,12 @@ export class LayerTable { * @returns void */ protected async _mapClicked( - evt: CustomEvent + evt: any ): Promise { const opts = { include: this._layerView.layer }; - const hitTestResult = await this.mapView.hitTest(evt.detail, opts); + const hitTestResult = await this.mapView.hitTest(evt.screenPoint, opts); if (hitTestResult.results.length > 0) { hitTestResult.results.forEach((result: any) => { const id = (result.graphic as __esri.Graphic).getObjectId(); @@ -560,6 +560,9 @@ export class LayerTable { this._table.highlightIds.add(id); } }); + if (this._showOnlySelected) { + this._table.filterBySelection(); + } } } From 00f4666fd67f3b930ec3172ae7382b19053423d2 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Wed, 19 Jul 2023 11:46:46 -0600 Subject: [PATCH 068/406] minor css updates and add the popup map to the demo --- .../crowdsource-manager/crowdsource-manager.css | 8 ++++++++ .../crowdsource-manager/crowdsource-manager.tsx | 6 ++++-- src/components/media-card/media-card.css | 10 ---------- src/demos/crowdsource-manager.html | 3 +++ 4 files changed, 15 insertions(+), 12 deletions(-) diff --git a/src/components/crowdsource-manager/crowdsource-manager.css b/src/components/crowdsource-manager/crowdsource-manager.css index 2d25e9f52..899dc0b01 100644 --- a/src/components/crowdsource-manager/crowdsource-manager.css +++ b/src/components/crowdsource-manager/crowdsource-manager.css @@ -153,6 +153,10 @@ height: calc(50% - 0.5rem); } +.adjusted-height-100 { + height: calc(100% - 1rem); +} + .icon-color { --calcite-ui-icon-color: var(--calcite-ui-brand); } @@ -166,3 +170,7 @@ font-weight: var(--calcite-font-weight-normal); color: var(--calcite-ui-text-2); } + +.display-none { + display: none; +} diff --git a/src/components/crowdsource-manager/crowdsource-manager.tsx b/src/components/crowdsource-manager/crowdsource-manager.tsx index 04b26097d..2611e01ff 100644 --- a/src/components/crowdsource-manager/crowdsource-manager.tsx +++ b/src/components/crowdsource-manager/crowdsource-manager.tsx @@ -267,14 +267,16 @@ export class CrowdsourceManager { layoutMode: ELayoutMode, panelOpen: boolean ): VNode { + const mapDisplayClass = layoutMode === ELayoutMode.GRID ? "" : "display-none"; + const cardManagerHeight = layoutMode === ELayoutMode.GRID ? "adjusted-height-50" : "adjusted-height-100"; const mapSizeClass = this._getMapSizeClass(layoutMode, panelOpen); return (
-
+
- +
); diff --git a/src/components/media-card/media-card.css b/src/components/media-card/media-card.css index bfb93524a..d534345b3 100644 --- a/src/components/media-card/media-card.css +++ b/src/components/media-card/media-card.css @@ -97,25 +97,15 @@ div.image-container img { .container { padding: 0px 6px 6px 0px; float: left; - width: 33%; box-sizing: border-box } html[dir="rtl"] .container { padding: 0px 0px 6px 6px; float: right; - width: 33%; box-sizing: border-box } -.container:nth-child(3n) { - padding-right: 0px; -} - -html[dir="rtl"] .container:nth-child(3n) { - padding-left: 0px; -} - .display-none { display: none; } diff --git a/src/demos/crowdsource-manager.html b/src/demos/crowdsource-manager.html index cbef5240b..c9ec095fb 100644 --- a/src/demos/crowdsource-manager.html +++ b/src/demos/crowdsource-manager.html @@ -54,6 +54,9 @@ }, { id: "f5b01c17a09941eaad63e7b4e6c7d880", name: "Attachments Map" + }, { + id: "ce3dec81bf714d3bb71da9691ab686d1", + name: "Popup Configured Map" }]; } From 2e953aeb7b15ada1bdc2a450fa2fd10c59d06fba Mon Sep 17 00:00:00 2001 From: John Hauck Date: Thu, 20 Jul 2023 10:16:47 -0600 Subject: [PATCH 069/406] don't enter edit mode for search --- src/components/map-select-tools/map-select-tools.tsx | 1 - 1 file changed, 1 deletion(-) diff --git a/src/components/map-select-tools/map-select-tools.tsx b/src/components/map-select-tools/map-select-tools.tsx index 9596bdd88..97faf6b75 100644 --- a/src/components/map-select-tools/map-select-tools.tsx +++ b/src/components/map-select-tools/map-select-tools.tsx @@ -773,7 +773,6 @@ export class MapSelectTools { oids ); this._drawTools.graphics = graphics; - this._drawTools.updateGraphics(); this._searchWidget.resultGraphic.visible = false; } else { const clearLabel = this._searchClearLabel(); From d2a5604fe539556a9a7b5ee1a98fa45a79d947b7 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Tue, 25 Jul 2023 11:04:30 -0600 Subject: [PATCH 070/406] use editor rather than feature form --- src/components/card-manager/readme.md | 1 - src/components/crowdsource-manager/readme.md | 1 - .../edit-record-modal/edit-record-modal.tsx | 112 +++++++++++++----- src/components/edit-record-modal/readme.md | 4 - src/components/info-card/readme.md | 1 - src/components/layer-table/readme.md | 5 +- 6 files changed, 86 insertions(+), 38 deletions(-) diff --git a/src/components/card-manager/readme.md b/src/components/card-manager/readme.md index 833ec3c19..d4ca14cc7 100644 --- a/src/components/card-manager/readme.md +++ b/src/components/card-manager/readme.md @@ -55,7 +55,6 @@ graph TD; calcite-button --> calcite-icon edit-record-modal --> calcite-modal edit-record-modal --> calcite-notice - edit-record-modal --> calcite-button edit-record-modal --> calcite-label edit-record-modal --> calcite-input-text edit-record-modal --> calcite-input-number diff --git a/src/components/crowdsource-manager/readme.md b/src/components/crowdsource-manager/readme.md index 2c15440ae..6c34186f4 100644 --- a/src/components/crowdsource-manager/readme.md +++ b/src/components/crowdsource-manager/readme.md @@ -90,7 +90,6 @@ graph TD; info-card --> calcite-alert edit-record-modal --> calcite-modal edit-record-modal --> calcite-notice - edit-record-modal --> calcite-button edit-record-modal --> calcite-label edit-record-modal --> calcite-input-text edit-record-modal --> calcite-input-number diff --git a/src/components/edit-record-modal/edit-record-modal.tsx b/src/components/edit-record-modal/edit-record-modal.tsx index 8b2826df7..4eab4ab5e 100644 --- a/src/components/edit-record-modal/edit-record-modal.tsx +++ b/src/components/edit-record-modal/edit-record-modal.tsx @@ -85,6 +85,24 @@ export class EditRecordModal { // //-------------------------------------------------------------------------- + /** + * esri/widgets/Editor: https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Editor.html + * The Editor constructor + */ + protected _editHandle: __esri.WatchHandle; + + /** + * esri/widgets/Editor: https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Editor.html + * The Editor constructor + */ + protected Editor: typeof import("esri/widgets/Editor"); + + /** + * esri/widgets/Editor: https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Editor.html + * The Editor instance + */ + protected _editor: __esri.Editor; + /** * esri/widgets/FeatureForm: https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-FeatureForm.html * The feature form constructor @@ -102,6 +120,11 @@ export class EditRecordModal { */ protected _layer: __esri.FeatureLayer; + /** + * HTMLDivElement: https://developer.mozilla.org/en-US/docs/Web/API/HTMLDivElement + */ + protected _editContainer: HTMLDivElement; + /** * any[]: Collection of edit controls created in "MULTI" edit mode * These can be calcite-input-text, calcite-input-number, calcite-input-date-picker, calcite-input-time-picker, or calcite-combobox @@ -118,6 +141,11 @@ export class EditRecordModal { */ protected _editingDisabled: boolean; + /** + * esri/core/reactiveUtils: https://developers.arcgis.com/javascript/latest/api-reference/esri-core-reactiveUtils.html + */ + protected reactiveUtils: typeof import("esri/core/reactiveUtils"); + //-------------------------------------------------------------------------- // // Watch handlers @@ -129,9 +157,7 @@ export class EditRecordModal { */ @Watch("graphicIndex") graphicIndexWatchHandler(): void { - if (this.graphics?.length && this.graphics[0]) { - this._featureForm.feature = this.graphics[this.graphicIndex]; - } + this._initEditorWidget(); } /** @@ -139,13 +165,7 @@ export class EditRecordModal { */ @Watch("graphics") graphicsWatchHandler(): void { - this._initFeatureFormWidget(); - if (this.editMode === EEditMode.SINGLE && this._featureForm && this.graphics[this.graphicIndex]) { - this._featureForm.feature = this.graphics[this.graphicIndex]; - this._featureForm.disabled = !this._featureForm.layer.editingEnabled; - - this._editingDisabled = !this._featureForm.layer.editingEnabled; - } + this._initEditorWidget(); } /** @@ -153,7 +173,7 @@ export class EditRecordModal { */ @Watch("mapView") mapViewWatchHandler(): void { - this._initFeatureFormWidget(); + this._initEditorWidget(); } //-------------------------------------------------------------------------- @@ -202,7 +222,8 @@ export class EditRecordModal { */ async componentWillRender(): Promise { const layerTableElements: HTMLCollection = document.getElementsByTagName("layer-table"); - if (layerTableElements.length === 1 && this.editMode === EEditMode.MULTI) { + // if (layerTableElements.length === 1 && this.editMode === EEditMode.MULTI) { + if (layerTableElements.length === 1) { const layerTable: HTMLLayerTableElement = layerTableElements[0] as HTMLLayerTableElement; this.graphics = await layerTable.getSelectedGraphics(); } @@ -230,6 +251,7 @@ export class EditRecordModal {
void this._modalBeforeOpen()} onCalciteModalClose={() => this._modalClose()} onCalciteModalOpen={() => this._modalOpen()} open={this.open} @@ -259,10 +281,12 @@ export class EditRecordModal {
{ this.editMode === EEditMode.MULTI ? - this._getFieldInputs(editDisabled) : (
) + this._getFieldInputs(editDisabled) : + (
this._editContainer = el} />) }
- this._cancel()} slot="secondary" @@ -277,7 +301,7 @@ export class EditRecordModal { width="full" > {this._translations.save} - + */}
@@ -296,29 +320,52 @@ export class EditRecordModal { * @returns Promise resolving when function is done */ protected async _initModules(): Promise { - const [FeatureForm] = await loadModules([ - "esri/widgets/FeatureForm" + const [FeatureForm, Editor, reactiveUtils] = await loadModules([ + "esri/widgets/FeatureForm", + "esri/widgets/Editor", + "esri/core/reactiveUtils" ]); this.FeatureForm = FeatureForm; + this.Editor = Editor; + this.reactiveUtils = reactiveUtils; } /** - * Init the Feature widget so we can display the popup content + * Init the Editor widget so we can display the popup content * * @returns void */ - protected _initFeatureFormWidget(): void { - if (this.editMode === EEditMode.SINGLE && this.mapView && !this._featureForm && this.graphics && this.graphics.length > 0 && this.graphics[0]) { - const feature: __esri.Graphic = this.graphics[this.graphicIndex]; - const elements = this._getFormTemplateElements(); - this._featureForm = new this.FeatureForm({ - container: "feature-form", - feature, - formTemplate: { - elements + protected _initEditorWidget(): void { + if (this.editMode === EEditMode.SINGLE && this.mapView && this.graphics && this.graphics.length > 0 && this.graphics[0]) { + if (this._editor) { + this._editor.destroy() + } + const container = document.createElement("div"); + this._editor = new this.Editor({ + allowedWorkflows: "update", + view: this.mapView, + visibleElements: { + snappingControls: false, + sketchTooltipControls: false }, - map: this.mapView.map + container }); + + if (this._editHandle) { + this._editHandle.remove(); + } + + this._editHandle = this.reactiveUtils.when( + () => this._editor.viewModel.state === "ready", + () => { + if (this.graphicIndex > -1 && this.graphics.length > 0 && this.open) { + void this._editor.startUpdateWorkflowAtFeatureEdit(this.graphics[this.graphicIndex]); + } + } + ); + + // had issues with destroy before adding like this + this._editContainer.appendChild(container); } } @@ -652,6 +699,15 @@ export class EditRecordModal { this.modalOpened.emit(); } + /** + * Force the editor to start with the feature edit workflow + * + * @returns void + */ + protected async _modalBeforeOpen(): Promise { + await this._editor.startUpdateWorkflowAtFeatureEdit(this.graphics[this.graphicIndex]) + } + /** * Fetches the component's translations * diff --git a/src/components/edit-record-modal/readme.md b/src/components/edit-record-modal/readme.md index f835e7f31..e2b1fafa2 100644 --- a/src/components/edit-record-modal/readme.md +++ b/src/components/edit-record-modal/readme.md @@ -35,7 +35,6 @@ - calcite-modal - calcite-notice -- calcite-button - calcite-label - calcite-input-text - calcite-input-number @@ -48,7 +47,6 @@ graph TD; edit-record-modal --> calcite-modal edit-record-modal --> calcite-notice - edit-record-modal --> calcite-button edit-record-modal --> calcite-label edit-record-modal --> calcite-input-text edit-record-modal --> calcite-input-number @@ -59,8 +57,6 @@ graph TD; calcite-modal --> calcite-icon calcite-scrim --> calcite-loader calcite-notice --> calcite-icon - calcite-button --> calcite-loader - calcite-button --> calcite-icon calcite-input-text --> calcite-progress calcite-input-text --> calcite-icon calcite-input-number --> calcite-progress diff --git a/src/components/info-card/readme.md b/src/components/info-card/readme.md index 326a315a9..d596fcdde 100644 --- a/src/components/info-card/readme.md +++ b/src/components/info-card/readme.md @@ -55,7 +55,6 @@ graph TD; calcite-button --> calcite-icon edit-record-modal --> calcite-modal edit-record-modal --> calcite-notice - edit-record-modal --> calcite-button edit-record-modal --> calcite-label edit-record-modal --> calcite-input-text edit-record-modal --> calcite-input-number diff --git a/src/components/layer-table/readme.md b/src/components/layer-table/readme.md index e35bd3186..3f1b5e78c 100644 --- a/src/components/layer-table/readme.md +++ b/src/components/layer-table/readme.md @@ -84,7 +84,6 @@ graph TD; calcite-scrim --> calcite-loader edit-record-modal --> calcite-modal edit-record-modal --> calcite-notice - edit-record-modal --> calcite-button edit-record-modal --> calcite-label edit-record-modal --> calcite-input-text edit-record-modal --> calcite-input-number @@ -94,8 +93,6 @@ graph TD; calcite-modal --> calcite-scrim calcite-modal --> calcite-icon calcite-notice --> calcite-icon - calcite-button --> calcite-loader - calcite-button --> calcite-icon calcite-input-text --> calcite-progress calcite-input-text --> calcite-icon calcite-input-number --> calcite-progress @@ -129,6 +126,8 @@ graph TD; map-layer-picker --> calcite-option map-layer-picker --> calcite-combobox-item calcite-select --> calcite-icon + calcite-button --> calcite-loader + calcite-button --> calcite-icon calcite-dropdown-item --> calcite-icon crowdsource-manager --> layer-table style layer-table fill:#f9f,stroke:#333,stroke-width:4px From b035376cd8e952f2180c5aac04ca1432c915e387 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Tue, 25 Jul 2023 11:20:57 -0600 Subject: [PATCH 071/406] remove edit multiple --- src/components.d.ts | 8 - src/components/card-manager/readme.md | 26 +- src/components/crowdsource-manager/readme.md | 26 +- .../edit-record-modal/edit-record-modal.tsx | 353 +----------------- src/components/edit-record-modal/readme.md | 44 +-- src/components/info-card/info-card.tsx | 2 - src/components/info-card/readme.md | 24 +- src/components/layer-table/layer-table.tsx | 58 +-- src/components/layer-table/readme.md | 34 +- src/utils/interfaces.ts | 5 - 10 files changed, 28 insertions(+), 552 deletions(-) diff --git a/src/components.d.ts b/src/components.d.ts index 6b84ca852..d8bbdb110 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -80,10 +80,6 @@ export namespace Components { interface DeductCalculator { } interface EditRecordModal { - /** - * "MULTI" | "SINGLE": "SINGLE" edit mode is intended to be used to edit a single existing feature "MULTI" edit mode is intended to apply edits across a collection of features - */ - "editMode": EEditMode; /** * The index of the current graphic */ @@ -1093,10 +1089,6 @@ declare namespace LocalJSX { "onDeductValueComplete"?: (event: DeductCalculatorCustomEvent) => void; } interface EditRecordModal { - /** - * "MULTI" | "SINGLE": "SINGLE" edit mode is intended to be used to edit a single existing feature "MULTI" edit mode is intended to apply edits across a collection of features - */ - "editMode"?: EEditMode; /** * The index of the current graphic */ diff --git a/src/components/card-manager/readme.md b/src/components/card-manager/readme.md index d4ca14cc7..9852b365f 100644 --- a/src/components/card-manager/readme.md +++ b/src/components/card-manager/readme.md @@ -55,35 +55,13 @@ graph TD; calcite-button --> calcite-icon edit-record-modal --> calcite-modal edit-record-modal --> calcite-notice - edit-record-modal --> calcite-label - edit-record-modal --> calcite-input-text - edit-record-modal --> calcite-input-number - edit-record-modal --> calcite-input-date-picker - edit-record-modal --> calcite-combobox - edit-record-modal --> calcite-combobox-item calcite-modal --> calcite-scrim calcite-modal --> calcite-icon calcite-scrim --> calcite-loader calcite-notice --> calcite-icon - calcite-input-text --> calcite-progress - calcite-input-text --> calcite-icon - calcite-input-number --> calcite-progress - calcite-input-number --> calcite-icon - calcite-input-date-picker --> calcite-input - calcite-input-date-picker --> calcite-date-picker - calcite-input-date-picker --> calcite-icon - calcite-input --> calcite-progress - calcite-input --> calcite-icon - calcite-date-picker --> calcite-date-picker-month-header - calcite-date-picker --> calcite-date-picker-month - calcite-date-picker-month-header --> calcite-icon - calcite-date-picker-month --> calcite-date-picker-day - calcite-combobox --> calcite-chip - calcite-combobox --> calcite-icon - calcite-chip --> calcite-icon - calcite-combobox-item --> calcite-icon calcite-alert --> calcite-icon calcite-alert --> calcite-chip + calcite-chip --> calcite-icon media-card --> calcite-loader media-card --> calcite-button media-card --> calcite-shell @@ -97,6 +75,8 @@ graph TD; add-record-modal --> calcite-label add-record-modal --> calcite-input add-record-modal --> calcite-button + calcite-input --> calcite-progress + calcite-input --> calcite-icon crowdsource-manager --> card-manager style card-manager fill:#f9f,stroke:#333,stroke-width:4px ``` diff --git a/src/components/crowdsource-manager/readme.md b/src/components/crowdsource-manager/readme.md index 6c34186f4..048a3ca87 100644 --- a/src/components/crowdsource-manager/readme.md +++ b/src/components/crowdsource-manager/readme.md @@ -90,32 +90,12 @@ graph TD; info-card --> calcite-alert edit-record-modal --> calcite-modal edit-record-modal --> calcite-notice - edit-record-modal --> calcite-label - edit-record-modal --> calcite-input-text - edit-record-modal --> calcite-input-number - edit-record-modal --> calcite-input-date-picker - edit-record-modal --> calcite-combobox - edit-record-modal --> calcite-combobox-item calcite-modal --> calcite-scrim calcite-modal --> calcite-icon calcite-notice --> calcite-icon - calcite-input-text --> calcite-progress - calcite-input-text --> calcite-icon - calcite-input-number --> calcite-progress - calcite-input-number --> calcite-icon - calcite-input-date-picker --> calcite-input - calcite-input-date-picker --> calcite-date-picker - calcite-input-date-picker --> calcite-icon - calcite-date-picker --> calcite-date-picker-month-header - calcite-date-picker --> calcite-date-picker-month - calcite-date-picker-month-header --> calcite-icon - calcite-date-picker-month --> calcite-date-picker-day - calcite-combobox --> calcite-chip - calcite-combobox --> calcite-icon - calcite-chip --> calcite-icon - calcite-combobox-item --> calcite-icon calcite-alert --> calcite-icon calcite-alert --> calcite-chip + calcite-chip --> calcite-icon media-card --> calcite-loader media-card --> calcite-button media-card --> calcite-shell @@ -132,7 +112,6 @@ graph TD; layer-table --> calcite-shell layer-table --> calcite-panel layer-table --> calcite-loader - layer-table --> edit-record-modal layer-table --> calcite-alert layer-table --> calcite-link layer-table --> calcite-action-bar @@ -154,7 +133,10 @@ graph TD; map-layer-picker --> calcite-option map-layer-picker --> calcite-combobox-item calcite-select --> calcite-icon + calcite-combobox --> calcite-chip + calcite-combobox --> calcite-icon calcite-dropdown-item --> calcite-icon + calcite-combobox-item --> calcite-icon style crowdsource-manager fill:#f9f,stroke:#333,stroke-width:4px ``` diff --git a/src/components/edit-record-modal/edit-record-modal.tsx b/src/components/edit-record-modal/edit-record-modal.tsx index 4eab4ab5e..f03d55c1d 100644 --- a/src/components/edit-record-modal/edit-record-modal.tsx +++ b/src/components/edit-record-modal/edit-record-modal.tsx @@ -14,13 +14,10 @@ * limitations under the License. */ -import { Component, Element, Event, EventEmitter, Host, h, Prop, State, VNode, Watch } from "@stencil/core"; +import { Component, Element, Event, EventEmitter, Host, h, Prop, State, Watch } from "@stencil/core"; import { loadModules } from "../../utils/loadModules"; import EditRecordModal_T9n from "../../assets/t9n/edit-record-modal/resources.json"; import { getLocaleComponentStrings } from "../../utils/locale"; -import { EEditMode } from "../../utils/interfaces"; - -// TODO clearInputs does not clear date fields @Component({ tag: "edit-record-modal", @@ -56,12 +53,6 @@ export class EditRecordModal { */ @Prop({ mutable: true }) open = false; - /** - * "MULTI" | "SINGLE": "SINGLE" edit mode is intended to be used to edit a single existing feature - * "MULTI" edit mode is intended to apply edits across a collection of features - */ - @Prop() editMode = EEditMode.SINGLE; - /** * The index of the current graphic */ @@ -103,18 +94,6 @@ export class EditRecordModal { */ protected _editor: __esri.Editor; - /** - * esri/widgets/FeatureForm: https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-FeatureForm.html - * The feature form constructor - */ - protected FeatureForm: typeof import("esri/widgets/FeatureForm"); - - /** - * esri/widgets/FeatureForm: https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-FeatureForm.html - * The feature form instance - */ - protected _featureForm: __esri.FeatureForm; - /** * esri/layers/FeatureLayer: https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html */ @@ -131,11 +110,6 @@ export class EditRecordModal { */ protected _editControlElements: any[]; - /** - * Key value pair: Store the field name and new value to be used to apply edits in "MULTI" edit mode. - */ - protected _edits: {[key: string]: any} = {}; - /** * boolean: When true edit controls will be disabled */ @@ -222,7 +196,6 @@ export class EditRecordModal { */ async componentWillRender(): Promise { const layerTableElements: HTMLCollection = document.getElementsByTagName("layer-table"); - // if (layerTableElements.length === 1 && this.editMode === EEditMode.MULTI) { if (layerTableElements.length === 1) { const layerTable: HTMLLayerTableElement = layerTableElements[0] as HTMLLayerTableElement; this.graphics = await layerTable.getSelectedGraphics(); @@ -236,16 +209,11 @@ export class EditRecordModal { * Renders the component. */ render() { - const header = this.editMode === EEditMode.SINGLE ? - this._translations.edit : this._translations.editMultiple; - // This is a temp workaround hopefully...this._editingDisabled should reflect the current state but does not // when you use MULTI edit mode...is fine in SINGLE const editDisabled = this.graphics?.length > 0 && this.graphics[0] ? !(this.graphics[0].layer as __esri.FeatureLayer).editingEnabled : true; - const contentClass = this.editMode === EEditMode.MULTI ? "padding-sides-bottom-1" : ""; - return (
@@ -262,7 +230,7 @@ export class EditRecordModal { class="font-500" slot="header" > - {header} + {this._translations.edit}
{ editDisabled ? ( @@ -278,30 +246,12 @@ export class EditRecordModal { ) : undefined } -
- { - this.editMode === EEditMode.MULTI ? - this._getFieldInputs(editDisabled) : - (
this._editContainer = el} />) - } +
+
this._editContainer = el} + />
- {/* These would need to be shown for multi edit if it stays but I think it's coming out.. */} - {/* this._cancel()} - slot="secondary" - width="full" - > - {this._translations.cancel} - - this._save()} - slot="primary" - width="full" - > - {this._translations.save} - */}
@@ -320,12 +270,10 @@ export class EditRecordModal { * @returns Promise resolving when function is done */ protected async _initModules(): Promise { - const [FeatureForm, Editor, reactiveUtils] = await loadModules([ - "esri/widgets/FeatureForm", + const [Editor, reactiveUtils] = await loadModules([ "esri/widgets/Editor", "esri/core/reactiveUtils" ]); - this.FeatureForm = FeatureForm; this.Editor = Editor; this.reactiveUtils = reactiveUtils; } @@ -336,7 +284,7 @@ export class EditRecordModal { * @returns void */ protected _initEditorWidget(): void { - if (this.editMode === EEditMode.SINGLE && this.mapView && this.graphics && this.graphics.length > 0 && this.graphics[0]) { + if (this.mapView && this.graphics && this.graphics.length > 0 && this.graphics[0]) { if (this._editor) { this._editor.destroy() } @@ -389,257 +337,6 @@ export class EditRecordModal { } } - /** - * Get the controls for all editable fields when using "MULTI" edit mode - * - * @returns Array of input nodes to display - */ - protected _getFieldInputs( - editDisabled: boolean - ): VNode[] { - if (this.graphics.length > 0 && this._layer) { - const fields = this._layer.fields.filter(f => f.editable); - this._editControlElements = []; - return fields.map(field => { - return ( -
- {this._getFieldInput(field, editDisabled)} -
- ); - }); - } - } - - /** - * Get the input for all editable fields when using "MULTI" edit mode - * - * @param field An editable field to create an input for user interaction - * - * @returns Input node to display - */ - _getFieldInput( - field: __esri.Field, - editDisabled: boolean - ): VNode { - let fieldNode: VNode; - switch (field.type) { - case "string": - fieldNode = ( - - {field.alias} - { - field.domain ? this._getDomainInput(field, editDisabled) : ( - this._stringInputChanged(evt)} - placeholder={this._translations.textField} - ref={(el) => this._editControlElements.push(el)} - />) - } - - ); - break; - case "small-integer" || "integer" || "single" || "double" || "long": - fieldNode = ( - - {field.alias} - { - field.domain ? this._getDomainInput(field, editDisabled) : - ( this._numberInputChanged(evt)} - placeholder={this._translations.textField} - ref={(el) => this._editControlElements.push(el)} - />) - } - - ); - break; - case "date": - fieldNode = ( - - {field.alias} - this._dateInputChanged(evt)} - overlayPositioning="fixed" - placement="top" - ref={(el) => this._editControlElements.push(el)} - /> - {/* Don't see how to tell if this should be on or not...thought maybe checking valueType but - it's null for the fields I tested but this time picker is still shown for fields in the FeatureForm. - - Not showing by default for now...will change as necessary after I speak with the team - */} - {/* this._timeInputChanged(evt)} - /> */} - - ); - break; - default: - fieldNode = ( - - {field.alias} - this._stringInputChanged(evt)} - placeholder={this._translations.textField} - ref={(el) => this._editControlElements.push(el)} - /> - - ); - break; - } - return fieldNode; - } - - /** - * Get the input for a field with a domain when using "MULTI" edit mode - * - * @param field An editable field that has a domain to create an input for user interaction - * - * @returns Input node to display - */ - protected _getDomainInput( - field: __esri.Field, - editDisabled: boolean - ): VNode { - let node; - const domain = field.domain; - switch (domain.type) { - case "coded-value": - node = ( - this._domainInputChanged(evt)} - placeholder={this._translations.selectValue} - ref={(el) => this._editControlElements.push(el)} - selectionMode="single" - > - { - domain.codedValues.map(cv => { - return () - }) - } - - ); - break; - - // need to look into this one more - //case "inherited": - //break; - - case "range": - node = ( - - ); - break; - } - return node; - } - - /** - * Store the selected date value - * - * @param evt the event from the user interaction - * - * @returns void - */ - protected _dateInputChanged( - evt: CustomEvent - ): void { - const target = evt.target as HTMLCalciteDatePickerElement; - // should we only store this if it has a value? - // If we do we prevent the ability to delete values across the seletced features - // If we don't we could delete values that they may not want to delete - this._edits[target.id.replace("--date", "")] = target.value; - } - - /** - * Store the selected text value - * - * @param evt the event from the user interaction - * - * @returns void - */ - protected _domainInputChanged( - evt: CustomEvent - ): void { - const target = evt.target as HTMLCalciteInputTextElement; - // should we only store this if it has a value? - // If we do we prevent the ability to delete values across the seletced features - // If we don't we could delete values that they may not want to delete - this._edits[target.id] = target.value; - } - - /** - * Store the selected number value - * - * @param evt the event from the user interaction - * - * @returns void - */ - protected _numberInputChanged( - evt: CustomEvent - ): void { - const target = evt.target as HTMLCalciteInputNumberElement; - // should we only store this if it has a value? - // If we do we prevent the ability to delete values across the seletced features - // If we don't we could delete values that they may not want to delete - this._edits[target.id] = target.value; - } - - /** - * Store the selected string value - * - * @param evt the event from the user interaction - * - * @returns void - */ - protected _stringInputChanged( - evt: CustomEvent - ): void { - const target = evt.target as HTMLCalciteInputTextElement; - // should we only store this if it has a value? - // If we do we prevent the ability to delete values across the seletced features - // If we don't we could delete values that they may not want to delete - this._edits[target.id] = target.value; - } - - /** - * Store the selected time value - * - * @param evt the event from the user interaction - * - * @returns void - */ - protected _timeInputChanged( - evt: CustomEvent - ): void { - const target = evt.target as HTMLCalciteInputTimePickerElement; - // should we only store this if it has a value? - // If we do we prevent the ability to delete values across the seletced features - // If we don't we could delete values that they may not want to delete - this._edits[target.id.replace("--time", "")] = target.value; - } - /** * Closes the modal * @@ -647,37 +344,6 @@ export class EditRecordModal { */ protected _cancel(): void { this.open = false; - this._clearInputs(); - } - - /** - * Clear the input controls so they do not retain values on close - * - * @returns void - */ - protected _clearInputs(): void { - if (this.editMode === EEditMode.MULTI) { - this._editControlElements?.forEach(c => { - c.value = ""; - }); - } - } - - /** - * Apply the edits to the layer - * - * @returns void - */ - protected _save(): void { - const attributes = this.editMode === EEditMode.SINGLE ? - this._featureForm.getValues() : this._edits; - if (attributes) { - console.log(attributes); - // Holding off on this for a moment until we talk through a few things for MULTI edit - // this._layer.applyEdits({ - // updateFeatures: [{ attributes } as any] - // }); - } } /** @@ -687,7 +353,6 @@ export class EditRecordModal { */ protected _modalClose(): void { this.modalClosed.emit(); - this._clearInputs(); } /** diff --git a/src/components/edit-record-modal/readme.md b/src/components/edit-record-modal/readme.md index e2b1fafa2..9e97de2f2 100644 --- a/src/components/edit-record-modal/readme.md +++ b/src/components/edit-record-modal/readme.md @@ -7,13 +7,12 @@ ## Properties -| Property | Attribute | Description | Type | Default | -| -------------- | --------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------- | ------------------ | -| `editMode` | `edit-mode` | "MULTI" \| "SINGLE": "SINGLE" edit mode is intended to be used to edit a single existing feature "MULTI" edit mode is intended to apply edits across a collection of features | `EEditMode.MULTI \| EEditMode.SINGLE` | `EEditMode.SINGLE` | -| `graphicIndex` | `graphic-index` | The index of the current graphic | `number` | `0` | -| `graphics` | -- | esri/Graphic[]: https://developers.arcgis.com/javascript/latest/api-reference/esri-Graphic.html | `Graphic[]` | `undefined` | -| `mapView` | -- | esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html | `MapView` | `undefined` | -| `open` | `open` | When true the component is displayed | `boolean` | `false` | +| Property | Attribute | Description | Type | Default | +| -------------- | --------------- | --------------------------------------------------------------------------------------------------------- | ----------- | ----------- | +| `graphicIndex` | `graphic-index` | The index of the current graphic | `number` | `0` | +| `graphics` | -- | esri/Graphic[]: https://developers.arcgis.com/javascript/latest/api-reference/esri-Graphic.html | `Graphic[]` | `undefined` | +| `mapView` | -- | esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html | `MapView` | `undefined` | +| `open` | `open` | When true the component is displayed | `boolean` | `false` | ## Events @@ -29,53 +28,22 @@ ### Used by - [info-card](../info-card) - - [layer-table](../layer-table) ### Depends on - calcite-modal - calcite-notice -- calcite-label -- calcite-input-text -- calcite-input-number -- calcite-input-date-picker -- calcite-combobox -- calcite-combobox-item ### Graph ```mermaid graph TD; edit-record-modal --> calcite-modal edit-record-modal --> calcite-notice - edit-record-modal --> calcite-label - edit-record-modal --> calcite-input-text - edit-record-modal --> calcite-input-number - edit-record-modal --> calcite-input-date-picker - edit-record-modal --> calcite-combobox - edit-record-modal --> calcite-combobox-item calcite-modal --> calcite-scrim calcite-modal --> calcite-icon calcite-scrim --> calcite-loader calcite-notice --> calcite-icon - calcite-input-text --> calcite-progress - calcite-input-text --> calcite-icon - calcite-input-number --> calcite-progress - calcite-input-number --> calcite-icon - calcite-input-date-picker --> calcite-input - calcite-input-date-picker --> calcite-date-picker - calcite-input-date-picker --> calcite-icon - calcite-input --> calcite-progress - calcite-input --> calcite-icon - calcite-date-picker --> calcite-date-picker-month-header - calcite-date-picker --> calcite-date-picker-month - calcite-date-picker-month-header --> calcite-icon - calcite-date-picker-month --> calcite-date-picker-day - calcite-combobox --> calcite-chip - calcite-combobox --> calcite-icon - calcite-chip --> calcite-icon - calcite-combobox-item --> calcite-icon info-card --> edit-record-modal - layer-table --> edit-record-modal style edit-record-modal fill:#f9f,stroke:#333,stroke-width:4px ``` diff --git a/src/components/info-card/info-card.tsx b/src/components/info-card/info-card.tsx index 383085086..29edcdee2 100644 --- a/src/components/info-card/info-card.tsx +++ b/src/components/info-card/info-card.tsx @@ -18,7 +18,6 @@ import { Component, Element, Host, h, Method, Prop, State, Watch } from "@stenci import InfoCard_T9n from "../../assets/t9n/info-card/resources.json"; import { getLocaleComponentStrings } from "../../utils/locale"; import { loadModules } from "../../utils/loadModules"; -import { EEditMode } from "../../utils/interfaces"; @Component({ tag: "info-card", @@ -199,7 +198,6 @@ export class InfoCard {
calcite-icon edit-record-modal --> calcite-modal edit-record-modal --> calcite-notice - edit-record-modal --> calcite-label - edit-record-modal --> calcite-input-text - edit-record-modal --> calcite-input-number - edit-record-modal --> calcite-input-date-picker - edit-record-modal --> calcite-combobox - edit-record-modal --> calcite-combobox-item calcite-modal --> calcite-scrim calcite-modal --> calcite-icon calcite-scrim --> calcite-loader calcite-notice --> calcite-icon - calcite-input-text --> calcite-progress - calcite-input-text --> calcite-icon - calcite-input-number --> calcite-progress - calcite-input-number --> calcite-icon - calcite-input-date-picker --> calcite-input - calcite-input-date-picker --> calcite-date-picker - calcite-input-date-picker --> calcite-icon - calcite-input --> calcite-progress - calcite-input --> calcite-icon - calcite-date-picker --> calcite-date-picker-month-header - calcite-date-picker --> calcite-date-picker-month - calcite-date-picker-month-header --> calcite-icon - calcite-date-picker-month --> calcite-date-picker-day - calcite-combobox --> calcite-chip - calcite-combobox --> calcite-icon - calcite-chip --> calcite-icon - calcite-combobox-item --> calcite-icon calcite-alert --> calcite-icon calcite-alert --> calcite-chip + calcite-chip --> calcite-icon card-manager --> info-card style info-card fill:#f9f,stroke:#333,stroke-width:4px ``` diff --git a/src/components/layer-table/layer-table.tsx b/src/components/layer-table/layer-table.tsx index efad3fd49..17310f27e 100644 --- a/src/components/layer-table/layer-table.tsx +++ b/src/components/layer-table/layer-table.tsx @@ -21,7 +21,7 @@ import { getLocaleComponentStrings } from "../../utils/locale"; import { getMapLayerView, getMapLayerIds } from "../../utils/mapViewUtils"; import { queryFeaturesByID, queryAllIds } from "../../utils/queryUtils"; import * as downloadUtils from "../../utils/downloadUtils"; -import { EEditMode, IExportInfos } from "../../utils/interfaces"; +import { IExportInfos } from "../../utils/interfaces"; @Component({ tag: "layer-table", @@ -58,11 +58,6 @@ export class LayerTable { */ @State() _alertOpen = false; - /** - * boolean: When true the edit multiple modal is shown - */ - @State() _editMultipleOpen = false; - /** * boolean: When true a loading indicator will be shown in place of the layer table */ @@ -271,12 +266,6 @@ export class LayerTable { />
- this._editMultipleClosed()} - open={this._editMultipleOpen} - slot="modals" - /> 0; - const multiFeaturesSelected = this._selectedIndexes.length > 1; return (
{this._translations.zoom} - this._editMultiple()} - text="" - > - - {this._translations.editMultiple} - - - - {this._translations.editMultiple} - calcite-shell layer-table --> calcite-panel layer-table --> calcite-loader - layer-table --> edit-record-modal layer-table --> calcite-alert layer-table --> calcite-link layer-table --> calcite-action-bar @@ -82,36 +80,9 @@ graph TD; calcite-popover --> calcite-action calcite-popover --> calcite-icon calcite-scrim --> calcite-loader - edit-record-modal --> calcite-modal - edit-record-modal --> calcite-notice - edit-record-modal --> calcite-label - edit-record-modal --> calcite-input-text - edit-record-modal --> calcite-input-number - edit-record-modal --> calcite-input-date-picker - edit-record-modal --> calcite-combobox - edit-record-modal --> calcite-combobox-item - calcite-modal --> calcite-scrim - calcite-modal --> calcite-icon - calcite-notice --> calcite-icon - calcite-input-text --> calcite-progress - calcite-input-text --> calcite-icon - calcite-input-number --> calcite-progress - calcite-input-number --> calcite-icon - calcite-input-date-picker --> calcite-input - calcite-input-date-picker --> calcite-date-picker - calcite-input-date-picker --> calcite-icon - calcite-input --> calcite-progress - calcite-input --> calcite-icon - calcite-date-picker --> calcite-date-picker-month-header - calcite-date-picker --> calcite-date-picker-month - calcite-date-picker-month-header --> calcite-icon - calcite-date-picker-month --> calcite-date-picker-day - calcite-combobox --> calcite-chip - calcite-combobox --> calcite-icon - calcite-chip --> calcite-icon - calcite-combobox-item --> calcite-icon calcite-alert --> calcite-icon calcite-alert --> calcite-chip + calcite-chip --> calcite-icon calcite-link --> calcite-icon calcite-action-bar --> calcite-action-group calcite-action-group --> calcite-action-menu @@ -126,9 +97,12 @@ graph TD; map-layer-picker --> calcite-option map-layer-picker --> calcite-combobox-item calcite-select --> calcite-icon + calcite-combobox --> calcite-chip + calcite-combobox --> calcite-icon calcite-button --> calcite-loader calcite-button --> calcite-icon calcite-dropdown-item --> calcite-icon + calcite-combobox-item --> calcite-icon crowdsource-manager --> layer-table style layer-table fill:#f9f,stroke:#333,stroke-width:4px ``` diff --git a/src/utils/interfaces.ts b/src/utils/interfaces.ts index d22baa803..398e99725 100644 --- a/src/utils/interfaces.ts +++ b/src/utils/interfaces.ts @@ -36,11 +36,6 @@ export enum ELayoutMode { VERTICAL = "VERTICAL" } -export enum EEditMode { - MULTI = "MULTI", - SINGLE = "SINGLE" -} - /** * Resource update types */ From a2c2e059e55b4ee8ee413b5f7cb77b6e771ebb84 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Tue, 25 Jul 2023 13:21:04 -0600 Subject: [PATCH 072/406] reset view on mapView change --- src/components/info-card/info-card.tsx | 48 +++++++++++++------------- 1 file changed, 24 insertions(+), 24 deletions(-) diff --git a/src/components/info-card/info-card.tsx b/src/components/info-card/info-card.tsx index 29edcdee2..e61594461 100644 --- a/src/components/info-card/info-card.tsx +++ b/src/components/info-card/info-card.tsx @@ -109,14 +109,14 @@ export class InfoCard { * Watch for changes to the graphic and update the feature widget */ @Watch("graphics") - graphicsWatchHandler(): void { - this._initFeaturesWidget(); - if (this._features) { + async graphicsWatchHandler(): Promise { + await this._initFeaturesWidget(); + if (this._features && this.graphics.length > 0) { + this._editEnabled = (this.graphics[0]?.layer as __esri.FeatureLayer).editingEnabled; this._features.features = this.graphics; - this._features.visible = this.graphics.length > 0 && this.graphics[0] !== undefined; - if (this._features.visible) { - this._editEnabled = (this.graphics[0]?.layer as __esri.FeatureLayer).editingEnabled; - } + this._features.open({ + features: this.graphics + }); } } @@ -124,8 +124,8 @@ export class InfoCard { * Watch for changes to the mapView and re-init the Feature widget */ @Watch("mapView") - mapViewWatchHandler(): void { - this._initFeaturesWidget(); + async mapViewWatchHandler(): Promise { + await this._initFeaturesWidget(); } //-------------------------------------------------------------------------- @@ -250,21 +250,21 @@ export class InfoCard { * * @protected */ - protected _initFeaturesWidget(): void { - if (this.mapView && !this._features) { - this._features = new this.Features({ - view: this.mapView, - container: "features-node", - visible: true, - visibleElements: { - actionBar: false, - closeButton: false, - heading: false - }, - viewModel: { - featureViewModelAbilities: { - attachmentsContent: false - } + protected async _initFeaturesWidget(): Promise { + if (this.mapView) { + await this.mapView.when(() => { + if (!this._features) { + this._features = new this.Features({ + container: "features-node", + visibleElements: { + actionBar: false, + closeButton: false, + heading: false + }, + view: this.mapView + }); + } else { + this._features.view = this.mapView; } }); } From 2ff27a73b44779195e27d6a8d5912af795e67c1e Mon Sep 17 00:00:00 2001 From: John Hauck Date: Wed, 26 Jul 2023 09:31:43 -0600 Subject: [PATCH 073/406] add an interface for map click event --- src/components/layer-table/layer-table.tsx | 4 ++-- src/utils/interfaces.ts | 13 +++++++++++++ 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/src/components/layer-table/layer-table.tsx b/src/components/layer-table/layer-table.tsx index 17310f27e..eb38467eb 100644 --- a/src/components/layer-table/layer-table.tsx +++ b/src/components/layer-table/layer-table.tsx @@ -21,7 +21,7 @@ import { getLocaleComponentStrings } from "../../utils/locale"; import { getMapLayerView, getMapLayerIds } from "../../utils/mapViewUtils"; import { queryFeaturesByID, queryAllIds } from "../../utils/queryUtils"; import * as downloadUtils from "../../utils/downloadUtils"; -import { IExportInfos } from "../../utils/interfaces"; +import { IExportInfos, IMapClick } from "../../utils/interfaces"; @Component({ tag: "layer-table", @@ -506,7 +506,7 @@ export class LayerTable { * @returns void */ protected async _mapClicked( - evt: any + evt: IMapClick ): Promise { const opts = { include: this._layerView.layer diff --git a/src/utils/interfaces.ts b/src/utils/interfaces.ts index 398e99725..0291c5f3f 100644 --- a/src/utils/interfaces.ts +++ b/src/utils/interfaces.ts @@ -94,6 +94,19 @@ export type ValidSize = 6|10|14|20|30|60|80; export type DistanceUnit = "feet"|"meters"|"miles"|"kilometers"; +export interface IMapClick { + mapPoint: __esri.Point, + screenPoint: __esri.MapViewScreenPoint, + x: number, + y: number, + button: number, + buttons: 0 | 1 | 2, + type: string, + stopPropagation: any, + timestamp: number, + native: PointerEvent +} + export interface IExportOptions { csvOptions: ICsvOptions; pdfOptions: IPdfOptions; From 6909dd3b8a7fdf80b0dfd5abcd2d7ee783ea0489 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Wed, 26 Jul 2023 13:50:24 -0600 Subject: [PATCH 074/406] fix "projection engine not loaded" issue --- src/components/card-manager/card-manager.tsx | 2 +- src/components/info-card/info-card.tsx | 34 +++++++++----------- src/components/layer-table/layer-table.tsx | 10 ++++-- src/utils/downloadUtils.ts | 2 +- src/utils/queryUtils.ts | 11 +++++-- 5 files changed, 33 insertions(+), 26 deletions(-) diff --git a/src/components/card-manager/card-manager.tsx b/src/components/card-manager/card-manager.tsx index 36e4ee55d..3c0645b1d 100644 --- a/src/components/card-manager/card-manager.tsx +++ b/src/components/card-manager/card-manager.tsx @@ -156,7 +156,7 @@ export class CardManager { const ids = evt.detail; this._cardLoading = true; // only query if we have some ids...query with no ids will result in all features being returned - const featureSet = ids.length > 0 ? await queryFeaturesByID(ids, this.layerView.layer, []) : []; + const featureSet = ids.length > 0 ? await queryFeaturesByID(ids, this.layerView.layer, [], false, this.mapView.spatialReference) : []; this._graphics = featureSet; this._cardLoading = false; } diff --git a/src/components/info-card/info-card.tsx b/src/components/info-card/info-card.tsx index e61594461..a0547a6a1 100644 --- a/src/components/info-card/info-card.tsx +++ b/src/components/info-card/info-card.tsx @@ -110,10 +110,8 @@ export class InfoCard { */ @Watch("graphics") async graphicsWatchHandler(): Promise { - await this._initFeaturesWidget(); - if (this._features && this.graphics.length > 0) { + if (this.graphics.length > 0) { this._editEnabled = (this.graphics[0]?.layer as __esri.FeatureLayer).editingEnabled; - this._features.features = this.graphics; this._features.open({ features: this.graphics }); @@ -125,7 +123,9 @@ export class InfoCard { */ @Watch("mapView") async mapViewWatchHandler(): Promise { - await this._initFeaturesWidget(); + await this.mapView.when(async () => { + await this._initFeaturesWidget(); + }); } //-------------------------------------------------------------------------- @@ -251,22 +251,18 @@ export class InfoCard { * @protected */ protected async _initFeaturesWidget(): Promise { - if (this.mapView) { - await this.mapView.when(() => { - if (!this._features) { - this._features = new this.Features({ - container: "features-node", - visibleElements: { - actionBar: false, - closeButton: false, - heading: false - }, - view: this.mapView - }); - } else { - this._features.view = this.mapView; - } + if (!this._features) { + this._features = new this.Features({ + container: "features-node", + visibleElements: { + actionBar: false, + closeButton: false, + heading: false + }, + view: this.mapView }); + } else { + this._features.view = this.mapView; } } diff --git a/src/components/layer-table/layer-table.tsx b/src/components/layer-table/layer-table.tsx index eb38467eb..659fcc0f6 100644 --- a/src/components/layer-table/layer-table.tsx +++ b/src/components/layer-table/layer-table.tsx @@ -467,7 +467,7 @@ export class LayerTable { this._table = new this.FeatureTable({ layer: this._layerView.layer, view: this.mapView, - editingEnabled: this._editEnabled, + //editingEnabled: this._editEnabled, highlightOnRowSelectEnabled: true, multiSortEnabled: false, visibleElements: { @@ -673,7 +673,13 @@ export class LayerTable { protected async _getGraphics( ids: number[] ): Promise<__esri.Graphic[]> { - return ids.length > 0 ? queryFeaturesByID(ids, this._table.layer as __esri.FeatureLayer, []) : []; + return ids.length > 0 ? queryFeaturesByID( + ids, + this._table.layer as __esri.FeatureLayer, + [], + false, + this.mapView.spatialReference + ) : []; } /** diff --git a/src/utils/downloadUtils.ts b/src/utils/downloadUtils.ts index fb17b4390..01af1a2d9 100644 --- a/src/utils/downloadUtils.ts +++ b/src/utils/downloadUtils.ts @@ -421,7 +421,7 @@ async function _prepareLabels( const [intl] = await loadModules(["esri/intl"]); // Get the features to export - const featureSet = await queryFeaturesByID(ids, layer, []); + const featureSet = await queryFeaturesByID(ids, layer, [], false); // Get field data types. Do we have any domain-based fields? const attributeTypes: IAttributeTypes = {}; diff --git a/src/utils/queryUtils.ts b/src/utils/queryUtils.ts index 7e0e695df..7f3965ef5 100644 --- a/src/utils/queryUtils.ts +++ b/src/utils/queryUtils.ts @@ -124,7 +124,9 @@ export async function queryObjectIds( export async function queryFeaturesByID( ids: number[], layer: __esri.FeatureLayer, - graphics: __esri.Graphic[] + graphics: __esri.Graphic[], + returnGeometry: boolean, + outSpatialReference?: __esri.SpatialReference ): Promise<__esri.Graphic[]> { const num = layer.capabilities.query.maxRecordCount; const start = 0; @@ -132,7 +134,11 @@ export async function queryFeaturesByID( const q = layer.createQuery(); q.start = start; q.num = num; + q.returnGeometry = returnGeometry; q.objectIds = ids.slice(start, num); + if (outSpatialReference) { + q.outSpatialReference = outSpatialReference; + } const result = await layer.queryFeatures(q); @@ -141,9 +147,8 @@ export async function queryFeaturesByID( ); const remainingIds = ids.slice(num, ids.length); - return remainingIds.length > 0 ? - queryFeaturesByID(remainingIds, layer, graphics) : + queryFeaturesByID(remainingIds, layer, graphics, returnGeometry, outSpatialReference) : Promise.resolve(graphics); } From c4e3e9590f309946435fdb5c00d631d83956cf3c Mon Sep 17 00:00:00 2001 From: John Hauck Date: Wed, 26 Jul 2023 14:09:54 -0600 Subject: [PATCH 075/406] remove card buttons --- src/components.d.ts | 8 - src/components/add-record-modal/readme.md | 5 - src/components/card-manager/card-manager.tsx | 178 +------------------ src/components/card-manager/readme.md | 37 +--- src/components/comment-card/readme.md | 5 - src/components/crowdsource-manager/readme.md | 20 --- src/components/media-card/readme.md | 5 - src/utils/interfaces.ts | 6 - 8 files changed, 6 insertions(+), 258 deletions(-) diff --git a/src/components.d.ts b/src/components.d.ts index d8bbdb110..ef40a29a3 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -58,10 +58,6 @@ export namespace Components { * esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html */ "mapView": __esri.MapView; - /** - * IMediaCardValues[]: Array of objects that contain the name, description, and image to display - */ - "mediaCardValues": IMediaCardValues[]; } interface CommentCard { /** @@ -1059,10 +1055,6 @@ declare namespace LocalJSX { * esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html */ "mapView"?: __esri.MapView; - /** - * IMediaCardValues[]: Array of objects that contain the name, description, and image to display - */ - "mediaCardValues"?: IMediaCardValues[]; } interface CommentCard { /** diff --git a/src/components/add-record-modal/readme.md b/src/components/add-record-modal/readme.md index 510ca4029..660401e3f 100644 --- a/src/components/add-record-modal/readme.md +++ b/src/components/add-record-modal/readme.md @@ -22,10 +22,6 @@ ## Dependencies -### Used by - - - [card-manager](../card-manager) - ### Depends on - calcite-modal @@ -47,7 +43,6 @@ graph TD; calcite-input --> calcite-icon calcite-button --> calcite-loader calcite-button --> calcite-icon - card-manager --> add-record-modal style add-record-modal fill:#f9f,stroke:#333,stroke-width:4px ``` diff --git a/src/components/card-manager/card-manager.tsx b/src/components/card-manager/card-manager.tsx index 3c0645b1d..bf7cfcd0e 100644 --- a/src/components/card-manager/card-manager.tsx +++ b/src/components/card-manager/card-manager.tsx @@ -14,11 +14,10 @@ * limitations under the License. */ -import { Component, Element, Host, h, Listen, Prop, State, Watch } from "@stencil/core"; +import { Component, Element, Host, h, Listen, Prop, State } from "@stencil/core"; import CardManager_T9n from "../../assets/t9n/card-manager/resources.json"; import { getLocaleComponentStrings } from "../../utils/locale"; -import { ECardType, IMediaCardValues } from "../../utils/interfaces"; -import { queryAttachments, queryFeaturesByID } from "../../utils/queryUtils"; +import { queryFeaturesByID } from "../../utils/queryUtils"; import { getMapLayerView } from "../../utils/mapViewUtils"; @Component({ @@ -50,32 +49,17 @@ export class CardManager { */ @Prop() mapView: __esri.MapView; - /** - * IMediaCardValues[]: Array of objects that contain the name, description, and image to display - */ - @Prop() mediaCardValues: IMediaCardValues[] = []; - //-------------------------------------------------------------------------- // // Properties (protected) // //-------------------------------------------------------------------------- - /** - * When true the add record modal will be displayed - */ - @State() _addRecordOpen = false; - /** * When true a loading indicator will be shown in the current card */ @State() _cardLoading = false; - /** - * Controls what card type to display - */ - @State() _currentCardType = ECardType.INFO; - /** * The current selected graphics */ @@ -87,53 +71,12 @@ export class CardManager { */ @State() _translations: typeof CardManager_T9n; - /** - * Reference element that controls switching between cards - */ - protected _cardTypeElement: HTMLCalciteSegmentedControlElement; - - /** - * The graphic that is currently selected in info-card features widget - */ - protected _currentGraphic: __esri.Graphic; - - /** - * The current graphics attachments - */ - protected _attachments: any; - - /** - * Check the layers capabilities to see if queryAttachments is supported - * - * queryAttachments will return an error if the layer's capabilities.data.supportsAttachment property is false. - * Attachments for multiple features can be queried if the layer's capabilities.operations.supportsQueryAttachments is true. - */ - protected _attachmentsSupported: boolean; - - /** - * Reference to the info card to be used to check for the current graphic - */ - protected _infoCard: HTMLInfoCardElement; - //-------------------------------------------------------------------------- // // Watch handlers // //-------------------------------------------------------------------------- - /** - * watch for changes in the card type - */ - @Watch("_currentCardType") - async _currentCardTypeWatchHandler(): Promise { - if (this._currentCardType === ECardType.MEDIA) { - // check the info-card for the current feature - // doing this because the Features widget does not expose an event for next/prev - this._currentGraphic = await this._infoCard.getSelectedFeature(); - await this._setMediaCardValues([this._currentGraphic.getObjectId()]); - } - } - //-------------------------------------------------------------------------- // // Methods (public) @@ -161,28 +104,6 @@ export class CardManager { this._cardLoading = false; } - /** - * Query the current graphic for any attachments - */ - protected async _setMediaCardValues( - ids: number[] - ): Promise { - if (this._attachmentsSupported) { - this._attachments = await queryAttachments(this.layerView.layer, ids); - this.mediaCardValues = Object.keys(this._attachments).length > 0 ? ids.reduce((prev, cur) => { - const attachments = this._attachments[cur]; - attachments.forEach(attachment => { - prev.push({ - name: attachment.name, - description: "", - url: attachment.url - }); - }); - return prev; - }, []) : []; - } - } - /** * Get the layer view for the provided layer id */ @@ -192,15 +113,6 @@ export class CardManager { ): Promise { const id: string = evt.detail[0]; this.layerView = await getMapLayerView(this.mapView, id); - this._attachmentsSupported = this._checkAttachmentSupport(); - } - - /** - * Sets the state flag that will open the modal - */ - @Listen("openAddRecord", { target: "window" }) - openAddRecord(): void { - this._addRecordOpen = true; } //-------------------------------------------------------------------------- @@ -222,77 +134,18 @@ export class CardManager { * Renders the component. */ render() { - const infoChecked= this._currentCardType === ECardType.INFO; - const mediaChecked = this._currentCardType === ECardType.MEDIA; - const commentsChecked = this._currentCardType === ECardType.COMMENT; - - const infoCardClass = infoChecked ? "" : "display-none"; - const mediaCardClass = mediaChecked ? "" : "display-none"; - const commentsCardClass = commentsChecked ? "" : "display-none"; const featuresClass = this._graphics?.length > 0 ? "" : "display-none"; const messageClass = this._graphics?.length > 0 ? "display-none" : ""; - const mediaClass = this._attachmentsSupported ? "" : "display-none"; return (
-
- this._setDisplayCard()} - ref={(el) => { this._cardTypeElement = el }} - width="full" - > - - {this._translations.information} - - - {this._translations.information} - - - {this._translations.media} - - - {this._translations.media} - - - {this._translations.comments} - - - {this._translations.comments} - - -
{ this._infoCard = el }} - /> - -
@@ -302,7 +155,6 @@ export class CardManager {
- this._addRecordClosed()} open={this._addRecordOpen} />
); } @@ -313,32 +165,6 @@ export class CardManager { // //-------------------------------------------------------------------------- - /** - * Set the add record open flag when the modal is closed - */ - protected _addRecordClosed(): void { - this._addRecordOpen = false; - } - - /** - * Check the layers capabilities to see if attachments are supported - */ - protected _checkAttachmentSupport(): boolean { - const supportsAttachment = this.layerView.layer?.capabilities?.data?.supportsAttachment; - // Need to talk through this when we meet next week - //const supportsMultiFeaturesAttachment = this.layerView.layer.capabilities.operations.supportsQueryAttachments; - return supportsAttachment; - } - - /** - * Set the current card type to display - * - * @protected - */ - protected _setDisplayCard(): void { - this._currentCardType = this._cardTypeElement.value as ECardType; - } - /** * Fetches the component's translations * diff --git a/src/components/card-manager/readme.md b/src/components/card-manager/readme.md index 9852b365f..1bde5deba 100644 --- a/src/components/card-manager/readme.md +++ b/src/components/card-manager/readme.md @@ -7,11 +7,10 @@ ## Properties -| Property | Attribute | Description | Type | Default | -| ----------------- | --------- | ----------------------------------------------------------------------------------------------------------------------------------------- | -------------------- | ----------- | -| `layerView` | -- | esri/views/layers/FeatureLayerView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-layers-FeatureLayerView.html | `FeatureLayerView` | `undefined` | -| `mapView` | -- | esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html | `MapView` | `undefined` | -| `mediaCardValues` | -- | IMediaCardValues[]: Array of objects that contain the name, description, and image to display | `IMediaCardValues[]` | `[]` | +| Property | Attribute | Description | Type | Default | +| ----------- | --------- | ----------------------------------------------------------------------------------------------------------------------------------------- | ------------------ | ----------- | +| `layerView` | -- | esri/views/layers/FeatureLayerView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-layers-FeatureLayerView.html | `FeatureLayerView` | `undefined` | +| `mapView` | -- | esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html | `MapView` | `undefined` | ## Dependencies @@ -23,28 +22,15 @@ ### Depends on - calcite-shell -- calcite-segmented-control -- calcite-segmented-control-item -- calcite-tooltip - [info-card](../info-card) -- [media-card](../media-card) -- [comment-card](../comment-card) - calcite-notice -- [add-record-modal](../add-record-modal) ### Graph ```mermaid graph TD; card-manager --> calcite-shell - card-manager --> calcite-segmented-control - card-manager --> calcite-segmented-control-item - card-manager --> calcite-tooltip card-manager --> info-card - card-manager --> media-card - card-manager --> comment-card card-manager --> calcite-notice - card-manager --> add-record-modal - calcite-segmented-control-item --> calcite-icon info-card --> calcite-shell info-card --> calcite-loader info-card --> calcite-button @@ -62,21 +48,6 @@ graph TD; calcite-alert --> calcite-icon calcite-alert --> calcite-chip calcite-chip --> calcite-icon - media-card --> calcite-loader - media-card --> calcite-button - media-card --> calcite-shell - media-card --> calcite-label - media-card --> calcite-tooltip - comment-card --> calcite-loader - comment-card --> calcite-shell - comment-card --> calcite-button - comment-card --> calcite-tooltip - add-record-modal --> calcite-modal - add-record-modal --> calcite-label - add-record-modal --> calcite-input - add-record-modal --> calcite-button - calcite-input --> calcite-progress - calcite-input --> calcite-icon crowdsource-manager --> card-manager style card-manager fill:#f9f,stroke:#333,stroke-width:4px ``` diff --git a/src/components/comment-card/readme.md b/src/components/comment-card/readme.md index 8f5b5655a..ee70d4c83 100644 --- a/src/components/comment-card/readme.md +++ b/src/components/comment-card/readme.md @@ -21,10 +21,6 @@ ## Dependencies -### Used by - - - [card-manager](../card-manager) - ### Depends on - calcite-loader @@ -41,7 +37,6 @@ graph TD; comment-card --> calcite-tooltip calcite-button --> calcite-loader calcite-button --> calcite-icon - card-manager --> comment-card style comment-card fill:#f9f,stroke:#333,stroke-width:4px ``` diff --git a/src/components/crowdsource-manager/readme.md b/src/components/crowdsource-manager/readme.md index 048a3ca87..c5da04f0a 100644 --- a/src/components/crowdsource-manager/readme.md +++ b/src/components/crowdsource-manager/readme.md @@ -73,15 +73,8 @@ graph TD; calcite-list-item --> calcite-icon calcite-list-item --> calcite-action card-manager --> calcite-shell - card-manager --> calcite-segmented-control - card-manager --> calcite-segmented-control-item - card-manager --> calcite-tooltip card-manager --> info-card - card-manager --> media-card - card-manager --> comment-card card-manager --> calcite-notice - card-manager --> add-record-modal - calcite-segmented-control-item --> calcite-icon info-card --> calcite-shell info-card --> calcite-loader info-card --> calcite-button @@ -96,19 +89,6 @@ graph TD; calcite-alert --> calcite-icon calcite-alert --> calcite-chip calcite-chip --> calcite-icon - media-card --> calcite-loader - media-card --> calcite-button - media-card --> calcite-shell - media-card --> calcite-label - media-card --> calcite-tooltip - comment-card --> calcite-loader - comment-card --> calcite-shell - comment-card --> calcite-button - comment-card --> calcite-tooltip - add-record-modal --> calcite-modal - add-record-modal --> calcite-label - add-record-modal --> calcite-input - add-record-modal --> calcite-button layer-table --> calcite-shell layer-table --> calcite-panel layer-table --> calcite-loader diff --git a/src/components/media-card/readme.md b/src/components/media-card/readme.md index 2ad93d243..01c4f3c62 100644 --- a/src/components/media-card/readme.md +++ b/src/components/media-card/readme.md @@ -15,10 +15,6 @@ ## Dependencies -### Used by - - - [card-manager](../card-manager) - ### Depends on - calcite-loader @@ -37,7 +33,6 @@ graph TD; media-card --> calcite-tooltip calcite-button --> calcite-loader calcite-button --> calcite-icon - card-manager --> media-card style media-card fill:#f9f,stroke:#333,stroke-width:4px ``` diff --git a/src/utils/interfaces.ts b/src/utils/interfaces.ts index 0291c5f3f..a41295dd3 100644 --- a/src/utils/interfaces.ts +++ b/src/utils/interfaces.ts @@ -19,12 +19,6 @@ import { IItemTemplate } from '@esri/solution-common'; -export enum ECardType { - COMMENT="COMMENT", - INFO="INFO", - MEDIA="MEDIA" -} - export enum EImageDisplayType { GRID="GRID", GALLERY="GALLERY" From 2f8d4313f20b32135cc3d195bf474eb269ab20a3 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Wed, 26 Jul 2023 14:10:30 -0600 Subject: [PATCH 076/406] remove comment card --- src/components/comment-card/comment-card.css | 43 ----- src/components/comment-card/comment-card.tsx | 154 ------------------ src/components/comment-card/readme.md | 45 ----- .../comment-card/test/comment-card.e2e.ts | 27 --- .../comment-card/test/comment-card.spec.tsx | 34 ---- 5 files changed, 303 deletions(-) delete mode 100644 src/components/comment-card/comment-card.css delete mode 100644 src/components/comment-card/comment-card.tsx delete mode 100644 src/components/comment-card/readme.md delete mode 100644 src/components/comment-card/test/comment-card.e2e.ts delete mode 100644 src/components/comment-card/test/comment-card.spec.tsx diff --git a/src/components/comment-card/comment-card.css b/src/components/comment-card/comment-card.css deleted file mode 100644 index 9f9d3f3be..000000000 --- a/src/components/comment-card/comment-card.css +++ /dev/null @@ -1,43 +0,0 @@ -/** @license - * Copyright 2022 Esri - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -:host { - display: block; -} - -.w-100 { - width: 100%; -} - -.background { - background: var(--calcite-ui-foreground-2); -} - -.button-placement { - float: right; - margin-right: 5px; - margin-bottom: 5px; -} - -html[dir="rtl"] .button-placement { - float: left; - margin-left: 5px; - margin-bottom: 5px; -} - -.display-none { - display: none; -} diff --git a/src/components/comment-card/comment-card.tsx b/src/components/comment-card/comment-card.tsx deleted file mode 100644 index 8af42fb4a..000000000 --- a/src/components/comment-card/comment-card.tsx +++ /dev/null @@ -1,154 +0,0 @@ -/** @license - * Copyright 2022 Esri - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import { Component, Element, Event, EventEmitter, Host, h, Prop, State } from "@stencil/core"; -import CommentCard_T9n from "../../assets/t9n/comment-card/resources.json"; -import { getLocaleComponentStrings } from "../../utils/locale"; - -@Component({ - tag: "comment-card", - styleUrl: "comment-card.css", - shadow: true, -}) -export class CommentCard { - //-------------------------------------------------------------------------- - // - // Host element access - // - //-------------------------------------------------------------------------- - @Element() el: HTMLCommentCardElement; - - //-------------------------------------------------------------------------- - // - // Properties (public) - // - //-------------------------------------------------------------------------- - - /** - * boolean: when true a loading indicator will be shown - */ - @Prop() isLoading = false; - - //-------------------------------------------------------------------------- - // - // State (internal) - // - //-------------------------------------------------------------------------- - - /** - * Contains the translations for this component. - * All UI strings should be defined here. - */ - @State() _translations: typeof CommentCard_T9n; - - //-------------------------------------------------------------------------- - // - // Properties (protected) - // - //-------------------------------------------------------------------------- - - //-------------------------------------------------------------------------- - // - // Watch handlers - // - //-------------------------------------------------------------------------- - - //-------------------------------------------------------------------------- - // - // Methods (public) - // - //-------------------------------------------------------------------------- - - //-------------------------------------------------------------------------- - // - // Events (public) - // - //-------------------------------------------------------------------------- - - /** - * Event that will trigger the opening of the add record modal - */ - @Event() openAddRecord: EventEmitter; - - //-------------------------------------------------------------------------- - // - // Functions (lifecycle) - // - //-------------------------------------------------------------------------- - - /** - * StencilJS: Called once just after the component is first connected to the DOM. - * - * @returns Promise when complete - */ - async componentWillLoad(): Promise { - await this._getTranslations(); - } - - /** - * Renders the component. - */ - render() { - const loadingClass = this.isLoading ? "" : "display-none"; - const commentCardClass = this.isLoading ? "display-none" : ""; - return ( - - - - this._addRecord()} - slot="footer" - > - {this._translations.addRecord} - - - {this._translations.addRecord} - - - - ); - } - - //-------------------------------------------------------------------------- - // - // Functions (protected) - // - //-------------------------------------------------------------------------- - - /** - * Emit the open add record event - * - * @returns void - * @protected - */ - protected _addRecord(): void { - this.openAddRecord.emit(); - } - - /** - * Fetches the component's translations - * - * @returns Promise when complete - * @protected - */ - protected async _getTranslations(): Promise { - const messages = await getLocaleComponentStrings(this.el); - this._translations = messages[0] as typeof CommentCard_T9n; - } - -} diff --git a/src/components/comment-card/readme.md b/src/components/comment-card/readme.md deleted file mode 100644 index ee70d4c83..000000000 --- a/src/components/comment-card/readme.md +++ /dev/null @@ -1,45 +0,0 @@ -# comment-card - - - - - - -## Properties - -| Property | Attribute | Description | Type | Default | -| ----------- | ------------ | ---------------------------------------------------- | --------- | ------- | -| `isLoading` | `is-loading` | boolean: when true a loading indicator will be shown | `boolean` | `false` | - - -## Events - -| Event | Description | Type | -| --------------- | ----------------------------------------------------------- | ------------------- | -| `openAddRecord` | Event that will trigger the opening of the add record modal | `CustomEvent` | - - -## Dependencies - -### Depends on - -- calcite-loader -- calcite-shell -- calcite-button -- calcite-tooltip - -### Graph -```mermaid -graph TD; - comment-card --> calcite-loader - comment-card --> calcite-shell - comment-card --> calcite-button - comment-card --> calcite-tooltip - calcite-button --> calcite-loader - calcite-button --> calcite-icon - style comment-card fill:#f9f,stroke:#333,stroke-width:4px -``` - ----------------------------------------------- - -*Built with [StencilJS](https://stenciljs.com/)* diff --git a/src/components/comment-card/test/comment-card.e2e.ts b/src/components/comment-card/test/comment-card.e2e.ts deleted file mode 100644 index 535711269..000000000 --- a/src/components/comment-card/test/comment-card.e2e.ts +++ /dev/null @@ -1,27 +0,0 @@ -/** @license - * Copyright 2022 Esri - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import { newE2EPage } from '@stencil/core/testing'; - -xdescribe('comment-card', () => { - it('renders', async () => { - const page = await newE2EPage(); - await page.setContent(''); - - const element = await page.find('comment-card'); - expect(element).toHaveClass('hydrated'); - }); -}); diff --git a/src/components/comment-card/test/comment-card.spec.tsx b/src/components/comment-card/test/comment-card.spec.tsx deleted file mode 100644 index 32eb16547..000000000 --- a/src/components/comment-card/test/comment-card.spec.tsx +++ /dev/null @@ -1,34 +0,0 @@ -/** @license - * Copyright 2022 Esri - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import { newSpecPage } from '@stencil/core/testing'; -import { CommentCard } from '../comment-card'; - -xdescribe('comment-card', () => { - it('renders', async () => { - const page = await newSpecPage({ - components: [CommentCard], - html: ``, - }); - expect(page.root).toEqualHtml(` - - - - - - `); - }); -}); From db2eab671af4baa2bed94c149546485af33633c4 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Wed, 26 Jul 2023 14:10:57 -0600 Subject: [PATCH 077/406] remove media card --- src/components/media-card/media-card.css | 116 ------ src/components/media-card/media-card.tsx | 343 ------------------ src/components/media-card/readme.md | 41 --- .../media-card/test/media-card.e2e.ts | 27 -- .../media-card/test/media-card.spec.tsx | 34 -- 5 files changed, 561 deletions(-) delete mode 100644 src/components/media-card/media-card.css delete mode 100644 src/components/media-card/media-card.tsx delete mode 100644 src/components/media-card/readme.md delete mode 100644 src/components/media-card/test/media-card.e2e.ts delete mode 100644 src/components/media-card/test/media-card.spec.tsx diff --git a/src/components/media-card/media-card.css b/src/components/media-card/media-card.css deleted file mode 100644 index d534345b3..000000000 --- a/src/components/media-card/media-card.css +++ /dev/null @@ -1,116 +0,0 @@ -/** @license - * Copyright 2022 Esri - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -:host { - display: block; - --calcite-label-margin-bottom: 0; -} - -.padding-bottom-1 { - padding-bottom: 1rem; -} - -.padding-start-1 { - padding-inline-start: 1rem; -} - -.display-flex { - display: flex; -} - -.font-italic { - font-style: italic; -} - -.min-height-50 { - min-height: 50px; -} - -.button-width { - min-width: 120px; -} - -.button-container { - display: flex; - justify-content: space-between; - padding-top: 1rem; -} - -.count-container { - display: flex; - align-items: center; -} - -.image-button-container { - position: absolute; - right: 1rem; - top: 0.25rem; - background-color: var(--calcite-ui-background); - padding: 0.25rem; -} - -html[dir="rtl"] .image-button-container { - position: absolute; - left: 1rem; - top: 0.25rem; - background-color: var(--calcite-ui-background); - padding: 0.25rem; -} - -.padding-right-5 { - padding-right: 0.5rem; -} - -html[dir="rtl"] .padding-right-5 { - padding-left: 0.5rem; -} - -div.image-container { - border: 1px solid var(--calcite-ui-foreground-3); - box-sizing: border-box -} - -div.image-container:hover { - border: 1px solid var(--calcite-ui-brand-hover); -} - -div.image-container img { - width: 100%; - height: 100px; - object-fit: cover; - box-sizing: border-box -} - -.container { - padding: 0px 6px 6px 0px; - float: left; - box-sizing: border-box -} - -html[dir="rtl"] .container { - padding: 0px 0px 6px 6px; - float: right; - box-sizing: border-box -} - -.display-none { - display: none; -} - -.img-overflow-scale { - overflow: hidden; - object-fit: scale-down; -} diff --git a/src/components/media-card/media-card.tsx b/src/components/media-card/media-card.tsx deleted file mode 100644 index c066a5dc5..000000000 --- a/src/components/media-card/media-card.tsx +++ /dev/null @@ -1,343 +0,0 @@ -/** @license - * Copyright 2022 Esri - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import { Component, Element, Host, h, Prop, State, VNode, Watch } from "@stencil/core"; -import MediaCard_T9n from "../../assets/t9n/media-card/resources.json"; -import { getLocaleComponentStrings } from "../../utils/locale"; -import { EImageDisplayType, IMediaCardValues } from "../../utils/interfaces"; - -@Component({ - tag: "media-card", - styleUrl: "media-card.css", - shadow: true, -}) -export class MediaCard { - //-------------------------------------------------------------------------- - // - // Host element access - // - //-------------------------------------------------------------------------- - @Element() el: HTMLMediaCardElement; - - //-------------------------------------------------------------------------- - // - // Properties (public) - // - //-------------------------------------------------------------------------- - - /** - * IMediaCardValues[]: Array of objects that contain the name, description, and image to display - */ - @Prop() values: IMediaCardValues[] = []; - - /** - * boolean: when true a loading indicator will be shown - */ - @Prop() isLoading = false; - - //-------------------------------------------------------------------------- - // - // State (internal) - // - //-------------------------------------------------------------------------- - - /** - * The display type controls how the images will be viewed - */ - @State() _displayType = EImageDisplayType.GALLERY; - - /** - * The index controls what image from values to display - */ - @State() _index = -1; - - /** - * Contains the translations for this component. - * All UI strings should be defined here. - */ - @State() _translations: typeof MediaCard_T9n; - - //-------------------------------------------------------------------------- - // - // Properties (protected) - // - //-------------------------------------------------------------------------- - - //-------------------------------------------------------------------------- - // - // Watch handlers - // - //-------------------------------------------------------------------------- - - /** - * Called each time the values prop is changed. - * Reset the _index value accordingly. - */ - @Watch("values") - geometriesWatchHandler(values: any, oldValues: any): void { - if (values && JSON.stringify(values) !== JSON.stringify(oldValues || [])) { - if (values?.length > 0) { - this._initIndex(); - } else { - this._index = -1; - } - } - } - - //-------------------------------------------------------------------------- - // - // Methods (public) - // - //-------------------------------------------------------------------------- - - //-------------------------------------------------------------------------- - // - // Events (public) - // - //-------------------------------------------------------------------------- - - //-------------------------------------------------------------------------- - // - // Functions (lifecycle) - // - //-------------------------------------------------------------------------- - - /** - * StencilJS: Called once just after the component is first connected to the DOM. - * - * @returns Promise when complete - */ - async componentWillLoad(): Promise { - await this._getTranslations(); - } - - /** - * StencilJS: Called once just after the component is fully loaded and the first render() occurs. - * Using this as the Watch on values does not fire on initial load. - * - * @returns Promise when complete - */ - async componentDidLoad(): Promise { - if (this._index === -1 && this.values?.length > 0) { - this._initIndex(); - } - } - - /** - * Renders the component. - */ - render() { - const loadingClass = this.isLoading ? "" : "display-none"; - const mediaCardClass = this.isLoading ? "display-none" : ""; - return ( - - -
- {this._getImageDisplay()} -
-
- ); - } - - //-------------------------------------------------------------------------- - // - // Functions (protected) - // - //-------------------------------------------------------------------------- - - /** - * Create the buttons that will switch between "GRID" and "GALLERY" display - * - * @protected - */ - protected _getImageButtonContainer() : VNode { - const gridButonApperance = this._displayType === EImageDisplayType.GRID ? "solid" : "outline-fill"; - const galleryButtonApperance = this._displayType === EImageDisplayType.GALLERY ? "solid" : "outline-fill"; - return ( -
- this._setImageDisplay(EImageDisplayType.GRID)} - scale="s" - /> - this._setImageDisplay(EImageDisplayType.GALLERY)} - scale="s" - /> -
- ); - } - - /** - * Render the image view based on the current display type - * - * @protected - */ - protected _getImageDisplay(): VNode { - const toggleButtons = this._getImageButtonContainer(); - return this._displayType === EImageDisplayType.GRID ? - this._getGridDisplay(toggleButtons) : this._getGallerydDisplay(toggleButtons); - } - - /** - * Render the Grid image view - * - * @protected - */ - protected _getGridDisplay( - toggleButtons: VNode - ): VNode { - return ( -
- {toggleButtons} -
- { - this.values.map(v => { - return ( -
-
- - {v.name} - -
-
- ) - }) - } -
-
-
- ); - } - - /** - * Render the Gallery image view - * - * @protected - */ - protected _getGallerydDisplay( - toggleButtons: VNode - ): VNode { - const v = this.values?.length > 0 ? this.values[this._index] : undefined; - const total = (this.values || []).length; - const imgNum = this._index + 1; - return ( - - {toggleButtons} - - - - - {v?.name} - - - - - {v?.description} - - - -
-
- - - {`${imgNum} of ${total}`} - - -
-
- this._decrementIndex()} - >{this._translations.previous} - - - {this._translations.previous} - - this._incrementIndex()} - >{this._translations.next} - - - {this._translations.next} - -
-
-
- ); - } - - /** - * Resets the index to 0 - * - * @protected - */ - protected _initIndex(): void { - this._index = 0; - } - - /** - * Adds 1 to the current index - * - * @protected - */ - protected _incrementIndex(): void { - this._index += 1; - } - - /** - * Subtracts 1 from the current index - * - * @protected - */ - protected _decrementIndex(): void { - this._index -= 1; - } - - /** - * Store the current display type - * - * @protected - */ - protected _setImageDisplay( - displayType: EImageDisplayType - ): void { - this._displayType = displayType; - } - - /** - * Fetches the component's translations - * - * @returns Promise when complete - * @protected - */ - protected async _getTranslations(): Promise { - const messages = await getLocaleComponentStrings(this.el); - this._translations = messages[0] as typeof MediaCard_T9n; - } - -} diff --git a/src/components/media-card/readme.md b/src/components/media-card/readme.md deleted file mode 100644 index 01c4f3c62..000000000 --- a/src/components/media-card/readme.md +++ /dev/null @@ -1,41 +0,0 @@ -# media-card - - - - - - -## Properties - -| Property | Attribute | Description | Type | Default | -| ----------- | ------------ | --------------------------------------------------------------------------------------------- | -------------------- | ------- | -| `isLoading` | `is-loading` | boolean: when true a loading indicator will be shown | `boolean` | `false` | -| `values` | -- | IMediaCardValues[]: Array of objects that contain the name, description, and image to display | `IMediaCardValues[]` | `[]` | - - -## Dependencies - -### Depends on - -- calcite-loader -- calcite-button -- calcite-shell -- calcite-label -- calcite-tooltip - -### Graph -```mermaid -graph TD; - media-card --> calcite-loader - media-card --> calcite-button - media-card --> calcite-shell - media-card --> calcite-label - media-card --> calcite-tooltip - calcite-button --> calcite-loader - calcite-button --> calcite-icon - style media-card fill:#f9f,stroke:#333,stroke-width:4px -``` - ----------------------------------------------- - -*Built with [StencilJS](https://stenciljs.com/)* diff --git a/src/components/media-card/test/media-card.e2e.ts b/src/components/media-card/test/media-card.e2e.ts deleted file mode 100644 index 58b64ec5f..000000000 --- a/src/components/media-card/test/media-card.e2e.ts +++ /dev/null @@ -1,27 +0,0 @@ -/** @license - * Copyright 2022 Esri - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import { newE2EPage } from '@stencil/core/testing'; - -xdescribe('media-card', () => { - it('renders', async () => { - const page = await newE2EPage(); - await page.setContent(''); - - const element = await page.find('media-card'); - expect(element).toHaveClass('hydrated'); - }); -}); diff --git a/src/components/media-card/test/media-card.spec.tsx b/src/components/media-card/test/media-card.spec.tsx deleted file mode 100644 index a03ff5871..000000000 --- a/src/components/media-card/test/media-card.spec.tsx +++ /dev/null @@ -1,34 +0,0 @@ -/** @license - * Copyright 2022 Esri - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import { newSpecPage } from '@stencil/core/testing'; -import { MediaCard } from '../media-card'; - -xdescribe('media-card', () => { - it('renders', async () => { - const page = await newSpecPage({ - components: [MediaCard], - html: ``, - }); - expect(page.root).toEqualHtml(` - - - - - - `); - }); -}); From 3395faa1d84879fe5a9d36bda387d617d9afa2d6 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Wed, 26 Jul 2023 14:11:34 -0600 Subject: [PATCH 078/406] remove add record modal --- .../add-record-modal/add-record-modal.css | 36 --- .../add-record-modal/add-record-modal.tsx | 265 ------------------ src/components/add-record-modal/readme.md | 51 ---- .../test/add-record-modal.e2e.ts | 27 -- .../test/add-record-modal.spec.tsx | 34 --- 5 files changed, 413 deletions(-) delete mode 100644 src/components/add-record-modal/add-record-modal.css delete mode 100644 src/components/add-record-modal/add-record-modal.tsx delete mode 100644 src/components/add-record-modal/readme.md delete mode 100644 src/components/add-record-modal/test/add-record-modal.e2e.ts delete mode 100644 src/components/add-record-modal/test/add-record-modal.spec.tsx diff --git a/src/components/add-record-modal/add-record-modal.css b/src/components/add-record-modal/add-record-modal.css deleted file mode 100644 index fa6f96ed8..000000000 --- a/src/components/add-record-modal/add-record-modal.css +++ /dev/null @@ -1,36 +0,0 @@ -/** @license - * Copyright 2022 Esri - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -:host { - display: block; - --calcite-label-margin-bottom: 0px; -} - -.padding-bottom-1 { - padding-bottom: 1rem; -} - -.font-bold { - font-weight: bold; -} - -.font-500 { - font-weight: 500; -} - -.display-none { - display: none; -} diff --git a/src/components/add-record-modal/add-record-modal.tsx b/src/components/add-record-modal/add-record-modal.tsx deleted file mode 100644 index 120da9803..000000000 --- a/src/components/add-record-modal/add-record-modal.tsx +++ /dev/null @@ -1,265 +0,0 @@ -/** @license - * Copyright 2022 Esri - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import { Component, Element, Event, EventEmitter, Host, h, Prop, State } from "@stencil/core"; -import AddRecordModal_T9n from "../../assets/t9n/add-record-modal/resources.json"; -import { getLocaleComponentStrings } from "../../utils/locale"; - -// TODO implement save logic - -@Component({ - tag: "add-record-modal", - styleUrl: "add-record-modal.css", - shadow: true, -}) -export class AddRecordModal { - //-------------------------------------------------------------------------- - // - // Host element access - // - //-------------------------------------------------------------------------- - @Element() el: HTMLAddRecordModalElement; - - //-------------------------------------------------------------------------- - // - // Properties (public) - // - //-------------------------------------------------------------------------- - - /** - * When true the component is displayed - */ - @Prop({ mutable: true, reflect: true }) open = false; - - //-------------------------------------------------------------------------- - // - // State (internal) - // - //-------------------------------------------------------------------------- - - /** - * Contains the translations for this component. - * All UI strings should be defined here. - */ - @State() _translations: typeof AddRecordModal_T9n; - - //-------------------------------------------------------------------------- - // - // Properties (protected) - // - //-------------------------------------------------------------------------- - - /** - * Handle to the element for browsing for a file. - */ - protected _browseForAttachment: HTMLInputElement; - - //-------------------------------------------------------------------------- - // - // Watch handlers - // - //-------------------------------------------------------------------------- - - //-------------------------------------------------------------------------- - // - // Methods (public) - // - //-------------------------------------------------------------------------- - - //-------------------------------------------------------------------------- - // - // Events (public) - // - //-------------------------------------------------------------------------- - - /** - * Emitted on demand the modal is closed - */ - @Event() modalClosed: EventEmitter; - - /** - * Emitted on demand the modal is opened - */ - @Event() modalOpened: EventEmitter; - - //-------------------------------------------------------------------------- - // - // Functions (lifecycle) - // - //-------------------------------------------------------------------------- - - /** - * StencilJS: Called once just after the component is first connected to the DOM. - * - * @returns Promise when complete - */ - async componentWillLoad(): Promise { - await this._getTranslations(); - } - - /** - * Renders the component. - */ - render() { - return ( - -
- this._modalClose()} - onCalciteModalOpen={() => this._modalOpen()} - open={this.open} - outsideCloseDisabled={true} - width="s" - > -
- {this._translations.addRecord} -
-
-
-
- - {this._translations.source} - - -
-
- - {this._translations.publicView} - - -
-
- - {this._translations.attachments} - {/* TODO the design has this smaller with rounded border. - Can't quite get that with calcite from what I see...look more or go custom */} -
- (this._updateAttachment(event))} - ref={(el) => (this._browseForAttachment = el)} - type="file" - /> - this._browse()} - width="auto"> - {this._translations.browse} - -
-
-
-
-
- this._cancel()} - slot="secondary" - width="full" - > - {this._translations.cancel} - - this._save()} - slot="primary" - width="full" - > - {this._translations.save} - -
-
-
- ); - } - - //-------------------------------------------------------------------------- - // - // Functions (protected) - // - //-------------------------------------------------------------------------- - - /** - * Opens the browse dialog - * - * @returns void - */ - protected _browse(): void { - this._browseForAttachment.click(); - } - - /** - * Closes the modal - * - * @returns void - */ - protected _cancel(): void { - this.open = false; - } - - // TODO needs to be implemented will handle save of the record - protected _save(): void { - this.open = false; - } - - /** - * Emit the modal close event - * - * @returns void - */ - protected _modalClose(): void { - this.modalClosed.emit(); - } - - /** - * Emit the modal open event - * - * @returns void - */ - protected _modalOpen(): void { - this.modalOpened.emit(); - } - - /** - * Gets the result file from browse - * - * @param event The input controls event that contains the new file - */ - protected _updateAttachment( - event: any - ): void { - const files = event.target.files; - if (files && files[0]) { - console.log(files[0]); - } - } - - /** - * Fetches the component's translations - * - * @returns Promise when complete - * @protected - */ - protected async _getTranslations(): Promise { - const messages = await getLocaleComponentStrings(this.el); - this._translations = messages[0] as typeof AddRecordModal_T9n; - } - -} diff --git a/src/components/add-record-modal/readme.md b/src/components/add-record-modal/readme.md deleted file mode 100644 index 660401e3f..000000000 --- a/src/components/add-record-modal/readme.md +++ /dev/null @@ -1,51 +0,0 @@ -# add-record-modal - - - - - - -## Properties - -| Property | Attribute | Description | Type | Default | -| -------- | --------- | ------------------------------------ | --------- | ------- | -| `open` | `open` | When true the component is displayed | `boolean` | `false` | - - -## Events - -| Event | Description | Type | -| ------------- | ------------------------------------- | ------------------- | -| `modalClosed` | Emitted on demand the modal is closed | `CustomEvent` | -| `modalOpened` | Emitted on demand the modal is opened | `CustomEvent` | - - -## Dependencies - -### Depends on - -- calcite-modal -- calcite-label -- calcite-input -- calcite-button - -### Graph -```mermaid -graph TD; - add-record-modal --> calcite-modal - add-record-modal --> calcite-label - add-record-modal --> calcite-input - add-record-modal --> calcite-button - calcite-modal --> calcite-scrim - calcite-modal --> calcite-icon - calcite-scrim --> calcite-loader - calcite-input --> calcite-progress - calcite-input --> calcite-icon - calcite-button --> calcite-loader - calcite-button --> calcite-icon - style add-record-modal fill:#f9f,stroke:#333,stroke-width:4px -``` - ----------------------------------------------- - -*Built with [StencilJS](https://stenciljs.com/)* diff --git a/src/components/add-record-modal/test/add-record-modal.e2e.ts b/src/components/add-record-modal/test/add-record-modal.e2e.ts deleted file mode 100644 index 51ba54027..000000000 --- a/src/components/add-record-modal/test/add-record-modal.e2e.ts +++ /dev/null @@ -1,27 +0,0 @@ -/** @license - * Copyright 2022 Esri - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import { newE2EPage } from '@stencil/core/testing'; - -xdescribe('add-record-modal', () => { - it('renders', async () => { - const page = await newE2EPage(); - await page.setContent(''); - - const element = await page.find('add-record-modal'); - expect(element).toHaveClass('hydrated'); - }); -}); diff --git a/src/components/add-record-modal/test/add-record-modal.spec.tsx b/src/components/add-record-modal/test/add-record-modal.spec.tsx deleted file mode 100644 index bbeaac16a..000000000 --- a/src/components/add-record-modal/test/add-record-modal.spec.tsx +++ /dev/null @@ -1,34 +0,0 @@ -/** @license - * Copyright 2022 Esri - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import { newSpecPage } from '@stencil/core/testing'; -import { AddRecordModal } from '../add-record-modal'; - -xdescribe('add-record-modal', () => { - it('renders', async () => { - const page = await newSpecPage({ - components: [AddRecordModal], - html: ``, - }); - expect(page.root).toEqualHtml(` - - - - - - `); - }); -}); From 5c944c0a4452ff3f3fe040882a266e0c49e7318f Mon Sep 17 00:00:00 2001 From: John Hauck Date: Wed, 26 Jul 2023 14:12:18 -0600 Subject: [PATCH 079/406] remove map-search --- src/components/map-search/map-search.css | 24 -- src/components/map-search/map-search.tsx | 285 ------------------ src/components/map-search/readme.md | 38 --- .../map-search/test/map-search.e2e.ts | 27 -- .../map-search/test/map-search.spec.tsx | 62 ---- 5 files changed, 436 deletions(-) delete mode 100644 src/components/map-search/map-search.css delete mode 100644 src/components/map-search/map-search.tsx delete mode 100644 src/components/map-search/readme.md delete mode 100644 src/components/map-search/test/map-search.e2e.ts delete mode 100644 src/components/map-search/test/map-search.spec.tsx diff --git a/src/components/map-search/map-search.css b/src/components/map-search/map-search.css deleted file mode 100644 index 2858e8618..000000000 --- a/src/components/map-search/map-search.css +++ /dev/null @@ -1,24 +0,0 @@ -/** @license - * Copyright 2022 Esri - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -:host { - display: block; -} - -.search-widget { - width: 100% !important; - border: 1px solid var(--calcite-ui-border-input); -} diff --git a/src/components/map-search/map-search.tsx b/src/components/map-search/map-search.tsx deleted file mode 100644 index ccc720c8a..000000000 --- a/src/components/map-search/map-search.tsx +++ /dev/null @@ -1,285 +0,0 @@ -/** @license - * Copyright 2022 Esri - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import { Component, Element, Event, EventEmitter, Host, h, Method, Prop, State, VNode } from "@stencil/core"; -import { loadModules } from "../../utils/loadModules"; -import { ILayerSourceConfigItem, ILocatorSourceConfigItem, ISearchConfiguration, ISearchResult } from "../../utils/interfaces"; -import MapSearch_T9n from "../../assets/t9n/map-search/resources.json"; -import { getLocaleComponentStrings } from "../../utils/locale"; - -@Component({ - tag: "map-search", - styleUrl: "map-search.css", - shadow: false, -}) -export class MapSearch { - //-------------------------------------------------------------------------- - // - // Host element access - // - //-------------------------------------------------------------------------- - @Element() el: HTMLElement; - - //-------------------------------------------------------------------------- - // - // Properties (public) - // - //-------------------------------------------------------------------------- - - /** - * esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html - */ - @Prop() mapView: __esri.MapView; - - /** - * ISearchConfiguration: Configuration details for the Search widget - */ - @Prop({mutable: true}) searchConfiguration: ISearchConfiguration; - - //-------------------------------------------------------------------------- - // - // State (internal) - // - //-------------------------------------------------------------------------- - - /** - * string: Text entered by the end user. - * Used to search against the locator. - */ - @State() _searchTerm: string; - - /** - * Contains the translations for this component. - * All UI strings should be defined here. - */ - @State() protected _translations: typeof MapSearch_T9n; - - //-------------------------------------------------------------------------- - // - // Properties (protected) - // - //-------------------------------------------------------------------------- - - /** - * esri/layers/FeatureLayer: https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html - */ - protected FeatureLayer: typeof import("esri/layers/FeatureLayer"); - - /** - * esri/widgets/Search: https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Search.html - */ - protected Search: typeof import("esri/widgets/Search"); - - /** - * HTMLElement: The container div for the search widget - */ - protected _searchElement: HTMLElement; - - /** - * esri/widgets/Search: https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Search.html - */ - protected _searchWidget: __esri.widgetsSearch; - - /** - * An array of objects representing the results of search - */ - protected _searchResult: any; - - //-------------------------------------------------------------------------- - // - // Watch handlers - // - //-------------------------------------------------------------------------- - - //-------------------------------------------------------------------------- - // - // Methods (public) - // - //-------------------------------------------------------------------------- - - /** - * Clears the state of the search widget - * - * @returns Promise that resolves when the operation is complete - */ - @Method() - async clear(): Promise { - this._searchWidget.clear(); - } - - //-------------------------------------------------------------------------- - // - // Events (public) - // - //-------------------------------------------------------------------------- - - /** - * Emitted on demand when the status of the search widget changes - * - */ - @Event() searchChange: EventEmitter; - - //-------------------------------------------------------------------------- - // - // Functions (lifecycle) - // - //-------------------------------------------------------------------------- - - /** - * StencilJS: Called once just after the component is first connected to the DOM. - * - * @returns Promise when complete - */ - async componentWillLoad(): Promise { - await this._getTranslations(); - await this._initModules(); - } - - /** - * StencilJS: Called once just after the component is fully loaded and the first render() occurs. - */ - componentDidLoad(): void { - this._init(); - } - - /** - * Renders the component. - */ - render(): VNode { - return ( - -
{ this._searchElement = el }} /> - - ); - } - - //-------------------------------------------------------------------------- - // - // Functions (protected) - // - //-------------------------------------------------------------------------- - - /** - * Load esri javascript api modules - * - * @returns Promise resolving when function is done - * - * @protected - */ - protected async _initModules(): Promise { - const [Search, FeatureLayer] = await loadModules([ - "esri/widgets/Search", - "esri/layers/FeatureLayer" - ]); - this.Search = Search; - this.FeatureLayer = FeatureLayer; - } - - /** - * Initialize the search widget - * - * @returns Promise resolving when function is done - */ - protected _init(): void { - this._initSearchWidget(); - } - - /** - * Initialize the search widget and listen to key events - * - * @protected - */ - protected _initSearchWidget(): void { - if (this.mapView && this._searchElement) { - const searchConfiguration = this._getSearchConfig(this.searchConfiguration, this.mapView); - - const searchOptions: __esri.widgetsSearchProperties = { - view: this.mapView, - container: this._searchElement, - searchTerm: this._searchTerm, - ...searchConfiguration - }; - - this._searchWidget = new this.Search(searchOptions); - - this._searchWidget.on("search-clear", () => { - this._searchResult = undefined; - this.searchChange.emit(this._searchResult); - }); - - this._searchWidget.on("select-result", (searchResults) => { - this._searchResult = undefined; - if (searchResults.result) { - this._searchResult = searchResults.result; - this.searchChange.emit({ - graphics: [searchResults.result.feature], - name: searchResults.result.name || "" - }); - } - }); - } - } - - /** - * Initialize the search widget based on user defined configuration - * - * @param searchConfiguration search configuration defined by the user - * @param view the current map view - * - * @protected - */ - protected _getSearchConfig( - searchConfiguration: ISearchConfiguration, - view: __esri.MapView - ): ISearchConfiguration { - const sources = searchConfiguration?.sources; - if (sources) { - sources.forEach(source => { - const isLayerSource = source.hasOwnProperty("layer"); - if (isLayerSource) { - const layerSource = source as ILayerSourceConfigItem; - const layerFromMap = layerSource.layer?.id - ? view.map.findLayerById(layerSource.layer.id) - : null; - if (layerFromMap) { - layerSource.layer = layerFromMap as __esri.FeatureLayer; - } else if (layerSource?.layer?.url) { - layerSource.layer = new this.FeatureLayer(layerSource?.layer?.url as any); - } - } - }); - } - searchConfiguration?.sources?.forEach(source => { - const isLocatorSource = source.hasOwnProperty("locator"); - if (isLocatorSource) { - const locatorSource = source as ILocatorSourceConfigItem; - locatorSource.url = locatorSource.url; - delete locatorSource.url; - } - }); - return searchConfiguration; - } - - /** - * Fetches the component's translations - * - * @protected - */ - protected async _getTranslations(): Promise { - const translations = await getLocaleComponentStrings(this.el); - this._translations = translations[0] as typeof MapSearch_T9n; - } -} diff --git a/src/components/map-search/readme.md b/src/components/map-search/readme.md deleted file mode 100644 index 3d2160063..000000000 --- a/src/components/map-search/readme.md +++ /dev/null @@ -1,38 +0,0 @@ -# map-search - - - - - - -## Properties - -| Property | Attribute | Description | Type | Default | -| --------------------- | --------- | --------------------------------------------------------------------------------------------------------- | ---------------------- | ----------- | -| `mapView` | -- | esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html | `MapView` | `undefined` | -| `searchConfiguration` | -- | ISearchConfiguration: Configuration details for the Search widget | `ISearchConfiguration` | `undefined` | - - -## Events - -| Event | Description | Type | -| -------------- | -------------------------------------------------------------- | ---------------------------- | -| `searchChange` | Emitted on demand when the status of the search widget changes | `CustomEvent` | - - -## Methods - -### `clear() => Promise` - -Clears the state of the search widget - -#### Returns - -Type: `Promise` - -Promise that resolves when the operation is complete - - ----------------------------------------------- - -*Built with [StencilJS](https://stenciljs.com/)* diff --git a/src/components/map-search/test/map-search.e2e.ts b/src/components/map-search/test/map-search.e2e.ts deleted file mode 100644 index ff697ad5a..000000000 --- a/src/components/map-search/test/map-search.e2e.ts +++ /dev/null @@ -1,27 +0,0 @@ -/** @license - * Copyright 2022 Esri - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import { newE2EPage } from '@stencil/core/testing'; - -xdescribe('map-search', () => { - it('renders', async () => { - const page = await newE2EPage(); - await page.setContent(''); - - const element = await page.find('map-search'); - expect(element).toHaveClass('hydrated'); - }); -}); diff --git a/src/components/map-search/test/map-search.spec.tsx b/src/components/map-search/test/map-search.spec.tsx deleted file mode 100644 index af0a9e267..000000000 --- a/src/components/map-search/test/map-search.spec.tsx +++ /dev/null @@ -1,62 +0,0 @@ -/** @license - * Copyright 2022 Esri - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import { h } from '@stencil/core'; -import { newSpecPage } from '@stencil/core/testing'; -import { MapSearch } from '../map-search'; -import * as locale from "../../../utils/locale"; -import * as translations from "../../../assets/t9n/map-search/resources.json"; - -jest.setTimeout(30000); - -afterEach(() => { - jest.restoreAllMocks(); -}); - -let mapView; - -beforeEach(() => { - jest.spyOn(locale, "getLocaleComponentStrings").mockImplementation(() => [ - translations - ] as any); - - mapView = { - map: { - layers: { - add: () => {}, - getItemAt: () => { return -1 }, - findIndex: () => { return -1 } - } - } - } as unknown as any; -}); - -describe('map-search', () => { - xit('renders', async () => { - const page = await newSpecPage({ - components: [MapSearch], - template: () => (), - }); - expect(page.root).toEqualHtml(` - -
-
- `); - - await page.root.clear(); - - }); -}); From cf780885d8c898fd0b9ef8fd69f9d6e3d5b02251 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Wed, 26 Jul 2023 14:13:02 -0600 Subject: [PATCH 080/406] remove demos --- src/demos/add-record-modal.html | 34 ---------- src/demos/comment-card.html | 81 ------------------------ src/demos/map-search.html | 81 ------------------------ src/demos/media-card.html | 107 -------------------------------- 4 files changed, 303 deletions(-) delete mode 100644 src/demos/add-record-modal.html delete mode 100644 src/demos/comment-card.html delete mode 100644 src/demos/map-search.html delete mode 100644 src/demos/media-card.html diff --git a/src/demos/add-record-modal.html b/src/demos/add-record-modal.html deleted file mode 100644 index 4c9156723..000000000 --- a/src/demos/add-record-modal.html +++ /dev/null @@ -1,34 +0,0 @@ - - - - - Add Record Modal - - - - - - - - - - - - diff --git a/src/demos/comment-card.html b/src/demos/comment-card.html deleted file mode 100644 index a14901155..000000000 --- a/src/demos/comment-card.html +++ /dev/null @@ -1,81 +0,0 @@ - - - - - Comment Card - - - - - - - - - - - - - - - - -
- - - diff --git a/src/demos/map-search.html b/src/demos/map-search.html deleted file mode 100644 index 7ac47de46..000000000 --- a/src/demos/map-search.html +++ /dev/null @@ -1,81 +0,0 @@ - - - - - Map Search - - - - - - - - - - - - - -
- - - diff --git a/src/demos/media-card.html b/src/demos/media-card.html deleted file mode 100644 index 9f3caa677..000000000 --- a/src/demos/media-card.html +++ /dev/null @@ -1,107 +0,0 @@ - - - - - Media Card - - - - - - - - - - - - - - - - From 4de3b1adc4c39286e2bf907eda92f333479581dc Mon Sep 17 00:00:00 2001 From: John Hauck Date: Wed, 26 Jul 2023 14:16:24 -0600 Subject: [PATCH 081/406] update components.d.ts --- src/components.d.ts | 135 +------------------------------------------- 1 file changed, 1 insertion(+), 134 deletions(-) diff --git a/src/components.d.ts b/src/components.d.ts index ef40a29a3..d2eab99c5 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -5,15 +5,9 @@ * It contains typing information for all components that exist in this project. */ import { HTMLStencilElement, JSXBase } from "@stencil/core/internal"; -import { DistanceUnit, EDrawMode, EExpandType, IExportInfos, IInventoryItem, IMapInfo, IMediaCardValues, ISearchConfiguration, ISearchResult, ISelectionSet, ISketchGraphicsChange, ISolutionSpatialReferenceInfo, ISpatialRefRepresentation, IValueChange } from "./utils/interfaces"; +import { DistanceUnit, EDrawMode, EExpandType, IExportInfos, IInventoryItem, IMapInfo, ISearchConfiguration, ISelectionSet, ISketchGraphicsChange, ISolutionSpatialReferenceInfo, ISpatialRefRepresentation, IValueChange } from "./utils/interfaces"; import { UserSession } from "@esri/solution-common"; export namespace Components { - interface AddRecordModal { - /** - * When true the component is displayed - */ - "open": boolean; - } interface BufferTools { /** * string: The appearance of display. Can be a "slider" or "text" inputs for distance/value @@ -59,12 +53,6 @@ export namespace Components { */ "mapView": __esri.MapView; } - interface CommentCard { - /** - * boolean: when true a loading indicator will be shown - */ - "isLoading": boolean; - } interface CrowdsourceManager { /** * IMapInfo[]: array of map infos (name and id) @@ -255,21 +243,6 @@ export namespace Components { */ "type": "select" | "combobox" | "dropdown"; } - interface MapSearch { - /** - * Clears the state of the search widget - * @returns Promise that resolves when the operation is complete - */ - "clear": () => Promise; - /** - * esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html - */ - "mapView": __esri.MapView; - /** - * ISearchConfiguration: Configuration details for the Search widget - */ - "searchConfiguration": ISearchConfiguration; - } interface MapSelectTools { /** * string | number[] | object with r, g, b, a: https://developers.arcgis.com/javascript/latest/api-reference/esri-Color.html @@ -361,16 +334,6 @@ export namespace Components { */ "mapView": __esri.MapView; } - interface MediaCard { - /** - * boolean: when true a loading indicator will be shown - */ - "isLoading": boolean; - /** - * IMediaCardValues[]: Array of objects that contain the name, description, and image to display - */ - "values": IMediaCardValues[]; - } interface PciCalculator { } interface PdfDownload { @@ -659,18 +622,10 @@ export namespace Components { "value": string; } } -export interface AddRecordModalCustomEvent extends CustomEvent { - detail: T; - target: HTMLAddRecordModalElement; -} export interface BufferToolsCustomEvent extends CustomEvent { detail: T; target: HTMLBufferToolsElement; } -export interface CommentCardCustomEvent extends CustomEvent { - detail: T; - target: HTMLCommentCardElement; -} export interface DeductCalculatorCustomEvent extends CustomEvent { detail: T; target: HTMLDeductCalculatorElement; @@ -695,10 +650,6 @@ export interface MapLayerPickerCustomEvent extends CustomEvent { detail: T; target: HTMLMapLayerPickerElement; } -export interface MapSearchCustomEvent extends CustomEvent { - detail: T; - target: HTMLMapSearchElement; -} export interface MapSelectToolsCustomEvent extends CustomEvent { detail: T; target: HTMLMapSelectToolsElement; @@ -736,12 +687,6 @@ export interface StoreManagerCustomEvent extends CustomEvent { target: HTMLStoreManagerElement; } declare global { - interface HTMLAddRecordModalElement extends Components.AddRecordModal, HTMLStencilElement { - } - var HTMLAddRecordModalElement: { - prototype: HTMLAddRecordModalElement; - new (): HTMLAddRecordModalElement; - }; interface HTMLBufferToolsElement extends Components.BufferTools, HTMLStencilElement { } var HTMLBufferToolsElement: { @@ -754,12 +699,6 @@ declare global { prototype: HTMLCardManagerElement; new (): HTMLCardManagerElement; }; - interface HTMLCommentCardElement extends Components.CommentCard, HTMLStencilElement { - } - var HTMLCommentCardElement: { - prototype: HTMLCommentCardElement; - new (): HTMLCommentCardElement; - }; interface HTMLCrowdsourceManagerElement extends Components.CrowdsourceManager, HTMLStencilElement { } var HTMLCrowdsourceManagerElement: { @@ -826,12 +765,6 @@ declare global { prototype: HTMLMapLayerPickerElement; new (): HTMLMapLayerPickerElement; }; - interface HTMLMapSearchElement extends Components.MapSearch, HTMLStencilElement { - } - var HTMLMapSearchElement: { - prototype: HTMLMapSearchElement; - new (): HTMLMapSearchElement; - }; interface HTMLMapSelectToolsElement extends Components.MapSelectTools, HTMLStencilElement { } var HTMLMapSelectToolsElement: { @@ -844,12 +777,6 @@ declare global { prototype: HTMLMapToolsElement; new (): HTMLMapToolsElement; }; - interface HTMLMediaCardElement extends Components.MediaCard, HTMLStencilElement { - } - var HTMLMediaCardElement: { - prototype: HTMLMediaCardElement; - new (): HTMLMediaCardElement; - }; interface HTMLPciCalculatorElement extends Components.PciCalculator, HTMLStencilElement { } var HTMLPciCalculatorElement: { @@ -947,10 +874,8 @@ declare global { new (): HTMLStoreManagerElement; }; interface HTMLElementTagNameMap { - "add-record-modal": HTMLAddRecordModalElement; "buffer-tools": HTMLBufferToolsElement; "card-manager": HTMLCardManagerElement; - "comment-card": HTMLCommentCardElement; "crowdsource-manager": HTMLCrowdsourceManagerElement; "crowdsource-reporter": HTMLCrowdsourceReporterElement; "deduct-calculator": HTMLDeductCalculatorElement; @@ -962,10 +887,8 @@ declare global { "map-card": HTMLMapCardElement; "map-draw-tools": HTMLMapDrawToolsElement; "map-layer-picker": HTMLMapLayerPickerElement; - "map-search": HTMLMapSearchElement; "map-select-tools": HTMLMapSelectToolsElement; "map-tools": HTMLMapToolsElement; - "media-card": HTMLMediaCardElement; "pci-calculator": HTMLPciCalculatorElement; "pdf-download": HTMLPdfDownloadElement; "public-notification": HTMLPublicNotificationElement; @@ -985,20 +908,6 @@ declare global { } } declare namespace LocalJSX { - interface AddRecordModal { - /** - * Emitted on demand the modal is closed - */ - "onModalClosed"?: (event: AddRecordModalCustomEvent) => void; - /** - * Emitted on demand the modal is opened - */ - "onModalOpened"?: (event: AddRecordModalCustomEvent) => void; - /** - * When true the component is displayed - */ - "open"?: boolean; - } interface BufferTools { /** * string: The appearance of display. Can be a "slider" or "text" inputs for distance/value @@ -1056,16 +965,6 @@ declare namespace LocalJSX { */ "mapView"?: __esri.MapView; } - interface CommentCard { - /** - * boolean: when true a loading indicator will be shown - */ - "isLoading"?: boolean; - /** - * Event that will trigger the opening of the add record modal - */ - "onOpenAddRecord"?: (event: CommentCardCustomEvent) => void; - } interface CrowdsourceManager { /** * IMapInfo[]: array of map infos (name and id) @@ -1256,20 +1155,6 @@ declare namespace LocalJSX { */ "type"?: "select" | "combobox" | "dropdown"; } - interface MapSearch { - /** - * esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html - */ - "mapView"?: __esri.MapView; - /** - * Emitted on demand when the status of the search widget changes - */ - "onSearchChange"?: (event: MapSearchCustomEvent) => void; - /** - * ISearchConfiguration: Configuration details for the Search widget - */ - "searchConfiguration"?: ISearchConfiguration; - } interface MapSelectTools { /** * string | number[] | object with r, g, b, a: https://developers.arcgis.com/javascript/latest/api-reference/esri-Color.html @@ -1359,16 +1244,6 @@ declare namespace LocalJSX { */ "onExpandMap"?: (event: MapToolsCustomEvent) => void; } - interface MediaCard { - /** - * boolean: when true a loading indicator will be shown - */ - "isLoading"?: boolean; - /** - * IMediaCardValues[]: Array of objects that contain the name, description, and image to display - */ - "values"?: IMediaCardValues[]; - } interface PciCalculator { } interface PdfDownload { @@ -1637,10 +1512,8 @@ declare namespace LocalJSX { "value"?: string; } interface IntrinsicElements { - "add-record-modal": AddRecordModal; "buffer-tools": BufferTools; "card-manager": CardManager; - "comment-card": CommentCard; "crowdsource-manager": CrowdsourceManager; "crowdsource-reporter": CrowdsourceReporter; "deduct-calculator": DeductCalculator; @@ -1652,10 +1525,8 @@ declare namespace LocalJSX { "map-card": MapCard; "map-draw-tools": MapDrawTools; "map-layer-picker": MapLayerPicker; - "map-search": MapSearch; "map-select-tools": MapSelectTools; "map-tools": MapTools; - "media-card": MediaCard; "pci-calculator": PciCalculator; "pdf-download": PdfDownload; "public-notification": PublicNotification; @@ -1678,10 +1549,8 @@ export { LocalJSX as JSX }; declare module "@stencil/core" { export namespace JSX { interface IntrinsicElements { - "add-record-modal": LocalJSX.AddRecordModal & JSXBase.HTMLAttributes; "buffer-tools": LocalJSX.BufferTools & JSXBase.HTMLAttributes; "card-manager": LocalJSX.CardManager & JSXBase.HTMLAttributes; - "comment-card": LocalJSX.CommentCard & JSXBase.HTMLAttributes; "crowdsource-manager": LocalJSX.CrowdsourceManager & JSXBase.HTMLAttributes; "crowdsource-reporter": LocalJSX.CrowdsourceReporter & JSXBase.HTMLAttributes; "deduct-calculator": LocalJSX.DeductCalculator & JSXBase.HTMLAttributes; @@ -1693,10 +1562,8 @@ declare module "@stencil/core" { "map-card": LocalJSX.MapCard & JSXBase.HTMLAttributes; "map-draw-tools": LocalJSX.MapDrawTools & JSXBase.HTMLAttributes; "map-layer-picker": LocalJSX.MapLayerPicker & JSXBase.HTMLAttributes; - "map-search": LocalJSX.MapSearch & JSXBase.HTMLAttributes; "map-select-tools": LocalJSX.MapSelectTools & JSXBase.HTMLAttributes; "map-tools": LocalJSX.MapTools & JSXBase.HTMLAttributes; - "media-card": LocalJSX.MediaCard & JSXBase.HTMLAttributes; "pci-calculator": LocalJSX.PciCalculator & JSXBase.HTMLAttributes; "pdf-download": LocalJSX.PdfDownload & JSXBase.HTMLAttributes; "public-notification": LocalJSX.PublicNotification & JSXBase.HTMLAttributes; From 3ef9f4a4e94720002db3718275ae80bf57370ff7 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Thu, 27 Jul 2023 16:08:38 -0600 Subject: [PATCH 082/406] move edit from modal --- src/components.d.ts | 8 +- src/components/card-manager/readme.md | 4 - src/components/crowdsource-manager/readme.md | 3 - .../edit-record-modal/edit-record-modal.css | 10 ++ .../edit-record-modal/edit-record-modal.tsx | 151 ++++++------------ src/components/edit-record-modal/readme.md | 12 +- src/components/info-card/info-card.css | 9 ++ src/components/info-card/info-card.tsx | 15 +- src/components/info-card/readme.md | 4 - 9 files changed, 82 insertions(+), 134 deletions(-) diff --git a/src/components.d.ts b/src/components.d.ts index d2eab99c5..8b83062bb 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -993,13 +993,9 @@ declare namespace LocalJSX { */ "mapView"?: __esri.MapView; /** - * Emitted on demand when the modal is closed + * Emitted on demand when the Editor widget should be closed */ - "onModalClosed"?: (event: EditRecordModalCustomEvent) => void; - /** - * Emitted on demand when the modal is opened - */ - "onModalOpened"?: (event: EditRecordModalCustomEvent) => void; + "onCloseEdit"?: (event: EditRecordModalCustomEvent) => void; /** * When true the component is displayed */ diff --git a/src/components/card-manager/readme.md b/src/components/card-manager/readme.md index 1bde5deba..1561f29b3 100644 --- a/src/components/card-manager/readme.md +++ b/src/components/card-manager/readme.md @@ -39,11 +39,7 @@ graph TD; info-card --> calcite-alert calcite-button --> calcite-loader calcite-button --> calcite-icon - edit-record-modal --> calcite-modal edit-record-modal --> calcite-notice - calcite-modal --> calcite-scrim - calcite-modal --> calcite-icon - calcite-scrim --> calcite-loader calcite-notice --> calcite-icon calcite-alert --> calcite-icon calcite-alert --> calcite-chip diff --git a/src/components/crowdsource-manager/readme.md b/src/components/crowdsource-manager/readme.md index c5da04f0a..404c1911d 100644 --- a/src/components/crowdsource-manager/readme.md +++ b/src/components/crowdsource-manager/readme.md @@ -81,10 +81,7 @@ graph TD; info-card --> calcite-tooltip info-card --> edit-record-modal info-card --> calcite-alert - edit-record-modal --> calcite-modal edit-record-modal --> calcite-notice - calcite-modal --> calcite-scrim - calcite-modal --> calcite-icon calcite-notice --> calcite-icon calcite-alert --> calcite-icon calcite-alert --> calcite-chip diff --git a/src/components/edit-record-modal/edit-record-modal.css b/src/components/edit-record-modal/edit-record-modal.css index cf4853ea1..f48137f58 100644 --- a/src/components/edit-record-modal/edit-record-modal.css +++ b/src/components/edit-record-modal/edit-record-modal.css @@ -42,3 +42,13 @@ .padding-sides-bottom-1 { padding: 0 1rem 1rem 1rem; } + +.position-relative { + position: relative; +} + +.esri-editor__prompt--danger { + position: relative !important; + width: 100% !important; + background-color: var(--calcite-ui-foreground-1) !important; +} diff --git a/src/components/edit-record-modal/edit-record-modal.tsx b/src/components/edit-record-modal/edit-record-modal.tsx index f03d55c1d..114ac14ec 100644 --- a/src/components/edit-record-modal/edit-record-modal.tsx +++ b/src/components/edit-record-modal/edit-record-modal.tsx @@ -77,8 +77,12 @@ export class EditRecordModal { //-------------------------------------------------------------------------- /** - * esri/widgets/Editor: https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Editor.html - * The Editor constructor + * esri/widgets/Editor: https://developers.arcgis.com/javascript/latest/api-reference/esri-core-Accessor.html#WatchHandle + */ + protected _attachmentHandle: __esri.WatchHandle; + + /** + * esri/widgets/Editor: https://developers.arcgis.com/javascript/latest/api-reference/esri-core-Accessor.html#WatchHandle */ protected _editHandle: __esri.WatchHandle; @@ -115,6 +119,11 @@ export class EditRecordModal { */ protected _editingDisabled: boolean; + /** + * boolean: When true the Editor widget should be closed + */ + protected _shouldClose = false; + /** * esri/core/reactiveUtils: https://developers.arcgis.com/javascript/latest/api-reference/esri-core-reactiveUtils.html */ @@ -163,14 +172,9 @@ export class EditRecordModal { //-------------------------------------------------------------------------- /** - * Emitted on demand when the modal is closed - */ - @Event() modalClosed: EventEmitter; - - /** - * Emitted on demand when the modal is opened + * Emitted on demand when the Editor widget should be closed */ - @Event() modalOpened: EventEmitter; + @Event() closeEdit: EventEmitter; //-------------------------------------------------------------------------- // @@ -216,43 +220,27 @@ export class EditRecordModal { return ( -
- void this._modalBeforeOpen()} - onCalciteModalClose={() => this._modalClose()} - onCalciteModalOpen={() => this._modalOpen()} - open={this.open} - outsideCloseDisabled={true} - width="s" - > +
+ { + editDisabled ? ( + +
+ {this._translations.enableEditing} +
+
+ ) : undefined + } +
- {this._translations.edit} -
- { - editDisabled ? ( - -
- {this._translations.enableEditing} -
-
- ) : undefined - } -
-
this._editContainer = el} - /> -
- + id="feature-form" + ref={(el) => this._editContainer = el} + /> +
); @@ -299,15 +287,28 @@ export class EditRecordModal { container }); - if (this._editHandle) { + if (this._editHandle && this._attachmentHandle) { this._editHandle.remove(); + this._attachmentHandle.remove(); } + this._attachmentHandle = this.reactiveUtils.when( + () => this._editor.viewModel.state === "adding-attachment" || this._editor.viewModel.state === "editing-attachment", + () => { + this._shouldClose = false; + } + ); + this._editHandle = this.reactiveUtils.when( () => this._editor.viewModel.state === "ready", () => { - if (this.graphicIndex > -1 && this.graphics.length > 0 && this.open) { + if (this._shouldClose) { + this.closeEdit.emit(); + this._shouldClose = false; + } + if (this.graphicIndex > -1 && this.graphics.length > 0 && this.open && !this._shouldClose) { void this._editor.startUpdateWorkflowAtFeatureEdit(this.graphics[this.graphicIndex]); + this._shouldClose = true; } } ); @@ -317,62 +318,6 @@ export class EditRecordModal { } } - /** - * Get the default Form Template to be used in the FeatureForm - * - * @returns A default Form Template - */ - protected _getFormTemplateElements(): any { - if (this.graphics.length > 0 && this._layer) { - return this._layer.fields.reduce((prev, cur) => { - if (cur.editable) { - prev.push({ - type: "field", - fieldName: cur.name, - label: cur.alias - }); - } - return prev; - }, []); - } - } - - /** - * Closes the modal - * - * @returns void - */ - protected _cancel(): void { - this.open = false; - } - - /** - * Emit the modal close event - * - * @returns void - */ - protected _modalClose(): void { - this.modalClosed.emit(); - } - - /** - * Emit the modal open event - * - * @returns void - */ - protected _modalOpen(): void { - this.modalOpened.emit(); - } - - /** - * Force the editor to start with the feature edit workflow - * - * @returns void - */ - protected async _modalBeforeOpen(): Promise { - await this._editor.startUpdateWorkflowAtFeatureEdit(this.graphics[this.graphicIndex]) - } - /** * Fetches the component's translations * diff --git a/src/components/edit-record-modal/readme.md b/src/components/edit-record-modal/readme.md index 9e97de2f2..2377d4197 100644 --- a/src/components/edit-record-modal/readme.md +++ b/src/components/edit-record-modal/readme.md @@ -17,10 +17,9 @@ ## Events -| Event | Description | Type | -| ------------- | ------------------------------------------ | ------------------- | -| `modalClosed` | Emitted on demand when the modal is closed | `CustomEvent` | -| `modalOpened` | Emitted on demand when the modal is opened | `CustomEvent` | +| Event | Description | Type | +| ----------- | --------------------------------------------------------- | ------------------- | +| `closeEdit` | Emitted on demand when the Editor widget should be closed | `CustomEvent` | ## Dependencies @@ -31,17 +30,12 @@ ### Depends on -- calcite-modal - calcite-notice ### Graph ```mermaid graph TD; - edit-record-modal --> calcite-modal edit-record-modal --> calcite-notice - calcite-modal --> calcite-scrim - calcite-modal --> calcite-icon - calcite-scrim --> calcite-loader calcite-notice --> calcite-icon info-card --> edit-record-modal style edit-record-modal fill:#f9f,stroke:#333,stroke-width:4px diff --git a/src/components/info-card/info-card.css b/src/components/info-card/info-card.css index c16ff0e76..76baf2a10 100644 --- a/src/components/info-card/info-card.css +++ b/src/components/info-card/info-card.css @@ -57,3 +57,12 @@ tr:nth-child(odd) { .display-flex { display: flex; } + +.position-absolute { + position: absolute; + top: 0; + right: 0; + bottom: 0; + left: 0; + overflow: auto; +} diff --git a/src/components/info-card/info-card.tsx b/src/components/info-card/info-card.tsx index a0547a6a1..0a0988064 100644 --- a/src/components/info-card/info-card.tsx +++ b/src/components/info-card/info-card.tsx @@ -14,7 +14,7 @@ * limitations under the License. */ -import { Component, Element, Host, h, Method, Prop, State, Watch } from "@stencil/core"; +import { Component, Element, Host, h, Listen, Method, Prop, State, Watch } from "@stencil/core"; import InfoCard_T9n from "../../assets/t9n/info-card/resources.json"; import { getLocaleComponentStrings } from "../../utils/locale"; import { loadModules } from "../../utils/loadModules"; @@ -150,6 +150,10 @@ export class InfoCard { // //-------------------------------------------------------------------------- + @Listen("closeEdit", { target: "window" }) + async closeEdit(): Promise { + this._editRecordOpen = false; + } //-------------------------------------------------------------------------- // // Functions (lifecycle) @@ -171,7 +175,9 @@ export class InfoCard { */ render() { const loadingClass = this.isLoading ? "" : "display-none"; - const featureNodeClass = this.isLoading ? "display-none" : ""; + const featureNodeClass = this.isLoading || this._editRecordOpen ? "display-none" : ""; + const editClass = !this.isLoading && this._editRecordOpen ? "position-absolute" : "display-none"; + const editButtonClass = !this.isLoading && this._editRecordOpen ? "display-none" : ""; return ( @@ -183,7 +189,7 @@ export class InfoCard { class={"esri-widget " + featureNodeClass} id="features-node" /> -
+
this._editRecordClosed()} open={this._editRecordOpen} - slot="modals" /> calcite-alert calcite-button --> calcite-loader calcite-button --> calcite-icon - edit-record-modal --> calcite-modal edit-record-modal --> calcite-notice - calcite-modal --> calcite-scrim - calcite-modal --> calcite-icon - calcite-scrim --> calcite-loader calcite-notice --> calcite-icon calcite-alert --> calcite-icon calcite-alert --> calcite-chip From 8cd4b158b520d4f185b300c3a6663f68904e3aa5 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Thu, 27 Jul 2023 16:31:31 -0600 Subject: [PATCH 083/406] remove edit-record-modal and add edit-card --- src/assets/t9n/edit-card/resources.json | 3 ++ src/assets/t9n/edit-card/resources_en.json | 3 ++ .../t9n/edit-record-modal/resources.json | 11 ------ .../t9n/edit-record-modal/resources_en.json | 11 ------ src/components.d.ts | 24 ++++++------- src/components/card-manager/readme.md | 4 +-- src/components/crowdsource-manager/readme.md | 4 +-- .../edit-card.css} | 2 +- .../edit-card.tsx} | 15 ++++---- .../readme.md | 8 ++--- .../edit-card/test/edit-card.e2e.ts | 11 ++++++ .../edit-card/test/edit-card.spec.tsx | 18 ++++++++++ .../test/edit-record-modal.e2e.ts | 27 --------------- .../test/edit-record-modal.spec.tsx | 34 ------------------- src/components/info-card/info-card.tsx | 2 +- src/components/info-card/readme.md | 6 ++-- ...{edit-record-modal.html => edit-card.html} | 4 +-- src/demos/index.html | 2 +- 18 files changed, 71 insertions(+), 118 deletions(-) create mode 100644 src/assets/t9n/edit-card/resources.json create mode 100644 src/assets/t9n/edit-card/resources_en.json delete mode 100644 src/assets/t9n/edit-record-modal/resources.json delete mode 100644 src/assets/t9n/edit-record-modal/resources_en.json rename src/components/{edit-record-modal/edit-record-modal.css => edit-card/edit-card.css} (99%) rename src/components/{edit-record-modal/edit-record-modal.tsx => edit-card/edit-card.tsx} (96%) rename src/components/{edit-record-modal => edit-card}/readme.md (91%) create mode 100644 src/components/edit-card/test/edit-card.e2e.ts create mode 100644 src/components/edit-card/test/edit-card.spec.tsx delete mode 100644 src/components/edit-record-modal/test/edit-record-modal.e2e.ts delete mode 100644 src/components/edit-record-modal/test/edit-record-modal.spec.tsx rename src/demos/{edit-record-modal.html => edit-card.html} (92%) diff --git a/src/assets/t9n/edit-card/resources.json b/src/assets/t9n/edit-card/resources.json new file mode 100644 index 000000000..64cfd9ce1 --- /dev/null +++ b/src/assets/t9n/edit-card/resources.json @@ -0,0 +1,3 @@ +{ + "enableEditing": "Editing must be enabled to modify the field values." +} diff --git a/src/assets/t9n/edit-card/resources_en.json b/src/assets/t9n/edit-card/resources_en.json new file mode 100644 index 000000000..64cfd9ce1 --- /dev/null +++ b/src/assets/t9n/edit-card/resources_en.json @@ -0,0 +1,3 @@ +{ + "enableEditing": "Editing must be enabled to modify the field values." +} diff --git a/src/assets/t9n/edit-record-modal/resources.json b/src/assets/t9n/edit-record-modal/resources.json deleted file mode 100644 index bd6c113bc..000000000 --- a/src/assets/t9n/edit-record-modal/resources.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "cancel": "Cancel", - "edit": "Edit", - "editMultiple": "Edit Multiple", - "infoMessage": "These changes will apply to all selected fields.", - "label": "Label", - "save": "Save", - "textField": "Text Field", - "selectValue": "Select a value", - "enableEditing": "Editing must be enabled to modify the field values." -} diff --git a/src/assets/t9n/edit-record-modal/resources_en.json b/src/assets/t9n/edit-record-modal/resources_en.json deleted file mode 100644 index bd6c113bc..000000000 --- a/src/assets/t9n/edit-record-modal/resources_en.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "cancel": "Cancel", - "edit": "Edit", - "editMultiple": "Edit Multiple", - "infoMessage": "These changes will apply to all selected fields.", - "label": "Label", - "save": "Save", - "textField": "Text Field", - "selectValue": "Select a value", - "enableEditing": "Editing must be enabled to modify the field values." -} diff --git a/src/components.d.ts b/src/components.d.ts index 8b83062bb..41f83136c 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -63,7 +63,7 @@ export namespace Components { } interface DeductCalculator { } - interface EditRecordModal { + interface EditCard { /** * The index of the current graphic */ @@ -630,9 +630,9 @@ export interface DeductCalculatorCustomEvent extends CustomEvent { detail: T; target: HTMLDeductCalculatorElement; } -export interface EditRecordModalCustomEvent extends CustomEvent { +export interface EditCardCustomEvent extends CustomEvent { detail: T; - target: HTMLEditRecordModalElement; + target: HTMLEditCardElement; } export interface LayerTableCustomEvent extends CustomEvent { detail: T; @@ -717,11 +717,11 @@ declare global { prototype: HTMLDeductCalculatorElement; new (): HTMLDeductCalculatorElement; }; - interface HTMLEditRecordModalElement extends Components.EditRecordModal, HTMLStencilElement { + interface HTMLEditCardElement extends Components.EditCard, HTMLStencilElement { } - var HTMLEditRecordModalElement: { - prototype: HTMLEditRecordModalElement; - new (): HTMLEditRecordModalElement; + var HTMLEditCardElement: { + prototype: HTMLEditCardElement; + new (): HTMLEditCardElement; }; interface HTMLInfoCardElement extends Components.InfoCard, HTMLStencilElement { } @@ -879,7 +879,7 @@ declare global { "crowdsource-manager": HTMLCrowdsourceManagerElement; "crowdsource-reporter": HTMLCrowdsourceReporterElement; "deduct-calculator": HTMLDeductCalculatorElement; - "edit-record-modal": HTMLEditRecordModalElement; + "edit-card": HTMLEditCardElement; "info-card": HTMLInfoCardElement; "json-editor": HTMLJsonEditorElement; "layer-table": HTMLLayerTableElement; @@ -979,7 +979,7 @@ declare namespace LocalJSX { */ "onDeductValueComplete"?: (event: DeductCalculatorCustomEvent) => void; } - interface EditRecordModal { + interface EditCard { /** * The index of the current graphic */ @@ -995,7 +995,7 @@ declare namespace LocalJSX { /** * Emitted on demand when the Editor widget should be closed */ - "onCloseEdit"?: (event: EditRecordModalCustomEvent) => void; + "onCloseEdit"?: (event: EditCardCustomEvent) => void; /** * When true the component is displayed */ @@ -1513,7 +1513,7 @@ declare namespace LocalJSX { "crowdsource-manager": CrowdsourceManager; "crowdsource-reporter": CrowdsourceReporter; "deduct-calculator": DeductCalculator; - "edit-record-modal": EditRecordModal; + "edit-card": EditCard; "info-card": InfoCard; "json-editor": JsonEditor; "layer-table": LayerTable; @@ -1550,7 +1550,7 @@ declare module "@stencil/core" { "crowdsource-manager": LocalJSX.CrowdsourceManager & JSXBase.HTMLAttributes; "crowdsource-reporter": LocalJSX.CrowdsourceReporter & JSXBase.HTMLAttributes; "deduct-calculator": LocalJSX.DeductCalculator & JSXBase.HTMLAttributes; - "edit-record-modal": LocalJSX.EditRecordModal & JSXBase.HTMLAttributes; + "edit-card": LocalJSX.EditCard & JSXBase.HTMLAttributes; "info-card": LocalJSX.InfoCard & JSXBase.HTMLAttributes; "json-editor": LocalJSX.JsonEditor & JSXBase.HTMLAttributes; "layer-table": LocalJSX.LayerTable & JSXBase.HTMLAttributes; diff --git a/src/components/card-manager/readme.md b/src/components/card-manager/readme.md index 1561f29b3..638783a47 100644 --- a/src/components/card-manager/readme.md +++ b/src/components/card-manager/readme.md @@ -35,11 +35,11 @@ graph TD; info-card --> calcite-loader info-card --> calcite-button info-card --> calcite-tooltip - info-card --> edit-record-modal + info-card --> edit-card info-card --> calcite-alert calcite-button --> calcite-loader calcite-button --> calcite-icon - edit-record-modal --> calcite-notice + edit-card --> calcite-notice calcite-notice --> calcite-icon calcite-alert --> calcite-icon calcite-alert --> calcite-chip diff --git a/src/components/crowdsource-manager/readme.md b/src/components/crowdsource-manager/readme.md index 404c1911d..d6b989849 100644 --- a/src/components/crowdsource-manager/readme.md +++ b/src/components/crowdsource-manager/readme.md @@ -79,9 +79,9 @@ graph TD; info-card --> calcite-loader info-card --> calcite-button info-card --> calcite-tooltip - info-card --> edit-record-modal + info-card --> edit-card info-card --> calcite-alert - edit-record-modal --> calcite-notice + edit-card --> calcite-notice calcite-notice --> calcite-icon calcite-alert --> calcite-icon calcite-alert --> calcite-chip diff --git a/src/components/edit-record-modal/edit-record-modal.css b/src/components/edit-card/edit-card.css similarity index 99% rename from src/components/edit-record-modal/edit-record-modal.css rename to src/components/edit-card/edit-card.css index f48137f58..520f33ff1 100644 --- a/src/components/edit-record-modal/edit-record-modal.css +++ b/src/components/edit-card/edit-card.css @@ -14,7 +14,7 @@ * limitations under the License. */ -:host { + :host { display: block; } diff --git a/src/components/edit-record-modal/edit-record-modal.tsx b/src/components/edit-card/edit-card.tsx similarity index 96% rename from src/components/edit-record-modal/edit-record-modal.tsx rename to src/components/edit-card/edit-card.tsx index 114ac14ec..65ea4e4c7 100644 --- a/src/components/edit-record-modal/edit-record-modal.tsx +++ b/src/components/edit-card/edit-card.tsx @@ -16,21 +16,21 @@ import { Component, Element, Event, EventEmitter, Host, h, Prop, State, Watch } from "@stencil/core"; import { loadModules } from "../../utils/loadModules"; -import EditRecordModal_T9n from "../../assets/t9n/edit-record-modal/resources.json"; +import EditCard_T9n from "../../assets/t9n/edit-card/resources.json" import { getLocaleComponentStrings } from "../../utils/locale"; @Component({ - tag: "edit-record-modal", - styleUrl: "edit-record-modal.css", + tag: 'edit-card', + styleUrl: 'edit-card.css', shadow: false, }) -export class EditRecordModal { +export class EditCard { //-------------------------------------------------------------------------- // // Host element access // //-------------------------------------------------------------------------- - @Element() el: HTMLEditRecordModalElement; + @Element() el: HTMLEditCardElement; //-------------------------------------------------------------------------- // @@ -68,7 +68,7 @@ export class EditRecordModal { * Contains the translations for this component. * All UI strings should be defined here. */ - @State() _translations: typeof EditRecordModal_T9n; + @State() _translations: typeof EditCard_T9n; //-------------------------------------------------------------------------- // @@ -325,6 +325,7 @@ export class EditRecordModal { */ protected async _getTranslations(): Promise { const messages = await getLocaleComponentStrings(this.el); - this._translations = messages[0] as typeof EditRecordModal_T9n; + this._translations = messages[0] as typeof EditCard_T9n; } + } diff --git a/src/components/edit-record-modal/readme.md b/src/components/edit-card/readme.md similarity index 91% rename from src/components/edit-record-modal/readme.md rename to src/components/edit-card/readme.md index 2377d4197..867f1c32f 100644 --- a/src/components/edit-record-modal/readme.md +++ b/src/components/edit-card/readme.md @@ -1,4 +1,4 @@ -# edit-record-modal +# edit-card @@ -35,10 +35,10 @@ ### Graph ```mermaid graph TD; - edit-record-modal --> calcite-notice + edit-card --> calcite-notice calcite-notice --> calcite-icon - info-card --> edit-record-modal - style edit-record-modal fill:#f9f,stroke:#333,stroke-width:4px + info-card --> edit-card + style edit-card fill:#f9f,stroke:#333,stroke-width:4px ``` ---------------------------------------------- diff --git a/src/components/edit-card/test/edit-card.e2e.ts b/src/components/edit-card/test/edit-card.e2e.ts new file mode 100644 index 000000000..0c927c5b4 --- /dev/null +++ b/src/components/edit-card/test/edit-card.e2e.ts @@ -0,0 +1,11 @@ +import { newE2EPage } from '@stencil/core/testing'; + +xdescribe('edit-card', () => { + it('renders', async () => { + const page = await newE2EPage(); + await page.setContent(''); + + const element = await page.find('edit-card'); + expect(element).toHaveClass('hydrated'); + }); +}); diff --git a/src/components/edit-card/test/edit-card.spec.tsx b/src/components/edit-card/test/edit-card.spec.tsx new file mode 100644 index 000000000..b1d9538b9 --- /dev/null +++ b/src/components/edit-card/test/edit-card.spec.tsx @@ -0,0 +1,18 @@ +import { newSpecPage } from '@stencil/core/testing'; +import { EditCard } from '../edit-card'; + +xdescribe('edit-card', () => { + it('renders', async () => { + const page = await newSpecPage({ + components: [EditCard], + html: ``, + }); + expect(page.root).toEqualHtml(` + + + + + + `); + }); +}); diff --git a/src/components/edit-record-modal/test/edit-record-modal.e2e.ts b/src/components/edit-record-modal/test/edit-record-modal.e2e.ts deleted file mode 100644 index f1c69ad59..000000000 --- a/src/components/edit-record-modal/test/edit-record-modal.e2e.ts +++ /dev/null @@ -1,27 +0,0 @@ -/** @license - * Copyright 2022 Esri - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import { newE2EPage } from '@stencil/core/testing'; - -xdescribe('edit-record-modal', () => { - it('renders', async () => { - const page = await newE2EPage(); - await page.setContent(''); - - const element = await page.find('edit-record-modal'); - expect(element).toHaveClass('hydrated'); - }); -}); diff --git a/src/components/edit-record-modal/test/edit-record-modal.spec.tsx b/src/components/edit-record-modal/test/edit-record-modal.spec.tsx deleted file mode 100644 index c3c56723a..000000000 --- a/src/components/edit-record-modal/test/edit-record-modal.spec.tsx +++ /dev/null @@ -1,34 +0,0 @@ -/** @license - * Copyright 2022 Esri - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import { newSpecPage } from '@stencil/core/testing'; -import { EditRecordModal } from '../edit-record-modal'; - -xdescribe('edit-record-modal', () => { - it('renders', async () => { - const page = await newSpecPage({ - components: [EditRecordModal], - html: ``, - }); - expect(page.root).toEqualHtml(` - - - - - - `); - }); -}); diff --git a/src/components/info-card/info-card.tsx b/src/components/info-card/info-card.tsx index 0a0988064..79d0ff778 100644 --- a/src/components/info-card/info-card.tsx +++ b/src/components/info-card/info-card.tsx @@ -203,7 +203,7 @@ export class InfoCard { {this._translations.edit}
- calcite-loader info-card --> calcite-button info-card --> calcite-tooltip - info-card --> edit-record-modal + info-card --> edit-card info-card --> calcite-alert calcite-button --> calcite-loader calcite-button --> calcite-icon - edit-record-modal --> calcite-notice + edit-card --> calcite-notice calcite-notice --> calcite-icon calcite-alert --> calcite-icon calcite-alert --> calcite-chip diff --git a/src/demos/edit-record-modal.html b/src/demos/edit-card.html similarity index 92% rename from src/demos/edit-record-modal.html rename to src/demos/edit-card.html index 76f583b25..c58f95925 100644 --- a/src/demos/edit-record-modal.html +++ b/src/demos/edit-card.html @@ -5,7 +5,7 @@ name="viewport" content="initial-scale=1,maximum-scale=1,user-scalable=no" /> - Edit Record Modal + Edit Card calcite-action map-layer-picker --> calcite-button map-layer-picker --> calcite-dropdown-group - map-layer-picker --> calcite-dropdown-item - map-layer-picker --> calcite-option map-layer-picker --> calcite-combobox-item + map-layer-picker --> calcite-option + map-layer-picker --> calcite-dropdown-item calcite-select --> calcite-icon calcite-combobox --> calcite-chip calcite-combobox --> calcite-icon - calcite-dropdown-item --> calcite-icon calcite-combobox-item --> calcite-icon + calcite-dropdown-item --> calcite-icon style crowdsource-manager fill:#f9f,stroke:#333,stroke-width:4px ``` diff --git a/src/components/layer-table/readme.md b/src/components/layer-table/readme.md index 5e2354ae1..c8f3b39ea 100644 --- a/src/components/layer-table/readme.md +++ b/src/components/layer-table/readme.md @@ -93,16 +93,16 @@ graph TD; map-layer-picker --> calcite-action map-layer-picker --> calcite-button map-layer-picker --> calcite-dropdown-group - map-layer-picker --> calcite-dropdown-item - map-layer-picker --> calcite-option map-layer-picker --> calcite-combobox-item + map-layer-picker --> calcite-option + map-layer-picker --> calcite-dropdown-item calcite-select --> calcite-icon calcite-combobox --> calcite-chip calcite-combobox --> calcite-icon calcite-button --> calcite-loader calcite-button --> calcite-icon - calcite-dropdown-item --> calcite-icon calcite-combobox-item --> calcite-icon + calcite-dropdown-item --> calcite-icon crowdsource-manager --> layer-table style layer-table fill:#f9f,stroke:#333,stroke-width:4px ``` diff --git a/src/components/map-layer-picker/map-layer-picker.tsx b/src/components/map-layer-picker/map-layer-picker.tsx index eb9e1d864..3d08b0700 100644 --- a/src/components/map-layer-picker/map-layer-picker.tsx +++ b/src/components/map-layer-picker/map-layer-picker.tsx @@ -15,7 +15,7 @@ */ import { Component, Element, Event, EventEmitter, Host, h, Prop, State, VNode, Watch } from "@stencil/core"; -import { getMapLayerHash, getMapLayerIds } from "../../utils/mapViewUtils"; +import { getMapLayerHash, getMapLayerIds, getMapTableHash, getMapTableIds } from "../../utils/mapViewUtils"; import state from "../../utils/publicNotificationStore"; @Component({ @@ -48,6 +48,12 @@ export class MapLayerPicker { */ @Prop() enabledLayerIds: string[] = []; + /** + * string[]: Optional list of enabled table ids + * If empty all tables will be available + */ + @Prop() enabledTableIds: string[] = []; + /** * esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html */ @@ -61,13 +67,18 @@ export class MapLayerPicker { /** * string[]: list of layer ids that have been selected by the end user */ - @Prop({ mutable: true }) selectedLayerIds: string[] = []; + @Prop({ mutable: true }) selectedIds: string[] = []; /** * "s" | "m" | "l": scale to render the component */ @Prop() scale: "s" | "m" | "l" = "m"; + /** + * boolean: when true standalone tables will also be available + */ + @Prop() showTables = true; + /** * "select" | "combobox" | "dropdown": type of component to leverage */ @@ -80,14 +91,14 @@ export class MapLayerPicker { //-------------------------------------------------------------------------- /** - * string[]: list of layer ids from the map + * string[]: list of layer and table (if showTables is true) ids from the map */ - @State() layerIds: string[] = []; + @State() ids: string[] = []; /** * string: lcurrent layer name to display when using "dropdown" type */ - @State() selectedLayerName = ""; + @State() selectedName = ""; //-------------------------------------------------------------------------- // @@ -113,7 +124,11 @@ export class MapLayerPicker { @Watch("mapView") async mapViewWatchHandler(): Promise { await this._setLayers(); - this._setSelectedLayer(this.layerIds[0]); + const hasLayers = Object.keys(state.layerNameHash).length > 0; + const hasTables = Object.keys(state.tableNameHash).length > 0 && this.showTables; + if (hasLayers || hasTables) { + this._setSelectedLayer(this.ids[0], hasLayers ? "layer" : "table"); + } } //-------------------------------------------------------------------------- @@ -145,9 +160,9 @@ export class MapLayerPicker { */ async componentWillLoad(): Promise { await this._setLayers(); - if (this.layerIds.length > 0 || this.selectedLayerIds.length === 1) { + if (this.ids.length > 0 || this.selectedIds.length === 1) { this.layerSelectionChange.emit( - this.selectedLayerIds.length === 1 ? [this.selectedLayerIds[0]] : [this.layerIds[0]] + this.selectedIds.length === 1 ? [this.selectedIds[0]] : [this.ids[0]] ); } } @@ -174,12 +189,14 @@ export class MapLayerPicker { * StencilJS: Called once just after the component is fully loaded and the first render() occurs. */ async componentDidLoad(): Promise { - if (this.layerIds.length > 0 || this.selectedLayerIds.length === 1) { - const id = this.selectedLayerIds.length === 1 ? this.selectedLayerIds[0] : this.layerIds[0]; + if (this.ids.length > 0 || this.selectedIds.length === 1) { + const id = this.selectedIds.length === 1 ? this.selectedIds[0] : this.ids[0]; if (this.type === "select") { this._layerElement.value = id; } else if (this.type === "dropdown") { - this.selectedLayerName = state.layerNameHash[id]; + this.selectedName = Object.keys(state.layerNameHash).indexOf(id) > -1 ? + state.layerNameHash[id] : Object.keys(state.tableNameHash).indexOf(id) > -1 ? + state.tableNameHash[id] : ""; } } } @@ -205,7 +222,7 @@ export class MapLayerPicker { ref={(el) => { this._layerElement = el }} scale={this.scale} > - {this._addSelectMapLayersOptions()} + {this._getMapLayerOptions()} ); } @@ -228,7 +245,7 @@ export class MapLayerPicker { scale={this.scale} selection-mode="single" > - {this._addComboboxMapLayersOptions()} + {this._getMapLayerOptions()} ); } @@ -252,80 +269,64 @@ export class MapLayerPicker { width="full" >
- {this.selectedLayerName} + {this.selectedName}
- {this._getDropdownItems()} + {this._getMapLayerOptions()} ); } /** - * Hydrate a dropdown component with items to display the layer names + * Get the appropriate type of dom nodes for each valid layer or table * - * @returns Array of Dropdown items with layer names + * @returns Array of dom nodes with the names of the layers and optionally of the tables */ - _getDropdownItems(): VNode[] { - return this.layerIds.reduce((prev, cur) => { - if (state.managedLayers.indexOf(state.layerNameHash[cur]) < 0 && (this.enabledLayerIds.length > 0 ? this.enabledLayerIds.indexOf(cur) > -1 : true)) { - prev.push( - ( - void this._setSelectedLayer(cur)} - > - {state.layerNameHash[cur]} - - ) - ); + _getMapLayerOptions(): VNode[] { + return this.ids.reduce((prev, cur) => { + if (this._validLayer(cur)) { + prev.push(this._getItem(cur, "layer")); + } else if (this._validTable(cur)) { + prev.push(this._getItem(cur, "table")); } return prev; }, []); } /** - * Store the layer name based on the user selection - */ - _setSelectedLayer( - id: string - ): void { - this.selectedLayerName = state.layerNameHash[id]; - this.selectedLayerIds = [id]; - this.layerSelectionChange.emit(this.selectedLayerIds); - } - - /** - * Hydrate a select component with the ids of the layers in the map + * Get the appropriate type of dom node for the current layer or table id * - * @returns Array of select options for the ids of the layers + * @returns A dom node with the name of the layer or table */ - _addSelectMapLayersOptions(): VNode[] { - return this.layerIds.reduce((prev, cur) => { - if (state.managedLayers.indexOf(state.layerNameHash[cur]) < 0 && (this.enabledLayerIds.length > 0 ? this.enabledLayerIds.indexOf(cur) > -1 : true)) { - prev.push( - () + _getItem( + id: string, + itemType: "layer" | "table" + ): VNode { + const name = itemType === "layer" ? state.layerNameHash[id] : state.tableNameHash[id]; + return this.type === "combobox" ? () : + this.type === "select" ? () : + ( + void this._setSelectedLayer(id, itemType)} + > + {name} + ); - } - return prev; - }, []); } /** - * Hydrate a combobox component with the ids of the layers in the map - * - * @returns Array of ComboBox items for the ids of the layers + * Store the layer name based on the user selection */ - _addComboboxMapLayersOptions(): VNode[] { - return this.layerIds.reduce((prev, cur) => { - if (state.managedLayers.indexOf(state.layerNameHash[cur]) < 0 && (this.enabledLayerIds.length > 0 ? this.enabledLayerIds.indexOf(cur) > -1 : true)) { - prev.push( - () - ); - } - return prev; - }, []); + _setSelectedLayer( + id: string, + type: "layer" | "table" + ): void { + this.selectedName = type === "layer" ? state.layerNameHash[id] : state.tableNameHash[id]; + this.selectedIds = [id]; + this.layerSelectionChange.emit(this.selectedIds); } /** @@ -336,8 +337,12 @@ export class MapLayerPicker { async _setLayers(): Promise { if (this.mapView) { const mapLayerIds = await getMapLayerIds(this.mapView); - this.layerIds = mapLayerIds.filter(n => this.enabledLayerIds?.length > 0 ? this.enabledLayerIds.indexOf(n) > -1 : true); - await this._initLayerHashState(); + const mapTableIds = this.showTables ? await getMapTableIds(this.mapView) : []; + this.ids = [ + ...mapLayerIds.filter(n => this.enabledLayerIds?.length > 0 ? this.enabledLayerIds.indexOf(n) > -1 : true), + ...mapTableIds.filter(n => this.enabledTableIds?.length > 0 ? this.enabledTableIds.indexOf(n) > -1 : true), + ]; + await this._initStateHash(); } } @@ -346,12 +351,40 @@ export class MapLayerPicker { * * @returns Promise when the operation has completed */ - protected async _initLayerHashState(): Promise { + protected async _initStateHash(): Promise { if (this.mapView) { state.layerNameHash = await getMapLayerHash(this.mapView); + state.tableNameHash = this.showTables ? await getMapTableHash(this.mapView) : {}; } } + /** + * Evaluate if the id exists in the current hash and verify if it should be excluded + * + * @returns boolean when true the layer will be used in the current layer picker type + */ + protected _validLayer( + id: string + ): boolean { + const name = state.layerNameHash[id]; + return name && state.managedLayers.indexOf(name) < 0 && (this.enabledLayerIds.length > 0 ? + this.enabledLayerIds.indexOf(id) > -1 : name); + } + + /** + * Evaluate if the id exists in the current hash and verify if it should be excluded + * + * @returns boolean when true the table will be used in the current layer picker type + */ + protected _validTable( + id: string + ): boolean { + const name = state.tableNameHash[id]; + const validName = name && this.showTables; + return validName ? state.managedTables.indexOf(name) < 0 && + (this.enabledTableIds.length > 0 ? this.enabledTableIds.indexOf(id) > -1 : true) : validName; + } + /** * Fetch the ids of the layers from the map * @@ -360,8 +393,8 @@ export class MapLayerPicker { _layerSelectionChange(): void { const ids = Array.isArray(this._layerElement.value) ? this._layerElement.value : [this._layerElement.value]; if (JSON.stringify(ids) !== JSON.stringify([""])) { - this.selectedLayerIds = ids; - this.layerSelectionChange.emit(this.selectedLayerIds); + this.selectedIds = ids; + this.layerSelectionChange.emit(this.selectedIds); } } } diff --git a/src/components/map-layer-picker/readme.md b/src/components/map-layer-picker/readme.md index 7edcc4d85..ce086aad4 100644 --- a/src/components/map-layer-picker/readme.md +++ b/src/components/map-layer-picker/readme.md @@ -7,15 +7,17 @@ ## Properties -| Property | Attribute | Description | Type | Default | -| ------------------ | ------------------ | ------------------------------------------------------------------------------------------------------ | -------------------------------------- | --------------- | -| `appearance` | `appearance` | "transparent" \| "solid": controls the button appearance when using the "dropdown" type | `"solid" \| "transparent"` | `"transparent"` | -| `enabledLayerIds` | -- | string[]: Optional list of enabled layer ids If empty all layers will be available | `string[]` | `[]` | -| `mapView` | -- | esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html | `MapView` | `undefined` | -| `placeholderIcon` | `placeholder-icon` | string: optional placeholder icon used with "combobox" type | `string` | `""` | -| `scale` | `scale` | "s" \| "m" \| "l": scale to render the component | `"l" \| "m" \| "s"` | `"m"` | -| `selectedLayerIds` | -- | string[]: list of layer ids that have been selected by the end user | `string[]` | `[]` | -| `type` | `type` | "select" \| "combobox" \| "dropdown": type of component to leverage | `"combobox" \| "dropdown" \| "select"` | `"select"` | +| Property | Attribute | Description | Type | Default | +| ----------------- | ------------------ | ------------------------------------------------------------------------------------------------------ | -------------------------------------- | --------------- | +| `appearance` | `appearance` | "transparent" \| "solid": controls the button appearance when using the "dropdown" type | `"solid" \| "transparent"` | `"transparent"` | +| `enabledLayerIds` | -- | string[]: Optional list of enabled layer ids If empty all layers will be available | `string[]` | `[]` | +| `enabledTableIds` | -- | string[]: Optional list of enabled table ids If empty all tables will be available | `string[]` | `[]` | +| `mapView` | -- | esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html | `MapView` | `undefined` | +| `placeholderIcon` | `placeholder-icon` | string: optional placeholder icon used with "combobox" type | `string` | `""` | +| `scale` | `scale` | "s" \| "m" \| "l": scale to render the component | `"l" \| "m" \| "s"` | `"m"` | +| `selectedIds` | -- | string[]: list of layer ids that have been selected by the end user | `string[]` | `[]` | +| `showTables` | `show-tables` | boolean: when true standalone tables will also be available | `boolean` | `true` | +| `type` | `type` | "select" \| "combobox" \| "dropdown": type of component to leverage | `"combobox" \| "dropdown" \| "select"` | `"select"` | ## Events @@ -41,9 +43,9 @@ - calcite-action - calcite-button - calcite-dropdown-group -- calcite-dropdown-item -- calcite-option - calcite-combobox-item +- calcite-option +- calcite-dropdown-item ### Graph ```mermaid @@ -54,9 +56,9 @@ graph TD; map-layer-picker --> calcite-action map-layer-picker --> calcite-button map-layer-picker --> calcite-dropdown-group - map-layer-picker --> calcite-dropdown-item - map-layer-picker --> calcite-option map-layer-picker --> calcite-combobox-item + map-layer-picker --> calcite-option + map-layer-picker --> calcite-dropdown-item calcite-select --> calcite-icon calcite-combobox --> calcite-chip calcite-combobox --> calcite-icon @@ -65,8 +67,8 @@ graph TD; calcite-action --> calcite-icon calcite-button --> calcite-loader calcite-button --> calcite-icon - calcite-dropdown-item --> calcite-icon calcite-combobox-item --> calcite-icon + calcite-dropdown-item --> calcite-icon layer-table --> map-layer-picker map-select-tools --> map-layer-picker refine-selection --> map-layer-picker diff --git a/src/components/map-select-tools/map-select-tools.tsx b/src/components/map-select-tools/map-select-tools.tsx index 97faf6b75..212abc0d3 100644 --- a/src/components/map-select-tools/map-select-tools.tsx +++ b/src/components/map-select-tools/map-select-tools.tsx @@ -568,7 +568,7 @@ export class MapSelectTools { enabledLayerIds={this.selectionLayerIds} mapView={this.mapView} onLayerSelectionChange={(evt) => { void this._layerSelectionChange(evt) }} - selectedLayerIds={this.layerViews.map(l => l.layer.id)} + selectedIds={this.layerViews.map(l => l.layer.id)} />
@@ -643,7 +643,7 @@ export class MapSelectTools { enabledLayerIds={this.enabledLayerIds} mapView={this.mapView} onLayerSelectionChange={(evt) => this._inputLayerSelectionChange(evt)} - selectedLayerIds={this.selectLayerView ? [this.selectLayerView.layer.id] : this.selectionSet ? [this.selectionSet.layerView.layer.id] : []} + selectedIds={this.selectLayerView ? [this.selectLayerView.layer.id] : this.selectionSet ? [this.selectionSet.layerView.layer.id] : []} />
diff --git a/src/components/map-select-tools/readme.md b/src/components/map-select-tools/readme.md index a482b2f58..b647ac721 100644 --- a/src/components/map-select-tools/readme.md +++ b/src/components/map-select-tools/readme.md @@ -110,16 +110,16 @@ graph TD; map-layer-picker --> calcite-action map-layer-picker --> calcite-button map-layer-picker --> calcite-dropdown-group - map-layer-picker --> calcite-dropdown-item - map-layer-picker --> calcite-option map-layer-picker --> calcite-combobox-item + map-layer-picker --> calcite-option + map-layer-picker --> calcite-dropdown-item calcite-combobox --> calcite-chip calcite-combobox --> calcite-icon calcite-chip --> calcite-icon calcite-button --> calcite-loader calcite-button --> calcite-icon - calcite-dropdown-item --> calcite-icon calcite-combobox-item --> calcite-icon + calcite-dropdown-item --> calcite-icon calcite-input-message --> calcite-icon public-notification --> map-select-tools style map-select-tools fill:#f9f,stroke:#333,stroke-width:4px diff --git a/src/components/public-notification/readme.md b/src/components/public-notification/readme.md index b7b2e9449..c10adac9b 100644 --- a/src/components/public-notification/readme.md +++ b/src/components/public-notification/readme.md @@ -130,14 +130,14 @@ graph TD; map-layer-picker --> calcite-action map-layer-picker --> calcite-button map-layer-picker --> calcite-dropdown-group - map-layer-picker --> calcite-dropdown-item - map-layer-picker --> calcite-option map-layer-picker --> calcite-combobox-item + map-layer-picker --> calcite-option + map-layer-picker --> calcite-dropdown-item calcite-combobox --> calcite-chip calcite-combobox --> calcite-icon calcite-chip --> calcite-icon - calcite-dropdown-item --> calcite-icon calcite-combobox-item --> calcite-icon + calcite-dropdown-item --> calcite-icon calcite-input-message --> calcite-icon calcite-segmented-control-item --> calcite-icon pdf-download --> calcite-select diff --git a/src/components/refine-selection/readme.md b/src/components/refine-selection/readme.md index c33433d92..32846e961 100644 --- a/src/components/refine-selection/readme.md +++ b/src/components/refine-selection/readme.md @@ -62,9 +62,9 @@ graph TD; map-layer-picker --> calcite-action map-layer-picker --> calcite-button map-layer-picker --> calcite-dropdown-group - map-layer-picker --> calcite-dropdown-item - map-layer-picker --> calcite-option map-layer-picker --> calcite-combobox-item + map-layer-picker --> calcite-option + map-layer-picker --> calcite-dropdown-item calcite-select --> calcite-icon calcite-combobox --> calcite-chip calcite-combobox --> calcite-icon @@ -73,8 +73,8 @@ graph TD; calcite-action --> calcite-icon calcite-button --> calcite-loader calcite-button --> calcite-icon - calcite-dropdown-item --> calcite-icon calcite-combobox-item --> calcite-icon + calcite-dropdown-item --> calcite-icon calcite-popover --> calcite-action calcite-popover --> calcite-icon calcite-segmented-control-item --> calcite-icon diff --git a/src/components/refine-selection/refine-selection.tsx b/src/components/refine-selection/refine-selection.tsx index 19c65a56d..e0aad42bb 100644 --- a/src/components/refine-selection/refine-selection.tsx +++ b/src/components/refine-selection/refine-selection.tsx @@ -212,7 +212,7 @@ export class RefineSelection { mapView={this.mapView} onLayerSelectionChange={(evt) => { void this._layerSelectionChange(evt) }} ref={(el) => { this._layerPicker = el }} - selectedLayerIds={[this._refineLayer.layer.id]} + selectedIds={[this._refineLayer.layer.id]} /> { +): Promise { let layerHash = {}; await mapView.when(() => { layerHash = mapView.map.allLayers.toArray().reduce((prev, cur) => { @@ -40,6 +40,28 @@ export async function getMapLayerHash( return layerHash; } +/** + * Gets the table names from the current map + * + * @param mapView the map view to fetch the table names from + * + * @returns Promise resolving with an array of table names + * + */ +export async function getMapTableHash( + mapView: __esri.MapView +): Promise { + let tableHash = {}; + await mapView.when(() => { + tableHash = mapView.map.allTables.toArray().reduce((prev, cur) => { + console.log(cur.type) + prev[cur.id] = cur.title; + return prev; + }, {}); + }); + return tableHash; +} + /** * Gets the layer names from the current map * @@ -63,6 +85,28 @@ export async function getMapLayerIds( return layerIds; } +/** + * Gets the table names from the current map + * + * @param mapView the map view to fetch the table names from + * + * @returns Promise resolving with an array of table names + * + */ +export async function getMapTableIds( + mapView: __esri.MapView +): Promise { + // TODO...seems like its the same as the hash...see if I can remove this + let tableIds = []; + await mapView.when(() => { + tableIds = mapView.map.allTables.toArray().reduce((prev, cur) => { + prev.push(cur.id); + return prev; + }, []); + }); + return tableIds; +} + /** * Get a layer view by id * @@ -95,7 +139,10 @@ export async function getMapLayer( ): Promise<__esri.FeatureLayer> { let layers = []; await mapView.when(() => { - layers = mapView.map.allLayers.toArray().filter((l) => { + layers = [ + ...mapView.map.allLayers.toArray(), + ...mapView.map.allTables.toArray() + ].filter((l) => { return l.id === id; }); }); @@ -111,7 +158,6 @@ export async function getMapLayer( * @param updateExtent optional (default false) boolean to indicate if we should zoom to the extent * * @returns Promise resolving with the highlight handle - * */ export async function highlightFeatures( ids: number[], diff --git a/src/utils/publicNotificationStore.ts b/src/utils/publicNotificationStore.ts index 8cbb8ecce..800cb014f 100644 --- a/src/utils/publicNotificationStore.ts +++ b/src/utils/publicNotificationStore.ts @@ -19,10 +19,14 @@ import { createStore } from "@stencil/store"; const { state, onChange } = createStore({ // List of layers added and managed by the component managedLayers: [], + // List of tables added and managed by the component + managedTables: [], // Handle[]: https://developers.arcgis.com/javascript/latest/api-reference/esri-core-Handles.html#Handle highlightHandles: [], - // ILayerHash title: id lookup to be used across components + // IMapItemHash title: id lookup to be used across components layerNameHash: {}, + // IMapItemHash title: id lookup to be used across components + tableNameHash: {}, // remove all handles removeHandles: () => { state.highlightHandles.forEach(h => h?.remove()); From 4cb0430bacb4053d960f47b4a9eb498c9bb95af5 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Wed, 2 Aug 2023 15:04:50 -0600 Subject: [PATCH 089/406] issue 3791 from IA repo --- src/components.d.ts | 16 ++++++++ src/components/pdf-download/pdf-download.tsx | 7 +++- src/components/pdf-download/readme.md | 7 ++-- .../public-notification.tsx | 6 +++ src/components/public-notification/readme.md | 39 ++++++++++--------- 5 files changed, 52 insertions(+), 23 deletions(-) diff --git a/src/components.d.ts b/src/components.d.ts index 41f83136c..b9087c84a 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -337,6 +337,10 @@ export namespace Components { interface PciCalculator { } interface PdfDownload { + /** + * number: The default number of labels per page to export + */ + "defaultNumLabelsPerPage": number; /** * boolean: Controls the enabled/disabled state of download */ @@ -384,6 +388,10 @@ export namespace Components { * number: The default value to show for the buffer unit ("feet"|"meters"|"miles"|"kilometers") */ "defaultBufferUnit": DistanceUnit; + /** + * number: The default number of labels per page to export + */ + "defaultNumLabelsPerPage": any; /** * The effect that will be applied when featureHighlightEnabled is true esri/layers/support/FeatureEffect: https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-FeatureEffect.html */ @@ -1243,6 +1251,10 @@ declare namespace LocalJSX { interface PciCalculator { } interface PdfDownload { + /** + * number: The default number of labels per page to export + */ + "defaultNumLabelsPerPage"?: number; /** * boolean: Controls the enabled/disabled state of download */ @@ -1273,6 +1285,10 @@ declare namespace LocalJSX { * number: The default value to show for the buffer unit ("feet"|"meters"|"miles"|"kilometers") */ "defaultBufferUnit"?: DistanceUnit; + /** + * number: The default number of labels per page to export + */ + "defaultNumLabelsPerPage"?: any; /** * The effect that will be applied when featureHighlightEnabled is true esri/layers/support/FeatureEffect: https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-FeatureEffect.html */ diff --git a/src/components/pdf-download/pdf-download.tsx b/src/components/pdf-download/pdf-download.tsx index 317fbf706..7589e4db3 100644 --- a/src/components/pdf-download/pdf-download.tsx +++ b/src/components/pdf-download/pdf-download.tsx @@ -42,6 +42,11 @@ export class PdfDownload { // //-------------------------------------------------------------------------- + /** + * number: The default number of labels per page to export + */ + @Prop() defaultNumLabelsPerPage: number; + /** * boolean: Controls the enabled/disabled state of download */ @@ -239,7 +244,7 @@ export class PdfDownload { option.value = l; option.innerHTML = this._getLabelSizeText(l); this._labelInfoElement.appendChild(option); - if (i === 0) { + if (this.defaultNumLabelsPerPage ? parseInt(l.descriptionPDF.labelsPerPageDisplay, 10) === this.defaultNumLabelsPerPage : i === 0) { // Setting selected wasn't enough to trigger it being the 'selectedOption' option.selected = true; this._labelInfoElement.selectedOption = option; diff --git a/src/components/pdf-download/readme.md b/src/components/pdf-download/readme.md index 1bb321a9f..001083c8e 100644 --- a/src/components/pdf-download/readme.md +++ b/src/components/pdf-download/readme.md @@ -7,9 +7,10 @@ ## Properties -| Property | Attribute | Description | Type | Default | -| ---------- | ---------- | -------------------------------------------------------- | --------- | ------- | -| `disabled` | `disabled` | boolean: Controls the enabled/disabled state of download | `boolean` | `false` | +| Property | Attribute | Description | Type | Default | +| ------------------------- | ----------------------------- | -------------------------------------------------------- | --------- | ----------- | +| `defaultNumLabelsPerPage` | `default-num-labels-per-page` | number: The default number of labels per page to export | `number` | `undefined` | +| `disabled` | `disabled` | boolean: Controls the enabled/disabled state of download | `boolean` | `false` | ## Methods diff --git a/src/components/public-notification/public-notification.tsx b/src/components/public-notification/public-notification.tsx index 8bb8fe625..b0439e6bb 100644 --- a/src/components/public-notification/public-notification.tsx +++ b/src/components/public-notification/public-notification.tsx @@ -73,6 +73,11 @@ export class PublicNotification { */ @Prop() defaultBufferUnit: DistanceUnit; + /** + * number: The default number of labels per page to export + */ + @Prop() defaultNumLabelsPerPage; + /** * The effect that will be applied when featureHighlightEnabled is true * @@ -1029,6 +1034,7 @@ export class PublicNotification {
{ this._downloadTools = el }} /> diff --git a/src/components/public-notification/readme.md b/src/components/public-notification/readme.md index b7b2e9449..952a2f161 100644 --- a/src/components/public-notification/readme.md +++ b/src/components/public-notification/readme.md @@ -7,25 +7,26 @@ ## Properties -| Property | Attribute | Description | Type | Default | -| ------------------------- | --------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------- | --------------------- | -| `addresseeLayerIds` | -- | string[]: List of layer ids that should be shown as potential addressee layers | `string[]` | `[]` | -| `bufferColor` | `buffer-color` | string \| number[] \| object with r, g, b, a: https://developers.arcgis.com/javascript/latest/api-reference/esri-Color.html | `any` | `[227, 139, 79, 0.8]` | -| `bufferOutlineColor` | `buffer-outline-color` | string \| number[] \| object with r, g, b, a: https://developers.arcgis.com/javascript/latest/api-reference/esri-Color.html | `any` | `[255, 255, 255]` | -| `customLabelEnabled` | `custom-label-enabled` | boolean: When true the user can define a name for each notification list | `boolean` | `undefined` | -| `defaultBufferDistance` | `default-buffer-distance` | number: The default value to show for the buffer distance | `number` | `undefined` | -| `defaultBufferUnit` | `default-buffer-unit` | number: The default value to show for the buffer unit ("feet"\|"meters"\|"miles"\|"kilometers") | `"feet" \| "kilometers" \| "meters" \| "miles"` | `undefined` | -| `featureEffect` | -- | The effect that will be applied when featureHighlightEnabled is true esri/layers/support/FeatureEffect: https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-FeatureEffect.html | `FeatureEffect` | `undefined` | -| `featureHighlightEnabled` | `feature-highlight-enabled` | boolean: When enabled features will be highlighted when their notification list item is clicked. | `boolean` | `undefined` | -| `mapView` | -- | esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html | `MapView` | `undefined` | -| `noResultText` | `no-result-text` | string: The value to show for no results when left empty the default text "0 selected features from {layerTitle}" will be shown | `string` | `undefined` | -| `searchConfiguration` | -- | ISearchConfiguration: Configuration details for the Search widget | `ISearchConfiguration` | `undefined` | -| `selectionLayerIds` | -- | string[]: List of layer ids that should be shown as potential selection layers when skectching with "Use layer features" option | `string[]` | `[]` | -| `showRefineSelection` | `show-refine-selection` | boolean: When true the refine selection workflow will be included in the UI | `boolean` | `false` | -| `showSearchSettings` | `show-search-settings` | boolean: When false no buffer distance or unit controls will be exposed | `boolean` | `true` | -| `sketchLineSymbol` | `sketch-line-symbol` | esri/symbols/SimpleLineSymbol \| JSON representation : https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-SimpleLineSymbol.html A JSON representation of the instance in the ArcGIS format. See the ArcGIS REST API documentation for examples of the structure of various input JSON objects. https://developers.arcgis.com/documentation/common-data-types/symbol-objects.htm | `any` | `undefined` | -| `sketchPointSymbol` | `sketch-point-symbol` | esri/symbols/SimpleMarkerSymbol \| JSON representation: https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-SimpleMarkerSymbol.html A JSON representation of the instance in the ArcGIS format. See the ArcGIS REST API documentation for examples of the structure of various input JSON objects. https://developers.arcgis.com/documentation/common-data-types/symbol-objects.htm | `any` | `undefined` | -| `sketchPolygonSymbol` | `sketch-polygon-symbol` | esri/symbols/SimpleFillSymbol \| JSON representation: https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-SimpleFillSymbol.html A JSON representation of the instance in the ArcGIS format. See the ArcGIS REST API documentation for examples of the structure of various input JSON objects. https://developers.arcgis.com/documentation/common-data-types/symbol-objects.htm | `any` | `undefined` | +| Property | Attribute | Description | Type | Default | +| ------------------------- | ----------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------- | --------------------- | +| `addresseeLayerIds` | -- | string[]: List of layer ids that should be shown as potential addressee layers | `string[]` | `[]` | +| `bufferColor` | `buffer-color` | string \| number[] \| object with r, g, b, a: https://developers.arcgis.com/javascript/latest/api-reference/esri-Color.html | `any` | `[227, 139, 79, 0.8]` | +| `bufferOutlineColor` | `buffer-outline-color` | string \| number[] \| object with r, g, b, a: https://developers.arcgis.com/javascript/latest/api-reference/esri-Color.html | `any` | `[255, 255, 255]` | +| `customLabelEnabled` | `custom-label-enabled` | boolean: When true the user can define a name for each notification list | `boolean` | `undefined` | +| `defaultBufferDistance` | `default-buffer-distance` | number: The default value to show for the buffer distance | `number` | `undefined` | +| `defaultBufferUnit` | `default-buffer-unit` | number: The default value to show for the buffer unit ("feet"\|"meters"\|"miles"\|"kilometers") | `"feet" \| "kilometers" \| "meters" \| "miles"` | `undefined` | +| `defaultNumLabelsPerPage` | `default-num-labels-per-page` | number: The default number of labels per page to export | `any` | `undefined` | +| `featureEffect` | -- | The effect that will be applied when featureHighlightEnabled is true esri/layers/support/FeatureEffect: https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-FeatureEffect.html | `FeatureEffect` | `undefined` | +| `featureHighlightEnabled` | `feature-highlight-enabled` | boolean: When enabled features will be highlighted when their notification list item is clicked. | `boolean` | `undefined` | +| `mapView` | -- | esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html | `MapView` | `undefined` | +| `noResultText` | `no-result-text` | string: The value to show for no results when left empty the default text "0 selected features from {layerTitle}" will be shown | `string` | `undefined` | +| `searchConfiguration` | -- | ISearchConfiguration: Configuration details for the Search widget | `ISearchConfiguration` | `undefined` | +| `selectionLayerIds` | -- | string[]: List of layer ids that should be shown as potential selection layers when skectching with "Use layer features" option | `string[]` | `[]` | +| `showRefineSelection` | `show-refine-selection` | boolean: When true the refine selection workflow will be included in the UI | `boolean` | `false` | +| `showSearchSettings` | `show-search-settings` | boolean: When false no buffer distance or unit controls will be exposed | `boolean` | `true` | +| `sketchLineSymbol` | `sketch-line-symbol` | esri/symbols/SimpleLineSymbol \| JSON representation : https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-SimpleLineSymbol.html A JSON representation of the instance in the ArcGIS format. See the ArcGIS REST API documentation for examples of the structure of various input JSON objects. https://developers.arcgis.com/documentation/common-data-types/symbol-objects.htm | `any` | `undefined` | +| `sketchPointSymbol` | `sketch-point-symbol` | esri/symbols/SimpleMarkerSymbol \| JSON representation: https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-SimpleMarkerSymbol.html A JSON representation of the instance in the ArcGIS format. See the ArcGIS REST API documentation for examples of the structure of various input JSON objects. https://developers.arcgis.com/documentation/common-data-types/symbol-objects.htm | `any` | `undefined` | +| `sketchPolygonSymbol` | `sketch-polygon-symbol` | esri/symbols/SimpleFillSymbol \| JSON representation: https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-SimpleFillSymbol.html A JSON representation of the instance in the ArcGIS format. See the ArcGIS REST API documentation for examples of the structure of various input JSON objects. https://developers.arcgis.com/documentation/common-data-types/symbol-objects.htm | `any` | `undefined` | ## Events From 12df6131e28d591e4700ecc7bdaf706370c0bb69 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Thu, 3 Aug 2023 10:18:28 -0600 Subject: [PATCH 090/406] add defaultExportTitle --- src/components.d.ts | 8 ++++++ .../public-notification.tsx | 26 ++++++++++++++++--- src/components/public-notification/readme.md | 1 + 3 files changed, 32 insertions(+), 3 deletions(-) diff --git a/src/components.d.ts b/src/components.d.ts index b9087c84a..7951dcd16 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -388,6 +388,10 @@ export namespace Components { * number: The default value to show for the buffer unit ("feet"|"meters"|"miles"|"kilometers") */ "defaultBufferUnit": DistanceUnit; + /** + * string: The default value to use for the export title + */ + "defaultExportTitle": string; /** * number: The default number of labels per page to export */ @@ -1285,6 +1289,10 @@ declare namespace LocalJSX { * number: The default value to show for the buffer unit ("feet"|"meters"|"miles"|"kilometers") */ "defaultBufferUnit"?: DistanceUnit; + /** + * string: The default value to use for the export title + */ + "defaultExportTitle"?: string; /** * number: The default number of labels per page to export */ diff --git a/src/components/public-notification/public-notification.tsx b/src/components/public-notification/public-notification.tsx index b0439e6bb..30855a79d 100644 --- a/src/components/public-notification/public-notification.tsx +++ b/src/components/public-notification/public-notification.tsx @@ -73,6 +73,11 @@ export class PublicNotification { */ @Prop() defaultBufferUnit: DistanceUnit; + /** + * string: The default value to use for the export title + */ + @Prop() defaultExportTitle = ""; + /** * number: The default number of labels per page to export */ @@ -269,10 +274,15 @@ export class PublicNotification { */ protected _mediaQuery: MediaQueryList; + /** + * Component that contains the text to be used as the title for PDF pages + */ + protected _titleElement: HTMLCalciteInputTextElement; + /** * Text to be used as title on PDF pages */ - protected _title: HTMLCalciteInputTextElement; + protected _titleValue = undefined; /** * number: The number of selected features @@ -1022,6 +1032,7 @@ export class PublicNotification { protected _getExportOptions(): VNode { const displayClass = this._exportType === EExportType.PDF ? "display-block" : "display-none"; const titleOptionsClass = this._addTitle ? "display-block" : "display-none"; + const title = this._titleValue !== undefined ? this._titleValue : this.defaultExportTitle ? this.defaultExportTitle : ""; return (
{this._getLabel(this._translations.pdfOptions, true)} @@ -1056,8 +1067,10 @@ export class PublicNotification { {this._getLabel(this._translations.title, true, "")} this._changeTitle()} placeholder={this._translations.titlePlaceholder} - ref={(el) => { this._title = el }} + ref={(el) => { this._titleElement = el }} + value={title} />
@@ -1155,6 +1168,13 @@ export class PublicNotification { ) } + /** + * Store the user defined title value + */ + protected _changeTitle(): void { + this._titleValue = this._titleElement.value; + } + /** * Create an informational notice * @@ -1287,7 +1307,7 @@ export class PublicNotification { await this._downloadTools.downloadPDF( exportInfos, this._removeDuplicates.checked, - this._addTitle ? this._title.value : "", + this._addTitle ? this._titleElement.value : "", initialImageDataUrl ); this._fetchingData = false; diff --git a/src/components/public-notification/readme.md b/src/components/public-notification/readme.md index 952a2f161..7b63207b5 100644 --- a/src/components/public-notification/readme.md +++ b/src/components/public-notification/readme.md @@ -15,6 +15,7 @@ | `customLabelEnabled` | `custom-label-enabled` | boolean: When true the user can define a name for each notification list | `boolean` | `undefined` | | `defaultBufferDistance` | `default-buffer-distance` | number: The default value to show for the buffer distance | `number` | `undefined` | | `defaultBufferUnit` | `default-buffer-unit` | number: The default value to show for the buffer unit ("feet"\|"meters"\|"miles"\|"kilometers") | `"feet" \| "kilometers" \| "meters" \| "miles"` | `undefined` | +| `defaultExportTitle` | `default-export-title` | string: The default value to use for the export title | `string` | `""` | | `defaultNumLabelsPerPage` | `default-num-labels-per-page` | number: The default number of labels per page to export | `any` | `undefined` | | `featureEffect` | -- | The effect that will be applied when featureHighlightEnabled is true esri/layers/support/FeatureEffect: https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-FeatureEffect.html | `FeatureEffect` | `undefined` | | `featureHighlightEnabled` | `feature-highlight-enabled` | boolean: When enabled features will be highlighted when their notification list item is clicked. | `boolean` | `undefined` | From 63cb3c081d6d146cece24d888caecbc02d82df0c Mon Sep 17 00:00:00 2001 From: John Hauck Date: Thu, 3 Aug 2023 10:57:32 -0600 Subject: [PATCH 091/406] update version --- CHANGELOG.md | 5 ++++- package-lock.json | 4 ++-- package.json | 2 +- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index acd1ab551..18e82e522 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,8 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm ## [Unreleased] +## [0.6.3] - Aug 3rd 2023 + ## [0.6.2] - June 15th 2023 ## [0.6.1] - June 14th 2023 @@ -187,4 +189,5 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm [0.6.0]: https://github.com/Esri/solution.js/compare/v0.5.20...v0.6.0 "v0.6.0" [0.6.1]: https://github.com/Esri/solution.js/compare/v0.6.0...v0.6.1 "v0.6.1" [0.6.2]: https://github.com/Esri/solution.js/compare/v0.6.1...v0.6.2 "v0.6.2" -[Unreleased]: https://github.com/Esri/solution.js/compare/v0.6.2...HEAD "Unreleased Changes" +[0.6.3]: https://github.com/Esri/solution.js/compare/v0.6.2...v0.6.3 "v0.6.3" +[Unreleased]: https://github.com/Esri/solution.js/compare/v0.6.3...HEAD "Unreleased Changes" diff --git a/package-lock.json b/package-lock.json index bc07fa57f..25bea19ed 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@esri/solutions-components", - "version": "0.6.2", + "version": "0.6.3", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@esri/solutions-components", - "version": "0.6.2", + "version": "0.6.3", "license": "Apache-2.0", "dependencies": { "@esri/hub-common": "^12.37.1", diff --git a/package.json b/package.json index e13f04863..a4f0663dc 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@esri/solutions-components", - "version": "0.6.2", + "version": "0.6.3", "description": "Web Components for Esri's Solutions Applications", "main": "dist/index.cjs.js", "module": "dist/index.js", From ecee466f8335da032c8250f9d026fcb94d533796 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 3 Aug 2023 17:41:53 +0000 Subject: [PATCH 092/406] Bump tough-cookie from 4.1.2 to 4.1.3 Bumps [tough-cookie](https://github.com/salesforce/tough-cookie) from 4.1.2 to 4.1.3. - [Release notes](https://github.com/salesforce/tough-cookie/releases) - [Changelog](https://github.com/salesforce/tough-cookie/blob/master/CHANGELOG.md) - [Commits](https://github.com/salesforce/tough-cookie/compare/v4.1.2...v4.1.3) --- updated-dependencies: - dependency-name: tough-cookie dependency-type: indirect ... Signed-off-by: dependabot[bot] --- package-lock.json | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/package-lock.json b/package-lock.json index 25bea19ed..6a7688091 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9685,9 +9685,9 @@ } }, "node_modules/tough-cookie": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.2.tgz", - "integrity": "sha512-G9fqXWoYFZgTc2z8Q5zaHy/vJMjm+WV0AkAeHxVCQiEB1b+dGvWzFW6QV07cY5jQ5gRkeid2qIkzkxUnmoQZUQ==", + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.3.tgz", + "integrity": "sha512-aX/y5pVRkfRnfmuX+OdbSdXvPe6ieKX/G2s7e98f4poJHnqH3281gDPm/metm6E/WRamfx7WC4HUqkWHfQHprw==", "dev": true, "dependencies": { "psl": "^1.1.33", @@ -17746,9 +17746,9 @@ } }, "tough-cookie": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.2.tgz", - "integrity": "sha512-G9fqXWoYFZgTc2z8Q5zaHy/vJMjm+WV0AkAeHxVCQiEB1b+dGvWzFW6QV07cY5jQ5gRkeid2qIkzkxUnmoQZUQ==", + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.3.tgz", + "integrity": "sha512-aX/y5pVRkfRnfmuX+OdbSdXvPe6ieKX/G2s7e98f4poJHnqH3281gDPm/metm6E/WRamfx7WC4HUqkWHfQHprw==", "dev": true, "requires": { "psl": "^1.1.33", From ac18d2ba8968ed8b4a1b283635191205d57946a2 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Thu, 3 Aug 2023 15:15:32 -0600 Subject: [PATCH 093/406] non spatial table support --- src/components.d.ts | 8 ++-- src/components/card-manager/card-manager.tsx | 10 ++--- src/components/card-manager/readme.md | 8 ++-- src/components/edit-card/edit-card.css | 2 +- src/components/layer-table/layer-table.tsx | 40 +++++++++---------- .../map-select-tools/map-select-tools.tsx | 6 +-- .../refine-selection/refine-selection.tsx | 4 +- src/utils/interfaces.ts | 7 ++-- src/utils/mapViewUtils.ts | 7 ++-- 9 files changed, 46 insertions(+), 46 deletions(-) diff --git a/src/components.d.ts b/src/components.d.ts index 01244af17..87d7876bd 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -45,9 +45,9 @@ export namespace Components { } interface CardManager { /** - * esri/views/layers/FeatureLayerView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-layers-FeatureLayerView.html + * esri/views/layers/FeatureLayer: https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html */ - "layerView": __esri.FeatureLayerView; + "layer": __esri.FeatureLayer; /** * esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html */ @@ -977,9 +977,9 @@ declare namespace LocalJSX { } interface CardManager { /** - * esri/views/layers/FeatureLayerView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-layers-FeatureLayerView.html + * esri/views/layers/FeatureLayer: https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html */ - "layerView"?: __esri.FeatureLayerView; + "layer"?: __esri.FeatureLayer; /** * esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html */ diff --git a/src/components/card-manager/card-manager.tsx b/src/components/card-manager/card-manager.tsx index bf7cfcd0e..e3e4d589e 100644 --- a/src/components/card-manager/card-manager.tsx +++ b/src/components/card-manager/card-manager.tsx @@ -18,7 +18,7 @@ import { Component, Element, Host, h, Listen, Prop, State } from "@stencil/core" import CardManager_T9n from "../../assets/t9n/card-manager/resources.json"; import { getLocaleComponentStrings } from "../../utils/locale"; import { queryFeaturesByID } from "../../utils/queryUtils"; -import { getMapLayerView } from "../../utils/mapViewUtils"; +import { getLayer } from "../../utils/mapViewUtils"; @Component({ tag: "card-manager", @@ -40,9 +40,9 @@ export class CardManager { //-------------------------------------------------------------------------- /** - * esri/views/layers/FeatureLayerView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-layers-FeatureLayerView.html + * esri/views/layers/FeatureLayer: https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html */ - @Prop() layerView: __esri.FeatureLayerView; + @Prop() layer: __esri.FeatureLayer; /** * esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html @@ -99,7 +99,7 @@ export class CardManager { const ids = evt.detail; this._cardLoading = true; // only query if we have some ids...query with no ids will result in all features being returned - const featureSet = ids.length > 0 ? await queryFeaturesByID(ids, this.layerView.layer, [], false, this.mapView.spatialReference) : []; + const featureSet = ids.length > 0 ? await queryFeaturesByID(ids, this.layer, [], false, this.mapView.spatialReference) : []; this._graphics = featureSet; this._cardLoading = false; } @@ -112,7 +112,7 @@ export class CardManager { evt: CustomEvent ): Promise { const id: string = evt.detail[0]; - this.layerView = await getMapLayerView(this.mapView, id); + this.layer = await getLayer(this.mapView, id); } //-------------------------------------------------------------------------- diff --git a/src/components/card-manager/readme.md b/src/components/card-manager/readme.md index 638783a47..7e9b75854 100644 --- a/src/components/card-manager/readme.md +++ b/src/components/card-manager/readme.md @@ -7,10 +7,10 @@ ## Properties -| Property | Attribute | Description | Type | Default | -| ----------- | --------- | ----------------------------------------------------------------------------------------------------------------------------------------- | ------------------ | ----------- | -| `layerView` | -- | esri/views/layers/FeatureLayerView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-layers-FeatureLayerView.html | `FeatureLayerView` | `undefined` | -| `mapView` | -- | esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html | `MapView` | `undefined` | +| Property | Attribute | Description | Type | Default | +| --------- | --------- | --------------------------------------------------------------------------------------------------------------------------- | -------------- | ----------- | +| `layer` | -- | esri/views/layers/FeatureLayer: https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html | `FeatureLayer` | `undefined` | +| `mapView` | -- | esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html | `MapView` | `undefined` | ## Dependencies diff --git a/src/components/edit-card/edit-card.css b/src/components/edit-card/edit-card.css index 520f33ff1..f48137f58 100644 --- a/src/components/edit-card/edit-card.css +++ b/src/components/edit-card/edit-card.css @@ -14,7 +14,7 @@ * limitations under the License. */ - :host { +:host { display: block; } diff --git a/src/components/layer-table/layer-table.tsx b/src/components/layer-table/layer-table.tsx index 659fcc0f6..9614d5c2c 100644 --- a/src/components/layer-table/layer-table.tsx +++ b/src/components/layer-table/layer-table.tsx @@ -18,7 +18,7 @@ import { Component, Element, Event, EventEmitter, Host, h, Method, Prop, State, import LayerTable_T9n from "../../assets/t9n/layer-table/resources.json"; import { loadModules } from "../../utils/loadModules"; import { getLocaleComponentStrings } from "../../utils/locale"; -import { getMapLayerView, getMapLayerIds } from "../../utils/mapViewUtils"; +import { getLayer, getMapLayerIds } from "../../utils/mapViewUtils"; import { queryFeaturesByID, queryAllIds } from "../../utils/queryUtils"; import * as downloadUtils from "../../utils/downloadUtils"; import { IExportInfos, IMapClick } from "../../utils/interfaces"; @@ -64,9 +64,9 @@ export class LayerTable { @State() _fetchingData = false; /** - * esri/views/layers/FeatureLayerView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-layers-FeatureLayerView.html + * esri/views/layers/FeatureLayer: https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html */ - @State() _layerView: __esri.FeatureLayerView; + @State() _layer: __esri.FeatureLayer; /** * number[]: A list of indexes that are currently selected @@ -173,7 +173,7 @@ export class LayerTable { async mapViewWatchHandler(): Promise { this._fetchingData = true; const mapLayerIds = await getMapLayerIds(this.mapView); - this._layerView = await getMapLayerView(this.mapView, mapLayerIds[0]); + this._layer = await getLayer(this.mapView, mapLayerIds[0]); this._resetTable(); this.reactiveUtils.on( () => this.mapView, @@ -188,8 +188,8 @@ export class LayerTable { /** * watch for changes in layer view and verify if it has editing enabled */ - @Watch("_layerView") - async _layerViewWatchHandler(): Promise { + @Watch("_layer") + async _layerWatchHandler(): Promise { this._fetchingData = true; this._resetTable(); this._fetchingData = false; @@ -243,7 +243,7 @@ export class LayerTable { * Renders the component. */ render() { - if (!this._layerView) { + if (!this._layer) { return null; } const tableNodeClass = this._fetchingData ? "display-none" : ""; @@ -463,9 +463,9 @@ export class LayerTable { * @returns void */ protected _getTable(node: HTMLDivElement): void { - if (this._layerView?.layer) { + if (this._layer) { this._table = new this.FeatureTable({ - layer: this._layerView.layer, + layer: this._layer, view: this.mapView, //editingEnabled: this._editEnabled, highlightOnRowSelectEnabled: true, @@ -490,9 +490,9 @@ export class LayerTable { * @returns void */ protected _resetTable(): void { - if (this._layerView?.layer && this._table) { - this._table.layer = this._layerView.layer; - this._editEnabled = this._layerView.layer.editingEnabled; + if (this._layer && this._table) { + this._table.layer = this._layer; + this._editEnabled = this._layer.editingEnabled; this._table.view = this.mapView; this._table.editingEnabled = this._editEnabled; this._table.clearSelectionFilter(); @@ -509,7 +509,7 @@ export class LayerTable { evt: IMapClick ): Promise { const opts = { - include: this._layerView.layer + include: this._layer }; const hitTestResult = await this.mapView.hitTest(evt.screenPoint, opts); if (hitTestResult.results.length > 0) { @@ -604,10 +604,10 @@ export class LayerTable { protected async _exportToCSV(): Promise { const exportInfos: IExportInfos = {}; const ids = this._table.highlightIds.toArray(); - exportInfos[this._layerView.layer.id] = { + exportInfos[this._layer.id] = { selectionSetNames: [], ids, - layerView: this._layerView + layer: this._layer } void downloadUtils.downloadCSV( exportInfos, @@ -648,7 +648,7 @@ export class LayerTable { this._alertMessage = this._translations.confirm; this._alertKind = "danger"; this._alertActionFunction = () => { - void this._layerView.layer.applyEdits({ + void this._layer.applyEdits({ deleteFeatures: this._table.highlightIds.toArray() }); this._alertOpen = false; @@ -691,13 +691,13 @@ export class LayerTable { evt: CustomEvent ): Promise { const id: string = evt.detail[0]; - if (id !== this._layerView?.layer.id || this._allIds.length === 0) { + if (id !== this._layer.id || this._allIds.length === 0) { this._fetchingData = true; this._table.highlightIds.removeAll(); - this._layerView = await getMapLayerView(this.mapView, id); - this._allIds = await queryAllIds(this._layerView.layer) + this._layer = await getLayer(this.mapView, id); + this._allIds = await queryAllIds(this._layer) this._selectedIndexes = []; - this._table.layer = this._layerView.layer; + this._table.layer = this._layer; this._table.render(); this._fetchingData = false; } diff --git a/src/components/map-select-tools/map-select-tools.tsx b/src/components/map-select-tools/map-select-tools.tsx index 212abc0d3..74b15b54c 100644 --- a/src/components/map-select-tools/map-select-tools.tsx +++ b/src/components/map-select-tools/map-select-tools.tsx @@ -16,7 +16,7 @@ import { Component, Element, Event, EventEmitter, Host, h, Method, Listen, Prop, State, VNode, Watch } from "@stencil/core"; import { loadModules } from "../../utils/loadModules"; -import { highlightFeatures, getMapLayerView, goToSelection } from "../../utils/mapViewUtils"; +import { highlightFeatures, getFeatureLayerView, goToSelection } from "../../utils/mapViewUtils"; import { getQueryGeoms, queryFeaturesByGeometry, queryObjectIds } from "../../utils/queryUtils"; import { DistanceUnit, EWorkflowType, ILayerSourceConfigItem, ILocatorSourceConfigItem, ISearchConfiguration, ISelectionSet } from "../../utils/interfaces"; import state from "../../utils/publicNotificationStore"; @@ -1159,7 +1159,7 @@ export class MapSelectTools { ): Promise { if (Array.isArray(evt.detail) && evt.detail.length > 0) { const layerPromises = evt.detail.map(id => { - return getMapLayerView(this.mapView, id) + return getFeatureLayerView(this.mapView, id) }); return Promise.all(layerPromises).then((layerViews) => { @@ -1191,7 +1191,7 @@ export class MapSelectTools { ): Promise { const id: string = evt?.detail?.length > 0 ? evt.detail[0] : ""; if (!this.selectLayerView || id !== this.selectLayerView.layer.id) { - this.selectLayerView = await getMapLayerView(this.mapView, id); + this.selectLayerView = await getFeatureLayerView(this.mapView, id); this._updateLabel(); this._bufferGeometry ? await this._selectFeatures([this._bufferGeometry]) : diff --git a/src/components/refine-selection/refine-selection.tsx b/src/components/refine-selection/refine-selection.tsx index e0aad42bb..d76c2d1d7 100644 --- a/src/components/refine-selection/refine-selection.tsx +++ b/src/components/refine-selection/refine-selection.tsx @@ -16,7 +16,7 @@ import { Component, Element, Event, EventEmitter, Host, h, Prop, State, VNode } from "@stencil/core"; import { EDrawMode, ESelectionMode, EWorkflowType, IRefineOperation, ISelectionSet } from "../../utils/interfaces"; -import { getIdSets, getMapLayerView, highlightAllFeatures } from "../../utils/mapViewUtils"; +import { getIdSets, getFeatureLayerView, highlightAllFeatures } from "../../utils/mapViewUtils"; import { queryFeaturesByGeometry } from "../../utils/queryUtils"; import RefineSelection_T9n from "../../assets/t9n/refine-selection/resources.json"; import state from "../../utils/publicNotificationStore"; @@ -386,7 +386,7 @@ export class RefineSelection { refineInfo[id] = { addIds: [], removeIds: [], - layerView: await getMapLayerView(this.mapView, id) + layerView: await getFeatureLayerView(this.mapView, id) }; if (selectionSet) { diff --git a/src/utils/interfaces.ts b/src/utils/interfaces.ts index e2efa6d74..833d14623 100644 --- a/src/utils/interfaces.ts +++ b/src/utils/interfaces.ts @@ -453,7 +453,8 @@ export interface IExportInfos { } export interface IExportInfo { - ids: number[], - layerView: __esri.FeatureLayerView - selectionSetNames: string[] + ids: number[]; + layer?: __esri.FeatureLayer; + layerView?: __esri.FeatureLayerView; + selectionSetNames: string[]; } diff --git a/src/utils/mapViewUtils.ts b/src/utils/mapViewUtils.ts index 485863724..a70bcfa7c 100644 --- a/src/utils/mapViewUtils.ts +++ b/src/utils/mapViewUtils.ts @@ -54,7 +54,6 @@ export async function getMapTableHash( let tableHash = {}; await mapView.when(() => { tableHash = mapView.map.allTables.toArray().reduce((prev, cur) => { - console.log(cur.type) prev[cur.id] = cur.title; return prev; }, {}); @@ -116,11 +115,11 @@ export async function getMapTableIds( * @returns Promise resolving with the fetched layer view * */ -export async function getMapLayerView( +export async function getFeatureLayerView( mapView: __esri.MapView, id: string ): Promise<__esri.FeatureLayerView> { - const layer = await getMapLayer(mapView, id); + const layer = await getLayer(mapView, id); return layer ? await mapView.whenLayerView(layer) : undefined; } @@ -133,7 +132,7 @@ export async function getMapLayerView( * @returns Promise resolving with the fetched layer * */ -export async function getMapLayer( +export async function getLayer( mapView: __esri.MapView, id: string ): Promise<__esri.FeatureLayer> { From 9aa7f21feb61a4375feaf93b402fe04adbb6e8c8 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Thu, 3 Aug 2023 16:22:13 -0600 Subject: [PATCH 094/406] update CS demo to load custom map --- src/demos/crowdsource-manager.html | 47 ++++++++++++++++++++---------- 1 file changed, 31 insertions(+), 16 deletions(-) diff --git a/src/demos/crowdsource-manager.html b/src/demos/crowdsource-manager.html index c9ec095fb..323e39d34 100644 --- a/src/demos/crowdsource-manager.html +++ b/src/demos/crowdsource-manager.html @@ -41,23 +41,38 @@ From 2e9c166e49fff63661363b664cd42c97010d9c68 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Fri, 4 Aug 2023 14:18:21 -0600 Subject: [PATCH 095/406] handle lingering selections --- src/components/info-card/info-card.tsx | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/components/info-card/info-card.tsx b/src/components/info-card/info-card.tsx index 906db9423..5d4283d4c 100644 --- a/src/components/info-card/info-card.tsx +++ b/src/components/info-card/info-card.tsx @@ -264,10 +264,13 @@ export class InfoCard { closeButton: false, heading: false }, - view: this.mapView + view: this.mapView, + viewModel: { + featureViewModelAbilities: { + attachmentsContent: true + } + } }); - } else { - this._features.view = this.mapView; } } From 2496685ace89a86cedc14f0b0b71699e1c3072ea Mon Sep 17 00:00:00 2001 From: John Hauck Date: Fri, 4 Aug 2023 14:31:24 -0600 Subject: [PATCH 096/406] update toggleShowSelected --- src/components/layer-table/layer-table.tsx | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/components/layer-table/layer-table.tsx b/src/components/layer-table/layer-table.tsx index 9614d5c2c..24fd61d1b 100644 --- a/src/components/layer-table/layer-table.tsx +++ b/src/components/layer-table/layer-table.tsx @@ -409,7 +409,7 @@ export class LayerTable { this._showSelected()} + onClick={() => this._toggleShowSelected()} > { this._showOnlySelected ? this._translations.showAll : @@ -479,6 +479,13 @@ export class LayerTable { this._table.highlightIds.on("change", () => { this._selectedIndexes = this._table.highlightIds.toArray(); + if (this._showOnlySelected) { + if (this._selectedIndexes.length > 0) { + this._table.filterBySelection(); + } else { + this._toggleShowSelected(); + } + } this.featureSelectionChange.emit(this._selectedIndexes); }); } @@ -556,7 +563,7 @@ export class LayerTable { * * @returns void */ - protected _showSelected(): void { + protected _toggleShowSelected(): void { this._showOnlySelected = !this._showOnlySelected; if (this._showOnlySelected) { this._table.filterBySelection(); From c5584b7ca5d5aa5fe36b4350d3186de6fbf36e87 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Fri, 4 Aug 2023 14:40:32 -0600 Subject: [PATCH 097/406] fix export csv issue --- src/utils/downloadUtils.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/utils/downloadUtils.ts b/src/utils/downloadUtils.ts index 01af1a2d9..8798f1fda 100644 --- a/src/utils/downloadUtils.ts +++ b/src/utils/downloadUtils.ts @@ -669,7 +669,7 @@ export async function consolidateLabels( Object.keys(exportInfos).forEach(k => { const labelInfo: IExportInfo = exportInfos[k]; - labelRequests.push(_prepareLabels(labelInfo.layerView.layer, labelInfo.ids, formatUsingLayerPopup, includeHeaderNames)); + labelRequests.push(_prepareLabels(labelInfo.layerView?.layer || labelInfo.layer, labelInfo.ids, formatUsingLayerPopup, includeHeaderNames)); if (isCSVExport) { // add the layer id as a temp value separator that we can use to split values for CSV export labelRequests.push(Promise.resolve([[k]])); From b578847c531b45fa656385bb566bcfe7eea9fac8 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Fri, 4 Aug 2023 15:12:47 -0600 Subject: [PATCH 098/406] move clear selection --- src/components/layer-table/layer-table.tsx | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/src/components/layer-table/layer-table.tsx b/src/components/layer-table/layer-table.tsx index 24fd61d1b..2d2e7ec28 100644 --- a/src/components/layer-table/layer-table.tsx +++ b/src/components/layer-table/layer-table.tsx @@ -384,6 +384,19 @@ export class LayerTable { {this._translations.delete} + this._clearSelection()} + text={this._translations.clearSelection} + text-enabled="true" + textEnabled={true} + /> + + {this._translations.clearSelection} + - this._clearSelection()} - > - {this._translations.clearSelection} - this._switchSelected()} From 32171b486477f49990963752572634d79e6289a1 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Mon, 7 Aug 2023 11:09:55 -0600 Subject: [PATCH 099/406] add _activeWorkflowHandle --- src/components/edit-card/edit-card.tsx | 22 +++++++++++++++++++--- src/components/layer-table/layer-table.tsx | 2 ++ 2 files changed, 21 insertions(+), 3 deletions(-) diff --git a/src/components/edit-card/edit-card.tsx b/src/components/edit-card/edit-card.tsx index 65ea4e4c7..dc6a43cc9 100644 --- a/src/components/edit-card/edit-card.tsx +++ b/src/components/edit-card/edit-card.tsx @@ -76,13 +76,18 @@ export class EditCard { // //-------------------------------------------------------------------------- + /** + * esri/core/Accessor: https://developers.arcgis.com/javascript/latest/api-reference/esri-core-Accessor.html#WatchHandle + */ + protected _activeWorkflowHandle: __esri.WatchHandle; + /** - * esri/widgets/Editor: https://developers.arcgis.com/javascript/latest/api-reference/esri-core-Accessor.html#WatchHandle + * esri/core/Accessor: https://developers.arcgis.com/javascript/latest/api-reference/esri-core-Accessor.html#WatchHandle */ protected _attachmentHandle: __esri.WatchHandle; /** - * esri/widgets/Editor: https://developers.arcgis.com/javascript/latest/api-reference/esri-core-Accessor.html#WatchHandle + * esri/core/Accessor: https://developers.arcgis.com/javascript/latest/api-reference/esri-core-Accessor.html#WatchHandle */ protected _editHandle: __esri.WatchHandle; @@ -287,9 +292,10 @@ export class EditCard { container }); - if (this._editHandle && this._attachmentHandle) { + if (this._editHandle && this._attachmentHandle && this._activeWorkflowHandle) { this._editHandle.remove(); this._attachmentHandle.remove(); + this._activeWorkflowHandle.remove(); } this._attachmentHandle = this.reactiveUtils.when( @@ -313,6 +319,16 @@ export class EditCard { } ); + this._activeWorkflowHandle = this.reactiveUtils.watch( + () => (this._editor.viewModel.activeWorkflow as any)?.activeWorkflow, + (activeWorkflow) => { + console.log("activeWorkflow.activeWorkflow.type: ", activeWorkflow?.type) + if (activeWorkflow?.type === "update-table-record" || activeWorkflow?.type === "create-features") { + this._shouldClose = false; + } + } + ); + // had issues with destroy before adding like this this._editContainer.appendChild(container); } diff --git a/src/components/layer-table/layer-table.tsx b/src/components/layer-table/layer-table.tsx index 2d2e7ec28..ce97db7eb 100644 --- a/src/components/layer-table/layer-table.tsx +++ b/src/components/layer-table/layer-table.tsx @@ -505,6 +505,8 @@ export class LayerTable { */ protected _resetTable(): void { if (this._layer && this._table) { + this._clearSelection(); + this.featureSelectionChange.emit(this._selectedIndexes); this._table.layer = this._layer; this._editEnabled = this._layer.editingEnabled; this._table.view = this.mapView; From 1ed1ef5898cfdf4a803c8e15bebd55c8da319d64 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Tue, 8 Aug 2023 13:58:09 -0600 Subject: [PATCH 100/406] show features heading and fix issue with related records --- src/components/info-card/info-card.tsx | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/src/components/info-card/info-card.tsx b/src/components/info-card/info-card.tsx index 5d4283d4c..476b7ad40 100644 --- a/src/components/info-card/info-card.tsx +++ b/src/components/info-card/info-card.tsx @@ -262,13 +262,10 @@ export class InfoCard { visibleElements: { actionBar: false, closeButton: false, - heading: false + heading: true }, - view: this.mapView, viewModel: { - featureViewModelAbilities: { - attachmentsContent: true - } + view: this.mapView } }); } From f2e5ff461941c8ffdceb7e12f025f578e20a4972 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Tue, 8 Aug 2023 14:58:36 -0600 Subject: [PATCH 101/406] remove console.log --- src/components/edit-card/edit-card.tsx | 1 - 1 file changed, 1 deletion(-) diff --git a/src/components/edit-card/edit-card.tsx b/src/components/edit-card/edit-card.tsx index dc6a43cc9..456fa5f42 100644 --- a/src/components/edit-card/edit-card.tsx +++ b/src/components/edit-card/edit-card.tsx @@ -322,7 +322,6 @@ export class EditCard { this._activeWorkflowHandle = this.reactiveUtils.watch( () => (this._editor.viewModel.activeWorkflow as any)?.activeWorkflow, (activeWorkflow) => { - console.log("activeWorkflow.activeWorkflow.type: ", activeWorkflow?.type) if (activeWorkflow?.type === "update-table-record" || activeWorkflow?.type === "create-features") { this._shouldClose = false; } From 8752a363b2bd2f0edb3e80bd2635ab480f1ad062 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Wed, 9 Aug 2023 13:34:15 -0600 Subject: [PATCH 102/406] update version --- CHANGELOG.md | 5 ++++- package-lock.json | 4 ++-- package.json | 2 +- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 18e82e522..6b62777ec 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,8 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm ## [Unreleased] +## [0.6.4] - Aug 9th 2023 + ## [0.6.3] - Aug 3rd 2023 ## [0.6.2] - June 15th 2023 @@ -190,4 +192,5 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm [0.6.1]: https://github.com/Esri/solution.js/compare/v0.6.0...v0.6.1 "v0.6.1" [0.6.2]: https://github.com/Esri/solution.js/compare/v0.6.1...v0.6.2 "v0.6.2" [0.6.3]: https://github.com/Esri/solution.js/compare/v0.6.2...v0.6.3 "v0.6.3" -[Unreleased]: https://github.com/Esri/solution.js/compare/v0.6.3...HEAD "Unreleased Changes" +[0.6.4]: https://github.com/Esri/solution.js/compare/v0.6.3...v0.6.4 "v0.6.4" +[Unreleased]: https://github.com/Esri/solution.js/compare/v0.6.4...HEAD "Unreleased Changes" diff --git a/package-lock.json b/package-lock.json index 25bea19ed..fb05151d1 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@esri/solutions-components", - "version": "0.6.3", + "version": "0.6.4", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@esri/solutions-components", - "version": "0.6.3", + "version": "0.6.4", "license": "Apache-2.0", "dependencies": { "@esri/hub-common": "^12.37.1", diff --git a/package.json b/package.json index a4f0663dc..952ab3ce6 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@esri/solutions-components", - "version": "0.6.3", + "version": "0.6.4", "description": "Web Components for Esri's Solutions Applications", "main": "dist/index.cjs.js", "module": "dist/index.js", From 6023025783c029f310261a1299c8266d3599ca33 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Thu, 10 Aug 2023 10:35:14 -0600 Subject: [PATCH 103/406] css update --- src/components/card-manager/card-manager.css | 4 ++++ src/components/card-manager/card-manager.tsx | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/src/components/card-manager/card-manager.css b/src/components/card-manager/card-manager.css index 3a417ff03..3f040ad52 100644 --- a/src/components/card-manager/card-manager.css +++ b/src/components/card-manager/card-manager.css @@ -55,6 +55,10 @@ border-radius: 5px; } +.height-full { + height: 100%; +} + card-manager { display: block; } diff --git a/src/components/card-manager/card-manager.tsx b/src/components/card-manager/card-manager.tsx index e3e4d589e..ede376c9a 100644 --- a/src/components/card-manager/card-manager.tsx +++ b/src/components/card-manager/card-manager.tsx @@ -139,7 +139,7 @@ export class CardManager { return ( -
+
Date: Thu, 10 Aug 2023 11:39:11 -0600 Subject: [PATCH 104/406] add hide map prop --- src/components.d.ts | 8 ++++++++ .../crowdsource-manager/crowdsource-manager.tsx | 17 ++++++++++++----- src/components/crowdsource-manager/readme.md | 7 ++++--- 3 files changed, 24 insertions(+), 8 deletions(-) diff --git a/src/components.d.ts b/src/components.d.ts index 87d7876bd..966d076ef 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -54,6 +54,10 @@ export namespace Components { "mapView": __esri.MapView; } interface CrowdsourceManager { + /** + * boolean: when true no map is displayed for the app + */ + "hideMap": boolean; /** * IMapInfo[]: array of map infos (name and id) */ @@ -986,6 +990,10 @@ declare namespace LocalJSX { "mapView"?: __esri.MapView; } interface CrowdsourceManager { + /** + * boolean: when true no map is displayed for the app + */ + "hideMap"?: boolean; /** * IMapInfo[]: array of map infos (name and id) */ diff --git a/src/components/crowdsource-manager/crowdsource-manager.tsx b/src/components/crowdsource-manager/crowdsource-manager.tsx index d0072e10e..33ca314a8 100644 --- a/src/components/crowdsource-manager/crowdsource-manager.tsx +++ b/src/components/crowdsource-manager/crowdsource-manager.tsx @@ -43,6 +43,11 @@ export class CrowdsourceManager { */ @Prop() mapInfos: IMapInfo[] = []; + /** + * boolean: when true no map is displayed for the app + */ + @Prop() hideMap = true; + //-------------------------------------------------------------------------- // // State (internal) @@ -156,7 +161,7 @@ export class CrowdsourceManager { {this._getAction("vertical-background", ELayoutMode.VERTICAL, this._translations.vertical)} {this._getAction("horizontal-background", ELayoutMode.HORIZONTAL, this._translations.horizontal)}
- {this._getBody(this._layoutMode, this._panelOpen)} + {this._getBody(this._layoutMode, this._panelOpen, this.hideMap)}
@@ -250,13 +255,14 @@ export class CrowdsourceManager { protected _getBody( layoutMode: ELayoutMode, - panelOpen: boolean + panelOpen: boolean, + hideMap: boolean ): VNode { const displayFlex = layoutMode === ELayoutMode.HORIZONTAL ? "" : "display-flex"; return (
- {this._getMap(layoutMode, panelOpen)} + {this._getMap(layoutMode, panelOpen, hideMap)} {this._getTable(layoutMode, panelOpen)}
@@ -265,7 +271,8 @@ export class CrowdsourceManager { protected _getMap( layoutMode: ELayoutMode, - panelOpen: boolean + panelOpen: boolean, + hideMap: boolean ): VNode { const mapDisplayClass = layoutMode === ELayoutMode.GRID ? "" : "display-none"; const cardManagerHeight = layoutMode === ELayoutMode.GRID ? "adjusted-height-50" : "adjusted-height-100"; @@ -273,7 +280,7 @@ export class CrowdsourceManager { return (
- + {hideMap ? undefined : ()}
diff --git a/src/components/crowdsource-manager/readme.md b/src/components/crowdsource-manager/readme.md index 2c78d334f..1bdc3adb5 100644 --- a/src/components/crowdsource-manager/readme.md +++ b/src/components/crowdsource-manager/readme.md @@ -7,9 +7,10 @@ ## Properties -| Property | Attribute | Description | Type | Default | -| ---------- | --------- | -------------------------------------------- | ------------ | ------- | -| `mapInfos` | -- | IMapInfo[]: array of map infos (name and id) | `IMapInfo[]` | `[]` | +| Property | Attribute | Description | Type | Default | +| ---------- | ---------- | -------------------------------------------------- | ------------ | ------- | +| `hideMap` | `hide-map` | boolean: when true no map is displayed for the app | `boolean` | `true` | +| `mapInfos` | -- | IMapInfo[]: array of map infos (name and id) | `IMapInfo[]` | `[]` | ## Dependencies From 04895a31fb3043ec3604296d542484a683dcc3bc Mon Sep 17 00:00:00 2001 From: John Hauck Date: Mon, 14 Aug 2023 15:00:27 -0600 Subject: [PATCH 105/406] fix lingering selection after mapview change --- .../crowdsource-manager/crowdsource-manager.tsx | 2 +- src/components/crowdsource-manager/readme.md | 2 +- src/components/info-card/info-card.tsx | 9 ++++++--- 3 files changed, 8 insertions(+), 5 deletions(-) diff --git a/src/components/crowdsource-manager/crowdsource-manager.tsx b/src/components/crowdsource-manager/crowdsource-manager.tsx index 33ca314a8..64952999c 100644 --- a/src/components/crowdsource-manager/crowdsource-manager.tsx +++ b/src/components/crowdsource-manager/crowdsource-manager.tsx @@ -46,7 +46,7 @@ export class CrowdsourceManager { /** * boolean: when true no map is displayed for the app */ - @Prop() hideMap = true; + @Prop() hideMap = false; //-------------------------------------------------------------------------- // diff --git a/src/components/crowdsource-manager/readme.md b/src/components/crowdsource-manager/readme.md index 1bdc3adb5..3dd92ad9b 100644 --- a/src/components/crowdsource-manager/readme.md +++ b/src/components/crowdsource-manager/readme.md @@ -9,7 +9,7 @@ | Property | Attribute | Description | Type | Default | | ---------- | ---------- | -------------------------------------------------- | ------------ | ------- | -| `hideMap` | `hide-map` | boolean: when true no map is displayed for the app | `boolean` | `true` | +| `hideMap` | `hide-map` | boolean: when true no map is displayed for the app | `boolean` | `false` | | `mapInfos` | -- | IMapInfo[]: array of map infos (name and id) | `IMapInfo[]` | `[]` | diff --git a/src/components/info-card/info-card.tsx b/src/components/info-card/info-card.tsx index 476b7ad40..db16c840c 100644 --- a/src/components/info-card/info-card.tsx +++ b/src/components/info-card/info-card.tsx @@ -115,6 +115,9 @@ export class InfoCard { this._features.open({ features: this.graphics }); + } else { + this._features.clear(); + this._features.close(); } } @@ -258,16 +261,16 @@ export class InfoCard { protected async _initFeaturesWidget(): Promise { if (!this._features) { this._features = new this.Features({ + view: this.mapView, container: "features-node", visibleElements: { actionBar: false, closeButton: false, heading: true - }, - viewModel: { - view: this.mapView } }); + } else { + this._features.view = this.mapView; } } From e2f5eb4cb5905130978577e320eb07a6876faefe Mon Sep 17 00:00:00 2001 From: John Hauck Date: Mon, 14 Aug 2023 16:58:21 -0600 Subject: [PATCH 106/406] add classic grid layout options --- src/components.d.ts | 8 +++ .../crowdsource-manager.css | 9 +++ .../crowdsource-manager.tsx | 72 ++++++++++++++----- src/components/crowdsource-manager/readme.md | 9 +-- 4 files changed, 76 insertions(+), 22 deletions(-) diff --git a/src/components.d.ts b/src/components.d.ts index 966d076ef..ecbeeef0e 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -54,6 +54,10 @@ export namespace Components { "mapView": __esri.MapView; } interface CrowdsourceManager { + /** + * boolean: when true the grid will display like the previous manager app with the table across the top + */ + "classicGrid": boolean; /** * boolean: when true no map is displayed for the app */ @@ -990,6 +994,10 @@ declare namespace LocalJSX { "mapView"?: __esri.MapView; } interface CrowdsourceManager { + /** + * boolean: when true the grid will display like the previous manager app with the table across the top + */ + "classicGrid"?: boolean; /** * boolean: when true no map is displayed for the app */ diff --git a/src/components/crowdsource-manager/crowdsource-manager.css b/src/components/crowdsource-manager/crowdsource-manager.css index feca00dc1..4d677d17d 100644 --- a/src/components/crowdsource-manager/crowdsource-manager.css +++ b/src/components/crowdsource-manager/crowdsource-manager.css @@ -174,3 +174,12 @@ .display-none { display: none; } + +.height-53 { + height: 53px; +} + +.position-absolute-53 { + position: absolute; + top: 53px; +} diff --git a/src/components/crowdsource-manager/crowdsource-manager.tsx b/src/components/crowdsource-manager/crowdsource-manager.tsx index 64952999c..d7e9166bd 100644 --- a/src/components/crowdsource-manager/crowdsource-manager.tsx +++ b/src/components/crowdsource-manager/crowdsource-manager.tsx @@ -39,15 +39,20 @@ export class CrowdsourceManager { //-------------------------------------------------------------------------- /** - * IMapInfo[]: array of map infos (name and id) + * boolean: when true the grid will display like the previous manager app with the table across the top */ - @Prop() mapInfos: IMapInfo[] = []; + @Prop() classicGrid = false; /** * boolean: when true no map is displayed for the app */ @Prop() hideMap = false; + /** + * IMapInfo[]: array of map infos (name and id) + */ + @Prop() mapInfos: IMapInfo[] = []; + //-------------------------------------------------------------------------- // // State (internal) @@ -203,15 +208,26 @@ export class CrowdsourceManager { layoutMode: ELayoutMode, panelOpen: boolean ): string { + console.log(layoutMode) let icon = ""; switch (layoutMode) { case ELayoutMode.HORIZONTAL: - icon = panelOpen ? "chevrons-up" : "chevrons-down"; + icon = this.classicGrid ? + (panelOpen ? "chevrons-down" : "chevrons-up") : + (panelOpen ? "chevrons-up" : "chevrons-down"); break; - default: - icon = panelOpen ? "chevrons-left" : "chevrons-right"; + case ELayoutMode.VERTICAL: + icon = this.classicGrid ? + (panelOpen ? "chevrons-right" : "chevrons-left") : + (panelOpen ? "chevrons-left" : "chevrons-right"); + break; + case ELayoutMode.GRID: + icon = this.classicGrid ? + (panelOpen ? "chevrons-up" : "chevrons-down") : + (panelOpen ? "chevrons-left" : "chevrons-right"); break; } + console.log(icon) return icon; } @@ -225,7 +241,8 @@ export class CrowdsourceManager { sizeClass = `${panelOpen ? "height-1-2" : "height-0"} width-full position-relative`; break; case ELayoutMode.GRID: - sizeClass = `height-full position-relative ${panelOpen ? "width-1-3" : "width-0"}`; + sizeClass = this.classicGrid ? `${panelOpen ? "position-relative" : "position-absolute-53"} height-full width-full display-flex` : + `height-full position-relative ${panelOpen ? "width-1-3" : "width-0"}`; break; case ELayoutMode.VERTICAL: sizeClass = `height-full position-relative ${panelOpen ? "width-1-2" : "width-0"}`; @@ -244,7 +261,9 @@ export class CrowdsourceManager { sizeClass = `${panelOpen ? "height-1-2" : "height-full"} width-full display-flex flex-column`; break; case ELayoutMode.GRID: - sizeClass = `${panelOpen ? "width-2-3" : "width-full"} height-full display-flex`; + sizeClass = this.classicGrid ? + `${panelOpen ? "height-full" : "height-53"} position-relative width-full display-flex` : + `${panelOpen ? "width-2-3" : "width-full"} height-full display-flex`; break; case ELayoutMode.VERTICAL: sizeClass = `${panelOpen ? "width-1-2" : "width-full"} height-full display-flex`; @@ -258,10 +277,18 @@ export class CrowdsourceManager { panelOpen: boolean, hideMap: boolean ): VNode { - const displayFlex = layoutMode === ELayoutMode.HORIZONTAL ? "" : "display-flex"; - return ( + const contentClass = this.classicGrid && layoutMode === ELayoutMode.GRID && panelOpen ? "display-grid" : + layoutMode === ELayoutMode.HORIZONTAL ? "" : "display-flex"; + return this.classicGrid ? ( + +
+ {this._getTable(layoutMode, panelOpen)} + {this._getMap(layoutMode, panelOpen, hideMap)} +
+
+ ) : ( -
+
{this._getMap(layoutMode, panelOpen, hideMap)} {this._getTable(layoutMode, panelOpen)}
@@ -274,16 +301,23 @@ export class CrowdsourceManager { panelOpen: boolean, hideMap: boolean ): VNode { - const mapDisplayClass = layoutMode === ELayoutMode.GRID ? "" : "display-none"; - const cardManagerHeight = layoutMode === ELayoutMode.GRID ? "adjusted-height-50" : "adjusted-height-100"; + const mapDisplayClass = this.classicGrid && layoutMode === ELayoutMode.GRID ? "display-flex height-full width-1-2" : + layoutMode === ELayoutMode.GRID && !hideMap ? "" : "display-none"; + const cardManagerHeight = this.classicGrid && layoutMode === ELayoutMode.GRID ? "" : + layoutMode === ELayoutMode.GRID && !hideMap ? "adjusted-height-50" : "adjusted-height-100"; + // const mapSizeClass = this._getMapSizeClass(layoutMode, panelOpen); + const mapContainerClass = this.classicGrid && layoutMode === ELayoutMode.GRID ? "width-full" : "adjusted-height-50"; + + const cardManagerContainer = this.classicGrid && layoutMode === ELayoutMode.GRID ? + "width-full adjusted-height-100" : "width-50 height-full"; return (
-
- {hideMap ? undefined : ()} +
+
-
- +
+
); @@ -297,8 +331,10 @@ export class CrowdsourceManager { const icon = this._getDividerIcon(layoutMode, panelOpen); const tooltip = panelOpen ? this._translations.close : this._translations.open; const id = "toggle-layout"; - const toggleLayout = layoutMode === ELayoutMode.HORIZONTAL ? "horizontal" : "vertical"; - const toggleSlot = layoutMode === ELayoutMode.HORIZONTAL ? "header" : "panel-start"; + const toggleLayout = layoutMode === ELayoutMode.HORIZONTAL || this.classicGrid ? "horizontal" : "vertical"; + const toggleSlot = this.classicGrid && layoutMode !== ELayoutMode.VERTICAL ? "footer" : + this.classicGrid && layoutMode === ELayoutMode.VERTICAL ? "panel-end" : + layoutMode === ELayoutMode.HORIZONTAL ? "header" : "panel-start"; return ( Date: Mon, 14 Aug 2023 19:24:50 -0700 Subject: [PATCH 107/406] Removed caniuse from package --- package-lock.json | 17 ++++++++++------- package.json | 1 - 2 files changed, 10 insertions(+), 8 deletions(-) diff --git a/package-lock.json b/package-lock.json index 25bea19ed..0dc861fd8 100644 --- a/package-lock.json +++ b/package-lock.json @@ -33,7 +33,6 @@ "@typescript-eslint/eslint-plugin": "^5.4.0", "@typescript-eslint/parser": "^5.39.0", "autoprefixer": "10.4.4", - "caniuse-lite": "^1.0.30001412", "dotenv": "^10.0.0", "eslint": "^8.11.0", "eslint-config-prettier": "8.3.0", @@ -2991,9 +2990,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001449", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001449.tgz", - "integrity": "sha512-CPB+UL9XMT/Av+pJxCKGhdx+yg1hzplvFJQlJ2n68PyQGMz9L/E2zCyLdOL8uasbouTUgnPl+y0tccI/se+BEw==", + "version": "1.0.30001520", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001520.tgz", + "integrity": "sha512-tahF5O9EiiTzwTUqAeFjIZbn4Dnqxzz7ktrgGlMYNLH43Ul26IgTMH/zvL3DG0lZxBYnlT04axvInszUsZULdA==", "dev": true, "funding": [ { @@ -3003,6 +3002,10 @@ { "type": "tidelift", "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" } ] }, @@ -12696,9 +12699,9 @@ "dev": true }, "caniuse-lite": { - "version": "1.0.30001449", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001449.tgz", - "integrity": "sha512-CPB+UL9XMT/Av+pJxCKGhdx+yg1hzplvFJQlJ2n68PyQGMz9L/E2zCyLdOL8uasbouTUgnPl+y0tccI/se+BEw==", + "version": "1.0.30001520", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001520.tgz", + "integrity": "sha512-tahF5O9EiiTzwTUqAeFjIZbn4Dnqxzz7ktrgGlMYNLH43Ul26IgTMH/zvL3DG0lZxBYnlT04axvInszUsZULdA==", "dev": true }, "canvg": { diff --git a/package.json b/package.json index a4f0663dc..b7b0459d4 100644 --- a/package.json +++ b/package.json @@ -42,7 +42,6 @@ "@typescript-eslint/eslint-plugin": "^5.4.0", "@typescript-eslint/parser": "^5.39.0", "autoprefixer": "10.4.4", - "caniuse-lite": "^1.0.30001412", "dotenv": "^10.0.0", "eslint": "^8.11.0", "eslint-config-prettier": "8.3.0", From 6564e81d037557038896f4c746d8c38fe9c68c2c Mon Sep 17 00:00:00 2001 From: Mike Tschudi Date: Mon, 14 Aug 2023 19:25:15 -0700 Subject: [PATCH 108/406] Modified label generation to handle new form of related records --- src/utils/downloadUtils.ts | 243 ++++++------------------------------- 1 file changed, 40 insertions(+), 203 deletions(-) diff --git a/src/utils/downloadUtils.ts b/src/utils/downloadUtils.ts index 8798f1fda..83b2cf303 100644 --- a/src/utils/downloadUtils.ts +++ b/src/utils/downloadUtils.ts @@ -24,14 +24,6 @@ import { IExportInfo, IExportInfos } from "../utils/interfaces"; export { ILabel } from "./pdfUtils"; -interface IArcadeExecutors { - [expressionName: string]: __esri.ArcadeExecutor; -} - -interface IArcadeExecutorPromises { - [expressionName: string]: Promise<__esri.ArcadeExecutor>; -} - interface IAttributeDomains { [attributeName: string]: __esri.CodedValueDomain | __esri.RangeDomain | __esri.InheritedDomain | null; } @@ -44,25 +36,6 @@ interface IAttributeTypes { [attributeName: string]: string; } -interface ILayerRelationshipQuery { - layer: __esri.FeatureLayer; - relatedQuery: IRelatedFeaturesQuery; -} - -interface ILayerRelationshipQueryHash { - [relationshipId: string]: ILayerRelationshipQuery; -} - -// Class RelationshipQuery doesn't appear to work, and so since -// https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#queryRelatedFeatures -// says that the relationshipQuery argument is autocast, we'll set up a variant for the class -interface IRelatedFeaturesQuery { - outFields: string[]; - relationshipId: string; - returnGeometry: boolean; - objectIds?: number; -} - const lineSeparatorChar = "|"; //#endregion @@ -215,32 +188,15 @@ export function _convertPopupTextToLabelSpec( }; /** - * Extracts Arcade expressions from the lines of a label format and creates an Arcade executor for each - * referenced expression name. + * Creates an Arcade expression executor for a label format. * - * @param labelFormat Label to examine - * @param layer Layer from which to fetch features - * @return Promise resolving to a set of executors keyed using the expression name + * @param expression Label to examine + * @return Promise resolving to executor */ -async function _createArcadeExecutors( - labelFormat: string, - layer: __esri.FeatureLayer -): Promise { - const arcadeExecutors: IArcadeExecutors = {}; - - // Are any Arcade expressions in the layer? - if (!Array.isArray(layer.popupTemplate.expressionInfos) || layer.popupTemplate.expressionInfos.length === 0) { - return Promise.resolve(arcadeExecutors); - } - - // Are there any Arcade expressions in the label format? - const arcadeExpressionRegExp = /\{expression\/\w+\}/g; - const arcadeExpressionsMatches = labelFormat.match(arcadeExpressionRegExp); - if (!arcadeExpressionsMatches) { - return Promise.resolve(arcadeExecutors); - } - - // Generate an Arcade executor for each match +async function _createArcadeExecutor( + expression: string +): Promise<__esri.ArcadeExecutor> { + // Generate an Arcade executor const [arcade] = await loadModules(["esri/arcade"]); const labelingProfile: __esri.Profile = { variables: [ @@ -263,36 +219,8 @@ async function _createArcadeExecutors( ] }; - const createArcadeExecutorPromises: IArcadeExecutorPromises = {}; - arcadeExpressionsMatches.forEach( - (match: string) => { - const expressionName = match.substring(match.indexOf("/") + 1, match.length - 1); - - (layer.popupTemplate.expressionInfos || []).forEach( - expressionInfo => { - if (expressionInfo.name === expressionName) { - createArcadeExecutorPromises[expressionName] = - arcade.createArcadeExecutor(expressionInfo.expression, labelingProfile); - } - } - ); - } - ); - - const promises = Object.values(createArcadeExecutorPromises); - return Promise.all(promises) - .then( - executors => { - const expressionNames = Object.keys(createArcadeExecutorPromises); - - for (let i = 0; i < expressionNames.length; ++i) { - arcadeExecutors[expressionNames[i]] = executors[i].valueOf() as __esri.ArcadeExecutor; - } - - return arcadeExecutors; - } - ); -} + return arcade.createArcadeExecutor(expression, labelingProfile); +}; /** * Creates a title from a list of selection set names. @@ -309,44 +237,6 @@ export function _createFilename( return title; } -/** - * Creates relationship queries for each relationship flag in a popup. - * @param layer Layer whose popup is to be examined - * @return Hash of relationships by their id, or null if there are no relationship flags in the - * popup; each relationship has the properties layer and relatedQuery for the related layer - * and the query for that layer - */ -export function _createRelationshipQueries( - layer: __esri.FeatureLayer, -): ILayerRelationshipQueryHash { - - const relationships: ILayerRelationshipQueryHash = {}; - const relationshipFieldPattern = /\{relationships\/\d+\//gm; - const relationshipIdPattern = /\d+/; - - // Test if this popup has any relationship references - const matches = layer.popupTemplate.content[0].text.match(relationshipFieldPattern); - if (matches) { - matches.forEach(match => { - // Add a query to a found relationship if we don't already have one - const id = match.match(relationshipIdPattern)[0]; - if (!relationships.hasOwnProperty(id)) { - const relatedQuery: IRelatedFeaturesQuery = { - outFields: ['*'], - relationshipId: id, - returnGeometry: false - }; - relationships[id] = { - layer, - relatedQuery - } as ILayerRelationshipQuery; - } - }); - } - - return relationships; -} - /** * Prepares an attribute's value by applying domain and type information. * @@ -436,8 +326,7 @@ async function _prepareLabels( // Get the label formatting, if any let labelFormat: string; - let relationshipQueries: ILayerRelationshipQueryHash = {}; - let arcadeExecutors: IArcadeExecutors = {}; + let arcadeExecutor: __esri.ArcadeExecutor; if (layer.popupEnabled) { layer.popupTemplate.fieldInfos.forEach( // Extract any format info that we have @@ -469,104 +358,52 @@ async function _prepareLabels( } else if (formatUsingLayerPopup && layer.popupTemplate?.content[0]?.type === "text") { labelFormat = _convertPopupTextToLabelSpec(layer.popupTemplate.content[0].text); - // Do we need any relationship queries? - relationshipQueries = _createRelationshipQueries(layer); + } else if (formatUsingLayerPopup && layer.popupTemplate?.content[0]?.type === "expression") { + const arcadeText = layer.popupTemplate.content[0].expressionInfo.expression; - // Do we need any Arcade executors? - arcadeExecutors = await _createArcadeExecutors(labelFormat, layer); + // Create the Arcade executor + arcadeExecutor = await _createArcadeExecutor(arcadeText); } } // Apply the label format let labels: string[][]; // eslint-disable-next-line unicorn/prefer-ternary - if (labelFormat) { - const arcadeExpressionRegExp = /\{expression\/\w+\}/g; - const attributeRegExp = /\{\w+\}/g; - - // Find the label fields that we need to replace with values - const arcadeExpressionMatches = labelFormat.match(arcadeExpressionRegExp) ?? []; - const attributeMatches = labelFormat.match(attributeRegExp) ?? []; - + if (labelFormat || arcadeExecutor) { // Convert feature attributes into an array of labels - const relationshipKeys = Object.keys(relationshipQueries); labels = await Promise.all(featureSet.map( async feature => { let labelPrep = labelFormat; - // Replace Arcade expressions in this feature - arcadeExpressionMatches.forEach( - (match: string) => { - const expressionName = match.substring(match.indexOf("/") + 1, match.length - 1); - const value = arcadeExecutors[expressionName].execute({"$feature": feature}); - labelPrep = labelPrep.replace(match, value); - } - ) - - // Replace relationship expressions in this feature - const relatedFeatureQueries = [] as Promise<__esri.FeatureSet>[]; - const relationshipIds = [] as string[]; - relationshipKeys.forEach( - (relationshipId) => { - const relationship = relationshipQueries[relationshipId]; - const objectId = feature.attributes[relationship.layer.objectIdField]; - const relatedQuery = { - ...relationship.relatedQuery, - objectIds: [objectId] - }; - relatedFeatureQueries.push(relationship.layer.queryRelatedFeatures(relatedQuery as any)); - relationshipIds.push(relationshipId); - } - ); + if (arcadeExecutor) { + // Replace Arcade expressions in this feature + labelPrep = (await arcadeExecutor.executeAsync({"$feature": feature})).text; - // Wait for all of the queries for related records for this label - const relatedFeatureQueryResults = await Promise.all(relatedFeatureQueries); - relatedFeatureQueryResults.forEach( - (relatedFeatureQueryResult, i) => { - // We have an object with FeatureSets grouped by source layer or table objectIds - const relationshipId = relationshipIds[i]; - - // Run through the source layer or table objectIds - Object.keys(relatedFeatureQueryResult).forEach( - relatedFeatureSetId => { - // We have a feature set - const relatedFeatures = relatedFeatureQueryResult[relatedFeatureSetId].features; - - // Get the values from each feature and replace them in the label - relatedFeatures.forEach( - feature => { - // Merge the base and related feature attributes and create the label - // Prefix related feature's attributes with "relationships//" to match popup - const rePrefix = "\{relationships/" + relationshipId + "/"; - const reSuffix = "\}"; - - const attributes = feature.attributes; - Object.keys(attributes).forEach( - attributeName => { - // Replace the value using the attribute name as a relationship - const attributeRelationshipRegExp = new RegExp(rePrefix + attributeName + reSuffix, "g"); - labelPrep = labelPrep.replaceAll(attributeRelationshipRegExp, attributes[attributeName]); - } - ); - } - ); - } - ); - } - ); + // Replace "
" and "\n\t" with line separator character + labelPrep = labelPrep + .replace(/
/gi, lineSeparatorChar) + .replace(/\\n\\t/gi, lineSeparatorChar) + .replace(/\|\|/g, lineSeparatorChar) + .replace(/^\|/, "") + .replace(/\|$/, ""); - // Replace non-Arcade fields in this feature - attributeMatches.forEach( - (match: string) => { - const attributeName = match.substring(1, match.length - 1); + } else { + const attributeRegExp = /\{\w+\}/g; + const attributeMatches = labelFormat.match(attributeRegExp) ?? []; - const value = _prepareAttributeValue(feature.attributes[attributeName], - attributeTypes[attributeName], attributeDomains[attributeName], - attributeFormats[attributeName], intl); - labelPrep = labelPrep.replace(match, value); + // Replace non-Arcade fields in this feature + attributeMatches.forEach( + (match: string) => { + const attributeName = match.substring(1, match.length - 1); - } - ) + const value = _prepareAttributeValue(feature.attributes[attributeName], + attributeTypes[attributeName], attributeDomains[attributeName], + attributeFormats[attributeName], intl); + labelPrep = labelPrep.replace(match, value); + + } + ) + } // Split label into lines let label = labelPrep.split(lineSeparatorChar); From 8d82900c675c9b8f80c20f38ab4521cda10a6bbc Mon Sep 17 00:00:00 2001 From: Mike Tschudi Date: Tue, 15 Aug 2023 07:24:10 -0700 Subject: [PATCH 109/406] Update caniuse as part of build --- build.bat | 1 + 1 file changed, 1 insertion(+) diff --git a/build.bat b/build.bat index 7f71f16ae..a633260f7 100644 --- a/build.bat +++ b/build.bat @@ -3,6 +3,7 @@ rem Builds the repository call node --version call npm --version +call npx update-browserslist-db@latest call npm install call npm run build From 1a53169aaea6c378dff48e8197b80f9198ba688a Mon Sep 17 00:00:00 2001 From: Mike Tschudi Date: Tue, 15 Aug 2023 08:03:39 -0700 Subject: [PATCH 110/406] Generalize `
` token --- src/utils/downloadUtils.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/utils/downloadUtils.ts b/src/utils/downloadUtils.ts index 83b2cf303..055ba4755 100644 --- a/src/utils/downloadUtils.ts +++ b/src/utils/downloadUtils.ts @@ -381,7 +381,7 @@ async function _prepareLabels( // Replace "
" and "\n\t" with line separator character labelPrep = labelPrep - .replace(/
/gi, lineSeparatorChar) + .replace(//gi, lineSeparatorChar) .replace(/\\n\\t/gi, lineSeparatorChar) .replace(/\|\|/g, lineSeparatorChar) .replace(/^\|/, "") From cae478e2411050e05c5cc10f291f766530849935 Mon Sep 17 00:00:00 2001 From: Mike Tschudi Date: Tue, 15 Aug 2023 08:12:36 -0700 Subject: [PATCH 111/406] Dependabot updates --- package-lock.json | 28 +++++++++++++++------------- package.json | 4 +++- 2 files changed, 18 insertions(+), 14 deletions(-) diff --git a/package-lock.json b/package-lock.json index fb05151d1..be78101e6 100644 --- a/package-lock.json +++ b/package-lock.json @@ -52,9 +52,11 @@ "react": "^18.2.0", "rimraf": "^3.0.2", "tailwindcss": "3.0.23", + "tough-cookie": "^4.1.3", "ts-node": "^10.9.1", "tslib": "^2.4.0", - "typescript": "^4.8.4" + "typescript": "^4.8.4", + "word-wrap": "^1.2.5" }, "peerDependencies": { "@esri/arcgis-rest-auth": "^3.4.2", @@ -9685,9 +9687,9 @@ } }, "node_modules/tough-cookie": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.2.tgz", - "integrity": "sha512-G9fqXWoYFZgTc2z8Q5zaHy/vJMjm+WV0AkAeHxVCQiEB1b+dGvWzFW6QV07cY5jQ5gRkeid2qIkzkxUnmoQZUQ==", + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.3.tgz", + "integrity": "sha512-aX/y5pVRkfRnfmuX+OdbSdXvPe6ieKX/G2s7e98f4poJHnqH3281gDPm/metm6E/WRamfx7WC4HUqkWHfQHprw==", "dev": true, "dependencies": { "psl": "^1.1.33", @@ -10212,9 +10214,9 @@ } }, "node_modules/word-wrap": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", - "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", + "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", "dev": true, "engines": { "node": ">=0.10.0" @@ -17746,9 +17748,9 @@ } }, "tough-cookie": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.2.tgz", - "integrity": "sha512-G9fqXWoYFZgTc2z8Q5zaHy/vJMjm+WV0AkAeHxVCQiEB1b+dGvWzFW6QV07cY5jQ5gRkeid2qIkzkxUnmoQZUQ==", + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.3.tgz", + "integrity": "sha512-aX/y5pVRkfRnfmuX+OdbSdXvPe6ieKX/G2s7e98f4poJHnqH3281gDPm/metm6E/WRamfx7WC4HUqkWHfQHprw==", "dev": true, "requires": { "psl": "^1.1.33", @@ -18152,9 +18154,9 @@ } }, "word-wrap": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", - "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", + "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", "dev": true }, "wrap-ansi": { diff --git a/package.json b/package.json index 952ab3ce6..7e3bb4abe 100644 --- a/package.json +++ b/package.json @@ -61,9 +61,11 @@ "react": "^18.2.0", "rimraf": "^3.0.2", "tailwindcss": "3.0.23", + "tough-cookie": "^4.1.3", "ts-node": "^10.9.1", "tslib": "^2.4.0", - "typescript": "^4.8.4" + "typescript": "^4.8.4", + "word-wrap": "^1.2.5" }, "dependencies": { "@esri/hub-common": "^12.37.1", From 73d5803a4cf25c92df4e97caa5f96caff10c89da Mon Sep 17 00:00:00 2001 From: John Hauck Date: Tue, 15 Aug 2023 10:03:59 -0600 Subject: [PATCH 112/406] move map picker to standalone component --- src/components.d.ts | 29 +++ src/components/crowdsource-manager/readme.md | 23 +- src/components/map-card/map-card.css | 81 ------ src/components/map-card/map-card.tsx | 179 ++------------ src/components/map-card/readme.md | 32 ++- src/components/map-picker/map-picker.css | 43 ++++ src/components/map-picker/map-picker.tsx | 234 ++++++++++++++++++ src/components/map-picker/readme.md | 67 +++++ .../map-picker/test/map-picker.e2e.ts | 11 + .../map-picker/test/map-picker.spec.tsx | 18 ++ 10 files changed, 447 insertions(+), 270 deletions(-) create mode 100644 src/components/map-picker/map-picker.css create mode 100644 src/components/map-picker/map-picker.tsx create mode 100644 src/components/map-picker/readme.md create mode 100644 src/components/map-picker/test/map-picker.e2e.ts create mode 100644 src/components/map-picker/test/map-picker.spec.tsx diff --git a/src/components.d.ts b/src/components.d.ts index ecbeeef0e..ac2adb3f8 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -259,6 +259,12 @@ export namespace Components { */ "type": "select" | "combobox" | "dropdown"; } + interface MapPicker { + /** + * IMapInfo[]: array of map infos (name and id) + */ + "mapInfos": IMapInfo[]; + } interface MapSelectTools { /** * string | number[] | object with r, g, b, a: https://developers.arcgis.com/javascript/latest/api-reference/esri-Color.html @@ -678,6 +684,10 @@ export interface MapLayerPickerCustomEvent extends CustomEvent { detail: T; target: HTMLMapLayerPickerElement; } +export interface MapPickerCustomEvent extends CustomEvent { + detail: T; + target: HTMLMapPickerElement; +} export interface MapSelectToolsCustomEvent extends CustomEvent { detail: T; target: HTMLMapSelectToolsElement; @@ -793,6 +803,12 @@ declare global { prototype: HTMLMapLayerPickerElement; new (): HTMLMapLayerPickerElement; }; + interface HTMLMapPickerElement extends Components.MapPicker, HTMLStencilElement { + } + var HTMLMapPickerElement: { + prototype: HTMLMapPickerElement; + new (): HTMLMapPickerElement; + }; interface HTMLMapSelectToolsElement extends Components.MapSelectTools, HTMLStencilElement { } var HTMLMapSelectToolsElement: { @@ -915,6 +931,7 @@ declare global { "map-card": HTMLMapCardElement; "map-draw-tools": HTMLMapDrawToolsElement; "map-layer-picker": HTMLMapLayerPickerElement; + "map-picker": HTMLMapPickerElement; "map-select-tools": HTMLMapSelectToolsElement; "map-tools": HTMLMapToolsElement; "pci-calculator": HTMLPciCalculatorElement; @@ -1195,6 +1212,16 @@ declare namespace LocalJSX { */ "type"?: "select" | "combobox" | "dropdown"; } + interface MapPicker { + /** + * IMapInfo[]: array of map infos (name and id) + */ + "mapInfos"?: IMapInfo[]; + /** + * Emitted when a new map is loaded + */ + "onMapInfoChange"?: (event: MapPickerCustomEvent) => void; + } interface MapSelectTools { /** * string | number[] | object with r, g, b, a: https://developers.arcgis.com/javascript/latest/api-reference/esri-Color.html @@ -1577,6 +1604,7 @@ declare namespace LocalJSX { "map-card": MapCard; "map-draw-tools": MapDrawTools; "map-layer-picker": MapLayerPicker; + "map-picker": MapPicker; "map-select-tools": MapSelectTools; "map-tools": MapTools; "pci-calculator": PciCalculator; @@ -1614,6 +1642,7 @@ declare module "@stencil/core" { "map-card": LocalJSX.MapCard & JSXBase.HTMLAttributes; "map-draw-tools": LocalJSX.MapDrawTools & JSXBase.HTMLAttributes; "map-layer-picker": LocalJSX.MapLayerPicker & JSXBase.HTMLAttributes; + "map-picker": LocalJSX.MapPicker & JSXBase.HTMLAttributes; "map-select-tools": LocalJSX.MapSelectTools & JSXBase.HTMLAttributes; "map-tools": LocalJSX.MapTools & JSXBase.HTMLAttributes; "pci-calculator": LocalJSX.PciCalculator & JSXBase.HTMLAttributes; diff --git a/src/components/crowdsource-manager/readme.md b/src/components/crowdsource-manager/readme.md index 8b42828fa..e4301568f 100644 --- a/src/components/crowdsource-manager/readme.md +++ b/src/components/crowdsource-manager/readme.md @@ -52,21 +52,17 @@ graph TD; calcite-popover --> calcite-action calcite-popover --> calcite-icon calcite-scrim --> calcite-loader + map-card --> map-picker map-card --> map-tools - map-card --> calcite-action-bar - map-card --> calcite-button - map-card --> calcite-list - map-card --> calcite-list-item - map-tools --> calcite-action - map-tools --> calcite-action-bar - map-tools --> calcite-action-group - map-tools --> calcite-icon - map-tools --> calcite-tooltip + map-picker --> calcite-button + map-picker --> calcite-action-bar + map-picker --> calcite-list + map-picker --> calcite-list-item + calcite-button --> calcite-loader + calcite-button --> calcite-icon calcite-action-bar --> calcite-action-group calcite-action-group --> calcite-action-menu calcite-action-group --> calcite-action - calcite-button --> calcite-loader - calcite-button --> calcite-icon calcite-list --> calcite-scrim calcite-list --> calcite-filter calcite-filter --> calcite-input @@ -74,6 +70,11 @@ graph TD; calcite-input --> calcite-icon calcite-list-item --> calcite-icon calcite-list-item --> calcite-action + map-tools --> calcite-action + map-tools --> calcite-action-bar + map-tools --> calcite-action-group + map-tools --> calcite-icon + map-tools --> calcite-tooltip card-manager --> calcite-shell card-manager --> info-card card-manager --> calcite-notice diff --git a/src/components/map-card/map-card.css b/src/components/map-card/map-card.css index a50649f36..03df0acf7 100644 --- a/src/components/map-card/map-card.css +++ b/src/components/map-card/map-card.css @@ -20,87 +20,10 @@ --calcite-block-padding: 0; } -.action-bar-size { - height: 51px; - width: 100%; -} - -.action-center { - -webkit-box-align: center; - -webkit-align-items: center; - -ms-grid-row-align: center; - align-items: center; - -webkit-align-content: center; - align-content: center; - -webkit-box-pack: center; - -webkit-justify-content: center; - justify-content: center; -} - -.border-bottom-1 { - border-width: 0px; - border-bottom-width: 1px; - border-style: solid; - border-color: var(--calcite-ui-border-3); -} - -.width-1-7 { - width: 14.28%; -} - -.width-1-6 { - width: 16.66%; -} - -.width-full { - width: 100%; -} - -.height-full { - height: 100%; -} - -.display-flex { - display: flex; -} - -.display-grid { - display: inline-grid; -} - -/* only used if we need to do the map action seperately */ -.block-button { - border-bottom: 0; -} - -.block-button:hover { - background-color: var(--calcite-ui-foreground-2); -} - -.block-button:active { - background-color: var(--calcite-ui-foreground-3); -} - -.map-list { - position: absolute; - display: flex; - flex-direction: column; - overflow: hidden; - animation: calcite-scrim-fade-in var(--calcite-internal-animation-timing-medium) ease-in-out; - background-color: var(--calcite-scrim-background); - z-index: 1; - width: 100%; - height: fit-content; -} - .map-height { height: calc(100% - 58px); } -.display-none { - display: none; -} - /* Not sure how else to do this tried navigation gamepad settings but enabled: false still shows this */ @@ -108,10 +31,6 @@ display: none !important; } -/* .block-button:focus { - @apply bg-foreground-2 text-color-1 fill-color-1 focus-inset; -} */ - .map-tools { position: absolute; top: 40px; diff --git a/src/components/map-card/map-card.tsx b/src/components/map-card/map-card.tsx index e141857bd..362750177 100644 --- a/src/components/map-card/map-card.tsx +++ b/src/components/map-card/map-card.tsx @@ -14,10 +14,8 @@ * limitations under the License. */ -import { Component, Element, Event, EventEmitter, Host, h, Prop, State, VNode, Watch } from "@stencil/core"; -import MapCard_T9n from "../../assets/t9n/map-card/resources.json"; +import { Component, Element, Event, EventEmitter, Host, h, Listen, Prop, State } from "@stencil/core"; import { loadModules } from "../../utils/loadModules"; -import { getLocaleComponentStrings } from "../../utils/locale"; import { IMapInfo } from "../../utils/interfaces"; // TODO navigation and accessability isn't right for the map list @@ -64,17 +62,6 @@ export class MapCard { // //-------------------------------------------------------------------------- - /** - * boolean: controls the state of the map list - */ - @State() _mapListExpanded = false; - - /** - * Contains the translations for this component. - * All UI strings should be defined here. - */ - @State() _translations: typeof MapCard_T9n; - /** * IMapInfo: id and name of the map to display */ @@ -112,26 +99,6 @@ export class MapCard { // //-------------------------------------------------------------------------- - /** - * Called each time the _webMapInfo prop is changed. - */ - @Watch("_webMapInfo") - _webMapInfoWatchHandler(v: IMapInfo, oldV: IMapInfo): void { - if (v && JSON.stringify(v) !== JSON.stringify(oldV)) { - this._loadMap(v); - } - } - - /** - * Called each time the mapInfos prop is changed. - */ - @Watch("mapInfos") - mapInfosWatchHandler(v: IMapInfo[], oldV: IMapInfo[]): void { - if (v && JSON.stringify(v) !== JSON.stringify(oldV)) { - this._loadMap(v[0]); - } - } - //-------------------------------------------------------------------------- // // Methods (public) @@ -149,6 +116,16 @@ export class MapCard { */ @Event() mapChanged: EventEmitter<__esri.MapView>; + /** + * Listen for changes to map info and load the appropriate map + */ + @Listen("mapInfoChange", { target: "window" }) + async mapInfoChange( + evt: CustomEvent + ): Promise { + this._loadMap(evt.detail); + } + //-------------------------------------------------------------------------- // // Functions (lifecycle) @@ -159,26 +136,16 @@ export class MapCard { * StencilJS: Called once just after the component is first connected to the DOM. */ async componentWillLoad(): Promise { - await this._getTranslations(); await this._initModules(); } - /** - * StencilJS: Called after every render. - */ - componentDidRender() { - // the container node for the map view needs to exist before the view is created - this._loadMap(this._webMapInfo); - } - /** * Renders the component. */ render() { return ( - {this._getToolbar()} - {this._getMapNameList(this._mapListExpanded)} +
(this._mapDiv = el)}/> @@ -207,23 +174,6 @@ export class MapCard { this.MapView = MapView; } - /** - * Create the toolbar (controls used for map and app interactions) - * - * @returns The dom node with the toolbar - * - * @protected - */ - protected _getToolbar(): VNode { - return ( -
- - {this._getMapPicker()} - -
- ); - } - /** * Load the webmap for the provided webMapInfo * @@ -236,11 +186,13 @@ export class MapCard { protected _loadMap( webMapInfo: IMapInfo ): void { - const id = webMapInfo?.id; + let id = webMapInfo?.id; // on the first render use the first child of the provided mapInfos - if ((id === "" || !id) && this.mapInfos.length > 0) { - this._webMapInfo = this.mapInfos[0]; - } + this._webMapInfo = (id === "" || !id) && this.mapInfos.length > 0 ? + this.mapInfos[0] : webMapInfo; + + id = this._webMapInfo.id; + if (this._loadedId !== id) { const webMap = new this.WebMap({ portalItem: { id } @@ -249,7 +201,6 @@ export class MapCard { this.mapView = new this.MapView({ container: this._mapDiv, map: webMap, - // TODO consider this more...seems to cause less overflow issues when the component is resized resizeAlign: "top-left" }); @@ -258,98 +209,4 @@ export class MapCard { } } - /** - * Get a calcite action group for the map list - * Actions do not support multiple icons so this uses a block - * - * @returns the dom node for the action group - * - * @protected - */ - protected _getMapPicker(): VNode { - const mapListIcon = this._mapListExpanded ? "chevron-up" : "chevron-down"; - return ( - this._chooseMap()} - width="full" - > - {this._webMapInfo?.name} - - ); - } - - /** - * Get a pick list for all maps in mapInfos - * - * @param show boolean to indicate if the list should be shown or hidden - * - * @returns the dom node for the list of maps - * - * @protected - */ - protected _getMapNameList( - show: boolean - ): VNode { - const listClass = show ? "map-list" : "display-none"; - return ( -
- - {this.mapInfos.map(mapInfo => { - return ( - this._webMapSelected(mapInfo)} - selected={mapInfo.id === this._loadedId} - value={mapInfo.id} - /> - ) - })} - -
- ); - } - - /** - * Fired when the user clicks on the map list - * - * @param webMapInfo the web map id and name selected from the list - * - * @returns void - * - * @protected - */ - protected _webMapSelected( - webMapInfo: IMapInfo - ): void { - this._mapListExpanded = false; - this._webMapInfo = webMapInfo; - } - - /** - * Toggles the open/close state of the map list - * - * @returns the dom node for the action group - * - * @protected - */ - protected _chooseMap(): void { - this._mapListExpanded = !this._mapListExpanded; - } - - /** - * Fetches the component's translations - * - * @returns Promise when complete - * @protected - */ - protected async _getTranslations(): Promise { - const messages = await getLocaleComponentStrings(this.el); - this._translations = messages[0] as typeof MapCard_T9n; - } - } diff --git a/src/components/map-card/readme.md b/src/components/map-card/readme.md index 46238e989..2d2012cf3 100644 --- a/src/components/map-card/readme.md +++ b/src/components/map-card/readme.md @@ -28,36 +28,29 @@ ### Depends on +- [map-picker](../map-picker) - [map-tools](../map-tools) -- calcite-action-bar -- calcite-button -- calcite-list -- calcite-list-item ### Graph ```mermaid graph TD; + map-card --> map-picker map-card --> map-tools - map-card --> calcite-action-bar - map-card --> calcite-button - map-card --> calcite-list - map-card --> calcite-list-item - map-tools --> calcite-action - map-tools --> calcite-action-bar - map-tools --> calcite-action-group - map-tools --> calcite-icon - map-tools --> calcite-tooltip - calcite-action --> calcite-loader - calcite-action --> calcite-icon + map-picker --> calcite-button + map-picker --> calcite-action-bar + map-picker --> calcite-list + map-picker --> calcite-list-item + calcite-button --> calcite-loader + calcite-button --> calcite-icon calcite-action-bar --> calcite-action-group calcite-action-group --> calcite-action-menu calcite-action-group --> calcite-action calcite-action-menu --> calcite-action calcite-action-menu --> calcite-popover + calcite-action --> calcite-loader + calcite-action --> calcite-icon calcite-popover --> calcite-action calcite-popover --> calcite-icon - calcite-button --> calcite-loader - calcite-button --> calcite-icon calcite-list --> calcite-scrim calcite-list --> calcite-filter calcite-scrim --> calcite-loader @@ -66,6 +59,11 @@ graph TD; calcite-input --> calcite-icon calcite-list-item --> calcite-icon calcite-list-item --> calcite-action + map-tools --> calcite-action + map-tools --> calcite-action-bar + map-tools --> calcite-action-group + map-tools --> calcite-icon + map-tools --> calcite-tooltip crowdsource-manager --> map-card style map-card fill:#f9f,stroke:#333,stroke-width:4px ``` diff --git a/src/components/map-picker/map-picker.css b/src/components/map-picker/map-picker.css new file mode 100644 index 000000000..4a7c06713 --- /dev/null +++ b/src/components/map-picker/map-picker.css @@ -0,0 +1,43 @@ +:host { + display: block; +} + +.width-full { + width: 100%; +} + +.height-full { + height: 100%; +} + +.display-flex { + display: flex; +} + +.border-bottom-1 { + border-width: 0px; + border-bottom-width: 1px; + border-style: solid; + border-color: var(--calcite-ui-border-3); +} + +.action-bar-size { + height: 51px; + width: 100%; +} + +.map-list { + position: absolute; + display: flex; + flex-direction: column; + overflow: hidden; + animation: calcite-scrim-fade-in var(--calcite-internal-animation-timing-medium) ease-in-out; + background-color: var(--calcite-scrim-background); + z-index: 1; + width: 100%; + height: fit-content; +} + +.display-none { + display: none; +} diff --git a/src/components/map-picker/map-picker.tsx b/src/components/map-picker/map-picker.tsx new file mode 100644 index 000000000..c4fdba4ed --- /dev/null +++ b/src/components/map-picker/map-picker.tsx @@ -0,0 +1,234 @@ +import { Component, Element, Event, EventEmitter, Host, h, Prop, State, VNode, Watch } from '@stencil/core'; +import { IMapInfo } from "../../utils/interfaces"; + +@Component({ + tag: 'map-picker', + styleUrl: 'map-picker.css', + shadow: true, +}) +export class MapPicker { + //-------------------------------------------------------------------------- + // + // Host element access + // + //-------------------------------------------------------------------------- + + @Element() el: HTMLMapPickerElement; + + //-------------------------------------------------------------------------- + // + // Properties (public) + // + //-------------------------------------------------------------------------- + + /** + * IMapInfo[]: array of map infos (name and id) + */ + @Prop() mapInfos: IMapInfo[] = []; + + //-------------------------------------------------------------------------- + // + // State (internal) + // + //-------------------------------------------------------------------------- + + /** + * boolean: controls the state of the map list + */ + @State() _mapListExpanded = false; + + /** + * IMapInfo: id and name of the map to display + */ + @State() _webMapInfo: IMapInfo; + + //-------------------------------------------------------------------------- + // + // Properties (protected) + // + //-------------------------------------------------------------------------- + + /** + * string: the id of map currently displayed + */ + protected _loadedId = ""; + + //-------------------------------------------------------------------------- + // + // Watch handlers + // + //-------------------------------------------------------------------------- + + /** + * Called each time the _webMapInfo prop is changed. + */ + @Watch("_webMapInfo") + _webMapInfoWatchHandler(v: IMapInfo, oldV: IMapInfo): void { + if (v && JSON.stringify(v) !== JSON.stringify(oldV)) { + this._loadedId = v?.id; + this.mapInfoChange.emit(v); + } + } + + /** + * Called each time the mapInfos prop is changed. + */ + @Watch("mapInfos") + mapInfosWatchHandler(v: IMapInfo[], oldV: IMapInfo[]): void { + if (v && JSON.stringify(v) !== JSON.stringify(oldV)) { + this.mapInfoChange.emit(v[0]); + } + } + + //-------------------------------------------------------------------------- + // + // Methods (public) + // + //-------------------------------------------------------------------------- + + //-------------------------------------------------------------------------- + // + // Events (public) + // + //-------------------------------------------------------------------------- + + /** + * Emitted when a new map is loaded + */ + @Event() mapInfoChange: EventEmitter; + + //-------------------------------------------------------------------------- + // + // Functions (lifecycle) + // + //-------------------------------------------------------------------------- + + /** + * Renders the component. + */ + render() { + return ( + + {this._getToolbar()} + {this._getMapNameList(this._mapListExpanded)} + + ); + } + + /** + * Called once after the component has loaded + */ + componentDidLoad() { + const webMapInfo = this.mapInfos && this.mapInfos.length > 0 ? this.mapInfos[0] : undefined; + if (webMapInfo) { + this._webMapSelected(webMapInfo); + } + } + + //-------------------------------------------------------------------------- + // + // Functions (protected) + // + //-------------------------------------------------------------------------- + + /** + * Get a calcite action group for the map list + * Actions do not support multiple icons so this uses a block + * + * @returns the dom node for the action group + * + * @protected + */ + protected _getMapPicker(): VNode { + const mapListIcon = this._mapListExpanded ? "chevron-up" : "chevron-down"; + return ( + this._chooseMap()} + width="full" + > + {this._webMapInfo?.name} + + ); + } + + /** + * Create the toolbar (controls used for map and app interactions) + * + * @returns The dom node with the toolbar + * + * @protected + */ + protected _getToolbar(): VNode { + return ( +
+ + {this._getMapPicker()} + +
+ ); + } + + /** + * Get a pick list for all maps in mapInfos + * + * @param show boolean to indicate if the list should be shown or hidden + * + * @returns the dom node for the list of maps + * + * @protected + */ + protected _getMapNameList( + show: boolean + ): VNode { + const listClass = show ? "map-list" : "display-none"; + return ( +
+ + {this.mapInfos.map(mapInfo => { + return ( + this._webMapSelected(mapInfo)} + selected={mapInfo.id === this._loadedId} + value={mapInfo.id} + /> + ) + })} + +
+ ); + } + + /** + * Fired when the user clicks on the map list + * + * @param webMapInfo the web map id and name selected from the list + * + * @returns void + * + * @protected + */ + protected _webMapSelected( + webMapInfo: IMapInfo + ): void { + this._mapListExpanded = false; + this._webMapInfo = webMapInfo; + } + + /** + * Toggles the open/close state of the map list + * + * @returns the dom node for the action group + * + * @protected + */ + protected _chooseMap(): void { + this._mapListExpanded = !this._mapListExpanded; + } + +} diff --git a/src/components/map-picker/readme.md b/src/components/map-picker/readme.md new file mode 100644 index 000000000..260efb4e6 --- /dev/null +++ b/src/components/map-picker/readme.md @@ -0,0 +1,67 @@ +# map-picker + + + + + + +## Properties + +| Property | Attribute | Description | Type | Default | +| ---------- | --------- | -------------------------------------------- | ------------ | ------- | +| `mapInfos` | -- | IMapInfo[]: array of map infos (name and id) | `IMapInfo[]` | `[]` | + + +## Events + +| Event | Description | Type | +| --------------- | -------------------------------- | ----------------------- | +| `mapInfoChange` | Emitted when a new map is loaded | `CustomEvent` | + + +## Dependencies + +### Used by + + - [map-card](../map-card) + +### Depends on + +- calcite-button +- calcite-action-bar +- calcite-list +- calcite-list-item + +### Graph +```mermaid +graph TD; + map-picker --> calcite-button + map-picker --> calcite-action-bar + map-picker --> calcite-list + map-picker --> calcite-list-item + calcite-button --> calcite-loader + calcite-button --> calcite-icon + calcite-action-bar --> calcite-action-group + calcite-action-group --> calcite-action-menu + calcite-action-group --> calcite-action + calcite-action-menu --> calcite-action + calcite-action-menu --> calcite-popover + calcite-action --> calcite-loader + calcite-action --> calcite-icon + calcite-popover --> calcite-action + calcite-popover --> calcite-icon + calcite-list --> calcite-scrim + calcite-list --> calcite-filter + calcite-scrim --> calcite-loader + calcite-filter --> calcite-input + calcite-input --> calcite-progress + calcite-input --> calcite-icon + calcite-list-item --> calcite-icon + calcite-list-item --> calcite-action + map-card --> map-picker + style map-picker fill:#f9f,stroke:#333,stroke-width:4px +``` + +---------------------------------------------- + +*Built with [StencilJS](https://stenciljs.com/)* diff --git a/src/components/map-picker/test/map-picker.e2e.ts b/src/components/map-picker/test/map-picker.e2e.ts new file mode 100644 index 000000000..a1fdf665d --- /dev/null +++ b/src/components/map-picker/test/map-picker.e2e.ts @@ -0,0 +1,11 @@ +import { newE2EPage } from '@stencil/core/testing'; + +xdescribe('map-picker', () => { + it('renders', async () => { + const page = await newE2EPage(); + await page.setContent(''); + + const element = await page.find('map-picker'); + expect(element).toHaveClass('hydrated'); + }); +}); diff --git a/src/components/map-picker/test/map-picker.spec.tsx b/src/components/map-picker/test/map-picker.spec.tsx new file mode 100644 index 000000000..9ed32b11b --- /dev/null +++ b/src/components/map-picker/test/map-picker.spec.tsx @@ -0,0 +1,18 @@ +import { newSpecPage } from '@stencil/core/testing'; +import { MapPicker } from '../map-picker'; + +xdescribe('map-picker', () => { + it('renders', async () => { + const page = await newSpecPage({ + components: [MapPicker], + html: ``, + }); + expect(page.root).toEqualHtml(` + + + + + + `); + }); +}); From c1eb5e4fbde5e9d0ccd126e37714cbcce0f73164 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Tue, 15 Aug 2023 10:12:59 -0600 Subject: [PATCH 113/406] add layout manager --- src/components.d.ts | 13 +++ .../layout-manager/layout-manager.css | 3 + .../layout-manager/layout-manager.tsx | 92 +++++++++++++++++++ src/components/layout-manager/readme.md | 10 ++ .../layout-manager/test/layout-manager.e2e.ts | 11 +++ .../test/layout-manager.spec.tsx | 18 ++++ 6 files changed, 147 insertions(+) create mode 100644 src/components/layout-manager/layout-manager.css create mode 100644 src/components/layout-manager/layout-manager.tsx create mode 100644 src/components/layout-manager/readme.md create mode 100644 src/components/layout-manager/test/layout-manager.e2e.ts create mode 100644 src/components/layout-manager/test/layout-manager.spec.tsx diff --git a/src/components.d.ts b/src/components.d.ts index ac2adb3f8..63aad6b15 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -157,6 +157,8 @@ export namespace Components { */ "mapView": __esri.MapView; } + interface LayoutManager { + } interface ListItem { } interface MapCard { @@ -779,6 +781,12 @@ declare global { prototype: HTMLLayerTableElement; new (): HTMLLayerTableElement; }; + interface HTMLLayoutManagerElement extends Components.LayoutManager, HTMLStencilElement { + } + var HTMLLayoutManagerElement: { + prototype: HTMLLayoutManagerElement; + new (): HTMLLayoutManagerElement; + }; interface HTMLListItemElement extends Components.ListItem, HTMLStencilElement { } var HTMLListItemElement: { @@ -927,6 +935,7 @@ declare global { "info-card": HTMLInfoCardElement; "json-editor": HTMLJsonEditorElement; "layer-table": HTMLLayerTableElement; + "layout-manager": HTMLLayoutManagerElement; "list-item": HTMLListItemElement; "map-card": HTMLMapCardElement; "map-draw-tools": HTMLMapDrawToolsElement; @@ -1096,6 +1105,8 @@ declare namespace LocalJSX { */ "onFeatureSelectionChange"?: (event: LayerTableCustomEvent) => void; } + interface LayoutManager { + } interface ListItem { } interface MapCard { @@ -1600,6 +1611,7 @@ declare namespace LocalJSX { "info-card": InfoCard; "json-editor": JsonEditor; "layer-table": LayerTable; + "layout-manager": LayoutManager; "list-item": ListItem; "map-card": MapCard; "map-draw-tools": MapDrawTools; @@ -1638,6 +1650,7 @@ declare module "@stencil/core" { "info-card": LocalJSX.InfoCard & JSXBase.HTMLAttributes; "json-editor": LocalJSX.JsonEditor & JSXBase.HTMLAttributes; "layer-table": LocalJSX.LayerTable & JSXBase.HTMLAttributes; + "layout-manager": LocalJSX.LayoutManager & JSXBase.HTMLAttributes; "list-item": LocalJSX.ListItem & JSXBase.HTMLAttributes; "map-card": LocalJSX.MapCard & JSXBase.HTMLAttributes; "map-draw-tools": LocalJSX.MapDrawTools & JSXBase.HTMLAttributes; diff --git a/src/components/layout-manager/layout-manager.css b/src/components/layout-manager/layout-manager.css new file mode 100644 index 000000000..5d4e87f30 --- /dev/null +++ b/src/components/layout-manager/layout-manager.css @@ -0,0 +1,3 @@ +:host { + display: block; +} diff --git a/src/components/layout-manager/layout-manager.tsx b/src/components/layout-manager/layout-manager.tsx new file mode 100644 index 000000000..d100b91e7 --- /dev/null +++ b/src/components/layout-manager/layout-manager.tsx @@ -0,0 +1,92 @@ +/** @license + * Copyright 2022 Esri + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { Component, Element, Host, h } from '@stencil/core'; + +@Component({ + tag: 'layout-manager', + styleUrl: 'layout-manager.css', + shadow: true, +}) +export class LayoutManager { + //-------------------------------------------------------------------------- + // + // Host element access + // + //-------------------------------------------------------------------------- + + @Element() el: HTMLLayoutManagerElement; + + //-------------------------------------------------------------------------- + // + // Properties (public) + // + //-------------------------------------------------------------------------- + + //-------------------------------------------------------------------------- + // + // State (internal) + // + //-------------------------------------------------------------------------- + + //-------------------------------------------------------------------------- + // + // Properties (protected) + // + //-------------------------------------------------------------------------- + + //-------------------------------------------------------------------------- + // + // Watch handlers + // + //-------------------------------------------------------------------------- + + //-------------------------------------------------------------------------- + // + // Methods (public) + // + //-------------------------------------------------------------------------- + + //-------------------------------------------------------------------------- + // + // Events (public) + // + //-------------------------------------------------------------------------- + + //-------------------------------------------------------------------------- + // + // Functions (lifecycle) + // + //-------------------------------------------------------------------------- + + /** + * Renders the component. + */ + render() { + return ( + + + + ); + } + + //-------------------------------------------------------------------------- + // + // Functions (protected) + // + //-------------------------------------------------------------------------- + +} diff --git a/src/components/layout-manager/readme.md b/src/components/layout-manager/readme.md new file mode 100644 index 000000000..243788266 --- /dev/null +++ b/src/components/layout-manager/readme.md @@ -0,0 +1,10 @@ +# layout-manager + + + + + + +---------------------------------------------- + +*Built with [StencilJS](https://stenciljs.com/)* diff --git a/src/components/layout-manager/test/layout-manager.e2e.ts b/src/components/layout-manager/test/layout-manager.e2e.ts new file mode 100644 index 000000000..85f3dc9ee --- /dev/null +++ b/src/components/layout-manager/test/layout-manager.e2e.ts @@ -0,0 +1,11 @@ +import { newE2EPage } from '@stencil/core/testing'; + +xdescribe('layout-manager', () => { + it('renders', async () => { + const page = await newE2EPage(); + await page.setContent(''); + + const element = await page.find('layout-manager'); + expect(element).toHaveClass('hydrated'); + }); +}); diff --git a/src/components/layout-manager/test/layout-manager.spec.tsx b/src/components/layout-manager/test/layout-manager.spec.tsx new file mode 100644 index 000000000..e1affe94a --- /dev/null +++ b/src/components/layout-manager/test/layout-manager.spec.tsx @@ -0,0 +1,18 @@ +import { newSpecPage } from '@stencil/core/testing'; +import { LayoutManager } from '../layout-manager'; + +xdescribe('layout-manager', () => { + it('renders', async () => { + const page = await newSpecPage({ + components: [LayoutManager], + html: ``, + }); + expect(page.root).toEqualHtml(` + + + + + + `); + }); +}); From d9cbb2f80b5d29f6a54d80c0ae46fae38e845699 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Tue, 15 Aug 2023 10:16:07 -0600 Subject: [PATCH 114/406] add license text --- src/components/layout-manager/layout-manager.css | 16 ++++++++++++++++ src/components/layout-manager/layout-manager.tsx | 2 +- .../layout-manager/test/layout-manager.e2e.ts | 16 ++++++++++++++++ .../layout-manager/test/layout-manager.spec.tsx | 16 ++++++++++++++++ src/components/map-picker/map-picker.css | 16 ++++++++++++++++ src/components/map-picker/map-picker.tsx | 16 ++++++++++++++++ src/components/map-picker/test/map-picker.e2e.ts | 16 ++++++++++++++++ .../map-picker/test/map-picker.spec.tsx | 16 ++++++++++++++++ 8 files changed, 113 insertions(+), 1 deletion(-) diff --git a/src/components/layout-manager/layout-manager.css b/src/components/layout-manager/layout-manager.css index 5d4e87f30..1eae6c16b 100644 --- a/src/components/layout-manager/layout-manager.css +++ b/src/components/layout-manager/layout-manager.css @@ -1,3 +1,19 @@ +/** @license + * Copyright 2023 Esri + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + :host { display: block; } diff --git a/src/components/layout-manager/layout-manager.tsx b/src/components/layout-manager/layout-manager.tsx index d100b91e7..aa26271f4 100644 --- a/src/components/layout-manager/layout-manager.tsx +++ b/src/components/layout-manager/layout-manager.tsx @@ -1,5 +1,5 @@ /** @license - * Copyright 2022 Esri + * Copyright 2023 Esri * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/src/components/layout-manager/test/layout-manager.e2e.ts b/src/components/layout-manager/test/layout-manager.e2e.ts index 85f3dc9ee..5bd6242b4 100644 --- a/src/components/layout-manager/test/layout-manager.e2e.ts +++ b/src/components/layout-manager/test/layout-manager.e2e.ts @@ -1,3 +1,19 @@ +/** @license + * Copyright 2023 Esri + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + import { newE2EPage } from '@stencil/core/testing'; xdescribe('layout-manager', () => { diff --git a/src/components/layout-manager/test/layout-manager.spec.tsx b/src/components/layout-manager/test/layout-manager.spec.tsx index e1affe94a..259284577 100644 --- a/src/components/layout-manager/test/layout-manager.spec.tsx +++ b/src/components/layout-manager/test/layout-manager.spec.tsx @@ -1,3 +1,19 @@ +/** @license + * Copyright 2023 Esri + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + import { newSpecPage } from '@stencil/core/testing'; import { LayoutManager } from '../layout-manager'; diff --git a/src/components/map-picker/map-picker.css b/src/components/map-picker/map-picker.css index 4a7c06713..dd1d7b7eb 100644 --- a/src/components/map-picker/map-picker.css +++ b/src/components/map-picker/map-picker.css @@ -1,3 +1,19 @@ +/** @license + * Copyright 2023 Esri + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + :host { display: block; } diff --git a/src/components/map-picker/map-picker.tsx b/src/components/map-picker/map-picker.tsx index c4fdba4ed..93f517b7d 100644 --- a/src/components/map-picker/map-picker.tsx +++ b/src/components/map-picker/map-picker.tsx @@ -1,3 +1,19 @@ +/** @license + * Copyright 2023 Esri + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + import { Component, Element, Event, EventEmitter, Host, h, Prop, State, VNode, Watch } from '@stencil/core'; import { IMapInfo } from "../../utils/interfaces"; diff --git a/src/components/map-picker/test/map-picker.e2e.ts b/src/components/map-picker/test/map-picker.e2e.ts index a1fdf665d..afef9e9e3 100644 --- a/src/components/map-picker/test/map-picker.e2e.ts +++ b/src/components/map-picker/test/map-picker.e2e.ts @@ -1,3 +1,19 @@ +/** @license + * Copyright 2023 Esri + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + import { newE2EPage } from '@stencil/core/testing'; xdescribe('map-picker', () => { diff --git a/src/components/map-picker/test/map-picker.spec.tsx b/src/components/map-picker/test/map-picker.spec.tsx index 9ed32b11b..58d79a047 100644 --- a/src/components/map-picker/test/map-picker.spec.tsx +++ b/src/components/map-picker/test/map-picker.spec.tsx @@ -1,3 +1,19 @@ +/** @license + * Copyright 2023 Esri + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + import { newSpecPage } from '@stencil/core/testing'; import { MapPicker } from '../map-picker'; From f1dc0e9db34213146822271ef082f7d0f355fb49 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Tue, 15 Aug 2023 11:13:27 -0600 Subject: [PATCH 115/406] implement layout manager --- .../t9n/crowdsource-manager/resources.json | 7 +- .../t9n/crowdsource-manager/resources_en.json | 7 +- src/assets/t9n/layout-manager/resources.json | 7 ++ .../t9n/layout-manager/resources_en.json | 7 ++ src/components.d.ts | 10 +- .../crowdsource-manager.css | 75 -------------- .../crowdsource-manager.tsx | 69 +++---------- src/components/crowdsource-manager/readme.md | 18 ++-- .../layout-manager/layout-manager.css | 57 +++++++++++ .../layout-manager/layout-manager.tsx | 99 ++++++++++++++++++- src/components/layout-manager/readme.md | 35 +++++++ 11 files changed, 235 insertions(+), 156 deletions(-) create mode 100644 src/assets/t9n/layout-manager/resources.json create mode 100644 src/assets/t9n/layout-manager/resources_en.json diff --git a/src/assets/t9n/crowdsource-manager/resources.json b/src/assets/t9n/crowdsource-manager/resources.json index 4ce0e1ffa..27dc5a4fa 100644 --- a/src/assets/t9n/crowdsource-manager/resources.json +++ b/src/assets/t9n/crowdsource-manager/resources.json @@ -1,10 +1,5 @@ { "header": "Crowdsource Manager", - "layout": "Layout", "open": "Open", - "close": "Close", - "grid": "Grid", - "vertical": "Vertical", - "horizontal": "Horizontal", - "appInfo": "Some basic information about the app" + "close": "Close" } diff --git a/src/assets/t9n/crowdsource-manager/resources_en.json b/src/assets/t9n/crowdsource-manager/resources_en.json index 33bf7b454..9ec01a3ee 100644 --- a/src/assets/t9n/crowdsource-manager/resources_en.json +++ b/src/assets/t9n/crowdsource-manager/resources_en.json @@ -1,10 +1,5 @@ { "header": "Crowdsource Manager", - "layout": "Layout", "open": "Open", - "close": "Close", - "grid": "Grid", - "vertical": "Vertical", - "horizontal": "Horizontal", - "appInfo": "Some basic information about the app" + "close": "Close" } diff --git a/src/assets/t9n/layout-manager/resources.json b/src/assets/t9n/layout-manager/resources.json new file mode 100644 index 000000000..968ddb1ce --- /dev/null +++ b/src/assets/t9n/layout-manager/resources.json @@ -0,0 +1,7 @@ +{ + "layout": "Layout", + "grid": "Grid", + "vertical": "Vertical", + "horizontal": "Horizontal", + "appInfo": "Some basic information about the app" +} diff --git a/src/assets/t9n/layout-manager/resources_en.json b/src/assets/t9n/layout-manager/resources_en.json new file mode 100644 index 000000000..968ddb1ce --- /dev/null +++ b/src/assets/t9n/layout-manager/resources_en.json @@ -0,0 +1,7 @@ +{ + "layout": "Layout", + "grid": "Grid", + "vertical": "Vertical", + "horizontal": "Horizontal", + "appInfo": "Some basic information about the app" +} diff --git a/src/components.d.ts b/src/components.d.ts index 63aad6b15..739fb7052 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -5,7 +5,7 @@ * It contains typing information for all components that exist in this project. */ import { HTMLStencilElement, JSXBase } from "@stencil/core/internal"; -import { DistanceUnit, EDrawMode, EExpandType, IExportInfos, IInventoryItem, IMapInfo, ISearchConfiguration, ISelectionSet, ISketchGraphicsChange, ISolutionSpatialReferenceInfo, ISpatialRefRepresentation, IValueChange } from "./utils/interfaces"; +import { DistanceUnit, EDrawMode, EExpandType, ELayoutMode, IExportInfos, IInventoryItem, IMapInfo, ISearchConfiguration, ISelectionSet, ISketchGraphicsChange, ISolutionSpatialReferenceInfo, ISpatialRefRepresentation, IValueChange } from "./utils/interfaces"; import { UserSession } from "@esri/solution-common"; export namespace Components { interface BufferTools { @@ -674,6 +674,10 @@ export interface LayerTableCustomEvent extends CustomEvent { detail: T; target: HTMLLayerTableElement; } +export interface LayoutManagerCustomEvent extends CustomEvent { + detail: T; + target: HTMLLayoutManagerElement; +} export interface MapCardCustomEvent extends CustomEvent { detail: T; target: HTMLMapCardElement; @@ -1106,6 +1110,10 @@ declare namespace LocalJSX { "onFeatureSelectionChange"?: (event: LayerTableCustomEvent) => void; } interface LayoutManager { + /** + * Emitted when the layout should change + */ + "onLayoutChanged"?: (event: LayoutManagerCustomEvent) => void; } interface ListItem { } diff --git a/src/components/crowdsource-manager/crowdsource-manager.css b/src/components/crowdsource-manager/crowdsource-manager.css index 4d677d17d..5aa980933 100644 --- a/src/components/crowdsource-manager/crowdsource-manager.css +++ b/src/components/crowdsource-manager/crowdsource-manager.css @@ -19,75 +19,14 @@ --calcite-label-margin-bottom: 0px; } -.padding-1 { - padding: 1rem; -} - .padding-1-2 { padding: 0.5rem; } -.header-title { - display: flex; - float: left; -} - -.header-controls-label { - display: flex; - float: right; -} - -.header-controls { - height: 50px; -} - -.img-background { - background-repeat: no-repeat; - background-size: 100% 100%; - width: 38px; - height: 26px; -} - -.grid-background { - background-image: url('../../assets/data/images/grid.png'); -} - -.horizontal-background { - background-image: url('../../assets/data/images/horizontal.png'); -} - -.vertical-background { - background-image: url('../../assets/data/images/vertical.png'); -} - -.action-center { - -webkit-box-align: center; - -webkit-align-items: center; - -ms-grid-row-align: center; - align-items: center; - -webkit-align-content: center; - align-content: center; - -webkit-box-pack: center; - -webkit-justify-content: center; - justify-content: center; -} - -.background-transparent { - background-color: transparent; -} - .display-flex { display: flex; } -.header-text { - font-size: var(--calcite-font-size-0); - font-weight: var(--calcite-font-weight-medium); - padding-inline: 0.75rem; - padding-block: 0.875rem; - line-height: 1.25rem; -} - .width-full { width: 100%; } @@ -157,20 +96,6 @@ height: calc(100% - 1rem); } -.icon-color { - --calcite-ui-icon-color: var(--calcite-ui-brand); -} - -.icon { - cursor: pointer; -} - -.tooltip-message { - padding: 5px 8px; - font-weight: var(--calcite-font-weight-normal); - color: var(--calcite-ui-text-2); -} - .display-none { display: none; } diff --git a/src/components/crowdsource-manager/crowdsource-manager.tsx b/src/components/crowdsource-manager/crowdsource-manager.tsx index d7e9166bd..b200ba01a 100644 --- a/src/components/crowdsource-manager/crowdsource-manager.tsx +++ b/src/components/crowdsource-manager/crowdsource-manager.tsx @@ -104,6 +104,16 @@ export class CrowdsourceManager { // //-------------------------------------------------------------------------- + /** + * Listen for layoutChanged event to be fired so we can adjust the layout + */ + @Listen("layoutChanged", { target: "window" }) + async layoutChanged( + evt: CustomEvent + ): Promise { + this._layoutMode = evt.detail; + } + /** * Listen for mapChanged event to be fired then store the new mapView so components will be updated */ @@ -141,31 +151,7 @@ export class CrowdsourceManager { class="width-full height-full" heading={this._translations.header} > -
-
- - - - {this._translations.appInfo} - - -
-
- {this._translations.layout} -
- {this._getAction("grid-background", ELayoutMode.GRID, this._translations.grid)} - {this._getAction("vertical-background", ELayoutMode.VERTICAL, this._translations.vertical)} - {this._getAction("horizontal-background", ELayoutMode.HORIZONTAL, this._translations.horizontal)} -
+ {this._getBody(this._layoutMode, this._panelOpen, this.hideMap)} @@ -179,36 +165,10 @@ export class CrowdsourceManager { // //-------------------------------------------------------------------------- - protected _getAction( - imgClass: string, - layoutMode: ELayoutMode, - tip: string - ): VNode { - return ( -
- { this._setLayoutMode(layoutMode) }} - text="" - > -
- - - {tip} - -
- ); - } - protected _getDividerIcon( layoutMode: ELayoutMode, panelOpen: boolean ): string { - console.log(layoutMode) let icon = ""; switch (layoutMode) { case ELayoutMode.HORIZONTAL: @@ -227,7 +187,6 @@ export class CrowdsourceManager { (panelOpen ? "chevrons-left" : "chevrons-right"); break; } - console.log(icon) return icon; } @@ -365,12 +324,6 @@ export class CrowdsourceManager { ); } - protected _setLayoutMode( - layoutMode: ELayoutMode - ): void { - this._layoutMode = layoutMode; - } - protected _toggleLayout(): void { this._panelOpen = !this._panelOpen; } diff --git a/src/components/crowdsource-manager/readme.md b/src/components/crowdsource-manager/readme.md index e4301568f..2a99f5ee4 100644 --- a/src/components/crowdsource-manager/readme.md +++ b/src/components/crowdsource-manager/readme.md @@ -20,13 +20,12 @@ - calcite-shell - calcite-panel -- calcite-icon -- calcite-popover -- calcite-action -- calcite-tooltip +- [layout-manager](../layout-manager) - [map-card](../map-card) - [card-manager](../card-manager) - calcite-action-bar +- calcite-action +- calcite-tooltip - [layer-table](../layer-table) ### Graph @@ -34,13 +33,12 @@ graph TD; crowdsource-manager --> calcite-shell crowdsource-manager --> calcite-panel - crowdsource-manager --> calcite-icon - crowdsource-manager --> calcite-popover - crowdsource-manager --> calcite-action - crowdsource-manager --> calcite-tooltip + crowdsource-manager --> layout-manager crowdsource-manager --> map-card crowdsource-manager --> card-manager crowdsource-manager --> calcite-action-bar + crowdsource-manager --> calcite-action + crowdsource-manager --> calcite-tooltip crowdsource-manager --> layer-table calcite-panel --> calcite-action calcite-panel --> calcite-action-menu @@ -52,6 +50,10 @@ graph TD; calcite-popover --> calcite-action calcite-popover --> calcite-icon calcite-scrim --> calcite-loader + layout-manager --> calcite-icon + layout-manager --> calcite-popover + layout-manager --> calcite-action + layout-manager --> calcite-tooltip map-card --> map-picker map-card --> map-tools map-picker --> calcite-button diff --git a/src/components/layout-manager/layout-manager.css b/src/components/layout-manager/layout-manager.css index 1eae6c16b..0e4ae9087 100644 --- a/src/components/layout-manager/layout-manager.css +++ b/src/components/layout-manager/layout-manager.css @@ -17,3 +17,60 @@ :host { display: block; } + +.action-center { + -webkit-box-align: center; + -webkit-align-items: center; + -ms-grid-row-align: center; + align-items: center; + -webkit-align-content: center; + align-content: center; + -webkit-box-pack: center; + -webkit-justify-content: center; + justify-content: center; +} + +.display-flex { + display: flex; +} + +.icon-color { + --calcite-ui-icon-color: var(--calcite-ui-brand); +} + +.icon { + cursor: pointer; +} + +.tooltip-message { + padding: 5px 8px; + font-weight: var(--calcite-font-weight-normal); + color: var(--calcite-ui-text-2); +} + +.header-text { + font-size: var(--calcite-font-size-0); + font-weight: var(--calcite-font-weight-medium); + padding-inline: 0.75rem; + padding-block: 0.875rem; + line-height: 1.25rem; +} + +.img-background { + background-repeat: no-repeat; + background-size: 100% 100%; + width: 38px; + height: 26px; +} + +.grid-background { + background-image: url('../../assets/data/images/grid.png'); +} + +.horizontal-background { + background-image: url('../../assets/data/images/horizontal.png'); +} + +.vertical-background { + background-image: url('../../assets/data/images/vertical.png'); +} diff --git a/src/components/layout-manager/layout-manager.tsx b/src/components/layout-manager/layout-manager.tsx index aa26271f4..79dd12093 100644 --- a/src/components/layout-manager/layout-manager.tsx +++ b/src/components/layout-manager/layout-manager.tsx @@ -14,7 +14,10 @@ * limitations under the License. */ -import { Component, Element, Host, h } from '@stencil/core'; +import { Component, Element, Event, EventEmitter, Host, h, State, VNode } from "@stencil/core"; +import LayoutManager_T9n from "../../assets/t9n/layout-manager/resources.json"; +import { getLocaleComponentStrings } from "../../utils/locale"; +import { ELayoutMode } from "../../utils/interfaces"; @Component({ tag: 'layout-manager', @@ -42,12 +45,23 @@ export class LayoutManager { // //-------------------------------------------------------------------------- + /** + * Contains the translations for this component. + * All UI strings should be defined here. + */ + @State() _translations: typeof LayoutManager_T9n; + //-------------------------------------------------------------------------- // // Properties (protected) // //-------------------------------------------------------------------------- + /** + * Controls the layout of the application + */ + protected _layoutMode: ELayoutMode = ELayoutMode.GRID; + //-------------------------------------------------------------------------- // // Watch handlers @@ -66,19 +80,57 @@ export class LayoutManager { // //-------------------------------------------------------------------------- + /** + * Emitted when the layout should change + */ + @Event() layoutChanged: EventEmitter; + //-------------------------------------------------------------------------- // // Functions (lifecycle) // //-------------------------------------------------------------------------- + /** + * StencilJS: Called once just after the component is first connected to the DOM. + * + * @returns Promise when complete + */ + async componentWillLoad(): Promise { + await this._getTranslations(); + } + /** * Renders the component. */ render() { return ( - +
+
+ + + + {this._translations.appInfo} + + +
+
+ {this._translations.layout} +
+ {this._getAction("grid-background", ELayoutMode.GRID, this._translations.grid)} + {this._getAction("vertical-background", ELayoutMode.VERTICAL, this._translations.vertical)} + {this._getAction("horizontal-background", ELayoutMode.HORIZONTAL, this._translations.horizontal)} +
); } @@ -89,4 +141,47 @@ export class LayoutManager { // //-------------------------------------------------------------------------- + protected _getAction( + imgClass: string, + layoutMode: ELayoutMode, + tip: string + ): VNode { + return ( +
+ { this._setLayoutMode(layoutMode) }} + text="" + > +
+ + + {tip} + +
+ ); + } + + protected _setLayoutMode( + layoutMode: ELayoutMode + ): void { + this._layoutMode = layoutMode; + this.layoutChanged.emit(this._layoutMode); + } + + /** + * Fetches the component's translations + * + * @returns Promise when complete + * @protected + */ + protected async _getTranslations(): Promise { + const messages = await getLocaleComponentStrings(this.el); + this._translations = messages[0] as typeof LayoutManager_T9n; + } + } diff --git a/src/components/layout-manager/readme.md b/src/components/layout-manager/readme.md index 243788266..539a98aa3 100644 --- a/src/components/layout-manager/readme.md +++ b/src/components/layout-manager/readme.md @@ -5,6 +5,41 @@ +## Events + +| Event | Description | Type | +| --------------- | ------------------------------------- | --------------------------------------------------------------------------------- | +| `layoutChanged` | Emitted when the layout should change | `CustomEvent` | + + +## Dependencies + +### Used by + + - [crowdsource-manager](../crowdsource-manager) + +### Depends on + +- calcite-icon +- calcite-popover +- calcite-action +- calcite-tooltip + +### Graph +```mermaid +graph TD; + layout-manager --> calcite-icon + layout-manager --> calcite-popover + layout-manager --> calcite-action + layout-manager --> calcite-tooltip + calcite-popover --> calcite-action + calcite-popover --> calcite-icon + calcite-action --> calcite-loader + calcite-action --> calcite-icon + crowdsource-manager --> layout-manager + style layout-manager fill:#f9f,stroke:#333,stroke-width:4px +``` + ---------------------------------------------- *Built with [StencilJS](https://stenciljs.com/)* From b26b9beb56d6c12af5d16c2d146aa069117b8a73 Mon Sep 17 00:00:00 2001 From: Mike Tschudi Date: Tue, 15 Aug 2023 10:24:24 -0700 Subject: [PATCH 116/406] Changed to CJS for arcgis-pdf-creator because of Jest not handling ESM for it --- babel.config.js | 12 + package-lock.json | 21250 ++++++++++------ package.json | 14 +- src/assets/arcgis-pdf-creator/PDFCreator.js | 20 +- .../arcgis-pdf-creator/PDFCreator_jsPDF.js | 16 +- src/assets/arcgis-pdf-creator/PDFLabels.js | 10 +- .../arcgis-pdf-creator_commit.txt | 2 +- src/assets/arcgis-pdf-creator/grid.js | 10 +- 8 files changed, 13785 insertions(+), 7549 deletions(-) create mode 100644 babel.config.js diff --git a/babel.config.js b/babel.config.js new file mode 100644 index 000000000..b9e8c23ea --- /dev/null +++ b/babel.config.js @@ -0,0 +1,12 @@ +module.exports = { + presets: [ + [ + "es2015", + { + "modules": false + } + ] + ], { + targets: { node: 'current' } + } +]}; diff --git a/package-lock.json b/package-lock.json index be78101e6..a303272ef 100644 --- a/package-lock.json +++ b/package-lock.json @@ -21,18 +21,22 @@ "pdf-lib": "^1.17.1" }, "devDependencies": { + "@babel/core": "^7.22.10", + "@babel/preset-env": "^7.22.10", + "@babel/preset-typescript": "^7.22.5", "@esri/eslint-plugin-calcite-components": "^0.2.2", "@esri/solution-common": "3.0.1", "@stencil/postcss": "^2.1.0", "@stencil/sass": "^2.0.0", "@stencil/store": "^2.0.1", "@types/arcgis-js-api": "^4.27.0", - "@types/jest": "^27.5.2", + "@types/jest": "^27.0.3", "@types/node": "^16.11.11", - "@types/puppeteer": "^5.4.2", + "@types/puppeteer": "^7.0.4", "@typescript-eslint/eslint-plugin": "^5.4.0", "@typescript-eslint/parser": "^5.39.0", "autoprefixer": "10.4.4", + "babel-jest": "^29.6.2", "caniuse-lite": "^1.0.30001412", "dotenv": "^10.0.0", "eslint": "^8.11.0", @@ -44,11 +48,11 @@ "esri-loader": "3.4.0", "form-request-submit-polyfill": "^2.0.0", "gh-release": "^6.0.3", - "jest": "^27.5.1", - "jest-cli": "^27.5.1", + "jest": "^27.0.3", + "jest-cli": "^27.4.5", "pify": "^5.0.0", "prettier": "2.4.1", - "puppeteer": "^13.5.1", + "puppeteer": "^21.0.3", "react": "^18.2.0", "rimraf": "^3.0.2", "tailwindcss": "3.0.23", @@ -81,47 +85,119 @@ } }, "node_modules/@babel/code-frame": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", - "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.10.tgz", + "integrity": "sha512-/KKIMG4UEL35WmI9OlvMhurwtytjvXoFcGNrOvyG9zIzA8YmPjVtIZUf7b05+TPO7G7/GEmLHDaoCgACHl9hhA==", "dev": true, "dependencies": { - "@babel/highlight": "^7.18.6" + "@babel/highlight": "^7.22.10", + "chalk": "^2.4.2" }, "engines": { "node": ">=6.9.0" } }, + "node_modules/@babel/code-frame/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/code-frame/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/code-frame/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/@babel/code-frame/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "node_modules/@babel/code-frame/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/@babel/code-frame/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/code-frame/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/@babel/compat-data": { - "version": "7.20.14", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.20.14.tgz", - "integrity": "sha512-0YpKHD6ImkWMEINCyDAD0HLLUH/lPCefG8ld9it8DJB2wnApraKuhgYTvTY1z7UFIfBTGy5LwncZ+5HWWGbhFw==", + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.22.9.tgz", + "integrity": "sha512-5UamI7xkUcJ3i9qVDS+KFDEK8/7oJ55/sJMB1Ge7IEapr7KfdfV/HErR+koZwOfd+SgtFKOKRhRakdg++DcJpQ==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.20.12", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.20.12.tgz", - "integrity": "sha512-XsMfHovsUYHFMdrIHkZphTN/2Hzzi78R08NuHfDBehym2VsPDL6Zn/JAD/JQdnRvbSsbQc4mVaU1m6JgtTEElg==", - "dev": true, - "dependencies": { - "@ampproject/remapping": "^2.1.0", - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.20.7", - "@babel/helper-compilation-targets": "^7.20.7", - "@babel/helper-module-transforms": "^7.20.11", - "@babel/helpers": "^7.20.7", - "@babel/parser": "^7.20.7", - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.20.12", - "@babel/types": "^7.20.7", + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.22.10.tgz", + "integrity": "sha512-fTmqbbUBAwCcre6zPzNngvsI0aNrPZe77AeqvDxWM9Nm+04RrJ3CAmGHA9f7lJQY6ZMhRztNemy4uslDxTX4Qw==", + "dev": true, + "dependencies": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.22.10", + "@babel/generator": "^7.22.10", + "@babel/helper-compilation-targets": "^7.22.10", + "@babel/helper-module-transforms": "^7.22.9", + "@babel/helpers": "^7.22.10", + "@babel/parser": "^7.22.10", + "@babel/template": "^7.22.5", + "@babel/traverse": "^7.22.10", + "@babel/types": "^7.22.10", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", "json5": "^2.2.2", - "semver": "^6.3.0" + "semver": "^6.3.1" }, "engines": { "node": ">=6.9.0" @@ -132,9 +208,9 @@ } }, "node_modules/@babel/core/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "dev": true, "bin": { "semver": "bin/semver.js" @@ -177,13 +253,14 @@ } }, "node_modules/@babel/generator": { - "version": "7.20.14", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.20.14.tgz", - "integrity": "sha512-AEmuXHdcD3A52HHXxaTmYlb8q/xMEhoRP67B3T4Oq7lbmSoqroMZzjnGj3+i1io3pdnF8iBYVu4Ilj+c4hBxYg==", + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.22.10.tgz", + "integrity": "sha512-79KIf7YiWjjdZ81JnLujDRApWtl7BxTqWD88+FFdQEIOG8LJ0etDOM7CXuIgGJa55sGOwZVwuEsaLEm0PJ5/+A==", "dev": true, "dependencies": { - "@babel/types": "^7.20.7", + "@babel/types": "^7.22.10", "@jridgewell/gen-mapping": "^0.3.2", + "@jridgewell/trace-mapping": "^0.3.17", "jsesc": "^2.5.1" }, "engines": { @@ -204,17 +281,70 @@ "node": ">=6.0.0" } }, + "node_modules/@babel/helper-annotate-as-pure": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.22.5.tgz", + "integrity": "sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-builder-binary-assignment-operator-visitor": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.22.10.tgz", + "integrity": "sha512-Av0qubwDQxC56DoUReVDeLfMEjYYSN1nZrTUrWkXd7hpU73ymRANkbuDm3yni9npkn+RXy9nNbEJZEzXr7xrfQ==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.10" + }, + "engines": { + "node": ">=6.9.0" + } + }, "node_modules/@babel/helper-compilation-targets": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.7.tgz", - "integrity": "sha512-4tGORmfQcrc+bvrjb5y3dG9Mx1IOZjsHqQVUz7XCNHO+iTmqxWnVg3KRygjGmpRLJGdQSKuvFinbIb0CnZwHAQ==", + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.10.tgz", + "integrity": "sha512-JMSwHD4J7SLod0idLq5PKgI+6g/hLD/iuWBq08ZX49xE14VpVEojJ5rHWptpirV2j020MvypRLAXAO50igCJ5Q==", "dev": true, "dependencies": { - "@babel/compat-data": "^7.20.5", - "@babel/helper-validator-option": "^7.18.6", - "browserslist": "^4.21.3", + "@babel/compat-data": "^7.22.9", + "@babel/helper-validator-option": "^7.22.5", + "browserslist": "^4.21.9", "lru-cache": "^5.1.1", - "semver": "^6.3.0" + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/helper-create-class-features-plugin": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.22.10.tgz", + "integrity": "sha512-5IBb77txKYQPpOEdUdIhBx8VrZyDCQ+H82H0+5dX1TmuscP5vJKEE3cKurjtIw/vFwzbVH48VweE78kVDBrqjA==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-function-name": "^7.22.5", + "@babel/helper-member-expression-to-functions": "^7.22.5", + "@babel/helper-optimise-call-expression": "^7.22.5", + "@babel/helper-replace-supers": "^7.22.9", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "semver": "^6.3.1" }, "engines": { "node": ">=6.9.0" @@ -223,162 +353,305 @@ "@babel/core": "^7.0.0" } }, - "node_modules/@babel/helper-compilation-targets/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "node_modules/@babel/helper-create-class-features-plugin/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/helper-create-regexp-features-plugin": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.22.9.tgz", + "integrity": "sha512-+svjVa/tFwsNSG4NEy1h85+HQ5imbT92Q5/bgtS7P0GTQlP8WuFdqsiABmQouhiFGyV66oGxZFpeYHza1rNsKw==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "regexpu-core": "^5.3.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-create-regexp-features-plugin/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "dev": true, "bin": { "semver": "bin/semver.js" } }, + "node_modules/@babel/helper-define-polyfill-provider": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.4.2.tgz", + "integrity": "sha512-k0qnnOqHn5dK9pZpfD5XXZ9SojAITdCKRn2Lp6rnDGzIbaP0rHyMPk/4wsSxVBVz4RfN0q6VpXWP2pDGIoQ7hw==", + "dev": true, + "dependencies": { + "@babel/helper-compilation-targets": "^7.22.6", + "@babel/helper-plugin-utils": "^7.22.5", + "debug": "^4.1.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.14.2" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/@babel/helper-define-polyfill-provider/node_modules/resolve": { + "version": "1.22.4", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.4.tgz", + "integrity": "sha512-PXNdCiPqDqeUou+w1C2eTQbNfxKSuMxqTCuvlmmMsk1NWHL5fRrhY6Pl0qEYYc6+QqGClco1Qj8XnjPego4wfg==", + "dev": true, + "dependencies": { + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/@babel/helper-environment-visitor": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", - "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==", + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.5.tgz", + "integrity": "sha512-XGmhECfVA/5sAt+H+xpSg0mfrHq6FzNr9Oxh7PSEBBRUb/mL7Kz3NICXb194rCqAEdxkhPT1a88teizAFyvk8Q==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-function-name": { - "version": "7.19.0", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.19.0.tgz", - "integrity": "sha512-WAwHBINyrpqywkUH0nTnNgI5ina5TFn85HKS0pbPDfxFfhyR/aNQEn4hGi1P1JyT//I0t4OgXUlofzWILRvS5w==", + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.22.5.tgz", + "integrity": "sha512-wtHSq6jMRE3uF2otvfuD3DIvVhOsSNshQl0Qrd7qC9oQJzHvOL4qQXlQn2916+CXGywIjpGuIkoyZRRxHPiNQQ==", "dev": true, "dependencies": { - "@babel/template": "^7.18.10", - "@babel/types": "^7.19.0" + "@babel/template": "^7.22.5", + "@babel/types": "^7.22.5" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-hoist-variables": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz", - "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==", + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz", + "integrity": "sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-member-expression-to-functions": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.22.5.tgz", + "integrity": "sha512-aBiH1NKMG0H2cGZqspNvsaBe6wNGjbJjuLy29aU+eDZjSbbN53BaxlpB02xm9v34pLTZ1nIQPFYn2qMZoa5BQQ==", "dev": true, "dependencies": { - "@babel/types": "^7.18.6" + "@babel/types": "^7.22.5" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-module-imports": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz", - "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==", + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.5.tgz", + "integrity": "sha512-8Dl6+HD/cKifutF5qGd/8ZJi84QeAKh+CEe1sBzz8UayBBGg1dAIJrdHOcOM5b2MpzWL2yuotJTtGjETq0qjXg==", "dev": true, "dependencies": { - "@babel/types": "^7.18.6" + "@babel/types": "^7.22.5" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-module-transforms": { - "version": "7.20.11", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.20.11.tgz", - "integrity": "sha512-uRy78kN4psmji1s2QtbtcCSaj/LILFDp0f/ymhpQH5QY3nljUZCaNWz9X1dEj/8MBdBEFECs7yRhKn8i7NjZgg==", - "dev": true, - "dependencies": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-simple-access": "^7.20.2", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/helper-validator-identifier": "^7.19.1", - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.20.10", - "@babel/types": "^7.20.7" + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.22.9.tgz", + "integrity": "sha512-t+WA2Xn5K+rTeGtC8jCsdAH52bjggG5TKRuRrAGNM/mjIbO4GxvlLMFOEz9wXY5I2XQ60PMFsAG2WIcG82dQMQ==", + "dev": true, + "dependencies": { + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-module-imports": "^7.22.5", + "@babel/helper-simple-access": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "@babel/helper-validator-identifier": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-optimise-call-expression": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.22.5.tgz", + "integrity": "sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-plugin-utils": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz", - "integrity": "sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ==", + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.22.5.tgz", + "integrity": "sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-remap-async-to-generator": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.22.9.tgz", + "integrity": "sha512-8WWC4oR4Px+tr+Fp0X3RHDVfINGpF3ad1HIbrc8A77epiR6eMMc6jsgozkzT2uDiOOdoS9cLIQ+XD2XvI2WSmQ==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-wrap-function": "^7.22.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-replace-supers": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.22.9.tgz", + "integrity": "sha512-LJIKvvpgPOPUThdYqcX6IXRuIcTkcAub0IaDRGCZH0p5GPUp7PhRU9QVgFcDDd51BaPkk77ZjqFwh6DZTAEmGg==", "dev": true, + "dependencies": { + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-member-expression-to-functions": "^7.22.5", + "@babel/helper-optimise-call-expression": "^7.22.5" + }, "engines": { "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, "node_modules/@babel/helper-simple-access": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz", - "integrity": "sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA==", + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz", + "integrity": "sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.22.5.tgz", + "integrity": "sha512-tK14r66JZKiC43p8Ki33yLBVJKlQDFoA8GYN67lWCDCqoL6EMMSuM9b+Iff2jHaM/RRFYl7K+iiru7hbRqNx8Q==", "dev": true, "dependencies": { - "@babel/types": "^7.20.2" + "@babel/types": "^7.22.5" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-split-export-declaration": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz", - "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==", + "version": "7.22.6", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz", + "integrity": "sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==", "dev": true, "dependencies": { - "@babel/types": "^7.18.6" + "@babel/types": "^7.22.5" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-string-parser": { - "version": "7.19.4", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz", - "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==", + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz", + "integrity": "sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-validator-identifier": { - "version": "7.19.1", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz", - "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==", + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.5.tgz", + "integrity": "sha512-aJXu+6lErq8ltp+JhkJUfk1MTGyuA4v7f3pA+BJ5HLfNC6nAQ0Cpi9uOquUj8Hehg0aUiHzWQbOVJGao6ztBAQ==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-validator-option": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz", - "integrity": "sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw==", + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.22.5.tgz", + "integrity": "sha512-R3oB6xlIVKUnxNUxbmgq7pKjxpru24zlimpE8WK47fACIlM0II/Hm1RS8IaOI7NgCr6LNS+jl5l75m20npAziw==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-wrap-function": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.22.10.tgz", + "integrity": "sha512-OnMhjWjuGYtdoO3FmsEFWvBStBAe2QOgwOLsLNDjN+aaiMD8InJk1/O3HSD8lkqTjCgg5YI34Tz15KNNA3p+nQ==", "dev": true, + "dependencies": { + "@babel/helper-function-name": "^7.22.5", + "@babel/template": "^7.22.5", + "@babel/types": "^7.22.10" + }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helpers": { - "version": "7.20.13", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.20.13.tgz", - "integrity": "sha512-nzJ0DWCL3gB5RCXbUO3KIMMsBY2Eqbx8mBpKGE/02PgyRQFcPQLbkQ1vyy596mZLaP+dAfD+R4ckASzNVmW3jg==", + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.22.10.tgz", + "integrity": "sha512-a41J4NW8HyZa1I1vAndrraTlPZ/eZoga2ZgS7fEr0tZJGVU4xqdE80CEm0CcNjha5EZ8fTBYLKHF0kqDUuAwQw==", "dev": true, "dependencies": { - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.20.13", - "@babel/types": "^7.20.7" + "@babel/template": "^7.22.5", + "@babel/traverse": "^7.22.10", + "@babel/types": "^7.22.10" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/highlight": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", - "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.10.tgz", + "integrity": "sha512-78aUtVcT7MUscr0K5mIEnkwxPE0MaxkR5RxRwuHaQ+JuU5AmTPhY+do2mdzVTnIJJpyBglql2pehuBIWHug+WQ==", "dev": true, "dependencies": { - "@babel/helper-validator-identifier": "^7.18.6", - "chalk": "^2.0.0", + "@babel/helper-validator-identifier": "^7.22.5", + "chalk": "^2.4.2", "js-tokens": "^4.0.0" }, "engines": { @@ -457,9 +730,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.20.13", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.20.13.tgz", - "integrity": "sha512-gFDLKMfpiXCsjt4za2JA9oTMn70CeseCehb11kRZgvd7+F67Hih3OHOK24cRrWECJ/ljfPGac6ygXAs/C8kIvw==", + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.22.10.tgz", + "integrity": "sha512-lNbdGsQb9ekfsnjFGhEiF4hfFqGgfOP3H3d27re3n+CGhNuTSUEQdfWk556sTLNTloczcdM5TYF2LhzmDQKyvQ==", "dev": true, "bin": { "parser": "bin/babel-parser.js" @@ -468,6 +741,50 @@ "node": ">=6.0.0" } }, + "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.22.5.tgz", + "integrity": "sha512-NP1M5Rf+u2Gw9qfSO4ihjcTGW5zXTi36ITLd4/EoAcEhIZ0yjMqmftDNl3QC19CX7olhrjpyU454g/2W7X0jvQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.22.5.tgz", + "integrity": "sha512-31Bb65aZaUwqCbWMnZPduIZxCBngHFlzyN6Dq6KAJjtx+lx6ohKHubc61OomYi7XwVD4Ol0XCVz4h+pYFR048g==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", + "@babel/plugin-transform-optional-chaining": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.13.0" + } + }, + "node_modules/@babel/plugin-proposal-private-property-in-object": { + "version": "7.21.0-placeholder-for-preset-env.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz", + "integrity": "sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==", + "dev": true, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, "node_modules/@babel/plugin-syntax-async-generators": { "version": "7.8.4", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", @@ -504,22 +821,25 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-syntax-import-meta": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", - "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", + "node_modules/@babel/plugin-syntax-class-static-block": { + "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, "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" }, "peerDependencies": { "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-syntax-json-strings": { + "node_modules/@babel/plugin-syntax-dynamic-import": { "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", - "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", + "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" @@ -528,27 +848,108 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-syntax-logical-assignment-operators": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", - "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", + "node_modules/@babel/plugin-syntax-export-namespace-from": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", + "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-plugin-utils": "^7.8.3" }, "peerDependencies": { "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", - "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", + "node_modules/@babel/plugin-syntax-import-assertions": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.22.5.tgz", + "integrity": "sha512-rdV97N7KqsRzeNGoWUOK6yUsWarLjE5Su/Snk9IYPU9CwkWHs4t+rTGOvffTR8XGkJMTAdLfO0xVnXm8wugIJg==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" + "@babel/helper-plugin-utils": "^7.22.5" }, - "peerDependencies": { + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-attributes": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.22.5.tgz", + "integrity": "sha512-KwvoWDeNKPETmozyFE0P2rOLqh39EoQHNjqizrI5B8Vt0ZNS7M56s7dAiAqbYfiAYOuIzIh96z3iR2ktgu3tEg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-meta": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", + "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-json-strings": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", + "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-jsx": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.22.5.tgz", + "integrity": "sha512-gvyP4hZrgrs/wWMaocvxZ44Hw0b3W8Pe+cMxc8V1ULQ07oh8VNbIRaoD1LRZVTvD+0nieDKjfgKg89sD7rrKrg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", + "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", + "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { "@babel/core": "^7.0.0-0" } }, @@ -600,6 +1001,21 @@ "@babel/core": "^7.0.0-0" } }, + "node_modules/@babel/plugin-syntax-private-property-in-object": { + "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, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, "node_modules/@babel/plugin-syntax-top-level-await": { "version": "7.14.5", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", @@ -616,12 +1032,12 @@ } }, "node_modules/@babel/plugin-syntax-typescript": { - "version": "7.20.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.20.0.tgz", - "integrity": "sha512-rd9TkG+u1CExzS4SM1BlMEhMXwFLKVjOAFFCDx9PbX5ycJWDoWMcwdJH9RhkPu1dOgn5TrxLot/Gx6lWFuAUNQ==", + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.22.5.tgz", + "integrity": "sha512-1mS2o03i7t1c6VzH6fdQ3OA8tcEIxwG18zIPRp+UY1Ihv6W+XZzBCVxExF9upussPXJ0xE9XRHwMoNs1ep/nRQ==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.19.0" + "@babel/helper-plugin-utils": "^7.22.5" }, "engines": { "node": ">=6.9.0" @@ -630,1146 +1046,2691 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/runtime": { - "version": "7.20.13", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.20.13.tgz", - "integrity": "sha512-gt3PKXs0DBoL9xCvOIIZ2NEqAGZqHjAnmVbfQtB620V0uReIQutpel14KcneZuer7UioY8ALKZ7iocavvzTNFA==", + "node_modules/@babel/plugin-syntax-unicode-sets-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-unicode-sets-regex/-/plugin-syntax-unicode-sets-regex-7.18.6.tgz", + "integrity": "sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==", + "dev": true, "dependencies": { - "regenerator-runtime": "^0.13.11" + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" }, "engines": { "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "node_modules/@babel/runtime/node_modules/regenerator-runtime": { - "version": "0.13.11", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", - "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==" - }, - "node_modules/@babel/template": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.20.7.tgz", - "integrity": "sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==", + "node_modules/@babel/plugin-transform-arrow-functions": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.22.5.tgz", + "integrity": "sha512-26lTNXoVRdAnsaDXPpvCNUq+OVWEVC6bx7Vvz9rC53F2bagUWW4u4ii2+h8Fejfh7RYqPxn+libeFBBck9muEw==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.18.6", - "@babel/parser": "^7.20.7", - "@babel/types": "^7.20.7" + "@babel/helper-plugin-utils": "^7.22.5" }, "engines": { "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/traverse": { - "version": "7.20.13", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.20.13.tgz", - "integrity": "sha512-kMJXfF0T6DIS9E8cgdLCSAL+cuCK+YEZHWiLK0SXpTo8YRj5lpJu3CDNKiIBCne4m9hhTIqUg6SYTAI39tAiVQ==", + "node_modules/@babel/plugin-transform-async-generator-functions": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.22.10.tgz", + "integrity": "sha512-eueE8lvKVzq5wIObKK/7dvoeKJ+xc6TvRn6aysIjS6pSCeLy7S/eVi7pEQknZqyqvzaNKdDtem8nUNTBgDVR2g==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.20.7", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.19.0", - "@babel/helper-hoist-variables": "^7.18.6", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/parser": "^7.20.13", - "@babel/types": "^7.20.7", - "debug": "^4.1.0", - "globals": "^11.1.0" + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-remap-async-to-generator": "^7.22.9", + "@babel/plugin-syntax-async-generators": "^7.8.4" }, "engines": { "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/traverse/node_modules/globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "node_modules/@babel/plugin-transform-async-to-generator": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.22.5.tgz", + "integrity": "sha512-b1A8D8ZzE/VhNDoV1MSJTnpKkCG5bJo+19R4o4oy03zM7ws8yEMK755j61Dc3EyvdysbqH5BOOTquJ7ZX9C6vQ==", "dev": true, + "dependencies": { + "@babel/helper-module-imports": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-remap-async-to-generator": "^7.22.5" + }, "engines": { - "node": ">=4" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/types": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.20.7.tgz", - "integrity": "sha512-69OnhBxSSgK0OzTJai4kyPDiKTIe3j+ctaHdIGVbRahTLAT7L3R9oeXHC2aVSuGYt3cVnoAMDmOCgJ2yaiLMvg==", + "node_modules/@babel/plugin-transform-block-scoped-functions": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.22.5.tgz", + "integrity": "sha512-tdXZ2UdknEKQWKJP1KMNmuF5Lx3MymtMN/pvA+p/VEkhK8jVcQ1fzSy8KM9qRYhAf2/lV33hoMPKI/xaI9sADA==", "dev": true, "dependencies": { - "@babel/helper-string-parser": "^7.19.4", - "@babel/helper-validator-identifier": "^7.19.1", - "to-fast-properties": "^2.0.0" + "@babel/helper-plugin-utils": "^7.22.5" }, "engines": { "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@bcoe/v8-coverage": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", - "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", - "dev": true - }, - "node_modules/@cspotcode/source-map-support": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", - "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", + "node_modules/@babel/plugin-transform-block-scoping": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.22.10.tgz", + "integrity": "sha512-1+kVpGAOOI1Albt6Vse7c8pHzcZQdQKW+wJH+g8mCaszOdDVwRXa/slHPqIw+oJAJANTKDMuM2cBdV0Dg618Vg==", "dev": true, "dependencies": { - "@jridgewell/trace-mapping": "0.3.9" + "@babel/helper-plugin-utils": "^7.22.5" }, "engines": { - "node": ">=12" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@cspotcode/source-map-support/node_modules/@jridgewell/trace-mapping": { - "version": "0.3.9", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", - "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", + "node_modules/@babel/plugin-transform-class-properties": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.22.5.tgz", + "integrity": "sha512-nDkQ0NfkOhPTq8YCLiWNxp1+f9fCobEjCb0n8WdbNUBc4IB5V7P1QnX9IjpSoquKrXF5SKojHleVNs2vGeHCHQ==", "dev": true, "dependencies": { - "@jridgewell/resolve-uri": "^3.0.3", - "@jridgewell/sourcemap-codec": "^1.4.10" + "@babel/helper-create-class-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@eslint/eslintrc": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.4.1.tgz", - "integrity": "sha512-XXrH9Uarn0stsyldqDYq8r++mROmWRI1xKMXa640Bb//SY1+ECYX6VzT6Lcx5frD0V30XieqJ0oX9I2Xj5aoMA==", + "node_modules/@babel/plugin-transform-class-static-block": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.22.5.tgz", + "integrity": "sha512-SPToJ5eYZLxlnp1UzdARpOGeC2GbHvr9d/UV0EukuVx8atktg194oe+C5BqQ8jRTkgLRVOPYeXRSBg1IlMoVRA==", "dev": true, "dependencies": { - "ajv": "^6.12.4", - "debug": "^4.3.2", - "espree": "^9.4.0", - "globals": "^13.19.0", - "ignore": "^5.2.0", - "import-fresh": "^3.2.1", - "js-yaml": "^4.1.0", - "minimatch": "^3.1.2", - "strip-json-comments": "^3.1.1" + "@babel/helper-create-class-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-class-static-block": "^7.14.5" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": ">=6.9.0" }, - "funding": { - "url": "https://opencollective.com/eslint" + "peerDependencies": { + "@babel/core": "^7.12.0" } }, - "node_modules/@esri/arcgis-html-sanitizer": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@esri/arcgis-html-sanitizer/-/arcgis-html-sanitizer-3.0.1.tgz", - "integrity": "sha512-cwZJwsYCJZwtBQU2AmaiIVFg5nZcVwInPYja1/OgC9iKYO+ytZRoc5h+0S9/ygbFNoS8Nd0RX9A85stLX/BgiA==", + "node_modules/@babel/plugin-transform-classes": { + "version": "7.22.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.22.6.tgz", + "integrity": "sha512-58EgM6nuPNG6Py4Z3zSuu0xWu2VfodiMi72Jt5Kj2FECmaYk1RrTXA45z6KBFsu9tRgwQDwIiY4FXTt+YsSFAQ==", "dev": true, "dependencies": { - "xss": "1.0.13" + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-compilation-targets": "^7.22.6", + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-function-name": "^7.22.5", + "@babel/helper-optimise-call-expression": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-replace-supers": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@esri/arcgis-html-sanitizer/node_modules/xss": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/xss/-/xss-1.0.13.tgz", - "integrity": "sha512-clu7dxTm1e8Mo5fz3n/oW3UCXBfV89xZ72jM8yzo1vR/pIS0w3sgB3XV2H8Vm6zfGnHL0FzvLJPJEBhd86/z4Q==", + "node_modules/@babel/plugin-transform-classes/node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", "dev": true, - "dependencies": { - "commander": "^2.20.3", - "cssfilter": "0.0.10" - }, - "bin": { - "xss": "bin/xss" - }, "engines": { - "node": ">= 0.10.0" + "node": ">=4" } }, - "node_modules/@esri/arcgis-rest-auth": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/@esri/arcgis-rest-auth/-/arcgis-rest-auth-3.5.0.tgz", - "integrity": "sha512-EeKfGxSLEI2KvGE2FvN+kYDR+a7RWLf+uNzsYDXWK/8wOYrtj+lh091NHxgHU/Fd+NDoAcHSoTSPCCEpgS0Gsg==", - "deprecated": "Development work on ArcGIS REST JS 3.x has ceased. This packages funtionality has moved to @esri/arcgis-rest-request at 4.x.x https://developers.arcgis.com/arcgis-rest-js/release-notes/upgrade-v3-v4/.", - "peer": true, + "node_modules/@babel/plugin-transform-computed-properties": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.22.5.tgz", + "integrity": "sha512-4GHWBgRf0krxPX+AaPtgBAlTgTeZmqDynokHOX7aqqAB4tHs3U2Y02zH6ETFdLZGcg9UQSD1WCmkVrE9ErHeOg==", + "dev": true, "dependencies": { - "@esri/arcgis-rest-types": "^3.5.0", - "tslib": "^1.13.0" + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/template": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" }, "peerDependencies": { - "@esri/arcgis-rest-request": "^3.0.0" + "@babel/core": "^7.0.0-0" } }, - "node_modules/@esri/arcgis-rest-auth/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "peer": true - }, - "node_modules/@esri/arcgis-rest-feature-layer": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/@esri/arcgis-rest-feature-layer/-/arcgis-rest-feature-layer-3.5.0.tgz", - "integrity": "sha512-+qjJnwPaYYNQqce20FF1iNvQ1BeFVue6ka8MnDu4BNhSeyw9OKD2WoI1pXfKVkSHpXTHeQIfyMVLC7/nFNja8g==", - "deprecated": "Development work on ArcGIS REST JS 3.x has ceased. This packages funtionality has moved to @esri/arcgis-rest-feature-service at 4.x.x https://developers.arcgis.com/arcgis-rest-js/release-notes/upgrade-v3-v4/.", - "peer": true, + "node_modules/@babel/plugin-transform-destructuring": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.22.10.tgz", + "integrity": "sha512-dPJrL0VOyxqLM9sritNbMSGx/teueHF/htMKrPT7DNxccXxRDPYqlgPFFdr8u+F+qUZOkZoXue/6rL5O5GduEw==", + "dev": true, "dependencies": { - "@esri/arcgis-rest-types": "^3.5.0", - "tslib": "^1.13.0" + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" }, "peerDependencies": { - "@esri/arcgis-rest-auth": "^3.0.0", - "@esri/arcgis-rest-request": "^3.0.0" + "@babel/core": "^7.0.0-0" } }, - "node_modules/@esri/arcgis-rest-feature-layer/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "peer": true - }, - "node_modules/@esri/arcgis-rest-portal": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/@esri/arcgis-rest-portal/-/arcgis-rest-portal-3.5.0.tgz", - "integrity": "sha512-rrl/eUWOxdA5Y0MDYuvCopwNkf8loIfVIE4j1kGRTIz32n4uqdhb38sYKd2X4JK8QW67vyKq0SqxMSIYOHGXQg==", - "peer": true, + "node_modules/@babel/plugin-transform-dotall-regex": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.22.5.tgz", + "integrity": "sha512-5/Yk9QxCQCl+sOIB1WelKnVRxTJDSAIxtJLL2/pqL14ZVlbH0fUQUZa/T5/UnQtBNgghR7mfB8ERBKyKPCi7Vw==", + "dev": true, "dependencies": { - "@esri/arcgis-rest-types": "^3.5.0", - "tslib": "^1.13.0" + "@babel/helper-create-regexp-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" }, "peerDependencies": { - "@esri/arcgis-rest-auth": "^3.0.0", - "@esri/arcgis-rest-request": "^3.0.0" + "@babel/core": "^7.0.0-0" } }, - "node_modules/@esri/arcgis-rest-portal/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "peer": true - }, - "node_modules/@esri/arcgis-rest-request": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/@esri/arcgis-rest-request/-/arcgis-rest-request-3.5.0.tgz", - "integrity": "sha512-FlI32b2EF/SlJeGe8GZtVqIlvHDxI18bgIB2vQINi9fAC07F1Jg3JMglDTDSl8CCYS/9cYp62n7lWPUwmvn/xQ==", - "peer": true, + "node_modules/@babel/plugin-transform-duplicate-keys": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.22.5.tgz", + "integrity": "sha512-dEnYD+9BBgld5VBXHnF/DbYGp3fqGMsyxKbtD1mDyIA7AkTSpKXFhCVuj/oQVOoALfBs77DudA0BE4d5mcpmqw==", + "dev": true, "dependencies": { - "tslib": "^1.10.0" + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@esri/arcgis-rest-request/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "peer": true - }, - "node_modules/@esri/arcgis-rest-service-admin": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/@esri/arcgis-rest-service-admin/-/arcgis-rest-service-admin-3.5.0.tgz", - "integrity": "sha512-gZzqb0I9kAyIIx2bBTU070QSEd5CV7C0vyd5IBWZOJqgkvA4Yf/LOPCMZ2s/+y2jF+4B1vRMGjpInovvfEk9Rw==", - "deprecated": "Development work on ArcGIS REST JS 3.x has ceased. This packages funtionality has moved to @esri/arcgis-rest-feature-service at 4.x.x https://developers.arcgis.com/arcgis-rest-js/release-notes/upgrade-v3-v4/.", - "peer": true, + "node_modules/@babel/plugin-transform-dynamic-import": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.22.5.tgz", + "integrity": "sha512-0MC3ppTB1AMxd8fXjSrbPa7LT9hrImt+/fcj+Pg5YMD7UQyWp/02+JWpdnCymmsXwIx5Z+sYn1bwCn4ZJNvhqQ==", + "dev": true, "dependencies": { - "@esri/arcgis-rest-types": "^3.5.0", - "tslib": "^1.13.0" + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-dynamic-import": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" }, "peerDependencies": { - "@esri/arcgis-rest-auth": "^3.0.0", - "@esri/arcgis-rest-portal": "^3.0.0", - "@esri/arcgis-rest-request": "^3.0.0" + "@babel/core": "^7.0.0-0" } }, - "node_modules/@esri/arcgis-rest-service-admin/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "peer": true - }, - "node_modules/@esri/arcgis-rest-types": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/@esri/arcgis-rest-types/-/arcgis-rest-types-3.6.0.tgz", - "integrity": "sha512-t6QWdVNmqB9OloYAvVWYNjvqlnrXs/m0nCRNwPGt3ZiAPXn5CpkpSn2UD6LPqGp6vPxKG81lbFQvwCw9az4qIg==", - "peer": true - }, - "node_modules/@esri/calcite-components": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/@esri/calcite-components/-/calcite-components-1.4.3.tgz", - "integrity": "sha512-3Yj0ZBOPBCIEp+YPJTM0C6cBmbxFXXsG9a6yv0DKxkaERj7te+hb3DQ1fVbG/lQsMLOdrQHiE70zdXSzMKvKCg==", - "peer": true, + "node_modules/@babel/plugin-transform-exponentiation-operator": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.22.5.tgz", + "integrity": "sha512-vIpJFNM/FjZ4rh1myqIya9jXwrwwgFRHPjT3DkUA9ZLHuzox8jiXkOLvwm1H+PQIP3CqfC++WPKeuDi0Sjdj1g==", + "dev": true, "dependencies": { - "@floating-ui/dom": "1.4.1", - "@stencil/core": "2.22.3", - "@types/color": "3.0.3", - "color": "4.2.3", - "composed-offset-position": "0.0.4", - "dayjs": "1.11.8", - "focus-trap": "7.4.3", - "form-request-submit-polyfill": "2.0.0", - "lodash-es": "4.17.21", - "sortablejs": "1.15.0" + "@babel/helper-builder-binary-assignment-operator-visitor": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@esri/calcite-components/node_modules/focus-trap": { - "version": "7.4.3", - "resolved": "https://registry.npmjs.org/focus-trap/-/focus-trap-7.4.3.tgz", - "integrity": "sha512-BgSSbK4GPnS2VbtZ50VtOv1Sti6DIkj3+LkVjiWMNjLeAp1SH1UlLx3ULu/DCu4vq5R4/uvTm+zrvsMsuYmGLg==", - "peer": true, + "node_modules/@babel/plugin-transform-export-namespace-from": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.22.5.tgz", + "integrity": "sha512-X4hhm7FRnPgd4nDA4b/5V280xCx6oL7Oob5+9qVS5C13Zq4bh1qq7LU0GgRU6b5dBWBvhGaXYVB4AcN6+ol6vg==", + "dev": true, "dependencies": { - "tabbable": "^6.1.2" + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@esri/eslint-plugin-calcite-components": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/@esri/eslint-plugin-calcite-components/-/eslint-plugin-calcite-components-0.2.2.tgz", - "integrity": "sha512-vmnJ8ogPdEiqq9iyRVJM/YhGMLqzbId35RqN3dS0mj4LWB3USIYMRbLqxtSHlxeWtOD4g6psdSj6eF4oWTXfuQ==", + "node_modules/@babel/plugin-transform-for-of": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.22.5.tgz", + "integrity": "sha512-3kxQjX1dU9uudwSshyLeEipvrLjBCVthCgeTp6CzE/9JYrlAIaeekVxRpCWsDDfYTfRZRoCeZatCQvwo+wvK8A==", "dev": true, "dependencies": { - "stencil-eslint-core": "~0.3.1", - "tsutils": "~3.21.0" + "@babel/helper-plugin-utils": "^7.22.5" }, "engines": { - "node": ">=8.9.0" + "node": ">=6.9.0" }, "peerDependencies": { - "@typescript-eslint/parser": "^5.8.0", - "eslint": "^8" + "@babel/core": "^7.0.0-0" } }, - "node_modules/@esri/hub-common": { - "version": "12.37.1", - "resolved": "https://registry.npmjs.org/@esri/hub-common/-/hub-common-12.37.1.tgz", - "integrity": "sha512-9gIxzIOo5dRFThk3A5Vkwzqxb1MMLZEKLAY2h0pYahu0hFP3nJpGLA65ODUduFiqnLrCOFUxgPd7qQkCthrSQA==", + "node_modules/@babel/plugin-transform-function-name": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.22.5.tgz", + "integrity": "sha512-UIzQNMS0p0HHiQm3oelztj+ECwFnj+ZRV4KnguvlsD2of1whUeM6o7wGNj6oLwcDoAXQ8gEqfgC24D+VdIcevg==", + "dev": true, "dependencies": { - "abab": "^2.0.5", - "adlib": "^3.0.8", - "ajv": "^6.12.6", - "fast-xml-parser": "^3.21.0", - "json-schema-typed": "^7.0.3", - "jsonapi-typescript": "^0.1.3", - "tslib": "^1.13.0" + "@babel/helper-compilation-targets": "^7.22.5", + "@babel/helper-function-name": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" }, "peerDependencies": { - "@esri/arcgis-rest-auth": "^2.14.0 || 3", - "@esri/arcgis-rest-feature-layer": "^3.2.0", - "@esri/arcgis-rest-portal": "^2.18.0 || 3", - "@esri/arcgis-rest-request": "^2.14.0 || 3", - "@esri/arcgis-rest-types": "^2.15.0 || 3" + "@babel/core": "^7.0.0-0" } }, - "node_modules/@esri/hub-common/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, - "node_modules/@esri/hub-initiatives": { - "version": "12.4.1", - "resolved": "https://registry.npmjs.org/@esri/hub-initiatives/-/hub-initiatives-12.4.1.tgz", - "integrity": "sha512-RFYpFlS5D78cJThWhnl+qn93jeOMgoCa7U8KkET+2LW7L+Tg71ZvF2BnsPh0A5qo9fD4aQ/i6tBFxuuFqveJQw==", + "node_modules/@babel/plugin-transform-json-strings": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.22.5.tgz", + "integrity": "sha512-DuCRB7fu8MyTLbEQd1ew3R85nx/88yMoqo2uPSjevMj3yoN7CDM8jkgrY0wmVxfJZyJ/B9fE1iq7EQppWQmR5A==", + "dev": true, "dependencies": { - "tslib": "^1.13.0" + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-json-strings": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" }, "peerDependencies": { - "@esri/arcgis-rest-auth": "^2.13.0 || 3", - "@esri/arcgis-rest-portal": "^2.13.0 || 3", - "@esri/arcgis-rest-request": "^2.13.0 || 3", - "@esri/hub-common": "^12.4.0" + "@babel/core": "^7.0.0-0" } }, - "node_modules/@esri/hub-initiatives/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, - "node_modules/@esri/hub-sites": { - "version": "12.6.0", - "resolved": "https://registry.npmjs.org/@esri/hub-sites/-/hub-sites-12.6.0.tgz", - "integrity": "sha512-qEdhNIQkkL+zwS0Z7hxNQhbqL/dYBBU3MSDktiXk41/6l23IznjcLdNmtqrDez/qEggbjL1Ed4MXQt1BLswRNQ==", + "node_modules/@babel/plugin-transform-literals": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.22.5.tgz", + "integrity": "sha512-fTLj4D79M+mepcw3dgFBTIDYpbcB9Sm0bpm4ppXPaO+U+PKFFyV9MGRvS0gvGw62sd10kT5lRMKXAADb9pWy8g==", + "dev": true, "dependencies": { - "tslib": "^1.13.0" + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" }, "peerDependencies": { - "@esri/arcgis-rest-auth": "^2.13.0 || 3", - "@esri/arcgis-rest-portal": "^2.19.0 || 3", - "@esri/arcgis-rest-request": "^2.13.0 || 3", - "@esri/hub-common": "^12.4.0", - "@esri/hub-initiatives": "^12.4.0", - "@esri/hub-teams": "^12.4.0" + "@babel/core": "^7.0.0-0" } }, - "node_modules/@esri/hub-sites/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, - "node_modules/@esri/hub-teams": { - "version": "12.4.1", - "resolved": "https://registry.npmjs.org/@esri/hub-teams/-/hub-teams-12.4.1.tgz", - "integrity": "sha512-olnDzWCPueH5olrlmXGqJRaiLhjBLrX+H4AbxTGmM267Wb5GOEuVdiQqOf3POOAvA8OXCIowFDMwuqZzMS0jaw==", + "node_modules/@babel/plugin-transform-logical-assignment-operators": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.22.5.tgz", + "integrity": "sha512-MQQOUW1KL8X0cDWfbwYP+TbVbZm16QmQXJQ+vndPtH/BoO0lOKpVoEDMI7+PskYxH+IiE0tS8xZye0qr1lGzSA==", + "dev": true, "dependencies": { - "tslib": "^1.13.0" + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" + }, + "engines": { + "node": ">=6.9.0" }, "peerDependencies": { - "@esri/arcgis-rest-auth": "^2.13.0 || 3", - "@esri/arcgis-rest-portal": "^2.15.0 || 3", - "@esri/arcgis-rest-request": "^2.13.0 || 3", - "@esri/arcgis-rest-types": "^2.13.0 || 3", - "@esri/hub-common": "^12.4.0" + "@babel/core": "^7.0.0-0" } }, - "node_modules/@esri/hub-teams/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, - "node_modules/@esri/solution-common": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@esri/solution-common/-/solution-common-3.0.1.tgz", - "integrity": "sha512-5x4kNcfIsuWzpxqZahCm3HkldL3KaNS7LMrH8AwVooqPpZIgIToP6swrO9frl+fiC5YBH21AcM+BAcVnc9KmvA==", + "node_modules/@babel/plugin-transform-member-expression-literals": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.22.5.tgz", + "integrity": "sha512-RZEdkNtzzYCFl9SE9ATaUMTj2hqMb4StarOJLrZRbqqU4HSBE7UlBw9WBWQiDzrJZJdUWiMTVDI6Gv/8DPvfew==", "dev": true, "dependencies": { - "@esri/arcgis-html-sanitizer": "3.0.1", - "@esri/hub-common": "^12.37.1", - "@esri/hub-initiatives": "^12.4.1", - "@esri/hub-sites": "^12.6.0", - "@esri/hub-teams": "^12.4.1", - "@types/lodash.isplainobject": "^4.0.7", - "adlib": "3.0.7", - "jszip": "3.10.1", - "lodash.isplainobject": "^4.0.6", - "tslib": "1.14.1", - "xss": "^1.0.14" + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" }, "peerDependencies": { - "@esri/arcgis-rest-auth": "~3.5.0", - "@esri/arcgis-rest-feature-layer": "~3.5.0", - "@esri/arcgis-rest-portal": "~3.5.0", - "@esri/arcgis-rest-request": "~3.5.0", - "@esri/arcgis-rest-service-admin": "~3.5.0" + "@babel/core": "^7.0.0-0" } }, - "node_modules/@esri/solution-common/node_modules/adlib": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/adlib/-/adlib-3.0.7.tgz", - "integrity": "sha512-74ylfcwB7+fu+jqN6e3mBJrAWhWHI5l8icUKh8IhNhmezetLRaMBrxQKJZ+GgyrNxyW+0M12eUirY1RJ5HhWKg==", + "node_modules/@babel/plugin-transform-modules-amd": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.22.5.tgz", + "integrity": "sha512-R+PTfLTcYEmb1+kK7FNkhQ1gP4KgjpSO6HfH9+f8/yfp2Nt3ggBjiVpRwmwTlfqZLafYKJACy36yDXlEmI9HjQ==", "dev": true, "dependencies": { - "esm": "^3.2.25" + "@babel/helper-module-transforms": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@esri/solution-common/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - }, - "node_modules/@floating-ui/core": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.3.1.tgz", - "integrity": "sha512-Bu+AMaXNjrpjh41znzHqaz3r2Nr8hHuHZT6V2LBKMhyMl0FgKA62PNYbqnfgmzOhoWZj70Zecisbo4H1rotP5g==", - "peer": true - }, - "node_modules/@floating-ui/dom": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.4.1.tgz", - "integrity": "sha512-loCXUOLzIC3jp50RFOKXZ/kQjjz26ryr/23M+FWG9jrmAv8lRf3DUfC2AiVZ3+K316GOhB08CR+Povwz8e9mDw==", - "peer": true, + "node_modules/@babel/plugin-transform-modules-commonjs": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.22.5.tgz", + "integrity": "sha512-B4pzOXj+ONRmuaQTg05b3y/4DuFz3WcCNAXPLb2Q0GT0TrGKGxNKV4jwsXts+StaM0LQczZbOpj8o1DLPDJIiA==", + "dev": true, "dependencies": { - "@floating-ui/core": "^1.3.1" + "@babel/helper-module-transforms": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-simple-access": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@humanwhocodes/config-array": { - "version": "0.11.8", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.8.tgz", - "integrity": "sha512-UybHIJzJnR5Qc/MsD9Kr+RpO2h+/P1GhOwdiLPXK5TWk5sgTdu88bTD9UP+CKbPPh5Rni1u0GjAdYQLemG8g+g==", + "node_modules/@babel/plugin-transform-modules-systemjs": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.22.5.tgz", + "integrity": "sha512-emtEpoaTMsOs6Tzz+nbmcePl6AKVtS1yC4YNAeMun9U8YCsgadPNxnOPQ8GhHFB2qdx+LZu9LgoC0Lthuu05DQ==", "dev": true, "dependencies": { - "@humanwhocodes/object-schema": "^1.2.1", - "debug": "^4.1.1", - "minimatch": "^3.0.5" + "@babel/helper-hoist-variables": "^7.22.5", + "@babel/helper-module-transforms": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-validator-identifier": "^7.22.5" }, "engines": { - "node": ">=10.10.0" - } + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } }, - "node_modules/@humanwhocodes/module-importer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", - "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "node_modules/@babel/plugin-transform-modules-umd": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.22.5.tgz", + "integrity": "sha512-+S6kzefN/E1vkSsKx8kmQuqeQsvCKCd1fraCM7zXm4SFoggI099Tr4G8U81+5gtMdUeMQ4ipdQffbKLX0/7dBQ==", "dev": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + }, "engines": { - "node": ">=12.22" + "node": ">=6.9.0" }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/nzakas" + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@humanwhocodes/object-schema": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", - "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", - "dev": true - }, - "node_modules/@istanbuljs/load-nyc-config": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", - "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", + "node_modules/@babel/plugin-transform-named-capturing-groups-regex": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.22.5.tgz", + "integrity": "sha512-YgLLKmS3aUBhHaxp5hi1WJTgOUb/NCuDHzGT9z9WTt3YG+CPRhJs6nprbStx6DnWM4dh6gt7SU3sZodbZ08adQ==", "dev": true, "dependencies": { - "camelcase": "^5.3.1", - "find-up": "^4.1.0", - "get-package-type": "^0.1.0", - "js-yaml": "^3.13.1", - "resolve-from": "^5.0.0" + "@babel/helper-create-regexp-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" }, "engines": { - "node": ">=8" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "node_modules/@babel/plugin-transform-new-target": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.22.5.tgz", + "integrity": "sha512-AsF7K0Fx/cNKVyk3a+DW0JLo+Ua598/NxMRvxDnkpCIGFh43+h/v2xyhRUYf6oD8gE4QtL83C7zZVghMjHd+iw==", "dev": true, "dependencies": { - "sprintf-js": "~1.0.2" + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "node_modules/@babel/plugin-transform-nullish-coalescing-operator": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.22.5.tgz", + "integrity": "sha512-6CF8g6z1dNYZ/VXok5uYkkBBICHZPiGEl7oDnAx2Mt1hlHVHOSIKWJaXHjQJA5VB43KZnXZDIexMchY4y2PGdA==", "dev": true, "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" }, "engines": { - "node": ">=8" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "node_modules/@babel/plugin-transform-numeric-separator": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.22.5.tgz", + "integrity": "sha512-NbslED1/6M+sXiwwtcAB/nieypGw02Ejf4KtDeMkCEpP6gWFMX1wI9WKYua+4oBneCCEmulOkRpwywypVZzs/g==", "dev": true, "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-numeric-separator": "^7.10.4" }, - "bin": { - "js-yaml": "bin/js-yaml.js" + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "node_modules/@babel/plugin-transform-object-rest-spread": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.22.5.tgz", + "integrity": "sha512-Kk3lyDmEslH9DnvCDA1s1kkd3YWQITiBOHngOtDL9Pt6BZjzqb6hiOlb8VfjiiQJ2unmegBqZu0rx5RxJb5vmQ==", "dev": true, "dependencies": { - "p-locate": "^4.1.0" + "@babel/compat-data": "^7.22.5", + "@babel/helper-compilation-targets": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-transform-parameters": "^7.22.5" }, "engines": { - "node": ">=8" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "node_modules/@babel/plugin-transform-object-super": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.22.5.tgz", + "integrity": "sha512-klXqyaT9trSjIUrcsYIfETAzmOEZL3cBYqOYLJxBHfMFFggmXOv+NYSX/Jbs9mzMVESw/WycLFPRx8ba/b2Ipw==", "dev": true, "dependencies": { - "p-try": "^2.0.0" + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-replace-supers": "^7.22.5" }, "engines": { - "node": ">=6" + "node": ">=6.9.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "node_modules/@babel/plugin-transform-optional-catch-binding": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.22.5.tgz", + "integrity": "sha512-pH8orJahy+hzZje5b8e2QIlBWQvGpelS76C63Z+jhZKsmzfNaPQ+LaW6dcJ9bxTpo1mtXbgHwy765Ro3jftmUg==", "dev": true, "dependencies": { - "p-limit": "^2.2.0" + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" }, "engines": { - "node": ">=8" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "node_modules/@babel/plugin-transform-optional-chaining": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.22.10.tgz", + "integrity": "sha512-MMkQqZAZ+MGj+jGTG3OTuhKeBpNcO+0oCEbrGNEaOmiEn+1MzRyQlYsruGiU8RTK3zV6XwrVJTmwiDOyYK6J9g==", "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", + "@babel/plugin-syntax-optional-chaining": "^7.8.3" + }, "engines": { - "node": ">=8" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@istanbuljs/schema": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", - "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", + "node_modules/@babel/plugin-transform-parameters": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.22.5.tgz", + "integrity": "sha512-AVkFUBurORBREOmHRKo06FjHYgjrabpdqRSwq6+C7R5iTCZOsM4QbcB27St0a4U6fffyAOqh3s/qEfybAhfivg==", "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, "engines": { - "node": ">=8" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@jest/console": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/console/-/console-27.5.1.tgz", - "integrity": "sha512-kZ/tNpS3NXn0mlXXXPNuDZnb4c0oZ20r4K5eemM2k30ZC3G0T02nXUvyhf5YdbXWHPEJLc9qGLxEZ216MdL+Zg==", + "node_modules/@babel/plugin-transform-private-methods": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.22.5.tgz", + "integrity": "sha512-PPjh4gyrQnGe97JTalgRGMuU4icsZFnWkzicB/fUtzlKUqvsWBKEpPPfr5a2JiyirZkHxnAqkQMO5Z5B2kK3fA==", "dev": true, "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "jest-message-util": "^27.5.1", - "jest-util": "^27.5.1", - "slash": "^3.0.0" + "@babel/helper-create-class-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@jest/core": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/core/-/core-27.5.1.tgz", - "integrity": "sha512-AK6/UTrvQD0Cd24NSqmIA6rKsu0tKIxfiCducZvqxYdmMisOYAsdItspT+fQDQYARPf8XgjAFZi0ogW2agH5nQ==", + "node_modules/@babel/plugin-transform-private-property-in-object": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.22.5.tgz", + "integrity": "sha512-/9xnaTTJcVoBtSSmrVyhtSvO3kbqS2ODoh2juEU72c3aYonNF0OMGiaz2gjukyKM2wBBYJP38S4JiE0Wfb5VMQ==", "dev": true, "dependencies": { - "@jest/console": "^27.5.1", - "@jest/reporters": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "ansi-escapes": "^4.2.1", - "chalk": "^4.0.0", - "emittery": "^0.8.1", - "exit": "^0.1.2", - "graceful-fs": "^4.2.9", - "jest-changed-files": "^27.5.1", - "jest-config": "^27.5.1", - "jest-haste-map": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-resolve-dependencies": "^27.5.1", - "jest-runner": "^27.5.1", - "jest-runtime": "^27.5.1", - "jest-snapshot": "^27.5.1", - "jest-util": "^27.5.1", - "jest-validate": "^27.5.1", - "jest-watcher": "^27.5.1", - "micromatch": "^4.0.4", - "rimraf": "^3.0.0", - "slash": "^3.0.0", - "strip-ansi": "^6.0.0" + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-create-class-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=6.9.0" }, "peerDependencies": { - "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" - }, - "peerDependenciesMeta": { - "node-notifier": { - "optional": true - } + "@babel/core": "^7.0.0-0" } }, - "node_modules/@jest/environment": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-27.5.1.tgz", - "integrity": "sha512-/WQjhPJe3/ghaol/4Bq480JKXV/Rfw8nQdN7f41fM8VDHLcxKXou6QyXAh3EFr9/bVG3x74z1NWDkP87EiY8gA==", + "node_modules/@babel/plugin-transform-property-literals": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.22.5.tgz", + "integrity": "sha512-TiOArgddK3mK/x1Qwf5hay2pxI6wCZnvQqrFSqbtg1GLl2JcNMitVH/YnqjP+M31pLUeTfzY1HAXFDnUBV30rQ==", "dev": true, "dependencies": { - "@jest/fake-timers": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "jest-mock": "^27.5.1" + "@babel/helper-plugin-utils": "^7.22.5" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@jest/fake-timers": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-27.5.1.tgz", - "integrity": "sha512-/aPowoolwa07k7/oM3aASneNeBGCmGQsc3ugN4u6s4C/+s5M64MFo/+djTdiwcbQlRfFElGuDXWzaWj6QgKObQ==", + "node_modules/@babel/plugin-transform-regenerator": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.22.10.tgz", + "integrity": "sha512-F28b1mDt8KcT5bUyJc/U9nwzw6cV+UmTeRlXYIl2TNqMMJif0Jeey9/RQ3C4NOd2zp0/TRsDns9ttj2L523rsw==", "dev": true, "dependencies": { - "@jest/types": "^27.5.1", - "@sinonjs/fake-timers": "^8.0.1", - "@types/node": "*", - "jest-message-util": "^27.5.1", - "jest-mock": "^27.5.1", - "jest-util": "^27.5.1" + "@babel/helper-plugin-utils": "^7.22.5", + "regenerator-transform": "^0.15.2" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@jest/globals": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-27.5.1.tgz", - "integrity": "sha512-ZEJNB41OBQQgGzgyInAv0UUfDDj3upmHydjieSxFvTRuZElrx7tXg/uVQ5hYVEwiXs3+aMsAeEc9X7xiSKCm4Q==", + "node_modules/@babel/plugin-transform-reserved-words": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.22.5.tgz", + "integrity": "sha512-DTtGKFRQUDm8svigJzZHzb/2xatPc6TzNvAIJ5GqOKDsGFYgAskjRulbR/vGsPKq3OPqtexnz327qYpP57RFyA==", "dev": true, "dependencies": { - "@jest/environment": "^27.5.1", - "@jest/types": "^27.5.1", - "expect": "^27.5.1" + "@babel/helper-plugin-utils": "^7.22.5" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@jest/reporters": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-27.5.1.tgz", - "integrity": "sha512-cPXh9hWIlVJMQkVk84aIvXuBB4uQQmFqZiacloFuGiP3ah1sbCxCosidXFDfqG8+6fO1oR2dTJTlsOy4VFmUfw==", + "node_modules/@babel/plugin-transform-shorthand-properties": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.22.5.tgz", + "integrity": "sha512-vM4fq9IXHscXVKzDv5itkO1X52SmdFBFcMIBZ2FRn2nqVYqw6dBexUgMvAjHW+KXpPPViD/Yo3GrDEBaRC0QYA==", "dev": true, "dependencies": { - "@bcoe/v8-coverage": "^0.2.3", - "@jest/console": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "collect-v8-coverage": "^1.0.0", - "exit": "^0.1.2", - "glob": "^7.1.2", - "graceful-fs": "^4.2.9", - "istanbul-lib-coverage": "^3.0.0", - "istanbul-lib-instrument": "^5.1.0", - "istanbul-lib-report": "^3.0.0", - "istanbul-lib-source-maps": "^4.0.0", - "istanbul-reports": "^3.1.3", - "jest-haste-map": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-util": "^27.5.1", - "jest-worker": "^27.5.1", - "slash": "^3.0.0", - "source-map": "^0.6.0", - "string-length": "^4.0.1", - "terminal-link": "^2.0.0", - "v8-to-istanbul": "^8.1.0" + "@babel/helper-plugin-utils": "^7.22.5" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=6.9.0" }, "peerDependencies": { - "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" - }, - "peerDependenciesMeta": { - "node-notifier": { - "optional": true - } + "@babel/core": "^7.0.0-0" } }, - "node_modules/@jest/source-map": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-27.5.1.tgz", - "integrity": "sha512-y9NIHUYF3PJRlHk98NdC/N1gl88BL08aQQgu4k4ZopQkCw9t9cV8mtl3TV8b/YCB8XaVTFrmUTAJvjsntDireg==", + "node_modules/@babel/plugin-transform-spread": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.22.5.tgz", + "integrity": "sha512-5ZzDQIGyvN4w8+dMmpohL6MBo+l2G7tfC/O2Dg7/hjpgeWvUx8FzfeOKxGog9IimPa4YekaQ9PlDqTLOljkcxg==", "dev": true, "dependencies": { - "callsites": "^3.0.0", - "graceful-fs": "^4.2.9", - "source-map": "^0.6.0" + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@jest/test-result": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-27.5.1.tgz", - "integrity": "sha512-EW35l2RYFUcUQxFJz5Cv5MTOxlJIQs4I7gxzi2zVU7PJhOwfYq1MdC5nhSmYjX1gmMmLPvB3sIaC+BkcHRBfag==", + "node_modules/@babel/plugin-transform-sticky-regex": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.22.5.tgz", + "integrity": "sha512-zf7LuNpHG0iEeiyCNwX4j3gDg1jgt1k3ZdXBKbZSoA3BbGQGvMiSvfbZRR3Dr3aeJe3ooWFZxOOG3IRStYp2Bw==", "dev": true, "dependencies": { - "@jest/console": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/istanbul-lib-coverage": "^2.0.0", - "collect-v8-coverage": "^1.0.0" + "@babel/helper-plugin-utils": "^7.22.5" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@jest/test-sequencer": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-27.5.1.tgz", - "integrity": "sha512-LCheJF7WB2+9JuCS7VB/EmGIdQuhtqjRNI9A43idHv3E4KltCTsPsLxvdaubFHSYwY/fNjMWjl6vNRhDiN7vpQ==", + "node_modules/@babel/plugin-transform-template-literals": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.22.5.tgz", + "integrity": "sha512-5ciOehRNf+EyUeewo8NkbQiUs4d6ZxiHo6BcBcnFlgiJfu16q0bQUw9Jvo0b0gBKFG1SMhDSjeKXSYuJLeFSMA==", "dev": true, "dependencies": { - "@jest/test-result": "^27.5.1", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", - "jest-runtime": "^27.5.1" + "@babel/helper-plugin-utils": "^7.22.5" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@jest/transform": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz", - "integrity": "sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==", + "node_modules/@babel/plugin-transform-typeof-symbol": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.22.5.tgz", + "integrity": "sha512-bYkI5lMzL4kPii4HHEEChkD0rkc+nvnlR6+o/qdqR6zrm0Sv/nodmyLhlq2DO0YKLUNd2VePmPRjJXSBh9OIdA==", "dev": true, "dependencies": { - "@babel/core": "^7.1.0", - "@jest/types": "^27.5.1", - "babel-plugin-istanbul": "^6.1.1", - "chalk": "^4.0.0", - "convert-source-map": "^1.4.0", - "fast-json-stable-stringify": "^2.0.0", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-util": "^27.5.1", - "micromatch": "^4.0.4", - "pirates": "^4.0.4", - "slash": "^3.0.0", - "source-map": "^0.6.1", - "write-file-atomic": "^3.0.0" + "@babel/helper-plugin-utils": "^7.22.5" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@jest/types": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", - "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "node_modules/@babel/plugin-transform-typescript": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.22.10.tgz", + "integrity": "sha512-7++c8I/ymsDo4QQBAgbraXLzIM6jmfao11KgIBEYZRReWzNWH9NtNgJcyrZiXsOPh523FQm6LfpLyy/U5fn46A==", "dev": true, "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^16.0.0", - "chalk": "^4.0.0" + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-create-class-features-plugin": "^7.22.10", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-typescript": "^7.22.5" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@jridgewell/gen-mapping": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", - "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", + "node_modules/@babel/plugin-transform-unicode-escapes": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.22.10.tgz", + "integrity": "sha512-lRfaRKGZCBqDlRU3UIFovdp9c9mEvlylmpod0/OatICsSfuQ9YFthRo1tpTkGsklEefZdqlEFdY4A2dwTb6ohg==", "dev": true, "dependencies": { - "@jridgewell/set-array": "^1.0.0", - "@jridgewell/sourcemap-codec": "^1.4.10" + "@babel/helper-plugin-utils": "^7.22.5" }, "engines": { - "node": ">=6.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@jridgewell/resolve-uri": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", - "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", + "node_modules/@babel/plugin-transform-unicode-property-regex": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.22.5.tgz", + "integrity": "sha512-HCCIb+CbJIAE6sXn5CjFQXMwkCClcOfPCzTlilJ8cUatfzwHlWQkbtV0zD338u9dZskwvuOYTuuaMaA8J5EI5A==", "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + }, "engines": { - "node": ">=6.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@jridgewell/set-array": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", - "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "node_modules/@babel/plugin-transform-unicode-regex": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.22.5.tgz", + "integrity": "sha512-028laaOKptN5vHJf9/Arr/HiJekMd41hOEZYvNsrsXqJ7YPYuX2bQxh31fkZzGmq3YqHRJzYFFAVYvKfMPKqyg==", "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + }, "engines": { - "node": ">=6.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.14", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", - "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", - "dev": true - }, - "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.17", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz", - "integrity": "sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==", + "node_modules/@babel/plugin-transform-unicode-sets-regex": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.22.5.tgz", + "integrity": "sha512-lhMfi4FC15j13eKrh3DnYHjpGj6UKQHtNKTbtc1igvAhRy4+kLhV07OpLcsN0VgDEw/MjAvJO4BdMJsHwMhzCg==", "dev": true, "dependencies": { - "@jridgewell/resolve-uri": "3.1.0", - "@jridgewell/sourcemap-codec": "1.4.14" + "@babel/helper-create-regexp-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "node_modules/@nicolo-ribaudo/eslint-scope-5-internals": { - "version": "5.1.1-v1", - "resolved": "https://registry.npmjs.org/@nicolo-ribaudo/eslint-scope-5-internals/-/eslint-scope-5-internals-5.1.1-v1.tgz", - "integrity": "sha512-54/JRvkLIzzDWshCWfuhadfrfZVPiElY8Fcgmg1HroEly/EDSszzhBAsarCux+D/kOslTRquNzuyGSmUSTTHGg==", + "node_modules/@babel/preset-env": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.22.10.tgz", + "integrity": "sha512-riHpLb1drNkpLlocmSyEg4oYJIQFeXAK/d7rI6mbD0XsvoTOOweXDmQPG/ErxsEhWk3rl3Q/3F6RFQlVFS8m0A==", "dev": true, "dependencies": { - "eslint-scope": "5.1.1" + "@babel/compat-data": "^7.22.9", + "@babel/helper-compilation-targets": "^7.22.10", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-validator-option": "^7.22.5", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.22.5", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.22.5", + "@babel/plugin-proposal-private-property-in-object": "7.21.0-placeholder-for-preset-env.2", + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-class-properties": "^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-import-assertions": "^7.22.5", + "@babel/plugin-syntax-import-attributes": "^7.22.5", + "@babel/plugin-syntax-import-meta": "^7.10.4", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.10.4", + "@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.5", + "@babel/plugin-syntax-top-level-await": "^7.14.5", + "@babel/plugin-syntax-unicode-sets-regex": "^7.18.6", + "@babel/plugin-transform-arrow-functions": "^7.22.5", + "@babel/plugin-transform-async-generator-functions": "^7.22.10", + "@babel/plugin-transform-async-to-generator": "^7.22.5", + "@babel/plugin-transform-block-scoped-functions": "^7.22.5", + "@babel/plugin-transform-block-scoping": "^7.22.10", + "@babel/plugin-transform-class-properties": "^7.22.5", + "@babel/plugin-transform-class-static-block": "^7.22.5", + "@babel/plugin-transform-classes": "^7.22.6", + "@babel/plugin-transform-computed-properties": "^7.22.5", + "@babel/plugin-transform-destructuring": "^7.22.10", + "@babel/plugin-transform-dotall-regex": "^7.22.5", + "@babel/plugin-transform-duplicate-keys": "^7.22.5", + "@babel/plugin-transform-dynamic-import": "^7.22.5", + "@babel/plugin-transform-exponentiation-operator": "^7.22.5", + "@babel/plugin-transform-export-namespace-from": "^7.22.5", + "@babel/plugin-transform-for-of": "^7.22.5", + "@babel/plugin-transform-function-name": "^7.22.5", + "@babel/plugin-transform-json-strings": "^7.22.5", + "@babel/plugin-transform-literals": "^7.22.5", + "@babel/plugin-transform-logical-assignment-operators": "^7.22.5", + "@babel/plugin-transform-member-expression-literals": "^7.22.5", + "@babel/plugin-transform-modules-amd": "^7.22.5", + "@babel/plugin-transform-modules-commonjs": "^7.22.5", + "@babel/plugin-transform-modules-systemjs": "^7.22.5", + "@babel/plugin-transform-modules-umd": "^7.22.5", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.22.5", + "@babel/plugin-transform-new-target": "^7.22.5", + "@babel/plugin-transform-nullish-coalescing-operator": "^7.22.5", + "@babel/plugin-transform-numeric-separator": "^7.22.5", + "@babel/plugin-transform-object-rest-spread": "^7.22.5", + "@babel/plugin-transform-object-super": "^7.22.5", + "@babel/plugin-transform-optional-catch-binding": "^7.22.5", + "@babel/plugin-transform-optional-chaining": "^7.22.10", + "@babel/plugin-transform-parameters": "^7.22.5", + "@babel/plugin-transform-private-methods": "^7.22.5", + "@babel/plugin-transform-private-property-in-object": "^7.22.5", + "@babel/plugin-transform-property-literals": "^7.22.5", + "@babel/plugin-transform-regenerator": "^7.22.10", + "@babel/plugin-transform-reserved-words": "^7.22.5", + "@babel/plugin-transform-shorthand-properties": "^7.22.5", + "@babel/plugin-transform-spread": "^7.22.5", + "@babel/plugin-transform-sticky-regex": "^7.22.5", + "@babel/plugin-transform-template-literals": "^7.22.5", + "@babel/plugin-transform-typeof-symbol": "^7.22.5", + "@babel/plugin-transform-unicode-escapes": "^7.22.10", + "@babel/plugin-transform-unicode-property-regex": "^7.22.5", + "@babel/plugin-transform-unicode-regex": "^7.22.5", + "@babel/plugin-transform-unicode-sets-regex": "^7.22.5", + "@babel/preset-modules": "0.1.6-no-external-plugins", + "@babel/types": "^7.22.10", + "babel-plugin-polyfill-corejs2": "^0.4.5", + "babel-plugin-polyfill-corejs3": "^0.8.3", + "babel-plugin-polyfill-regenerator": "^0.5.2", + "core-js-compat": "^3.31.0", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@nodelib/fs.scandir": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", - "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "node_modules/@babel/preset-env/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/preset-modules": { + "version": "0.1.6-no-external-plugins", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.6-no-external-plugins.tgz", + "integrity": "sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==", "dev": true, "dependencies": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/types": "^7.4.4", + "esutils": "^2.0.2" }, - "engines": { - "node": ">= 8" + "peerDependencies": { + "@babel/core": "^7.0.0-0 || ^8.0.0-0 <8.0.0" } }, - "node_modules/@nodelib/fs.stat": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", - "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "node_modules/@babel/preset-typescript": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.22.5.tgz", + "integrity": "sha512-YbPaal9LxztSGhmndR46FmAbkJ/1fAsw293tSU+I5E5h+cnJ3d4GTwyUgGYmOXJYdGA+uNePle4qbaRzj2NISQ==", "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-validator-option": "^7.22.5", + "@babel/plugin-syntax-jsx": "^7.22.5", + "@babel/plugin-transform-modules-commonjs": "^7.22.5", + "@babel/plugin-transform-typescript": "^7.22.5" + }, "engines": { - "node": ">= 8" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@nodelib/fs.walk": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", - "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", - "dev": true, + "node_modules/@babel/regjsgen": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@babel/regjsgen/-/regjsgen-0.8.0.tgz", + "integrity": "sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==", + "dev": true + }, + "node_modules/@babel/runtime": { + "version": "7.20.13", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.20.13.tgz", + "integrity": "sha512-gt3PKXs0DBoL9xCvOIIZ2NEqAGZqHjAnmVbfQtB620V0uReIQutpel14KcneZuer7UioY8ALKZ7iocavvzTNFA==", "dependencies": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" + "regenerator-runtime": "^0.13.11" }, "engines": { - "node": ">= 8" + "node": ">=6.9.0" } }, - "node_modules/@octokit/auth-token": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-2.5.0.tgz", - "integrity": "sha512-r5FVUJCOLl19AxiuZD2VRZ/ORjp/4IN98Of6YJoJOkY75CIBuYfmiNHGrDwXr+aLGG55igl9QrxX3hbiXlLb+g==", + "node_modules/@babel/runtime/node_modules/regenerator-runtime": { + "version": "0.13.11", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", + "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==" + }, + "node_modules/@babel/template": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.5.tgz", + "integrity": "sha512-X7yV7eiwAxdj9k94NEylvbVHLiVG1nvzCV2EAowhxLTwODV1jl9UzZ48leOC0sH7OnuHrIkllaBgneUykIcZaw==", "dev": true, "dependencies": { - "@octokit/types": "^6.0.3" + "@babel/code-frame": "^7.22.5", + "@babel/parser": "^7.22.5", + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" } }, - "node_modules/@octokit/core": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/@octokit/core/-/core-3.6.0.tgz", - "integrity": "sha512-7RKRKuA4xTjMhY+eG3jthb3hlZCsOwg3rztWh75Xc+ShDWOfDDATWbeZpAHBNRpm4Tv9WgBMOy1zEJYXG6NJ7Q==", - "dev": true, - "dependencies": { - "@octokit/auth-token": "^2.4.4", - "@octokit/graphql": "^4.5.8", - "@octokit/request": "^5.6.3", - "@octokit/request-error": "^2.0.5", - "@octokit/types": "^6.0.3", - "before-after-hook": "^2.2.0", - "universal-user-agent": "^6.0.0" + "node_modules/@babel/traverse": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.22.10.tgz", + "integrity": "sha512-Q/urqV4pRByiNNpb/f5OSv28ZlGJiFiiTh+GAHktbIrkPhPbl90+uW6SmpoLyZqutrg9AEaEf3Q/ZBRHBXgxig==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.22.10", + "@babel/generator": "^7.22.10", + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-function-name": "^7.22.5", + "@babel/helper-hoist-variables": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "@babel/parser": "^7.22.10", + "@babel/types": "^7.22.10", + "debug": "^4.1.0", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" } }, - "node_modules/@octokit/endpoint": { - "version": "6.0.12", - "resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-6.0.12.tgz", - "integrity": "sha512-lF3puPwkQWGfkMClXb4k/eUT/nZKQfxinRWJrdZaJO85Dqwo/G0yOC434Jr2ojwafWJMYqFGFa5ms4jJUgujdA==", + "node_modules/@babel/traverse/node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", "dev": true, - "dependencies": { - "@octokit/types": "^6.0.3", - "is-plain-object": "^5.0.0", - "universal-user-agent": "^6.0.0" + "engines": { + "node": ">=4" } }, - "node_modules/@octokit/graphql": { - "version": "4.8.0", - "resolved": "https://registry.npmjs.org/@octokit/graphql/-/graphql-4.8.0.tgz", - "integrity": "sha512-0gv+qLSBLKF0z8TKaSKTsS39scVKF9dbMxJpj3U0vC7wjNWFuIpL/z76Qe2fiuCbDRcJSavkXsVtMS6/dtQQsg==", + "node_modules/@babel/types": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.22.10.tgz", + "integrity": "sha512-obaoigiLrlDZ7TUQln/8m4mSqIW2QFeOrCQc9r+xsaHGNoplVNYlRVpsfE8Vj35GEm2ZH4ZhrNYogs/3fj85kg==", "dev": true, "dependencies": { - "@octokit/request": "^5.6.0", - "@octokit/types": "^6.0.3", - "universal-user-agent": "^6.0.0" + "@babel/helper-string-parser": "^7.22.5", + "@babel/helper-validator-identifier": "^7.22.5", + "to-fast-properties": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" } }, - "node_modules/@octokit/openapi-types": { - "version": "12.11.0", - "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-12.11.0.tgz", - "integrity": "sha512-VsXyi8peyRq9PqIz/tpqiL2w3w80OgVMwBHltTml3LmVvXiphgeqmY9mvBw9Wu7e0QWk/fqD37ux8yP5uVekyQ==", + "node_modules/@bcoe/v8-coverage": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", + "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", "dev": true }, - "node_modules/@octokit/plugin-paginate-rest": { - "version": "2.21.3", - "resolved": "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-2.21.3.tgz", - "integrity": "sha512-aCZTEf0y2h3OLbrgKkrfFdjRL6eSOo8komneVQJnYecAxIej7Bafor2xhuDJOIFau4pk0i/P28/XgtbyPF0ZHw==", + "node_modules/@cspotcode/source-map-support": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", + "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", "dev": true, "dependencies": { - "@octokit/types": "^6.40.0" + "@jridgewell/trace-mapping": "0.3.9" }, - "peerDependencies": { - "@octokit/core": ">=2" + "engines": { + "node": ">=12" } }, - "node_modules/@octokit/plugin-request-log": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@octokit/plugin-request-log/-/plugin-request-log-1.0.4.tgz", - "integrity": "sha512-mLUsMkgP7K/cnFEw07kWqXGF5LKrOkD+lhCrKvPHXWDywAwuDUeDwWBpc69XK3pNX0uKiVt8g5z96PJ6z9xCFA==", + "node_modules/@cspotcode/source-map-support/node_modules/@jridgewell/trace-mapping": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", + "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", "dev": true, - "peerDependencies": { - "@octokit/core": ">=3" + "dependencies": { + "@jridgewell/resolve-uri": "^3.0.3", + "@jridgewell/sourcemap-codec": "^1.4.10" } }, - "node_modules/@octokit/plugin-rest-endpoint-methods": { - "version": "5.16.2", - "resolved": "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-5.16.2.tgz", - "integrity": "sha512-8QFz29Fg5jDuTPXVtey05BLm7OB+M8fnvE64RNegzX7U+5NUXcOcnpTIK0YfSHBg8gYd0oxIq3IZTe9SfPZiRw==", + "node_modules/@eslint/eslintrc": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.4.1.tgz", + "integrity": "sha512-XXrH9Uarn0stsyldqDYq8r++mROmWRI1xKMXa640Bb//SY1+ECYX6VzT6Lcx5frD0V30XieqJ0oX9I2Xj5aoMA==", "dev": true, "dependencies": { - "@octokit/types": "^6.39.0", - "deprecation": "^2.3.1" + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^9.4.0", + "globals": "^13.19.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" }, - "peerDependencies": { - "@octokit/core": ">=3" + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, - "node_modules/@octokit/request": { - "version": "5.6.3", - "resolved": "https://registry.npmjs.org/@octokit/request/-/request-5.6.3.tgz", - "integrity": "sha512-bFJl0I1KVc9jYTe9tdGGpAMPy32dLBXXo1dS/YwSCTL/2nd9XeHsY616RE3HPXDVk+a+dBuzyz5YdlXwcDTr2A==", + "node_modules/@esri/arcgis-html-sanitizer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@esri/arcgis-html-sanitizer/-/arcgis-html-sanitizer-3.0.1.tgz", + "integrity": "sha512-cwZJwsYCJZwtBQU2AmaiIVFg5nZcVwInPYja1/OgC9iKYO+ytZRoc5h+0S9/ygbFNoS8Nd0RX9A85stLX/BgiA==", "dev": true, "dependencies": { - "@octokit/endpoint": "^6.0.1", - "@octokit/request-error": "^2.1.0", - "@octokit/types": "^6.16.1", - "is-plain-object": "^5.0.0", - "node-fetch": "^2.6.7", - "universal-user-agent": "^6.0.0" + "xss": "1.0.13" } }, - "node_modules/@octokit/request-error": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-2.1.0.tgz", - "integrity": "sha512-1VIvgXxs9WHSjicsRwq8PlR2LR2x6DwsJAaFgzdi0JfJoGSO8mYI/cHJQ+9FbN21aa+DrgNLnwObmyeSC8Rmpg==", + "node_modules/@esri/arcgis-html-sanitizer/node_modules/xss": { + "version": "1.0.13", + "resolved": "https://registry.npmjs.org/xss/-/xss-1.0.13.tgz", + "integrity": "sha512-clu7dxTm1e8Mo5fz3n/oW3UCXBfV89xZ72jM8yzo1vR/pIS0w3sgB3XV2H8Vm6zfGnHL0FzvLJPJEBhd86/z4Q==", "dev": true, "dependencies": { - "@octokit/types": "^6.0.3", - "deprecation": "^2.0.0", - "once": "^1.4.0" + "commander": "^2.20.3", + "cssfilter": "0.0.10" + }, + "bin": { + "xss": "bin/xss" + }, + "engines": { + "node": ">= 0.10.0" } }, - "node_modules/@octokit/rest": { - "version": "18.12.0", - "resolved": "https://registry.npmjs.org/@octokit/rest/-/rest-18.12.0.tgz", - "integrity": "sha512-gDPiOHlyGavxr72y0guQEhLsemgVjwRePayJ+FcKc2SJqKUbxbkvf5kAZEWA/MKvsfYlQAMVzNJE3ezQcxMJ2Q==", - "dev": true, + "node_modules/@esri/arcgis-rest-auth": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/@esri/arcgis-rest-auth/-/arcgis-rest-auth-3.5.0.tgz", + "integrity": "sha512-EeKfGxSLEI2KvGE2FvN+kYDR+a7RWLf+uNzsYDXWK/8wOYrtj+lh091NHxgHU/Fd+NDoAcHSoTSPCCEpgS0Gsg==", + "deprecated": "Development work on ArcGIS REST JS 3.x has ceased. This packages funtionality has moved to @esri/arcgis-rest-request at 4.x.x https://developers.arcgis.com/arcgis-rest-js/release-notes/upgrade-v3-v4/.", + "peer": true, "dependencies": { - "@octokit/core": "^3.5.1", - "@octokit/plugin-paginate-rest": "^2.16.8", - "@octokit/plugin-request-log": "^1.0.4", - "@octokit/plugin-rest-endpoint-methods": "^5.12.0" + "@esri/arcgis-rest-types": "^3.5.0", + "tslib": "^1.13.0" + }, + "peerDependencies": { + "@esri/arcgis-rest-request": "^3.0.0" } }, - "node_modules/@octokit/types": { - "version": "6.41.0", - "resolved": "https://registry.npmjs.org/@octokit/types/-/types-6.41.0.tgz", - "integrity": "sha512-eJ2jbzjdijiL3B4PrSQaSjuF2sPEQPVCPzBvTHJD9Nz+9dw2SGH4K4xeQJ77YfTq5bRQ+bD8wT11JbeDPmxmGg==", - "dev": true, - "dependencies": { - "@octokit/openapi-types": "^12.11.0" - } + "node_modules/@esri/arcgis-rest-auth/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "peer": true }, - "node_modules/@pdf-lib/fontkit": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@pdf-lib/fontkit/-/fontkit-1.1.1.tgz", - "integrity": "sha512-KjMd7grNapIWS/Dm0gvfHEilSyAmeLvrEGVcqLGi0VYebuqqzTbgF29efCx7tvx+IEbG3zQciRSWl3GkUSvjZg==", + "node_modules/@esri/arcgis-rest-feature-layer": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/@esri/arcgis-rest-feature-layer/-/arcgis-rest-feature-layer-3.5.0.tgz", + "integrity": "sha512-+qjJnwPaYYNQqce20FF1iNvQ1BeFVue6ka8MnDu4BNhSeyw9OKD2WoI1pXfKVkSHpXTHeQIfyMVLC7/nFNja8g==", + "deprecated": "Development work on ArcGIS REST JS 3.x has ceased. This packages funtionality has moved to @esri/arcgis-rest-feature-service at 4.x.x https://developers.arcgis.com/arcgis-rest-js/release-notes/upgrade-v3-v4/.", + "peer": true, "dependencies": { - "pako": "^1.0.6" + "@esri/arcgis-rest-types": "^3.5.0", + "tslib": "^1.13.0" + }, + "peerDependencies": { + "@esri/arcgis-rest-auth": "^3.0.0", + "@esri/arcgis-rest-request": "^3.0.0" } }, - "node_modules/@pdf-lib/standard-fonts": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@pdf-lib/standard-fonts/-/standard-fonts-1.0.0.tgz", - "integrity": "sha512-hU30BK9IUN/su0Mn9VdlVKsWBS6GyhVfqjwl1FjZN4TxP6cCw0jP2w7V3Hf5uX7M0AZJ16vey9yE0ny7Sa59ZA==", - "dependencies": { - "pako": "^1.0.6" - } + "node_modules/@esri/arcgis-rest-feature-layer/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "peer": true }, - "node_modules/@pdf-lib/upng": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@pdf-lib/upng/-/upng-1.0.1.tgz", - "integrity": "sha512-dQK2FUMQtowVP00mtIksrlZhdFXQZPC+taih1q4CvPZ5vqdxR/LKBaFg0oAfzd1GlHZXXSPdQfzQnt+ViGvEIQ==", + "node_modules/@esri/arcgis-rest-portal": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/@esri/arcgis-rest-portal/-/arcgis-rest-portal-3.5.0.tgz", + "integrity": "sha512-rrl/eUWOxdA5Y0MDYuvCopwNkf8loIfVIE4j1kGRTIz32n4uqdhb38sYKd2X4JK8QW67vyKq0SqxMSIYOHGXQg==", + "peer": true, "dependencies": { - "pako": "^1.0.10" - } - }, - "node_modules/@sindresorhus/is": { - "version": "0.14.0", - "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz", - "integrity": "sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==", - "dev": true, - "engines": { - "node": ">=6" + "@esri/arcgis-rest-types": "^3.5.0", + "tslib": "^1.13.0" + }, + "peerDependencies": { + "@esri/arcgis-rest-auth": "^3.0.0", + "@esri/arcgis-rest-request": "^3.0.0" } }, - "node_modules/@sinonjs/commons": { - "version": "1.8.6", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.6.tgz", - "integrity": "sha512-Ky+XkAkqPZSm3NLBeUng77EBQl3cmeJhITaGHdYH8kjVB+aun3S4XBRti2zt17mtt0mIUDiNxYeoJm6drVvBJQ==", - "dev": true, - "dependencies": { - "type-detect": "4.0.8" - } + "node_modules/@esri/arcgis-rest-portal/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "peer": true }, - "node_modules/@sinonjs/fake-timers": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-8.1.0.tgz", - "integrity": "sha512-OAPJUAtgeINhh/TAlUID4QTs53Njm7xzddaVlEs/SXwgtiD1tW22zAB/W1wdqfrpmikgaWQ9Fw6Ws+hsiRm5Vg==", - "dev": true, + "node_modules/@esri/arcgis-rest-request": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/@esri/arcgis-rest-request/-/arcgis-rest-request-3.5.0.tgz", + "integrity": "sha512-FlI32b2EF/SlJeGe8GZtVqIlvHDxI18bgIB2vQINi9fAC07F1Jg3JMglDTDSl8CCYS/9cYp62n7lWPUwmvn/xQ==", + "peer": true, "dependencies": { - "@sinonjs/commons": "^1.7.0" + "tslib": "^1.10.0" } }, - "node_modules/@stencil/core": { - "version": "2.22.3", - "resolved": "https://registry.npmjs.org/@stencil/core/-/core-2.22.3.tgz", - "integrity": "sha512-kmVA0M/HojwsfkeHsifvHVIYe4l5tin7J5+DLgtl8h6WWfiMClND5K3ifCXXI2ETDNKiEk21p6jql3Fx9o2rng==", - "bin": { - "stencil": "bin/stencil" - }, - "engines": { - "node": ">=12.10.0", - "npm": ">=6.0.0" - } + "node_modules/@esri/arcgis-rest-request/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "peer": true }, - "node_modules/@stencil/postcss": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@stencil/postcss/-/postcss-2.1.0.tgz", - "integrity": "sha512-/e4TYEXErGaHxH0ocg620YqEMLuMLpK/Wg4MJsiJglrLZCZhU4XCX1N0SwxaIOUbEZ1Zh+AqQ++yMI92ilndEA==", - "dev": true, + "node_modules/@esri/arcgis-rest-service-admin": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/@esri/arcgis-rest-service-admin/-/arcgis-rest-service-admin-3.5.0.tgz", + "integrity": "sha512-gZzqb0I9kAyIIx2bBTU070QSEd5CV7C0vyd5IBWZOJqgkvA4Yf/LOPCMZ2s/+y2jF+4B1vRMGjpInovvfEk9Rw==", + "deprecated": "Development work on ArcGIS REST JS 3.x has ceased. This packages funtionality has moved to @esri/arcgis-rest-feature-service at 4.x.x https://developers.arcgis.com/arcgis-rest-js/release-notes/upgrade-v3-v4/.", + "peer": true, "dependencies": { - "autoprefixer": "^10.3.6", - "postcss": "~8.3.8" + "@esri/arcgis-rest-types": "^3.5.0", + "tslib": "^1.13.0" }, "peerDependencies": { - "@stencil/core": ">=2.0.0" + "@esri/arcgis-rest-auth": "^3.0.0", + "@esri/arcgis-rest-portal": "^3.0.0", + "@esri/arcgis-rest-request": "^3.0.0" } }, - "node_modules/@stencil/postcss/node_modules/postcss": { - "version": "8.3.11", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.3.11.tgz", - "integrity": "sha512-hCmlUAIlUiav8Xdqw3Io4LcpA1DOt7h3LSTAC4G6JGHFFaWzI6qvFt9oilvl8BmkbBRX1IhM90ZAmpk68zccQA==", - "dev": true, - "dependencies": { - "nanoid": "^3.1.30", - "picocolors": "^1.0.0", - "source-map-js": "^0.6.2" - }, - "engines": { - "node": "^10 || ^12 || >=14" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } + "node_modules/@esri/arcgis-rest-service-admin/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "peer": true }, - "node_modules/@stencil/postcss/node_modules/source-map-js": { - "version": "0.6.2", + "node_modules/@esri/arcgis-rest-types": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/@esri/arcgis-rest-types/-/arcgis-rest-types-3.6.0.tgz", + "integrity": "sha512-t6QWdVNmqB9OloYAvVWYNjvqlnrXs/m0nCRNwPGt3ZiAPXn5CpkpSn2UD6LPqGp6vPxKG81lbFQvwCw9az4qIg==", + "peer": true + }, + "node_modules/@esri/calcite-components": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/@esri/calcite-components/-/calcite-components-1.4.3.tgz", + "integrity": "sha512-3Yj0ZBOPBCIEp+YPJTM0C6cBmbxFXXsG9a6yv0DKxkaERj7te+hb3DQ1fVbG/lQsMLOdrQHiE70zdXSzMKvKCg==", + "peer": true, + "dependencies": { + "@floating-ui/dom": "1.4.1", + "@stencil/core": "2.22.3", + "@types/color": "3.0.3", + "color": "4.2.3", + "composed-offset-position": "0.0.4", + "dayjs": "1.11.8", + "focus-trap": "7.4.3", + "form-request-submit-polyfill": "2.0.0", + "lodash-es": "4.17.21", + "sortablejs": "1.15.0" + } + }, + "node_modules/@esri/calcite-components/node_modules/focus-trap": { + "version": "7.4.3", + "resolved": "https://registry.npmjs.org/focus-trap/-/focus-trap-7.4.3.tgz", + "integrity": "sha512-BgSSbK4GPnS2VbtZ50VtOv1Sti6DIkj3+LkVjiWMNjLeAp1SH1UlLx3ULu/DCu4vq5R4/uvTm+zrvsMsuYmGLg==", + "peer": true, + "dependencies": { + "tabbable": "^6.1.2" + } + }, + "node_modules/@esri/eslint-plugin-calcite-components": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/@esri/eslint-plugin-calcite-components/-/eslint-plugin-calcite-components-0.2.2.tgz", + "integrity": "sha512-vmnJ8ogPdEiqq9iyRVJM/YhGMLqzbId35RqN3dS0mj4LWB3USIYMRbLqxtSHlxeWtOD4g6psdSj6eF4oWTXfuQ==", + "dev": true, + "dependencies": { + "stencil-eslint-core": "~0.3.1", + "tsutils": "~3.21.0" + }, + "engines": { + "node": ">=8.9.0" + }, + "peerDependencies": { + "@typescript-eslint/parser": "^5.8.0", + "eslint": "^8" + } + }, + "node_modules/@esri/hub-common": { + "version": "12.37.1", + "resolved": "https://registry.npmjs.org/@esri/hub-common/-/hub-common-12.37.1.tgz", + "integrity": "sha512-9gIxzIOo5dRFThk3A5Vkwzqxb1MMLZEKLAY2h0pYahu0hFP3nJpGLA65ODUduFiqnLrCOFUxgPd7qQkCthrSQA==", + "dependencies": { + "abab": "^2.0.5", + "adlib": "^3.0.8", + "ajv": "^6.12.6", + "fast-xml-parser": "^3.21.0", + "json-schema-typed": "^7.0.3", + "jsonapi-typescript": "^0.1.3", + "tslib": "^1.13.0" + }, + "peerDependencies": { + "@esri/arcgis-rest-auth": "^2.14.0 || 3", + "@esri/arcgis-rest-feature-layer": "^3.2.0", + "@esri/arcgis-rest-portal": "^2.18.0 || 3", + "@esri/arcgis-rest-request": "^2.14.0 || 3", + "@esri/arcgis-rest-types": "^2.15.0 || 3" + } + }, + "node_modules/@esri/hub-common/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@esri/hub-initiatives": { + "version": "12.4.1", + "resolved": "https://registry.npmjs.org/@esri/hub-initiatives/-/hub-initiatives-12.4.1.tgz", + "integrity": "sha512-RFYpFlS5D78cJThWhnl+qn93jeOMgoCa7U8KkET+2LW7L+Tg71ZvF2BnsPh0A5qo9fD4aQ/i6tBFxuuFqveJQw==", + "dependencies": { + "tslib": "^1.13.0" + }, + "peerDependencies": { + "@esri/arcgis-rest-auth": "^2.13.0 || 3", + "@esri/arcgis-rest-portal": "^2.13.0 || 3", + "@esri/arcgis-rest-request": "^2.13.0 || 3", + "@esri/hub-common": "^12.4.0" + } + }, + "node_modules/@esri/hub-initiatives/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@esri/hub-sites": { + "version": "12.6.0", + "resolved": "https://registry.npmjs.org/@esri/hub-sites/-/hub-sites-12.6.0.tgz", + "integrity": "sha512-qEdhNIQkkL+zwS0Z7hxNQhbqL/dYBBU3MSDktiXk41/6l23IznjcLdNmtqrDez/qEggbjL1Ed4MXQt1BLswRNQ==", + "dependencies": { + "tslib": "^1.13.0" + }, + "peerDependencies": { + "@esri/arcgis-rest-auth": "^2.13.0 || 3", + "@esri/arcgis-rest-portal": "^2.19.0 || 3", + "@esri/arcgis-rest-request": "^2.13.0 || 3", + "@esri/hub-common": "^12.4.0", + "@esri/hub-initiatives": "^12.4.0", + "@esri/hub-teams": "^12.4.0" + } + }, + "node_modules/@esri/hub-sites/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@esri/hub-teams": { + "version": "12.4.1", + "resolved": "https://registry.npmjs.org/@esri/hub-teams/-/hub-teams-12.4.1.tgz", + "integrity": "sha512-olnDzWCPueH5olrlmXGqJRaiLhjBLrX+H4AbxTGmM267Wb5GOEuVdiQqOf3POOAvA8OXCIowFDMwuqZzMS0jaw==", + "dependencies": { + "tslib": "^1.13.0" + }, + "peerDependencies": { + "@esri/arcgis-rest-auth": "^2.13.0 || 3", + "@esri/arcgis-rest-portal": "^2.15.0 || 3", + "@esri/arcgis-rest-request": "^2.13.0 || 3", + "@esri/arcgis-rest-types": "^2.13.0 || 3", + "@esri/hub-common": "^12.4.0" + } + }, + "node_modules/@esri/hub-teams/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@esri/solution-common": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@esri/solution-common/-/solution-common-3.0.1.tgz", + "integrity": "sha512-5x4kNcfIsuWzpxqZahCm3HkldL3KaNS7LMrH8AwVooqPpZIgIToP6swrO9frl+fiC5YBH21AcM+BAcVnc9KmvA==", + "dev": true, + "dependencies": { + "@esri/arcgis-html-sanitizer": "3.0.1", + "@esri/hub-common": "^12.37.1", + "@esri/hub-initiatives": "^12.4.1", + "@esri/hub-sites": "^12.6.0", + "@esri/hub-teams": "^12.4.1", + "@types/lodash.isplainobject": "^4.0.7", + "adlib": "3.0.7", + "jszip": "3.10.1", + "lodash.isplainobject": "^4.0.6", + "tslib": "1.14.1", + "xss": "^1.0.14" + }, + "peerDependencies": { + "@esri/arcgis-rest-auth": "~3.5.0", + "@esri/arcgis-rest-feature-layer": "~3.5.0", + "@esri/arcgis-rest-portal": "~3.5.0", + "@esri/arcgis-rest-request": "~3.5.0", + "@esri/arcgis-rest-service-admin": "~3.5.0" + } + }, + "node_modules/@esri/solution-common/node_modules/adlib": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/adlib/-/adlib-3.0.7.tgz", + "integrity": "sha512-74ylfcwB7+fu+jqN6e3mBJrAWhWHI5l8icUKh8IhNhmezetLRaMBrxQKJZ+GgyrNxyW+0M12eUirY1RJ5HhWKg==", + "dev": true, + "dependencies": { + "esm": "^3.2.25" + } + }, + "node_modules/@esri/solution-common/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + }, + "node_modules/@floating-ui/core": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.3.1.tgz", + "integrity": "sha512-Bu+AMaXNjrpjh41znzHqaz3r2Nr8hHuHZT6V2LBKMhyMl0FgKA62PNYbqnfgmzOhoWZj70Zecisbo4H1rotP5g==", + "peer": true + }, + "node_modules/@floating-ui/dom": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.4.1.tgz", + "integrity": "sha512-loCXUOLzIC3jp50RFOKXZ/kQjjz26ryr/23M+FWG9jrmAv8lRf3DUfC2AiVZ3+K316GOhB08CR+Povwz8e9mDw==", + "peer": true, + "dependencies": { + "@floating-ui/core": "^1.3.1" + } + }, + "node_modules/@humanwhocodes/config-array": { + "version": "0.11.8", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.8.tgz", + "integrity": "sha512-UybHIJzJnR5Qc/MsD9Kr+RpO2h+/P1GhOwdiLPXK5TWk5sgTdu88bTD9UP+CKbPPh5Rni1u0GjAdYQLemG8g+g==", + "dev": true, + "dependencies": { + "@humanwhocodes/object-schema": "^1.2.1", + "debug": "^4.1.1", + "minimatch": "^3.0.5" + }, + "engines": { + "node": ">=10.10.0" + } + }, + "node_modules/@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "dev": true, + "engines": { + "node": ">=12.22" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@humanwhocodes/object-schema": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", + "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", + "dev": true + }, + "node_modules/@istanbuljs/load-nyc-config": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", + "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", + "dev": true, + "dependencies": { + "camelcase": "^5.3.1", + "find-up": "^4.1.0", + "get-package-type": "^0.1.0", + "js-yaml": "^3.13.1", + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/js-yaml": { + "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, + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/schema": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", + "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/console": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-27.5.1.tgz", + "integrity": "sha512-kZ/tNpS3NXn0mlXXXPNuDZnb4c0oZ20r4K5eemM2k30ZC3G0T02nXUvyhf5YdbXWHPEJLc9qGLxEZ216MdL+Zg==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "jest-message-util": "^27.5.1", + "jest-util": "^27.5.1", + "slash": "^3.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/console/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "dev": true, + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/console/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "dev": true, + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/@jest/console/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/core": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/core/-/core-27.5.1.tgz", + "integrity": "sha512-AK6/UTrvQD0Cd24NSqmIA6rKsu0tKIxfiCducZvqxYdmMisOYAsdItspT+fQDQYARPf8XgjAFZi0ogW2agH5nQ==", + "dev": true, + "dependencies": { + "@jest/console": "^27.5.1", + "@jest/reporters": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "emittery": "^0.8.1", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "jest-changed-files": "^27.5.1", + "jest-config": "^27.5.1", + "jest-haste-map": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-resolve-dependencies": "^27.5.1", + "jest-runner": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "jest-watcher": "^27.5.1", + "micromatch": "^4.0.4", + "rimraf": "^3.0.0", + "slash": "^3.0.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/@jest/core/node_modules/@jest/transform": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz", + "integrity": "sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==", + "dev": true, + "dependencies": { + "@babel/core": "^7.1.0", + "@jest/types": "^27.5.1", + "babel-plugin-istanbul": "^6.1.1", + "chalk": "^4.0.0", + "convert-source-map": "^1.4.0", + "fast-json-stable-stringify": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-util": "^27.5.1", + "micromatch": "^4.0.4", + "pirates": "^4.0.4", + "slash": "^3.0.0", + "source-map": "^0.6.1", + "write-file-atomic": "^3.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/core/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "dev": true, + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/core/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "dev": true, + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/@jest/core/node_modules/jest-haste-map": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", + "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/graceful-fs": "^4.1.2", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^27.5.1", + "jest-serializer": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "micromatch": "^4.0.4", + "walker": "^1.0.7" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "optionalDependencies": { + "fsevents": "^2.3.2" + } + }, + "node_modules/@jest/core/node_modules/jest-regex-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", + "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", + "dev": true, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/core/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/core/node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "dev": true, + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/@jest/core/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/@jest/environment": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-27.5.1.tgz", + "integrity": "sha512-/WQjhPJe3/ghaol/4Bq480JKXV/Rfw8nQdN7f41fM8VDHLcxKXou6QyXAh3EFr9/bVG3x74z1NWDkP87EiY8gA==", + "dev": true, + "dependencies": { + "@jest/fake-timers": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "jest-mock": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/environment/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "dev": true, + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/environment/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "dev": true, + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/@jest/fake-timers": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-27.5.1.tgz", + "integrity": "sha512-/aPowoolwa07k7/oM3aASneNeBGCmGQsc3ugN4u6s4C/+s5M64MFo/+djTdiwcbQlRfFElGuDXWzaWj6QgKObQ==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@sinonjs/fake-timers": "^8.0.1", + "@types/node": "*", + "jest-message-util": "^27.5.1", + "jest-mock": "^27.5.1", + "jest-util": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/fake-timers/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "dev": true, + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/fake-timers/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "dev": true, + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/@jest/fake-timers/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/globals": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-27.5.1.tgz", + "integrity": "sha512-ZEJNB41OBQQgGzgyInAv0UUfDDj3upmHydjieSxFvTRuZElrx7tXg/uVQ5hYVEwiXs3+aMsAeEc9X7xiSKCm4Q==", + "dev": true, + "dependencies": { + "@jest/environment": "^27.5.1", + "@jest/types": "^27.5.1", + "expect": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/globals/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "dev": true, + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/globals/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "dev": true, + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/@jest/reporters": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-27.5.1.tgz", + "integrity": "sha512-cPXh9hWIlVJMQkVk84aIvXuBB4uQQmFqZiacloFuGiP3ah1sbCxCosidXFDfqG8+6fO1oR2dTJTlsOy4VFmUfw==", + "dev": true, + "dependencies": { + "@bcoe/v8-coverage": "^0.2.3", + "@jest/console": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "collect-v8-coverage": "^1.0.0", + "exit": "^0.1.2", + "glob": "^7.1.2", + "graceful-fs": "^4.2.9", + "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-instrument": "^5.1.0", + "istanbul-lib-report": "^3.0.0", + "istanbul-lib-source-maps": "^4.0.0", + "istanbul-reports": "^3.1.3", + "jest-haste-map": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "slash": "^3.0.0", + "source-map": "^0.6.0", + "string-length": "^4.0.1", + "terminal-link": "^2.0.0", + "v8-to-istanbul": "^8.1.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/@jest/reporters/node_modules/@jest/transform": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz", + "integrity": "sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==", + "dev": true, + "dependencies": { + "@babel/core": "^7.1.0", + "@jest/types": "^27.5.1", + "babel-plugin-istanbul": "^6.1.1", + "chalk": "^4.0.0", + "convert-source-map": "^1.4.0", + "fast-json-stable-stringify": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-util": "^27.5.1", + "micromatch": "^4.0.4", + "pirates": "^4.0.4", + "slash": "^3.0.0", + "source-map": "^0.6.1", + "write-file-atomic": "^3.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/reporters/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "dev": true, + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/reporters/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "dev": true, + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/@jest/reporters/node_modules/jest-haste-map": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", + "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/graceful-fs": "^4.1.2", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^27.5.1", + "jest-serializer": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "micromatch": "^4.0.4", + "walker": "^1.0.7" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "optionalDependencies": { + "fsevents": "^2.3.2" + } + }, + "node_modules/@jest/reporters/node_modules/jest-regex-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", + "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", + "dev": true, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/reporters/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/reporters/node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "dev": true, + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/@jest/reporters/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/@jest/schemas": { + "version": "29.6.0", + "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.0.tgz", + "integrity": "sha512-rxLjXyJBTL4LQeJW3aKo0M/+GkCOXsO+8i9Iu7eDb6KwtP65ayoDsitrdPBtujxQ88k4wI2FNYfa6TOGwSn6cQ==", + "dev": true, + "dependencies": { + "@sinclair/typebox": "^0.27.8" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/source-map": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-27.5.1.tgz", + "integrity": "sha512-y9NIHUYF3PJRlHk98NdC/N1gl88BL08aQQgu4k4ZopQkCw9t9cV8mtl3TV8b/YCB8XaVTFrmUTAJvjsntDireg==", + "dev": true, + "dependencies": { + "callsites": "^3.0.0", + "graceful-fs": "^4.2.9", + "source-map": "^0.6.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/test-result": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-27.5.1.tgz", + "integrity": "sha512-EW35l2RYFUcUQxFJz5Cv5MTOxlJIQs4I7gxzi2zVU7PJhOwfYq1MdC5nhSmYjX1gmMmLPvB3sIaC+BkcHRBfag==", + "dev": true, + "dependencies": { + "@jest/console": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/istanbul-lib-coverage": "^2.0.0", + "collect-v8-coverage": "^1.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/test-result/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "dev": true, + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/test-result/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "dev": true, + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/@jest/test-sequencer": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-27.5.1.tgz", + "integrity": "sha512-LCheJF7WB2+9JuCS7VB/EmGIdQuhtqjRNI9A43idHv3E4KltCTsPsLxvdaubFHSYwY/fNjMWjl6vNRhDiN7vpQ==", + "dev": true, + "dependencies": { + "@jest/test-result": "^27.5.1", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-runtime": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/test-sequencer/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "dev": true, + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/test-sequencer/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "dev": true, + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/@jest/test-sequencer/node_modules/jest-haste-map": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", + "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/graceful-fs": "^4.1.2", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^27.5.1", + "jest-serializer": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "micromatch": "^4.0.4", + "walker": "^1.0.7" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "optionalDependencies": { + "fsevents": "^2.3.2" + } + }, + "node_modules/@jest/test-sequencer/node_modules/jest-regex-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", + "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", + "dev": true, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/test-sequencer/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/test-sequencer/node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "dev": true, + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/@jest/test-sequencer/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/@jest/transform": { + "version": "29.6.2", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-29.6.2.tgz", + "integrity": "sha512-ZqCqEISr58Ce3U+buNFJYUktLJZOggfyvR+bZMaiV1e8B1SIvJbwZMrYz3gx/KAPn9EXmOmN+uB08yLCjWkQQg==", + "dev": true, + "dependencies": { + "@babel/core": "^7.11.6", + "@jest/types": "^29.6.1", + "@jridgewell/trace-mapping": "^0.3.18", + "babel-plugin-istanbul": "^6.1.1", + "chalk": "^4.0.0", + "convert-source-map": "^2.0.0", + "fast-json-stable-stringify": "^2.1.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.6.2", + "jest-regex-util": "^29.4.3", + "jest-util": "^29.6.2", + "micromatch": "^4.0.4", + "pirates": "^4.0.4", + "slash": "^3.0.0", + "write-file-atomic": "^4.0.2" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/transform/node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true + }, + "node_modules/@jest/transform/node_modules/write-file-atomic": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz", + "integrity": "sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==", + "dev": true, + "dependencies": { + "imurmurhash": "^0.1.4", + "signal-exit": "^3.0.7" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/@jest/types": { + "version": "29.6.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.6.1.tgz", + "integrity": "sha512-tPKQNMPuXgvdOn2/Lg9HNfUvjYVGolt04Hp03f5hAk878uwOLikN+JzeLY0HcVgKgFl9Hs3EIqpu3WX27XNhnw==", + "dev": true, + "dependencies": { + "@jest/schemas": "^29.6.0", + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^17.0.8", + "chalk": "^4.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", + "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", + "dev": true, + "dependencies": { + "@jridgewell/set-array": "^1.0.0", + "@jridgewell/sourcemap-codec": "^1.4.10" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", + "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", + "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.14", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", + "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", + "dev": true + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.19", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.19.tgz", + "integrity": "sha512-kf37QtfW+Hwx/buWGMPcR60iF9ziHa6r/CZJIHbmcm4+0qrXiVdxegAH0F6yddEVQ7zdkjcGCgCzUu+BcbhQxw==", + "dev": true, + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@nicolo-ribaudo/eslint-scope-5-internals": { + "version": "5.1.1-v1", + "resolved": "https://registry.npmjs.org/@nicolo-ribaudo/eslint-scope-5-internals/-/eslint-scope-5-internals-5.1.1-v1.tgz", + "integrity": "sha512-54/JRvkLIzzDWshCWfuhadfrfZVPiElY8Fcgmg1HroEly/EDSszzhBAsarCux+D/kOslTRquNzuyGSmUSTTHGg==", + "dev": true, + "dependencies": { + "eslint-scope": "5.1.1" + } + }, + "node_modules/@nodelib/fs.scandir": { + "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, + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "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, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dev": true, + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@octokit/auth-token": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-2.5.0.tgz", + "integrity": "sha512-r5FVUJCOLl19AxiuZD2VRZ/ORjp/4IN98Of6YJoJOkY75CIBuYfmiNHGrDwXr+aLGG55igl9QrxX3hbiXlLb+g==", + "dev": true, + "dependencies": { + "@octokit/types": "^6.0.3" + } + }, + "node_modules/@octokit/core": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/@octokit/core/-/core-3.6.0.tgz", + "integrity": "sha512-7RKRKuA4xTjMhY+eG3jthb3hlZCsOwg3rztWh75Xc+ShDWOfDDATWbeZpAHBNRpm4Tv9WgBMOy1zEJYXG6NJ7Q==", + "dev": true, + "dependencies": { + "@octokit/auth-token": "^2.4.4", + "@octokit/graphql": "^4.5.8", + "@octokit/request": "^5.6.3", + "@octokit/request-error": "^2.0.5", + "@octokit/types": "^6.0.3", + "before-after-hook": "^2.2.0", + "universal-user-agent": "^6.0.0" + } + }, + "node_modules/@octokit/endpoint": { + "version": "6.0.12", + "resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-6.0.12.tgz", + "integrity": "sha512-lF3puPwkQWGfkMClXb4k/eUT/nZKQfxinRWJrdZaJO85Dqwo/G0yOC434Jr2ojwafWJMYqFGFa5ms4jJUgujdA==", + "dev": true, + "dependencies": { + "@octokit/types": "^6.0.3", + "is-plain-object": "^5.0.0", + "universal-user-agent": "^6.0.0" + } + }, + "node_modules/@octokit/graphql": { + "version": "4.8.0", + "resolved": "https://registry.npmjs.org/@octokit/graphql/-/graphql-4.8.0.tgz", + "integrity": "sha512-0gv+qLSBLKF0z8TKaSKTsS39scVKF9dbMxJpj3U0vC7wjNWFuIpL/z76Qe2fiuCbDRcJSavkXsVtMS6/dtQQsg==", + "dev": true, + "dependencies": { + "@octokit/request": "^5.6.0", + "@octokit/types": "^6.0.3", + "universal-user-agent": "^6.0.0" + } + }, + "node_modules/@octokit/openapi-types": { + "version": "12.11.0", + "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-12.11.0.tgz", + "integrity": "sha512-VsXyi8peyRq9PqIz/tpqiL2w3w80OgVMwBHltTml3LmVvXiphgeqmY9mvBw9Wu7e0QWk/fqD37ux8yP5uVekyQ==", + "dev": true + }, + "node_modules/@octokit/plugin-paginate-rest": { + "version": "2.21.3", + "resolved": "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-2.21.3.tgz", + "integrity": "sha512-aCZTEf0y2h3OLbrgKkrfFdjRL6eSOo8komneVQJnYecAxIej7Bafor2xhuDJOIFau4pk0i/P28/XgtbyPF0ZHw==", + "dev": true, + "dependencies": { + "@octokit/types": "^6.40.0" + }, + "peerDependencies": { + "@octokit/core": ">=2" + } + }, + "node_modules/@octokit/plugin-request-log": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@octokit/plugin-request-log/-/plugin-request-log-1.0.4.tgz", + "integrity": "sha512-mLUsMkgP7K/cnFEw07kWqXGF5LKrOkD+lhCrKvPHXWDywAwuDUeDwWBpc69XK3pNX0uKiVt8g5z96PJ6z9xCFA==", + "dev": true, + "peerDependencies": { + "@octokit/core": ">=3" + } + }, + "node_modules/@octokit/plugin-rest-endpoint-methods": { + "version": "5.16.2", + "resolved": "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-5.16.2.tgz", + "integrity": "sha512-8QFz29Fg5jDuTPXVtey05BLm7OB+M8fnvE64RNegzX7U+5NUXcOcnpTIK0YfSHBg8gYd0oxIq3IZTe9SfPZiRw==", + "dev": true, + "dependencies": { + "@octokit/types": "^6.39.0", + "deprecation": "^2.3.1" + }, + "peerDependencies": { + "@octokit/core": ">=3" + } + }, + "node_modules/@octokit/request": { + "version": "5.6.3", + "resolved": "https://registry.npmjs.org/@octokit/request/-/request-5.6.3.tgz", + "integrity": "sha512-bFJl0I1KVc9jYTe9tdGGpAMPy32dLBXXo1dS/YwSCTL/2nd9XeHsY616RE3HPXDVk+a+dBuzyz5YdlXwcDTr2A==", + "dev": true, + "dependencies": { + "@octokit/endpoint": "^6.0.1", + "@octokit/request-error": "^2.1.0", + "@octokit/types": "^6.16.1", + "is-plain-object": "^5.0.0", + "node-fetch": "^2.6.7", + "universal-user-agent": "^6.0.0" + } + }, + "node_modules/@octokit/request-error": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-2.1.0.tgz", + "integrity": "sha512-1VIvgXxs9WHSjicsRwq8PlR2LR2x6DwsJAaFgzdi0JfJoGSO8mYI/cHJQ+9FbN21aa+DrgNLnwObmyeSC8Rmpg==", + "dev": true, + "dependencies": { + "@octokit/types": "^6.0.3", + "deprecation": "^2.0.0", + "once": "^1.4.0" + } + }, + "node_modules/@octokit/rest": { + "version": "18.12.0", + "resolved": "https://registry.npmjs.org/@octokit/rest/-/rest-18.12.0.tgz", + "integrity": "sha512-gDPiOHlyGavxr72y0guQEhLsemgVjwRePayJ+FcKc2SJqKUbxbkvf5kAZEWA/MKvsfYlQAMVzNJE3ezQcxMJ2Q==", + "dev": true, + "dependencies": { + "@octokit/core": "^3.5.1", + "@octokit/plugin-paginate-rest": "^2.16.8", + "@octokit/plugin-request-log": "^1.0.4", + "@octokit/plugin-rest-endpoint-methods": "^5.12.0" + } + }, + "node_modules/@octokit/types": { + "version": "6.41.0", + "resolved": "https://registry.npmjs.org/@octokit/types/-/types-6.41.0.tgz", + "integrity": "sha512-eJ2jbzjdijiL3B4PrSQaSjuF2sPEQPVCPzBvTHJD9Nz+9dw2SGH4K4xeQJ77YfTq5bRQ+bD8wT11JbeDPmxmGg==", + "dev": true, + "dependencies": { + "@octokit/openapi-types": "^12.11.0" + } + }, + "node_modules/@pdf-lib/fontkit": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@pdf-lib/fontkit/-/fontkit-1.1.1.tgz", + "integrity": "sha512-KjMd7grNapIWS/Dm0gvfHEilSyAmeLvrEGVcqLGi0VYebuqqzTbgF29efCx7tvx+IEbG3zQciRSWl3GkUSvjZg==", + "dependencies": { + "pako": "^1.0.6" + } + }, + "node_modules/@pdf-lib/standard-fonts": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@pdf-lib/standard-fonts/-/standard-fonts-1.0.0.tgz", + "integrity": "sha512-hU30BK9IUN/su0Mn9VdlVKsWBS6GyhVfqjwl1FjZN4TxP6cCw0jP2w7V3Hf5uX7M0AZJ16vey9yE0ny7Sa59ZA==", + "dependencies": { + "pako": "^1.0.6" + } + }, + "node_modules/@pdf-lib/upng": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@pdf-lib/upng/-/upng-1.0.1.tgz", + "integrity": "sha512-dQK2FUMQtowVP00mtIksrlZhdFXQZPC+taih1q4CvPZ5vqdxR/LKBaFg0oAfzd1GlHZXXSPdQfzQnt+ViGvEIQ==", + "dependencies": { + "pako": "^1.0.10" + } + }, + "node_modules/@puppeteer/browsers": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@puppeteer/browsers/-/browsers-1.6.0.tgz", + "integrity": "sha512-R2ib8j329427jtKB/qlz0MJbwfJE/6I8ocJLiajsRqJ2PPI8DbjiNzC3lQZeISXEcjOBVhbG2RafN8SlHdcT+A==", + "dev": true, + "dependencies": { + "debug": "4.3.4", + "extract-zip": "2.0.1", + "progress": "2.0.3", + "proxy-agent": "6.3.0", + "tar-fs": "3.0.4", + "unbzip2-stream": "1.4.3", + "yargs": "17.7.1" + }, + "bin": { + "browsers": "lib/cjs/main-cli.js" + }, + "engines": { + "node": ">=16.3.0" + } + }, + "node_modules/@sinclair/typebox": { + "version": "0.27.8", + "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz", + "integrity": "sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==", + "dev": true + }, + "node_modules/@sindresorhus/is": { + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz", + "integrity": "sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@sinonjs/commons": { + "version": "1.8.6", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.6.tgz", + "integrity": "sha512-Ky+XkAkqPZSm3NLBeUng77EBQl3cmeJhITaGHdYH8kjVB+aun3S4XBRti2zt17mtt0mIUDiNxYeoJm6drVvBJQ==", + "dev": true, + "dependencies": { + "type-detect": "4.0.8" + } + }, + "node_modules/@sinonjs/fake-timers": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-8.1.0.tgz", + "integrity": "sha512-OAPJUAtgeINhh/TAlUID4QTs53Njm7xzddaVlEs/SXwgtiD1tW22zAB/W1wdqfrpmikgaWQ9Fw6Ws+hsiRm5Vg==", + "dev": true, + "dependencies": { + "@sinonjs/commons": "^1.7.0" + } + }, + "node_modules/@stencil/core": { + "version": "2.22.3", + "resolved": "https://registry.npmjs.org/@stencil/core/-/core-2.22.3.tgz", + "integrity": "sha512-kmVA0M/HojwsfkeHsifvHVIYe4l5tin7J5+DLgtl8h6WWfiMClND5K3ifCXXI2ETDNKiEk21p6jql3Fx9o2rng==", + "bin": { + "stencil": "bin/stencil" + }, + "engines": { + "node": ">=12.10.0", + "npm": ">=6.0.0" + } + }, + "node_modules/@stencil/postcss": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@stencil/postcss/-/postcss-2.1.0.tgz", + "integrity": "sha512-/e4TYEXErGaHxH0ocg620YqEMLuMLpK/Wg4MJsiJglrLZCZhU4XCX1N0SwxaIOUbEZ1Zh+AqQ++yMI92ilndEA==", + "dev": true, + "dependencies": { + "autoprefixer": "^10.3.6", + "postcss": "~8.3.8" + }, + "peerDependencies": { + "@stencil/core": ">=2.0.0" + } + }, + "node_modules/@stencil/postcss/node_modules/postcss": { + "version": "8.3.11", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.3.11.tgz", + "integrity": "sha512-hCmlUAIlUiav8Xdqw3Io4LcpA1DOt7h3LSTAC4G6JGHFFaWzI6qvFt9oilvl8BmkbBRX1IhM90ZAmpk68zccQA==", + "dev": true, + "dependencies": { + "nanoid": "^3.1.30", + "picocolors": "^1.0.0", + "source-map-js": "^0.6.2" + }, + "engines": { + "node": "^10 || ^12 || >=14" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/@stencil/postcss/node_modules/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, @@ -1777,1485 +3738,3514 @@ "node": ">=0.10.0" } }, - "node_modules/@stencil/sass": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@stencil/sass/-/sass-2.0.3.tgz", - "integrity": "sha512-ypS+0f6bJH2qXqrNAHirlYOWFax+qKKOIePLs7cu4LfKFr4ZVJSGRFBdgaeRrZMUhJWnhjV6io2uDldhrQhnMg==", + "node_modules/@stencil/sass": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@stencil/sass/-/sass-2.0.3.tgz", + "integrity": "sha512-ypS+0f6bJH2qXqrNAHirlYOWFax+qKKOIePLs7cu4LfKFr4ZVJSGRFBdgaeRrZMUhJWnhjV6io2uDldhrQhnMg==", + "dev": true, + "peerDependencies": { + "@stencil/core": ">=2.0.0 || >=3.0.0-beta.0" + } + }, + "node_modules/@stencil/store": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@stencil/store/-/store-2.0.3.tgz", + "integrity": "sha512-45SkXtVXaYMo3itvfUleKjQr8BNowi6b0i1jHCx8O2UXJag5myvstjf4uIxkW6IscV92VzLrpIXUFvbJJKa7DA==", + "dev": true, + "peerDependencies": { + "@stencil/core": ">=2.0.0" + } + }, + "node_modules/@szmarczak/http-timer": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-1.1.2.tgz", + "integrity": "sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==", + "dev": true, + "dependencies": { + "defer-to-connect": "^1.0.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@tootallnate/once": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz", + "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@tootallnate/quickjs-emscripten": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@tootallnate/quickjs-emscripten/-/quickjs-emscripten-0.23.0.tgz", + "integrity": "sha512-C5Mc6rdnsaJDjO3UpGW/CQTHtCKaYlScZTly4JIu97Jxo/odCiH0ITnDXSJPTOrEKk/ycSZ0AOgTmkDtkOsvIA==", + "dev": true + }, + "node_modules/@tsconfig/node10": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.9.tgz", + "integrity": "sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==", + "dev": true + }, + "node_modules/@tsconfig/node12": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz", + "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==", + "dev": true + }, + "node_modules/@tsconfig/node14": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", + "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==", + "dev": true + }, + "node_modules/@tsconfig/node16": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.3.tgz", + "integrity": "sha512-yOlFc+7UtL/89t2ZhjPvvB/DeAr3r+Dq58IgzsFkOAvVC6NMJXmCGjbptdXdR9qsX7pKcTL+s87FtYREi2dEEQ==", + "dev": true + }, + "node_modules/@types/arcgis-js-api": { + "version": "4.27.0", + "resolved": "https://registry.npmjs.org/@types/arcgis-js-api/-/arcgis-js-api-4.27.0.tgz", + "integrity": "sha512-sjbbvVTOvzZRUR6rrA4KSbxlvAnclAen2Km+IHlUEYxu7zQKAiSW+zQL6MkQw8ujvYEZRHj8VBttcvjONzmNIg==", + "dev": true + }, + "node_modules/@types/babel__core": { + "version": "7.20.1", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.1.tgz", + "integrity": "sha512-aACu/U/omhdk15O4Nfb+fHgH/z3QsfQzpnvRZhYhThms83ZnAOZz7zZAWO7mn2yyNQaA4xTO8GLK3uqFU4bYYw==", + "dev": true, + "dependencies": { + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" + } + }, + "node_modules/@types/babel__generator": { + "version": "7.6.4", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.4.tgz", + "integrity": "sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__template": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.1.tgz", + "integrity": "sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g==", + "dev": true, + "dependencies": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__traverse": { + "version": "7.20.1", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.1.tgz", + "integrity": "sha512-MitHFXnhtgwsGZWtT68URpOvLN4EREih1u3QtQiN4VdAxWKRVvGCSvw/Qth0M0Qq3pJpnGOu5JaM/ydK7OGbqg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.20.7" + } + }, + "node_modules/@types/color": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/color/-/color-3.0.3.tgz", + "integrity": "sha512-X//qzJ3d3Zj82J9sC/C18ZY5f43utPbAJ6PhYt/M7uG6etcF6MRpKdN880KBy43B0BMzSfeT96MzrsNjFI3GbA==", + "peer": true, + "dependencies": { + "@types/color-convert": "*" + } + }, + "node_modules/@types/color-convert": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@types/color-convert/-/color-convert-2.0.0.tgz", + "integrity": "sha512-m7GG7IKKGuJUXvkZ1qqG3ChccdIM/qBBo913z+Xft0nKCX4hAU/IxKwZBU4cpRZ7GS5kV4vOblUkILtSShCPXQ==", + "peer": true, + "dependencies": { + "@types/color-name": "*" + } + }, + "node_modules/@types/color-name": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@types/color-name/-/color-name-1.1.1.tgz", + "integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==", + "peer": true + }, + "node_modules/@types/graceful-fs": { + "version": "4.1.6", + "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.6.tgz", + "integrity": "sha512-Sig0SNORX9fdW+bQuTEovKj3uHcUL6LQKbCrrqb1X7J6/ReAbhCXRAhc+SMejhLELFj2QcyuxmUooZ4bt5ReSw==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/istanbul-lib-coverage": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz", + "integrity": "sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==", + "dev": true + }, + "node_modules/@types/istanbul-lib-report": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", + "integrity": "sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==", + "dev": true, + "dependencies": { + "@types/istanbul-lib-coverage": "*" + } + }, + "node_modules/@types/istanbul-reports": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz", + "integrity": "sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==", + "dev": true, + "dependencies": { + "@types/istanbul-lib-report": "*" + } + }, + "node_modules/@types/jest": { + "version": "27.0.3", + "resolved": "https://registry.npmjs.org/@types/jest/-/jest-27.0.3.tgz", + "integrity": "sha512-cmmwv9t7gBYt7hNKH5Spu7Kuu/DotGa+Ff+JGRKZ4db5eh8PnKS4LuebJ3YLUoyOyIHraTGyULn23YtEAm0VSg==", + "dev": true, + "dependencies": { + "jest-diff": "^27.0.0", + "pretty-format": "^27.0.0" + } + }, + "node_modules/@types/json-schema": { + "version": "7.0.11", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz", + "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==", + "dev": true + }, + "node_modules/@types/lodash": { + "version": "4.14.191", + "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.191.tgz", + "integrity": "sha512-BdZ5BCCvho3EIXw6wUCXHe7rS53AIDPLE+JzwgT+OsJk53oBfbSmZZ7CX4VaRoN78N+TJpFi9QPlfIVNmJYWxQ==", + "dev": true + }, + "node_modules/@types/lodash.isplainobject": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/@types/lodash.isplainobject/-/lodash.isplainobject-4.0.7.tgz", + "integrity": "sha512-fdHtdjpy7fXydEaRHx1dPa+2AVmLbmk2Gv7f0w/90BKCH0DkWo8pIrzygnB3rvgo6oKNb3cO9VaPpj9GLCr5Ug==", + "dev": true, + "dependencies": { + "@types/lodash": "*" + } + }, + "node_modules/@types/node": { + "version": "16.18.11", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.11.tgz", + "integrity": "sha512-3oJbGBUWuS6ahSnEq1eN2XrCyf4YsWI8OyCvo7c64zQJNplk3mO84t53o8lfTk+2ji59g5ycfc6qQ3fdHliHuA==", + "dev": true + }, + "node_modules/@types/normalize-package-data": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz", + "integrity": "sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==", + "dev": true + }, + "node_modules/@types/parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", + "dev": true + }, + "node_modules/@types/prettier": { + "version": "2.7.3", + "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.7.3.tgz", + "integrity": "sha512-+68kP9yzs4LMp7VNh8gdzMSPZFL44MLGqiHWvttYJe+6qnuVr4Ek9wSBQoveqY/r+LwjCcU29kNVkidwim+kYA==", + "dev": true + }, + "node_modules/@types/puppeteer": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/@types/puppeteer/-/puppeteer-7.0.4.tgz", + "integrity": "sha512-ja78vquZc8y+GM2al07GZqWDKQskQXygCDiu0e3uO0DMRKqE0MjrFBFmTulfPYzLB6WnL7Kl2tFPy0WXSpPomg==", + "deprecated": "This is a stub types definition. puppeteer provides its own type definitions, so you do not need this installed.", + "dev": true, + "dependencies": { + "puppeteer": "*" + } + }, + "node_modules/@types/raf": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/@types/raf/-/raf-3.4.0.tgz", + "integrity": "sha512-taW5/WYqo36N7V39oYyHP9Ipfd5pNFvGTIQsNGj86xV88YQ7GnI30/yMfKDF7Zgin0m3e+ikX88FvImnK4RjGw==", + "optional": true + }, + "node_modules/@types/semver": { + "version": "7.3.13", + "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.3.13.tgz", + "integrity": "sha512-21cFJr9z3g5dW8B0CVI9g2O9beqaThGQ6ZFBqHfwhzLDKUxaqTIy3vnfah/UPkfOiF2pLq+tGz+W8RyCskuslw==", + "dev": true + }, + "node_modules/@types/stack-utils": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.1.tgz", + "integrity": "sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw==", + "dev": true + }, + "node_modules/@types/yargs": { + "version": "17.0.24", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.24.tgz", + "integrity": "sha512-6i0aC7jV6QzQB8ne1joVZ0eSFIstHsCrobmOtghM11yGlH0j43FKL2UhWdELkyps0zuf7qVTUVCCR+tgSlyLLw==", + "dev": true, + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/@types/yargs-parser": { + "version": "21.0.0", + "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.0.tgz", + "integrity": "sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==", + "dev": true + }, + "node_modules/@types/yauzl": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/@types/yauzl/-/yauzl-2.10.0.tgz", + "integrity": "sha512-Cn6WYCm0tXv8p6k+A8PvbDG763EDpBoTzHdA+Q/MF6H3sapGjCm9NzoaJncJS9tUKSuCoDs9XHxYYsQDgxR6kw==", + "dev": true, + "optional": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@typescript-eslint/eslint-plugin": { + "version": "5.49.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.49.0.tgz", + "integrity": "sha512-IhxabIpcf++TBaBa1h7jtOWyon80SXPRLDq0dVz5SLFC/eW6tofkw/O7Ar3lkx5z5U6wzbKDrl2larprp5kk5Q==", + "dev": true, + "dependencies": { + "@typescript-eslint/scope-manager": "5.49.0", + "@typescript-eslint/type-utils": "5.49.0", + "@typescript-eslint/utils": "5.49.0", + "debug": "^4.3.4", + "ignore": "^5.2.0", + "natural-compare-lite": "^1.4.0", + "regexpp": "^3.2.0", + "semver": "^7.3.7", + "tsutils": "^3.21.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "@typescript-eslint/parser": "^5.0.0", + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/experimental-utils": { + "version": "5.49.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-5.49.0.tgz", + "integrity": "sha512-veLpCJLYn44Fru7mSvi2doxQMzMCOFSDYdMUQhAzaH1vFYq2RVNpecZ8d18Wh6UMv07yahXkiv/aShWE48iE9Q==", + "dev": true, + "dependencies": { + "@typescript-eslint/utils": "5.49.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/@typescript-eslint/parser": { + "version": "5.49.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.49.0.tgz", + "integrity": "sha512-veDlZN9mUhGqU31Qiv2qEp+XrJj5fgZpJ8PW30sHU+j/8/e5ruAhLaVDAeznS7A7i4ucb/s8IozpDtt9NqCkZg==", + "dev": true, + "dependencies": { + "@typescript-eslint/scope-manager": "5.49.0", + "@typescript-eslint/types": "5.49.0", + "@typescript-eslint/typescript-estree": "5.49.0", + "debug": "^4.3.4" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/scope-manager": { + "version": "5.49.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.49.0.tgz", + "integrity": "sha512-clpROBOiMIzpbWNxCe1xDK14uPZh35u4QaZO1GddilEzoCLAEz4szb51rBpdgurs5k2YzPtJeTEN3qVbG+LRUQ==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "5.49.0", + "@typescript-eslint/visitor-keys": "5.49.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/type-utils": { + "version": "5.49.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.49.0.tgz", + "integrity": "sha512-eUgLTYq0tR0FGU5g1YHm4rt5H/+V2IPVkP0cBmbhRyEmyGe4XvJ2YJ6sYTmONfjmdMqyMLad7SB8GvblbeESZA==", + "dev": true, + "dependencies": { + "@typescript-eslint/typescript-estree": "5.49.0", + "@typescript-eslint/utils": "5.49.0", + "debug": "^4.3.4", + "tsutils": "^3.21.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "*" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/types": { + "version": "5.49.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.49.0.tgz", + "integrity": "sha512-7If46kusG+sSnEpu0yOz2xFv5nRz158nzEXnJFCGVEHWnuzolXKwrH5Bsf9zsNlOQkyZuk0BZKKoJQI+1JPBBg==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/typescript-estree": { + "version": "5.49.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.49.0.tgz", + "integrity": "sha512-PBdx+V7deZT/3GjNYPVQv1Nc0U46dAHbIuOG8AZ3on3vuEKiPDwFE/lG1snN2eUB9IhF7EyF7K1hmTcLztNIsA==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "5.49.0", + "@typescript-eslint/visitor-keys": "5.49.0", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "semver": "^7.3.7", + "tsutils": "^3.21.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/utils": { + "version": "5.49.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.49.0.tgz", + "integrity": "sha512-cPJue/4Si25FViIb74sHCLtM4nTSBXtLx1d3/QT6mirQ/c65bV8arBEebBJJizfq8W2YyMoPI/WWPFWitmNqnQ==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.9", + "@types/semver": "^7.3.12", + "@typescript-eslint/scope-manager": "5.49.0", + "@typescript-eslint/types": "5.49.0", + "@typescript-eslint/typescript-estree": "5.49.0", + "eslint-scope": "^5.1.1", + "eslint-utils": "^3.0.0", + "semver": "^7.3.7" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/@typescript-eslint/visitor-keys": { + "version": "5.49.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.49.0.tgz", + "integrity": "sha512-v9jBMjpNWyn8B6k/Mjt6VbUS4J1GvUlR4x3Y+ibnP1z7y7V4n0WRz+50DY6+Myj0UaXVSuUlHohO+eZ8IJEnkg==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "5.49.0", + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/abab": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", + "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==" + }, + "node_modules/acorn": { + "version": "8.8.2", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.2.tgz", + "integrity": "sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-globals": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-6.0.0.tgz", + "integrity": "sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg==", + "dev": true, + "dependencies": { + "acorn": "^7.1.1", + "acorn-walk": "^7.1.1" + } + }, + "node_modules/acorn-globals/node_modules/acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "dev": true, + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/acorn-node": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/acorn-node/-/acorn-node-1.8.2.tgz", + "integrity": "sha512-8mt+fslDufLYntIoPAaIMUe/lrbrehIiwmR3t2k9LljIzoigEPF27eLk2hy8zSGzmR/ogr7zbRKINMo1u0yh5A==", + "dev": true, + "dependencies": { + "acorn": "^7.0.0", + "acorn-walk": "^7.0.0", + "xtend": "^4.0.2" + } + }, + "node_modules/acorn-node/node_modules/acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-walk": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz", + "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/adlib": { + "version": "3.0.8", + "resolved": "https://registry.npmjs.org/adlib/-/adlib-3.0.8.tgz", + "integrity": "sha512-CbQ+mcm45pdDN0aAiGYP6FZWDor+BM4DbqJsrUptM79a2+FbiP8QdF0xHABbgCkioApKqg8lI33Gl6X8GFelfA==", + "dependencies": { + "esm": "^3.2.25" + } + }, + "node_modules/agent-base": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.0.tgz", + "integrity": "sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg==", + "dev": true, + "dependencies": { + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ansi-align": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.1.tgz", + "integrity": "sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==", + "dev": true, + "dependencies": { + "string-width": "^4.1.0" + } + }, + "node_modules/ansi-escapes": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "dev": true, + "dependencies": { + "type-fest": "^0.21.3" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ansi-escapes/node_modules/type-fest": { + "version": "0.21.3", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dev": true, + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/application-config": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/application-config/-/application-config-2.0.0.tgz", + "integrity": "sha512-NC5/0guSZK3/UgUDfCk/riByXzqz0owL1L3r63JPSBzYk5QALrp3bLxbsR7qeSfvYfFmAhnp3dbqYsW3U9MpZQ==", + "dev": true, + "dependencies": { + "application-config-path": "^0.1.0", + "load-json-file": "^6.2.0", + "write-json-file": "^4.2.0" + }, + "engines": { + "node": ">=8.3" + } + }, + "node_modules/application-config-path": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/application-config-path/-/application-config-path-0.1.1.tgz", + "integrity": "sha512-zy9cHePtMP0YhwG+CfHm0bgwdnga2X3gZexpdCwEj//dpb+TKajtiC8REEUJUSq6Ab4f9cgNy2l8ObXzCXFkEw==", + "dev": true + }, + "node_modules/aproba": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", + "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==", + "dev": true + }, + "node_modules/arg": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz", + "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==", + "dev": true + }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true + }, + "node_modules/array-includes": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.6.tgz", + "integrity": "sha512-sgTbLvL6cNnw24FnbaDyjmvddQ2ML8arZsgaJhoABMoplz/4QRhtrYS+alr1BUM1Bwp6dhx8vVCBSLG+StwOFw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "get-intrinsic": "^1.1.3", + "is-string": "^1.0.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/array.prototype.flatmap": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.1.tgz", + "integrity": "sha512-8UGn9O1FDVvMNB0UlLv4voxRMze7+FpHyF5mSMRjWHUMlpoDViniy05870VlxhfgTnLbpuwTzvD76MTtWxB/mQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "es-shim-unscopables": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/ast-types": { + "version": "0.13.4", + "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.13.4.tgz", + "integrity": "sha512-x1FCFnFifvYDDzTaLII71vG5uvDwgtmDTEVWAxrgeiR8VjMONcCXJx7E+USjDtHlwFmt9MysbqgF9b9Vjr6w+w==", + "dev": true, + "dependencies": { + "tslib": "^2.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/async": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.4.tgz", + "integrity": "sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==", + "dev": true + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", + "dev": true + }, + "node_modules/atob": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", + "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", + "bin": { + "atob": "bin/atob.js" + }, + "engines": { + "node": ">= 4.5.0" + } + }, + "node_modules/autoprefixer": { + "version": "10.4.4", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.4.tgz", + "integrity": "sha512-Tm8JxsB286VweiZ5F0anmbyGiNI3v3wGv3mz9W+cxEDYB/6jbnj6GM9H9mK3wIL8ftgl+C07Lcwb8PG5PCCPzA==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/autoprefixer" + } + ], + "dependencies": { + "browserslist": "^4.20.2", + "caniuse-lite": "^1.0.30001317", + "fraction.js": "^4.2.0", + "normalize-range": "^0.1.2", + "picocolors": "^1.0.0", + "postcss-value-parser": "^4.2.0" + }, + "bin": { + "autoprefixer": "bin/autoprefixer" + }, + "engines": { + "node": "^10 || ^12 || >=14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/available-typed-arrays": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz", + "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/b4a": { + "version": "1.6.4", + "resolved": "https://registry.npmjs.org/b4a/-/b4a-1.6.4.tgz", + "integrity": "sha512-fpWrvyVHEKyeEvbKZTVOeZF3VSKKWtJxFIxX/jaVPf+cLbGUSitjb49pHLqPV2BUNNZ0LcoeEGfE/YCpyDYHIw==", + "dev": true + }, + "node_modules/babel-jest": { + "version": "29.6.2", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-29.6.2.tgz", + "integrity": "sha512-BYCzImLos6J3BH/+HvUCHG1dTf2MzmAB4jaVxHV+29RZLjR29XuYTmsf2sdDwkrb+FczkGo3kOhE7ga6sI0P4A==", + "dev": true, + "dependencies": { + "@jest/transform": "^29.6.2", + "@types/babel__core": "^7.1.14", + "babel-plugin-istanbul": "^6.1.1", + "babel-preset-jest": "^29.5.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "slash": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.8.0" + } + }, + "node_modules/babel-plugin-istanbul": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", + "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@istanbuljs/load-nyc-config": "^1.0.0", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-instrument": "^5.0.4", + "test-exclude": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-plugin-jest-hoist": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.5.0.tgz", + "integrity": "sha512-zSuuuAlTMT4mzLj2nPnUm6fsE6270vdOfnpbJ+RmruU75UhLFvL0N2NgI7xpeS7NaB6hGqmd5pVpGTDYvi4Q3w==", + "dev": true, + "dependencies": { + "@babel/template": "^7.3.3", + "@babel/types": "^7.3.3", + "@types/babel__core": "^7.1.14", + "@types/babel__traverse": "^7.0.6" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/babel-plugin-polyfill-corejs2": { + "version": "0.4.5", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.5.tgz", + "integrity": "sha512-19hwUH5FKl49JEsvyTcoHakh6BE0wgXLLptIyKZ3PijHc/Ci521wygORCUCCred+E/twuqRyAkE02BAWPmsHOg==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.22.6", + "@babel/helper-define-polyfill-provider": "^0.4.2", + "semver": "^6.3.1" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/babel-plugin-polyfill-corejs2/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/babel-plugin-polyfill-corejs3": { + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.8.3.tgz", + "integrity": "sha512-z41XaniZL26WLrvjy7soabMXrfPWARN25PZoriDEiLMxAp50AUW3t35BGQUMg5xK3UrpVTtagIDklxYa+MhiNA==", + "dev": true, + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.4.2", + "core-js-compat": "^3.31.0" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/babel-plugin-polyfill-regenerator": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.5.2.tgz", + "integrity": "sha512-tAlOptU0Xj34V1Y2PNTL4Y0FOJMDB6bZmoW39FeCQIhigGLkqu3Fj6uiXpxIf6Ij274ENdYx64y6Au+ZKlb1IA==", + "dev": true, + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.4.2" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/babel-preset-current-node-syntax": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz", + "integrity": "sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==", + "dev": true, + "dependencies": { + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-bigint": "^7.8.3", + "@babel/plugin-syntax-class-properties": "^7.8.3", + "@babel/plugin-syntax-import-meta": "^7.8.3", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.8.3", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.8.3", + "@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-top-level-await": "^7.8.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/babel-preset-jest": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-29.5.0.tgz", + "integrity": "sha512-JOMloxOqdiBSxMAzjRaH023/vvcaSaec49zvg+2LmNsktC7ei39LTJGw02J+9uUtTZUq6xbLyJ4dxe9sSmIuAg==", + "dev": true, + "dependencies": { + "babel-plugin-jest-hoist": "^29.5.0", + "babel-preset-current-node-syntax": "^1.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true + }, + "node_modules/base64-arraybuffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-1.0.2.tgz", + "integrity": "sha512-I3yl4r9QB5ZRY3XuJVEPfc2XhZO6YweFPI+UovAzn+8/hb3oJ6lnysaFcjVpkCPfVWFUDvoZ8kmVDP7WyRtYtQ==", + "optional": true, + "engines": { + "node": ">= 0.6.0" + } + }, + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/basic-ftp": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/basic-ftp/-/basic-ftp-5.0.3.tgz", + "integrity": "sha512-QHX8HLlncOLpy54mh+k/sWIFd0ThmRqwe9ZjELybGZK+tZ8rUb9VO0saKJUROTbE+KhzDUT7xziGpGrW8Kmd+g==", + "dev": true, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/before-after-hook": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/before-after-hook/-/before-after-hook-2.2.3.tgz", + "integrity": "sha512-NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ==", + "dev": true + }, + "node_modules/binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/bl": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", + "dev": true, + "dependencies": { + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + } + }, + "node_modules/bl/node_modules/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, + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/boxen": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/boxen/-/boxen-5.1.2.tgz", + "integrity": "sha512-9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ==", + "dev": true, + "dependencies": { + "ansi-align": "^3.0.0", + "camelcase": "^6.2.0", + "chalk": "^4.1.0", + "cli-boxes": "^2.2.1", + "string-width": "^4.2.2", + "type-fest": "^0.20.2", + "widest-line": "^3.1.0", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/boxen/node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/browser-process-hrtime": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz", + "integrity": "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==", + "dev": true + }, + "node_modules/browserslist": { + "version": "4.21.10", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.10.tgz", + "integrity": "sha512-bipEBdZfVH5/pwrvqc+Ub0kUPVfGUhlKxbvfD+z1BDnPEO/X98ruXGA1WP5ASpAFKan7Qr6j736IacbZQuAlKQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "caniuse-lite": "^1.0.30001517", + "electron-to-chromium": "^1.4.477", + "node-releases": "^2.0.13", + "update-browserslist-db": "^1.0.11" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/bser": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz", + "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==", + "dev": true, + "dependencies": { + "node-int64": "^0.4.0" + } + }, + "node_modules/btoa": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/btoa/-/btoa-1.2.1.tgz", + "integrity": "sha512-SB4/MIGlsiVkMcHmT+pSmIPoNDoHg+7cMzmt3Uxt628MTz2487DKSqK/fuhFBrkuqrYv5UCEnACpF4dTFNKc/g==", + "bin": { + "btoa": "bin/btoa.js" + }, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, + "node_modules/buffer-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "dev": true + }, + "node_modules/builtin-modules": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.3.0.tgz", + "integrity": "sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==", + "dev": true, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cacheable-request": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.1.0.tgz", + "integrity": "sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==", + "dev": true, + "dependencies": { + "clone-response": "^1.0.2", + "get-stream": "^5.1.0", + "http-cache-semantics": "^4.0.0", + "keyv": "^3.0.0", + "lowercase-keys": "^2.0.0", + "normalize-url": "^4.1.0", + "responselike": "^1.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cacheable-request/node_modules/lowercase-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", + "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/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, + "dependencies": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/camelcase-css": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz", + "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001520", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001520.tgz", + "integrity": "sha512-tahF5O9EiiTzwTUqAeFjIZbn4Dnqxzz7ktrgGlMYNLH43Ul26IgTMH/zvL3DG0lZxBYnlT04axvInszUsZULdA==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ] + }, + "node_modules/canvg": { + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/canvg/-/canvg-3.0.10.tgz", + "integrity": "sha512-qwR2FRNO9NlzTeKIPIKpnTY6fqwuYSequ8Ru8c0YkYU7U0oW+hLUvWadLvAu1Rl72OMNiFhoLu4f8eUjQ7l/+Q==", + "optional": true, + "dependencies": { + "@babel/runtime": "^7.12.5", + "@types/raf": "^3.4.0", + "core-js": "^3.8.3", + "raf": "^3.4.1", + "regenerator-runtime": "^0.13.7", + "rgbcolor": "^1.0.1", + "stackblur-canvas": "^2.0.0", + "svg-pathdata": "^6.0.3" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/canvg/node_modules/core-js": { + "version": "3.27.2", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.27.2.tgz", + "integrity": "sha512-9ashVQskuh5AZEZ1JdQWp1GqSoC1e1G87MzRqg2gIfVAQ7Qn9K+uFj8EcniUFA4P2NLZfV+TOlX1SzoKfo+s7w==", + "hasInstallScript": true, + "optional": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/canvg/node_modules/regenerator-runtime": { + "version": "0.13.11", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", + "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==", + "optional": true + }, + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/changelog-parser": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/changelog-parser/-/changelog-parser-2.8.1.tgz", + "integrity": "sha512-tNUYFRCEeWTXmwLqoNtOEzx9wcytg72MmGQqsEs14ClYwIDln7sbQw7FJj/dulXgSlsxkemc9gpPQhZYZx1TPw==", + "dev": true, + "dependencies": { + "line-reader": "^0.2.4", + "remove-markdown": "^0.2.2" + }, + "bin": { + "changelog-parser": "bin/cli.js" + } + }, + "node_modules/char-regex": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz", + "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/chardet": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", + "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", + "dev": true + }, + "node_modules/chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ], + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/chokidar/node_modules/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, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/chromium-bidi": { + "version": "0.4.20", + "resolved": "https://registry.npmjs.org/chromium-bidi/-/chromium-bidi-0.4.20.tgz", + "integrity": "sha512-ruHgVZFEv00mAQMz1tQjfjdG63jiPWrQPF6HLlX2ucqLqVTJoWngeBEKHaJ6n1swV/HSvgnBNbtTRIlcVyW3Fw==", + "dev": true, + "dependencies": { + "mitt": "3.0.1" + }, + "peerDependencies": { + "devtools-protocol": "*" + } + }, + "node_modules/ci-info": { + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.7.1.tgz", + "integrity": "sha512-4jYS4MOAaCIStSRwiuxc4B8MYhIe676yO1sYGzARnjXkWpmzZMMYxY6zu8WYWDhSuth5zhrQ1rhNSibyyvv4/w==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" + } + ], + "engines": { + "node": ">=8" + } + }, + "node_modules/cjs-module-lexer": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.2.3.tgz", + "integrity": "sha512-0TNiGstbQmCFwt4akjjBg5pLRTSyj/PkWQ1ZoO2zntmg9yLqSRxwEa4iCfQLGjqhiqBfOJa7W/E8wfGrTDmlZQ==", + "dev": true + }, + "node_modules/clean-regexp": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/clean-regexp/-/clean-regexp-1.0.0.tgz", + "integrity": "sha512-GfisEZEJvzKrmGWkvfhgzcz/BllN1USeqD2V6tg14OAOgaCD2Z/PUEuxnAZ/nPvmaHRG7a8y77p1T/IRQ4D1Hw==", + "dev": true, + "dependencies": { + "escape-string-regexp": "^1.0.5" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/clean-regexp/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/cli-boxes": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-2.2.1.tgz", + "integrity": "sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==", + "dev": true, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "dev": true, + "dependencies": { + "restore-cursor": "^3.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cli-spinners": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.7.0.tgz", + "integrity": "sha512-qu3pN8Y3qHNgE2AFweciB1IfMnmZ/fsNTEE+NOFjmGB2F/7rLhnhzppvpCnN4FovtP26k8lHyy9ptEbNwWFLzw==", + "dev": true, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cli-width": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", + "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", + "dev": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "dev": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/clone": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", + "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", + "dev": true, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/clone-response": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.3.tgz", + "integrity": "sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==", + "dev": true, + "dependencies": { + "mimic-response": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/clone-response/node_modules/mimic-response": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", + "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==", + "dev": true, + "engines": { + "iojs": ">= 1.0.0", + "node": ">= 0.12.0" + } + }, + "node_modules/collect-v8-coverage": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.2.tgz", + "integrity": "sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q==", + "dev": true + }, + "node_modules/color": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/color/-/color-4.2.3.tgz", + "integrity": "sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==", + "peer": true, + "dependencies": { + "color-convert": "^2.0.1", + "color-string": "^1.9.0" + }, + "engines": { + "node": ">=12.5.0" + } + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/color-string": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz", + "integrity": "sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==", + "peer": true, + "dependencies": { + "color-name": "^1.0.0", + "simple-swizzle": "^0.2.2" + } + }, + "node_modules/color-support": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", + "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", + "dev": true, + "bin": { + "color-support": "bin.js" + } + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dev": true, + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "dev": true + }, + "node_modules/composed-offset-position": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/composed-offset-position/-/composed-offset-position-0.0.4.tgz", + "integrity": "sha512-vMlvu1RuNegVE0YsCDSV/X4X10j56mq7PCIyOKK74FxkXzGLwhOUmdkJLSdOBOMwWycobGUMgft2lp+YgTe8hw==", + "peer": true + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true + }, + "node_modules/configstore": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/configstore/-/configstore-5.0.1.tgz", + "integrity": "sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==", + "dev": true, + "dependencies": { + "dot-prop": "^5.2.0", + "graceful-fs": "^4.1.2", + "make-dir": "^3.0.0", + "unique-string": "^2.0.0", + "write-file-atomic": "^3.0.0", + "xdg-basedir": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/console-control-strings": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==", + "dev": true + }, + "node_modules/convert-source-map": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", + "dev": true + }, + "node_modules/core-js-compat": { + "version": "3.32.0", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.32.0.tgz", + "integrity": "sha512-7a9a3D1k4UCVKnLhrgALyFcP7YCsLOQIxPd0dKjf/6GuPcgyiGP70ewWdCGrSK7evyhymi0qO4EqCmSJofDeYw==", + "dev": true, + "dependencies": { + "browserslist": "^4.21.9" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/core-util-is": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", + "dev": true + }, + "node_modules/cosmiconfig": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", + "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==", + "dev": true, + "dependencies": { + "@types/parse-json": "^4.0.0", + "import-fresh": "^3.2.1", + "parse-json": "^5.0.0", + "path-type": "^4.0.0", + "yaml": "^1.10.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/create-require": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", + "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", + "dev": true + }, + "node_modules/cross-fetch": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-4.0.0.tgz", + "integrity": "sha512-e4a5N8lVvuLgAWgnCrLr2PP0YyDOTHa9H/Rj54dirp61qXnNq46m82bRhNqIA5VccJtWBvPTFRV3TtvHUKPB1g==", + "dev": true, + "dependencies": { + "node-fetch": "^2.6.12" + } + }, + "node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/crypto-random-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz", + "integrity": "sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/css-line-break": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/css-line-break/-/css-line-break-2.1.0.tgz", + "integrity": "sha512-FHcKFCZcAha3LwfVBhCQbW2nCNbkZXn7KVUJcsT5/P8YmfsVja0FMPJr0B903j/E69HUphKiV9iQArX8SDYA4w==", + "optional": true, + "dependencies": { + "utrie": "^1.0.2" + } + }, + "node_modules/cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "dev": true, + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/cssfilter": { + "version": "0.0.10", + "resolved": "https://registry.npmjs.org/cssfilter/-/cssfilter-0.0.10.tgz", + "integrity": "sha512-FAaLDaplstoRsDR8XGYH51znUN0UY7nMc6Z9/fvE8EXGwvJE9hu7W2vHwx1+bd6gCYnln9nLbzxFTrcO9YQDZw==", + "dev": true + }, + "node_modules/cssom": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.4.4.tgz", + "integrity": "sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==", + "dev": true + }, + "node_modules/cssstyle": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-2.3.0.tgz", + "integrity": "sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==", + "dev": true, + "dependencies": { + "cssom": "~0.3.6" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cssstyle/node_modules/cssom": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz", + "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==", + "dev": true + }, + "node_modules/data-uri-to-buffer": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-5.0.1.tgz", + "integrity": "sha512-a9l6T1qqDogvvnw0nKlfZzqsyikEBZBClF39V3TFoKhDtGBqHu2HkuomJc02j5zft8zrUaXEuoicLeW54RkzPg==", + "dev": true, + "engines": { + "node": ">= 14" + } + }, + "node_modules/data-urls": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-2.0.0.tgz", + "integrity": "sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ==", + "dev": true, + "dependencies": { + "abab": "^2.0.3", + "whatwg-mimetype": "^2.3.0", + "whatwg-url": "^8.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/dayjs": { + "version": "1.11.8", + "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.8.tgz", + "integrity": "sha512-LcgxzFoWMEPO7ggRv1Y2N31hUf2R0Vj7fuy/m+Bg1K8rr+KAs1AEy4y9jd5DXe8pbHgX+srkHNS7TH6Q6ZhYeQ==", + "peer": true + }, + "node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/decimal.js": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz", + "integrity": "sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==", + "dev": true + }, + "node_modules/decompress-response": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz", + "integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==", + "dev": true, + "dependencies": { + "mimic-response": "^3.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/dedent": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz", + "integrity": "sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==", + "dev": true + }, + "node_modules/deep-extend": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", + "dev": true, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "dev": true + }, + "node_modules/deepmerge": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", + "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/defaults": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.4.tgz", + "integrity": "sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==", "dev": true, - "peerDependencies": { - "@stencil/core": ">=2.0.0 || >=3.0.0-beta.0" + "dependencies": { + "clone": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@stencil/store": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@stencil/store/-/store-2.0.3.tgz", - "integrity": "sha512-45SkXtVXaYMo3itvfUleKjQr8BNowi6b0i1jHCx8O2UXJag5myvstjf4uIxkW6IscV92VzLrpIXUFvbJJKa7DA==", + "node_modules/defer-to-connect": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.1.3.tgz", + "integrity": "sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==", + "dev": true + }, + "node_modules/define-properties": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz", + "integrity": "sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==", "dev": true, - "peerDependencies": { - "@stencil/core": ">=2.0.0" + "dependencies": { + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@szmarczak/http-timer": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-1.1.2.tgz", - "integrity": "sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==", + "node_modules/defined": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.1.tgz", + "integrity": "sha512-hsBd2qSVCRE+5PmNdHt1uzyrFu5d3RwmFDKzyNZMFq/EwDNJF7Ee5+D5oEKF0hU6LhtoUF1macFvOe4AskQC1Q==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/degenerator": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/degenerator/-/degenerator-5.0.1.tgz", + "integrity": "sha512-TllpMR/t0M5sqCXfj85i4XaAzxmS5tVA16dqvdkMwGmzI+dXLXnw3J+3Vdv7VKw+ThlTMboK6i9rnZ6Nntj5CQ==", "dev": true, "dependencies": { - "defer-to-connect": "^1.0.1" + "ast-types": "^0.13.4", + "escodegen": "^2.1.0", + "esprima": "^4.0.1" }, "engines": { - "node": ">=6" + "node": ">= 14" } }, - "node_modules/@tootallnate/once": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz", - "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==", + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", "dev": true, "engines": { - "node": ">= 6" + "node": ">=0.4.0" } }, - "node_modules/@tsconfig/node10": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.9.tgz", - "integrity": "sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==", + "node_modules/deprecation": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/deprecation/-/deprecation-2.3.1.tgz", + "integrity": "sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ==", "dev": true }, - "node_modules/@tsconfig/node12": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz", - "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==", - "dev": true + "node_modules/detect-indent": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-6.1.0.tgz", + "integrity": "sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA==", + "dev": true, + "engines": { + "node": ">=8" + } }, - "node_modules/@tsconfig/node14": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", - "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==", + "node_modules/detect-newline": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz", + "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/detective": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/detective/-/detective-5.2.1.tgz", + "integrity": "sha512-v9XE1zRnz1wRtgurGu0Bs8uHKFSTdteYZNbIPFVhUZ39L/S79ppMpdmVOZAnoz1jfEFodc48n6MX483Xo3t1yw==", + "dev": true, + "dependencies": { + "acorn-node": "^1.8.2", + "defined": "^1.0.0", + "minimist": "^1.2.6" + }, + "bin": { + "detective": "bin/detective.js" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/devtools-protocol": { + "version": "0.0.1147663", + "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.1147663.tgz", + "integrity": "sha512-hyWmRrexdhbZ1tcJUGpO95ivbRhWXz++F4Ko+n21AY5PNln2ovoJw+8ZMNDTtip+CNFQfrtLVh/w4009dXO/eQ==", "dev": true }, - "node_modules/@tsconfig/node16": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.3.tgz", - "integrity": "sha512-yOlFc+7UtL/89t2ZhjPvvB/DeAr3r+Dq58IgzsFkOAvVC6NMJXmCGjbptdXdR9qsX7pKcTL+s87FtYREi2dEEQ==", + "node_modules/didyoumean": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz", + "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==", "dev": true }, - "node_modules/@types/arcgis-js-api": { - "version": "4.27.0", - "resolved": "https://registry.npmjs.org/@types/arcgis-js-api/-/arcgis-js-api-4.27.0.tgz", - "integrity": "sha512-sjbbvVTOvzZRUR6rrA4KSbxlvAnclAen2Km+IHlUEYxu7zQKAiSW+zQL6MkQw8ujvYEZRHj8VBttcvjONzmNIg==", + "node_modules/diff": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", + "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", + "dev": true, + "engines": { + "node": ">=0.3.1" + } + }, + "node_modules/diff-sequences": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.5.1.tgz", + "integrity": "sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==", + "dev": true, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "dev": true, + "dependencies": { + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/dlv": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz", + "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==", "dev": true }, - "node_modules/@types/babel__core": { - "version": "7.20.0", - "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.0.tgz", - "integrity": "sha512-+n8dL/9GWblDO0iU6eZAwEIJVr5DWigtle+Q6HLOrh/pdbXOhOtqzq8VPPE2zvNJzSKY4vH/z3iT3tn0A3ypiQ==", + "node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", "dev": true, "dependencies": { - "@babel/parser": "^7.20.7", - "@babel/types": "^7.20.7", - "@types/babel__generator": "*", - "@types/babel__template": "*", - "@types/babel__traverse": "*" + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=6.0.0" } }, - "node_modules/@types/babel__generator": { - "version": "7.6.4", - "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.4.tgz", - "integrity": "sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg==", + "node_modules/domexception": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/domexception/-/domexception-2.0.1.tgz", + "integrity": "sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg==", "dev": true, "dependencies": { - "@babel/types": "^7.0.0" + "webidl-conversions": "^5.0.0" + }, + "engines": { + "node": ">=8" } }, - "node_modules/@types/babel__template": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.1.tgz", - "integrity": "sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g==", + "node_modules/domexception/node_modules/webidl-conversions": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-5.0.0.tgz", + "integrity": "sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/dompurify": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-2.4.3.tgz", + "integrity": "sha512-q6QaLcakcRjebxjg8/+NP+h0rPfatOgOzc46Fst9VAA3jF2ApfKBNKMzdP4DYTqtUMXSCd5pRS/8Po/OmoCHZQ==", + "optional": true + }, + "node_modules/dot-prop": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", + "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==", + "dev": true, + "dependencies": { + "is-obj": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/dotenv": { + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-10.0.0.tgz", + "integrity": "sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/duplexer3": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.5.tgz", + "integrity": "sha512-1A8za6ws41LQgv9HrE/66jyC5yuSjQ3L/KOpFtoBilsAK2iA2wuS5rTt1OCzIvtS2V7nVmedsUU+DGRcjBmOYA==", + "dev": true + }, + "node_modules/duplexify": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-4.1.2.tgz", + "integrity": "sha512-fz3OjcNCHmRP12MJoZMPglx8m4rrFP8rovnk4vT8Fs+aonZoCwGg10dSsQsfP/E62eZcPTMSMP6686fu9Qlqtw==", "dev": true, "dependencies": { - "@babel/parser": "^7.1.0", - "@babel/types": "^7.0.0" + "end-of-stream": "^1.4.1", + "inherits": "^2.0.3", + "readable-stream": "^3.1.1", + "stream-shift": "^1.0.0" } }, - "node_modules/@types/babel__traverse": { - "version": "7.18.3", - "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.18.3.tgz", - "integrity": "sha512-1kbcJ40lLB7MHsj39U4Sh1uTd2E7rLEa79kmDpI6cy+XiXsteB3POdQomoq4FxszMrO3ZYchkhYJw7A2862b3w==", + "node_modules/duplexify/node_modules/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, "dependencies": { - "@babel/types": "^7.3.0" + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" } }, - "node_modules/@types/color": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/color/-/color-3.0.3.tgz", - "integrity": "sha512-X//qzJ3d3Zj82J9sC/C18ZY5f43utPbAJ6PhYt/M7uG6etcF6MRpKdN880KBy43B0BMzSfeT96MzrsNjFI3GbA==", - "peer": true, - "dependencies": { - "@types/color-convert": "*" + "node_modules/electron-to-chromium": { + "version": "1.4.491", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.491.tgz", + "integrity": "sha512-ZzPqGKghdVzlQJ+qpfE+r6EB321zed7e5JsvHIlMM4zPFF8okXUkF5Of7h7F3l3cltPL0rG7YVmlp5Qro7RQLA==", + "dev": true + }, + "node_modules/emittery": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.8.1.tgz", + "integrity": "sha512-uDfvUjVrfGJJhymx/kz6prltenw1u7WrCg1oa94zYY8xxVpLLUu045LAT0dhDZdXG58/EpPL/5kA180fQ/qudg==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/emittery?sponsor=1" } }, - "node_modules/@types/color-convert": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@types/color-convert/-/color-convert-2.0.0.tgz", - "integrity": "sha512-m7GG7IKKGuJUXvkZ1qqG3ChccdIM/qBBo913z+Xft0nKCX4hAU/IxKwZBU4cpRZ7GS5kV4vOblUkILtSShCPXQ==", + "node_modules/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 + }, + "node_modules/encoding": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", + "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", + "dev": true, + "optional": true, "peer": true, "dependencies": { - "@types/color-name": "*" + "iconv-lite": "^0.6.2" } }, - "node_modules/@types/color-name": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@types/color-name/-/color-name-1.1.1.tgz", - "integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==", - "peer": true - }, - "node_modules/@types/graceful-fs": { - "version": "4.1.6", - "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.6.tgz", - "integrity": "sha512-Sig0SNORX9fdW+bQuTEovKj3uHcUL6LQKbCrrqb1X7J6/ReAbhCXRAhc+SMejhLELFj2QcyuxmUooZ4bt5ReSw==", + "node_modules/encoding/node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", "dev": true, + "optional": true, + "peer": true, "dependencies": { - "@types/node": "*" + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, - "node_modules/@types/istanbul-lib-coverage": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz", - "integrity": "sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==", - "dev": true - }, - "node_modules/@types/istanbul-lib-report": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", - "integrity": "sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==", + "node_modules/end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", "dev": true, "dependencies": { - "@types/istanbul-lib-coverage": "*" + "once": "^1.4.0" } }, - "node_modules/@types/istanbul-reports": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz", - "integrity": "sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==", + "node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", "dev": true, "dependencies": { - "@types/istanbul-lib-report": "*" + "is-arrayish": "^0.2.1" } }, - "node_modules/@types/jest": { - "version": "27.5.2", - "resolved": "https://registry.npmjs.org/@types/jest/-/jest-27.5.2.tgz", - "integrity": "sha512-mpT8LJJ4CMeeahobofYWIjFo0xonRS/HfxnVEPMPFSQdGUt1uHCnoPT7Zhb+sjDU2wz0oKV0OLUR0WzrHNgfeA==", + "node_modules/es-abstract": { + "version": "1.21.1", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.21.1.tgz", + "integrity": "sha512-QudMsPOz86xYz/1dG1OuGBKOELjCh99IIWHLzy5znUB6j8xG2yMA7bfTV86VSqKF+Y/H08vQPR+9jyXpuC6hfg==", "dev": true, "dependencies": { - "jest-matcher-utils": "^27.0.0", - "pretty-format": "^27.0.0" + "available-typed-arrays": "^1.0.5", + "call-bind": "^1.0.2", + "es-set-tostringtag": "^2.0.1", + "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", + "function.prototype.name": "^1.1.5", + "get-intrinsic": "^1.1.3", + "get-symbol-description": "^1.0.0", + "globalthis": "^1.0.3", + "gopd": "^1.0.1", + "has": "^1.0.3", + "has-property-descriptors": "^1.0.0", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3", + "internal-slot": "^1.0.4", + "is-array-buffer": "^3.0.1", + "is-callable": "^1.2.7", + "is-negative-zero": "^2.0.2", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.2", + "is-string": "^1.0.7", + "is-typed-array": "^1.1.10", + "is-weakref": "^1.0.2", + "object-inspect": "^1.12.2", + "object-keys": "^1.1.1", + "object.assign": "^4.1.4", + "regexp.prototype.flags": "^1.4.3", + "safe-regex-test": "^1.0.0", + "string.prototype.trimend": "^1.0.6", + "string.prototype.trimstart": "^1.0.6", + "typed-array-length": "^1.0.4", + "unbox-primitive": "^1.0.2", + "which-typed-array": "^1.1.9" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@types/json-schema": { - "version": "7.0.11", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz", - "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==", - "dev": true - }, - "node_modules/@types/lodash": { - "version": "4.14.191", - "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.191.tgz", - "integrity": "sha512-BdZ5BCCvho3EIXw6wUCXHe7rS53AIDPLE+JzwgT+OsJk53oBfbSmZZ7CX4VaRoN78N+TJpFi9QPlfIVNmJYWxQ==", - "dev": true - }, - "node_modules/@types/lodash.isplainobject": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/@types/lodash.isplainobject/-/lodash.isplainobject-4.0.7.tgz", - "integrity": "sha512-fdHtdjpy7fXydEaRHx1dPa+2AVmLbmk2Gv7f0w/90BKCH0DkWo8pIrzygnB3rvgo6oKNb3cO9VaPpj9GLCr5Ug==", + "node_modules/es-set-tostringtag": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.1.tgz", + "integrity": "sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==", "dev": true, "dependencies": { - "@types/lodash": "*" + "get-intrinsic": "^1.1.3", + "has": "^1.0.3", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" } }, - "node_modules/@types/node": { - "version": "16.18.11", - "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.11.tgz", - "integrity": "sha512-3oJbGBUWuS6ahSnEq1eN2XrCyf4YsWI8OyCvo7c64zQJNplk3mO84t53o8lfTk+2ji59g5ycfc6qQ3fdHliHuA==", - "dev": true - }, - "node_modules/@types/normalize-package-data": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz", - "integrity": "sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==", - "dev": true - }, - "node_modules/@types/parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", - "dev": true - }, - "node_modules/@types/prettier": { - "version": "2.7.2", - "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.7.2.tgz", - "integrity": "sha512-KufADq8uQqo1pYKVIYzfKbJfBAc0sOeXqGbFaSpv8MRmC/zXgowNZmFcbngndGk922QDmOASEXUZCaY48gs4cg==", - "dev": true - }, - "node_modules/@types/puppeteer": { - "version": "5.4.7", - "resolved": "https://registry.npmjs.org/@types/puppeteer/-/puppeteer-5.4.7.tgz", - "integrity": "sha512-JdGWZZYL0vKapXF4oQTC5hLVNfOgdPrqeZ1BiQnGk5cB7HeE91EWUiTdVSdQPobRN8rIcdffjiOgCYJ/S8QrnQ==", + "node_modules/es-shim-unscopables": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.0.tgz", + "integrity": "sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==", "dev": true, "dependencies": { - "@types/node": "*" + "has": "^1.0.3" } }, - "node_modules/@types/raf": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/@types/raf/-/raf-3.4.0.tgz", - "integrity": "sha512-taW5/WYqo36N7V39oYyHP9Ipfd5pNFvGTIQsNGj86xV88YQ7GnI30/yMfKDF7Zgin0m3e+ikX88FvImnK4RjGw==", - "optional": true - }, - "node_modules/@types/semver": { - "version": "7.3.13", - "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.3.13.tgz", - "integrity": "sha512-21cFJr9z3g5dW8B0CVI9g2O9beqaThGQ6ZFBqHfwhzLDKUxaqTIy3vnfah/UPkfOiF2pLq+tGz+W8RyCskuslw==", - "dev": true - }, - "node_modules/@types/stack-utils": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.1.tgz", - "integrity": "sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw==", - "dev": true - }, - "node_modules/@types/yargs": { - "version": "16.0.5", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", - "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "node_modules/es-to-primitive": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", "dev": true, "dependencies": { - "@types/yargs-parser": "*" + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@types/yargs-parser": { - "version": "21.0.0", - "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.0.tgz", - "integrity": "sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==", - "dev": true - }, - "node_modules/@types/yauzl": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/@types/yauzl/-/yauzl-2.10.0.tgz", - "integrity": "sha512-Cn6WYCm0tXv8p6k+A8PvbDG763EDpBoTzHdA+Q/MF6H3sapGjCm9NzoaJncJS9tUKSuCoDs9XHxYYsQDgxR6kw==", + "node_modules/escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-goat": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/escape-goat/-/escape-goat-2.1.1.tgz", + "integrity": "sha512-8/uIhbG12Csjy2JEW7D9pHbreaVaS/OpN3ycnyvElTdwM5n6GY6W6e2IPemfvGZeUMqZ9A/3GqIZMgKnBhAw/Q==", "dev": true, - "optional": true, - "dependencies": { - "@types/node": "*" + "engines": { + "node": ">=8" } }, - "node_modules/@typescript-eslint/eslint-plugin": { - "version": "5.49.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.49.0.tgz", - "integrity": "sha512-IhxabIpcf++TBaBa1h7jtOWyon80SXPRLDq0dVz5SLFC/eW6tofkw/O7Ar3lkx5z5U6wzbKDrl2larprp5kk5Q==", + "node_modules/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, - "dependencies": { - "@typescript-eslint/scope-manager": "5.49.0", - "@typescript-eslint/type-utils": "5.49.0", - "@typescript-eslint/utils": "5.49.0", - "debug": "^4.3.4", - "ignore": "^5.2.0", - "natural-compare-lite": "^1.4.0", - "regexpp": "^3.2.0", - "semver": "^7.3.7", - "tsutils": "^3.21.0" - }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": ">=10" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "@typescript-eslint/parser": "^5.0.0", - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@typescript-eslint/experimental-utils": { - "version": "5.49.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-5.49.0.tgz", - "integrity": "sha512-veLpCJLYn44Fru7mSvi2doxQMzMCOFSDYdMUQhAzaH1vFYq2RVNpecZ8d18Wh6UMv07yahXkiv/aShWE48iE9Q==", + "node_modules/escodegen": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-2.1.0.tgz", + "integrity": "sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w==", "dev": true, "dependencies": { - "@typescript-eslint/utils": "5.49.0" + "esprima": "^4.0.1", + "estraverse": "^5.2.0", + "esutils": "^2.0.2" }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "bin": { + "escodegen": "bin/escodegen.js", + "esgenerate": "bin/esgenerate.js" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" + "engines": { + "node": ">=6.0" }, - "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + "optionalDependencies": { + "source-map": "~0.6.1" } }, - "node_modules/@typescript-eslint/parser": { - "version": "5.49.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.49.0.tgz", - "integrity": "sha512-veDlZN9mUhGqU31Qiv2qEp+XrJj5fgZpJ8PW30sHU+j/8/e5ruAhLaVDAeznS7A7i4ucb/s8IozpDtt9NqCkZg==", + "node_modules/eslint": { + "version": "8.33.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.33.0.tgz", + "integrity": "sha512-WjOpFQgKK8VrCnAtl8We0SUOy/oVZ5NHykyMiagV1M9r8IFpIJX7DduK6n1mpfhlG7T1NLWm2SuD8QB7KFySaA==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "5.49.0", - "@typescript-eslint/types": "5.49.0", - "@typescript-eslint/typescript-estree": "5.49.0", - "debug": "^4.3.4" + "@eslint/eslintrc": "^1.4.1", + "@humanwhocodes/config-array": "^0.11.8", + "@humanwhocodes/module-importer": "^1.0.1", + "@nodelib/fs.walk": "^1.2.8", + "ajv": "^6.10.0", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.3.2", + "doctrine": "^3.0.0", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^7.1.1", + "eslint-utils": "^3.0.0", + "eslint-visitor-keys": "^3.3.0", + "espree": "^9.4.0", + "esquery": "^1.4.0", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "globals": "^13.19.0", + "grapheme-splitter": "^1.0.4", + "ignore": "^5.2.0", + "import-fresh": "^3.0.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "is-path-inside": "^3.0.3", + "js-sdsl": "^4.1.4", + "js-yaml": "^4.1.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.1", + "regexpp": "^3.2.0", + "strip-ansi": "^6.0.1", + "strip-json-comments": "^3.1.0", + "text-table": "^0.2.0" + }, + "bin": { + "eslint": "bin/eslint.js" }, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } + "url": "https://opencollective.com/eslint" } }, - "node_modules/@typescript-eslint/scope-manager": { - "version": "5.49.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.49.0.tgz", - "integrity": "sha512-clpROBOiMIzpbWNxCe1xDK14uPZh35u4QaZO1GddilEzoCLAEz4szb51rBpdgurs5k2YzPtJeTEN3qVbG+LRUQ==", + "node_modules/eslint-config-prettier": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.3.0.tgz", + "integrity": "sha512-BgZuLUSeKzvlL/VUjx/Yb787VQ26RU3gGjA3iiFvdsp/2bMfVIWUVP7tjxtjS0e+HP409cPlPvNkQloz8C91ew==", "dev": true, - "dependencies": { - "@typescript-eslint/types": "5.49.0", - "@typescript-eslint/visitor-keys": "5.49.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "bin": { + "eslint-config-prettier": "bin/cli.js" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" + "peerDependencies": { + "eslint": ">=7.0.0" } }, - "node_modules/@typescript-eslint/type-utils": { - "version": "5.49.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.49.0.tgz", - "integrity": "sha512-eUgLTYq0tR0FGU5g1YHm4rt5H/+V2IPVkP0cBmbhRyEmyGe4XvJ2YJ6sYTmONfjmdMqyMLad7SB8GvblbeESZA==", + "node_modules/eslint-plugin-jest": { + "version": "25.3.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-25.3.0.tgz", + "integrity": "sha512-79WQtuBsTN1S8Y9+7euBYwxIOia/k7ykkl9OCBHL3xuww5ecursHy/D8GCIlvzHVWv85gOkS5Kv6Sh7RxOgK1Q==", "dev": true, "dependencies": { - "@typescript-eslint/typescript-estree": "5.49.0", - "@typescript-eslint/utils": "5.49.0", - "debug": "^4.3.4", - "tsutils": "^3.21.0" + "@typescript-eslint/experimental-utils": "^5.0.0" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" }, "peerDependencies": { - "eslint": "*" + "@typescript-eslint/eslint-plugin": "^4.0.0 || ^5.0.0", + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" }, "peerDependenciesMeta": { - "typescript": { + "@typescript-eslint/eslint-plugin": { + "optional": true + }, + "jest": { "optional": true } } }, - "node_modules/@typescript-eslint/types": { - "version": "5.49.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.49.0.tgz", - "integrity": "sha512-7If46kusG+sSnEpu0yOz2xFv5nRz158nzEXnJFCGVEHWnuzolXKwrH5Bsf9zsNlOQkyZuk0BZKKoJQI+1JPBBg==", - "dev": true, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/typescript-estree": { - "version": "5.49.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.49.0.tgz", - "integrity": "sha512-PBdx+V7deZT/3GjNYPVQv1Nc0U46dAHbIuOG8AZ3on3vuEKiPDwFE/lG1snN2eUB9IhF7EyF7K1hmTcLztNIsA==", + "node_modules/eslint-plugin-prettier": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-4.0.0.tgz", + "integrity": "sha512-98MqmCJ7vJodoQK359bqQWaxOE0CS8paAz/GgjaZLyex4TTk3g9HugoO89EqWCrFiOqn9EVvcoo7gZzONCWVwQ==", "dev": true, "dependencies": { - "@typescript-eslint/types": "5.49.0", - "@typescript-eslint/visitor-keys": "5.49.0", - "debug": "^4.3.4", - "globby": "^11.1.0", - "is-glob": "^4.0.3", - "semver": "^7.3.7", - "tsutils": "^3.21.0" + "prettier-linter-helpers": "^1.0.0" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": ">=6.0.0" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" + "peerDependencies": { + "eslint": ">=7.28.0", + "prettier": ">=2.0.0" }, "peerDependenciesMeta": { - "typescript": { + "eslint-config-prettier": { "optional": true } } }, - "node_modules/@typescript-eslint/utils": { - "version": "5.49.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.49.0.tgz", - "integrity": "sha512-cPJue/4Si25FViIb74sHCLtM4nTSBXtLx1d3/QT6mirQ/c65bV8arBEebBJJizfq8W2YyMoPI/WWPFWitmNqnQ==", + "node_modules/eslint-plugin-react": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.27.1.tgz", + "integrity": "sha512-meyunDjMMYeWr/4EBLTV1op3iSG3mjT/pz5gti38UzfM4OPpNc2m0t2xvKCOMU5D6FSdd34BIMFOvQbW+i8GAA==", "dev": true, "dependencies": { - "@types/json-schema": "^7.0.9", - "@types/semver": "^7.3.12", - "@typescript-eslint/scope-manager": "5.49.0", - "@typescript-eslint/types": "5.49.0", - "@typescript-eslint/typescript-estree": "5.49.0", - "eslint-scope": "^5.1.1", - "eslint-utils": "^3.0.0", - "semver": "^7.3.7" + "array-includes": "^3.1.4", + "array.prototype.flatmap": "^1.2.5", + "doctrine": "^2.1.0", + "estraverse": "^5.3.0", + "jsx-ast-utils": "^2.4.1 || ^3.0.0", + "minimatch": "^3.0.4", + "object.entries": "^1.1.5", + "object.fromentries": "^2.0.5", + "object.hasown": "^1.1.0", + "object.values": "^1.1.5", + "prop-types": "^15.7.2", + "resolve": "^2.0.0-next.3", + "semver": "^6.3.0", + "string.prototype.matchall": "^4.0.6" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" + "node": ">=4" }, "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8" } }, - "node_modules/@typescript-eslint/visitor-keys": { - "version": "5.49.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.49.0.tgz", - "integrity": "sha512-v9jBMjpNWyn8B6k/Mjt6VbUS4J1GvUlR4x3Y+ibnP1z7y7V4n0WRz+50DY6+Myj0UaXVSuUlHohO+eZ8IJEnkg==", + "node_modules/eslint-plugin-react/node_modules/doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", "dev": true, "dependencies": { - "@typescript-eslint/types": "5.49.0", - "eslint-visitor-keys": "^3.3.0" + "esutils": "^2.0.2" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" + "node": ">=0.10.0" } }, - "node_modules/abab": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", - "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==" - }, - "node_modules/acorn": { - "version": "8.8.2", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.2.tgz", - "integrity": "sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==", + "node_modules/eslint-plugin-react/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", "dev": true, "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" + "semver": "bin/semver.js" } }, - "node_modules/acorn-globals": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-6.0.0.tgz", - "integrity": "sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg==", + "node_modules/eslint-plugin-unicorn": { + "version": "39.0.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-unicorn/-/eslint-plugin-unicorn-39.0.0.tgz", + "integrity": "sha512-fd5RK2FtYjGcIx3wra7csIE/wkkmBo22T1gZtRTsLr1Mb+KsFKJ+JOdSqhHXQUrI/JTs/Mon64cEYzTgSCbltw==", "dev": true, "dependencies": { - "acorn": "^7.1.1", - "acorn-walk": "^7.1.1" - } - }, - "node_modules/acorn-globals/node_modules/acorn": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", - "dev": true, - "bin": { - "acorn": "bin/acorn" + "@babel/helper-validator-identifier": "^7.14.9", + "ci-info": "^3.2.0", + "clean-regexp": "^1.0.0", + "eslint-template-visitor": "^2.3.2", + "eslint-utils": "^3.0.0", + "esquery": "^1.4.0", + "indent-string": "4", + "is-builtin-module": "^3.1.0", + "lodash": "^4.17.21", + "pluralize": "^8.0.0", + "read-pkg-up": "^7.0.1", + "regexp-tree": "^0.1.23", + "safe-regex": "^2.1.1", + "semver": "^7.3.5", + "strip-indent": "^3.0.0" }, "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/acorn-jsx": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", - "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", - "dev": true, + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sindresorhus/eslint-plugin-unicorn?sponsor=1" + }, "peerDependencies": { - "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + "eslint": ">=7.32.0" } }, - "node_modules/acorn-node": { - "version": "1.8.2", - "resolved": "https://registry.npmjs.org/acorn-node/-/acorn-node-1.8.2.tgz", - "integrity": "sha512-8mt+fslDufLYntIoPAaIMUe/lrbrehIiwmR3t2k9LljIzoigEPF27eLk2hy8zSGzmR/ogr7zbRKINMo1u0yh5A==", + "node_modules/eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", "dev": true, "dependencies": { - "acorn": "^7.0.0", - "acorn-walk": "^7.0.0", - "xtend": "^4.0.2" - } - }, - "node_modules/acorn-node/node_modules/acorn": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", - "dev": true, - "bin": { - "acorn": "bin/acorn" + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" }, "engines": { - "node": ">=0.4.0" + "node": ">=8.0.0" } }, - "node_modules/acorn-walk": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz", - "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", + "node_modules/eslint-scope/node_modules/estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", "dev": true, "engines": { - "node": ">=0.4.0" + "node": ">=4.0" } }, - "node_modules/adlib": { - "version": "3.0.8", - "resolved": "https://registry.npmjs.org/adlib/-/adlib-3.0.8.tgz", - "integrity": "sha512-CbQ+mcm45pdDN0aAiGYP6FZWDor+BM4DbqJsrUptM79a2+FbiP8QdF0xHABbgCkioApKqg8lI33Gl6X8GFelfA==", + "node_modules/eslint-template-visitor": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/eslint-template-visitor/-/eslint-template-visitor-2.3.2.tgz", + "integrity": "sha512-3ydhqFpuV7x1M9EK52BPNj6V0Kwu0KKkcIAfpUhwHbR8ocRln/oUHgfxQupY8O1h4Qv/POHDumb/BwwNfxbtnA==", + "dev": true, "dependencies": { - "esm": "^3.2.25" + "@babel/core": "^7.12.16", + "@babel/eslint-parser": "^7.12.16", + "eslint-visitor-keys": "^2.0.0", + "esquery": "^1.3.1", + "multimap": "^1.1.0" + }, + "peerDependencies": { + "eslint": ">=7.0.0" } }, - "node_modules/agent-base": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", - "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "node_modules/eslint-template-visitor/node_modules/eslint-visitor-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", "dev": true, - "dependencies": { - "debug": "4" - }, "engines": { - "node": ">= 6.0.0" + "node": ">=10" } }, - "node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "node_modules/eslint-utils": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", + "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", + "dev": true, "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" + "eslint-visitor-keys": "^2.0.0" + }, + "engines": { + "node": "^10.0.0 || ^12.0.0 || >= 14.0.0" }, "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" + "url": "https://github.com/sponsors/mysticatea" + }, + "peerDependencies": { + "eslint": ">=5" } }, - "node_modules/ansi-align": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.1.tgz", - "integrity": "sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==", + "node_modules/eslint-utils/node_modules/eslint-visitor-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", "dev": true, - "dependencies": { - "string-width": "^4.1.0" + "engines": { + "node": ">=10" } }, - "node_modules/ansi-escapes": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", - "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "node_modules/eslint-visitor-keys": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", + "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==", "dev": true, - "dependencies": { - "type-fest": "^0.21.3" - }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, - "node_modules/ansi-escapes/node_modules/type-fest": { - "version": "0.21.3", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", - "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", + "node_modules/eslint/node_modules/eslint-scope": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz", + "integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==", "dev": true, - "engines": { - "node": ">=10" + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, - "node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true, + "node_modules/esm": { + "version": "3.2.25", + "resolved": "https://registry.npmjs.org/esm/-/esm-3.2.25.tgz", + "integrity": "sha512-U1suiZ2oDVWv4zPO56S0NcR5QriEahGtdN2OR6FiOG4WJvcjBVFB0qI4+eKoWFH483PKGuLuu6V8Z4T5g63UVA==", "engines": { - "node": ">=8" + "node": ">=6" } }, - "node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "node_modules/espree": { + "version": "9.4.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.4.1.tgz", + "integrity": "sha512-XwctdmTO6SIvCzd9810yyNzIrOrqNYV9Koizx4C/mRhf9uq0o4yHoCEU/670pOxOL/MSraektvSAji79kX90Vg==", "dev": true, "dependencies": { - "color-convert": "^2.0.1" + "acorn": "^8.8.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.3.0" }, "engines": { - "node": ">=8" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true, + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" } }, - "node_modules/anymatch": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", - "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "node_modules/esquery": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", + "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", "dev": true, "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" + "estraverse": "^5.1.0" }, "engines": { - "node": ">= 8" + "node": ">=0.10" } }, - "node_modules/application-config": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/application-config/-/application-config-2.0.0.tgz", - "integrity": "sha512-NC5/0guSZK3/UgUDfCk/riByXzqz0owL1L3r63JPSBzYk5QALrp3bLxbsR7qeSfvYfFmAhnp3dbqYsW3U9MpZQ==", + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", "dev": true, "dependencies": { - "application-config-path": "^0.1.0", - "load-json-file": "^6.2.0", - "write-json-file": "^4.2.0" + "estraverse": "^5.2.0" }, "engines": { - "node": ">=8.3" + "node": ">=4.0" } }, - "node_modules/application-config-path": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/application-config-path/-/application-config-path-0.1.1.tgz", - "integrity": "sha512-zy9cHePtMP0YhwG+CfHm0bgwdnga2X3gZexpdCwEj//dpb+TKajtiC8REEUJUSq6Ab4f9cgNy2l8ObXzCXFkEw==", - "dev": true - }, - "node_modules/aproba": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", - "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==", - "dev": true - }, - "node_modules/arg": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz", - "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==", - "dev": true - }, - "node_modules/argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "node_modules/esri-loader": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/esri-loader/-/esri-loader-3.4.0.tgz", + "integrity": "sha512-iS3SbBmrnr4TlUdAjyyVZD2yCud8AMZkyJcmYEVzTiE5wVUtdN8d9USp7XYtilgwkJe/eWR2f2G1+S58ESqLuQ==", "dev": true }, - "node_modules/array-includes": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.6.tgz", - "integrity": "sha512-sgTbLvL6cNnw24FnbaDyjmvddQ2ML8arZsgaJhoABMoplz/4QRhtrYS+alr1BUM1Bwp6dhx8vVCBSLG+StwOFw==", + "node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4", - "get-intrinsic": "^1.1.3", - "is-string": "^1.0.7" - }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=4.0" } }, - "node_modules/array-union": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", - "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", "dev": true, "engines": { - "node": ">=8" + "node": ">=0.10.0" } }, - "node_modules/array.prototype.flatmap": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.1.tgz", - "integrity": "sha512-8UGn9O1FDVvMNB0UlLv4voxRMze7+FpHyF5mSMRjWHUMlpoDViniy05870VlxhfgTnLbpuwTzvD76MTtWxB/mQ==", + "node_modules/execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4", - "es-shim-unscopables": "^1.0.0" + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" }, "engines": { - "node": ">= 0.4" + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/async": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/async/-/async-3.2.4.tgz", - "integrity": "sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==", - "dev": true - }, - "node_modules/asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", - "dev": true - }, - "node_modules/atob": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", - "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", - "bin": { - "atob": "bin/atob.js" - }, - "engines": { - "node": ">= 4.5.0" + "url": "https://github.com/sindresorhus/execa?sponsor=1" } }, - "node_modules/autoprefixer": { - "version": "10.4.4", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.4.tgz", - "integrity": "sha512-Tm8JxsB286VweiZ5F0anmbyGiNI3v3wGv3mz9W+cxEDYB/6jbnj6GM9H9mK3wIL8ftgl+C07Lcwb8PG5PCCPzA==", + "node_modules/execa/node_modules/get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/autoprefixer" - } - ], - "dependencies": { - "browserslist": "^4.20.2", - "caniuse-lite": "^1.0.30001317", - "fraction.js": "^4.2.0", - "normalize-range": "^0.1.2", - "picocolors": "^1.0.0", - "postcss-value-parser": "^4.2.0" - }, - "bin": { - "autoprefixer": "bin/autoprefixer" - }, "engines": { - "node": "^10 || ^12 || >=14" + "node": ">=10" }, - "peerDependencies": { - "postcss": "^8.1.0" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/available-typed-arrays": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz", - "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==", + "node_modules/exit": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", + "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", "dev": true, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">= 0.8.0" } }, - "node_modules/babel-jest": { + "node_modules/expect": { "version": "27.5.1", - "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-27.5.1.tgz", - "integrity": "sha512-cdQ5dXjGRd0IBRATiQ4mZGlGlRE8kJpjPOixdNRdT+m3UcNqmYWN6rK6nvtXYfY3D76cb8s/O1Ss8ea24PIwcg==", + "resolved": "https://registry.npmjs.org/expect/-/expect-27.5.1.tgz", + "integrity": "sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw==", "dev": true, "dependencies": { - "@jest/transform": "^27.5.1", "@jest/types": "^27.5.1", - "@types/babel__core": "^7.1.14", - "babel-plugin-istanbul": "^6.1.1", - "babel-preset-jest": "^27.5.1", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "slash": "^3.0.0" + "jest-get-type": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1" }, "engines": { "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - }, - "peerDependencies": { - "@babel/core": "^7.8.0" } }, - "node_modules/babel-plugin-istanbul": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", - "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", + "node_modules/expect/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.0.0", - "@istanbuljs/load-nyc-config": "^1.0.0", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-instrument": "^5.0.4", - "test-exclude": "^6.0.0" + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" }, "engines": { - "node": ">=8" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/babel-plugin-jest-hoist": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.5.1.tgz", - "integrity": "sha512-50wCwD5EMNW4aRpOwtqzyZHIewTYNxLA4nhB+09d8BIssfNfzBRhkBIHiaPv1Si226TQSvp8gxAJm2iY2qs2hQ==", + "node_modules/expect/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", "dev": true, "dependencies": { - "@babel/template": "^7.3.3", - "@babel/types": "^7.3.3", - "@types/babel__core": "^7.0.0", - "@types/babel__traverse": "^7.0.6" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "@types/yargs-parser": "*" } }, - "node_modules/babel-preset-current-node-syntax": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz", - "integrity": "sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==", + "node_modules/external-editor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", + "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", "dev": true, "dependencies": { - "@babel/plugin-syntax-async-generators": "^7.8.4", - "@babel/plugin-syntax-bigint": "^7.8.3", - "@babel/plugin-syntax-class-properties": "^7.8.3", - "@babel/plugin-syntax-import-meta": "^7.8.3", - "@babel/plugin-syntax-json-strings": "^7.8.3", - "@babel/plugin-syntax-logical-assignment-operators": "^7.8.3", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", - "@babel/plugin-syntax-numeric-separator": "^7.8.3", - "@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-top-level-await": "^7.8.3" + "chardet": "^0.7.0", + "iconv-lite": "^0.4.24", + "tmp": "^0.0.33" }, - "peerDependencies": { - "@babel/core": "^7.0.0" + "engines": { + "node": ">=4" } }, - "node_modules/babel-preset-jest": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-27.5.1.tgz", - "integrity": "sha512-Nptf2FzlPCWYuJg41HBqXVT8ym6bXOevuCTbhxlUpjwtysGaIWFvDEjp4y+G7fl13FgOdjs7P/DmErqH7da0Ag==", + "node_modules/extract-zip": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-2.0.1.tgz", + "integrity": "sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg==", "dev": true, "dependencies": { - "babel-plugin-jest-hoist": "^27.5.1", - "babel-preset-current-node-syntax": "^1.0.0" + "debug": "^4.1.1", + "get-stream": "^5.1.0", + "yauzl": "^2.10.0" + }, + "bin": { + "extract-zip": "cli.js" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">= 10.17.0" }, - "peerDependencies": { - "@babel/core": "^7.0.0" + "optionalDependencies": { + "@types/yauzl": "^2.9.1" } }, - "node_modules/balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "node_modules/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==" + }, + "node_modules/fast-diff": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.2.0.tgz", + "integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==", "dev": true }, - "node_modules/base64-arraybuffer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-1.0.2.tgz", - "integrity": "sha512-I3yl4r9QB5ZRY3XuJVEPfc2XhZO6YweFPI+UovAzn+8/hb3oJ6lnysaFcjVpkCPfVWFUDvoZ8kmVDP7WyRtYtQ==", - "optional": true, + "node_modules/fast-fifo": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/fast-fifo/-/fast-fifo-1.3.0.tgz", + "integrity": "sha512-IgfweLvEpwyA4WgiQe9Nx6VV2QkML2NkvZnk1oKnIzXgXdWxuhF7zw4DvLTPZJn6PIUneiAXPF24QmoEqHTjyw==", + "dev": true + }, + "node_modules/fast-glob": { + "version": "3.2.12", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz", + "integrity": "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==", + "dev": true, + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + }, "engines": { - "node": ">= 0.6.0" + "node": ">=8.6.0" } }, - "node_modules/base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "node_modules/fast-glob/node_modules/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, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } }, - "node_modules/before-after-hook": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/before-after-hook/-/before-after-hook-2.2.3.tgz", - "integrity": "sha512-NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ==", + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", "dev": true }, - "node_modules/binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "node_modules/fast-xml-parser": { + "version": "3.21.1", + "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-3.21.1.tgz", + "integrity": "sha512-FTFVjYoBOZTJekiUsawGsSYV9QL0A+zDYCRj7y34IO6Jg+2IMYEtQa+bbictpdpV8dHxXywqU7C0gRDEOFtBFg==", + "dependencies": { + "strnum": "^1.0.4" + }, + "bin": { + "xml2js": "cli.js" + }, + "funding": { + "type": "paypal", + "url": "https://paypal.me/naturalintelligence" + } + }, + "node_modules/fastq": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", + "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", "dev": true, - "engines": { - "node": ">=8" + "dependencies": { + "reusify": "^1.0.4" } }, - "node_modules/bl": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", - "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", + "node_modules/fb-watchman": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz", + "integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==", "dev": true, "dependencies": { - "buffer": "^5.5.0", - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" + "bser": "2.1.1" } }, - "node_modules/bl/node_modules/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==", + "node_modules/fd-slicer": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", + "integrity": "sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==", "dev": true, "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" + "pend": "~1.2.0" } }, - "node_modules/boxen": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/boxen/-/boxen-5.1.2.tgz", - "integrity": "sha512-9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ==", + "node_modules/fflate": { + "version": "0.4.8", + "resolved": "https://registry.npmjs.org/fflate/-/fflate-0.4.8.tgz", + "integrity": "sha512-FJqqoDBR00Mdj9ppamLa/Y7vxm+PRmNWA67N846RvsoYVMKB4q3y/de5PA7gUmRMYK/8CMz2GDZQmCRN1wBcWA==" + }, + "node_modules/figures": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", + "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", "dev": true, "dependencies": { - "ansi-align": "^3.0.0", - "camelcase": "^6.2.0", - "chalk": "^4.1.0", - "cli-boxes": "^2.2.1", - "string-width": "^4.2.2", - "type-fest": "^0.20.2", - "widest-line": "^3.1.0", - "wrap-ansi": "^7.0.0" + "escape-string-regexp": "^1.0.5" }, "engines": { - "node": ">=10" + "node": ">=8" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/boxen/node_modules/camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "node_modules/figures/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", "dev": true, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=0.8.0" } }, - "node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "node_modules/file-entry-cache": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", + "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", "dev": true, "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" + "flat-cache": "^3.0.4" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" } }, - "node_modules/braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", "dev": true, "dependencies": { - "fill-range": "^7.0.1" + "to-regex-range": "^5.0.1" }, "engines": { "node": ">=8" } }, - "node_modules/browser-process-hrtime": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz", - "integrity": "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==", - "dev": true - }, - "node_modules/browserslist": { - "version": "4.21.5", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.5.tgz", - "integrity": "sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w==", + "node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - } - ], "dependencies": { - "caniuse-lite": "^1.0.30001449", - "electron-to-chromium": "^1.4.284", - "node-releases": "^2.0.8", - "update-browserslist-db": "^1.0.10" + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" }, - "bin": { - "browserslist": "cli.js" + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/flat-cache": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", + "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", + "dev": true, + "dependencies": { + "flatted": "^3.1.0", + "rimraf": "^3.0.2" }, "engines": { - "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + "node": "^10.12.0 || >=12.0.0" } }, - "node_modules/bser": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz", - "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==", - "dev": true, - "dependencies": { - "node-int64": "^0.4.0" - } + "node_modules/flatted": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", + "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==", + "dev": true }, - "node_modules/btoa": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/btoa/-/btoa-1.2.1.tgz", - "integrity": "sha512-SB4/MIGlsiVkMcHmT+pSmIPoNDoHg+7cMzmt3Uxt628MTz2487DKSqK/fuhFBrkuqrYv5UCEnACpF4dTFNKc/g==", - "bin": { - "btoa": "bin/btoa.js" - }, - "engines": { - "node": ">= 0.4.0" + "node_modules/focus-trap": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/focus-trap/-/focus-trap-7.2.0.tgz", + "integrity": "sha512-v4wY6HDDYvzkBy4735kW5BUEuw6Yz9ABqMYLuTNbzAFPcBOGiGHwwcNVMvUz4G0kgSYh13wa/7TG3XwTeT4O/A==", + "dependencies": { + "tabbable": "^6.0.1" } }, - "node_modules/buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "node_modules/for-each": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", + "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" + "is-callable": "^1.1.3" } }, - "node_modules/buffer-crc32": { - "version": "0.2.13", - "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", - "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==", + "node_modules/form-data": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz", + "integrity": "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==", "dev": true, + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + }, "engines": { - "node": "*" + "node": ">= 6" } }, - "node_modules/buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", - "dev": true + "node_modules/form-request-submit-polyfill": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/form-request-submit-polyfill/-/form-request-submit-polyfill-2.0.0.tgz", + "integrity": "sha512-p0+M92y2gFnP0AuuL8VJ0GYVzAT0bYp3GsSkmPFhvUopdnfDLP/9xplQTBBc4w8qOjKRzdK7GaFcdL9IhlXdTQ==" }, - "node_modules/builtin-modules": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.3.0.tgz", - "integrity": "sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==", + "node_modules/fraction.js": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz", + "integrity": "sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==", "dev": true, "engines": { - "node": ">=6" + "node": "*" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "type": "patreon", + "url": "https://www.patreon.com/infusion" } }, - "node_modules/cacheable-request": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.1.0.tgz", - "integrity": "sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==", + "node_modules/fs-extra": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", + "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", "dev": true, "dependencies": { - "clone-response": "^1.0.2", - "get-stream": "^5.1.0", - "http-cache-semantics": "^4.0.0", - "keyv": "^3.0.0", - "lowercase-keys": "^2.0.0", - "normalize-url": "^4.1.0", - "responselike": "^1.0.2" + "graceful-fs": "^4.2.0", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" }, "engines": { - "node": ">=8" + "node": ">=6 <7 || >=8" } }, - "node_modules/cacheable-request/node_modules/lowercase-keys": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", - "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==", + "node_modules/fs-extra/node_modules/universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", "dev": true, "engines": { - "node": ">=8" + "node": ">= 4.0.0" } }, - "node_modules/call-bind": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", - "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true + }, + "node_modules/fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "dev": true + }, + "node_modules/function.prototype.name": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.5.tgz", + "integrity": "sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==", "dev": true, "dependencies": { - "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.2" + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.19.0", + "functions-have-names": "^1.2.2" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "node_modules/functions-have-names": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", "dev": true, - "engines": { - "node": ">=6" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "node_modules/gauge": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz", + "integrity": "sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg==", "dev": true, + "dependencies": { + "aproba": "^1.0.3 || ^2.0.0", + "color-support": "^1.1.3", + "console-control-strings": "^1.1.0", + "has-unicode": "^2.0.1", + "signal-exit": "^3.0.7", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1", + "wide-align": "^1.1.5" + }, "engines": { - "node": ">=6" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/camelcase-css": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz", - "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==", + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", "dev": true, "engines": { - "node": ">= 6" + "node": ">=6.9.0" } }, - "node_modules/caniuse-lite": { - "version": "1.0.30001449", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001449.tgz", - "integrity": "sha512-CPB+UL9XMT/Av+pJxCKGhdx+yg1hzplvFJQlJ2n68PyQGMz9L/E2zCyLdOL8uasbouTUgnPl+y0tccI/se+BEw==", + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/caniuse-lite" - } - ] + "engines": { + "node": "6.* || 8.* || >= 10.*" + } }, - "node_modules/canvg": { - "version": "3.0.10", - "resolved": "https://registry.npmjs.org/canvg/-/canvg-3.0.10.tgz", - "integrity": "sha512-qwR2FRNO9NlzTeKIPIKpnTY6fqwuYSequ8Ru8c0YkYU7U0oW+hLUvWadLvAu1Rl72OMNiFhoLu4f8eUjQ7l/+Q==", - "optional": true, + "node_modules/get-intrinsic": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.0.tgz", + "integrity": "sha512-L049y6nFOuom5wGyRc3/gdTLO94dySVKRACj1RmJZBQXlbTMhtNIgkWkUHq+jYmZvKf14EW1EoJnnjbmoHij0Q==", + "dev": true, "dependencies": { - "@babel/runtime": "^7.12.5", - "@types/raf": "^3.4.0", - "core-js": "^3.8.3", - "raf": "^3.4.1", - "regenerator-runtime": "^0.13.7", - "rgbcolor": "^1.0.1", - "stackblur-canvas": "^2.0.0", - "svg-pathdata": "^6.0.3" + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.3" }, - "engines": { - "node": ">=10.0.0" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/canvg/node_modules/core-js": { - "version": "3.27.2", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.27.2.tgz", - "integrity": "sha512-9ashVQskuh5AZEZ1JdQWp1GqSoC1e1G87MzRqg2gIfVAQ7Qn9K+uFj8EcniUFA4P2NLZfV+TOlX1SzoKfo+s7w==", - "hasInstallScript": true, - "optional": true, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/core-js" + "node_modules/get-package-type": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", + "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", + "dev": true, + "engines": { + "node": ">=8.0.0" } }, - "node_modules/canvg/node_modules/regenerator-runtime": { - "version": "0.13.11", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", - "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==", - "optional": true - }, - "node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "node_modules/get-stream": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", "dev": true, "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "pump": "^3.0.0" }, "engines": { - "node": ">=10" + "node": ">=8" }, "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/changelog-parser": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/changelog-parser/-/changelog-parser-2.8.1.tgz", - "integrity": "sha512-tNUYFRCEeWTXmwLqoNtOEzx9wcytg72MmGQqsEs14ClYwIDln7sbQw7FJj/dulXgSlsxkemc9gpPQhZYZx1TPw==", + "node_modules/get-symbol-description": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", + "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", "dev": true, "dependencies": { - "line-reader": "^0.2.4", - "remove-markdown": "^0.2.2" + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.1" }, - "bin": { - "changelog-parser": "bin/cli.js" + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/char-regex": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz", - "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==", + "node_modules/get-uri": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-uri/-/get-uri-6.0.1.tgz", + "integrity": "sha512-7ZqONUVqaabogsYNWlYj0t3YZaL6dhuEueZXGF+/YVmf6dHmaFg8/6psJKqhx9QykIDKzpGcy2cn4oV4YC7V/Q==", "dev": true, + "dependencies": { + "basic-ftp": "^5.0.2", + "data-uri-to-buffer": "^5.0.1", + "debug": "^4.3.4", + "fs-extra": "^8.1.0" + }, "engines": { - "node": ">=10" + "node": ">= 14" } }, - "node_modules/chardet": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", - "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", - "dev": true - }, - "node_modules/chokidar": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "node_modules/gh-release": { + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/gh-release/-/gh-release-6.0.4.tgz", + "integrity": "sha512-6djoVxTUpbw9GZ/mveNjp5j/IDPY3KACscSlmNwwfkR+EQCNTSgGRywb0TRaQdA36RnwtcNOWEaLwB5ez7jSRg==", "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - ], "dependencies": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" + "@octokit/rest": "^18.0.9", + "changelog-parser": "^2.0.0", + "deep-extend": "^0.6.0", + "gauge": "^v4.0.4", + "gh-release-assets": "^2.0.0", + "ghauth": "^5.0.0", + "github-url-to-object": "^4.0.4", + "inquirer": "^8.0.0", + "shelljs": "^0.8.4", + "update-notifier": "^5.0.0", + "yargs": "^17.0.0" }, - "engines": { - "node": ">= 8.10.0" + "bin": { + "gh-release": "bin/cli.js" }, - "optionalDependencies": { - "fsevents": "~2.3.2" + "engines": { + "node": ">=12" } }, - "node_modules/chokidar/node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "node_modules/gh-release-assets": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/gh-release-assets/-/gh-release-assets-2.0.1.tgz", + "integrity": "sha512-KrhmYIA/5oQdfEl9vQ2yF6DOM2QOAjpCOsNKFkc7X3dOTefSixttW0ysot3noQ+3XL8NdkdC7z+mqfePzIwexg==", "dev": true, "dependencies": { - "is-glob": "^4.0.1" + "async": "^3.2.0", + "mime": "^3.0.0", + "progress-stream": "^2.0.0", + "pumpify": "^2.0.1", + "simple-get": "^4.0.0", + "util-extend": "^1.0.1" }, "engines": { - "node": ">= 6" + "node": ">=12" } }, - "node_modules/chownr": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", - "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==", - "dev": true - }, - "node_modules/ci-info": { - "version": "3.7.1", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.7.1.tgz", - "integrity": "sha512-4jYS4MOAaCIStSRwiuxc4B8MYhIe676yO1sYGzARnjXkWpmzZMMYxY6zu8WYWDhSuth5zhrQ1rhNSibyyvv4/w==", + "node_modules/ghauth": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ghauth/-/ghauth-5.0.1.tgz", + "integrity": "sha512-WzgL12dczZX/VrvVTkoFAJLU3pb6PDT+TS60kLlaU51fuNEv6VoYpRXlnwIjkMIhqWead9+dLBEzj0E1ghYMkg==", "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/sibiraj-s" - } - ], - "engines": { - "node": ">=8" + "dependencies": { + "application-config": "^2.0.0", + "node-fetch": "^2.6.0", + "ora": "^4.0.5", + "read": "^1.0.7" } }, - "node_modules/cjs-module-lexer": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.2.2.tgz", - "integrity": "sha512-cOU9usZw8/dXIXKtwa8pM0OTJQuJkxMN6w30csNRUerHfeQ5R6U3kkU/FtJeIf3M202OHfY2U8ccInBG7/xogA==", - "dev": true + "node_modules/github-url-to-object": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/github-url-to-object/-/github-url-to-object-4.0.6.tgz", + "integrity": "sha512-NaqbYHMUAlPcmWFdrAB7bcxrNIiiJWJe8s/2+iOc9vlcHlwHqSGrPk+Yi3nu6ebTwgsZEa7igz+NH2vEq3gYwQ==", + "dev": true, + "dependencies": { + "is-url": "^1.1.0" + } }, - "node_modules/clean-regexp": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/clean-regexp/-/clean-regexp-1.0.0.tgz", - "integrity": "sha512-GfisEZEJvzKrmGWkvfhgzcz/BllN1USeqD2V6tg14OAOgaCD2Z/PUEuxnAZ/nPvmaHRG7a8y77p1T/IRQ4D1Hw==", + "node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", "dev": true, "dependencies": { - "escape-string-regexp": "^1.0.5" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" }, "engines": { - "node": ">=4" + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/clean-regexp/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", "dev": true, + "dependencies": { + "is-glob": "^4.0.3" + }, "engines": { - "node": ">=0.8.0" + "node": ">=10.13.0" } }, - "node_modules/cli-boxes": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-2.2.1.tgz", - "integrity": "sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==", + "node_modules/global-dirs": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-3.0.1.tgz", + "integrity": "sha512-NBcGGFbBA9s1VzD41QXDG+3++t9Mn5t1FpLdhESY6oKY4gYTFpX4wO3sqGUa0Srjtbfj3szX0RnemmrVRUdULA==", "dev": true, + "dependencies": { + "ini": "2.0.0" + }, "engines": { - "node": ">=6" + "node": ">=10" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/cli-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", - "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "node_modules/globals": { + "version": "13.20.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", + "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", "dev": true, "dependencies": { - "restore-cursor": "^3.1.0" + "type-fest": "^0.20.2" }, "engines": { "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/cli-spinners": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.7.0.tgz", - "integrity": "sha512-qu3pN8Y3qHNgE2AFweciB1IfMnmZ/fsNTEE+NOFjmGB2F/7rLhnhzppvpCnN4FovtP26k8lHyy9ptEbNwWFLzw==", + "node_modules/globalthis": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz", + "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==", "dev": true, + "dependencies": { + "define-properties": "^1.1.3" + }, "engines": { - "node": ">=6" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/cli-width": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", - "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", + "node_modules/globby": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", "dev": true, + "dependencies": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" + }, "engines": { - "node": ">= 10" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/gopd": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", + "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.1.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/cliui": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", - "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "node_modules/got": { + "version": "9.6.0", + "resolved": "https://registry.npmjs.org/got/-/got-9.6.0.tgz", + "integrity": "sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==", "dev": true, "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.1", - "wrap-ansi": "^7.0.0" + "@sindresorhus/is": "^0.14.0", + "@szmarczak/http-timer": "^1.1.2", + "cacheable-request": "^6.0.0", + "decompress-response": "^3.3.0", + "duplexer3": "^0.1.4", + "get-stream": "^4.1.0", + "lowercase-keys": "^1.0.1", + "mimic-response": "^1.0.1", + "p-cancelable": "^1.0.0", + "to-readable-stream": "^1.0.0", + "url-parse-lax": "^3.0.0" }, "engines": { - "node": ">=12" + "node": ">=8.6" } }, - "node_modules/clone": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", - "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", + "node_modules/got/node_modules/decompress-response": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", + "integrity": "sha512-BzRPQuY1ip+qDonAOz42gRm/pg9F768C+npV/4JOsxRC2sq+Rlk+Q4ZCAsOhnIaMrgarILY+RMUIvMmmX1qAEA==", "dev": true, + "dependencies": { + "mimic-response": "^1.0.0" + }, "engines": { - "node": ">=0.8" + "node": ">=4" } }, - "node_modules/clone-response": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.3.tgz", - "integrity": "sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==", + "node_modules/got/node_modules/get-stream": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", "dev": true, "dependencies": { - "mimic-response": "^1.0.0" + "pump": "^3.0.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": ">=6" } }, - "node_modules/clone-response/node_modules/mimic-response": { + "node_modules/got/node_modules/mimic-response": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", @@ -3264,332 +7254,383 @@ "node": ">=4" } }, - "node_modules/co": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", - "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==", - "dev": true, - "engines": { - "iojs": ">= 1.0.0", - "node": ">= 0.12.0" - } + "node_modules/graceful-fs": { + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", + "dev": true }, - "node_modules/collect-v8-coverage": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz", - "integrity": "sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg==", + "node_modules/grapheme-splitter": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz", + "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==", "dev": true }, - "node_modules/color": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/color/-/color-4.2.3.tgz", - "integrity": "sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==", - "peer": true, + "node_modules/has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dev": true, "dependencies": { - "color-convert": "^2.0.1", - "color-string": "^1.9.0" + "function-bind": "^1.1.1" }, "engines": { - "node": ">=12.5.0" + "node": ">= 0.4.0" } }, - "node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" + "node_modules/has-bigints": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", + "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } }, - "node_modules/color-string": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz", - "integrity": "sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==", - "peer": true, + "node_modules/has-property-descriptors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", + "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", + "dev": true, "dependencies": { - "color-name": "^1.0.0", - "simple-swizzle": "^0.2.2" + "get-intrinsic": "^1.1.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/color-support": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", - "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", + "node_modules/has-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz", + "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==", "dev": true, - "bin": { - "color-support": "bin.js" + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "node_modules/has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-tostringtag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", + "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", "dev": true, "dependencies": { - "delayed-stream": "~1.0.0" + "has-symbols": "^1.0.2" }, "engines": { - "node": ">= 0.8" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "node_modules/has-unicode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==", "dev": true }, - "node_modules/composed-offset-position": { - "version": "0.0.4", - "resolved": "https://registry.npmjs.org/composed-offset-position/-/composed-offset-position-0.0.4.tgz", - "integrity": "sha512-vMlvu1RuNegVE0YsCDSV/X4X10j56mq7PCIyOKK74FxkXzGLwhOUmdkJLSdOBOMwWycobGUMgft2lp+YgTe8hw==", - "peer": true + "node_modules/has-yarn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/has-yarn/-/has-yarn-2.1.0.tgz", + "integrity": "sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw==", + "dev": true, + "engines": { + "node": ">=8" + } }, - "node_modules/concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "node_modules/hosted-git-info": { + "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 }, - "node_modules/configstore": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/configstore/-/configstore-5.0.1.tgz", - "integrity": "sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==", + "node_modules/html-encoding-sniffer": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz", + "integrity": "sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ==", "dev": true, "dependencies": { - "dot-prop": "^5.2.0", - "graceful-fs": "^4.1.2", - "make-dir": "^3.0.0", - "unique-string": "^2.0.0", - "write-file-atomic": "^3.0.0", - "xdg-basedir": "^4.0.0" + "whatwg-encoding": "^1.0.5" }, "engines": { - "node": ">=8" + "node": ">=10" } }, - "node_modules/console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==", - "dev": true - }, - "node_modules/convert-source-map": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", - "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", - "dev": true - }, - "node_modules/core-util-is": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", - "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", + "node_modules/html-escaper": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", "dev": true }, - "node_modules/cosmiconfig": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", - "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==", - "dev": true, + "node_modules/html2canvas": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/html2canvas/-/html2canvas-1.4.1.tgz", + "integrity": "sha512-fPU6BHNpsyIhr8yyMpTLLxAbkaK8ArIBcmZIRiBLiDhjeqvXolaEmDGmELFuX9I4xDcaKKcJl+TKZLqruBbmWA==", + "optional": true, "dependencies": { - "@types/parse-json": "^4.0.0", - "import-fresh": "^3.2.1", - "parse-json": "^5.0.0", - "path-type": "^4.0.0", - "yaml": "^1.10.0" + "css-line-break": "^2.1.0", + "text-segmentation": "^1.0.3" }, "engines": { - "node": ">=10" + "node": ">=8.0.0" } }, - "node_modules/create-require": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", - "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", + "node_modules/http-cache-semantics": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", + "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==", "dev": true }, - "node_modules/cross-fetch": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.1.5.tgz", - "integrity": "sha512-lvb1SBsI0Z7GDwmuid+mU3kWVBwTVUbe7S0H52yaaAdQOXq2YktTCZdlAcNKFzE6QtRz0snpw9bNiPeOIkkQvw==", + "node_modules/http-proxy-agent": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.0.tgz", + "integrity": "sha512-+ZT+iBxVUQ1asugqnD6oWoRiS25AkjNfG085dKJGtGxkdwLQrMKU5wJr2bOOFAXzKcTuqq+7fZlTMgG3SRfIYQ==", "dev": true, "dependencies": { - "node-fetch": "2.6.7" + "agent-base": "^7.1.0", + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" } }, - "node_modules/cross-fetch/node_modules/node-fetch": { - "version": "2.6.7", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", - "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", + "node_modules/https-proxy-agent": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.1.tgz", + "integrity": "sha512-Eun8zV0kcYS1g19r78osiQLEFIRspRUDd9tIfBCTBPBeMieF/EsJNL8VI3xOIdYRDEkjQnqOYPsZ2DsWsVsFwQ==", "dev": true, "dependencies": { - "whatwg-url": "^5.0.0" + "agent-base": "^7.0.2", + "debug": "4" }, "engines": { - "node": "4.x || >=6.0.0" - }, - "peerDependencies": { - "encoding": "^0.1.0" - }, - "peerDependenciesMeta": { - "encoding": { - "optional": true - } + "node": ">= 14" } }, - "node_modules/cross-fetch/node_modules/tr46": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", - "dev": true - }, - "node_modules/cross-fetch/node_modules/webidl-conversions": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", - "dev": true - }, - "node_modules/cross-fetch/node_modules/whatwg-url": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", - "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "node_modules/human-signals": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", + "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", "dev": true, - "dependencies": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" + "engines": { + "node": ">=10.17.0" } }, - "node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", "dev": true, "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" + "safer-buffer": ">= 2.1.2 < 3" }, "engines": { - "node": ">= 8" + "node": ">=0.10.0" } }, - "node_modules/crypto-random-string": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz", - "integrity": "sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==", + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/ignore": { + "version": "5.2.4", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", + "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==", "dev": true, "engines": { - "node": ">=8" + "node": ">= 4" } }, - "node_modules/css-line-break": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/css-line-break/-/css-line-break-2.1.0.tgz", - "integrity": "sha512-FHcKFCZcAha3LwfVBhCQbW2nCNbkZXn7KVUJcsT5/P8YmfsVja0FMPJr0B903j/E69HUphKiV9iQArX8SDYA4w==", - "optional": true, + "node_modules/immediate": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz", + "integrity": "sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ==", + "dev": true + }, + "node_modules/import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dev": true, "dependencies": { - "utrie": "^1.0.2" + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/cssesc": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", - "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "node_modules/import-lazy": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", + "integrity": "sha512-m7ZEHgtw69qOGw+jwxXkHlrlIPdTGkyh66zXZ1ajZbxkDBNjSY/LGbmjc7h0s2ELsUDTAhFr55TrPSSqJGPG0A==", "dev": true, - "bin": { - "cssesc": "bin/cssesc" - }, "engines": { "node": ">=4" } }, - "node_modules/cssfilter": { - "version": "0.0.10", - "resolved": "https://registry.npmjs.org/cssfilter/-/cssfilter-0.0.10.tgz", - "integrity": "sha512-FAaLDaplstoRsDR8XGYH51znUN0UY7nMc6Z9/fvE8EXGwvJE9hu7W2vHwx1+bd6gCYnln9nLbzxFTrcO9YQDZw==", - "dev": true - }, - "node_modules/cssom": { - "version": "0.4.4", - "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.4.4.tgz", - "integrity": "sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==", - "dev": true - }, - "node_modules/cssstyle": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-2.3.0.tgz", - "integrity": "sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==", + "node_modules/import-local": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", + "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==", "dev": true, "dependencies": { - "cssom": "~0.3.6" + "pkg-dir": "^4.2.0", + "resolve-cwd": "^3.0.0" + }, + "bin": { + "import-local-fixture": "fixtures/cli.js" + }, + "engines": { + "node": ">=8" }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true, + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/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, "engines": { "node": ">=8" } }, - "node_modules/cssstyle/node_modules/cssom": { - "version": "0.3.8", - "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz", - "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==", + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "dev": true, + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", "dev": true }, - "node_modules/data-urls": { + "node_modules/ini": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-2.0.0.tgz", - "integrity": "sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ==", + "resolved": "https://registry.npmjs.org/ini/-/ini-2.0.0.tgz", + "integrity": "sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==", "dev": true, - "dependencies": { - "abab": "^2.0.3", - "whatwg-mimetype": "^2.3.0", - "whatwg-url": "^8.0.0" - }, "engines": { "node": ">=10" } }, - "node_modules/dayjs": { - "version": "1.11.8", - "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.8.tgz", - "integrity": "sha512-LcgxzFoWMEPO7ggRv1Y2N31hUf2R0Vj7fuy/m+Bg1K8rr+KAs1AEy4y9jd5DXe8pbHgX+srkHNS7TH6Q6ZhYeQ==", - "peer": true + "node_modules/inquirer": { + "version": "8.2.5", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.2.5.tgz", + "integrity": "sha512-QAgPDQMEgrDssk1XiwwHoOGYF9BAbUcc1+j+FhEvaOt8/cKRqyLn0U5qA6F74fGhTMGxf92pOvPBeh29jQJDTQ==", + "dev": true, + "dependencies": { + "ansi-escapes": "^4.2.1", + "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.4.1", + "run-async": "^2.4.0", + "rxjs": "^7.5.5", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0", + "through": "^2.3.6", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12.0.0" + } }, - "node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "node_modules/inquirer/node_modules/log-symbols": { + "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, "dependencies": { - "ms": "2.1.2" + "chalk": "^4.1.0", + "is-unicode-supported": "^0.1.0" }, "engines": { - "node": ">=6.0" + "node": ">=10" }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/decimal.js": { - "version": "10.4.3", - "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz", - "integrity": "sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==", - "dev": true - }, - "node_modules/decompress-response": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz", - "integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==", + "node_modules/inquirer/node_modules/ora": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz", + "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==", "dev": true, "dependencies": { - "mimic-response": "^3.1.0" + "bl": "^4.1.0", + "chalk": "^4.1.0", + "cli-cursor": "^3.1.0", + "cli-spinners": "^2.5.0", + "is-interactive": "^1.0.0", + "is-unicode-supported": "^0.1.0", + "log-symbols": "^4.1.0", + "strip-ansi": "^6.0.0", + "wcwidth": "^1.0.1" }, "engines": { "node": ">=10" @@ -3598,375 +7639,383 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/dedent": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz", - "integrity": "sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==", - "dev": true - }, - "node_modules/deep-extend": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", - "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", + "node_modules/internal-slot": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.4.tgz", + "integrity": "sha512-tA8URYccNzMo94s5MQZgH8NB/XTa6HsOo0MLfXTKKEnHVVdegzaQoFZ7Jp44bdvLvY2waT5dc+j5ICEswhi7UQ==", "dev": true, + "dependencies": { + "get-intrinsic": "^1.1.3", + "has": "^1.0.3", + "side-channel": "^1.0.4" + }, "engines": { - "node": ">=4.0.0" + "node": ">= 0.4" } }, - "node_modules/deep-is": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", - "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", - "dev": true - }, - "node_modules/deepmerge": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", - "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", + "node_modules/interpret": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz", + "integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==", "dev": true, "engines": { - "node": ">=0.10.0" + "node": ">= 0.10" } }, - "node_modules/defaults": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.4.tgz", - "integrity": "sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==", + "node_modules/ip": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.8.tgz", + "integrity": "sha512-PuExPYUiu6qMBQb4l06ecm6T6ujzhmh+MeJcW9wa89PoAz5pvd4zPgN5WJV104mb6S2T1AwNIAaB70JNrLQWhg==", + "dev": true + }, + "node_modules/is-array-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.1.tgz", + "integrity": "sha512-ASfLknmY8Xa2XtB4wmbz13Wu202baeA18cJBCeCy0wXUHZF0IPyVEXqKEcd+t2fNSLLL1vC6k7lxZEojNbISXQ==", "dev": true, "dependencies": { - "clone": "^1.0.2" + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.3", + "is-typed-array": "^1.1.10" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/defer-to-connect": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.1.3.tgz", - "integrity": "sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==", + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", "dev": true }, - "node_modules/define-properties": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz", - "integrity": "sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==", + "node_modules/is-bigint": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", + "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", "dev": true, "dependencies": { - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" + "has-bigints": "^1.0.1" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/defined": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.1.tgz", - "integrity": "sha512-hsBd2qSVCRE+5PmNdHt1uzyrFu5d3RwmFDKzyNZMFq/EwDNJF7Ee5+D5oEKF0hU6LhtoUF1macFvOe4AskQC1Q==", + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" } }, - "node_modules/delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "node_modules/is-boolean-object": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", + "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, "engines": { - "node": ">=0.4.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/deprecation": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/deprecation/-/deprecation-2.3.1.tgz", - "integrity": "sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ==", - "dev": true - }, - "node_modules/detect-indent": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-6.1.0.tgz", - "integrity": "sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA==", + "node_modules/is-builtin-module": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-3.2.0.tgz", + "integrity": "sha512-phDA4oSGt7vl1n5tJvTWooWWAsXLY+2xCnxNqvKhGEzujg+A43wPlPOyDg3C8XQHN+6k/JTQWJ/j0dQh/qr+Hw==", "dev": true, + "dependencies": { + "builtin-modules": "^3.3.0" + }, "engines": { - "node": ">=8" + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/detect-newline": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz", - "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==", + "node_modules/is-callable": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", "dev": true, "engines": { - "node": ">=8" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/detective": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/detective/-/detective-5.2.1.tgz", - "integrity": "sha512-v9XE1zRnz1wRtgurGu0Bs8uHKFSTdteYZNbIPFVhUZ39L/S79ppMpdmVOZAnoz1jfEFodc48n6MX483Xo3t1yw==", + "node_modules/is-ci": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", + "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", "dev": true, "dependencies": { - "acorn-node": "^1.8.2", - "defined": "^1.0.0", - "minimist": "^1.2.6" + "ci-info": "^2.0.0" }, "bin": { - "detective": "bin/detective.js" - }, - "engines": { - "node": ">=0.8.0" + "is-ci": "bin.js" } }, - "node_modules/devtools-protocol": { - "version": "0.0.981744", - "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.981744.tgz", - "integrity": "sha512-0cuGS8+jhR67Fy7qG3i3Pc7Aw494sb9yG9QgpG97SFVWwolgYjlhJg7n+UaHxOQT30d1TYu/EYe9k01ivLErIg==", + "node_modules/is-ci/node_modules/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 }, - "node_modules/didyoumean": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz", - "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==", - "dev": true + "node_modules/is-core-module": { + "version": "2.13.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.0.tgz", + "integrity": "sha512-Z7dk6Qo8pOCp3l4tsX2C5ZVas4V+UxwQodwZhLopL91TX8UyyHEXafPcyoeeWuLrwzHcr3igO78wNLwHJHsMCQ==", + "dev": true, + "dependencies": { + "has": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "node_modules/diff": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", - "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", + "node_modules/is-date-object": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", "dev": true, + "dependencies": { + "has-tostringtag": "^1.0.0" + }, "engines": { - "node": ">=0.3.1" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/diff-sequences": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.5.1.tgz", - "integrity": "sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==", + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", "dev": true, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=0.10.0" } }, - "node_modules/dir-glob": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", - "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "node_modules/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", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true, - "dependencies": { - "path-type": "^4.0.0" - }, "engines": { "node": ">=8" } }, - "node_modules/dlv": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz", - "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==", - "dev": true - }, - "node_modules/doctrine": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "node_modules/is-generator-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", + "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", "dev": true, "dependencies": { - "esutils": "^2.0.2" + "is-extglob": "^2.1.1" }, "engines": { - "node": ">=6.0.0" + "node": ">=0.10.0" } }, - "node_modules/domexception": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/domexception/-/domexception-2.0.1.tgz", - "integrity": "sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg==", + "node_modules/is-installed-globally": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.4.0.tgz", + "integrity": "sha512-iwGqO3J21aaSkC7jWnHP/difazwS7SFeIqxv6wEtLU8Y5KlzFTjyqcSIT0d8s4+dDhKytsk9PJZ2BkS5eZwQRQ==", "dev": true, "dependencies": { - "webidl-conversions": "^5.0.0" + "global-dirs": "^3.0.0", + "is-path-inside": "^3.0.2" }, "engines": { - "node": ">=8" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/domexception/node_modules/webidl-conversions": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-5.0.0.tgz", - "integrity": "sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==", + "node_modules/is-interactive": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz", + "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==", "dev": true, "engines": { "node": ">=8" } }, - "node_modules/dompurify": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-2.4.3.tgz", - "integrity": "sha512-q6QaLcakcRjebxjg8/+NP+h0rPfatOgOzc46Fst9VAA3jF2ApfKBNKMzdP4DYTqtUMXSCd5pRS/8Po/OmoCHZQ==", - "optional": true - }, - "node_modules/dot-prop": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", - "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==", + "node_modules/is-negative-zero": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", + "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", "dev": true, - "dependencies": { - "is-obj": "^2.0.0" - }, "engines": { - "node": ">=8" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/dotenv": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-10.0.0.tgz", - "integrity": "sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q==", + "node_modules/is-npm": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-5.0.0.tgz", + "integrity": "sha512-WW/rQLOazUq+ST/bCAVBp/2oMERWLsR7OrKyt052dNDk4DHcDE0/7QSXITlmi+VBcV13DfIbysG3tZJm5RfdBA==", "dev": true, "engines": { "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/duplexer3": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.5.tgz", - "integrity": "sha512-1A8za6ws41LQgv9HrE/66jyC5yuSjQ3L/KOpFtoBilsAK2iA2wuS5rTt1OCzIvtS2V7nVmedsUU+DGRcjBmOYA==", - "dev": true - }, - "node_modules/duplexify": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-4.1.2.tgz", - "integrity": "sha512-fz3OjcNCHmRP12MJoZMPglx8m4rrFP8rovnk4vT8Fs+aonZoCwGg10dSsQsfP/E62eZcPTMSMP6686fu9Qlqtw==", + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", "dev": true, - "dependencies": { - "end-of-stream": "^1.4.1", - "inherits": "^2.0.3", - "readable-stream": "^3.1.1", - "stream-shift": "^1.0.0" + "engines": { + "node": ">=0.12.0" } }, - "node_modules/duplexify/node_modules/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==", + "node_modules/is-number-object": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", + "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", "dev": true, "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" + "has-tostringtag": "^1.0.0" }, "engines": { - "node": ">= 6" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/electron-to-chromium": { - "version": "1.4.284", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.284.tgz", - "integrity": "sha512-M8WEXFuKXMYMVr45fo8mq0wUrrJHheiKZf6BArTKk9ZBYCKJEOU5H8cdWgDT+qCVZf7Na4lVUaZsA+h6uA9+PA==", - "dev": true + "node_modules/is-obj": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", + "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", + "dev": true, + "engines": { + "node": ">=8" + } }, - "node_modules/emittery": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.8.1.tgz", - "integrity": "sha512-uDfvUjVrfGJJhymx/kz6prltenw1u7WrCg1oa94zYY8xxVpLLUu045LAT0dhDZdXG58/EpPL/5kA180fQ/qudg==", + "node_modules/is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", "dev": true, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sindresorhus/emittery?sponsor=1" + "node": ">=8" } }, - "node_modules/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 + "node_modules/is-plain-obj": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz", + "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==", + "dev": true, + "engines": { + "node": ">=8" + } }, - "node_modules/encoding": { - "version": "0.1.13", - "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", - "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", + "node_modules/is-plain-object": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", + "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "iconv-lite": "^0.6.2" + "engines": { + "node": ">=0.10.0" } }, - "node_modules/encoding/node_modules/iconv-lite": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", - "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "node_modules/is-potential-custom-element-name": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz", + "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==", + "dev": true + }, + "node_modules/is-regex": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", "dev": true, - "optional": true, - "peer": true, "dependencies": { - "safer-buffer": ">= 2.1.2 < 3.0.0" + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" }, "engines": { - "node": ">=0.10.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/end-of-stream": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", - "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "node_modules/is-shared-array-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", + "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", "dev": true, "dependencies": { - "once": "^1.4.0" + "call-bind": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/error-ex": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", "dev": true, - "dependencies": { - "is-arrayish": "^0.2.1" + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/es-abstract": { - "version": "1.21.1", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.21.1.tgz", - "integrity": "sha512-QudMsPOz86xYz/1dG1OuGBKOELjCh99IIWHLzy5znUB6j8xG2yMA7bfTV86VSqKF+Y/H08vQPR+9jyXpuC6hfg==", + "node_modules/is-string": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", + "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", "dev": true, "dependencies": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "es-set-tostringtag": "^2.0.1", - "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", - "function.prototype.name": "^1.1.5", - "get-intrinsic": "^1.1.3", - "get-symbol-description": "^1.0.0", - "globalthis": "^1.0.3", - "gopd": "^1.0.1", - "has": "^1.0.3", - "has-property-descriptors": "^1.0.0", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3", - "internal-slot": "^1.0.4", - "is-array-buffer": "^3.0.1", - "is-callable": "^1.2.7", - "is-negative-zero": "^2.0.2", - "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.2", - "is-string": "^1.0.7", - "is-typed-array": "^1.1.10", - "is-weakref": "^1.0.2", - "object-inspect": "^1.12.2", - "object-keys": "^1.1.1", - "object.assign": "^4.1.4", - "regexp.prototype.flags": "^1.4.3", - "safe-regex-test": "^1.0.0", - "string.prototype.trimend": "^1.0.6", - "string.prototype.trimstart": "^1.0.6", - "typed-array-length": "^1.0.4", - "unbox-primitive": "^1.0.2", - "which-typed-array": "^1.1.9" + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-symbol": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", + "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", + "dev": true, + "dependencies": { + "has-symbols": "^1.0.2" }, "engines": { "node": ">= 0.4" @@ -3975,69 +8024,135 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/es-set-tostringtag": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.1.tgz", - "integrity": "sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==", + "node_modules/is-typed-array": { + "version": "1.1.10", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.10.tgz", + "integrity": "sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A==", "dev": true, "dependencies": { - "get-intrinsic": "^1.1.3", - "has": "^1.0.3", + "available-typed-arrays": "^1.0.5", + "call-bind": "^1.0.2", + "for-each": "^0.3.3", + "gopd": "^1.0.1", "has-tostringtag": "^1.0.0" }, "engines": { "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/es-shim-unscopables": { + "node_modules/is-typedarray": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.0.tgz", - "integrity": "sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==", + "dev": true + }, + "node_modules/is-unicode-supported": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", + "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", "dev": true, - "dependencies": { - "has": "^1.0.3" + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/es-to-primitive": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", - "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "node_modules/is-url": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/is-url/-/is-url-1.2.4.tgz", + "integrity": "sha512-ITvGim8FhRiYe4IQ5uHSkj7pVaPDrCTkNd3yq3cV7iZAcJdHTUMPMEHcqSOy9xZ9qFenQCvi+2wjH9a1nXqHww==", + "dev": true + }, + "node_modules/is-weakref": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", + "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", "dev": true, "dependencies": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" + "call-bind": "^1.0.2" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "node_modules/is-yarn-global": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/is-yarn-global/-/is-yarn-global-0.3.0.tgz", + "integrity": "sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw==", + "dev": true + }, + "node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "dev": true + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true + }, + "node_modules/istanbul-lib-coverage": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz", + "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==", "dev": true, "engines": { - "node": ">=6" + "node": ">=8" } }, - "node_modules/escape-goat": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/escape-goat/-/escape-goat-2.1.1.tgz", - "integrity": "sha512-8/uIhbG12Csjy2JEW7D9pHbreaVaS/OpN3ycnyvElTdwM5n6GY6W6e2IPemfvGZeUMqZ9A/3GqIZMgKnBhAw/Q==", + "node_modules/istanbul-lib-instrument": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", + "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", "dev": true, + "dependencies": { + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^6.3.0" + }, "engines": { "node": ">=8" } }, - "node_modules/escape-string-regexp": { + "node_modules/istanbul-lib-instrument/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/istanbul-lib-report": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", + "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==", + "dev": true, + "dependencies": { + "istanbul-lib-coverage": "^3.0.0", + "make-dir": "^4.0.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-report/node_modules/make-dir": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", + "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", "dev": true, + "dependencies": { + "semver": "^7.5.3" + }, "engines": { "node": ">=10" }, @@ -4045,1949 +8160,2191 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/escodegen": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-2.0.0.tgz", - "integrity": "sha512-mmHKys/C8BFUGI+MAWNcSYoORYLMdPzjrknd2Vc+bUsjN5bXcr8EhrNB+UTqfL1y3I9c4fw2ihgtMPQLBRiQxw==", + "node_modules/istanbul-lib-source-maps": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", + "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", "dev": true, "dependencies": { - "esprima": "^4.0.1", - "estraverse": "^5.2.0", - "esutils": "^2.0.2", - "optionator": "^0.8.1" - }, - "bin": { - "escodegen": "bin/escodegen.js", - "esgenerate": "bin/esgenerate.js" + "debug": "^4.1.1", + "istanbul-lib-coverage": "^3.0.0", + "source-map": "^0.6.1" }, "engines": { - "node": ">=6.0" - }, - "optionalDependencies": { - "source-map": "~0.6.1" + "node": ">=10" } }, - "node_modules/escodegen/node_modules/levn": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", - "integrity": "sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==", + "node_modules/istanbul-reports": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.6.tgz", + "integrity": "sha512-TLgnMkKg3iTDsQ9PbPTdpfAK2DzjF9mqUG7RMgcQl8oFjad8ob4laGxv5XV5U9MAfx8D6tSJiUyuAwzLicaxlg==", "dev": true, "dependencies": { - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2" + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" }, "engines": { - "node": ">= 0.8.0" + "node": ">=8" } }, - "node_modules/escodegen/node_modules/optionator": { - "version": "0.8.3", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", - "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", + "node_modules/jest": { + "version": "27.0.3", + "resolved": "https://registry.npmjs.org/jest/-/jest-27.0.3.tgz", + "integrity": "sha512-0G9+QqXFIZWgf5rs3yllpaA+13ZawVHfyuhuCV1EnoFbX++rVMRrYWCAnk+dfhwyv9/VTQvn+XG969u8aPRsBg==", "dev": true, "dependencies": { - "deep-is": "~0.1.3", - "fast-levenshtein": "~2.0.6", - "levn": "~0.3.0", - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2", - "word-wrap": "~1.2.3" + "@jest/core": "^27.0.3", + "import-local": "^3.0.2", + "jest-cli": "^27.0.3" + }, + "bin": { + "jest": "bin/jest.js" }, "engines": { - "node": ">= 0.8.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } } }, - "node_modules/escodegen/node_modules/prelude-ls": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", - "integrity": "sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==", + "node_modules/jest-changed-files": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-27.5.1.tgz", + "integrity": "sha512-buBLMiByfWGCoMsLLzGUUSpAmIAGnbR2KJoMN10ziLhOLvP4e0SlypHnAel8iqQXTrcbmfEY9sSqae5sgUsTvw==", "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "execa": "^5.0.0", + "throat": "^6.0.1" + }, "engines": { - "node": ">= 0.8.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/escodegen/node_modules/type-check": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", - "integrity": "sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==", + "node_modules/jest-changed-files/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", "dev": true, "dependencies": { - "prelude-ls": "~1.1.2" + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" }, "engines": { - "node": ">= 0.8.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/eslint": { - "version": "8.33.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.33.0.tgz", - "integrity": "sha512-WjOpFQgKK8VrCnAtl8We0SUOy/oVZ5NHykyMiagV1M9r8IFpIJX7DduK6n1mpfhlG7T1NLWm2SuD8QB7KFySaA==", + "node_modules/jest-changed-files/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", "dev": true, "dependencies": { - "@eslint/eslintrc": "^1.4.1", - "@humanwhocodes/config-array": "^0.11.8", - "@humanwhocodes/module-importer": "^1.0.1", - "@nodelib/fs.walk": "^1.2.8", - "ajv": "^6.10.0", - "chalk": "^4.0.0", - "cross-spawn": "^7.0.2", - "debug": "^4.3.2", - "doctrine": "^3.0.0", - "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.1.1", - "eslint-utils": "^3.0.0", - "eslint-visitor-keys": "^3.3.0", - "espree": "^9.4.0", - "esquery": "^1.4.0", - "esutils": "^2.0.2", - "fast-deep-equal": "^3.1.3", - "file-entry-cache": "^6.0.1", - "find-up": "^5.0.0", - "glob-parent": "^6.0.2", - "globals": "^13.19.0", - "grapheme-splitter": "^1.0.4", - "ignore": "^5.2.0", - "import-fresh": "^3.0.0", - "imurmurhash": "^0.1.4", - "is-glob": "^4.0.0", - "is-path-inside": "^3.0.3", - "js-sdsl": "^4.1.4", - "js-yaml": "^4.1.0", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.4.1", - "lodash.merge": "^4.6.2", - "minimatch": "^3.1.2", - "natural-compare": "^1.4.0", - "optionator": "^0.9.1", - "regexpp": "^3.2.0", - "strip-ansi": "^6.0.1", - "strip-json-comments": "^3.1.0", - "text-table": "^0.2.0" - }, - "bin": { - "eslint": "bin/eslint.js" + "@types/yargs-parser": "*" + } + }, + "node_modules/jest-circus": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-27.5.1.tgz", + "integrity": "sha512-D95R7x5UtlMA5iBYsOHFFbMD/GVA4R/Kdq15f7xYWUfWHBto9NYRsOvnSauTgdF+ogCpJ4tyKOXhUifxS65gdw==", + "dev": true, + "dependencies": { + "@jest/environment": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "dedent": "^0.7.0", + "expect": "^27.5.1", + "is-generator-fn": "^2.0.0", + "jest-each": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "stack-utils": "^2.0.3", + "throat": "^6.0.1" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/eslint-config-prettier": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.3.0.tgz", - "integrity": "sha512-BgZuLUSeKzvlL/VUjx/Yb787VQ26RU3gGjA3iiFvdsp/2bMfVIWUVP7tjxtjS0e+HP409cPlPvNkQloz8C91ew==", + "node_modules/jest-circus/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", "dev": true, - "bin": { - "eslint-config-prettier": "bin/cli.js" + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" }, - "peerDependencies": { - "eslint": ">=7.0.0" + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/eslint-plugin-jest": { - "version": "25.3.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-25.3.0.tgz", - "integrity": "sha512-79WQtuBsTN1S8Y9+7euBYwxIOia/k7ykkl9OCBHL3xuww5ecursHy/D8GCIlvzHVWv85gOkS5Kv6Sh7RxOgK1Q==", + "node_modules/jest-circus/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", "dev": true, "dependencies": { - "@typescript-eslint/experimental-utils": "^5.0.0" + "@types/yargs-parser": "*" + } + }, + "node_modules/jest-circus/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - }, - "peerDependencies": { - "@typescript-eslint/eslint-plugin": "^4.0.0 || ^5.0.0", - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" - }, - "peerDependenciesMeta": { - "@typescript-eslint/eslint-plugin": { - "optional": true - }, - "jest": { - "optional": true - } + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/eslint-plugin-prettier": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-4.0.0.tgz", - "integrity": "sha512-98MqmCJ7vJodoQK359bqQWaxOE0CS8paAz/GgjaZLyex4TTk3g9HugoO89EqWCrFiOqn9EVvcoo7gZzONCWVwQ==", + "node_modules/jest-cli": { + "version": "27.4.5", + "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-27.4.5.tgz", + "integrity": "sha512-hrky3DSgE0u7sQxaCL7bdebEPHx5QzYmrGuUjaPLmPE8jx5adtvGuOlRspvMoVLTTDOHRnZDoRLYJuA+VCI7Hg==", "dev": true, "dependencies": { - "prettier-linter-helpers": "^1.0.0" + "@jest/core": "^27.4.5", + "@jest/test-result": "^27.4.2", + "@jest/types": "^27.4.2", + "chalk": "^4.0.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.4", + "import-local": "^3.0.2", + "jest-config": "^27.4.5", + "jest-util": "^27.4.2", + "jest-validate": "^27.4.2", + "prompts": "^2.0.1", + "yargs": "^16.2.0" + }, + "bin": { + "jest": "bin/jest.js" }, "engines": { - "node": ">=6.0.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" }, "peerDependencies": { - "eslint": ">=7.28.0", - "prettier": ">=2.0.0" + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" }, "peerDependenciesMeta": { - "eslint-config-prettier": { + "node-notifier": { "optional": true } } }, - "node_modules/eslint-plugin-react": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.27.1.tgz", - "integrity": "sha512-meyunDjMMYeWr/4EBLTV1op3iSG3mjT/pz5gti38UzfM4OPpNc2m0t2xvKCOMU5D6FSdd34BIMFOvQbW+i8GAA==", + "node_modules/jest-cli/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", "dev": true, "dependencies": { - "array-includes": "^3.1.4", - "array.prototype.flatmap": "^1.2.5", - "doctrine": "^2.1.0", - "estraverse": "^5.3.0", - "jsx-ast-utils": "^2.4.1 || ^3.0.0", - "minimatch": "^3.0.4", - "object.entries": "^1.1.5", - "object.fromentries": "^2.0.5", - "object.hasown": "^1.1.0", - "object.values": "^1.1.5", - "prop-types": "^15.7.2", - "resolve": "^2.0.0-next.3", - "semver": "^6.3.0", - "string.prototype.matchall": "^4.0.6" + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" }, "engines": { - "node": ">=4" - }, - "peerDependencies": { - "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/eslint-plugin-react/node_modules/doctrine": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "node_modules/jest-cli/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", "dev": true, "dependencies": { - "esutils": "^2.0.2" - }, - "engines": { - "node": ">=0.10.0" + "@types/yargs-parser": "*" } }, - "node_modules/eslint-plugin-react/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "node_modules/jest-cli/node_modules/cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", "dev": true, - "bin": { - "semver": "bin/semver.js" + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" } }, - "node_modules/eslint-plugin-unicorn": { - "version": "39.0.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-unicorn/-/eslint-plugin-unicorn-39.0.0.tgz", - "integrity": "sha512-fd5RK2FtYjGcIx3wra7csIE/wkkmBo22T1gZtRTsLr1Mb+KsFKJ+JOdSqhHXQUrI/JTs/Mon64cEYzTgSCbltw==", + "node_modules/jest-cli/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", "dev": true, "dependencies": { - "@babel/helper-validator-identifier": "^7.14.9", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", "ci-info": "^3.2.0", - "clean-regexp": "^1.0.0", - "eslint-template-visitor": "^2.3.2", - "eslint-utils": "^3.0.0", - "esquery": "^1.4.0", - "indent-string": "4", - "is-builtin-module": "^3.1.0", - "lodash": "^4.17.21", - "pluralize": "^8.0.0", - "read-pkg-up": "^7.0.1", - "regexp-tree": "^0.1.23", - "safe-regex": "^2.1.1", - "semver": "^7.3.5", - "strip-indent": "^3.0.0" + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" }, "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sindresorhus/eslint-plugin-unicorn?sponsor=1" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-cli/node_modules/yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "dev": true, + "dependencies": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" }, - "peerDependencies": { - "eslint": ">=7.32.0" + "engines": { + "node": ">=10" } }, - "node_modules/eslint-scope": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", - "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "node_modules/jest-cli/node_modules/yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/jest-config": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-27.5.1.tgz", + "integrity": "sha512-5sAsjm6tGdsVbW9ahcChPAFCk4IlkQUknH5AvKjuLTSlcO/wCZKyFdn7Rg0EkC+OGgWODEy2hDpWB1PgzH0JNA==", "dev": true, "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" + "@babel/core": "^7.8.0", + "@jest/test-sequencer": "^27.5.1", + "@jest/types": "^27.5.1", + "babel-jest": "^27.5.1", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "deepmerge": "^4.2.2", + "glob": "^7.1.1", + "graceful-fs": "^4.2.9", + "jest-circus": "^27.5.1", + "jest-environment-jsdom": "^27.5.1", + "jest-environment-node": "^27.5.1", + "jest-get-type": "^27.5.1", + "jest-jasmine2": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-runner": "^27.5.1", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "micromatch": "^4.0.4", + "parse-json": "^5.2.0", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "strip-json-comments": "^3.1.1" }, "engines": { - "node": ">=8.0.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "peerDependencies": { + "ts-node": ">=9.0.0" + }, + "peerDependenciesMeta": { + "ts-node": { + "optional": true + } } }, - "node_modules/eslint-scope/node_modules/estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "node_modules/jest-config/node_modules/@jest/transform": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz", + "integrity": "sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==", "dev": true, + "dependencies": { + "@babel/core": "^7.1.0", + "@jest/types": "^27.5.1", + "babel-plugin-istanbul": "^6.1.1", + "chalk": "^4.0.0", + "convert-source-map": "^1.4.0", + "fast-json-stable-stringify": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-util": "^27.5.1", + "micromatch": "^4.0.4", + "pirates": "^4.0.4", + "slash": "^3.0.0", + "source-map": "^0.6.1", + "write-file-atomic": "^3.0.0" + }, "engines": { - "node": ">=4.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/eslint-template-visitor": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/eslint-template-visitor/-/eslint-template-visitor-2.3.2.tgz", - "integrity": "sha512-3ydhqFpuV7x1M9EK52BPNj6V0Kwu0KKkcIAfpUhwHbR8ocRln/oUHgfxQupY8O1h4Qv/POHDumb/BwwNfxbtnA==", + "node_modules/jest-config/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", "dev": true, "dependencies": { - "@babel/core": "^7.12.16", - "@babel/eslint-parser": "^7.12.16", - "eslint-visitor-keys": "^2.0.0", - "esquery": "^1.3.1", - "multimap": "^1.1.0" + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" }, - "peerDependencies": { - "eslint": ">=7.0.0" + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/eslint-template-visitor/node_modules/eslint-visitor-keys": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", - "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "node_modules/jest-config/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", "dev": true, - "engines": { - "node": ">=10" + "dependencies": { + "@types/yargs-parser": "*" } }, - "node_modules/eslint-utils": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", - "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", + "node_modules/jest-config/node_modules/babel-jest": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-27.5.1.tgz", + "integrity": "sha512-cdQ5dXjGRd0IBRATiQ4mZGlGlRE8kJpjPOixdNRdT+m3UcNqmYWN6rK6nvtXYfY3D76cb8s/O1Ss8ea24PIwcg==", "dev": true, "dependencies": { - "eslint-visitor-keys": "^2.0.0" + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/babel__core": "^7.1.14", + "babel-plugin-istanbul": "^6.1.1", + "babel-preset-jest": "^27.5.1", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "slash": "^3.0.0" }, "engines": { - "node": "^10.0.0 || ^12.0.0 || >= 14.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/mysticatea" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" }, "peerDependencies": { - "eslint": ">=5" - } - }, - "node_modules/eslint-utils/node_modules/eslint-visitor-keys": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", - "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", - "dev": true, - "engines": { - "node": ">=10" + "@babel/core": "^7.8.0" } }, - "node_modules/eslint-visitor-keys": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", - "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==", + "node_modules/jest-config/node_modules/babel-plugin-jest-hoist": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.5.1.tgz", + "integrity": "sha512-50wCwD5EMNW4aRpOwtqzyZHIewTYNxLA4nhB+09d8BIssfNfzBRhkBIHiaPv1Si226TQSvp8gxAJm2iY2qs2hQ==", "dev": true, + "dependencies": { + "@babel/template": "^7.3.3", + "@babel/types": "^7.3.3", + "@types/babel__core": "^7.0.0", + "@types/babel__traverse": "^7.0.6" + }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/eslint/node_modules/eslint-scope": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz", - "integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==", + "node_modules/jest-config/node_modules/babel-preset-jest": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-27.5.1.tgz", + "integrity": "sha512-Nptf2FzlPCWYuJg41HBqXVT8ym6bXOevuCTbhxlUpjwtysGaIWFvDEjp4y+G7fl13FgOdjs7P/DmErqH7da0Ag==", "dev": true, "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^5.2.0" + "babel-plugin-jest-hoist": "^27.5.1", + "babel-preset-current-node-syntax": "^1.0.0" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - } - }, - "node_modules/esm": { - "version": "3.2.25", - "resolved": "https://registry.npmjs.org/esm/-/esm-3.2.25.tgz", - "integrity": "sha512-U1suiZ2oDVWv4zPO56S0NcR5QriEahGtdN2OR6FiOG4WJvcjBVFB0qI4+eKoWFH483PKGuLuu6V8Z4T5g63UVA==", - "engines": { - "node": ">=6" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "node_modules/espree": { - "version": "9.4.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.4.1.tgz", - "integrity": "sha512-XwctdmTO6SIvCzd9810yyNzIrOrqNYV9Koizx4C/mRhf9uq0o4yHoCEU/670pOxOL/MSraektvSAji79kX90Vg==", + "node_modules/jest-config/node_modules/jest-haste-map": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", + "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", "dev": true, "dependencies": { - "acorn": "^8.8.0", - "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^3.3.0" + "@jest/types": "^27.5.1", + "@types/graceful-fs": "^4.1.2", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^27.5.1", + "jest-serializer": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "micromatch": "^4.0.4", + "walker": "^1.0.7" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" }, - "funding": { - "url": "https://opencollective.com/eslint" + "optionalDependencies": { + "fsevents": "^2.3.2" } }, - "node_modules/esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "node_modules/jest-config/node_modules/jest-regex-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", + "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", "dev": true, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, "engines": { - "node": ">=4" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/esquery": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", - "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", + "node_modules/jest-config/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", "dev": true, "dependencies": { - "estraverse": "^5.1.0" + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" }, "engines": { - "node": ">=0.10" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/esrecurse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "node_modules/jest-config/node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", "dev": true, "dependencies": { - "estraverse": "^5.2.0" + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" }, "engines": { - "node": ">=4.0" - } - }, - "node_modules/esri-loader": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/esri-loader/-/esri-loader-3.4.0.tgz", - "integrity": "sha512-iS3SbBmrnr4TlUdAjyyVZD2yCud8AMZkyJcmYEVzTiE5wVUtdN8d9USp7XYtilgwkJe/eWR2f2G1+S58ESqLuQ==", - "dev": true - }, - "node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true, - "engines": { - "node": ">=0.10.0" + "node": ">= 10.13.0" } }, - "node_modules/execa": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", - "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "node_modules/jest-config/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", "dev": true, "dependencies": { - "cross-spawn": "^7.0.3", - "get-stream": "^6.0.0", - "human-signals": "^2.1.0", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.1", - "onetime": "^5.1.2", - "signal-exit": "^3.0.3", - "strip-final-newline": "^2.0.0" + "has-flag": "^4.0.0" }, "engines": { "node": ">=10" }, "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" + "url": "https://github.com/chalk/supports-color?sponsor=1" } }, - "node_modules/execa/node_modules/get-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", - "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "node_modules/jest-diff": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.5.1.tgz", + "integrity": "sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==", "dev": true, - "engines": { - "node": ">=10" + "dependencies": { + "chalk": "^4.0.0", + "diff-sequences": "^27.5.1", + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/exit": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", - "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", + "node_modules/jest-docblock": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-27.5.1.tgz", + "integrity": "sha512-rl7hlABeTsRYxKiUfpHrQrG4e2obOiTQWfMEH3PxPjOtdsfLQO4ReWSZaQ7DETm4xu07rl4q/h4zcKXyU0/OzQ==", "dev": true, + "dependencies": { + "detect-newline": "^3.0.0" + }, "engines": { - "node": ">= 0.8.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/expect": { + "node_modules/jest-each": { "version": "27.5.1", - "resolved": "https://registry.npmjs.org/expect/-/expect-27.5.1.tgz", - "integrity": "sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw==", + "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-27.5.1.tgz", + "integrity": "sha512-1Ff6p+FbhT/bXQnEouYy00bkNSY7OUpfIcmdl8vZ31A1UUaurOLPA8a8BbJOF2RDUElwJhmeaV7LnagI+5UwNQ==", "dev": true, "dependencies": { "@jest/types": "^27.5.1", + "chalk": "^4.0.0", "jest-get-type": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1" + "jest-util": "^27.5.1", + "pretty-format": "^27.5.1" }, "engines": { "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/external-editor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", - "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", + "node_modules/jest-each/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", "dev": true, "dependencies": { - "chardet": "^0.7.0", - "iconv-lite": "^0.4.24", - "tmp": "^0.0.33" + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" }, "engines": { - "node": ">=4" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/extract-zip": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-2.0.1.tgz", - "integrity": "sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg==", + "node_modules/jest-each/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", "dev": true, "dependencies": { - "debug": "^4.1.1", - "get-stream": "^5.1.0", - "yauzl": "^2.10.0" - }, - "bin": { - "extract-zip": "cli.js" - }, - "engines": { - "node": ">= 10.17.0" - }, - "optionalDependencies": { - "@types/yauzl": "^2.9.1" + "@types/yargs-parser": "*" } }, - "node_modules/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==" - }, - "node_modules/fast-diff": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.2.0.tgz", - "integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==", - "dev": true - }, - "node_modules/fast-glob": { - "version": "3.2.12", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz", - "integrity": "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==", + "node_modules/jest-each/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", "dev": true, "dependencies": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.4" + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" }, "engines": { - "node": ">=8.6.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/fast-glob/node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "node_modules/jest-environment-jsdom": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-27.5.1.tgz", + "integrity": "sha512-TFBvkTC1Hnnnrka/fUb56atfDtJ9VMZ94JkjTbggl1PEpwrYtUBKMezB3inLmWqQsXYLcMwNoDQwoBTAvFfsfw==", "dev": true, "dependencies": { - "is-glob": "^4.0.1" + "@jest/environment": "^27.5.1", + "@jest/fake-timers": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "jest-mock": "^27.5.1", + "jest-util": "^27.5.1", + "jsdom": "^16.6.0" }, "engines": { - "node": ">= 6" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" - }, - "node_modules/fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", - "dev": true - }, - "node_modules/fast-xml-parser": { - "version": "3.21.1", - "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-3.21.1.tgz", - "integrity": "sha512-FTFVjYoBOZTJekiUsawGsSYV9QL0A+zDYCRj7y34IO6Jg+2IMYEtQa+bbictpdpV8dHxXywqU7C0gRDEOFtBFg==", + "node_modules/jest-environment-jsdom/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "dev": true, "dependencies": { - "strnum": "^1.0.4" - }, - "bin": { - "xml2js": "cli.js" + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" }, - "funding": { - "type": "paypal", - "url": "https://paypal.me/naturalintelligence" + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/fastq": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", - "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", + "node_modules/jest-environment-jsdom/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", "dev": true, "dependencies": { - "reusify": "^1.0.4" + "@types/yargs-parser": "*" } }, - "node_modules/fb-watchman": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz", - "integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==", + "node_modules/jest-environment-jsdom/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", "dev": true, "dependencies": { - "bser": "2.1.1" + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/fd-slicer": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", - "integrity": "sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==", + "node_modules/jest-environment-node": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-27.5.1.tgz", + "integrity": "sha512-Jt4ZUnxdOsTGwSRAfKEnE6BcwsSPNOijjwifq5sDFSA2kesnXTvNqKHYgM0hDq3549Uf/KzdXNYn4wMZJPlFLw==", "dev": true, "dependencies": { - "pend": "~1.2.0" + "@jest/environment": "^27.5.1", + "@jest/fake-timers": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "jest-mock": "^27.5.1", + "jest-util": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/fflate": { - "version": "0.4.8", - "resolved": "https://registry.npmjs.org/fflate/-/fflate-0.4.8.tgz", - "integrity": "sha512-FJqqoDBR00Mdj9ppamLa/Y7vxm+PRmNWA67N846RvsoYVMKB4q3y/de5PA7gUmRMYK/8CMz2GDZQmCRN1wBcWA==" - }, - "node_modules/figures": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", - "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", + "node_modules/jest-environment-node/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", "dev": true, "dependencies": { - "escape-string-regexp": "^1.0.5" + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/figures/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "node_modules/jest-environment-node/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", "dev": true, - "engines": { - "node": ">=0.8.0" + "dependencies": { + "@types/yargs-parser": "*" } }, - "node_modules/file-entry-cache": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", - "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", + "node_modules/jest-environment-node/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", "dev": true, "dependencies": { - "flat-cache": "^3.0.4" + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" }, "engines": { - "node": "^10.12.0 || >=12.0.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "dependencies": { - "to-regex-range": "^5.0.1" - }, + "node_modules/jest-get-type": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", + "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", + "dev": true, "engines": { - "node": ">=8" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "node_modules/jest-haste-map": { + "version": "29.6.2", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-29.6.2.tgz", + "integrity": "sha512-+51XleTDAAysvU8rT6AnS1ZJ+WHVNqhj1k6nTvN2PYP+HjU3kqlaKQ1Lnw3NYW3bm2r8vq82X0Z1nDDHZMzHVA==", "dev": true, "dependencies": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" + "@jest/types": "^29.6.1", + "@types/graceful-fs": "^4.1.3", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^29.4.3", + "jest-util": "^29.6.2", + "jest-worker": "^29.6.2", + "micromatch": "^4.0.4", + "walker": "^1.0.8" }, "engines": { - "node": ">=10" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "optionalDependencies": { + "fsevents": "^2.3.2" } }, - "node_modules/flat-cache": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", - "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", + "node_modules/jest-jasmine2": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-27.5.1.tgz", + "integrity": "sha512-jtq7VVyG8SqAorDpApwiJJImd0V2wv1xzdheGHRGyuT7gZm6gG47QEskOlzsN1PG/6WNaCo5pmwMHDf3AkG2pQ==", "dev": true, "dependencies": { - "flatted": "^3.1.0", - "rimraf": "^3.0.2" + "@jest/environment": "^27.5.1", + "@jest/source-map": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "expect": "^27.5.1", + "is-generator-fn": "^2.0.0", + "jest-each": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "pretty-format": "^27.5.1", + "throat": "^6.0.1" }, "engines": { - "node": "^10.12.0 || >=12.0.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/flatted": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", - "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==", - "dev": true - }, - "node_modules/focus-trap": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/focus-trap/-/focus-trap-7.2.0.tgz", - "integrity": "sha512-v4wY6HDDYvzkBy4735kW5BUEuw6Yz9ABqMYLuTNbzAFPcBOGiGHwwcNVMvUz4G0kgSYh13wa/7TG3XwTeT4O/A==", + "node_modules/jest-jasmine2/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "dev": true, "dependencies": { - "tabbable": "^6.0.1" + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/for-each": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", - "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", + "node_modules/jest-jasmine2/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", "dev": true, "dependencies": { - "is-callable": "^1.1.3" + "@types/yargs-parser": "*" } }, - "node_modules/form-data": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz", - "integrity": "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==", + "node_modules/jest-jasmine2/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", "dev": true, "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" }, "engines": { - "node": ">= 6" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/form-request-submit-polyfill": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/form-request-submit-polyfill/-/form-request-submit-polyfill-2.0.0.tgz", - "integrity": "sha512-p0+M92y2gFnP0AuuL8VJ0GYVzAT0bYp3GsSkmPFhvUopdnfDLP/9xplQTBBc4w8qOjKRzdK7GaFcdL9IhlXdTQ==" - }, - "node_modules/fraction.js": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz", - "integrity": "sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==", + "node_modules/jest-leak-detector": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-27.5.1.tgz", + "integrity": "sha512-POXfWAMvfU6WMUXftV4HolnJfnPOGEu10fscNCA76KBpRRhcMN2c8d3iT2pxQS3HLbA+5X4sOUPzYO2NUyIlHQ==", "dev": true, - "engines": { - "node": "*" + "dependencies": { + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" }, - "funding": { - "type": "patreon", - "url": "https://www.patreon.com/infusion" + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/fs-constants": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", - "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==", - "dev": true - }, - "node_modules/fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", - "dev": true - }, - "node_modules/fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "node_modules/jest-matcher-utils": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz", + "integrity": "sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==", "dev": true, - "hasInstallScript": true, - "optional": true, - "os": [ - "darwin" - ], + "dependencies": { + "chalk": "^4.0.0", + "jest-diff": "^27.5.1", + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + }, "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true - }, - "node_modules/function.prototype.name": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.5.tgz", - "integrity": "sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==", + "node_modules/jest-message-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", + "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.19.0", - "functions-have-names": "^1.2.2" + "@babel/code-frame": "^7.12.13", + "@jest/types": "^27.5.1", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/functions-have-names": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", - "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", + "node_modules/jest-message-util/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/gauge": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz", - "integrity": "sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg==", + "node_modules/jest-message-util/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", "dev": true, "dependencies": { - "aproba": "^1.0.3 || ^2.0.0", - "color-support": "^1.1.3", - "console-control-strings": "^1.1.0", - "has-unicode": "^2.0.1", - "signal-exit": "^3.0.7", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1", - "wide-align": "^1.1.5" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "@types/yargs-parser": "*" } }, - "node_modules/gensync": { - "version": "1.0.0-beta.2", - "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", - "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "node_modules/jest-mock": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-27.5.1.tgz", + "integrity": "sha512-K4jKbY1d4ENhbrG2zuPWaQBvDly+iZ2yAW+T1fATN78hc0sInwn7wZB8XtlNnvHug5RMwV897Xm4LqmPM4e2Og==", "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*" + }, "engines": { - "node": ">=6.9.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "node_modules/jest-mock/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", "dev": true, + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + }, "engines": { - "node": "6.* || 8.* || >= 10.*" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/get-intrinsic": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.0.tgz", - "integrity": "sha512-L049y6nFOuom5wGyRc3/gdTLO94dySVKRACj1RmJZBQXlbTMhtNIgkWkUHq+jYmZvKf14EW1EoJnnjbmoHij0Q==", + "node_modules/jest-mock/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", "dev": true, "dependencies": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "@types/yargs-parser": "*" } }, - "node_modules/get-package-type": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", - "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", + "node_modules/jest-pnp-resolver": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", + "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==", "dev": true, "engines": { - "node": ">=8.0.0" + "node": ">=6" + }, + "peerDependencies": { + "jest-resolve": "*" + }, + "peerDependenciesMeta": { + "jest-resolve": { + "optional": true + } } }, - "node_modules/get-stream": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", - "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", + "node_modules/jest-regex-util": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-29.4.3.tgz", + "integrity": "sha512-O4FglZaMmWXbGHSQInfXewIsd1LMn9p3ZXB/6r4FOkyhX2/iP/soMG98jGvk/A3HAN78+5VWcBGO0BJAPRh4kg==", "dev": true, - "dependencies": { - "pump": "^3.0.0" - }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/get-symbol-description": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", - "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", + "node_modules/jest-resolve": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-27.5.1.tgz", + "integrity": "sha512-FFDy8/9E6CV83IMbDpcjOhumAQPDyETnU2KZ1O98DwTnz8AOBsW/Xv3GySr1mOZdItLR+zDZ7I/UdTFbgSOVCw==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.1" + "@jest/types": "^27.5.1", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-pnp-resolver": "^1.2.2", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "resolve": "^1.20.0", + "resolve.exports": "^1.1.0", + "slash": "^3.0.0" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/gh-release": { - "version": "6.0.4", - "resolved": "https://registry.npmjs.org/gh-release/-/gh-release-6.0.4.tgz", - "integrity": "sha512-6djoVxTUpbw9GZ/mveNjp5j/IDPY3KACscSlmNwwfkR+EQCNTSgGRywb0TRaQdA36RnwtcNOWEaLwB5ez7jSRg==", + "node_modules/jest-resolve-dependencies": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-27.5.1.tgz", + "integrity": "sha512-QQOOdY4PE39iawDn5rzbIePNigfe5B9Z91GDD1ae/xNDlu9kaat8QQ5EKnNmVWPV54hUdxCVwwj6YMgR2O7IOg==", "dev": true, "dependencies": { - "@octokit/rest": "^18.0.9", - "changelog-parser": "^2.0.0", - "deep-extend": "^0.6.0", - "gauge": "^v4.0.4", - "gh-release-assets": "^2.0.0", - "ghauth": "^5.0.0", - "github-url-to-object": "^4.0.4", - "inquirer": "^8.0.0", - "shelljs": "^0.8.4", - "update-notifier": "^5.0.0", - "yargs": "^17.0.0" - }, - "bin": { - "gh-release": "bin/cli.js" + "@jest/types": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-snapshot": "^27.5.1" }, "engines": { - "node": ">=12" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/gh-release-assets": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/gh-release-assets/-/gh-release-assets-2.0.1.tgz", - "integrity": "sha512-KrhmYIA/5oQdfEl9vQ2yF6DOM2QOAjpCOsNKFkc7X3dOTefSixttW0ysot3noQ+3XL8NdkdC7z+mqfePzIwexg==", + "node_modules/jest-resolve-dependencies/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", "dev": true, "dependencies": { - "async": "^3.2.0", - "mime": "^3.0.0", - "progress-stream": "^2.0.0", - "pumpify": "^2.0.1", - "simple-get": "^4.0.0", - "util-extend": "^1.0.1" + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" }, "engines": { - "node": ">=12" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/ghauth": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ghauth/-/ghauth-5.0.1.tgz", - "integrity": "sha512-WzgL12dczZX/VrvVTkoFAJLU3pb6PDT+TS60kLlaU51fuNEv6VoYpRXlnwIjkMIhqWead9+dLBEzj0E1ghYMkg==", + "node_modules/jest-resolve-dependencies/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", "dev": true, "dependencies": { - "application-config": "^2.0.0", - "node-fetch": "^2.6.0", - "ora": "^4.0.5", - "read": "^1.0.7" + "@types/yargs-parser": "*" } }, - "node_modules/github-url-to-object": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/github-url-to-object/-/github-url-to-object-4.0.6.tgz", - "integrity": "sha512-NaqbYHMUAlPcmWFdrAB7bcxrNIiiJWJe8s/2+iOc9vlcHlwHqSGrPk+Yi3nu6ebTwgsZEa7igz+NH2vEq3gYwQ==", + "node_modules/jest-resolve-dependencies/node_modules/jest-regex-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", + "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", "dev": true, - "dependencies": { - "is-url": "^1.1.0" + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "node_modules/jest-resolve/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", "dev": true, "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" }, "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/glob-parent": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", - "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "node_modules/jest-resolve/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", "dev": true, "dependencies": { - "is-glob": "^4.0.3" - }, - "engines": { - "node": ">=10.13.0" + "@types/yargs-parser": "*" } }, - "node_modules/global-dirs": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-3.0.1.tgz", - "integrity": "sha512-NBcGGFbBA9s1VzD41QXDG+3++t9Mn5t1FpLdhESY6oKY4gYTFpX4wO3sqGUa0Srjtbfj3szX0RnemmrVRUdULA==", + "node_modules/jest-resolve/node_modules/jest-haste-map": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", + "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", "dev": true, "dependencies": { - "ini": "2.0.0" + "@jest/types": "^27.5.1", + "@types/graceful-fs": "^4.1.2", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^27.5.1", + "jest-serializer": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "micromatch": "^4.0.4", + "walker": "^1.0.7" }, "engines": { - "node": ">=10" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "optionalDependencies": { + "fsevents": "^2.3.2" } }, - "node_modules/globals": { - "version": "13.20.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", - "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", + "node_modules/jest-resolve/node_modules/jest-regex-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", + "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", + "dev": true, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-resolve/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", "dev": true, "dependencies": { - "type-fest": "^0.20.2" + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/globalthis": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz", - "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==", + "node_modules/jest-resolve/node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", "dev": true, "dependencies": { - "define-properties": "^1.1.3" + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">= 10.13.0" } }, - "node_modules/globby": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", - "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "node_modules/jest-resolve/node_modules/resolve": { + "version": "1.22.4", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.4.tgz", + "integrity": "sha512-PXNdCiPqDqeUou+w1C2eTQbNfxKSuMxqTCuvlmmMsk1NWHL5fRrhY6Pl0qEYYc6+QqGClco1Qj8XnjPego4wfg==", "dev": true, "dependencies": { - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.9", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^3.0.0" + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" }, - "engines": { - "node": ">=10" + "bin": { + "resolve": "bin/resolve" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/gopd": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", - "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", + "node_modules/jest-resolve/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", "dev": true, "dependencies": { - "get-intrinsic": "^1.1.3" + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/chalk/supports-color?sponsor=1" } }, - "node_modules/got": { - "version": "9.6.0", - "resolved": "https://registry.npmjs.org/got/-/got-9.6.0.tgz", - "integrity": "sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==", + "node_modules/jest-runner": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-27.5.1.tgz", + "integrity": "sha512-g4NPsM4mFCOwFKXO4p/H/kWGdJp9V8kURY2lX8Me2drgXqG7rrZAx5kv+5H7wtt/cdFIjhqYx1HrlqWHaOvDaQ==", "dev": true, "dependencies": { - "@sindresorhus/is": "^0.14.0", - "@szmarczak/http-timer": "^1.1.2", - "cacheable-request": "^6.0.0", - "decompress-response": "^3.3.0", - "duplexer3": "^0.1.4", - "get-stream": "^4.1.0", - "lowercase-keys": "^1.0.1", - "mimic-response": "^1.0.1", - "p-cancelable": "^1.0.0", - "to-readable-stream": "^1.0.0", - "url-parse-lax": "^3.0.0" + "@jest/console": "^27.5.1", + "@jest/environment": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "emittery": "^0.8.1", + "graceful-fs": "^4.2.9", + "jest-docblock": "^27.5.1", + "jest-environment-jsdom": "^27.5.1", + "jest-environment-node": "^27.5.1", + "jest-haste-map": "^27.5.1", + "jest-leak-detector": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "source-map-support": "^0.5.6", + "throat": "^6.0.1" }, "engines": { - "node": ">=8.6" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/got/node_modules/decompress-response": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", - "integrity": "sha512-BzRPQuY1ip+qDonAOz42gRm/pg9F768C+npV/4JOsxRC2sq+Rlk+Q4ZCAsOhnIaMrgarILY+RMUIvMmmX1qAEA==", + "node_modules/jest-runner/node_modules/@jest/transform": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz", + "integrity": "sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==", "dev": true, "dependencies": { - "mimic-response": "^1.0.0" + "@babel/core": "^7.1.0", + "@jest/types": "^27.5.1", + "babel-plugin-istanbul": "^6.1.1", + "chalk": "^4.0.0", + "convert-source-map": "^1.4.0", + "fast-json-stable-stringify": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-util": "^27.5.1", + "micromatch": "^4.0.4", + "pirates": "^4.0.4", + "slash": "^3.0.0", + "source-map": "^0.6.1", + "write-file-atomic": "^3.0.0" }, "engines": { - "node": ">=4" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/got/node_modules/get-stream": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", - "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "node_modules/jest-runner/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", "dev": true, "dependencies": { - "pump": "^3.0.0" + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" }, "engines": { - "node": ">=6" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/got/node_modules/mimic-response": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", - "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", + "node_modules/jest-runner/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", "dev": true, - "engines": { - "node": ">=4" + "dependencies": { + "@types/yargs-parser": "*" } }, - "node_modules/graceful-fs": { - "version": "4.2.10", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", - "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", - "dev": true - }, - "node_modules/grapheme-splitter": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz", - "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==", - "dev": true - }, - "node_modules/has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "node_modules/jest-runner/node_modules/jest-haste-map": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", + "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", "dev": true, "dependencies": { - "function-bind": "^1.1.1" + "@jest/types": "^27.5.1", + "@types/graceful-fs": "^4.1.2", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^27.5.1", + "jest-serializer": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "micromatch": "^4.0.4", + "walker": "^1.0.7" }, "engines": { - "node": ">= 0.4.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "optionalDependencies": { + "fsevents": "^2.3.2" } }, - "node_modules/has-bigints": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", - "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", + "node_modules/jest-runner/node_modules/jest-regex-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", + "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "node_modules/jest-runner/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, "engines": { - "node": ">=8" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/has-property-descriptors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", - "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", + "node_modules/jest-runner/node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", "dev": true, "dependencies": { - "get-intrinsic": "^1.1.1" + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">= 10.13.0" } }, - "node_modules/has-proto": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz", - "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==", + "node_modules/jest-runner/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, "engines": { - "node": ">= 0.4" + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/chalk/supports-color?sponsor=1" } }, - "node_modules/has-symbols": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", - "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "node_modules/jest-runtime": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-27.5.1.tgz", + "integrity": "sha512-o7gxw3Gf+H2IGt8fv0RiyE1+r83FJBRruoA+FXrlHw6xEyBsU8ugA6IPfTdVyA0w8HClpbK+DGJxH59UrNMx8A==", "dev": true, + "dependencies": { + "@jest/environment": "^27.5.1", + "@jest/fake-timers": "^27.5.1", + "@jest/globals": "^27.5.1", + "@jest/source-map": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "chalk": "^4.0.0", + "cjs-module-lexer": "^1.0.0", + "collect-v8-coverage": "^1.0.0", + "execa": "^5.0.0", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-mock": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "slash": "^3.0.0", + "strip-bom": "^4.0.0" + }, "engines": { - "node": ">= 0.4" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-runtime/node_modules/@jest/transform": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz", + "integrity": "sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==", + "dev": true, + "dependencies": { + "@babel/core": "^7.1.0", + "@jest/types": "^27.5.1", + "babel-plugin-istanbul": "^6.1.1", + "chalk": "^4.0.0", + "convert-source-map": "^1.4.0", + "fast-json-stable-stringify": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-util": "^27.5.1", + "micromatch": "^4.0.4", + "pirates": "^4.0.4", + "slash": "^3.0.0", + "source-map": "^0.6.1", + "write-file-atomic": "^3.0.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/has-tostringtag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", - "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "node_modules/jest-runtime/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", "dev": true, "dependencies": { - "has-symbols": "^1.0.2" + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==", - "dev": true - }, - "node_modules/has-yarn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/has-yarn/-/has-yarn-2.1.0.tgz", - "integrity": "sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw==", + "node_modules/jest-runtime/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", "dev": true, - "engines": { - "node": ">=8" + "dependencies": { + "@types/yargs-parser": "*" } }, - "node_modules/hosted-git-info": { - "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 - }, - "node_modules/html-encoding-sniffer": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz", - "integrity": "sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ==", + "node_modules/jest-runtime/node_modules/jest-haste-map": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", + "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", "dev": true, "dependencies": { - "whatwg-encoding": "^1.0.5" + "@jest/types": "^27.5.1", + "@types/graceful-fs": "^4.1.2", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^27.5.1", + "jest-serializer": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "micromatch": "^4.0.4", + "walker": "^1.0.7" }, "engines": { - "node": ">=10" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "optionalDependencies": { + "fsevents": "^2.3.2" } }, - "node_modules/html-escaper": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", - "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", - "dev": true + "node_modules/jest-runtime/node_modules/jest-regex-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", + "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", + "dev": true, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } }, - "node_modules/html2canvas": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/html2canvas/-/html2canvas-1.4.1.tgz", - "integrity": "sha512-fPU6BHNpsyIhr8yyMpTLLxAbkaK8ArIBcmZIRiBLiDhjeqvXolaEmDGmELFuX9I4xDcaKKcJl+TKZLqruBbmWA==", - "optional": true, + "node_modules/jest-runtime/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, "dependencies": { - "css-line-break": "^2.1.0", - "text-segmentation": "^1.0.3" + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" }, "engines": { - "node": ">=8.0.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/http-cache-semantics": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", - "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==", - "dev": true - }, - "node_modules/http-proxy-agent": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", - "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", + "node_modules/jest-runtime/node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", "dev": true, "dependencies": { - "@tootallnate/once": "1", - "agent-base": "6", - "debug": "4" + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" }, "engines": { - "node": ">= 6" + "node": ">= 10.13.0" } }, - "node_modules/https-proxy-agent": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", - "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", + "node_modules/jest-runtime/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", "dev": true, "dependencies": { - "agent-base": "6", - "debug": "4" + "has-flag": "^4.0.0" }, "engines": { - "node": ">= 6" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" } }, - "node_modules/human-signals": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", - "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", + "node_modules/jest-serializer": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-27.5.1.tgz", + "integrity": "sha512-jZCyo6iIxO1aqUxpuBlwTDMkzOAJS4a3eYz3YzgxxVQFwLeSA7Jfq5cbqCY+JLvTDrWirgusI/0KwxKMgrdf7w==", "dev": true, + "dependencies": { + "@types/node": "*", + "graceful-fs": "^4.2.9" + }, "engines": { - "node": ">=10.17.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "node_modules/jest-snapshot": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-27.5.1.tgz", + "integrity": "sha512-yYykXI5a0I31xX67mgeLw1DZ0bJB+gpq5IpSuCAoyDi0+BhgU/RIrL+RTzDmkNTchvDFWKP8lp+w/42Z3us5sA==", "dev": true, "dependencies": { - "safer-buffer": ">= 2.1.2 < 3" + "@babel/core": "^7.7.2", + "@babel/generator": "^7.7.2", + "@babel/plugin-syntax-typescript": "^7.7.2", + "@babel/traverse": "^7.7.2", + "@babel/types": "^7.0.0", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/babel__traverse": "^7.0.4", + "@types/prettier": "^2.1.5", + "babel-preset-current-node-syntax": "^1.0.0", + "chalk": "^4.0.0", + "expect": "^27.5.1", + "graceful-fs": "^4.2.9", + "jest-diff": "^27.5.1", + "jest-get-type": "^27.5.1", + "jest-haste-map": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-util": "^27.5.1", + "natural-compare": "^1.4.0", + "pretty-format": "^27.5.1", + "semver": "^7.3.2" }, "engines": { - "node": ">=0.10.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/ignore": { - "version": "5.2.4", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", - "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==", + "node_modules/jest-snapshot/node_modules/@jest/transform": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz", + "integrity": "sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==", "dev": true, + "dependencies": { + "@babel/core": "^7.1.0", + "@jest/types": "^27.5.1", + "babel-plugin-istanbul": "^6.1.1", + "chalk": "^4.0.0", + "convert-source-map": "^1.4.0", + "fast-json-stable-stringify": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-util": "^27.5.1", + "micromatch": "^4.0.4", + "pirates": "^4.0.4", + "slash": "^3.0.0", + "source-map": "^0.6.1", + "write-file-atomic": "^3.0.0" + }, "engines": { - "node": ">= 4" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/immediate": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz", - "integrity": "sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ==", - "dev": true - }, - "node_modules/import-fresh": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "node_modules/jest-snapshot/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", "dev": true, "dependencies": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - }, - "engines": { - "node": ">=6" + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/import-lazy": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", - "integrity": "sha512-m7ZEHgtw69qOGw+jwxXkHlrlIPdTGkyh66zXZ1ajZbxkDBNjSY/LGbmjc7h0s2ELsUDTAhFr55TrPSSqJGPG0A==", + "node_modules/jest-snapshot/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", "dev": true, - "engines": { - "node": ">=4" + "dependencies": { + "@types/yargs-parser": "*" } }, - "node_modules/import-local": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", - "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==", + "node_modules/jest-snapshot/node_modules/jest-haste-map": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", + "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", "dev": true, "dependencies": { - "pkg-dir": "^4.2.0", - "resolve-cwd": "^3.0.0" - }, - "bin": { - "import-local-fixture": "fixtures/cli.js" + "@jest/types": "^27.5.1", + "@types/graceful-fs": "^4.1.2", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^27.5.1", + "jest-serializer": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "micromatch": "^4.0.4", + "walker": "^1.0.7" }, "engines": { - "node": ">=8" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "optionalDependencies": { + "fsevents": "^2.3.2" } }, - "node_modules/imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "node_modules/jest-snapshot/node_modules/jest-regex-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", + "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", "dev": true, "engines": { - "node": ">=0.8.19" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/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==", + "node_modules/jest-snapshot/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, "engines": { - "node": ">=8" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "node_modules/jest-snapshot/node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", "dev": true, "dependencies": { - "once": "^1.3.0", - "wrappy": "1" + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": ">= 10.13.0" } }, - "node_modules/inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true - }, - "node_modules/ini": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ini/-/ini-2.0.0.tgz", - "integrity": "sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==", + "node_modules/jest-snapshot/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, "engines": { "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" } }, - "node_modules/inquirer": { - "version": "8.2.5", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.2.5.tgz", - "integrity": "sha512-QAgPDQMEgrDssk1XiwwHoOGYF9BAbUcc1+j+FhEvaOt8/cKRqyLn0U5qA6F74fGhTMGxf92pOvPBeh29jQJDTQ==", + "node_modules/jest-util": { + "version": "29.6.2", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.6.2.tgz", + "integrity": "sha512-3eX1qb6L88lJNCFlEADKOkjpXJQyZRiavX1INZ4tRnrBVr2COd3RgcTLyUiEXMNBlDU/cgYq6taUS0fExrWW4w==", "dev": true, "dependencies": { - "ansi-escapes": "^4.2.1", - "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.4.1", - "run-async": "^2.4.0", - "rxjs": "^7.5.5", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0", - "through": "^2.3.6", - "wrap-ansi": "^7.0.0" + "@jest/types": "^29.6.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" }, "engines": { - "node": ">=12.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/inquirer/node_modules/log-symbols": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", - "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", + "node_modules/jest-validate": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-27.5.1.tgz", + "integrity": "sha512-thkNli0LYTmOI1tDB3FI1S1RTp/Bqyd9pTarJwL87OIBFuqEb5Apv5EaApEudYg4g86e3CT6kM0RowkhtEnCBQ==", "dev": true, "dependencies": { - "chalk": "^4.1.0", - "is-unicode-supported": "^0.1.0" + "@jest/types": "^27.5.1", + "camelcase": "^6.2.0", + "chalk": "^4.0.0", + "jest-get-type": "^27.5.1", + "leven": "^3.1.0", + "pretty-format": "^27.5.1" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/inquirer/node_modules/ora": { - "version": "5.4.1", - "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz", - "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==", + "node_modules/jest-validate/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", "dev": true, "dependencies": { - "bl": "^4.1.0", - "chalk": "^4.1.0", - "cli-cursor": "^3.1.0", - "cli-spinners": "^2.5.0", - "is-interactive": "^1.0.0", - "is-unicode-supported": "^0.1.0", - "log-symbols": "^4.1.0", - "strip-ansi": "^6.0.0", - "wcwidth": "^1.0.1" + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/internal-slot": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.4.tgz", - "integrity": "sha512-tA8URYccNzMo94s5MQZgH8NB/XTa6HsOo0MLfXTKKEnHVVdegzaQoFZ7Jp44bdvLvY2waT5dc+j5ICEswhi7UQ==", + "node_modules/jest-validate/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", "dev": true, "dependencies": { - "get-intrinsic": "^1.1.3", - "has": "^1.0.3", - "side-channel": "^1.0.4" - }, - "engines": { - "node": ">= 0.4" + "@types/yargs-parser": "*" } }, - "node_modules/interpret": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz", - "integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==", + "node_modules/jest-validate/node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", "dev": true, "engines": { - "node": ">= 0.10" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/is-array-buffer": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.1.tgz", - "integrity": "sha512-ASfLknmY8Xa2XtB4wmbz13Wu202baeA18cJBCeCy0wXUHZF0IPyVEXqKEcd+t2fNSLLL1vC6k7lxZEojNbISXQ==", + "node_modules/jest-watcher": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-27.5.1.tgz", + "integrity": "sha512-z676SuD6Z8o8qbmEGhoEUFOM1+jfEiL3DXHK/xgEiG2EyNYfFG60jluWcupY6dATjfEsKQuibReS1djInQnoVw==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.3", - "is-typed-array": "^1.1.10" + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "jest-util": "^27.5.1", + "string-length": "^4.0.1" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", - "dev": true - }, - "node_modules/is-bigint": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", - "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", + "node_modules/jest-watcher/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", "dev": true, "dependencies": { - "has-bigints": "^1.0.1" + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-watcher/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "dev": true, + "dependencies": { + "@types/yargs-parser": "*" } }, - "node_modules/is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "node_modules/jest-watcher/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", "dev": true, "dependencies": { - "binary-extensions": "^2.0.0" + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" }, "engines": { - "node": ">=8" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/is-boolean-object": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", - "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", + "node_modules/jest-worker": { + "version": "29.6.2", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.6.2.tgz", + "integrity": "sha512-l3ccBOabTdkng8I/ORCkADz4eSMKejTYv1vB/Z83UiubqhC1oQ5Li6dWCyqOIvSifGjUBxuvxvlm6KGK2DtuAQ==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" + "@types/node": "*", + "jest-util": "^29.6.2", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/is-builtin-module": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-3.2.0.tgz", - "integrity": "sha512-phDA4oSGt7vl1n5tJvTWooWWAsXLY+2xCnxNqvKhGEzujg+A43wPlPOyDg3C8XQHN+6k/JTQWJ/j0dQh/qr+Hw==", + "node_modules/jest-worker/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", "dev": true, "dependencies": { - "builtin-modules": "^3.3.0" + "has-flag": "^4.0.0" }, "engines": { - "node": ">=6" + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/chalk/supports-color?sponsor=1" } }, - "node_modules/is-callable": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", - "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", + "node_modules/js-sdsl": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.3.0.tgz", + "integrity": "sha512-mifzlm2+5nZ+lEcLJMoBK0/IH/bDg8XnJfd/Wq6IP+xoCjLZsTOnV2QpxlVbX9bMnkl5PdEjNtBJ9Cj1NjifhQ==", "dev": true, - "engines": { - "node": ">= 0.4" - }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "type": "opencollective", + "url": "https://opencollective.com/js-sdsl" } }, - "node_modules/is-ci": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", - "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true + }, + "node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", "dev": true, "dependencies": { - "ci-info": "^2.0.0" + "argparse": "^2.0.1" }, "bin": { - "is-ci": "bin.js" + "js-yaml": "bin/js-yaml.js" } }, - "node_modules/is-ci/node_modules/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 - }, - "node_modules/is-core-module": { - "version": "2.11.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz", - "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==", + "node_modules/jsdom": { + "version": "16.7.0", + "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-16.7.0.tgz", + "integrity": "sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw==", "dev": true, "dependencies": { - "has": "^1.0.3" + "abab": "^2.0.5", + "acorn": "^8.2.4", + "acorn-globals": "^6.0.0", + "cssom": "^0.4.4", + "cssstyle": "^2.3.0", + "data-urls": "^2.0.0", + "decimal.js": "^10.2.1", + "domexception": "^2.0.1", + "escodegen": "^2.0.0", + "form-data": "^3.0.0", + "html-encoding-sniffer": "^2.0.1", + "http-proxy-agent": "^4.0.1", + "https-proxy-agent": "^5.0.0", + "is-potential-custom-element-name": "^1.0.1", + "nwsapi": "^2.2.0", + "parse5": "6.0.1", + "saxes": "^5.0.1", + "symbol-tree": "^3.2.4", + "tough-cookie": "^4.0.0", + "w3c-hr-time": "^1.0.2", + "w3c-xmlserializer": "^2.0.0", + "webidl-conversions": "^6.1.0", + "whatwg-encoding": "^1.0.5", + "whatwg-mimetype": "^2.3.0", + "whatwg-url": "^8.5.0", + "ws": "^7.4.6", + "xml-name-validator": "^3.0.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "canvas": "^2.5.0" + }, + "peerDependenciesMeta": { + "canvas": { + "optional": true + } } }, - "node_modules/is-date-object": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", - "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "node_modules/jsdom/node_modules/agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", "dev": true, "dependencies": { - "has-tostringtag": "^1.0.0" + "debug": "4" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">= 6.0.0" } }, - "node_modules/is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "node_modules/jsdom/node_modules/http-proxy-agent": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", + "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", "dev": true, + "dependencies": { + "@tootallnate/once": "1", + "agent-base": "6", + "debug": "4" + }, "engines": { - "node": ">=0.10.0" + "node": ">= 6" } }, - "node_modules/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", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "node_modules/jsdom/node_modules/https-proxy-agent": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", "dev": true, + "dependencies": { + "agent-base": "6", + "debug": "4" + }, "engines": { - "node": ">=8" + "node": ">= 6" } }, - "node_modules/is-generator-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", - "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==", + "node_modules/jsdom/node_modules/ws": { + "version": "7.5.9", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz", + "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", "dev": true, "engines": { - "node": ">=6" + "node": ">=8.3.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } } }, - "node_modules/is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", "dev": true, - "dependencies": { - "is-extglob": "^2.1.1" + "bin": { + "jsesc": "bin/jsesc" }, "engines": { - "node": ">=0.10.0" + "node": ">=4" } }, - "node_modules/is-installed-globally": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.4.0.tgz", - "integrity": "sha512-iwGqO3J21aaSkC7jWnHP/difazwS7SFeIqxv6wEtLU8Y5KlzFTjyqcSIT0d8s4+dDhKytsk9PJZ2BkS5eZwQRQ==", + "node_modules/json-buffer": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", + "integrity": "sha512-CuUqjv0FUZIdXkHPI8MezCnFCdaTAacej1TZYulLoAg1h/PhwkdXFN4V/gzY4g+fMBCOV2xF+rp7t2XD2ns/NQ==", + "dev": true + }, + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "dev": true + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" + }, + "node_modules/json-schema-typed": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/json-schema-typed/-/json-schema-typed-7.0.3.tgz", + "integrity": "sha512-7DE8mpG+/fVw+dTpjbxnx47TaMnDfOI1jwft9g1VybltZCduyRQPJPvc+zzKY9WPHxhPWczyFuYa6I8Mw4iU5A==" + }, + "node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", + "dev": true + }, + "node_modules/json-typescript": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/json-typescript/-/json-typescript-1.1.2.tgz", + "integrity": "sha512-Np07MUsYMKbB0nNlw/MMIRjUK7ehO48LA4FsrzrhCfTUxMKbvOBAo0sc0b4nQ80ge9d32sModCunCgoyUojgUA==" + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", "dev": true, + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jsonapi-typescript": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/jsonapi-typescript/-/jsonapi-typescript-0.1.3.tgz", + "integrity": "sha512-uPcPS01GeM+4HIyn18s7l1yD2S3uLZy2TX1UkQffCM0bLb3TMwudXUyVXPHTMZ4vdZT8MqKqN2vjB5PogTAdFQ==", "dependencies": { - "global-dirs": "^3.0.0", - "is-path-inside": "^3.0.2" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "json-typescript": "^1.0.0" } }, - "node_modules/is-interactive": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz", - "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==", + "node_modules/jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", "dev": true, - "engines": { - "node": ">=8" + "optionalDependencies": { + "graceful-fs": "^4.1.6" } }, - "node_modules/is-negative-zero": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", - "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", - "dev": true, - "engines": { - "node": ">= 0.4" + "node_modules/jspdf": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/jspdf/-/jspdf-2.5.1.tgz", + "integrity": "sha512-hXObxz7ZqoyhxET78+XR34Xu2qFGrJJ2I2bE5w4SM8eFaFEkW2xcGRVUss360fYelwRSid/jT078kbNvmoW0QA==", + "dependencies": { + "@babel/runtime": "^7.14.0", + "atob": "^2.1.2", + "btoa": "^1.2.1", + "fflate": "^0.4.8" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "optionalDependencies": { + "canvg": "^3.0.6", + "core-js": "^3.6.0", + "dompurify": "^2.2.0", + "html2canvas": "^1.0.0-rc.5" } }, - "node_modules/is-npm": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-5.0.0.tgz", - "integrity": "sha512-WW/rQLOazUq+ST/bCAVBp/2oMERWLsR7OrKyt052dNDk4DHcDE0/7QSXITlmi+VBcV13DfIbysG3tZJm5RfdBA==", - "dev": true, - "engines": { - "node": ">=10" - }, + "node_modules/jspdf/node_modules/core-js": { + "version": "3.27.2", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.27.2.tgz", + "integrity": "sha512-9ashVQskuh5AZEZ1JdQWp1GqSoC1e1G87MzRqg2gIfVAQ7Qn9K+uFj8EcniUFA4P2NLZfV+TOlX1SzoKfo+s7w==", + "hasInstallScript": true, + "optional": true, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "type": "opencollective", + "url": "https://opencollective.com/core-js" } }, - "node_modules/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "node_modules/jsx-ast-utils": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.3.tgz", + "integrity": "sha512-fYQHZTZ8jSfmWZ0iyzfwiU4WDX4HpHbMCZ3gPlWYiCl3BoeOTsqKBqnTVfH2rYT7eP5c3sVbeSPHnnJOaTrWiw==", "dev": true, + "dependencies": { + "array-includes": "^3.1.5", + "object.assign": "^4.1.3" + }, "engines": { - "node": ">=0.12.0" + "node": ">=4.0" } }, - "node_modules/is-number-object": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", - "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", + "node_modules/jszip": { + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.10.1.tgz", + "integrity": "sha512-xXDvecyTpGLrqFrvkrUSoxxfJI5AH7U8zxxtVclpsUtMCq4JQ290LY8AW5c7Ggnr/Y/oK+bQMbqK2qmtk3pN4g==", "dev": true, "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "lie": "~3.3.0", + "pako": "~1.0.2", + "readable-stream": "~2.3.6", + "setimmediate": "^1.0.5" } }, - "node_modules/is-obj": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", - "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", + "node_modules/keyv": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz", + "integrity": "sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==", "dev": true, - "engines": { - "node": ">=8" + "dependencies": { + "json-buffer": "3.0.0" } }, - "node_modules/is-path-inside": { + "node_modules/kleur": { "version": "3.0.3", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", - "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", + "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", "dev": true, "engines": { - "node": ">=8" + "node": ">=6" } }, - "node_modules/is-plain-obj": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz", - "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==", + "node_modules/latest-version": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-5.1.0.tgz", + "integrity": "sha512-weT+r0kTkRQdCdYCNtkMwWXQTMEswKrFBkm4ckQOMVhhqhIMI1UT2hMj+1iigIhgSZm5gTmrRXBNoGUgaTY1xA==", "dev": true, + "dependencies": { + "package-json": "^6.3.0" + }, "engines": { "node": ">=8" } }, - "node_modules/is-plain-object": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", - "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", + "node_modules/leven": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", + "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", "dev": true, "engines": { - "node": ">=0.10.0" + "node": ">=6" } }, - "node_modules/is-potential-custom-element-name": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz", - "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==", - "dev": true - }, - "node_modules/is-regex": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", - "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", + "node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">= 0.8.0" } }, - "node_modules/is-shared-array-buffer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", - "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", + "node_modules/lie": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/lie/-/lie-3.3.0.tgz", + "integrity": "sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ==", "dev": true, "dependencies": { - "call-bind": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "immediate": "~3.0.5" } }, - "node_modules/is-stream": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", - "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "node_modules/lilconfig": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.0.6.tgz", + "integrity": "sha512-9JROoBW7pobfsx+Sq2JsASvCo6Pfo6WWoUW79HuB1BCoBXD4PLWJPqDF6fNj67pqBYTbAHkE57M1kS/+L1neOg==", "dev": true, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=10" } }, - "node_modules/is-string": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", - "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", - "dev": true, - "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } + "node_modules/line-reader": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/line-reader/-/line-reader-0.2.4.tgz", + "integrity": "sha512-342xzyZZS9uTiKwHJcMacopVl/WjrMMCZS1Qg4Uhl/WBknWRrGFdKOIS1Kec6SaiTcZMtmuxWvvIbPXj/+FMjA==", + "dev": true }, - "node_modules/is-symbol": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", - "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", + "dev": true + }, + "node_modules/load-json-file": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-6.2.0.tgz", + "integrity": "sha512-gUD/epcRms75Cw8RT1pUdHugZYM5ce64ucs2GEISABwkRsOQr0q2wm/MV2TKThycIe5e0ytRweW2RZxclogCdQ==", "dev": true, "dependencies": { - "has-symbols": "^1.0.2" + "graceful-fs": "^4.1.15", + "parse-json": "^5.0.0", + "strip-bom": "^4.0.0", + "type-fest": "^0.6.0" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=8" } }, - "node_modules/is-typed-array": { - "version": "1.1.10", - "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.10.tgz", - "integrity": "sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A==", + "node_modules/load-json-file/node_modules/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, - "dependencies": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-tostringtag": "^1.0.0" - }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==", - "dev": true - }, - "node_modules/is-unicode-supported": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", - "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", + "node": ">=8" + } + }, + "node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", "dev": true, + "dependencies": { + "p-locate": "^5.0.0" + }, "engines": { "node": ">=10" }, @@ -5995,565 +10352,429 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/is-url": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/is-url/-/is-url-1.2.4.tgz", - "integrity": "sha512-ITvGim8FhRiYe4IQ5uHSkj7pVaPDrCTkNd3yq3cV7iZAcJdHTUMPMEHcqSOy9xZ9qFenQCvi+2wjH9a1nXqHww==", + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", "dev": true }, - "node_modules/is-weakref": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", - "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } + "node_modules/lodash-es": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz", + "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==", + "peer": true }, - "node_modules/is-yarn-global": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/is-yarn-global/-/is-yarn-global-0.3.0.tgz", - "integrity": "sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw==", + "node_modules/lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", "dev": true }, - "node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "node_modules/lodash.isplainobject": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", + "integrity": "sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==", "dev": true }, - "node_modules/isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "node_modules/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 }, - "node_modules/istanbul-lib-coverage": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz", - "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-instrument": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", - "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", + "node_modules/log-symbols": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-3.0.0.tgz", + "integrity": "sha512-dSkNGuI7iG3mfvDzUuYZyvk5dD9ocYCYzNU6CYDE6+Xqd+gwme6Z00NS3dUh8mq/73HaEtT7m6W+yUPtU6BZnQ==", "dev": true, "dependencies": { - "@babel/core": "^7.12.3", - "@babel/parser": "^7.14.7", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-coverage": "^3.2.0", - "semver": "^6.3.0" + "chalk": "^2.4.2" }, "engines": { "node": ">=8" } }, - "node_modules/istanbul-lib-instrument/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/istanbul-lib-report": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", - "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==", + "node_modules/log-symbols/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", "dev": true, "dependencies": { - "istanbul-lib-coverage": "^3.0.0", - "make-dir": "^3.0.0", - "supports-color": "^7.1.0" + "color-convert": "^1.9.0" }, "engines": { - "node": ">=8" + "node": ">=4" } }, - "node_modules/istanbul-lib-source-maps": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", - "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", + "node_modules/log-symbols/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", "dev": true, "dependencies": { - "debug": "^4.1.1", - "istanbul-lib-coverage": "^3.0.0", - "source-map": "^0.6.1" + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" }, "engines": { - "node": ">=10" + "node": ">=4" } }, - "node_modules/istanbul-reports": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.5.tgz", - "integrity": "sha512-nUsEMa9pBt/NOHqbcbeJEgqIlY/K7rVWUX6Lql2orY5e9roQOthbR3vtY4zzf2orPELg80fnxxk9zUyPlgwD1w==", + "node_modules/log-symbols/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", "dev": true, "dependencies": { - "html-escaper": "^2.0.0", - "istanbul-lib-report": "^3.0.0" - }, - "engines": { - "node": ">=8" + "color-name": "1.1.3" } }, - "node_modules/jest": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest/-/jest-27.5.1.tgz", - "integrity": "sha512-Yn0mADZB89zTtjkPJEXwrac3LHudkQMR+Paqa8uxJHCBr9agxztUifWCyiYrjhMPBoUVBjyny0I7XH6ozDr7QQ==", + "node_modules/log-symbols/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "node_modules/log-symbols/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", "dev": true, - "dependencies": { - "@jest/core": "^27.5.1", - "import-local": "^3.0.2", - "jest-cli": "^27.5.1" - }, - "bin": { - "jest": "bin/jest.js" - }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - }, - "peerDependencies": { - "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" - }, - "peerDependenciesMeta": { - "node-notifier": { - "optional": true - } + "node": ">=0.8.0" } }, - "node_modules/jest-changed-files": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-27.5.1.tgz", - "integrity": "sha512-buBLMiByfWGCoMsLLzGUUSpAmIAGnbR2KJoMN10ziLhOLvP4e0SlypHnAel8iqQXTrcbmfEY9sSqae5sgUsTvw==", + "node_modules/log-symbols/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "execa": "^5.0.0", - "throat": "^6.0.1" - }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=4" } }, - "node_modules/jest-circus": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-27.5.1.tgz", - "integrity": "sha512-D95R7x5UtlMA5iBYsOHFFbMD/GVA4R/Kdq15f7xYWUfWHBto9NYRsOvnSauTgdF+ogCpJ4tyKOXhUifxS65gdw==", + "node_modules/log-symbols/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", "dev": true, "dependencies": { - "@jest/environment": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "co": "^4.6.0", - "dedent": "^0.7.0", - "expect": "^27.5.1", - "is-generator-fn": "^2.0.0", - "jest-each": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-runtime": "^27.5.1", - "jest-snapshot": "^27.5.1", - "jest-util": "^27.5.1", - "pretty-format": "^27.5.1", - "slash": "^3.0.0", - "stack-utils": "^2.0.3", - "throat": "^6.0.1" + "has-flag": "^3.0.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=4" } }, - "node_modules/jest-cli": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-27.5.1.tgz", - "integrity": "sha512-Hc6HOOwYq4/74/c62dEE3r5elx8wjYqxY0r0G/nFrLDPMFRu6RA/u8qINOIkvhxG7mMQ5EJsOGfRpI8L6eFUVw==", + "node_modules/loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", "dev": true, "dependencies": { - "@jest/core": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/types": "^27.5.1", - "chalk": "^4.0.0", - "exit": "^0.1.2", - "graceful-fs": "^4.2.9", - "import-local": "^3.0.2", - "jest-config": "^27.5.1", - "jest-util": "^27.5.1", - "jest-validate": "^27.5.1", - "prompts": "^2.0.1", - "yargs": "^16.2.0" + "js-tokens": "^3.0.0 || ^4.0.0" }, "bin": { - "jest": "bin/jest.js" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - }, - "peerDependencies": { - "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" - }, - "peerDependenciesMeta": { - "node-notifier": { - "optional": true - } - } - }, - "node_modules/jest-cli/node_modules/cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", - "dev": true, - "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" + "loose-envify": "cli.js" } }, - "node_modules/jest-cli/node_modules/yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", - "dev": true, - "dependencies": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.0", - "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" - }, + "node_modules/lowercase-keys": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", + "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", + "dev": true, "engines": { - "node": ">=10" + "node": ">=0.10.0" } }, - "node_modules/jest-cli/node_modules/yargs-parser": { - "version": "20.2.9", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", - "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "node_modules/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, - "engines": { - "node": ">=10" + "dependencies": { + "yallist": "^3.0.2" } }, - "node_modules/jest-config": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-27.5.1.tgz", - "integrity": "sha512-5sAsjm6tGdsVbW9ahcChPAFCk4IlkQUknH5AvKjuLTSlcO/wCZKyFdn7Rg0EkC+OGgWODEy2hDpWB1PgzH0JNA==", + "node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", "dev": true, "dependencies": { - "@babel/core": "^7.8.0", - "@jest/test-sequencer": "^27.5.1", - "@jest/types": "^27.5.1", - "babel-jest": "^27.5.1", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "deepmerge": "^4.2.2", - "glob": "^7.1.1", - "graceful-fs": "^4.2.9", - "jest-circus": "^27.5.1", - "jest-environment-jsdom": "^27.5.1", - "jest-environment-node": "^27.5.1", - "jest-get-type": "^27.5.1", - "jest-jasmine2": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-runner": "^27.5.1", - "jest-util": "^27.5.1", - "jest-validate": "^27.5.1", - "micromatch": "^4.0.4", - "parse-json": "^5.2.0", - "pretty-format": "^27.5.1", - "slash": "^3.0.0", - "strip-json-comments": "^3.1.1" + "semver": "^6.0.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - }, - "peerDependencies": { - "ts-node": ">=9.0.0" + "node": ">=8" }, - "peerDependenciesMeta": { - "ts-node": { - "optional": true - } + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-diff": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.5.1.tgz", - "integrity": "sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==", + "node_modules/make-dir/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", "dev": true, - "dependencies": { - "chalk": "^4.0.0", - "diff-sequences": "^27.5.1", - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "bin": { + "semver": "bin/semver.js" } }, - "node_modules/jest-docblock": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-27.5.1.tgz", - "integrity": "sha512-rl7hlABeTsRYxKiUfpHrQrG4e2obOiTQWfMEH3PxPjOtdsfLQO4ReWSZaQ7DETm4xu07rl4q/h4zcKXyU0/OzQ==", + "node_modules/make-error": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", + "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", + "dev": true + }, + "node_modules/makeerror": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", + "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", "dev": true, "dependencies": { - "detect-newline": "^3.0.0" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "tmpl": "1.0.5" } }, - "node_modules/jest-each": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-27.5.1.tgz", - "integrity": "sha512-1Ff6p+FbhT/bXQnEouYy00bkNSY7OUpfIcmdl8vZ31A1UUaurOLPA8a8BbJOF2RDUElwJhmeaV7LnagI+5UwNQ==", + "node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "chalk": "^4.0.0", - "jest-get-type": "^27.5.1", - "jest-util": "^27.5.1", - "pretty-format": "^27.5.1" - }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">= 8" } }, - "node_modules/jest-environment-jsdom": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-27.5.1.tgz", - "integrity": "sha512-TFBvkTC1Hnnnrka/fUb56atfDtJ9VMZ94JkjTbggl1PEpwrYtUBKMezB3inLmWqQsXYLcMwNoDQwoBTAvFfsfw==", + "node_modules/micromatch": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", + "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", "dev": true, "dependencies": { - "@jest/environment": "^27.5.1", - "@jest/fake-timers": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "jest-mock": "^27.5.1", - "jest-util": "^27.5.1", - "jsdom": "^16.6.0" + "braces": "^3.0.2", + "picomatch": "^2.3.1" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=8.6" } }, - "node_modules/jest-environment-node": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-27.5.1.tgz", - "integrity": "sha512-Jt4ZUnxdOsTGwSRAfKEnE6BcwsSPNOijjwifq5sDFSA2kesnXTvNqKHYgM0hDq3549Uf/KzdXNYn4wMZJPlFLw==", + "node_modules/mime": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-3.0.0.tgz", + "integrity": "sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==", "dev": true, - "dependencies": { - "@jest/environment": "^27.5.1", - "@jest/fake-timers": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "jest-mock": "^27.5.1", - "jest-util": "^27.5.1" + "bin": { + "mime": "cli.js" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=10.0.0" } }, - "node_modules/jest-get-type": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", - "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", "dev": true, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">= 0.6" } }, - "node_modules/jest-haste-map": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", - "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", "dev": true, "dependencies": { - "@jest/types": "^27.5.1", - "@types/graceful-fs": "^4.1.2", - "@types/node": "*", - "anymatch": "^3.0.3", - "fb-watchman": "^2.0.0", - "graceful-fs": "^4.2.9", - "jest-regex-util": "^27.5.1", - "jest-serializer": "^27.5.1", - "jest-util": "^27.5.1", - "jest-worker": "^27.5.1", - "micromatch": "^4.0.4", - "walker": "^1.0.7" + "mime-db": "1.52.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - }, - "optionalDependencies": { - "fsevents": "^2.3.2" + "node": ">= 0.6" } }, - "node_modules/jest-jasmine2": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-27.5.1.tgz", - "integrity": "sha512-jtq7VVyG8SqAorDpApwiJJImd0V2wv1xzdheGHRGyuT7gZm6gG47QEskOlzsN1PG/6WNaCo5pmwMHDf3AkG2pQ==", + "node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", "dev": true, - "dependencies": { - "@jest/environment": "^27.5.1", - "@jest/source-map": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "co": "^4.6.0", - "expect": "^27.5.1", - "is-generator-fn": "^2.0.0", - "jest-each": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-runtime": "^27.5.1", - "jest-snapshot": "^27.5.1", - "jest-util": "^27.5.1", - "pretty-format": "^27.5.1", - "throat": "^6.0.1" - }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=6" } }, - "node_modules/jest-leak-detector": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-27.5.1.tgz", - "integrity": "sha512-POXfWAMvfU6WMUXftV4HolnJfnPOGEu10fscNCA76KBpRRhcMN2c8d3iT2pxQS3HLbA+5X4sOUPzYO2NUyIlHQ==", + "node_modules/mimic-response": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz", + "integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==", "dev": true, - "dependencies": { - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" + "engines": { + "node": ">=10" }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/min-indent": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", + "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", + "dev": true, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=4" } }, - "node_modules/jest-matcher-utils": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz", - "integrity": "sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==", + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", "dev": true, "dependencies": { - "chalk": "^4.0.0", - "jest-diff": "^27.5.1", - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" + "brace-expansion": "^1.1.7" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "*" } }, - "node_modules/jest-message-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", - "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", + "node_modules/minimist": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz", + "integrity": "sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/mitt": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/mitt/-/mitt-3.0.1.tgz", + "integrity": "sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw==", + "dev": true + }, + "node_modules/mkdirp-classic": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz", + "integrity": "sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==", + "dev": true + }, + "node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/multimap": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/multimap/-/multimap-1.1.0.tgz", + "integrity": "sha512-0ZIR9PasPxGXmRsEF8jsDzndzHDj7tIav+JUmvIFB/WHswliFnquxECT/De7GR4yg99ky/NlRKJT82G1y271bw==", + "dev": true + }, + "node_modules/mute-stream": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", + "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", + "dev": true + }, + "node_modules/nanoid": { + "version": "3.3.4", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz", + "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==", "dev": true, - "dependencies": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^27.5.1", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.4", - "pretty-format": "^27.5.1", - "slash": "^3.0.0", - "stack-utils": "^2.0.3" + "bin": { + "nanoid": "bin/nanoid.cjs" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" } }, - "node_modules/jest-mock": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-27.5.1.tgz", - "integrity": "sha512-K4jKbY1d4ENhbrG2zuPWaQBvDly+iZ2yAW+T1fATN78hc0sInwn7wZB8XtlNnvHug5RMwV897Xm4LqmPM4e2Og==", + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "dev": true + }, + "node_modules/natural-compare-lite": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz", + "integrity": "sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==", + "dev": true + }, + "node_modules/netmask": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/netmask/-/netmask-2.0.2.tgz", + "integrity": "sha512-dBpDMdxv9Irdq66304OLfEmQ9tbNRFnFTuZiLo+bD+r332bBmMJ8GBLXklIXXgxd3+v9+KUnZaUR5PJMa75Gsg==", "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*" - }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">= 0.4.0" } }, - "node_modules/jest-pnp-resolver": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", - "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==", + "node_modules/node-fetch": { + "version": "2.6.12", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.12.tgz", + "integrity": "sha512-C/fGU2E8ToujUivIO0H+tpQ6HWo4eEmchoPIoXtxCrVghxdKq+QOHqEZW7tuP3KlV3bC8FRMO5nMCC7Zm1VP6g==", "dev": true, + "dependencies": { + "whatwg-url": "^5.0.0" + }, "engines": { - "node": ">=6" + "node": "4.x || >=6.0.0" }, "peerDependencies": { - "jest-resolve": "*" + "encoding": "^0.1.0" }, "peerDependenciesMeta": { - "jest-resolve": { + "encoding": { "optional": true } } }, - "node_modules/jest-regex-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", - "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", - "dev": true, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } + "node_modules/node-fetch/node_modules/tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", + "dev": true }, - "node_modules/jest-resolve": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-27.5.1.tgz", - "integrity": "sha512-FFDy8/9E6CV83IMbDpcjOhumAQPDyETnU2KZ1O98DwTnz8AOBsW/Xv3GySr1mOZdItLR+zDZ7I/UdTFbgSOVCw==", + "node_modules/node-fetch/node_modules/webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", + "dev": true + }, + "node_modules/node-fetch/node_modules/whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", "dev": true, "dependencies": { - "@jest/types": "^27.5.1", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", - "jest-pnp-resolver": "^1.2.2", - "jest-util": "^27.5.1", - "jest-validate": "^27.5.1", - "resolve": "^1.20.0", - "resolve.exports": "^1.1.0", - "slash": "^3.0.0" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" } }, - "node_modules/jest-resolve-dependencies": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-27.5.1.tgz", - "integrity": "sha512-QQOOdY4PE39iawDn5rzbIePNigfe5B9Z91GDD1ae/xNDlu9kaat8QQ5EKnNmVWPV54hUdxCVwwj6YMgR2O7IOg==", + "node_modules/node-int64": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", + "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==", + "dev": true + }, + "node_modules/node-releases": { + "version": "2.0.13", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.13.tgz", + "integrity": "sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==", + "dev": true + }, + "node_modules/normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", "dev": true, "dependencies": { - "@jest/types": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-snapshot": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" } }, - "node_modules/jest-resolve/node_modules/resolve": { + "node_modules/normalize-package-data/node_modules/resolve": { "version": "1.22.1", "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", @@ -6570,516 +10791,499 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-runner": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-27.5.1.tgz", - "integrity": "sha512-g4NPsM4mFCOwFKXO4p/H/kWGdJp9V8kURY2lX8Me2drgXqG7rrZAx5kv+5H7wtt/cdFIjhqYx1HrlqWHaOvDaQ==", + "node_modules/normalize-package-data/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", "dev": true, - "dependencies": { - "@jest/console": "^27.5.1", - "@jest/environment": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "emittery": "^0.8.1", - "graceful-fs": "^4.2.9", - "jest-docblock": "^27.5.1", - "jest-environment-jsdom": "^27.5.1", - "jest-environment-node": "^27.5.1", - "jest-haste-map": "^27.5.1", - "jest-leak-detector": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-runtime": "^27.5.1", - "jest-util": "^27.5.1", - "jest-worker": "^27.5.1", - "source-map-support": "^0.5.6", - "throat": "^6.0.1" - }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=0.10.0" } }, - "node_modules/jest-runtime": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-27.5.1.tgz", - "integrity": "sha512-o7gxw3Gf+H2IGt8fv0RiyE1+r83FJBRruoA+FXrlHw6xEyBsU8ugA6IPfTdVyA0w8HClpbK+DGJxH59UrNMx8A==", + "node_modules/normalize-range": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", + "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/normalize-url": { + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.1.tgz", + "integrity": "sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==", "dev": true, - "dependencies": { - "@jest/environment": "^27.5.1", - "@jest/fake-timers": "^27.5.1", - "@jest/globals": "^27.5.1", - "@jest/source-map": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "chalk": "^4.0.0", - "cjs-module-lexer": "^1.0.0", - "collect-v8-coverage": "^1.0.0", - "execa": "^5.0.0", - "glob": "^7.1.3", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-mock": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-snapshot": "^27.5.1", - "jest-util": "^27.5.1", - "slash": "^3.0.0", - "strip-bom": "^4.0.0" - }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=8" } }, - "node_modules/jest-serializer": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-27.5.1.tgz", - "integrity": "sha512-jZCyo6iIxO1aqUxpuBlwTDMkzOAJS4a3eYz3YzgxxVQFwLeSA7Jfq5cbqCY+JLvTDrWirgusI/0KwxKMgrdf7w==", + "node_modules/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, "dependencies": { - "@types/node": "*", - "graceful-fs": "^4.2.9" + "path-key": "^3.0.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=8" } }, - "node_modules/jest-snapshot": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-27.5.1.tgz", - "integrity": "sha512-yYykXI5a0I31xX67mgeLw1DZ0bJB+gpq5IpSuCAoyDi0+BhgU/RIrL+RTzDmkNTchvDFWKP8lp+w/42Z3us5sA==", + "node_modules/nwsapi": { + "version": "2.2.7", + "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.7.tgz", + "integrity": "sha512-ub5E4+FBPKwAZx0UwIQOjYWGHTEq5sPqHQNRN8Z9e4A7u3Tj1weLJsL59yH9vmvqEtBHaOmT6cYQKIZOxp35FQ==", + "dev": true + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", "dev": true, - "dependencies": { - "@babel/core": "^7.7.2", - "@babel/generator": "^7.7.2", - "@babel/plugin-syntax-typescript": "^7.7.2", - "@babel/traverse": "^7.7.2", - "@babel/types": "^7.0.0", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/babel__traverse": "^7.0.4", - "@types/prettier": "^2.1.5", - "babel-preset-current-node-syntax": "^1.0.0", - "chalk": "^4.0.0", - "expect": "^27.5.1", - "graceful-fs": "^4.2.9", - "jest-diff": "^27.5.1", - "jest-get-type": "^27.5.1", - "jest-haste-map": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-util": "^27.5.1", - "natural-compare": "^1.4.0", - "pretty-format": "^27.5.1", - "semver": "^7.3.2" - }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=0.10.0" } }, - "node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "node_modules/object-hash": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-2.2.0.tgz", + "integrity": "sha512-gScRMn0bS5fH+IuwyIFgnh9zBdo4DV+6GhygmWM9HyNJSgS0hScp1f5vjtm7oIIOiT9trXrShAkLFSc2IqKNgw==", "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">= 6" } }, - "node_modules/jest-validate": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-27.5.1.tgz", - "integrity": "sha512-thkNli0LYTmOI1tDB3FI1S1RTp/Bqyd9pTarJwL87OIBFuqEb5Apv5EaApEudYg4g86e3CT6kM0RowkhtEnCBQ==", + "node_modules/object-inspect": { + "version": "1.12.3", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.3.tgz", + "integrity": "sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "camelcase": "^6.2.0", - "chalk": "^4.0.0", - "jest-get-type": "^27.5.1", - "leven": "^3.1.0", - "pretty-format": "^27.5.1" - }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">= 0.4" } }, - "node_modules/jest-validate/node_modules/camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "node_modules/object.assign": { + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", + "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "has-symbols": "^1.0.3", + "object-keys": "^1.1.1" + }, "engines": { - "node": ">=10" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-watcher": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-27.5.1.tgz", - "integrity": "sha512-z676SuD6Z8o8qbmEGhoEUFOM1+jfEiL3DXHK/xgEiG2EyNYfFG60jluWcupY6dATjfEsKQuibReS1djInQnoVw==", + "node_modules/object.entries": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.6.tgz", + "integrity": "sha512-leTPzo4Zvg3pmbQ3rDK69Rl8GQvIqMWubrkxONG9/ojtFE2rD9fjMKfSI5BxW3osRH1m6VdzmqK8oAY9aT4x5w==", "dev": true, "dependencies": { - "@jest/test-result": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "ansi-escapes": "^4.2.1", - "chalk": "^4.0.0", - "jest-util": "^27.5.1", - "string-length": "^4.0.1" + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">= 0.4" } }, - "node_modules/jest-worker": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", - "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "node_modules/object.fromentries": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.6.tgz", + "integrity": "sha512-VciD13dswC4j1Xt5394WR4MzmAQmlgN72phd/riNp9vtD7tp4QQWJ0R4wvclXcafgcYK8veHRed2W6XeGBvcfg==", "dev": true, "dependencies": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" }, "engines": { - "node": ">= 10.13.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-worker/node_modules/supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "node_modules/object.hasown": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/object.hasown/-/object.hasown-1.1.2.tgz", + "integrity": "sha512-B5UIT3J1W+WuWIU55h0mjlwaqxiE5vYENJXIXZ4VFe05pNYrkKuK0U/6aFcb0pKywYJh7IhfoqUfKVmrJJHZHw==", "dev": true, "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=10" + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" }, "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/js-sdsl": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.3.0.tgz", - "integrity": "sha512-mifzlm2+5nZ+lEcLJMoBK0/IH/bDg8XnJfd/Wq6IP+xoCjLZsTOnV2QpxlVbX9bMnkl5PdEjNtBJ9Cj1NjifhQ==", + "node_modules/object.values": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.6.tgz", + "integrity": "sha512-FVVTkD1vENCsAcwNs9k6jea2uHC/X0+JcjG8YA60FN5CMaJmG95wT9jek/xX9nornqGRrBkKtzuAu2wuHpKqvw==", "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "engines": { + "node": ">= 0.4" + }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/js-sdsl" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dev": true, + "dependencies": { + "wrappy": "1" + } }, - "node_modules/js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", "dev": true, "dependencies": { - "argparse": "^2.0.1" + "mimic-fn": "^2.1.0" }, - "bin": { - "js-yaml": "bin/js-yaml.js" + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jsdom": { - "version": "16.7.0", - "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-16.7.0.tgz", - "integrity": "sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw==", + "node_modules/optionator": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", + "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", "dev": true, "dependencies": { - "abab": "^2.0.5", - "acorn": "^8.2.4", - "acorn-globals": "^6.0.0", - "cssom": "^0.4.4", - "cssstyle": "^2.3.0", - "data-urls": "^2.0.0", - "decimal.js": "^10.2.1", - "domexception": "^2.0.1", - "escodegen": "^2.0.0", - "form-data": "^3.0.0", - "html-encoding-sniffer": "^2.0.1", - "http-proxy-agent": "^4.0.1", - "https-proxy-agent": "^5.0.0", - "is-potential-custom-element-name": "^1.0.1", - "nwsapi": "^2.2.0", - "parse5": "6.0.1", - "saxes": "^5.0.1", - "symbol-tree": "^3.2.4", - "tough-cookie": "^4.0.0", - "w3c-hr-time": "^1.0.2", - "w3c-xmlserializer": "^2.0.0", - "webidl-conversions": "^6.1.0", - "whatwg-encoding": "^1.0.5", - "whatwg-mimetype": "^2.3.0", - "whatwg-url": "^8.5.0", - "ws": "^7.4.6", - "xml-name-validator": "^3.0.0" + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0", + "word-wrap": "^1.2.3" }, "engines": { - "node": ">=10" - }, - "peerDependencies": { - "canvas": "^2.5.0" - }, - "peerDependenciesMeta": { - "canvas": { - "optional": true - } + "node": ">= 0.8.0" } }, - "node_modules/jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "node_modules/ora": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ora/-/ora-4.1.1.tgz", + "integrity": "sha512-sjYP8QyVWBpBZWD6Vr1M/KwknSw6kJOz41tvGMlwWeClHBtYKTbHMki1PsLZnxKpXMPbTKv9b3pjQu3REib96A==", "dev": true, - "bin": { - "jsesc": "bin/jsesc" + "dependencies": { + "chalk": "^3.0.0", + "cli-cursor": "^3.1.0", + "cli-spinners": "^2.2.0", + "is-interactive": "^1.0.0", + "log-symbols": "^3.0.0", + "mute-stream": "0.0.8", + "strip-ansi": "^6.0.0", + "wcwidth": "^1.0.1" }, "engines": { - "node": ">=4" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/json-buffer": { + "node_modules/ora/node_modules/chalk": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", - "integrity": "sha512-CuUqjv0FUZIdXkHPI8MezCnFCdaTAacej1TZYulLoAg1h/PhwkdXFN4V/gzY4g+fMBCOV2xF+rp7t2XD2ns/NQ==", - "dev": true - }, - "node_modules/json-parse-even-better-errors": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", - "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", - "dev": true - }, - "node_modules/json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" - }, - "node_modules/json-schema-typed": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/json-schema-typed/-/json-schema-typed-7.0.3.tgz", - "integrity": "sha512-7DE8mpG+/fVw+dTpjbxnx47TaMnDfOI1jwft9g1VybltZCduyRQPJPvc+zzKY9WPHxhPWczyFuYa6I8Mw4iU5A==" - }, - "node_modules/json-stable-stringify-without-jsonify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", - "dev": true - }, - "node_modules/json-typescript": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/json-typescript/-/json-typescript-1.1.2.tgz", - "integrity": "sha512-Np07MUsYMKbB0nNlw/MMIRjUK7ehO48LA4FsrzrhCfTUxMKbvOBAo0sc0b4nQ80ge9d32sModCunCgoyUojgUA==" - }, - "node_modules/json5": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", - "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", "dev": true, - "bin": { - "json5": "lib/cli.js" + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, "engines": { - "node": ">=6" + "node": ">=8" } }, - "node_modules/jsonapi-typescript": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/jsonapi-typescript/-/jsonapi-typescript-0.1.3.tgz", - "integrity": "sha512-uPcPS01GeM+4HIyn18s7l1yD2S3uLZy2TX1UkQffCM0bLb3TMwudXUyVXPHTMZ4vdZT8MqKqN2vjB5PogTAdFQ==", - "dependencies": { - "json-typescript": "^1.0.0" + "node_modules/os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", + "dev": true, + "engines": { + "node": ">=0.10.0" } }, - "node_modules/jspdf": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/jspdf/-/jspdf-2.5.1.tgz", - "integrity": "sha512-hXObxz7ZqoyhxET78+XR34Xu2qFGrJJ2I2bE5w4SM8eFaFEkW2xcGRVUss360fYelwRSid/jT078kbNvmoW0QA==", - "dependencies": { - "@babel/runtime": "^7.14.0", - "atob": "^2.1.2", - "btoa": "^1.2.1", - "fflate": "^0.4.8" - }, - "optionalDependencies": { - "canvg": "^3.0.6", - "core-js": "^3.6.0", - "dompurify": "^2.2.0", - "html2canvas": "^1.0.0-rc.5" + "node_modules/p-cancelable": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz", + "integrity": "sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==", + "dev": true, + "engines": { + "node": ">=6" } }, - "node_modules/jspdf/node_modules/core-js": { - "version": "3.27.2", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.27.2.tgz", - "integrity": "sha512-9ashVQskuh5AZEZ1JdQWp1GqSoC1e1G87MzRqg2gIfVAQ7Qn9K+uFj8EcniUFA4P2NLZfV+TOlX1SzoKfo+s7w==", - "hasInstallScript": true, - "optional": true, + "node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/core-js" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jsx-ast-utils": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.3.tgz", - "integrity": "sha512-fYQHZTZ8jSfmWZ0iyzfwiU4WDX4HpHbMCZ3gPlWYiCl3BoeOTsqKBqnTVfH2rYT7eP5c3sVbeSPHnnJOaTrWiw==", + "node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", "dev": true, "dependencies": { - "array-includes": "^3.1.5", - "object.assign": "^4.1.3" + "p-limit": "^3.0.2" }, "engines": { - "node": ">=4.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jszip": { - "version": "3.10.1", - "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.10.1.tgz", - "integrity": "sha512-xXDvecyTpGLrqFrvkrUSoxxfJI5AH7U8zxxtVclpsUtMCq4JQ290LY8AW5c7Ggnr/Y/oK+bQMbqK2qmtk3pN4g==", + "node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", "dev": true, - "dependencies": { - "lie": "~3.3.0", - "pako": "~1.0.2", - "readable-stream": "~2.3.6", - "setimmediate": "^1.0.5" + "engines": { + "node": ">=6" } }, - "node_modules/keyv": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz", - "integrity": "sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==", + "node_modules/pac-proxy-agent": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/pac-proxy-agent/-/pac-proxy-agent-7.0.0.tgz", + "integrity": "sha512-t4tRAMx0uphnZrio0S0Jw9zg3oDbz1zVhQ/Vy18FjLfP1XOLNUEjaVxYCYRI6NS+BsMBXKIzV6cTLOkO9AtywA==", "dev": true, "dependencies": { - "json-buffer": "3.0.0" + "@tootallnate/quickjs-emscripten": "^0.23.0", + "agent-base": "^7.0.2", + "debug": "^4.3.4", + "get-uri": "^6.0.1", + "http-proxy-agent": "^7.0.0", + "https-proxy-agent": "^7.0.0", + "pac-resolver": "^7.0.0", + "socks-proxy-agent": "^8.0.1" + }, + "engines": { + "node": ">= 14" } }, - "node_modules/kleur": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", - "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", + "node_modules/pac-resolver": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/pac-resolver/-/pac-resolver-7.0.0.tgz", + "integrity": "sha512-Fd9lT9vJbHYRACT8OhCbZBbxr6KRSawSovFpy8nDGshaK99S/EBhVIHp9+crhxrsZOuvLpgL1n23iyPg6Rl2hg==", "dev": true, + "dependencies": { + "degenerator": "^5.0.0", + "ip": "^1.1.8", + "netmask": "^2.0.2" + }, "engines": { - "node": ">=6" + "node": ">= 14" } }, - "node_modules/latest-version": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-5.1.0.tgz", - "integrity": "sha512-weT+r0kTkRQdCdYCNtkMwWXQTMEswKrFBkm4ckQOMVhhqhIMI1UT2hMj+1iigIhgSZm5gTmrRXBNoGUgaTY1xA==", + "node_modules/package-json": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/package-json/-/package-json-6.5.0.tgz", + "integrity": "sha512-k3bdm2n25tkyxcjSKzB5x8kfVxlMdgsbPr0GkZcwHsLpba6cBjqCt1KlcChKEvxHIcTB1FVMuwoijZ26xex5MQ==", "dev": true, "dependencies": { - "package-json": "^6.3.0" + "got": "^9.6.0", + "registry-auth-token": "^4.0.0", + "registry-url": "^5.0.0", + "semver": "^6.2.0" }, "engines": { "node": ">=8" } }, - "node_modules/leven": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", - "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", + "node_modules/package-json/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/pako": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", + "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==" + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "dependencies": { + "callsites": "^3.0.0" + }, "engines": { "node": ">=6" } }, - "node_modules/levn": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", - "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "node_modules/parse-json": { + "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, "dependencies": { - "prelude-ls": "^1.2.1", - "type-check": "~0.4.0" + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + }, + "engines": { + "node": ">=8" }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", + "dev": true + }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, "engines": { - "node": ">= 0.8.0" + "node": ">=8" } }, - "node_modules/lie": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/lie/-/lie-3.3.0.tgz", - "integrity": "sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ==", + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", "dev": true, - "dependencies": { - "immediate": "~3.0.5" + "engines": { + "node": ">=0.10.0" } }, - "node_modules/lilconfig": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.0.6.tgz", - "integrity": "sha512-9JROoBW7pobfsx+Sq2JsASvCo6Pfo6WWoUW79HuB1BCoBXD4PLWJPqDF6fNj67pqBYTbAHkE57M1kS/+L1neOg==", + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", "dev": true, "engines": { - "node": ">=10" + "node": ">=8" } }, - "node_modules/line-reader": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/line-reader/-/line-reader-0.2.4.tgz", - "integrity": "sha512-342xzyZZS9uTiKwHJcMacopVl/WjrMMCZS1Qg4Uhl/WBknWRrGFdKOIS1Kec6SaiTcZMtmuxWvvIbPXj/+FMjA==", - "dev": true - }, - "node_modules/lines-and-columns": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", - "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", "dev": true }, - "node_modules/load-json-file": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-6.2.0.tgz", - "integrity": "sha512-gUD/epcRms75Cw8RT1pUdHugZYM5ce64ucs2GEISABwkRsOQr0q2wm/MV2TKThycIe5e0ytRweW2RZxclogCdQ==", + "node_modules/path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", "dev": true, - "dependencies": { - "graceful-fs": "^4.1.15", - "parse-json": "^5.0.0", - "strip-bom": "^4.0.0", - "type-fest": "^0.6.0" - }, "engines": { "node": ">=8" } }, - "node_modules/load-json-file/node_modules/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==", + "node_modules/pdf-lib": { + "version": "1.17.1", + "resolved": "https://registry.npmjs.org/pdf-lib/-/pdf-lib-1.17.1.tgz", + "integrity": "sha512-V/mpyJAoTsN4cnP31vc0wfNA1+p20evqqnap0KLoRUN0Yk/p3wN52DOEsL4oBFcLdb76hlpKPtzJIgo67j/XLw==", + "dependencies": { + "@pdf-lib/standard-fonts": "^1.0.0", + "@pdf-lib/upng": "^1.0.1", + "pako": "^1.0.11", + "tslib": "^1.11.1" + } + }, + "node_modules/pdf-lib/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/pend": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", + "integrity": "sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==", + "dev": true + }, + "node_modules/performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==", + "optional": true + }, + "node_modules/picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", + "dev": true + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", "dev": true, "engines": { - "node": ">=8" + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" } }, - "node_modules/locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "node_modules/pify": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-5.0.0.tgz", + "integrity": "sha512-eW/gHNMlxdSP6dmG6uJip6FXN0EQBwm2clYYd8Wul42Cwu/DK8HEftzsapcNdYe2MfLiIwZqsDk2RDEsTE79hA==", "dev": true, - "dependencies": { - "p-locate": "^5.0.0" - }, "engines": { "node": ">=10" }, @@ -7087,609 +11291,629 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", - "dev": true - }, - "node_modules/lodash-es": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz", - "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==", - "peer": true - }, - "node_modules/lodash.isplainobject": { + "node_modules/pirates": { "version": "4.0.6", - "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", - "integrity": "sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==", - "dev": true - }, - "node_modules/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 - }, - "node_modules/log-symbols": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-3.0.0.tgz", - "integrity": "sha512-dSkNGuI7iG3mfvDzUuYZyvk5dD9ocYCYzNU6CYDE6+Xqd+gwme6Z00NS3dUh8mq/73HaEtT7m6W+yUPtU6BZnQ==", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", + "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==", "dev": true, - "dependencies": { - "chalk": "^2.4.2" - }, "engines": { - "node": ">=8" + "node": ">= 6" } }, - "node_modules/log-symbols/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "node_modules/pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", "dev": true, "dependencies": { - "color-convert": "^1.9.0" + "find-up": "^4.0.0" }, "engines": { - "node": ">=4" + "node": ">=8" } }, - "node_modules/log-symbols/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "node_modules/pkg-dir/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", "dev": true, "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" }, "engines": { - "node": ">=4" + "node": ">=8" } }, - "node_modules/log-symbols/node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "node_modules/pkg-dir/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", "dev": true, "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/log-symbols/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", - "dev": true - }, - "node_modules/log-symbols/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true, + "p-locate": "^4.1.0" + }, "engines": { - "node": ">=0.8.0" + "node": ">=8" } }, - "node_modules/log-symbols/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "node_modules/pkg-dir/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", "dev": true, + "dependencies": { + "p-try": "^2.0.0" + }, "engines": { - "node": ">=4" + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/log-symbols/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "node_modules/pkg-dir/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", "dev": true, "dependencies": { - "has-flag": "^3.0.0" + "p-limit": "^2.2.0" }, "engines": { - "node": ">=4" + "node": ">=8" } }, - "node_modules/loose-envify": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", - "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "node_modules/pluralize": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-8.0.0.tgz", + "integrity": "sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==", "dev": true, - "dependencies": { - "js-tokens": "^3.0.0 || ^4.0.0" - }, - "bin": { - "loose-envify": "cli.js" + "engines": { + "node": ">=4" } }, - "node_modules/lowercase-keys": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", - "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", + "node_modules/postcss": { + "version": "8.4.21", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.21.tgz", + "integrity": "sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg==", "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + } + ], + "dependencies": { + "nanoid": "^3.3.4", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + }, "engines": { - "node": ">=0.10.0" + "node": "^10 || ^12 || >=14" } }, - "node_modules/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==", + "node_modules/postcss-js": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-js/-/postcss-js-4.0.0.tgz", + "integrity": "sha512-77QESFBwgX4irogGVPgQ5s07vLvFqWr228qZY+w6lW599cRlK/HmnlivnnVUxkjHnCu4J16PDMHcH+e+2HbvTQ==", "dev": true, "dependencies": { - "yallist": "^3.0.2" + "camelcase-css": "^2.0.1" + }, + "engines": { + "node": "^12 || ^14 || >= 16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + "peerDependencies": { + "postcss": "^8.3.3" } }, - "node_modules/make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "node_modules/postcss-load-config": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-3.1.4.tgz", + "integrity": "sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==", "dev": true, "dependencies": { - "semver": "^6.0.0" + "lilconfig": "^2.0.5", + "yaml": "^1.10.2" }, "engines": { - "node": ">=8" + "node": ">= 10" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + "peerDependencies": { + "postcss": ">=8.0.9", + "ts-node": ">=9.0.0" + }, + "peerDependenciesMeta": { + "postcss": { + "optional": true + }, + "ts-node": { + "optional": true + } } }, - "node_modules/make-dir/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "node_modules/postcss-nested": { + "version": "5.0.6", + "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-5.0.6.tgz", + "integrity": "sha512-rKqm2Fk0KbA8Vt3AdGN0FB9OBOMDVajMG6ZCf/GoHgdxUJ4sBFp0A/uMIRm+MJUdo33YXEtjqIz8u7DAp8B7DA==", "dev": true, - "bin": { - "semver": "bin/semver.js" + "dependencies": { + "postcss-selector-parser": "^6.0.6" + }, + "engines": { + "node": ">=12.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + "peerDependencies": { + "postcss": "^8.2.14" } }, - "node_modules/make-error": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", - "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", - "dev": true - }, - "node_modules/makeerror": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", - "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", + "node_modules/postcss-selector-parser": { + "version": "6.0.11", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.11.tgz", + "integrity": "sha512-zbARubNdogI9j7WY4nQJBiNqQf3sLS3wCP4WfOidu+p28LofJqDH1tcXypGrcmMHhDk2t9wGhCsYe/+szLTy1g==", "dev": true, "dependencies": { - "tmpl": "1.0.5" + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" } }, - "node_modules/merge-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", - "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "node_modules/postcss-value-parser": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", "dev": true }, - "node_modules/merge2": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "node_modules/prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", "dev": true, "engines": { - "node": ">= 8" + "node": ">= 0.8.0" } }, - "node_modules/micromatch": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", - "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "node_modules/prepend-http": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", + "integrity": "sha512-ravE6m9Atw9Z/jjttRUZ+clIXogdghyZAuWJ3qEzjT+jI/dL1ifAqhZeC5VHzQp1MSt1+jxKkFNemj/iO7tVUA==", "dev": true, - "dependencies": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - }, "engines": { - "node": ">=8.6" + "node": ">=4" } }, - "node_modules/mime": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-3.0.0.tgz", - "integrity": "sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==", + "node_modules/prettier": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.4.1.tgz", + "integrity": "sha512-9fbDAXSBcc6Bs1mZrDYb3XKzDLm4EXXL9sC1LqKP5rZkT6KRr/rf9amVUcODVXgguK/isJz0d0hP72WeaKWsvA==", "dev": true, "bin": { - "mime": "cli.js" + "prettier": "bin-prettier.js" }, "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "dev": true, - "engines": { - "node": ">= 0.6" + "node": ">=10.13.0" } }, - "node_modules/mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "node_modules/prettier-linter-helpers": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz", + "integrity": "sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==", "dev": true, "dependencies": { - "mime-db": "1.52.0" + "fast-diff": "^1.1.2" }, "engines": { - "node": ">= 0.6" + "node": ">=6.0.0" } }, - "node_modules/mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "node_modules/pretty-format": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", + "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1", + "ansi-styles": "^5.0.0", + "react-is": "^17.0.1" + }, "engines": { - "node": ">=6" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/mimic-response": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz", - "integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==", + "node_modules/pretty-format/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", "dev": true, "engines": { "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/min-indent": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", - "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", + "node_modules/process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", + "dev": true + }, + "node_modules/progress": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", "dev": true, "engines": { - "node": ">=4" + "node": ">=0.4.0" } }, - "node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "node_modules/progress-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/progress-stream/-/progress-stream-2.0.0.tgz", + "integrity": "sha512-xJwOWR46jcXUq6EH9yYyqp+I52skPySOeHfkxOZ2IY1AiBi/sFJhbhAKHoV3OTw/omQ45KTio9215dRJ2Yxd3Q==", "dev": true, "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/minimist": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz", - "integrity": "sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/mkdirp-classic": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz", - "integrity": "sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==", - "dev": true - }, - "node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "node_modules/multimap": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/multimap/-/multimap-1.1.0.tgz", - "integrity": "sha512-0ZIR9PasPxGXmRsEF8jsDzndzHDj7tIav+JUmvIFB/WHswliFnquxECT/De7GR4yg99ky/NlRKJT82G1y271bw==", - "dev": true - }, - "node_modules/mute-stream": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", - "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", - "dev": true - }, - "node_modules/nanoid": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz", - "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==", + "speedometer": "~1.0.0", + "through2": "~2.0.3" + } + }, + "node_modules/prompts": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", + "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", "dev": true, - "bin": { - "nanoid": "bin/nanoid.cjs" + "dependencies": { + "kleur": "^3.0.3", + "sisteransi": "^1.0.5" }, "engines": { - "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + "node": ">= 6" } }, - "node_modules/natural-compare": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", - "dev": true + "node_modules/prop-types": { + "version": "15.8.1", + "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", + "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", + "dev": true, + "dependencies": { + "loose-envify": "^1.4.0", + "object-assign": "^4.1.1", + "react-is": "^16.13.1" + } }, - "node_modules/natural-compare-lite": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz", - "integrity": "sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==", + "node_modules/prop-types/node_modules/react-is": { + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", "dev": true }, - "node_modules/node-fetch": { - "version": "2.6.8", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.8.tgz", - "integrity": "sha512-RZ6dBYuj8dRSfxpUSu+NsdF1dpPpluJxwOp+6IoDp/sH2QNDSvurYsAa+F1WxY2RjA1iP93xhcsUoYbF2XBqVg==", + "node_modules/proxy-agent": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/proxy-agent/-/proxy-agent-6.3.0.tgz", + "integrity": "sha512-0LdR757eTj/JfuU7TL2YCuAZnxWXu3tkJbg4Oq3geW/qFNT/32T0sp2HnZ9O0lMR4q3vwAt0+xCA8SR0WAD0og==", "dev": true, "dependencies": { - "whatwg-url": "^5.0.0" + "agent-base": "^7.0.2", + "debug": "^4.3.4", + "http-proxy-agent": "^7.0.0", + "https-proxy-agent": "^7.0.0", + "lru-cache": "^7.14.1", + "pac-proxy-agent": "^7.0.0", + "proxy-from-env": "^1.1.0", + "socks-proxy-agent": "^8.0.1" }, "engines": { - "node": "4.x || >=6.0.0" - }, - "peerDependencies": { - "encoding": "^0.1.0" - }, - "peerDependenciesMeta": { - "encoding": { - "optional": true - } + "node": ">= 14" } }, - "node_modules/node-fetch/node_modules/tr46": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", - "dev": true - }, - "node_modules/node-fetch/node_modules/webidl-conversions": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", - "dev": true - }, - "node_modules/node-fetch/node_modules/whatwg-url": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", - "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "node_modules/proxy-agent/node_modules/lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", "dev": true, - "dependencies": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" + "engines": { + "node": ">=12" } }, - "node_modules/node-int64": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", - "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==", + "node_modules/proxy-from-env": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==", "dev": true }, - "node_modules/node-releases": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.8.tgz", - "integrity": "sha512-dFSmB8fFHEH/s81Xi+Y/15DQY6VHW81nXRj86EMSL3lmuTmK1e+aT4wrFCkTbm+gSwkw4KpX+rT/pMM2c1mF+A==", + "node_modules/psl": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", + "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==", "dev": true }, - "node_modules/normalize-package-data": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "node_modules/pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", "dev": true, "dependencies": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" + "end-of-stream": "^1.1.0", + "once": "^1.3.1" } }, - "node_modules/normalize-package-data/node_modules/resolve": { - "version": "1.22.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", - "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", + "node_modules/pumpify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pumpify/-/pumpify-2.0.1.tgz", + "integrity": "sha512-m7KOje7jZxrmutanlkS1daj1dS6z6BgslzOXmcSEpIlCxM3VJH7lG5QLeck/6hgF6F4crFf01UtQmNsJfweTAw==", "dev": true, "dependencies": { - "is-core-module": "^2.9.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "duplexify": "^4.1.1", + "inherits": "^2.0.3", + "pump": "^3.0.0" } }, - "node_modules/normalize-package-data/node_modules/semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true, - "bin": { - "semver": "bin/semver" + "node_modules/punycode": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", + "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==", + "engines": { + "node": ">=6" } }, - "node_modules/normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "node_modules/pupa": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/pupa/-/pupa-2.1.1.tgz", + "integrity": "sha512-l1jNAspIBSFqbT+y+5FosojNpVpF94nlI+wDUpqP9enwOTfHx9f0gh5nB96vl+6yTpsJsypeNrwfzPrKuHB41A==", "dev": true, + "dependencies": { + "escape-goat": "^2.0.0" + }, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, - "node_modules/normalize-range": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", - "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", + "node_modules/puppeteer": { + "version": "21.0.3", + "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-21.0.3.tgz", + "integrity": "sha512-+eBNTEOOBrRBLJ1/jIuHcOoUUOVpUQjQFwp9L/sm/iBDqii+4jv9jxpPJSOmOHXuy++X7GWfhuDw4vz8crNzPw==", "dev": true, + "hasInstallScript": true, + "dependencies": { + "@puppeteer/browsers": "1.6.0", + "cosmiconfig": "8.2.0", + "puppeteer-core": "21.0.3" + }, "engines": { - "node": ">=0.10.0" + "node": ">=16.3.0" } }, - "node_modules/normalize-url": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.1.tgz", - "integrity": "sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==", + "node_modules/puppeteer-core": { + "version": "21.0.3", + "resolved": "https://registry.npmjs.org/puppeteer-core/-/puppeteer-core-21.0.3.tgz", + "integrity": "sha512-AGvopfkA0jLbW5Ba0m6kBuvRIpLo76PXUK3zJYkXOr9NI1LknJESyai6TtXc6GUSewMkinmyEDx1pFgq900hqg==", "dev": true, + "dependencies": { + "@puppeteer/browsers": "1.6.0", + "chromium-bidi": "0.4.20", + "cross-fetch": "4.0.0", + "debug": "4.3.4", + "devtools-protocol": "0.0.1147663", + "ws": "8.13.0" + }, "engines": { - "node": ">=8" + "node": ">=16.3.0" } }, - "node_modules/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==", + "node_modules/puppeteer/node_modules/cosmiconfig": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.2.0.tgz", + "integrity": "sha512-3rTMnFJA1tCOPwRxtgF4wd7Ab2qvDbL8jX+3smjIbS4HlZBagTlpERbdN7iAbWlrfxE3M8c27kTwTawQ7st+OQ==", "dev": true, "dependencies": { - "path-key": "^3.0.0" + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "parse-json": "^5.0.0", + "path-type": "^4.0.0" }, "engines": { - "node": ">=8" + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/d-fischer" } }, - "node_modules/nwsapi": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.2.tgz", - "integrity": "sha512-90yv+6538zuvUMnN+zCr8LuV6bPFdq50304114vJYJ8RDyK8D5O9Phpbd6SZWgI7PwzmmfN1upeOJlvybDSgCw==", + "node_modules/querystringify": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", + "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==", "dev": true }, - "node_modules/object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "node_modules/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, - "engines": { - "node": ">=0.10.0" - } + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] }, - "node_modules/object-hash": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-2.2.0.tgz", - "integrity": "sha512-gScRMn0bS5fH+IuwyIFgnh9zBdo4DV+6GhygmWM9HyNJSgS0hScp1f5vjtm7oIIOiT9trXrShAkLFSc2IqKNgw==", + "node_modules/queue-tick": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/queue-tick/-/queue-tick-1.0.1.tgz", + "integrity": "sha512-kJt5qhMxoszgU/62PLP1CJytzd2NKetjSRnyuj31fDd3Rlcz3fzlFdFLD1SItunPwyqEOkca6GbV612BWfaBag==", + "dev": true + }, + "node_modules/quick-lru": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz", + "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==", "dev": true, "engines": { - "node": ">= 6" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/object-inspect": { - "version": "1.12.3", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.3.tgz", - "integrity": "sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==", + "node_modules/raf": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/raf/-/raf-3.4.1.tgz", + "integrity": "sha512-Sq4CW4QhwOHE8ucn6J34MqtZCeWFP2aQSmrlroYgqAV1PjStIhJXxYuTgUIfkEk7zTLjmIjLmU5q+fbD1NnOJA==", + "optional": true, + "dependencies": { + "performance-now": "^2.1.0" + } + }, + "node_modules/rc": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", + "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "dependencies": { + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + }, + "bin": { + "rc": "cli.js" } }, - "node_modules/object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "node_modules/rc/node_modules/ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", + "dev": true + }, + "node_modules/rc/node_modules/strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==", "dev": true, "engines": { - "node": ">= 0.4" + "node": ">=0.10.0" } }, - "node_modules/object.assign": { - "version": "4.1.4", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", - "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", + "node_modules/react": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react/-/react-18.2.0.tgz", + "integrity": "sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "has-symbols": "^1.0.3", - "object-keys": "^1.1.1" + "loose-envify": "^1.1.0" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=0.10.0" } }, - "node_modules/object.entries": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.6.tgz", - "integrity": "sha512-leTPzo4Zvg3pmbQ3rDK69Rl8GQvIqMWubrkxONG9/ojtFE2rD9fjMKfSI5BxW3osRH1m6VdzmqK8oAY9aT4x5w==", + "node_modules/react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", + "dev": true + }, + "node_modules/read": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/read/-/read-1.0.7.tgz", + "integrity": "sha512-rSOKNYUmaxy0om1BNjMN4ezNT6VKK+2xF4GBhc81mkH7L60i6dp8qPYrkndNLT3QPphoII3maL9PVC9XmhHwVQ==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" + "mute-stream": "~0.0.4" }, "engines": { - "node": ">= 0.4" + "node": ">=0.8" } }, - "node_modules/object.fromentries": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.6.tgz", - "integrity": "sha512-VciD13dswC4j1Xt5394WR4MzmAQmlgN72phd/riNp9vtD7tp4QQWJ0R4wvclXcafgcYK8veHRed2W6XeGBvcfg==", + "node_modules/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, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" + "@types/normalize-package-data": "^2.4.0", + "normalize-package-data": "^2.5.0", + "parse-json": "^5.0.0", + "type-fest": "^0.6.0" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=8" } }, - "node_modules/object.hasown": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/object.hasown/-/object.hasown-1.1.2.tgz", - "integrity": "sha512-B5UIT3J1W+WuWIU55h0mjlwaqxiE5vYENJXIXZ4VFe05pNYrkKuK0U/6aFcb0pKywYJh7IhfoqUfKVmrJJHZHw==", + "node_modules/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, "dependencies": { - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" + "find-up": "^4.1.0", + "read-pkg": "^5.2.0", + "type-fest": "^0.8.1" + }, + "engines": { + "node": ">=8" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/object.values": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.6.tgz", - "integrity": "sha512-FVVTkD1vENCsAcwNs9k6jea2uHC/X0+JcjG8YA60FN5CMaJmG95wT9jek/xX9nornqGRrBkKtzuAu2wuHpKqvw==", + "node_modules/read-pkg-up/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=8" } }, - "node_modules/once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "node_modules/read-pkg-up/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", "dev": true, "dependencies": { - "wrappy": "1" + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" } }, - "node_modules/onetime": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", - "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "node_modules/read-pkg-up/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", "dev": true, "dependencies": { - "mimic-fn": "^2.1.0" + "p-try": "^2.0.0" }, "engines": { "node": ">=6" @@ -7698,704 +11922,562 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/optionator": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", - "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", + "node_modules/read-pkg-up/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", "dev": true, "dependencies": { - "deep-is": "^0.1.3", - "fast-levenshtein": "^2.0.6", - "levn": "^0.4.1", - "prelude-ls": "^1.2.1", - "type-check": "^0.4.0", - "word-wrap": "^1.2.3" + "p-limit": "^2.2.0" }, "engines": { - "node": ">= 0.8.0" + "node": ">=8" } }, - "node_modules/ora": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ora/-/ora-4.1.1.tgz", - "integrity": "sha512-sjYP8QyVWBpBZWD6Vr1M/KwknSw6kJOz41tvGMlwWeClHBtYKTbHMki1PsLZnxKpXMPbTKv9b3pjQu3REib96A==", + "node_modules/read-pkg-up/node_modules/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, - "dependencies": { - "chalk": "^3.0.0", - "cli-cursor": "^3.1.0", - "cli-spinners": "^2.2.0", - "is-interactive": "^1.0.0", - "log-symbols": "^3.0.0", - "mute-stream": "0.0.8", - "strip-ansi": "^6.0.0", - "wcwidth": "^1.0.1" - }, "engines": { "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/ora/node_modules/chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "node_modules/read-pkg/node_modules/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, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, "engines": { "node": ">=8" } }, - "node_modules/os-tmpdir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", + "node_modules/readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", "dev": true, - "engines": { - "node": ">=0.10.0" + "dependencies": { + "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" } }, - "node_modules/p-cancelable": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz", - "integrity": "sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==", + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", "dev": true, + "dependencies": { + "picomatch": "^2.2.1" + }, "engines": { - "node": ">=6" + "node": ">=8.10.0" } }, - "node_modules/p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "node_modules/rechoir": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", + "integrity": "sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw==", "dev": true, "dependencies": { - "yocto-queue": "^0.1.0" + "resolve": "^1.1.6" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">= 0.10" } }, - "node_modules/p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "node_modules/rechoir/node_modules/resolve": { + "version": "1.22.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", + "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", "dev": true, "dependencies": { - "p-limit": "^3.0.2" + "is-core-module": "^2.9.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" }, - "engines": { - "node": ">=10" + "bin": { + "resolve": "bin/resolve" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true, - "engines": { - "node": ">=6" - } + "node_modules/regenerate": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", + "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", + "dev": true }, - "node_modules/package-json": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/package-json/-/package-json-6.5.0.tgz", - "integrity": "sha512-k3bdm2n25tkyxcjSKzB5x8kfVxlMdgsbPr0GkZcwHsLpba6cBjqCt1KlcChKEvxHIcTB1FVMuwoijZ26xex5MQ==", + "node_modules/regenerate-unicode-properties": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.0.tgz", + "integrity": "sha512-d1VudCLoIGitcU/hEg2QqvyGZQmdC0Lf8BqdOMXGFSvJP4bNV1+XqbPQeHHLD51Jh4QJJ225dlIFvY4Ly6MXmQ==", "dev": true, "dependencies": { - "got": "^9.6.0", - "registry-auth-token": "^4.0.0", - "registry-url": "^5.0.0", - "semver": "^6.2.0" + "regenerate": "^1.4.2" }, "engines": { - "node": ">=8" + "node": ">=4" } }, - "node_modules/package-json/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "node_modules/regenerator-transform": { + "version": "0.15.2", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.2.tgz", + "integrity": "sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==", "dev": true, - "bin": { - "semver": "bin/semver.js" + "dependencies": { + "@babel/runtime": "^7.8.4" } }, - "node_modules/pako": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", - "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==" - }, - "node_modules/parent-module": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", - "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "node_modules/regexp-tree": { + "version": "0.1.24", + "resolved": "https://registry.npmjs.org/regexp-tree/-/regexp-tree-0.1.24.tgz", + "integrity": "sha512-s2aEVuLhvnVJW6s/iPgEGK6R+/xngd2jNQ+xy4bXNDKxZKJH6jpPHY6kVeVv1IeLCHgswRj+Kl3ELaDjG6V1iw==", "dev": true, - "dependencies": { - "callsites": "^3.0.0" - }, - "engines": { - "node": ">=6" + "bin": { + "regexp-tree": "bin/regexp-tree" } }, - "node_modules/parse-json": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", - "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "node_modules/regexp.prototype.flags": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz", + "integrity": "sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-even-better-errors": "^2.3.0", - "lines-and-columns": "^1.1.6" + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "functions-have-names": "^1.2.2" }, "engines": { - "node": ">=8" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/parse5": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", - "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", - "dev": true - }, - "node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "node_modules/regexpp": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", + "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", "dev": true, "engines": { "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" } }, - "node_modules/path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "node_modules/regexpu-core": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.3.2.tgz", + "integrity": "sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ==", "dev": true, + "dependencies": { + "@babel/regjsgen": "^0.8.0", + "regenerate": "^1.4.2", + "regenerate-unicode-properties": "^10.1.0", + "regjsparser": "^0.9.1", + "unicode-match-property-ecmascript": "^2.0.0", + "unicode-match-property-value-ecmascript": "^2.1.0" + }, "engines": { - "node": ">=0.10.0" + "node": ">=4" } }, - "node_modules/path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "node_modules/registry-auth-token": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.2.2.tgz", + "integrity": "sha512-PC5ZysNb42zpFME6D/XlIgtNGdTl8bBOCw90xQLVMpzuuubJKYDWFAEuUNc+Cn8Z8724tg2SDhDRrkVEsqfDMg==", "dev": true, + "dependencies": { + "rc": "1.2.8" + }, "engines": { - "node": ">=8" + "node": ">=6.0.0" } }, - "node_modules/path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true - }, - "node_modules/path-type": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", - "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "node_modules/registry-url": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-5.1.0.tgz", + "integrity": "sha512-8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw==", "dev": true, + "dependencies": { + "rc": "^1.2.8" + }, "engines": { "node": ">=8" } }, - "node_modules/pdf-lib": { - "version": "1.17.1", - "resolved": "https://registry.npmjs.org/pdf-lib/-/pdf-lib-1.17.1.tgz", - "integrity": "sha512-V/mpyJAoTsN4cnP31vc0wfNA1+p20evqqnap0KLoRUN0Yk/p3wN52DOEsL4oBFcLdb76hlpKPtzJIgo67j/XLw==", + "node_modules/regjsparser": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.9.1.tgz", + "integrity": "sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==", + "dev": true, "dependencies": { - "@pdf-lib/standard-fonts": "^1.0.0", - "@pdf-lib/upng": "^1.0.1", - "pako": "^1.0.11", - "tslib": "^1.11.1" + "jsesc": "~0.5.0" + }, + "bin": { + "regjsparser": "bin/parser" } }, - "node_modules/pdf-lib/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + "node_modules/regjsparser/node_modules/jsesc": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", + "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==", + "dev": true, + "bin": { + "jsesc": "bin/jsesc" + } }, - "node_modules/pend": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", - "integrity": "sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==", + "node_modules/remove-markdown": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/remove-markdown/-/remove-markdown-0.2.2.tgz", + "integrity": "sha512-jwgEf3Yh/xi4WodWi/vPlasa9C9pMv1kz5ITOIAGjBW7PeZ/CHZCdBfJzQnn2VX2cBvf1xCuJv0tUJqn/FCMNA==", "dev": true }, - "node_modules/performance-now": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==", - "optional": true + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, - "node_modules/picocolors": { + "node_modules/requires-port": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", + "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", + "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==", "dev": true }, - "node_modules/picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "node_modules/resolve": { + "version": "2.0.0-next.4", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.4.tgz", + "integrity": "sha512-iMDbmAWtfU+MHpxt/I5iWI7cY6YVEZUQ3MBgPQ++XD1PELuJHIl82xBmObyP2KyQmkNB2dsqF7seoQQiAn5yDQ==", "dev": true, - "engines": { - "node": ">=8.6" + "dependencies": { + "is-core-module": "^2.9.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "node_modules/pify": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-5.0.0.tgz", - "integrity": "sha512-eW/gHNMlxdSP6dmG6uJip6FXN0EQBwm2clYYd8Wul42Cwu/DK8HEftzsapcNdYe2MfLiIwZqsDk2RDEsTE79hA==", - "dev": true, - "engines": { - "node": ">=10" + "bin": { + "resolve": "bin/resolve" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/pirates": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.5.tgz", - "integrity": "sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ==", + "node_modules/resolve-cwd": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", + "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", "dev": true, + "dependencies": { + "resolve-from": "^5.0.0" + }, "engines": { - "node": ">= 6" + "node": ">=8" } }, - "node_modules/pkg-dir": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", - "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "node_modules/resolve-cwd/node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", "dev": true, - "dependencies": { - "find-up": "^4.0.0" - }, "engines": { "node": ">=8" } }, - "node_modules/pkg-dir/node_modules/find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", "dev": true, - "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - }, "engines": { - "node": ">=8" + "node": ">=4" } }, - "node_modules/pkg-dir/node_modules/locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "node_modules/resolve.exports": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-1.1.1.tgz", + "integrity": "sha512-/NtpHNDN7jWhAaQ9BvBUYZ6YTXsRBgfqWFWP7BZBaoMJO/I3G5OFzvTuWNlZC3aPjins1F+TNrLKsGbH4rfsRQ==", "dev": true, - "dependencies": { - "p-locate": "^4.1.0" - }, "engines": { - "node": ">=8" + "node": ">=10" } }, - "node_modules/pkg-dir/node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "node_modules/responselike": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz", + "integrity": "sha512-/Fpe5guzJk1gPqdJLJR5u7eG/gNY4nImjbRDaVWVMRhne55TCmj2i9Q+54PBRfatRC8v/rIiv9BN0pMd9OV5EQ==", "dev": true, "dependencies": { - "p-try": "^2.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "lowercase-keys": "^1.0.0" } }, - "node_modules/pkg-dir/node_modules/p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "node_modules/restore-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", "dev": true, "dependencies": { - "p-limit": "^2.2.0" + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" }, "engines": { "node": ">=8" } }, - "node_modules/pluralize": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-8.0.0.tgz", - "integrity": "sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==", + "node_modules/reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", "dev": true, "engines": { - "node": ">=4" + "iojs": ">=1.0.0", + "node": ">=0.10.0" } }, - "node_modules/postcss": { - "version": "8.4.21", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.21.tgz", - "integrity": "sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/postcss" - } - ], - "dependencies": { - "nanoid": "^3.3.4", - "picocolors": "^1.0.0", - "source-map-js": "^1.0.2" - }, + "node_modules/rgbcolor": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/rgbcolor/-/rgbcolor-1.0.1.tgz", + "integrity": "sha512-9aZLIrhRaD97sgVhtJOW6ckOEh6/GnvQtdVNfdZ6s67+3/XwLS9lBcQYzEEhYVeUowN7pRzMLsyGhK2i/xvWbw==", + "optional": true, "engines": { - "node": "^10 || ^12 || >=14" + "node": ">= 0.8.15" } }, - "node_modules/postcss-js": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-js/-/postcss-js-4.0.0.tgz", - "integrity": "sha512-77QESFBwgX4irogGVPgQ5s07vLvFqWr228qZY+w6lW599cRlK/HmnlivnnVUxkjHnCu4J16PDMHcH+e+2HbvTQ==", + "node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", "dev": true, "dependencies": { - "camelcase-css": "^2.0.1" + "glob": "^7.1.3" }, - "engines": { - "node": "^12 || ^14 || >= 16" + "bin": { + "rimraf": "bin.js" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - "peerDependencies": { - "postcss": "^8.3.3" + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/postcss-load-config": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-3.1.4.tgz", - "integrity": "sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==", + "node_modules/run-async": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", + "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", "dev": true, - "dependencies": { - "lilconfig": "^2.0.5", - "yaml": "^1.10.2" - }, "engines": { - "node": ">= 10" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - "peerDependencies": { - "postcss": ">=8.0.9", - "ts-node": ">=9.0.0" - }, - "peerDependenciesMeta": { - "postcss": { - "optional": true - }, - "ts-node": { - "optional": true - } + "node": ">=0.12.0" } }, - "node_modules/postcss-nested": { - "version": "5.0.6", - "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-5.0.6.tgz", - "integrity": "sha512-rKqm2Fk0KbA8Vt3AdGN0FB9OBOMDVajMG6ZCf/GoHgdxUJ4sBFp0A/uMIRm+MJUdo33YXEtjqIz8u7DAp8B7DA==", + "node_modules/run-parallel": { + "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, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], "dependencies": { - "postcss-selector-parser": "^6.0.6" - }, - "engines": { - "node": ">=12.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - "peerDependencies": { - "postcss": "^8.2.14" + "queue-microtask": "^1.2.2" } }, - "node_modules/postcss-selector-parser": { - "version": "6.0.11", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.11.tgz", - "integrity": "sha512-zbARubNdogI9j7WY4nQJBiNqQf3sLS3wCP4WfOidu+p28LofJqDH1tcXypGrcmMHhDk2t9wGhCsYe/+szLTy1g==", + "node_modules/rxjs": { + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.0.tgz", + "integrity": "sha512-F2+gxDshqmIub1KdvZkaEfGDwLNpPvk9Fs6LD/MyQxNgMds/WH9OdDDXOmxUZpME+iSK3rQCctkL0DYyytUqMg==", "dev": true, "dependencies": { - "cssesc": "^3.0.0", - "util-deprecate": "^1.0.2" - }, - "engines": { - "node": ">=4" + "tslib": "^2.1.0" } }, - "node_modules/postcss-value-parser": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", - "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", + "node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", "dev": true }, - "node_modules/prelude-ls": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", - "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", - "dev": true, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/prepend-http": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", - "integrity": "sha512-ravE6m9Atw9Z/jjttRUZ+clIXogdghyZAuWJ3qEzjT+jI/dL1ifAqhZeC5VHzQp1MSt1+jxKkFNemj/iO7tVUA==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/prettier": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.4.1.tgz", - "integrity": "sha512-9fbDAXSBcc6Bs1mZrDYb3XKzDLm4EXXL9sC1LqKP5rZkT6KRr/rf9amVUcODVXgguK/isJz0d0hP72WeaKWsvA==", + "node_modules/safe-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-2.1.1.tgz", + "integrity": "sha512-rx+x8AMzKb5Q5lQ95Zoi6ZbJqwCLkqi3XuJXp5P3rT8OEc6sZCJG5AE5dU3lsgRr/F4Bs31jSlVN+j5KrsGu9A==", "dev": true, - "bin": { - "prettier": "bin-prettier.js" - }, - "engines": { - "node": ">=10.13.0" + "dependencies": { + "regexp-tree": "~0.1.1" } }, - "node_modules/prettier-linter-helpers": { + "node_modules/safe-regex-test": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz", - "integrity": "sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz", + "integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==", "dev": true, "dependencies": { - "fast-diff": "^1.1.2" + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.3", + "is-regex": "^1.1.4" }, - "engines": { - "node": ">=6.0.0" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/pretty-format": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", - "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "dev": true + }, + "node_modules/saxes": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/saxes/-/saxes-5.0.1.tgz", + "integrity": "sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==", "dev": true, "dependencies": { - "ansi-regex": "^5.0.1", - "ansi-styles": "^5.0.0", - "react-is": "^17.0.1" + "xmlchars": "^2.2.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=10" } }, - "node_modules/pretty-format/node_modules/ansi-styles": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", - "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, "engines": { "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", - "dev": true - }, - "node_modules/progress": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", - "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", + "node_modules/semver-diff": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-3.1.1.tgz", + "integrity": "sha512-GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg==", "dev": true, + "dependencies": { + "semver": "^6.3.0" + }, "engines": { - "node": ">=0.4.0" + "node": ">=8" } }, - "node_modules/progress-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/progress-stream/-/progress-stream-2.0.0.tgz", - "integrity": "sha512-xJwOWR46jcXUq6EH9yYyqp+I52skPySOeHfkxOZ2IY1AiBi/sFJhbhAKHoV3OTw/omQ45KTio9215dRJ2Yxd3Q==", + "node_modules/semver-diff/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", "dev": true, - "dependencies": { - "speedometer": "~1.0.0", - "through2": "~2.0.3" + "bin": { + "semver": "bin/semver.js" } }, - "node_modules/prompts": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", - "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", + "node_modules/semver/node_modules/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, "dependencies": { - "kleur": "^3.0.3", - "sisteransi": "^1.0.5" + "yallist": "^4.0.0" }, "engines": { - "node": ">= 6" - } - }, - "node_modules/prop-types": { - "version": "15.8.1", - "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", - "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", - "dev": true, - "dependencies": { - "loose-envify": "^1.4.0", - "object-assign": "^4.1.1", - "react-is": "^16.13.1" + "node": ">=10" } }, - "node_modules/prop-types/node_modules/react-is": { - "version": "16.13.1", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", - "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", - "dev": true - }, - "node_modules/proxy-from-env": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", - "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==", + "node_modules/semver/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", "dev": true }, - "node_modules/psl": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", - "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==", + "node_modules/setimmediate": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", + "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==", "dev": true }, - "node_modules/pump": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", - "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", - "dev": true, - "dependencies": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, - "node_modules/pumpify": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/pumpify/-/pumpify-2.0.1.tgz", - "integrity": "sha512-m7KOje7jZxrmutanlkS1daj1dS6z6BgslzOXmcSEpIlCxM3VJH7lG5QLeck/6hgF6F4crFf01UtQmNsJfweTAw==", + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", "dev": true, "dependencies": { - "duplexify": "^4.1.1", - "inherits": "^2.0.3", - "pump": "^3.0.0" - } - }, - "node_modules/punycode": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", - "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==", + "shebang-regex": "^3.0.0" + }, "engines": { - "node": ">=6" + "node": ">=8" } }, - "node_modules/pupa": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/pupa/-/pupa-2.1.1.tgz", - "integrity": "sha512-l1jNAspIBSFqbT+y+5FosojNpVpF94nlI+wDUpqP9enwOTfHx9f0gh5nB96vl+6yTpsJsypeNrwfzPrKuHB41A==", + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", "dev": true, - "dependencies": { - "escape-goat": "^2.0.0" - }, "engines": { "node": ">=8" } }, - "node_modules/puppeteer": { - "version": "13.7.0", - "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-13.7.0.tgz", - "integrity": "sha512-U1uufzBjz3+PkpCxFrWzh4OrMIdIb2ztzCu0YEPfRHjHswcSwHZswnK+WdsOQJsRV8WeTg3jLhJR4D867+fjsA==", - "deprecated": "< 18.1.0 is no longer supported", + "node_modules/shelljs": { + "version": "0.8.5", + "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.8.5.tgz", + "integrity": "sha512-TiwcRcrkhHvbrZbnRcFYMLl30Dfov3HKqzp5tO5b4pt6G/SezKcYhmDg15zXVBswHmctSAQKznqNW2LO5tTDow==", "dev": true, - "hasInstallScript": true, "dependencies": { - "cross-fetch": "3.1.5", - "debug": "4.3.4", - "devtools-protocol": "0.0.981744", - "extract-zip": "2.0.1", - "https-proxy-agent": "5.0.1", - "pkg-dir": "4.2.0", - "progress": "2.0.3", - "proxy-from-env": "1.1.0", - "rimraf": "3.0.2", - "tar-fs": "2.1.1", - "unbzip2-stream": "1.4.3", - "ws": "8.5.0" + "glob": "^7.0.0", + "interpret": "^1.0.0", + "rechoir": "^0.6.2" + }, + "bin": { + "shjs": "bin/shjs" }, "engines": { - "node": ">=10.18.1" + "node": ">=4" } }, - "node_modules/puppeteer/node_modules/ws": { - "version": "8.5.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.5.0.tgz", - "integrity": "sha512-BWX0SWVgLPzYwF8lTzEy1egjhS4S4OEAHfsO8o65WOVsrnSRGaSiUaa9e0ggGlkMTtBlmOpEXiie9RUcBO86qg==", + "node_modules/side-channel": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", "dev": true, - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": "^5.0.2" + "dependencies": { + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/querystringify": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", - "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==", + "node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", "dev": true }, - "node_modules/queue-microtask": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", - "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "node_modules/simple-concat": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz", + "integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==", "dev": true, "funding": [ { @@ -8412,111 +12494,112 @@ } ] }, - "node_modules/quick-lru": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz", - "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==", + "node_modules/simple-get": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-4.0.1.tgz", + "integrity": "sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==", "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/raf": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/raf/-/raf-3.4.1.tgz", - "integrity": "sha512-Sq4CW4QhwOHE8ucn6J34MqtZCeWFP2aQSmrlroYgqAV1PjStIhJXxYuTgUIfkEk7zTLjmIjLmU5q+fbD1NnOJA==", - "optional": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], "dependencies": { - "performance-now": "^2.1.0" + "decompress-response": "^6.0.0", + "once": "^1.3.1", + "simple-concat": "^1.0.0" } }, - "node_modules/rc": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", - "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", - "dev": true, + "node_modules/simple-swizzle": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz", + "integrity": "sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==", + "peer": true, "dependencies": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - }, - "bin": { - "rc": "cli.js" + "is-arrayish": "^0.3.1" } }, - "node_modules/rc/node_modules/ini": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", - "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", + "node_modules/simple-swizzle/node_modules/is-arrayish": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz", + "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==", + "peer": true + }, + "node_modules/sisteransi": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", + "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", "dev": true }, - "node_modules/rc/node_modules/strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==", + "node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", "dev": true, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, - "node_modules/react": { - "version": "18.2.0", - "resolved": "https://registry.npmjs.org/react/-/react-18.2.0.tgz", - "integrity": "sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==", + "node_modules/smart-buffer": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", + "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", "dev": true, - "dependencies": { - "loose-envify": "^1.1.0" - }, "engines": { - "node": ">=0.10.0" + "node": ">= 6.0.0", + "npm": ">= 3.0.0" } }, - "node_modules/react-is": { - "version": "17.0.2", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", - "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", - "dev": true - }, - "node_modules/read": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/read/-/read-1.0.7.tgz", - "integrity": "sha512-rSOKNYUmaxy0om1BNjMN4ezNT6VKK+2xF4GBhc81mkH7L60i6dp8qPYrkndNLT3QPphoII3maL9PVC9XmhHwVQ==", + "node_modules/socks": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.7.1.tgz", + "integrity": "sha512-7maUZy1N7uo6+WVEX6psASxtNlKaNVMlGQKkG/63nEDdLOWNbiUMoLK7X4uYoLhQstau72mLgfEWcXcwsaHbYQ==", "dev": true, "dependencies": { - "mute-stream": "~0.0.4" + "ip": "^2.0.0", + "smart-buffer": "^4.2.0" }, "engines": { - "node": ">=0.8" + "node": ">= 10.13.0", + "npm": ">= 3.0.0" } }, - "node_modules/read-pkg": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", - "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", + "node_modules/socks-proxy-agent": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.1.tgz", + "integrity": "sha512-59EjPbbgg8U3x62hhKOFVAmySQUcfRQ4C7Q/D5sEHnZTQRrQlNKINks44DMR1gwXp0p4LaVIeccX2KHTTcHVqQ==", "dev": true, - "dependencies": { - "@types/normalize-package-data": "^2.4.0", - "normalize-package-data": "^2.5.0", - "parse-json": "^5.0.0", - "type-fest": "^0.6.0" + "dependencies": { + "agent-base": "^7.0.1", + "debug": "^4.3.4", + "socks": "^2.7.1" }, "engines": { - "node": ">=8" + "node": ">= 14" } }, - "node_modules/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==", + "node_modules/socks/node_modules/ip": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ip/-/ip-2.0.0.tgz", + "integrity": "sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ==", + "dev": true + }, + "node_modules/sort-keys": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-4.2.0.tgz", + "integrity": "sha512-aUYIEU/UviqPgc8mHR6IW1EGxkAXpeRETYcrzg8cLAvUPZcpAlleSXHV2mY7G12GphSH6Gzv+4MMVSSkbdteHg==", "dev": true, "dependencies": { - "find-up": "^4.1.0", - "read-pkg": "^5.2.0", - "type-fest": "^0.8.1" + "is-plain-obj": "^2.0.0" }, "engines": { "node": ">=8" @@ -8525,2330 +12608,2682 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/read-pkg-up/node_modules/find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "node_modules/sortablejs": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/sortablejs/-/sortablejs-1.15.0.tgz", + "integrity": "sha512-bv9qgVMjUMf89wAvM6AxVvS/4MX3sPeN0+agqShejLU5z5GX4C75ow1O2e5k4L6XItUyAK3gH6AxSbXrOM5e8w==", + "peer": true + }, + "node_modules/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, - "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - }, "engines": { - "node": ">=8" + "node": ">=0.10.0" } }, - "node_modules/read-pkg-up/node_modules/locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "node_modules/source-map-js": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", + "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", "dev": true, - "dependencies": { - "p-locate": "^4.1.0" - }, "engines": { - "node": ">=8" + "node": ">=0.10.0" } }, - "node_modules/read-pkg-up/node_modules/p-limit": { + "node_modules/source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "dev": true, + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/spdx-correct": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", + "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", + "dev": true, + "dependencies": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-exceptions": { "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", + "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", + "dev": true + }, + "node_modules/spdx-expression-parse": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", "dev": true, "dependencies": { - "p-try": "^2.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" } }, - "node_modules/read-pkg-up/node_modules/p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "node_modules/spdx-license-ids": { + "version": "3.0.12", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.12.tgz", + "integrity": "sha512-rr+VVSXtRhO4OHbXUiAF7xW3Bo9DuuF6C5jH+q/x15j2jniycgKbxU09Hr0WqlSLUs4i4ltHGXqTe7VHclYWyA==", + "dev": true + }, + "node_modules/speedometer": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/speedometer/-/speedometer-1.0.0.tgz", + "integrity": "sha512-lgxErLl/7A5+vgIIXsh9MbeukOaCb2axgQ+bKCdIE+ibNT4XNYGNCR1qFEGq6F+YDASXK3Fh/c5FgtZchFolxw==", + "dev": true + }, + "node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", + "dev": true + }, + "node_modules/stack-utils": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", + "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", "dev": true, "dependencies": { - "p-limit": "^2.2.0" + "escape-string-regexp": "^2.0.0" }, "engines": { - "node": ">=8" + "node": ">=10" } }, - "node_modules/read-pkg-up/node_modules/type-fest": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", - "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "node_modules/stack-utils/node_modules/escape-string-regexp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", + "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", "dev": true, "engines": { "node": ">=8" } }, - "node_modules/read-pkg/node_modules/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==", + "node_modules/stackblur-canvas": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/stackblur-canvas/-/stackblur-canvas-2.5.0.tgz", + "integrity": "sha512-EeNzTVfj+1In7aSLPKDD03F/ly4RxEuF/EX0YcOG0cKoPXs+SLZxDawQbexQDBzwROs4VKLWTOaZQlZkGBFEIQ==", + "optional": true, + "engines": { + "node": ">=0.1.14" + } + }, + "node_modules/stencil-eslint-core": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/stencil-eslint-core/-/stencil-eslint-core-0.3.1.tgz", + "integrity": "sha512-z1yp1+Qzr6C/X4RgaCt0egDu5CsIrZzMCr9eGMmQTnSU1leVbSJB5aoI/KWv8qe8k7b1LCit46Ff3udRJ96Lfw==", "dev": true, + "dependencies": { + "eslint-utils": "~3.0.0", + "tsutils": "~3.21.0" + }, "engines": { - "node": ">=8" + "node": ">=8.9.0" + }, + "peerDependencies": { + "@typescript-eslint/parser": "^5.8.0", + "eslint": "^8" } }, - "node_modules/readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "node_modules/stream-shift": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz", + "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==", + "dev": true + }, + "node_modules/streamx": { + "version": "2.15.1", + "resolved": "https://registry.npmjs.org/streamx/-/streamx-2.15.1.tgz", + "integrity": "sha512-fQMzy2O/Q47rgwErk/eGeLu/roaFWV0jVsogDmrszM9uIw8L5OA+t+V93MgYlufNptfjmYR1tOMWhei/Eh7TQA==", "dev": true, "dependencies": { - "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" + "fast-fifo": "^1.1.0", + "queue-tick": "^1.0.1" } }, - "node_modules/readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", "dev": true, "dependencies": { - "picomatch": "^2.2.1" + "safe-buffer": "~5.1.0" + } + }, + "node_modules/string-length": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz", + "integrity": "sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==", + "dev": true, + "dependencies": { + "char-regex": "^1.0.2", + "strip-ansi": "^6.0.0" }, "engines": { - "node": ">=8.10.0" + "node": ">=10" } }, - "node_modules/rechoir": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", - "integrity": "sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw==", + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "dev": true, "dependencies": { - "resolve": "^1.1.6" + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" }, "engines": { - "node": ">= 0.10" + "node": ">=8" } }, - "node_modules/rechoir/node_modules/resolve": { - "version": "1.22.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", - "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", + "node_modules/string.prototype.matchall": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.8.tgz", + "integrity": "sha512-6zOCOcJ+RJAQshcTvXPHoxoQGONa3e/Lqx90wUA+wEzX78sg5Bo+1tQo4N0pohS0erG9qtCqJDjNCQBjeWVxyg==", "dev": true, "dependencies": { - "is-core-module": "^2.9.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "get-intrinsic": "^1.1.3", + "has-symbols": "^1.0.3", + "internal-slot": "^1.0.3", + "regexp.prototype.flags": "^1.4.3", + "side-channel": "^1.0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/regexp-tree": { - "version": "0.1.24", - "resolved": "https://registry.npmjs.org/regexp-tree/-/regexp-tree-0.1.24.tgz", - "integrity": "sha512-s2aEVuLhvnVJW6s/iPgEGK6R+/xngd2jNQ+xy4bXNDKxZKJH6jpPHY6kVeVv1IeLCHgswRj+Kl3ELaDjG6V1iw==", - "dev": true, - "bin": { - "regexp-tree": "bin/regexp-tree" - } - }, - "node_modules/regexp.prototype.flags": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz", - "integrity": "sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==", + "node_modules/string.prototype.trimend": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz", + "integrity": "sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==", "dev": true, "dependencies": { "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "functions-have-names": "^1.2.2" - }, - "engines": { - "node": ">= 0.4" + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/regexpp": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", - "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", + "node_modules/string.prototype.trimstart": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.6.tgz", + "integrity": "sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==", "dev": true, - "engines": { - "node": ">=8" + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" }, "funding": { - "url": "https://github.com/sponsors/mysticatea" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/registry-auth-token": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.2.2.tgz", - "integrity": "sha512-PC5ZysNb42zpFME6D/XlIgtNGdTl8bBOCw90xQLVMpzuuubJKYDWFAEuUNc+Cn8Z8724tg2SDhDRrkVEsqfDMg==", + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "dev": true, "dependencies": { - "rc": "1.2.8" + "ansi-regex": "^5.0.1" }, "engines": { - "node": ">=6.0.0" + "node": ">=8" } }, - "node_modules/registry-url": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-5.1.0.tgz", - "integrity": "sha512-8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw==", + "node_modules/strip-bom": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", + "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", "dev": true, - "dependencies": { - "rc": "^1.2.8" - }, "engines": { "node": ">=8" } }, - "node_modules/remove-markdown": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/remove-markdown/-/remove-markdown-0.2.2.tgz", - "integrity": "sha512-jwgEf3Yh/xi4WodWi/vPlasa9C9pMv1kz5ITOIAGjBW7PeZ/CHZCdBfJzQnn2VX2cBvf1xCuJv0tUJqn/FCMNA==", - "dev": true - }, - "node_modules/require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "node_modules/strip-final-newline": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", "dev": true, "engines": { - "node": ">=0.10.0" + "node": ">=6" } }, - "node_modules/requires-port": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", - "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==", - "dev": true - }, - "node_modules/resolve": { - "version": "2.0.0-next.4", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.4.tgz", - "integrity": "sha512-iMDbmAWtfU+MHpxt/I5iWI7cY6YVEZUQ3MBgPQ++XD1PELuJHIl82xBmObyP2KyQmkNB2dsqF7seoQQiAn5yDQ==", + "node_modules/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, "dependencies": { - "is-core-module": "^2.9.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" + "min-indent": "^1.0.0" }, - "bin": { - "resolve": "bin/resolve" + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true, + "engines": { + "node": ">=8" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/resolve-cwd": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", - "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", + "node_modules/strnum": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/strnum/-/strnum-1.0.5.tgz", + "integrity": "sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA==" + }, + "node_modules/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==", "dev": true, "dependencies": { - "resolve-from": "^5.0.0" + "has-flag": "^4.0.0" }, "engines": { "node": ">=8" } }, - "node_modules/resolve-cwd/node_modules/resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "node_modules/supports-hyperlinks": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.3.0.tgz", + "integrity": "sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA==", "dev": true, + "dependencies": { + "has-flag": "^4.0.0", + "supports-color": "^7.0.0" + }, "engines": { "node": ">=8" } }, - "node_modules/resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", "dev": true, "engines": { - "node": ">=4" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/resolve.exports": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-1.1.1.tgz", - "integrity": "sha512-/NtpHNDN7jWhAaQ9BvBUYZ6YTXsRBgfqWFWP7BZBaoMJO/I3G5OFzvTuWNlZC3aPjins1F+TNrLKsGbH4rfsRQ==", - "dev": true, + "node_modules/svg-pathdata": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/svg-pathdata/-/svg-pathdata-6.0.3.tgz", + "integrity": "sha512-qsjeeq5YjBZ5eMdFuUa4ZosMLxgr5RZ+F+Y1OrDhuOCEInRMA3x74XdBtggJcj9kOeInz0WE+LgCPDkZFlBYJw==", + "optional": true, "engines": { - "node": ">=10" + "node": ">=12.0.0" } }, - "node_modules/responselike": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz", - "integrity": "sha512-/Fpe5guzJk1gPqdJLJR5u7eG/gNY4nImjbRDaVWVMRhne55TCmj2i9Q+54PBRfatRC8v/rIiv9BN0pMd9OV5EQ==", - "dev": true, - "dependencies": { - "lowercase-keys": "^1.0.0" - } + "node_modules/symbol-tree": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", + "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==", + "dev": true }, - "node_modules/restore-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", - "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "node_modules/tabbable": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/tabbable/-/tabbable-6.1.2.tgz", + "integrity": "sha512-qCN98uP7i9z0fIS4amQ5zbGBOq+OSigYeGvPy7NDk8Y9yncqDZ9pRPgfsc2PJIVM9RrJj7GIfuRgmjoUU9zTHQ==" + }, + "node_modules/tailwindcss": { + "version": "3.0.23", + "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.0.23.tgz", + "integrity": "sha512-+OZOV9ubyQ6oI2BXEhzw4HrqvgcARY38xv3zKcjnWtMIZstEsXdI9xftd1iB7+RbOnj2HOEzkA0OyB5BaSxPQA==", "dev": true, "dependencies": { - "onetime": "^5.1.0", - "signal-exit": "^3.0.2" + "arg": "^5.0.1", + "chalk": "^4.1.2", + "chokidar": "^3.5.3", + "color-name": "^1.1.4", + "cosmiconfig": "^7.0.1", + "detective": "^5.2.0", + "didyoumean": "^1.2.2", + "dlv": "^1.1.3", + "fast-glob": "^3.2.11", + "glob-parent": "^6.0.2", + "is-glob": "^4.0.3", + "normalize-path": "^3.0.0", + "object-hash": "^2.2.0", + "postcss": "^8.4.6", + "postcss-js": "^4.0.0", + "postcss-load-config": "^3.1.0", + "postcss-nested": "5.0.6", + "postcss-selector-parser": "^6.0.9", + "postcss-value-parser": "^4.2.0", + "quick-lru": "^5.1.1", + "resolve": "^1.22.0" + }, + "bin": { + "tailwind": "lib/cli.js", + "tailwindcss": "lib/cli.js" }, "engines": { - "node": ">=8" + "node": ">=12.13.0" + }, + "peerDependencies": { + "autoprefixer": "^10.0.2", + "postcss": "^8.0.9" } }, - "node_modules/reusify": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", - "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "node_modules/tailwindcss/node_modules/resolve": { + "version": "1.22.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", + "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", "dev": true, - "engines": { - "iojs": ">=1.0.0", - "node": ">=0.10.0" + "dependencies": { + "is-core-module": "^2.9.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/rgbcolor": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/rgbcolor/-/rgbcolor-1.0.1.tgz", - "integrity": "sha512-9aZLIrhRaD97sgVhtJOW6ckOEh6/GnvQtdVNfdZ6s67+3/XwLS9lBcQYzEEhYVeUowN7pRzMLsyGhK2i/xvWbw==", - "optional": true, - "engines": { - "node": ">= 0.8.15" + "node_modules/tar-fs": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-3.0.4.tgz", + "integrity": "sha512-5AFQU8b9qLfZCX9zp2duONhPmZv0hGYiBPJsyUdqMjzq/mqVpy/rEUSeHk1+YitmxugaptgBh5oDGU3VsAJq4w==", + "dev": true, + "dependencies": { + "mkdirp-classic": "^0.5.2", + "pump": "^3.0.0", + "tar-stream": "^3.1.5" } }, - "node_modules/rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "node_modules/tar-stream": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-3.1.6.tgz", + "integrity": "sha512-B/UyjYwPpMBv+PaFSWAmtYjwdrlEaZQEhMIBFNC5oEG8lpiW8XjcSdmEaClj28ArfKScKHs2nshz3k2le6crsg==", "dev": true, "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "b4a": "^1.6.4", + "fast-fifo": "^1.2.0", + "streamx": "^2.15.0" } }, - "node_modules/run-async": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", - "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", + "node_modules/terminal-link": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/terminal-link/-/terminal-link-2.1.1.tgz", + "integrity": "sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ==", "dev": true, + "dependencies": { + "ansi-escapes": "^4.2.1", + "supports-hyperlinks": "^2.0.0" + }, "engines": { - "node": ">=0.12.0" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/run-parallel": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", - "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "node_modules/test-exclude": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", + "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], "dependencies": { - "queue-microtask": "^1.2.2" + "@istanbuljs/schema": "^0.1.2", + "glob": "^7.1.4", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=8" } }, - "node_modules/rxjs": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.0.tgz", - "integrity": "sha512-F2+gxDshqmIub1KdvZkaEfGDwLNpPvk9Fs6LD/MyQxNgMds/WH9OdDDXOmxUZpME+iSK3rQCctkL0DYyytUqMg==", - "dev": true, + "node_modules/text-segmentation": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/text-segmentation/-/text-segmentation-1.0.3.tgz", + "integrity": "sha512-iOiPUo/BGnZ6+54OsWxZidGCsdU8YbE4PSpdPinp7DeMtUJNJBoJ/ouUSTJjHkh1KntHaltHl/gDs2FC4i5+Nw==", + "optional": true, "dependencies": { - "tslib": "^2.1.0" + "utrie": "^1.0.2" } }, - "node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", "dev": true }, - "node_modules/safe-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-2.1.1.tgz", - "integrity": "sha512-rx+x8AMzKb5Q5lQ95Zoi6ZbJqwCLkqi3XuJXp5P3rT8OEc6sZCJG5AE5dU3lsgRr/F4Bs31jSlVN+j5KrsGu9A==", + "node_modules/throat": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/throat/-/throat-6.0.2.tgz", + "integrity": "sha512-WKexMoJj3vEuK0yFEapj8y64V0A6xcuPuK9Gt1d0R+dzCSJc0lHqQytAbSB4cDAK0dWh4T0E2ETkoLE2WZ41OQ==", + "dev": true + }, + "node_modules/through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", + "dev": true + }, + "node_modules/through2": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", + "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", "dev": true, "dependencies": { - "regexp-tree": "~0.1.1" + "readable-stream": "~2.3.6", + "xtend": "~4.0.1" } }, - "node_modules/safe-regex-test": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz", - "integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==", + "node_modules/tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.3", - "is-regex": "^1.1.4" + "os-tmpdir": "~1.0.2" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">=0.6.0" } }, - "node_modules/safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "node_modules/tmpl": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", + "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==", "dev": true }, - "node_modules/saxes": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/saxes/-/saxes-5.0.1.tgz", - "integrity": "sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==", + "node_modules/to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", "dev": true, - "dependencies": { - "xmlchars": "^2.2.0" - }, "engines": { - "node": ">=10" + "node": ">=4" } }, - "node_modules/semver": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", - "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "node_modules/to-readable-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-1.0.0.tgz", + "integrity": "sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==", "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, "engines": { - "node": ">=10" + "node": ">=6" } }, - "node_modules/semver-diff": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-3.1.1.tgz", - "integrity": "sha512-GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg==", + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", "dev": true, "dependencies": { - "semver": "^6.3.0" + "is-number": "^7.0.0" }, "engines": { - "node": ">=8" + "node": ">=8.0" } }, - "node_modules/semver-diff/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "node_modules/tough-cookie": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.3.tgz", + "integrity": "sha512-aX/y5pVRkfRnfmuX+OdbSdXvPe6ieKX/G2s7e98f4poJHnqH3281gDPm/metm6E/WRamfx7WC4HUqkWHfQHprw==", "dev": true, - "bin": { - "semver": "bin/semver.js" + "dependencies": { + "psl": "^1.1.33", + "punycode": "^2.1.1", + "universalify": "^0.2.0", + "url-parse": "^1.5.3" + }, + "engines": { + "node": ">=6" } }, - "node_modules/semver/node_modules/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==", + "node_modules/tr46": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-2.1.0.tgz", + "integrity": "sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw==", "dev": true, "dependencies": { - "yallist": "^4.0.0" + "punycode": "^2.1.1" }, "engines": { - "node": ">=10" + "node": ">=8" } }, - "node_modules/semver/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/setimmediate": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", - "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==", - "dev": true - }, - "node_modules/shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "node_modules/ts-node": { + "version": "10.9.1", + "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.1.tgz", + "integrity": "sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==", "dev": true, "dependencies": { - "shebang-regex": "^3.0.0" + "@cspotcode/source-map-support": "^0.8.0", + "@tsconfig/node10": "^1.0.7", + "@tsconfig/node12": "^1.0.7", + "@tsconfig/node14": "^1.0.0", + "@tsconfig/node16": "^1.0.2", + "acorn": "^8.4.1", + "acorn-walk": "^8.1.1", + "arg": "^4.1.0", + "create-require": "^1.1.0", + "diff": "^4.0.1", + "make-error": "^1.1.1", + "v8-compile-cache-lib": "^3.0.1", + "yn": "3.1.1" }, - "engines": { - "node": ">=8" + "bin": { + "ts-node": "dist/bin.js", + "ts-node-cwd": "dist/bin-cwd.js", + "ts-node-esm": "dist/bin-esm.js", + "ts-node-script": "dist/bin-script.js", + "ts-node-transpile-only": "dist/bin-transpile.js", + "ts-script": "dist/bin-script-deprecated.js" + }, + "peerDependencies": { + "@swc/core": ">=1.2.50", + "@swc/wasm": ">=1.2.50", + "@types/node": "*", + "typescript": ">=2.7" + }, + "peerDependenciesMeta": { + "@swc/core": { + "optional": true + }, + "@swc/wasm": { + "optional": true + } } }, - "node_modules/shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "node_modules/ts-node/node_modules/acorn-walk": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", + "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==", "dev": true, "engines": { - "node": ">=8" + "node": ">=0.4.0" } }, - "node_modules/shelljs": { - "version": "0.8.5", - "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.8.5.tgz", - "integrity": "sha512-TiwcRcrkhHvbrZbnRcFYMLl30Dfov3HKqzp5tO5b4pt6G/SezKcYhmDg15zXVBswHmctSAQKznqNW2LO5tTDow==", + "node_modules/ts-node/node_modules/arg": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", + "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", + "dev": true + }, + "node_modules/tslib": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", + "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==", + "dev": true + }, + "node_modules/tsutils": { + "version": "3.21.0", + "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", + "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", "dev": true, "dependencies": { - "glob": "^7.0.0", - "interpret": "^1.0.0", - "rechoir": "^0.6.2" - }, - "bin": { - "shjs": "bin/shjs" + "tslib": "^1.8.1" }, "engines": { - "node": ">=4" - } - }, - "node_modules/side-channel": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", - "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" + "node": ">= 6" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "peerDependencies": { + "typescript": ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta" } }, - "node_modules/signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "node_modules/tsutils/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", "dev": true }, - "node_modules/simple-concat": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz", - "integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/simple-get": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-4.0.1.tgz", - "integrity": "sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==", + "node_modules/type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "dependencies": { - "decompress-response": "^6.0.0", - "once": "^1.3.1", - "simple-concat": "^1.0.0" - } - }, - "node_modules/simple-swizzle": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz", - "integrity": "sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==", - "peer": true, "dependencies": { - "is-arrayish": "^0.3.1" + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" } }, - "node_modules/simple-swizzle/node_modules/is-arrayish": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz", - "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==", - "peer": true - }, - "node_modules/sisteransi": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", - "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", - "dev": true - }, - "node_modules/slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "node_modules/type-detect": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", + "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", "dev": true, "engines": { - "node": ">=8" + "node": ">=4" } }, - "node_modules/sort-keys": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-4.2.0.tgz", - "integrity": "sha512-aUYIEU/UviqPgc8mHR6IW1EGxkAXpeRETYcrzg8cLAvUPZcpAlleSXHV2mY7G12GphSH6Gzv+4MMVSSkbdteHg==", + "node_modules/type-fest": { + "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, - "dependencies": { - "is-plain-obj": "^2.0.0" - }, "engines": { - "node": ">=8" + "node": ">=10" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/sortablejs": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/sortablejs/-/sortablejs-1.15.0.tgz", - "integrity": "sha512-bv9qgVMjUMf89wAvM6AxVvS/4MX3sPeN0+agqShejLU5z5GX4C75ow1O2e5k4L6XItUyAK3gH6AxSbXrOM5e8w==", - "peer": true + "node_modules/typed-array-length": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.4.tgz", + "integrity": "sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "for-each": "^0.3.3", + "is-typed-array": "^1.1.9" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "node_modules/typedarray-to-buffer": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", + "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", "dev": true, - "engines": { - "node": ">=0.10.0" + "dependencies": { + "is-typedarray": "^1.0.0" } }, - "node_modules/source-map-js": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", - "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", + "node_modules/typescript": { + "version": "4.9.5", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz", + "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==", "dev": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, "engines": { - "node": ">=0.10.0" + "node": ">=4.2.0" } }, - "node_modules/source-map-support": { - "version": "0.5.21", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", - "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "node_modules/unbox-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", + "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", "dev": true, "dependencies": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" + "call-bind": "^1.0.2", + "has-bigints": "^1.0.2", + "has-symbols": "^1.0.3", + "which-boxed-primitive": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/spdx-correct": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", - "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", + "node_modules/unbzip2-stream": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/unbzip2-stream/-/unbzip2-stream-1.4.3.tgz", + "integrity": "sha512-mlExGW4w71ebDJviH16lQLtZS32VKqsSfk80GCfUlwT/4/hNRFsoscrF/c++9xinkMzECL1uL9DDwXqFWkruPg==", "dev": true, "dependencies": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" + "buffer": "^5.2.1", + "through": "^2.3.8" } }, - "node_modules/spdx-exceptions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", - "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", - "dev": true - }, - "node_modules/spdx-expression-parse": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", - "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "node_modules/unicode-canonical-property-names-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", + "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==", "dev": true, - "dependencies": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" + "engines": { + "node": ">=4" } }, - "node_modules/spdx-license-ids": { - "version": "3.0.12", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.12.tgz", - "integrity": "sha512-rr+VVSXtRhO4OHbXUiAF7xW3Bo9DuuF6C5jH+q/x15j2jniycgKbxU09Hr0WqlSLUs4i4ltHGXqTe7VHclYWyA==", - "dev": true - }, - "node_modules/speedometer": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/speedometer/-/speedometer-1.0.0.tgz", - "integrity": "sha512-lgxErLl/7A5+vgIIXsh9MbeukOaCb2axgQ+bKCdIE+ibNT4XNYGNCR1qFEGq6F+YDASXK3Fh/c5FgtZchFolxw==", - "dev": true - }, - "node_modules/sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", - "dev": true - }, - "node_modules/stack-utils": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", - "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", + "node_modules/unicode-match-property-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", + "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", "dev": true, "dependencies": { - "escape-string-regexp": "^2.0.0" + "unicode-canonical-property-names-ecmascript": "^2.0.0", + "unicode-property-aliases-ecmascript": "^2.0.0" }, "engines": { - "node": ">=10" + "node": ">=4" } }, - "node_modules/stack-utils/node_modules/escape-string-regexp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", - "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", + "node_modules/unicode-match-property-value-ecmascript": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz", + "integrity": "sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==", "dev": true, "engines": { - "node": ">=8" - } - }, - "node_modules/stackblur-canvas": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/stackblur-canvas/-/stackblur-canvas-2.5.0.tgz", - "integrity": "sha512-EeNzTVfj+1In7aSLPKDD03F/ly4RxEuF/EX0YcOG0cKoPXs+SLZxDawQbexQDBzwROs4VKLWTOaZQlZkGBFEIQ==", - "optional": true, + "node": ">=4" + } + }, + "node_modules/unicode-property-aliases-ecmascript": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz", + "integrity": "sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==", + "dev": true, "engines": { - "node": ">=0.1.14" + "node": ">=4" } }, - "node_modules/stencil-eslint-core": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/stencil-eslint-core/-/stencil-eslint-core-0.3.1.tgz", - "integrity": "sha512-z1yp1+Qzr6C/X4RgaCt0egDu5CsIrZzMCr9eGMmQTnSU1leVbSJB5aoI/KWv8qe8k7b1LCit46Ff3udRJ96Lfw==", + "node_modules/unique-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz", + "integrity": "sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==", "dev": true, "dependencies": { - "eslint-utils": "~3.0.0", - "tsutils": "~3.21.0" + "crypto-random-string": "^2.0.0" }, "engines": { - "node": ">=8.9.0" - }, - "peerDependencies": { - "@typescript-eslint/parser": "^5.8.0", - "eslint": "^8" + "node": ">=8" } }, - "node_modules/stream-shift": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz", - "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==", + "node_modules/universal-user-agent": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-6.0.0.tgz", + "integrity": "sha512-isyNax3wXoKaulPDZWHQqbmIx1k2tb9fb3GGDBRxCscfYV2Ch7WxPArBsFEG8s/safwXTT7H4QGhaIkTp9447w==", "dev": true }, - "node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "node_modules/universalify": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz", + "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==", "dev": true, - "dependencies": { - "safe-buffer": "~5.1.0" + "engines": { + "node": ">= 4.0.0" } }, - "node_modules/string-length": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz", - "integrity": "sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==", + "node_modules/update-browserslist-db": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz", + "integrity": "sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==", "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], "dependencies": { - "char-regex": "^1.0.2", - "strip-ansi": "^6.0.0" + "escalade": "^3.1.1", + "picocolors": "^1.0.0" }, - "engines": { - "node": ">=10" + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" } }, - "node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "node_modules/update-notifier": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-5.1.0.tgz", + "integrity": "sha512-ItnICHbeMh9GqUy31hFPrD1kcuZ3rpxDZbf4KUDavXwS0bW5m7SLbDQpGX3UYr072cbrF5hFUs3r5tUsPwjfHw==", "dev": true, "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" + "boxen": "^5.0.0", + "chalk": "^4.1.0", + "configstore": "^5.0.1", + "has-yarn": "^2.1.0", + "import-lazy": "^2.1.0", + "is-ci": "^2.0.0", + "is-installed-globally": "^0.4.0", + "is-npm": "^5.0.0", + "is-yarn-global": "^0.3.0", + "latest-version": "^5.1.0", + "pupa": "^2.1.1", + "semver": "^7.3.4", + "semver-diff": "^3.1.1", + "xdg-basedir": "^4.0.0" }, "engines": { - "node": ">=8" - } - }, - "node_modules/string.prototype.matchall": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.8.tgz", - "integrity": "sha512-6zOCOcJ+RJAQshcTvXPHoxoQGONa3e/Lqx90wUA+wEzX78sg5Bo+1tQo4N0pohS0erG9qtCqJDjNCQBjeWVxyg==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4", - "get-intrinsic": "^1.1.3", - "has-symbols": "^1.0.3", - "internal-slot": "^1.0.3", - "regexp.prototype.flags": "^1.4.3", - "side-channel": "^1.0.4" + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/yeoman/update-notifier?sponsor=1" } }, - "node_modules/string.prototype.trimend": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz", - "integrity": "sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==", - "dev": true, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "punycode": "^2.1.0" } }, - "node_modules/string.prototype.trimstart": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.6.tgz", - "integrity": "sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==", + "node_modules/url-parse": { + "version": "1.5.10", + "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.10.tgz", + "integrity": "sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "querystringify": "^2.1.1", + "requires-port": "^1.0.0" } }, - "node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "node_modules/url-parse-lax": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", + "integrity": "sha512-NjFKA0DidqPa5ciFcSrXnAltTtzz84ogy+NebPvfEgAck0+TNg4UJ4IN+fB7zRZfbgUf0syOo9MDxFkDSMuFaQ==", "dev": true, "dependencies": { - "ansi-regex": "^5.0.1" + "prepend-http": "^2.0.0" }, "engines": { - "node": ">=8" + "node": ">=4" } }, - "node_modules/strip-bom": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", - "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "dev": true + }, + "node_modules/util-extend": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/util-extend/-/util-extend-1.0.3.tgz", + "integrity": "sha512-mLs5zAK+ctllYBj+iAQvlDCwoxU/WDOUaJkcFudeiAX6OajC6BKXJUa9a+tbtkC11dz2Ufb7h0lyvIOVn4LADA==", + "dev": true + }, + "node_modules/utrie": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/utrie/-/utrie-1.0.2.tgz", + "integrity": "sha512-1MLa5ouZiOmQzUbjbu9VmjLzn1QLXBhwpUa7kdLUQK+KQ5KA9I1vk5U4YHe/X2Ch7PYnJfWuWT+VbuxbGwljhw==", + "optional": true, + "dependencies": { + "base64-arraybuffer": "^1.0.2" + } + }, + "node_modules/v8-compile-cache-lib": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", + "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==", + "dev": true + }, + "node_modules/v8-to-istanbul": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-8.1.1.tgz", + "integrity": "sha512-FGtKtv3xIpR6BYhvgH8MI/y78oT7d8Au3ww4QIxymrCtZEh5b8gCw2siywE+puhEmuWKDtmfrvF5UlB298ut3w==", "dev": true, + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.1", + "convert-source-map": "^1.6.0", + "source-map": "^0.7.3" + }, "engines": { - "node": ">=8" + "node": ">=10.12.0" } }, - "node_modules/strip-final-newline": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", - "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "node_modules/v8-to-istanbul/node_modules/source-map": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", "dev": true, "engines": { - "node": ">=6" + "node": ">= 8" } }, - "node_modules/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==", + "node_modules/validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", "dev": true, "dependencies": { - "min-indent": "^1.0.0" - }, - "engines": { - "node": ">=8" + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" } }, - "node_modules/strip-json-comments": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", - "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "node_modules/w3c-hr-time": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz", + "integrity": "sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==", + "deprecated": "Use your platform's native performance.now() and performance.timeOrigin.", "dev": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "dependencies": { + "browser-process-hrtime": "^1.0.0" } }, - "node_modules/strnum": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/strnum/-/strnum-1.0.5.tgz", - "integrity": "sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA==" - }, - "node_modules/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==", + "node_modules/w3c-xmlserializer": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz", + "integrity": "sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA==", "dev": true, "dependencies": { - "has-flag": "^4.0.0" + "xml-name-validator": "^3.0.0" }, "engines": { - "node": ">=8" + "node": ">=10" } }, - "node_modules/supports-hyperlinks": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.3.0.tgz", - "integrity": "sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA==", + "node_modules/walker": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", + "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==", "dev": true, "dependencies": { - "has-flag": "^4.0.0", - "supports-color": "^7.0.0" - }, - "engines": { - "node": ">=8" + "makeerror": "1.0.12" } }, - "node_modules/supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "node_modules/wcwidth": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", + "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==", "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "dependencies": { + "defaults": "^1.0.3" } }, - "node_modules/svg-pathdata": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/svg-pathdata/-/svg-pathdata-6.0.3.tgz", - "integrity": "sha512-qsjeeq5YjBZ5eMdFuUa4ZosMLxgr5RZ+F+Y1OrDhuOCEInRMA3x74XdBtggJcj9kOeInz0WE+LgCPDkZFlBYJw==", - "optional": true, + "node_modules/webidl-conversions": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-6.1.0.tgz", + "integrity": "sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==", + "dev": true, "engines": { - "node": ">=12.0.0" + "node": ">=10.4" } }, - "node_modules/symbol-tree": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", - "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==", + "node_modules/whatwg-encoding": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz", + "integrity": "sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==", + "dev": true, + "dependencies": { + "iconv-lite": "0.4.24" + } + }, + "node_modules/whatwg-mimetype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz", + "integrity": "sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==", "dev": true }, - "node_modules/tabbable": { - "version": "6.1.2", - "resolved": "https://registry.npmjs.org/tabbable/-/tabbable-6.1.2.tgz", - "integrity": "sha512-qCN98uP7i9z0fIS4amQ5zbGBOq+OSigYeGvPy7NDk8Y9yncqDZ9pRPgfsc2PJIVM9RrJj7GIfuRgmjoUU9zTHQ==" + "node_modules/whatwg-url": { + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-8.7.0.tgz", + "integrity": "sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg==", + "dev": true, + "dependencies": { + "lodash": "^4.7.0", + "tr46": "^2.1.0", + "webidl-conversions": "^6.1.0" + }, + "engines": { + "node": ">=10" + } }, - "node_modules/tailwindcss": { - "version": "3.0.23", - "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.0.23.tgz", - "integrity": "sha512-+OZOV9ubyQ6oI2BXEhzw4HrqvgcARY38xv3zKcjnWtMIZstEsXdI9xftd1iB7+RbOnj2HOEzkA0OyB5BaSxPQA==", + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", "dev": true, "dependencies": { - "arg": "^5.0.1", - "chalk": "^4.1.2", - "chokidar": "^3.5.3", - "color-name": "^1.1.4", - "cosmiconfig": "^7.0.1", - "detective": "^5.2.0", - "didyoumean": "^1.2.2", - "dlv": "^1.1.3", - "fast-glob": "^3.2.11", - "glob-parent": "^6.0.2", - "is-glob": "^4.0.3", - "normalize-path": "^3.0.0", - "object-hash": "^2.2.0", - "postcss": "^8.4.6", - "postcss-js": "^4.0.0", - "postcss-load-config": "^3.1.0", - "postcss-nested": "5.0.6", - "postcss-selector-parser": "^6.0.9", - "postcss-value-parser": "^4.2.0", - "quick-lru": "^5.1.1", - "resolve": "^1.22.0" + "isexe": "^2.0.0" }, "bin": { - "tailwind": "lib/cli.js", - "tailwindcss": "lib/cli.js" + "node-which": "bin/node-which" }, "engines": { - "node": ">=12.13.0" + "node": ">= 8" + } + }, + "node_modules/which-boxed-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", + "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", + "dev": true, + "dependencies": { + "is-bigint": "^1.0.1", + "is-boolean-object": "^1.1.0", + "is-number-object": "^1.0.4", + "is-string": "^1.0.5", + "is-symbol": "^1.0.3" }, - "peerDependencies": { - "autoprefixer": "^10.0.2", - "postcss": "^8.0.9" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/tailwindcss/node_modules/resolve": { - "version": "1.22.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", - "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", + "node_modules/which-typed-array": { + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.9.tgz", + "integrity": "sha512-w9c4xkx6mPidwp7180ckYWfMmvxpjlZuIudNtDf4N/tTAUB8VJbX25qZoAsrtGuYNnGw3pa0AXgbGKRB8/EceA==", "dev": true, "dependencies": { - "is-core-module": "^2.9.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" + "available-typed-arrays": "^1.0.5", + "call-bind": "^1.0.2", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-tostringtag": "^1.0.0", + "is-typed-array": "^1.1.10" }, - "bin": { - "resolve": "bin/resolve" + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/tar-fs": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.1.tgz", - "integrity": "sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==", + "node_modules/wide-align": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", + "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", "dev": true, "dependencies": { - "chownr": "^1.1.1", - "mkdirp-classic": "^0.5.2", - "pump": "^3.0.0", - "tar-stream": "^2.1.4" + "string-width": "^1.0.2 || 2 || 3 || 4" } }, - "node_modules/tar-stream": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", - "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", + "node_modules/widest-line": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz", + "integrity": "sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==", "dev": true, "dependencies": { - "bl": "^4.0.3", - "end-of-stream": "^1.4.1", - "fs-constants": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.1.1" + "string-width": "^4.0.0" }, "engines": { - "node": ">=6" + "node": ">=8" } }, - "node_modules/tar-stream/node_modules/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==", + "node_modules/word-wrap": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", + "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", "dev": true, "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" }, "engines": { - "node": ">= 6" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } }, - "node_modules/terminal-link": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/terminal-link/-/terminal-link-2.1.1.tgz", - "integrity": "sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ==", + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "dev": true + }, + "node_modules/write-file-atomic": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", + "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", "dev": true, "dependencies": { - "ansi-escapes": "^4.2.1", - "supports-hyperlinks": "^2.0.0" + "imurmurhash": "^0.1.4", + "is-typedarray": "^1.0.0", + "signal-exit": "^3.0.2", + "typedarray-to-buffer": "^3.1.5" + } + }, + "node_modules/write-json-file": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/write-json-file/-/write-json-file-4.3.0.tgz", + "integrity": "sha512-PxiShnxf0IlnQuMYOPPhPkhExoCQuTUNPOa/2JWCYTmBquU9njyyDuwRKN26IZBlp4yn1nt+Agh2HOOBl+55HQ==", + "dev": true, + "dependencies": { + "detect-indent": "^6.0.0", + "graceful-fs": "^4.1.15", + "is-plain-obj": "^2.0.0", + "make-dir": "^3.0.0", + "sort-keys": "^4.0.0", + "write-file-atomic": "^3.0.0" }, "engines": { - "node": ">=8" + "node": ">=8.3" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/test-exclude": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", - "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", + "node_modules/ws": { + "version": "8.13.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.13.0.tgz", + "integrity": "sha512-x9vcZYTrFPC7aSIbj7sRCYo7L/Xb8Iy+pW0ng0wt2vCJv7M9HOMy0UoN3rr+IFC7hb7vXoqS+P9ktyLLLhO+LA==", + "dev": true, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/xdg-basedir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz", + "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==", "dev": true, - "dependencies": { - "@istanbuljs/schema": "^0.1.2", - "glob": "^7.1.4", - "minimatch": "^3.0.4" - }, "engines": { "node": ">=8" } }, - "node_modules/text-segmentation": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/text-segmentation/-/text-segmentation-1.0.3.tgz", - "integrity": "sha512-iOiPUo/BGnZ6+54OsWxZidGCsdU8YbE4PSpdPinp7DeMtUJNJBoJ/ouUSTJjHkh1KntHaltHl/gDs2FC4i5+Nw==", - "optional": true, - "dependencies": { - "utrie": "^1.0.2" - } - }, - "node_modules/text-table": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", - "dev": true - }, - "node_modules/throat": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/throat/-/throat-6.0.2.tgz", - "integrity": "sha512-WKexMoJj3vEuK0yFEapj8y64V0A6xcuPuK9Gt1d0R+dzCSJc0lHqQytAbSB4cDAK0dWh4T0E2ETkoLE2WZ41OQ==", + "node_modules/xml-name-validator": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz", + "integrity": "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==", "dev": true }, - "node_modules/through": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", + "node_modules/xmlchars": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz", + "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==", "dev": true }, - "node_modules/through2": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", - "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", + "node_modules/xss": { + "version": "1.0.14", + "resolved": "https://registry.npmjs.org/xss/-/xss-1.0.14.tgz", + "integrity": "sha512-og7TEJhXvn1a7kzZGQ7ETjdQVS2UfZyTlsEdDOqvQF7GoxNfY+0YLCzBy1kPdsDDx4QuNAonQPddpsn6Xl/7sw==", "dev": true, "dependencies": { - "readable-stream": "~2.3.6", - "xtend": "~4.0.1" + "commander": "^2.20.3", + "cssfilter": "0.0.10" + }, + "bin": { + "xss": "bin/xss" + }, + "engines": { + "node": ">= 0.10.0" } }, - "node_modules/tmp": { - "version": "0.0.33", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", - "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "node_modules/xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", "dev": true, - "dependencies": { - "os-tmpdir": "~1.0.2" - }, "engines": { - "node": ">=0.6.0" + "node": ">=0.4" } }, - "node_modules/tmpl": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", - "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==", - "dev": true - }, - "node_modules/to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", "dev": true, "engines": { - "node": ">=4" + "node": ">=10" } }, - "node_modules/to-readable-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-1.0.0.tgz", - "integrity": "sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==", + "node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true + }, + "node_modules/yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", "dev": true, "engines": { - "node": ">=6" + "node": ">= 6" } }, - "node_modules/to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "node_modules/yargs": { + "version": "17.7.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.1.tgz", + "integrity": "sha512-cwiTb08Xuv5fqF4AovYacTFNxk62th7LKJ6BL9IGUpTJrWoU7/7WdQGTP2SjKf1dUNBGzDd28p/Yfs/GI6JrLw==", "dev": true, "dependencies": { - "is-number": "^7.0.0" + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" }, "engines": { - "node": ">=8.0" + "node": ">=12" } }, - "node_modules/tough-cookie": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.3.tgz", - "integrity": "sha512-aX/y5pVRkfRnfmuX+OdbSdXvPe6ieKX/G2s7e98f4poJHnqH3281gDPm/metm6E/WRamfx7WC4HUqkWHfQHprw==", + "node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", "dev": true, - "dependencies": { - "psl": "^1.1.33", - "punycode": "^2.1.1", - "universalify": "^0.2.0", - "url-parse": "^1.5.3" - }, "engines": { - "node": ">=6" + "node": ">=12" } }, - "node_modules/tr46": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-2.1.0.tgz", - "integrity": "sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw==", + "node_modules/yauzl": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", + "integrity": "sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==", "dev": true, "dependencies": { - "punycode": "^2.1.1" - }, + "buffer-crc32": "~0.2.3", + "fd-slicer": "~1.1.0" + } + }, + "node_modules/yn": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", + "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", + "dev": true, "engines": { - "node": ">=8" + "node": ">=6" } }, - "node_modules/ts-node": { - "version": "10.9.1", - "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.1.tgz", - "integrity": "sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==", + "node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", "dev": true, - "dependencies": { - "@cspotcode/source-map-support": "^0.8.0", - "@tsconfig/node10": "^1.0.7", - "@tsconfig/node12": "^1.0.7", - "@tsconfig/node14": "^1.0.0", - "@tsconfig/node16": "^1.0.2", - "acorn": "^8.4.1", - "acorn-walk": "^8.1.1", - "arg": "^4.1.0", - "create-require": "^1.1.0", - "diff": "^4.0.1", - "make-error": "^1.1.1", - "v8-compile-cache-lib": "^3.0.1", - "yn": "3.1.1" - }, - "bin": { - "ts-node": "dist/bin.js", - "ts-node-cwd": "dist/bin-cwd.js", - "ts-node-esm": "dist/bin-esm.js", - "ts-node-script": "dist/bin-script.js", - "ts-node-transpile-only": "dist/bin-transpile.js", - "ts-script": "dist/bin-script-deprecated.js" + "engines": { + "node": ">=10" }, - "peerDependencies": { - "@swc/core": ">=1.2.50", - "@swc/wasm": ">=1.2.50", - "@types/node": "*", - "typescript": ">=2.7" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + } + }, + "dependencies": { + "@ampproject/remapping": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", + "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", + "dev": true, + "requires": { + "@jridgewell/gen-mapping": "^0.1.0", + "@jridgewell/trace-mapping": "^0.3.9" + } + }, + "@babel/code-frame": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.10.tgz", + "integrity": "sha512-/KKIMG4UEL35WmI9OlvMhurwtytjvXoFcGNrOvyG9zIzA8YmPjVtIZUf7b05+TPO7G7/GEmLHDaoCgACHl9hhA==", + "dev": true, + "requires": { + "@babel/highlight": "^7.22.10", + "chalk": "^2.4.2" }, - "peerDependenciesMeta": { - "@swc/core": { - "optional": true + "dependencies": { + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true }, - "@swc/wasm": { - "optional": true + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } } } }, - "node_modules/ts-node/node_modules/acorn-walk": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", - "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==", - "dev": true, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/ts-node/node_modules/arg": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", - "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", + "@babel/compat-data": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.22.9.tgz", + "integrity": "sha512-5UamI7xkUcJ3i9qVDS+KFDEK8/7oJ55/sJMB1Ge7IEapr7KfdfV/HErR+koZwOfd+SgtFKOKRhRakdg++DcJpQ==", "dev": true }, - "node_modules/tslib": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", - "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==", - "dev": true + "@babel/core": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.22.10.tgz", + "integrity": "sha512-fTmqbbUBAwCcre6zPzNngvsI0aNrPZe77AeqvDxWM9Nm+04RrJ3CAmGHA9f7lJQY6ZMhRztNemy4uslDxTX4Qw==", + "dev": true, + "requires": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.22.10", + "@babel/generator": "^7.22.10", + "@babel/helper-compilation-targets": "^7.22.10", + "@babel/helper-module-transforms": "^7.22.9", + "@babel/helpers": "^7.22.10", + "@babel/parser": "^7.22.10", + "@babel/template": "^7.22.5", + "@babel/traverse": "^7.22.10", + "@babel/types": "^7.22.10", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.2", + "semver": "^6.3.1" + }, + "dependencies": { + "semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true + } + } }, - "node_modules/tsutils": { - "version": "3.21.0", - "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", - "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", + "@babel/eslint-parser": { + "version": "7.19.1", + "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.19.1.tgz", + "integrity": "sha512-AqNf2QWt1rtu2/1rLswy6CDP7H9Oh3mMhk177Y67Rg8d7RD9WfOLLv8CGn6tisFvS2htm86yIe1yLF6I1UDaGQ==", "dev": true, - "dependencies": { - "tslib": "^1.8.1" - }, - "engines": { - "node": ">= 6" + "requires": { + "@nicolo-ribaudo/eslint-scope-5-internals": "5.1.1-v1", + "eslint-visitor-keys": "^2.1.0", + "semver": "^6.3.0" }, - "peerDependencies": { - "typescript": ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta" + "dependencies": { + "eslint-visitor-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "dev": true + }, + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } } }, - "node_modules/tsutils/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - }, - "node_modules/type-check": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", - "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "@babel/generator": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.22.10.tgz", + "integrity": "sha512-79KIf7YiWjjdZ81JnLujDRApWtl7BxTqWD88+FFdQEIOG8LJ0etDOM7CXuIgGJa55sGOwZVwuEsaLEm0PJ5/+A==", "dev": true, - "dependencies": { - "prelude-ls": "^1.2.1" + "requires": { + "@babel/types": "^7.22.10", + "@jridgewell/gen-mapping": "^0.3.2", + "@jridgewell/trace-mapping": "^0.3.17", + "jsesc": "^2.5.1" }, - "engines": { - "node": ">= 0.8.0" + "dependencies": { + "@jridgewell/gen-mapping": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", + "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "dev": true, + "requires": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + } + } } }, - "node_modules/type-detect": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", - "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", + "@babel/helper-annotate-as-pure": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.22.5.tgz", + "integrity": "sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg==", "dev": true, - "engines": { - "node": ">=4" + "requires": { + "@babel/types": "^7.22.5" } }, - "node_modules/type-fest": { - "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==", + "@babel/helper-builder-binary-assignment-operator-visitor": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.22.10.tgz", + "integrity": "sha512-Av0qubwDQxC56DoUReVDeLfMEjYYSN1nZrTUrWkXd7hpU73ymRANkbuDm3yni9npkn+RXy9nNbEJZEzXr7xrfQ==", "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "requires": { + "@babel/types": "^7.22.10" } }, - "node_modules/typed-array-length": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.4.tgz", - "integrity": "sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==", + "@babel/helper-compilation-targets": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.10.tgz", + "integrity": "sha512-JMSwHD4J7SLod0idLq5PKgI+6g/hLD/iuWBq08ZX49xE14VpVEojJ5rHWptpirV2j020MvypRLAXAO50igCJ5Q==", "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "is-typed-array": "^1.1.9" + "requires": { + "@babel/compat-data": "^7.22.9", + "@babel/helper-validator-option": "^7.22.5", + "browserslist": "^4.21.9", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "dependencies": { + "semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true + } } }, - "node_modules/typedarray-to-buffer": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", - "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", + "@babel/helper-create-class-features-plugin": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.22.10.tgz", + "integrity": "sha512-5IBb77txKYQPpOEdUdIhBx8VrZyDCQ+H82H0+5dX1TmuscP5vJKEE3cKurjtIw/vFwzbVH48VweE78kVDBrqjA==", "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-function-name": "^7.22.5", + "@babel/helper-member-expression-to-functions": "^7.22.5", + "@babel/helper-optimise-call-expression": "^7.22.5", + "@babel/helper-replace-supers": "^7.22.9", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "semver": "^6.3.1" + }, "dependencies": { - "is-typedarray": "^1.0.0" + "semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true + } } }, - "node_modules/typescript": { - "version": "4.9.5", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz", - "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==", + "@babel/helper-create-regexp-features-plugin": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.22.9.tgz", + "integrity": "sha512-+svjVa/tFwsNSG4NEy1h85+HQ5imbT92Q5/bgtS7P0GTQlP8WuFdqsiABmQouhiFGyV66oGxZFpeYHza1rNsKw==", "dev": true, - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" + "requires": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "regexpu-core": "^5.3.1", + "semver": "^6.3.1" }, - "engines": { - "node": ">=4.2.0" + "dependencies": { + "semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true + } } }, - "node_modules/unbox-primitive": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", - "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", + "@babel/helper-define-polyfill-provider": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.4.2.tgz", + "integrity": "sha512-k0qnnOqHn5dK9pZpfD5XXZ9SojAITdCKRn2Lp6rnDGzIbaP0rHyMPk/4wsSxVBVz4RfN0q6VpXWP2pDGIoQ7hw==", "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "has-bigints": "^1.0.2", - "has-symbols": "^1.0.3", - "which-boxed-primitive": "^1.0.2" + "requires": { + "@babel/helper-compilation-targets": "^7.22.6", + "@babel/helper-plugin-utils": "^7.22.5", + "debug": "^4.1.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.14.2" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "dependencies": { + "resolve": { + "version": "1.22.4", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.4.tgz", + "integrity": "sha512-PXNdCiPqDqeUou+w1C2eTQbNfxKSuMxqTCuvlmmMsk1NWHL5fRrhY6Pl0qEYYc6+QqGClco1Qj8XnjPego4wfg==", + "dev": true, + "requires": { + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + } + } } }, - "node_modules/unbzip2-stream": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/unbzip2-stream/-/unbzip2-stream-1.4.3.tgz", - "integrity": "sha512-mlExGW4w71ebDJviH16lQLtZS32VKqsSfk80GCfUlwT/4/hNRFsoscrF/c++9xinkMzECL1uL9DDwXqFWkruPg==", + "@babel/helper-environment-visitor": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.5.tgz", + "integrity": "sha512-XGmhECfVA/5sAt+H+xpSg0mfrHq6FzNr9Oxh7PSEBBRUb/mL7Kz3NICXb194rCqAEdxkhPT1a88teizAFyvk8Q==", + "dev": true + }, + "@babel/helper-function-name": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.22.5.tgz", + "integrity": "sha512-wtHSq6jMRE3uF2otvfuD3DIvVhOsSNshQl0Qrd7qC9oQJzHvOL4qQXlQn2916+CXGywIjpGuIkoyZRRxHPiNQQ==", "dev": true, - "dependencies": { - "buffer": "^5.2.1", - "through": "^2.3.8" + "requires": { + "@babel/template": "^7.22.5", + "@babel/types": "^7.22.5" } }, - "node_modules/unique-string": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz", - "integrity": "sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==", + "@babel/helper-hoist-variables": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz", + "integrity": "sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==", "dev": true, - "dependencies": { - "crypto-random-string": "^2.0.0" - }, - "engines": { - "node": ">=8" + "requires": { + "@babel/types": "^7.22.5" } }, - "node_modules/universal-user-agent": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-6.0.0.tgz", - "integrity": "sha512-isyNax3wXoKaulPDZWHQqbmIx1k2tb9fb3GGDBRxCscfYV2Ch7WxPArBsFEG8s/safwXTT7H4QGhaIkTp9447w==", - "dev": true + "@babel/helper-member-expression-to-functions": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.22.5.tgz", + "integrity": "sha512-aBiH1NKMG0H2cGZqspNvsaBe6wNGjbJjuLy29aU+eDZjSbbN53BaxlpB02xm9v34pLTZ1nIQPFYn2qMZoa5BQQ==", + "dev": true, + "requires": { + "@babel/types": "^7.22.5" + } }, - "node_modules/universalify": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz", - "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==", + "@babel/helper-module-imports": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.5.tgz", + "integrity": "sha512-8Dl6+HD/cKifutF5qGd/8ZJi84QeAKh+CEe1sBzz8UayBBGg1dAIJrdHOcOM5b2MpzWL2yuotJTtGjETq0qjXg==", "dev": true, - "engines": { - "node": ">= 4.0.0" + "requires": { + "@babel/types": "^7.22.5" } }, - "node_modules/update-browserslist-db": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz", - "integrity": "sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==", + "@babel/helper-module-transforms": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.22.9.tgz", + "integrity": "sha512-t+WA2Xn5K+rTeGtC8jCsdAH52bjggG5TKRuRrAGNM/mjIbO4GxvlLMFOEz9wXY5I2XQ60PMFsAG2WIcG82dQMQ==", "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - } - ], - "dependencies": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" - }, - "bin": { - "browserslist-lint": "cli.js" - }, - "peerDependencies": { - "browserslist": ">= 4.21.0" + "requires": { + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-module-imports": "^7.22.5", + "@babel/helper-simple-access": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "@babel/helper-validator-identifier": "^7.22.5" + } + }, + "@babel/helper-optimise-call-expression": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.22.5.tgz", + "integrity": "sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw==", + "dev": true, + "requires": { + "@babel/types": "^7.22.5" + } + }, + "@babel/helper-plugin-utils": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.22.5.tgz", + "integrity": "sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==", + "dev": true + }, + "@babel/helper-remap-async-to-generator": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.22.9.tgz", + "integrity": "sha512-8WWC4oR4Px+tr+Fp0X3RHDVfINGpF3ad1HIbrc8A77epiR6eMMc6jsgozkzT2uDiOOdoS9cLIQ+XD2XvI2WSmQ==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-wrap-function": "^7.22.9" } }, - "node_modules/update-notifier": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-5.1.0.tgz", - "integrity": "sha512-ItnICHbeMh9GqUy31hFPrD1kcuZ3rpxDZbf4KUDavXwS0bW5m7SLbDQpGX3UYr072cbrF5hFUs3r5tUsPwjfHw==", + "@babel/helper-replace-supers": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.22.9.tgz", + "integrity": "sha512-LJIKvvpgPOPUThdYqcX6IXRuIcTkcAub0IaDRGCZH0p5GPUp7PhRU9QVgFcDDd51BaPkk77ZjqFwh6DZTAEmGg==", "dev": true, - "dependencies": { - "boxen": "^5.0.0", - "chalk": "^4.1.0", - "configstore": "^5.0.1", - "has-yarn": "^2.1.0", - "import-lazy": "^2.1.0", - "is-ci": "^2.0.0", - "is-installed-globally": "^0.4.0", - "is-npm": "^5.0.0", - "is-yarn-global": "^0.3.0", - "latest-version": "^5.1.0", - "pupa": "^2.1.1", - "semver": "^7.3.4", - "semver-diff": "^3.1.1", - "xdg-basedir": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/yeoman/update-notifier?sponsor=1" + "requires": { + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-member-expression-to-functions": "^7.22.5", + "@babel/helper-optimise-call-expression": "^7.22.5" } }, - "node_modules/uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dependencies": { - "punycode": "^2.1.0" + "@babel/helper-simple-access": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz", + "integrity": "sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==", + "dev": true, + "requires": { + "@babel/types": "^7.22.5" } }, - "node_modules/url-parse": { - "version": "1.5.10", - "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.10.tgz", - "integrity": "sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==", + "@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.22.5.tgz", + "integrity": "sha512-tK14r66JZKiC43p8Ki33yLBVJKlQDFoA8GYN67lWCDCqoL6EMMSuM9b+Iff2jHaM/RRFYl7K+iiru7hbRqNx8Q==", "dev": true, - "dependencies": { - "querystringify": "^2.1.1", - "requires-port": "^1.0.0" + "requires": { + "@babel/types": "^7.22.5" } }, - "node_modules/url-parse-lax": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", - "integrity": "sha512-NjFKA0DidqPa5ciFcSrXnAltTtzz84ogy+NebPvfEgAck0+TNg4UJ4IN+fB7zRZfbgUf0syOo9MDxFkDSMuFaQ==", + "@babel/helper-split-export-declaration": { + "version": "7.22.6", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz", + "integrity": "sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==", "dev": true, - "dependencies": { - "prepend-http": "^2.0.0" - }, - "engines": { - "node": ">=4" + "requires": { + "@babel/types": "^7.22.5" } }, - "node_modules/util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "@babel/helper-string-parser": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz", + "integrity": "sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==", "dev": true }, - "node_modules/util-extend": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/util-extend/-/util-extend-1.0.3.tgz", - "integrity": "sha512-mLs5zAK+ctllYBj+iAQvlDCwoxU/WDOUaJkcFudeiAX6OajC6BKXJUa9a+tbtkC11dz2Ufb7h0lyvIOVn4LADA==", + "@babel/helper-validator-identifier": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.5.tgz", + "integrity": "sha512-aJXu+6lErq8ltp+JhkJUfk1MTGyuA4v7f3pA+BJ5HLfNC6nAQ0Cpi9uOquUj8Hehg0aUiHzWQbOVJGao6ztBAQ==", "dev": true }, - "node_modules/utrie": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/utrie/-/utrie-1.0.2.tgz", - "integrity": "sha512-1MLa5ouZiOmQzUbjbu9VmjLzn1QLXBhwpUa7kdLUQK+KQ5KA9I1vk5U4YHe/X2Ch7PYnJfWuWT+VbuxbGwljhw==", - "optional": true, + "@babel/helper-validator-option": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.22.5.tgz", + "integrity": "sha512-R3oB6xlIVKUnxNUxbmgq7pKjxpru24zlimpE8WK47fACIlM0II/Hm1RS8IaOI7NgCr6LNS+jl5l75m20npAziw==", + "dev": true + }, + "@babel/helper-wrap-function": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.22.10.tgz", + "integrity": "sha512-OnMhjWjuGYtdoO3FmsEFWvBStBAe2QOgwOLsLNDjN+aaiMD8InJk1/O3HSD8lkqTjCgg5YI34Tz15KNNA3p+nQ==", + "dev": true, + "requires": { + "@babel/helper-function-name": "^7.22.5", + "@babel/template": "^7.22.5", + "@babel/types": "^7.22.10" + } + }, + "@babel/helpers": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.22.10.tgz", + "integrity": "sha512-a41J4NW8HyZa1I1vAndrraTlPZ/eZoga2ZgS7fEr0tZJGVU4xqdE80CEm0CcNjha5EZ8fTBYLKHF0kqDUuAwQw==", + "dev": true, + "requires": { + "@babel/template": "^7.22.5", + "@babel/traverse": "^7.22.10", + "@babel/types": "^7.22.10" + } + }, + "@babel/highlight": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.10.tgz", + "integrity": "sha512-78aUtVcT7MUscr0K5mIEnkwxPE0MaxkR5RxRwuHaQ+JuU5AmTPhY+do2mdzVTnIJJpyBglql2pehuBIWHug+WQ==", + "dev": true, + "requires": { + "@babel/helper-validator-identifier": "^7.22.5", + "chalk": "^2.4.2", + "js-tokens": "^4.0.0" + }, "dependencies": { - "base64-arraybuffer": "^1.0.2" + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } } }, - "node_modules/v8-compile-cache-lib": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", - "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==", + "@babel/parser": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.22.10.tgz", + "integrity": "sha512-lNbdGsQb9ekfsnjFGhEiF4hfFqGgfOP3H3d27re3n+CGhNuTSUEQdfWk556sTLNTloczcdM5TYF2LhzmDQKyvQ==", "dev": true }, - "node_modules/v8-to-istanbul": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-8.1.1.tgz", - "integrity": "sha512-FGtKtv3xIpR6BYhvgH8MI/y78oT7d8Au3ww4QIxymrCtZEh5b8gCw2siywE+puhEmuWKDtmfrvF5UlB298ut3w==", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.22.5.tgz", + "integrity": "sha512-NP1M5Rf+u2Gw9qfSO4ihjcTGW5zXTi36ITLd4/EoAcEhIZ0yjMqmftDNl3QC19CX7olhrjpyU454g/2W7X0jvQ==", "dev": true, - "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.1", - "convert-source-map": "^1.6.0", - "source-map": "^0.7.3" - }, - "engines": { - "node": ">=10.12.0" + "requires": { + "@babel/helper-plugin-utils": "^7.22.5" } }, - "node_modules/v8-to-istanbul/node_modules/source-map": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", - "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.22.5.tgz", + "integrity": "sha512-31Bb65aZaUwqCbWMnZPduIZxCBngHFlzyN6Dq6KAJjtx+lx6ohKHubc61OomYi7XwVD4Ol0XCVz4h+pYFR048g==", "dev": true, - "engines": { - "node": ">= 8" + "requires": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", + "@babel/plugin-transform-optional-chaining": "^7.22.5" } }, - "node_modules/validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "@babel/plugin-proposal-private-property-in-object": { + "version": "7.21.0-placeholder-for-preset-env.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz", + "integrity": "sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==", "dev": true, - "dependencies": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" + "requires": {} + }, + "@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", + "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" } }, - "node_modules/w3c-hr-time": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz", - "integrity": "sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==", - "deprecated": "Use your platform's native performance.now() and performance.timeOrigin.", + "@babel/plugin-syntax-bigint": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz", + "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==", "dev": true, - "dependencies": { - "browser-process-hrtime": "^1.0.0" + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" } }, - "node_modules/w3c-xmlserializer": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz", - "integrity": "sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA==", + "@babel/plugin-syntax-class-properties": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", + "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", "dev": true, - "dependencies": { - "xml-name-validator": "^3.0.0" - }, - "engines": { - "node": ">=10" + "requires": { + "@babel/helper-plugin-utils": "^7.12.13" } }, - "node_modules/walker": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", - "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==", + "@babel/plugin-syntax-class-static-block": { + "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, - "dependencies": { - "makeerror": "1.0.12" + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" } }, - "node_modules/wcwidth": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", - "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==", + "@babel/plugin-syntax-dynamic-import": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", + "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", "dev": true, - "dependencies": { - "defaults": "^1.0.3" + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" } }, - "node_modules/webidl-conversions": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-6.1.0.tgz", - "integrity": "sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==", + "@babel/plugin-syntax-export-namespace-from": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", + "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", "dev": true, - "engines": { - "node": ">=10.4" + "requires": { + "@babel/helper-plugin-utils": "^7.8.3" + } + }, + "@babel/plugin-syntax-import-assertions": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.22.5.tgz", + "integrity": "sha512-rdV97N7KqsRzeNGoWUOK6yUsWarLjE5Su/Snk9IYPU9CwkWHs4t+rTGOvffTR8XGkJMTAdLfO0xVnXm8wugIJg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.22.5" + } + }, + "@babel/plugin-syntax-import-attributes": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.22.5.tgz", + "integrity": "sha512-KwvoWDeNKPETmozyFE0P2rOLqh39EoQHNjqizrI5B8Vt0ZNS7M56s7dAiAqbYfiAYOuIzIh96z3iR2ktgu3tEg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.22.5" + } + }, + "@babel/plugin-syntax-import-meta": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", + "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" } }, - "node_modules/whatwg-encoding": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz", - "integrity": "sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==", + "@babel/plugin-syntax-json-strings": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", + "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", "dev": true, - "dependencies": { - "iconv-lite": "0.4.24" + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" } }, - "node_modules/whatwg-mimetype": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz", - "integrity": "sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==", - "dev": true - }, - "node_modules/whatwg-url": { - "version": "8.7.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-8.7.0.tgz", - "integrity": "sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg==", + "@babel/plugin-syntax-jsx": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.22.5.tgz", + "integrity": "sha512-gvyP4hZrgrs/wWMaocvxZ44Hw0b3W8Pe+cMxc8V1ULQ07oh8VNbIRaoD1LRZVTvD+0nieDKjfgKg89sD7rrKrg==", "dev": true, - "dependencies": { - "lodash": "^4.7.0", - "tr46": "^2.1.0", - "webidl-conversions": "^6.1.0" - }, - "engines": { - "node": ">=10" + "requires": { + "@babel/helper-plugin-utils": "^7.22.5" } }, - "node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", + "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", "dev": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" } }, - "node_modules/which-boxed-primitive": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", - "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", + "@babel/plugin-syntax-nullish-coalescing-operator": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", + "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", "dev": true, - "dependencies": { - "is-bigint": "^1.0.1", - "is-boolean-object": "^1.1.0", - "is-number-object": "^1.0.4", - "is-string": "^1.0.5", - "is-symbol": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" } }, - "node_modules/which-typed-array": { - "version": "1.1.9", - "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.9.tgz", - "integrity": "sha512-w9c4xkx6mPidwp7180ckYWfMmvxpjlZuIudNtDf4N/tTAUB8VJbX25qZoAsrtGuYNnGw3pa0AXgbGKRB8/EceA==", + "@babel/plugin-syntax-numeric-separator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", + "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", "dev": true, - "dependencies": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-tostringtag": "^1.0.0", - "is-typed-array": "^1.1.10" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" } }, - "node_modules/wide-align": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", - "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", + "@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", + "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", "dev": true, - "dependencies": { - "string-width": "^1.0.2 || 2 || 3 || 4" + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" } }, - "node_modules/widest-line": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz", - "integrity": "sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==", + "@babel/plugin-syntax-optional-catch-binding": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", + "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", "dev": true, - "dependencies": { - "string-width": "^4.0.0" - }, - "engines": { - "node": ">=8" + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" } }, - "node_modules/word-wrap": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", - "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", + "@babel/plugin-syntax-optional-chaining": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", + "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", "dev": true, - "engines": { - "node": ">=0.10.0" + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" } }, - "node_modules/wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "@babel/plugin-syntax-private-property-in-object": { + "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, - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" } }, - "node_modules/wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", - "dev": true - }, - "node_modules/write-file-atomic": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", - "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", + "@babel/plugin-syntax-top-level-await": { + "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, - "dependencies": { - "imurmurhash": "^0.1.4", - "is-typedarray": "^1.0.0", - "signal-exit": "^3.0.2", - "typedarray-to-buffer": "^3.1.5" + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" } }, - "node_modules/write-json-file": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/write-json-file/-/write-json-file-4.3.0.tgz", - "integrity": "sha512-PxiShnxf0IlnQuMYOPPhPkhExoCQuTUNPOa/2JWCYTmBquU9njyyDuwRKN26IZBlp4yn1nt+Agh2HOOBl+55HQ==", + "@babel/plugin-syntax-typescript": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.22.5.tgz", + "integrity": "sha512-1mS2o03i7t1c6VzH6fdQ3OA8tcEIxwG18zIPRp+UY1Ihv6W+XZzBCVxExF9upussPXJ0xE9XRHwMoNs1ep/nRQ==", "dev": true, - "dependencies": { - "detect-indent": "^6.0.0", - "graceful-fs": "^4.1.15", - "is-plain-obj": "^2.0.0", - "make-dir": "^3.0.0", - "sort-keys": "^4.0.0", - "write-file-atomic": "^3.0.0" - }, - "engines": { - "node": ">=8.3" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "requires": { + "@babel/helper-plugin-utils": "^7.22.5" } }, - "node_modules/ws": { - "version": "7.5.9", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz", - "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", + "@babel/plugin-syntax-unicode-sets-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-unicode-sets-regex/-/plugin-syntax-unicode-sets-regex-7.18.6.tgz", + "integrity": "sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==", "dev": true, - "engines": { - "node": ">=8.3.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": "^5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" } }, - "node_modules/xdg-basedir": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz", - "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==", + "@babel/plugin-transform-arrow-functions": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.22.5.tgz", + "integrity": "sha512-26lTNXoVRdAnsaDXPpvCNUq+OVWEVC6bx7Vvz9rC53F2bagUWW4u4ii2+h8Fejfh7RYqPxn+libeFBBck9muEw==", "dev": true, - "engines": { - "node": ">=8" + "requires": { + "@babel/helper-plugin-utils": "^7.22.5" } }, - "node_modules/xml-name-validator": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz", - "integrity": "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==", - "dev": true - }, - "node_modules/xmlchars": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz", - "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==", - "dev": true + "@babel/plugin-transform-async-generator-functions": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.22.10.tgz", + "integrity": "sha512-eueE8lvKVzq5wIObKK/7dvoeKJ+xc6TvRn6aysIjS6pSCeLy7S/eVi7pEQknZqyqvzaNKdDtem8nUNTBgDVR2g==", + "dev": true, + "requires": { + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-remap-async-to-generator": "^7.22.9", + "@babel/plugin-syntax-async-generators": "^7.8.4" + } }, - "node_modules/xss": { - "version": "1.0.14", - "resolved": "https://registry.npmjs.org/xss/-/xss-1.0.14.tgz", - "integrity": "sha512-og7TEJhXvn1a7kzZGQ7ETjdQVS2UfZyTlsEdDOqvQF7GoxNfY+0YLCzBy1kPdsDDx4QuNAonQPddpsn6Xl/7sw==", + "@babel/plugin-transform-async-to-generator": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.22.5.tgz", + "integrity": "sha512-b1A8D8ZzE/VhNDoV1MSJTnpKkCG5bJo+19R4o4oy03zM7ws8yEMK755j61Dc3EyvdysbqH5BOOTquJ7ZX9C6vQ==", "dev": true, - "dependencies": { - "commander": "^2.20.3", - "cssfilter": "0.0.10" - }, - "bin": { - "xss": "bin/xss" - }, - "engines": { - "node": ">= 0.10.0" + "requires": { + "@babel/helper-module-imports": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-remap-async-to-generator": "^7.22.5" } }, - "node_modules/xtend": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", - "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", + "@babel/plugin-transform-block-scoped-functions": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.22.5.tgz", + "integrity": "sha512-tdXZ2UdknEKQWKJP1KMNmuF5Lx3MymtMN/pvA+p/VEkhK8jVcQ1fzSy8KM9qRYhAf2/lV33hoMPKI/xaI9sADA==", "dev": true, - "engines": { - "node": ">=0.4" + "requires": { + "@babel/helper-plugin-utils": "^7.22.5" } }, - "node_modules/y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "@babel/plugin-transform-block-scoping": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.22.10.tgz", + "integrity": "sha512-1+kVpGAOOI1Albt6Vse7c8pHzcZQdQKW+wJH+g8mCaszOdDVwRXa/slHPqIw+oJAJANTKDMuM2cBdV0Dg618Vg==", "dev": true, - "engines": { - "node": ">=10" + "requires": { + "@babel/helper-plugin-utils": "^7.22.5" } }, - "node_modules/yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", - "dev": true + "@babel/plugin-transform-class-properties": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.22.5.tgz", + "integrity": "sha512-nDkQ0NfkOhPTq8YCLiWNxp1+f9fCobEjCb0n8WdbNUBc4IB5V7P1QnX9IjpSoquKrXF5SKojHleVNs2vGeHCHQ==", + "dev": true, + "requires": { + "@babel/helper-create-class-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + } }, - "node_modules/yaml": { - "version": "1.10.2", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", - "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "@babel/plugin-transform-class-static-block": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.22.5.tgz", + "integrity": "sha512-SPToJ5eYZLxlnp1UzdARpOGeC2GbHvr9d/UV0EukuVx8atktg194oe+C5BqQ8jRTkgLRVOPYeXRSBg1IlMoVRA==", "dev": true, - "engines": { - "node": ">= 6" + "requires": { + "@babel/helper-create-class-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-class-static-block": "^7.14.5" } }, - "node_modules/yargs": { - "version": "17.6.2", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.6.2.tgz", - "integrity": "sha512-1/9UrdHjDZc0eOU0HxOHoS78C69UD3JRMvzlJ7S79S2nTaWRA/whGCTV8o9e/N/1Va9YIV7Q4sOxD8VV4pCWOw==", + "@babel/plugin-transform-classes": { + "version": "7.22.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.22.6.tgz", + "integrity": "sha512-58EgM6nuPNG6Py4Z3zSuu0xWu2VfodiMi72Jt5Kj2FECmaYk1RrTXA45z6KBFsu9tRgwQDwIiY4FXTt+YsSFAQ==", "dev": true, - "dependencies": { - "cliui": "^8.0.1", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.3", - "y18n": "^5.0.5", - "yargs-parser": "^21.1.1" + "requires": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-compilation-targets": "^7.22.6", + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-function-name": "^7.22.5", + "@babel/helper-optimise-call-expression": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-replace-supers": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "globals": "^11.1.0" }, - "engines": { - "node": ">=12" + "dependencies": { + "globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true + } } }, - "node_modules/yargs-parser": { - "version": "21.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", - "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "@babel/plugin-transform-computed-properties": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.22.5.tgz", + "integrity": "sha512-4GHWBgRf0krxPX+AaPtgBAlTgTeZmqDynokHOX7aqqAB4tHs3U2Y02zH6ETFdLZGcg9UQSD1WCmkVrE9ErHeOg==", "dev": true, - "engines": { - "node": ">=12" + "requires": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/template": "^7.22.5" } }, - "node_modules/yauzl": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", - "integrity": "sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==", + "@babel/plugin-transform-destructuring": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.22.10.tgz", + "integrity": "sha512-dPJrL0VOyxqLM9sritNbMSGx/teueHF/htMKrPT7DNxccXxRDPYqlgPFFdr8u+F+qUZOkZoXue/6rL5O5GduEw==", "dev": true, - "dependencies": { - "buffer-crc32": "~0.2.3", - "fd-slicer": "~1.1.0" + "requires": { + "@babel/helper-plugin-utils": "^7.22.5" } }, - "node_modules/yn": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", - "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", + "@babel/plugin-transform-dotall-regex": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.22.5.tgz", + "integrity": "sha512-5/Yk9QxCQCl+sOIB1WelKnVRxTJDSAIxtJLL2/pqL14ZVlbH0fUQUZa/T5/UnQtBNgghR7mfB8ERBKyKPCi7Vw==", "dev": true, - "engines": { - "node": ">=6" + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" } }, - "node_modules/yocto-queue": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", - "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "@babel/plugin-transform-duplicate-keys": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.22.5.tgz", + "integrity": "sha512-dEnYD+9BBgld5VBXHnF/DbYGp3fqGMsyxKbtD1mDyIA7AkTSpKXFhCVuj/oQVOoALfBs77DudA0BE4d5mcpmqw==", "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "requires": { + "@babel/helper-plugin-utils": "^7.22.5" } - } - }, - "dependencies": { - "@ampproject/remapping": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", - "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", + }, + "@babel/plugin-transform-dynamic-import": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.22.5.tgz", + "integrity": "sha512-0MC3ppTB1AMxd8fXjSrbPa7LT9hrImt+/fcj+Pg5YMD7UQyWp/02+JWpdnCymmsXwIx5Z+sYn1bwCn4ZJNvhqQ==", "dev": true, "requires": { - "@jridgewell/gen-mapping": "^0.1.0", - "@jridgewell/trace-mapping": "^0.3.9" + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-dynamic-import": "^7.8.3" } }, - "@babel/code-frame": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", - "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", + "@babel/plugin-transform-exponentiation-operator": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.22.5.tgz", + "integrity": "sha512-vIpJFNM/FjZ4rh1myqIya9jXwrwwgFRHPjT3DkUA9ZLHuzox8jiXkOLvwm1H+PQIP3CqfC++WPKeuDi0Sjdj1g==", "dev": true, "requires": { - "@babel/highlight": "^7.18.6" + "@babel/helper-builder-binary-assignment-operator-visitor": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" } }, - "@babel/compat-data": { - "version": "7.20.14", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.20.14.tgz", - "integrity": "sha512-0YpKHD6ImkWMEINCyDAD0HLLUH/lPCefG8ld9it8DJB2wnApraKuhgYTvTY1z7UFIfBTGy5LwncZ+5HWWGbhFw==", - "dev": true + "@babel/plugin-transform-export-namespace-from": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.22.5.tgz", + "integrity": "sha512-X4hhm7FRnPgd4nDA4b/5V280xCx6oL7Oob5+9qVS5C13Zq4bh1qq7LU0GgRU6b5dBWBvhGaXYVB4AcN6+ol6vg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3" + } }, - "@babel/core": { - "version": "7.20.12", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.20.12.tgz", - "integrity": "sha512-XsMfHovsUYHFMdrIHkZphTN/2Hzzi78R08NuHfDBehym2VsPDL6Zn/JAD/JQdnRvbSsbQc4mVaU1m6JgtTEElg==", + "@babel/plugin-transform-for-of": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.22.5.tgz", + "integrity": "sha512-3kxQjX1dU9uudwSshyLeEipvrLjBCVthCgeTp6CzE/9JYrlAIaeekVxRpCWsDDfYTfRZRoCeZatCQvwo+wvK8A==", "dev": true, "requires": { - "@ampproject/remapping": "^2.1.0", - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.20.7", - "@babel/helper-compilation-targets": "^7.20.7", - "@babel/helper-module-transforms": "^7.20.11", - "@babel/helpers": "^7.20.7", - "@babel/parser": "^7.20.7", - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.20.12", - "@babel/types": "^7.20.7", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.2", - "json5": "^2.2.2", - "semver": "^6.3.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } + "@babel/helper-plugin-utils": "^7.22.5" } }, - "@babel/eslint-parser": { - "version": "7.19.1", - "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.19.1.tgz", - "integrity": "sha512-AqNf2QWt1rtu2/1rLswy6CDP7H9Oh3mMhk177Y67Rg8d7RD9WfOLLv8CGn6tisFvS2htm86yIe1yLF6I1UDaGQ==", + "@babel/plugin-transform-function-name": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.22.5.tgz", + "integrity": "sha512-UIzQNMS0p0HHiQm3oelztj+ECwFnj+ZRV4KnguvlsD2of1whUeM6o7wGNj6oLwcDoAXQ8gEqfgC24D+VdIcevg==", "dev": true, "requires": { - "@nicolo-ribaudo/eslint-scope-5-internals": "5.1.1-v1", - "eslint-visitor-keys": "^2.1.0", - "semver": "^6.3.0" - }, - "dependencies": { - "eslint-visitor-keys": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", - "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", - "dev": true - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } + "@babel/helper-compilation-targets": "^7.22.5", + "@babel/helper-function-name": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" } }, - "@babel/generator": { - "version": "7.20.14", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.20.14.tgz", - "integrity": "sha512-AEmuXHdcD3A52HHXxaTmYlb8q/xMEhoRP67B3T4Oq7lbmSoqroMZzjnGj3+i1io3pdnF8iBYVu4Ilj+c4hBxYg==", + "@babel/plugin-transform-json-strings": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.22.5.tgz", + "integrity": "sha512-DuCRB7fu8MyTLbEQd1ew3R85nx/88yMoqo2uPSjevMj3yoN7CDM8jkgrY0wmVxfJZyJ/B9fE1iq7EQppWQmR5A==", "dev": true, "requires": { - "@babel/types": "^7.20.7", - "@jridgewell/gen-mapping": "^0.3.2", - "jsesc": "^2.5.1" - }, - "dependencies": { - "@jridgewell/gen-mapping": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", - "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", - "dev": true, - "requires": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - } - } + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-json-strings": "^7.8.3" } }, - "@babel/helper-compilation-targets": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.7.tgz", - "integrity": "sha512-4tGORmfQcrc+bvrjb5y3dG9Mx1IOZjsHqQVUz7XCNHO+iTmqxWnVg3KRygjGmpRLJGdQSKuvFinbIb0CnZwHAQ==", + "@babel/plugin-transform-literals": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.22.5.tgz", + "integrity": "sha512-fTLj4D79M+mepcw3dgFBTIDYpbcB9Sm0bpm4ppXPaO+U+PKFFyV9MGRvS0gvGw62sd10kT5lRMKXAADb9pWy8g==", "dev": true, "requires": { - "@babel/compat-data": "^7.20.5", - "@babel/helper-validator-option": "^7.18.6", - "browserslist": "^4.21.3", - "lru-cache": "^5.1.1", - "semver": "^6.3.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } + "@babel/helper-plugin-utils": "^7.22.5" } }, - "@babel/helper-environment-visitor": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", - "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==", - "dev": true + "@babel/plugin-transform-logical-assignment-operators": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.22.5.tgz", + "integrity": "sha512-MQQOUW1KL8X0cDWfbwYP+TbVbZm16QmQXJQ+vndPtH/BoO0lOKpVoEDMI7+PskYxH+IiE0tS8xZye0qr1lGzSA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" + } }, - "@babel/helper-function-name": { - "version": "7.19.0", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.19.0.tgz", - "integrity": "sha512-WAwHBINyrpqywkUH0nTnNgI5ina5TFn85HKS0pbPDfxFfhyR/aNQEn4hGi1P1JyT//I0t4OgXUlofzWILRvS5w==", + "@babel/plugin-transform-member-expression-literals": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.22.5.tgz", + "integrity": "sha512-RZEdkNtzzYCFl9SE9ATaUMTj2hqMb4StarOJLrZRbqqU4HSBE7UlBw9WBWQiDzrJZJdUWiMTVDI6Gv/8DPvfew==", "dev": true, "requires": { - "@babel/template": "^7.18.10", - "@babel/types": "^7.19.0" + "@babel/helper-plugin-utils": "^7.22.5" } }, - "@babel/helper-hoist-variables": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz", - "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==", + "@babel/plugin-transform-modules-amd": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.22.5.tgz", + "integrity": "sha512-R+PTfLTcYEmb1+kK7FNkhQ1gP4KgjpSO6HfH9+f8/yfp2Nt3ggBjiVpRwmwTlfqZLafYKJACy36yDXlEmI9HjQ==", "dev": true, "requires": { - "@babel/types": "^7.18.6" + "@babel/helper-module-transforms": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" } }, - "@babel/helper-module-imports": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz", - "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==", + "@babel/plugin-transform-modules-commonjs": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.22.5.tgz", + "integrity": "sha512-B4pzOXj+ONRmuaQTg05b3y/4DuFz3WcCNAXPLb2Q0GT0TrGKGxNKV4jwsXts+StaM0LQczZbOpj8o1DLPDJIiA==", "dev": true, "requires": { - "@babel/types": "^7.18.6" + "@babel/helper-module-transforms": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-simple-access": "^7.22.5" } }, - "@babel/helper-module-transforms": { - "version": "7.20.11", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.20.11.tgz", - "integrity": "sha512-uRy78kN4psmji1s2QtbtcCSaj/LILFDp0f/ymhpQH5QY3nljUZCaNWz9X1dEj/8MBdBEFECs7yRhKn8i7NjZgg==", - "dev": true, - "requires": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-simple-access": "^7.20.2", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/helper-validator-identifier": "^7.19.1", - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.20.10", - "@babel/types": "^7.20.7" + "@babel/plugin-transform-modules-systemjs": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.22.5.tgz", + "integrity": "sha512-emtEpoaTMsOs6Tzz+nbmcePl6AKVtS1yC4YNAeMun9U8YCsgadPNxnOPQ8GhHFB2qdx+LZu9LgoC0Lthuu05DQ==", + "dev": true, + "requires": { + "@babel/helper-hoist-variables": "^7.22.5", + "@babel/helper-module-transforms": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-validator-identifier": "^7.22.5" } }, - "@babel/helper-plugin-utils": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz", - "integrity": "sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ==", - "dev": true + "@babel/plugin-transform-modules-umd": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.22.5.tgz", + "integrity": "sha512-+S6kzefN/E1vkSsKx8kmQuqeQsvCKCd1fraCM7zXm4SFoggI099Tr4G8U81+5gtMdUeMQ4ipdQffbKLX0/7dBQ==", + "dev": true, + "requires": { + "@babel/helper-module-transforms": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + } }, - "@babel/helper-simple-access": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz", - "integrity": "sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA==", + "@babel/plugin-transform-named-capturing-groups-regex": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.22.5.tgz", + "integrity": "sha512-YgLLKmS3aUBhHaxp5hi1WJTgOUb/NCuDHzGT9z9WTt3YG+CPRhJs6nprbStx6DnWM4dh6gt7SU3sZodbZ08adQ==", "dev": true, "requires": { - "@babel/types": "^7.20.2" + "@babel/helper-create-regexp-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" } }, - "@babel/helper-split-export-declaration": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz", - "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==", + "@babel/plugin-transform-new-target": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.22.5.tgz", + "integrity": "sha512-AsF7K0Fx/cNKVyk3a+DW0JLo+Ua598/NxMRvxDnkpCIGFh43+h/v2xyhRUYf6oD8gE4QtL83C7zZVghMjHd+iw==", "dev": true, "requires": { - "@babel/types": "^7.18.6" + "@babel/helper-plugin-utils": "^7.22.5" } }, - "@babel/helper-string-parser": { - "version": "7.19.4", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz", - "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==", - "dev": true + "@babel/plugin-transform-nullish-coalescing-operator": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.22.5.tgz", + "integrity": "sha512-6CF8g6z1dNYZ/VXok5uYkkBBICHZPiGEl7oDnAx2Mt1hlHVHOSIKWJaXHjQJA5VB43KZnXZDIexMchY4y2PGdA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" + } }, - "@babel/helper-validator-identifier": { - "version": "7.19.1", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz", - "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==", - "dev": true + "@babel/plugin-transform-numeric-separator": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.22.5.tgz", + "integrity": "sha512-NbslED1/6M+sXiwwtcAB/nieypGw02Ejf4KtDeMkCEpP6gWFMX1wI9WKYua+4oBneCCEmulOkRpwywypVZzs/g==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-numeric-separator": "^7.10.4" + } }, - "@babel/helper-validator-option": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz", - "integrity": "sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw==", - "dev": true + "@babel/plugin-transform-object-rest-spread": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.22.5.tgz", + "integrity": "sha512-Kk3lyDmEslH9DnvCDA1s1kkd3YWQITiBOHngOtDL9Pt6BZjzqb6hiOlb8VfjiiQJ2unmegBqZu0rx5RxJb5vmQ==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.22.5", + "@babel/helper-compilation-targets": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-transform-parameters": "^7.22.5" + } }, - "@babel/helpers": { - "version": "7.20.13", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.20.13.tgz", - "integrity": "sha512-nzJ0DWCL3gB5RCXbUO3KIMMsBY2Eqbx8mBpKGE/02PgyRQFcPQLbkQ1vyy596mZLaP+dAfD+R4ckASzNVmW3jg==", + "@babel/plugin-transform-object-super": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.22.5.tgz", + "integrity": "sha512-klXqyaT9trSjIUrcsYIfETAzmOEZL3cBYqOYLJxBHfMFFggmXOv+NYSX/Jbs9mzMVESw/WycLFPRx8ba/b2Ipw==", "dev": true, "requires": { - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.20.13", - "@babel/types": "^7.20.7" + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-replace-supers": "^7.22.5" } }, - "@babel/highlight": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", - "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", + "@babel/plugin-transform-optional-catch-binding": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.22.5.tgz", + "integrity": "sha512-pH8orJahy+hzZje5b8e2QIlBWQvGpelS76C63Z+jhZKsmzfNaPQ+LaW6dcJ9bxTpo1mtXbgHwy765Ro3jftmUg==", "dev": true, "requires": { - "@babel/helper-validator-identifier": "^7.18.6", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", - "dev": true - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", - "dev": true - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" + } + }, + "@babel/plugin-transform-optional-chaining": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.22.10.tgz", + "integrity": "sha512-MMkQqZAZ+MGj+jGTG3OTuhKeBpNcO+0oCEbrGNEaOmiEn+1MzRyQlYsruGiU8RTK3zV6XwrVJTmwiDOyYK6J9g==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", + "@babel/plugin-syntax-optional-chaining": "^7.8.3" } }, - "@babel/parser": { - "version": "7.20.13", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.20.13.tgz", - "integrity": "sha512-gFDLKMfpiXCsjt4za2JA9oTMn70CeseCehb11kRZgvd7+F67Hih3OHOK24cRrWECJ/ljfPGac6ygXAs/C8kIvw==", - "dev": true + "@babel/plugin-transform-parameters": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.22.5.tgz", + "integrity": "sha512-AVkFUBurORBREOmHRKo06FjHYgjrabpdqRSwq6+C7R5iTCZOsM4QbcB27St0a4U6fffyAOqh3s/qEfybAhfivg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.22.5" + } }, - "@babel/plugin-syntax-async-generators": { - "version": "7.8.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", - "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", + "@babel/plugin-transform-private-methods": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.22.5.tgz", + "integrity": "sha512-PPjh4gyrQnGe97JTalgRGMuU4icsZFnWkzicB/fUtzlKUqvsWBKEpPPfr5a2JiyirZkHxnAqkQMO5Z5B2kK3fA==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.0" + "@babel/helper-create-class-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" } }, - "@babel/plugin-syntax-bigint": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz", - "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==", + "@babel/plugin-transform-private-property-in-object": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.22.5.tgz", + "integrity": "sha512-/9xnaTTJcVoBtSSmrVyhtSvO3kbqS2ODoh2juEU72c3aYonNF0OMGiaz2gjukyKM2wBBYJP38S4JiE0Wfb5VMQ==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.0" + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-create-class-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5" } }, - "@babel/plugin-syntax-class-properties": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", - "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", + "@babel/plugin-transform-property-literals": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.22.5.tgz", + "integrity": "sha512-TiOArgddK3mK/x1Qwf5hay2pxI6wCZnvQqrFSqbtg1GLl2JcNMitVH/YnqjP+M31pLUeTfzY1HAXFDnUBV30rQ==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.12.13" + "@babel/helper-plugin-utils": "^7.22.5" } }, - "@babel/plugin-syntax-import-meta": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", - "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", + "@babel/plugin-transform-regenerator": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.22.10.tgz", + "integrity": "sha512-F28b1mDt8KcT5bUyJc/U9nwzw6cV+UmTeRlXYIl2TNqMMJif0Jeey9/RQ3C4NOd2zp0/TRsDns9ttj2L523rsw==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-plugin-utils": "^7.22.5", + "regenerator-transform": "^0.15.2" } }, - "@babel/plugin-syntax-json-strings": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", - "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", + "@babel/plugin-transform-reserved-words": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.22.5.tgz", + "integrity": "sha512-DTtGKFRQUDm8svigJzZHzb/2xatPc6TzNvAIJ5GqOKDsGFYgAskjRulbR/vGsPKq3OPqtexnz327qYpP57RFyA==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.0" + "@babel/helper-plugin-utils": "^7.22.5" } }, - "@babel/plugin-syntax-logical-assignment-operators": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", - "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", + "@babel/plugin-transform-shorthand-properties": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.22.5.tgz", + "integrity": "sha512-vM4fq9IXHscXVKzDv5itkO1X52SmdFBFcMIBZ2FRn2nqVYqw6dBexUgMvAjHW+KXpPPViD/Yo3GrDEBaRC0QYA==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-plugin-utils": "^7.22.5" } }, - "@babel/plugin-syntax-nullish-coalescing-operator": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", - "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", + "@babel/plugin-transform-spread": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.22.5.tgz", + "integrity": "sha512-5ZzDQIGyvN4w8+dMmpohL6MBo+l2G7tfC/O2Dg7/hjpgeWvUx8FzfeOKxGog9IimPa4YekaQ9PlDqTLOljkcxg==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.0" + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5" } }, - "@babel/plugin-syntax-numeric-separator": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", - "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", + "@babel/plugin-transform-sticky-regex": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.22.5.tgz", + "integrity": "sha512-zf7LuNpHG0iEeiyCNwX4j3gDg1jgt1k3ZdXBKbZSoA3BbGQGvMiSvfbZRR3Dr3aeJe3ooWFZxOOG3IRStYp2Bw==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-plugin-utils": "^7.22.5" } }, - "@babel/plugin-syntax-object-rest-spread": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", - "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", + "@babel/plugin-transform-template-literals": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.22.5.tgz", + "integrity": "sha512-5ciOehRNf+EyUeewo8NkbQiUs4d6ZxiHo6BcBcnFlgiJfu16q0bQUw9Jvo0b0gBKFG1SMhDSjeKXSYuJLeFSMA==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.0" + "@babel/helper-plugin-utils": "^7.22.5" } }, - "@babel/plugin-syntax-optional-catch-binding": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", - "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", + "@babel/plugin-transform-typeof-symbol": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.22.5.tgz", + "integrity": "sha512-bYkI5lMzL4kPii4HHEEChkD0rkc+nvnlR6+o/qdqR6zrm0Sv/nodmyLhlq2DO0YKLUNd2VePmPRjJXSBh9OIdA==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.0" + "@babel/helper-plugin-utils": "^7.22.5" } }, - "@babel/plugin-syntax-optional-chaining": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", - "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", + "@babel/plugin-transform-typescript": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.22.10.tgz", + "integrity": "sha512-7++c8I/ymsDo4QQBAgbraXLzIM6jmfao11KgIBEYZRReWzNWH9NtNgJcyrZiXsOPh523FQm6LfpLyy/U5fn46A==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.0" + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-create-class-features-plugin": "^7.22.10", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-typescript": "^7.22.5" } }, - "@babel/plugin-syntax-top-level-await": { - "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==", + "@babel/plugin-transform-unicode-escapes": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.22.10.tgz", + "integrity": "sha512-lRfaRKGZCBqDlRU3UIFovdp9c9mEvlylmpod0/OatICsSfuQ9YFthRo1tpTkGsklEefZdqlEFdY4A2dwTb6ohg==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.14.5" + "@babel/helper-plugin-utils": "^7.22.5" } }, - "@babel/plugin-syntax-typescript": { - "version": "7.20.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.20.0.tgz", - "integrity": "sha512-rd9TkG+u1CExzS4SM1BlMEhMXwFLKVjOAFFCDx9PbX5ycJWDoWMcwdJH9RhkPu1dOgn5TrxLot/Gx6lWFuAUNQ==", + "@babel/plugin-transform-unicode-property-regex": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.22.5.tgz", + "integrity": "sha512-HCCIb+CbJIAE6sXn5CjFQXMwkCClcOfPCzTlilJ8cUatfzwHlWQkbtV0zD338u9dZskwvuOYTuuaMaA8J5EI5A==", + "dev": true, + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + } + }, + "@babel/plugin-transform-unicode-regex": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.22.5.tgz", + "integrity": "sha512-028laaOKptN5vHJf9/Arr/HiJekMd41hOEZYvNsrsXqJ7YPYuX2bQxh31fkZzGmq3YqHRJzYFFAVYvKfMPKqyg==", + "dev": true, + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + } + }, + "@babel/plugin-transform-unicode-sets-regex": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.22.5.tgz", + "integrity": "sha512-lhMfi4FC15j13eKrh3DnYHjpGj6UKQHtNKTbtc1igvAhRy4+kLhV07OpLcsN0VgDEw/MjAvJO4BdMJsHwMhzCg==", + "dev": true, + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + } + }, + "@babel/preset-env": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.22.10.tgz", + "integrity": "sha512-riHpLb1drNkpLlocmSyEg4oYJIQFeXAK/d7rI6mbD0XsvoTOOweXDmQPG/ErxsEhWk3rl3Q/3F6RFQlVFS8m0A==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.22.9", + "@babel/helper-compilation-targets": "^7.22.10", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-validator-option": "^7.22.5", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.22.5", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.22.5", + "@babel/plugin-proposal-private-property-in-object": "7.21.0-placeholder-for-preset-env.2", + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-class-properties": "^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-import-assertions": "^7.22.5", + "@babel/plugin-syntax-import-attributes": "^7.22.5", + "@babel/plugin-syntax-import-meta": "^7.10.4", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.10.4", + "@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.5", + "@babel/plugin-syntax-top-level-await": "^7.14.5", + "@babel/plugin-syntax-unicode-sets-regex": "^7.18.6", + "@babel/plugin-transform-arrow-functions": "^7.22.5", + "@babel/plugin-transform-async-generator-functions": "^7.22.10", + "@babel/plugin-transform-async-to-generator": "^7.22.5", + "@babel/plugin-transform-block-scoped-functions": "^7.22.5", + "@babel/plugin-transform-block-scoping": "^7.22.10", + "@babel/plugin-transform-class-properties": "^7.22.5", + "@babel/plugin-transform-class-static-block": "^7.22.5", + "@babel/plugin-transform-classes": "^7.22.6", + "@babel/plugin-transform-computed-properties": "^7.22.5", + "@babel/plugin-transform-destructuring": "^7.22.10", + "@babel/plugin-transform-dotall-regex": "^7.22.5", + "@babel/plugin-transform-duplicate-keys": "^7.22.5", + "@babel/plugin-transform-dynamic-import": "^7.22.5", + "@babel/plugin-transform-exponentiation-operator": "^7.22.5", + "@babel/plugin-transform-export-namespace-from": "^7.22.5", + "@babel/plugin-transform-for-of": "^7.22.5", + "@babel/plugin-transform-function-name": "^7.22.5", + "@babel/plugin-transform-json-strings": "^7.22.5", + "@babel/plugin-transform-literals": "^7.22.5", + "@babel/plugin-transform-logical-assignment-operators": "^7.22.5", + "@babel/plugin-transform-member-expression-literals": "^7.22.5", + "@babel/plugin-transform-modules-amd": "^7.22.5", + "@babel/plugin-transform-modules-commonjs": "^7.22.5", + "@babel/plugin-transform-modules-systemjs": "^7.22.5", + "@babel/plugin-transform-modules-umd": "^7.22.5", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.22.5", + "@babel/plugin-transform-new-target": "^7.22.5", + "@babel/plugin-transform-nullish-coalescing-operator": "^7.22.5", + "@babel/plugin-transform-numeric-separator": "^7.22.5", + "@babel/plugin-transform-object-rest-spread": "^7.22.5", + "@babel/plugin-transform-object-super": "^7.22.5", + "@babel/plugin-transform-optional-catch-binding": "^7.22.5", + "@babel/plugin-transform-optional-chaining": "^7.22.10", + "@babel/plugin-transform-parameters": "^7.22.5", + "@babel/plugin-transform-private-methods": "^7.22.5", + "@babel/plugin-transform-private-property-in-object": "^7.22.5", + "@babel/plugin-transform-property-literals": "^7.22.5", + "@babel/plugin-transform-regenerator": "^7.22.10", + "@babel/plugin-transform-reserved-words": "^7.22.5", + "@babel/plugin-transform-shorthand-properties": "^7.22.5", + "@babel/plugin-transform-spread": "^7.22.5", + "@babel/plugin-transform-sticky-regex": "^7.22.5", + "@babel/plugin-transform-template-literals": "^7.22.5", + "@babel/plugin-transform-typeof-symbol": "^7.22.5", + "@babel/plugin-transform-unicode-escapes": "^7.22.10", + "@babel/plugin-transform-unicode-property-regex": "^7.22.5", + "@babel/plugin-transform-unicode-regex": "^7.22.5", + "@babel/plugin-transform-unicode-sets-regex": "^7.22.5", + "@babel/preset-modules": "0.1.6-no-external-plugins", + "@babel/types": "^7.22.10", + "babel-plugin-polyfill-corejs2": "^0.4.5", + "babel-plugin-polyfill-corejs3": "^0.8.3", + "babel-plugin-polyfill-regenerator": "^0.5.2", + "core-js-compat": "^3.31.0", + "semver": "^6.3.1" + }, + "dependencies": { + "semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true + } + } + }, + "@babel/preset-modules": { + "version": "0.1.6-no-external-plugins", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.6-no-external-plugins.tgz", + "integrity": "sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.19.0" + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/types": "^7.4.4", + "esutils": "^2.0.2" + } + }, + "@babel/preset-typescript": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.22.5.tgz", + "integrity": "sha512-YbPaal9LxztSGhmndR46FmAbkJ/1fAsw293tSU+I5E5h+cnJ3d4GTwyUgGYmOXJYdGA+uNePle4qbaRzj2NISQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-validator-option": "^7.22.5", + "@babel/plugin-syntax-jsx": "^7.22.5", + "@babel/plugin-transform-modules-commonjs": "^7.22.5", + "@babel/plugin-transform-typescript": "^7.22.5" } }, + "@babel/regjsgen": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@babel/regjsgen/-/regjsgen-0.8.0.tgz", + "integrity": "sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==", + "dev": true + }, "@babel/runtime": { "version": "7.20.13", "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.20.13.tgz", @@ -10865,30 +15300,30 @@ } }, "@babel/template": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.20.7.tgz", - "integrity": "sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==", + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.5.tgz", + "integrity": "sha512-X7yV7eiwAxdj9k94NEylvbVHLiVG1nvzCV2EAowhxLTwODV1jl9UzZ48leOC0sH7OnuHrIkllaBgneUykIcZaw==", "dev": true, "requires": { - "@babel/code-frame": "^7.18.6", - "@babel/parser": "^7.20.7", - "@babel/types": "^7.20.7" + "@babel/code-frame": "^7.22.5", + "@babel/parser": "^7.22.5", + "@babel/types": "^7.22.5" } }, "@babel/traverse": { - "version": "7.20.13", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.20.13.tgz", - "integrity": "sha512-kMJXfF0T6DIS9E8cgdLCSAL+cuCK+YEZHWiLK0SXpTo8YRj5lpJu3CDNKiIBCne4m9hhTIqUg6SYTAI39tAiVQ==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.20.7", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.19.0", - "@babel/helper-hoist-variables": "^7.18.6", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/parser": "^7.20.13", - "@babel/types": "^7.20.7", + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.22.10.tgz", + "integrity": "sha512-Q/urqV4pRByiNNpb/f5OSv28ZlGJiFiiTh+GAHktbIrkPhPbl90+uW6SmpoLyZqutrg9AEaEf3Q/ZBRHBXgxig==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.22.10", + "@babel/generator": "^7.22.10", + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-function-name": "^7.22.5", + "@babel/helper-hoist-variables": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "@babel/parser": "^7.22.10", + "@babel/types": "^7.22.10", "debug": "^4.1.0", "globals": "^11.1.0" }, @@ -10902,13 +15337,13 @@ } }, "@babel/types": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.20.7.tgz", - "integrity": "sha512-69OnhBxSSgK0OzTJai4kyPDiKTIe3j+ctaHdIGVbRahTLAT7L3R9oeXHC2aVSuGYt3cVnoAMDmOCgJ2yaiLMvg==", + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.22.10.tgz", + "integrity": "sha512-obaoigiLrlDZ7TUQln/8m4mSqIW2QFeOrCQc9r+xsaHGNoplVNYlRVpsfE8Vj35GEm2ZH4ZhrNYogs/3fj85kg==", "dev": true, "requires": { - "@babel/helper-string-parser": "^7.19.4", - "@babel/helper-validator-identifier": "^7.19.1", + "@babel/helper-string-parser": "^7.22.5", + "@babel/helper-validator-identifier": "^7.22.5", "to-fast-properties": "^2.0.0" } }, @@ -11346,6 +15781,44 @@ "jest-message-util": "^27.5.1", "jest-util": "^27.5.1", "slash": "^3.0.0" + }, + "dependencies": { + "@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "dev": true, + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + } + }, + "@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "dev": true, + "requires": { + "@types/yargs-parser": "*" + } + }, + "jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + } + } } }, "@jest/core": { @@ -11382,6 +15855,114 @@ "rimraf": "^3.0.0", "slash": "^3.0.0", "strip-ansi": "^6.0.0" + }, + "dependencies": { + "@jest/transform": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz", + "integrity": "sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==", + "dev": true, + "requires": { + "@babel/core": "^7.1.0", + "@jest/types": "^27.5.1", + "babel-plugin-istanbul": "^6.1.1", + "chalk": "^4.0.0", + "convert-source-map": "^1.4.0", + "fast-json-stable-stringify": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-util": "^27.5.1", + "micromatch": "^4.0.4", + "pirates": "^4.0.4", + "slash": "^3.0.0", + "source-map": "^0.6.1", + "write-file-atomic": "^3.0.0" + } + }, + "@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "dev": true, + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + } + }, + "@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "dev": true, + "requires": { + "@types/yargs-parser": "*" + } + }, + "jest-haste-map": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", + "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/graceful-fs": "^4.1.2", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "fsevents": "^2.3.2", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^27.5.1", + "jest-serializer": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "micromatch": "^4.0.4", + "walker": "^1.0.7" + } + }, + "jest-regex-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", + "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", + "dev": true + }, + "jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + } + }, + "jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "dev": true, + "requires": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + } + }, + "supports-color": { + "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" + } + } } }, "@jest/environment": { @@ -11394,6 +15975,30 @@ "@jest/types": "^27.5.1", "@types/node": "*", "jest-mock": "^27.5.1" + }, + "dependencies": { + "@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "dev": true, + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + } + }, + "@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "dev": true, + "requires": { + "@types/yargs-parser": "*" + } + } } }, "@jest/fake-timers": { @@ -11408,6 +16013,44 @@ "jest-message-util": "^27.5.1", "jest-mock": "^27.5.1", "jest-util": "^27.5.1" + }, + "dependencies": { + "@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "dev": true, + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + } + }, + "@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "dev": true, + "requires": { + "@types/yargs-parser": "*" + } + }, + "jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + } + } } }, "@jest/globals": { @@ -11419,6 +16062,30 @@ "@jest/environment": "^27.5.1", "@jest/types": "^27.5.1", "expect": "^27.5.1" + }, + "dependencies": { + "@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "dev": true, + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + } + }, + "@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "dev": true, + "requires": { + "@types/yargs-parser": "*" + } + } } }, "@jest/reporters": { @@ -11452,6 +16119,123 @@ "string-length": "^4.0.1", "terminal-link": "^2.0.0", "v8-to-istanbul": "^8.1.0" + }, + "dependencies": { + "@jest/transform": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz", + "integrity": "sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==", + "dev": true, + "requires": { + "@babel/core": "^7.1.0", + "@jest/types": "^27.5.1", + "babel-plugin-istanbul": "^6.1.1", + "chalk": "^4.0.0", + "convert-source-map": "^1.4.0", + "fast-json-stable-stringify": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-util": "^27.5.1", + "micromatch": "^4.0.4", + "pirates": "^4.0.4", + "slash": "^3.0.0", + "source-map": "^0.6.1", + "write-file-atomic": "^3.0.0" + } + }, + "@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "dev": true, + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + } + }, + "@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "dev": true, + "requires": { + "@types/yargs-parser": "*" + } + }, + "jest-haste-map": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", + "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/graceful-fs": "^4.1.2", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "fsevents": "^2.3.2", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^27.5.1", + "jest-serializer": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "micromatch": "^4.0.4", + "walker": "^1.0.7" + } + }, + "jest-regex-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", + "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", + "dev": true + }, + "jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + } + }, + "jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "dev": true, + "requires": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + } + }, + "supports-color": { + "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" + } + } + } + }, + "@jest/schemas": { + "version": "29.6.0", + "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.0.tgz", + "integrity": "sha512-rxLjXyJBTL4LQeJW3aKo0M/+GkCOXsO+8i9Iu7eDb6KwtP65ayoDsitrdPBtujxQ88k4wI2FNYfa6TOGwSn6cQ==", + "dev": true, + "requires": { + "@sinclair/typebox": "^0.27.8" } }, "@jest/source-map": { @@ -11475,6 +16259,30 @@ "@jest/types": "^27.5.1", "@types/istanbul-lib-coverage": "^2.0.0", "collect-v8-coverage": "^1.0.0" + }, + "dependencies": { + "@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "dev": true, + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + } + }, + "@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "dev": true, + "requires": { + "@types/yargs-parser": "*" + } + } } }, "@jest/test-sequencer": { @@ -11487,41 +16295,145 @@ "graceful-fs": "^4.2.9", "jest-haste-map": "^27.5.1", "jest-runtime": "^27.5.1" + }, + "dependencies": { + "@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "dev": true, + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + } + }, + "@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "dev": true, + "requires": { + "@types/yargs-parser": "*" + } + }, + "jest-haste-map": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", + "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/graceful-fs": "^4.1.2", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "fsevents": "^2.3.2", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^27.5.1", + "jest-serializer": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "micromatch": "^4.0.4", + "walker": "^1.0.7" + } + }, + "jest-regex-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", + "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", + "dev": true + }, + "jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + } + }, + "jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "dev": true, + "requires": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + } + }, + "supports-color": { + "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" + } + } } }, "@jest/transform": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz", - "integrity": "sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==", + "version": "29.6.2", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-29.6.2.tgz", + "integrity": "sha512-ZqCqEISr58Ce3U+buNFJYUktLJZOggfyvR+bZMaiV1e8B1SIvJbwZMrYz3gx/KAPn9EXmOmN+uB08yLCjWkQQg==", "dev": true, "requires": { - "@babel/core": "^7.1.0", - "@jest/types": "^27.5.1", + "@babel/core": "^7.11.6", + "@jest/types": "^29.6.1", + "@jridgewell/trace-mapping": "^0.3.18", "babel-plugin-istanbul": "^6.1.1", "chalk": "^4.0.0", - "convert-source-map": "^1.4.0", - "fast-json-stable-stringify": "^2.0.0", + "convert-source-map": "^2.0.0", + "fast-json-stable-stringify": "^2.1.0", "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-util": "^27.5.1", + "jest-haste-map": "^29.6.2", + "jest-regex-util": "^29.4.3", + "jest-util": "^29.6.2", "micromatch": "^4.0.4", "pirates": "^4.0.4", "slash": "^3.0.0", - "source-map": "^0.6.1", - "write-file-atomic": "^3.0.0" + "write-file-atomic": "^4.0.2" + }, + "dependencies": { + "convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true + }, + "write-file-atomic": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz", + "integrity": "sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==", + "dev": true, + "requires": { + "imurmurhash": "^0.1.4", + "signal-exit": "^3.0.7" + } + } } }, "@jest/types": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", - "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "version": "29.6.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.6.1.tgz", + "integrity": "sha512-tPKQNMPuXgvdOn2/Lg9HNfUvjYVGolt04Hp03f5hAk878uwOLikN+JzeLY0HcVgKgFl9Hs3EIqpu3WX27XNhnw==", "dev": true, "requires": { + "@jest/schemas": "^29.6.0", "@types/istanbul-lib-coverage": "^2.0.0", "@types/istanbul-reports": "^3.0.0", "@types/node": "*", - "@types/yargs": "^16.0.0", + "@types/yargs": "^17.0.8", "chalk": "^4.0.0" } }, @@ -11554,13 +16466,13 @@ "dev": true }, "@jridgewell/trace-mapping": { - "version": "0.3.17", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz", - "integrity": "sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==", + "version": "0.3.19", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.19.tgz", + "integrity": "sha512-kf37QtfW+Hwx/buWGMPcR60iF9ziHa6r/CZJIHbmcm4+0qrXiVdxegAH0F6yddEVQ7zdkjcGCgCzUu+BcbhQxw==", "dev": true, "requires": { - "@jridgewell/resolve-uri": "3.1.0", - "@jridgewell/sourcemap-codec": "1.4.14" + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" } }, "@nicolo-ribaudo/eslint-scope-5-internals": { @@ -11746,6 +16658,27 @@ "pako": "^1.0.10" } }, + "@puppeteer/browsers": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@puppeteer/browsers/-/browsers-1.6.0.tgz", + "integrity": "sha512-R2ib8j329427jtKB/qlz0MJbwfJE/6I8ocJLiajsRqJ2PPI8DbjiNzC3lQZeISXEcjOBVhbG2RafN8SlHdcT+A==", + "dev": true, + "requires": { + "debug": "4.3.4", + "extract-zip": "2.0.1", + "progress": "2.0.3", + "proxy-agent": "6.3.0", + "tar-fs": "3.0.4", + "unbzip2-stream": "1.4.3", + "yargs": "17.7.1" + } + }, + "@sinclair/typebox": { + "version": "0.27.8", + "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz", + "integrity": "sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==", + "dev": true + }, "@sindresorhus/is": { "version": "0.14.0", "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz", @@ -11833,6 +16766,12 @@ "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==", "dev": true }, + "@tootallnate/quickjs-emscripten": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@tootallnate/quickjs-emscripten/-/quickjs-emscripten-0.23.0.tgz", + "integrity": "sha512-C5Mc6rdnsaJDjO3UpGW/CQTHtCKaYlScZTly4JIu97Jxo/odCiH0ITnDXSJPTOrEKk/ycSZ0AOgTmkDtkOsvIA==", + "dev": true + }, "@tsconfig/node10": { "version": "1.0.9", "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.9.tgz", @@ -11864,9 +16803,9 @@ "dev": true }, "@types/babel__core": { - "version": "7.20.0", - "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.0.tgz", - "integrity": "sha512-+n8dL/9GWblDO0iU6eZAwEIJVr5DWigtle+Q6HLOrh/pdbXOhOtqzq8VPPE2zvNJzSKY4vH/z3iT3tn0A3ypiQ==", + "version": "7.20.1", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.1.tgz", + "integrity": "sha512-aACu/U/omhdk15O4Nfb+fHgH/z3QsfQzpnvRZhYhThms83ZnAOZz7zZAWO7mn2yyNQaA4xTO8GLK3uqFU4bYYw==", "dev": true, "requires": { "@babel/parser": "^7.20.7", @@ -11896,12 +16835,12 @@ } }, "@types/babel__traverse": { - "version": "7.18.3", - "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.18.3.tgz", - "integrity": "sha512-1kbcJ40lLB7MHsj39U4Sh1uTd2E7rLEa79kmDpI6cy+XiXsteB3POdQomoq4FxszMrO3ZYchkhYJw7A2862b3w==", + "version": "7.20.1", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.1.tgz", + "integrity": "sha512-MitHFXnhtgwsGZWtT68URpOvLN4EREih1u3QtQiN4VdAxWKRVvGCSvw/Qth0M0Qq3pJpnGOu5JaM/ydK7OGbqg==", "dev": true, "requires": { - "@babel/types": "^7.3.0" + "@babel/types": "^7.20.7" } }, "@types/color": { @@ -11962,12 +16901,12 @@ } }, "@types/jest": { - "version": "27.5.2", - "resolved": "https://registry.npmjs.org/@types/jest/-/jest-27.5.2.tgz", - "integrity": "sha512-mpT8LJJ4CMeeahobofYWIjFo0xonRS/HfxnVEPMPFSQdGUt1uHCnoPT7Zhb+sjDU2wz0oKV0OLUR0WzrHNgfeA==", + "version": "27.0.3", + "resolved": "https://registry.npmjs.org/@types/jest/-/jest-27.0.3.tgz", + "integrity": "sha512-cmmwv9t7gBYt7hNKH5Spu7Kuu/DotGa+Ff+JGRKZ4db5eh8PnKS4LuebJ3YLUoyOyIHraTGyULn23YtEAm0VSg==", "dev": true, "requires": { - "jest-matcher-utils": "^27.0.0", + "jest-diff": "^27.0.0", "pretty-format": "^27.0.0" } }, @@ -12011,18 +16950,18 @@ "dev": true }, "@types/prettier": { - "version": "2.7.2", - "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.7.2.tgz", - "integrity": "sha512-KufADq8uQqo1pYKVIYzfKbJfBAc0sOeXqGbFaSpv8MRmC/zXgowNZmFcbngndGk922QDmOASEXUZCaY48gs4cg==", + "version": "2.7.3", + "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.7.3.tgz", + "integrity": "sha512-+68kP9yzs4LMp7VNh8gdzMSPZFL44MLGqiHWvttYJe+6qnuVr4Ek9wSBQoveqY/r+LwjCcU29kNVkidwim+kYA==", "dev": true }, "@types/puppeteer": { - "version": "5.4.7", - "resolved": "https://registry.npmjs.org/@types/puppeteer/-/puppeteer-5.4.7.tgz", - "integrity": "sha512-JdGWZZYL0vKapXF4oQTC5hLVNfOgdPrqeZ1BiQnGk5cB7HeE91EWUiTdVSdQPobRN8rIcdffjiOgCYJ/S8QrnQ==", + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/@types/puppeteer/-/puppeteer-7.0.4.tgz", + "integrity": "sha512-ja78vquZc8y+GM2al07GZqWDKQskQXygCDiu0e3uO0DMRKqE0MjrFBFmTulfPYzLB6WnL7Kl2tFPy0WXSpPomg==", "dev": true, "requires": { - "@types/node": "*" + "puppeteer": "*" } }, "@types/raf": { @@ -12044,9 +16983,9 @@ "dev": true }, "@types/yargs": { - "version": "16.0.5", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", - "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "version": "17.0.24", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.24.tgz", + "integrity": "sha512-6i0aC7jV6QzQB8ne1joVZ0eSFIstHsCrobmOtghM11yGlH0j43FKL2UhWdELkyps0zuf7qVTUVCCR+tgSlyLLw==", "dev": true, "requires": { "@types/yargs-parser": "*" @@ -12245,12 +17184,12 @@ } }, "agent-base": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", - "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.0.tgz", + "integrity": "sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg==", "dev": true, "requires": { - "debug": "4" + "debug": "^4.3.4" } }, "ajv": { @@ -12381,6 +17320,15 @@ "es-shim-unscopables": "^1.0.0" } }, + "ast-types": { + "version": "0.13.4", + "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.13.4.tgz", + "integrity": "sha512-x1FCFnFifvYDDzTaLII71vG5uvDwgtmDTEVWAxrgeiR8VjMONcCXJx7E+USjDtHlwFmt9MysbqgF9b9Vjr6w+w==", + "dev": true, + "requires": { + "tslib": "^2.0.1" + } + }, "async": { "version": "3.2.4", "resolved": "https://registry.npmjs.org/async/-/async-3.2.4.tgz", @@ -12418,17 +17366,22 @@ "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==", "dev": true }, + "b4a": { + "version": "1.6.4", + "resolved": "https://registry.npmjs.org/b4a/-/b4a-1.6.4.tgz", + "integrity": "sha512-fpWrvyVHEKyeEvbKZTVOeZF3VSKKWtJxFIxX/jaVPf+cLbGUSitjb49pHLqPV2BUNNZ0LcoeEGfE/YCpyDYHIw==", + "dev": true + }, "babel-jest": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-27.5.1.tgz", - "integrity": "sha512-cdQ5dXjGRd0IBRATiQ4mZGlGlRE8kJpjPOixdNRdT+m3UcNqmYWN6rK6nvtXYfY3D76cb8s/O1Ss8ea24PIwcg==", + "version": "29.6.2", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-29.6.2.tgz", + "integrity": "sha512-BYCzImLos6J3BH/+HvUCHG1dTf2MzmAB4jaVxHV+29RZLjR29XuYTmsf2sdDwkrb+FczkGo3kOhE7ga6sI0P4A==", "dev": true, "requires": { - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", + "@jest/transform": "^29.6.2", "@types/babel__core": "^7.1.14", "babel-plugin-istanbul": "^6.1.1", - "babel-preset-jest": "^27.5.1", + "babel-preset-jest": "^29.5.0", "chalk": "^4.0.0", "graceful-fs": "^4.2.9", "slash": "^3.0.0" @@ -12448,17 +17401,55 @@ } }, "babel-plugin-jest-hoist": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.5.1.tgz", - "integrity": "sha512-50wCwD5EMNW4aRpOwtqzyZHIewTYNxLA4nhB+09d8BIssfNfzBRhkBIHiaPv1Si226TQSvp8gxAJm2iY2qs2hQ==", + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.5.0.tgz", + "integrity": "sha512-zSuuuAlTMT4mzLj2nPnUm6fsE6270vdOfnpbJ+RmruU75UhLFvL0N2NgI7xpeS7NaB6hGqmd5pVpGTDYvi4Q3w==", "dev": true, "requires": { "@babel/template": "^7.3.3", "@babel/types": "^7.3.3", - "@types/babel__core": "^7.0.0", + "@types/babel__core": "^7.1.14", "@types/babel__traverse": "^7.0.6" } }, + "babel-plugin-polyfill-corejs2": { + "version": "0.4.5", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.5.tgz", + "integrity": "sha512-19hwUH5FKl49JEsvyTcoHakh6BE0wgXLLptIyKZ3PijHc/Ci521wygORCUCCred+E/twuqRyAkE02BAWPmsHOg==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.22.6", + "@babel/helper-define-polyfill-provider": "^0.4.2", + "semver": "^6.3.1" + }, + "dependencies": { + "semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true + } + } + }, + "babel-plugin-polyfill-corejs3": { + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.8.3.tgz", + "integrity": "sha512-z41XaniZL26WLrvjy7soabMXrfPWARN25PZoriDEiLMxAp50AUW3t35BGQUMg5xK3UrpVTtagIDklxYa+MhiNA==", + "dev": true, + "requires": { + "@babel/helper-define-polyfill-provider": "^0.4.2", + "core-js-compat": "^3.31.0" + } + }, + "babel-plugin-polyfill-regenerator": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.5.2.tgz", + "integrity": "sha512-tAlOptU0Xj34V1Y2PNTL4Y0FOJMDB6bZmoW39FeCQIhigGLkqu3Fj6uiXpxIf6Ij274ENdYx64y6Au+ZKlb1IA==", + "dev": true, + "requires": { + "@babel/helper-define-polyfill-provider": "^0.4.2" + } + }, "babel-preset-current-node-syntax": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz", @@ -12480,12 +17471,12 @@ } }, "babel-preset-jest": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-27.5.1.tgz", - "integrity": "sha512-Nptf2FzlPCWYuJg41HBqXVT8ym6bXOevuCTbhxlUpjwtysGaIWFvDEjp4y+G7fl13FgOdjs7P/DmErqH7da0Ag==", + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-29.5.0.tgz", + "integrity": "sha512-JOMloxOqdiBSxMAzjRaH023/vvcaSaec49zvg+2LmNsktC7ei39LTJGw02J+9uUtTZUq6xbLyJ4dxe9sSmIuAg==", "dev": true, "requires": { - "babel-plugin-jest-hoist": "^27.5.1", + "babel-plugin-jest-hoist": "^29.5.0", "babel-preset-current-node-syntax": "^1.0.0" } }, @@ -12507,6 +17498,12 @@ "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", "dev": true }, + "basic-ftp": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/basic-ftp/-/basic-ftp-5.0.3.tgz", + "integrity": "sha512-QHX8HLlncOLpy54mh+k/sWIFd0ThmRqwe9ZjELybGZK+tZ8rUb9VO0saKJUROTbE+KhzDUT7xziGpGrW8Kmd+g==", + "dev": true + }, "before-after-hook": { "version": "2.2.3", "resolved": "https://registry.npmjs.org/before-after-hook/-/before-after-hook-2.2.3.tgz", @@ -12593,15 +17590,15 @@ "dev": true }, "browserslist": { - "version": "4.21.5", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.5.tgz", - "integrity": "sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w==", + "version": "4.21.10", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.10.tgz", + "integrity": "sha512-bipEBdZfVH5/pwrvqc+Ub0kUPVfGUhlKxbvfD+z1BDnPEO/X98ruXGA1WP5ASpAFKan7Qr6j736IacbZQuAlKQ==", "dev": true, "requires": { - "caniuse-lite": "^1.0.30001449", - "electron-to-chromium": "^1.4.284", - "node-releases": "^2.0.8", - "update-browserslist-db": "^1.0.10" + "caniuse-lite": "^1.0.30001517", + "electron-to-chromium": "^1.4.477", + "node-releases": "^2.0.13", + "update-browserslist-db": "^1.0.11" } }, "bser": { @@ -12698,9 +17695,9 @@ "dev": true }, "caniuse-lite": { - "version": "1.0.30001449", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001449.tgz", - "integrity": "sha512-CPB+UL9XMT/Av+pJxCKGhdx+yg1hzplvFJQlJ2n68PyQGMz9L/E2zCyLdOL8uasbouTUgnPl+y0tccI/se+BEw==", + "version": "1.0.30001520", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001520.tgz", + "integrity": "sha512-tahF5O9EiiTzwTUqAeFjIZbn4Dnqxzz7ktrgGlMYNLH43Ul26IgTMH/zvL3DG0lZxBYnlT04axvInszUsZULdA==", "dev": true }, "canvg": { @@ -12792,11 +17789,14 @@ } } }, - "chownr": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", - "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==", - "dev": true + "chromium-bidi": { + "version": "0.4.20", + "resolved": "https://registry.npmjs.org/chromium-bidi/-/chromium-bidi-0.4.20.tgz", + "integrity": "sha512-ruHgVZFEv00mAQMz1tQjfjdG63jiPWrQPF6HLlX2ucqLqVTJoWngeBEKHaJ6n1swV/HSvgnBNbtTRIlcVyW3Fw==", + "dev": true, + "requires": { + "mitt": "3.0.1" + } }, "ci-info": { "version": "3.7.1", @@ -12805,9 +17805,9 @@ "dev": true }, "cjs-module-lexer": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.2.2.tgz", - "integrity": "sha512-cOU9usZw8/dXIXKtwa8pM0OTJQuJkxMN6w30csNRUerHfeQ5R6U3kkU/FtJeIf3M202OHfY2U8ccInBG7/xogA==", + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.2.3.tgz", + "integrity": "sha512-0TNiGstbQmCFwt4akjjBg5pLRTSyj/PkWQ1ZoO2zntmg9yLqSRxwEa4iCfQLGjqhiqBfOJa7W/E8wfGrTDmlZQ==", "dev": true }, "clean-regexp": { @@ -12895,9 +17895,9 @@ "dev": true }, "collect-v8-coverage": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz", - "integrity": "sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.2.tgz", + "integrity": "sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q==", "dev": true }, "color": { @@ -12992,6 +17992,15 @@ "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", "dev": true }, + "core-js-compat": { + "version": "3.32.0", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.32.0.tgz", + "integrity": "sha512-7a9a3D1k4UCVKnLhrgALyFcP7YCsLOQIxPd0dKjf/6GuPcgyiGP70ewWdCGrSK7evyhymi0qO4EqCmSJofDeYw==", + "dev": true, + "requires": { + "browserslist": "^4.21.9" + } + }, "core-util-is": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", @@ -13018,45 +18027,12 @@ "dev": true }, "cross-fetch": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.1.5.tgz", - "integrity": "sha512-lvb1SBsI0Z7GDwmuid+mU3kWVBwTVUbe7S0H52yaaAdQOXq2YktTCZdlAcNKFzE6QtRz0snpw9bNiPeOIkkQvw==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-4.0.0.tgz", + "integrity": "sha512-e4a5N8lVvuLgAWgnCrLr2PP0YyDOTHa9H/Rj54dirp61qXnNq46m82bRhNqIA5VccJtWBvPTFRV3TtvHUKPB1g==", "dev": true, "requires": { - "node-fetch": "2.6.7" - }, - "dependencies": { - "node-fetch": { - "version": "2.6.7", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", - "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", - "dev": true, - "requires": { - "whatwg-url": "^5.0.0" - } - }, - "tr46": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", - "dev": true - }, - "webidl-conversions": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", - "dev": true - }, - "whatwg-url": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", - "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", - "dev": true, - "requires": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" - } - } + "node-fetch": "^2.6.12" } }, "cross-spawn": { @@ -13120,6 +18096,12 @@ } } }, + "data-uri-to-buffer": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-5.0.1.tgz", + "integrity": "sha512-a9l6T1qqDogvvnw0nKlfZzqsyikEBZBClF39V3TFoKhDtGBqHu2HkuomJc02j5zft8zrUaXEuoicLeW54RkzPg==", + "dev": true + }, "data-urls": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-2.0.0.tgz", @@ -13216,6 +18198,17 @@ "integrity": "sha512-hsBd2qSVCRE+5PmNdHt1uzyrFu5d3RwmFDKzyNZMFq/EwDNJF7Ee5+D5oEKF0hU6LhtoUF1macFvOe4AskQC1Q==", "dev": true }, + "degenerator": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/degenerator/-/degenerator-5.0.1.tgz", + "integrity": "sha512-TllpMR/t0M5sqCXfj85i4XaAzxmS5tVA16dqvdkMwGmzI+dXLXnw3J+3Vdv7VKw+ThlTMboK6i9rnZ6Nntj5CQ==", + "dev": true, + "requires": { + "ast-types": "^0.13.4", + "escodegen": "^2.1.0", + "esprima": "^4.0.1" + } + }, "delayed-stream": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", @@ -13252,9 +18245,9 @@ } }, "devtools-protocol": { - "version": "0.0.981744", - "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.981744.tgz", - "integrity": "sha512-0cuGS8+jhR67Fy7qG3i3Pc7Aw494sb9yG9QgpG97SFVWwolgYjlhJg7n+UaHxOQT30d1TYu/EYe9k01ivLErIg==", + "version": "0.0.1147663", + "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.1147663.tgz", + "integrity": "sha512-hyWmRrexdhbZ1tcJUGpO95ivbRhWXz++F4Ko+n21AY5PNln2ovoJw+8ZMNDTtip+CNFQfrtLVh/w4009dXO/eQ==", "dev": true }, "didyoumean": { @@ -13369,9 +18362,9 @@ } }, "electron-to-chromium": { - "version": "1.4.284", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.284.tgz", - "integrity": "sha512-M8WEXFuKXMYMVr45fo8mq0wUrrJHheiKZf6BArTKk9ZBYCKJEOU5H8cdWgDT+qCVZf7Na4lVUaZsA+h6uA9+PA==", + "version": "1.4.491", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.491.tgz", + "integrity": "sha512-ZzPqGKghdVzlQJ+qpfE+r6EB321zed7e5JsvHIlMM4zPFF8okXUkF5Of7h7F3l3cltPL0rG7YVmlp5Qro7RQLA==", "dev": true }, "emittery": { @@ -13519,57 +18512,15 @@ "dev": true }, "escodegen": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-2.0.0.tgz", - "integrity": "sha512-mmHKys/C8BFUGI+MAWNcSYoORYLMdPzjrknd2Vc+bUsjN5bXcr8EhrNB+UTqfL1y3I9c4fw2ihgtMPQLBRiQxw==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-2.1.0.tgz", + "integrity": "sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w==", "dev": true, "requires": { "esprima": "^4.0.1", "estraverse": "^5.2.0", "esutils": "^2.0.2", - "optionator": "^0.8.1", "source-map": "~0.6.1" - }, - "dependencies": { - "levn": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", - "integrity": "sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==", - "dev": true, - "requires": { - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2" - } - }, - "optionator": { - "version": "0.8.3", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", - "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", - "dev": true, - "requires": { - "deep-is": "~0.1.3", - "fast-levenshtein": "~2.0.6", - "levn": "~0.3.0", - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2", - "word-wrap": "~1.2.3" - } - }, - "prelude-ls": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", - "integrity": "sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==", - "dev": true - }, - "type-check": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", - "integrity": "sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==", - "dev": true, - "requires": { - "prelude-ls": "~1.1.2" - } - } } }, "eslint": { @@ -13879,6 +18830,30 @@ "jest-get-type": "^27.5.1", "jest-matcher-utils": "^27.5.1", "jest-message-util": "^27.5.1" + }, + "dependencies": { + "@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "dev": true, + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + } + }, + "@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "dev": true, + "requires": { + "@types/yargs-parser": "*" + } + } } }, "external-editor": { @@ -13915,6 +18890,12 @@ "integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==", "dev": true }, + "fast-fifo": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/fast-fifo/-/fast-fifo-1.3.0.tgz", + "integrity": "sha512-IgfweLvEpwyA4WgiQe9Nx6VV2QkML2NkvZnk1oKnIzXgXdWxuhF7zw4DvLTPZJn6PIUneiAXPF24QmoEqHTjyw==", + "dev": true + }, "fast-glob": { "version": "3.2.12", "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz", @@ -14090,11 +19071,24 @@ "integrity": "sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==", "dev": true }, - "fs-constants": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", - "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==", - "dev": true + "fs-extra": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", + "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", + "dev": true, + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + }, + "dependencies": { + "universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "dev": true + } + } }, "fs.realpath": { "version": "1.0.0", @@ -14197,6 +19191,18 @@ "get-intrinsic": "^1.1.1" } }, + "get-uri": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-uri/-/get-uri-6.0.1.tgz", + "integrity": "sha512-7ZqONUVqaabogsYNWlYj0t3YZaL6dhuEueZXGF+/YVmf6dHmaFg8/6psJKqhx9QykIDKzpGcy2cn4oV4YC7V/Q==", + "dev": true, + "requires": { + "basic-ftp": "^5.0.2", + "data-uri-to-buffer": "^5.0.1", + "debug": "^4.3.4", + "fs-extra": "^8.1.0" + } + }, "gh-release": { "version": "6.0.4", "resolved": "https://registry.npmjs.org/gh-release/-/gh-release-6.0.4.tgz", @@ -14482,23 +19488,22 @@ "dev": true }, "http-proxy-agent": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", - "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.0.tgz", + "integrity": "sha512-+ZT+iBxVUQ1asugqnD6oWoRiS25AkjNfG085dKJGtGxkdwLQrMKU5wJr2bOOFAXzKcTuqq+7fZlTMgG3SRfIYQ==", "dev": true, "requires": { - "@tootallnate/once": "1", - "agent-base": "6", - "debug": "4" + "agent-base": "^7.1.0", + "debug": "^4.3.4" } }, "https-proxy-agent": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", - "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.1.tgz", + "integrity": "sha512-Eun8zV0kcYS1g19r78osiQLEFIRspRUDd9tIfBCTBPBeMieF/EsJNL8VI3xOIdYRDEkjQnqOYPsZ2DsWsVsFwQ==", "dev": true, "requires": { - "agent-base": "6", + "agent-base": "^7.0.2", "debug": "4" } }, @@ -14664,6 +19669,12 @@ "integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==", "dev": true }, + "ip": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.8.tgz", + "integrity": "sha512-PuExPYUiu6qMBQb4l06ecm6T6ujzhmh+MeJcW9wa89PoAz5pvd4zPgN5WJV104mb6S2T1AwNIAaB70JNrLQWhg==", + "dev": true + }, "is-array-buffer": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.1.tgz", @@ -14742,9 +19753,9 @@ } }, "is-core-module": { - "version": "2.11.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz", - "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==", + "version": "2.13.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.0.tgz", + "integrity": "sha512-Z7dk6Qo8pOCp3l4tsX2C5ZVas4V+UxwQodwZhLopL91TX8UyyHEXafPcyoeeWuLrwzHcr3igO78wNLwHJHsMCQ==", "dev": true, "requires": { "has": "^1.0.3" @@ -14980,22 +19991,33 @@ }, "dependencies": { "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "dev": true } } }, "istanbul-lib-report": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", - "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", + "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==", "dev": true, "requires": { "istanbul-lib-coverage": "^3.0.0", - "make-dir": "^3.0.0", + "make-dir": "^4.0.0", "supports-color": "^7.1.0" + }, + "dependencies": { + "make-dir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", + "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", + "dev": true, + "requires": { + "semver": "^7.5.3" + } + } } }, "istanbul-lib-source-maps": { @@ -15010,9 +20032,9 @@ } }, "istanbul-reports": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.5.tgz", - "integrity": "sha512-nUsEMa9pBt/NOHqbcbeJEgqIlY/K7rVWUX6Lql2orY5e9roQOthbR3vtY4zzf2orPELg80fnxxk9zUyPlgwD1w==", + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.6.tgz", + "integrity": "sha512-TLgnMkKg3iTDsQ9PbPTdpfAK2DzjF9mqUG7RMgcQl8oFjad8ob4laGxv5XV5U9MAfx8D6tSJiUyuAwzLicaxlg==", "dev": true, "requires": { "html-escaper": "^2.0.0", @@ -15020,14 +20042,14 @@ } }, "jest": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest/-/jest-27.5.1.tgz", - "integrity": "sha512-Yn0mADZB89zTtjkPJEXwrac3LHudkQMR+Paqa8uxJHCBr9agxztUifWCyiYrjhMPBoUVBjyny0I7XH6ozDr7QQ==", + "version": "27.0.3", + "resolved": "https://registry.npmjs.org/jest/-/jest-27.0.3.tgz", + "integrity": "sha512-0G9+QqXFIZWgf5rs3yllpaA+13ZawVHfyuhuCV1EnoFbX++rVMRrYWCAnk+dfhwyv9/VTQvn+XG969u8aPRsBg==", "dev": true, "requires": { - "@jest/core": "^27.5.1", + "@jest/core": "^27.0.3", "import-local": "^3.0.2", - "jest-cli": "^27.5.1" + "jest-cli": "^27.0.3" } }, "jest-changed-files": { @@ -15039,6 +20061,30 @@ "@jest/types": "^27.5.1", "execa": "^5.0.0", "throat": "^6.0.1" + }, + "dependencies": { + "@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "dev": true, + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + } + }, + "@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "dev": true, + "requires": { + "@types/yargs-parser": "*" + } + } } }, "jest-circus": { @@ -15066,28 +20112,88 @@ "slash": "^3.0.0", "stack-utils": "^2.0.3", "throat": "^6.0.1" + }, + "dependencies": { + "@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "dev": true, + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + } + }, + "@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "dev": true, + "requires": { + "@types/yargs-parser": "*" + } + }, + "jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + } + } } }, "jest-cli": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-27.5.1.tgz", - "integrity": "sha512-Hc6HOOwYq4/74/c62dEE3r5elx8wjYqxY0r0G/nFrLDPMFRu6RA/u8qINOIkvhxG7mMQ5EJsOGfRpI8L6eFUVw==", + "version": "27.4.5", + "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-27.4.5.tgz", + "integrity": "sha512-hrky3DSgE0u7sQxaCL7bdebEPHx5QzYmrGuUjaPLmPE8jx5adtvGuOlRspvMoVLTTDOHRnZDoRLYJuA+VCI7Hg==", "dev": true, "requires": { - "@jest/core": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/types": "^27.5.1", + "@jest/core": "^27.4.5", + "@jest/test-result": "^27.4.2", + "@jest/types": "^27.4.2", "chalk": "^4.0.0", "exit": "^0.1.2", - "graceful-fs": "^4.2.9", + "graceful-fs": "^4.2.4", "import-local": "^3.0.2", - "jest-config": "^27.5.1", - "jest-util": "^27.5.1", - "jest-validate": "^27.5.1", + "jest-config": "^27.4.5", + "jest-util": "^27.4.2", + "jest-validate": "^27.4.2", "prompts": "^2.0.1", "yargs": "^16.2.0" }, "dependencies": { + "@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "dev": true, + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + } + }, + "@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "dev": true, + "requires": { + "@types/yargs-parser": "*" + } + }, "cliui": { "version": "7.0.4", "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", @@ -15099,6 +20205,20 @@ "wrap-ansi": "^7.0.0" } }, + "jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + } + }, "yargs": { "version": "16.2.0", "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", @@ -15152,6 +20272,152 @@ "pretty-format": "^27.5.1", "slash": "^3.0.0", "strip-json-comments": "^3.1.1" + }, + "dependencies": { + "@jest/transform": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz", + "integrity": "sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==", + "dev": true, + "requires": { + "@babel/core": "^7.1.0", + "@jest/types": "^27.5.1", + "babel-plugin-istanbul": "^6.1.1", + "chalk": "^4.0.0", + "convert-source-map": "^1.4.0", + "fast-json-stable-stringify": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-util": "^27.5.1", + "micromatch": "^4.0.4", + "pirates": "^4.0.4", + "slash": "^3.0.0", + "source-map": "^0.6.1", + "write-file-atomic": "^3.0.0" + } + }, + "@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "dev": true, + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + } + }, + "@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "dev": true, + "requires": { + "@types/yargs-parser": "*" + } + }, + "babel-jest": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-27.5.1.tgz", + "integrity": "sha512-cdQ5dXjGRd0IBRATiQ4mZGlGlRE8kJpjPOixdNRdT+m3UcNqmYWN6rK6nvtXYfY3D76cb8s/O1Ss8ea24PIwcg==", + "dev": true, + "requires": { + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/babel__core": "^7.1.14", + "babel-plugin-istanbul": "^6.1.1", + "babel-preset-jest": "^27.5.1", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "slash": "^3.0.0" + } + }, + "babel-plugin-jest-hoist": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.5.1.tgz", + "integrity": "sha512-50wCwD5EMNW4aRpOwtqzyZHIewTYNxLA4nhB+09d8BIssfNfzBRhkBIHiaPv1Si226TQSvp8gxAJm2iY2qs2hQ==", + "dev": true, + "requires": { + "@babel/template": "^7.3.3", + "@babel/types": "^7.3.3", + "@types/babel__core": "^7.0.0", + "@types/babel__traverse": "^7.0.6" + } + }, + "babel-preset-jest": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-27.5.1.tgz", + "integrity": "sha512-Nptf2FzlPCWYuJg41HBqXVT8ym6bXOevuCTbhxlUpjwtysGaIWFvDEjp4y+G7fl13FgOdjs7P/DmErqH7da0Ag==", + "dev": true, + "requires": { + "babel-plugin-jest-hoist": "^27.5.1", + "babel-preset-current-node-syntax": "^1.0.0" + } + }, + "jest-haste-map": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", + "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/graceful-fs": "^4.1.2", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "fsevents": "^2.3.2", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^27.5.1", + "jest-serializer": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "micromatch": "^4.0.4", + "walker": "^1.0.7" + } + }, + "jest-regex-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", + "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", + "dev": true + }, + "jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + } + }, + "jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "dev": true, + "requires": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + } + }, + "supports-color": { + "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" + } + } } }, "jest-diff": { @@ -15186,6 +20452,44 @@ "jest-get-type": "^27.5.1", "jest-util": "^27.5.1", "pretty-format": "^27.5.1" + }, + "dependencies": { + "@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "dev": true, + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + } + }, + "@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "dev": true, + "requires": { + "@types/yargs-parser": "*" + } + }, + "jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + } + } } }, "jest-environment-jsdom": { @@ -15201,6 +20505,44 @@ "jest-mock": "^27.5.1", "jest-util": "^27.5.1", "jsdom": "^16.6.0" + }, + "dependencies": { + "@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "dev": true, + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + } + }, + "@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "dev": true, + "requires": { + "@types/yargs-parser": "*" + } + }, + "jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + } + } } }, "jest-environment-node": { @@ -15215,6 +20557,44 @@ "@types/node": "*", "jest-mock": "^27.5.1", "jest-util": "^27.5.1" + }, + "dependencies": { + "@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "dev": true, + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + } + }, + "@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "dev": true, + "requires": { + "@types/yargs-parser": "*" + } + }, + "jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + } + } } }, "jest-get-type": { @@ -15224,24 +20604,23 @@ "dev": true }, "jest-haste-map": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", - "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", + "version": "29.6.2", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-29.6.2.tgz", + "integrity": "sha512-+51XleTDAAysvU8rT6AnS1ZJ+WHVNqhj1k6nTvN2PYP+HjU3kqlaKQ1Lnw3NYW3bm2r8vq82X0Z1nDDHZMzHVA==", "dev": true, "requires": { - "@jest/types": "^27.5.1", - "@types/graceful-fs": "^4.1.2", + "@jest/types": "^29.6.1", + "@types/graceful-fs": "^4.1.3", "@types/node": "*", "anymatch": "^3.0.3", "fb-watchman": "^2.0.0", "fsevents": "^2.3.2", "graceful-fs": "^4.2.9", - "jest-regex-util": "^27.5.1", - "jest-serializer": "^27.5.1", - "jest-util": "^27.5.1", - "jest-worker": "^27.5.1", + "jest-regex-util": "^29.4.3", + "jest-util": "^29.6.2", + "jest-worker": "^29.6.2", "micromatch": "^4.0.4", - "walker": "^1.0.7" + "walker": "^1.0.8" } }, "jest-jasmine2": { @@ -15267,6 +20646,44 @@ "jest-util": "^27.5.1", "pretty-format": "^27.5.1", "throat": "^6.0.1" + }, + "dependencies": { + "@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "dev": true, + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + } + }, + "@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "dev": true, + "requires": { + "@types/yargs-parser": "*" + } + }, + "jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + } + } } }, "jest-leak-detector": { @@ -15306,6 +20723,30 @@ "pretty-format": "^27.5.1", "slash": "^3.0.0", "stack-utils": "^2.0.3" + }, + "dependencies": { + "@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "dev": true, + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + } + }, + "@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "dev": true, + "requires": { + "@types/yargs-parser": "*" + } + } } }, "jest-mock": { @@ -15316,6 +20757,30 @@ "requires": { "@jest/types": "^27.5.1", "@types/node": "*" + }, + "dependencies": { + "@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "dev": true, + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + } + }, + "@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "dev": true, + "requires": { + "@types/yargs-parser": "*" + } + } } }, "jest-pnp-resolver": { @@ -15326,9 +20791,9 @@ "requires": {} }, "jest-regex-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", - "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-29.4.3.tgz", + "integrity": "sha512-O4FglZaMmWXbGHSQInfXewIsd1LMn9p3ZXB/6r4FOkyhX2/iP/soMG98jGvk/A3HAN78+5VWcBGO0BJAPRh4kg==", "dev": true }, "jest-resolve": { @@ -15349,16 +20814,99 @@ "slash": "^3.0.0" }, "dependencies": { + "@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "dev": true, + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + } + }, + "@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "dev": true, + "requires": { + "@types/yargs-parser": "*" + } + }, + "jest-haste-map": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", + "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/graceful-fs": "^4.1.2", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "fsevents": "^2.3.2", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^27.5.1", + "jest-serializer": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "micromatch": "^4.0.4", + "walker": "^1.0.7" + } + }, + "jest-regex-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", + "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", + "dev": true + }, + "jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + } + }, + "jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "dev": true, + "requires": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + } + }, "resolve": { - "version": "1.22.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", - "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", + "version": "1.22.4", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.4.tgz", + "integrity": "sha512-PXNdCiPqDqeUou+w1C2eTQbNfxKSuMxqTCuvlmmMsk1NWHL5fRrhY6Pl0qEYYc6+QqGClco1Qj8XnjPego4wfg==", "dev": true, "requires": { - "is-core-module": "^2.9.0", + "is-core-module": "^2.13.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" } + }, + "supports-color": { + "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" + } } } }, @@ -15371,6 +20919,36 @@ "@jest/types": "^27.5.1", "jest-regex-util": "^27.5.1", "jest-snapshot": "^27.5.1" + }, + "dependencies": { + "@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "dev": true, + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + } + }, + "@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "dev": true, + "requires": { + "@types/yargs-parser": "*" + } + }, + "jest-regex-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", + "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", + "dev": true + } } }, "jest-runner": { @@ -15400,6 +20978,114 @@ "jest-worker": "^27.5.1", "source-map-support": "^0.5.6", "throat": "^6.0.1" + }, + "dependencies": { + "@jest/transform": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz", + "integrity": "sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==", + "dev": true, + "requires": { + "@babel/core": "^7.1.0", + "@jest/types": "^27.5.1", + "babel-plugin-istanbul": "^6.1.1", + "chalk": "^4.0.0", + "convert-source-map": "^1.4.0", + "fast-json-stable-stringify": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-util": "^27.5.1", + "micromatch": "^4.0.4", + "pirates": "^4.0.4", + "slash": "^3.0.0", + "source-map": "^0.6.1", + "write-file-atomic": "^3.0.0" + } + }, + "@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "dev": true, + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + } + }, + "@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "dev": true, + "requires": { + "@types/yargs-parser": "*" + } + }, + "jest-haste-map": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", + "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/graceful-fs": "^4.1.2", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "fsevents": "^2.3.2", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^27.5.1", + "jest-serializer": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "micromatch": "^4.0.4", + "walker": "^1.0.7" + } + }, + "jest-regex-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", + "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", + "dev": true + }, + "jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + } + }, + "jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "dev": true, + "requires": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + } + }, + "supports-color": { + "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" + } + } } }, "jest-runtime": { @@ -15430,6 +21116,114 @@ "jest-util": "^27.5.1", "slash": "^3.0.0", "strip-bom": "^4.0.0" + }, + "dependencies": { + "@jest/transform": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz", + "integrity": "sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==", + "dev": true, + "requires": { + "@babel/core": "^7.1.0", + "@jest/types": "^27.5.1", + "babel-plugin-istanbul": "^6.1.1", + "chalk": "^4.0.0", + "convert-source-map": "^1.4.0", + "fast-json-stable-stringify": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-util": "^27.5.1", + "micromatch": "^4.0.4", + "pirates": "^4.0.4", + "slash": "^3.0.0", + "source-map": "^0.6.1", + "write-file-atomic": "^3.0.0" + } + }, + "@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "dev": true, + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + } + }, + "@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "dev": true, + "requires": { + "@types/yargs-parser": "*" + } + }, + "jest-haste-map": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", + "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/graceful-fs": "^4.1.2", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "fsevents": "^2.3.2", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^27.5.1", + "jest-serializer": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "micromatch": "^4.0.4", + "walker": "^1.0.7" + } + }, + "jest-regex-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", + "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", + "dev": true + }, + "jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + } + }, + "jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "dev": true, + "requires": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + } + }, + "supports-color": { + "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" + } + } } }, "jest-serializer": { @@ -15470,15 +21264,123 @@ "natural-compare": "^1.4.0", "pretty-format": "^27.5.1", "semver": "^7.3.2" + }, + "dependencies": { + "@jest/transform": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz", + "integrity": "sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==", + "dev": true, + "requires": { + "@babel/core": "^7.1.0", + "@jest/types": "^27.5.1", + "babel-plugin-istanbul": "^6.1.1", + "chalk": "^4.0.0", + "convert-source-map": "^1.4.0", + "fast-json-stable-stringify": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-util": "^27.5.1", + "micromatch": "^4.0.4", + "pirates": "^4.0.4", + "slash": "^3.0.0", + "source-map": "^0.6.1", + "write-file-atomic": "^3.0.0" + } + }, + "@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "dev": true, + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + } + }, + "@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "dev": true, + "requires": { + "@types/yargs-parser": "*" + } + }, + "jest-haste-map": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", + "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/graceful-fs": "^4.1.2", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "fsevents": "^2.3.2", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^27.5.1", + "jest-serializer": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "micromatch": "^4.0.4", + "walker": "^1.0.7" + } + }, + "jest-regex-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", + "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", + "dev": true + }, + "jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + } + }, + "jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "dev": true, + "requires": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + } + }, + "supports-color": { + "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" + } + } } }, "jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "version": "29.6.2", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.6.2.tgz", + "integrity": "sha512-3eX1qb6L88lJNCFlEADKOkjpXJQyZRiavX1INZ4tRnrBVr2COd3RgcTLyUiEXMNBlDU/cgYq6taUS0fExrWW4w==", "dev": true, "requires": { - "@jest/types": "^27.5.1", + "@jest/types": "^29.6.1", "@types/node": "*", "chalk": "^4.0.0", "ci-info": "^3.2.0", @@ -15500,6 +21402,28 @@ "pretty-format": "^27.5.1" }, "dependencies": { + "@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "dev": true, + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + } + }, + "@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "dev": true, + "requires": { + "@types/yargs-parser": "*" + } + }, "camelcase": { "version": "6.3.0", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", @@ -15521,15 +21445,54 @@ "chalk": "^4.0.0", "jest-util": "^27.5.1", "string-length": "^4.0.1" + }, + "dependencies": { + "@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "dev": true, + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + } + }, + "@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "dev": true, + "requires": { + "@types/yargs-parser": "*" + } + }, + "jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + } + } } }, "jest-worker": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", - "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "version": "29.6.2", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.6.2.tgz", + "integrity": "sha512-l3ccBOabTdkng8I/ORCkADz4eSMKejTYv1vB/Z83UiubqhC1oQ5Li6dWCyqOIvSifGjUBxuvxvlm6KGK2DtuAQ==", "dev": true, "requires": { "@types/node": "*", + "jest-util": "^29.6.2", "merge-stream": "^2.0.0", "supports-color": "^8.0.0" }, @@ -15599,6 +21562,45 @@ "whatwg-url": "^8.5.0", "ws": "^7.4.6", "xml-name-validator": "^3.0.0" + }, + "dependencies": { + "agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "dev": true, + "requires": { + "debug": "4" + } + }, + "http-proxy-agent": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", + "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", + "dev": true, + "requires": { + "@tootallnate/once": "1", + "agent-base": "6", + "debug": "4" + } + }, + "https-proxy-agent": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", + "dev": true, + "requires": { + "agent-base": "6", + "debug": "4" + } + }, + "ws": { + "version": "7.5.9", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz", + "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", + "dev": true, + "requires": {} + } } }, "jsesc": { @@ -15654,6 +21656,15 @@ "json-typescript": "^1.0.0" } }, + "jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.6" + } + }, "jspdf": { "version": "2.5.1", "resolved": "https://registry.npmjs.org/jspdf/-/jspdf-2.5.1.tgz", @@ -15807,6 +21818,12 @@ "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==", "peer": true }, + "lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", + "dev": true + }, "lodash.isplainobject": { "version": "4.0.6", "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", @@ -16017,6 +22034,12 @@ "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz", "integrity": "sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==" }, + "mitt": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/mitt/-/mitt-3.0.1.tgz", + "integrity": "sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw==", + "dev": true + }, "mkdirp-classic": { "version": "0.5.3", "resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz", @@ -16059,10 +22082,16 @@ "integrity": "sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==", "dev": true }, + "netmask": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/netmask/-/netmask-2.0.2.tgz", + "integrity": "sha512-dBpDMdxv9Irdq66304OLfEmQ9tbNRFnFTuZiLo+bD+r332bBmMJ8GBLXklIXXgxd3+v9+KUnZaUR5PJMa75Gsg==", + "dev": true + }, "node-fetch": { - "version": "2.6.8", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.8.tgz", - "integrity": "sha512-RZ6dBYuj8dRSfxpUSu+NsdF1dpPpluJxwOp+6IoDp/sH2QNDSvurYsAa+F1WxY2RjA1iP93xhcsUoYbF2XBqVg==", + "version": "2.6.12", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.12.tgz", + "integrity": "sha512-C/fGU2E8ToujUivIO0H+tpQ6HWo4eEmchoPIoXtxCrVghxdKq+QOHqEZW7tuP3KlV3bC8FRMO5nMCC7Zm1VP6g==", "dev": true, "requires": { "whatwg-url": "^5.0.0" @@ -16099,9 +22128,9 @@ "dev": true }, "node-releases": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.8.tgz", - "integrity": "sha512-dFSmB8fFHEH/s81Xi+Y/15DQY6VHW81nXRj86EMSL3lmuTmK1e+aT4wrFCkTbm+gSwkw4KpX+rT/pMM2c1mF+A==", + "version": "2.0.13", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.13.tgz", + "integrity": "sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==", "dev": true }, "normalize-package-data": { @@ -16163,9 +22192,9 @@ } }, "nwsapi": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.2.tgz", - "integrity": "sha512-90yv+6538zuvUMnN+zCr8LuV6bPFdq50304114vJYJ8RDyK8D5O9Phpbd6SZWgI7PwzmmfN1upeOJlvybDSgCw==", + "version": "2.2.7", + "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.7.tgz", + "integrity": "sha512-ub5E4+FBPKwAZx0UwIQOjYWGHTEq5sPqHQNRN8Z9e4A7u3Tj1weLJsL59yH9vmvqEtBHaOmT6cYQKIZOxp35FQ==", "dev": true }, "object-assign": { @@ -16343,6 +22372,33 @@ "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", "dev": true }, + "pac-proxy-agent": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/pac-proxy-agent/-/pac-proxy-agent-7.0.0.tgz", + "integrity": "sha512-t4tRAMx0uphnZrio0S0Jw9zg3oDbz1zVhQ/Vy18FjLfP1XOLNUEjaVxYCYRI6NS+BsMBXKIzV6cTLOkO9AtywA==", + "dev": true, + "requires": { + "@tootallnate/quickjs-emscripten": "^0.23.0", + "agent-base": "^7.0.2", + "debug": "^4.3.4", + "get-uri": "^6.0.1", + "http-proxy-agent": "^7.0.0", + "https-proxy-agent": "^7.0.0", + "pac-resolver": "^7.0.0", + "socks-proxy-agent": "^8.0.1" + } + }, + "pac-resolver": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/pac-resolver/-/pac-resolver-7.0.0.tgz", + "integrity": "sha512-Fd9lT9vJbHYRACT8OhCbZBbxr6KRSawSovFpy8nDGshaK99S/EBhVIHp9+crhxrsZOuvLpgL1n23iyPg6Rl2hg==", + "dev": true, + "requires": { + "degenerator": "^5.0.0", + "ip": "^1.1.8", + "netmask": "^2.0.2" + } + }, "package-json": { "version": "6.5.0", "resolved": "https://registry.npmjs.org/package-json/-/package-json-6.5.0.tgz", @@ -16474,9 +22530,9 @@ "dev": true }, "pirates": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.5.tgz", - "integrity": "sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ==", + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", + "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==", "dev": true }, "pkg-dir": { @@ -16685,6 +22741,30 @@ } } }, + "proxy-agent": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/proxy-agent/-/proxy-agent-6.3.0.tgz", + "integrity": "sha512-0LdR757eTj/JfuU7TL2YCuAZnxWXu3tkJbg4Oq3geW/qFNT/32T0sp2HnZ9O0lMR4q3vwAt0+xCA8SR0WAD0og==", + "dev": true, + "requires": { + "agent-base": "^7.0.2", + "debug": "^4.3.4", + "http-proxy-agent": "^7.0.0", + "https-proxy-agent": "^7.0.0", + "lru-cache": "^7.14.1", + "pac-proxy-agent": "^7.0.0", + "proxy-from-env": "^1.1.0", + "socks-proxy-agent": "^8.0.1" + }, + "dependencies": { + "lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "dev": true + } + } + }, "proxy-from-env": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", @@ -16733,34 +22813,44 @@ } }, "puppeteer": { - "version": "13.7.0", - "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-13.7.0.tgz", - "integrity": "sha512-U1uufzBjz3+PkpCxFrWzh4OrMIdIb2ztzCu0YEPfRHjHswcSwHZswnK+WdsOQJsRV8WeTg3jLhJR4D867+fjsA==", + "version": "21.0.3", + "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-21.0.3.tgz", + "integrity": "sha512-+eBNTEOOBrRBLJ1/jIuHcOoUUOVpUQjQFwp9L/sm/iBDqii+4jv9jxpPJSOmOHXuy++X7GWfhuDw4vz8crNzPw==", "dev": true, "requires": { - "cross-fetch": "3.1.5", - "debug": "4.3.4", - "devtools-protocol": "0.0.981744", - "extract-zip": "2.0.1", - "https-proxy-agent": "5.0.1", - "pkg-dir": "4.2.0", - "progress": "2.0.3", - "proxy-from-env": "1.1.0", - "rimraf": "3.0.2", - "tar-fs": "2.1.1", - "unbzip2-stream": "1.4.3", - "ws": "8.5.0" + "@puppeteer/browsers": "1.6.0", + "cosmiconfig": "8.2.0", + "puppeteer-core": "21.0.3" }, "dependencies": { - "ws": { - "version": "8.5.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.5.0.tgz", - "integrity": "sha512-BWX0SWVgLPzYwF8lTzEy1egjhS4S4OEAHfsO8o65WOVsrnSRGaSiUaa9e0ggGlkMTtBlmOpEXiie9RUcBO86qg==", + "cosmiconfig": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.2.0.tgz", + "integrity": "sha512-3rTMnFJA1tCOPwRxtgF4wd7Ab2qvDbL8jX+3smjIbS4HlZBagTlpERbdN7iAbWlrfxE3M8c27kTwTawQ7st+OQ==", "dev": true, - "requires": {} + "requires": { + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "parse-json": "^5.0.0", + "path-type": "^4.0.0" + } } } }, + "puppeteer-core": { + "version": "21.0.3", + "resolved": "https://registry.npmjs.org/puppeteer-core/-/puppeteer-core-21.0.3.tgz", + "integrity": "sha512-AGvopfkA0jLbW5Ba0m6kBuvRIpLo76PXUK3zJYkXOr9NI1LknJESyai6TtXc6GUSewMkinmyEDx1pFgq900hqg==", + "dev": true, + "requires": { + "@puppeteer/browsers": "1.6.0", + "chromium-bidi": "0.4.20", + "cross-fetch": "4.0.0", + "debug": "4.3.4", + "devtools-protocol": "0.0.1147663", + "ws": "8.13.0" + } + }, "querystringify": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", @@ -16773,6 +22863,12 @@ "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", "dev": true }, + "queue-tick": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/queue-tick/-/queue-tick-1.0.1.tgz", + "integrity": "sha512-kJt5qhMxoszgU/62PLP1CJytzd2NKetjSRnyuj31fDd3Rlcz3fzlFdFLD1SItunPwyqEOkca6GbV612BWfaBag==", + "dev": true + }, "quick-lru": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz", @@ -16960,6 +23056,30 @@ } } }, + "regenerate": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", + "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", + "dev": true + }, + "regenerate-unicode-properties": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.0.tgz", + "integrity": "sha512-d1VudCLoIGitcU/hEg2QqvyGZQmdC0Lf8BqdOMXGFSvJP4bNV1+XqbPQeHHLD51Jh4QJJ225dlIFvY4Ly6MXmQ==", + "dev": true, + "requires": { + "regenerate": "^1.4.2" + } + }, + "regenerator-transform": { + "version": "0.15.2", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.2.tgz", + "integrity": "sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==", + "dev": true, + "requires": { + "@babel/runtime": "^7.8.4" + } + }, "regexp-tree": { "version": "0.1.24", "resolved": "https://registry.npmjs.org/regexp-tree/-/regexp-tree-0.1.24.tgz", @@ -16983,6 +23103,20 @@ "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", "dev": true }, + "regexpu-core": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.3.2.tgz", + "integrity": "sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ==", + "dev": true, + "requires": { + "@babel/regjsgen": "^0.8.0", + "regenerate": "^1.4.2", + "regenerate-unicode-properties": "^10.1.0", + "regjsparser": "^0.9.1", + "unicode-match-property-ecmascript": "^2.0.0", + "unicode-match-property-value-ecmascript": "^2.1.0" + } + }, "registry-auth-token": { "version": "4.2.2", "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.2.2.tgz", @@ -17001,6 +23135,23 @@ "rc": "^1.2.8" } }, + "regjsparser": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.9.1.tgz", + "integrity": "sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==", + "dev": true, + "requires": { + "jsesc": "~0.5.0" + }, + "dependencies": { + "jsesc": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", + "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==", + "dev": true + } + } + }, "remove-markdown": { "version": "0.2.2", "resolved": "https://registry.npmjs.org/remove-markdown/-/remove-markdown-0.2.2.tgz", @@ -17165,9 +23316,9 @@ } }, "semver": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", - "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", "dev": true, "requires": { "lru-cache": "^6.0.0" @@ -17302,6 +23453,41 @@ "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", "dev": true }, + "smart-buffer": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", + "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", + "dev": true + }, + "socks": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.7.1.tgz", + "integrity": "sha512-7maUZy1N7uo6+WVEX6psASxtNlKaNVMlGQKkG/63nEDdLOWNbiUMoLK7X4uYoLhQstau72mLgfEWcXcwsaHbYQ==", + "dev": true, + "requires": { + "ip": "^2.0.0", + "smart-buffer": "^4.2.0" + }, + "dependencies": { + "ip": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ip/-/ip-2.0.0.tgz", + "integrity": "sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ==", + "dev": true + } + } + }, + "socks-proxy-agent": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.1.tgz", + "integrity": "sha512-59EjPbbgg8U3x62hhKOFVAmySQUcfRQ4C7Q/D5sEHnZTQRrQlNKINks44DMR1gwXp0p4LaVIeccX2KHTTcHVqQ==", + "dev": true, + "requires": { + "agent-base": "^7.0.1", + "debug": "^4.3.4", + "socks": "^2.7.1" + } + }, "sort-keys": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-4.2.0.tgz", @@ -17422,6 +23608,16 @@ "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==", "dev": true }, + "streamx": { + "version": "2.15.1", + "resolved": "https://registry.npmjs.org/streamx/-/streamx-2.15.1.tgz", + "integrity": "sha512-fQMzy2O/Q47rgwErk/eGeLu/roaFWV0jVsogDmrszM9uIw8L5OA+t+V93MgYlufNptfjmYR1tOMWhei/Eh7TQA==", + "dev": true, + "requires": { + "fast-fifo": "^1.1.0", + "queue-tick": "^1.0.1" + } + }, "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -17616,41 +23812,25 @@ } }, "tar-fs": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.1.tgz", - "integrity": "sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-3.0.4.tgz", + "integrity": "sha512-5AFQU8b9qLfZCX9zp2duONhPmZv0hGYiBPJsyUdqMjzq/mqVpy/rEUSeHk1+YitmxugaptgBh5oDGU3VsAJq4w==", "dev": true, "requires": { - "chownr": "^1.1.1", "mkdirp-classic": "^0.5.2", "pump": "^3.0.0", - "tar-stream": "^2.1.4" + "tar-stream": "^3.1.5" } }, "tar-stream": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", - "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-3.1.6.tgz", + "integrity": "sha512-B/UyjYwPpMBv+PaFSWAmtYjwdrlEaZQEhMIBFNC5oEG8lpiW8XjcSdmEaClj28ArfKScKHs2nshz3k2le6crsg==", "dev": true, "requires": { - "bl": "^4.0.3", - "end-of-stream": "^1.4.1", - "fs-constants": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.1.1" - }, - "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" - } - } + "b4a": "^1.6.4", + "fast-fifo": "^1.2.0", + "streamx": "^2.15.0" } }, "terminal-link": { @@ -17895,6 +24075,34 @@ "through": "^2.3.8" } }, + "unicode-canonical-property-names-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", + "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==", + "dev": true + }, + "unicode-match-property-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", + "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", + "dev": true, + "requires": { + "unicode-canonical-property-names-ecmascript": "^2.0.0", + "unicode-property-aliases-ecmascript": "^2.0.0" + } + }, + "unicode-match-property-value-ecmascript": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz", + "integrity": "sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==", + "dev": true + }, + "unicode-property-aliases-ecmascript": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz", + "integrity": "sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==", + "dev": true + }, "unique-string": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz", @@ -17917,9 +24125,9 @@ "dev": true }, "update-browserslist-db": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz", - "integrity": "sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==", + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz", + "integrity": "sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==", "dev": true, "requires": { "escalade": "^3.1.1", @@ -18203,9 +24411,9 @@ } }, "ws": { - "version": "7.5.9", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz", - "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", + "version": "8.13.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.13.0.tgz", + "integrity": "sha512-x9vcZYTrFPC7aSIbj7sRCYo7L/Xb8Iy+pW0ng0wt2vCJv7M9HOMy0UoN3rr+IFC7hb7vXoqS+P9ktyLLLhO+LA==", "dev": true, "requires": {} }, @@ -18262,9 +24470,9 @@ "dev": true }, "yargs": { - "version": "17.6.2", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.6.2.tgz", - "integrity": "sha512-1/9UrdHjDZc0eOU0HxOHoS78C69UD3JRMvzlJ7S79S2nTaWRA/whGCTV8o9e/N/1Va9YIV7Q4sOxD8VV4pCWOw==", + "version": "17.7.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.1.tgz", + "integrity": "sha512-cwiTb08Xuv5fqF4AovYacTFNxk62th7LKJ6BL9IGUpTJrWoU7/7WdQGTP2SjKf1dUNBGzDd28p/Yfs/GI6JrLw==", "dev": true, "requires": { "cliui": "^8.0.1", diff --git a/package.json b/package.json index 7e3bb4abe..b8cb4cec2 100644 --- a/package.json +++ b/package.json @@ -30,18 +30,22 @@ "update-browserslist": "npx browserslist@latest --update-db" }, "devDependencies": { + "@babel/core": "^7.22.10", + "@babel/preset-env": "^7.22.10", + "@babel/preset-typescript": "^7.22.5", "@esri/eslint-plugin-calcite-components": "^0.2.2", "@esri/solution-common": "3.0.1", "@stencil/postcss": "^2.1.0", "@stencil/sass": "^2.0.0", "@stencil/store": "^2.0.1", "@types/arcgis-js-api": "^4.27.0", - "@types/jest": "^27.5.2", + "@types/jest": "^27.0.3", "@types/node": "^16.11.11", - "@types/puppeteer": "^5.4.2", + "@types/puppeteer": "^7.0.4", "@typescript-eslint/eslint-plugin": "^5.4.0", "@typescript-eslint/parser": "^5.39.0", "autoprefixer": "10.4.4", + "babel-jest": "^29.6.2", "caniuse-lite": "^1.0.30001412", "dotenv": "^10.0.0", "eslint": "^8.11.0", @@ -53,11 +57,11 @@ "esri-loader": "3.4.0", "form-request-submit-polyfill": "^2.0.0", "gh-release": "^6.0.3", - "jest": "^27.5.1", - "jest-cli": "^27.5.1", + "jest": "^27.0.3", + "jest-cli": "^27.4.5", "pify": "^5.0.0", "prettier": "2.4.1", - "puppeteer": "^13.5.1", + "puppeteer": "^21.0.3", "react": "^18.2.0", "rimraf": "^3.0.2", "tailwindcss": "3.0.23", diff --git a/src/assets/arcgis-pdf-creator/PDFCreator.js b/src/assets/arcgis-pdf-creator/PDFCreator.js index 3cba08329..991b33fbe 100644 --- a/src/assets/arcgis-pdf-creator/PDFCreator.js +++ b/src/assets/arcgis-pdf-creator/PDFCreator.js @@ -1,7 +1,9 @@ /* @preserve * arcgis-pdf-creator v0.0.1 -* Thu Apr 27 2023 17:20:32 GMT-0700 (Pacific Daylight Time) +* Tue Aug 15 2023 09:31:48 GMT-0700 (Pacific Daylight Time) */ +'use strict'; + /** @license * Copyright 2022 Esri * @@ -27,11 +29,11 @@ Subclass for the jsPDF library: PDFCreator_jsPDF */ //--------------------------------------------------------------------------------------------------------------------// -var EPageType; +exports.EPageType = void 0; (function (EPageType) { EPageType["A4"] = "A4"; EPageType["ANSI_A"] = "ANSI A"; -})(EPageType || (EPageType = {})); +})(exports.EPageType || (exports.EPageType = {})); //====================================================================================================================// class PDFCreator { // Properties are public for testing purposes @@ -60,7 +62,7 @@ class PDFCreator { } }; pageOptions = { - pageType: EPageType.ANSI_A, + pageType: exports.EPageType.ANSI_A, width: 8.5, height: 11, leftMargin: 0.25, @@ -107,15 +109,15 @@ class PDFCreator { */ static getPageSize(pageType) { if (typeof pageType === "string") { - pageType = pageType === EPageType.A4 ? EPageType.A4 : EPageType.ANSI_A; + pageType = pageType === exports.EPageType.A4 ? exports.EPageType.A4 : exports.EPageType.ANSI_A; } switch (pageType) { - case EPageType.A4: + case exports.EPageType.A4: return { width: 8.25, height: 11.708333 }; - case EPageType.ANSI_A: + case exports.EPageType.ANSI_A: return { width: 8.5, height: 11 @@ -322,7 +324,7 @@ class PDFCreator { */ async initialize(pageProperties = {}, dataPath = "", lang = "en", title = "", drawNeatline = false) { if (JSON.stringify(pageProperties) !== "{}") { - this.pageOptions.pageType = pageProperties.pageType === EPageType.A4 ? EPageType.A4 : EPageType.ANSI_A; + this.pageOptions.pageType = pageProperties.pageType === exports.EPageType.A4 ? exports.EPageType.A4 : exports.EPageType.ANSI_A; const pageSize = PDFCreator.getPageSize(this.pageOptions.pageType); this.pageOptions.width = pageSize.width; this.pageOptions.height = pageSize.height; @@ -405,4 +407,4 @@ class PDFCreator { } } -export { EPageType, PDFCreator }; +exports.PDFCreator = PDFCreator; diff --git a/src/assets/arcgis-pdf-creator/PDFCreator_jsPDF.js b/src/assets/arcgis-pdf-creator/PDFCreator_jsPDF.js index 38d4d0398..8af6f3d29 100644 --- a/src/assets/arcgis-pdf-creator/PDFCreator_jsPDF.js +++ b/src/assets/arcgis-pdf-creator/PDFCreator_jsPDF.js @@ -1,9 +1,11 @@ /* @preserve * arcgis-pdf-creator v0.0.1 -* Thu Apr 27 2023 17:20:32 GMT-0700 (Pacific Daylight Time) +* Tue Aug 15 2023 09:31:48 GMT-0700 (Pacific Daylight Time) */ -import { PDFCreator, EPageType } from './PDFCreator.js'; -import { jsPDF } from 'jspdf'; +'use strict'; + +var PDFCreator = require('./PDFCreator.js'); +var jspdf = require('jspdf'); /** @license * Copyright 2022 Esri @@ -21,7 +23,7 @@ import { jsPDF } from 'jspdf'; * limitations under the License. */ //--------------------------------------------------------------------------------------------------------------------// -class PDFCreator_jsPDF extends PDFCreator { +class PDFCreator_jsPDF extends PDFCreator.PDFCreator { jsDoc; constructor(jspdfToUse = null) { super(); @@ -160,8 +162,8 @@ class PDFCreator_jsPDF extends PDFCreator { await super.initialize(pageProperties, dataPath, lang, title, drawNeatline); // Start the PDF document if it hasn't already been started if (!this.jsDoc) { - this.jsDoc = new jsPDF({ - format: pageProperties.pageType === EPageType.A4 ? "a4" : "letter", + this.jsDoc = new jspdf.jsPDF({ + format: pageProperties.pageType === PDFCreator.EPageType.A4 ? "a4" : "letter", orientation: "portrait", putOnlyUsedFonts: true, unit: "in" @@ -245,4 +247,4 @@ class PDFCreator_jsPDF extends PDFCreator { } } -export { PDFCreator_jsPDF }; +exports.PDFCreator_jsPDF = PDFCreator_jsPDF; diff --git a/src/assets/arcgis-pdf-creator/PDFLabels.js b/src/assets/arcgis-pdf-creator/PDFLabels.js index b7965b888..70d38ced5 100644 --- a/src/assets/arcgis-pdf-creator/PDFLabels.js +++ b/src/assets/arcgis-pdf-creator/PDFLabels.js @@ -1,8 +1,10 @@ /* @preserve * arcgis-pdf-creator v0.0.1 -* Thu Apr 27 2023 17:20:32 GMT-0700 (Pacific Daylight Time) +* Tue Aug 15 2023 09:31:48 GMT-0700 (Pacific Daylight Time) */ -import { drawGridOfBoxes } from './grid.js'; +'use strict'; + +var grid = require('./grid.js'); /** @license * Copyright 2022 Esri @@ -114,7 +116,7 @@ class PDFLabels { drawLabelGuidelines(labelSpec, labelBoundaryLinesProperties = null) { // Label boundaries if (labelBoundaryLinesProperties !== null) { - drawGridOfBoxes(this.PDFCreator, { + grid.drawGridOfBoxes(this.PDFCreator, { // Margins in the page spec are absolute but we draw in within the margins x0: labelSpec.pageProperties.leftMargin - this.PDFCreator.pageOptions.leftMargin, y0: labelSpec.pageProperties.topMargin - this.PDFCreator.pageOptions.topMargin, @@ -307,4 +309,4 @@ class PDFLabels { } } -export { PDFLabels }; +exports.PDFLabels = PDFLabels; diff --git a/src/assets/arcgis-pdf-creator/arcgis-pdf-creator_commit.txt b/src/assets/arcgis-pdf-creator/arcgis-pdf-creator_commit.txt index a93d84104..b600bf322 100644 --- a/src/assets/arcgis-pdf-creator/arcgis-pdf-creator_commit.txt +++ b/src/assets/arcgis-pdf-creator/arcgis-pdf-creator_commit.txt @@ -1,4 +1,4 @@ -Built 04/27/2023 17:20:32.82 +Built 08/15/2023 9:31:48.47 develop commit eddae57aa75905aa3a9829ea7c580555b0b57278 Author: Mike Tschudi diff --git a/src/assets/arcgis-pdf-creator/grid.js b/src/assets/arcgis-pdf-creator/grid.js index 7ce076f56..c2f3dd4f9 100644 --- a/src/assets/arcgis-pdf-creator/grid.js +++ b/src/assets/arcgis-pdf-creator/grid.js @@ -1,7 +1,9 @@ /* @preserve * arcgis-pdf-creator v0.0.1 -* Thu Apr 27 2023 17:20:32 GMT-0700 (Pacific Daylight Time) +* Tue Aug 15 2023 09:31:48 GMT-0700 (Pacific Daylight Time) */ +'use strict'; + /** @license * Copyright 2022 Esri * @@ -161,4 +163,8 @@ function numberOfTicks(total, marginA, marginB, interval) { return 1 + Math.floor(((total - marginA - marginB) / interval) + 0.01); } -export { drawGridOfBoxes, drawHorizontallMeasurementTicks, drawMeasurementLines, drawVerticalMeasurementTicks, numberOfTicks }; +exports.drawGridOfBoxes = drawGridOfBoxes; +exports.drawHorizontallMeasurementTicks = drawHorizontallMeasurementTicks; +exports.drawMeasurementLines = drawMeasurementLines; +exports.drawVerticalMeasurementTicks = drawVerticalMeasurementTicks; +exports.numberOfTicks = numberOfTicks; From dd0d03bc13aab6e34d0b6745d1a7ba6ae400f705 Mon Sep 17 00:00:00 2001 From: Mike Tschudi Date: Tue, 15 Aug 2023 10:24:40 -0700 Subject: [PATCH 117/406] Remove obsolete test --- .../test/public-notification.e2e.ts | 121 ------------------ 1 file changed, 121 deletions(-) delete mode 100644 src/components/public-notification/test/public-notification.e2e.ts diff --git a/src/components/public-notification/test/public-notification.e2e.ts b/src/components/public-notification/test/public-notification.e2e.ts deleted file mode 100644 index 88e8a1f0d..000000000 --- a/src/components/public-notification/test/public-notification.e2e.ts +++ /dev/null @@ -1,121 +0,0 @@ -/** @license - * Copyright 2022 Esri - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import { newE2EPage } from '@stencil/core/testing'; -import * as locale from "../../../utils/locale";; -import * as translations from "../../../assets/t9n/public-notification/resources.json"; -import { geometryEngine } from "../../../utils/test/mocks/jsApi"; -import * as queryUtils from "../../../utils/queryUtils"; -import * as mapViewUtils from "../../../utils/mapViewUtils"; -import * as publicNotificationUtils from "../../../utils/publicNotificationUtils"; - -jest.setTimeout(50000); - -afterEach(() => { - jest.restoreAllMocks(); -}); - -let mapView; - -beforeEach(() => { - jest.spyOn(locale, "getLocaleComponentStrings").mockImplementation(() => [ - translations - ] as any); - - jest.spyOn(mapViewUtils, "highlightFeatures").mockImplementation(jest.fn()); - jest.spyOn(publicNotificationUtils, "getSelectionIds").mockImplementation(jest.fn()); - - jest.spyOn(console, 'warn').mockImplementation(() => {}); - - mapView = { - map: { - layers: { - add: () => {}, - getItemAt: () => { return -1 }, - findIndex: () => { return -1 } - } - } - } as unknown as any; -}); - -// This keeps timing out every so often...will look more -xdescribe('public-notification', () => { - it('renders', async () => { - jest.useFakeTimers(); - - const getSelectionSetQueryMock = jest.fn(); - jest.spyOn(queryUtils, "getSelectionSetQuery").mockImplementation(getSelectionSetQueryMock); - - const page = await newE2EPage(); - await page.setContent(''); - await page.waitForChanges(); - - const element = await page.find('public-notification'); - expect(element).toHaveClass('hydrated'); - - // These cause errors to be thrown - // element.setProperty("addresseeLayer", new LayerView() as unknown as any); - // element.setProperty("mapView", mapView); - // await page.waitForChanges(); - - const infoMessage = await element.find(".info-message"); - expect(infoMessage.innerHTML).toContain(translations.noNotifications); - - const notice = await page.find("calcite-notice"); - expect(notice.innerText).toContain(translations.selectLayerAndAdd); - - const addBtn = await element.find("calcite-button"); - expect(addBtn.innerText).toContain(translations.add); - - // TODO understand why this causes failures in the test - // this is really the only way to change pageType - //await addBtn.click(); - //await page.waitForChanges(); - }); - - it('renders with selection set', async () => { - jest.useFakeTimers(); - - const getSelectionSetQueryMock = jest.fn(); - jest.spyOn(queryUtils, "getSelectionSetQuery").mockImplementation(getSelectionSetQueryMock); - - const page = await newE2EPage(); - await page.setContent(''); - await page.waitForChanges(); - - const element = await page.find('public-notification'); - expect(element).toHaveClass('hydrated'); - - // These cause errors to be thrown - // element.setProperty("addresseeLayer", new LayerView() as unknown as any); - // element.setProperty("mapView", mapView); - //await page.waitForChanges(); - - const infoMessage = await element.find(".info-message"); - expect(infoMessage.innerHTML).toContain(translations.noNotifications); - - const notice = await page.find("calcite-notice"); - expect(notice.innerText).toContain(translations.selectLayerAndAdd); - - const addBtn = await element.find("calcite-button"); - expect(addBtn.innerText).toContain(translations.add); - - // TODO understand why this causes failures in the test - // this is really the only way to change pageType - //await addBtn.click(); - //await page.waitForChanges(); - }); -}); From d8b14af0eafb6650f53f4c8c518398b46bf5c365 Mon Sep 17 00:00:00 2001 From: Mike Tschudi Date: Tue, 15 Aug 2023 10:30:21 -0700 Subject: [PATCH 118/406] Update unit test to match function name change --- src/utils/test/downloadUtils.spec.tsx | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/utils/test/downloadUtils.spec.tsx b/src/utils/test/downloadUtils.spec.tsx index 15e69c46d..518abe0d7 100644 --- a/src/utils/test/downloadUtils.spec.tsx +++ b/src/utils/test/downloadUtils.spec.tsx @@ -102,13 +102,13 @@ describe("downloadUtils", () => { }); - describe("_createTitle", () => { + describe("_createFilename", () => { it("handles no selection set names", () => { const selectionSetNames: string[] = []; const expectedTitle = "download"; - const title = downloadUtils._createTitle(selectionSetNames); + const title = downloadUtils._createFilename(selectionSetNames); expect(title).toEqual(expectedTitle); }); @@ -116,15 +116,15 @@ describe("downloadUtils", () => { const selectionSetNames: string[] = ["fred"]; const expectedTitle = "fred"; - const title = downloadUtils._createTitle(selectionSetNames); + const title = downloadUtils._createFilename(selectionSetNames); expect(title).toEqual(expectedTitle); }); it("handles two selection set names", () => { const selectionSetNames: string[] = ["fred", "ginger"]; - const expectedTitle = "fred,ginger"; + const expectedTitle = "fred, ginger"; - const title = downloadUtils._createTitle(selectionSetNames); + const title = downloadUtils._createFilename(selectionSetNames); expect(title).toEqual(expectedTitle); }); From ac5f1519a4f21241aa994a08157cb8ea2ae4eba8 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Tue, 15 Aug 2023 12:46:58 -0600 Subject: [PATCH 119/406] optional scroll and zoom to current feature --- src/components.d.ts | 24 +++++++++++++++ src/components/info-card/info-card.tsx | 32 ++++++++++++++++++-- src/components/info-card/readme.md | 18 +++++++---- src/components/layer-table/layer-table.tsx | 35 ++++++++++++++++++++-- src/components/layer-table/readme.md | 7 +++-- 5 files changed, 102 insertions(+), 14 deletions(-) diff --git a/src/components.d.ts b/src/components.d.ts index 739fb7052..ece62f507 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -107,6 +107,10 @@ export namespace Components { * esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html */ "mapView": __esri.MapView; + /** + * boolean: When true the selected feature will zoomed to in the map and the row will be scrolled to within the table + */ + "zoomAndScrollToSelected": boolean; } interface JsonEditor { /** @@ -156,6 +160,10 @@ export namespace Components { * esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html */ "mapView": __esri.MapView; + /** + * boolean: When true the selected feature will zoomed to in the map and the row will be scrolled to within the table + */ + "zoomAndScrollToSelected": boolean; } interface LayoutManager { } @@ -670,6 +678,10 @@ export interface EditCardCustomEvent extends CustomEvent { detail: T; target: HTMLEditCardElement; } +export interface InfoCardCustomEvent extends CustomEvent { + detail: T; + target: HTMLInfoCardElement; +} export interface LayerTableCustomEvent extends CustomEvent { detail: T; target: HTMLLayerTableElement; @@ -1080,6 +1092,14 @@ declare namespace LocalJSX { * esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html */ "mapView"?: __esri.MapView; + /** + * Emitted on demand when the selected index changes + */ + "onSelectionChanged"?: (event: InfoCardCustomEvent<__esri.Graphic>) => void; + /** + * boolean: When true the selected feature will zoomed to in the map and the row will be scrolled to within the table + */ + "zoomAndScrollToSelected"?: boolean; } interface JsonEditor { /** @@ -1108,6 +1128,10 @@ declare namespace LocalJSX { * Emitted on demand when a layer is selected */ "onFeatureSelectionChange"?: (event: LayerTableCustomEvent) => void; + /** + * boolean: When true the selected feature will zoomed to in the map and the row will be scrolled to within the table + */ + "zoomAndScrollToSelected"?: boolean; } interface LayoutManager { /** diff --git a/src/components/info-card/info-card.tsx b/src/components/info-card/info-card.tsx index db16c840c..05582681c 100644 --- a/src/components/info-card/info-card.tsx +++ b/src/components/info-card/info-card.tsx @@ -14,7 +14,7 @@ * limitations under the License. */ -import { Component, Element, Host, h, Listen, Method, Prop, State, Watch } from "@stencil/core"; +import { Component, Element, Event, EventEmitter, Host, h, Listen, Method, Prop, State, Watch } from "@stencil/core"; import InfoCard_T9n from "../../assets/t9n/info-card/resources.json"; import { getLocaleComponentStrings } from "../../utils/locale"; import { loadModules } from "../../utils/loadModules"; @@ -54,6 +54,11 @@ export class InfoCard { */ @Prop() mapView: __esri.MapView; + /** + * boolean: When true the selected feature will zoomed to in the map and the row will be scrolled to within the table + */ + @Prop() zoomAndScrollToSelected: boolean; + //-------------------------------------------------------------------------- // // State (internal) @@ -99,6 +104,11 @@ export class InfoCard { */ protected _features: __esri.Features; + /** + * esri/core/reactiveUtils: https://developers.arcgis.com/javascript/latest/api-reference/esri-core-reactiveUtils.html + */ + protected reactiveUtils: typeof import("esri/core/reactiveUtils"); + //-------------------------------------------------------------------------- // // Watch handlers @@ -153,10 +163,16 @@ export class InfoCard { // //-------------------------------------------------------------------------- + /** + * Emitted on demand when the selected index changes + */ + @Event() selectionChanged: EventEmitter<__esri.Graphic>; + @Listen("closeEdit", { target: "window" }) async closeEdit(): Promise { this._editRecordOpen = false; } + //-------------------------------------------------------------------------- // // Functions (lifecycle) @@ -247,10 +263,12 @@ export class InfoCard { * @protected */ protected async _initModules(): Promise { - const [Features] = await loadModules([ - "esri/widgets/Features" + const [Features, reactiveUtils] = await loadModules([ + "esri/widgets/Features", + "esri/core/reactiveUtils" ]); this.Features = Features; + this.reactiveUtils = reactiveUtils; } /** @@ -269,6 +287,14 @@ export class InfoCard { heading: true } }); + + this.reactiveUtils.watch( + () => this._features.selectedFeatureIndex, + (i) => { + if (i > -1) { + this.selectionChanged.emit(this._features.selectedFeature); + } + }); } else { this._features.view = this.mapView; } diff --git a/src/components/info-card/readme.md b/src/components/info-card/readme.md index 8fbaa0d10..1eaa79a4e 100644 --- a/src/components/info-card/readme.md +++ b/src/components/info-card/readme.md @@ -7,11 +7,19 @@ ## Properties -| Property | Attribute | Description | Type | Default | -| ----------- | ------------ | --------------------------------------------------------------------------------------------------------- | ----------- | ----------- | -| `graphics` | -- | esri/Graphic: https://developers.arcgis.com/javascript/latest/api-reference/esri-Graphic.html | `Graphic[]` | `undefined` | -| `isLoading` | `is-loading` | boolean: when true a loading indicator will be shown | `boolean` | `false` | -| `mapView` | -- | esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html | `MapView` | `undefined` | +| Property | Attribute | Description | Type | Default | +| ------------------------- | ----------------------------- | ------------------------------------------------------------------------------------------------------------------ | ----------- | ----------- | +| `graphics` | -- | esri/Graphic: https://developers.arcgis.com/javascript/latest/api-reference/esri-Graphic.html | `Graphic[]` | `undefined` | +| `isLoading` | `is-loading` | boolean: when true a loading indicator will be shown | `boolean` | `false` | +| `mapView` | -- | esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html | `MapView` | `undefined` | +| `zoomAndScrollToSelected` | `zoom-and-scroll-to-selected` | boolean: When true the selected feature will zoomed to in the map and the row will be scrolled to within the table | `boolean` | `undefined` | + + +## Events + +| Event | Description | Type | +| ------------------ | ------------------------------------------------- | ---------------------- | +| `selectionChanged` | Emitted on demand when the selected index changes | `CustomEvent` | ## Methods diff --git a/src/components/layer-table/layer-table.tsx b/src/components/layer-table/layer-table.tsx index ce97db7eb..a4463bf72 100644 --- a/src/components/layer-table/layer-table.tsx +++ b/src/components/layer-table/layer-table.tsx @@ -14,11 +14,11 @@ * limitations under the License. */ -import { Component, Element, Event, EventEmitter, Host, h, Method, Prop, State, VNode, Watch } from "@stencil/core"; +import { Component, Element, Event, EventEmitter, Host, h, Listen, Method, Prop, State, VNode, Watch } from "@stencil/core"; import LayerTable_T9n from "../../assets/t9n/layer-table/resources.json"; import { loadModules } from "../../utils/loadModules"; import { getLocaleComponentStrings } from "../../utils/locale"; -import { getLayer, getMapLayerIds } from "../../utils/mapViewUtils"; +import { getLayer, getMapLayerIds, goToSelection } from "../../utils/mapViewUtils"; import { queryFeaturesByID, queryAllIds } from "../../utils/queryUtils"; import * as downloadUtils from "../../utils/downloadUtils"; import { IExportInfos, IMapClick } from "../../utils/interfaces"; @@ -47,6 +47,11 @@ export class LayerTable { */ @Prop() mapView: __esri.MapView; + /** + * boolean: When true the selected feature will zoomed to in the map and the row will be scrolled to within the table + */ + @Prop() zoomAndScrollToSelected = true; + //-------------------------------------------------------------------------- // // State (internal) @@ -223,6 +228,30 @@ export class LayerTable { */ @Event() featureSelectionChange: EventEmitter; + @Listen("selectionChanged", { target: "window" }) + async selectionChanged( + evt: CustomEvent + ): Promise { + const g: __esri.Graphic = evt.detail; + const oid = g.getObjectId(); + const i: number = this._table.viewModel.getObjectIdIndex(oid); + + this._table.scrollToIndex(i); + const layer = g.layer; + const layerViews = this.mapView.allLayerViews.toArray(); + let layerView: __esri.FeatureLayerView; + layerViews.some(lv => { + if (lv.layer.title === layer.title && lv.layer.type === 'feature') { + layerView = lv as __esri.FeatureLayerView; + return true; + } + }); + + if (layerView) { + await goToSelection([oid], layerView, this.mapView, true); + } + } + //-------------------------------------------------------------------------- // // Functions (lifecycle) @@ -475,7 +504,7 @@ export class LayerTable { layer: this._layer, view: this.mapView, //editingEnabled: this._editEnabled, - highlightOnRowSelectEnabled: true, + highlightEnabled: true, multiSortEnabled: false, visibleElements: { header: false, diff --git a/src/components/layer-table/readme.md b/src/components/layer-table/readme.md index c8f3b39ea..50c594656 100644 --- a/src/components/layer-table/readme.md +++ b/src/components/layer-table/readme.md @@ -7,9 +7,10 @@ ## Properties -| Property | Attribute | Description | Type | Default | -| --------- | --------- | ------------------------------------------------------------------------------------------------------ | --------- | ----------- | -| `mapView` | -- | esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html | `MapView` | `undefined` | +| Property | Attribute | Description | Type | Default | +| ------------------------- | ----------------------------- | ------------------------------------------------------------------------------------------------------------------ | --------- | ----------- | +| `mapView` | -- | esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html | `MapView` | `undefined` | +| `zoomAndScrollToSelected` | `zoom-and-scroll-to-selected` | boolean: When true the selected feature will zoomed to in the map and the row will be scrolled to within the table | `boolean` | `true` | ## Events From 5cc3f5a6eac68fa4b03f203a57a0e7b093c15f9d Mon Sep 17 00:00:00 2001 From: John Hauck Date: Tue, 15 Aug 2023 13:55:02 -0600 Subject: [PATCH 120/406] add doc and fix a few minor issues --- src/components.d.ts | 6 ++ .../crowdsource-manager.tsx | 63 ++++++++++++++++++ src/components/info-card/info-card.tsx | 31 ++++++--- src/components/layer-table/layer-table.tsx | 66 +++++++++++++------ .../layout-manager/layout-manager.tsx | 16 +++++ src/components/map-tools/map-tools.tsx | 17 +++++ src/components/map-tools/readme.md | 2 +- 7 files changed, 170 insertions(+), 31 deletions(-) diff --git a/src/components.d.ts b/src/components.d.ts index ece62f507..4e6f09fba 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -360,6 +360,9 @@ export namespace Components { "sketchPolygonSymbol": __esri.SimpleFillSymbol; } interface MapTools { + /** + * "horizontal" | "vertical": used to control the orientation of the tools + */ "layout": "horizontal" | "vertical"; /** * esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html @@ -1344,6 +1347,9 @@ declare namespace LocalJSX { "sketchPolygonSymbol"?: __esri.SimpleFillSymbol; } interface MapTools { + /** + * "horizontal" | "vertical": used to control the orientation of the tools + */ "layout"?: "horizontal" | "vertical"; /** * esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html diff --git a/src/components/crowdsource-manager/crowdsource-manager.tsx b/src/components/crowdsource-manager/crowdsource-manager.tsx index b200ba01a..194165c96 100644 --- a/src/components/crowdsource-manager/crowdsource-manager.tsx +++ b/src/components/crowdsource-manager/crowdsource-manager.tsx @@ -165,6 +165,15 @@ export class CrowdsourceManager { // //-------------------------------------------------------------------------- + /** + * Get the icon name to use for the divider icon based on the current layout + * + * @param layoutMode ELayoutMode the current layout mode + * @param panelOpen boolean indicates if all panels are open + * + * @returns the icon name + * @protected + */ protected _getDividerIcon( layoutMode: ELayoutMode, panelOpen: boolean @@ -190,6 +199,15 @@ export class CrowdsourceManager { return icon; } + /** + * Get the css selector names to use for the map based on the current layout + * + * @param layoutMode ELayoutMode the current layout mode + * @param panelOpen boolean indicates if all panels are open + * + * @returns the css selectors + * @protected + */ protected _getMapSizeClass( layoutMode: ELayoutMode, panelOpen: boolean @@ -210,6 +228,15 @@ export class CrowdsourceManager { return sizeClass; } + /** + * Get the css selector names to use for the table based on the current layout + * + * @param layoutMode ELayoutMode the current layout mode + * @param panelOpen boolean indicates if all panels are open + * + * @returns the css selectors + * @protected + */ protected _getTableSizeClass( layoutMode: ELayoutMode, panelOpen: boolean @@ -231,6 +258,16 @@ export class CrowdsourceManager { return sizeClass; } + /** + * Get the table and map nodes based for the current layout + * + * @param layoutMode ELayoutMode the current layout mode + * @param panelOpen boolean indicates if all panels are open + * @param hideMap when true no map is displayed + * + * @returns the parent node that contains the table and map + * @protected + */ protected _getBody( layoutMode: ELayoutMode, panelOpen: boolean, @@ -255,6 +292,16 @@ export class CrowdsourceManager { ); } + /** + * Get the map node based for the current layout + * + * @param layoutMode ELayoutMode the current layout mode + * @param panelOpen boolean indicates if all panels are open + * @param hideMap when true no map is displayed + * + * @returns the map node + * @protected + */ protected _getMap( layoutMode: ELayoutMode, panelOpen: boolean, @@ -282,6 +329,15 @@ export class CrowdsourceManager { ); } + /** + * Get the table node based for the current layout + * + * @param layoutMode ELayoutMode the current layout mode + * @param panelOpen boolean indicates if all panels are open + * + * @returns the table node + * @protected + */ protected _getTable( layoutMode: ELayoutMode, panelOpen: boolean @@ -324,6 +380,13 @@ export class CrowdsourceManager { ); } + /** + * Open/Close the appropriate panel. + * The panel that is toggled is dependent upon the layout mode and if using classic grid or not + * + * @returns void + * @protected + */ protected _toggleLayout(): void { this._panelOpen = !this._panelOpen; } diff --git a/src/components/info-card/info-card.tsx b/src/components/info-card/info-card.tsx index 05582681c..0858ad282 100644 --- a/src/components/info-card/info-card.tsx +++ b/src/components/info-card/info-card.tsx @@ -168,6 +168,11 @@ export class InfoCard { */ @Event() selectionChanged: EventEmitter<__esri.Graphic>; + /** + * Respond to and close the edit record display + * + * @returns a promise when the operation has completed + */ @Listen("closeEdit", { target: "window" }) async closeEdit(): Promise { this._editRecordOpen = false; @@ -274,6 +279,8 @@ export class InfoCard { /** * Init the Feature widget so we can display the popup content * + * @returns a promise when the operation has completed + * * @protected */ protected async _initFeaturesWidget(): Promise { @@ -288,13 +295,15 @@ export class InfoCard { } }); - this.reactiveUtils.watch( - () => this._features.selectedFeatureIndex, - (i) => { - if (i > -1) { - this.selectionChanged.emit(this._features.selectedFeature); - } - }); + if (this.zoomAndScrollToSelected) { + this.reactiveUtils.watch( + () => this._features.selectedFeatureIndex, + (i) => { + if (i > -1) { + this.selectionChanged.emit(this._features.selectedFeature); + } + }); + } } else { this._features.view = this.mapView; } @@ -310,14 +319,18 @@ export class InfoCard { } /** - * Close the edit record modal + * Close the edit record + * + * @returns void */ protected _editRecordClosed(): void { this._editRecordOpen = false; } /** - * Open the edit record modal + * Open the edit record + * + * @returns void */ protected _openEditRecord(): void { if (this._editEnabled) { diff --git a/src/components/layer-table/layer-table.tsx b/src/components/layer-table/layer-table.tsx index a4463bf72..ffe7f53db 100644 --- a/src/components/layer-table/layer-table.tsx +++ b/src/components/layer-table/layer-table.tsx @@ -228,27 +228,34 @@ export class LayerTable { */ @Event() featureSelectionChange: EventEmitter; + /** + * Scroll and zoom to the selected feature from the Features widget. + * + * @param evt CustomEvent the graphic for the current selection + */ @Listen("selectionChanged", { target: "window" }) async selectionChanged( evt: CustomEvent ): Promise { - const g: __esri.Graphic = evt.detail; - const oid = g.getObjectId(); - const i: number = this._table.viewModel.getObjectIdIndex(oid); - - this._table.scrollToIndex(i); - const layer = g.layer; - const layerViews = this.mapView.allLayerViews.toArray(); - let layerView: __esri.FeatureLayerView; - layerViews.some(lv => { - if (lv.layer.title === layer.title && lv.layer.type === 'feature') { - layerView = lv as __esri.FeatureLayerView; - return true; - } - }); + if (this.zoomAndScrollToSelected) { + const g: __esri.Graphic = evt.detail; + const oid = g.getObjectId(); + const i: number = this._table.viewModel.getObjectIdIndex(oid); + + this._table.scrollToIndex(i); + const layer = g.layer; + const layerViews = this.mapView.allLayerViews.toArray(); + let layerView: __esri.FeatureLayerView; + layerViews.some(lv => { + if (lv.layer.title === layer.title && lv.layer.type === 'feature') { + layerView = lv as __esri.FeatureLayerView; + return true; + } + }); - if (layerView) { - await goToSelection([oid], layerView, this.mapView, true); + if (layerView) { + await goToSelection([oid], layerView, this.mapView, true); + } } } @@ -347,6 +354,8 @@ export class LayerTable { /** * Gets a row of controls that can be used for various interactions with the table * + * @param slot string optional slot to display the control within + * * @returns The dom node that contains the controls */ protected _getTableControlRow( @@ -486,9 +495,13 @@ export class LayerTable { * Store a reference to the table node after it's first created * and initializes the FeatureTable * + * @param node HTMLDivElement The node representing the DOM element that will contain the widget. + * * @returns void */ - private onTableNodeCreate = (node: HTMLDivElement) => { + private onTableNodeCreate = ( + node: HTMLDivElement + ) => { this._tableNode = node; this._getTable(node); } @@ -496,9 +509,13 @@ export class LayerTable { /** * Initialize the FeatureTable * + * @param node HTMLDivElement The node representing the DOM element that will contain the widget. + * * @returns void */ - protected _getTable(node: HTMLDivElement): void { + protected _getTable( + node: HTMLDivElement + ): void { if (this._layer) { this._table = new this.FeatureTable({ layer: this._layer, @@ -548,6 +565,8 @@ export class LayerTable { /** * Handle map click events to keep table and map click selection in sync * + * @param evt IMapClick map click event details + * * @returns void */ protected async _mapClicked( @@ -585,8 +604,6 @@ export class LayerTable { /** * Select or deselect all rows * - * @param checked When true all rows will be selected - * * @returns void */ protected _selectAll(): void { @@ -620,6 +637,11 @@ export class LayerTable { this._table.highlightIds.removeAll(); } + /** + * Show the filter options + * + * @returns void + */ protected _filter(): void { alert("do whatever this button is supposed to do") } @@ -711,7 +733,7 @@ export class LayerTable { /** * Get the graphics for all selected indexes * - * @param indexes the indexes for the graphics to fetch + * @param ids the ids for the graphics to fetch * * @returns An array of selected graphics */ @@ -730,6 +752,8 @@ export class LayerTable { /** * Handles layer selection change to show new table * + * @param evt CustomEvent the id for the current layer + * * @returns a promise that will resolve when the operation is complete */ protected async _layerSelectionChanged( diff --git a/src/components/layout-manager/layout-manager.tsx b/src/components/layout-manager/layout-manager.tsx index 79dd12093..46ac13df6 100644 --- a/src/components/layout-manager/layout-manager.tsx +++ b/src/components/layout-manager/layout-manager.tsx @@ -141,6 +141,15 @@ export class LayoutManager { // //-------------------------------------------------------------------------- + /** + * Store and emit the current layout mode + * + * @param imgClass string the css class to use + * @param layoutMode ELayoutMode the associated layout mode for the current action + * @param tip string the value to display as the tooltip for the action + * + * @protected + */ protected _getAction( imgClass: string, layoutMode: ELayoutMode, @@ -166,6 +175,13 @@ export class LayoutManager { ); } + /** + * Store and emit the current layout mode + * + * @param layoutMode ELayoutMode the current layout mode + * + * @protected + */ protected _setLayoutMode( layoutMode: ELayoutMode ): void { diff --git a/src/components/map-tools/map-tools.tsx b/src/components/map-tools/map-tools.tsx index f95a7ce4c..4bd5d18f0 100644 --- a/src/components/map-tools/map-tools.tsx +++ b/src/components/map-tools/map-tools.tsx @@ -39,6 +39,9 @@ export class MapTools { // //-------------------------------------------------------------------------- + /** + * "horizontal" | "vertical": used to control the orientation of the tools + */ @Prop() layout: "horizontal" | "vertical" = "vertical"; /** @@ -204,6 +207,13 @@ export class MapTools { alert("zoom out") } + /** + * Show/Hide the basemap picker + * + * @returns void + * + * @protected + */ protected _toggleBasemapPicker(): void { this._showBasemapPicker = !this._showBasemapPicker; } @@ -219,6 +229,13 @@ export class MapTools { this.expandMap.emit(EExpandType.EXPAND); } + /** + * Show/Hide the map tools + * + * @returns void + * + * @protected + */ protected _toggleTools(): void { this._showTools = !this._showTools; } diff --git a/src/components/map-tools/readme.md b/src/components/map-tools/readme.md index 84a317422..92e361052 100644 --- a/src/components/map-tools/readme.md +++ b/src/components/map-tools/readme.md @@ -9,7 +9,7 @@ | Property | Attribute | Description | Type | Default | | --------- | --------- | ------------------------------------------------------------------------------------------------------ | ---------------------------- | ------------ | -| `layout` | `layout` | | `"horizontal" \| "vertical"` | `"vertical"` | +| `layout` | `layout` | "horizontal" \| "vertical": used to control the orientation of the tools | `"horizontal" \| "vertical"` | `"vertical"` | | `mapView` | -- | esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html | `MapView` | `undefined` | From 22fc3cf8488f6148ee51d5ac8652d2a374943f19 Mon Sep 17 00:00:00 2001 From: Mike Tschudi Date: Wed, 16 Aug 2023 08:40:36 -0700 Subject: [PATCH 121/406] Revert "Merge pull request #284 from Esri/fix-unit-testing" This reverts commit 1aa9a67f37465adf1584f0cfc831c5ad15f28e0f, reversing changes made to 8752a363b2bd2f0edb3e80bd2635ab480f1ad062. --- babel.config.js | 12 -- package.json | 19 +-- src/assets/arcgis-pdf-creator/PDFCreator.js | 20 ++- .../arcgis-pdf-creator/PDFCreator_jsPDF.js | 16 +-- src/assets/arcgis-pdf-creator/PDFLabels.js | 10 +- .../arcgis-pdf-creator_commit.txt | 2 +- src/assets/arcgis-pdf-creator/grid.js | 10 +- .../test/public-notification.e2e.ts | 121 ++++++++++++++++++ src/utils/test/downloadUtils.spec.tsx | 10 +- 9 files changed, 156 insertions(+), 64 deletions(-) delete mode 100644 babel.config.js create mode 100644 src/components/public-notification/test/public-notification.e2e.ts diff --git a/babel.config.js b/babel.config.js deleted file mode 100644 index b9e8c23ea..000000000 --- a/babel.config.js +++ /dev/null @@ -1,12 +0,0 @@ -module.exports = { - presets: [ - [ - "es2015", - { - "modules": false - } - ] - ], { - targets: { node: 'current' } - } -]}; diff --git a/package.json b/package.json index 34a26febf..952ab3ce6 100644 --- a/package.json +++ b/package.json @@ -30,22 +30,19 @@ "update-browserslist": "npx browserslist@latest --update-db" }, "devDependencies": { - "@babel/core": "^7.22.10", - "@babel/preset-env": "^7.22.10", - "@babel/preset-typescript": "^7.22.5", "@esri/eslint-plugin-calcite-components": "^0.2.2", "@esri/solution-common": "3.0.1", "@stencil/postcss": "^2.1.0", "@stencil/sass": "^2.0.0", "@stencil/store": "^2.0.1", "@types/arcgis-js-api": "^4.27.0", - "@types/jest": "^27.0.3", + "@types/jest": "^27.5.2", "@types/node": "^16.11.11", - "@types/puppeteer": "^7.0.4", + "@types/puppeteer": "^5.4.2", "@typescript-eslint/eslint-plugin": "^5.4.0", "@typescript-eslint/parser": "^5.39.0", "autoprefixer": "10.4.4", - "babel-jest": "^29.6.2", + "caniuse-lite": "^1.0.30001412", "dotenv": "^10.0.0", "eslint": "^8.11.0", "eslint-config-prettier": "8.3.0", @@ -56,19 +53,17 @@ "esri-loader": "3.4.0", "form-request-submit-polyfill": "^2.0.0", "gh-release": "^6.0.3", - "jest": "^27.0.3", - "jest-cli": "^27.4.5", + "jest": "^27.5.1", + "jest-cli": "^27.5.1", "pify": "^5.0.0", "prettier": "2.4.1", - "puppeteer": "^21.0.3", + "puppeteer": "^13.5.1", "react": "^18.2.0", "rimraf": "^3.0.2", "tailwindcss": "3.0.23", - "tough-cookie": "^4.1.3", "ts-node": "^10.9.1", "tslib": "^2.4.0", - "typescript": "^4.8.4", - "word-wrap": "^1.2.5" + "typescript": "^4.8.4" }, "dependencies": { "@esri/hub-common": "^12.37.1", diff --git a/src/assets/arcgis-pdf-creator/PDFCreator.js b/src/assets/arcgis-pdf-creator/PDFCreator.js index 991b33fbe..3cba08329 100644 --- a/src/assets/arcgis-pdf-creator/PDFCreator.js +++ b/src/assets/arcgis-pdf-creator/PDFCreator.js @@ -1,9 +1,7 @@ /* @preserve * arcgis-pdf-creator v0.0.1 -* Tue Aug 15 2023 09:31:48 GMT-0700 (Pacific Daylight Time) +* Thu Apr 27 2023 17:20:32 GMT-0700 (Pacific Daylight Time) */ -'use strict'; - /** @license * Copyright 2022 Esri * @@ -29,11 +27,11 @@ Subclass for the jsPDF library: PDFCreator_jsPDF */ //--------------------------------------------------------------------------------------------------------------------// -exports.EPageType = void 0; +var EPageType; (function (EPageType) { EPageType["A4"] = "A4"; EPageType["ANSI_A"] = "ANSI A"; -})(exports.EPageType || (exports.EPageType = {})); +})(EPageType || (EPageType = {})); //====================================================================================================================// class PDFCreator { // Properties are public for testing purposes @@ -62,7 +60,7 @@ class PDFCreator { } }; pageOptions = { - pageType: exports.EPageType.ANSI_A, + pageType: EPageType.ANSI_A, width: 8.5, height: 11, leftMargin: 0.25, @@ -109,15 +107,15 @@ class PDFCreator { */ static getPageSize(pageType) { if (typeof pageType === "string") { - pageType = pageType === exports.EPageType.A4 ? exports.EPageType.A4 : exports.EPageType.ANSI_A; + pageType = pageType === EPageType.A4 ? EPageType.A4 : EPageType.ANSI_A; } switch (pageType) { - case exports.EPageType.A4: + case EPageType.A4: return { width: 8.25, height: 11.708333 }; - case exports.EPageType.ANSI_A: + case EPageType.ANSI_A: return { width: 8.5, height: 11 @@ -324,7 +322,7 @@ class PDFCreator { */ async initialize(pageProperties = {}, dataPath = "", lang = "en", title = "", drawNeatline = false) { if (JSON.stringify(pageProperties) !== "{}") { - this.pageOptions.pageType = pageProperties.pageType === exports.EPageType.A4 ? exports.EPageType.A4 : exports.EPageType.ANSI_A; + this.pageOptions.pageType = pageProperties.pageType === EPageType.A4 ? EPageType.A4 : EPageType.ANSI_A; const pageSize = PDFCreator.getPageSize(this.pageOptions.pageType); this.pageOptions.width = pageSize.width; this.pageOptions.height = pageSize.height; @@ -407,4 +405,4 @@ class PDFCreator { } } -exports.PDFCreator = PDFCreator; +export { EPageType, PDFCreator }; diff --git a/src/assets/arcgis-pdf-creator/PDFCreator_jsPDF.js b/src/assets/arcgis-pdf-creator/PDFCreator_jsPDF.js index 8af6f3d29..38d4d0398 100644 --- a/src/assets/arcgis-pdf-creator/PDFCreator_jsPDF.js +++ b/src/assets/arcgis-pdf-creator/PDFCreator_jsPDF.js @@ -1,11 +1,9 @@ /* @preserve * arcgis-pdf-creator v0.0.1 -* Tue Aug 15 2023 09:31:48 GMT-0700 (Pacific Daylight Time) +* Thu Apr 27 2023 17:20:32 GMT-0700 (Pacific Daylight Time) */ -'use strict'; - -var PDFCreator = require('./PDFCreator.js'); -var jspdf = require('jspdf'); +import { PDFCreator, EPageType } from './PDFCreator.js'; +import { jsPDF } from 'jspdf'; /** @license * Copyright 2022 Esri @@ -23,7 +21,7 @@ var jspdf = require('jspdf'); * limitations under the License. */ //--------------------------------------------------------------------------------------------------------------------// -class PDFCreator_jsPDF extends PDFCreator.PDFCreator { +class PDFCreator_jsPDF extends PDFCreator { jsDoc; constructor(jspdfToUse = null) { super(); @@ -162,8 +160,8 @@ class PDFCreator_jsPDF extends PDFCreator.PDFCreator { await super.initialize(pageProperties, dataPath, lang, title, drawNeatline); // Start the PDF document if it hasn't already been started if (!this.jsDoc) { - this.jsDoc = new jspdf.jsPDF({ - format: pageProperties.pageType === PDFCreator.EPageType.A4 ? "a4" : "letter", + this.jsDoc = new jsPDF({ + format: pageProperties.pageType === EPageType.A4 ? "a4" : "letter", orientation: "portrait", putOnlyUsedFonts: true, unit: "in" @@ -247,4 +245,4 @@ class PDFCreator_jsPDF extends PDFCreator.PDFCreator { } } -exports.PDFCreator_jsPDF = PDFCreator_jsPDF; +export { PDFCreator_jsPDF }; diff --git a/src/assets/arcgis-pdf-creator/PDFLabels.js b/src/assets/arcgis-pdf-creator/PDFLabels.js index 70d38ced5..b7965b888 100644 --- a/src/assets/arcgis-pdf-creator/PDFLabels.js +++ b/src/assets/arcgis-pdf-creator/PDFLabels.js @@ -1,10 +1,8 @@ /* @preserve * arcgis-pdf-creator v0.0.1 -* Tue Aug 15 2023 09:31:48 GMT-0700 (Pacific Daylight Time) +* Thu Apr 27 2023 17:20:32 GMT-0700 (Pacific Daylight Time) */ -'use strict'; - -var grid = require('./grid.js'); +import { drawGridOfBoxes } from './grid.js'; /** @license * Copyright 2022 Esri @@ -116,7 +114,7 @@ class PDFLabels { drawLabelGuidelines(labelSpec, labelBoundaryLinesProperties = null) { // Label boundaries if (labelBoundaryLinesProperties !== null) { - grid.drawGridOfBoxes(this.PDFCreator, { + drawGridOfBoxes(this.PDFCreator, { // Margins in the page spec are absolute but we draw in within the margins x0: labelSpec.pageProperties.leftMargin - this.PDFCreator.pageOptions.leftMargin, y0: labelSpec.pageProperties.topMargin - this.PDFCreator.pageOptions.topMargin, @@ -309,4 +307,4 @@ class PDFLabels { } } -exports.PDFLabels = PDFLabels; +export { PDFLabels }; diff --git a/src/assets/arcgis-pdf-creator/arcgis-pdf-creator_commit.txt b/src/assets/arcgis-pdf-creator/arcgis-pdf-creator_commit.txt index b600bf322..a93d84104 100644 --- a/src/assets/arcgis-pdf-creator/arcgis-pdf-creator_commit.txt +++ b/src/assets/arcgis-pdf-creator/arcgis-pdf-creator_commit.txt @@ -1,4 +1,4 @@ -Built 08/15/2023 9:31:48.47 +Built 04/27/2023 17:20:32.82 develop commit eddae57aa75905aa3a9829ea7c580555b0b57278 Author: Mike Tschudi diff --git a/src/assets/arcgis-pdf-creator/grid.js b/src/assets/arcgis-pdf-creator/grid.js index c2f3dd4f9..7ce076f56 100644 --- a/src/assets/arcgis-pdf-creator/grid.js +++ b/src/assets/arcgis-pdf-creator/grid.js @@ -1,9 +1,7 @@ /* @preserve * arcgis-pdf-creator v0.0.1 -* Tue Aug 15 2023 09:31:48 GMT-0700 (Pacific Daylight Time) +* Thu Apr 27 2023 17:20:32 GMT-0700 (Pacific Daylight Time) */ -'use strict'; - /** @license * Copyright 2022 Esri * @@ -163,8 +161,4 @@ function numberOfTicks(total, marginA, marginB, interval) { return 1 + Math.floor(((total - marginA - marginB) / interval) + 0.01); } -exports.drawGridOfBoxes = drawGridOfBoxes; -exports.drawHorizontallMeasurementTicks = drawHorizontallMeasurementTicks; -exports.drawMeasurementLines = drawMeasurementLines; -exports.drawVerticalMeasurementTicks = drawVerticalMeasurementTicks; -exports.numberOfTicks = numberOfTicks; +export { drawGridOfBoxes, drawHorizontallMeasurementTicks, drawMeasurementLines, drawVerticalMeasurementTicks, numberOfTicks }; diff --git a/src/components/public-notification/test/public-notification.e2e.ts b/src/components/public-notification/test/public-notification.e2e.ts new file mode 100644 index 000000000..88e8a1f0d --- /dev/null +++ b/src/components/public-notification/test/public-notification.e2e.ts @@ -0,0 +1,121 @@ +/** @license + * Copyright 2022 Esri + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { newE2EPage } from '@stencil/core/testing'; +import * as locale from "../../../utils/locale";; +import * as translations from "../../../assets/t9n/public-notification/resources.json"; +import { geometryEngine } from "../../../utils/test/mocks/jsApi"; +import * as queryUtils from "../../../utils/queryUtils"; +import * as mapViewUtils from "../../../utils/mapViewUtils"; +import * as publicNotificationUtils from "../../../utils/publicNotificationUtils"; + +jest.setTimeout(50000); + +afterEach(() => { + jest.restoreAllMocks(); +}); + +let mapView; + +beforeEach(() => { + jest.spyOn(locale, "getLocaleComponentStrings").mockImplementation(() => [ + translations + ] as any); + + jest.spyOn(mapViewUtils, "highlightFeatures").mockImplementation(jest.fn()); + jest.spyOn(publicNotificationUtils, "getSelectionIds").mockImplementation(jest.fn()); + + jest.spyOn(console, 'warn').mockImplementation(() => {}); + + mapView = { + map: { + layers: { + add: () => {}, + getItemAt: () => { return -1 }, + findIndex: () => { return -1 } + } + } + } as unknown as any; +}); + +// This keeps timing out every so often...will look more +xdescribe('public-notification', () => { + it('renders', async () => { + jest.useFakeTimers(); + + const getSelectionSetQueryMock = jest.fn(); + jest.spyOn(queryUtils, "getSelectionSetQuery").mockImplementation(getSelectionSetQueryMock); + + const page = await newE2EPage(); + await page.setContent(''); + await page.waitForChanges(); + + const element = await page.find('public-notification'); + expect(element).toHaveClass('hydrated'); + + // These cause errors to be thrown + // element.setProperty("addresseeLayer", new LayerView() as unknown as any); + // element.setProperty("mapView", mapView); + // await page.waitForChanges(); + + const infoMessage = await element.find(".info-message"); + expect(infoMessage.innerHTML).toContain(translations.noNotifications); + + const notice = await page.find("calcite-notice"); + expect(notice.innerText).toContain(translations.selectLayerAndAdd); + + const addBtn = await element.find("calcite-button"); + expect(addBtn.innerText).toContain(translations.add); + + // TODO understand why this causes failures in the test + // this is really the only way to change pageType + //await addBtn.click(); + //await page.waitForChanges(); + }); + + it('renders with selection set', async () => { + jest.useFakeTimers(); + + const getSelectionSetQueryMock = jest.fn(); + jest.spyOn(queryUtils, "getSelectionSetQuery").mockImplementation(getSelectionSetQueryMock); + + const page = await newE2EPage(); + await page.setContent(''); + await page.waitForChanges(); + + const element = await page.find('public-notification'); + expect(element).toHaveClass('hydrated'); + + // These cause errors to be thrown + // element.setProperty("addresseeLayer", new LayerView() as unknown as any); + // element.setProperty("mapView", mapView); + //await page.waitForChanges(); + + const infoMessage = await element.find(".info-message"); + expect(infoMessage.innerHTML).toContain(translations.noNotifications); + + const notice = await page.find("calcite-notice"); + expect(notice.innerText).toContain(translations.selectLayerAndAdd); + + const addBtn = await element.find("calcite-button"); + expect(addBtn.innerText).toContain(translations.add); + + // TODO understand why this causes failures in the test + // this is really the only way to change pageType + //await addBtn.click(); + //await page.waitForChanges(); + }); +}); diff --git a/src/utils/test/downloadUtils.spec.tsx b/src/utils/test/downloadUtils.spec.tsx index 518abe0d7..15e69c46d 100644 --- a/src/utils/test/downloadUtils.spec.tsx +++ b/src/utils/test/downloadUtils.spec.tsx @@ -102,13 +102,13 @@ describe("downloadUtils", () => { }); - describe("_createFilename", () => { + describe("_createTitle", () => { it("handles no selection set names", () => { const selectionSetNames: string[] = []; const expectedTitle = "download"; - const title = downloadUtils._createFilename(selectionSetNames); + const title = downloadUtils._createTitle(selectionSetNames); expect(title).toEqual(expectedTitle); }); @@ -116,15 +116,15 @@ describe("downloadUtils", () => { const selectionSetNames: string[] = ["fred"]; const expectedTitle = "fred"; - const title = downloadUtils._createFilename(selectionSetNames); + const title = downloadUtils._createTitle(selectionSetNames); expect(title).toEqual(expectedTitle); }); it("handles two selection set names", () => { const selectionSetNames: string[] = ["fred", "ginger"]; - const expectedTitle = "fred, ginger"; + const expectedTitle = "fred,ginger"; - const title = downloadUtils._createFilename(selectionSetNames); + const title = downloadUtils._createTitle(selectionSetNames); expect(title).toEqual(expectedTitle); }); From 0d807ad9e5fbd30baecccf75ae20df571b406302 Mon Sep 17 00:00:00 2001 From: Mike Tschudi Date: Wed, 16 Aug 2023 08:55:30 -0700 Subject: [PATCH 122/406] Revert "Merge pull request #283 from Esri/add-related-records-to-PN" This reverts commit c9fc25aee8aaec5ee1383d7bf9cc0c7ffb7ad3f7, reversing changes made to 1aa9a67f37465adf1584f0cfc831c5ad15f28e0f. --- build.bat | 1 - package-lock.json | 19347 +++++++++++++++-------------------- package.json | 1 - src/utils/downloadUtils.ts | 243 +- 4 files changed, 8183 insertions(+), 11409 deletions(-) diff --git a/build.bat b/build.bat index a633260f7..7f71f16ae 100644 --- a/build.bat +++ b/build.bat @@ -3,7 +3,6 @@ rem Builds the repository call node --version call npm --version -call npx update-browserslist-db@latest call npm install call npm run build diff --git a/package-lock.json b/package-lock.json index 7ea1cb3a1..e07f7e1db 100644 --- a/package-lock.json +++ b/package-lock.json @@ -21,22 +21,18 @@ "pdf-lib": "^1.17.1" }, "devDependencies": { - "@babel/core": "^7.22.10", - "@babel/preset-env": "^7.22.10", - "@babel/preset-typescript": "^7.22.5", "@esri/eslint-plugin-calcite-components": "^0.2.2", "@esri/solution-common": "3.0.1", "@stencil/postcss": "^2.1.0", "@stencil/sass": "^2.0.0", "@stencil/store": "^2.0.1", "@types/arcgis-js-api": "^4.27.0", - "@types/jest": "^27.0.3", + "@types/jest": "^27.5.2", "@types/node": "^16.11.11", - "@types/puppeteer": "^7.0.4", + "@types/puppeteer": "^5.4.2", "@typescript-eslint/eslint-plugin": "^5.4.0", "@typescript-eslint/parser": "^5.39.0", "autoprefixer": "10.4.4", - "babel-jest": "^29.6.2", "dotenv": "^10.0.0", "eslint": "^8.11.0", "eslint-config-prettier": "8.3.0", @@ -47,19 +43,17 @@ "esri-loader": "3.4.0", "form-request-submit-polyfill": "^2.0.0", "gh-release": "^6.0.3", - "jest": "^27.0.3", - "jest-cli": "^27.4.5", + "jest": "^27.5.1", + "jest-cli": "^27.5.1", "pify": "^5.0.0", "prettier": "2.4.1", - "puppeteer": "^21.0.3", + "puppeteer": "^13.5.1", "react": "^18.2.0", "rimraf": "^3.0.2", "tailwindcss": "3.0.23", - "tough-cookie": "^4.1.3", "ts-node": "^10.9.1", "tslib": "^2.4.0", - "typescript": "^4.8.4", - "word-wrap": "^1.2.5" + "typescript": "^4.8.4" }, "peerDependencies": { "@esri/arcgis-rest-auth": "^3.4.2", @@ -280,30 +274,6 @@ "node": ">=6.0.0" } }, - "node_modules/@babel/helper-annotate-as-pure": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.22.5.tgz", - "integrity": "sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg==", - "dev": true, - "dependencies": { - "@babel/types": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-builder-binary-assignment-operator-visitor": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.22.10.tgz", - "integrity": "sha512-Av0qubwDQxC56DoUReVDeLfMEjYYSN1nZrTUrWkXd7hpU73ymRANkbuDm3yni9npkn+RXy9nNbEJZEzXr7xrfQ==", - "dev": true, - "dependencies": { - "@babel/types": "^7.22.10" - }, - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/@babel/helper-compilation-targets": { "version": "7.22.10", "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.10.tgz", @@ -329,97 +299,6 @@ "semver": "bin/semver.js" } }, - "node_modules/@babel/helper-create-class-features-plugin": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.22.10.tgz", - "integrity": "sha512-5IBb77txKYQPpOEdUdIhBx8VrZyDCQ+H82H0+5dX1TmuscP5vJKEE3cKurjtIw/vFwzbVH48VweE78kVDBrqjA==", - "dev": true, - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.22.5", - "@babel/helper-environment-visitor": "^7.22.5", - "@babel/helper-function-name": "^7.22.5", - "@babel/helper-member-expression-to-functions": "^7.22.5", - "@babel/helper-optimise-call-expression": "^7.22.5", - "@babel/helper-replace-supers": "^7.22.9", - "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.6", - "semver": "^6.3.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/helper-create-class-features-plugin/node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@babel/helper-create-regexp-features-plugin": { - "version": "7.22.9", - "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.22.9.tgz", - "integrity": "sha512-+svjVa/tFwsNSG4NEy1h85+HQ5imbT92Q5/bgtS7P0GTQlP8WuFdqsiABmQouhiFGyV66oGxZFpeYHza1rNsKw==", - "dev": true, - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.22.5", - "regexpu-core": "^5.3.1", - "semver": "^6.3.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/helper-create-regexp-features-plugin/node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@babel/helper-define-polyfill-provider": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.4.2.tgz", - "integrity": "sha512-k0qnnOqHn5dK9pZpfD5XXZ9SojAITdCKRn2Lp6rnDGzIbaP0rHyMPk/4wsSxVBVz4RfN0q6VpXWP2pDGIoQ7hw==", - "dev": true, - "dependencies": { - "@babel/helper-compilation-targets": "^7.22.6", - "@babel/helper-plugin-utils": "^7.22.5", - "debug": "^4.1.1", - "lodash.debounce": "^4.0.8", - "resolve": "^1.14.2" - }, - "peerDependencies": { - "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" - } - }, - "node_modules/@babel/helper-define-polyfill-provider/node_modules/resolve": { - "version": "1.22.4", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.4.tgz", - "integrity": "sha512-PXNdCiPqDqeUou+w1C2eTQbNfxKSuMxqTCuvlmmMsk1NWHL5fRrhY6Pl0qEYYc6+QqGClco1Qj8XnjPego4wfg==", - "dev": true, - "dependencies": { - "is-core-module": "^2.13.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/@babel/helper-environment-visitor": { "version": "7.22.5", "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.5.tgz", @@ -454,18 +333,6 @@ "node": ">=6.9.0" } }, - "node_modules/@babel/helper-member-expression-to-functions": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.22.5.tgz", - "integrity": "sha512-aBiH1NKMG0H2cGZqspNvsaBe6wNGjbJjuLy29aU+eDZjSbbN53BaxlpB02xm9v34pLTZ1nIQPFYn2qMZoa5BQQ==", - "dev": true, - "dependencies": { - "@babel/types": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/@babel/helper-module-imports": { "version": "7.22.5", "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.5.tgz", @@ -497,18 +364,6 @@ "@babel/core": "^7.0.0" } }, - "node_modules/@babel/helper-optimise-call-expression": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.22.5.tgz", - "integrity": "sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw==", - "dev": true, - "dependencies": { - "@babel/types": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/@babel/helper-plugin-utils": { "version": "7.22.5", "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.22.5.tgz", @@ -518,40 +373,6 @@ "node": ">=6.9.0" } }, - "node_modules/@babel/helper-remap-async-to-generator": { - "version": "7.22.9", - "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.22.9.tgz", - "integrity": "sha512-8WWC4oR4Px+tr+Fp0X3RHDVfINGpF3ad1HIbrc8A77epiR6eMMc6jsgozkzT2uDiOOdoS9cLIQ+XD2XvI2WSmQ==", - "dev": true, - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.22.5", - "@babel/helper-environment-visitor": "^7.22.5", - "@babel/helper-wrap-function": "^7.22.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/helper-replace-supers": { - "version": "7.22.9", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.22.9.tgz", - "integrity": "sha512-LJIKvvpgPOPUThdYqcX6IXRuIcTkcAub0IaDRGCZH0p5GPUp7PhRU9QVgFcDDd51BaPkk77ZjqFwh6DZTAEmGg==", - "dev": true, - "dependencies": { - "@babel/helper-environment-visitor": "^7.22.5", - "@babel/helper-member-expression-to-functions": "^7.22.5", - "@babel/helper-optimise-call-expression": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, "node_modules/@babel/helper-simple-access": { "version": "7.22.5", "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz", @@ -564,18 +385,6 @@ "node": ">=6.9.0" } }, - "node_modules/@babel/helper-skip-transparent-expression-wrappers": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.22.5.tgz", - "integrity": "sha512-tK14r66JZKiC43p8Ki33yLBVJKlQDFoA8GYN67lWCDCqoL6EMMSuM9b+Iff2jHaM/RRFYl7K+iiru7hbRqNx8Q==", - "dev": true, - "dependencies": { - "@babel/types": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/@babel/helper-split-export-declaration": { "version": "7.22.6", "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz", @@ -615,20 +424,6 @@ "node": ">=6.9.0" } }, - "node_modules/@babel/helper-wrap-function": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.22.10.tgz", - "integrity": "sha512-OnMhjWjuGYtdoO3FmsEFWvBStBAe2QOgwOLsLNDjN+aaiMD8InJk1/O3HSD8lkqTjCgg5YI34Tz15KNNA3p+nQ==", - "dev": true, - "dependencies": { - "@babel/helper-function-name": "^7.22.5", - "@babel/template": "^7.22.5", - "@babel/types": "^7.22.10" - }, - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/@babel/helpers": { "version": "7.22.10", "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.22.10.tgz", @@ -740,50 +535,6 @@ "node": ">=6.0.0" } }, - "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.22.5.tgz", - "integrity": "sha512-NP1M5Rf+u2Gw9qfSO4ihjcTGW5zXTi36ITLd4/EoAcEhIZ0yjMqmftDNl3QC19CX7olhrjpyU454g/2W7X0jvQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.22.5.tgz", - "integrity": "sha512-31Bb65aZaUwqCbWMnZPduIZxCBngHFlzyN6Dq6KAJjtx+lx6ohKHubc61OomYi7XwVD4Ol0XCVz4h+pYFR048g==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", - "@babel/plugin-transform-optional-chaining": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.13.0" - } - }, - "node_modules/@babel/plugin-proposal-private-property-in-object": { - "version": "7.21.0-placeholder-for-preset-env.2", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz", - "integrity": "sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==", - "dev": true, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, "node_modules/@babel/plugin-syntax-async-generators": { "version": "7.8.4", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", @@ -820,75 +571,6 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-syntax-class-static-block": { - "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, - "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-dynamic-import": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", - "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-export-namespace-from": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", - "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.3" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-import-assertions": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.22.5.tgz", - "integrity": "sha512-rdV97N7KqsRzeNGoWUOK6yUsWarLjE5Su/Snk9IYPU9CwkWHs4t+rTGOvffTR8XGkJMTAdLfO0xVnXm8wugIJg==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-import-attributes": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.22.5.tgz", - "integrity": "sha512-KwvoWDeNKPETmozyFE0P2rOLqh39EoQHNjqizrI5B8Vt0ZNS7M56s7dAiAqbYfiAYOuIzIh96z3iR2ktgu3tEg==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, "node_modules/@babel/plugin-syntax-import-meta": { "version": "7.10.4", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", @@ -913,21 +595,6 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-syntax-jsx": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.22.5.tgz", - "integrity": "sha512-gvyP4hZrgrs/wWMaocvxZ44Hw0b3W8Pe+cMxc8V1ULQ07oh8VNbIRaoD1LRZVTvD+0nieDKjfgKg89sD7rrKrg==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, "node_modules/@babel/plugin-syntax-logical-assignment-operators": { "version": "7.10.4", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", @@ -1000,21 +667,6 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-syntax-private-property-in-object": { - "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, - "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, "node_modules/@babel/plugin-syntax-top-level-await": { "version": "7.14.5", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", @@ -1045,159 +697,58 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-syntax-unicode-sets-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-unicode-sets-regex/-/plugin-syntax-unicode-sets-regex-7.18.6.tgz", - "integrity": "sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==", - "dev": true, - "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/plugin-transform-arrow-functions": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.22.5.tgz", - "integrity": "sha512-26lTNXoVRdAnsaDXPpvCNUq+OVWEVC6bx7Vvz9rC53F2bagUWW4u4ii2+h8Fejfh7RYqPxn+libeFBBck9muEw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-async-generator-functions": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.22.10.tgz", - "integrity": "sha512-eueE8lvKVzq5wIObKK/7dvoeKJ+xc6TvRn6aysIjS6pSCeLy7S/eVi7pEQknZqyqvzaNKdDtem8nUNTBgDVR2g==", - "dev": true, + "node_modules/@babel/runtime": { + "version": "7.20.13", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.20.13.tgz", + "integrity": "sha512-gt3PKXs0DBoL9xCvOIIZ2NEqAGZqHjAnmVbfQtB620V0uReIQutpel14KcneZuer7UioY8ALKZ7iocavvzTNFA==", "dependencies": { - "@babel/helper-environment-visitor": "^7.22.5", - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/helper-remap-async-to-generator": "^7.22.9", - "@babel/plugin-syntax-async-generators": "^7.8.4" + "regenerator-runtime": "^0.13.11" }, "engines": { "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-async-to-generator": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.22.5.tgz", - "integrity": "sha512-b1A8D8ZzE/VhNDoV1MSJTnpKkCG5bJo+19R4o4oy03zM7ws8yEMK755j61Dc3EyvdysbqH5BOOTquJ7ZX9C6vQ==", - "dev": true, - "dependencies": { - "@babel/helper-module-imports": "^7.22.5", - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/helper-remap-async-to-generator": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } + "node_modules/@babel/runtime/node_modules/regenerator-runtime": { + "version": "0.13.11", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", + "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==" }, - "node_modules/@babel/plugin-transform-block-scoped-functions": { + "node_modules/@babel/template": { "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.22.5.tgz", - "integrity": "sha512-tdXZ2UdknEKQWKJP1KMNmuF5Lx3MymtMN/pvA+p/VEkhK8jVcQ1fzSy8KM9qRYhAf2/lV33hoMPKI/xaI9sADA==", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.5.tgz", + "integrity": "sha512-X7yV7eiwAxdj9k94NEylvbVHLiVG1nvzCV2EAowhxLTwODV1jl9UzZ48leOC0sH7OnuHrIkllaBgneUykIcZaw==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5" + "@babel/code-frame": "^7.22.5", + "@babel/parser": "^7.22.5", + "@babel/types": "^7.22.5" }, "engines": { "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-block-scoping": { + "node_modules/@babel/traverse": { "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.22.10.tgz", - "integrity": "sha512-1+kVpGAOOI1Albt6Vse7c8pHzcZQdQKW+wJH+g8mCaszOdDVwRXa/slHPqIw+oJAJANTKDMuM2cBdV0Dg618Vg==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-class-properties": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.22.5.tgz", - "integrity": "sha512-nDkQ0NfkOhPTq8YCLiWNxp1+f9fCobEjCb0n8WdbNUBc4IB5V7P1QnX9IjpSoquKrXF5SKojHleVNs2vGeHCHQ==", - "dev": true, - "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.22.5", - "@babel/helper-plugin-utils": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-class-static-block": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.22.5.tgz", - "integrity": "sha512-SPToJ5eYZLxlnp1UzdARpOGeC2GbHvr9d/UV0EukuVx8atktg194oe+C5BqQ8jRTkgLRVOPYeXRSBg1IlMoVRA==", - "dev": true, - "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.22.5", - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/plugin-syntax-class-static-block": "^7.14.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.12.0" - } - }, - "node_modules/@babel/plugin-transform-classes": { - "version": "7.22.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.22.6.tgz", - "integrity": "sha512-58EgM6nuPNG6Py4Z3zSuu0xWu2VfodiMi72Jt5Kj2FECmaYk1RrTXA45z6KBFsu9tRgwQDwIiY4FXTt+YsSFAQ==", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.22.10.tgz", + "integrity": "sha512-Q/urqV4pRByiNNpb/f5OSv28ZlGJiFiiTh+GAHktbIrkPhPbl90+uW6SmpoLyZqutrg9AEaEf3Q/ZBRHBXgxig==", "dev": true, "dependencies": { - "@babel/helper-annotate-as-pure": "^7.22.5", - "@babel/helper-compilation-targets": "^7.22.6", + "@babel/code-frame": "^7.22.10", + "@babel/generator": "^7.22.10", "@babel/helper-environment-visitor": "^7.22.5", "@babel/helper-function-name": "^7.22.5", - "@babel/helper-optimise-call-expression": "^7.22.5", - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/helper-replace-supers": "^7.22.5", + "@babel/helper-hoist-variables": "^7.22.5", "@babel/helper-split-export-declaration": "^7.22.6", + "@babel/parser": "^7.22.10", + "@babel/types": "^7.22.10", + "debug": "^4.1.0", "globals": "^11.1.0" }, "engines": { "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-classes/node_modules/globals": { + "node_modules/@babel/traverse/node_modules/globals": { "version": "11.12.0", "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", @@ -1206,3619 +757,3339 @@ "node": ">=4" } }, - "node_modules/@babel/plugin-transform-computed-properties": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.22.5.tgz", - "integrity": "sha512-4GHWBgRf0krxPX+AaPtgBAlTgTeZmqDynokHOX7aqqAB4tHs3U2Y02zH6ETFdLZGcg9UQSD1WCmkVrE9ErHeOg==", + "node_modules/@babel/types": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.22.10.tgz", + "integrity": "sha512-obaoigiLrlDZ7TUQln/8m4mSqIW2QFeOrCQc9r+xsaHGNoplVNYlRVpsfE8Vj35GEm2ZH4ZhrNYogs/3fj85kg==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/template": "^7.22.5" + "@babel/helper-string-parser": "^7.22.5", + "@babel/helper-validator-identifier": "^7.22.5", + "to-fast-properties": "^2.0.0" }, "engines": { "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-destructuring": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.22.10.tgz", - "integrity": "sha512-dPJrL0VOyxqLM9sritNbMSGx/teueHF/htMKrPT7DNxccXxRDPYqlgPFFdr8u+F+qUZOkZoXue/6rL5O5GduEw==", + "node_modules/@bcoe/v8-coverage": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", + "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", + "dev": true + }, + "node_modules/@cspotcode/source-map-support": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", + "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5" + "@jridgewell/trace-mapping": "0.3.9" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">=12" } }, - "node_modules/@babel/plugin-transform-dotall-regex": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.22.5.tgz", - "integrity": "sha512-5/Yk9QxCQCl+sOIB1WelKnVRxTJDSAIxtJLL2/pqL14ZVlbH0fUQUZa/T5/UnQtBNgghR7mfB8ERBKyKPCi7Vw==", + "node_modules/@cspotcode/source-map-support/node_modules/@jridgewell/trace-mapping": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", + "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", "dev": true, "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.22.5", - "@babel/helper-plugin-utils": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@jridgewell/resolve-uri": "^3.0.3", + "@jridgewell/sourcemap-codec": "^1.4.10" } }, - "node_modules/@babel/plugin-transform-duplicate-keys": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.22.5.tgz", - "integrity": "sha512-dEnYD+9BBgld5VBXHnF/DbYGp3fqGMsyxKbtD1mDyIA7AkTSpKXFhCVuj/oQVOoALfBs77DudA0BE4d5mcpmqw==", + "node_modules/@eslint/eslintrc": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.4.1.tgz", + "integrity": "sha512-XXrH9Uarn0stsyldqDYq8r++mROmWRI1xKMXa640Bb//SY1+ECYX6VzT6Lcx5frD0V30XieqJ0oX9I2Xj5aoMA==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5" + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^9.4.0", + "globals": "^13.19.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" }, "engines": { - "node": ">=6.9.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "funding": { + "url": "https://opencollective.com/eslint" } }, - "node_modules/@babel/plugin-transform-dynamic-import": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.22.5.tgz", - "integrity": "sha512-0MC3ppTB1AMxd8fXjSrbPa7LT9hrImt+/fcj+Pg5YMD7UQyWp/02+JWpdnCymmsXwIx5Z+sYn1bwCn4ZJNvhqQ==", + "node_modules/@esri/arcgis-html-sanitizer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@esri/arcgis-html-sanitizer/-/arcgis-html-sanitizer-3.0.1.tgz", + "integrity": "sha512-cwZJwsYCJZwtBQU2AmaiIVFg5nZcVwInPYja1/OgC9iKYO+ytZRoc5h+0S9/ygbFNoS8Nd0RX9A85stLX/BgiA==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/plugin-syntax-dynamic-import": "^7.8.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "xss": "1.0.13" } }, - "node_modules/@babel/plugin-transform-exponentiation-operator": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.22.5.tgz", - "integrity": "sha512-vIpJFNM/FjZ4rh1myqIya9jXwrwwgFRHPjT3DkUA9ZLHuzox8jiXkOLvwm1H+PQIP3CqfC++WPKeuDi0Sjdj1g==", + "node_modules/@esri/arcgis-html-sanitizer/node_modules/xss": { + "version": "1.0.13", + "resolved": "https://registry.npmjs.org/xss/-/xss-1.0.13.tgz", + "integrity": "sha512-clu7dxTm1e8Mo5fz3n/oW3UCXBfV89xZ72jM8yzo1vR/pIS0w3sgB3XV2H8Vm6zfGnHL0FzvLJPJEBhd86/z4Q==", "dev": true, "dependencies": { - "@babel/helper-builder-binary-assignment-operator-visitor": "^7.22.5", - "@babel/helper-plugin-utils": "^7.22.5" + "commander": "^2.20.3", + "cssfilter": "0.0.10" }, - "engines": { - "node": ">=6.9.0" + "bin": { + "xss": "bin/xss" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "engines": { + "node": ">= 0.10.0" } }, - "node_modules/@babel/plugin-transform-export-namespace-from": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.22.5.tgz", - "integrity": "sha512-X4hhm7FRnPgd4nDA4b/5V280xCx6oL7Oob5+9qVS5C13Zq4bh1qq7LU0GgRU6b5dBWBvhGaXYVB4AcN6+ol6vg==", - "dev": true, + "node_modules/@esri/arcgis-rest-auth": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/@esri/arcgis-rest-auth/-/arcgis-rest-auth-3.5.0.tgz", + "integrity": "sha512-EeKfGxSLEI2KvGE2FvN+kYDR+a7RWLf+uNzsYDXWK/8wOYrtj+lh091NHxgHU/Fd+NDoAcHSoTSPCCEpgS0Gsg==", + "deprecated": "Development work on ArcGIS REST JS 3.x has ceased. This packages funtionality has moved to @esri/arcgis-rest-request at 4.x.x https://developers.arcgis.com/arcgis-rest-js/release-notes/upgrade-v3-v4/.", + "peer": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/plugin-syntax-export-namespace-from": "^7.8.3" - }, - "engines": { - "node": ">=6.9.0" + "@esri/arcgis-rest-types": "^3.5.0", + "tslib": "^1.13.0" }, "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@esri/arcgis-rest-request": "^3.0.0" } }, - "node_modules/@babel/plugin-transform-for-of": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.22.5.tgz", - "integrity": "sha512-3kxQjX1dU9uudwSshyLeEipvrLjBCVthCgeTp6CzE/9JYrlAIaeekVxRpCWsDDfYTfRZRoCeZatCQvwo+wvK8A==", - "dev": true, + "node_modules/@esri/arcgis-rest-auth/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "peer": true + }, + "node_modules/@esri/arcgis-rest-feature-layer": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/@esri/arcgis-rest-feature-layer/-/arcgis-rest-feature-layer-3.5.0.tgz", + "integrity": "sha512-+qjJnwPaYYNQqce20FF1iNvQ1BeFVue6ka8MnDu4BNhSeyw9OKD2WoI1pXfKVkSHpXTHeQIfyMVLC7/nFNja8g==", + "deprecated": "Development work on ArcGIS REST JS 3.x has ceased. This packages funtionality has moved to @esri/arcgis-rest-feature-service at 4.x.x https://developers.arcgis.com/arcgis-rest-js/release-notes/upgrade-v3-v4/.", + "peer": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" + "@esri/arcgis-rest-types": "^3.5.0", + "tslib": "^1.13.0" }, "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@esri/arcgis-rest-auth": "^3.0.0", + "@esri/arcgis-rest-request": "^3.0.0" } }, - "node_modules/@babel/plugin-transform-function-name": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.22.5.tgz", - "integrity": "sha512-UIzQNMS0p0HHiQm3oelztj+ECwFnj+ZRV4KnguvlsD2of1whUeM6o7wGNj6oLwcDoAXQ8gEqfgC24D+VdIcevg==", - "dev": true, + "node_modules/@esri/arcgis-rest-feature-layer/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "peer": true + }, + "node_modules/@esri/arcgis-rest-portal": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/@esri/arcgis-rest-portal/-/arcgis-rest-portal-3.5.0.tgz", + "integrity": "sha512-rrl/eUWOxdA5Y0MDYuvCopwNkf8loIfVIE4j1kGRTIz32n4uqdhb38sYKd2X4JK8QW67vyKq0SqxMSIYOHGXQg==", + "peer": true, "dependencies": { - "@babel/helper-compilation-targets": "^7.22.5", - "@babel/helper-function-name": "^7.22.5", - "@babel/helper-plugin-utils": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" + "@esri/arcgis-rest-types": "^3.5.0", + "tslib": "^1.13.0" }, "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@esri/arcgis-rest-auth": "^3.0.0", + "@esri/arcgis-rest-request": "^3.0.0" } }, - "node_modules/@babel/plugin-transform-json-strings": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.22.5.tgz", - "integrity": "sha512-DuCRB7fu8MyTLbEQd1ew3R85nx/88yMoqo2uPSjevMj3yoN7CDM8jkgrY0wmVxfJZyJ/B9fE1iq7EQppWQmR5A==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/plugin-syntax-json-strings": "^7.8.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } + "node_modules/@esri/arcgis-rest-portal/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "peer": true }, - "node_modules/@babel/plugin-transform-literals": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.22.5.tgz", - "integrity": "sha512-fTLj4D79M+mepcw3dgFBTIDYpbcB9Sm0bpm4ppXPaO+U+PKFFyV9MGRvS0gvGw62sd10kT5lRMKXAADb9pWy8g==", - "dev": true, + "node_modules/@esri/arcgis-rest-request": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/@esri/arcgis-rest-request/-/arcgis-rest-request-3.5.0.tgz", + "integrity": "sha512-FlI32b2EF/SlJeGe8GZtVqIlvHDxI18bgIB2vQINi9fAC07F1Jg3JMglDTDSl8CCYS/9cYp62n7lWPUwmvn/xQ==", + "peer": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "tslib": "^1.10.0" } }, - "node_modules/@babel/plugin-transform-logical-assignment-operators": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.22.5.tgz", - "integrity": "sha512-MQQOUW1KL8X0cDWfbwYP+TbVbZm16QmQXJQ+vndPtH/BoO0lOKpVoEDMI7+PskYxH+IiE0tS8xZye0qr1lGzSA==", - "dev": true, + "node_modules/@esri/arcgis-rest-request/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "peer": true + }, + "node_modules/@esri/arcgis-rest-service-admin": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/@esri/arcgis-rest-service-admin/-/arcgis-rest-service-admin-3.5.0.tgz", + "integrity": "sha512-gZzqb0I9kAyIIx2bBTU070QSEd5CV7C0vyd5IBWZOJqgkvA4Yf/LOPCMZ2s/+y2jF+4B1vRMGjpInovvfEk9Rw==", + "deprecated": "Development work on ArcGIS REST JS 3.x has ceased. This packages funtionality has moved to @esri/arcgis-rest-feature-service at 4.x.x https://developers.arcgis.com/arcgis-rest-js/release-notes/upgrade-v3-v4/.", + "peer": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" - }, - "engines": { - "node": ">=6.9.0" + "@esri/arcgis-rest-types": "^3.5.0", + "tslib": "^1.13.0" }, "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@esri/arcgis-rest-auth": "^3.0.0", + "@esri/arcgis-rest-portal": "^3.0.0", + "@esri/arcgis-rest-request": "^3.0.0" } }, - "node_modules/@babel/plugin-transform-member-expression-literals": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.22.5.tgz", - "integrity": "sha512-RZEdkNtzzYCFl9SE9ATaUMTj2hqMb4StarOJLrZRbqqU4HSBE7UlBw9WBWQiDzrJZJdUWiMTVDI6Gv/8DPvfew==", - "dev": true, + "node_modules/@esri/arcgis-rest-service-admin/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "peer": true + }, + "node_modules/@esri/arcgis-rest-types": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/@esri/arcgis-rest-types/-/arcgis-rest-types-3.6.0.tgz", + "integrity": "sha512-t6QWdVNmqB9OloYAvVWYNjvqlnrXs/m0nCRNwPGt3ZiAPXn5CpkpSn2UD6LPqGp6vPxKG81lbFQvwCw9az4qIg==", + "peer": true + }, + "node_modules/@esri/calcite-components": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/@esri/calcite-components/-/calcite-components-1.4.3.tgz", + "integrity": "sha512-3Yj0ZBOPBCIEp+YPJTM0C6cBmbxFXXsG9a6yv0DKxkaERj7te+hb3DQ1fVbG/lQsMLOdrQHiE70zdXSzMKvKCg==", + "peer": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@floating-ui/dom": "1.4.1", + "@stencil/core": "2.22.3", + "@types/color": "3.0.3", + "color": "4.2.3", + "composed-offset-position": "0.0.4", + "dayjs": "1.11.8", + "focus-trap": "7.4.3", + "form-request-submit-polyfill": "2.0.0", + "lodash-es": "4.17.21", + "sortablejs": "1.15.0" } }, - "node_modules/@babel/plugin-transform-modules-amd": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.22.5.tgz", - "integrity": "sha512-R+PTfLTcYEmb1+kK7FNkhQ1gP4KgjpSO6HfH9+f8/yfp2Nt3ggBjiVpRwmwTlfqZLafYKJACy36yDXlEmI9HjQ==", - "dev": true, + "node_modules/@esri/calcite-components/node_modules/focus-trap": { + "version": "7.4.3", + "resolved": "https://registry.npmjs.org/focus-trap/-/focus-trap-7.4.3.tgz", + "integrity": "sha512-BgSSbK4GPnS2VbtZ50VtOv1Sti6DIkj3+LkVjiWMNjLeAp1SH1UlLx3ULu/DCu4vq5R4/uvTm+zrvsMsuYmGLg==", + "peer": true, "dependencies": { - "@babel/helper-module-transforms": "^7.22.5", - "@babel/helper-plugin-utils": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "tabbable": "^6.1.2" } }, - "node_modules/@babel/plugin-transform-modules-commonjs": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.22.5.tgz", - "integrity": "sha512-B4pzOXj+ONRmuaQTg05b3y/4DuFz3WcCNAXPLb2Q0GT0TrGKGxNKV4jwsXts+StaM0LQczZbOpj8o1DLPDJIiA==", + "node_modules/@esri/eslint-plugin-calcite-components": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/@esri/eslint-plugin-calcite-components/-/eslint-plugin-calcite-components-0.2.2.tgz", + "integrity": "sha512-vmnJ8ogPdEiqq9iyRVJM/YhGMLqzbId35RqN3dS0mj4LWB3USIYMRbLqxtSHlxeWtOD4g6psdSj6eF4oWTXfuQ==", "dev": true, "dependencies": { - "@babel/helper-module-transforms": "^7.22.5", - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/helper-simple-access": "^7.22.5" + "stencil-eslint-core": "~0.3.1", + "tsutils": "~3.21.0" }, "engines": { - "node": ">=6.9.0" + "node": ">=8.9.0" }, "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@typescript-eslint/parser": "^5.8.0", + "eslint": "^8" } }, - "node_modules/@babel/plugin-transform-modules-systemjs": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.22.5.tgz", - "integrity": "sha512-emtEpoaTMsOs6Tzz+nbmcePl6AKVtS1yC4YNAeMun9U8YCsgadPNxnOPQ8GhHFB2qdx+LZu9LgoC0Lthuu05DQ==", - "dev": true, + "node_modules/@esri/hub-common": { + "version": "12.37.1", + "resolved": "https://registry.npmjs.org/@esri/hub-common/-/hub-common-12.37.1.tgz", + "integrity": "sha512-9gIxzIOo5dRFThk3A5Vkwzqxb1MMLZEKLAY2h0pYahu0hFP3nJpGLA65ODUduFiqnLrCOFUxgPd7qQkCthrSQA==", "dependencies": { - "@babel/helper-hoist-variables": "^7.22.5", - "@babel/helper-module-transforms": "^7.22.5", - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/helper-validator-identifier": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" + "abab": "^2.0.5", + "adlib": "^3.0.8", + "ajv": "^6.12.6", + "fast-xml-parser": "^3.21.0", + "json-schema-typed": "^7.0.3", + "jsonapi-typescript": "^0.1.3", + "tslib": "^1.13.0" }, "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@esri/arcgis-rest-auth": "^2.14.0 || 3", + "@esri/arcgis-rest-feature-layer": "^3.2.0", + "@esri/arcgis-rest-portal": "^2.18.0 || 3", + "@esri/arcgis-rest-request": "^2.14.0 || 3", + "@esri/arcgis-rest-types": "^2.15.0 || 3" } }, - "node_modules/@babel/plugin-transform-modules-umd": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.22.5.tgz", - "integrity": "sha512-+S6kzefN/E1vkSsKx8kmQuqeQsvCKCd1fraCM7zXm4SFoggI099Tr4G8U81+5gtMdUeMQ4ipdQffbKLX0/7dBQ==", - "dev": true, + "node_modules/@esri/hub-common/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@esri/hub-initiatives": { + "version": "12.4.1", + "resolved": "https://registry.npmjs.org/@esri/hub-initiatives/-/hub-initiatives-12.4.1.tgz", + "integrity": "sha512-RFYpFlS5D78cJThWhnl+qn93jeOMgoCa7U8KkET+2LW7L+Tg71ZvF2BnsPh0A5qo9fD4aQ/i6tBFxuuFqveJQw==", "dependencies": { - "@babel/helper-module-transforms": "^7.22.5", - "@babel/helper-plugin-utils": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" + "tslib": "^1.13.0" }, "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@esri/arcgis-rest-auth": "^2.13.0 || 3", + "@esri/arcgis-rest-portal": "^2.13.0 || 3", + "@esri/arcgis-rest-request": "^2.13.0 || 3", + "@esri/hub-common": "^12.4.0" } }, - "node_modules/@babel/plugin-transform-named-capturing-groups-regex": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.22.5.tgz", - "integrity": "sha512-YgLLKmS3aUBhHaxp5hi1WJTgOUb/NCuDHzGT9z9WTt3YG+CPRhJs6nprbStx6DnWM4dh6gt7SU3sZodbZ08adQ==", - "dev": true, + "node_modules/@esri/hub-initiatives/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@esri/hub-sites": { + "version": "12.6.0", + "resolved": "https://registry.npmjs.org/@esri/hub-sites/-/hub-sites-12.6.0.tgz", + "integrity": "sha512-qEdhNIQkkL+zwS0Z7hxNQhbqL/dYBBU3MSDktiXk41/6l23IznjcLdNmtqrDez/qEggbjL1Ed4MXQt1BLswRNQ==", "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.22.5", - "@babel/helper-plugin-utils": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" + "tslib": "^1.13.0" }, "peerDependencies": { - "@babel/core": "^7.0.0" + "@esri/arcgis-rest-auth": "^2.13.0 || 3", + "@esri/arcgis-rest-portal": "^2.19.0 || 3", + "@esri/arcgis-rest-request": "^2.13.0 || 3", + "@esri/hub-common": "^12.4.0", + "@esri/hub-initiatives": "^12.4.0", + "@esri/hub-teams": "^12.4.0" } }, - "node_modules/@babel/plugin-transform-new-target": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.22.5.tgz", - "integrity": "sha512-AsF7K0Fx/cNKVyk3a+DW0JLo+Ua598/NxMRvxDnkpCIGFh43+h/v2xyhRUYf6oD8gE4QtL83C7zZVghMjHd+iw==", - "dev": true, + "node_modules/@esri/hub-sites/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@esri/hub-teams": { + "version": "12.4.1", + "resolved": "https://registry.npmjs.org/@esri/hub-teams/-/hub-teams-12.4.1.tgz", + "integrity": "sha512-olnDzWCPueH5olrlmXGqJRaiLhjBLrX+H4AbxTGmM267Wb5GOEuVdiQqOf3POOAvA8OXCIowFDMwuqZzMS0jaw==", "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" + "tslib": "^1.13.0" }, "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@esri/arcgis-rest-auth": "^2.13.0 || 3", + "@esri/arcgis-rest-portal": "^2.15.0 || 3", + "@esri/arcgis-rest-request": "^2.13.0 || 3", + "@esri/arcgis-rest-types": "^2.13.0 || 3", + "@esri/hub-common": "^12.4.0" } }, - "node_modules/@babel/plugin-transform-nullish-coalescing-operator": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.22.5.tgz", - "integrity": "sha512-6CF8g6z1dNYZ/VXok5uYkkBBICHZPiGEl7oDnAx2Mt1hlHVHOSIKWJaXHjQJA5VB43KZnXZDIexMchY4y2PGdA==", + "node_modules/@esri/hub-teams/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@esri/solution-common": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@esri/solution-common/-/solution-common-3.0.1.tgz", + "integrity": "sha512-5x4kNcfIsuWzpxqZahCm3HkldL3KaNS7LMrH8AwVooqPpZIgIToP6swrO9frl+fiC5YBH21AcM+BAcVnc9KmvA==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" - }, - "engines": { - "node": ">=6.9.0" + "@esri/arcgis-html-sanitizer": "3.0.1", + "@esri/hub-common": "^12.37.1", + "@esri/hub-initiatives": "^12.4.1", + "@esri/hub-sites": "^12.6.0", + "@esri/hub-teams": "^12.4.1", + "@types/lodash.isplainobject": "^4.0.7", + "adlib": "3.0.7", + "jszip": "3.10.1", + "lodash.isplainobject": "^4.0.6", + "tslib": "1.14.1", + "xss": "^1.0.14" }, "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@esri/arcgis-rest-auth": "~3.5.0", + "@esri/arcgis-rest-feature-layer": "~3.5.0", + "@esri/arcgis-rest-portal": "~3.5.0", + "@esri/arcgis-rest-request": "~3.5.0", + "@esri/arcgis-rest-service-admin": "~3.5.0" } }, - "node_modules/@babel/plugin-transform-numeric-separator": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.22.5.tgz", - "integrity": "sha512-NbslED1/6M+sXiwwtcAB/nieypGw02Ejf4KtDeMkCEpP6gWFMX1wI9WKYua+4oBneCCEmulOkRpwywypVZzs/g==", + "node_modules/@esri/solution-common/node_modules/adlib": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/adlib/-/adlib-3.0.7.tgz", + "integrity": "sha512-74ylfcwB7+fu+jqN6e3mBJrAWhWHI5l8icUKh8IhNhmezetLRaMBrxQKJZ+GgyrNxyW+0M12eUirY1RJ5HhWKg==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/plugin-syntax-numeric-separator": "^7.10.4" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "esm": "^3.2.25" } }, - "node_modules/@babel/plugin-transform-object-rest-spread": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.22.5.tgz", - "integrity": "sha512-Kk3lyDmEslH9DnvCDA1s1kkd3YWQITiBOHngOtDL9Pt6BZjzqb6hiOlb8VfjiiQJ2unmegBqZu0rx5RxJb5vmQ==", - "dev": true, - "dependencies": { - "@babel/compat-data": "^7.22.5", - "@babel/helper-compilation-targets": "^7.22.5", - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-transform-parameters": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } + "node_modules/@esri/solution-common/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true }, - "node_modules/@babel/plugin-transform-object-super": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.22.5.tgz", - "integrity": "sha512-klXqyaT9trSjIUrcsYIfETAzmOEZL3cBYqOYLJxBHfMFFggmXOv+NYSX/Jbs9mzMVESw/WycLFPRx8ba/b2Ipw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/helper-replace-supers": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } + "node_modules/@floating-ui/core": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.3.1.tgz", + "integrity": "sha512-Bu+AMaXNjrpjh41znzHqaz3r2Nr8hHuHZT6V2LBKMhyMl0FgKA62PNYbqnfgmzOhoWZj70Zecisbo4H1rotP5g==", + "peer": true }, - "node_modules/@babel/plugin-transform-optional-catch-binding": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.22.5.tgz", - "integrity": "sha512-pH8orJahy+hzZje5b8e2QIlBWQvGpelS76C63Z+jhZKsmzfNaPQ+LaW6dcJ9bxTpo1mtXbgHwy765Ro3jftmUg==", - "dev": true, + "node_modules/@floating-ui/dom": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.4.1.tgz", + "integrity": "sha512-loCXUOLzIC3jp50RFOKXZ/kQjjz26ryr/23M+FWG9jrmAv8lRf3DUfC2AiVZ3+K316GOhB08CR+Povwz8e9mDw==", + "peer": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@floating-ui/core": "^1.3.1" } }, - "node_modules/@babel/plugin-transform-optional-chaining": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.22.10.tgz", - "integrity": "sha512-MMkQqZAZ+MGj+jGTG3OTuhKeBpNcO+0oCEbrGNEaOmiEn+1MzRyQlYsruGiU8RTK3zV6XwrVJTmwiDOyYK6J9g==", + "node_modules/@humanwhocodes/config-array": { + "version": "0.11.8", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.8.tgz", + "integrity": "sha512-UybHIJzJnR5Qc/MsD9Kr+RpO2h+/P1GhOwdiLPXK5TWk5sgTdu88bTD9UP+CKbPPh5Rni1u0GjAdYQLemG8g+g==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", - "@babel/plugin-syntax-optional-chaining": "^7.8.3" + "@humanwhocodes/object-schema": "^1.2.1", + "debug": "^4.1.1", + "minimatch": "^3.0.5" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">=10.10.0" } }, - "node_modules/@babel/plugin-transform-parameters": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.22.5.tgz", - "integrity": "sha512-AVkFUBurORBREOmHRKo06FjHYgjrabpdqRSwq6+C7R5iTCZOsM4QbcB27St0a4U6fffyAOqh3s/qEfybAhfivg==", + "node_modules/@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5" - }, "engines": { - "node": ">=6.9.0" + "node": ">=12.22" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" } }, - "node_modules/@babel/plugin-transform-private-methods": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.22.5.tgz", - "integrity": "sha512-PPjh4gyrQnGe97JTalgRGMuU4icsZFnWkzicB/fUtzlKUqvsWBKEpPPfr5a2JiyirZkHxnAqkQMO5Z5B2kK3fA==", + "node_modules/@humanwhocodes/object-schema": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", + "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", + "dev": true + }, + "node_modules/@istanbuljs/load-nyc-config": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", + "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", "dev": true, "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.22.5", - "@babel/helper-plugin-utils": "^7.22.5" + "camelcase": "^5.3.1", + "find-up": "^4.1.0", + "get-package-type": "^0.1.0", + "js-yaml": "^3.13.1", + "resolve-from": "^5.0.0" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">=8" } }, - "node_modules/@babel/plugin-transform-private-property-in-object": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.22.5.tgz", - "integrity": "sha512-/9xnaTTJcVoBtSSmrVyhtSvO3kbqS2ODoh2juEU72c3aYonNF0OMGiaz2gjukyKM2wBBYJP38S4JiE0Wfb5VMQ==", + "node_modules/@istanbuljs/load-nyc-config/node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", "dev": true, "dependencies": { - "@babel/helper-annotate-as-pure": "^7.22.5", - "@babel/helper-create-class-features-plugin": "^7.22.5", - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/plugin-syntax-private-property-in-object": "^7.14.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "sprintf-js": "~1.0.2" } }, - "node_modules/@babel/plugin-transform-property-literals": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.22.5.tgz", - "integrity": "sha512-TiOArgddK3mK/x1Qwf5hay2pxI6wCZnvQqrFSqbtg1GLl2JcNMitVH/YnqjP+M31pLUeTfzY1HAXFDnUBV30rQ==", + "node_modules/@istanbuljs/load-nyc-config/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5" + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">=8" } }, - "node_modules/@babel/plugin-transform-regenerator": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.22.10.tgz", - "integrity": "sha512-F28b1mDt8KcT5bUyJc/U9nwzw6cV+UmTeRlXYIl2TNqMMJif0Jeey9/RQ3C4NOd2zp0/TRsDns9ttj2L523rsw==", + "node_modules/@istanbuljs/load-nyc-config/node_modules/js-yaml": { + "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, "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5", - "regenerator-transform": "^0.15.2" - }, - "engines": { - "node": ">=6.9.0" + "argparse": "^1.0.7", + "esprima": "^4.0.0" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "bin": { + "js-yaml": "bin/js-yaml.js" } }, - "node_modules/@babel/plugin-transform-reserved-words": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.22.5.tgz", - "integrity": "sha512-DTtGKFRQUDm8svigJzZHzb/2xatPc6TzNvAIJ5GqOKDsGFYgAskjRulbR/vGsPKq3OPqtexnz327qYpP57RFyA==", + "node_modules/@istanbuljs/load-nyc-config/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5" + "p-locate": "^4.1.0" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">=8" } }, - "node_modules/@babel/plugin-transform-shorthand-properties": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.22.5.tgz", - "integrity": "sha512-vM4fq9IXHscXVKzDv5itkO1X52SmdFBFcMIBZ2FRn2nqVYqw6dBexUgMvAjHW+KXpPPViD/Yo3GrDEBaRC0QYA==", + "node_modules/@istanbuljs/load-nyc-config/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5" + "p-try": "^2.0.0" }, "engines": { - "node": ">=6.9.0" + "node": ">=6" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@babel/plugin-transform-spread": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.22.5.tgz", - "integrity": "sha512-5ZzDQIGyvN4w8+dMmpohL6MBo+l2G7tfC/O2Dg7/hjpgeWvUx8FzfeOKxGog9IimPa4YekaQ9PlDqTLOljkcxg==", + "node_modules/@istanbuljs/load-nyc-config/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5" + "p-limit": "^2.2.0" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">=8" } }, - "node_modules/@babel/plugin-transform-sticky-regex": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.22.5.tgz", - "integrity": "sha512-zf7LuNpHG0iEeiyCNwX4j3gDg1jgt1k3ZdXBKbZSoA3BbGQGvMiSvfbZRR3Dr3aeJe3ooWFZxOOG3IRStYp2Bw==", + "node_modules/@istanbuljs/load-nyc-config/node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5" - }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">=8" } }, - "node_modules/@babel/plugin-transform-template-literals": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.22.5.tgz", - "integrity": "sha512-5ciOehRNf+EyUeewo8NkbQiUs4d6ZxiHo6BcBcnFlgiJfu16q0bQUw9Jvo0b0gBKFG1SMhDSjeKXSYuJLeFSMA==", + "node_modules/@istanbuljs/schema": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", + "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5" - }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">=8" } }, - "node_modules/@babel/plugin-transform-typeof-symbol": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.22.5.tgz", - "integrity": "sha512-bYkI5lMzL4kPii4HHEEChkD0rkc+nvnlR6+o/qdqR6zrm0Sv/nodmyLhlq2DO0YKLUNd2VePmPRjJXSBh9OIdA==", + "node_modules/@jest/console": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-27.5.1.tgz", + "integrity": "sha512-kZ/tNpS3NXn0mlXXXPNuDZnb4c0oZ20r4K5eemM2k30ZC3G0T02nXUvyhf5YdbXWHPEJLc9qGLxEZ216MdL+Zg==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5" + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "jest-message-util": "^27.5.1", + "jest-util": "^27.5.1", + "slash": "^3.0.0" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/@babel/plugin-transform-typescript": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.22.10.tgz", - "integrity": "sha512-7++c8I/ymsDo4QQBAgbraXLzIM6jmfao11KgIBEYZRReWzNWH9NtNgJcyrZiXsOPh523FQm6LfpLyy/U5fn46A==", + "node_modules/@jest/console/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", "dev": true, "dependencies": { - "@babel/helper-annotate-as-pure": "^7.22.5", - "@babel/helper-create-class-features-plugin": "^7.22.10", - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/plugin-syntax-typescript": "^7.22.5" + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/@babel/plugin-transform-unicode-escapes": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.22.10.tgz", - "integrity": "sha512-lRfaRKGZCBqDlRU3UIFovdp9c9mEvlylmpod0/OatICsSfuQ9YFthRo1tpTkGsklEefZdqlEFdY4A2dwTb6ohg==", + "node_modules/@jest/console/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@types/yargs-parser": "*" } }, - "node_modules/@babel/plugin-transform-unicode-property-regex": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.22.5.tgz", - "integrity": "sha512-HCCIb+CbJIAE6sXn5CjFQXMwkCClcOfPCzTlilJ8cUatfzwHlWQkbtV0zD338u9dZskwvuOYTuuaMaA8J5EI5A==", + "node_modules/@jest/console/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", "dev": true, "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.22.5", - "@babel/helper-plugin-utils": "^7.22.5" + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/@babel/plugin-transform-unicode-regex": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.22.5.tgz", - "integrity": "sha512-028laaOKptN5vHJf9/Arr/HiJekMd41hOEZYvNsrsXqJ7YPYuX2bQxh31fkZzGmq3YqHRJzYFFAVYvKfMPKqyg==", + "node_modules/@jest/core": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/core/-/core-27.5.1.tgz", + "integrity": "sha512-AK6/UTrvQD0Cd24NSqmIA6rKsu0tKIxfiCducZvqxYdmMisOYAsdItspT+fQDQYARPf8XgjAFZi0ogW2agH5nQ==", "dev": true, "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.22.5", - "@babel/helper-plugin-utils": "^7.22.5" - }, + "@jest/console": "^27.5.1", + "@jest/reporters": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "emittery": "^0.8.1", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "jest-changed-files": "^27.5.1", + "jest-config": "^27.5.1", + "jest-haste-map": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-resolve-dependencies": "^27.5.1", + "jest-runner": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "jest-watcher": "^27.5.1", + "micromatch": "^4.0.4", + "rimraf": "^3.0.0", + "slash": "^3.0.0", + "strip-ansi": "^6.0.0" + }, "engines": { - "node": ">=6.9.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" }, "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } } }, - "node_modules/@babel/plugin-transform-unicode-sets-regex": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.22.5.tgz", - "integrity": "sha512-lhMfi4FC15j13eKrh3DnYHjpGj6UKQHtNKTbtc1igvAhRy4+kLhV07OpLcsN0VgDEw/MjAvJO4BdMJsHwMhzCg==", + "node_modules/@jest/core/node_modules/@jest/transform": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz", + "integrity": "sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==", "dev": true, "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.22.5", - "@babel/helper-plugin-utils": "^7.22.5" + "@babel/core": "^7.1.0", + "@jest/types": "^27.5.1", + "babel-plugin-istanbul": "^6.1.1", + "chalk": "^4.0.0", + "convert-source-map": "^1.4.0", + "fast-json-stable-stringify": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-util": "^27.5.1", + "micromatch": "^4.0.4", + "pirates": "^4.0.4", + "slash": "^3.0.0", + "source-map": "^0.6.1", + "write-file-atomic": "^3.0.0" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/@babel/preset-env": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.22.10.tgz", - "integrity": "sha512-riHpLb1drNkpLlocmSyEg4oYJIQFeXAK/d7rI6mbD0XsvoTOOweXDmQPG/ErxsEhWk3rl3Q/3F6RFQlVFS8m0A==", + "node_modules/@jest/core/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", "dev": true, "dependencies": { - "@babel/compat-data": "^7.22.9", - "@babel/helper-compilation-targets": "^7.22.10", - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/helper-validator-option": "^7.22.5", - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.22.5", - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.22.5", - "@babel/plugin-proposal-private-property-in-object": "7.21.0-placeholder-for-preset-env.2", - "@babel/plugin-syntax-async-generators": "^7.8.4", - "@babel/plugin-syntax-class-properties": "^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-import-assertions": "^7.22.5", - "@babel/plugin-syntax-import-attributes": "^7.22.5", - "@babel/plugin-syntax-import-meta": "^7.10.4", - "@babel/plugin-syntax-json-strings": "^7.8.3", - "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", - "@babel/plugin-syntax-numeric-separator": "^7.10.4", - "@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.5", - "@babel/plugin-syntax-top-level-await": "^7.14.5", - "@babel/plugin-syntax-unicode-sets-regex": "^7.18.6", - "@babel/plugin-transform-arrow-functions": "^7.22.5", - "@babel/plugin-transform-async-generator-functions": "^7.22.10", - "@babel/plugin-transform-async-to-generator": "^7.22.5", - "@babel/plugin-transform-block-scoped-functions": "^7.22.5", - "@babel/plugin-transform-block-scoping": "^7.22.10", - "@babel/plugin-transform-class-properties": "^7.22.5", - "@babel/plugin-transform-class-static-block": "^7.22.5", - "@babel/plugin-transform-classes": "^7.22.6", - "@babel/plugin-transform-computed-properties": "^7.22.5", - "@babel/plugin-transform-destructuring": "^7.22.10", - "@babel/plugin-transform-dotall-regex": "^7.22.5", - "@babel/plugin-transform-duplicate-keys": "^7.22.5", - "@babel/plugin-transform-dynamic-import": "^7.22.5", - "@babel/plugin-transform-exponentiation-operator": "^7.22.5", - "@babel/plugin-transform-export-namespace-from": "^7.22.5", - "@babel/plugin-transform-for-of": "^7.22.5", - "@babel/plugin-transform-function-name": "^7.22.5", - "@babel/plugin-transform-json-strings": "^7.22.5", - "@babel/plugin-transform-literals": "^7.22.5", - "@babel/plugin-transform-logical-assignment-operators": "^7.22.5", - "@babel/plugin-transform-member-expression-literals": "^7.22.5", - "@babel/plugin-transform-modules-amd": "^7.22.5", - "@babel/plugin-transform-modules-commonjs": "^7.22.5", - "@babel/plugin-transform-modules-systemjs": "^7.22.5", - "@babel/plugin-transform-modules-umd": "^7.22.5", - "@babel/plugin-transform-named-capturing-groups-regex": "^7.22.5", - "@babel/plugin-transform-new-target": "^7.22.5", - "@babel/plugin-transform-nullish-coalescing-operator": "^7.22.5", - "@babel/plugin-transform-numeric-separator": "^7.22.5", - "@babel/plugin-transform-object-rest-spread": "^7.22.5", - "@babel/plugin-transform-object-super": "^7.22.5", - "@babel/plugin-transform-optional-catch-binding": "^7.22.5", - "@babel/plugin-transform-optional-chaining": "^7.22.10", - "@babel/plugin-transform-parameters": "^7.22.5", - "@babel/plugin-transform-private-methods": "^7.22.5", - "@babel/plugin-transform-private-property-in-object": "^7.22.5", - "@babel/plugin-transform-property-literals": "^7.22.5", - "@babel/plugin-transform-regenerator": "^7.22.10", - "@babel/plugin-transform-reserved-words": "^7.22.5", - "@babel/plugin-transform-shorthand-properties": "^7.22.5", - "@babel/plugin-transform-spread": "^7.22.5", - "@babel/plugin-transform-sticky-regex": "^7.22.5", - "@babel/plugin-transform-template-literals": "^7.22.5", - "@babel/plugin-transform-typeof-symbol": "^7.22.5", - "@babel/plugin-transform-unicode-escapes": "^7.22.10", - "@babel/plugin-transform-unicode-property-regex": "^7.22.5", - "@babel/plugin-transform-unicode-regex": "^7.22.5", - "@babel/plugin-transform-unicode-sets-regex": "^7.22.5", - "@babel/preset-modules": "0.1.6-no-external-plugins", - "@babel/types": "^7.22.10", - "babel-plugin-polyfill-corejs2": "^0.4.5", - "babel-plugin-polyfill-corejs3": "^0.8.3", - "babel-plugin-polyfill-regenerator": "^0.5.2", - "core-js-compat": "^3.31.0", - "semver": "^6.3.1" + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/preset-env/node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true, - "bin": { - "semver": "bin/semver.js" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/@babel/preset-modules": { - "version": "0.1.6-no-external-plugins", - "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.6-no-external-plugins.tgz", - "integrity": "sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==", + "node_modules/@jest/core/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/types": "^7.4.4", - "esutils": "^2.0.2" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0 || ^8.0.0-0 <8.0.0" + "@types/yargs-parser": "*" } }, - "node_modules/@babel/preset-typescript": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.22.5.tgz", - "integrity": "sha512-YbPaal9LxztSGhmndR46FmAbkJ/1fAsw293tSU+I5E5h+cnJ3d4GTwyUgGYmOXJYdGA+uNePle4qbaRzj2NISQ==", + "node_modules/@jest/core/node_modules/jest-haste-map": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", + "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/helper-validator-option": "^7.22.5", - "@babel/plugin-syntax-jsx": "^7.22.5", - "@babel/plugin-transform-modules-commonjs": "^7.22.5", - "@babel/plugin-transform-typescript": "^7.22.5" + "@jest/types": "^27.5.1", + "@types/graceful-fs": "^4.1.2", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^27.5.1", + "jest-serializer": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "micromatch": "^4.0.4", + "walker": "^1.0.7" }, "engines": { - "node": ">=6.9.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "optionalDependencies": { + "fsevents": "^2.3.2" } }, - "node_modules/@babel/regjsgen": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/@babel/regjsgen/-/regjsgen-0.8.0.tgz", - "integrity": "sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==", - "dev": true + "node_modules/@jest/core/node_modules/jest-regex-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", + "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", + "dev": true, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } }, - "node_modules/@babel/runtime": { - "version": "7.20.13", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.20.13.tgz", - "integrity": "sha512-gt3PKXs0DBoL9xCvOIIZ2NEqAGZqHjAnmVbfQtB620V0uReIQutpel14KcneZuer7UioY8ALKZ7iocavvzTNFA==", + "node_modules/@jest/core/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, "dependencies": { - "regenerator-runtime": "^0.13.11" + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" }, "engines": { - "node": ">=6.9.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/@babel/runtime/node_modules/regenerator-runtime": { - "version": "0.13.11", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", - "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==" - }, - "node_modules/@babel/template": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.5.tgz", - "integrity": "sha512-X7yV7eiwAxdj9k94NEylvbVHLiVG1nvzCV2EAowhxLTwODV1jl9UzZ48leOC0sH7OnuHrIkllaBgneUykIcZaw==", + "node_modules/@jest/core/node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.22.5", - "@babel/parser": "^7.22.5", - "@babel/types": "^7.22.5" + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" }, "engines": { - "node": ">=6.9.0" + "node": ">= 10.13.0" } }, - "node_modules/@babel/traverse": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.22.10.tgz", - "integrity": "sha512-Q/urqV4pRByiNNpb/f5OSv28ZlGJiFiiTh+GAHktbIrkPhPbl90+uW6SmpoLyZqutrg9AEaEf3Q/ZBRHBXgxig==", + "node_modules/@jest/core/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.22.10", - "@babel/generator": "^7.22.10", - "@babel/helper-environment-visitor": "^7.22.5", - "@babel/helper-function-name": "^7.22.5", - "@babel/helper-hoist-variables": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/parser": "^7.22.10", - "@babel/types": "^7.22.10", - "debug": "^4.1.0", - "globals": "^11.1.0" + "has-flag": "^4.0.0" }, "engines": { - "node": ">=6.9.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" } }, - "node_modules/@babel/traverse/node_modules/globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "node_modules/@jest/environment": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-27.5.1.tgz", + "integrity": "sha512-/WQjhPJe3/ghaol/4Bq480JKXV/Rfw8nQdN7f41fM8VDHLcxKXou6QyXAh3EFr9/bVG3x74z1NWDkP87EiY8gA==", "dev": true, + "dependencies": { + "@jest/fake-timers": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "jest-mock": "^27.5.1" + }, "engines": { - "node": ">=4" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/@babel/types": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.22.10.tgz", - "integrity": "sha512-obaoigiLrlDZ7TUQln/8m4mSqIW2QFeOrCQc9r+xsaHGNoplVNYlRVpsfE8Vj35GEm2ZH4ZhrNYogs/3fj85kg==", + "node_modules/@jest/environment/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", "dev": true, "dependencies": { - "@babel/helper-string-parser": "^7.22.5", - "@babel/helper-validator-identifier": "^7.22.5", - "to-fast-properties": "^2.0.0" + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" }, "engines": { - "node": ">=6.9.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/@bcoe/v8-coverage": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", - "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", - "dev": true - }, - "node_modules/@cspotcode/source-map-support": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", - "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", + "node_modules/@jest/environment/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", "dev": true, "dependencies": { - "@jridgewell/trace-mapping": "0.3.9" - }, - "engines": { - "node": ">=12" + "@types/yargs-parser": "*" } }, - "node_modules/@cspotcode/source-map-support/node_modules/@jridgewell/trace-mapping": { - "version": "0.3.9", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", - "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", + "node_modules/@jest/fake-timers": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-27.5.1.tgz", + "integrity": "sha512-/aPowoolwa07k7/oM3aASneNeBGCmGQsc3ugN4u6s4C/+s5M64MFo/+djTdiwcbQlRfFElGuDXWzaWj6QgKObQ==", "dev": true, "dependencies": { - "@jridgewell/resolve-uri": "^3.0.3", - "@jridgewell/sourcemap-codec": "^1.4.10" + "@jest/types": "^27.5.1", + "@sinonjs/fake-timers": "^8.0.1", + "@types/node": "*", + "jest-message-util": "^27.5.1", + "jest-mock": "^27.5.1", + "jest-util": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/@eslint/eslintrc": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.4.1.tgz", - "integrity": "sha512-XXrH9Uarn0stsyldqDYq8r++mROmWRI1xKMXa640Bb//SY1+ECYX6VzT6Lcx5frD0V30XieqJ0oX9I2Xj5aoMA==", + "node_modules/@jest/fake-timers/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", "dev": true, "dependencies": { - "ajv": "^6.12.4", - "debug": "^4.3.2", - "espree": "^9.4.0", - "globals": "^13.19.0", - "ignore": "^5.2.0", - "import-fresh": "^3.2.1", - "js-yaml": "^4.1.0", - "minimatch": "^3.1.2", - "strip-json-comments": "^3.1.1" + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/@esri/arcgis-html-sanitizer": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@esri/arcgis-html-sanitizer/-/arcgis-html-sanitizer-3.0.1.tgz", - "integrity": "sha512-cwZJwsYCJZwtBQU2AmaiIVFg5nZcVwInPYja1/OgC9iKYO+ytZRoc5h+0S9/ygbFNoS8Nd0RX9A85stLX/BgiA==", + "node_modules/@jest/fake-timers/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", "dev": true, "dependencies": { - "xss": "1.0.13" + "@types/yargs-parser": "*" } }, - "node_modules/@esri/arcgis-html-sanitizer/node_modules/xss": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/xss/-/xss-1.0.13.tgz", - "integrity": "sha512-clu7dxTm1e8Mo5fz3n/oW3UCXBfV89xZ72jM8yzo1vR/pIS0w3sgB3XV2H8Vm6zfGnHL0FzvLJPJEBhd86/z4Q==", + "node_modules/@jest/fake-timers/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", "dev": true, "dependencies": { - "commander": "^2.20.3", - "cssfilter": "0.0.10" - }, - "bin": { - "xss": "bin/xss" + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" }, "engines": { - "node": ">= 0.10.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/@esri/arcgis-rest-auth": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/@esri/arcgis-rest-auth/-/arcgis-rest-auth-3.5.0.tgz", - "integrity": "sha512-EeKfGxSLEI2KvGE2FvN+kYDR+a7RWLf+uNzsYDXWK/8wOYrtj+lh091NHxgHU/Fd+NDoAcHSoTSPCCEpgS0Gsg==", - "deprecated": "Development work on ArcGIS REST JS 3.x has ceased. This packages funtionality has moved to @esri/arcgis-rest-request at 4.x.x https://developers.arcgis.com/arcgis-rest-js/release-notes/upgrade-v3-v4/.", - "peer": true, + "node_modules/@jest/globals": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-27.5.1.tgz", + "integrity": "sha512-ZEJNB41OBQQgGzgyInAv0UUfDDj3upmHydjieSxFvTRuZElrx7tXg/uVQ5hYVEwiXs3+aMsAeEc9X7xiSKCm4Q==", + "dev": true, "dependencies": { - "@esri/arcgis-rest-types": "^3.5.0", - "tslib": "^1.13.0" + "@jest/environment": "^27.5.1", + "@jest/types": "^27.5.1", + "expect": "^27.5.1" }, - "peerDependencies": { - "@esri/arcgis-rest-request": "^3.0.0" + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/@esri/arcgis-rest-auth/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "peer": true - }, - "node_modules/@esri/arcgis-rest-feature-layer": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/@esri/arcgis-rest-feature-layer/-/arcgis-rest-feature-layer-3.5.0.tgz", - "integrity": "sha512-+qjJnwPaYYNQqce20FF1iNvQ1BeFVue6ka8MnDu4BNhSeyw9OKD2WoI1pXfKVkSHpXTHeQIfyMVLC7/nFNja8g==", - "deprecated": "Development work on ArcGIS REST JS 3.x has ceased. This packages funtionality has moved to @esri/arcgis-rest-feature-service at 4.x.x https://developers.arcgis.com/arcgis-rest-js/release-notes/upgrade-v3-v4/.", - "peer": true, + "node_modules/@jest/globals/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "dev": true, "dependencies": { - "@esri/arcgis-rest-types": "^3.5.0", - "tslib": "^1.13.0" + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" }, - "peerDependencies": { - "@esri/arcgis-rest-auth": "^3.0.0", - "@esri/arcgis-rest-request": "^3.0.0" + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/@esri/arcgis-rest-feature-layer/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "peer": true + "node_modules/@jest/globals/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "dev": true, + "dependencies": { + "@types/yargs-parser": "*" + } }, - "node_modules/@esri/arcgis-rest-portal": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/@esri/arcgis-rest-portal/-/arcgis-rest-portal-3.5.0.tgz", - "integrity": "sha512-rrl/eUWOxdA5Y0MDYuvCopwNkf8loIfVIE4j1kGRTIz32n4uqdhb38sYKd2X4JK8QW67vyKq0SqxMSIYOHGXQg==", - "peer": true, + "node_modules/@jest/reporters": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-27.5.1.tgz", + "integrity": "sha512-cPXh9hWIlVJMQkVk84aIvXuBB4uQQmFqZiacloFuGiP3ah1sbCxCosidXFDfqG8+6fO1oR2dTJTlsOy4VFmUfw==", + "dev": true, "dependencies": { - "@esri/arcgis-rest-types": "^3.5.0", - "tslib": "^1.13.0" + "@bcoe/v8-coverage": "^0.2.3", + "@jest/console": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "collect-v8-coverage": "^1.0.0", + "exit": "^0.1.2", + "glob": "^7.1.2", + "graceful-fs": "^4.2.9", + "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-instrument": "^5.1.0", + "istanbul-lib-report": "^3.0.0", + "istanbul-lib-source-maps": "^4.0.0", + "istanbul-reports": "^3.1.3", + "jest-haste-map": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "slash": "^3.0.0", + "source-map": "^0.6.0", + "string-length": "^4.0.1", + "terminal-link": "^2.0.0", + "v8-to-istanbul": "^8.1.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" }, "peerDependencies": { - "@esri/arcgis-rest-auth": "^3.0.0", - "@esri/arcgis-rest-request": "^3.0.0" + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } } }, - "node_modules/@esri/arcgis-rest-portal/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "peer": true - }, - "node_modules/@esri/arcgis-rest-request": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/@esri/arcgis-rest-request/-/arcgis-rest-request-3.5.0.tgz", - "integrity": "sha512-FlI32b2EF/SlJeGe8GZtVqIlvHDxI18bgIB2vQINi9fAC07F1Jg3JMglDTDSl8CCYS/9cYp62n7lWPUwmvn/xQ==", - "peer": true, + "node_modules/@jest/reporters/node_modules/@jest/transform": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz", + "integrity": "sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==", + "dev": true, "dependencies": { - "tslib": "^1.10.0" + "@babel/core": "^7.1.0", + "@jest/types": "^27.5.1", + "babel-plugin-istanbul": "^6.1.1", + "chalk": "^4.0.0", + "convert-source-map": "^1.4.0", + "fast-json-stable-stringify": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-util": "^27.5.1", + "micromatch": "^4.0.4", + "pirates": "^4.0.4", + "slash": "^3.0.0", + "source-map": "^0.6.1", + "write-file-atomic": "^3.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/@esri/arcgis-rest-request/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "peer": true - }, - "node_modules/@esri/arcgis-rest-service-admin": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/@esri/arcgis-rest-service-admin/-/arcgis-rest-service-admin-3.5.0.tgz", - "integrity": "sha512-gZzqb0I9kAyIIx2bBTU070QSEd5CV7C0vyd5IBWZOJqgkvA4Yf/LOPCMZ2s/+y2jF+4B1vRMGjpInovvfEk9Rw==", - "deprecated": "Development work on ArcGIS REST JS 3.x has ceased. This packages funtionality has moved to @esri/arcgis-rest-feature-service at 4.x.x https://developers.arcgis.com/arcgis-rest-js/release-notes/upgrade-v3-v4/.", - "peer": true, + "node_modules/@jest/reporters/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "dev": true, "dependencies": { - "@esri/arcgis-rest-types": "^3.5.0", - "tslib": "^1.13.0" + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" }, - "peerDependencies": { - "@esri/arcgis-rest-auth": "^3.0.0", - "@esri/arcgis-rest-portal": "^3.0.0", - "@esri/arcgis-rest-request": "^3.0.0" + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/@esri/arcgis-rest-service-admin/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "peer": true - }, - "node_modules/@esri/arcgis-rest-types": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/@esri/arcgis-rest-types/-/arcgis-rest-types-3.6.0.tgz", - "integrity": "sha512-t6QWdVNmqB9OloYAvVWYNjvqlnrXs/m0nCRNwPGt3ZiAPXn5CpkpSn2UD6LPqGp6vPxKG81lbFQvwCw9az4qIg==", - "peer": true - }, - "node_modules/@esri/calcite-components": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/@esri/calcite-components/-/calcite-components-1.4.3.tgz", - "integrity": "sha512-3Yj0ZBOPBCIEp+YPJTM0C6cBmbxFXXsG9a6yv0DKxkaERj7te+hb3DQ1fVbG/lQsMLOdrQHiE70zdXSzMKvKCg==", - "peer": true, + "node_modules/@jest/reporters/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "dev": true, "dependencies": { - "@floating-ui/dom": "1.4.1", - "@stencil/core": "2.22.3", - "@types/color": "3.0.3", - "color": "4.2.3", - "composed-offset-position": "0.0.4", - "dayjs": "1.11.8", - "focus-trap": "7.4.3", - "form-request-submit-polyfill": "2.0.0", - "lodash-es": "4.17.21", - "sortablejs": "1.15.0" + "@types/yargs-parser": "*" } }, - "node_modules/@esri/calcite-components/node_modules/focus-trap": { - "version": "7.4.3", - "resolved": "https://registry.npmjs.org/focus-trap/-/focus-trap-7.4.3.tgz", - "integrity": "sha512-BgSSbK4GPnS2VbtZ50VtOv1Sti6DIkj3+LkVjiWMNjLeAp1SH1UlLx3ULu/DCu4vq5R4/uvTm+zrvsMsuYmGLg==", - "peer": true, + "node_modules/@jest/reporters/node_modules/jest-haste-map": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", + "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", + "dev": true, "dependencies": { - "tabbable": "^6.1.2" + "@jest/types": "^27.5.1", + "@types/graceful-fs": "^4.1.2", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^27.5.1", + "jest-serializer": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "micromatch": "^4.0.4", + "walker": "^1.0.7" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "optionalDependencies": { + "fsevents": "^2.3.2" } }, - "node_modules/@esri/eslint-plugin-calcite-components": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/@esri/eslint-plugin-calcite-components/-/eslint-plugin-calcite-components-0.2.2.tgz", - "integrity": "sha512-vmnJ8ogPdEiqq9iyRVJM/YhGMLqzbId35RqN3dS0mj4LWB3USIYMRbLqxtSHlxeWtOD4g6psdSj6eF4oWTXfuQ==", + "node_modules/@jest/reporters/node_modules/jest-regex-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", + "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", + "dev": true, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/reporters/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", "dev": true, "dependencies": { - "stencil-eslint-core": "~0.3.1", - "tsutils": "~3.21.0" + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" }, "engines": { - "node": ">=8.9.0" - }, - "peerDependencies": { - "@typescript-eslint/parser": "^5.8.0", - "eslint": "^8" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/@esri/hub-common": { - "version": "12.37.1", - "resolved": "https://registry.npmjs.org/@esri/hub-common/-/hub-common-12.37.1.tgz", - "integrity": "sha512-9gIxzIOo5dRFThk3A5Vkwzqxb1MMLZEKLAY2h0pYahu0hFP3nJpGLA65ODUduFiqnLrCOFUxgPd7qQkCthrSQA==", + "node_modules/@jest/reporters/node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "dev": true, "dependencies": { - "abab": "^2.0.5", - "adlib": "^3.0.8", - "ajv": "^6.12.6", - "fast-xml-parser": "^3.21.0", - "json-schema-typed": "^7.0.3", - "jsonapi-typescript": "^0.1.3", - "tslib": "^1.13.0" + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" }, - "peerDependencies": { - "@esri/arcgis-rest-auth": "^2.14.0 || 3", - "@esri/arcgis-rest-feature-layer": "^3.2.0", - "@esri/arcgis-rest-portal": "^2.18.0 || 3", - "@esri/arcgis-rest-request": "^2.14.0 || 3", - "@esri/arcgis-rest-types": "^2.15.0 || 3" + "engines": { + "node": ">= 10.13.0" } }, - "node_modules/@esri/hub-common/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, - "node_modules/@esri/hub-initiatives": { - "version": "12.4.1", - "resolved": "https://registry.npmjs.org/@esri/hub-initiatives/-/hub-initiatives-12.4.1.tgz", - "integrity": "sha512-RFYpFlS5D78cJThWhnl+qn93jeOMgoCa7U8KkET+2LW7L+Tg71ZvF2BnsPh0A5qo9fD4aQ/i6tBFxuuFqveJQw==", + "node_modules/@jest/reporters/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, "dependencies": { - "tslib": "^1.13.0" + "has-flag": "^4.0.0" }, - "peerDependencies": { - "@esri/arcgis-rest-auth": "^2.13.0 || 3", - "@esri/arcgis-rest-portal": "^2.13.0 || 3", - "@esri/arcgis-rest-request": "^2.13.0 || 3", - "@esri/hub-common": "^12.4.0" + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" } }, - "node_modules/@esri/hub-initiatives/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, - "node_modules/@esri/hub-sites": { - "version": "12.6.0", - "resolved": "https://registry.npmjs.org/@esri/hub-sites/-/hub-sites-12.6.0.tgz", - "integrity": "sha512-qEdhNIQkkL+zwS0Z7hxNQhbqL/dYBBU3MSDktiXk41/6l23IznjcLdNmtqrDez/qEggbjL1Ed4MXQt1BLswRNQ==", + "node_modules/@jest/source-map": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-27.5.1.tgz", + "integrity": "sha512-y9NIHUYF3PJRlHk98NdC/N1gl88BL08aQQgu4k4ZopQkCw9t9cV8mtl3TV8b/YCB8XaVTFrmUTAJvjsntDireg==", + "dev": true, "dependencies": { - "tslib": "^1.13.0" + "callsites": "^3.0.0", + "graceful-fs": "^4.2.9", + "source-map": "^0.6.0" }, - "peerDependencies": { - "@esri/arcgis-rest-auth": "^2.13.0 || 3", - "@esri/arcgis-rest-portal": "^2.19.0 || 3", - "@esri/arcgis-rest-request": "^2.13.0 || 3", - "@esri/hub-common": "^12.4.0", - "@esri/hub-initiatives": "^12.4.0", - "@esri/hub-teams": "^12.4.0" + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/@esri/hub-sites/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, - "node_modules/@esri/hub-teams": { - "version": "12.4.1", - "resolved": "https://registry.npmjs.org/@esri/hub-teams/-/hub-teams-12.4.1.tgz", - "integrity": "sha512-olnDzWCPueH5olrlmXGqJRaiLhjBLrX+H4AbxTGmM267Wb5GOEuVdiQqOf3POOAvA8OXCIowFDMwuqZzMS0jaw==", + "node_modules/@jest/test-result": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-27.5.1.tgz", + "integrity": "sha512-EW35l2RYFUcUQxFJz5Cv5MTOxlJIQs4I7gxzi2zVU7PJhOwfYq1MdC5nhSmYjX1gmMmLPvB3sIaC+BkcHRBfag==", + "dev": true, "dependencies": { - "tslib": "^1.13.0" + "@jest/console": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/istanbul-lib-coverage": "^2.0.0", + "collect-v8-coverage": "^1.0.0" }, - "peerDependencies": { - "@esri/arcgis-rest-auth": "^2.13.0 || 3", - "@esri/arcgis-rest-portal": "^2.15.0 || 3", - "@esri/arcgis-rest-request": "^2.13.0 || 3", - "@esri/arcgis-rest-types": "^2.13.0 || 3", - "@esri/hub-common": "^12.4.0" + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/@esri/hub-teams/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, - "node_modules/@esri/solution-common": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@esri/solution-common/-/solution-common-3.0.1.tgz", - "integrity": "sha512-5x4kNcfIsuWzpxqZahCm3HkldL3KaNS7LMrH8AwVooqPpZIgIToP6swrO9frl+fiC5YBH21AcM+BAcVnc9KmvA==", + "node_modules/@jest/test-result/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", "dev": true, "dependencies": { - "@esri/arcgis-html-sanitizer": "3.0.1", - "@esri/hub-common": "^12.37.1", - "@esri/hub-initiatives": "^12.4.1", - "@esri/hub-sites": "^12.6.0", - "@esri/hub-teams": "^12.4.1", - "@types/lodash.isplainobject": "^4.0.7", - "adlib": "3.0.7", - "jszip": "3.10.1", - "lodash.isplainobject": "^4.0.6", - "tslib": "1.14.1", - "xss": "^1.0.14" + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" }, - "peerDependencies": { - "@esri/arcgis-rest-auth": "~3.5.0", - "@esri/arcgis-rest-feature-layer": "~3.5.0", - "@esri/arcgis-rest-portal": "~3.5.0", - "@esri/arcgis-rest-request": "~3.5.0", - "@esri/arcgis-rest-service-admin": "~3.5.0" + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/@esri/solution-common/node_modules/adlib": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/adlib/-/adlib-3.0.7.tgz", - "integrity": "sha512-74ylfcwB7+fu+jqN6e3mBJrAWhWHI5l8icUKh8IhNhmezetLRaMBrxQKJZ+GgyrNxyW+0M12eUirY1RJ5HhWKg==", + "node_modules/@jest/test-result/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", "dev": true, "dependencies": { - "esm": "^3.2.25" + "@types/yargs-parser": "*" } }, - "node_modules/@esri/solution-common/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - }, - "node_modules/@floating-ui/core": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.3.1.tgz", - "integrity": "sha512-Bu+AMaXNjrpjh41znzHqaz3r2Nr8hHuHZT6V2LBKMhyMl0FgKA62PNYbqnfgmzOhoWZj70Zecisbo4H1rotP5g==", - "peer": true - }, - "node_modules/@floating-ui/dom": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.4.1.tgz", - "integrity": "sha512-loCXUOLzIC3jp50RFOKXZ/kQjjz26ryr/23M+FWG9jrmAv8lRf3DUfC2AiVZ3+K316GOhB08CR+Povwz8e9mDw==", - "peer": true, - "dependencies": { - "@floating-ui/core": "^1.3.1" - } - }, - "node_modules/@humanwhocodes/config-array": { - "version": "0.11.8", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.8.tgz", - "integrity": "sha512-UybHIJzJnR5Qc/MsD9Kr+RpO2h+/P1GhOwdiLPXK5TWk5sgTdu88bTD9UP+CKbPPh5Rni1u0GjAdYQLemG8g+g==", + "node_modules/@jest/test-sequencer": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-27.5.1.tgz", + "integrity": "sha512-LCheJF7WB2+9JuCS7VB/EmGIdQuhtqjRNI9A43idHv3E4KltCTsPsLxvdaubFHSYwY/fNjMWjl6vNRhDiN7vpQ==", "dev": true, "dependencies": { - "@humanwhocodes/object-schema": "^1.2.1", - "debug": "^4.1.1", - "minimatch": "^3.0.5" + "@jest/test-result": "^27.5.1", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-runtime": "^27.5.1" }, "engines": { - "node": ">=10.10.0" - } - }, - "node_modules/@humanwhocodes/module-importer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", - "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", - "dev": true, - "engines": { - "node": ">=12.22" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/nzakas" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/@humanwhocodes/object-schema": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", - "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", - "dev": true - }, - "node_modules/@istanbuljs/load-nyc-config": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", - "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", + "node_modules/@jest/test-sequencer/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", "dev": true, "dependencies": { - "camelcase": "^5.3.1", - "find-up": "^4.1.0", - "get-package-type": "^0.1.0", - "js-yaml": "^3.13.1", - "resolve-from": "^5.0.0" + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" }, "engines": { - "node": ">=8" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "node_modules/@jest/test-sequencer/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", "dev": true, "dependencies": { - "sprintf-js": "~1.0.2" + "@types/yargs-parser": "*" } }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "node_modules/@jest/test-sequencer/node_modules/jest-haste-map": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", + "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", "dev": true, "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" + "@jest/types": "^27.5.1", + "@types/graceful-fs": "^4.1.2", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^27.5.1", + "jest-serializer": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "micromatch": "^4.0.4", + "walker": "^1.0.7" }, "engines": { - "node": ">=8" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "optionalDependencies": { + "fsevents": "^2.3.2" } }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "node_modules/@jest/test-sequencer/node_modules/jest-regex-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", + "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", + "dev": true, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/test-sequencer/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", "dev": true, "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" }, - "bin": { - "js-yaml": "bin/js-yaml.js" + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "node_modules/@jest/test-sequencer/node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", "dev": true, "dependencies": { - "p-locate": "^4.1.0" + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" }, "engines": { - "node": ">=8" + "node": ">= 10.13.0" } }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "node_modules/@jest/test-sequencer/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", "dev": true, "dependencies": { - "p-try": "^2.0.0" + "has-flag": "^4.0.0" }, "engines": { - "node": ">=6" + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/chalk/supports-color?sponsor=1" } }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "node_modules/@jridgewell/gen-mapping": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", + "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", "dev": true, "dependencies": { - "p-limit": "^2.2.0" + "@jridgewell/set-array": "^1.0.0", + "@jridgewell/sourcemap-codec": "^1.4.10" }, "engines": { - "node": ">=8" + "node": ">=6.0.0" } }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", + "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", "dev": true, "engines": { - "node": ">=8" + "node": ">=6.0.0" } }, - "node_modules/@istanbuljs/schema": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", - "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", + "node_modules/@jridgewell/set-array": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", + "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", "dev": true, "engines": { - "node": ">=8" + "node": ">=6.0.0" } }, - "node_modules/@jest/console": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/console/-/console-27.5.1.tgz", - "integrity": "sha512-kZ/tNpS3NXn0mlXXXPNuDZnb4c0oZ20r4K5eemM2k30ZC3G0T02nXUvyhf5YdbXWHPEJLc9qGLxEZ216MdL+Zg==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "jest-message-util": "^27.5.1", - "jest-util": "^27.5.1", - "slash": "^3.0.0" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.14", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", + "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", + "dev": true }, - "node_modules/@jest/console/node_modules/@jest/types": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", - "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.19", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.19.tgz", + "integrity": "sha512-kf37QtfW+Hwx/buWGMPcR60iF9ziHa6r/CZJIHbmcm4+0qrXiVdxegAH0F6yddEVQ7zdkjcGCgCzUu+BcbhQxw==", "dev": true, "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^16.0.0", - "chalk": "^4.0.0" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" } }, - "node_modules/@jest/console/node_modules/@types/yargs": { - "version": "16.0.5", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", - "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "node_modules/@nicolo-ribaudo/eslint-scope-5-internals": { + "version": "5.1.1-v1", + "resolved": "https://registry.npmjs.org/@nicolo-ribaudo/eslint-scope-5-internals/-/eslint-scope-5-internals-5.1.1-v1.tgz", + "integrity": "sha512-54/JRvkLIzzDWshCWfuhadfrfZVPiElY8Fcgmg1HroEly/EDSszzhBAsarCux+D/kOslTRquNzuyGSmUSTTHGg==", "dev": true, "dependencies": { - "@types/yargs-parser": "*" + "eslint-scope": "5.1.1" } }, - "node_modules/@jest/console/node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "node_modules/@nodelib/fs.scandir": { + "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, "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">= 8" } }, - "node_modules/@jest/core": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/core/-/core-27.5.1.tgz", - "integrity": "sha512-AK6/UTrvQD0Cd24NSqmIA6rKsu0tKIxfiCducZvqxYdmMisOYAsdItspT+fQDQYARPf8XgjAFZi0ogW2agH5nQ==", + "node_modules/@nodelib/fs.stat": { + "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, - "dependencies": { - "@jest/console": "^27.5.1", - "@jest/reporters": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "ansi-escapes": "^4.2.1", - "chalk": "^4.0.0", - "emittery": "^0.8.1", - "exit": "^0.1.2", - "graceful-fs": "^4.2.9", - "jest-changed-files": "^27.5.1", - "jest-config": "^27.5.1", - "jest-haste-map": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-resolve-dependencies": "^27.5.1", - "jest-runner": "^27.5.1", - "jest-runtime": "^27.5.1", - "jest-snapshot": "^27.5.1", - "jest-util": "^27.5.1", - "jest-validate": "^27.5.1", - "jest-watcher": "^27.5.1", - "micromatch": "^4.0.4", - "rimraf": "^3.0.0", - "slash": "^3.0.0", - "strip-ansi": "^6.0.0" - }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - }, - "peerDependencies": { - "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" - }, - "peerDependenciesMeta": { - "node-notifier": { - "optional": true - } + "node": ">= 8" } }, - "node_modules/@jest/core/node_modules/@jest/transform": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz", - "integrity": "sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==", + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", "dev": true, "dependencies": { - "@babel/core": "^7.1.0", - "@jest/types": "^27.5.1", - "babel-plugin-istanbul": "^6.1.1", - "chalk": "^4.0.0", - "convert-source-map": "^1.4.0", - "fast-json-stable-stringify": "^2.0.0", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-util": "^27.5.1", - "micromatch": "^4.0.4", - "pirates": "^4.0.4", - "slash": "^3.0.0", - "source-map": "^0.6.1", - "write-file-atomic": "^3.0.0" + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">= 8" } }, - "node_modules/@jest/core/node_modules/@jest/types": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", - "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "node_modules/@octokit/auth-token": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-2.5.0.tgz", + "integrity": "sha512-r5FVUJCOLl19AxiuZD2VRZ/ORjp/4IN98Of6YJoJOkY75CIBuYfmiNHGrDwXr+aLGG55igl9QrxX3hbiXlLb+g==", "dev": true, "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^16.0.0", - "chalk": "^4.0.0" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "@octokit/types": "^6.0.3" } }, - "node_modules/@jest/core/node_modules/@types/yargs": { - "version": "16.0.5", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", - "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "node_modules/@octokit/core": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/@octokit/core/-/core-3.6.0.tgz", + "integrity": "sha512-7RKRKuA4xTjMhY+eG3jthb3hlZCsOwg3rztWh75Xc+ShDWOfDDATWbeZpAHBNRpm4Tv9WgBMOy1zEJYXG6NJ7Q==", "dev": true, "dependencies": { - "@types/yargs-parser": "*" + "@octokit/auth-token": "^2.4.4", + "@octokit/graphql": "^4.5.8", + "@octokit/request": "^5.6.3", + "@octokit/request-error": "^2.0.5", + "@octokit/types": "^6.0.3", + "before-after-hook": "^2.2.0", + "universal-user-agent": "^6.0.0" } }, - "node_modules/@jest/core/node_modules/jest-haste-map": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", - "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", + "node_modules/@octokit/endpoint": { + "version": "6.0.12", + "resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-6.0.12.tgz", + "integrity": "sha512-lF3puPwkQWGfkMClXb4k/eUT/nZKQfxinRWJrdZaJO85Dqwo/G0yOC434Jr2ojwafWJMYqFGFa5ms4jJUgujdA==", "dev": true, "dependencies": { - "@jest/types": "^27.5.1", - "@types/graceful-fs": "^4.1.2", - "@types/node": "*", - "anymatch": "^3.0.3", - "fb-watchman": "^2.0.0", - "graceful-fs": "^4.2.9", - "jest-regex-util": "^27.5.1", - "jest-serializer": "^27.5.1", - "jest-util": "^27.5.1", - "jest-worker": "^27.5.1", - "micromatch": "^4.0.4", - "walker": "^1.0.7" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - }, - "optionalDependencies": { - "fsevents": "^2.3.2" + "@octokit/types": "^6.0.3", + "is-plain-object": "^5.0.0", + "universal-user-agent": "^6.0.0" } }, - "node_modules/@jest/core/node_modules/jest-regex-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", - "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", + "node_modules/@octokit/graphql": { + "version": "4.8.0", + "resolved": "https://registry.npmjs.org/@octokit/graphql/-/graphql-4.8.0.tgz", + "integrity": "sha512-0gv+qLSBLKF0z8TKaSKTsS39scVKF9dbMxJpj3U0vC7wjNWFuIpL/z76Qe2fiuCbDRcJSavkXsVtMS6/dtQQsg==", "dev": true, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "dependencies": { + "@octokit/request": "^5.6.0", + "@octokit/types": "^6.0.3", + "universal-user-agent": "^6.0.0" } }, - "node_modules/@jest/core/node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "node_modules/@octokit/openapi-types": { + "version": "12.11.0", + "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-12.11.0.tgz", + "integrity": "sha512-VsXyi8peyRq9PqIz/tpqiL2w3w80OgVMwBHltTml3LmVvXiphgeqmY9mvBw9Wu7e0QWk/fqD37ux8yP5uVekyQ==", + "dev": true + }, + "node_modules/@octokit/plugin-paginate-rest": { + "version": "2.21.3", + "resolved": "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-2.21.3.tgz", + "integrity": "sha512-aCZTEf0y2h3OLbrgKkrfFdjRL6eSOo8komneVQJnYecAxIej7Bafor2xhuDJOIFau4pk0i/P28/XgtbyPF0ZHw==", "dev": true, "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" + "@octokit/types": "^6.40.0" }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "peerDependencies": { + "@octokit/core": ">=2" } }, - "node_modules/@jest/core/node_modules/jest-worker": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", - "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "node_modules/@octokit/plugin-request-log": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@octokit/plugin-request-log/-/plugin-request-log-1.0.4.tgz", + "integrity": "sha512-mLUsMkgP7K/cnFEw07kWqXGF5LKrOkD+lhCrKvPHXWDywAwuDUeDwWBpc69XK3pNX0uKiVt8g5z96PJ6z9xCFA==", "dev": true, - "dependencies": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" - }, - "engines": { - "node": ">= 10.13.0" + "peerDependencies": { + "@octokit/core": ">=3" } }, - "node_modules/@jest/core/node_modules/supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "node_modules/@octokit/plugin-rest-endpoint-methods": { + "version": "5.16.2", + "resolved": "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-5.16.2.tgz", + "integrity": "sha512-8QFz29Fg5jDuTPXVtey05BLm7OB+M8fnvE64RNegzX7U+5NUXcOcnpTIK0YfSHBg8gYd0oxIq3IZTe9SfPZiRw==", "dev": true, "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=10" + "@octokit/types": "^6.39.0", + "deprecation": "^2.3.1" }, - "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" + "peerDependencies": { + "@octokit/core": ">=3" } }, - "node_modules/@jest/environment": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-27.5.1.tgz", - "integrity": "sha512-/WQjhPJe3/ghaol/4Bq480JKXV/Rfw8nQdN7f41fM8VDHLcxKXou6QyXAh3EFr9/bVG3x74z1NWDkP87EiY8gA==", + "node_modules/@octokit/request": { + "version": "5.6.3", + "resolved": "https://registry.npmjs.org/@octokit/request/-/request-5.6.3.tgz", + "integrity": "sha512-bFJl0I1KVc9jYTe9tdGGpAMPy32dLBXXo1dS/YwSCTL/2nd9XeHsY616RE3HPXDVk+a+dBuzyz5YdlXwcDTr2A==", "dev": true, "dependencies": { - "@jest/fake-timers": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "jest-mock": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "@octokit/endpoint": "^6.0.1", + "@octokit/request-error": "^2.1.0", + "@octokit/types": "^6.16.1", + "is-plain-object": "^5.0.0", + "node-fetch": "^2.6.7", + "universal-user-agent": "^6.0.0" } }, - "node_modules/@jest/environment/node_modules/@jest/types": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", - "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "node_modules/@octokit/request-error": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-2.1.0.tgz", + "integrity": "sha512-1VIvgXxs9WHSjicsRwq8PlR2LR2x6DwsJAaFgzdi0JfJoGSO8mYI/cHJQ+9FbN21aa+DrgNLnwObmyeSC8Rmpg==", "dev": true, "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^16.0.0", - "chalk": "^4.0.0" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "@octokit/types": "^6.0.3", + "deprecation": "^2.0.0", + "once": "^1.4.0" } }, - "node_modules/@jest/environment/node_modules/@types/yargs": { - "version": "16.0.5", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", - "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "node_modules/@octokit/rest": { + "version": "18.12.0", + "resolved": "https://registry.npmjs.org/@octokit/rest/-/rest-18.12.0.tgz", + "integrity": "sha512-gDPiOHlyGavxr72y0guQEhLsemgVjwRePayJ+FcKc2SJqKUbxbkvf5kAZEWA/MKvsfYlQAMVzNJE3ezQcxMJ2Q==", "dev": true, "dependencies": { - "@types/yargs-parser": "*" + "@octokit/core": "^3.5.1", + "@octokit/plugin-paginate-rest": "^2.16.8", + "@octokit/plugin-request-log": "^1.0.4", + "@octokit/plugin-rest-endpoint-methods": "^5.12.0" } }, - "node_modules/@jest/fake-timers": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-27.5.1.tgz", - "integrity": "sha512-/aPowoolwa07k7/oM3aASneNeBGCmGQsc3ugN4u6s4C/+s5M64MFo/+djTdiwcbQlRfFElGuDXWzaWj6QgKObQ==", + "node_modules/@octokit/types": { + "version": "6.41.0", + "resolved": "https://registry.npmjs.org/@octokit/types/-/types-6.41.0.tgz", + "integrity": "sha512-eJ2jbzjdijiL3B4PrSQaSjuF2sPEQPVCPzBvTHJD9Nz+9dw2SGH4K4xeQJ77YfTq5bRQ+bD8wT11JbeDPmxmGg==", "dev": true, "dependencies": { - "@jest/types": "^27.5.1", - "@sinonjs/fake-timers": "^8.0.1", - "@types/node": "*", - "jest-message-util": "^27.5.1", - "jest-mock": "^27.5.1", - "jest-util": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "@octokit/openapi-types": "^12.11.0" } }, - "node_modules/@jest/fake-timers/node_modules/@jest/types": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", - "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", - "dev": true, + "node_modules/@pdf-lib/fontkit": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@pdf-lib/fontkit/-/fontkit-1.1.1.tgz", + "integrity": "sha512-KjMd7grNapIWS/Dm0gvfHEilSyAmeLvrEGVcqLGi0VYebuqqzTbgF29efCx7tvx+IEbG3zQciRSWl3GkUSvjZg==", "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^16.0.0", - "chalk": "^4.0.0" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "pako": "^1.0.6" } }, - "node_modules/@jest/fake-timers/node_modules/@types/yargs": { - "version": "16.0.5", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", - "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", - "dev": true, + "node_modules/@pdf-lib/standard-fonts": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@pdf-lib/standard-fonts/-/standard-fonts-1.0.0.tgz", + "integrity": "sha512-hU30BK9IUN/su0Mn9VdlVKsWBS6GyhVfqjwl1FjZN4TxP6cCw0jP2w7V3Hf5uX7M0AZJ16vey9yE0ny7Sa59ZA==", "dependencies": { - "@types/yargs-parser": "*" + "pako": "^1.0.6" } }, - "node_modules/@jest/fake-timers/node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, + "node_modules/@pdf-lib/upng": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@pdf-lib/upng/-/upng-1.0.1.tgz", + "integrity": "sha512-dQK2FUMQtowVP00mtIksrlZhdFXQZPC+taih1q4CvPZ5vqdxR/LKBaFg0oAfzd1GlHZXXSPdQfzQnt+ViGvEIQ==", "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, + "pako": "^1.0.10" + } + }, + "node_modules/@sindresorhus/is": { + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz", + "integrity": "sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==", + "dev": true, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=6" } }, - "node_modules/@jest/globals": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-27.5.1.tgz", - "integrity": "sha512-ZEJNB41OBQQgGzgyInAv0UUfDDj3upmHydjieSxFvTRuZElrx7tXg/uVQ5hYVEwiXs3+aMsAeEc9X7xiSKCm4Q==", + "node_modules/@sinonjs/commons": { + "version": "1.8.6", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.6.tgz", + "integrity": "sha512-Ky+XkAkqPZSm3NLBeUng77EBQl3cmeJhITaGHdYH8kjVB+aun3S4XBRti2zt17mtt0mIUDiNxYeoJm6drVvBJQ==", "dev": true, "dependencies": { - "@jest/environment": "^27.5.1", - "@jest/types": "^27.5.1", - "expect": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "type-detect": "4.0.8" } }, - "node_modules/@jest/globals/node_modules/@jest/types": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", - "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "node_modules/@sinonjs/fake-timers": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-8.1.0.tgz", + "integrity": "sha512-OAPJUAtgeINhh/TAlUID4QTs53Njm7xzddaVlEs/SXwgtiD1tW22zAB/W1wdqfrpmikgaWQ9Fw6Ws+hsiRm5Vg==", "dev": true, "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^16.0.0", - "chalk": "^4.0.0" + "@sinonjs/commons": "^1.7.0" + } + }, + "node_modules/@stencil/core": { + "version": "2.22.3", + "resolved": "https://registry.npmjs.org/@stencil/core/-/core-2.22.3.tgz", + "integrity": "sha512-kmVA0M/HojwsfkeHsifvHVIYe4l5tin7J5+DLgtl8h6WWfiMClND5K3ifCXXI2ETDNKiEk21p6jql3Fx9o2rng==", + "bin": { + "stencil": "bin/stencil" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=12.10.0", + "npm": ">=6.0.0" } }, - "node_modules/@jest/globals/node_modules/@types/yargs": { - "version": "16.0.5", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", - "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "node_modules/@stencil/postcss": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@stencil/postcss/-/postcss-2.1.0.tgz", + "integrity": "sha512-/e4TYEXErGaHxH0ocg620YqEMLuMLpK/Wg4MJsiJglrLZCZhU4XCX1N0SwxaIOUbEZ1Zh+AqQ++yMI92ilndEA==", "dev": true, "dependencies": { - "@types/yargs-parser": "*" + "autoprefixer": "^10.3.6", + "postcss": "~8.3.8" + }, + "peerDependencies": { + "@stencil/core": ">=2.0.0" } }, - "node_modules/@jest/reporters": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-27.5.1.tgz", - "integrity": "sha512-cPXh9hWIlVJMQkVk84aIvXuBB4uQQmFqZiacloFuGiP3ah1sbCxCosidXFDfqG8+6fO1oR2dTJTlsOy4VFmUfw==", + "node_modules/@stencil/postcss/node_modules/postcss": { + "version": "8.3.11", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.3.11.tgz", + "integrity": "sha512-hCmlUAIlUiav8Xdqw3Io4LcpA1DOt7h3LSTAC4G6JGHFFaWzI6qvFt9oilvl8BmkbBRX1IhM90ZAmpk68zccQA==", "dev": true, "dependencies": { - "@bcoe/v8-coverage": "^0.2.3", - "@jest/console": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "collect-v8-coverage": "^1.0.0", - "exit": "^0.1.2", - "glob": "^7.1.2", - "graceful-fs": "^4.2.9", - "istanbul-lib-coverage": "^3.0.0", - "istanbul-lib-instrument": "^5.1.0", - "istanbul-lib-report": "^3.0.0", - "istanbul-lib-source-maps": "^4.0.0", - "istanbul-reports": "^3.1.3", - "jest-haste-map": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-util": "^27.5.1", - "jest-worker": "^27.5.1", - "slash": "^3.0.0", - "source-map": "^0.6.0", - "string-length": "^4.0.1", - "terminal-link": "^2.0.0", - "v8-to-istanbul": "^8.1.0" + "nanoid": "^3.1.30", + "picocolors": "^1.0.0", + "source-map-js": "^0.6.2" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - }, - "peerDependencies": { - "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + "node": "^10 || ^12 || >=14" }, - "peerDependenciesMeta": { - "node-notifier": { - "optional": true - } + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" } }, - "node_modules/@jest/reporters/node_modules/@jest/transform": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz", - "integrity": "sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==", + "node_modules/@stencil/postcss/node_modules/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, - "dependencies": { - "@babel/core": "^7.1.0", - "@jest/types": "^27.5.1", - "babel-plugin-istanbul": "^6.1.1", - "chalk": "^4.0.0", - "convert-source-map": "^1.4.0", - "fast-json-stable-stringify": "^2.0.0", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-util": "^27.5.1", - "micromatch": "^4.0.4", - "pirates": "^4.0.4", - "slash": "^3.0.0", - "source-map": "^0.6.1", - "write-file-atomic": "^3.0.0" - }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=0.10.0" } }, - "node_modules/@jest/reporters/node_modules/@jest/types": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", - "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "node_modules/@stencil/sass": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@stencil/sass/-/sass-2.0.3.tgz", + "integrity": "sha512-ypS+0f6bJH2qXqrNAHirlYOWFax+qKKOIePLs7cu4LfKFr4ZVJSGRFBdgaeRrZMUhJWnhjV6io2uDldhrQhnMg==", "dev": true, - "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^16.0.0", - "chalk": "^4.0.0" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "peerDependencies": { + "@stencil/core": ">=2.0.0 || >=3.0.0-beta.0" } }, - "node_modules/@jest/reporters/node_modules/@types/yargs": { - "version": "16.0.5", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", - "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "node_modules/@stencil/store": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@stencil/store/-/store-2.0.3.tgz", + "integrity": "sha512-45SkXtVXaYMo3itvfUleKjQr8BNowi6b0i1jHCx8O2UXJag5myvstjf4uIxkW6IscV92VzLrpIXUFvbJJKa7DA==", "dev": true, - "dependencies": { - "@types/yargs-parser": "*" + "peerDependencies": { + "@stencil/core": ">=2.0.0" } }, - "node_modules/@jest/reporters/node_modules/jest-haste-map": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", - "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", + "node_modules/@szmarczak/http-timer": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-1.1.2.tgz", + "integrity": "sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==", "dev": true, "dependencies": { - "@jest/types": "^27.5.1", - "@types/graceful-fs": "^4.1.2", - "@types/node": "*", - "anymatch": "^3.0.3", - "fb-watchman": "^2.0.0", - "graceful-fs": "^4.2.9", - "jest-regex-util": "^27.5.1", - "jest-serializer": "^27.5.1", - "jest-util": "^27.5.1", - "jest-worker": "^27.5.1", - "micromatch": "^4.0.4", - "walker": "^1.0.7" + "defer-to-connect": "^1.0.1" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - }, - "optionalDependencies": { - "fsevents": "^2.3.2" + "node": ">=6" } }, - "node_modules/@jest/reporters/node_modules/jest-regex-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", - "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", + "node_modules/@tootallnate/once": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz", + "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==", "dev": true, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">= 6" } }, - "node_modules/@jest/reporters/node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "node_modules/@tsconfig/node10": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.9.tgz", + "integrity": "sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==", + "dev": true + }, + "node_modules/@tsconfig/node12": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz", + "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==", + "dev": true + }, + "node_modules/@tsconfig/node14": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", + "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==", + "dev": true + }, + "node_modules/@tsconfig/node16": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.3.tgz", + "integrity": "sha512-yOlFc+7UtL/89t2ZhjPvvB/DeAr3r+Dq58IgzsFkOAvVC6NMJXmCGjbptdXdR9qsX7pKcTL+s87FtYREi2dEEQ==", + "dev": true + }, + "node_modules/@types/arcgis-js-api": { + "version": "4.27.0", + "resolved": "https://registry.npmjs.org/@types/arcgis-js-api/-/arcgis-js-api-4.27.0.tgz", + "integrity": "sha512-sjbbvVTOvzZRUR6rrA4KSbxlvAnclAen2Km+IHlUEYxu7zQKAiSW+zQL6MkQw8ujvYEZRHj8VBttcvjONzmNIg==", + "dev": true + }, + "node_modules/@types/babel__core": { + "version": "7.20.1", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.1.tgz", + "integrity": "sha512-aACu/U/omhdk15O4Nfb+fHgH/z3QsfQzpnvRZhYhThms83ZnAOZz7zZAWO7mn2yyNQaA4xTO8GLK3uqFU4bYYw==", "dev": true, "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" } }, - "node_modules/@jest/reporters/node_modules/jest-worker": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", - "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "node_modules/@types/babel__generator": { + "version": "7.6.4", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.4.tgz", + "integrity": "sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg==", "dev": true, "dependencies": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" - }, - "engines": { - "node": ">= 10.13.0" + "@babel/types": "^7.0.0" } }, - "node_modules/@jest/reporters/node_modules/supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "node_modules/@types/babel__template": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.1.tgz", + "integrity": "sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g==", "dev": true, "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" } }, - "node_modules/@jest/schemas": { - "version": "29.6.0", - "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.0.tgz", - "integrity": "sha512-rxLjXyJBTL4LQeJW3aKo0M/+GkCOXsO+8i9Iu7eDb6KwtP65ayoDsitrdPBtujxQ88k4wI2FNYfa6TOGwSn6cQ==", + "node_modules/@types/babel__traverse": { + "version": "7.20.1", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.1.tgz", + "integrity": "sha512-MitHFXnhtgwsGZWtT68URpOvLN4EREih1u3QtQiN4VdAxWKRVvGCSvw/Qth0M0Qq3pJpnGOu5JaM/ydK7OGbqg==", "dev": true, "dependencies": { - "@sinclair/typebox": "^0.27.8" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "@babel/types": "^7.20.7" } }, - "node_modules/@jest/source-map": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-27.5.1.tgz", - "integrity": "sha512-y9NIHUYF3PJRlHk98NdC/N1gl88BL08aQQgu4k4ZopQkCw9t9cV8mtl3TV8b/YCB8XaVTFrmUTAJvjsntDireg==", - "dev": true, + "node_modules/@types/color": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/color/-/color-3.0.3.tgz", + "integrity": "sha512-X//qzJ3d3Zj82J9sC/C18ZY5f43utPbAJ6PhYt/M7uG6etcF6MRpKdN880KBy43B0BMzSfeT96MzrsNjFI3GbA==", + "peer": true, "dependencies": { - "callsites": "^3.0.0", - "graceful-fs": "^4.2.9", - "source-map": "^0.6.0" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "@types/color-convert": "*" } }, - "node_modules/@jest/test-result": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-27.5.1.tgz", - "integrity": "sha512-EW35l2RYFUcUQxFJz5Cv5MTOxlJIQs4I7gxzi2zVU7PJhOwfYq1MdC5nhSmYjX1gmMmLPvB3sIaC+BkcHRBfag==", - "dev": true, + "node_modules/@types/color-convert": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@types/color-convert/-/color-convert-2.0.0.tgz", + "integrity": "sha512-m7GG7IKKGuJUXvkZ1qqG3ChccdIM/qBBo913z+Xft0nKCX4hAU/IxKwZBU4cpRZ7GS5kV4vOblUkILtSShCPXQ==", + "peer": true, "dependencies": { - "@jest/console": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/istanbul-lib-coverage": "^2.0.0", - "collect-v8-coverage": "^1.0.0" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "@types/color-name": "*" } }, - "node_modules/@jest/test-result/node_modules/@jest/types": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", - "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "node_modules/@types/color-name": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@types/color-name/-/color-name-1.1.1.tgz", + "integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==", + "peer": true + }, + "node_modules/@types/graceful-fs": { + "version": "4.1.6", + "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.6.tgz", + "integrity": "sha512-Sig0SNORX9fdW+bQuTEovKj3uHcUL6LQKbCrrqb1X7J6/ReAbhCXRAhc+SMejhLELFj2QcyuxmUooZ4bt5ReSw==", "dev": true, "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^16.0.0", - "chalk": "^4.0.0" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "@types/node": "*" } }, - "node_modules/@jest/test-result/node_modules/@types/yargs": { - "version": "16.0.5", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", - "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "node_modules/@types/istanbul-lib-coverage": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz", + "integrity": "sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==", + "dev": true + }, + "node_modules/@types/istanbul-lib-report": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", + "integrity": "sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==", "dev": true, "dependencies": { - "@types/yargs-parser": "*" + "@types/istanbul-lib-coverage": "*" } }, - "node_modules/@jest/test-sequencer": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-27.5.1.tgz", - "integrity": "sha512-LCheJF7WB2+9JuCS7VB/EmGIdQuhtqjRNI9A43idHv3E4KltCTsPsLxvdaubFHSYwY/fNjMWjl6vNRhDiN7vpQ==", + "node_modules/@types/istanbul-reports": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz", + "integrity": "sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==", "dev": true, "dependencies": { - "@jest/test-result": "^27.5.1", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", - "jest-runtime": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "@types/istanbul-lib-report": "*" } }, - "node_modules/@jest/test-sequencer/node_modules/@jest/types": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", - "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "node_modules/@types/jest": { + "version": "27.5.2", + "resolved": "https://registry.npmjs.org/@types/jest/-/jest-27.5.2.tgz", + "integrity": "sha512-mpT8LJJ4CMeeahobofYWIjFo0xonRS/HfxnVEPMPFSQdGUt1uHCnoPT7Zhb+sjDU2wz0oKV0OLUR0WzrHNgfeA==", "dev": true, "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^16.0.0", - "chalk": "^4.0.0" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "jest-matcher-utils": "^27.0.0", + "pretty-format": "^27.0.0" } }, - "node_modules/@jest/test-sequencer/node_modules/@types/yargs": { - "version": "16.0.5", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", - "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "node_modules/@types/json-schema": { + "version": "7.0.11", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz", + "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==", + "dev": true + }, + "node_modules/@types/lodash": { + "version": "4.14.191", + "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.191.tgz", + "integrity": "sha512-BdZ5BCCvho3EIXw6wUCXHe7rS53AIDPLE+JzwgT+OsJk53oBfbSmZZ7CX4VaRoN78N+TJpFi9QPlfIVNmJYWxQ==", + "dev": true + }, + "node_modules/@types/lodash.isplainobject": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/@types/lodash.isplainobject/-/lodash.isplainobject-4.0.7.tgz", + "integrity": "sha512-fdHtdjpy7fXydEaRHx1dPa+2AVmLbmk2Gv7f0w/90BKCH0DkWo8pIrzygnB3rvgo6oKNb3cO9VaPpj9GLCr5Ug==", "dev": true, "dependencies": { - "@types/yargs-parser": "*" + "@types/lodash": "*" } }, - "node_modules/@jest/test-sequencer/node_modules/jest-haste-map": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", - "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "@types/graceful-fs": "^4.1.2", - "@types/node": "*", - "anymatch": "^3.0.3", - "fb-watchman": "^2.0.0", - "graceful-fs": "^4.2.9", - "jest-regex-util": "^27.5.1", - "jest-serializer": "^27.5.1", - "jest-util": "^27.5.1", - "jest-worker": "^27.5.1", - "micromatch": "^4.0.4", - "walker": "^1.0.7" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - }, - "optionalDependencies": { - "fsevents": "^2.3.2" - } + "node_modules/@types/node": { + "version": "16.18.11", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.11.tgz", + "integrity": "sha512-3oJbGBUWuS6ahSnEq1eN2XrCyf4YsWI8OyCvo7c64zQJNplk3mO84t53o8lfTk+2ji59g5ycfc6qQ3fdHliHuA==", + "dev": true }, - "node_modules/@jest/test-sequencer/node_modules/jest-regex-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", - "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", - "dev": true, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } + "node_modules/@types/normalize-package-data": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz", + "integrity": "sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==", + "dev": true }, - "node_modules/@jest/test-sequencer/node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "node_modules/@types/parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", + "dev": true + }, + "node_modules/@types/prettier": { + "version": "2.7.3", + "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.7.3.tgz", + "integrity": "sha512-+68kP9yzs4LMp7VNh8gdzMSPZFL44MLGqiHWvttYJe+6qnuVr4Ek9wSBQoveqY/r+LwjCcU29kNVkidwim+kYA==", + "dev": true + }, + "node_modules/@types/puppeteer": { + "version": "5.4.7", + "resolved": "https://registry.npmjs.org/@types/puppeteer/-/puppeteer-5.4.7.tgz", + "integrity": "sha512-JdGWZZYL0vKapXF4oQTC5hLVNfOgdPrqeZ1BiQnGk5cB7HeE91EWUiTdVSdQPobRN8rIcdffjiOgCYJ/S8QrnQ==", "dev": true, "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "@types/node": "*" } }, - "node_modules/@jest/test-sequencer/node_modules/jest-worker": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", - "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "node_modules/@types/raf": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/@types/raf/-/raf-3.4.0.tgz", + "integrity": "sha512-taW5/WYqo36N7V39oYyHP9Ipfd5pNFvGTIQsNGj86xV88YQ7GnI30/yMfKDF7Zgin0m3e+ikX88FvImnK4RjGw==", + "optional": true + }, + "node_modules/@types/semver": { + "version": "7.3.13", + "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.3.13.tgz", + "integrity": "sha512-21cFJr9z3g5dW8B0CVI9g2O9beqaThGQ6ZFBqHfwhzLDKUxaqTIy3vnfah/UPkfOiF2pLq+tGz+W8RyCskuslw==", + "dev": true + }, + "node_modules/@types/stack-utils": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.1.tgz", + "integrity": "sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw==", + "dev": true + }, + "node_modules/@types/yargs-parser": { + "version": "21.0.0", + "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.0.tgz", + "integrity": "sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==", + "dev": true + }, + "node_modules/@types/yauzl": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/@types/yauzl/-/yauzl-2.10.0.tgz", + "integrity": "sha512-Cn6WYCm0tXv8p6k+A8PvbDG763EDpBoTzHdA+Q/MF6H3sapGjCm9NzoaJncJS9tUKSuCoDs9XHxYYsQDgxR6kw==", "dev": true, + "optional": true, "dependencies": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" - }, - "engines": { - "node": ">= 10.13.0" + "@types/node": "*" } }, - "node_modules/@jest/test-sequencer/node_modules/supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "node_modules/@typescript-eslint/eslint-plugin": { + "version": "5.49.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.49.0.tgz", + "integrity": "sha512-IhxabIpcf++TBaBa1h7jtOWyon80SXPRLDq0dVz5SLFC/eW6tofkw/O7Ar3lkx5z5U6wzbKDrl2larprp5kk5Q==", "dev": true, "dependencies": { - "has-flag": "^4.0.0" + "@typescript-eslint/scope-manager": "5.49.0", + "@typescript-eslint/type-utils": "5.49.0", + "@typescript-eslint/utils": "5.49.0", + "debug": "^4.3.4", + "ignore": "^5.2.0", + "natural-compare-lite": "^1.4.0", + "regexpp": "^3.2.0", + "semver": "^7.3.7", + "tsutils": "^3.21.0" }, "engines": { - "node": ">=10" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "@typescript-eslint/parser": "^5.0.0", + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, - "node_modules/@jest/transform": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-29.6.2.tgz", - "integrity": "sha512-ZqCqEISr58Ce3U+buNFJYUktLJZOggfyvR+bZMaiV1e8B1SIvJbwZMrYz3gx/KAPn9EXmOmN+uB08yLCjWkQQg==", + "node_modules/@typescript-eslint/experimental-utils": { + "version": "5.49.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-5.49.0.tgz", + "integrity": "sha512-veLpCJLYn44Fru7mSvi2doxQMzMCOFSDYdMUQhAzaH1vFYq2RVNpecZ8d18Wh6UMv07yahXkiv/aShWE48iE9Q==", "dev": true, "dependencies": { - "@babel/core": "^7.11.6", - "@jest/types": "^29.6.1", - "@jridgewell/trace-mapping": "^0.3.18", - "babel-plugin-istanbul": "^6.1.1", - "chalk": "^4.0.0", - "convert-source-map": "^2.0.0", - "fast-json-stable-stringify": "^2.1.0", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^29.6.2", - "jest-regex-util": "^29.4.3", - "jest-util": "^29.6.2", - "micromatch": "^4.0.4", - "pirates": "^4.0.4", - "slash": "^3.0.0", - "write-file-atomic": "^4.0.2" + "@typescript-eslint/utils": "5.49.0" }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" } }, - "node_modules/@jest/transform/node_modules/convert-source-map": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", - "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", - "dev": true - }, - "node_modules/@jest/transform/node_modules/write-file-atomic": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz", - "integrity": "sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==", + "node_modules/@typescript-eslint/parser": { + "version": "5.49.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.49.0.tgz", + "integrity": "sha512-veDlZN9mUhGqU31Qiv2qEp+XrJj5fgZpJ8PW30sHU+j/8/e5ruAhLaVDAeznS7A7i4ucb/s8IozpDtt9NqCkZg==", "dev": true, "dependencies": { - "imurmurhash": "^0.1.4", - "signal-exit": "^3.0.7" + "@typescript-eslint/scope-manager": "5.49.0", + "@typescript-eslint/types": "5.49.0", + "@typescript-eslint/typescript-estree": "5.49.0", + "debug": "^4.3.4" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, - "node_modules/@jest/types": { - "version": "29.6.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.6.1.tgz", - "integrity": "sha512-tPKQNMPuXgvdOn2/Lg9HNfUvjYVGolt04Hp03f5hAk878uwOLikN+JzeLY0HcVgKgFl9Hs3EIqpu3WX27XNhnw==", + "node_modules/@typescript-eslint/scope-manager": { + "version": "5.49.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.49.0.tgz", + "integrity": "sha512-clpROBOiMIzpbWNxCe1xDK14uPZh35u4QaZO1GddilEzoCLAEz4szb51rBpdgurs5k2YzPtJeTEN3qVbG+LRUQ==", "dev": true, "dependencies": { - "@jest/schemas": "^29.6.0", - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^17.0.8", - "chalk": "^4.0.0" + "@typescript-eslint/types": "5.49.0", + "@typescript-eslint/visitor-keys": "5.49.0" }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" } }, - "node_modules/@jridgewell/gen-mapping": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", - "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", + "node_modules/@typescript-eslint/type-utils": { + "version": "5.49.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.49.0.tgz", + "integrity": "sha512-eUgLTYq0tR0FGU5g1YHm4rt5H/+V2IPVkP0cBmbhRyEmyGe4XvJ2YJ6sYTmONfjmdMqyMLad7SB8GvblbeESZA==", "dev": true, "dependencies": { - "@jridgewell/set-array": "^1.0.0", - "@jridgewell/sourcemap-codec": "^1.4.10" + "@typescript-eslint/typescript-estree": "5.49.0", + "@typescript-eslint/utils": "5.49.0", + "debug": "^4.3.4", + "tsutils": "^3.21.0" }, "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/resolve-uri": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", - "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", - "dev": true, - "engines": { - "node": ">=6.0.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "*" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, - "node_modules/@jridgewell/set-array": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", - "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "node_modules/@typescript-eslint/types": { + "version": "5.49.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.49.0.tgz", + "integrity": "sha512-7If46kusG+sSnEpu0yOz2xFv5nRz158nzEXnJFCGVEHWnuzolXKwrH5Bsf9zsNlOQkyZuk0BZKKoJQI+1JPBBg==", "dev": true, "engines": { - "node": ">=6.0.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" } }, - "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.14", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", - "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", - "dev": true - }, - "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.19", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.19.tgz", - "integrity": "sha512-kf37QtfW+Hwx/buWGMPcR60iF9ziHa6r/CZJIHbmcm4+0qrXiVdxegAH0F6yddEVQ7zdkjcGCgCzUu+BcbhQxw==", + "node_modules/@typescript-eslint/typescript-estree": { + "version": "5.49.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.49.0.tgz", + "integrity": "sha512-PBdx+V7deZT/3GjNYPVQv1Nc0U46dAHbIuOG8AZ3on3vuEKiPDwFE/lG1snN2eUB9IhF7EyF7K1hmTcLztNIsA==", "dev": true, "dependencies": { - "@jridgewell/resolve-uri": "^3.1.0", - "@jridgewell/sourcemap-codec": "^1.4.14" - } - }, - "node_modules/@nicolo-ribaudo/eslint-scope-5-internals": { - "version": "5.1.1-v1", - "resolved": "https://registry.npmjs.org/@nicolo-ribaudo/eslint-scope-5-internals/-/eslint-scope-5-internals-5.1.1-v1.tgz", - "integrity": "sha512-54/JRvkLIzzDWshCWfuhadfrfZVPiElY8Fcgmg1HroEly/EDSszzhBAsarCux+D/kOslTRquNzuyGSmUSTTHGg==", - "dev": true, - "dependencies": { - "eslint-scope": "5.1.1" + "@typescript-eslint/types": "5.49.0", + "@typescript-eslint/visitor-keys": "5.49.0", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "semver": "^7.3.7", + "tsutils": "^3.21.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, - "node_modules/@nodelib/fs.scandir": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", - "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "node_modules/@typescript-eslint/utils": { + "version": "5.49.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.49.0.tgz", + "integrity": "sha512-cPJue/4Si25FViIb74sHCLtM4nTSBXtLx1d3/QT6mirQ/c65bV8arBEebBJJizfq8W2YyMoPI/WWPFWitmNqnQ==", "dev": true, "dependencies": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" + "@types/json-schema": "^7.0.9", + "@types/semver": "^7.3.12", + "@typescript-eslint/scope-manager": "5.49.0", + "@typescript-eslint/types": "5.49.0", + "@typescript-eslint/typescript-estree": "5.49.0", + "eslint-scope": "^5.1.1", + "eslint-utils": "^3.0.0", + "semver": "^7.3.7" }, "engines": { - "node": ">= 8" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" } }, - "node_modules/@nodelib/fs.stat": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", - "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "node_modules/@typescript-eslint/visitor-keys": { + "version": "5.49.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.49.0.tgz", + "integrity": "sha512-v9jBMjpNWyn8B6k/Mjt6VbUS4J1GvUlR4x3Y+ibnP1z7y7V4n0WRz+50DY6+Myj0UaXVSuUlHohO+eZ8IJEnkg==", "dev": true, + "dependencies": { + "@typescript-eslint/types": "5.49.0", + "eslint-visitor-keys": "^3.3.0" + }, "engines": { - "node": ">= 8" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" } }, - "node_modules/@nodelib/fs.walk": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", - "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "node_modules/abab": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", + "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==" + }, + "node_modules/acorn": { + "version": "8.8.2", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.2.tgz", + "integrity": "sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==", "dev": true, - "dependencies": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" + "bin": { + "acorn": "bin/acorn" }, "engines": { - "node": ">= 8" + "node": ">=0.4.0" } }, - "node_modules/@octokit/auth-token": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-2.5.0.tgz", - "integrity": "sha512-r5FVUJCOLl19AxiuZD2VRZ/ORjp/4IN98Of6YJoJOkY75CIBuYfmiNHGrDwXr+aLGG55igl9QrxX3hbiXlLb+g==", + "node_modules/acorn-globals": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-6.0.0.tgz", + "integrity": "sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg==", "dev": true, "dependencies": { - "@octokit/types": "^6.0.3" + "acorn": "^7.1.1", + "acorn-walk": "^7.1.1" } }, - "node_modules/@octokit/core": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/@octokit/core/-/core-3.6.0.tgz", - "integrity": "sha512-7RKRKuA4xTjMhY+eG3jthb3hlZCsOwg3rztWh75Xc+ShDWOfDDATWbeZpAHBNRpm4Tv9WgBMOy1zEJYXG6NJ7Q==", + "node_modules/acorn-globals/node_modules/acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", "dev": true, - "dependencies": { - "@octokit/auth-token": "^2.4.4", - "@octokit/graphql": "^4.5.8", - "@octokit/request": "^5.6.3", - "@octokit/request-error": "^2.0.5", - "@octokit/types": "^6.0.3", - "before-after-hook": "^2.2.0", - "universal-user-agent": "^6.0.0" + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" } }, - "node_modules/@octokit/endpoint": { - "version": "6.0.12", - "resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-6.0.12.tgz", - "integrity": "sha512-lF3puPwkQWGfkMClXb4k/eUT/nZKQfxinRWJrdZaJO85Dqwo/G0yOC434Jr2ojwafWJMYqFGFa5ms4jJUgujdA==", + "node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", "dev": true, - "dependencies": { - "@octokit/types": "^6.0.3", - "is-plain-object": "^5.0.0", - "universal-user-agent": "^6.0.0" + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" } }, - "node_modules/@octokit/graphql": { - "version": "4.8.0", - "resolved": "https://registry.npmjs.org/@octokit/graphql/-/graphql-4.8.0.tgz", - "integrity": "sha512-0gv+qLSBLKF0z8TKaSKTsS39scVKF9dbMxJpj3U0vC7wjNWFuIpL/z76Qe2fiuCbDRcJSavkXsVtMS6/dtQQsg==", + "node_modules/acorn-node": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/acorn-node/-/acorn-node-1.8.2.tgz", + "integrity": "sha512-8mt+fslDufLYntIoPAaIMUe/lrbrehIiwmR3t2k9LljIzoigEPF27eLk2hy8zSGzmR/ogr7zbRKINMo1u0yh5A==", "dev": true, "dependencies": { - "@octokit/request": "^5.6.0", - "@octokit/types": "^6.0.3", - "universal-user-agent": "^6.0.0" + "acorn": "^7.0.0", + "acorn-walk": "^7.0.0", + "xtend": "^4.0.2" } }, - "node_modules/@octokit/openapi-types": { - "version": "12.11.0", - "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-12.11.0.tgz", - "integrity": "sha512-VsXyi8peyRq9PqIz/tpqiL2w3w80OgVMwBHltTml3LmVvXiphgeqmY9mvBw9Wu7e0QWk/fqD37ux8yP5uVekyQ==", - "dev": true - }, - "node_modules/@octokit/plugin-paginate-rest": { - "version": "2.21.3", - "resolved": "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-2.21.3.tgz", - "integrity": "sha512-aCZTEf0y2h3OLbrgKkrfFdjRL6eSOo8komneVQJnYecAxIej7Bafor2xhuDJOIFau4pk0i/P28/XgtbyPF0ZHw==", + "node_modules/acorn-node/node_modules/acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", "dev": true, - "dependencies": { - "@octokit/types": "^6.40.0" + "bin": { + "acorn": "bin/acorn" }, - "peerDependencies": { - "@octokit/core": ">=2" + "engines": { + "node": ">=0.4.0" } }, - "node_modules/@octokit/plugin-request-log": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@octokit/plugin-request-log/-/plugin-request-log-1.0.4.tgz", - "integrity": "sha512-mLUsMkgP7K/cnFEw07kWqXGF5LKrOkD+lhCrKvPHXWDywAwuDUeDwWBpc69XK3pNX0uKiVt8g5z96PJ6z9xCFA==", + "node_modules/acorn-walk": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz", + "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", "dev": true, - "peerDependencies": { - "@octokit/core": ">=3" + "engines": { + "node": ">=0.4.0" } }, - "node_modules/@octokit/plugin-rest-endpoint-methods": { - "version": "5.16.2", - "resolved": "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-5.16.2.tgz", - "integrity": "sha512-8QFz29Fg5jDuTPXVtey05BLm7OB+M8fnvE64RNegzX7U+5NUXcOcnpTIK0YfSHBg8gYd0oxIq3IZTe9SfPZiRw==", - "dev": true, + "node_modules/adlib": { + "version": "3.0.8", + "resolved": "https://registry.npmjs.org/adlib/-/adlib-3.0.8.tgz", + "integrity": "sha512-CbQ+mcm45pdDN0aAiGYP6FZWDor+BM4DbqJsrUptM79a2+FbiP8QdF0xHABbgCkioApKqg8lI33Gl6X8GFelfA==", "dependencies": { - "@octokit/types": "^6.39.0", - "deprecation": "^2.3.1" - }, - "peerDependencies": { - "@octokit/core": ">=3" + "esm": "^3.2.25" } }, - "node_modules/@octokit/request": { - "version": "5.6.3", - "resolved": "https://registry.npmjs.org/@octokit/request/-/request-5.6.3.tgz", - "integrity": "sha512-bFJl0I1KVc9jYTe9tdGGpAMPy32dLBXXo1dS/YwSCTL/2nd9XeHsY616RE3HPXDVk+a+dBuzyz5YdlXwcDTr2A==", + "node_modules/agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", "dev": true, "dependencies": { - "@octokit/endpoint": "^6.0.1", - "@octokit/request-error": "^2.1.0", - "@octokit/types": "^6.16.1", - "is-plain-object": "^5.0.0", - "node-fetch": "^2.6.7", - "universal-user-agent": "^6.0.0" + "debug": "4" + }, + "engines": { + "node": ">= 6.0.0" } }, - "node_modules/@octokit/request-error": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-2.1.0.tgz", - "integrity": "sha512-1VIvgXxs9WHSjicsRwq8PlR2LR2x6DwsJAaFgzdi0JfJoGSO8mYI/cHJQ+9FbN21aa+DrgNLnwObmyeSC8Rmpg==", - "dev": true, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", "dependencies": { - "@octokit/types": "^6.0.3", - "deprecation": "^2.0.0", - "once": "^1.4.0" + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" } }, - "node_modules/@octokit/rest": { - "version": "18.12.0", - "resolved": "https://registry.npmjs.org/@octokit/rest/-/rest-18.12.0.tgz", - "integrity": "sha512-gDPiOHlyGavxr72y0guQEhLsemgVjwRePayJ+FcKc2SJqKUbxbkvf5kAZEWA/MKvsfYlQAMVzNJE3ezQcxMJ2Q==", + "node_modules/ansi-align": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.1.tgz", + "integrity": "sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==", "dev": true, "dependencies": { - "@octokit/core": "^3.5.1", - "@octokit/plugin-paginate-rest": "^2.16.8", - "@octokit/plugin-request-log": "^1.0.4", - "@octokit/plugin-rest-endpoint-methods": "^5.12.0" + "string-width": "^4.1.0" } }, - "node_modules/@octokit/types": { - "version": "6.41.0", - "resolved": "https://registry.npmjs.org/@octokit/types/-/types-6.41.0.tgz", - "integrity": "sha512-eJ2jbzjdijiL3B4PrSQaSjuF2sPEQPVCPzBvTHJD9Nz+9dw2SGH4K4xeQJ77YfTq5bRQ+bD8wT11JbeDPmxmGg==", - "dev": true, + "node_modules/ansi-escapes": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "dev": true, "dependencies": { - "@octokit/openapi-types": "^12.11.0" + "type-fest": "^0.21.3" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@pdf-lib/fontkit": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@pdf-lib/fontkit/-/fontkit-1.1.1.tgz", - "integrity": "sha512-KjMd7grNapIWS/Dm0gvfHEilSyAmeLvrEGVcqLGi0VYebuqqzTbgF29efCx7tvx+IEbG3zQciRSWl3GkUSvjZg==", - "dependencies": { - "pako": "^1.0.6" + "node_modules/ansi-escapes/node_modules/type-fest": { + "version": "0.21.3", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@pdf-lib/standard-fonts": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@pdf-lib/standard-fonts/-/standard-fonts-1.0.0.tgz", - "integrity": "sha512-hU30BK9IUN/su0Mn9VdlVKsWBS6GyhVfqjwl1FjZN4TxP6cCw0jP2w7V3Hf5uX7M0AZJ16vey9yE0ny7Sa59ZA==", - "dependencies": { - "pako": "^1.0.6" + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" } }, - "node_modules/@pdf-lib/upng": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@pdf-lib/upng/-/upng-1.0.1.tgz", - "integrity": "sha512-dQK2FUMQtowVP00mtIksrlZhdFXQZPC+taih1q4CvPZ5vqdxR/LKBaFg0oAfzd1GlHZXXSPdQfzQnt+ViGvEIQ==", + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, "dependencies": { - "pako": "^1.0.10" + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/@puppeteer/browsers": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/@puppeteer/browsers/-/browsers-1.6.0.tgz", - "integrity": "sha512-R2ib8j329427jtKB/qlz0MJbwfJE/6I8ocJLiajsRqJ2PPI8DbjiNzC3lQZeISXEcjOBVhbG2RafN8SlHdcT+A==", + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", "dev": true, "dependencies": { - "debug": "4.3.4", - "extract-zip": "2.0.1", - "progress": "2.0.3", - "proxy-agent": "6.3.0", - "tar-fs": "3.0.4", - "unbzip2-stream": "1.4.3", - "yargs": "17.7.1" + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" }, - "bin": { - "browsers": "lib/cjs/main-cli.js" + "engines": { + "node": ">= 8" + } + }, + "node_modules/application-config": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/application-config/-/application-config-2.0.0.tgz", + "integrity": "sha512-NC5/0guSZK3/UgUDfCk/riByXzqz0owL1L3r63JPSBzYk5QALrp3bLxbsR7qeSfvYfFmAhnp3dbqYsW3U9MpZQ==", + "dev": true, + "dependencies": { + "application-config-path": "^0.1.0", + "load-json-file": "^6.2.0", + "write-json-file": "^4.2.0" }, "engines": { - "node": ">=16.3.0" + "node": ">=8.3" } }, - "node_modules/@sinclair/typebox": { - "version": "0.27.8", - "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz", - "integrity": "sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==", + "node_modules/application-config-path": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/application-config-path/-/application-config-path-0.1.1.tgz", + "integrity": "sha512-zy9cHePtMP0YhwG+CfHm0bgwdnga2X3gZexpdCwEj//dpb+TKajtiC8REEUJUSq6Ab4f9cgNy2l8ObXzCXFkEw==", "dev": true }, - "node_modules/@sindresorhus/is": { - "version": "0.14.0", - "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz", - "integrity": "sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==", + "node_modules/aproba": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", + "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==", + "dev": true + }, + "node_modules/arg": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz", + "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==", + "dev": true + }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true + }, + "node_modules/array-includes": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.6.tgz", + "integrity": "sha512-sgTbLvL6cNnw24FnbaDyjmvddQ2ML8arZsgaJhoABMoplz/4QRhtrYS+alr1BUM1Bwp6dhx8vVCBSLG+StwOFw==", "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "get-intrinsic": "^1.1.3", + "is-string": "^1.0.7" + }, "engines": { - "node": ">=6" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@sinonjs/commons": { - "version": "1.8.6", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.6.tgz", - "integrity": "sha512-Ky+XkAkqPZSm3NLBeUng77EBQl3cmeJhITaGHdYH8kjVB+aun3S4XBRti2zt17mtt0mIUDiNxYeoJm6drVvBJQ==", + "node_modules/array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", "dev": true, - "dependencies": { - "type-detect": "4.0.8" + "engines": { + "node": ">=8" } }, - "node_modules/@sinonjs/fake-timers": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-8.1.0.tgz", - "integrity": "sha512-OAPJUAtgeINhh/TAlUID4QTs53Njm7xzddaVlEs/SXwgtiD1tW22zAB/W1wdqfrpmikgaWQ9Fw6Ws+hsiRm5Vg==", + "node_modules/array.prototype.flatmap": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.1.tgz", + "integrity": "sha512-8UGn9O1FDVvMNB0UlLv4voxRMze7+FpHyF5mSMRjWHUMlpoDViniy05870VlxhfgTnLbpuwTzvD76MTtWxB/mQ==", "dev": true, "dependencies": { - "@sinonjs/commons": "^1.7.0" + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "es-shim-unscopables": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@stencil/core": { - "version": "2.22.3", - "resolved": "https://registry.npmjs.org/@stencil/core/-/core-2.22.3.tgz", - "integrity": "sha512-kmVA0M/HojwsfkeHsifvHVIYe4l5tin7J5+DLgtl8h6WWfiMClND5K3ifCXXI2ETDNKiEk21p6jql3Fx9o2rng==", + "node_modules/async": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.4.tgz", + "integrity": "sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==", + "dev": true + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", + "dev": true + }, + "node_modules/atob": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", + "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", "bin": { - "stencil": "bin/stencil" + "atob": "bin/atob.js" }, "engines": { - "node": ">=12.10.0", - "npm": ">=6.0.0" + "node": ">= 4.5.0" } }, - "node_modules/@stencil/postcss": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@stencil/postcss/-/postcss-2.1.0.tgz", - "integrity": "sha512-/e4TYEXErGaHxH0ocg620YqEMLuMLpK/Wg4MJsiJglrLZCZhU4XCX1N0SwxaIOUbEZ1Zh+AqQ++yMI92ilndEA==", + "node_modules/autoprefixer": { + "version": "10.4.4", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.4.tgz", + "integrity": "sha512-Tm8JxsB286VweiZ5F0anmbyGiNI3v3wGv3mz9W+cxEDYB/6jbnj6GM9H9mK3wIL8ftgl+C07Lcwb8PG5PCCPzA==", "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/autoprefixer" + } + ], "dependencies": { - "autoprefixer": "^10.3.6", - "postcss": "~8.3.8" + "browserslist": "^4.20.2", + "caniuse-lite": "^1.0.30001317", + "fraction.js": "^4.2.0", + "normalize-range": "^0.1.2", + "picocolors": "^1.0.0", + "postcss-value-parser": "^4.2.0" + }, + "bin": { + "autoprefixer": "bin/autoprefixer" + }, + "engines": { + "node": "^10 || ^12 || >=14" }, "peerDependencies": { - "@stencil/core": ">=2.0.0" + "postcss": "^8.1.0" } }, - "node_modules/@stencil/postcss/node_modules/postcss": { - "version": "8.3.11", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.3.11.tgz", - "integrity": "sha512-hCmlUAIlUiav8Xdqw3Io4LcpA1DOt7h3LSTAC4G6JGHFFaWzI6qvFt9oilvl8BmkbBRX1IhM90ZAmpk68zccQA==", + "node_modules/available-typed-arrays": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz", + "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==", "dev": true, - "dependencies": { - "nanoid": "^3.1.30", - "picocolors": "^1.0.0", - "source-map-js": "^0.6.2" - }, "engines": { - "node": "^10 || ^12 || >=14" + "node": ">= 0.4" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@stencil/postcss/node_modules/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==", + "node_modules/babel-plugin-istanbul": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", + "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@istanbuljs/load-nyc-config": "^1.0.0", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-instrument": "^5.0.4", + "test-exclude": "^6.0.0" + }, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, - "node_modules/@stencil/sass": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@stencil/sass/-/sass-2.0.3.tgz", - "integrity": "sha512-ypS+0f6bJH2qXqrNAHirlYOWFax+qKKOIePLs7cu4LfKFr4ZVJSGRFBdgaeRrZMUhJWnhjV6io2uDldhrQhnMg==", - "dev": true, - "peerDependencies": { - "@stencil/core": ">=2.0.0 || >=3.0.0-beta.0" - } - }, - "node_modules/@stencil/store": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@stencil/store/-/store-2.0.3.tgz", - "integrity": "sha512-45SkXtVXaYMo3itvfUleKjQr8BNowi6b0i1jHCx8O2UXJag5myvstjf4uIxkW6IscV92VzLrpIXUFvbJJKa7DA==", - "dev": true, - "peerDependencies": { - "@stencil/core": ">=2.0.0" - } - }, - "node_modules/@szmarczak/http-timer": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-1.1.2.tgz", - "integrity": "sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==", + "node_modules/babel-preset-current-node-syntax": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz", + "integrity": "sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==", "dev": true, "dependencies": { - "defer-to-connect": "^1.0.1" + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-bigint": "^7.8.3", + "@babel/plugin-syntax-class-properties": "^7.8.3", + "@babel/plugin-syntax-import-meta": "^7.8.3", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.8.3", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.8.3", + "@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-top-level-await": "^7.8.3" }, - "engines": { - "node": ">=6" - } - }, - "node_modules/@tootallnate/once": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz", - "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==", - "dev": true, - "engines": { - "node": ">= 6" + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "node_modules/@tootallnate/quickjs-emscripten": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@tootallnate/quickjs-emscripten/-/quickjs-emscripten-0.23.0.tgz", - "integrity": "sha512-C5Mc6rdnsaJDjO3UpGW/CQTHtCKaYlScZTly4JIu97Jxo/odCiH0ITnDXSJPTOrEKk/ycSZ0AOgTmkDtkOsvIA==", - "dev": true - }, - "node_modules/@tsconfig/node10": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.9.tgz", - "integrity": "sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==", - "dev": true - }, - "node_modules/@tsconfig/node12": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz", - "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==", + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", "dev": true }, - "node_modules/@tsconfig/node14": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", - "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==", - "dev": true + "node_modules/base64-arraybuffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-1.0.2.tgz", + "integrity": "sha512-I3yl4r9QB5ZRY3XuJVEPfc2XhZO6YweFPI+UovAzn+8/hb3oJ6lnysaFcjVpkCPfVWFUDvoZ8kmVDP7WyRtYtQ==", + "optional": true, + "engines": { + "node": ">= 0.6.0" + } }, - "node_modules/@tsconfig/node16": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.3.tgz", - "integrity": "sha512-yOlFc+7UtL/89t2ZhjPvvB/DeAr3r+Dq58IgzsFkOAvVC6NMJXmCGjbptdXdR9qsX7pKcTL+s87FtYREi2dEEQ==", - "dev": true + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] }, - "node_modules/@types/arcgis-js-api": { - "version": "4.27.0", - "resolved": "https://registry.npmjs.org/@types/arcgis-js-api/-/arcgis-js-api-4.27.0.tgz", - "integrity": "sha512-sjbbvVTOvzZRUR6rrA4KSbxlvAnclAen2Km+IHlUEYxu7zQKAiSW+zQL6MkQw8ujvYEZRHj8VBttcvjONzmNIg==", + "node_modules/before-after-hook": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/before-after-hook/-/before-after-hook-2.2.3.tgz", + "integrity": "sha512-NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ==", "dev": true }, - "node_modules/@types/babel__core": { - "version": "7.20.1", - "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.1.tgz", - "integrity": "sha512-aACu/U/omhdk15O4Nfb+fHgH/z3QsfQzpnvRZhYhThms83ZnAOZz7zZAWO7mn2yyNQaA4xTO8GLK3uqFU4bYYw==", + "node_modules/binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", "dev": true, - "dependencies": { - "@babel/parser": "^7.20.7", - "@babel/types": "^7.20.7", - "@types/babel__generator": "*", - "@types/babel__template": "*", - "@types/babel__traverse": "*" + "engines": { + "node": ">=8" } }, - "node_modules/@types/babel__generator": { - "version": "7.6.4", - "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.4.tgz", - "integrity": "sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg==", + "node_modules/bl": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", "dev": true, "dependencies": { - "@babel/types": "^7.0.0" + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" } }, - "node_modules/@types/babel__template": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.1.tgz", - "integrity": "sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g==", + "node_modules/bl/node_modules/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, "dependencies": { - "@babel/parser": "^7.1.0", - "@babel/types": "^7.0.0" + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" } }, - "node_modules/@types/babel__traverse": { - "version": "7.20.1", - "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.1.tgz", - "integrity": "sha512-MitHFXnhtgwsGZWtT68URpOvLN4EREih1u3QtQiN4VdAxWKRVvGCSvw/Qth0M0Qq3pJpnGOu5JaM/ydK7OGbqg==", + "node_modules/boxen": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/boxen/-/boxen-5.1.2.tgz", + "integrity": "sha512-9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ==", "dev": true, "dependencies": { - "@babel/types": "^7.20.7" + "ansi-align": "^3.0.0", + "camelcase": "^6.2.0", + "chalk": "^4.1.0", + "cli-boxes": "^2.2.1", + "string-width": "^4.2.2", + "type-fest": "^0.20.2", + "widest-line": "^3.1.0", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@types/color": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/color/-/color-3.0.3.tgz", - "integrity": "sha512-X//qzJ3d3Zj82J9sC/C18ZY5f43utPbAJ6PhYt/M7uG6etcF6MRpKdN880KBy43B0BMzSfeT96MzrsNjFI3GbA==", - "peer": true, - "dependencies": { - "@types/color-convert": "*" + "node_modules/boxen/node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@types/color-convert": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@types/color-convert/-/color-convert-2.0.0.tgz", - "integrity": "sha512-m7GG7IKKGuJUXvkZ1qqG3ChccdIM/qBBo913z+Xft0nKCX4hAU/IxKwZBU4cpRZ7GS5kV4vOblUkILtSShCPXQ==", - "peer": true, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, "dependencies": { - "@types/color-name": "*" + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" } }, - "node_modules/@types/color-name": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@types/color-name/-/color-name-1.1.1.tgz", - "integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==", - "peer": true - }, - "node_modules/@types/graceful-fs": { - "version": "4.1.6", - "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.6.tgz", - "integrity": "sha512-Sig0SNORX9fdW+bQuTEovKj3uHcUL6LQKbCrrqb1X7J6/ReAbhCXRAhc+SMejhLELFj2QcyuxmUooZ4bt5ReSw==", + "node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", "dev": true, "dependencies": { - "@types/node": "*" + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" } }, - "node_modules/@types/istanbul-lib-coverage": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz", - "integrity": "sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==", + "node_modules/browser-process-hrtime": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz", + "integrity": "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==", "dev": true }, - "node_modules/@types/istanbul-lib-report": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", - "integrity": "sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==", + "node_modules/browserslist": { + "version": "4.21.10", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.10.tgz", + "integrity": "sha512-bipEBdZfVH5/pwrvqc+Ub0kUPVfGUhlKxbvfD+z1BDnPEO/X98ruXGA1WP5ASpAFKan7Qr6j736IacbZQuAlKQ==", "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], "dependencies": { - "@types/istanbul-lib-coverage": "*" - } - }, - "node_modules/@types/istanbul-reports": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz", - "integrity": "sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==", - "dev": true, - "dependencies": { - "@types/istanbul-lib-report": "*" + "caniuse-lite": "^1.0.30001517", + "electron-to-chromium": "^1.4.477", + "node-releases": "^2.0.13", + "update-browserslist-db": "^1.0.11" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" } }, - "node_modules/@types/jest": { - "version": "27.0.3", - "resolved": "https://registry.npmjs.org/@types/jest/-/jest-27.0.3.tgz", - "integrity": "sha512-cmmwv9t7gBYt7hNKH5Spu7Kuu/DotGa+Ff+JGRKZ4db5eh8PnKS4LuebJ3YLUoyOyIHraTGyULn23YtEAm0VSg==", + "node_modules/bser": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz", + "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==", "dev": true, "dependencies": { - "jest-diff": "^27.0.0", - "pretty-format": "^27.0.0" + "node-int64": "^0.4.0" } }, - "node_modules/@types/json-schema": { - "version": "7.0.11", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz", - "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==", - "dev": true - }, - "node_modules/@types/lodash": { - "version": "4.14.191", - "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.191.tgz", - "integrity": "sha512-BdZ5BCCvho3EIXw6wUCXHe7rS53AIDPLE+JzwgT+OsJk53oBfbSmZZ7CX4VaRoN78N+TJpFi9QPlfIVNmJYWxQ==", - "dev": true - }, - "node_modules/@types/lodash.isplainobject": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/@types/lodash.isplainobject/-/lodash.isplainobject-4.0.7.tgz", - "integrity": "sha512-fdHtdjpy7fXydEaRHx1dPa+2AVmLbmk2Gv7f0w/90BKCH0DkWo8pIrzygnB3rvgo6oKNb3cO9VaPpj9GLCr5Ug==", - "dev": true, - "dependencies": { - "@types/lodash": "*" + "node_modules/btoa": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/btoa/-/btoa-1.2.1.tgz", + "integrity": "sha512-SB4/MIGlsiVkMcHmT+pSmIPoNDoHg+7cMzmt3Uxt628MTz2487DKSqK/fuhFBrkuqrYv5UCEnACpF4dTFNKc/g==", + "bin": { + "btoa": "bin/btoa.js" + }, + "engines": { + "node": ">= 0.4.0" } }, - "node_modules/@types/node": { - "version": "16.18.11", - "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.11.tgz", - "integrity": "sha512-3oJbGBUWuS6ahSnEq1eN2XrCyf4YsWI8OyCvo7c64zQJNplk3mO84t53o8lfTk+2ji59g5ycfc6qQ3fdHliHuA==", - "dev": true - }, - "node_modules/@types/normalize-package-data": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz", - "integrity": "sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==", - "dev": true - }, - "node_modules/@types/parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", - "dev": true - }, - "node_modules/@types/prettier": { - "version": "2.7.3", - "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.7.3.tgz", - "integrity": "sha512-+68kP9yzs4LMp7VNh8gdzMSPZFL44MLGqiHWvttYJe+6qnuVr4Ek9wSBQoveqY/r+LwjCcU29kNVkidwim+kYA==", - "dev": true - }, - "node_modules/@types/puppeteer": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/@types/puppeteer/-/puppeteer-7.0.4.tgz", - "integrity": "sha512-ja78vquZc8y+GM2al07GZqWDKQskQXygCDiu0e3uO0DMRKqE0MjrFBFmTulfPYzLB6WnL7Kl2tFPy0WXSpPomg==", - "deprecated": "This is a stub types definition. puppeteer provides its own type definitions, so you do not need this installed.", + "node_modules/buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], "dependencies": { - "puppeteer": "*" + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" } }, - "node_modules/@types/raf": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/@types/raf/-/raf-3.4.0.tgz", - "integrity": "sha512-taW5/WYqo36N7V39oYyHP9Ipfd5pNFvGTIQsNGj86xV88YQ7GnI30/yMfKDF7Zgin0m3e+ikX88FvImnK4RjGw==", - "optional": true - }, - "node_modules/@types/semver": { - "version": "7.3.13", - "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.3.13.tgz", - "integrity": "sha512-21cFJr9z3g5dW8B0CVI9g2O9beqaThGQ6ZFBqHfwhzLDKUxaqTIy3vnfah/UPkfOiF2pLq+tGz+W8RyCskuslw==", - "dev": true - }, - "node_modules/@types/stack-utils": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.1.tgz", - "integrity": "sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw==", - "dev": true - }, - "node_modules/@types/yargs": { - "version": "17.0.24", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.24.tgz", - "integrity": "sha512-6i0aC7jV6QzQB8ne1joVZ0eSFIstHsCrobmOtghM11yGlH0j43FKL2UhWdELkyps0zuf7qVTUVCCR+tgSlyLLw==", + "node_modules/buffer-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==", "dev": true, - "dependencies": { - "@types/yargs-parser": "*" + "engines": { + "node": "*" } }, - "node_modules/@types/yargs-parser": { - "version": "21.0.0", - "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.0.tgz", - "integrity": "sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==", + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", "dev": true }, - "node_modules/@types/yauzl": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/@types/yauzl/-/yauzl-2.10.0.tgz", - "integrity": "sha512-Cn6WYCm0tXv8p6k+A8PvbDG763EDpBoTzHdA+Q/MF6H3sapGjCm9NzoaJncJS9tUKSuCoDs9XHxYYsQDgxR6kw==", - "dev": true, - "optional": true, - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@typescript-eslint/eslint-plugin": { - "version": "5.49.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.49.0.tgz", - "integrity": "sha512-IhxabIpcf++TBaBa1h7jtOWyon80SXPRLDq0dVz5SLFC/eW6tofkw/O7Ar3lkx5z5U6wzbKDrl2larprp5kk5Q==", + "node_modules/builtin-modules": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.3.0.tgz", + "integrity": "sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==", "dev": true, - "dependencies": { - "@typescript-eslint/scope-manager": "5.49.0", - "@typescript-eslint/type-utils": "5.49.0", - "@typescript-eslint/utils": "5.49.0", - "debug": "^4.3.4", - "ignore": "^5.2.0", - "natural-compare-lite": "^1.4.0", - "regexpp": "^3.2.0", - "semver": "^7.3.7", - "tsutils": "^3.21.0" - }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": ">=6" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "@typescript-eslint/parser": "^5.0.0", - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@typescript-eslint/experimental-utils": { - "version": "5.49.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-5.49.0.tgz", - "integrity": "sha512-veLpCJLYn44Fru7mSvi2doxQMzMCOFSDYdMUQhAzaH1vFYq2RVNpecZ8d18Wh6UMv07yahXkiv/aShWE48iE9Q==", + "node_modules/cacheable-request": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.1.0.tgz", + "integrity": "sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==", "dev": true, "dependencies": { - "@typescript-eslint/utils": "5.49.0" + "clone-response": "^1.0.2", + "get-stream": "^5.1.0", + "http-cache-semantics": "^4.0.0", + "keyv": "^3.0.0", + "lowercase-keys": "^2.0.0", + "normalize-url": "^4.1.0", + "responselike": "^1.0.2" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + "node": ">=8" } }, - "node_modules/@typescript-eslint/parser": { - "version": "5.49.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.49.0.tgz", - "integrity": "sha512-veDlZN9mUhGqU31Qiv2qEp+XrJj5fgZpJ8PW30sHU+j/8/e5ruAhLaVDAeznS7A7i4ucb/s8IozpDtt9NqCkZg==", + "node_modules/cacheable-request/node_modules/lowercase-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", + "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==", "dev": true, - "dependencies": { - "@typescript-eslint/scope-manager": "5.49.0", - "@typescript-eslint/types": "5.49.0", - "@typescript-eslint/typescript-estree": "5.49.0", - "debug": "^4.3.4" - }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } + "node": ">=8" } }, - "node_modules/@typescript-eslint/scope-manager": { - "version": "5.49.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.49.0.tgz", - "integrity": "sha512-clpROBOiMIzpbWNxCe1xDK14uPZh35u4QaZO1GddilEzoCLAEz4szb51rBpdgurs5k2YzPtJeTEN3qVbG+LRUQ==", + "node_modules/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, "dependencies": { - "@typescript-eslint/types": "5.49.0", - "@typescript-eslint/visitor-keys": "5.49.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@typescript-eslint/type-utils": { - "version": "5.49.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.49.0.tgz", - "integrity": "sha512-eUgLTYq0tR0FGU5g1YHm4rt5H/+V2IPVkP0cBmbhRyEmyGe4XvJ2YJ6sYTmONfjmdMqyMLad7SB8GvblbeESZA==", + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", "dev": true, - "dependencies": { - "@typescript-eslint/typescript-estree": "5.49.0", - "@typescript-eslint/utils": "5.49.0", - "debug": "^4.3.4", - "tsutils": "^3.21.0" - }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "*" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } + "node": ">=6" } }, - "node_modules/@typescript-eslint/types": { - "version": "5.49.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.49.0.tgz", - "integrity": "sha512-7If46kusG+sSnEpu0yOz2xFv5nRz158nzEXnJFCGVEHWnuzolXKwrH5Bsf9zsNlOQkyZuk0BZKKoJQI+1JPBBg==", + "node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", "dev": true, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" + "node": ">=6" } }, - "node_modules/@typescript-eslint/typescript-estree": { - "version": "5.49.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.49.0.tgz", - "integrity": "sha512-PBdx+V7deZT/3GjNYPVQv1Nc0U46dAHbIuOG8AZ3on3vuEKiPDwFE/lG1snN2eUB9IhF7EyF7K1hmTcLztNIsA==", + "node_modules/camelcase-css": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz", + "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==", "dev": true, - "dependencies": { - "@typescript-eslint/types": "5.49.0", - "@typescript-eslint/visitor-keys": "5.49.0", - "debug": "^4.3.4", - "globby": "^11.1.0", - "is-glob": "^4.0.3", - "semver": "^7.3.7", - "tsutils": "^3.21.0" - }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } + "node": ">= 6" } }, - "node_modules/@typescript-eslint/utils": { - "version": "5.49.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.49.0.tgz", - "integrity": "sha512-cPJue/4Si25FViIb74sHCLtM4nTSBXtLx1d3/QT6mirQ/c65bV8arBEebBJJizfq8W2YyMoPI/WWPFWitmNqnQ==", + "node_modules/caniuse-lite": { + "version": "1.0.30001521", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001521.tgz", + "integrity": "sha512-fnx1grfpEOvDGH+V17eccmNjucGUnCbP6KL+l5KqBIerp26WK/+RQ7CIDE37KGJjaPyqWXXlFUyKiWmvdNNKmQ==", "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ] + }, + "node_modules/canvg": { + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/canvg/-/canvg-3.0.10.tgz", + "integrity": "sha512-qwR2FRNO9NlzTeKIPIKpnTY6fqwuYSequ8Ru8c0YkYU7U0oW+hLUvWadLvAu1Rl72OMNiFhoLu4f8eUjQ7l/+Q==", + "optional": true, "dependencies": { - "@types/json-schema": "^7.0.9", - "@types/semver": "^7.3.12", - "@typescript-eslint/scope-manager": "5.49.0", - "@typescript-eslint/types": "5.49.0", - "@typescript-eslint/typescript-estree": "5.49.0", - "eslint-scope": "^5.1.1", - "eslint-utils": "^3.0.0", - "semver": "^7.3.7" + "@babel/runtime": "^7.12.5", + "@types/raf": "^3.4.0", + "core-js": "^3.8.3", + "raf": "^3.4.1", + "regenerator-runtime": "^0.13.7", + "rgbcolor": "^1.0.1", + "stackblur-canvas": "^2.0.0", + "svg-pathdata": "^6.0.3" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + "node": ">=10.0.0" } }, - "node_modules/@typescript-eslint/visitor-keys": { - "version": "5.49.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.49.0.tgz", - "integrity": "sha512-v9jBMjpNWyn8B6k/Mjt6VbUS4J1GvUlR4x3Y+ibnP1z7y7V4n0WRz+50DY6+Myj0UaXVSuUlHohO+eZ8IJEnkg==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "5.49.0", - "eslint-visitor-keys": "^3.3.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, + "node_modules/canvg/node_modules/core-js": { + "version": "3.27.2", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.27.2.tgz", + "integrity": "sha512-9ashVQskuh5AZEZ1JdQWp1GqSoC1e1G87MzRqg2gIfVAQ7Qn9K+uFj8EcniUFA4P2NLZfV+TOlX1SzoKfo+s7w==", + "hasInstallScript": true, + "optional": true, "funding": { "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" + "url": "https://opencollective.com/core-js" } }, - "node_modules/abab": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", - "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==" + "node_modules/canvg/node_modules/regenerator-runtime": { + "version": "0.13.11", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", + "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==", + "optional": true }, - "node_modules/acorn": { - "version": "8.8.2", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.2.tgz", - "integrity": "sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==", + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, - "bin": { - "acorn": "bin/acorn" + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, "engines": { - "node": ">=0.4.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/acorn-globals": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-6.0.0.tgz", - "integrity": "sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg==", + "node_modules/changelog-parser": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/changelog-parser/-/changelog-parser-2.8.1.tgz", + "integrity": "sha512-tNUYFRCEeWTXmwLqoNtOEzx9wcytg72MmGQqsEs14ClYwIDln7sbQw7FJj/dulXgSlsxkemc9gpPQhZYZx1TPw==", "dev": true, "dependencies": { - "acorn": "^7.1.1", - "acorn-walk": "^7.1.1" + "line-reader": "^0.2.4", + "remove-markdown": "^0.2.2" + }, + "bin": { + "changelog-parser": "bin/cli.js" } }, - "node_modules/acorn-globals/node_modules/acorn": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "node_modules/char-regex": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz", + "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==", "dev": true, - "bin": { - "acorn": "bin/acorn" - }, "engines": { - "node": ">=0.4.0" + "node": ">=10" } }, - "node_modules/acorn-jsx": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", - "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", - "dev": true, - "peerDependencies": { - "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" - } + "node_modules/chardet": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", + "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", + "dev": true }, - "node_modules/acorn-node": { - "version": "1.8.2", - "resolved": "https://registry.npmjs.org/acorn-node/-/acorn-node-1.8.2.tgz", - "integrity": "sha512-8mt+fslDufLYntIoPAaIMUe/lrbrehIiwmR3t2k9LljIzoigEPF27eLk2hy8zSGzmR/ogr7zbRKINMo1u0yh5A==", + "node_modules/chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ], "dependencies": { - "acorn": "^7.0.0", - "acorn-walk": "^7.0.0", - "xtend": "^4.0.2" - } - }, - "node_modules/acorn-node/node_modules/acorn": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", - "dev": true, - "bin": { - "acorn": "bin/acorn" + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" }, "engines": { - "node": ">=0.4.0" + "node": ">= 8.10.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" } }, - "node_modules/acorn-walk": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz", - "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", + "node_modules/chokidar/node_modules/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, + "dependencies": { + "is-glob": "^4.0.1" + }, "engines": { - "node": ">=0.4.0" + "node": ">= 6" } }, - "node_modules/adlib": { - "version": "3.0.8", - "resolved": "https://registry.npmjs.org/adlib/-/adlib-3.0.8.tgz", - "integrity": "sha512-CbQ+mcm45pdDN0aAiGYP6FZWDor+BM4DbqJsrUptM79a2+FbiP8QdF0xHABbgCkioApKqg8lI33Gl6X8GFelfA==", - "dependencies": { - "esm": "^3.2.25" - } + "node_modules/chownr": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", + "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==", + "dev": true }, - "node_modules/agent-base": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.0.tgz", - "integrity": "sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg==", + "node_modules/ci-info": { + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.7.1.tgz", + "integrity": "sha512-4jYS4MOAaCIStSRwiuxc4B8MYhIe676yO1sYGzARnjXkWpmzZMMYxY6zu8WYWDhSuth5zhrQ1rhNSibyyvv4/w==", "dev": true, - "dependencies": { - "debug": "^4.3.4" - }, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" + } + ], "engines": { - "node": ">= 14" + "node": ">=8" } }, - "node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } + "node_modules/cjs-module-lexer": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.2.3.tgz", + "integrity": "sha512-0TNiGstbQmCFwt4akjjBg5pLRTSyj/PkWQ1ZoO2zntmg9yLqSRxwEa4iCfQLGjqhiqBfOJa7W/E8wfGrTDmlZQ==", + "dev": true }, - "node_modules/ansi-align": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.1.tgz", - "integrity": "sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==", + "node_modules/clean-regexp": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/clean-regexp/-/clean-regexp-1.0.0.tgz", + "integrity": "sha512-GfisEZEJvzKrmGWkvfhgzcz/BllN1USeqD2V6tg14OAOgaCD2Z/PUEuxnAZ/nPvmaHRG7a8y77p1T/IRQ4D1Hw==", "dev": true, "dependencies": { - "string-width": "^4.1.0" + "escape-string-regexp": "^1.0.5" + }, + "engines": { + "node": ">=4" } }, - "node_modules/ansi-escapes": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", - "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "node_modules/clean-regexp/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", "dev": true, - "dependencies": { - "type-fest": "^0.21.3" - }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=0.8.0" } }, - "node_modules/ansi-escapes/node_modules/type-fest": { - "version": "0.21.3", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", - "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", + "node_modules/cli-boxes": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-2.2.1.tgz", + "integrity": "sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==", "dev": true, "engines": { - "node": ">=10" + "node": ">=6" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "node_modules/cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", "dev": true, + "dependencies": { + "restore-cursor": "^3.1.0" + }, "engines": { "node": ">=8" } }, - "node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "node_modules/cli-spinners": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.7.0.tgz", + "integrity": "sha512-qu3pN8Y3qHNgE2AFweciB1IfMnmZ/fsNTEE+NOFjmGB2F/7rLhnhzppvpCnN4FovtP26k8lHyy9ptEbNwWFLzw==", "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, "engines": { - "node": ">=8" + "node": ">=6" }, "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/anymatch": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", - "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "node_modules/cli-width": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", + "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", "dev": true, - "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - }, "engines": { - "node": ">= 8" + "node": ">= 10" } }, - "node_modules/application-config": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/application-config/-/application-config-2.0.0.tgz", - "integrity": "sha512-NC5/0guSZK3/UgUDfCk/riByXzqz0owL1L3r63JPSBzYk5QALrp3bLxbsR7qeSfvYfFmAhnp3dbqYsW3U9MpZQ==", + "node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", "dev": true, "dependencies": { - "application-config-path": "^0.1.0", - "load-json-file": "^6.2.0", - "write-json-file": "^4.2.0" + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" }, "engines": { - "node": ">=8.3" + "node": ">=12" } }, - "node_modules/application-config-path": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/application-config-path/-/application-config-path-0.1.1.tgz", - "integrity": "sha512-zy9cHePtMP0YhwG+CfHm0bgwdnga2X3gZexpdCwEj//dpb+TKajtiC8REEUJUSq6Ab4f9cgNy2l8ObXzCXFkEw==", - "dev": true - }, - "node_modules/aproba": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", - "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==", - "dev": true - }, - "node_modules/arg": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz", - "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==", - "dev": true - }, - "node_modules/argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "dev": true + "node_modules/clone": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", + "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", + "dev": true, + "engines": { + "node": ">=0.8" + } }, - "node_modules/array-includes": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.6.tgz", - "integrity": "sha512-sgTbLvL6cNnw24FnbaDyjmvddQ2ML8arZsgaJhoABMoplz/4QRhtrYS+alr1BUM1Bwp6dhx8vVCBSLG+StwOFw==", + "node_modules/clone-response": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.3.tgz", + "integrity": "sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4", - "get-intrinsic": "^1.1.3", - "is-string": "^1.0.7" - }, - "engines": { - "node": ">= 0.4" + "mimic-response": "^1.0.0" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/array-union": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", - "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", + "node_modules/clone-response/node_modules/mimic-response": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", + "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", "dev": true, "engines": { - "node": ">=8" + "node": ">=4" } }, - "node_modules/array.prototype.flatmap": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.1.tgz", - "integrity": "sha512-8UGn9O1FDVvMNB0UlLv4voxRMze7+FpHyF5mSMRjWHUMlpoDViniy05870VlxhfgTnLbpuwTzvD76MTtWxB/mQ==", + "node_modules/co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==", "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4", - "es-shim-unscopables": "^1.0.0" - }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "iojs": ">= 1.0.0", + "node": ">= 0.12.0" } }, - "node_modules/ast-types": { - "version": "0.13.4", - "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.13.4.tgz", - "integrity": "sha512-x1FCFnFifvYDDzTaLII71vG5uvDwgtmDTEVWAxrgeiR8VjMONcCXJx7E+USjDtHlwFmt9MysbqgF9b9Vjr6w+w==", - "dev": true, + "node_modules/collect-v8-coverage": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.2.tgz", + "integrity": "sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q==", + "dev": true + }, + "node_modules/color": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/color/-/color-4.2.3.tgz", + "integrity": "sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==", + "peer": true, "dependencies": { - "tslib": "^2.0.1" + "color-convert": "^2.0.1", + "color-string": "^1.9.0" }, "engines": { - "node": ">=4" + "node": ">=12.5.0" } }, - "node_modules/async": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/async/-/async-3.2.4.tgz", - "integrity": "sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==", - "dev": true - }, - "node_modules/asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", - "dev": true - }, - "node_modules/atob": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", - "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", - "bin": { - "atob": "bin/atob.js" + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" }, "engines": { - "node": ">= 4.5.0" + "node": ">=7.0.0" } }, - "node_modules/autoprefixer": { - "version": "10.4.4", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.4.tgz", - "integrity": "sha512-Tm8JxsB286VweiZ5F0anmbyGiNI3v3wGv3mz9W+cxEDYB/6jbnj6GM9H9mK3wIL8ftgl+C07Lcwb8PG5PCCPzA==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/autoprefixer" - } - ], + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/color-string": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz", + "integrity": "sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==", + "peer": true, "dependencies": { - "browserslist": "^4.20.2", - "caniuse-lite": "^1.0.30001317", - "fraction.js": "^4.2.0", - "normalize-range": "^0.1.2", - "picocolors": "^1.0.0", - "postcss-value-parser": "^4.2.0" - }, + "color-name": "^1.0.0", + "simple-swizzle": "^0.2.2" + } + }, + "node_modules/color-support": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", + "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", + "dev": true, "bin": { - "autoprefixer": "bin/autoprefixer" - }, - "engines": { - "node": "^10 || ^12 || >=14" - }, - "peerDependencies": { - "postcss": "^8.1.0" + "color-support": "bin.js" } }, - "node_modules/available-typed-arrays": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz", - "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==", + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", "dev": true, - "engines": { - "node": ">= 0.4" + "dependencies": { + "delayed-stream": "~1.0.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">= 0.8" } }, - "node_modules/b4a": { - "version": "1.6.4", - "resolved": "https://registry.npmjs.org/b4a/-/b4a-1.6.4.tgz", - "integrity": "sha512-fpWrvyVHEKyeEvbKZTVOeZF3VSKKWtJxFIxX/jaVPf+cLbGUSitjb49pHLqPV2BUNNZ0LcoeEGfE/YCpyDYHIw==", + "node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "dev": true + }, + "node_modules/composed-offset-position": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/composed-offset-position/-/composed-offset-position-0.0.4.tgz", + "integrity": "sha512-vMlvu1RuNegVE0YsCDSV/X4X10j56mq7PCIyOKK74FxkXzGLwhOUmdkJLSdOBOMwWycobGUMgft2lp+YgTe8hw==", + "peer": true + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", "dev": true }, - "node_modules/babel-jest": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-29.6.2.tgz", - "integrity": "sha512-BYCzImLos6J3BH/+HvUCHG1dTf2MzmAB4jaVxHV+29RZLjR29XuYTmsf2sdDwkrb+FczkGo3kOhE7ga6sI0P4A==", + "node_modules/configstore": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/configstore/-/configstore-5.0.1.tgz", + "integrity": "sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==", "dev": true, "dependencies": { - "@jest/transform": "^29.6.2", - "@types/babel__core": "^7.1.14", - "babel-plugin-istanbul": "^6.1.1", - "babel-preset-jest": "^29.5.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "slash": "^3.0.0" + "dot-prop": "^5.2.0", + "graceful-fs": "^4.1.2", + "make-dir": "^3.0.0", + "unique-string": "^2.0.0", + "write-file-atomic": "^3.0.0", + "xdg-basedir": "^4.0.0" }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - }, - "peerDependencies": { - "@babel/core": "^7.8.0" + "node": ">=8" } }, - "node_modules/babel-plugin-istanbul": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", - "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", + "node_modules/console-control-strings": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==", + "dev": true + }, + "node_modules/convert-source-map": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", + "dev": true + }, + "node_modules/core-util-is": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", + "dev": true + }, + "node_modules/cosmiconfig": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", + "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.0.0", - "@istanbuljs/load-nyc-config": "^1.0.0", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-instrument": "^5.0.4", - "test-exclude": "^6.0.0" + "@types/parse-json": "^4.0.0", + "import-fresh": "^3.2.1", + "parse-json": "^5.0.0", + "path-type": "^4.0.0", + "yaml": "^1.10.0" }, "engines": { - "node": ">=8" + "node": ">=10" } }, - "node_modules/babel-plugin-jest-hoist": { - "version": "29.5.0", - "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.5.0.tgz", - "integrity": "sha512-zSuuuAlTMT4mzLj2nPnUm6fsE6270vdOfnpbJ+RmruU75UhLFvL0N2NgI7xpeS7NaB6hGqmd5pVpGTDYvi4Q3w==", + "node_modules/create-require": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", + "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", + "dev": true + }, + "node_modules/cross-fetch": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.1.5.tgz", + "integrity": "sha512-lvb1SBsI0Z7GDwmuid+mU3kWVBwTVUbe7S0H52yaaAdQOXq2YktTCZdlAcNKFzE6QtRz0snpw9bNiPeOIkkQvw==", "dev": true, "dependencies": { - "@babel/template": "^7.3.3", - "@babel/types": "^7.3.3", - "@types/babel__core": "^7.1.14", - "@types/babel__traverse": "^7.0.6" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node-fetch": "2.6.7" } }, - "node_modules/babel-plugin-polyfill-corejs2": { - "version": "0.4.5", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.5.tgz", - "integrity": "sha512-19hwUH5FKl49JEsvyTcoHakh6BE0wgXLLptIyKZ3PijHc/Ci521wygORCUCCred+E/twuqRyAkE02BAWPmsHOg==", + "node_modules/cross-fetch/node_modules/node-fetch": { + "version": "2.6.7", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", + "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", "dev": true, "dependencies": { - "@babel/compat-data": "^7.22.6", - "@babel/helper-define-polyfill-provider": "^0.4.2", - "semver": "^6.3.1" + "whatwg-url": "^5.0.0" + }, + "engines": { + "node": "4.x || >=6.0.0" }, "peerDependencies": { - "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + "encoding": "^0.1.0" + }, + "peerDependenciesMeta": { + "encoding": { + "optional": true + } } }, - "node_modules/babel-plugin-polyfill-corejs2/node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } + "node_modules/cross-fetch/node_modules/tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", + "dev": true + }, + "node_modules/cross-fetch/node_modules/webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", + "dev": true }, - "node_modules/babel-plugin-polyfill-corejs3": { - "version": "0.8.3", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.8.3.tgz", - "integrity": "sha512-z41XaniZL26WLrvjy7soabMXrfPWARN25PZoriDEiLMxAp50AUW3t35BGQUMg5xK3UrpVTtagIDklxYa+MhiNA==", + "node_modules/cross-fetch/node_modules/whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", "dev": true, "dependencies": { - "@babel/helper-define-polyfill-provider": "^0.4.2", - "core-js-compat": "^3.31.0" - }, - "peerDependencies": { - "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" } }, - "node_modules/babel-plugin-polyfill-regenerator": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.5.2.tgz", - "integrity": "sha512-tAlOptU0Xj34V1Y2PNTL4Y0FOJMDB6bZmoW39FeCQIhigGLkqu3Fj6uiXpxIf6Ij274ENdYx64y6Au+ZKlb1IA==", + "node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", "dev": true, "dependencies": { - "@babel/helper-define-polyfill-provider": "^0.4.2" + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" }, - "peerDependencies": { - "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + "engines": { + "node": ">= 8" } }, - "node_modules/babel-preset-current-node-syntax": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz", - "integrity": "sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==", + "node_modules/crypto-random-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz", + "integrity": "sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==", "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/css-line-break": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/css-line-break/-/css-line-break-2.1.0.tgz", + "integrity": "sha512-FHcKFCZcAha3LwfVBhCQbW2nCNbkZXn7KVUJcsT5/P8YmfsVja0FMPJr0B903j/E69HUphKiV9iQArX8SDYA4w==", + "optional": true, "dependencies": { - "@babel/plugin-syntax-async-generators": "^7.8.4", - "@babel/plugin-syntax-bigint": "^7.8.3", - "@babel/plugin-syntax-class-properties": "^7.8.3", - "@babel/plugin-syntax-import-meta": "^7.8.3", - "@babel/plugin-syntax-json-strings": "^7.8.3", - "@babel/plugin-syntax-logical-assignment-operators": "^7.8.3", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", - "@babel/plugin-syntax-numeric-separator": "^7.8.3", - "@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-top-level-await": "^7.8.3" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" + "utrie": "^1.0.2" } }, - "node_modules/babel-preset-jest": { - "version": "29.5.0", - "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-29.5.0.tgz", - "integrity": "sha512-JOMloxOqdiBSxMAzjRaH023/vvcaSaec49zvg+2LmNsktC7ei39LTJGw02J+9uUtTZUq6xbLyJ4dxe9sSmIuAg==", + "node_modules/cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", "dev": true, - "dependencies": { - "babel-plugin-jest-hoist": "^29.5.0", - "babel-preset-current-node-syntax": "^1.0.0" + "bin": { + "cssesc": "bin/cssesc" }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" + "node": ">=4" } }, - "node_modules/balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "node_modules/cssfilter": { + "version": "0.0.10", + "resolved": "https://registry.npmjs.org/cssfilter/-/cssfilter-0.0.10.tgz", + "integrity": "sha512-FAaLDaplstoRsDR8XGYH51znUN0UY7nMc6Z9/fvE8EXGwvJE9hu7W2vHwx1+bd6gCYnln9nLbzxFTrcO9YQDZw==", "dev": true }, - "node_modules/base64-arraybuffer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-1.0.2.tgz", - "integrity": "sha512-I3yl4r9QB5ZRY3XuJVEPfc2XhZO6YweFPI+UovAzn+8/hb3oJ6lnysaFcjVpkCPfVWFUDvoZ8kmVDP7WyRtYtQ==", - "optional": true, - "engines": { - "node": ">= 0.6.0" - } - }, - "node_modules/base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] + "node_modules/cssom": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.4.4.tgz", + "integrity": "sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==", + "dev": true }, - "node_modules/basic-ftp": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/basic-ftp/-/basic-ftp-5.0.3.tgz", - "integrity": "sha512-QHX8HLlncOLpy54mh+k/sWIFd0ThmRqwe9ZjELybGZK+tZ8rUb9VO0saKJUROTbE+KhzDUT7xziGpGrW8Kmd+g==", + "node_modules/cssstyle": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-2.3.0.tgz", + "integrity": "sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==", "dev": true, + "dependencies": { + "cssom": "~0.3.6" + }, "engines": { - "node": ">=10.0.0" + "node": ">=8" } }, - "node_modules/before-after-hook": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/before-after-hook/-/before-after-hook-2.2.3.tgz", - "integrity": "sha512-NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ==", + "node_modules/cssstyle/node_modules/cssom": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz", + "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==", "dev": true }, - "node_modules/binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "node_modules/data-urls": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-2.0.0.tgz", + "integrity": "sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ==", "dev": true, + "dependencies": { + "abab": "^2.0.3", + "whatwg-mimetype": "^2.3.0", + "whatwg-url": "^8.0.0" + }, "engines": { - "node": ">=8" + "node": ">=10" } }, - "node_modules/bl": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", - "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", - "dev": true, - "dependencies": { - "buffer": "^5.5.0", - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" - } + "node_modules/dayjs": { + "version": "1.11.8", + "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.8.tgz", + "integrity": "sha512-LcgxzFoWMEPO7ggRv1Y2N31hUf2R0Vj7fuy/m+Bg1K8rr+KAs1AEy4y9jd5DXe8pbHgX+srkHNS7TH6Q6ZhYeQ==", + "peer": true }, - "node_modules/bl/node_modules/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==", + "node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", "dev": true, "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" + "ms": "2.1.2" }, "engines": { - "node": ">= 6" + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } } }, - "node_modules/boxen": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/boxen/-/boxen-5.1.2.tgz", - "integrity": "sha512-9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ==", + "node_modules/decimal.js": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz", + "integrity": "sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==", + "dev": true + }, + "node_modules/decompress-response": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz", + "integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==", "dev": true, "dependencies": { - "ansi-align": "^3.0.0", - "camelcase": "^6.2.0", - "chalk": "^4.1.0", - "cli-boxes": "^2.2.1", - "string-width": "^4.2.2", - "type-fest": "^0.20.2", - "widest-line": "^3.1.0", - "wrap-ansi": "^7.0.0" + "mimic-response": "^3.1.0" }, "engines": { "node": ">=10" @@ -4827,1266 +4098,1122 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/boxen/node_modules/camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "node_modules/dedent": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz", + "integrity": "sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==", + "dev": true + }, + "node_modules/deep-extend": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", "dev": true, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=4.0.0" } }, - "node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "node_modules/deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "dev": true + }, + "node_modules/deepmerge": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", + "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" + "engines": { + "node": ">=0.10.0" } }, - "node_modules/braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "node_modules/defaults": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.4.tgz", + "integrity": "sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==", "dev": true, "dependencies": { - "fill-range": "^7.0.1" + "clone": "^1.0.2" }, - "engines": { - "node": ">=8" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/browser-process-hrtime": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz", - "integrity": "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==", + "node_modules/defer-to-connect": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.1.3.tgz", + "integrity": "sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==", "dev": true }, - "node_modules/browserslist": { - "version": "4.21.10", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.10.tgz", - "integrity": "sha512-bipEBdZfVH5/pwrvqc+Ub0kUPVfGUhlKxbvfD+z1BDnPEO/X98ruXGA1WP5ASpAFKan7Qr6j736IacbZQuAlKQ==", + "node_modules/define-properties": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz", + "integrity": "sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==", "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], "dependencies": { - "caniuse-lite": "^1.0.30001517", - "electron-to-chromium": "^1.4.477", - "node-releases": "^2.0.13", - "update-browserslist-db": "^1.0.11" - }, - "bin": { - "browserslist": "cli.js" + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" }, "engines": { - "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/bser": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz", - "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==", + "node_modules/defined": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.1.tgz", + "integrity": "sha512-hsBd2qSVCRE+5PmNdHt1uzyrFu5d3RwmFDKzyNZMFq/EwDNJF7Ee5+D5oEKF0hU6LhtoUF1macFvOe4AskQC1Q==", "dev": true, - "dependencies": { - "node-int64": "^0.4.0" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/btoa": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/btoa/-/btoa-1.2.1.tgz", - "integrity": "sha512-SB4/MIGlsiVkMcHmT+pSmIPoNDoHg+7cMzmt3Uxt628MTz2487DKSqK/fuhFBrkuqrYv5UCEnACpF4dTFNKc/g==", - "bin": { - "btoa": "bin/btoa.js" - }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "dev": true, "engines": { - "node": ">= 0.4.0" + "node": ">=0.4.0" } }, - "node_modules/buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "node_modules/deprecation": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/deprecation/-/deprecation-2.3.1.tgz", + "integrity": "sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ==", + "dev": true + }, + "node_modules/detect-indent": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-6.1.0.tgz", + "integrity": "sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA==", "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" + "engines": { + "node": ">=8" } }, - "node_modules/buffer-crc32": { - "version": "0.2.13", - "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", - "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==", + "node_modules/detect-newline": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz", + "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==", "dev": true, "engines": { - "node": "*" + "node": ">=8" } }, - "node_modules/buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", - "dev": true - }, - "node_modules/builtin-modules": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.3.0.tgz", - "integrity": "sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==", + "node_modules/detective": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/detective/-/detective-5.2.1.tgz", + "integrity": "sha512-v9XE1zRnz1wRtgurGu0Bs8uHKFSTdteYZNbIPFVhUZ39L/S79ppMpdmVOZAnoz1jfEFodc48n6MX483Xo3t1yw==", "dev": true, - "engines": { - "node": ">=6" + "dependencies": { + "acorn-node": "^1.8.2", + "defined": "^1.0.0", + "minimist": "^1.2.6" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "bin": { + "detective": "bin/detective.js" + }, + "engines": { + "node": ">=0.8.0" } }, - "node_modules/cacheable-request": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.1.0.tgz", - "integrity": "sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==", + "node_modules/devtools-protocol": { + "version": "0.0.981744", + "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.981744.tgz", + "integrity": "sha512-0cuGS8+jhR67Fy7qG3i3Pc7Aw494sb9yG9QgpG97SFVWwolgYjlhJg7n+UaHxOQT30d1TYu/EYe9k01ivLErIg==", + "dev": true + }, + "node_modules/didyoumean": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz", + "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==", + "dev": true + }, + "node_modules/diff": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", + "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", "dev": true, - "dependencies": { - "clone-response": "^1.0.2", - "get-stream": "^5.1.0", - "http-cache-semantics": "^4.0.0", - "keyv": "^3.0.0", - "lowercase-keys": "^2.0.0", - "normalize-url": "^4.1.0", - "responselike": "^1.0.2" - }, "engines": { - "node": ">=8" + "node": ">=0.3.1" } }, - "node_modules/cacheable-request/node_modules/lowercase-keys": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", - "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==", + "node_modules/diff-sequences": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.5.1.tgz", + "integrity": "sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==", "dev": true, "engines": { - "node": ">=8" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/call-bind": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", - "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "node_modules/dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", "dev": true, "dependencies": { - "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.2" + "path-type": "^4.0.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">=8" } }, - "node_modules/callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "node_modules/dlv": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz", + "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==", + "dev": true + }, + "node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", "dev": true, + "dependencies": { + "esutils": "^2.0.2" + }, "engines": { - "node": ">=6" + "node": ">=6.0.0" } }, - "node_modules/camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "node_modules/domexception": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/domexception/-/domexception-2.0.1.tgz", + "integrity": "sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg==", "dev": true, + "dependencies": { + "webidl-conversions": "^5.0.0" + }, "engines": { - "node": ">=6" + "node": ">=8" } }, - "node_modules/camelcase-css": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz", - "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==", + "node_modules/domexception/node_modules/webidl-conversions": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-5.0.0.tgz", + "integrity": "sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==", "dev": true, "engines": { - "node": ">= 6" + "node": ">=8" } }, - "node_modules/caniuse-lite": { - "version": "1.0.30001520", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001520.tgz", - "integrity": "sha512-tahF5O9EiiTzwTUqAeFjIZbn4Dnqxzz7ktrgGlMYNLH43Ul26IgTMH/zvL3DG0lZxBYnlT04axvInszUsZULdA==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/caniuse-lite" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ] + "node_modules/dompurify": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-2.4.3.tgz", + "integrity": "sha512-q6QaLcakcRjebxjg8/+NP+h0rPfatOgOzc46Fst9VAA3jF2ApfKBNKMzdP4DYTqtUMXSCd5pRS/8Po/OmoCHZQ==", + "optional": true }, - "node_modules/canvg": { - "version": "3.0.10", - "resolved": "https://registry.npmjs.org/canvg/-/canvg-3.0.10.tgz", - "integrity": "sha512-qwR2FRNO9NlzTeKIPIKpnTY6fqwuYSequ8Ru8c0YkYU7U0oW+hLUvWadLvAu1Rl72OMNiFhoLu4f8eUjQ7l/+Q==", - "optional": true, + "node_modules/dot-prop": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", + "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==", + "dev": true, "dependencies": { - "@babel/runtime": "^7.12.5", - "@types/raf": "^3.4.0", - "core-js": "^3.8.3", - "raf": "^3.4.1", - "regenerator-runtime": "^0.13.7", - "rgbcolor": "^1.0.1", - "stackblur-canvas": "^2.0.0", - "svg-pathdata": "^6.0.3" + "is-obj": "^2.0.0" }, "engines": { - "node": ">=10.0.0" + "node": ">=8" } }, - "node_modules/canvg/node_modules/core-js": { - "version": "3.27.2", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.27.2.tgz", - "integrity": "sha512-9ashVQskuh5AZEZ1JdQWp1GqSoC1e1G87MzRqg2gIfVAQ7Qn9K+uFj8EcniUFA4P2NLZfV+TOlX1SzoKfo+s7w==", - "hasInstallScript": true, - "optional": true, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/core-js" + "node_modules/dotenv": { + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-10.0.0.tgz", + "integrity": "sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q==", + "dev": true, + "engines": { + "node": ">=10" } }, - "node_modules/canvg/node_modules/regenerator-runtime": { - "version": "0.13.11", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", - "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==", - "optional": true + "node_modules/duplexer3": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.5.tgz", + "integrity": "sha512-1A8za6ws41LQgv9HrE/66jyC5yuSjQ3L/KOpFtoBilsAK2iA2wuS5rTt1OCzIvtS2V7nVmedsUU+DGRcjBmOYA==", + "dev": true }, - "node_modules/chalk": { + "node_modules/duplexify": { "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-4.1.2.tgz", + "integrity": "sha512-fz3OjcNCHmRP12MJoZMPglx8m4rrFP8rovnk4vT8Fs+aonZoCwGg10dSsQsfP/E62eZcPTMSMP6686fu9Qlqtw==", "dev": true, "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "end-of-stream": "^1.4.1", + "inherits": "^2.0.3", + "readable-stream": "^3.1.1", + "stream-shift": "^1.0.0" } }, - "node_modules/changelog-parser": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/changelog-parser/-/changelog-parser-2.8.1.tgz", - "integrity": "sha512-tNUYFRCEeWTXmwLqoNtOEzx9wcytg72MmGQqsEs14ClYwIDln7sbQw7FJj/dulXgSlsxkemc9gpPQhZYZx1TPw==", + "node_modules/duplexify/node_modules/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, "dependencies": { - "line-reader": "^0.2.4", - "remove-markdown": "^0.2.2" + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" }, - "bin": { - "changelog-parser": "bin/cli.js" - } - }, - "node_modules/char-regex": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz", - "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==", - "dev": true, "engines": { - "node": ">=10" + "node": ">= 6" } }, - "node_modules/chardet": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", - "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", + "node_modules/electron-to-chromium": { + "version": "1.4.491", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.491.tgz", + "integrity": "sha512-ZzPqGKghdVzlQJ+qpfE+r6EB321zed7e5JsvHIlMM4zPFF8okXUkF5Of7h7F3l3cltPL0rG7YVmlp5Qro7RQLA==", "dev": true }, - "node_modules/chokidar": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "node_modules/emittery": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.8.1.tgz", + "integrity": "sha512-uDfvUjVrfGJJhymx/kz6prltenw1u7WrCg1oa94zYY8xxVpLLUu045LAT0dhDZdXG58/EpPL/5kA180fQ/qudg==", "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - ], - "dependencies": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - }, "engines": { - "node": ">= 8.10.0" + "node": ">=10" }, - "optionalDependencies": { - "fsevents": "~2.3.2" + "funding": { + "url": "https://github.com/sindresorhus/emittery?sponsor=1" } }, - "node_modules/chokidar/node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "node_modules/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 + }, + "node_modules/encoding": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", + "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", "dev": true, + "optional": true, + "peer": true, "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" + "iconv-lite": "^0.6.2" } }, - "node_modules/chromium-bidi": { - "version": "0.4.20", - "resolved": "https://registry.npmjs.org/chromium-bidi/-/chromium-bidi-0.4.20.tgz", - "integrity": "sha512-ruHgVZFEv00mAQMz1tQjfjdG63jiPWrQPF6HLlX2ucqLqVTJoWngeBEKHaJ6n1swV/HSvgnBNbtTRIlcVyW3Fw==", + "node_modules/encoding/node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", "dev": true, + "optional": true, + "peer": true, "dependencies": { - "mitt": "3.0.1" + "safer-buffer": ">= 2.1.2 < 3.0.0" }, - "peerDependencies": { - "devtools-protocol": "*" - } - }, - "node_modules/ci-info": { - "version": "3.7.1", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.7.1.tgz", - "integrity": "sha512-4jYS4MOAaCIStSRwiuxc4B8MYhIe676yO1sYGzARnjXkWpmzZMMYxY6zu8WYWDhSuth5zhrQ1rhNSibyyvv4/w==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/sibiraj-s" - } - ], "engines": { - "node": ">=8" + "node": ">=0.10.0" } }, - "node_modules/cjs-module-lexer": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.2.3.tgz", - "integrity": "sha512-0TNiGstbQmCFwt4akjjBg5pLRTSyj/PkWQ1ZoO2zntmg9yLqSRxwEa4iCfQLGjqhiqBfOJa7W/E8wfGrTDmlZQ==", - "dev": true - }, - "node_modules/clean-regexp": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/clean-regexp/-/clean-regexp-1.0.0.tgz", - "integrity": "sha512-GfisEZEJvzKrmGWkvfhgzcz/BllN1USeqD2V6tg14OAOgaCD2Z/PUEuxnAZ/nPvmaHRG7a8y77p1T/IRQ4D1Hw==", + "node_modules/end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", "dev": true, "dependencies": { - "escape-string-regexp": "^1.0.5" - }, - "engines": { - "node": ">=4" + "once": "^1.4.0" } }, - "node_modules/clean-regexp/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", "dev": true, - "engines": { - "node": ">=0.8.0" + "dependencies": { + "is-arrayish": "^0.2.1" } }, - "node_modules/cli-boxes": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-2.2.1.tgz", - "integrity": "sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==", + "node_modules/es-abstract": { + "version": "1.21.1", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.21.1.tgz", + "integrity": "sha512-QudMsPOz86xYz/1dG1OuGBKOELjCh99IIWHLzy5znUB6j8xG2yMA7bfTV86VSqKF+Y/H08vQPR+9jyXpuC6hfg==", "dev": true, + "dependencies": { + "available-typed-arrays": "^1.0.5", + "call-bind": "^1.0.2", + "es-set-tostringtag": "^2.0.1", + "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", + "function.prototype.name": "^1.1.5", + "get-intrinsic": "^1.1.3", + "get-symbol-description": "^1.0.0", + "globalthis": "^1.0.3", + "gopd": "^1.0.1", + "has": "^1.0.3", + "has-property-descriptors": "^1.0.0", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3", + "internal-slot": "^1.0.4", + "is-array-buffer": "^3.0.1", + "is-callable": "^1.2.7", + "is-negative-zero": "^2.0.2", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.2", + "is-string": "^1.0.7", + "is-typed-array": "^1.1.10", + "is-weakref": "^1.0.2", + "object-inspect": "^1.12.2", + "object-keys": "^1.1.1", + "object.assign": "^4.1.4", + "regexp.prototype.flags": "^1.4.3", + "safe-regex-test": "^1.0.0", + "string.prototype.trimend": "^1.0.6", + "string.prototype.trimstart": "^1.0.6", + "typed-array-length": "^1.0.4", + "unbox-primitive": "^1.0.2", + "which-typed-array": "^1.1.9" + }, "engines": { - "node": ">=6" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/cli-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", - "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "node_modules/es-set-tostringtag": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.1.tgz", + "integrity": "sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==", "dev": true, "dependencies": { - "restore-cursor": "^3.1.0" + "get-intrinsic": "^1.1.3", + "has": "^1.0.3", + "has-tostringtag": "^1.0.0" }, "engines": { - "node": ">=8" + "node": ">= 0.4" } }, - "node_modules/cli-spinners": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.7.0.tgz", - "integrity": "sha512-qu3pN8Y3qHNgE2AFweciB1IfMnmZ/fsNTEE+NOFjmGB2F/7rLhnhzppvpCnN4FovtP26k8lHyy9ptEbNwWFLzw==", + "node_modules/es-shim-unscopables": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.0.tgz", + "integrity": "sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==", "dev": true, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "dependencies": { + "has": "^1.0.3" } }, - "node_modules/cli-width": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", - "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", + "node_modules/es-to-primitive": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", "dev": true, + "dependencies": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + }, "engines": { - "node": ">= 10" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/cliui": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", - "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "node_modules/escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", "dev": true, - "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.1", - "wrap-ansi": "^7.0.0" - }, "engines": { - "node": ">=12" + "node": ">=6" } }, - "node_modules/clone": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", - "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", + "node_modules/escape-goat": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/escape-goat/-/escape-goat-2.1.1.tgz", + "integrity": "sha512-8/uIhbG12Csjy2JEW7D9pHbreaVaS/OpN3ycnyvElTdwM5n6GY6W6e2IPemfvGZeUMqZ9A/3GqIZMgKnBhAw/Q==", "dev": true, "engines": { - "node": ">=0.8" + "node": ">=8" } }, - "node_modules/clone-response": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.3.tgz", - "integrity": "sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==", + "node_modules/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, - "dependencies": { - "mimic-response": "^1.0.0" + "engines": { + "node": ">=10" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/clone-response/node_modules/mimic-response": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", - "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", + "node_modules/escodegen": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-2.1.0.tgz", + "integrity": "sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w==", "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/co": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", - "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==", - "dev": true, - "engines": { - "iojs": ">= 1.0.0", - "node": ">= 0.12.0" - } - }, - "node_modules/collect-v8-coverage": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.2.tgz", - "integrity": "sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q==", - "dev": true - }, - "node_modules/color": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/color/-/color-4.2.3.tgz", - "integrity": "sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==", - "peer": true, "dependencies": { - "color-convert": "^2.0.1", - "color-string": "^1.9.0" + "esprima": "^4.0.1", + "estraverse": "^5.2.0", + "esutils": "^2.0.2" + }, + "bin": { + "escodegen": "bin/escodegen.js", + "esgenerate": "bin/esgenerate.js" }, "engines": { - "node": ">=12.5.0" + "node": ">=6.0" + }, + "optionalDependencies": { + "source-map": "~0.6.1" } }, - "node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "node_modules/eslint": { + "version": "8.33.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.33.0.tgz", + "integrity": "sha512-WjOpFQgKK8VrCnAtl8We0SUOy/oVZ5NHykyMiagV1M9r8IFpIJX7DduK6n1mpfhlG7T1NLWm2SuD8QB7KFySaA==", + "dev": true, "dependencies": { - "color-name": "~1.1.4" + "@eslint/eslintrc": "^1.4.1", + "@humanwhocodes/config-array": "^0.11.8", + "@humanwhocodes/module-importer": "^1.0.1", + "@nodelib/fs.walk": "^1.2.8", + "ajv": "^6.10.0", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.3.2", + "doctrine": "^3.0.0", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^7.1.1", + "eslint-utils": "^3.0.0", + "eslint-visitor-keys": "^3.3.0", + "espree": "^9.4.0", + "esquery": "^1.4.0", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "globals": "^13.19.0", + "grapheme-splitter": "^1.0.4", + "ignore": "^5.2.0", + "import-fresh": "^3.0.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "is-path-inside": "^3.0.3", + "js-sdsl": "^4.1.4", + "js-yaml": "^4.1.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.1", + "regexpp": "^3.2.0", + "strip-ansi": "^6.0.1", + "strip-json-comments": "^3.1.0", + "text-table": "^0.2.0" + }, + "bin": { + "eslint": "bin/eslint.js" }, "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" - }, - "node_modules/color-string": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz", - "integrity": "sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==", - "peer": true, - "dependencies": { - "color-name": "^1.0.0", - "simple-swizzle": "^0.2.2" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, - "node_modules/color-support": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", - "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", + "node_modules/eslint-config-prettier": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.3.0.tgz", + "integrity": "sha512-BgZuLUSeKzvlL/VUjx/Yb787VQ26RU3gGjA3iiFvdsp/2bMfVIWUVP7tjxtjS0e+HP409cPlPvNkQloz8C91ew==", "dev": true, "bin": { - "color-support": "bin.js" + "eslint-config-prettier": "bin/cli.js" + }, + "peerDependencies": { + "eslint": ">=7.0.0" } }, - "node_modules/combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "node_modules/eslint-plugin-jest": { + "version": "25.3.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-25.3.0.tgz", + "integrity": "sha512-79WQtuBsTN1S8Y9+7euBYwxIOia/k7ykkl9OCBHL3xuww5ecursHy/D8GCIlvzHVWv85gOkS5Kv6Sh7RxOgK1Q==", "dev": true, "dependencies": { - "delayed-stream": "~1.0.0" + "@typescript-eslint/experimental-utils": "^5.0.0" }, "engines": { - "node": ">= 0.8" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + }, + "peerDependencies": { + "@typescript-eslint/eslint-plugin": "^4.0.0 || ^5.0.0", + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "@typescript-eslint/eslint-plugin": { + "optional": true + }, + "jest": { + "optional": true + } } }, - "node_modules/commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true - }, - "node_modules/composed-offset-position": { - "version": "0.0.4", - "resolved": "https://registry.npmjs.org/composed-offset-position/-/composed-offset-position-0.0.4.tgz", - "integrity": "sha512-vMlvu1RuNegVE0YsCDSV/X4X10j56mq7PCIyOKK74FxkXzGLwhOUmdkJLSdOBOMwWycobGUMgft2lp+YgTe8hw==", - "peer": true - }, - "node_modules/concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", - "dev": true - }, - "node_modules/configstore": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/configstore/-/configstore-5.0.1.tgz", - "integrity": "sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==", + "node_modules/eslint-plugin-prettier": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-4.0.0.tgz", + "integrity": "sha512-98MqmCJ7vJodoQK359bqQWaxOE0CS8paAz/GgjaZLyex4TTk3g9HugoO89EqWCrFiOqn9EVvcoo7gZzONCWVwQ==", "dev": true, "dependencies": { - "dot-prop": "^5.2.0", - "graceful-fs": "^4.1.2", - "make-dir": "^3.0.0", - "unique-string": "^2.0.0", - "write-file-atomic": "^3.0.0", - "xdg-basedir": "^4.0.0" + "prettier-linter-helpers": "^1.0.0" }, "engines": { - "node": ">=8" + "node": ">=6.0.0" + }, + "peerDependencies": { + "eslint": ">=7.28.0", + "prettier": ">=2.0.0" + }, + "peerDependenciesMeta": { + "eslint-config-prettier": { + "optional": true + } } }, - "node_modules/console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==", - "dev": true - }, - "node_modules/convert-source-map": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", - "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", - "dev": true - }, - "node_modules/core-js-compat": { - "version": "3.32.0", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.32.0.tgz", - "integrity": "sha512-7a9a3D1k4UCVKnLhrgALyFcP7YCsLOQIxPd0dKjf/6GuPcgyiGP70ewWdCGrSK7evyhymi0qO4EqCmSJofDeYw==", + "node_modules/eslint-plugin-react": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.27.1.tgz", + "integrity": "sha512-meyunDjMMYeWr/4EBLTV1op3iSG3mjT/pz5gti38UzfM4OPpNc2m0t2xvKCOMU5D6FSdd34BIMFOvQbW+i8GAA==", "dev": true, "dependencies": { - "browserslist": "^4.21.9" + "array-includes": "^3.1.4", + "array.prototype.flatmap": "^1.2.5", + "doctrine": "^2.1.0", + "estraverse": "^5.3.0", + "jsx-ast-utils": "^2.4.1 || ^3.0.0", + "minimatch": "^3.0.4", + "object.entries": "^1.1.5", + "object.fromentries": "^2.0.5", + "object.hasown": "^1.1.0", + "object.values": "^1.1.5", + "prop-types": "^15.7.2", + "resolve": "^2.0.0-next.3", + "semver": "^6.3.0", + "string.prototype.matchall": "^4.0.6" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/core-js" + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8" } }, - "node_modules/core-util-is": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", - "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", - "dev": true - }, - "node_modules/cosmiconfig": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", - "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==", + "node_modules/eslint-plugin-react/node_modules/doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", "dev": true, "dependencies": { - "@types/parse-json": "^4.0.0", - "import-fresh": "^3.2.1", - "parse-json": "^5.0.0", - "path-type": "^4.0.0", - "yaml": "^1.10.0" + "esutils": "^2.0.2" }, "engines": { - "node": ">=10" + "node": ">=0.10.0" } }, - "node_modules/create-require": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", - "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", - "dev": true - }, - "node_modules/cross-fetch": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-4.0.0.tgz", - "integrity": "sha512-e4a5N8lVvuLgAWgnCrLr2PP0YyDOTHa9H/Rj54dirp61qXnNq46m82bRhNqIA5VccJtWBvPTFRV3TtvHUKPB1g==", - "dev": true, - "dependencies": { - "node-fetch": "^2.6.12" + "node_modules/eslint-plugin-react/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true, + "bin": { + "semver": "bin/semver.js" } }, - "node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "node_modules/eslint-plugin-unicorn": { + "version": "39.0.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-unicorn/-/eslint-plugin-unicorn-39.0.0.tgz", + "integrity": "sha512-fd5RK2FtYjGcIx3wra7csIE/wkkmBo22T1gZtRTsLr1Mb+KsFKJ+JOdSqhHXQUrI/JTs/Mon64cEYzTgSCbltw==", "dev": true, "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" + "@babel/helper-validator-identifier": "^7.14.9", + "ci-info": "^3.2.0", + "clean-regexp": "^1.0.0", + "eslint-template-visitor": "^2.3.2", + "eslint-utils": "^3.0.0", + "esquery": "^1.4.0", + "indent-string": "4", + "is-builtin-module": "^3.1.0", + "lodash": "^4.17.21", + "pluralize": "^8.0.0", + "read-pkg-up": "^7.0.1", + "regexp-tree": "^0.1.23", + "safe-regex": "^2.1.1", + "semver": "^7.3.5", + "strip-indent": "^3.0.0" }, "engines": { - "node": ">= 8" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sindresorhus/eslint-plugin-unicorn?sponsor=1" + }, + "peerDependencies": { + "eslint": ">=7.32.0" } }, - "node_modules/crypto-random-string": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz", - "integrity": "sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==", + "node_modules/eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/css-line-break": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/css-line-break/-/css-line-break-2.1.0.tgz", - "integrity": "sha512-FHcKFCZcAha3LwfVBhCQbW2nCNbkZXn7KVUJcsT5/P8YmfsVja0FMPJr0B903j/E69HUphKiV9iQArX8SDYA4w==", - "optional": true, "dependencies": { - "utrie": "^1.0.2" + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + }, + "engines": { + "node": ">=8.0.0" } }, - "node_modules/cssesc": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", - "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "node_modules/eslint-scope/node_modules/estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", "dev": true, - "bin": { - "cssesc": "bin/cssesc" - }, "engines": { - "node": ">=4" + "node": ">=4.0" } }, - "node_modules/cssfilter": { - "version": "0.0.10", - "resolved": "https://registry.npmjs.org/cssfilter/-/cssfilter-0.0.10.tgz", - "integrity": "sha512-FAaLDaplstoRsDR8XGYH51znUN0UY7nMc6Z9/fvE8EXGwvJE9hu7W2vHwx1+bd6gCYnln9nLbzxFTrcO9YQDZw==", - "dev": true - }, - "node_modules/cssom": { - "version": "0.4.4", - "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.4.4.tgz", - "integrity": "sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==", - "dev": true - }, - "node_modules/cssstyle": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-2.3.0.tgz", - "integrity": "sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==", + "node_modules/eslint-template-visitor": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/eslint-template-visitor/-/eslint-template-visitor-2.3.2.tgz", + "integrity": "sha512-3ydhqFpuV7x1M9EK52BPNj6V0Kwu0KKkcIAfpUhwHbR8ocRln/oUHgfxQupY8O1h4Qv/POHDumb/BwwNfxbtnA==", "dev": true, "dependencies": { - "cssom": "~0.3.6" + "@babel/core": "^7.12.16", + "@babel/eslint-parser": "^7.12.16", + "eslint-visitor-keys": "^2.0.0", + "esquery": "^1.3.1", + "multimap": "^1.1.0" }, - "engines": { - "node": ">=8" + "peerDependencies": { + "eslint": ">=7.0.0" } }, - "node_modules/cssstyle/node_modules/cssom": { - "version": "0.3.8", - "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz", - "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==", - "dev": true - }, - "node_modules/data-uri-to-buffer": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-5.0.1.tgz", - "integrity": "sha512-a9l6T1qqDogvvnw0nKlfZzqsyikEBZBClF39V3TFoKhDtGBqHu2HkuomJc02j5zft8zrUaXEuoicLeW54RkzPg==", + "node_modules/eslint-template-visitor/node_modules/eslint-visitor-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", "dev": true, "engines": { - "node": ">= 14" + "node": ">=10" } }, - "node_modules/data-urls": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-2.0.0.tgz", - "integrity": "sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ==", + "node_modules/eslint-utils": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", + "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", "dev": true, "dependencies": { - "abab": "^2.0.3", - "whatwg-mimetype": "^2.3.0", - "whatwg-url": "^8.0.0" + "eslint-visitor-keys": "^2.0.0" + }, + "engines": { + "node": "^10.0.0 || ^12.0.0 || >= 14.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" }, + "peerDependencies": { + "eslint": ">=5" + } + }, + "node_modules/eslint-utils/node_modules/eslint-visitor-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "dev": true, "engines": { "node": ">=10" } }, - "node_modules/dayjs": { - "version": "1.11.8", - "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.8.tgz", - "integrity": "sha512-LcgxzFoWMEPO7ggRv1Y2N31hUf2R0Vj7fuy/m+Bg1K8rr+KAs1AEy4y9jd5DXe8pbHgX+srkHNS7TH6Q6ZhYeQ==", - "peer": true + "node_modules/eslint-visitor-keys": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", + "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } }, - "node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "node_modules/eslint/node_modules/eslint-scope": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz", + "integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==", "dev": true, "dependencies": { - "ms": "2.1.2" + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" }, "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, - "node_modules/decimal.js": { - "version": "10.4.3", - "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz", - "integrity": "sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==", - "dev": true + "node_modules/esm": { + "version": "3.2.25", + "resolved": "https://registry.npmjs.org/esm/-/esm-3.2.25.tgz", + "integrity": "sha512-U1suiZ2oDVWv4zPO56S0NcR5QriEahGtdN2OR6FiOG4WJvcjBVFB0qI4+eKoWFH483PKGuLuu6V8Z4T5g63UVA==", + "engines": { + "node": ">=6" + } }, - "node_modules/decompress-response": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz", - "integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==", + "node_modules/espree": { + "version": "9.4.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.4.1.tgz", + "integrity": "sha512-XwctdmTO6SIvCzd9810yyNzIrOrqNYV9Koizx4C/mRhf9uq0o4yHoCEU/670pOxOL/MSraektvSAji79kX90Vg==", "dev": true, "dependencies": { - "mimic-response": "^3.1.0" + "acorn": "^8.8.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.3.0" }, "engines": { - "node": ">=10" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://opencollective.com/eslint" } }, - "node_modules/dedent": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz", - "integrity": "sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==", - "dev": true - }, - "node_modules/deep-extend": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", - "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", "dev": true, + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, "engines": { - "node": ">=4.0.0" + "node": ">=4" } }, - "node_modules/deep-is": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", - "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", - "dev": true - }, - "node_modules/deepmerge": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", - "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", + "node_modules/esquery": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", + "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", "dev": true, + "dependencies": { + "estraverse": "^5.1.0" + }, "engines": { - "node": ">=0.10.0" + "node": ">=0.10" } }, - "node_modules/defaults": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.4.tgz", - "integrity": "sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==", + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", "dev": true, "dependencies": { - "clone": "^1.0.2" + "estraverse": "^5.2.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": ">=4.0" } }, - "node_modules/defer-to-connect": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.1.3.tgz", - "integrity": "sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==", + "node_modules/esri-loader": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/esri-loader/-/esri-loader-3.4.0.tgz", + "integrity": "sha512-iS3SbBmrnr4TlUdAjyyVZD2yCud8AMZkyJcmYEVzTiE5wVUtdN8d9USp7XYtilgwkJe/eWR2f2G1+S58ESqLuQ==", "dev": true }, - "node_modules/define-properties": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz", - "integrity": "sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==", + "node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", "dev": true, - "dependencies": { - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" - }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=4.0" } }, - "node_modules/defined": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.1.tgz", - "integrity": "sha512-hsBd2qSVCRE+5PmNdHt1uzyrFu5d3RwmFDKzyNZMFq/EwDNJF7Ee5+D5oEKF0hU6LhtoUF1macFvOe4AskQC1Q==", + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">=0.10.0" } }, - "node_modules/degenerator": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/degenerator/-/degenerator-5.0.1.tgz", - "integrity": "sha512-TllpMR/t0M5sqCXfj85i4XaAzxmS5tVA16dqvdkMwGmzI+dXLXnw3J+3Vdv7VKw+ThlTMboK6i9rnZ6Nntj5CQ==", + "node_modules/execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", "dev": true, "dependencies": { - "ast-types": "^0.13.4", - "escodegen": "^2.1.0", - "esprima": "^4.0.1" + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" }, "engines": { - "node": ">= 14" - } - }, - "node_modules/delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", - "dev": true, - "engines": { - "node": ">=0.4.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" } }, - "node_modules/deprecation": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/deprecation/-/deprecation-2.3.1.tgz", - "integrity": "sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ==", - "dev": true - }, - "node_modules/detect-indent": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-6.1.0.tgz", - "integrity": "sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA==", + "node_modules/execa/node_modules/get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", "dev": true, "engines": { - "node": ">=8" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/detect-newline": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz", - "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==", + "node_modules/exit": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", + "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", "dev": true, "engines": { - "node": ">=8" + "node": ">= 0.8.0" } }, - "node_modules/detective": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/detective/-/detective-5.2.1.tgz", - "integrity": "sha512-v9XE1zRnz1wRtgurGu0Bs8uHKFSTdteYZNbIPFVhUZ39L/S79ppMpdmVOZAnoz1jfEFodc48n6MX483Xo3t1yw==", + "node_modules/expect": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/expect/-/expect-27.5.1.tgz", + "integrity": "sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw==", "dev": true, "dependencies": { - "acorn-node": "^1.8.2", - "defined": "^1.0.0", - "minimist": "^1.2.6" - }, - "bin": { - "detective": "bin/detective.js" + "@jest/types": "^27.5.1", + "jest-get-type": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1" }, "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/devtools-protocol": { - "version": "0.0.1147663", - "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.1147663.tgz", - "integrity": "sha512-hyWmRrexdhbZ1tcJUGpO95ivbRhWXz++F4Ko+n21AY5PNln2ovoJw+8ZMNDTtip+CNFQfrtLVh/w4009dXO/eQ==", - "dev": true - }, - "node_modules/didyoumean": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz", - "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==", - "dev": true - }, - "node_modules/diff": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", - "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", - "dev": true, - "engines": { - "node": ">=0.3.1" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/diff-sequences": { + "node_modules/expect/node_modules/@jest/types": { "version": "27.5.1", - "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.5.1.tgz", - "integrity": "sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", "dev": true, + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + }, "engines": { "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/dir-glob": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", - "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "node_modules/expect/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", "dev": true, "dependencies": { - "path-type": "^4.0.0" - }, - "engines": { - "node": ">=8" + "@types/yargs-parser": "*" } }, - "node_modules/dlv": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz", - "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==", - "dev": true - }, - "node_modules/doctrine": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "node_modules/external-editor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", + "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", "dev": true, "dependencies": { - "esutils": "^2.0.2" + "chardet": "^0.7.0", + "iconv-lite": "^0.4.24", + "tmp": "^0.0.33" }, "engines": { - "node": ">=6.0.0" + "node": ">=4" } }, - "node_modules/domexception": { + "node_modules/extract-zip": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/domexception/-/domexception-2.0.1.tgz", - "integrity": "sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg==", + "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-2.0.1.tgz", + "integrity": "sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg==", "dev": true, "dependencies": { - "webidl-conversions": "^5.0.0" + "debug": "^4.1.1", + "get-stream": "^5.1.0", + "yauzl": "^2.10.0" + }, + "bin": { + "extract-zip": "cli.js" }, "engines": { - "node": ">=8" + "node": ">= 10.17.0" + }, + "optionalDependencies": { + "@types/yauzl": "^2.9.1" } }, - "node_modules/domexception/node_modules/webidl-conversions": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-5.0.0.tgz", - "integrity": "sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==", - "dev": true, - "engines": { - "node": ">=8" - } + "node_modules/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==" }, - "node_modules/dompurify": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-2.4.3.tgz", - "integrity": "sha512-q6QaLcakcRjebxjg8/+NP+h0rPfatOgOzc46Fst9VAA3jF2ApfKBNKMzdP4DYTqtUMXSCd5pRS/8Po/OmoCHZQ==", - "optional": true + "node_modules/fast-diff": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.2.0.tgz", + "integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==", + "dev": true }, - "node_modules/dot-prop": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", - "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==", + "node_modules/fast-glob": { + "version": "3.2.12", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz", + "integrity": "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==", "dev": true, "dependencies": { - "is-obj": "^2.0.0" + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" }, "engines": { - "node": ">=8" + "node": ">=8.6.0" } }, - "node_modules/dotenv": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-10.0.0.tgz", - "integrity": "sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q==", + "node_modules/fast-glob/node_modules/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, + "dependencies": { + "is-glob": "^4.0.1" + }, "engines": { - "node": ">=10" + "node": ">= 6" } }, - "node_modules/duplexer3": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.5.tgz", - "integrity": "sha512-1A8za6ws41LQgv9HrE/66jyC5yuSjQ3L/KOpFtoBilsAK2iA2wuS5rTt1OCzIvtS2V7nVmedsUU+DGRcjBmOYA==", - "dev": true - }, - "node_modules/duplexify": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-4.1.2.tgz", - "integrity": "sha512-fz3OjcNCHmRP12MJoZMPglx8m4rrFP8rovnk4vT8Fs+aonZoCwGg10dSsQsfP/E62eZcPTMSMP6686fu9Qlqtw==", - "dev": true, - "dependencies": { - "end-of-stream": "^1.4.1", - "inherits": "^2.0.3", - "readable-stream": "^3.1.1", - "stream-shift": "^1.0.0" - } - }, - "node_modules/duplexify/node_modules/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, - "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" - } + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" }, - "node_modules/electron-to-chromium": { - "version": "1.4.491", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.491.tgz", - "integrity": "sha512-ZzPqGKghdVzlQJ+qpfE+r6EB321zed7e5JsvHIlMM4zPFF8okXUkF5Of7h7F3l3cltPL0rG7YVmlp5Qro7RQLA==", + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", "dev": true }, - "node_modules/emittery": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.8.1.tgz", - "integrity": "sha512-uDfvUjVrfGJJhymx/kz6prltenw1u7WrCg1oa94zYY8xxVpLLUu045LAT0dhDZdXG58/EpPL/5kA180fQ/qudg==", - "dev": true, - "engines": { - "node": ">=10" + "node_modules/fast-xml-parser": { + "version": "3.21.1", + "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-3.21.1.tgz", + "integrity": "sha512-FTFVjYoBOZTJekiUsawGsSYV9QL0A+zDYCRj7y34IO6Jg+2IMYEtQa+bbictpdpV8dHxXywqU7C0gRDEOFtBFg==", + "dependencies": { + "strnum": "^1.0.4" + }, + "bin": { + "xml2js": "cli.js" }, "funding": { - "url": "https://github.com/sindresorhus/emittery?sponsor=1" + "type": "paypal", + "url": "https://paypal.me/naturalintelligence" } }, - "node_modules/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 - }, - "node_modules/encoding": { - "version": "0.1.13", - "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", - "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", + "node_modules/fastq": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", + "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", "dev": true, - "optional": true, - "peer": true, "dependencies": { - "iconv-lite": "^0.6.2" + "reusify": "^1.0.4" } }, - "node_modules/encoding/node_modules/iconv-lite": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", - "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "node_modules/fb-watchman": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz", + "integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==", "dev": true, - "optional": true, - "peer": true, "dependencies": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - }, - "engines": { - "node": ">=0.10.0" + "bser": "2.1.1" } }, - "node_modules/end-of-stream": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", - "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "node_modules/fd-slicer": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", + "integrity": "sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==", "dev": true, "dependencies": { - "once": "^1.4.0" + "pend": "~1.2.0" } }, - "node_modules/error-ex": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", - "dev": true, - "dependencies": { - "is-arrayish": "^0.2.1" - } + "node_modules/fflate": { + "version": "0.4.8", + "resolved": "https://registry.npmjs.org/fflate/-/fflate-0.4.8.tgz", + "integrity": "sha512-FJqqoDBR00Mdj9ppamLa/Y7vxm+PRmNWA67N846RvsoYVMKB4q3y/de5PA7gUmRMYK/8CMz2GDZQmCRN1wBcWA==" }, - "node_modules/es-abstract": { - "version": "1.21.1", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.21.1.tgz", - "integrity": "sha512-QudMsPOz86xYz/1dG1OuGBKOELjCh99IIWHLzy5znUB6j8xG2yMA7bfTV86VSqKF+Y/H08vQPR+9jyXpuC6hfg==", + "node_modules/figures": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", + "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", "dev": true, "dependencies": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "es-set-tostringtag": "^2.0.1", - "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", - "function.prototype.name": "^1.1.5", - "get-intrinsic": "^1.1.3", - "get-symbol-description": "^1.0.0", - "globalthis": "^1.0.3", - "gopd": "^1.0.1", - "has": "^1.0.3", - "has-property-descriptors": "^1.0.0", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3", - "internal-slot": "^1.0.4", - "is-array-buffer": "^3.0.1", - "is-callable": "^1.2.7", - "is-negative-zero": "^2.0.2", - "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.2", - "is-string": "^1.0.7", - "is-typed-array": "^1.1.10", - "is-weakref": "^1.0.2", - "object-inspect": "^1.12.2", - "object-keys": "^1.1.1", - "object.assign": "^4.1.4", - "regexp.prototype.flags": "^1.4.3", - "safe-regex-test": "^1.0.0", - "string.prototype.trimend": "^1.0.6", - "string.prototype.trimstart": "^1.0.6", - "typed-array-length": "^1.0.4", - "unbox-primitive": "^1.0.2", - "which-typed-array": "^1.1.9" + "escape-string-regexp": "^1.0.5" }, "engines": { - "node": ">= 0.4" + "node": ">=8" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/es-set-tostringtag": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.1.tgz", - "integrity": "sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==", + "node_modules/figures/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", "dev": true, - "dependencies": { - "get-intrinsic": "^1.1.3", - "has": "^1.0.3", - "has-tostringtag": "^1.0.0" - }, "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-shim-unscopables": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.0.tgz", - "integrity": "sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==", - "dev": true, - "dependencies": { - "has": "^1.0.3" + "node": ">=0.8.0" } }, - "node_modules/es-to-primitive": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", - "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "node_modules/file-entry-cache": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", + "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", "dev": true, "dependencies": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" + "flat-cache": "^3.0.4" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", - "dev": true, "engines": { - "node": ">=6" + "node": "^10.12.0 || >=12.0.0" } }, - "node_modules/escape-goat": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/escape-goat/-/escape-goat-2.1.1.tgz", - "integrity": "sha512-8/uIhbG12Csjy2JEW7D9pHbreaVaS/OpN3ycnyvElTdwM5n6GY6W6e2IPemfvGZeUMqZ9A/3GqIZMgKnBhAw/Q==", + "node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", "dev": true, + "dependencies": { + "to-regex-range": "^5.0.1" + }, "engines": { "node": ">=8" } }, - "node_modules/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==", + "node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", "dev": true, + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, "engines": { "node": ">=10" }, @@ -6094,1071 +5221,940 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/escodegen": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-2.1.0.tgz", - "integrity": "sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w==", + "node_modules/flat-cache": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", + "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", "dev": true, "dependencies": { - "esprima": "^4.0.1", - "estraverse": "^5.2.0", - "esutils": "^2.0.2" - }, - "bin": { - "escodegen": "bin/escodegen.js", - "esgenerate": "bin/esgenerate.js" + "flatted": "^3.1.0", + "rimraf": "^3.0.2" }, "engines": { - "node": ">=6.0" - }, - "optionalDependencies": { - "source-map": "~0.6.1" + "node": "^10.12.0 || >=12.0.0" } }, - "node_modules/eslint": { - "version": "8.33.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.33.0.tgz", - "integrity": "sha512-WjOpFQgKK8VrCnAtl8We0SUOy/oVZ5NHykyMiagV1M9r8IFpIJX7DduK6n1mpfhlG7T1NLWm2SuD8QB7KFySaA==", - "dev": true, - "dependencies": { - "@eslint/eslintrc": "^1.4.1", - "@humanwhocodes/config-array": "^0.11.8", - "@humanwhocodes/module-importer": "^1.0.1", - "@nodelib/fs.walk": "^1.2.8", - "ajv": "^6.10.0", - "chalk": "^4.0.0", - "cross-spawn": "^7.0.2", - "debug": "^4.3.2", - "doctrine": "^3.0.0", - "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.1.1", - "eslint-utils": "^3.0.0", - "eslint-visitor-keys": "^3.3.0", - "espree": "^9.4.0", - "esquery": "^1.4.0", - "esutils": "^2.0.2", - "fast-deep-equal": "^3.1.3", - "file-entry-cache": "^6.0.1", - "find-up": "^5.0.0", - "glob-parent": "^6.0.2", - "globals": "^13.19.0", - "grapheme-splitter": "^1.0.4", - "ignore": "^5.2.0", - "import-fresh": "^3.0.0", - "imurmurhash": "^0.1.4", - "is-glob": "^4.0.0", - "is-path-inside": "^3.0.3", - "js-sdsl": "^4.1.4", - "js-yaml": "^4.1.0", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.4.1", - "lodash.merge": "^4.6.2", - "minimatch": "^3.1.2", - "natural-compare": "^1.4.0", - "optionator": "^0.9.1", - "regexpp": "^3.2.0", - "strip-ansi": "^6.0.1", - "strip-json-comments": "^3.1.0", - "text-table": "^0.2.0" - }, - "bin": { - "eslint": "bin/eslint.js" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" + "node_modules/flatted": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", + "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==", + "dev": true + }, + "node_modules/focus-trap": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/focus-trap/-/focus-trap-7.2.0.tgz", + "integrity": "sha512-v4wY6HDDYvzkBy4735kW5BUEuw6Yz9ABqMYLuTNbzAFPcBOGiGHwwcNVMvUz4G0kgSYh13wa/7TG3XwTeT4O/A==", + "dependencies": { + "tabbable": "^6.0.1" } }, - "node_modules/eslint-config-prettier": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.3.0.tgz", - "integrity": "sha512-BgZuLUSeKzvlL/VUjx/Yb787VQ26RU3gGjA3iiFvdsp/2bMfVIWUVP7tjxtjS0e+HP409cPlPvNkQloz8C91ew==", + "node_modules/for-each": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", + "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", "dev": true, - "bin": { - "eslint-config-prettier": "bin/cli.js" - }, - "peerDependencies": { - "eslint": ">=7.0.0" + "dependencies": { + "is-callable": "^1.1.3" } }, - "node_modules/eslint-plugin-jest": { - "version": "25.3.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-25.3.0.tgz", - "integrity": "sha512-79WQtuBsTN1S8Y9+7euBYwxIOia/k7ykkl9OCBHL3xuww5ecursHy/D8GCIlvzHVWv85gOkS5Kv6Sh7RxOgK1Q==", + "node_modules/form-data": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz", + "integrity": "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==", "dev": true, "dependencies": { - "@typescript-eslint/experimental-utils": "^5.0.0" + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - }, - "peerDependencies": { - "@typescript-eslint/eslint-plugin": "^4.0.0 || ^5.0.0", - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" - }, - "peerDependenciesMeta": { - "@typescript-eslint/eslint-plugin": { - "optional": true - }, - "jest": { - "optional": true - } + "node": ">= 6" } }, - "node_modules/eslint-plugin-prettier": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-4.0.0.tgz", - "integrity": "sha512-98MqmCJ7vJodoQK359bqQWaxOE0CS8paAz/GgjaZLyex4TTk3g9HugoO89EqWCrFiOqn9EVvcoo7gZzONCWVwQ==", + "node_modules/form-request-submit-polyfill": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/form-request-submit-polyfill/-/form-request-submit-polyfill-2.0.0.tgz", + "integrity": "sha512-p0+M92y2gFnP0AuuL8VJ0GYVzAT0bYp3GsSkmPFhvUopdnfDLP/9xplQTBBc4w8qOjKRzdK7GaFcdL9IhlXdTQ==" + }, + "node_modules/fraction.js": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz", + "integrity": "sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==", "dev": true, - "dependencies": { - "prettier-linter-helpers": "^1.0.0" - }, "engines": { - "node": ">=6.0.0" - }, - "peerDependencies": { - "eslint": ">=7.28.0", - "prettier": ">=2.0.0" + "node": "*" }, - "peerDependenciesMeta": { - "eslint-config-prettier": { - "optional": true - } + "funding": { + "type": "patreon", + "url": "https://www.patreon.com/infusion" } }, - "node_modules/eslint-plugin-react": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.27.1.tgz", - "integrity": "sha512-meyunDjMMYeWr/4EBLTV1op3iSG3mjT/pz5gti38UzfM4OPpNc2m0t2xvKCOMU5D6FSdd34BIMFOvQbW+i8GAA==", + "node_modules/fs-constants": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", + "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==", + "dev": true + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true + }, + "node_modules/fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", "dev": true, - "dependencies": { - "array-includes": "^3.1.4", - "array.prototype.flatmap": "^1.2.5", - "doctrine": "^2.1.0", - "estraverse": "^5.3.0", - "jsx-ast-utils": "^2.4.1 || ^3.0.0", - "minimatch": "^3.0.4", - "object.entries": "^1.1.5", - "object.fromentries": "^2.0.5", - "object.hasown": "^1.1.0", - "object.values": "^1.1.5", - "prop-types": "^15.7.2", - "resolve": "^2.0.0-next.3", - "semver": "^6.3.0", - "string.prototype.matchall": "^4.0.6" - }, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], "engines": { - "node": ">=4" - }, - "peerDependencies": { - "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8" + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" } }, - "node_modules/eslint-plugin-react/node_modules/doctrine": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "node_modules/function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "dev": true + }, + "node_modules/function.prototype.name": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.5.tgz", + "integrity": "sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==", "dev": true, "dependencies": { - "esutils": "^2.0.2" + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.19.0", + "functions-have-names": "^1.2.2" }, "engines": { - "node": ">=0.10.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/eslint-plugin-react/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "node_modules/functions-have-names": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", "dev": true, - "bin": { - "semver": "bin/semver.js" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/eslint-plugin-unicorn": { - "version": "39.0.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-unicorn/-/eslint-plugin-unicorn-39.0.0.tgz", - "integrity": "sha512-fd5RK2FtYjGcIx3wra7csIE/wkkmBo22T1gZtRTsLr1Mb+KsFKJ+JOdSqhHXQUrI/JTs/Mon64cEYzTgSCbltw==", + "node_modules/gauge": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz", + "integrity": "sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg==", "dev": true, "dependencies": { - "@babel/helper-validator-identifier": "^7.14.9", - "ci-info": "^3.2.0", - "clean-regexp": "^1.0.0", - "eslint-template-visitor": "^2.3.2", - "eslint-utils": "^3.0.0", - "esquery": "^1.4.0", - "indent-string": "4", - "is-builtin-module": "^3.1.0", - "lodash": "^4.17.21", - "pluralize": "^8.0.0", - "read-pkg-up": "^7.0.1", - "regexp-tree": "^0.1.23", - "safe-regex": "^2.1.1", - "semver": "^7.3.5", - "strip-indent": "^3.0.0" + "aproba": "^1.0.3 || ^2.0.0", + "color-support": "^1.1.3", + "console-control-strings": "^1.1.0", + "has-unicode": "^2.0.1", + "signal-exit": "^3.0.7", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1", + "wide-align": "^1.1.5" }, "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sindresorhus/eslint-plugin-unicorn?sponsor=1" - }, - "peerDependencies": { - "eslint": ">=7.32.0" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/eslint-scope": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", - "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", "dev": true, - "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" - }, "engines": { - "node": ">=8.0.0" + "node": ">=6.9.0" } }, - "node_modules/eslint-scope/node_modules/estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", "dev": true, "engines": { - "node": ">=4.0" + "node": "6.* || 8.* || >= 10.*" } }, - "node_modules/eslint-template-visitor": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/eslint-template-visitor/-/eslint-template-visitor-2.3.2.tgz", - "integrity": "sha512-3ydhqFpuV7x1M9EK52BPNj6V0Kwu0KKkcIAfpUhwHbR8ocRln/oUHgfxQupY8O1h4Qv/POHDumb/BwwNfxbtnA==", + "node_modules/get-intrinsic": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.0.tgz", + "integrity": "sha512-L049y6nFOuom5wGyRc3/gdTLO94dySVKRACj1RmJZBQXlbTMhtNIgkWkUHq+jYmZvKf14EW1EoJnnjbmoHij0Q==", "dev": true, "dependencies": { - "@babel/core": "^7.12.16", - "@babel/eslint-parser": "^7.12.16", - "eslint-visitor-keys": "^2.0.0", - "esquery": "^1.3.1", - "multimap": "^1.1.0" + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.3" }, - "peerDependencies": { - "eslint": ">=7.0.0" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/eslint-template-visitor/node_modules/eslint-visitor-keys": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", - "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "node_modules/get-package-type": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", + "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", "dev": true, "engines": { - "node": ">=10" + "node": ">=8.0.0" } }, - "node_modules/eslint-utils": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", - "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", + "node_modules/get-stream": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", "dev": true, "dependencies": { - "eslint-visitor-keys": "^2.0.0" + "pump": "^3.0.0" }, "engines": { - "node": "^10.0.0 || ^12.0.0 || >= 14.0.0" + "node": ">=8" }, "funding": { - "url": "https://github.com/sponsors/mysticatea" - }, - "peerDependencies": { - "eslint": ">=5" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/eslint-utils/node_modules/eslint-visitor-keys": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", - "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "node_modules/get-symbol-description": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", + "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.1" + }, "engines": { - "node": ">=10" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/eslint-visitor-keys": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", - "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==", + "node_modules/gh-release": { + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/gh-release/-/gh-release-6.0.4.tgz", + "integrity": "sha512-6djoVxTUpbw9GZ/mveNjp5j/IDPY3KACscSlmNwwfkR+EQCNTSgGRywb0TRaQdA36RnwtcNOWEaLwB5ez7jSRg==", "dev": true, + "dependencies": { + "@octokit/rest": "^18.0.9", + "changelog-parser": "^2.0.0", + "deep-extend": "^0.6.0", + "gauge": "^v4.0.4", + "gh-release-assets": "^2.0.0", + "ghauth": "^5.0.0", + "github-url-to-object": "^4.0.4", + "inquirer": "^8.0.0", + "shelljs": "^0.8.4", + "update-notifier": "^5.0.0", + "yargs": "^17.0.0" + }, + "bin": { + "gh-release": "bin/cli.js" + }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": ">=12" } }, - "node_modules/eslint/node_modules/eslint-scope": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz", - "integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==", + "node_modules/gh-release-assets": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/gh-release-assets/-/gh-release-assets-2.0.1.tgz", + "integrity": "sha512-KrhmYIA/5oQdfEl9vQ2yF6DOM2QOAjpCOsNKFkc7X3dOTefSixttW0ysot3noQ+3XL8NdkdC7z+mqfePzIwexg==", "dev": true, "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^5.2.0" + "async": "^3.2.0", + "mime": "^3.0.0", + "progress-stream": "^2.0.0", + "pumpify": "^2.0.1", + "simple-get": "^4.0.0", + "util-extend": "^1.0.1" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": ">=12" } }, - "node_modules/esm": { - "version": "3.2.25", - "resolved": "https://registry.npmjs.org/esm/-/esm-3.2.25.tgz", - "integrity": "sha512-U1suiZ2oDVWv4zPO56S0NcR5QriEahGtdN2OR6FiOG4WJvcjBVFB0qI4+eKoWFH483PKGuLuu6V8Z4T5g63UVA==", - "engines": { - "node": ">=6" + "node_modules/ghauth": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ghauth/-/ghauth-5.0.1.tgz", + "integrity": "sha512-WzgL12dczZX/VrvVTkoFAJLU3pb6PDT+TS60kLlaU51fuNEv6VoYpRXlnwIjkMIhqWead9+dLBEzj0E1ghYMkg==", + "dev": true, + "dependencies": { + "application-config": "^2.0.0", + "node-fetch": "^2.6.0", + "ora": "^4.0.5", + "read": "^1.0.7" } }, - "node_modules/espree": { - "version": "9.4.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.4.1.tgz", - "integrity": "sha512-XwctdmTO6SIvCzd9810yyNzIrOrqNYV9Koizx4C/mRhf9uq0o4yHoCEU/670pOxOL/MSraektvSAji79kX90Vg==", + "node_modules/github-url-to-object": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/github-url-to-object/-/github-url-to-object-4.0.6.tgz", + "integrity": "sha512-NaqbYHMUAlPcmWFdrAB7bcxrNIiiJWJe8s/2+iOc9vlcHlwHqSGrPk+Yi3nu6ebTwgsZEa7igz+NH2vEq3gYwQ==", "dev": true, "dependencies": { - "acorn": "^8.8.0", - "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^3.3.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" + "is-url": "^1.1.0" } }, - "node_modules/esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", "dev": true, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" }, "engines": { - "node": ">=4" + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/esquery": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", - "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", + "node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", "dev": true, "dependencies": { - "estraverse": "^5.1.0" + "is-glob": "^4.0.3" }, "engines": { - "node": ">=0.10" + "node": ">=10.13.0" } }, - "node_modules/esrecurse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "node_modules/global-dirs": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-3.0.1.tgz", + "integrity": "sha512-NBcGGFbBA9s1VzD41QXDG+3++t9Mn5t1FpLdhESY6oKY4gYTFpX4wO3sqGUa0Srjtbfj3szX0RnemmrVRUdULA==", "dev": true, "dependencies": { - "estraverse": "^5.2.0" + "ini": "2.0.0" }, "engines": { - "node": ">=4.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/esri-loader": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/esri-loader/-/esri-loader-3.4.0.tgz", - "integrity": "sha512-iS3SbBmrnr4TlUdAjyyVZD2yCud8AMZkyJcmYEVzTiE5wVUtdN8d9USp7XYtilgwkJe/eWR2f2G1+S58ESqLuQ==", - "dev": true - }, - "node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "node_modules/globals": { + "version": "13.20.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", + "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", "dev": true, + "dependencies": { + "type-fest": "^0.20.2" + }, "engines": { - "node": ">=4.0" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "node_modules/globalthis": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz", + "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==", "dev": true, + "dependencies": { + "define-properties": "^1.1.3" + }, "engines": { - "node": ">=0.10.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/execa": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", - "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "node_modules/globby": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", "dev": true, "dependencies": { - "cross-spawn": "^7.0.3", - "get-stream": "^6.0.0", - "human-signals": "^2.1.0", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.1", - "onetime": "^5.1.2", - "signal-exit": "^3.0.3", - "strip-final-newline": "^2.0.0" + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" }, "engines": { "node": ">=10" }, "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/execa/node_modules/get-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", - "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "node_modules/gopd": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", + "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", "dev": true, - "engines": { - "node": ">=10" + "dependencies": { + "get-intrinsic": "^1.1.3" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/exit": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", - "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", - "dev": true, - "engines": { - "node": ">= 0.8.0" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/expect": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/expect/-/expect-27.5.1.tgz", - "integrity": "sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw==", + "node_modules/got": { + "version": "9.6.0", + "resolved": "https://registry.npmjs.org/got/-/got-9.6.0.tgz", + "integrity": "sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==", "dev": true, "dependencies": { - "@jest/types": "^27.5.1", - "jest-get-type": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1" + "@sindresorhus/is": "^0.14.0", + "@szmarczak/http-timer": "^1.1.2", + "cacheable-request": "^6.0.0", + "decompress-response": "^3.3.0", + "duplexer3": "^0.1.4", + "get-stream": "^4.1.0", + "lowercase-keys": "^1.0.1", + "mimic-response": "^1.0.1", + "p-cancelable": "^1.0.0", + "to-readable-stream": "^1.0.0", + "url-parse-lax": "^3.0.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=8.6" } }, - "node_modules/expect/node_modules/@jest/types": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", - "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "node_modules/got/node_modules/decompress-response": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", + "integrity": "sha512-BzRPQuY1ip+qDonAOz42gRm/pg9F768C+npV/4JOsxRC2sq+Rlk+Q4ZCAsOhnIaMrgarILY+RMUIvMmmX1qAEA==", "dev": true, "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^16.0.0", - "chalk": "^4.0.0" + "mimic-response": "^1.0.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/expect/node_modules/@types/yargs": { - "version": "16.0.5", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", - "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", - "dev": true, - "dependencies": { - "@types/yargs-parser": "*" + "node": ">=4" } }, - "node_modules/external-editor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", - "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", + "node_modules/got/node_modules/get-stream": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", "dev": true, "dependencies": { - "chardet": "^0.7.0", - "iconv-lite": "^0.4.24", - "tmp": "^0.0.33" + "pump": "^3.0.0" }, "engines": { - "node": ">=4" + "node": ">=6" } }, - "node_modules/extract-zip": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-2.0.1.tgz", - "integrity": "sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg==", + "node_modules/got/node_modules/mimic-response": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", + "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", "dev": true, - "dependencies": { - "debug": "^4.1.1", - "get-stream": "^5.1.0", - "yauzl": "^2.10.0" - }, - "bin": { - "extract-zip": "cli.js" - }, "engines": { - "node": ">= 10.17.0" - }, - "optionalDependencies": { - "@types/yauzl": "^2.9.1" + "node": ">=4" } }, - "node_modules/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==" - }, - "node_modules/fast-diff": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.2.0.tgz", - "integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==", + "node_modules/graceful-fs": { + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", "dev": true }, - "node_modules/fast-fifo": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/fast-fifo/-/fast-fifo-1.3.0.tgz", - "integrity": "sha512-IgfweLvEpwyA4WgiQe9Nx6VV2QkML2NkvZnk1oKnIzXgXdWxuhF7zw4DvLTPZJn6PIUneiAXPF24QmoEqHTjyw==", + "node_modules/grapheme-splitter": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz", + "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==", "dev": true }, - "node_modules/fast-glob": { - "version": "3.2.12", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz", - "integrity": "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==", + "node_modules/has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", "dev": true, "dependencies": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.4" + "function-bind": "^1.1.1" }, "engines": { - "node": ">=8.6.0" + "node": ">= 0.4.0" } }, - "node_modules/fast-glob/node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "node_modules/has-bigints": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", + "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", "dev": true, - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" - }, - "node_modules/fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", - "dev": true - }, - "node_modules/fast-xml-parser": { - "version": "3.21.1", - "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-3.21.1.tgz", - "integrity": "sha512-FTFVjYoBOZTJekiUsawGsSYV9QL0A+zDYCRj7y34IO6Jg+2IMYEtQa+bbictpdpV8dHxXywqU7C0gRDEOFtBFg==", - "dependencies": { - "strnum": "^1.0.4" - }, - "bin": { - "xml2js": "cli.js" - }, "funding": { - "type": "paypal", - "url": "https://paypal.me/naturalintelligence" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/fastq": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", - "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true, - "dependencies": { - "reusify": "^1.0.4" + "engines": { + "node": ">=8" } }, - "node_modules/fb-watchman": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz", - "integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==", + "node_modules/has-property-descriptors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", + "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", "dev": true, "dependencies": { - "bser": "2.1.1" + "get-intrinsic": "^1.1.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/fd-slicer": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", - "integrity": "sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==", + "node_modules/has-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz", + "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==", "dev": true, - "dependencies": { - "pend": "~1.2.0" + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/fflate": { - "version": "0.4.8", - "resolved": "https://registry.npmjs.org/fflate/-/fflate-0.4.8.tgz", - "integrity": "sha512-FJqqoDBR00Mdj9ppamLa/Y7vxm+PRmNWA67N846RvsoYVMKB4q3y/de5PA7gUmRMYK/8CMz2GDZQmCRN1wBcWA==" - }, - "node_modules/figures": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", - "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", + "node_modules/has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", "dev": true, - "dependencies": { - "escape-string-regexp": "^1.0.5" - }, "engines": { - "node": ">=8" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/figures/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/file-entry-cache": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", - "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", + "node_modules/has-tostringtag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", + "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", "dev": true, "dependencies": { - "flat-cache": "^3.0.4" + "has-symbols": "^1.0.2" }, "engines": { - "node": "^10.12.0 || >=12.0.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "node_modules/has-unicode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==", + "dev": true + }, + "node_modules/has-yarn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/has-yarn/-/has-yarn-2.1.0.tgz", + "integrity": "sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw==", "dev": true, - "dependencies": { - "to-regex-range": "^5.0.1" - }, "engines": { "node": ">=8" } }, - "node_modules/find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "node_modules/hosted-git-info": { + "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 + }, + "node_modules/html-encoding-sniffer": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz", + "integrity": "sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ==", "dev": true, "dependencies": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" + "whatwg-encoding": "^1.0.5" }, "engines": { "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/flat-cache": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", - "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", - "dev": true, + "node_modules/html-escaper": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", + "dev": true + }, + "node_modules/html2canvas": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/html2canvas/-/html2canvas-1.4.1.tgz", + "integrity": "sha512-fPU6BHNpsyIhr8yyMpTLLxAbkaK8ArIBcmZIRiBLiDhjeqvXolaEmDGmELFuX9I4xDcaKKcJl+TKZLqruBbmWA==", + "optional": true, "dependencies": { - "flatted": "^3.1.0", - "rimraf": "^3.0.2" + "css-line-break": "^2.1.0", + "text-segmentation": "^1.0.3" }, "engines": { - "node": "^10.12.0 || >=12.0.0" + "node": ">=8.0.0" } }, - "node_modules/flatted": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", - "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==", + "node_modules/http-cache-semantics": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", + "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==", "dev": true }, - "node_modules/focus-trap": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/focus-trap/-/focus-trap-7.2.0.tgz", - "integrity": "sha512-v4wY6HDDYvzkBy4735kW5BUEuw6Yz9ABqMYLuTNbzAFPcBOGiGHwwcNVMvUz4G0kgSYh13wa/7TG3XwTeT4O/A==", - "dependencies": { - "tabbable": "^6.0.1" - } - }, - "node_modules/for-each": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", - "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", + "node_modules/http-proxy-agent": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", + "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", "dev": true, "dependencies": { - "is-callable": "^1.1.3" + "@tootallnate/once": "1", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" } }, - "node_modules/form-data": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz", - "integrity": "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==", + "node_modules/https-proxy-agent": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", "dev": true, "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" + "agent-base": "6", + "debug": "4" }, "engines": { "node": ">= 6" } }, - "node_modules/form-request-submit-polyfill": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/form-request-submit-polyfill/-/form-request-submit-polyfill-2.0.0.tgz", - "integrity": "sha512-p0+M92y2gFnP0AuuL8VJ0GYVzAT0bYp3GsSkmPFhvUopdnfDLP/9xplQTBBc4w8qOjKRzdK7GaFcdL9IhlXdTQ==" - }, - "node_modules/fraction.js": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz", - "integrity": "sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==", + "node_modules/human-signals": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", + "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", "dev": true, "engines": { - "node": "*" - }, - "funding": { - "type": "patreon", - "url": "https://www.patreon.com/infusion" + "node": ">=10.17.0" } }, - "node_modules/fs-extra": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", - "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", + "node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", "dev": true, "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" + "safer-buffer": ">= 2.1.2 < 3" }, "engines": { - "node": ">=6 <7 || >=8" + "node": ">=0.10.0" } }, - "node_modules/fs-extra/node_modules/universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", "dev": true, - "engines": { - "node": ">= 4.0.0" - } - }, - "node_modules/fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", - "dev": true + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] }, - "node_modules/fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "node_modules/ignore": { + "version": "5.2.4", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", + "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==", "dev": true, - "hasInstallScript": true, - "optional": true, - "os": [ - "darwin" - ], "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + "node": ">= 4" } }, - "node_modules/function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "node_modules/immediate": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz", + "integrity": "sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ==", "dev": true }, - "node_modules/function.prototype.name": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.5.tgz", - "integrity": "sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==", + "node_modules/import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.19.0", - "functions-have-names": "^1.2.2" + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" }, "engines": { - "node": ">= 0.4" + "node": ">=6" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/functions-have-names": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", - "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", + "node_modules/import-lazy": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", + "integrity": "sha512-m7ZEHgtw69qOGw+jwxXkHlrlIPdTGkyh66zXZ1ajZbxkDBNjSY/LGbmjc7h0s2ELsUDTAhFr55TrPSSqJGPG0A==", "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">=4" } }, - "node_modules/gauge": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz", - "integrity": "sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg==", + "node_modules/import-local": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", + "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==", "dev": true, "dependencies": { - "aproba": "^1.0.3 || ^2.0.0", - "color-support": "^1.1.3", - "console-control-strings": "^1.1.0", - "has-unicode": "^2.0.1", - "signal-exit": "^3.0.7", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1", - "wide-align": "^1.1.5" + "pkg-dir": "^4.2.0", + "resolve-cwd": "^3.0.0" + }, + "bin": { + "import-local-fixture": "fixtures/cli.js" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "node_modules/gensync": { - "version": "1.0.0-beta.2", - "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", - "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", "dev": true, "engines": { - "node": ">=6.9.0" + "node": ">=0.8.19" } }, - "node_modules/get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "node_modules/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, "engines": { - "node": "6.* || 8.* || >= 10.*" + "node": ">=8" } }, - "node_modules/get-intrinsic": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.0.tgz", - "integrity": "sha512-L049y6nFOuom5wGyRc3/gdTLO94dySVKRACj1RmJZBQXlbTMhtNIgkWkUHq+jYmZvKf14EW1EoJnnjbmoHij0Q==", + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", "dev": true, "dependencies": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "once": "^1.3.0", + "wrappy": "1" } }, - "node_modules/get-package-type": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", - "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "node_modules/ini": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ini/-/ini-2.0.0.tgz", + "integrity": "sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==", "dev": true, "engines": { - "node": ">=8.0.0" + "node": ">=10" } }, - "node_modules/get-stream": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", - "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", + "node_modules/inquirer": { + "version": "8.2.5", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.2.5.tgz", + "integrity": "sha512-QAgPDQMEgrDssk1XiwwHoOGYF9BAbUcc1+j+FhEvaOt8/cKRqyLn0U5qA6F74fGhTMGxf92pOvPBeh29jQJDTQ==", "dev": true, "dependencies": { - "pump": "^3.0.0" + "ansi-escapes": "^4.2.1", + "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.4.1", + "run-async": "^2.4.0", + "rxjs": "^7.5.5", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0", + "through": "^2.3.6", + "wrap-ansi": "^7.0.0" }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=12.0.0" } }, - "node_modules/get-symbol-description": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", - "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", + "node_modules/inquirer/node_modules/log-symbols": { + "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, "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.1" + "chalk": "^4.1.0", + "is-unicode-supported": "^0.1.0" }, "engines": { - "node": ">= 0.4" + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/get-uri": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/get-uri/-/get-uri-6.0.1.tgz", - "integrity": "sha512-7ZqONUVqaabogsYNWlYj0t3YZaL6dhuEueZXGF+/YVmf6dHmaFg8/6psJKqhx9QykIDKzpGcy2cn4oV4YC7V/Q==", + "node_modules/inquirer/node_modules/ora": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz", + "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==", "dev": true, "dependencies": { - "basic-ftp": "^5.0.2", - "data-uri-to-buffer": "^5.0.1", - "debug": "^4.3.4", - "fs-extra": "^8.1.0" + "bl": "^4.1.0", + "chalk": "^4.1.0", + "cli-cursor": "^3.1.0", + "cli-spinners": "^2.5.0", + "is-interactive": "^1.0.0", + "is-unicode-supported": "^0.1.0", + "log-symbols": "^4.1.0", + "strip-ansi": "^6.0.0", + "wcwidth": "^1.0.1" }, "engines": { - "node": ">= 14" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/gh-release": { - "version": "6.0.4", - "resolved": "https://registry.npmjs.org/gh-release/-/gh-release-6.0.4.tgz", - "integrity": "sha512-6djoVxTUpbw9GZ/mveNjp5j/IDPY3KACscSlmNwwfkR+EQCNTSgGRywb0TRaQdA36RnwtcNOWEaLwB5ez7jSRg==", + "node_modules/internal-slot": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.4.tgz", + "integrity": "sha512-tA8URYccNzMo94s5MQZgH8NB/XTa6HsOo0MLfXTKKEnHVVdegzaQoFZ7Jp44bdvLvY2waT5dc+j5ICEswhi7UQ==", "dev": true, "dependencies": { - "@octokit/rest": "^18.0.9", - "changelog-parser": "^2.0.0", - "deep-extend": "^0.6.0", - "gauge": "^v4.0.4", - "gh-release-assets": "^2.0.0", - "ghauth": "^5.0.0", - "github-url-to-object": "^4.0.4", - "inquirer": "^8.0.0", - "shelljs": "^0.8.4", - "update-notifier": "^5.0.0", - "yargs": "^17.0.0" - }, - "bin": { - "gh-release": "bin/cli.js" + "get-intrinsic": "^1.1.3", + "has": "^1.0.3", + "side-channel": "^1.0.4" }, "engines": { - "node": ">=12" + "node": ">= 0.4" } }, - "node_modules/gh-release-assets": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/gh-release-assets/-/gh-release-assets-2.0.1.tgz", - "integrity": "sha512-KrhmYIA/5oQdfEl9vQ2yF6DOM2QOAjpCOsNKFkc7X3dOTefSixttW0ysot3noQ+3XL8NdkdC7z+mqfePzIwexg==", + "node_modules/interpret": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz", + "integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==", "dev": true, - "dependencies": { - "async": "^3.2.0", - "mime": "^3.0.0", - "progress-stream": "^2.0.0", - "pumpify": "^2.0.1", - "simple-get": "^4.0.0", - "util-extend": "^1.0.1" - }, "engines": { - "node": ">=12" + "node": ">= 0.10" } }, - "node_modules/ghauth": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ghauth/-/ghauth-5.0.1.tgz", - "integrity": "sha512-WzgL12dczZX/VrvVTkoFAJLU3pb6PDT+TS60kLlaU51fuNEv6VoYpRXlnwIjkMIhqWead9+dLBEzj0E1ghYMkg==", + "node_modules/is-array-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.1.tgz", + "integrity": "sha512-ASfLknmY8Xa2XtB4wmbz13Wu202baeA18cJBCeCy0wXUHZF0IPyVEXqKEcd+t2fNSLLL1vC6k7lxZEojNbISXQ==", "dev": true, "dependencies": { - "application-config": "^2.0.0", - "node-fetch": "^2.6.0", - "ora": "^4.0.5", - "read": "^1.0.7" + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.3", + "is-typed-array": "^1.1.10" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/github-url-to-object": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/github-url-to-object/-/github-url-to-object-4.0.6.tgz", - "integrity": "sha512-NaqbYHMUAlPcmWFdrAB7bcxrNIiiJWJe8s/2+iOc9vlcHlwHqSGrPk+Yi3nu6ebTwgsZEa7igz+NH2vEq3gYwQ==", - "dev": true, - "dependencies": { - "is-url": "^1.1.0" - } + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", + "dev": true }, - "node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "node_modules/is-bigint": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", + "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", "dev": true, "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" + "has-bigints": "^1.0.1" }, "funding": { - "url": "https://github.com/sponsors/isaacs" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/glob-parent": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", - "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", "dev": true, "dependencies": { - "is-glob": "^4.0.3" + "binary-extensions": "^2.0.0" }, "engines": { - "node": ">=10.13.0" + "node": ">=8" } }, - "node_modules/global-dirs": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-3.0.1.tgz", - "integrity": "sha512-NBcGGFbBA9s1VzD41QXDG+3++t9Mn5t1FpLdhESY6oKY4gYTFpX4wO3sqGUa0Srjtbfj3szX0RnemmrVRUdULA==", + "node_modules/is-boolean-object": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", + "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", "dev": true, "dependencies": { - "ini": "2.0.0" + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" }, "engines": { - "node": ">=10" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/globals": { - "version": "13.20.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", - "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", + "node_modules/is-builtin-module": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-3.2.0.tgz", + "integrity": "sha512-phDA4oSGt7vl1n5tJvTWooWWAsXLY+2xCnxNqvKhGEzujg+A43wPlPOyDg3C8XQHN+6k/JTQWJ/j0dQh/qr+Hw==", "dev": true, "dependencies": { - "type-fest": "^0.20.2" + "builtin-modules": "^3.3.0" }, "engines": { - "node": ">=8" + "node": ">=6" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/globalthis": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz", - "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==", + "node_modules/is-callable": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", "dev": true, - "dependencies": { - "define-properties": "^1.1.3" - }, "engines": { "node": ">= 0.4" }, @@ -7166,178 +6162,155 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/globby": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", - "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "node_modules/is-ci": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", + "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", "dev": true, "dependencies": { - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.9", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^3.0.0" - }, - "engines": { - "node": ">=10" + "ci-info": "^2.0.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "bin": { + "is-ci": "bin.js" } }, - "node_modules/gopd": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", - "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", + "node_modules/is-ci/node_modules/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 + }, + "node_modules/is-core-module": { + "version": "2.13.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.0.tgz", + "integrity": "sha512-Z7dk6Qo8pOCp3l4tsX2C5ZVas4V+UxwQodwZhLopL91TX8UyyHEXafPcyoeeWuLrwzHcr3igO78wNLwHJHsMCQ==", "dev": true, "dependencies": { - "get-intrinsic": "^1.1.3" + "has": "^1.0.3" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/got": { - "version": "9.6.0", - "resolved": "https://registry.npmjs.org/got/-/got-9.6.0.tgz", - "integrity": "sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==", + "node_modules/is-date-object": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", "dev": true, "dependencies": { - "@sindresorhus/is": "^0.14.0", - "@szmarczak/http-timer": "^1.1.2", - "cacheable-request": "^6.0.0", - "decompress-response": "^3.3.0", - "duplexer3": "^0.1.4", - "get-stream": "^4.1.0", - "lowercase-keys": "^1.0.1", - "mimic-response": "^1.0.1", - "p-cancelable": "^1.0.0", - "to-readable-stream": "^1.0.0", - "url-parse-lax": "^3.0.0" + "has-tostringtag": "^1.0.0" }, "engines": { - "node": ">=8.6" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/got/node_modules/decompress-response": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", - "integrity": "sha512-BzRPQuY1ip+qDonAOz42gRm/pg9F768C+npV/4JOsxRC2sq+Rlk+Q4ZCAsOhnIaMrgarILY+RMUIvMmmX1qAEA==", + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", "dev": true, - "dependencies": { - "mimic-response": "^1.0.0" - }, "engines": { - "node": ">=4" + "node": ">=0.10.0" } }, - "node_modules/got/node_modules/get-stream": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", - "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "node_modules/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", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true, - "dependencies": { - "pump": "^3.0.0" - }, "engines": { - "node": ">=6" + "node": ">=8" } }, - "node_modules/got/node_modules/mimic-response": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", - "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", + "node_modules/is-generator-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", + "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==", "dev": true, "engines": { - "node": ">=4" + "node": ">=6" } }, - "node_modules/graceful-fs": { - "version": "4.2.10", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", - "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", - "dev": true - }, - "node_modules/grapheme-splitter": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz", - "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==", - "dev": true - }, - "node_modules/has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", "dev": true, "dependencies": { - "function-bind": "^1.1.1" + "is-extglob": "^2.1.1" }, "engines": { - "node": ">= 0.4.0" + "node": ">=0.10.0" } }, - "node_modules/has-bigints": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", - "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", + "node_modules/is-installed-globally": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.4.0.tgz", + "integrity": "sha512-iwGqO3J21aaSkC7jWnHP/difazwS7SFeIqxv6wEtLU8Y5KlzFTjyqcSIT0d8s4+dDhKytsk9PJZ2BkS5eZwQRQ==", "dev": true, + "dependencies": { + "global-dirs": "^3.0.0", + "is-path-inside": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "node_modules/is-interactive": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz", + "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==", "dev": true, "engines": { "node": ">=8" } }, - "node_modules/has-property-descriptors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", - "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", + "node_modules/is-negative-zero": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", + "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", "dev": true, - "dependencies": { - "get-intrinsic": "^1.1.1" + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/has-proto": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz", - "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==", + "node_modules/is-npm": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-5.0.0.tgz", + "integrity": "sha512-WW/rQLOazUq+ST/bCAVBp/2oMERWLsR7OrKyt052dNDk4DHcDE0/7QSXITlmi+VBcV13DfIbysG3tZJm5RfdBA==", "dev": true, "engines": { - "node": ">= 0.4" + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/has-symbols": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", - "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", "dev": true, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=0.12.0" } }, - "node_modules/has-tostringtag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", - "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "node_modules/is-number-object": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", + "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", "dev": true, "dependencies": { - "has-symbols": "^1.0.2" + "has-tostringtag": "^1.0.0" }, "engines": { "node": ">= 0.4" @@ -7346,886 +6319,922 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==", - "dev": true + "node_modules/is-obj": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", + "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", + "dev": true, + "engines": { + "node": ">=8" + } }, - "node_modules/has-yarn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/has-yarn/-/has-yarn-2.1.0.tgz", - "integrity": "sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw==", + "node_modules/is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", "dev": true, "engines": { "node": ">=8" } }, - "node_modules/hosted-git-info": { - "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 + "node_modules/is-plain-obj": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz", + "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==", + "dev": true, + "engines": { + "node": ">=8" + } }, - "node_modules/html-encoding-sniffer": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz", - "integrity": "sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ==", + "node_modules/is-plain-object": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", + "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", "dev": true, - "dependencies": { - "whatwg-encoding": "^1.0.5" - }, "engines": { - "node": ">=10" + "node": ">=0.10.0" } }, - "node_modules/html-escaper": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", - "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", + "node_modules/is-potential-custom-element-name": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz", + "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==", "dev": true }, - "node_modules/html2canvas": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/html2canvas/-/html2canvas-1.4.1.tgz", - "integrity": "sha512-fPU6BHNpsyIhr8yyMpTLLxAbkaK8ArIBcmZIRiBLiDhjeqvXolaEmDGmELFuX9I4xDcaKKcJl+TKZLqruBbmWA==", - "optional": true, + "node_modules/is-regex": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", + "dev": true, "dependencies": { - "css-line-break": "^2.1.0", - "text-segmentation": "^1.0.3" + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" }, "engines": { - "node": ">=8.0.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/http-cache-semantics": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", - "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==", - "dev": true - }, - "node_modules/http-proxy-agent": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.0.tgz", - "integrity": "sha512-+ZT+iBxVUQ1asugqnD6oWoRiS25AkjNfG085dKJGtGxkdwLQrMKU5wJr2bOOFAXzKcTuqq+7fZlTMgG3SRfIYQ==", + "node_modules/is-shared-array-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", + "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", "dev": true, "dependencies": { - "agent-base": "^7.1.0", - "debug": "^4.3.4" + "call-bind": "^1.0.2" }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "dev": true, "engines": { - "node": ">= 14" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/https-proxy-agent": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.1.tgz", - "integrity": "sha512-Eun8zV0kcYS1g19r78osiQLEFIRspRUDd9tIfBCTBPBeMieF/EsJNL8VI3xOIdYRDEkjQnqOYPsZ2DsWsVsFwQ==", + "node_modules/is-string": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", + "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", "dev": true, "dependencies": { - "agent-base": "^7.0.2", - "debug": "4" + "has-tostringtag": "^1.0.0" }, "engines": { - "node": ">= 14" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/human-signals": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", - "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", + "node_modules/is-symbol": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", + "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", "dev": true, + "dependencies": { + "has-symbols": "^1.0.2" + }, "engines": { - "node": ">=10.17.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "node_modules/is-typed-array": { + "version": "1.1.10", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.10.tgz", + "integrity": "sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A==", "dev": true, "dependencies": { - "safer-buffer": ">= 2.1.2 < 3" + "available-typed-arrays": "^1.0.5", + "call-bind": "^1.0.2", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-tostringtag": "^1.0.0" }, "engines": { - "node": ">=0.10.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] + "node_modules/is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==", + "dev": true }, - "node_modules/ignore": { - "version": "5.2.4", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", - "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==", + "node_modules/is-unicode-supported": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", + "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", "dev": true, "engines": { - "node": ">= 4" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/immediate": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz", - "integrity": "sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ==", + "node_modules/is-url": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/is-url/-/is-url-1.2.4.tgz", + "integrity": "sha512-ITvGim8FhRiYe4IQ5uHSkj7pVaPDrCTkNd3yq3cV7iZAcJdHTUMPMEHcqSOy9xZ9qFenQCvi+2wjH9a1nXqHww==", "dev": true }, - "node_modules/import-fresh": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "node_modules/is-weakref": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", + "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", "dev": true, "dependencies": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - }, - "engines": { - "node": ">=6" + "call-bind": "^1.0.2" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/import-lazy": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", - "integrity": "sha512-m7ZEHgtw69qOGw+jwxXkHlrlIPdTGkyh66zXZ1ajZbxkDBNjSY/LGbmjc7h0s2ELsUDTAhFr55TrPSSqJGPG0A==", + "node_modules/is-yarn-global": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/is-yarn-global/-/is-yarn-global-0.3.0.tgz", + "integrity": "sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw==", + "dev": true + }, + "node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "dev": true + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true + }, + "node_modules/istanbul-lib-coverage": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz", + "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==", "dev": true, "engines": { - "node": ">=4" + "node": ">=8" } }, - "node_modules/import-local": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", - "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==", + "node_modules/istanbul-lib-instrument": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", + "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", "dev": true, "dependencies": { - "pkg-dir": "^4.2.0", - "resolve-cwd": "^3.0.0" - }, - "bin": { - "import-local-fixture": "fixtures/cli.js" + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^6.3.0" }, "engines": { "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "node_modules/istanbul-lib-instrument/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "dev": true, - "engines": { - "node": ">=0.8.19" + "bin": { + "semver": "bin/semver.js" } }, - "node_modules/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==", + "node_modules/istanbul-lib-report": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", + "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==", "dev": true, + "dependencies": { + "istanbul-lib-coverage": "^3.0.0", + "make-dir": "^4.0.0", + "supports-color": "^7.1.0" + }, "engines": { - "node": ">=8" + "node": ">=10" } }, - "node_modules/inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "node_modules/istanbul-lib-report/node_modules/make-dir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", + "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", "dev": true, "dependencies": { - "once": "^1.3.0", - "wrappy": "1" + "semver": "^7.5.3" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true - }, - "node_modules/ini": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ini/-/ini-2.0.0.tgz", - "integrity": "sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==", + "node_modules/istanbul-lib-source-maps": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", + "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", "dev": true, + "dependencies": { + "debug": "^4.1.1", + "istanbul-lib-coverage": "^3.0.0", + "source-map": "^0.6.1" + }, "engines": { "node": ">=10" } }, - "node_modules/inquirer": { - "version": "8.2.5", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.2.5.tgz", - "integrity": "sha512-QAgPDQMEgrDssk1XiwwHoOGYF9BAbUcc1+j+FhEvaOt8/cKRqyLn0U5qA6F74fGhTMGxf92pOvPBeh29jQJDTQ==", + "node_modules/istanbul-reports": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.6.tgz", + "integrity": "sha512-TLgnMkKg3iTDsQ9PbPTdpfAK2DzjF9mqUG7RMgcQl8oFjad8ob4laGxv5XV5U9MAfx8D6tSJiUyuAwzLicaxlg==", "dev": true, "dependencies": { - "ansi-escapes": "^4.2.1", - "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.4.1", - "run-async": "^2.4.0", - "rxjs": "^7.5.5", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0", - "through": "^2.3.6", - "wrap-ansi": "^7.0.0" + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" }, "engines": { - "node": ">=12.0.0" + "node": ">=8" } }, - "node_modules/inquirer/node_modules/log-symbols": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", - "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", + "node_modules/jest": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest/-/jest-27.5.1.tgz", + "integrity": "sha512-Yn0mADZB89zTtjkPJEXwrac3LHudkQMR+Paqa8uxJHCBr9agxztUifWCyiYrjhMPBoUVBjyny0I7XH6ozDr7QQ==", "dev": true, "dependencies": { - "chalk": "^4.1.0", - "is-unicode-supported": "^0.1.0" + "@jest/core": "^27.5.1", + "import-local": "^3.0.2", + "jest-cli": "^27.5.1" + }, + "bin": { + "jest": "bin/jest.js" }, "engines": { - "node": ">=10" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } } }, - "node_modules/inquirer/node_modules/ora": { - "version": "5.4.1", - "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz", - "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==", + "node_modules/jest-changed-files": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-27.5.1.tgz", + "integrity": "sha512-buBLMiByfWGCoMsLLzGUUSpAmIAGnbR2KJoMN10ziLhOLvP4e0SlypHnAel8iqQXTrcbmfEY9sSqae5sgUsTvw==", "dev": true, "dependencies": { - "bl": "^4.1.0", - "chalk": "^4.1.0", - "cli-cursor": "^3.1.0", - "cli-spinners": "^2.5.0", - "is-interactive": "^1.0.0", - "is-unicode-supported": "^0.1.0", - "log-symbols": "^4.1.0", - "strip-ansi": "^6.0.0", - "wcwidth": "^1.0.1" + "@jest/types": "^27.5.1", + "execa": "^5.0.0", + "throat": "^6.0.1" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/internal-slot": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.4.tgz", - "integrity": "sha512-tA8URYccNzMo94s5MQZgH8NB/XTa6HsOo0MLfXTKKEnHVVdegzaQoFZ7Jp44bdvLvY2waT5dc+j5ICEswhi7UQ==", + "node_modules/jest-changed-files/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", "dev": true, "dependencies": { - "get-intrinsic": "^1.1.3", - "has": "^1.0.3", - "side-channel": "^1.0.4" + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" }, "engines": { - "node": ">= 0.4" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/interpret": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz", - "integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==", + "node_modules/jest-changed-files/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", "dev": true, - "engines": { - "node": ">= 0.10" + "dependencies": { + "@types/yargs-parser": "*" } }, - "node_modules/ip": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.8.tgz", - "integrity": "sha512-PuExPYUiu6qMBQb4l06ecm6T6ujzhmh+MeJcW9wa89PoAz5pvd4zPgN5WJV104mb6S2T1AwNIAaB70JNrLQWhg==", - "dev": true - }, - "node_modules/is-array-buffer": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.1.tgz", - "integrity": "sha512-ASfLknmY8Xa2XtB4wmbz13Wu202baeA18cJBCeCy0wXUHZF0IPyVEXqKEcd+t2fNSLLL1vC6k7lxZEojNbISXQ==", + "node_modules/jest-circus": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-27.5.1.tgz", + "integrity": "sha512-D95R7x5UtlMA5iBYsOHFFbMD/GVA4R/Kdq15f7xYWUfWHBto9NYRsOvnSauTgdF+ogCpJ4tyKOXhUifxS65gdw==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.3", - "is-typed-array": "^1.1.10" + "@jest/environment": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "dedent": "^0.7.0", + "expect": "^27.5.1", + "is-generator-fn": "^2.0.0", + "jest-each": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "stack-utils": "^2.0.3", + "throat": "^6.0.1" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", - "dev": true - }, - "node_modules/is-bigint": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", - "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", + "node_modules/jest-circus/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", "dev": true, "dependencies": { - "has-bigints": "^1.0.1" + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "node_modules/jest-circus/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", "dev": true, "dependencies": { - "binary-extensions": "^2.0.0" - }, - "engines": { - "node": ">=8" + "@types/yargs-parser": "*" } }, - "node_modules/is-boolean-object": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", - "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", + "node_modules/jest-circus/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/is-builtin-module": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-3.2.0.tgz", - "integrity": "sha512-phDA4oSGt7vl1n5tJvTWooWWAsXLY+2xCnxNqvKhGEzujg+A43wPlPOyDg3C8XQHN+6k/JTQWJ/j0dQh/qr+Hw==", + "node_modules/jest-cli": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-27.5.1.tgz", + "integrity": "sha512-Hc6HOOwYq4/74/c62dEE3r5elx8wjYqxY0r0G/nFrLDPMFRu6RA/u8qINOIkvhxG7mMQ5EJsOGfRpI8L6eFUVw==", "dev": true, "dependencies": { - "builtin-modules": "^3.3.0" + "@jest/core": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "chalk": "^4.0.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "import-local": "^3.0.2", + "jest-config": "^27.5.1", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "prompts": "^2.0.1", + "yargs": "^16.2.0" }, - "engines": { - "node": ">=6" + "bin": { + "jest": "bin/jest.js" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-callable": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", - "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", - "dev": true, "engines": { - "node": ">= 0.4" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } } }, - "node_modules/is-ci": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", - "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", + "node_modules/jest-cli/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", "dev": true, "dependencies": { - "ci-info": "^2.0.0" + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" }, - "bin": { - "is-ci": "bin.js" + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/is-ci/node_modules/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 - }, - "node_modules/is-core-module": { - "version": "2.13.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.0.tgz", - "integrity": "sha512-Z7dk6Qo8pOCp3l4tsX2C5ZVas4V+UxwQodwZhLopL91TX8UyyHEXafPcyoeeWuLrwzHcr3igO78wNLwHJHsMCQ==", + "node_modules/jest-cli/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", "dev": true, "dependencies": { - "has": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "@types/yargs-parser": "*" } }, - "node_modules/is-date-object": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", - "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "node_modules/jest-cli/node_modules/cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", "dev": true, "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" } }, - "node_modules/is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "node_modules/jest-cli/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, "engines": { - "node": ">=0.10.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/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", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "node_modules/jest-cli/node_modules/yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", "dev": true, + "dependencies": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + }, "engines": { - "node": ">=8" + "node": ">=10" } }, - "node_modules/is-generator-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", - "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==", + "node_modules/jest-cli/node_modules/yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", "dev": true, "engines": { - "node": ">=6" + "node": ">=10" } }, - "node_modules/is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "node_modules/jest-config": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-27.5.1.tgz", + "integrity": "sha512-5sAsjm6tGdsVbW9ahcChPAFCk4IlkQUknH5AvKjuLTSlcO/wCZKyFdn7Rg0EkC+OGgWODEy2hDpWB1PgzH0JNA==", "dev": true, "dependencies": { - "is-extglob": "^2.1.1" + "@babel/core": "^7.8.0", + "@jest/test-sequencer": "^27.5.1", + "@jest/types": "^27.5.1", + "babel-jest": "^27.5.1", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "deepmerge": "^4.2.2", + "glob": "^7.1.1", + "graceful-fs": "^4.2.9", + "jest-circus": "^27.5.1", + "jest-environment-jsdom": "^27.5.1", + "jest-environment-node": "^27.5.1", + "jest-get-type": "^27.5.1", + "jest-jasmine2": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-runner": "^27.5.1", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "micromatch": "^4.0.4", + "parse-json": "^5.2.0", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "strip-json-comments": "^3.1.1" }, "engines": { - "node": ">=0.10.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "peerDependencies": { + "ts-node": ">=9.0.0" + }, + "peerDependenciesMeta": { + "ts-node": { + "optional": true + } } }, - "node_modules/is-installed-globally": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.4.0.tgz", - "integrity": "sha512-iwGqO3J21aaSkC7jWnHP/difazwS7SFeIqxv6wEtLU8Y5KlzFTjyqcSIT0d8s4+dDhKytsk9PJZ2BkS5eZwQRQ==", + "node_modules/jest-config/node_modules/@jest/transform": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz", + "integrity": "sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==", "dev": true, "dependencies": { - "global-dirs": "^3.0.0", - "is-path-inside": "^3.0.2" + "@babel/core": "^7.1.0", + "@jest/types": "^27.5.1", + "babel-plugin-istanbul": "^6.1.1", + "chalk": "^4.0.0", + "convert-source-map": "^1.4.0", + "fast-json-stable-stringify": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-util": "^27.5.1", + "micromatch": "^4.0.4", + "pirates": "^4.0.4", + "slash": "^3.0.0", + "source-map": "^0.6.1", + "write-file-atomic": "^3.0.0" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/is-interactive": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz", - "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==", + "node_modules/jest-config/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", "dev": true, + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + }, "engines": { - "node": ">=8" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/is-negative-zero": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", - "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", + "node_modules/jest-config/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "dependencies": { + "@types/yargs-parser": "*" } }, - "node_modules/is-npm": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-5.0.0.tgz", - "integrity": "sha512-WW/rQLOazUq+ST/bCAVBp/2oMERWLsR7OrKyt052dNDk4DHcDE0/7QSXITlmi+VBcV13DfIbysG3tZJm5RfdBA==", + "node_modules/jest-config/node_modules/babel-jest": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-27.5.1.tgz", + "integrity": "sha512-cdQ5dXjGRd0IBRATiQ4mZGlGlRE8kJpjPOixdNRdT+m3UcNqmYWN6rK6nvtXYfY3D76cb8s/O1Ss8ea24PIwcg==", "dev": true, + "dependencies": { + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/babel__core": "^7.1.14", + "babel-plugin-istanbul": "^6.1.1", + "babel-preset-jest": "^27.5.1", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "slash": "^3.0.0" + }, "engines": { - "node": ">=10" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "peerDependencies": { + "@babel/core": "^7.8.0" } }, - "node_modules/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "node_modules/jest-config/node_modules/babel-plugin-jest-hoist": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.5.1.tgz", + "integrity": "sha512-50wCwD5EMNW4aRpOwtqzyZHIewTYNxLA4nhB+09d8BIssfNfzBRhkBIHiaPv1Si226TQSvp8gxAJm2iY2qs2hQ==", "dev": true, + "dependencies": { + "@babel/template": "^7.3.3", + "@babel/types": "^7.3.3", + "@types/babel__core": "^7.0.0", + "@types/babel__traverse": "^7.0.6" + }, "engines": { - "node": ">=0.12.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/is-number-object": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", - "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", + "node_modules/jest-config/node_modules/babel-preset-jest": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-27.5.1.tgz", + "integrity": "sha512-Nptf2FzlPCWYuJg41HBqXVT8ym6bXOevuCTbhxlUpjwtysGaIWFvDEjp4y+G7fl13FgOdjs7P/DmErqH7da0Ag==", "dev": true, "dependencies": { - "has-tostringtag": "^1.0.0" + "babel-plugin-jest-hoist": "^27.5.1", + "babel-preset-current-node-syntax": "^1.0.0" }, "engines": { - "node": ">= 0.4" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "node_modules/is-obj": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", - "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", + "node_modules/jest-config/node_modules/jest-haste-map": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", + "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/graceful-fs": "^4.1.2", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^27.5.1", + "jest-serializer": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "micromatch": "^4.0.4", + "walker": "^1.0.7" + }, "engines": { - "node": ">=8" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "optionalDependencies": { + "fsevents": "^2.3.2" } }, - "node_modules/is-path-inside": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", - "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "node_modules/jest-config/node_modules/jest-regex-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", + "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", "dev": true, "engines": { - "node": ">=8" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/is-plain-obj": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz", - "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==", + "node_modules/jest-config/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, "engines": { - "node": ">=8" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/is-plain-object": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", - "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", + "node_modules/jest-config/node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", "dev": true, + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, "engines": { - "node": ">=0.10.0" + "node": ">= 10.13.0" } }, - "node_modules/is-potential-custom-element-name": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz", - "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==", - "dev": true - }, - "node_modules/is-regex": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", - "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", + "node_modules/jest-config/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" + "has-flag": "^4.0.0" }, "engines": { - "node": ">= 0.4" + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/chalk/supports-color?sponsor=1" } }, - "node_modules/is-shared-array-buffer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", - "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", + "node_modules/jest-diff": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.5.1.tgz", + "integrity": "sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==", "dev": true, "dependencies": { - "call-bind": "^1.0.2" + "chalk": "^4.0.0", + "diff-sequences": "^27.5.1", + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/is-stream": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", - "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "node_modules/jest-docblock": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-27.5.1.tgz", + "integrity": "sha512-rl7hlABeTsRYxKiUfpHrQrG4e2obOiTQWfMEH3PxPjOtdsfLQO4ReWSZaQ7DETm4xu07rl4q/h4zcKXyU0/OzQ==", "dev": true, - "engines": { - "node": ">=8" + "dependencies": { + "detect-newline": "^3.0.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/is-string": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", - "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", + "node_modules/jest-each": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-27.5.1.tgz", + "integrity": "sha512-1Ff6p+FbhT/bXQnEouYy00bkNSY7OUpfIcmdl8vZ31A1UUaurOLPA8a8BbJOF2RDUElwJhmeaV7LnagI+5UwNQ==", "dev": true, "dependencies": { - "has-tostringtag": "^1.0.0" + "@jest/types": "^27.5.1", + "chalk": "^4.0.0", + "jest-get-type": "^27.5.1", + "jest-util": "^27.5.1", + "pretty-format": "^27.5.1" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/is-symbol": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", - "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", + "node_modules/jest-each/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", "dev": true, "dependencies": { - "has-symbols": "^1.0.2" + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/is-typed-array": { - "version": "1.1.10", - "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.10.tgz", - "integrity": "sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A==", + "node_modules/jest-each/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", "dev": true, "dependencies": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-tostringtag": "^1.0.0" + "@types/yargs-parser": "*" + } + }, + "node_modules/jest-each/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==", - "dev": true - }, - "node_modules/is-unicode-supported": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", - "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", + "node_modules/jest-environment-jsdom": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-27.5.1.tgz", + "integrity": "sha512-TFBvkTC1Hnnnrka/fUb56atfDtJ9VMZ94JkjTbggl1PEpwrYtUBKMezB3inLmWqQsXYLcMwNoDQwoBTAvFfsfw==", "dev": true, - "engines": { - "node": ">=10" + "dependencies": { + "@jest/environment": "^27.5.1", + "@jest/fake-timers": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "jest-mock": "^27.5.1", + "jest-util": "^27.5.1", + "jsdom": "^16.6.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/is-url": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/is-url/-/is-url-1.2.4.tgz", - "integrity": "sha512-ITvGim8FhRiYe4IQ5uHSkj7pVaPDrCTkNd3yq3cV7iZAcJdHTUMPMEHcqSOy9xZ9qFenQCvi+2wjH9a1nXqHww==", - "dev": true - }, - "node_modules/is-weakref": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", - "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", + "node_modules/jest-environment-jsdom/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", "dev": true, "dependencies": { - "call-bind": "^1.0.2" + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/is-yarn-global": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/is-yarn-global/-/is-yarn-global-0.3.0.tgz", - "integrity": "sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw==", - "dev": true - }, - "node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", - "dev": true - }, - "node_modules/isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "dev": true - }, - "node_modules/istanbul-lib-coverage": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz", - "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-instrument": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", - "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", - "dev": true, - "dependencies": { - "@babel/core": "^7.12.3", - "@babel/parser": "^7.14.7", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-coverage": "^3.2.0", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-instrument/node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/istanbul-lib-report": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", - "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==", - "dev": true, - "dependencies": { - "istanbul-lib-coverage": "^3.0.0", - "make-dir": "^4.0.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/istanbul-lib-report/node_modules/make-dir": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", - "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", - "dev": true, - "dependencies": { - "semver": "^7.5.3" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/istanbul-lib-source-maps": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", - "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", - "dev": true, - "dependencies": { - "debug": "^4.1.1", - "istanbul-lib-coverage": "^3.0.0", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/istanbul-reports": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.6.tgz", - "integrity": "sha512-TLgnMkKg3iTDsQ9PbPTdpfAK2DzjF9mqUG7RMgcQl8oFjad8ob4laGxv5XV5U9MAfx8D6tSJiUyuAwzLicaxlg==", + "node_modules/jest-environment-jsdom/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", "dev": true, "dependencies": { - "html-escaper": "^2.0.0", - "istanbul-lib-report": "^3.0.0" - }, - "engines": { - "node": ">=8" + "@types/yargs-parser": "*" } }, - "node_modules/jest": { - "version": "27.0.3", - "resolved": "https://registry.npmjs.org/jest/-/jest-27.0.3.tgz", - "integrity": "sha512-0G9+QqXFIZWgf5rs3yllpaA+13ZawVHfyuhuCV1EnoFbX++rVMRrYWCAnk+dfhwyv9/VTQvn+XG969u8aPRsBg==", + "node_modules/jest-environment-jsdom/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", "dev": true, "dependencies": { - "@jest/core": "^27.0.3", - "import-local": "^3.0.2", - "jest-cli": "^27.0.3" - }, - "bin": { - "jest": "bin/jest.js" + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" }, "engines": { "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - }, - "peerDependencies": { - "node-notifier": "^8.0.1 || ^9.0.0" - }, - "peerDependenciesMeta": { - "node-notifier": { - "optional": true - } } }, - "node_modules/jest-changed-files": { + "node_modules/jest-environment-node": { "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-27.5.1.tgz", - "integrity": "sha512-buBLMiByfWGCoMsLLzGUUSpAmIAGnbR2KJoMN10ziLhOLvP4e0SlypHnAel8iqQXTrcbmfEY9sSqae5sgUsTvw==", + "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-27.5.1.tgz", + "integrity": "sha512-Jt4ZUnxdOsTGwSRAfKEnE6BcwsSPNOijjwifq5sDFSA2kesnXTvNqKHYgM0hDq3549Uf/KzdXNYn4wMZJPlFLw==", "dev": true, "dependencies": { + "@jest/environment": "^27.5.1", + "@jest/fake-timers": "^27.5.1", "@jest/types": "^27.5.1", - "execa": "^5.0.0", - "throat": "^6.0.1" + "@types/node": "*", + "jest-mock": "^27.5.1", + "jest-util": "^27.5.1" }, "engines": { "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/jest-changed-files/node_modules/@jest/types": { + "node_modules/jest-environment-node/node_modules/@jest/types": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", @@ -8241,7 +7250,7 @@ "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/jest-changed-files/node_modules/@types/yargs": { + "node_modules/jest-environment-node/node_modules/@types/yargs": { "version": "16.0.5", "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", @@ -8250,19 +7259,45 @@ "@types/yargs-parser": "*" } }, - "node_modules/jest-circus": { + "node_modules/jest-environment-node/node_modules/jest-util": { "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-27.5.1.tgz", - "integrity": "sha512-D95R7x5UtlMA5iBYsOHFFbMD/GVA4R/Kdq15f7xYWUfWHBto9NYRsOvnSauTgdF+ogCpJ4tyKOXhUifxS65gdw==", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-get-type": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", + "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", + "dev": true, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-jasmine2": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-27.5.1.tgz", + "integrity": "sha512-jtq7VVyG8SqAorDpApwiJJImd0V2wv1xzdheGHRGyuT7gZm6gG47QEskOlzsN1PG/6WNaCo5pmwMHDf3AkG2pQ==", "dev": true, "dependencies": { "@jest/environment": "^27.5.1", + "@jest/source-map": "^27.5.1", "@jest/test-result": "^27.5.1", "@jest/types": "^27.5.1", "@types/node": "*", "chalk": "^4.0.0", "co": "^4.6.0", - "dedent": "^0.7.0", "expect": "^27.5.1", "is-generator-fn": "^2.0.0", "jest-each": "^27.5.1", @@ -8272,15 +7307,13 @@ "jest-snapshot": "^27.5.1", "jest-util": "^27.5.1", "pretty-format": "^27.5.1", - "slash": "^3.0.0", - "stack-utils": "^2.0.3", "throat": "^6.0.1" }, "engines": { "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/jest-circus/node_modules/@jest/types": { + "node_modules/jest-jasmine2/node_modules/@jest/types": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", @@ -8296,7 +7329,7 @@ "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/jest-circus/node_modules/@types/yargs": { + "node_modules/jest-jasmine2/node_modules/@types/yargs": { "version": "16.0.5", "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", @@ -8305,7 +7338,7 @@ "@types/yargs-parser": "*" } }, - "node_modules/jest-circus/node_modules/jest-util": { + "node_modules/jest-jasmine2/node_modules/jest-util": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", @@ -8322,41 +7355,55 @@ "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/jest-cli": { - "version": "27.4.5", - "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-27.4.5.tgz", - "integrity": "sha512-hrky3DSgE0u7sQxaCL7bdebEPHx5QzYmrGuUjaPLmPE8jx5adtvGuOlRspvMoVLTTDOHRnZDoRLYJuA+VCI7Hg==", + "node_modules/jest-leak-detector": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-27.5.1.tgz", + "integrity": "sha512-POXfWAMvfU6WMUXftV4HolnJfnPOGEu10fscNCA76KBpRRhcMN2c8d3iT2pxQS3HLbA+5X4sOUPzYO2NUyIlHQ==", "dev": true, "dependencies": { - "@jest/core": "^27.4.5", - "@jest/test-result": "^27.4.2", - "@jest/types": "^27.4.2", - "chalk": "^4.0.0", - "exit": "^0.1.2", - "graceful-fs": "^4.2.4", - "import-local": "^3.0.2", - "jest-config": "^27.4.5", - "jest-util": "^27.4.2", - "jest-validate": "^27.4.2", - "prompts": "^2.0.1", - "yargs": "^16.2.0" - }, - "bin": { - "jest": "bin/jest.js" + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" }, "engines": { "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-matcher-utils": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz", + "integrity": "sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "jest-diff": "^27.5.1", + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" }, - "peerDependencies": { - "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-message-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", + "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^27.5.1", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" }, - "peerDependenciesMeta": { - "node-notifier": { - "optional": true - } + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/jest-cli/node_modules/@jest/types": { + "node_modules/jest-message-util/node_modules/@jest/types": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", @@ -8372,7 +7419,7 @@ "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/jest-cli/node_modules/@types/yargs": { + "node_modules/jest-message-util/node_modules/@types/yargs": { "version": "16.0.5", "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", @@ -8381,131 +7428,97 @@ "@types/yargs-parser": "*" } }, - "node_modules/jest-cli/node_modules/cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "node_modules/jest-mock": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-27.5.1.tgz", + "integrity": "sha512-K4jKbY1d4ENhbrG2zuPWaQBvDly+iZ2yAW+T1fATN78hc0sInwn7wZB8XtlNnvHug5RMwV897Xm4LqmPM4e2Og==", "dev": true, "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" + "@jest/types": "^27.5.1", + "@types/node": "*" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/jest-cli/node_modules/jest-util": { + "node_modules/jest-mock/node_modules/@jest/types": { "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", "dev": true, "dependencies": { - "@jest/types": "^27.5.1", + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" }, "engines": { "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/jest-cli/node_modules/yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "node_modules/jest-mock/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", "dev": true, "dependencies": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.0", - "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" - }, - "engines": { - "node": ">=10" + "@types/yargs-parser": "*" } }, - "node_modules/jest-cli/node_modules/yargs-parser": { - "version": "20.2.9", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", - "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "node_modules/jest-pnp-resolver": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", + "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==", "dev": true, "engines": { - "node": ">=10" + "node": ">=6" + }, + "peerDependencies": { + "jest-resolve": "*" + }, + "peerDependenciesMeta": { + "jest-resolve": { + "optional": true + } } }, - "node_modules/jest-config": { + "node_modules/jest-resolve": { "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-27.5.1.tgz", - "integrity": "sha512-5sAsjm6tGdsVbW9ahcChPAFCk4IlkQUknH5AvKjuLTSlcO/wCZKyFdn7Rg0EkC+OGgWODEy2hDpWB1PgzH0JNA==", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-27.5.1.tgz", + "integrity": "sha512-FFDy8/9E6CV83IMbDpcjOhumAQPDyETnU2KZ1O98DwTnz8AOBsW/Xv3GySr1mOZdItLR+zDZ7I/UdTFbgSOVCw==", "dev": true, "dependencies": { - "@babel/core": "^7.8.0", - "@jest/test-sequencer": "^27.5.1", "@jest/types": "^27.5.1", - "babel-jest": "^27.5.1", "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "deepmerge": "^4.2.2", - "glob": "^7.1.1", "graceful-fs": "^4.2.9", - "jest-circus": "^27.5.1", - "jest-environment-jsdom": "^27.5.1", - "jest-environment-node": "^27.5.1", - "jest-get-type": "^27.5.1", - "jest-jasmine2": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-runner": "^27.5.1", + "jest-haste-map": "^27.5.1", + "jest-pnp-resolver": "^1.2.2", "jest-util": "^27.5.1", "jest-validate": "^27.5.1", - "micromatch": "^4.0.4", - "parse-json": "^5.2.0", - "pretty-format": "^27.5.1", - "slash": "^3.0.0", - "strip-json-comments": "^3.1.1" + "resolve": "^1.20.0", + "resolve.exports": "^1.1.0", + "slash": "^3.0.0" }, "engines": { "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - }, - "peerDependencies": { - "ts-node": ">=9.0.0" - }, - "peerDependenciesMeta": { - "ts-node": { - "optional": true - } } }, - "node_modules/jest-config/node_modules/@jest/transform": { + "node_modules/jest-resolve-dependencies": { "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz", - "integrity": "sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==", + "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-27.5.1.tgz", + "integrity": "sha512-QQOOdY4PE39iawDn5rzbIePNigfe5B9Z91GDD1ae/xNDlu9kaat8QQ5EKnNmVWPV54hUdxCVwwj6YMgR2O7IOg==", "dev": true, "dependencies": { - "@babel/core": "^7.1.0", "@jest/types": "^27.5.1", - "babel-plugin-istanbul": "^6.1.1", - "chalk": "^4.0.0", - "convert-source-map": "^1.4.0", - "fast-json-stable-stringify": "^2.0.0", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", "jest-regex-util": "^27.5.1", - "jest-util": "^27.5.1", - "micromatch": "^4.0.4", - "pirates": "^4.0.4", - "slash": "^3.0.0", - "source-map": "^0.6.1", - "write-file-atomic": "^3.0.0" + "jest-snapshot": "^27.5.1" }, "engines": { "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/jest-config/node_modules/@jest/types": { + "node_modules/jest-resolve-dependencies/node_modules/@jest/types": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", @@ -8521,7 +7534,7 @@ "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/jest-config/node_modules/@types/yargs": { + "node_modules/jest-resolve-dependencies/node_modules/@types/yargs": { "version": "16.0.5", "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", @@ -8530,60 +7543,41 @@ "@types/yargs-parser": "*" } }, - "node_modules/jest-config/node_modules/babel-jest": { + "node_modules/jest-resolve-dependencies/node_modules/jest-regex-util": { "version": "27.5.1", - "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-27.5.1.tgz", - "integrity": "sha512-cdQ5dXjGRd0IBRATiQ4mZGlGlRE8kJpjPOixdNRdT+m3UcNqmYWN6rK6nvtXYfY3D76cb8s/O1Ss8ea24PIwcg==", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", + "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", "dev": true, - "dependencies": { - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/babel__core": "^7.1.14", - "babel-plugin-istanbul": "^6.1.1", - "babel-preset-jest": "^27.5.1", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "slash": "^3.0.0" - }, "engines": { "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - }, - "peerDependencies": { - "@babel/core": "^7.8.0" } }, - "node_modules/jest-config/node_modules/babel-plugin-jest-hoist": { + "node_modules/jest-resolve/node_modules/@jest/types": { "version": "27.5.1", - "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.5.1.tgz", - "integrity": "sha512-50wCwD5EMNW4aRpOwtqzyZHIewTYNxLA4nhB+09d8BIssfNfzBRhkBIHiaPv1Si226TQSvp8gxAJm2iY2qs2hQ==", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", "dev": true, "dependencies": { - "@babel/template": "^7.3.3", - "@babel/types": "^7.3.3", - "@types/babel__core": "^7.0.0", - "@types/babel__traverse": "^7.0.6" + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" }, "engines": { "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/jest-config/node_modules/babel-preset-jest": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-27.5.1.tgz", - "integrity": "sha512-Nptf2FzlPCWYuJg41HBqXVT8ym6bXOevuCTbhxlUpjwtysGaIWFvDEjp4y+G7fl13FgOdjs7P/DmErqH7da0Ag==", + "node_modules/jest-resolve/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", "dev": true, "dependencies": { - "babel-plugin-jest-hoist": "^27.5.1", - "babel-preset-current-node-syntax": "^1.0.0" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" + "@types/yargs-parser": "*" } }, - "node_modules/jest-config/node_modules/jest-haste-map": { + "node_modules/jest-resolve/node_modules/jest-haste-map": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", @@ -8609,7 +7603,7 @@ "fsevents": "^2.3.2" } }, - "node_modules/jest-config/node_modules/jest-regex-util": { + "node_modules/jest-resolve/node_modules/jest-regex-util": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", @@ -8618,7 +7612,7 @@ "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/jest-config/node_modules/jest-util": { + "node_modules/jest-resolve/node_modules/jest-util": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", @@ -8635,7 +7629,7 @@ "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/jest-config/node_modules/jest-worker": { + "node_modules/jest-resolve/node_modules/jest-worker": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", @@ -8649,7 +7643,24 @@ "node": ">= 10.13.0" } }, - "node_modules/jest-config/node_modules/supports-color": { + "node_modules/jest-resolve/node_modules/resolve": { + "version": "1.22.4", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.4.tgz", + "integrity": "sha512-PXNdCiPqDqeUou+w1C2eTQbNfxKSuMxqTCuvlmmMsk1NWHL5fRrhY6Pl0qEYYc6+QqGClco1Qj8XnjPego4wfg==", + "dev": true, + "dependencies": { + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/jest-resolve/node_modules/supports-color": { "version": "8.1.1", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", @@ -8664,53 +7675,68 @@ "url": "https://github.com/chalk/supports-color?sponsor=1" } }, - "node_modules/jest-diff": { + "node_modules/jest-runner": { "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.5.1.tgz", - "integrity": "sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==", + "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-27.5.1.tgz", + "integrity": "sha512-g4NPsM4mFCOwFKXO4p/H/kWGdJp9V8kURY2lX8Me2drgXqG7rrZAx5kv+5H7wtt/cdFIjhqYx1HrlqWHaOvDaQ==", "dev": true, "dependencies": { + "@jest/console": "^27.5.1", + "@jest/environment": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", "chalk": "^4.0.0", - "diff-sequences": "^27.5.1", - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" + "emittery": "^0.8.1", + "graceful-fs": "^4.2.9", + "jest-docblock": "^27.5.1", + "jest-environment-jsdom": "^27.5.1", + "jest-environment-node": "^27.5.1", + "jest-haste-map": "^27.5.1", + "jest-leak-detector": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "source-map-support": "^0.5.6", + "throat": "^6.0.1" }, "engines": { "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/jest-docblock": { + "node_modules/jest-runner/node_modules/@jest/transform": { "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-27.5.1.tgz", - "integrity": "sha512-rl7hlABeTsRYxKiUfpHrQrG4e2obOiTQWfMEH3PxPjOtdsfLQO4ReWSZaQ7DETm4xu07rl4q/h4zcKXyU0/OzQ==", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz", + "integrity": "sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==", "dev": true, "dependencies": { - "detect-newline": "^3.0.0" + "@babel/core": "^7.1.0", + "@jest/types": "^27.5.1", + "babel-plugin-istanbul": "^6.1.1", + "chalk": "^4.0.0", + "convert-source-map": "^1.4.0", + "fast-json-stable-stringify": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-util": "^27.5.1", + "micromatch": "^4.0.4", + "pirates": "^4.0.4", + "slash": "^3.0.0", + "source-map": "^0.6.1", + "write-file-atomic": "^3.0.0" }, "engines": { "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/jest-each": { + "node_modules/jest-runner/node_modules/@jest/types": { "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-27.5.1.tgz", - "integrity": "sha512-1Ff6p+FbhT/bXQnEouYy00bkNSY7OUpfIcmdl8vZ31A1UUaurOLPA8a8BbJOF2RDUElwJhmeaV7LnagI+5UwNQ==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "chalk": "^4.0.0", - "jest-get-type": "^27.5.1", - "jest-util": "^27.5.1", - "pretty-format": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-each/node_modules/@jest/types": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", - "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", "dev": true, "dependencies": { "@types/istanbul-lib-coverage": "^2.0.0", @@ -8723,7 +7749,7 @@ "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/jest-each/node_modules/@types/yargs": { + "node_modules/jest-runner/node_modules/@types/yargs": { "version": "16.0.5", "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", @@ -8732,101 +7758,147 @@ "@types/yargs-parser": "*" } }, - "node_modules/jest-each/node_modules/jest-util": { + "node_modules/jest-runner/node_modules/jest-haste-map": { "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", + "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", "dev": true, "dependencies": { "@jest/types": "^27.5.1", + "@types/graceful-fs": "^4.1.2", "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" + "jest-regex-util": "^27.5.1", + "jest-serializer": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "micromatch": "^4.0.4", + "walker": "^1.0.7" }, "engines": { "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "optionalDependencies": { + "fsevents": "^2.3.2" } }, - "node_modules/jest-environment-jsdom": { + "node_modules/jest-runner/node_modules/jest-regex-util": { "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-27.5.1.tgz", - "integrity": "sha512-TFBvkTC1Hnnnrka/fUb56atfDtJ9VMZ94JkjTbggl1PEpwrYtUBKMezB3inLmWqQsXYLcMwNoDQwoBTAvFfsfw==", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", + "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", + "dev": true, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-runner/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", "dev": true, "dependencies": { - "@jest/environment": "^27.5.1", - "@jest/fake-timers": "^27.5.1", "@jest/types": "^27.5.1", "@types/node": "*", - "jest-mock": "^27.5.1", - "jest-util": "^27.5.1", - "jsdom": "^16.6.0" + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" }, "engines": { "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/jest-environment-jsdom/node_modules/@jest/types": { + "node_modules/jest-runner/node_modules/jest-worker": { "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", - "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", "dev": true, "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", "@types/node": "*", - "@types/yargs": "^16.0.0", - "chalk": "^4.0.0" + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">= 10.13.0" } }, - "node_modules/jest-environment-jsdom/node_modules/@types/yargs": { - "version": "16.0.5", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", - "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "node_modules/jest-runner/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", "dev": true, "dependencies": { - "@types/yargs-parser": "*" + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" } }, - "node_modules/jest-environment-jsdom/node_modules/jest-util": { + "node_modules/jest-runtime": { "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-27.5.1.tgz", + "integrity": "sha512-o7gxw3Gf+H2IGt8fv0RiyE1+r83FJBRruoA+FXrlHw6xEyBsU8ugA6IPfTdVyA0w8HClpbK+DGJxH59UrNMx8A==", "dev": true, "dependencies": { + "@jest/environment": "^27.5.1", + "@jest/fake-timers": "^27.5.1", + "@jest/globals": "^27.5.1", + "@jest/source-map": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", "@jest/types": "^27.5.1", - "@types/node": "*", "chalk": "^4.0.0", - "ci-info": "^3.2.0", + "cjs-module-lexer": "^1.0.0", + "collect-v8-coverage": "^1.0.0", + "execa": "^5.0.0", + "glob": "^7.1.3", "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" + "jest-haste-map": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-mock": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "slash": "^3.0.0", + "strip-bom": "^4.0.0" }, "engines": { "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/jest-environment-node": { + "node_modules/jest-runtime/node_modules/@jest/transform": { "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-27.5.1.tgz", - "integrity": "sha512-Jt4ZUnxdOsTGwSRAfKEnE6BcwsSPNOijjwifq5sDFSA2kesnXTvNqKHYgM0hDq3549Uf/KzdXNYn4wMZJPlFLw==", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz", + "integrity": "sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==", "dev": true, "dependencies": { - "@jest/environment": "^27.5.1", - "@jest/fake-timers": "^27.5.1", + "@babel/core": "^7.1.0", "@jest/types": "^27.5.1", - "@types/node": "*", - "jest-mock": "^27.5.1", - "jest-util": "^27.5.1" + "babel-plugin-istanbul": "^6.1.1", + "chalk": "^4.0.0", + "convert-source-map": "^1.4.0", + "fast-json-stable-stringify": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-util": "^27.5.1", + "micromatch": "^4.0.4", + "pirates": "^4.0.4", + "slash": "^3.0.0", + "source-map": "^0.6.1", + "write-file-atomic": "^3.0.0" }, "engines": { "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/jest-environment-node/node_modules/@jest/types": { + "node_modules/jest-runtime/node_modules/@jest/types": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", @@ -8842,7 +7914,7 @@ "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/jest-environment-node/node_modules/@types/yargs": { + "node_modules/jest-runtime/node_modules/@types/yargs": { "version": "16.0.5", "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", @@ -8851,176 +7923,160 @@ "@types/yargs-parser": "*" } }, - "node_modules/jest-environment-node/node_modules/jest-util": { + "node_modules/jest-runtime/node_modules/jest-haste-map": { "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", + "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", "dev": true, "dependencies": { "@jest/types": "^27.5.1", + "@types/graceful-fs": "^4.1.2", "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" + "jest-regex-util": "^27.5.1", + "jest-serializer": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "micromatch": "^4.0.4", + "walker": "^1.0.7" }, "engines": { "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "optionalDependencies": { + "fsevents": "^2.3.2" } }, - "node_modules/jest-get-type": { + "node_modules/jest-runtime/node_modules/jest-regex-util": { "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", - "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", + "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", "dev": true, "engines": { "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/jest-haste-map": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-29.6.2.tgz", - "integrity": "sha512-+51XleTDAAysvU8rT6AnS1ZJ+WHVNqhj1k6nTvN2PYP+HjU3kqlaKQ1Lnw3NYW3bm2r8vq82X0Z1nDDHZMzHVA==", - "dev": true, - "dependencies": { - "@jest/types": "^29.6.1", - "@types/graceful-fs": "^4.1.3", - "@types/node": "*", - "anymatch": "^3.0.3", - "fb-watchman": "^2.0.0", - "graceful-fs": "^4.2.9", - "jest-regex-util": "^29.4.3", - "jest-util": "^29.6.2", - "jest-worker": "^29.6.2", - "micromatch": "^4.0.4", - "walker": "^1.0.8" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - }, - "optionalDependencies": { - "fsevents": "^2.3.2" - } - }, - "node_modules/jest-jasmine2": { + "node_modules/jest-runtime/node_modules/jest-util": { "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-27.5.1.tgz", - "integrity": "sha512-jtq7VVyG8SqAorDpApwiJJImd0V2wv1xzdheGHRGyuT7gZm6gG47QEskOlzsN1PG/6WNaCo5pmwMHDf3AkG2pQ==", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", "dev": true, "dependencies": { - "@jest/environment": "^27.5.1", - "@jest/source-map": "^27.5.1", - "@jest/test-result": "^27.5.1", "@jest/types": "^27.5.1", "@types/node": "*", "chalk": "^4.0.0", - "co": "^4.6.0", - "expect": "^27.5.1", - "is-generator-fn": "^2.0.0", - "jest-each": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-runtime": "^27.5.1", - "jest-snapshot": "^27.5.1", - "jest-util": "^27.5.1", - "pretty-format": "^27.5.1", - "throat": "^6.0.1" + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" }, "engines": { "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/jest-jasmine2/node_modules/@jest/types": { + "node_modules/jest-runtime/node_modules/jest-worker": { "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", - "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", "dev": true, "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", "@types/node": "*", - "@types/yargs": "^16.0.0", - "chalk": "^4.0.0" + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">= 10.13.0" } }, - "node_modules/jest-jasmine2/node_modules/@types/yargs": { - "version": "16.0.5", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", - "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "node_modules/jest-runtime/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", "dev": true, "dependencies": { - "@types/yargs-parser": "*" + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" } }, - "node_modules/jest-jasmine2/node_modules/jest-util": { + "node_modules/jest-serializer": { "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-27.5.1.tgz", + "integrity": "sha512-jZCyo6iIxO1aqUxpuBlwTDMkzOAJS4a3eYz3YzgxxVQFwLeSA7Jfq5cbqCY+JLvTDrWirgusI/0KwxKMgrdf7w==", "dev": true, "dependencies": { - "@jest/types": "^27.5.1", "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" + "graceful-fs": "^4.2.9" }, "engines": { "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/jest-leak-detector": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-27.5.1.tgz", - "integrity": "sha512-POXfWAMvfU6WMUXftV4HolnJfnPOGEu10fscNCA76KBpRRhcMN2c8d3iT2pxQS3HLbA+5X4sOUPzYO2NUyIlHQ==", - "dev": true, - "dependencies": { - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-matcher-utils": { + "node_modules/jest-snapshot": { "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz", - "integrity": "sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==", + "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-27.5.1.tgz", + "integrity": "sha512-yYykXI5a0I31xX67mgeLw1DZ0bJB+gpq5IpSuCAoyDi0+BhgU/RIrL+RTzDmkNTchvDFWKP8lp+w/42Z3us5sA==", "dev": true, "dependencies": { + "@babel/core": "^7.7.2", + "@babel/generator": "^7.7.2", + "@babel/plugin-syntax-typescript": "^7.7.2", + "@babel/traverse": "^7.7.2", + "@babel/types": "^7.0.0", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/babel__traverse": "^7.0.4", + "@types/prettier": "^2.1.5", + "babel-preset-current-node-syntax": "^1.0.0", "chalk": "^4.0.0", + "expect": "^27.5.1", + "graceful-fs": "^4.2.9", "jest-diff": "^27.5.1", "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" + "jest-haste-map": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-util": "^27.5.1", + "natural-compare": "^1.4.0", + "pretty-format": "^27.5.1", + "semver": "^7.3.2" }, "engines": { "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/jest-message-util": { + "node_modules/jest-snapshot/node_modules/@jest/transform": { "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", - "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz", + "integrity": "sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.12.13", + "@babel/core": "^7.1.0", "@jest/types": "^27.5.1", - "@types/stack-utils": "^2.0.0", + "babel-plugin-istanbul": "^6.1.1", "chalk": "^4.0.0", + "convert-source-map": "^1.4.0", + "fast-json-stable-stringify": "^2.0.0", "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-util": "^27.5.1", "micromatch": "^4.0.4", - "pretty-format": "^27.5.1", + "pirates": "^4.0.4", "slash": "^3.0.0", - "stack-utils": "^2.0.3" + "source-map": "^0.6.1", + "write-file-atomic": "^3.0.0" }, "engines": { "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/jest-message-util/node_modules/@jest/types": { + "node_modules/jest-snapshot/node_modules/@jest/types": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", @@ -9036,7 +8092,7 @@ "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/jest-message-util/node_modules/@types/yargs": { + "node_modules/jest-snapshot/node_modules/@types/yargs": { "version": "16.0.5", "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", @@ -9045,106 +8101,105 @@ "@types/yargs-parser": "*" } }, - "node_modules/jest-mock": { + "node_modules/jest-snapshot/node_modules/jest-haste-map": { "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-27.5.1.tgz", - "integrity": "sha512-K4jKbY1d4ENhbrG2zuPWaQBvDly+iZ2yAW+T1fATN78hc0sInwn7wZB8XtlNnvHug5RMwV897Xm4LqmPM4e2Og==", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", + "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", "dev": true, "dependencies": { "@jest/types": "^27.5.1", - "@types/node": "*" + "@types/graceful-fs": "^4.1.2", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^27.5.1", + "jest-serializer": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "micromatch": "^4.0.4", + "walker": "^1.0.7" }, "engines": { "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "optionalDependencies": { + "fsevents": "^2.3.2" } }, - "node_modules/jest-mock/node_modules/@jest/types": { + "node_modules/jest-snapshot/node_modules/jest-regex-util": { "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", - "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", + "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", "dev": true, - "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^16.0.0", - "chalk": "^4.0.0" - }, "engines": { "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/jest-mock/node_modules/@types/yargs": { - "version": "16.0.5", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", - "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "node_modules/jest-snapshot/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", "dev": true, "dependencies": { - "@types/yargs-parser": "*" - } - }, - "node_modules/jest-pnp-resolver": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", - "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==", - "dev": true, - "engines": { - "node": ">=6" - }, - "peerDependencies": { - "jest-resolve": "*" + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" }, - "peerDependenciesMeta": { - "jest-resolve": { - "optional": true - } + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/jest-regex-util": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-29.4.3.tgz", - "integrity": "sha512-O4FglZaMmWXbGHSQInfXewIsd1LMn9p3ZXB/6r4FOkyhX2/iP/soMG98jGvk/A3HAN78+5VWcBGO0BJAPRh4kg==", + "node_modules/jest-snapshot/node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", "dev": true, + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": ">= 10.13.0" } }, - "node_modules/jest-resolve": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-27.5.1.tgz", - "integrity": "sha512-FFDy8/9E6CV83IMbDpcjOhumAQPDyETnU2KZ1O98DwTnz8AOBsW/Xv3GySr1mOZdItLR+zDZ7I/UdTFbgSOVCw==", + "node_modules/jest-snapshot/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", "dev": true, "dependencies": { - "@jest/types": "^27.5.1", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", - "jest-pnp-resolver": "^1.2.2", - "jest-util": "^27.5.1", - "jest-validate": "^27.5.1", - "resolve": "^1.20.0", - "resolve.exports": "^1.1.0", - "slash": "^3.0.0" + "has-flag": "^4.0.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" } }, - "node_modules/jest-resolve-dependencies": { + "node_modules/jest-validate": { "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-27.5.1.tgz", - "integrity": "sha512-QQOOdY4PE39iawDn5rzbIePNigfe5B9Z91GDD1ae/xNDlu9kaat8QQ5EKnNmVWPV54hUdxCVwwj6YMgR2O7IOg==", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-27.5.1.tgz", + "integrity": "sha512-thkNli0LYTmOI1tDB3FI1S1RTp/Bqyd9pTarJwL87OIBFuqEb5Apv5EaApEudYg4g86e3CT6kM0RowkhtEnCBQ==", "dev": true, "dependencies": { "@jest/types": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-snapshot": "^27.5.1" + "camelcase": "^6.2.0", + "chalk": "^4.0.0", + "jest-get-type": "^27.5.1", + "leven": "^3.1.0", + "pretty-format": "^27.5.1" }, "engines": { "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/jest-resolve-dependencies/node_modules/@jest/types": { + "node_modules/jest-validate/node_modules/@jest/types": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", @@ -9160,7 +8215,7 @@ "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/jest-resolve-dependencies/node_modules/@types/yargs": { + "node_modules/jest-validate/node_modules/@types/yargs": { "version": "16.0.5", "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", @@ -9169,16 +8224,37 @@ "@types/yargs-parser": "*" } }, - "node_modules/jest-resolve-dependencies/node_modules/jest-regex-util": { + "node_modules/jest-validate/node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/jest-watcher": { "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", - "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", + "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-27.5.1.tgz", + "integrity": "sha512-z676SuD6Z8o8qbmEGhoEUFOM1+jfEiL3DXHK/xgEiG2EyNYfFG60jluWcupY6dATjfEsKQuibReS1djInQnoVw==", "dev": true, + "dependencies": { + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "jest-util": "^27.5.1", + "string-length": "^4.0.1" + }, "engines": { "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/jest-resolve/node_modules/@jest/types": { + "node_modules/jest-watcher/node_modules/@jest/types": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", @@ -9194,7 +8270,7 @@ "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/jest-resolve/node_modules/@types/yargs": { + "node_modules/jest-watcher/node_modules/@types/yargs": { "version": "16.0.5", "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", @@ -9203,42 +8279,7 @@ "@types/yargs-parser": "*" } }, - "node_modules/jest-resolve/node_modules/jest-haste-map": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", - "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "@types/graceful-fs": "^4.1.2", - "@types/node": "*", - "anymatch": "^3.0.3", - "fb-watchman": "^2.0.0", - "graceful-fs": "^4.2.9", - "jest-regex-util": "^27.5.1", - "jest-serializer": "^27.5.1", - "jest-util": "^27.5.1", - "jest-worker": "^27.5.1", - "micromatch": "^4.0.4", - "walker": "^1.0.7" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - }, - "optionalDependencies": { - "fsevents": "^2.3.2" - } - }, - "node_modules/jest-resolve/node_modules/jest-regex-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", - "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", - "dev": true, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-resolve/node_modules/jest-util": { + "node_modules/jest-watcher/node_modules/jest-util": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", @@ -9255,1261 +8296,1055 @@ "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/jest-resolve/node_modules/jest-worker": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", - "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", - "dev": true, - "dependencies": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" - }, - "engines": { - "node": ">= 10.13.0" + "node_modules/js-sdsl": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.3.0.tgz", + "integrity": "sha512-mifzlm2+5nZ+lEcLJMoBK0/IH/bDg8XnJfd/Wq6IP+xoCjLZsTOnV2QpxlVbX9bMnkl5PdEjNtBJ9Cj1NjifhQ==", + "dev": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/js-sdsl" } }, - "node_modules/jest-resolve/node_modules/resolve": { - "version": "1.22.4", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.4.tgz", - "integrity": "sha512-PXNdCiPqDqeUou+w1C2eTQbNfxKSuMxqTCuvlmmMsk1NWHL5fRrhY6Pl0qEYYc6+QqGClco1Qj8XnjPego4wfg==", + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true + }, + "node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", "dev": true, "dependencies": { - "is-core-module": "^2.13.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" + "argparse": "^2.0.1" }, "bin": { - "resolve": "bin/resolve" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "js-yaml": "bin/js-yaml.js" } }, - "node_modules/jest-resolve/node_modules/supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "node_modules/jsdom": { + "version": "16.7.0", + "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-16.7.0.tgz", + "integrity": "sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw==", "dev": true, "dependencies": { - "has-flag": "^4.0.0" + "abab": "^2.0.5", + "acorn": "^8.2.4", + "acorn-globals": "^6.0.0", + "cssom": "^0.4.4", + "cssstyle": "^2.3.0", + "data-urls": "^2.0.0", + "decimal.js": "^10.2.1", + "domexception": "^2.0.1", + "escodegen": "^2.0.0", + "form-data": "^3.0.0", + "html-encoding-sniffer": "^2.0.1", + "http-proxy-agent": "^4.0.1", + "https-proxy-agent": "^5.0.0", + "is-potential-custom-element-name": "^1.0.1", + "nwsapi": "^2.2.0", + "parse5": "6.0.1", + "saxes": "^5.0.1", + "symbol-tree": "^3.2.4", + "tough-cookie": "^4.0.0", + "w3c-hr-time": "^1.0.2", + "w3c-xmlserializer": "^2.0.0", + "webidl-conversions": "^6.1.0", + "whatwg-encoding": "^1.0.5", + "whatwg-mimetype": "^2.3.0", + "whatwg-url": "^8.5.0", + "ws": "^7.4.6", + "xml-name-validator": "^3.0.0" }, "engines": { "node": ">=10" }, - "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" + "peerDependencies": { + "canvas": "^2.5.0" + }, + "peerDependenciesMeta": { + "canvas": { + "optional": true + } } }, - "node_modules/jest-runner": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-27.5.1.tgz", - "integrity": "sha512-g4NPsM4mFCOwFKXO4p/H/kWGdJp9V8kURY2lX8Me2drgXqG7rrZAx5kv+5H7wtt/cdFIjhqYx1HrlqWHaOvDaQ==", + "node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", "dev": true, - "dependencies": { - "@jest/console": "^27.5.1", - "@jest/environment": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "emittery": "^0.8.1", - "graceful-fs": "^4.2.9", - "jest-docblock": "^27.5.1", - "jest-environment-jsdom": "^27.5.1", - "jest-environment-node": "^27.5.1", - "jest-haste-map": "^27.5.1", - "jest-leak-detector": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-runtime": "^27.5.1", - "jest-util": "^27.5.1", - "jest-worker": "^27.5.1", - "source-map-support": "^0.5.6", - "throat": "^6.0.1" + "bin": { + "jsesc": "bin/jsesc" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=4" } }, - "node_modules/jest-runner/node_modules/@jest/transform": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz", - "integrity": "sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==", + "node_modules/json-buffer": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", + "integrity": "sha512-CuUqjv0FUZIdXkHPI8MezCnFCdaTAacej1TZYulLoAg1h/PhwkdXFN4V/gzY4g+fMBCOV2xF+rp7t2XD2ns/NQ==", + "dev": true + }, + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "dev": true + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" + }, + "node_modules/json-schema-typed": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/json-schema-typed/-/json-schema-typed-7.0.3.tgz", + "integrity": "sha512-7DE8mpG+/fVw+dTpjbxnx47TaMnDfOI1jwft9g1VybltZCduyRQPJPvc+zzKY9WPHxhPWczyFuYa6I8Mw4iU5A==" + }, + "node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", + "dev": true + }, + "node_modules/json-typescript": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/json-typescript/-/json-typescript-1.1.2.tgz", + "integrity": "sha512-Np07MUsYMKbB0nNlw/MMIRjUK7ehO48LA4FsrzrhCfTUxMKbvOBAo0sc0b4nQ80ge9d32sModCunCgoyUojgUA==" + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", "dev": true, - "dependencies": { - "@babel/core": "^7.1.0", - "@jest/types": "^27.5.1", - "babel-plugin-istanbul": "^6.1.1", - "chalk": "^4.0.0", - "convert-source-map": "^1.4.0", - "fast-json-stable-stringify": "^2.0.0", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-util": "^27.5.1", - "micromatch": "^4.0.4", - "pirates": "^4.0.4", - "slash": "^3.0.0", - "source-map": "^0.6.1", - "write-file-atomic": "^3.0.0" + "bin": { + "json5": "lib/cli.js" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=6" } }, - "node_modules/jest-runner/node_modules/@jest/types": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", - "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", - "dev": true, + "node_modules/jsonapi-typescript": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/jsonapi-typescript/-/jsonapi-typescript-0.1.3.tgz", + "integrity": "sha512-uPcPS01GeM+4HIyn18s7l1yD2S3uLZy2TX1UkQffCM0bLb3TMwudXUyVXPHTMZ4vdZT8MqKqN2vjB5PogTAdFQ==", "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^16.0.0", - "chalk": "^4.0.0" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "json-typescript": "^1.0.0" } }, - "node_modules/jest-runner/node_modules/@types/yargs": { - "version": "16.0.5", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", - "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", - "dev": true, + "node_modules/jspdf": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/jspdf/-/jspdf-2.5.1.tgz", + "integrity": "sha512-hXObxz7ZqoyhxET78+XR34Xu2qFGrJJ2I2bE5w4SM8eFaFEkW2xcGRVUss360fYelwRSid/jT078kbNvmoW0QA==", "dependencies": { - "@types/yargs-parser": "*" + "@babel/runtime": "^7.14.0", + "atob": "^2.1.2", + "btoa": "^1.2.1", + "fflate": "^0.4.8" + }, + "optionalDependencies": { + "canvg": "^3.0.6", + "core-js": "^3.6.0", + "dompurify": "^2.2.0", + "html2canvas": "^1.0.0-rc.5" } }, - "node_modules/jest-runner/node_modules/jest-haste-map": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", - "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", + "node_modules/jspdf/node_modules/core-js": { + "version": "3.27.2", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.27.2.tgz", + "integrity": "sha512-9ashVQskuh5AZEZ1JdQWp1GqSoC1e1G87MzRqg2gIfVAQ7Qn9K+uFj8EcniUFA4P2NLZfV+TOlX1SzoKfo+s7w==", + "hasInstallScript": true, + "optional": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/jsx-ast-utils": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.3.tgz", + "integrity": "sha512-fYQHZTZ8jSfmWZ0iyzfwiU4WDX4HpHbMCZ3gPlWYiCl3BoeOTsqKBqnTVfH2rYT7eP5c3sVbeSPHnnJOaTrWiw==", "dev": true, "dependencies": { - "@jest/types": "^27.5.1", - "@types/graceful-fs": "^4.1.2", - "@types/node": "*", - "anymatch": "^3.0.3", - "fb-watchman": "^2.0.0", - "graceful-fs": "^4.2.9", - "jest-regex-util": "^27.5.1", - "jest-serializer": "^27.5.1", - "jest-util": "^27.5.1", - "jest-worker": "^27.5.1", - "micromatch": "^4.0.4", - "walker": "^1.0.7" + "array-includes": "^3.1.5", + "object.assign": "^4.1.3" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - }, - "optionalDependencies": { - "fsevents": "^2.3.2" + "node": ">=4.0" } }, - "node_modules/jest-runner/node_modules/jest-regex-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", - "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", - "dev": true, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-runner/node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "node_modules/jszip": { + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.10.1.tgz", + "integrity": "sha512-xXDvecyTpGLrqFrvkrUSoxxfJI5AH7U8zxxtVclpsUtMCq4JQ290LY8AW5c7Ggnr/Y/oK+bQMbqK2qmtk3pN4g==", "dev": true, "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "lie": "~3.3.0", + "pako": "~1.0.2", + "readable-stream": "~2.3.6", + "setimmediate": "^1.0.5" } }, - "node_modules/jest-runner/node_modules/jest-worker": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", - "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "node_modules/keyv": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz", + "integrity": "sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==", "dev": true, "dependencies": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" - }, - "engines": { - "node": ">= 10.13.0" + "json-buffer": "3.0.0" } }, - "node_modules/jest-runner/node_modules/supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "node_modules/kleur": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", + "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" + "node": ">=6" } }, - "node_modules/jest-runtime": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-27.5.1.tgz", - "integrity": "sha512-o7gxw3Gf+H2IGt8fv0RiyE1+r83FJBRruoA+FXrlHw6xEyBsU8ugA6IPfTdVyA0w8HClpbK+DGJxH59UrNMx8A==", + "node_modules/latest-version": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-5.1.0.tgz", + "integrity": "sha512-weT+r0kTkRQdCdYCNtkMwWXQTMEswKrFBkm4ckQOMVhhqhIMI1UT2hMj+1iigIhgSZm5gTmrRXBNoGUgaTY1xA==", "dev": true, "dependencies": { - "@jest/environment": "^27.5.1", - "@jest/fake-timers": "^27.5.1", - "@jest/globals": "^27.5.1", - "@jest/source-map": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "chalk": "^4.0.0", - "cjs-module-lexer": "^1.0.0", - "collect-v8-coverage": "^1.0.0", - "execa": "^5.0.0", - "glob": "^7.1.3", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-mock": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-snapshot": "^27.5.1", - "jest-util": "^27.5.1", - "slash": "^3.0.0", - "strip-bom": "^4.0.0" + "package-json": "^6.3.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=8" } }, - "node_modules/jest-runtime/node_modules/@jest/transform": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz", - "integrity": "sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==", + "node_modules/leven": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", + "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", "dev": true, - "dependencies": { - "@babel/core": "^7.1.0", - "@jest/types": "^27.5.1", - "babel-plugin-istanbul": "^6.1.1", - "chalk": "^4.0.0", - "convert-source-map": "^1.4.0", - "fast-json-stable-stringify": "^2.0.0", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-util": "^27.5.1", - "micromatch": "^4.0.4", - "pirates": "^4.0.4", - "slash": "^3.0.0", - "source-map": "^0.6.1", - "write-file-atomic": "^3.0.0" - }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=6" } }, - "node_modules/jest-runtime/node_modules/@jest/types": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", - "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", "dev": true, "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^16.0.0", - "chalk": "^4.0.0" + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">= 0.8.0" } }, - "node_modules/jest-runtime/node_modules/@types/yargs": { - "version": "16.0.5", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", - "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "node_modules/lie": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/lie/-/lie-3.3.0.tgz", + "integrity": "sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ==", "dev": true, "dependencies": { - "@types/yargs-parser": "*" + "immediate": "~3.0.5" } }, - "node_modules/jest-runtime/node_modules/jest-haste-map": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", - "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", + "node_modules/lilconfig": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.0.6.tgz", + "integrity": "sha512-9JROoBW7pobfsx+Sq2JsASvCo6Pfo6WWoUW79HuB1BCoBXD4PLWJPqDF6fNj67pqBYTbAHkE57M1kS/+L1neOg==", "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "@types/graceful-fs": "^4.1.2", - "@types/node": "*", - "anymatch": "^3.0.3", - "fb-watchman": "^2.0.0", - "graceful-fs": "^4.2.9", - "jest-regex-util": "^27.5.1", - "jest-serializer": "^27.5.1", - "jest-util": "^27.5.1", - "jest-worker": "^27.5.1", - "micromatch": "^4.0.4", - "walker": "^1.0.7" - }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - }, - "optionalDependencies": { - "fsevents": "^2.3.2" + "node": ">=10" } }, - "node_modules/jest-runtime/node_modules/jest-regex-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", - "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", - "dev": true, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } + "node_modules/line-reader": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/line-reader/-/line-reader-0.2.4.tgz", + "integrity": "sha512-342xzyZZS9uTiKwHJcMacopVl/WjrMMCZS1Qg4Uhl/WBknWRrGFdKOIS1Kec6SaiTcZMtmuxWvvIbPXj/+FMjA==", + "dev": true }, - "node_modules/jest-runtime/node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", + "dev": true + }, + "node_modules/load-json-file": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-6.2.0.tgz", + "integrity": "sha512-gUD/epcRms75Cw8RT1pUdHugZYM5ce64ucs2GEISABwkRsOQr0q2wm/MV2TKThycIe5e0ytRweW2RZxclogCdQ==", "dev": true, "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" + "graceful-fs": "^4.1.15", + "parse-json": "^5.0.0", + "strip-bom": "^4.0.0", + "type-fest": "^0.6.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=8" } }, - "node_modules/jest-runtime/node_modules/jest-worker": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", - "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "node_modules/load-json-file/node_modules/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, - "dependencies": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" - }, "engines": { - "node": ">= 10.13.0" + "node": ">=8" } }, - "node_modules/jest-runtime/node_modules/supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", "dev": true, "dependencies": { - "has-flag": "^4.0.0" + "p-locate": "^5.0.0" }, "engines": { "node": ">=10" }, "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-serializer": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-27.5.1.tgz", - "integrity": "sha512-jZCyo6iIxO1aqUxpuBlwTDMkzOAJS4a3eYz3YzgxxVQFwLeSA7Jfq5cbqCY+JLvTDrWirgusI/0KwxKMgrdf7w==", - "dev": true, - "dependencies": { - "@types/node": "*", - "graceful-fs": "^4.2.9" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true }, - "node_modules/jest-snapshot": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-27.5.1.tgz", - "integrity": "sha512-yYykXI5a0I31xX67mgeLw1DZ0bJB+gpq5IpSuCAoyDi0+BhgU/RIrL+RTzDmkNTchvDFWKP8lp+w/42Z3us5sA==", + "node_modules/lodash-es": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz", + "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==", + "peer": true + }, + "node_modules/lodash.isplainobject": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", + "integrity": "sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==", + "dev": true + }, + "node_modules/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 + }, + "node_modules/log-symbols": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-3.0.0.tgz", + "integrity": "sha512-dSkNGuI7iG3mfvDzUuYZyvk5dD9ocYCYzNU6CYDE6+Xqd+gwme6Z00NS3dUh8mq/73HaEtT7m6W+yUPtU6BZnQ==", "dev": true, "dependencies": { - "@babel/core": "^7.7.2", - "@babel/generator": "^7.7.2", - "@babel/plugin-syntax-typescript": "^7.7.2", - "@babel/traverse": "^7.7.2", - "@babel/types": "^7.0.0", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/babel__traverse": "^7.0.4", - "@types/prettier": "^2.1.5", - "babel-preset-current-node-syntax": "^1.0.0", - "chalk": "^4.0.0", - "expect": "^27.5.1", - "graceful-fs": "^4.2.9", - "jest-diff": "^27.5.1", - "jest-get-type": "^27.5.1", - "jest-haste-map": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-util": "^27.5.1", - "natural-compare": "^1.4.0", - "pretty-format": "^27.5.1", - "semver": "^7.3.2" + "chalk": "^2.4.2" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=8" } }, - "node_modules/jest-snapshot/node_modules/@jest/transform": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz", - "integrity": "sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==", + "node_modules/log-symbols/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", "dev": true, "dependencies": { - "@babel/core": "^7.1.0", - "@jest/types": "^27.5.1", - "babel-plugin-istanbul": "^6.1.1", - "chalk": "^4.0.0", - "convert-source-map": "^1.4.0", - "fast-json-stable-stringify": "^2.0.0", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-util": "^27.5.1", - "micromatch": "^4.0.4", - "pirates": "^4.0.4", - "slash": "^3.0.0", - "source-map": "^0.6.1", - "write-file-atomic": "^3.0.0" + "color-convert": "^1.9.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=4" } }, - "node_modules/jest-snapshot/node_modules/@jest/types": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", - "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "node_modules/log-symbols/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", "dev": true, "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^16.0.0", - "chalk": "^4.0.0" + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=4" } }, - "node_modules/jest-snapshot/node_modules/@types/yargs": { - "version": "16.0.5", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", - "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "node_modules/log-symbols/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", "dev": true, "dependencies": { - "@types/yargs-parser": "*" + "color-name": "1.1.3" } }, - "node_modules/jest-snapshot/node_modules/jest-haste-map": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", - "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "@types/graceful-fs": "^4.1.2", - "@types/node": "*", - "anymatch": "^3.0.3", - "fb-watchman": "^2.0.0", - "graceful-fs": "^4.2.9", - "jest-regex-util": "^27.5.1", - "jest-serializer": "^27.5.1", - "jest-util": "^27.5.1", - "jest-worker": "^27.5.1", - "micromatch": "^4.0.4", - "walker": "^1.0.7" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - }, - "optionalDependencies": { - "fsevents": "^2.3.2" - } + "node_modules/log-symbols/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true }, - "node_modules/jest-snapshot/node_modules/jest-regex-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", - "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", + "node_modules/log-symbols/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", "dev": true, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=0.8.0" } }, - "node_modules/jest-snapshot/node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "node_modules/log-symbols/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=4" } }, - "node_modules/jest-snapshot/node_modules/jest-worker": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", - "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "node_modules/log-symbols/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", "dev": true, "dependencies": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" + "has-flag": "^3.0.0" }, "engines": { - "node": ">= 10.13.0" + "node": ">=4" } }, - "node_modules/jest-snapshot/node_modules/supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "node_modules/loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", "dev": true, "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=10" + "js-tokens": "^3.0.0 || ^4.0.0" }, - "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" + "bin": { + "loose-envify": "cli.js" } }, - "node_modules/jest-util": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.6.2.tgz", - "integrity": "sha512-3eX1qb6L88lJNCFlEADKOkjpXJQyZRiavX1INZ4tRnrBVr2COd3RgcTLyUiEXMNBlDU/cgYq6taUS0fExrWW4w==", + "node_modules/lowercase-keys": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", + "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", "dev": true, - "dependencies": { - "@jest/types": "^29.6.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": ">=0.10.0" } }, - "node_modules/jest-validate": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-27.5.1.tgz", - "integrity": "sha512-thkNli0LYTmOI1tDB3FI1S1RTp/Bqyd9pTarJwL87OIBFuqEb5Apv5EaApEudYg4g86e3CT6kM0RowkhtEnCBQ==", + "node_modules/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, "dependencies": { - "@jest/types": "^27.5.1", - "camelcase": "^6.2.0", - "chalk": "^4.0.0", - "jest-get-type": "^27.5.1", - "leven": "^3.1.0", - "pretty-format": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "yallist": "^3.0.2" } }, - "node_modules/jest-validate/node_modules/@jest/types": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", - "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", "dev": true, "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^16.0.0", - "chalk": "^4.0.0" + "semver": "^6.0.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-validate/node_modules/@types/yargs": { - "version": "16.0.5", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", - "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", - "dev": true, - "dependencies": { - "@types/yargs-parser": "*" - } - }, - "node_modules/jest-validate/node_modules/camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", - "dev": true, - "engines": { - "node": ">=10" + "node": ">=8" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-watcher": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-27.5.1.tgz", - "integrity": "sha512-z676SuD6Z8o8qbmEGhoEUFOM1+jfEiL3DXHK/xgEiG2EyNYfFG60jluWcupY6dATjfEsKQuibReS1djInQnoVw==", + "node_modules/make-dir/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/make-error": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", + "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", + "dev": true + }, + "node_modules/makeerror": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", + "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", "dev": true, "dependencies": { - "@jest/test-result": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "ansi-escapes": "^4.2.1", - "chalk": "^4.0.0", - "jest-util": "^27.5.1", - "string-length": "^4.0.1" - }, + "tmpl": "1.0.5" + } + }, + "node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">= 8" } }, - "node_modules/jest-watcher/node_modules/@jest/types": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", - "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "node_modules/micromatch": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", + "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", "dev": true, "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^16.0.0", - "chalk": "^4.0.0" + "braces": "^3.0.2", + "picomatch": "^2.3.1" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=8.6" } }, - "node_modules/jest-watcher/node_modules/@types/yargs": { - "version": "16.0.5", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", - "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "node_modules/mime": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-3.0.0.tgz", + "integrity": "sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==", "dev": true, - "dependencies": { - "@types/yargs-parser": "*" + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=10.0.0" } }, - "node_modules/jest-watcher/node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">= 0.6" } }, - "node_modules/jest-worker": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.6.2.tgz", - "integrity": "sha512-l3ccBOabTdkng8I/ORCkADz4eSMKejTYv1vB/Z83UiubqhC1oQ5Li6dWCyqOIvSifGjUBxuvxvlm6KGK2DtuAQ==", + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", "dev": true, "dependencies": { - "@types/node": "*", - "jest-util": "^29.6.2", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" + "mime-db": "1.52.0" }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": ">= 0.6" } }, - "node_modules/jest-worker/node_modules/supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/mimic-response": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz", + "integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==", "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, "engines": { "node": ">=10" }, "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/js-sdsl": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.3.0.tgz", - "integrity": "sha512-mifzlm2+5nZ+lEcLJMoBK0/IH/bDg8XnJfd/Wq6IP+xoCjLZsTOnV2QpxlVbX9bMnkl5PdEjNtBJ9Cj1NjifhQ==", + "node_modules/min-indent": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", + "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz", + "integrity": "sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==", "funding": { - "type": "opencollective", - "url": "https://opencollective.com/js-sdsl" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "node_modules/mkdirp-classic": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz", + "integrity": "sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==", "dev": true }, - "node_modules/js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/multimap": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/multimap/-/multimap-1.1.0.tgz", + "integrity": "sha512-0ZIR9PasPxGXmRsEF8jsDzndzHDj7tIav+JUmvIFB/WHswliFnquxECT/De7GR4yg99ky/NlRKJT82G1y271bw==", + "dev": true + }, + "node_modules/mute-stream": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", + "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", + "dev": true + }, + "node_modules/nanoid": { + "version": "3.3.4", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz", + "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==", "dev": true, - "dependencies": { - "argparse": "^2.0.1" - }, "bin": { - "js-yaml": "bin/js-yaml.js" + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" } }, - "node_modules/jsdom": { - "version": "16.7.0", - "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-16.7.0.tgz", - "integrity": "sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw==", + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "dev": true + }, + "node_modules/natural-compare-lite": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz", + "integrity": "sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==", + "dev": true + }, + "node_modules/node-fetch": { + "version": "2.6.12", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.12.tgz", + "integrity": "sha512-C/fGU2E8ToujUivIO0H+tpQ6HWo4eEmchoPIoXtxCrVghxdKq+QOHqEZW7tuP3KlV3bC8FRMO5nMCC7Zm1VP6g==", "dev": true, "dependencies": { - "abab": "^2.0.5", - "acorn": "^8.2.4", - "acorn-globals": "^6.0.0", - "cssom": "^0.4.4", - "cssstyle": "^2.3.0", - "data-urls": "^2.0.0", - "decimal.js": "^10.2.1", - "domexception": "^2.0.1", - "escodegen": "^2.0.0", - "form-data": "^3.0.0", - "html-encoding-sniffer": "^2.0.1", - "http-proxy-agent": "^4.0.1", - "https-proxy-agent": "^5.0.0", - "is-potential-custom-element-name": "^1.0.1", - "nwsapi": "^2.2.0", - "parse5": "6.0.1", - "saxes": "^5.0.1", - "symbol-tree": "^3.2.4", - "tough-cookie": "^4.0.0", - "w3c-hr-time": "^1.0.2", - "w3c-xmlserializer": "^2.0.0", - "webidl-conversions": "^6.1.0", - "whatwg-encoding": "^1.0.5", - "whatwg-mimetype": "^2.3.0", - "whatwg-url": "^8.5.0", - "ws": "^7.4.6", - "xml-name-validator": "^3.0.0" + "whatwg-url": "^5.0.0" }, "engines": { - "node": ">=10" + "node": "4.x || >=6.0.0" }, "peerDependencies": { - "canvas": "^2.5.0" + "encoding": "^0.1.0" }, "peerDependenciesMeta": { - "canvas": { + "encoding": { "optional": true } } }, - "node_modules/jsdom/node_modules/agent-base": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", - "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", - "dev": true, - "dependencies": { - "debug": "4" - }, - "engines": { - "node": ">= 6.0.0" - } + "node_modules/node-fetch/node_modules/tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", + "dev": true }, - "node_modules/jsdom/node_modules/http-proxy-agent": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", - "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", + "node_modules/node-fetch/node_modules/webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", + "dev": true + }, + "node_modules/node-fetch/node_modules/whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", "dev": true, "dependencies": { - "@tootallnate/once": "1", - "agent-base": "6", - "debug": "4" - }, - "engines": { - "node": ">= 6" + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" } }, - "node_modules/jsdom/node_modules/https-proxy-agent": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", - "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", + "node_modules/node-int64": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", + "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==", + "dev": true + }, + "node_modules/node-releases": { + "version": "2.0.13", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.13.tgz", + "integrity": "sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==", + "dev": true + }, + "node_modules/normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", "dev": true, "dependencies": { - "agent-base": "6", - "debug": "4" - }, - "engines": { - "node": ">= 6" + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" } }, - "node_modules/jsdom/node_modules/ws": { - "version": "7.5.9", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz", - "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", + "node_modules/normalize-package-data/node_modules/resolve": { + "version": "1.22.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", + "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", "dev": true, - "engines": { - "node": ">=8.3.0" + "dependencies": { + "is-core-module": "^2.9.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": "^5.0.2" + "bin": { + "resolve": "bin/resolve" }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "node_modules/normalize-package-data/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", "dev": true, "bin": { - "jsesc": "bin/jsesc" - }, - "engines": { - "node": ">=4" + "semver": "bin/semver" } }, - "node_modules/json-buffer": { + "node_modules/normalize-path": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", - "integrity": "sha512-CuUqjv0FUZIdXkHPI8MezCnFCdaTAacej1TZYulLoAg1h/PhwkdXFN4V/gzY4g+fMBCOV2xF+rp7t2XD2ns/NQ==", - "dev": true - }, - "node_modules/json-parse-even-better-errors": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", - "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", - "dev": true - }, - "node_modules/json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" - }, - "node_modules/json-schema-typed": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/json-schema-typed/-/json-schema-typed-7.0.3.tgz", - "integrity": "sha512-7DE8mpG+/fVw+dTpjbxnx47TaMnDfOI1jwft9g1VybltZCduyRQPJPvc+zzKY9WPHxhPWczyFuYa6I8Mw4iU5A==" - }, - "node_modules/json-stable-stringify-without-jsonify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", - "dev": true - }, - "node_modules/json-typescript": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/json-typescript/-/json-typescript-1.1.2.tgz", - "integrity": "sha512-Np07MUsYMKbB0nNlw/MMIRjUK7ehO48LA4FsrzrhCfTUxMKbvOBAo0sc0b4nQ80ge9d32sModCunCgoyUojgUA==" - }, - "node_modules/json5": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", - "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", "dev": true, - "bin": { - "json5": "lib/cli.js" - }, "engines": { - "node": ">=6" + "node": ">=0.10.0" } }, - "node_modules/jsonapi-typescript": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/jsonapi-typescript/-/jsonapi-typescript-0.1.3.tgz", - "integrity": "sha512-uPcPS01GeM+4HIyn18s7l1yD2S3uLZy2TX1UkQffCM0bLb3TMwudXUyVXPHTMZ4vdZT8MqKqN2vjB5PogTAdFQ==", - "dependencies": { - "json-typescript": "^1.0.0" + "node_modules/normalize-range": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", + "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", + "dev": true, + "engines": { + "node": ">=0.10.0" } }, - "node_modules/jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", + "node_modules/normalize-url": { + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.1.tgz", + "integrity": "sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==", "dev": true, - "optionalDependencies": { - "graceful-fs": "^4.1.6" + "engines": { + "node": ">=8" } }, - "node_modules/jspdf": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/jspdf/-/jspdf-2.5.1.tgz", - "integrity": "sha512-hXObxz7ZqoyhxET78+XR34Xu2qFGrJJ2I2bE5w4SM8eFaFEkW2xcGRVUss360fYelwRSid/jT078kbNvmoW0QA==", + "node_modules/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, "dependencies": { - "@babel/runtime": "^7.14.0", - "atob": "^2.1.2", - "btoa": "^1.2.1", - "fflate": "^0.4.8" + "path-key": "^3.0.0" }, - "optionalDependencies": { - "canvg": "^3.0.6", - "core-js": "^3.6.0", - "dompurify": "^2.2.0", - "html2canvas": "^1.0.0-rc.5" + "engines": { + "node": ">=8" } }, - "node_modules/jspdf/node_modules/core-js": { - "version": "3.27.2", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.27.2.tgz", - "integrity": "sha512-9ashVQskuh5AZEZ1JdQWp1GqSoC1e1G87MzRqg2gIfVAQ7Qn9K+uFj8EcniUFA4P2NLZfV+TOlX1SzoKfo+s7w==", - "hasInstallScript": true, - "optional": true, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/core-js" - } + "node_modules/nwsapi": { + "version": "2.2.7", + "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.7.tgz", + "integrity": "sha512-ub5E4+FBPKwAZx0UwIQOjYWGHTEq5sPqHQNRN8Z9e4A7u3Tj1weLJsL59yH9vmvqEtBHaOmT6cYQKIZOxp35FQ==", + "dev": true }, - "node_modules/jsx-ast-utils": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.3.tgz", - "integrity": "sha512-fYQHZTZ8jSfmWZ0iyzfwiU4WDX4HpHbMCZ3gPlWYiCl3BoeOTsqKBqnTVfH2rYT7eP5c3sVbeSPHnnJOaTrWiw==", + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", "dev": true, - "dependencies": { - "array-includes": "^3.1.5", - "object.assign": "^4.1.3" - }, "engines": { - "node": ">=4.0" + "node": ">=0.10.0" } }, - "node_modules/jszip": { - "version": "3.10.1", - "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.10.1.tgz", - "integrity": "sha512-xXDvecyTpGLrqFrvkrUSoxxfJI5AH7U8zxxtVclpsUtMCq4JQ290LY8AW5c7Ggnr/Y/oK+bQMbqK2qmtk3pN4g==", + "node_modules/object-hash": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-2.2.0.tgz", + "integrity": "sha512-gScRMn0bS5fH+IuwyIFgnh9zBdo4DV+6GhygmWM9HyNJSgS0hScp1f5vjtm7oIIOiT9trXrShAkLFSc2IqKNgw==", "dev": true, - "dependencies": { - "lie": "~3.3.0", - "pako": "~1.0.2", - "readable-stream": "~2.3.6", - "setimmediate": "^1.0.5" + "engines": { + "node": ">= 6" } }, - "node_modules/keyv": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz", - "integrity": "sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==", + "node_modules/object-inspect": { + "version": "1.12.3", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.3.tgz", + "integrity": "sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==", "dev": true, - "dependencies": { - "json-buffer": "3.0.0" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/kleur": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", - "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", + "node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", "dev": true, "engines": { - "node": ">=6" + "node": ">= 0.4" } }, - "node_modules/latest-version": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-5.1.0.tgz", - "integrity": "sha512-weT+r0kTkRQdCdYCNtkMwWXQTMEswKrFBkm4ckQOMVhhqhIMI1UT2hMj+1iigIhgSZm5gTmrRXBNoGUgaTY1xA==", + "node_modules/object.assign": { + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", + "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", "dev": true, "dependencies": { - "package-json": "^6.3.0" + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "has-symbols": "^1.0.3", + "object-keys": "^1.1.1" }, "engines": { - "node": ">=8" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/leven": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", - "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", + "node_modules/object.entries": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.6.tgz", + "integrity": "sha512-leTPzo4Zvg3pmbQ3rDK69Rl8GQvIqMWubrkxONG9/ojtFE2rD9fjMKfSI5BxW3osRH1m6VdzmqK8oAY9aT4x5w==", "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, "engines": { - "node": ">=6" + "node": ">= 0.4" } }, - "node_modules/levn": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", - "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "node_modules/object.fromentries": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.6.tgz", + "integrity": "sha512-VciD13dswC4j1Xt5394WR4MzmAQmlgN72phd/riNp9vtD7tp4QQWJ0R4wvclXcafgcYK8veHRed2W6XeGBvcfg==", "dev": true, "dependencies": { - "prelude-ls": "^1.2.1", - "type-check": "~0.4.0" + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" }, "engines": { - "node": ">= 0.8.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/lie": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/lie/-/lie-3.3.0.tgz", - "integrity": "sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ==", + "node_modules/object.hasown": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/object.hasown/-/object.hasown-1.1.2.tgz", + "integrity": "sha512-B5UIT3J1W+WuWIU55h0mjlwaqxiE5vYENJXIXZ4VFe05pNYrkKuK0U/6aFcb0pKywYJh7IhfoqUfKVmrJJHZHw==", "dev": true, "dependencies": { - "immediate": "~3.0.5" - } - }, - "node_modules/lilconfig": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.0.6.tgz", - "integrity": "sha512-9JROoBW7pobfsx+Sq2JsASvCo6Pfo6WWoUW79HuB1BCoBXD4PLWJPqDF6fNj67pqBYTbAHkE57M1kS/+L1neOg==", - "dev": true, - "engines": { - "node": ">=10" + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/line-reader": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/line-reader/-/line-reader-0.2.4.tgz", - "integrity": "sha512-342xzyZZS9uTiKwHJcMacopVl/WjrMMCZS1Qg4Uhl/WBknWRrGFdKOIS1Kec6SaiTcZMtmuxWvvIbPXj/+FMjA==", - "dev": true - }, - "node_modules/lines-and-columns": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", - "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", - "dev": true - }, - "node_modules/load-json-file": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-6.2.0.tgz", - "integrity": "sha512-gUD/epcRms75Cw8RT1pUdHugZYM5ce64ucs2GEISABwkRsOQr0q2wm/MV2TKThycIe5e0ytRweW2RZxclogCdQ==", + "node_modules/object.values": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.6.tgz", + "integrity": "sha512-FVVTkD1vENCsAcwNs9k6jea2uHC/X0+JcjG8YA60FN5CMaJmG95wT9jek/xX9nornqGRrBkKtzuAu2wuHpKqvw==", "dev": true, "dependencies": { - "graceful-fs": "^4.1.15", - "parse-json": "^5.0.0", - "strip-bom": "^4.0.0", - "type-fest": "^0.6.0" + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" }, "engines": { - "node": ">=8" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/load-json-file/node_modules/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==", + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", "dev": true, - "engines": { - "node": ">=8" + "dependencies": { + "wrappy": "1" } }, - "node_modules/locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", "dev": true, "dependencies": { - "p-locate": "^5.0.0" + "mimic-fn": "^2.1.0" }, "engines": { - "node": ">=10" + "node": ">=6" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", - "dev": true - }, - "node_modules/lodash-es": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz", - "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==", - "peer": true - }, - "node_modules/lodash.debounce": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", - "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", - "dev": true - }, - "node_modules/lodash.isplainobject": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", - "integrity": "sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==", - "dev": true - }, - "node_modules/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 - }, - "node_modules/log-symbols": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-3.0.0.tgz", - "integrity": "sha512-dSkNGuI7iG3mfvDzUuYZyvk5dD9ocYCYzNU6CYDE6+Xqd+gwme6Z00NS3dUh8mq/73HaEtT7m6W+yUPtU6BZnQ==", + "node_modules/optionator": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", + "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", "dev": true, "dependencies": { - "chalk": "^2.4.2" + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0", + "word-wrap": "^1.2.3" }, "engines": { - "node": ">=8" + "node": ">= 0.8.0" } }, - "node_modules/log-symbols/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "node_modules/ora": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ora/-/ora-4.1.1.tgz", + "integrity": "sha512-sjYP8QyVWBpBZWD6Vr1M/KwknSw6kJOz41tvGMlwWeClHBtYKTbHMki1PsLZnxKpXMPbTKv9b3pjQu3REib96A==", "dev": true, "dependencies": { - "color-convert": "^1.9.0" + "chalk": "^3.0.0", + "cli-cursor": "^3.1.0", + "cli-spinners": "^2.2.0", + "is-interactive": "^1.0.0", + "log-symbols": "^3.0.0", + "mute-stream": "0.0.8", + "strip-ansi": "^6.0.0", + "wcwidth": "^1.0.1" }, "engines": { - "node": ">=4" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/log-symbols/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "node_modules/ora/node_modules/chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", "dev": true, "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, "engines": { - "node": ">=4" - } - }, - "node_modules/log-symbols/node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "dependencies": { - "color-name": "1.1.3" + "node": ">=8" } }, - "node_modules/log-symbols/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", - "dev": true - }, - "node_modules/log-symbols/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "node_modules/os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", "dev": true, "engines": { - "node": ">=0.8.0" + "node": ">=0.10.0" } }, - "node_modules/log-symbols/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "node_modules/p-cancelable": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz", + "integrity": "sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==", "dev": true, "engines": { - "node": ">=4" + "node": ">=6" } }, - "node_modules/log-symbols/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", "dev": true, "dependencies": { - "has-flag": "^3.0.0" + "yocto-queue": "^0.1.0" }, "engines": { - "node": ">=4" - } - }, - "node_modules/loose-envify": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", - "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", - "dev": true, - "dependencies": { - "js-tokens": "^3.0.0 || ^4.0.0" + "node": ">=10" }, - "bin": { - "loose-envify": "cli.js" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/lowercase-keys": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", - "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", + "node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", "dev": true, + "dependencies": { + "p-limit": "^3.0.2" + }, "engines": { - "node": ">=0.10.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/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==", + "node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", "dev": true, - "dependencies": { - "yallist": "^3.0.2" + "engines": { + "node": ">=6" } }, - "node_modules/make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "node_modules/package-json": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/package-json/-/package-json-6.5.0.tgz", + "integrity": "sha512-k3bdm2n25tkyxcjSKzB5x8kfVxlMdgsbPr0GkZcwHsLpba6cBjqCt1KlcChKEvxHIcTB1FVMuwoijZ26xex5MQ==", "dev": true, "dependencies": { - "semver": "^6.0.0" + "got": "^9.6.0", + "registry-auth-token": "^4.0.0", + "registry-url": "^5.0.0", + "semver": "^6.2.0" }, "engines": { "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/make-dir/node_modules/semver": { + "node_modules/package-json/node_modules/semver": { "version": "6.3.0", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", @@ -10518,95 +9353,139 @@ "semver": "bin/semver.js" } }, - "node_modules/make-error": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", - "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", - "dev": true + "node_modules/pako": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", + "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==" }, - "node_modules/makeerror": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", - "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", "dev": true, "dependencies": { - "tmpl": "1.0.5" + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" } }, - "node_modules/merge-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", - "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "node_modules/parse-json": { + "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, + "dependencies": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", "dev": true }, - "node_modules/merge2": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", "dev": true, "engines": { - "node": ">= 8" + "node": ">=8" } }, - "node_modules/micromatch": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", - "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", "dev": true, - "dependencies": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - }, "engines": { - "node": ">=8.6" + "node": ">=0.10.0" } }, - "node_modules/mime": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-3.0.0.tgz", - "integrity": "sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==", + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", "dev": true, - "bin": { - "mime": "cli.js" - }, "engines": { - "node": ">=10.0.0" + "node": ">=8" } }, - "node_modules/mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true + }, + "node_modules/path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", "dev": true, "engines": { - "node": ">= 0.6" + "node": ">=8" } }, - "node_modules/mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "dev": true, + "node_modules/pdf-lib": { + "version": "1.17.1", + "resolved": "https://registry.npmjs.org/pdf-lib/-/pdf-lib-1.17.1.tgz", + "integrity": "sha512-V/mpyJAoTsN4cnP31vc0wfNA1+p20evqqnap0KLoRUN0Yk/p3wN52DOEsL4oBFcLdb76hlpKPtzJIgo67j/XLw==", "dependencies": { - "mime-db": "1.52.0" - }, - "engines": { - "node": ">= 0.6" + "@pdf-lib/standard-fonts": "^1.0.0", + "@pdf-lib/upng": "^1.0.1", + "pako": "^1.0.11", + "tslib": "^1.11.1" } }, - "node_modules/mimic-fn": { + "node_modules/pdf-lib/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/pend": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", + "integrity": "sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==", + "dev": true + }, + "node_modules/performance-now": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==", + "optional": true + }, + "node_modules/picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", + "dev": true + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", "dev": true, "engines": { - "node": ">=6" + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" } }, - "node_modules/mimic-response": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz", - "integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==", + "node_modules/pify": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-5.0.0.tgz", + "integrity": "sha512-eW/gHNMlxdSP6dmG6uJip6FXN0EQBwm2clYYd8Wul42Cwu/DK8HEftzsapcNdYe2MfLiIwZqsDk2RDEsTE79hA==", "dev": true, "engines": { "node": ">=10" @@ -10615,452 +9494,451 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/min-indent": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", - "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", + "node_modules/pirates": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", + "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==", "dev": true, "engines": { - "node": ">=4" + "node": ">= 6" } }, - "node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "node_modules/pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", "dev": true, "dependencies": { - "brace-expansion": "^1.1.7" + "find-up": "^4.0.0" }, "engines": { - "node": "*" - } - }, - "node_modules/minimist": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz", - "integrity": "sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==", - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=8" } }, - "node_modules/mitt": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/mitt/-/mitt-3.0.1.tgz", - "integrity": "sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw==", - "dev": true - }, - "node_modules/mkdirp-classic": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz", - "integrity": "sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==", - "dev": true - }, - "node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "node_modules/multimap": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/multimap/-/multimap-1.1.0.tgz", - "integrity": "sha512-0ZIR9PasPxGXmRsEF8jsDzndzHDj7tIav+JUmvIFB/WHswliFnquxECT/De7GR4yg99ky/NlRKJT82G1y271bw==", - "dev": true - }, - "node_modules/mute-stream": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", - "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", - "dev": true - }, - "node_modules/nanoid": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz", - "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==", + "node_modules/pkg-dir/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", "dev": true, - "bin": { - "nanoid": "bin/nanoid.cjs" + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" }, "engines": { - "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + "node": ">=8" } }, - "node_modules/natural-compare": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", - "dev": true - }, - "node_modules/natural-compare-lite": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz", - "integrity": "sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==", - "dev": true - }, - "node_modules/netmask": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/netmask/-/netmask-2.0.2.tgz", - "integrity": "sha512-dBpDMdxv9Irdq66304OLfEmQ9tbNRFnFTuZiLo+bD+r332bBmMJ8GBLXklIXXgxd3+v9+KUnZaUR5PJMa75Gsg==", + "node_modules/pkg-dir/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", "dev": true, + "dependencies": { + "p-locate": "^4.1.0" + }, "engines": { - "node": ">= 0.4.0" + "node": ">=8" } }, - "node_modules/node-fetch": { - "version": "2.6.12", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.12.tgz", - "integrity": "sha512-C/fGU2E8ToujUivIO0H+tpQ6HWo4eEmchoPIoXtxCrVghxdKq+QOHqEZW7tuP3KlV3bC8FRMO5nMCC7Zm1VP6g==", + "node_modules/pkg-dir/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", "dev": true, "dependencies": { - "whatwg-url": "^5.0.0" + "p-try": "^2.0.0" }, "engines": { - "node": "4.x || >=6.0.0" - }, - "peerDependencies": { - "encoding": "^0.1.0" + "node": ">=6" }, - "peerDependenciesMeta": { - "encoding": { - "optional": true - } + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/node-fetch/node_modules/tr46": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", - "dev": true - }, - "node_modules/node-fetch/node_modules/webidl-conversions": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", - "dev": true - }, - "node_modules/node-fetch/node_modules/whatwg-url": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", - "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "node_modules/pkg-dir/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", "dev": true, "dependencies": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" } }, - "node_modules/node-int64": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", - "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==", - "dev": true - }, - "node_modules/node-releases": { - "version": "2.0.13", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.13.tgz", - "integrity": "sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==", - "dev": true + "node_modules/pluralize": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-8.0.0.tgz", + "integrity": "sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==", + "dev": true, + "engines": { + "node": ">=4" + } }, - "node_modules/normalize-package-data": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "node_modules/postcss": { + "version": "8.4.21", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.21.tgz", + "integrity": "sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg==", "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + } + ], "dependencies": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" + "nanoid": "^3.3.4", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + }, + "engines": { + "node": "^10 || ^12 || >=14" } }, - "node_modules/normalize-package-data/node_modules/resolve": { - "version": "1.22.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", - "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", + "node_modules/postcss-js": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-js/-/postcss-js-4.0.0.tgz", + "integrity": "sha512-77QESFBwgX4irogGVPgQ5s07vLvFqWr228qZY+w6lW599cRlK/HmnlivnnVUxkjHnCu4J16PDMHcH+e+2HbvTQ==", "dev": true, "dependencies": { - "is-core-module": "^2.9.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" + "camelcase-css": "^2.0.1" }, - "bin": { - "resolve": "bin/resolve" + "engines": { + "node": "^12 || ^14 || >= 16" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + "peerDependencies": { + "postcss": "^8.3.3" } }, - "node_modules/normalize-package-data/node_modules/semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "node_modules/postcss-load-config": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-3.1.4.tgz", + "integrity": "sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==", "dev": true, - "bin": { - "semver": "bin/semver" + "dependencies": { + "lilconfig": "^2.0.5", + "yaml": "^1.10.2" + }, + "engines": { + "node": ">= 10" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + "peerDependencies": { + "postcss": ">=8.0.9", + "ts-node": ">=9.0.0" + }, + "peerDependenciesMeta": { + "postcss": { + "optional": true + }, + "ts-node": { + "optional": true + } } }, - "node_modules/normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "node_modules/postcss-nested": { + "version": "5.0.6", + "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-5.0.6.tgz", + "integrity": "sha512-rKqm2Fk0KbA8Vt3AdGN0FB9OBOMDVajMG6ZCf/GoHgdxUJ4sBFp0A/uMIRm+MJUdo33YXEtjqIz8u7DAp8B7DA==", "dev": true, + "dependencies": { + "postcss-selector-parser": "^6.0.6" + }, "engines": { - "node": ">=0.10.0" + "node": ">=12.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + "peerDependencies": { + "postcss": "^8.2.14" } }, - "node_modules/normalize-range": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", - "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", + "node_modules/postcss-selector-parser": { + "version": "6.0.11", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.11.tgz", + "integrity": "sha512-zbARubNdogI9j7WY4nQJBiNqQf3sLS3wCP4WfOidu+p28LofJqDH1tcXypGrcmMHhDk2t9wGhCsYe/+szLTy1g==", "dev": true, + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, "engines": { - "node": ">=0.10.0" + "node": ">=4" } }, - "node_modules/normalize-url": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.1.tgz", - "integrity": "sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==", + "node_modules/postcss-value-parser": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", + "dev": true + }, + "node_modules/prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", "dev": true, "engines": { - "node": ">=8" + "node": ">= 0.8.0" } }, - "node_modules/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==", + "node_modules/prepend-http": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", + "integrity": "sha512-ravE6m9Atw9Z/jjttRUZ+clIXogdghyZAuWJ3qEzjT+jI/dL1ifAqhZeC5VHzQp1MSt1+jxKkFNemj/iO7tVUA==", "dev": true, - "dependencies": { - "path-key": "^3.0.0" - }, "engines": { - "node": ">=8" + "node": ">=4" } }, - "node_modules/nwsapi": { - "version": "2.2.7", - "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.7.tgz", - "integrity": "sha512-ub5E4+FBPKwAZx0UwIQOjYWGHTEq5sPqHQNRN8Z9e4A7u3Tj1weLJsL59yH9vmvqEtBHaOmT6cYQKIZOxp35FQ==", - "dev": true - }, - "node_modules/object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "node_modules/prettier": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.4.1.tgz", + "integrity": "sha512-9fbDAXSBcc6Bs1mZrDYb3XKzDLm4EXXL9sC1LqKP5rZkT6KRr/rf9amVUcODVXgguK/isJz0d0hP72WeaKWsvA==", "dev": true, + "bin": { + "prettier": "bin-prettier.js" + }, "engines": { - "node": ">=0.10.0" + "node": ">=10.13.0" } }, - "node_modules/object-hash": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-2.2.0.tgz", - "integrity": "sha512-gScRMn0bS5fH+IuwyIFgnh9zBdo4DV+6GhygmWM9HyNJSgS0hScp1f5vjtm7oIIOiT9trXrShAkLFSc2IqKNgw==", + "node_modules/prettier-linter-helpers": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz", + "integrity": "sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==", "dev": true, + "dependencies": { + "fast-diff": "^1.1.2" + }, "engines": { - "node": ">= 6" - } - }, - "node_modules/object-inspect": { - "version": "1.12.3", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.3.tgz", - "integrity": "sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=6.0.0" } }, - "node_modules/object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "node_modules/pretty-format": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", + "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1", + "ansi-styles": "^5.0.0", + "react-is": "^17.0.1" + }, "engines": { - "node": ">= 0.4" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/object.assign": { - "version": "4.1.4", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", - "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", + "node_modules/pretty-format/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "has-symbols": "^1.0.3", - "object-keys": "^1.1.1" - }, "engines": { - "node": ">= 0.4" + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/object.entries": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.6.tgz", - "integrity": "sha512-leTPzo4Zvg3pmbQ3rDK69Rl8GQvIqMWubrkxONG9/ojtFE2rD9fjMKfSI5BxW3osRH1m6VdzmqK8oAY9aT4x5w==", + "node_modules/process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", + "dev": true + }, + "node_modules/progress": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - }, "engines": { - "node": ">= 0.4" + "node": ">=0.4.0" } }, - "node_modules/object.fromentries": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.6.tgz", - "integrity": "sha512-VciD13dswC4j1Xt5394WR4MzmAQmlgN72phd/riNp9vtD7tp4QQWJ0R4wvclXcafgcYK8veHRed2W6XeGBvcfg==", + "node_modules/progress-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/progress-stream/-/progress-stream-2.0.0.tgz", + "integrity": "sha512-xJwOWR46jcXUq6EH9yYyqp+I52skPySOeHfkxOZ2IY1AiBi/sFJhbhAKHoV3OTw/omQ45KTio9215dRJ2Yxd3Q==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "speedometer": "~1.0.0", + "through2": "~2.0.3" } }, - "node_modules/object.hasown": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/object.hasown/-/object.hasown-1.1.2.tgz", - "integrity": "sha512-B5UIT3J1W+WuWIU55h0mjlwaqxiE5vYENJXIXZ4VFe05pNYrkKuK0U/6aFcb0pKywYJh7IhfoqUfKVmrJJHZHw==", + "node_modules/prompts": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", + "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", "dev": true, "dependencies": { - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" + "kleur": "^3.0.3", + "sisteransi": "^1.0.5" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">= 6" } }, - "node_modules/object.values": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.6.tgz", - "integrity": "sha512-FVVTkD1vENCsAcwNs9k6jea2uHC/X0+JcjG8YA60FN5CMaJmG95wT9jek/xX9nornqGRrBkKtzuAu2wuHpKqvw==", + "node_modules/prop-types": { + "version": "15.8.1", + "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", + "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "loose-envify": "^1.4.0", + "object-assign": "^4.1.1", + "react-is": "^16.13.1" } }, - "node_modules/once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "node_modules/prop-types/node_modules/react-is": { + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", + "dev": true + }, + "node_modules/proxy-from-env": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==", + "dev": true + }, + "node_modules/psl": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", + "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==", + "dev": true + }, + "node_modules/pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", "dev": true, "dependencies": { - "wrappy": "1" + "end-of-stream": "^1.1.0", + "once": "^1.3.1" } }, - "node_modules/onetime": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", - "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "node_modules/pumpify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pumpify/-/pumpify-2.0.1.tgz", + "integrity": "sha512-m7KOje7jZxrmutanlkS1daj1dS6z6BgslzOXmcSEpIlCxM3VJH7lG5QLeck/6hgF6F4crFf01UtQmNsJfweTAw==", "dev": true, "dependencies": { - "mimic-fn": "^2.1.0" - }, + "duplexify": "^4.1.1", + "inherits": "^2.0.3", + "pump": "^3.0.0" + } + }, + "node_modules/punycode": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", + "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==", "engines": { "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/optionator": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", - "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", + "node_modules/pupa": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/pupa/-/pupa-2.1.1.tgz", + "integrity": "sha512-l1jNAspIBSFqbT+y+5FosojNpVpF94nlI+wDUpqP9enwOTfHx9f0gh5nB96vl+6yTpsJsypeNrwfzPrKuHB41A==", "dev": true, "dependencies": { - "deep-is": "^0.1.3", - "fast-levenshtein": "^2.0.6", - "levn": "^0.4.1", - "prelude-ls": "^1.2.1", - "type-check": "^0.4.0", - "word-wrap": "^1.2.3" + "escape-goat": "^2.0.0" }, "engines": { - "node": ">= 0.8.0" + "node": ">=8" } }, - "node_modules/ora": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ora/-/ora-4.1.1.tgz", - "integrity": "sha512-sjYP8QyVWBpBZWD6Vr1M/KwknSw6kJOz41tvGMlwWeClHBtYKTbHMki1PsLZnxKpXMPbTKv9b3pjQu3REib96A==", + "node_modules/puppeteer": { + "version": "13.7.0", + "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-13.7.0.tgz", + "integrity": "sha512-U1uufzBjz3+PkpCxFrWzh4OrMIdIb2ztzCu0YEPfRHjHswcSwHZswnK+WdsOQJsRV8WeTg3jLhJR4D867+fjsA==", + "deprecated": "< 19.4.0 is no longer supported", "dev": true, + "hasInstallScript": true, "dependencies": { - "chalk": "^3.0.0", - "cli-cursor": "^3.1.0", - "cli-spinners": "^2.2.0", - "is-interactive": "^1.0.0", - "log-symbols": "^3.0.0", - "mute-stream": "0.0.8", - "strip-ansi": "^6.0.0", - "wcwidth": "^1.0.1" + "cross-fetch": "3.1.5", + "debug": "4.3.4", + "devtools-protocol": "0.0.981744", + "extract-zip": "2.0.1", + "https-proxy-agent": "5.0.1", + "pkg-dir": "4.2.0", + "progress": "2.0.3", + "proxy-from-env": "1.1.0", + "rimraf": "3.0.2", + "tar-fs": "2.1.1", + "unbzip2-stream": "1.4.3", + "ws": "8.5.0" }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=10.18.1" } }, - "node_modules/ora/node_modules/chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "node_modules/puppeteer/node_modules/ws": { + "version": "8.5.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.5.0.tgz", + "integrity": "sha512-BWX0SWVgLPzYwF8lTzEy1egjhS4S4OEAHfsO8o65WOVsrnSRGaSiUaa9e0ggGlkMTtBlmOpEXiie9RUcBO86qg==", "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, "engines": { - "node": ">=8" + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } } }, - "node_modules/os-tmpdir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } + "node_modules/querystringify": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", + "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==", + "dev": true }, - "node_modules/p-cancelable": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz", - "integrity": "sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==", + "node_modules/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, - "engines": { - "node": ">=6" - } + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] }, - "node_modules/p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "node_modules/quick-lru": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz", + "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==", "dev": true, - "dependencies": { - "yocto-queue": "^0.1.0" - }, "engines": { "node": ">=10" }, @@ -11068,684 +9946,638 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "node_modules/raf": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/raf/-/raf-3.4.1.tgz", + "integrity": "sha512-Sq4CW4QhwOHE8ucn6J34MqtZCeWFP2aQSmrlroYgqAV1PjStIhJXxYuTgUIfkEk7zTLjmIjLmU5q+fbD1NnOJA==", + "optional": true, + "dependencies": { + "performance-now": "^2.1.0" + } + }, + "node_modules/rc": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", + "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", "dev": true, "dependencies": { - "p-limit": "^3.0.2" - }, - "engines": { - "node": ">=10" + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "bin": { + "rc": "cli.js" } }, - "node_modules/p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "node_modules/rc/node_modules/ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", + "dev": true + }, + "node_modules/rc/node_modules/strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==", "dev": true, "engines": { - "node": ">=6" + "node": ">=0.10.0" } }, - "node_modules/pac-proxy-agent": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/pac-proxy-agent/-/pac-proxy-agent-7.0.0.tgz", - "integrity": "sha512-t4tRAMx0uphnZrio0S0Jw9zg3oDbz1zVhQ/Vy18FjLfP1XOLNUEjaVxYCYRI6NS+BsMBXKIzV6cTLOkO9AtywA==", + "node_modules/react": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react/-/react-18.2.0.tgz", + "integrity": "sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==", "dev": true, "dependencies": { - "@tootallnate/quickjs-emscripten": "^0.23.0", - "agent-base": "^7.0.2", - "debug": "^4.3.4", - "get-uri": "^6.0.1", - "http-proxy-agent": "^7.0.0", - "https-proxy-agent": "^7.0.0", - "pac-resolver": "^7.0.0", - "socks-proxy-agent": "^8.0.1" + "loose-envify": "^1.1.0" }, "engines": { - "node": ">= 14" + "node": ">=0.10.0" } }, - "node_modules/pac-resolver": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/pac-resolver/-/pac-resolver-7.0.0.tgz", - "integrity": "sha512-Fd9lT9vJbHYRACT8OhCbZBbxr6KRSawSovFpy8nDGshaK99S/EBhVIHp9+crhxrsZOuvLpgL1n23iyPg6Rl2hg==", + "node_modules/react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", + "dev": true + }, + "node_modules/read": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/read/-/read-1.0.7.tgz", + "integrity": "sha512-rSOKNYUmaxy0om1BNjMN4ezNT6VKK+2xF4GBhc81mkH7L60i6dp8qPYrkndNLT3QPphoII3maL9PVC9XmhHwVQ==", "dev": true, "dependencies": { - "degenerator": "^5.0.0", - "ip": "^1.1.8", - "netmask": "^2.0.2" + "mute-stream": "~0.0.4" }, "engines": { - "node": ">= 14" + "node": ">=0.8" } }, - "node_modules/package-json": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/package-json/-/package-json-6.5.0.tgz", - "integrity": "sha512-k3bdm2n25tkyxcjSKzB5x8kfVxlMdgsbPr0GkZcwHsLpba6cBjqCt1KlcChKEvxHIcTB1FVMuwoijZ26xex5MQ==", + "node_modules/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, "dependencies": { - "got": "^9.6.0", - "registry-auth-token": "^4.0.0", - "registry-url": "^5.0.0", - "semver": "^6.2.0" + "@types/normalize-package-data": "^2.4.0", + "normalize-package-data": "^2.5.0", + "parse-json": "^5.0.0", + "type-fest": "^0.6.0" }, "engines": { "node": ">=8" } }, - "node_modules/package-json/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "node_modules/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, - "bin": { - "semver": "bin/semver.js" + "dependencies": { + "find-up": "^4.1.0", + "read-pkg": "^5.2.0", + "type-fest": "^0.8.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/pako": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", - "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==" - }, - "node_modules/parent-module": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", - "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "node_modules/read-pkg-up/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", "dev": true, "dependencies": { - "callsites": "^3.0.0" + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" }, "engines": { - "node": ">=6" + "node": ">=8" } }, - "node_modules/parse-json": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", - "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "node_modules/read-pkg-up/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-even-better-errors": "^2.3.0", - "lines-and-columns": "^1.1.6" + "p-locate": "^4.1.0" }, "engines": { "node": ">=8" + } + }, + "node_modules/read-pkg-up/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/parse5": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", - "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", - "dev": true - }, - "node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "node_modules/read-pkg-up/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", "dev": true, + "dependencies": { + "p-limit": "^2.2.0" + }, "engines": { "node": ">=8" } }, - "node_modules/path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "node_modules/read-pkg-up/node_modules/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, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, - "node_modules/path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "node_modules/read-pkg/node_modules/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, "engines": { "node": ">=8" } }, - "node_modules/path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true - }, - "node_modules/path-type": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", - "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "node_modules/readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", "dev": true, - "engines": { - "node": ">=8" + "dependencies": { + "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" } }, - "node_modules/pdf-lib": { - "version": "1.17.1", - "resolved": "https://registry.npmjs.org/pdf-lib/-/pdf-lib-1.17.1.tgz", - "integrity": "sha512-V/mpyJAoTsN4cnP31vc0wfNA1+p20evqqnap0KLoRUN0Yk/p3wN52DOEsL4oBFcLdb76hlpKPtzJIgo67j/XLw==", + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, "dependencies": { - "@pdf-lib/standard-fonts": "^1.0.0", - "@pdf-lib/upng": "^1.0.1", - "pako": "^1.0.11", - "tslib": "^1.11.1" + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" } }, - "node_modules/pdf-lib/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, - "node_modules/pend": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", - "integrity": "sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==", - "dev": true - }, - "node_modules/performance-now": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==", - "optional": true - }, - "node_modules/picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", - "dev": true - }, - "node_modules/picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "node_modules/rechoir": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", + "integrity": "sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw==", "dev": true, + "dependencies": { + "resolve": "^1.1.6" + }, "engines": { - "node": ">=8.6" + "node": ">= 0.10" + } + }, + "node_modules/rechoir/node_modules/resolve": { + "version": "1.22.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", + "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", + "dev": true, + "dependencies": { + "is-core-module": "^2.9.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" }, "funding": { - "url": "https://github.com/sponsors/jonschlinkert" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/pify": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-5.0.0.tgz", - "integrity": "sha512-eW/gHNMlxdSP6dmG6uJip6FXN0EQBwm2clYYd8Wul42Cwu/DK8HEftzsapcNdYe2MfLiIwZqsDk2RDEsTE79hA==", + "node_modules/regexp-tree": { + "version": "0.1.24", + "resolved": "https://registry.npmjs.org/regexp-tree/-/regexp-tree-0.1.24.tgz", + "integrity": "sha512-s2aEVuLhvnVJW6s/iPgEGK6R+/xngd2jNQ+xy4bXNDKxZKJH6jpPHY6kVeVv1IeLCHgswRj+Kl3ELaDjG6V1iw==", + "dev": true, + "bin": { + "regexp-tree": "bin/regexp-tree" + } + }, + "node_modules/regexp.prototype.flags": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz", + "integrity": "sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==", "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "functions-have-names": "^1.2.2" + }, "engines": { - "node": ">=10" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/pirates": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", - "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==", + "node_modules/regexpp": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", + "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", "dev": true, "engines": { - "node": ">= 6" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" } }, - "node_modules/pkg-dir": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", - "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "node_modules/registry-auth-token": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.2.2.tgz", + "integrity": "sha512-PC5ZysNb42zpFME6D/XlIgtNGdTl8bBOCw90xQLVMpzuuubJKYDWFAEuUNc+Cn8Z8724tg2SDhDRrkVEsqfDMg==", "dev": true, "dependencies": { - "find-up": "^4.0.0" + "rc": "1.2.8" }, "engines": { - "node": ">=8" + "node": ">=6.0.0" } }, - "node_modules/pkg-dir/node_modules/find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "node_modules/registry-url": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-5.1.0.tgz", + "integrity": "sha512-8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw==", "dev": true, "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" + "rc": "^1.2.8" }, "engines": { "node": ">=8" } }, - "node_modules/pkg-dir/node_modules/locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "node_modules/remove-markdown": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/remove-markdown/-/remove-markdown-0.2.2.tgz", + "integrity": "sha512-jwgEf3Yh/xi4WodWi/vPlasa9C9pMv1kz5ITOIAGjBW7PeZ/CHZCdBfJzQnn2VX2cBvf1xCuJv0tUJqn/FCMNA==", + "dev": true + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", "dev": true, - "dependencies": { - "p-locate": "^4.1.0" - }, "engines": { - "node": ">=8" + "node": ">=0.10.0" } }, - "node_modules/pkg-dir/node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "node_modules/requires-port": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", + "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==", + "dev": true + }, + "node_modules/resolve": { + "version": "2.0.0-next.4", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.4.tgz", + "integrity": "sha512-iMDbmAWtfU+MHpxt/I5iWI7cY6YVEZUQ3MBgPQ++XD1PELuJHIl82xBmObyP2KyQmkNB2dsqF7seoQQiAn5yDQ==", "dev": true, "dependencies": { - "p-try": "^2.0.0" + "is-core-module": "^2.9.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" }, - "engines": { - "node": ">=6" + "bin": { + "resolve": "bin/resolve" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/pkg-dir/node_modules/p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "node_modules/resolve-cwd": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", + "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", "dev": true, "dependencies": { - "p-limit": "^2.2.0" + "resolve-from": "^5.0.0" }, "engines": { "node": ">=8" } }, - "node_modules/pluralize": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-8.0.0.tgz", - "integrity": "sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==", + "node_modules/resolve-cwd/node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", "dev": true, "engines": { - "node": ">=4" + "node": ">=8" } }, - "node_modules/postcss": { - "version": "8.4.21", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.21.tgz", - "integrity": "sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg==", + "node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/postcss" - } - ], - "dependencies": { - "nanoid": "^3.3.4", - "picocolors": "^1.0.0", - "source-map-js": "^1.0.2" - }, "engines": { - "node": "^10 || ^12 || >=14" + "node": ">=4" } }, - "node_modules/postcss-js": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-js/-/postcss-js-4.0.0.tgz", - "integrity": "sha512-77QESFBwgX4irogGVPgQ5s07vLvFqWr228qZY+w6lW599cRlK/HmnlivnnVUxkjHnCu4J16PDMHcH+e+2HbvTQ==", + "node_modules/resolve.exports": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-1.1.1.tgz", + "integrity": "sha512-/NtpHNDN7jWhAaQ9BvBUYZ6YTXsRBgfqWFWP7BZBaoMJO/I3G5OFzvTuWNlZC3aPjins1F+TNrLKsGbH4rfsRQ==", "dev": true, - "dependencies": { - "camelcase-css": "^2.0.1" - }, "engines": { - "node": "^12 || ^14 || >= 16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - "peerDependencies": { - "postcss": "^8.3.3" + "node": ">=10" } }, - "node_modules/postcss-load-config": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-3.1.4.tgz", - "integrity": "sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==", - "dev": true, - "dependencies": { - "lilconfig": "^2.0.5", - "yaml": "^1.10.2" - }, - "engines": { - "node": ">= 10" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - "peerDependencies": { - "postcss": ">=8.0.9", - "ts-node": ">=9.0.0" - }, - "peerDependenciesMeta": { - "postcss": { - "optional": true - }, - "ts-node": { - "optional": true - } - } - }, - "node_modules/postcss-nested": { - "version": "5.0.6", - "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-5.0.6.tgz", - "integrity": "sha512-rKqm2Fk0KbA8Vt3AdGN0FB9OBOMDVajMG6ZCf/GoHgdxUJ4sBFp0A/uMIRm+MJUdo33YXEtjqIz8u7DAp8B7DA==", + "node_modules/responselike": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz", + "integrity": "sha512-/Fpe5guzJk1gPqdJLJR5u7eG/gNY4nImjbRDaVWVMRhne55TCmj2i9Q+54PBRfatRC8v/rIiv9BN0pMd9OV5EQ==", "dev": true, "dependencies": { - "postcss-selector-parser": "^6.0.6" - }, - "engines": { - "node": ">=12.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - "peerDependencies": { - "postcss": "^8.2.14" + "lowercase-keys": "^1.0.0" } }, - "node_modules/postcss-selector-parser": { - "version": "6.0.11", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.11.tgz", - "integrity": "sha512-zbARubNdogI9j7WY4nQJBiNqQf3sLS3wCP4WfOidu+p28LofJqDH1tcXypGrcmMHhDk2t9wGhCsYe/+szLTy1g==", + "node_modules/restore-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", "dev": true, "dependencies": { - "cssesc": "^3.0.0", - "util-deprecate": "^1.0.2" + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" }, "engines": { - "node": ">=4" + "node": ">=8" } }, - "node_modules/postcss-value-parser": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", - "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", - "dev": true - }, - "node_modules/prelude-ls": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", - "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "node_modules/reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", "dev": true, "engines": { - "node": ">= 0.8.0" + "iojs": ">=1.0.0", + "node": ">=0.10.0" } }, - "node_modules/prepend-http": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", - "integrity": "sha512-ravE6m9Atw9Z/jjttRUZ+clIXogdghyZAuWJ3qEzjT+jI/dL1ifAqhZeC5VHzQp1MSt1+jxKkFNemj/iO7tVUA==", - "dev": true, + "node_modules/rgbcolor": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/rgbcolor/-/rgbcolor-1.0.1.tgz", + "integrity": "sha512-9aZLIrhRaD97sgVhtJOW6ckOEh6/GnvQtdVNfdZ6s67+3/XwLS9lBcQYzEEhYVeUowN7pRzMLsyGhK2i/xvWbw==", + "optional": true, "engines": { - "node": ">=4" + "node": ">= 0.8.15" } }, - "node_modules/prettier": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.4.1.tgz", - "integrity": "sha512-9fbDAXSBcc6Bs1mZrDYb3XKzDLm4EXXL9sC1LqKP5rZkT6KRr/rf9amVUcODVXgguK/isJz0d0hP72WeaKWsvA==", + "node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, "bin": { - "prettier": "bin-prettier.js" + "rimraf": "bin.js" }, - "engines": { - "node": ">=10.13.0" + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/prettier-linter-helpers": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz", - "integrity": "sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==", + "node_modules/run-async": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", + "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", "dev": true, - "dependencies": { - "fast-diff": "^1.1.2" - }, "engines": { - "node": ">=6.0.0" + "node": ">=0.12.0" } }, - "node_modules/pretty-format": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", - "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", + "node_modules/run-parallel": { + "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, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], "dependencies": { - "ansi-regex": "^5.0.1", - "ansi-styles": "^5.0.0", - "react-is": "^17.0.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "queue-microtask": "^1.2.2" } }, - "node_modules/pretty-format/node_modules/ansi-styles": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", - "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "node_modules/rxjs": { + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.0.tgz", + "integrity": "sha512-F2+gxDshqmIub1KdvZkaEfGDwLNpPvk9Fs6LD/MyQxNgMds/WH9OdDDXOmxUZpME+iSK3rQCctkL0DYyytUqMg==", "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "dependencies": { + "tslib": "^2.1.0" } }, - "node_modules/process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", + "node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", "dev": true }, - "node_modules/progress": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", - "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", + "node_modules/safe-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-2.1.1.tgz", + "integrity": "sha512-rx+x8AMzKb5Q5lQ95Zoi6ZbJqwCLkqi3XuJXp5P3rT8OEc6sZCJG5AE5dU3lsgRr/F4Bs31jSlVN+j5KrsGu9A==", "dev": true, - "engines": { - "node": ">=0.4.0" + "dependencies": { + "regexp-tree": "~0.1.1" } }, - "node_modules/progress-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/progress-stream/-/progress-stream-2.0.0.tgz", - "integrity": "sha512-xJwOWR46jcXUq6EH9yYyqp+I52skPySOeHfkxOZ2IY1AiBi/sFJhbhAKHoV3OTw/omQ45KTio9215dRJ2Yxd3Q==", + "node_modules/safe-regex-test": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz", + "integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==", "dev": true, "dependencies": { - "speedometer": "~1.0.0", - "through2": "~2.0.3" + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.3", + "is-regex": "^1.1.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/prompts": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", - "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "dev": true + }, + "node_modules/saxes": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/saxes/-/saxes-5.0.1.tgz", + "integrity": "sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==", "dev": true, "dependencies": { - "kleur": "^3.0.3", - "sisteransi": "^1.0.5" + "xmlchars": "^2.2.0" }, "engines": { - "node": ">= 6" + "node": ">=10" } }, - "node_modules/prop-types": { - "version": "15.8.1", - "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", - "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", + "node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", "dev": true, "dependencies": { - "loose-envify": "^1.4.0", - "object-assign": "^4.1.1", - "react-is": "^16.13.1" + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" } }, - "node_modules/prop-types/node_modules/react-is": { - "version": "16.13.1", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", - "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", - "dev": true - }, - "node_modules/proxy-agent": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/proxy-agent/-/proxy-agent-6.3.0.tgz", - "integrity": "sha512-0LdR757eTj/JfuU7TL2YCuAZnxWXu3tkJbg4Oq3geW/qFNT/32T0sp2HnZ9O0lMR4q3vwAt0+xCA8SR0WAD0og==", + "node_modules/semver-diff": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-3.1.1.tgz", + "integrity": "sha512-GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg==", "dev": true, "dependencies": { - "agent-base": "^7.0.2", - "debug": "^4.3.4", - "http-proxy-agent": "^7.0.0", - "https-proxy-agent": "^7.0.0", - "lru-cache": "^7.14.1", - "pac-proxy-agent": "^7.0.0", - "proxy-from-env": "^1.1.0", - "socks-proxy-agent": "^8.0.1" + "semver": "^6.3.0" }, "engines": { - "node": ">= 14" + "node": ">=8" } }, - "node_modules/proxy-agent/node_modules/lru-cache": { - "version": "7.18.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", - "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "node_modules/semver-diff/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", "dev": true, - "engines": { - "node": ">=12" + "bin": { + "semver": "bin/semver.js" } }, - "node_modules/proxy-from-env": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", - "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==", - "dev": true - }, - "node_modules/psl": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", - "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==", - "dev": true - }, - "node_modules/pump": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", - "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "node_modules/semver/node_modules/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, "dependencies": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" } }, - "node_modules/pumpify": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/pumpify/-/pumpify-2.0.1.tgz", - "integrity": "sha512-m7KOje7jZxrmutanlkS1daj1dS6z6BgslzOXmcSEpIlCxM3VJH7lG5QLeck/6hgF6F4crFf01UtQmNsJfweTAw==", - "dev": true, - "dependencies": { - "duplexify": "^4.1.1", - "inherits": "^2.0.3", - "pump": "^3.0.0" - } + "node_modules/semver/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true }, - "node_modules/punycode": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", - "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==", - "engines": { - "node": ">=6" - } + "node_modules/setimmediate": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", + "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==", + "dev": true }, - "node_modules/pupa": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/pupa/-/pupa-2.1.1.tgz", - "integrity": "sha512-l1jNAspIBSFqbT+y+5FosojNpVpF94nlI+wDUpqP9enwOTfHx9f0gh5nB96vl+6yTpsJsypeNrwfzPrKuHB41A==", + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", "dev": true, "dependencies": { - "escape-goat": "^2.0.0" + "shebang-regex": "^3.0.0" }, "engines": { "node": ">=8" } }, - "node_modules/puppeteer": { - "version": "21.0.3", - "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-21.0.3.tgz", - "integrity": "sha512-+eBNTEOOBrRBLJ1/jIuHcOoUUOVpUQjQFwp9L/sm/iBDqii+4jv9jxpPJSOmOHXuy++X7GWfhuDw4vz8crNzPw==", + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", "dev": true, - "hasInstallScript": true, - "dependencies": { - "@puppeteer/browsers": "1.6.0", - "cosmiconfig": "8.2.0", - "puppeteer-core": "21.0.3" - }, "engines": { - "node": ">=16.3.0" + "node": ">=8" } }, - "node_modules/puppeteer-core": { - "version": "21.0.3", - "resolved": "https://registry.npmjs.org/puppeteer-core/-/puppeteer-core-21.0.3.tgz", - "integrity": "sha512-AGvopfkA0jLbW5Ba0m6kBuvRIpLo76PXUK3zJYkXOr9NI1LknJESyai6TtXc6GUSewMkinmyEDx1pFgq900hqg==", + "node_modules/shelljs": { + "version": "0.8.5", + "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.8.5.tgz", + "integrity": "sha512-TiwcRcrkhHvbrZbnRcFYMLl30Dfov3HKqzp5tO5b4pt6G/SezKcYhmDg15zXVBswHmctSAQKznqNW2LO5tTDow==", "dev": true, "dependencies": { - "@puppeteer/browsers": "1.6.0", - "chromium-bidi": "0.4.20", - "cross-fetch": "4.0.0", - "debug": "4.3.4", - "devtools-protocol": "0.0.1147663", - "ws": "8.13.0" + "glob": "^7.0.0", + "interpret": "^1.0.0", + "rechoir": "^0.6.2" + }, + "bin": { + "shjs": "bin/shjs" }, "engines": { - "node": ">=16.3.0" + "node": ">=4" } }, - "node_modules/puppeteer/node_modules/cosmiconfig": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.2.0.tgz", - "integrity": "sha512-3rTMnFJA1tCOPwRxtgF4wd7Ab2qvDbL8jX+3smjIbS4HlZBagTlpERbdN7iAbWlrfxE3M8c27kTwTawQ7st+OQ==", + "node_modules/side-channel": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", "dev": true, "dependencies": { - "import-fresh": "^3.2.1", - "js-yaml": "^4.1.0", - "parse-json": "^5.0.0", - "path-type": "^4.0.0" - }, - "engines": { - "node": ">=14" + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" }, "funding": { - "url": "https://github.com/sponsors/d-fischer" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/querystringify": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", - "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==", + "node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", "dev": true }, - "node_modules/queue-microtask": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", - "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "node_modules/simple-concat": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz", + "integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==", "dev": true, "funding": [ { @@ -11762,403 +10594,450 @@ } ] }, - "node_modules/queue-tick": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/queue-tick/-/queue-tick-1.0.1.tgz", - "integrity": "sha512-kJt5qhMxoszgU/62PLP1CJytzd2NKetjSRnyuj31fDd3Rlcz3fzlFdFLD1SItunPwyqEOkca6GbV612BWfaBag==", - "dev": true - }, - "node_modules/quick-lru": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz", - "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==", + "node_modules/simple-get": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-4.0.1.tgz", + "integrity": "sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==", "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/raf": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/raf/-/raf-3.4.1.tgz", - "integrity": "sha512-Sq4CW4QhwOHE8ucn6J34MqtZCeWFP2aQSmrlroYgqAV1PjStIhJXxYuTgUIfkEk7zTLjmIjLmU5q+fbD1NnOJA==", - "optional": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], "dependencies": { - "performance-now": "^2.1.0" + "decompress-response": "^6.0.0", + "once": "^1.3.1", + "simple-concat": "^1.0.0" } }, - "node_modules/rc": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", - "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", - "dev": true, + "node_modules/simple-swizzle": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz", + "integrity": "sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==", + "peer": true, "dependencies": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - }, - "bin": { - "rc": "cli.js" + "is-arrayish": "^0.3.1" } }, - "node_modules/rc/node_modules/ini": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", - "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", + "node_modules/simple-swizzle/node_modules/is-arrayish": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz", + "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==", + "peer": true + }, + "node_modules/sisteransi": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", + "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", "dev": true }, - "node_modules/rc/node_modules/strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==", + "node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", "dev": true, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, - "node_modules/react": { - "version": "18.2.0", - "resolved": "https://registry.npmjs.org/react/-/react-18.2.0.tgz", - "integrity": "sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==", + "node_modules/sort-keys": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-4.2.0.tgz", + "integrity": "sha512-aUYIEU/UviqPgc8mHR6IW1EGxkAXpeRETYcrzg8cLAvUPZcpAlleSXHV2mY7G12GphSH6Gzv+4MMVSSkbdteHg==", "dev": true, "dependencies": { - "loose-envify": "^1.1.0" + "is-plain-obj": "^2.0.0" }, "engines": { - "node": ">=0.10.0" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/react-is": { - "version": "17.0.2", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", - "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", - "dev": true + "node_modules/sortablejs": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/sortablejs/-/sortablejs-1.15.0.tgz", + "integrity": "sha512-bv9qgVMjUMf89wAvM6AxVvS/4MX3sPeN0+agqShejLU5z5GX4C75ow1O2e5k4L6XItUyAK3gH6AxSbXrOM5e8w==", + "peer": true }, - "node_modules/read": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/read/-/read-1.0.7.tgz", - "integrity": "sha512-rSOKNYUmaxy0om1BNjMN4ezNT6VKK+2xF4GBhc81mkH7L60i6dp8qPYrkndNLT3QPphoII3maL9PVC9XmhHwVQ==", + "node_modules/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, - "dependencies": { - "mute-stream": "~0.0.4" - }, "engines": { - "node": ">=0.8" + "node": ">=0.10.0" } }, - "node_modules/read-pkg": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", - "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", + "node_modules/source-map-js": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", + "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", "dev": true, - "dependencies": { - "@types/normalize-package-data": "^2.4.0", - "normalize-package-data": "^2.5.0", - "parse-json": "^5.0.0", - "type-fest": "^0.6.0" - }, "engines": { - "node": ">=8" + "node": ">=0.10.0" } }, - "node_modules/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==", + "node_modules/source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", "dev": true, "dependencies": { - "find-up": "^4.1.0", - "read-pkg": "^5.2.0", - "type-fest": "^0.8.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" } }, - "node_modules/read-pkg-up/node_modules/find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "node_modules/spdx-correct": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", + "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", "dev": true, "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=8" + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" } }, - "node_modules/read-pkg-up/node_modules/locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "node_modules/spdx-exceptions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", + "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", + "dev": true + }, + "node_modules/spdx-expression-parse": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", "dev": true, "dependencies": { - "p-locate": "^4.1.0" - }, - "engines": { - "node": ">=8" + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" } }, - "node_modules/read-pkg-up/node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "node_modules/spdx-license-ids": { + "version": "3.0.12", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.12.tgz", + "integrity": "sha512-rr+VVSXtRhO4OHbXUiAF7xW3Bo9DuuF6C5jH+q/x15j2jniycgKbxU09Hr0WqlSLUs4i4ltHGXqTe7VHclYWyA==", + "dev": true + }, + "node_modules/speedometer": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/speedometer/-/speedometer-1.0.0.tgz", + "integrity": "sha512-lgxErLl/7A5+vgIIXsh9MbeukOaCb2axgQ+bKCdIE+ibNT4XNYGNCR1qFEGq6F+YDASXK3Fh/c5FgtZchFolxw==", + "dev": true + }, + "node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", + "dev": true + }, + "node_modules/stack-utils": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", + "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", "dev": true, "dependencies": { - "p-try": "^2.0.0" + "escape-string-regexp": "^2.0.0" }, "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=10" } }, - "node_modules/read-pkg-up/node_modules/p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "node_modules/stack-utils/node_modules/escape-string-regexp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", + "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", "dev": true, - "dependencies": { - "p-limit": "^2.2.0" - }, "engines": { "node": ">=8" } }, - "node_modules/read-pkg-up/node_modules/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, + "node_modules/stackblur-canvas": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/stackblur-canvas/-/stackblur-canvas-2.5.0.tgz", + "integrity": "sha512-EeNzTVfj+1In7aSLPKDD03F/ly4RxEuF/EX0YcOG0cKoPXs+SLZxDawQbexQDBzwROs4VKLWTOaZQlZkGBFEIQ==", + "optional": true, "engines": { - "node": ">=8" + "node": ">=0.1.14" } }, - "node_modules/read-pkg/node_modules/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==", + "node_modules/stencil-eslint-core": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/stencil-eslint-core/-/stencil-eslint-core-0.3.1.tgz", + "integrity": "sha512-z1yp1+Qzr6C/X4RgaCt0egDu5CsIrZzMCr9eGMmQTnSU1leVbSJB5aoI/KWv8qe8k7b1LCit46Ff3udRJ96Lfw==", "dev": true, + "dependencies": { + "eslint-utils": "~3.0.0", + "tsutils": "~3.21.0" + }, "engines": { - "node": ">=8" + "node": ">=8.9.0" + }, + "peerDependencies": { + "@typescript-eslint/parser": "^5.8.0", + "eslint": "^8" } }, - "node_modules/readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "node_modules/stream-shift": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz", + "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==", + "dev": true + }, + "node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", "dev": true, "dependencies": { - "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" + "safe-buffer": "~5.1.0" } }, - "node_modules/readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "node_modules/string-length": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz", + "integrity": "sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==", "dev": true, "dependencies": { - "picomatch": "^2.2.1" + "char-regex": "^1.0.2", + "strip-ansi": "^6.0.0" }, "engines": { - "node": ">=8.10.0" + "node": ">=10" } }, - "node_modules/rechoir": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", - "integrity": "sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw==", + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "dev": true, "dependencies": { - "resolve": "^1.1.6" + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" }, "engines": { - "node": ">= 0.10" + "node": ">=8" } }, - "node_modules/rechoir/node_modules/resolve": { - "version": "1.22.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", - "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", + "node_modules/string.prototype.matchall": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.8.tgz", + "integrity": "sha512-6zOCOcJ+RJAQshcTvXPHoxoQGONa3e/Lqx90wUA+wEzX78sg5Bo+1tQo4N0pohS0erG9qtCqJDjNCQBjeWVxyg==", "dev": true, "dependencies": { - "is-core-module": "^2.9.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "get-intrinsic": "^1.1.3", + "has-symbols": "^1.0.3", + "internal-slot": "^1.0.3", + "regexp.prototype.flags": "^1.4.3", + "side-channel": "^1.0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/regenerate": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", - "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", - "dev": true - }, - "node_modules/regenerate-unicode-properties": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.0.tgz", - "integrity": "sha512-d1VudCLoIGitcU/hEg2QqvyGZQmdC0Lf8BqdOMXGFSvJP4bNV1+XqbPQeHHLD51Jh4QJJ225dlIFvY4Ly6MXmQ==", + "node_modules/string.prototype.trimend": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz", + "integrity": "sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==", "dev": true, "dependencies": { - "regenerate": "^1.4.2" + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" }, - "engines": { - "node": ">=4" - } - }, - "node_modules/regenerator-transform": { - "version": "0.15.2", - "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.2.tgz", - "integrity": "sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==", - "dev": true, - "dependencies": { - "@babel/runtime": "^7.8.4" - } - }, - "node_modules/regexp-tree": { - "version": "0.1.24", - "resolved": "https://registry.npmjs.org/regexp-tree/-/regexp-tree-0.1.24.tgz", - "integrity": "sha512-s2aEVuLhvnVJW6s/iPgEGK6R+/xngd2jNQ+xy4bXNDKxZKJH6jpPHY6kVeVv1IeLCHgswRj+Kl3ELaDjG6V1iw==", - "dev": true, - "bin": { - "regexp-tree": "bin/regexp-tree" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/regexp.prototype.flags": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz", - "integrity": "sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==", + "node_modules/string.prototype.trimstart": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.6.tgz", + "integrity": "sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==", "dev": true, "dependencies": { "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "functions-have-names": "^1.2.2" - }, - "engines": { - "node": ">= 0.4" + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/regexpp": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", - "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, "engines": { "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/mysticatea" } }, - "node_modules/regexpu-core": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.3.2.tgz", - "integrity": "sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ==", - "dev": true, - "dependencies": { - "@babel/regjsgen": "^0.8.0", - "regenerate": "^1.4.2", - "regenerate-unicode-properties": "^10.1.0", - "regjsparser": "^0.9.1", - "unicode-match-property-ecmascript": "^2.0.0", - "unicode-match-property-value-ecmascript": "^2.1.0" - }, + "node_modules/strip-bom": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", + "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", + "dev": true, "engines": { - "node": ">=4" + "node": ">=8" } }, - "node_modules/registry-auth-token": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.2.2.tgz", - "integrity": "sha512-PC5ZysNb42zpFME6D/XlIgtNGdTl8bBOCw90xQLVMpzuuubJKYDWFAEuUNc+Cn8Z8724tg2SDhDRrkVEsqfDMg==", + "node_modules/strip-final-newline": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/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, "dependencies": { - "rc": "1.2.8" + "min-indent": "^1.0.0" }, "engines": { - "node": ">=6.0.0" + "node": ">=8" } }, - "node_modules/registry-url": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-5.1.0.tgz", - "integrity": "sha512-8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw==", + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/strnum": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/strnum/-/strnum-1.0.5.tgz", + "integrity": "sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA==" + }, + "node_modules/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==", "dev": true, "dependencies": { - "rc": "^1.2.8" + "has-flag": "^4.0.0" }, "engines": { "node": ">=8" } }, - "node_modules/regjsparser": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.9.1.tgz", - "integrity": "sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==", + "node_modules/supports-hyperlinks": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.3.0.tgz", + "integrity": "sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA==", "dev": true, "dependencies": { - "jsesc": "~0.5.0" + "has-flag": "^4.0.0", + "supports-color": "^7.0.0" }, - "bin": { - "regjsparser": "bin/parser" + "engines": { + "node": ">=8" } }, - "node_modules/regjsparser/node_modules/jsesc": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", - "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==", + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", "dev": true, - "bin": { - "jsesc": "bin/jsesc" + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/remove-markdown": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/remove-markdown/-/remove-markdown-0.2.2.tgz", - "integrity": "sha512-jwgEf3Yh/xi4WodWi/vPlasa9C9pMv1kz5ITOIAGjBW7PeZ/CHZCdBfJzQnn2VX2cBvf1xCuJv0tUJqn/FCMNA==", + "node_modules/svg-pathdata": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/svg-pathdata/-/svg-pathdata-6.0.3.tgz", + "integrity": "sha512-qsjeeq5YjBZ5eMdFuUa4ZosMLxgr5RZ+F+Y1OrDhuOCEInRMA3x74XdBtggJcj9kOeInz0WE+LgCPDkZFlBYJw==", + "optional": true, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/symbol-tree": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", + "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==", "dev": true }, - "node_modules/require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "node_modules/tabbable": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/tabbable/-/tabbable-6.1.2.tgz", + "integrity": "sha512-qCN98uP7i9z0fIS4amQ5zbGBOq+OSigYeGvPy7NDk8Y9yncqDZ9pRPgfsc2PJIVM9RrJj7GIfuRgmjoUU9zTHQ==" + }, + "node_modules/tailwindcss": { + "version": "3.0.23", + "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.0.23.tgz", + "integrity": "sha512-+OZOV9ubyQ6oI2BXEhzw4HrqvgcARY38xv3zKcjnWtMIZstEsXdI9xftd1iB7+RbOnj2HOEzkA0OyB5BaSxPQA==", "dev": true, + "dependencies": { + "arg": "^5.0.1", + "chalk": "^4.1.2", + "chokidar": "^3.5.3", + "color-name": "^1.1.4", + "cosmiconfig": "^7.0.1", + "detective": "^5.2.0", + "didyoumean": "^1.2.2", + "dlv": "^1.1.3", + "fast-glob": "^3.2.11", + "glob-parent": "^6.0.2", + "is-glob": "^4.0.3", + "normalize-path": "^3.0.0", + "object-hash": "^2.2.0", + "postcss": "^8.4.6", + "postcss-js": "^4.0.0", + "postcss-load-config": "^3.1.0", + "postcss-nested": "5.0.6", + "postcss-selector-parser": "^6.0.9", + "postcss-value-parser": "^4.2.0", + "quick-lru": "^5.1.1", + "resolve": "^1.22.0" + }, + "bin": { + "tailwind": "lib/cli.js", + "tailwindcss": "lib/cli.js" + }, "engines": { - "node": ">=0.10.0" + "node": ">=12.13.0" + }, + "peerDependencies": { + "autoprefixer": "^10.0.2", + "postcss": "^8.0.9" } }, - "node_modules/requires-port": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", - "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==", - "dev": true - }, - "node_modules/resolve": { - "version": "2.0.0-next.4", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.4.tgz", - "integrity": "sha512-iMDbmAWtfU+MHpxt/I5iWI7cY6YVEZUQ3MBgPQ++XD1PELuJHIl82xBmObyP2KyQmkNB2dsqF7seoQQiAn5yDQ==", + "node_modules/tailwindcss/node_modules/resolve": { + "version": "1.22.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", + "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", "dev": true, "dependencies": { "is-core-module": "^2.9.0", @@ -12172,3117 +11051,1387 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/resolve-cwd": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", - "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", + "node_modules/tar-fs": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.1.tgz", + "integrity": "sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==", "dev": true, "dependencies": { - "resolve-from": "^5.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/resolve-cwd/node_modules/resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true, - "engines": { - "node": ">=4" + "chownr": "^1.1.1", + "mkdirp-classic": "^0.5.2", + "pump": "^3.0.0", + "tar-stream": "^2.1.4" } }, - "node_modules/resolve.exports": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-1.1.1.tgz", - "integrity": "sha512-/NtpHNDN7jWhAaQ9BvBUYZ6YTXsRBgfqWFWP7BZBaoMJO/I3G5OFzvTuWNlZC3aPjins1F+TNrLKsGbH4rfsRQ==", + "node_modules/tar-stream": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", + "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", "dev": true, + "dependencies": { + "bl": "^4.0.3", + "end-of-stream": "^1.4.1", + "fs-constants": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^3.1.1" + }, "engines": { - "node": ">=10" + "node": ">=6" } }, - "node_modules/responselike": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz", - "integrity": "sha512-/Fpe5guzJk1gPqdJLJR5u7eG/gNY4nImjbRDaVWVMRhne55TCmj2i9Q+54PBRfatRC8v/rIiv9BN0pMd9OV5EQ==", + "node_modules/tar-stream/node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", "dev": true, "dependencies": { - "lowercase-keys": "^1.0.0" + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" } }, - "node_modules/restore-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", - "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "node_modules/terminal-link": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/terminal-link/-/terminal-link-2.1.1.tgz", + "integrity": "sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ==", "dev": true, "dependencies": { - "onetime": "^5.1.0", - "signal-exit": "^3.0.2" + "ansi-escapes": "^4.2.1", + "supports-hyperlinks": "^2.0.0" }, "engines": { "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/reusify": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", - "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "node_modules/test-exclude": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", + "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", "dev": true, + "dependencies": { + "@istanbuljs/schema": "^0.1.2", + "glob": "^7.1.4", + "minimatch": "^3.0.4" + }, "engines": { - "iojs": ">=1.0.0", - "node": ">=0.10.0" + "node": ">=8" } }, - "node_modules/rgbcolor": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/rgbcolor/-/rgbcolor-1.0.1.tgz", - "integrity": "sha512-9aZLIrhRaD97sgVhtJOW6ckOEh6/GnvQtdVNfdZ6s67+3/XwLS9lBcQYzEEhYVeUowN7pRzMLsyGhK2i/xvWbw==", + "node_modules/text-segmentation": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/text-segmentation/-/text-segmentation-1.0.3.tgz", + "integrity": "sha512-iOiPUo/BGnZ6+54OsWxZidGCsdU8YbE4PSpdPinp7DeMtUJNJBoJ/ouUSTJjHkh1KntHaltHl/gDs2FC4i5+Nw==", "optional": true, - "engines": { - "node": ">= 0.8.15" + "dependencies": { + "utrie": "^1.0.2" } }, - "node_modules/rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } + "node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", + "dev": true }, - "node_modules/run-async": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", - "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", - "dev": true, - "engines": { - "node": ">=0.12.0" - } + "node_modules/throat": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/throat/-/throat-6.0.2.tgz", + "integrity": "sha512-WKexMoJj3vEuK0yFEapj8y64V0A6xcuPuK9Gt1d0R+dzCSJc0lHqQytAbSB4cDAK0dWh4T0E2ETkoLE2WZ41OQ==", + "dev": true }, - "node_modules/run-parallel": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", - "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "node_modules/through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", + "dev": true + }, + "node_modules/through2": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", + "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], "dependencies": { - "queue-microtask": "^1.2.2" + "readable-stream": "~2.3.6", + "xtend": "~4.0.1" } }, - "node_modules/rxjs": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.0.tgz", - "integrity": "sha512-F2+gxDshqmIub1KdvZkaEfGDwLNpPvk9Fs6LD/MyQxNgMds/WH9OdDDXOmxUZpME+iSK3rQCctkL0DYyytUqMg==", + "node_modules/tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", "dev": true, "dependencies": { - "tslib": "^2.1.0" + "os-tmpdir": "~1.0.2" + }, + "engines": { + "node": ">=0.6.0" } }, - "node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "node_modules/tmpl": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", + "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==", "dev": true }, - "node_modules/safe-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-2.1.1.tgz", - "integrity": "sha512-rx+x8AMzKb5Q5lQ95Zoi6ZbJqwCLkqi3XuJXp5P3rT8OEc6sZCJG5AE5dU3lsgRr/F4Bs31jSlVN+j5KrsGu9A==", + "node_modules/to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", "dev": true, - "dependencies": { - "regexp-tree": "~0.1.1" + "engines": { + "node": ">=4" } }, - "node_modules/safe-regex-test": { + "node_modules/to-readable-stream": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz", - "integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==", + "resolved": "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-1.0.0.tgz", + "integrity": "sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==", "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.3", - "is-regex": "^1.1.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">=6" } }, - "node_modules/safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "dev": true - }, - "node_modules/saxes": { + "node_modules/to-regex-range": { "version": "5.0.1", - "resolved": "https://registry.npmjs.org/saxes/-/saxes-5.0.1.tgz", - "integrity": "sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", "dev": true, "dependencies": { - "xmlchars": "^2.2.0" + "is-number": "^7.0.0" }, "engines": { - "node": ">=10" + "node": ">=8.0" } }, - "node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "node_modules/tough-cookie": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.3.tgz", + "integrity": "sha512-aX/y5pVRkfRnfmuX+OdbSdXvPe6ieKX/G2s7e98f4poJHnqH3281gDPm/metm6E/WRamfx7WC4HUqkWHfQHprw==", "dev": true, "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" + "psl": "^1.1.33", + "punycode": "^2.1.1", + "universalify": "^0.2.0", + "url-parse": "^1.5.3" }, "engines": { - "node": ">=10" + "node": ">=6" } }, - "node_modules/semver-diff": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-3.1.1.tgz", - "integrity": "sha512-GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg==", + "node_modules/tr46": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-2.1.0.tgz", + "integrity": "sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw==", "dev": true, "dependencies": { - "semver": "^6.3.0" + "punycode": "^2.1.1" }, "engines": { "node": ">=8" } }, - "node_modules/semver-diff/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "node_modules/ts-node": { + "version": "10.9.1", + "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.1.tgz", + "integrity": "sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==", "dev": true, + "dependencies": { + "@cspotcode/source-map-support": "^0.8.0", + "@tsconfig/node10": "^1.0.7", + "@tsconfig/node12": "^1.0.7", + "@tsconfig/node14": "^1.0.0", + "@tsconfig/node16": "^1.0.2", + "acorn": "^8.4.1", + "acorn-walk": "^8.1.1", + "arg": "^4.1.0", + "create-require": "^1.1.0", + "diff": "^4.0.1", + "make-error": "^1.1.1", + "v8-compile-cache-lib": "^3.0.1", + "yn": "3.1.1" + }, "bin": { - "semver": "bin/semver.js" + "ts-node": "dist/bin.js", + "ts-node-cwd": "dist/bin-cwd.js", + "ts-node-esm": "dist/bin-esm.js", + "ts-node-script": "dist/bin-script.js", + "ts-node-transpile-only": "dist/bin-transpile.js", + "ts-script": "dist/bin-script-deprecated.js" + }, + "peerDependencies": { + "@swc/core": ">=1.2.50", + "@swc/wasm": ">=1.2.50", + "@types/node": "*", + "typescript": ">=2.7" + }, + "peerDependenciesMeta": { + "@swc/core": { + "optional": true + }, + "@swc/wasm": { + "optional": true + } } }, - "node_modules/semver/node_modules/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==", + "node_modules/ts-node/node_modules/acorn-walk": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", + "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==", "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, "engines": { - "node": ">=10" + "node": ">=0.4.0" } }, - "node_modules/semver/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "node_modules/ts-node/node_modules/arg": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", + "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", "dev": true }, - "node_modules/setimmediate": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", - "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==", + "node_modules/tslib": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", + "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==", "dev": true }, - "node_modules/shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "node_modules/tsutils": { + "version": "3.21.0", + "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", + "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", "dev": true, "dependencies": { - "shebang-regex": "^3.0.0" + "tslib": "^1.8.1" }, "engines": { - "node": ">=8" + "node": ">= 6" + }, + "peerDependencies": { + "typescript": ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta" } }, - "node_modules/shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "node_modules/tsutils/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + }, + "node_modules/type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", "dev": true, + "dependencies": { + "prelude-ls": "^1.2.1" + }, "engines": { - "node": ">=8" + "node": ">= 0.8.0" } }, - "node_modules/shelljs": { - "version": "0.8.5", - "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.8.5.tgz", - "integrity": "sha512-TiwcRcrkhHvbrZbnRcFYMLl30Dfov3HKqzp5tO5b4pt6G/SezKcYhmDg15zXVBswHmctSAQKznqNW2LO5tTDow==", + "node_modules/type-detect": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", + "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", "dev": true, - "dependencies": { - "glob": "^7.0.0", - "interpret": "^1.0.0", - "rechoir": "^0.6.2" - }, - "bin": { - "shjs": "bin/shjs" - }, "engines": { "node": ">=4" } }, - "node_modules/side-channel": { + "node_modules/type-fest": { + "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, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/typed-array-length": { "version": "1.0.4", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", - "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.4.tgz", + "integrity": "sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==", "dev": true, "dependencies": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" + "call-bind": "^1.0.2", + "for-each": "^0.3.3", + "is-typed-array": "^1.1.9" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "dev": true + "node_modules/typedarray-to-buffer": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", + "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", + "dev": true, + "dependencies": { + "is-typedarray": "^1.0.0" + } }, - "node_modules/simple-concat": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz", - "integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==", + "node_modules/typescript": { + "version": "4.9.5", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz", + "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==", "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=4.2.0" + } }, - "node_modules/simple-get": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-4.0.1.tgz", - "integrity": "sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==", + "node_modules/unbox-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", + "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], "dependencies": { - "decompress-response": "^6.0.0", - "once": "^1.3.1", - "simple-concat": "^1.0.0" + "call-bind": "^1.0.2", + "has-bigints": "^1.0.2", + "has-symbols": "^1.0.3", + "which-boxed-primitive": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/simple-swizzle": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz", - "integrity": "sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==", - "peer": true, + "node_modules/unbzip2-stream": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/unbzip2-stream/-/unbzip2-stream-1.4.3.tgz", + "integrity": "sha512-mlExGW4w71ebDJviH16lQLtZS32VKqsSfk80GCfUlwT/4/hNRFsoscrF/c++9xinkMzECL1uL9DDwXqFWkruPg==", + "dev": true, "dependencies": { - "is-arrayish": "^0.3.1" + "buffer": "^5.2.1", + "through": "^2.3.8" } }, - "node_modules/simple-swizzle/node_modules/is-arrayish": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz", - "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==", - "peer": true - }, - "node_modules/sisteransi": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", - "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", - "dev": true - }, - "node_modules/slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "node_modules/unique-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz", + "integrity": "sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==", "dev": true, + "dependencies": { + "crypto-random-string": "^2.0.0" + }, "engines": { "node": ">=8" } }, - "node_modules/smart-buffer": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", - "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", - "dev": true, - "engines": { - "node": ">= 6.0.0", - "npm": ">= 3.0.0" - } + "node_modules/universal-user-agent": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-6.0.0.tgz", + "integrity": "sha512-isyNax3wXoKaulPDZWHQqbmIx1k2tb9fb3GGDBRxCscfYV2Ch7WxPArBsFEG8s/safwXTT7H4QGhaIkTp9447w==", + "dev": true }, - "node_modules/socks": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/socks/-/socks-2.7.1.tgz", - "integrity": "sha512-7maUZy1N7uo6+WVEX6psASxtNlKaNVMlGQKkG/63nEDdLOWNbiUMoLK7X4uYoLhQstau72mLgfEWcXcwsaHbYQ==", + "node_modules/universalify": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz", + "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==", "dev": true, - "dependencies": { - "ip": "^2.0.0", - "smart-buffer": "^4.2.0" - }, "engines": { - "node": ">= 10.13.0", - "npm": ">= 3.0.0" + "node": ">= 4.0.0" } }, - "node_modules/socks-proxy-agent": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.1.tgz", - "integrity": "sha512-59EjPbbgg8U3x62hhKOFVAmySQUcfRQ4C7Q/D5sEHnZTQRrQlNKINks44DMR1gwXp0p4LaVIeccX2KHTTcHVqQ==", + "node_modules/update-browserslist-db": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz", + "integrity": "sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==", "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], "dependencies": { - "agent-base": "^7.0.1", - "debug": "^4.3.4", - "socks": "^2.7.1" + "escalade": "^3.1.1", + "picocolors": "^1.0.0" }, - "engines": { - "node": ">= 14" + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" } }, - "node_modules/socks/node_modules/ip": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ip/-/ip-2.0.0.tgz", - "integrity": "sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ==", - "dev": true - }, - "node_modules/sort-keys": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-4.2.0.tgz", - "integrity": "sha512-aUYIEU/UviqPgc8mHR6IW1EGxkAXpeRETYcrzg8cLAvUPZcpAlleSXHV2mY7G12GphSH6Gzv+4MMVSSkbdteHg==", + "node_modules/update-notifier": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-5.1.0.tgz", + "integrity": "sha512-ItnICHbeMh9GqUy31hFPrD1kcuZ3rpxDZbf4KUDavXwS0bW5m7SLbDQpGX3UYr072cbrF5hFUs3r5tUsPwjfHw==", "dev": true, "dependencies": { - "is-plain-obj": "^2.0.0" + "boxen": "^5.0.0", + "chalk": "^4.1.0", + "configstore": "^5.0.1", + "has-yarn": "^2.1.0", + "import-lazy": "^2.1.0", + "is-ci": "^2.0.0", + "is-installed-globally": "^0.4.0", + "is-npm": "^5.0.0", + "is-yarn-global": "^0.3.0", + "latest-version": "^5.1.0", + "pupa": "^2.1.1", + "semver": "^7.3.4", + "semver-diff": "^3.1.1", + "xdg-basedir": "^4.0.0" }, "engines": { - "node": ">=8" + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/yeoman/update-notifier?sponsor=1" } }, - "node_modules/sortablejs": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/sortablejs/-/sortablejs-1.15.0.tgz", - "integrity": "sha512-bv9qgVMjUMf89wAvM6AxVvS/4MX3sPeN0+agqShejLU5z5GX4C75ow1O2e5k4L6XItUyAK3gH6AxSbXrOM5e8w==", - "peer": true - }, - "node_modules/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, - "engines": { - "node": ">=0.10.0" + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dependencies": { + "punycode": "^2.1.0" } }, - "node_modules/source-map-js": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", - "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", + "node_modules/url-parse": { + "version": "1.5.10", + "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.10.tgz", + "integrity": "sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==", "dev": true, - "engines": { - "node": ">=0.10.0" + "dependencies": { + "querystringify": "^2.1.1", + "requires-port": "^1.0.0" } }, - "node_modules/source-map-support": { - "version": "0.5.21", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", - "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", - "dev": true, - "dependencies": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } - }, - "node_modules/spdx-correct": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", - "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", - "dev": true, - "dependencies": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "node_modules/spdx-exceptions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", - "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", - "dev": true - }, - "node_modules/spdx-expression-parse": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", - "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "node_modules/url-parse-lax": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", + "integrity": "sha512-NjFKA0DidqPa5ciFcSrXnAltTtzz84ogy+NebPvfEgAck0+TNg4UJ4IN+fB7zRZfbgUf0syOo9MDxFkDSMuFaQ==", "dev": true, "dependencies": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" + "prepend-http": "^2.0.0" + }, + "engines": { + "node": ">=4" } }, - "node_modules/spdx-license-ids": { - "version": "3.0.12", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.12.tgz", - "integrity": "sha512-rr+VVSXtRhO4OHbXUiAF7xW3Bo9DuuF6C5jH+q/x15j2jniycgKbxU09Hr0WqlSLUs4i4ltHGXqTe7VHclYWyA==", - "dev": true - }, - "node_modules/speedometer": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/speedometer/-/speedometer-1.0.0.tgz", - "integrity": "sha512-lgxErLl/7A5+vgIIXsh9MbeukOaCb2axgQ+bKCdIE+ibNT4XNYGNCR1qFEGq6F+YDASXK3Fh/c5FgtZchFolxw==", + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", "dev": true }, - "node_modules/sprintf-js": { + "node_modules/util-extend": { "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", + "resolved": "https://registry.npmjs.org/util-extend/-/util-extend-1.0.3.tgz", + "integrity": "sha512-mLs5zAK+ctllYBj+iAQvlDCwoxU/WDOUaJkcFudeiAX6OajC6BKXJUa9a+tbtkC11dz2Ufb7h0lyvIOVn4LADA==", "dev": true }, - "node_modules/stack-utils": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", - "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", - "dev": true, - "dependencies": { - "escape-string-regexp": "^2.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/stack-utils/node_modules/escape-string-regexp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", - "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/stackblur-canvas": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/stackblur-canvas/-/stackblur-canvas-2.5.0.tgz", - "integrity": "sha512-EeNzTVfj+1In7aSLPKDD03F/ly4RxEuF/EX0YcOG0cKoPXs+SLZxDawQbexQDBzwROs4VKLWTOaZQlZkGBFEIQ==", + "node_modules/utrie": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/utrie/-/utrie-1.0.2.tgz", + "integrity": "sha512-1MLa5ouZiOmQzUbjbu9VmjLzn1QLXBhwpUa7kdLUQK+KQ5KA9I1vk5U4YHe/X2Ch7PYnJfWuWT+VbuxbGwljhw==", "optional": true, - "engines": { - "node": ">=0.1.14" - } - }, - "node_modules/stencil-eslint-core": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/stencil-eslint-core/-/stencil-eslint-core-0.3.1.tgz", - "integrity": "sha512-z1yp1+Qzr6C/X4RgaCt0egDu5CsIrZzMCr9eGMmQTnSU1leVbSJB5aoI/KWv8qe8k7b1LCit46Ff3udRJ96Lfw==", - "dev": true, - "dependencies": { - "eslint-utils": "~3.0.0", - "tsutils": "~3.21.0" - }, - "engines": { - "node": ">=8.9.0" - }, - "peerDependencies": { - "@typescript-eslint/parser": "^5.8.0", - "eslint": "^8" - } - }, - "node_modules/stream-shift": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz", - "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==", - "dev": true - }, - "node_modules/streamx": { - "version": "2.15.1", - "resolved": "https://registry.npmjs.org/streamx/-/streamx-2.15.1.tgz", - "integrity": "sha512-fQMzy2O/Q47rgwErk/eGeLu/roaFWV0jVsogDmrszM9uIw8L5OA+t+V93MgYlufNptfjmYR1tOMWhei/Eh7TQA==", - "dev": true, - "dependencies": { - "fast-fifo": "^1.1.0", - "queue-tick": "^1.0.1" - } - }, - "node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "dependencies": { - "safe-buffer": "~5.1.0" - } - }, - "node_modules/string-length": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz", - "integrity": "sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==", - "dev": true, - "dependencies": { - "char-regex": "^1.0.2", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/string.prototype.matchall": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.8.tgz", - "integrity": "sha512-6zOCOcJ+RJAQshcTvXPHoxoQGONa3e/Lqx90wUA+wEzX78sg5Bo+1tQo4N0pohS0erG9qtCqJDjNCQBjeWVxyg==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4", - "get-intrinsic": "^1.1.3", - "has-symbols": "^1.0.3", - "internal-slot": "^1.0.3", - "regexp.prototype.flags": "^1.4.3", - "side-channel": "^1.0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/string.prototype.trimend": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz", - "integrity": "sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/string.prototype.trimstart": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.6.tgz", - "integrity": "sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-bom": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", - "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-final-newline": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", - "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/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, "dependencies": { - "min-indent": "^1.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-json-comments": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", - "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", - "dev": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "base64-arraybuffer": "^1.0.2" } }, - "node_modules/strnum": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/strnum/-/strnum-1.0.5.tgz", - "integrity": "sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA==" - }, - "node_modules/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==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/supports-hyperlinks": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.3.0.tgz", - "integrity": "sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0", - "supports-color": "^7.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/svg-pathdata": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/svg-pathdata/-/svg-pathdata-6.0.3.tgz", - "integrity": "sha512-qsjeeq5YjBZ5eMdFuUa4ZosMLxgr5RZ+F+Y1OrDhuOCEInRMA3x74XdBtggJcj9kOeInz0WE+LgCPDkZFlBYJw==", - "optional": true, - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/symbol-tree": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", - "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==", - "dev": true - }, - "node_modules/tabbable": { - "version": "6.1.2", - "resolved": "https://registry.npmjs.org/tabbable/-/tabbable-6.1.2.tgz", - "integrity": "sha512-qCN98uP7i9z0fIS4amQ5zbGBOq+OSigYeGvPy7NDk8Y9yncqDZ9pRPgfsc2PJIVM9RrJj7GIfuRgmjoUU9zTHQ==" - }, - "node_modules/tailwindcss": { - "version": "3.0.23", - "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.0.23.tgz", - "integrity": "sha512-+OZOV9ubyQ6oI2BXEhzw4HrqvgcARY38xv3zKcjnWtMIZstEsXdI9xftd1iB7+RbOnj2HOEzkA0OyB5BaSxPQA==", - "dev": true, - "dependencies": { - "arg": "^5.0.1", - "chalk": "^4.1.2", - "chokidar": "^3.5.3", - "color-name": "^1.1.4", - "cosmiconfig": "^7.0.1", - "detective": "^5.2.0", - "didyoumean": "^1.2.2", - "dlv": "^1.1.3", - "fast-glob": "^3.2.11", - "glob-parent": "^6.0.2", - "is-glob": "^4.0.3", - "normalize-path": "^3.0.0", - "object-hash": "^2.2.0", - "postcss": "^8.4.6", - "postcss-js": "^4.0.0", - "postcss-load-config": "^3.1.0", - "postcss-nested": "5.0.6", - "postcss-selector-parser": "^6.0.9", - "postcss-value-parser": "^4.2.0", - "quick-lru": "^5.1.1", - "resolve": "^1.22.0" - }, - "bin": { - "tailwind": "lib/cli.js", - "tailwindcss": "lib/cli.js" - }, - "engines": { - "node": ">=12.13.0" - }, - "peerDependencies": { - "autoprefixer": "^10.0.2", - "postcss": "^8.0.9" - } - }, - "node_modules/tailwindcss/node_modules/resolve": { - "version": "1.22.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", - "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", - "dev": true, - "dependencies": { - "is-core-module": "^2.9.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/tar-fs": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-3.0.4.tgz", - "integrity": "sha512-5AFQU8b9qLfZCX9zp2duONhPmZv0hGYiBPJsyUdqMjzq/mqVpy/rEUSeHk1+YitmxugaptgBh5oDGU3VsAJq4w==", - "dev": true, - "dependencies": { - "mkdirp-classic": "^0.5.2", - "pump": "^3.0.0", - "tar-stream": "^3.1.5" - } - }, - "node_modules/tar-stream": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-3.1.6.tgz", - "integrity": "sha512-B/UyjYwPpMBv+PaFSWAmtYjwdrlEaZQEhMIBFNC5oEG8lpiW8XjcSdmEaClj28ArfKScKHs2nshz3k2le6crsg==", - "dev": true, - "dependencies": { - "b4a": "^1.6.4", - "fast-fifo": "^1.2.0", - "streamx": "^2.15.0" - } - }, - "node_modules/terminal-link": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/terminal-link/-/terminal-link-2.1.1.tgz", - "integrity": "sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ==", - "dev": true, - "dependencies": { - "ansi-escapes": "^4.2.1", - "supports-hyperlinks": "^2.0.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/test-exclude": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", - "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", - "dev": true, - "dependencies": { - "@istanbuljs/schema": "^0.1.2", - "glob": "^7.1.4", - "minimatch": "^3.0.4" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/text-segmentation": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/text-segmentation/-/text-segmentation-1.0.3.tgz", - "integrity": "sha512-iOiPUo/BGnZ6+54OsWxZidGCsdU8YbE4PSpdPinp7DeMtUJNJBoJ/ouUSTJjHkh1KntHaltHl/gDs2FC4i5+Nw==", - "optional": true, - "dependencies": { - "utrie": "^1.0.2" - } - }, - "node_modules/text-table": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", - "dev": true - }, - "node_modules/throat": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/throat/-/throat-6.0.2.tgz", - "integrity": "sha512-WKexMoJj3vEuK0yFEapj8y64V0A6xcuPuK9Gt1d0R+dzCSJc0lHqQytAbSB4cDAK0dWh4T0E2ETkoLE2WZ41OQ==", - "dev": true - }, - "node_modules/through": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", - "dev": true - }, - "node_modules/through2": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", - "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", - "dev": true, - "dependencies": { - "readable-stream": "~2.3.6", - "xtend": "~4.0.1" - } - }, - "node_modules/tmp": { - "version": "0.0.33", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", - "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", - "dev": true, - "dependencies": { - "os-tmpdir": "~1.0.2" - }, - "engines": { - "node": ">=0.6.0" - } - }, - "node_modules/tmpl": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", - "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==", - "dev": true - }, - "node_modules/to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/to-readable-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-1.0.0.tgz", - "integrity": "sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/tough-cookie": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.3.tgz", - "integrity": "sha512-aX/y5pVRkfRnfmuX+OdbSdXvPe6ieKX/G2s7e98f4poJHnqH3281gDPm/metm6E/WRamfx7WC4HUqkWHfQHprw==", - "dev": true, - "dependencies": { - "psl": "^1.1.33", - "punycode": "^2.1.1", - "universalify": "^0.2.0", - "url-parse": "^1.5.3" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/tr46": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-2.1.0.tgz", - "integrity": "sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw==", - "dev": true, - "dependencies": { - "punycode": "^2.1.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/ts-node": { - "version": "10.9.1", - "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.1.tgz", - "integrity": "sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==", - "dev": true, - "dependencies": { - "@cspotcode/source-map-support": "^0.8.0", - "@tsconfig/node10": "^1.0.7", - "@tsconfig/node12": "^1.0.7", - "@tsconfig/node14": "^1.0.0", - "@tsconfig/node16": "^1.0.2", - "acorn": "^8.4.1", - "acorn-walk": "^8.1.1", - "arg": "^4.1.0", - "create-require": "^1.1.0", - "diff": "^4.0.1", - "make-error": "^1.1.1", - "v8-compile-cache-lib": "^3.0.1", - "yn": "3.1.1" - }, - "bin": { - "ts-node": "dist/bin.js", - "ts-node-cwd": "dist/bin-cwd.js", - "ts-node-esm": "dist/bin-esm.js", - "ts-node-script": "dist/bin-script.js", - "ts-node-transpile-only": "dist/bin-transpile.js", - "ts-script": "dist/bin-script-deprecated.js" - }, - "peerDependencies": { - "@swc/core": ">=1.2.50", - "@swc/wasm": ">=1.2.50", - "@types/node": "*", - "typescript": ">=2.7" - }, - "peerDependenciesMeta": { - "@swc/core": { - "optional": true - }, - "@swc/wasm": { - "optional": true - } - } - }, - "node_modules/ts-node/node_modules/acorn-walk": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", - "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==", - "dev": true, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/ts-node/node_modules/arg": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", - "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", - "dev": true - }, - "node_modules/tslib": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", - "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==", - "dev": true - }, - "node_modules/tsutils": { - "version": "3.21.0", - "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", - "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", - "dev": true, - "dependencies": { - "tslib": "^1.8.1" - }, - "engines": { - "node": ">= 6" - }, - "peerDependencies": { - "typescript": ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta" - } - }, - "node_modules/tsutils/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - }, - "node_modules/type-check": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", - "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", - "dev": true, - "dependencies": { - "prelude-ls": "^1.2.1" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/type-detect": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", - "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/type-fest": { - "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, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/typed-array-length": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.4.tgz", - "integrity": "sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "is-typed-array": "^1.1.9" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/typedarray-to-buffer": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", - "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", - "dev": true, - "dependencies": { - "is-typedarray": "^1.0.0" - } - }, - "node_modules/typescript": { - "version": "4.9.5", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz", - "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==", - "dev": true, - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=4.2.0" - } - }, - "node_modules/unbox-primitive": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", - "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "has-bigints": "^1.0.2", - "has-symbols": "^1.0.3", - "which-boxed-primitive": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/unbzip2-stream": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/unbzip2-stream/-/unbzip2-stream-1.4.3.tgz", - "integrity": "sha512-mlExGW4w71ebDJviH16lQLtZS32VKqsSfk80GCfUlwT/4/hNRFsoscrF/c++9xinkMzECL1uL9DDwXqFWkruPg==", - "dev": true, - "dependencies": { - "buffer": "^5.2.1", - "through": "^2.3.8" - } - }, - "node_modules/unicode-canonical-property-names-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", - "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/unicode-match-property-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", - "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", - "dev": true, - "dependencies": { - "unicode-canonical-property-names-ecmascript": "^2.0.0", - "unicode-property-aliases-ecmascript": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/unicode-match-property-value-ecmascript": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz", - "integrity": "sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/unicode-property-aliases-ecmascript": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz", - "integrity": "sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/unique-string": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz", - "integrity": "sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==", - "dev": true, - "dependencies": { - "crypto-random-string": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/universal-user-agent": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-6.0.0.tgz", - "integrity": "sha512-isyNax3wXoKaulPDZWHQqbmIx1k2tb9fb3GGDBRxCscfYV2Ch7WxPArBsFEG8s/safwXTT7H4QGhaIkTp9447w==", - "dev": true - }, - "node_modules/universalify": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz", - "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==", - "dev": true, - "engines": { - "node": ">= 4.0.0" - } - }, - "node_modules/update-browserslist-db": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz", - "integrity": "sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "dependencies": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" - }, - "bin": { - "update-browserslist-db": "cli.js" - }, - "peerDependencies": { - "browserslist": ">= 4.21.0" - } - }, - "node_modules/update-notifier": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-5.1.0.tgz", - "integrity": "sha512-ItnICHbeMh9GqUy31hFPrD1kcuZ3rpxDZbf4KUDavXwS0bW5m7SLbDQpGX3UYr072cbrF5hFUs3r5tUsPwjfHw==", - "dev": true, - "dependencies": { - "boxen": "^5.0.0", - "chalk": "^4.1.0", - "configstore": "^5.0.1", - "has-yarn": "^2.1.0", - "import-lazy": "^2.1.0", - "is-ci": "^2.0.0", - "is-installed-globally": "^0.4.0", - "is-npm": "^5.0.0", - "is-yarn-global": "^0.3.0", - "latest-version": "^5.1.0", - "pupa": "^2.1.1", - "semver": "^7.3.4", - "semver-diff": "^3.1.1", - "xdg-basedir": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/yeoman/update-notifier?sponsor=1" - } - }, - "node_modules/uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dependencies": { - "punycode": "^2.1.0" - } - }, - "node_modules/url-parse": { - "version": "1.5.10", - "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.10.tgz", - "integrity": "sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==", - "dev": true, - "dependencies": { - "querystringify": "^2.1.1", - "requires-port": "^1.0.0" - } - }, - "node_modules/url-parse-lax": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", - "integrity": "sha512-NjFKA0DidqPa5ciFcSrXnAltTtzz84ogy+NebPvfEgAck0+TNg4UJ4IN+fB7zRZfbgUf0syOo9MDxFkDSMuFaQ==", - "dev": true, - "dependencies": { - "prepend-http": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", - "dev": true - }, - "node_modules/util-extend": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/util-extend/-/util-extend-1.0.3.tgz", - "integrity": "sha512-mLs5zAK+ctllYBj+iAQvlDCwoxU/WDOUaJkcFudeiAX6OajC6BKXJUa9a+tbtkC11dz2Ufb7h0lyvIOVn4LADA==", - "dev": true - }, - "node_modules/utrie": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/utrie/-/utrie-1.0.2.tgz", - "integrity": "sha512-1MLa5ouZiOmQzUbjbu9VmjLzn1QLXBhwpUa7kdLUQK+KQ5KA9I1vk5U4YHe/X2Ch7PYnJfWuWT+VbuxbGwljhw==", - "optional": true, - "dependencies": { - "base64-arraybuffer": "^1.0.2" - } - }, - "node_modules/v8-compile-cache-lib": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", - "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==", - "dev": true - }, - "node_modules/v8-to-istanbul": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-8.1.1.tgz", - "integrity": "sha512-FGtKtv3xIpR6BYhvgH8MI/y78oT7d8Au3ww4QIxymrCtZEh5b8gCw2siywE+puhEmuWKDtmfrvF5UlB298ut3w==", - "dev": true, - "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.1", - "convert-source-map": "^1.6.0", - "source-map": "^0.7.3" - }, - "engines": { - "node": ">=10.12.0" - } - }, - "node_modules/v8-to-istanbul/node_modules/source-map": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", - "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", - "dev": true, - "engines": { - "node": ">= 8" - } - }, - "node_modules/validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", - "dev": true, - "dependencies": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "node_modules/w3c-hr-time": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz", - "integrity": "sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==", - "deprecated": "Use your platform's native performance.now() and performance.timeOrigin.", - "dev": true, - "dependencies": { - "browser-process-hrtime": "^1.0.0" - } - }, - "node_modules/w3c-xmlserializer": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz", - "integrity": "sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA==", - "dev": true, - "dependencies": { - "xml-name-validator": "^3.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/walker": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", - "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==", - "dev": true, - "dependencies": { - "makeerror": "1.0.12" - } - }, - "node_modules/wcwidth": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", - "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==", - "dev": true, - "dependencies": { - "defaults": "^1.0.3" - } - }, - "node_modules/webidl-conversions": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-6.1.0.tgz", - "integrity": "sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==", - "dev": true, - "engines": { - "node": ">=10.4" - } - }, - "node_modules/whatwg-encoding": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz", - "integrity": "sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==", - "dev": true, - "dependencies": { - "iconv-lite": "0.4.24" - } - }, - "node_modules/whatwg-mimetype": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz", - "integrity": "sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==", - "dev": true - }, - "node_modules/whatwg-url": { - "version": "8.7.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-8.7.0.tgz", - "integrity": "sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg==", - "dev": true, - "dependencies": { - "lodash": "^4.7.0", - "tr46": "^2.1.0", - "webidl-conversions": "^6.1.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/which-boxed-primitive": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", - "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", - "dev": true, - "dependencies": { - "is-bigint": "^1.0.1", - "is-boolean-object": "^1.1.0", - "is-number-object": "^1.0.4", - "is-string": "^1.0.5", - "is-symbol": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/which-typed-array": { - "version": "1.1.9", - "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.9.tgz", - "integrity": "sha512-w9c4xkx6mPidwp7180ckYWfMmvxpjlZuIudNtDf4N/tTAUB8VJbX25qZoAsrtGuYNnGw3pa0AXgbGKRB8/EceA==", - "dev": true, - "dependencies": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-tostringtag": "^1.0.0", - "is-typed-array": "^1.1.10" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/wide-align": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", - "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", - "dev": true, - "dependencies": { - "string-width": "^1.0.2 || 2 || 3 || 4" - } - }, - "node_modules/widest-line": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz", - "integrity": "sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==", - "dev": true, - "dependencies": { - "string-width": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/word-wrap": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", - "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - } - }, - "node_modules/wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", - "dev": true - }, - "node_modules/write-file-atomic": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", - "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", - "dev": true, - "dependencies": { - "imurmurhash": "^0.1.4", - "is-typedarray": "^1.0.0", - "signal-exit": "^3.0.2", - "typedarray-to-buffer": "^3.1.5" - } - }, - "node_modules/write-json-file": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/write-json-file/-/write-json-file-4.3.0.tgz", - "integrity": "sha512-PxiShnxf0IlnQuMYOPPhPkhExoCQuTUNPOa/2JWCYTmBquU9njyyDuwRKN26IZBlp4yn1nt+Agh2HOOBl+55HQ==", - "dev": true, - "dependencies": { - "detect-indent": "^6.0.0", - "graceful-fs": "^4.1.15", - "is-plain-obj": "^2.0.0", - "make-dir": "^3.0.0", - "sort-keys": "^4.0.0", - "write-file-atomic": "^3.0.0" - }, - "engines": { - "node": ">=8.3" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/ws": { - "version": "8.13.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.13.0.tgz", - "integrity": "sha512-x9vcZYTrFPC7aSIbj7sRCYo7L/Xb8Iy+pW0ng0wt2vCJv7M9HOMy0UoN3rr+IFC7hb7vXoqS+P9ktyLLLhO+LA==", - "dev": true, - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": ">=5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - }, - "node_modules/xdg-basedir": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz", - "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/xml-name-validator": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz", - "integrity": "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==", - "dev": true - }, - "node_modules/xmlchars": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz", - "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==", - "dev": true - }, - "node_modules/xss": { - "version": "1.0.14", - "resolved": "https://registry.npmjs.org/xss/-/xss-1.0.14.tgz", - "integrity": "sha512-og7TEJhXvn1a7kzZGQ7ETjdQVS2UfZyTlsEdDOqvQF7GoxNfY+0YLCzBy1kPdsDDx4QuNAonQPddpsn6Xl/7sw==", - "dev": true, - "dependencies": { - "commander": "^2.20.3", - "cssfilter": "0.0.10" - }, - "bin": { - "xss": "bin/xss" - }, - "engines": { - "node": ">= 0.10.0" - } - }, - "node_modules/xtend": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", - "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", - "dev": true, - "engines": { - "node": ">=0.4" - } - }, - "node_modules/y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", - "dev": true - }, - "node_modules/yaml": { - "version": "1.10.2", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", - "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", - "dev": true, - "engines": { - "node": ">= 6" - } - }, - "node_modules/yargs": { - "version": "17.7.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.1.tgz", - "integrity": "sha512-cwiTb08Xuv5fqF4AovYacTFNxk62th7LKJ6BL9IGUpTJrWoU7/7WdQGTP2SjKf1dUNBGzDd28p/Yfs/GI6JrLw==", - "dev": true, - "dependencies": { - "cliui": "^8.0.1", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.3", - "y18n": "^5.0.5", - "yargs-parser": "^21.1.1" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/yargs-parser": { - "version": "21.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", - "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", - "dev": true, - "engines": { - "node": ">=12" - } - }, - "node_modules/yauzl": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", - "integrity": "sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==", - "dev": true, - "dependencies": { - "buffer-crc32": "~0.2.3", - "fd-slicer": "~1.1.0" - } - }, - "node_modules/yn": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", - "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/yocto-queue": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", - "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - } - }, - "dependencies": { - "@ampproject/remapping": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", - "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", - "dev": true, - "requires": { - "@jridgewell/gen-mapping": "^0.1.0", - "@jridgewell/trace-mapping": "^0.3.9" - } - }, - "@babel/code-frame": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.10.tgz", - "integrity": "sha512-/KKIMG4UEL35WmI9OlvMhurwtytjvXoFcGNrOvyG9zIzA8YmPjVtIZUf7b05+TPO7G7/GEmLHDaoCgACHl9hhA==", - "dev": true, - "requires": { - "@babel/highlight": "^7.22.10", - "chalk": "^2.4.2" - }, - "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", - "dev": true - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", - "dev": true - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "@babel/compat-data": { - "version": "7.22.9", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.22.9.tgz", - "integrity": "sha512-5UamI7xkUcJ3i9qVDS+KFDEK8/7oJ55/sJMB1Ge7IEapr7KfdfV/HErR+koZwOfd+SgtFKOKRhRakdg++DcJpQ==", - "dev": true - }, - "@babel/core": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.22.10.tgz", - "integrity": "sha512-fTmqbbUBAwCcre6zPzNngvsI0aNrPZe77AeqvDxWM9Nm+04RrJ3CAmGHA9f7lJQY6ZMhRztNemy4uslDxTX4Qw==", - "dev": true, - "requires": { - "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.22.10", - "@babel/generator": "^7.22.10", - "@babel/helper-compilation-targets": "^7.22.10", - "@babel/helper-module-transforms": "^7.22.9", - "@babel/helpers": "^7.22.10", - "@babel/parser": "^7.22.10", - "@babel/template": "^7.22.5", - "@babel/traverse": "^7.22.10", - "@babel/types": "^7.22.10", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.2", - "json5": "^2.2.2", - "semver": "^6.3.1" - }, - "dependencies": { - "semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true - } - } - }, - "@babel/eslint-parser": { - "version": "7.19.1", - "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.19.1.tgz", - "integrity": "sha512-AqNf2QWt1rtu2/1rLswy6CDP7H9Oh3mMhk177Y67Rg8d7RD9WfOLLv8CGn6tisFvS2htm86yIe1yLF6I1UDaGQ==", - "dev": true, - "requires": { - "@nicolo-ribaudo/eslint-scope-5-internals": "5.1.1-v1", - "eslint-visitor-keys": "^2.1.0", - "semver": "^6.3.0" - }, - "dependencies": { - "eslint-visitor-keys": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", - "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", - "dev": true - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "@babel/generator": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.22.10.tgz", - "integrity": "sha512-79KIf7YiWjjdZ81JnLujDRApWtl7BxTqWD88+FFdQEIOG8LJ0etDOM7CXuIgGJa55sGOwZVwuEsaLEm0PJ5/+A==", - "dev": true, - "requires": { - "@babel/types": "^7.22.10", - "@jridgewell/gen-mapping": "^0.3.2", - "@jridgewell/trace-mapping": "^0.3.17", - "jsesc": "^2.5.1" - }, - "dependencies": { - "@jridgewell/gen-mapping": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", - "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", - "dev": true, - "requires": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - } - } - } - }, - "@babel/helper-annotate-as-pure": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.22.5.tgz", - "integrity": "sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg==", - "dev": true, - "requires": { - "@babel/types": "^7.22.5" - } - }, - "@babel/helper-builder-binary-assignment-operator-visitor": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.22.10.tgz", - "integrity": "sha512-Av0qubwDQxC56DoUReVDeLfMEjYYSN1nZrTUrWkXd7hpU73ymRANkbuDm3yni9npkn+RXy9nNbEJZEzXr7xrfQ==", - "dev": true, - "requires": { - "@babel/types": "^7.22.10" - } - }, - "@babel/helper-compilation-targets": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.10.tgz", - "integrity": "sha512-JMSwHD4J7SLod0idLq5PKgI+6g/hLD/iuWBq08ZX49xE14VpVEojJ5rHWptpirV2j020MvypRLAXAO50igCJ5Q==", - "dev": true, - "requires": { - "@babel/compat-data": "^7.22.9", - "@babel/helper-validator-option": "^7.22.5", - "browserslist": "^4.21.9", - "lru-cache": "^5.1.1", - "semver": "^6.3.1" - }, - "dependencies": { - "semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true - } - } - }, - "@babel/helper-create-class-features-plugin": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.22.10.tgz", - "integrity": "sha512-5IBb77txKYQPpOEdUdIhBx8VrZyDCQ+H82H0+5dX1TmuscP5vJKEE3cKurjtIw/vFwzbVH48VweE78kVDBrqjA==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.22.5", - "@babel/helper-environment-visitor": "^7.22.5", - "@babel/helper-function-name": "^7.22.5", - "@babel/helper-member-expression-to-functions": "^7.22.5", - "@babel/helper-optimise-call-expression": "^7.22.5", - "@babel/helper-replace-supers": "^7.22.9", - "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.6", - "semver": "^6.3.1" - }, - "dependencies": { - "semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true - } - } - }, - "@babel/helper-create-regexp-features-plugin": { - "version": "7.22.9", - "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.22.9.tgz", - "integrity": "sha512-+svjVa/tFwsNSG4NEy1h85+HQ5imbT92Q5/bgtS7P0GTQlP8WuFdqsiABmQouhiFGyV66oGxZFpeYHza1rNsKw==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.22.5", - "regexpu-core": "^5.3.1", - "semver": "^6.3.1" - }, - "dependencies": { - "semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true - } - } - }, - "@babel/helper-define-polyfill-provider": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.4.2.tgz", - "integrity": "sha512-k0qnnOqHn5dK9pZpfD5XXZ9SojAITdCKRn2Lp6rnDGzIbaP0rHyMPk/4wsSxVBVz4RfN0q6VpXWP2pDGIoQ7hw==", - "dev": true, - "requires": { - "@babel/helper-compilation-targets": "^7.22.6", - "@babel/helper-plugin-utils": "^7.22.5", - "debug": "^4.1.1", - "lodash.debounce": "^4.0.8", - "resolve": "^1.14.2" - }, - "dependencies": { - "resolve": { - "version": "1.22.4", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.4.tgz", - "integrity": "sha512-PXNdCiPqDqeUou+w1C2eTQbNfxKSuMxqTCuvlmmMsk1NWHL5fRrhY6Pl0qEYYc6+QqGClco1Qj8XnjPego4wfg==", - "dev": true, - "requires": { - "is-core-module": "^2.13.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - } - } - } - }, - "@babel/helper-environment-visitor": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.5.tgz", - "integrity": "sha512-XGmhECfVA/5sAt+H+xpSg0mfrHq6FzNr9Oxh7PSEBBRUb/mL7Kz3NICXb194rCqAEdxkhPT1a88teizAFyvk8Q==", - "dev": true - }, - "@babel/helper-function-name": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.22.5.tgz", - "integrity": "sha512-wtHSq6jMRE3uF2otvfuD3DIvVhOsSNshQl0Qrd7qC9oQJzHvOL4qQXlQn2916+CXGywIjpGuIkoyZRRxHPiNQQ==", - "dev": true, - "requires": { - "@babel/template": "^7.22.5", - "@babel/types": "^7.22.5" - } - }, - "@babel/helper-hoist-variables": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz", - "integrity": "sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==", - "dev": true, - "requires": { - "@babel/types": "^7.22.5" - } - }, - "@babel/helper-member-expression-to-functions": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.22.5.tgz", - "integrity": "sha512-aBiH1NKMG0H2cGZqspNvsaBe6wNGjbJjuLy29aU+eDZjSbbN53BaxlpB02xm9v34pLTZ1nIQPFYn2qMZoa5BQQ==", - "dev": true, - "requires": { - "@babel/types": "^7.22.5" - } - }, - "@babel/helper-module-imports": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.5.tgz", - "integrity": "sha512-8Dl6+HD/cKifutF5qGd/8ZJi84QeAKh+CEe1sBzz8UayBBGg1dAIJrdHOcOM5b2MpzWL2yuotJTtGjETq0qjXg==", - "dev": true, - "requires": { - "@babel/types": "^7.22.5" - } - }, - "@babel/helper-module-transforms": { - "version": "7.22.9", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.22.9.tgz", - "integrity": "sha512-t+WA2Xn5K+rTeGtC8jCsdAH52bjggG5TKRuRrAGNM/mjIbO4GxvlLMFOEz9wXY5I2XQ60PMFsAG2WIcG82dQMQ==", - "dev": true, - "requires": { - "@babel/helper-environment-visitor": "^7.22.5", - "@babel/helper-module-imports": "^7.22.5", - "@babel/helper-simple-access": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/helper-validator-identifier": "^7.22.5" - } - }, - "@babel/helper-optimise-call-expression": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.22.5.tgz", - "integrity": "sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw==", - "dev": true, - "requires": { - "@babel/types": "^7.22.5" - } - }, - "@babel/helper-plugin-utils": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.22.5.tgz", - "integrity": "sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==", - "dev": true - }, - "@babel/helper-remap-async-to-generator": { - "version": "7.22.9", - "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.22.9.tgz", - "integrity": "sha512-8WWC4oR4Px+tr+Fp0X3RHDVfINGpF3ad1HIbrc8A77epiR6eMMc6jsgozkzT2uDiOOdoS9cLIQ+XD2XvI2WSmQ==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.22.5", - "@babel/helper-environment-visitor": "^7.22.5", - "@babel/helper-wrap-function": "^7.22.9" - } - }, - "@babel/helper-replace-supers": { - "version": "7.22.9", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.22.9.tgz", - "integrity": "sha512-LJIKvvpgPOPUThdYqcX6IXRuIcTkcAub0IaDRGCZH0p5GPUp7PhRU9QVgFcDDd51BaPkk77ZjqFwh6DZTAEmGg==", - "dev": true, - "requires": { - "@babel/helper-environment-visitor": "^7.22.5", - "@babel/helper-member-expression-to-functions": "^7.22.5", - "@babel/helper-optimise-call-expression": "^7.22.5" - } - }, - "@babel/helper-simple-access": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz", - "integrity": "sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==", - "dev": true, - "requires": { - "@babel/types": "^7.22.5" - } - }, - "@babel/helper-skip-transparent-expression-wrappers": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.22.5.tgz", - "integrity": "sha512-tK14r66JZKiC43p8Ki33yLBVJKlQDFoA8GYN67lWCDCqoL6EMMSuM9b+Iff2jHaM/RRFYl7K+iiru7hbRqNx8Q==", - "dev": true, - "requires": { - "@babel/types": "^7.22.5" - } - }, - "@babel/helper-split-export-declaration": { - "version": "7.22.6", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz", - "integrity": "sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==", - "dev": true, - "requires": { - "@babel/types": "^7.22.5" - } - }, - "@babel/helper-string-parser": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz", - "integrity": "sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==", - "dev": true - }, - "@babel/helper-validator-identifier": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.5.tgz", - "integrity": "sha512-aJXu+6lErq8ltp+JhkJUfk1MTGyuA4v7f3pA+BJ5HLfNC6nAQ0Cpi9uOquUj8Hehg0aUiHzWQbOVJGao6ztBAQ==", - "dev": true - }, - "@babel/helper-validator-option": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.22.5.tgz", - "integrity": "sha512-R3oB6xlIVKUnxNUxbmgq7pKjxpru24zlimpE8WK47fACIlM0II/Hm1RS8IaOI7NgCr6LNS+jl5l75m20npAziw==", - "dev": true - }, - "@babel/helper-wrap-function": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.22.10.tgz", - "integrity": "sha512-OnMhjWjuGYtdoO3FmsEFWvBStBAe2QOgwOLsLNDjN+aaiMD8InJk1/O3HSD8lkqTjCgg5YI34Tz15KNNA3p+nQ==", - "dev": true, - "requires": { - "@babel/helper-function-name": "^7.22.5", - "@babel/template": "^7.22.5", - "@babel/types": "^7.22.10" - } - }, - "@babel/helpers": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.22.10.tgz", - "integrity": "sha512-a41J4NW8HyZa1I1vAndrraTlPZ/eZoga2ZgS7fEr0tZJGVU4xqdE80CEm0CcNjha5EZ8fTBYLKHF0kqDUuAwQw==", - "dev": true, - "requires": { - "@babel/template": "^7.22.5", - "@babel/traverse": "^7.22.10", - "@babel/types": "^7.22.10" - } - }, - "@babel/highlight": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.10.tgz", - "integrity": "sha512-78aUtVcT7MUscr0K5mIEnkwxPE0MaxkR5RxRwuHaQ+JuU5AmTPhY+do2mdzVTnIJJpyBglql2pehuBIWHug+WQ==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.22.5", - "chalk": "^2.4.2", - "js-tokens": "^4.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", - "dev": true - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", - "dev": true - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "@babel/parser": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.22.10.tgz", - "integrity": "sha512-lNbdGsQb9ekfsnjFGhEiF4hfFqGgfOP3H3d27re3n+CGhNuTSUEQdfWk556sTLNTloczcdM5TYF2LhzmDQKyvQ==", - "dev": true - }, - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.22.5.tgz", - "integrity": "sha512-NP1M5Rf+u2Gw9qfSO4ihjcTGW5zXTi36ITLd4/EoAcEhIZ0yjMqmftDNl3QC19CX7olhrjpyU454g/2W7X0jvQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.22.5" - } - }, - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.22.5.tgz", - "integrity": "sha512-31Bb65aZaUwqCbWMnZPduIZxCBngHFlzyN6Dq6KAJjtx+lx6ohKHubc61OomYi7XwVD4Ol0XCVz4h+pYFR048g==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", - "@babel/plugin-transform-optional-chaining": "^7.22.5" - } - }, - "@babel/plugin-proposal-private-property-in-object": { - "version": "7.21.0-placeholder-for-preset-env.2", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz", - "integrity": "sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==", - "dev": true, - "requires": {} - }, - "@babel/plugin-syntax-async-generators": { - "version": "7.8.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", - "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-bigint": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz", - "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-class-properties": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", - "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.12.13" - } - }, - "@babel/plugin-syntax-class-static-block": { - "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.14.5" - } + "node_modules/v8-compile-cache-lib": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", + "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==", + "dev": true }, - "@babel/plugin-syntax-dynamic-import": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", - "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", + "node_modules/v8-to-istanbul": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-8.1.1.tgz", + "integrity": "sha512-FGtKtv3xIpR6BYhvgH8MI/y78oT7d8Au3ww4QIxymrCtZEh5b8gCw2siywE+puhEmuWKDtmfrvF5UlB298ut3w==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.1", + "convert-source-map": "^1.6.0", + "source-map": "^0.7.3" + }, + "engines": { + "node": ">=10.12.0" } }, - "@babel/plugin-syntax-export-namespace-from": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", - "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", + "node_modules/v8-to-istanbul/node_modules/source-map": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "engines": { + "node": ">= 8" } }, - "@babel/plugin-syntax-import-assertions": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.22.5.tgz", - "integrity": "sha512-rdV97N7KqsRzeNGoWUOK6yUsWarLjE5Su/Snk9IYPU9CwkWHs4t+rTGOvffTR8XGkJMTAdLfO0xVnXm8wugIJg==", + "node_modules/validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.22.5" + "dependencies": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" } }, - "@babel/plugin-syntax-import-attributes": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.22.5.tgz", - "integrity": "sha512-KwvoWDeNKPETmozyFE0P2rOLqh39EoQHNjqizrI5B8Vt0ZNS7M56s7dAiAqbYfiAYOuIzIh96z3iR2ktgu3tEg==", + "node_modules/w3c-hr-time": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz", + "integrity": "sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==", + "deprecated": "Use your platform's native performance.now() and performance.timeOrigin.", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.22.5" + "dependencies": { + "browser-process-hrtime": "^1.0.0" } }, - "@babel/plugin-syntax-import-meta": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", - "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", + "node_modules/w3c-xmlserializer": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz", + "integrity": "sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" + "dependencies": { + "xml-name-validator": "^3.0.0" + }, + "engines": { + "node": ">=10" } }, - "@babel/plugin-syntax-json-strings": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", - "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", + "node_modules/walker": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", + "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" + "dependencies": { + "makeerror": "1.0.12" } }, - "@babel/plugin-syntax-jsx": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.22.5.tgz", - "integrity": "sha512-gvyP4hZrgrs/wWMaocvxZ44Hw0b3W8Pe+cMxc8V1ULQ07oh8VNbIRaoD1LRZVTvD+0nieDKjfgKg89sD7rrKrg==", + "node_modules/wcwidth": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", + "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.22.5" + "dependencies": { + "defaults": "^1.0.3" } }, - "@babel/plugin-syntax-logical-assignment-operators": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", - "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", + "node_modules/webidl-conversions": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-6.1.0.tgz", + "integrity": "sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" + "engines": { + "node": ">=10.4" } }, - "@babel/plugin-syntax-nullish-coalescing-operator": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", - "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", + "node_modules/whatwg-encoding": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz", + "integrity": "sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" + "dependencies": { + "iconv-lite": "0.4.24" } }, - "@babel/plugin-syntax-numeric-separator": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", - "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } + "node_modules/whatwg-mimetype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz", + "integrity": "sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==", + "dev": true }, - "@babel/plugin-syntax-object-rest-spread": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", - "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", + "node_modules/whatwg-url": { + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-8.7.0.tgz", + "integrity": "sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" + "dependencies": { + "lodash": "^4.7.0", + "tr46": "^2.1.0", + "webidl-conversions": "^6.1.0" + }, + "engines": { + "node": ">=10" } }, - "@babel/plugin-syntax-optional-catch-binding": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", - "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" } }, - "@babel/plugin-syntax-optional-chaining": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", - "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", + "node_modules/which-boxed-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", + "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" + "dependencies": { + "is-bigint": "^1.0.1", + "is-boolean-object": "^1.1.0", + "is-number-object": "^1.0.4", + "is-string": "^1.0.5", + "is-symbol": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "@babel/plugin-syntax-private-property-in-object": { - "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==", + "node_modules/which-typed-array": { + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.9.tgz", + "integrity": "sha512-w9c4xkx6mPidwp7180ckYWfMmvxpjlZuIudNtDf4N/tTAUB8VJbX25qZoAsrtGuYNnGw3pa0AXgbGKRB8/EceA==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" + "dependencies": { + "available-typed-arrays": "^1.0.5", + "call-bind": "^1.0.2", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-tostringtag": "^1.0.0", + "is-typed-array": "^1.1.10" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "@babel/plugin-syntax-top-level-await": { - "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==", + "node_modules/wide-align": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", + "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" + "dependencies": { + "string-width": "^1.0.2 || 2 || 3 || 4" } }, - "@babel/plugin-syntax-typescript": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.22.5.tgz", - "integrity": "sha512-1mS2o03i7t1c6VzH6fdQ3OA8tcEIxwG18zIPRp+UY1Ihv6W+XZzBCVxExF9upussPXJ0xE9XRHwMoNs1ep/nRQ==", + "node_modules/widest-line": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz", + "integrity": "sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.22.5" + "dependencies": { + "string-width": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "@babel/plugin-syntax-unicode-sets-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-unicode-sets-regex/-/plugin-syntax-unicode-sets-regex-7.18.6.tgz", - "integrity": "sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==", + "node_modules/word-wrap": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", + "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" + "engines": { + "node": ">=0.10.0" } }, - "@babel/plugin-transform-arrow-functions": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.22.5.tgz", - "integrity": "sha512-26lTNXoVRdAnsaDXPpvCNUq+OVWEVC6bx7Vvz9rC53F2bagUWW4u4ii2+h8Fejfh7RYqPxn+libeFBBck9muEw==", + "node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.22.5" + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } }, - "@babel/plugin-transform-async-generator-functions": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.22.10.tgz", - "integrity": "sha512-eueE8lvKVzq5wIObKK/7dvoeKJ+xc6TvRn6aysIjS6pSCeLy7S/eVi7pEQknZqyqvzaNKdDtem8nUNTBgDVR2g==", - "dev": true, - "requires": { - "@babel/helper-environment-visitor": "^7.22.5", - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/helper-remap-async-to-generator": "^7.22.9", - "@babel/plugin-syntax-async-generators": "^7.8.4" - } + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "dev": true }, - "@babel/plugin-transform-async-to-generator": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.22.5.tgz", - "integrity": "sha512-b1A8D8ZzE/VhNDoV1MSJTnpKkCG5bJo+19R4o4oy03zM7ws8yEMK755j61Dc3EyvdysbqH5BOOTquJ7ZX9C6vQ==", + "node_modules/write-file-atomic": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", + "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", "dev": true, - "requires": { - "@babel/helper-module-imports": "^7.22.5", - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/helper-remap-async-to-generator": "^7.22.5" + "dependencies": { + "imurmurhash": "^0.1.4", + "is-typedarray": "^1.0.0", + "signal-exit": "^3.0.2", + "typedarray-to-buffer": "^3.1.5" } }, - "@babel/plugin-transform-block-scoped-functions": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.22.5.tgz", - "integrity": "sha512-tdXZ2UdknEKQWKJP1KMNmuF5Lx3MymtMN/pvA+p/VEkhK8jVcQ1fzSy8KM9qRYhAf2/lV33hoMPKI/xaI9sADA==", + "node_modules/write-json-file": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/write-json-file/-/write-json-file-4.3.0.tgz", + "integrity": "sha512-PxiShnxf0IlnQuMYOPPhPkhExoCQuTUNPOa/2JWCYTmBquU9njyyDuwRKN26IZBlp4yn1nt+Agh2HOOBl+55HQ==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.22.5" + "dependencies": { + "detect-indent": "^6.0.0", + "graceful-fs": "^4.1.15", + "is-plain-obj": "^2.0.0", + "make-dir": "^3.0.0", + "sort-keys": "^4.0.0", + "write-file-atomic": "^3.0.0" + }, + "engines": { + "node": ">=8.3" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "@babel/plugin-transform-block-scoping": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.22.10.tgz", - "integrity": "sha512-1+kVpGAOOI1Albt6Vse7c8pHzcZQdQKW+wJH+g8mCaszOdDVwRXa/slHPqIw+oJAJANTKDMuM2cBdV0Dg618Vg==", + "node_modules/ws": { + "version": "7.5.9", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz", + "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.22.5" + "engines": { + "node": ">=8.3.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } } }, - "@babel/plugin-transform-class-properties": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.22.5.tgz", - "integrity": "sha512-nDkQ0NfkOhPTq8YCLiWNxp1+f9fCobEjCb0n8WdbNUBc4IB5V7P1QnX9IjpSoquKrXF5SKojHleVNs2vGeHCHQ==", + "node_modules/xdg-basedir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz", + "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==", "dev": true, - "requires": { - "@babel/helper-create-class-features-plugin": "^7.22.5", - "@babel/helper-plugin-utils": "^7.22.5" + "engines": { + "node": ">=8" } }, - "@babel/plugin-transform-class-static-block": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.22.5.tgz", - "integrity": "sha512-SPToJ5eYZLxlnp1UzdARpOGeC2GbHvr9d/UV0EukuVx8atktg194oe+C5BqQ8jRTkgLRVOPYeXRSBg1IlMoVRA==", - "dev": true, - "requires": { - "@babel/helper-create-class-features-plugin": "^7.22.5", - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/plugin-syntax-class-static-block": "^7.14.5" - } + "node_modules/xml-name-validator": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz", + "integrity": "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==", + "dev": true }, - "@babel/plugin-transform-classes": { - "version": "7.22.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.22.6.tgz", - "integrity": "sha512-58EgM6nuPNG6Py4Z3zSuu0xWu2VfodiMi72Jt5Kj2FECmaYk1RrTXA45z6KBFsu9tRgwQDwIiY4FXTt+YsSFAQ==", + "node_modules/xmlchars": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz", + "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==", + "dev": true + }, + "node_modules/xss": { + "version": "1.0.14", + "resolved": "https://registry.npmjs.org/xss/-/xss-1.0.14.tgz", + "integrity": "sha512-og7TEJhXvn1a7kzZGQ7ETjdQVS2UfZyTlsEdDOqvQF7GoxNfY+0YLCzBy1kPdsDDx4QuNAonQPddpsn6Xl/7sw==", "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.22.5", - "@babel/helper-compilation-targets": "^7.22.6", - "@babel/helper-environment-visitor": "^7.22.5", - "@babel/helper-function-name": "^7.22.5", - "@babel/helper-optimise-call-expression": "^7.22.5", - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/helper-replace-supers": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.6", - "globals": "^11.1.0" - }, "dependencies": { - "globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "dev": true - } + "commander": "^2.20.3", + "cssfilter": "0.0.10" + }, + "bin": { + "xss": "bin/xss" + }, + "engines": { + "node": ">= 0.10.0" } }, - "@babel/plugin-transform-computed-properties": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.22.5.tgz", - "integrity": "sha512-4GHWBgRf0krxPX+AaPtgBAlTgTeZmqDynokHOX7aqqAB4tHs3U2Y02zH6ETFdLZGcg9UQSD1WCmkVrE9ErHeOg==", + "node_modules/xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/template": "^7.22.5" + "engines": { + "node": ">=0.4" } }, - "@babel/plugin-transform-destructuring": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.22.10.tgz", - "integrity": "sha512-dPJrL0VOyxqLM9sritNbMSGx/teueHF/htMKrPT7DNxccXxRDPYqlgPFFdr8u+F+qUZOkZoXue/6rL5O5GduEw==", + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.22.5" + "engines": { + "node": ">=10" } }, - "@babel/plugin-transform-dotall-regex": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.22.5.tgz", - "integrity": "sha512-5/Yk9QxCQCl+sOIB1WelKnVRxTJDSAIxtJLL2/pqL14ZVlbH0fUQUZa/T5/UnQtBNgghR7mfB8ERBKyKPCi7Vw==", + "node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true + }, + "node_modules/yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.22.5", - "@babel/helper-plugin-utils": "^7.22.5" + "engines": { + "node": ">= 6" } }, - "@babel/plugin-transform-duplicate-keys": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.22.5.tgz", - "integrity": "sha512-dEnYD+9BBgld5VBXHnF/DbYGp3fqGMsyxKbtD1mDyIA7AkTSpKXFhCVuj/oQVOoALfBs77DudA0BE4d5mcpmqw==", + "node_modules/yargs": { + "version": "17.7.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.1.tgz", + "integrity": "sha512-cwiTb08Xuv5fqF4AovYacTFNxk62th7LKJ6BL9IGUpTJrWoU7/7WdQGTP2SjKf1dUNBGzDd28p/Yfs/GI6JrLw==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.22.5" + "dependencies": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + }, + "engines": { + "node": ">=12" } }, - "@babel/plugin-transform-dynamic-import": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.22.5.tgz", - "integrity": "sha512-0MC3ppTB1AMxd8fXjSrbPa7LT9hrImt+/fcj+Pg5YMD7UQyWp/02+JWpdnCymmsXwIx5Z+sYn1bwCn4ZJNvhqQ==", + "node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/plugin-syntax-dynamic-import": "^7.8.3" + "engines": { + "node": ">=12" } }, - "@babel/plugin-transform-exponentiation-operator": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.22.5.tgz", - "integrity": "sha512-vIpJFNM/FjZ4rh1myqIya9jXwrwwgFRHPjT3DkUA9ZLHuzox8jiXkOLvwm1H+PQIP3CqfC++WPKeuDi0Sjdj1g==", + "node_modules/yauzl": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", + "integrity": "sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==", "dev": true, - "requires": { - "@babel/helper-builder-binary-assignment-operator-visitor": "^7.22.5", - "@babel/helper-plugin-utils": "^7.22.5" + "dependencies": { + "buffer-crc32": "~0.2.3", + "fd-slicer": "~1.1.0" } }, - "@babel/plugin-transform-export-namespace-from": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.22.5.tgz", - "integrity": "sha512-X4hhm7FRnPgd4nDA4b/5V280xCx6oL7Oob5+9qVS5C13Zq4bh1qq7LU0GgRU6b5dBWBvhGaXYVB4AcN6+ol6vg==", + "node_modules/yn": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", + "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/plugin-syntax-export-namespace-from": "^7.8.3" + "engines": { + "node": ">=6" } }, - "@babel/plugin-transform-for-of": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.22.5.tgz", - "integrity": "sha512-3kxQjX1dU9uudwSshyLeEipvrLjBCVthCgeTp6CzE/9JYrlAIaeekVxRpCWsDDfYTfRZRoCeZatCQvwo+wvK8A==", + "node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.22.5" + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } - }, - "@babel/plugin-transform-function-name": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.22.5.tgz", - "integrity": "sha512-UIzQNMS0p0HHiQm3oelztj+ECwFnj+ZRV4KnguvlsD2of1whUeM6o7wGNj6oLwcDoAXQ8gEqfgC24D+VdIcevg==", + } + }, + "dependencies": { + "@ampproject/remapping": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", + "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", "dev": true, "requires": { - "@babel/helper-compilation-targets": "^7.22.5", - "@babel/helper-function-name": "^7.22.5", - "@babel/helper-plugin-utils": "^7.22.5" + "@jridgewell/gen-mapping": "^0.1.0", + "@jridgewell/trace-mapping": "^0.3.9" } }, - "@babel/plugin-transform-json-strings": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.22.5.tgz", - "integrity": "sha512-DuCRB7fu8MyTLbEQd1ew3R85nx/88yMoqo2uPSjevMj3yoN7CDM8jkgrY0wmVxfJZyJ/B9fE1iq7EQppWQmR5A==", + "@babel/code-frame": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.10.tgz", + "integrity": "sha512-/KKIMG4UEL35WmI9OlvMhurwtytjvXoFcGNrOvyG9zIzA8YmPjVtIZUf7b05+TPO7G7/GEmLHDaoCgACHl9hhA==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/plugin-syntax-json-strings": "^7.8.3" + "@babel/highlight": "^7.22.10", + "chalk": "^2.4.2" + }, + "dependencies": { + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } } }, - "@babel/plugin-transform-literals": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.22.5.tgz", - "integrity": "sha512-fTLj4D79M+mepcw3dgFBTIDYpbcB9Sm0bpm4ppXPaO+U+PKFFyV9MGRvS0gvGw62sd10kT5lRMKXAADb9pWy8g==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.22.5" - } + "@babel/compat-data": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.22.9.tgz", + "integrity": "sha512-5UamI7xkUcJ3i9qVDS+KFDEK8/7oJ55/sJMB1Ge7IEapr7KfdfV/HErR+koZwOfd+SgtFKOKRhRakdg++DcJpQ==", + "dev": true }, - "@babel/plugin-transform-logical-assignment-operators": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.22.5.tgz", - "integrity": "sha512-MQQOUW1KL8X0cDWfbwYP+TbVbZm16QmQXJQ+vndPtH/BoO0lOKpVoEDMI7+PskYxH+IiE0tS8xZye0qr1lGzSA==", + "@babel/core": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.22.10.tgz", + "integrity": "sha512-fTmqbbUBAwCcre6zPzNngvsI0aNrPZe77AeqvDxWM9Nm+04RrJ3CAmGHA9f7lJQY6ZMhRztNemy4uslDxTX4Qw==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.22.10", + "@babel/generator": "^7.22.10", + "@babel/helper-compilation-targets": "^7.22.10", + "@babel/helper-module-transforms": "^7.22.9", + "@babel/helpers": "^7.22.10", + "@babel/parser": "^7.22.10", + "@babel/template": "^7.22.5", + "@babel/traverse": "^7.22.10", + "@babel/types": "^7.22.10", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.2", + "semver": "^6.3.1" + }, + "dependencies": { + "semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true + } } }, - "@babel/plugin-transform-member-expression-literals": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.22.5.tgz", - "integrity": "sha512-RZEdkNtzzYCFl9SE9ATaUMTj2hqMb4StarOJLrZRbqqU4HSBE7UlBw9WBWQiDzrJZJdUWiMTVDI6Gv/8DPvfew==", + "@babel/eslint-parser": { + "version": "7.19.1", + "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.19.1.tgz", + "integrity": "sha512-AqNf2QWt1rtu2/1rLswy6CDP7H9Oh3mMhk177Y67Rg8d7RD9WfOLLv8CGn6tisFvS2htm86yIe1yLF6I1UDaGQ==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.22.5" + "@nicolo-ribaudo/eslint-scope-5-internals": "5.1.1-v1", + "eslint-visitor-keys": "^2.1.0", + "semver": "^6.3.0" + }, + "dependencies": { + "eslint-visitor-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "dev": true + }, + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } } }, - "@babel/plugin-transform-modules-amd": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.22.5.tgz", - "integrity": "sha512-R+PTfLTcYEmb1+kK7FNkhQ1gP4KgjpSO6HfH9+f8/yfp2Nt3ggBjiVpRwmwTlfqZLafYKJACy36yDXlEmI9HjQ==", + "@babel/generator": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.22.10.tgz", + "integrity": "sha512-79KIf7YiWjjdZ81JnLujDRApWtl7BxTqWD88+FFdQEIOG8LJ0etDOM7CXuIgGJa55sGOwZVwuEsaLEm0PJ5/+A==", "dev": true, "requires": { - "@babel/helper-module-transforms": "^7.22.5", - "@babel/helper-plugin-utils": "^7.22.5" + "@babel/types": "^7.22.10", + "@jridgewell/gen-mapping": "^0.3.2", + "@jridgewell/trace-mapping": "^0.3.17", + "jsesc": "^2.5.1" + }, + "dependencies": { + "@jridgewell/gen-mapping": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", + "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "dev": true, + "requires": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + } + } } }, - "@babel/plugin-transform-modules-commonjs": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.22.5.tgz", - "integrity": "sha512-B4pzOXj+ONRmuaQTg05b3y/4DuFz3WcCNAXPLb2Q0GT0TrGKGxNKV4jwsXts+StaM0LQczZbOpj8o1DLPDJIiA==", + "@babel/helper-compilation-targets": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.10.tgz", + "integrity": "sha512-JMSwHD4J7SLod0idLq5PKgI+6g/hLD/iuWBq08ZX49xE14VpVEojJ5rHWptpirV2j020MvypRLAXAO50igCJ5Q==", "dev": true, "requires": { - "@babel/helper-module-transforms": "^7.22.5", - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/helper-simple-access": "^7.22.5" + "@babel/compat-data": "^7.22.9", + "@babel/helper-validator-option": "^7.22.5", + "browserslist": "^4.21.9", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "dependencies": { + "semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true + } } }, - "@babel/plugin-transform-modules-systemjs": { + "@babel/helper-environment-visitor": { "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.22.5.tgz", - "integrity": "sha512-emtEpoaTMsOs6Tzz+nbmcePl6AKVtS1yC4YNAeMun9U8YCsgadPNxnOPQ8GhHFB2qdx+LZu9LgoC0Lthuu05DQ==", - "dev": true, - "requires": { - "@babel/helper-hoist-variables": "^7.22.5", - "@babel/helper-module-transforms": "^7.22.5", - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/helper-validator-identifier": "^7.22.5" - } + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.5.tgz", + "integrity": "sha512-XGmhECfVA/5sAt+H+xpSg0mfrHq6FzNr9Oxh7PSEBBRUb/mL7Kz3NICXb194rCqAEdxkhPT1a88teizAFyvk8Q==", + "dev": true }, - "@babel/plugin-transform-modules-umd": { + "@babel/helper-function-name": { "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.22.5.tgz", - "integrity": "sha512-+S6kzefN/E1vkSsKx8kmQuqeQsvCKCd1fraCM7zXm4SFoggI099Tr4G8U81+5gtMdUeMQ4ipdQffbKLX0/7dBQ==", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.22.5.tgz", + "integrity": "sha512-wtHSq6jMRE3uF2otvfuD3DIvVhOsSNshQl0Qrd7qC9oQJzHvOL4qQXlQn2916+CXGywIjpGuIkoyZRRxHPiNQQ==", "dev": true, "requires": { - "@babel/helper-module-transforms": "^7.22.5", - "@babel/helper-plugin-utils": "^7.22.5" + "@babel/template": "^7.22.5", + "@babel/types": "^7.22.5" } }, - "@babel/plugin-transform-named-capturing-groups-regex": { + "@babel/helper-hoist-variables": { "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.22.5.tgz", - "integrity": "sha512-YgLLKmS3aUBhHaxp5hi1WJTgOUb/NCuDHzGT9z9WTt3YG+CPRhJs6nprbStx6DnWM4dh6gt7SU3sZodbZ08adQ==", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz", + "integrity": "sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==", "dev": true, "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.22.5", - "@babel/helper-plugin-utils": "^7.22.5" + "@babel/types": "^7.22.5" } }, - "@babel/plugin-transform-new-target": { + "@babel/helper-module-imports": { "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.22.5.tgz", - "integrity": "sha512-AsF7K0Fx/cNKVyk3a+DW0JLo+Ua598/NxMRvxDnkpCIGFh43+h/v2xyhRUYf6oD8gE4QtL83C7zZVghMjHd+iw==", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.5.tgz", + "integrity": "sha512-8Dl6+HD/cKifutF5qGd/8ZJi84QeAKh+CEe1sBzz8UayBBGg1dAIJrdHOcOM5b2MpzWL2yuotJTtGjETq0qjXg==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.22.5" + "@babel/types": "^7.22.5" } }, - "@babel/plugin-transform-nullish-coalescing-operator": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.22.5.tgz", - "integrity": "sha512-6CF8g6z1dNYZ/VXok5uYkkBBICHZPiGEl7oDnAx2Mt1hlHVHOSIKWJaXHjQJA5VB43KZnXZDIexMchY4y2PGdA==", + "@babel/helper-module-transforms": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.22.9.tgz", + "integrity": "sha512-t+WA2Xn5K+rTeGtC8jCsdAH52bjggG5TKRuRrAGNM/mjIbO4GxvlLMFOEz9wXY5I2XQ60PMFsAG2WIcG82dQMQ==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-module-imports": "^7.22.5", + "@babel/helper-simple-access": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "@babel/helper-validator-identifier": "^7.22.5" } }, - "@babel/plugin-transform-numeric-separator": { + "@babel/helper-plugin-utils": { "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.22.5.tgz", - "integrity": "sha512-NbslED1/6M+sXiwwtcAB/nieypGw02Ejf4KtDeMkCEpP6gWFMX1wI9WKYua+4oBneCCEmulOkRpwywypVZzs/g==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/plugin-syntax-numeric-separator": "^7.10.4" - } + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.22.5.tgz", + "integrity": "sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==", + "dev": true }, - "@babel/plugin-transform-object-rest-spread": { + "@babel/helper-simple-access": { "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.22.5.tgz", - "integrity": "sha512-Kk3lyDmEslH9DnvCDA1s1kkd3YWQITiBOHngOtDL9Pt6BZjzqb6hiOlb8VfjiiQJ2unmegBqZu0rx5RxJb5vmQ==", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz", + "integrity": "sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==", "dev": true, "requires": { - "@babel/compat-data": "^7.22.5", - "@babel/helper-compilation-targets": "^7.22.5", - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-transform-parameters": "^7.22.5" + "@babel/types": "^7.22.5" } }, - "@babel/plugin-transform-object-super": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.22.5.tgz", - "integrity": "sha512-klXqyaT9trSjIUrcsYIfETAzmOEZL3cBYqOYLJxBHfMFFggmXOv+NYSX/Jbs9mzMVESw/WycLFPRx8ba/b2Ipw==", + "@babel/helper-split-export-declaration": { + "version": "7.22.6", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz", + "integrity": "sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/helper-replace-supers": "^7.22.5" + "@babel/types": "^7.22.5" } }, - "@babel/plugin-transform-optional-catch-binding": { + "@babel/helper-string-parser": { "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.22.5.tgz", - "integrity": "sha512-pH8orJahy+hzZje5b8e2QIlBWQvGpelS76C63Z+jhZKsmzfNaPQ+LaW6dcJ9bxTpo1mtXbgHwy765Ro3jftmUg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" - } - }, - "@babel/plugin-transform-optional-chaining": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.22.10.tgz", - "integrity": "sha512-MMkQqZAZ+MGj+jGTG3OTuhKeBpNcO+0oCEbrGNEaOmiEn+1MzRyQlYsruGiU8RTK3zV6XwrVJTmwiDOyYK6J9g==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", - "@babel/plugin-syntax-optional-chaining": "^7.8.3" - } + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz", + "integrity": "sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==", + "dev": true }, - "@babel/plugin-transform-parameters": { + "@babel/helper-validator-identifier": { "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.22.5.tgz", - "integrity": "sha512-AVkFUBurORBREOmHRKo06FjHYgjrabpdqRSwq6+C7R5iTCZOsM4QbcB27St0a4U6fffyAOqh3s/qEfybAhfivg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.22.5" - } + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.5.tgz", + "integrity": "sha512-aJXu+6lErq8ltp+JhkJUfk1MTGyuA4v7f3pA+BJ5HLfNC6nAQ0Cpi9uOquUj8Hehg0aUiHzWQbOVJGao6ztBAQ==", + "dev": true }, - "@babel/plugin-transform-private-methods": { + "@babel/helper-validator-option": { "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.22.5.tgz", - "integrity": "sha512-PPjh4gyrQnGe97JTalgRGMuU4icsZFnWkzicB/fUtzlKUqvsWBKEpPPfr5a2JiyirZkHxnAqkQMO5Z5B2kK3fA==", - "dev": true, - "requires": { - "@babel/helper-create-class-features-plugin": "^7.22.5", - "@babel/helper-plugin-utils": "^7.22.5" - } + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.22.5.tgz", + "integrity": "sha512-R3oB6xlIVKUnxNUxbmgq7pKjxpru24zlimpE8WK47fACIlM0II/Hm1RS8IaOI7NgCr6LNS+jl5l75m20npAziw==", + "dev": true }, - "@babel/plugin-transform-private-property-in-object": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.22.5.tgz", - "integrity": "sha512-/9xnaTTJcVoBtSSmrVyhtSvO3kbqS2ODoh2juEU72c3aYonNF0OMGiaz2gjukyKM2wBBYJP38S4JiE0Wfb5VMQ==", + "@babel/helpers": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.22.10.tgz", + "integrity": "sha512-a41J4NW8HyZa1I1vAndrraTlPZ/eZoga2ZgS7fEr0tZJGVU4xqdE80CEm0CcNjha5EZ8fTBYLKHF0kqDUuAwQw==", "dev": true, "requires": { - "@babel/helper-annotate-as-pure": "^7.22.5", - "@babel/helper-create-class-features-plugin": "^7.22.5", - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/plugin-syntax-private-property-in-object": "^7.14.5" + "@babel/template": "^7.22.5", + "@babel/traverse": "^7.22.10", + "@babel/types": "^7.22.10" } }, - "@babel/plugin-transform-property-literals": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.22.5.tgz", - "integrity": "sha512-TiOArgddK3mK/x1Qwf5hay2pxI6wCZnvQqrFSqbtg1GLl2JcNMitVH/YnqjP+M31pLUeTfzY1HAXFDnUBV30rQ==", + "@babel/highlight": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.10.tgz", + "integrity": "sha512-78aUtVcT7MUscr0K5mIEnkwxPE0MaxkR5RxRwuHaQ+JuU5AmTPhY+do2mdzVTnIJJpyBglql2pehuBIWHug+WQ==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.22.5" + "@babel/helper-validator-identifier": "^7.22.5", + "chalk": "^2.4.2", + "js-tokens": "^4.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } } }, - "@babel/plugin-transform-regenerator": { + "@babel/parser": { "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.22.10.tgz", - "integrity": "sha512-F28b1mDt8KcT5bUyJc/U9nwzw6cV+UmTeRlXYIl2TNqMMJif0Jeey9/RQ3C4NOd2zp0/TRsDns9ttj2L523rsw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.22.5", - "regenerator-transform": "^0.15.2" - } - }, - "@babel/plugin-transform-reserved-words": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.22.5.tgz", - "integrity": "sha512-DTtGKFRQUDm8svigJzZHzb/2xatPc6TzNvAIJ5GqOKDsGFYgAskjRulbR/vGsPKq3OPqtexnz327qYpP57RFyA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.22.5" - } + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.22.10.tgz", + "integrity": "sha512-lNbdGsQb9ekfsnjFGhEiF4hfFqGgfOP3H3d27re3n+CGhNuTSUEQdfWk556sTLNTloczcdM5TYF2LhzmDQKyvQ==", + "dev": true }, - "@babel/plugin-transform-shorthand-properties": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.22.5.tgz", - "integrity": "sha512-vM4fq9IXHscXVKzDv5itkO1X52SmdFBFcMIBZ2FRn2nqVYqw6dBexUgMvAjHW+KXpPPViD/Yo3GrDEBaRC0QYA==", + "@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", + "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.22.5" + "@babel/helper-plugin-utils": "^7.8.0" } }, - "@babel/plugin-transform-spread": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.22.5.tgz", - "integrity": "sha512-5ZzDQIGyvN4w8+dMmpohL6MBo+l2G7tfC/O2Dg7/hjpgeWvUx8FzfeOKxGog9IimPa4YekaQ9PlDqTLOljkcxg==", + "@babel/plugin-syntax-bigint": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz", + "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5" + "@babel/helper-plugin-utils": "^7.8.0" } }, - "@babel/plugin-transform-sticky-regex": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.22.5.tgz", - "integrity": "sha512-zf7LuNpHG0iEeiyCNwX4j3gDg1jgt1k3ZdXBKbZSoA3BbGQGvMiSvfbZRR3Dr3aeJe3ooWFZxOOG3IRStYp2Bw==", + "@babel/plugin-syntax-class-properties": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", + "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.22.5" + "@babel/helper-plugin-utils": "^7.12.13" } }, - "@babel/plugin-transform-template-literals": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.22.5.tgz", - "integrity": "sha512-5ciOehRNf+EyUeewo8NkbQiUs4d6ZxiHo6BcBcnFlgiJfu16q0bQUw9Jvo0b0gBKFG1SMhDSjeKXSYuJLeFSMA==", + "@babel/plugin-syntax-import-meta": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", + "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.22.5" + "@babel/helper-plugin-utils": "^7.10.4" } }, - "@babel/plugin-transform-typeof-symbol": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.22.5.tgz", - "integrity": "sha512-bYkI5lMzL4kPii4HHEEChkD0rkc+nvnlR6+o/qdqR6zrm0Sv/nodmyLhlq2DO0YKLUNd2VePmPRjJXSBh9OIdA==", + "@babel/plugin-syntax-json-strings": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", + "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.22.5" + "@babel/helper-plugin-utils": "^7.8.0" } }, - "@babel/plugin-transform-typescript": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.22.10.tgz", - "integrity": "sha512-7++c8I/ymsDo4QQBAgbraXLzIM6jmfao11KgIBEYZRReWzNWH9NtNgJcyrZiXsOPh523FQm6LfpLyy/U5fn46A==", + "@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", + "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", "dev": true, "requires": { - "@babel/helper-annotate-as-pure": "^7.22.5", - "@babel/helper-create-class-features-plugin": "^7.22.10", - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/plugin-syntax-typescript": "^7.22.5" + "@babel/helper-plugin-utils": "^7.10.4" } }, - "@babel/plugin-transform-unicode-escapes": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.22.10.tgz", - "integrity": "sha512-lRfaRKGZCBqDlRU3UIFovdp9c9mEvlylmpod0/OatICsSfuQ9YFthRo1tpTkGsklEefZdqlEFdY4A2dwTb6ohg==", + "@babel/plugin-syntax-nullish-coalescing-operator": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", + "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.22.5" + "@babel/helper-plugin-utils": "^7.8.0" } }, - "@babel/plugin-transform-unicode-property-regex": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.22.5.tgz", - "integrity": "sha512-HCCIb+CbJIAE6sXn5CjFQXMwkCClcOfPCzTlilJ8cUatfzwHlWQkbtV0zD338u9dZskwvuOYTuuaMaA8J5EI5A==", + "@babel/plugin-syntax-numeric-separator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", + "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", "dev": true, "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.22.5", - "@babel/helper-plugin-utils": "^7.22.5" + "@babel/helper-plugin-utils": "^7.10.4" } }, - "@babel/plugin-transform-unicode-regex": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.22.5.tgz", - "integrity": "sha512-028laaOKptN5vHJf9/Arr/HiJekMd41hOEZYvNsrsXqJ7YPYuX2bQxh31fkZzGmq3YqHRJzYFFAVYvKfMPKqyg==", + "@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", + "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", "dev": true, "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.22.5", - "@babel/helper-plugin-utils": "^7.22.5" + "@babel/helper-plugin-utils": "^7.8.0" } }, - "@babel/plugin-transform-unicode-sets-regex": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.22.5.tgz", - "integrity": "sha512-lhMfi4FC15j13eKrh3DnYHjpGj6UKQHtNKTbtc1igvAhRy4+kLhV07OpLcsN0VgDEw/MjAvJO4BdMJsHwMhzCg==", + "@babel/plugin-syntax-optional-catch-binding": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", + "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", "dev": true, "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.22.5", - "@babel/helper-plugin-utils": "^7.22.5" + "@babel/helper-plugin-utils": "^7.8.0" } }, - "@babel/preset-env": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.22.10.tgz", - "integrity": "sha512-riHpLb1drNkpLlocmSyEg4oYJIQFeXAK/d7rI6mbD0XsvoTOOweXDmQPG/ErxsEhWk3rl3Q/3F6RFQlVFS8m0A==", + "@babel/plugin-syntax-optional-chaining": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", + "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", "dev": true, "requires": { - "@babel/compat-data": "^7.22.9", - "@babel/helper-compilation-targets": "^7.22.10", - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/helper-validator-option": "^7.22.5", - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.22.5", - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.22.5", - "@babel/plugin-proposal-private-property-in-object": "7.21.0-placeholder-for-preset-env.2", - "@babel/plugin-syntax-async-generators": "^7.8.4", - "@babel/plugin-syntax-class-properties": "^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-import-assertions": "^7.22.5", - "@babel/plugin-syntax-import-attributes": "^7.22.5", - "@babel/plugin-syntax-import-meta": "^7.10.4", - "@babel/plugin-syntax-json-strings": "^7.8.3", - "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", - "@babel/plugin-syntax-numeric-separator": "^7.10.4", - "@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.5", - "@babel/plugin-syntax-top-level-await": "^7.14.5", - "@babel/plugin-syntax-unicode-sets-regex": "^7.18.6", - "@babel/plugin-transform-arrow-functions": "^7.22.5", - "@babel/plugin-transform-async-generator-functions": "^7.22.10", - "@babel/plugin-transform-async-to-generator": "^7.22.5", - "@babel/plugin-transform-block-scoped-functions": "^7.22.5", - "@babel/plugin-transform-block-scoping": "^7.22.10", - "@babel/plugin-transform-class-properties": "^7.22.5", - "@babel/plugin-transform-class-static-block": "^7.22.5", - "@babel/plugin-transform-classes": "^7.22.6", - "@babel/plugin-transform-computed-properties": "^7.22.5", - "@babel/plugin-transform-destructuring": "^7.22.10", - "@babel/plugin-transform-dotall-regex": "^7.22.5", - "@babel/plugin-transform-duplicate-keys": "^7.22.5", - "@babel/plugin-transform-dynamic-import": "^7.22.5", - "@babel/plugin-transform-exponentiation-operator": "^7.22.5", - "@babel/plugin-transform-export-namespace-from": "^7.22.5", - "@babel/plugin-transform-for-of": "^7.22.5", - "@babel/plugin-transform-function-name": "^7.22.5", - "@babel/plugin-transform-json-strings": "^7.22.5", - "@babel/plugin-transform-literals": "^7.22.5", - "@babel/plugin-transform-logical-assignment-operators": "^7.22.5", - "@babel/plugin-transform-member-expression-literals": "^7.22.5", - "@babel/plugin-transform-modules-amd": "^7.22.5", - "@babel/plugin-transform-modules-commonjs": "^7.22.5", - "@babel/plugin-transform-modules-systemjs": "^7.22.5", - "@babel/plugin-transform-modules-umd": "^7.22.5", - "@babel/plugin-transform-named-capturing-groups-regex": "^7.22.5", - "@babel/plugin-transform-new-target": "^7.22.5", - "@babel/plugin-transform-nullish-coalescing-operator": "^7.22.5", - "@babel/plugin-transform-numeric-separator": "^7.22.5", - "@babel/plugin-transform-object-rest-spread": "^7.22.5", - "@babel/plugin-transform-object-super": "^7.22.5", - "@babel/plugin-transform-optional-catch-binding": "^7.22.5", - "@babel/plugin-transform-optional-chaining": "^7.22.10", - "@babel/plugin-transform-parameters": "^7.22.5", - "@babel/plugin-transform-private-methods": "^7.22.5", - "@babel/plugin-transform-private-property-in-object": "^7.22.5", - "@babel/plugin-transform-property-literals": "^7.22.5", - "@babel/plugin-transform-regenerator": "^7.22.10", - "@babel/plugin-transform-reserved-words": "^7.22.5", - "@babel/plugin-transform-shorthand-properties": "^7.22.5", - "@babel/plugin-transform-spread": "^7.22.5", - "@babel/plugin-transform-sticky-regex": "^7.22.5", - "@babel/plugin-transform-template-literals": "^7.22.5", - "@babel/plugin-transform-typeof-symbol": "^7.22.5", - "@babel/plugin-transform-unicode-escapes": "^7.22.10", - "@babel/plugin-transform-unicode-property-regex": "^7.22.5", - "@babel/plugin-transform-unicode-regex": "^7.22.5", - "@babel/plugin-transform-unicode-sets-regex": "^7.22.5", - "@babel/preset-modules": "0.1.6-no-external-plugins", - "@babel/types": "^7.22.10", - "babel-plugin-polyfill-corejs2": "^0.4.5", - "babel-plugin-polyfill-corejs3": "^0.8.3", - "babel-plugin-polyfill-regenerator": "^0.5.2", - "core-js-compat": "^3.31.0", - "semver": "^6.3.1" - }, - "dependencies": { - "semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true - } + "@babel/helper-plugin-utils": "^7.8.0" } }, - "@babel/preset-modules": { - "version": "0.1.6-no-external-plugins", - "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.6-no-external-plugins.tgz", - "integrity": "sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==", + "@babel/plugin-syntax-top-level-await": { + "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.0.0", - "@babel/types": "^7.4.4", - "esutils": "^2.0.2" + "@babel/helper-plugin-utils": "^7.14.5" } }, - "@babel/preset-typescript": { + "@babel/plugin-syntax-typescript": { "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.22.5.tgz", - "integrity": "sha512-YbPaal9LxztSGhmndR46FmAbkJ/1fAsw293tSU+I5E5h+cnJ3d4GTwyUgGYmOXJYdGA+uNePle4qbaRzj2NISQ==", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.22.5.tgz", + "integrity": "sha512-1mS2o03i7t1c6VzH6fdQ3OA8tcEIxwG18zIPRp+UY1Ihv6W+XZzBCVxExF9upussPXJ0xE9XRHwMoNs1ep/nRQ==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/helper-validator-option": "^7.22.5", - "@babel/plugin-syntax-jsx": "^7.22.5", - "@babel/plugin-transform-modules-commonjs": "^7.22.5", - "@babel/plugin-transform-typescript": "^7.22.5" + "@babel/helper-plugin-utils": "^7.22.5" } }, - "@babel/regjsgen": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/@babel/regjsgen/-/regjsgen-0.8.0.tgz", - "integrity": "sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==", - "dev": true - }, "@babel/runtime": { "version": "7.20.13", "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.20.13.tgz", @@ -16228,15 +13377,6 @@ } } }, - "@jest/schemas": { - "version": "29.6.0", - "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.0.tgz", - "integrity": "sha512-rxLjXyJBTL4LQeJW3aKo0M/+GkCOXsO+8i9Iu7eDb6KwtP65ayoDsitrdPBtujxQ88k4wI2FNYfa6TOGwSn6cQ==", - "dev": true, - "requires": { - "@sinclair/typebox": "^0.27.8" - } - }, "@jest/source-map": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-27.5.1.tgz", @@ -16381,61 +13521,6 @@ } } }, - "@jest/transform": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-29.6.2.tgz", - "integrity": "sha512-ZqCqEISr58Ce3U+buNFJYUktLJZOggfyvR+bZMaiV1e8B1SIvJbwZMrYz3gx/KAPn9EXmOmN+uB08yLCjWkQQg==", - "dev": true, - "requires": { - "@babel/core": "^7.11.6", - "@jest/types": "^29.6.1", - "@jridgewell/trace-mapping": "^0.3.18", - "babel-plugin-istanbul": "^6.1.1", - "chalk": "^4.0.0", - "convert-source-map": "^2.0.0", - "fast-json-stable-stringify": "^2.1.0", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^29.6.2", - "jest-regex-util": "^29.4.3", - "jest-util": "^29.6.2", - "micromatch": "^4.0.4", - "pirates": "^4.0.4", - "slash": "^3.0.0", - "write-file-atomic": "^4.0.2" - }, - "dependencies": { - "convert-source-map": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", - "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", - "dev": true - }, - "write-file-atomic": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz", - "integrity": "sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==", - "dev": true, - "requires": { - "imurmurhash": "^0.1.4", - "signal-exit": "^3.0.7" - } - } - } - }, - "@jest/types": { - "version": "29.6.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.6.1.tgz", - "integrity": "sha512-tPKQNMPuXgvdOn2/Lg9HNfUvjYVGolt04Hp03f5hAk878uwOLikN+JzeLY0HcVgKgFl9Hs3EIqpu3WX27XNhnw==", - "dev": true, - "requires": { - "@jest/schemas": "^29.6.0", - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^17.0.8", - "chalk": "^4.0.0" - } - }, "@jridgewell/gen-mapping": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", @@ -16657,27 +13742,6 @@ "pako": "^1.0.10" } }, - "@puppeteer/browsers": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/@puppeteer/browsers/-/browsers-1.6.0.tgz", - "integrity": "sha512-R2ib8j329427jtKB/qlz0MJbwfJE/6I8ocJLiajsRqJ2PPI8DbjiNzC3lQZeISXEcjOBVhbG2RafN8SlHdcT+A==", - "dev": true, - "requires": { - "debug": "4.3.4", - "extract-zip": "2.0.1", - "progress": "2.0.3", - "proxy-agent": "6.3.0", - "tar-fs": "3.0.4", - "unbzip2-stream": "1.4.3", - "yargs": "17.7.1" - } - }, - "@sinclair/typebox": { - "version": "0.27.8", - "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz", - "integrity": "sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==", - "dev": true - }, "@sindresorhus/is": { "version": "0.14.0", "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz", @@ -16765,12 +13829,6 @@ "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==", "dev": true }, - "@tootallnate/quickjs-emscripten": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@tootallnate/quickjs-emscripten/-/quickjs-emscripten-0.23.0.tgz", - "integrity": "sha512-C5Mc6rdnsaJDjO3UpGW/CQTHtCKaYlScZTly4JIu97Jxo/odCiH0ITnDXSJPTOrEKk/ycSZ0AOgTmkDtkOsvIA==", - "dev": true - }, "@tsconfig/node10": { "version": "1.0.9", "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.9.tgz", @@ -16900,12 +13958,12 @@ } }, "@types/jest": { - "version": "27.0.3", - "resolved": "https://registry.npmjs.org/@types/jest/-/jest-27.0.3.tgz", - "integrity": "sha512-cmmwv9t7gBYt7hNKH5Spu7Kuu/DotGa+Ff+JGRKZ4db5eh8PnKS4LuebJ3YLUoyOyIHraTGyULn23YtEAm0VSg==", + "version": "27.5.2", + "resolved": "https://registry.npmjs.org/@types/jest/-/jest-27.5.2.tgz", + "integrity": "sha512-mpT8LJJ4CMeeahobofYWIjFo0xonRS/HfxnVEPMPFSQdGUt1uHCnoPT7Zhb+sjDU2wz0oKV0OLUR0WzrHNgfeA==", "dev": true, "requires": { - "jest-diff": "^27.0.0", + "jest-matcher-utils": "^27.0.0", "pretty-format": "^27.0.0" } }, @@ -16955,12 +14013,12 @@ "dev": true }, "@types/puppeteer": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/@types/puppeteer/-/puppeteer-7.0.4.tgz", - "integrity": "sha512-ja78vquZc8y+GM2al07GZqWDKQskQXygCDiu0e3uO0DMRKqE0MjrFBFmTulfPYzLB6WnL7Kl2tFPy0WXSpPomg==", + "version": "5.4.7", + "resolved": "https://registry.npmjs.org/@types/puppeteer/-/puppeteer-5.4.7.tgz", + "integrity": "sha512-JdGWZZYL0vKapXF4oQTC5hLVNfOgdPrqeZ1BiQnGk5cB7HeE91EWUiTdVSdQPobRN8rIcdffjiOgCYJ/S8QrnQ==", "dev": true, "requires": { - "puppeteer": "*" + "@types/node": "*" } }, "@types/raf": { @@ -16981,15 +14039,6 @@ "integrity": "sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw==", "dev": true }, - "@types/yargs": { - "version": "17.0.24", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.24.tgz", - "integrity": "sha512-6i0aC7jV6QzQB8ne1joVZ0eSFIstHsCrobmOtghM11yGlH0j43FKL2UhWdELkyps0zuf7qVTUVCCR+tgSlyLLw==", - "dev": true, - "requires": { - "@types/yargs-parser": "*" - } - }, "@types/yargs-parser": { "version": "21.0.0", "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.0.tgz", @@ -17183,12 +14232,12 @@ } }, "agent-base": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.0.tgz", - "integrity": "sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", "dev": true, "requires": { - "debug": "^4.3.4" + "debug": "4" } }, "ajv": { @@ -17319,15 +14368,6 @@ "es-shim-unscopables": "^1.0.0" } }, - "ast-types": { - "version": "0.13.4", - "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.13.4.tgz", - "integrity": "sha512-x1FCFnFifvYDDzTaLII71vG5uvDwgtmDTEVWAxrgeiR8VjMONcCXJx7E+USjDtHlwFmt9MysbqgF9b9Vjr6w+w==", - "dev": true, - "requires": { - "tslib": "^2.0.1" - } - }, "async": { "version": "3.2.4", "resolved": "https://registry.npmjs.org/async/-/async-3.2.4.tgz", @@ -17365,27 +14405,6 @@ "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==", "dev": true }, - "b4a": { - "version": "1.6.4", - "resolved": "https://registry.npmjs.org/b4a/-/b4a-1.6.4.tgz", - "integrity": "sha512-fpWrvyVHEKyeEvbKZTVOeZF3VSKKWtJxFIxX/jaVPf+cLbGUSitjb49pHLqPV2BUNNZ0LcoeEGfE/YCpyDYHIw==", - "dev": true - }, - "babel-jest": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-29.6.2.tgz", - "integrity": "sha512-BYCzImLos6J3BH/+HvUCHG1dTf2MzmAB4jaVxHV+29RZLjR29XuYTmsf2sdDwkrb+FczkGo3kOhE7ga6sI0P4A==", - "dev": true, - "requires": { - "@jest/transform": "^29.6.2", - "@types/babel__core": "^7.1.14", - "babel-plugin-istanbul": "^6.1.1", - "babel-preset-jest": "^29.5.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "slash": "^3.0.0" - } - }, "babel-plugin-istanbul": { "version": "6.1.1", "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", @@ -17399,56 +14418,6 @@ "test-exclude": "^6.0.0" } }, - "babel-plugin-jest-hoist": { - "version": "29.5.0", - "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.5.0.tgz", - "integrity": "sha512-zSuuuAlTMT4mzLj2nPnUm6fsE6270vdOfnpbJ+RmruU75UhLFvL0N2NgI7xpeS7NaB6hGqmd5pVpGTDYvi4Q3w==", - "dev": true, - "requires": { - "@babel/template": "^7.3.3", - "@babel/types": "^7.3.3", - "@types/babel__core": "^7.1.14", - "@types/babel__traverse": "^7.0.6" - } - }, - "babel-plugin-polyfill-corejs2": { - "version": "0.4.5", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.5.tgz", - "integrity": "sha512-19hwUH5FKl49JEsvyTcoHakh6BE0wgXLLptIyKZ3PijHc/Ci521wygORCUCCred+E/twuqRyAkE02BAWPmsHOg==", - "dev": true, - "requires": { - "@babel/compat-data": "^7.22.6", - "@babel/helper-define-polyfill-provider": "^0.4.2", - "semver": "^6.3.1" - }, - "dependencies": { - "semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true - } - } - }, - "babel-plugin-polyfill-corejs3": { - "version": "0.8.3", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.8.3.tgz", - "integrity": "sha512-z41XaniZL26WLrvjy7soabMXrfPWARN25PZoriDEiLMxAp50AUW3t35BGQUMg5xK3UrpVTtagIDklxYa+MhiNA==", - "dev": true, - "requires": { - "@babel/helper-define-polyfill-provider": "^0.4.2", - "core-js-compat": "^3.31.0" - } - }, - "babel-plugin-polyfill-regenerator": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.5.2.tgz", - "integrity": "sha512-tAlOptU0Xj34V1Y2PNTL4Y0FOJMDB6bZmoW39FeCQIhigGLkqu3Fj6uiXpxIf6Ij274ENdYx64y6Au+ZKlb1IA==", - "dev": true, - "requires": { - "@babel/helper-define-polyfill-provider": "^0.4.2" - } - }, "babel-preset-current-node-syntax": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz", @@ -17469,16 +14438,6 @@ "@babel/plugin-syntax-top-level-await": "^7.8.3" } }, - "babel-preset-jest": { - "version": "29.5.0", - "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-29.5.0.tgz", - "integrity": "sha512-JOMloxOqdiBSxMAzjRaH023/vvcaSaec49zvg+2LmNsktC7ei39LTJGw02J+9uUtTZUq6xbLyJ4dxe9sSmIuAg==", - "dev": true, - "requires": { - "babel-plugin-jest-hoist": "^29.5.0", - "babel-preset-current-node-syntax": "^1.0.0" - } - }, "balanced-match": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", @@ -17497,12 +14456,6 @@ "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", "dev": true }, - "basic-ftp": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/basic-ftp/-/basic-ftp-5.0.3.tgz", - "integrity": "sha512-QHX8HLlncOLpy54mh+k/sWIFd0ThmRqwe9ZjELybGZK+tZ8rUb9VO0saKJUROTbE+KhzDUT7xziGpGrW8Kmd+g==", - "dev": true - }, "before-after-hook": { "version": "2.2.3", "resolved": "https://registry.npmjs.org/before-after-hook/-/before-after-hook-2.2.3.tgz", @@ -17694,9 +14647,9 @@ "dev": true }, "caniuse-lite": { - "version": "1.0.30001520", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001520.tgz", - "integrity": "sha512-tahF5O9EiiTzwTUqAeFjIZbn4Dnqxzz7ktrgGlMYNLH43Ul26IgTMH/zvL3DG0lZxBYnlT04axvInszUsZULdA==", + "version": "1.0.30001521", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001521.tgz", + "integrity": "sha512-fnx1grfpEOvDGH+V17eccmNjucGUnCbP6KL+l5KqBIerp26WK/+RQ7CIDE37KGJjaPyqWXXlFUyKiWmvdNNKmQ==", "dev": true }, "canvg": { @@ -17788,14 +14741,11 @@ } } }, - "chromium-bidi": { - "version": "0.4.20", - "resolved": "https://registry.npmjs.org/chromium-bidi/-/chromium-bidi-0.4.20.tgz", - "integrity": "sha512-ruHgVZFEv00mAQMz1tQjfjdG63jiPWrQPF6HLlX2ucqLqVTJoWngeBEKHaJ6n1swV/HSvgnBNbtTRIlcVyW3Fw==", - "dev": true, - "requires": { - "mitt": "3.0.1" - } + "chownr": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", + "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==", + "dev": true }, "ci-info": { "version": "3.7.1", @@ -17991,15 +14941,6 @@ "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", "dev": true }, - "core-js-compat": { - "version": "3.32.0", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.32.0.tgz", - "integrity": "sha512-7a9a3D1k4UCVKnLhrgALyFcP7YCsLOQIxPd0dKjf/6GuPcgyiGP70ewWdCGrSK7evyhymi0qO4EqCmSJofDeYw==", - "dev": true, - "requires": { - "browserslist": "^4.21.9" - } - }, "core-util-is": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", @@ -18026,12 +14967,45 @@ "dev": true }, "cross-fetch": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-4.0.0.tgz", - "integrity": "sha512-e4a5N8lVvuLgAWgnCrLr2PP0YyDOTHa9H/Rj54dirp61qXnNq46m82bRhNqIA5VccJtWBvPTFRV3TtvHUKPB1g==", + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.1.5.tgz", + "integrity": "sha512-lvb1SBsI0Z7GDwmuid+mU3kWVBwTVUbe7S0H52yaaAdQOXq2YktTCZdlAcNKFzE6QtRz0snpw9bNiPeOIkkQvw==", "dev": true, "requires": { - "node-fetch": "^2.6.12" + "node-fetch": "2.6.7" + }, + "dependencies": { + "node-fetch": { + "version": "2.6.7", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", + "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", + "dev": true, + "requires": { + "whatwg-url": "^5.0.0" + } + }, + "tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", + "dev": true + }, + "webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", + "dev": true + }, + "whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "dev": true, + "requires": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } + } } }, "cross-spawn": { @@ -18095,12 +15069,6 @@ } } }, - "data-uri-to-buffer": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-5.0.1.tgz", - "integrity": "sha512-a9l6T1qqDogvvnw0nKlfZzqsyikEBZBClF39V3TFoKhDtGBqHu2HkuomJc02j5zft8zrUaXEuoicLeW54RkzPg==", - "dev": true - }, "data-urls": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-2.0.0.tgz", @@ -18197,17 +15165,6 @@ "integrity": "sha512-hsBd2qSVCRE+5PmNdHt1uzyrFu5d3RwmFDKzyNZMFq/EwDNJF7Ee5+D5oEKF0hU6LhtoUF1macFvOe4AskQC1Q==", "dev": true }, - "degenerator": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/degenerator/-/degenerator-5.0.1.tgz", - "integrity": "sha512-TllpMR/t0M5sqCXfj85i4XaAzxmS5tVA16dqvdkMwGmzI+dXLXnw3J+3Vdv7VKw+ThlTMboK6i9rnZ6Nntj5CQ==", - "dev": true, - "requires": { - "ast-types": "^0.13.4", - "escodegen": "^2.1.0", - "esprima": "^4.0.1" - } - }, "delayed-stream": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", @@ -18244,9 +15201,9 @@ } }, "devtools-protocol": { - "version": "0.0.1147663", - "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.1147663.tgz", - "integrity": "sha512-hyWmRrexdhbZ1tcJUGpO95ivbRhWXz++F4Ko+n21AY5PNln2ovoJw+8ZMNDTtip+CNFQfrtLVh/w4009dXO/eQ==", + "version": "0.0.981744", + "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.981744.tgz", + "integrity": "sha512-0cuGS8+jhR67Fy7qG3i3Pc7Aw494sb9yG9QgpG97SFVWwolgYjlhJg7n+UaHxOQT30d1TYu/EYe9k01ivLErIg==", "dev": true }, "didyoumean": { @@ -18889,12 +15846,6 @@ "integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==", "dev": true }, - "fast-fifo": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/fast-fifo/-/fast-fifo-1.3.0.tgz", - "integrity": "sha512-IgfweLvEpwyA4WgiQe9Nx6VV2QkML2NkvZnk1oKnIzXgXdWxuhF7zw4DvLTPZJn6PIUneiAXPF24QmoEqHTjyw==", - "dev": true - }, "fast-glob": { "version": "3.2.12", "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz", @@ -19070,24 +16021,11 @@ "integrity": "sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==", "dev": true }, - "fs-extra": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", - "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", - "dev": true, - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - }, - "dependencies": { - "universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "dev": true - } - } + "fs-constants": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", + "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==", + "dev": true }, "fs.realpath": { "version": "1.0.0", @@ -19190,18 +16128,6 @@ "get-intrinsic": "^1.1.1" } }, - "get-uri": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/get-uri/-/get-uri-6.0.1.tgz", - "integrity": "sha512-7ZqONUVqaabogsYNWlYj0t3YZaL6dhuEueZXGF+/YVmf6dHmaFg8/6psJKqhx9QykIDKzpGcy2cn4oV4YC7V/Q==", - "dev": true, - "requires": { - "basic-ftp": "^5.0.2", - "data-uri-to-buffer": "^5.0.1", - "debug": "^4.3.4", - "fs-extra": "^8.1.0" - } - }, "gh-release": { "version": "6.0.4", "resolved": "https://registry.npmjs.org/gh-release/-/gh-release-6.0.4.tgz", @@ -19487,22 +16413,23 @@ "dev": true }, "http-proxy-agent": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.0.tgz", - "integrity": "sha512-+ZT+iBxVUQ1asugqnD6oWoRiS25AkjNfG085dKJGtGxkdwLQrMKU5wJr2bOOFAXzKcTuqq+7fZlTMgG3SRfIYQ==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", + "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", "dev": true, "requires": { - "agent-base": "^7.1.0", - "debug": "^4.3.4" + "@tootallnate/once": "1", + "agent-base": "6", + "debug": "4" } }, "https-proxy-agent": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.1.tgz", - "integrity": "sha512-Eun8zV0kcYS1g19r78osiQLEFIRspRUDd9tIfBCTBPBeMieF/EsJNL8VI3xOIdYRDEkjQnqOYPsZ2DsWsVsFwQ==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", "dev": true, "requires": { - "agent-base": "^7.0.2", + "agent-base": "6", "debug": "4" } }, @@ -19668,12 +16595,6 @@ "integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==", "dev": true }, - "ip": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.8.tgz", - "integrity": "sha512-PuExPYUiu6qMBQb4l06ecm6T6ujzhmh+MeJcW9wa89PoAz5pvd4zPgN5WJV104mb6S2T1AwNIAaB70JNrLQWhg==", - "dev": true - }, "is-array-buffer": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.1.tgz", @@ -20041,14 +16962,14 @@ } }, "jest": { - "version": "27.0.3", - "resolved": "https://registry.npmjs.org/jest/-/jest-27.0.3.tgz", - "integrity": "sha512-0G9+QqXFIZWgf5rs3yllpaA+13ZawVHfyuhuCV1EnoFbX++rVMRrYWCAnk+dfhwyv9/VTQvn+XG969u8aPRsBg==", + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest/-/jest-27.5.1.tgz", + "integrity": "sha512-Yn0mADZB89zTtjkPJEXwrac3LHudkQMR+Paqa8uxJHCBr9agxztUifWCyiYrjhMPBoUVBjyny0I7XH6ozDr7QQ==", "dev": true, "requires": { - "@jest/core": "^27.0.3", + "@jest/core": "^27.5.1", "import-local": "^3.0.2", - "jest-cli": "^27.0.3" + "jest-cli": "^27.5.1" } }, "jest-changed-files": { @@ -20152,21 +17073,21 @@ } }, "jest-cli": { - "version": "27.4.5", - "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-27.4.5.tgz", - "integrity": "sha512-hrky3DSgE0u7sQxaCL7bdebEPHx5QzYmrGuUjaPLmPE8jx5adtvGuOlRspvMoVLTTDOHRnZDoRLYJuA+VCI7Hg==", + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-27.5.1.tgz", + "integrity": "sha512-Hc6HOOwYq4/74/c62dEE3r5elx8wjYqxY0r0G/nFrLDPMFRu6RA/u8qINOIkvhxG7mMQ5EJsOGfRpI8L6eFUVw==", "dev": true, "requires": { - "@jest/core": "^27.4.5", - "@jest/test-result": "^27.4.2", - "@jest/types": "^27.4.2", + "@jest/core": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", "chalk": "^4.0.0", "exit": "^0.1.2", - "graceful-fs": "^4.2.4", + "graceful-fs": "^4.2.9", "import-local": "^3.0.2", - "jest-config": "^27.4.5", - "jest-util": "^27.4.2", - "jest-validate": "^27.4.2", + "jest-config": "^27.5.1", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", "prompts": "^2.0.1", "yargs": "^16.2.0" }, @@ -20602,26 +17523,6 @@ "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", "dev": true }, - "jest-haste-map": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-29.6.2.tgz", - "integrity": "sha512-+51XleTDAAysvU8rT6AnS1ZJ+WHVNqhj1k6nTvN2PYP+HjU3kqlaKQ1Lnw3NYW3bm2r8vq82X0Z1nDDHZMzHVA==", - "dev": true, - "requires": { - "@jest/types": "^29.6.1", - "@types/graceful-fs": "^4.1.3", - "@types/node": "*", - "anymatch": "^3.0.3", - "fb-watchman": "^2.0.0", - "fsevents": "^2.3.2", - "graceful-fs": "^4.2.9", - "jest-regex-util": "^29.4.3", - "jest-util": "^29.6.2", - "jest-worker": "^29.6.2", - "micromatch": "^4.0.4", - "walker": "^1.0.8" - } - }, "jest-jasmine2": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-27.5.1.tgz", @@ -20789,12 +17690,6 @@ "dev": true, "requires": {} }, - "jest-regex-util": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-29.4.3.tgz", - "integrity": "sha512-O4FglZaMmWXbGHSQInfXewIsd1LMn9p3ZXB/6r4FOkyhX2/iP/soMG98jGvk/A3HAN78+5VWcBGO0BJAPRh4kg==", - "dev": true - }, "jest-resolve": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-27.5.1.tgz", @@ -21373,20 +18268,6 @@ } } }, - "jest-util": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.6.2.tgz", - "integrity": "sha512-3eX1qb6L88lJNCFlEADKOkjpXJQyZRiavX1INZ4tRnrBVr2COd3RgcTLyUiEXMNBlDU/cgYq6taUS0fExrWW4w==", - "dev": true, - "requires": { - "@jest/types": "^29.6.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - } - }, "jest-validate": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-27.5.1.tgz", @@ -21484,29 +18365,6 @@ } } }, - "jest-worker": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.6.2.tgz", - "integrity": "sha512-l3ccBOabTdkng8I/ORCkADz4eSMKejTYv1vB/Z83UiubqhC1oQ5Li6dWCyqOIvSifGjUBxuvxvlm6KGK2DtuAQ==", - "dev": true, - "requires": { - "@types/node": "*", - "jest-util": "^29.6.2", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" - }, - "dependencies": { - "supports-color": { - "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" - } - } - } - }, "js-sdsl": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.3.0.tgz", @@ -21561,45 +18419,6 @@ "whatwg-url": "^8.5.0", "ws": "^7.4.6", "xml-name-validator": "^3.0.0" - }, - "dependencies": { - "agent-base": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", - "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", - "dev": true, - "requires": { - "debug": "4" - } - }, - "http-proxy-agent": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", - "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", - "dev": true, - "requires": { - "@tootallnate/once": "1", - "agent-base": "6", - "debug": "4" - } - }, - "https-proxy-agent": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", - "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", - "dev": true, - "requires": { - "agent-base": "6", - "debug": "4" - } - }, - "ws": { - "version": "7.5.9", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz", - "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", - "dev": true, - "requires": {} - } } }, "jsesc": { @@ -21655,15 +18474,6 @@ "json-typescript": "^1.0.0" } }, - "jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.6" - } - }, "jspdf": { "version": "2.5.1", "resolved": "https://registry.npmjs.org/jspdf/-/jspdf-2.5.1.tgz", @@ -21817,12 +18627,6 @@ "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==", "peer": true }, - "lodash.debounce": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", - "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", - "dev": true - }, "lodash.isplainobject": { "version": "4.0.6", "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", @@ -22033,12 +18837,6 @@ "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz", "integrity": "sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==" }, - "mitt": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/mitt/-/mitt-3.0.1.tgz", - "integrity": "sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw==", - "dev": true - }, "mkdirp-classic": { "version": "0.5.3", "resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz", @@ -22081,12 +18879,6 @@ "integrity": "sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==", "dev": true }, - "netmask": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/netmask/-/netmask-2.0.2.tgz", - "integrity": "sha512-dBpDMdxv9Irdq66304OLfEmQ9tbNRFnFTuZiLo+bD+r332bBmMJ8GBLXklIXXgxd3+v9+KUnZaUR5PJMa75Gsg==", - "dev": true - }, "node-fetch": { "version": "2.6.12", "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.12.tgz", @@ -22371,33 +19163,6 @@ "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", "dev": true }, - "pac-proxy-agent": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/pac-proxy-agent/-/pac-proxy-agent-7.0.0.tgz", - "integrity": "sha512-t4tRAMx0uphnZrio0S0Jw9zg3oDbz1zVhQ/Vy18FjLfP1XOLNUEjaVxYCYRI6NS+BsMBXKIzV6cTLOkO9AtywA==", - "dev": true, - "requires": { - "@tootallnate/quickjs-emscripten": "^0.23.0", - "agent-base": "^7.0.2", - "debug": "^4.3.4", - "get-uri": "^6.0.1", - "http-proxy-agent": "^7.0.0", - "https-proxy-agent": "^7.0.0", - "pac-resolver": "^7.0.0", - "socks-proxy-agent": "^8.0.1" - } - }, - "pac-resolver": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/pac-resolver/-/pac-resolver-7.0.0.tgz", - "integrity": "sha512-Fd9lT9vJbHYRACT8OhCbZBbxr6KRSawSovFpy8nDGshaK99S/EBhVIHp9+crhxrsZOuvLpgL1n23iyPg6Rl2hg==", - "dev": true, - "requires": { - "degenerator": "^5.0.0", - "ip": "^1.1.8", - "netmask": "^2.0.2" - } - }, "package-json": { "version": "6.5.0", "resolved": "https://registry.npmjs.org/package-json/-/package-json-6.5.0.tgz", @@ -22740,30 +19505,6 @@ } } }, - "proxy-agent": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/proxy-agent/-/proxy-agent-6.3.0.tgz", - "integrity": "sha512-0LdR757eTj/JfuU7TL2YCuAZnxWXu3tkJbg4Oq3geW/qFNT/32T0sp2HnZ9O0lMR4q3vwAt0+xCA8SR0WAD0og==", - "dev": true, - "requires": { - "agent-base": "^7.0.2", - "debug": "^4.3.4", - "http-proxy-agent": "^7.0.0", - "https-proxy-agent": "^7.0.0", - "lru-cache": "^7.14.1", - "pac-proxy-agent": "^7.0.0", - "proxy-from-env": "^1.1.0", - "socks-proxy-agent": "^8.0.1" - }, - "dependencies": { - "lru-cache": { - "version": "7.18.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", - "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", - "dev": true - } - } - }, "proxy-from-env": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", @@ -22812,44 +19553,34 @@ } }, "puppeteer": { - "version": "21.0.3", - "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-21.0.3.tgz", - "integrity": "sha512-+eBNTEOOBrRBLJ1/jIuHcOoUUOVpUQjQFwp9L/sm/iBDqii+4jv9jxpPJSOmOHXuy++X7GWfhuDw4vz8crNzPw==", + "version": "13.7.0", + "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-13.7.0.tgz", + "integrity": "sha512-U1uufzBjz3+PkpCxFrWzh4OrMIdIb2ztzCu0YEPfRHjHswcSwHZswnK+WdsOQJsRV8WeTg3jLhJR4D867+fjsA==", "dev": true, "requires": { - "@puppeteer/browsers": "1.6.0", - "cosmiconfig": "8.2.0", - "puppeteer-core": "21.0.3" + "cross-fetch": "3.1.5", + "debug": "4.3.4", + "devtools-protocol": "0.0.981744", + "extract-zip": "2.0.1", + "https-proxy-agent": "5.0.1", + "pkg-dir": "4.2.0", + "progress": "2.0.3", + "proxy-from-env": "1.1.0", + "rimraf": "3.0.2", + "tar-fs": "2.1.1", + "unbzip2-stream": "1.4.3", + "ws": "8.5.0" }, "dependencies": { - "cosmiconfig": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.2.0.tgz", - "integrity": "sha512-3rTMnFJA1tCOPwRxtgF4wd7Ab2qvDbL8jX+3smjIbS4HlZBagTlpERbdN7iAbWlrfxE3M8c27kTwTawQ7st+OQ==", + "ws": { + "version": "8.5.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.5.0.tgz", + "integrity": "sha512-BWX0SWVgLPzYwF8lTzEy1egjhS4S4OEAHfsO8o65WOVsrnSRGaSiUaa9e0ggGlkMTtBlmOpEXiie9RUcBO86qg==", "dev": true, - "requires": { - "import-fresh": "^3.2.1", - "js-yaml": "^4.1.0", - "parse-json": "^5.0.0", - "path-type": "^4.0.0" - } + "requires": {} } } }, - "puppeteer-core": { - "version": "21.0.3", - "resolved": "https://registry.npmjs.org/puppeteer-core/-/puppeteer-core-21.0.3.tgz", - "integrity": "sha512-AGvopfkA0jLbW5Ba0m6kBuvRIpLo76PXUK3zJYkXOr9NI1LknJESyai6TtXc6GUSewMkinmyEDx1pFgq900hqg==", - "dev": true, - "requires": { - "@puppeteer/browsers": "1.6.0", - "chromium-bidi": "0.4.20", - "cross-fetch": "4.0.0", - "debug": "4.3.4", - "devtools-protocol": "0.0.1147663", - "ws": "8.13.0" - } - }, "querystringify": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", @@ -22862,12 +19593,6 @@ "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", "dev": true }, - "queue-tick": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/queue-tick/-/queue-tick-1.0.1.tgz", - "integrity": "sha512-kJt5qhMxoszgU/62PLP1CJytzd2NKetjSRnyuj31fDd3Rlcz3fzlFdFLD1SItunPwyqEOkca6GbV612BWfaBag==", - "dev": true - }, "quick-lru": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz", @@ -23055,30 +19780,6 @@ } } }, - "regenerate": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", - "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", - "dev": true - }, - "regenerate-unicode-properties": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.0.tgz", - "integrity": "sha512-d1VudCLoIGitcU/hEg2QqvyGZQmdC0Lf8BqdOMXGFSvJP4bNV1+XqbPQeHHLD51Jh4QJJ225dlIFvY4Ly6MXmQ==", - "dev": true, - "requires": { - "regenerate": "^1.4.2" - } - }, - "regenerator-transform": { - "version": "0.15.2", - "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.2.tgz", - "integrity": "sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==", - "dev": true, - "requires": { - "@babel/runtime": "^7.8.4" - } - }, "regexp-tree": { "version": "0.1.24", "resolved": "https://registry.npmjs.org/regexp-tree/-/regexp-tree-0.1.24.tgz", @@ -23102,20 +19803,6 @@ "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", "dev": true }, - "regexpu-core": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.3.2.tgz", - "integrity": "sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ==", - "dev": true, - "requires": { - "@babel/regjsgen": "^0.8.0", - "regenerate": "^1.4.2", - "regenerate-unicode-properties": "^10.1.0", - "regjsparser": "^0.9.1", - "unicode-match-property-ecmascript": "^2.0.0", - "unicode-match-property-value-ecmascript": "^2.1.0" - } - }, "registry-auth-token": { "version": "4.2.2", "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.2.2.tgz", @@ -23134,23 +19821,6 @@ "rc": "^1.2.8" } }, - "regjsparser": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.9.1.tgz", - "integrity": "sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==", - "dev": true, - "requires": { - "jsesc": "~0.5.0" - }, - "dependencies": { - "jsesc": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", - "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==", - "dev": true - } - } - }, "remove-markdown": { "version": "0.2.2", "resolved": "https://registry.npmjs.org/remove-markdown/-/remove-markdown-0.2.2.tgz", @@ -23452,41 +20122,6 @@ "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", "dev": true }, - "smart-buffer": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", - "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", - "dev": true - }, - "socks": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/socks/-/socks-2.7.1.tgz", - "integrity": "sha512-7maUZy1N7uo6+WVEX6psASxtNlKaNVMlGQKkG/63nEDdLOWNbiUMoLK7X4uYoLhQstau72mLgfEWcXcwsaHbYQ==", - "dev": true, - "requires": { - "ip": "^2.0.0", - "smart-buffer": "^4.2.0" - }, - "dependencies": { - "ip": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ip/-/ip-2.0.0.tgz", - "integrity": "sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ==", - "dev": true - } - } - }, - "socks-proxy-agent": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.1.tgz", - "integrity": "sha512-59EjPbbgg8U3x62hhKOFVAmySQUcfRQ4C7Q/D5sEHnZTQRrQlNKINks44DMR1gwXp0p4LaVIeccX2KHTTcHVqQ==", - "dev": true, - "requires": { - "agent-base": "^7.0.1", - "debug": "^4.3.4", - "socks": "^2.7.1" - } - }, "sort-keys": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-4.2.0.tgz", @@ -23607,16 +20242,6 @@ "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==", "dev": true }, - "streamx": { - "version": "2.15.1", - "resolved": "https://registry.npmjs.org/streamx/-/streamx-2.15.1.tgz", - "integrity": "sha512-fQMzy2O/Q47rgwErk/eGeLu/roaFWV0jVsogDmrszM9uIw8L5OA+t+V93MgYlufNptfjmYR1tOMWhei/Eh7TQA==", - "dev": true, - "requires": { - "fast-fifo": "^1.1.0", - "queue-tick": "^1.0.1" - } - }, "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -23811,25 +20436,41 @@ } }, "tar-fs": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-3.0.4.tgz", - "integrity": "sha512-5AFQU8b9qLfZCX9zp2duONhPmZv0hGYiBPJsyUdqMjzq/mqVpy/rEUSeHk1+YitmxugaptgBh5oDGU3VsAJq4w==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.1.tgz", + "integrity": "sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==", "dev": true, "requires": { + "chownr": "^1.1.1", "mkdirp-classic": "^0.5.2", "pump": "^3.0.0", - "tar-stream": "^3.1.5" + "tar-stream": "^2.1.4" } }, "tar-stream": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-3.1.6.tgz", - "integrity": "sha512-B/UyjYwPpMBv+PaFSWAmtYjwdrlEaZQEhMIBFNC5oEG8lpiW8XjcSdmEaClj28ArfKScKHs2nshz3k2le6crsg==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", + "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", "dev": true, "requires": { - "b4a": "^1.6.4", - "fast-fifo": "^1.2.0", - "streamx": "^2.15.0" + "bl": "^4.0.3", + "end-of-stream": "^1.4.1", + "fs-constants": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^3.1.1" + }, + "dependencies": { + "readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + } } }, "terminal-link": { @@ -24074,34 +20715,6 @@ "through": "^2.3.8" } }, - "unicode-canonical-property-names-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", - "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==", - "dev": true - }, - "unicode-match-property-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", - "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", - "dev": true, - "requires": { - "unicode-canonical-property-names-ecmascript": "^2.0.0", - "unicode-property-aliases-ecmascript": "^2.0.0" - } - }, - "unicode-match-property-value-ecmascript": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz", - "integrity": "sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==", - "dev": true - }, - "unicode-property-aliases-ecmascript": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz", - "integrity": "sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==", - "dev": true - }, "unique-string": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz", @@ -24410,9 +21023,9 @@ } }, "ws": { - "version": "8.13.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.13.0.tgz", - "integrity": "sha512-x9vcZYTrFPC7aSIbj7sRCYo7L/Xb8Iy+pW0ng0wt2vCJv7M9HOMy0UoN3rr+IFC7hb7vXoqS+P9ktyLLLhO+LA==", + "version": "7.5.9", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz", + "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", "dev": true, "requires": {} }, diff --git a/package.json b/package.json index 952ab3ce6..ce85290e5 100644 --- a/package.json +++ b/package.json @@ -42,7 +42,6 @@ "@typescript-eslint/eslint-plugin": "^5.4.0", "@typescript-eslint/parser": "^5.39.0", "autoprefixer": "10.4.4", - "caniuse-lite": "^1.0.30001412", "dotenv": "^10.0.0", "eslint": "^8.11.0", "eslint-config-prettier": "8.3.0", diff --git a/src/utils/downloadUtils.ts b/src/utils/downloadUtils.ts index 055ba4755..8798f1fda 100644 --- a/src/utils/downloadUtils.ts +++ b/src/utils/downloadUtils.ts @@ -24,6 +24,14 @@ import { IExportInfo, IExportInfos } from "../utils/interfaces"; export { ILabel } from "./pdfUtils"; +interface IArcadeExecutors { + [expressionName: string]: __esri.ArcadeExecutor; +} + +interface IArcadeExecutorPromises { + [expressionName: string]: Promise<__esri.ArcadeExecutor>; +} + interface IAttributeDomains { [attributeName: string]: __esri.CodedValueDomain | __esri.RangeDomain | __esri.InheritedDomain | null; } @@ -36,6 +44,25 @@ interface IAttributeTypes { [attributeName: string]: string; } +interface ILayerRelationshipQuery { + layer: __esri.FeatureLayer; + relatedQuery: IRelatedFeaturesQuery; +} + +interface ILayerRelationshipQueryHash { + [relationshipId: string]: ILayerRelationshipQuery; +} + +// Class RelationshipQuery doesn't appear to work, and so since +// https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#queryRelatedFeatures +// says that the relationshipQuery argument is autocast, we'll set up a variant for the class +interface IRelatedFeaturesQuery { + outFields: string[]; + relationshipId: string; + returnGeometry: boolean; + objectIds?: number; +} + const lineSeparatorChar = "|"; //#endregion @@ -188,15 +215,32 @@ export function _convertPopupTextToLabelSpec( }; /** - * Creates an Arcade expression executor for a label format. + * Extracts Arcade expressions from the lines of a label format and creates an Arcade executor for each + * referenced expression name. * - * @param expression Label to examine - * @return Promise resolving to executor + * @param labelFormat Label to examine + * @param layer Layer from which to fetch features + * @return Promise resolving to a set of executors keyed using the expression name */ -async function _createArcadeExecutor( - expression: string -): Promise<__esri.ArcadeExecutor> { - // Generate an Arcade executor +async function _createArcadeExecutors( + labelFormat: string, + layer: __esri.FeatureLayer +): Promise { + const arcadeExecutors: IArcadeExecutors = {}; + + // Are any Arcade expressions in the layer? + if (!Array.isArray(layer.popupTemplate.expressionInfos) || layer.popupTemplate.expressionInfos.length === 0) { + return Promise.resolve(arcadeExecutors); + } + + // Are there any Arcade expressions in the label format? + const arcadeExpressionRegExp = /\{expression\/\w+\}/g; + const arcadeExpressionsMatches = labelFormat.match(arcadeExpressionRegExp); + if (!arcadeExpressionsMatches) { + return Promise.resolve(arcadeExecutors); + } + + // Generate an Arcade executor for each match const [arcade] = await loadModules(["esri/arcade"]); const labelingProfile: __esri.Profile = { variables: [ @@ -219,8 +263,36 @@ async function _createArcadeExecutor( ] }; - return arcade.createArcadeExecutor(expression, labelingProfile); -}; + const createArcadeExecutorPromises: IArcadeExecutorPromises = {}; + arcadeExpressionsMatches.forEach( + (match: string) => { + const expressionName = match.substring(match.indexOf("/") + 1, match.length - 1); + + (layer.popupTemplate.expressionInfos || []).forEach( + expressionInfo => { + if (expressionInfo.name === expressionName) { + createArcadeExecutorPromises[expressionName] = + arcade.createArcadeExecutor(expressionInfo.expression, labelingProfile); + } + } + ); + } + ); + + const promises = Object.values(createArcadeExecutorPromises); + return Promise.all(promises) + .then( + executors => { + const expressionNames = Object.keys(createArcadeExecutorPromises); + + for (let i = 0; i < expressionNames.length; ++i) { + arcadeExecutors[expressionNames[i]] = executors[i].valueOf() as __esri.ArcadeExecutor; + } + + return arcadeExecutors; + } + ); +} /** * Creates a title from a list of selection set names. @@ -237,6 +309,44 @@ export function _createFilename( return title; } +/** + * Creates relationship queries for each relationship flag in a popup. + * @param layer Layer whose popup is to be examined + * @return Hash of relationships by their id, or null if there are no relationship flags in the + * popup; each relationship has the properties layer and relatedQuery for the related layer + * and the query for that layer + */ +export function _createRelationshipQueries( + layer: __esri.FeatureLayer, +): ILayerRelationshipQueryHash { + + const relationships: ILayerRelationshipQueryHash = {}; + const relationshipFieldPattern = /\{relationships\/\d+\//gm; + const relationshipIdPattern = /\d+/; + + // Test if this popup has any relationship references + const matches = layer.popupTemplate.content[0].text.match(relationshipFieldPattern); + if (matches) { + matches.forEach(match => { + // Add a query to a found relationship if we don't already have one + const id = match.match(relationshipIdPattern)[0]; + if (!relationships.hasOwnProperty(id)) { + const relatedQuery: IRelatedFeaturesQuery = { + outFields: ['*'], + relationshipId: id, + returnGeometry: false + }; + relationships[id] = { + layer, + relatedQuery + } as ILayerRelationshipQuery; + } + }); + } + + return relationships; +} + /** * Prepares an attribute's value by applying domain and type information. * @@ -326,7 +436,8 @@ async function _prepareLabels( // Get the label formatting, if any let labelFormat: string; - let arcadeExecutor: __esri.ArcadeExecutor; + let relationshipQueries: ILayerRelationshipQueryHash = {}; + let arcadeExecutors: IArcadeExecutors = {}; if (layer.popupEnabled) { layer.popupTemplate.fieldInfos.forEach( // Extract any format info that we have @@ -358,52 +469,104 @@ async function _prepareLabels( } else if (formatUsingLayerPopup && layer.popupTemplate?.content[0]?.type === "text") { labelFormat = _convertPopupTextToLabelSpec(layer.popupTemplate.content[0].text); - } else if (formatUsingLayerPopup && layer.popupTemplate?.content[0]?.type === "expression") { - const arcadeText = layer.popupTemplate.content[0].expressionInfo.expression; + // Do we need any relationship queries? + relationshipQueries = _createRelationshipQueries(layer); - // Create the Arcade executor - arcadeExecutor = await _createArcadeExecutor(arcadeText); + // Do we need any Arcade executors? + arcadeExecutors = await _createArcadeExecutors(labelFormat, layer); } } // Apply the label format let labels: string[][]; // eslint-disable-next-line unicorn/prefer-ternary - if (labelFormat || arcadeExecutor) { + if (labelFormat) { + const arcadeExpressionRegExp = /\{expression\/\w+\}/g; + const attributeRegExp = /\{\w+\}/g; + + // Find the label fields that we need to replace with values + const arcadeExpressionMatches = labelFormat.match(arcadeExpressionRegExp) ?? []; + const attributeMatches = labelFormat.match(attributeRegExp) ?? []; + // Convert feature attributes into an array of labels + const relationshipKeys = Object.keys(relationshipQueries); labels = await Promise.all(featureSet.map( async feature => { let labelPrep = labelFormat; - if (arcadeExecutor) { - // Replace Arcade expressions in this feature - labelPrep = (await arcadeExecutor.executeAsync({"$feature": feature})).text; - - // Replace "
" and "\n\t" with line separator character - labelPrep = labelPrep - .replace(//gi, lineSeparatorChar) - .replace(/\\n\\t/gi, lineSeparatorChar) - .replace(/\|\|/g, lineSeparatorChar) - .replace(/^\|/, "") - .replace(/\|$/, ""); + // Replace Arcade expressions in this feature + arcadeExpressionMatches.forEach( + (match: string) => { + const expressionName = match.substring(match.indexOf("/") + 1, match.length - 1); + const value = arcadeExecutors[expressionName].execute({"$feature": feature}); + labelPrep = labelPrep.replace(match, value); + } + ) + + // Replace relationship expressions in this feature + const relatedFeatureQueries = [] as Promise<__esri.FeatureSet>[]; + const relationshipIds = [] as string[]; + relationshipKeys.forEach( + (relationshipId) => { + const relationship = relationshipQueries[relationshipId]; + const objectId = feature.attributes[relationship.layer.objectIdField]; + const relatedQuery = { + ...relationship.relatedQuery, + objectIds: [objectId] + }; + relatedFeatureQueries.push(relationship.layer.queryRelatedFeatures(relatedQuery as any)); + relationshipIds.push(relationshipId); + } + ); - } else { - const attributeRegExp = /\{\w+\}/g; - const attributeMatches = labelFormat.match(attributeRegExp) ?? []; + // Wait for all of the queries for related records for this label + const relatedFeatureQueryResults = await Promise.all(relatedFeatureQueries); + relatedFeatureQueryResults.forEach( + (relatedFeatureQueryResult, i) => { + // We have an object with FeatureSets grouped by source layer or table objectIds + const relationshipId = relationshipIds[i]; + + // Run through the source layer or table objectIds + Object.keys(relatedFeatureQueryResult).forEach( + relatedFeatureSetId => { + // We have a feature set + const relatedFeatures = relatedFeatureQueryResult[relatedFeatureSetId].features; + + // Get the values from each feature and replace them in the label + relatedFeatures.forEach( + feature => { + // Merge the base and related feature attributes and create the label + // Prefix related feature's attributes with "relationships//" to match popup + const rePrefix = "\{relationships/" + relationshipId + "/"; + const reSuffix = "\}"; + + const attributes = feature.attributes; + Object.keys(attributes).forEach( + attributeName => { + // Replace the value using the attribute name as a relationship + const attributeRelationshipRegExp = new RegExp(rePrefix + attributeName + reSuffix, "g"); + labelPrep = labelPrep.replaceAll(attributeRelationshipRegExp, attributes[attributeName]); + } + ); + } + ); + } + ); + } + ); - // Replace non-Arcade fields in this feature - attributeMatches.forEach( - (match: string) => { - const attributeName = match.substring(1, match.length - 1); + // Replace non-Arcade fields in this feature + attributeMatches.forEach( + (match: string) => { + const attributeName = match.substring(1, match.length - 1); - const value = _prepareAttributeValue(feature.attributes[attributeName], - attributeTypes[attributeName], attributeDomains[attributeName], - attributeFormats[attributeName], intl); - labelPrep = labelPrep.replace(match, value); + const value = _prepareAttributeValue(feature.attributes[attributeName], + attributeTypes[attributeName], attributeDomains[attributeName], + attributeFormats[attributeName], intl); + labelPrep = labelPrep.replace(match, value); - } - ) - } + } + ) // Split label into lines let label = labelPrep.split(lineSeparatorChar); From 4f31e6119859734dbeac9775fc6c0ab396654738 Mon Sep 17 00:00:00 2001 From: Mike Tschudi Date: Wed, 16 Aug 2023 09:49:47 -0700 Subject: [PATCH 123/406] Remove obsolete test --- .../test/public-notification.e2e.ts | 121 ------------------ 1 file changed, 121 deletions(-) delete mode 100644 src/components/public-notification/test/public-notification.e2e.ts diff --git a/src/components/public-notification/test/public-notification.e2e.ts b/src/components/public-notification/test/public-notification.e2e.ts deleted file mode 100644 index 88e8a1f0d..000000000 --- a/src/components/public-notification/test/public-notification.e2e.ts +++ /dev/null @@ -1,121 +0,0 @@ -/** @license - * Copyright 2022 Esri - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import { newE2EPage } from '@stencil/core/testing'; -import * as locale from "../../../utils/locale";; -import * as translations from "../../../assets/t9n/public-notification/resources.json"; -import { geometryEngine } from "../../../utils/test/mocks/jsApi"; -import * as queryUtils from "../../../utils/queryUtils"; -import * as mapViewUtils from "../../../utils/mapViewUtils"; -import * as publicNotificationUtils from "../../../utils/publicNotificationUtils"; - -jest.setTimeout(50000); - -afterEach(() => { - jest.restoreAllMocks(); -}); - -let mapView; - -beforeEach(() => { - jest.spyOn(locale, "getLocaleComponentStrings").mockImplementation(() => [ - translations - ] as any); - - jest.spyOn(mapViewUtils, "highlightFeatures").mockImplementation(jest.fn()); - jest.spyOn(publicNotificationUtils, "getSelectionIds").mockImplementation(jest.fn()); - - jest.spyOn(console, 'warn').mockImplementation(() => {}); - - mapView = { - map: { - layers: { - add: () => {}, - getItemAt: () => { return -1 }, - findIndex: () => { return -1 } - } - } - } as unknown as any; -}); - -// This keeps timing out every so often...will look more -xdescribe('public-notification', () => { - it('renders', async () => { - jest.useFakeTimers(); - - const getSelectionSetQueryMock = jest.fn(); - jest.spyOn(queryUtils, "getSelectionSetQuery").mockImplementation(getSelectionSetQueryMock); - - const page = await newE2EPage(); - await page.setContent(''); - await page.waitForChanges(); - - const element = await page.find('public-notification'); - expect(element).toHaveClass('hydrated'); - - // These cause errors to be thrown - // element.setProperty("addresseeLayer", new LayerView() as unknown as any); - // element.setProperty("mapView", mapView); - // await page.waitForChanges(); - - const infoMessage = await element.find(".info-message"); - expect(infoMessage.innerHTML).toContain(translations.noNotifications); - - const notice = await page.find("calcite-notice"); - expect(notice.innerText).toContain(translations.selectLayerAndAdd); - - const addBtn = await element.find("calcite-button"); - expect(addBtn.innerText).toContain(translations.add); - - // TODO understand why this causes failures in the test - // this is really the only way to change pageType - //await addBtn.click(); - //await page.waitForChanges(); - }); - - it('renders with selection set', async () => { - jest.useFakeTimers(); - - const getSelectionSetQueryMock = jest.fn(); - jest.spyOn(queryUtils, "getSelectionSetQuery").mockImplementation(getSelectionSetQueryMock); - - const page = await newE2EPage(); - await page.setContent(''); - await page.waitForChanges(); - - const element = await page.find('public-notification'); - expect(element).toHaveClass('hydrated'); - - // These cause errors to be thrown - // element.setProperty("addresseeLayer", new LayerView() as unknown as any); - // element.setProperty("mapView", mapView); - //await page.waitForChanges(); - - const infoMessage = await element.find(".info-message"); - expect(infoMessage.innerHTML).toContain(translations.noNotifications); - - const notice = await page.find("calcite-notice"); - expect(notice.innerText).toContain(translations.selectLayerAndAdd); - - const addBtn = await element.find("calcite-button"); - expect(addBtn.innerText).toContain(translations.add); - - // TODO understand why this causes failures in the test - // this is really the only way to change pageType - //await addBtn.click(); - //await page.waitForChanges(); - }); -}); From f6f83ab97a771a4672d592ed8d7e1caa6da25125 Mon Sep 17 00:00:00 2001 From: Mike Tschudi Date: Tue, 15 Aug 2023 10:30:21 -0700 Subject: [PATCH 124/406] Update unit test to match function name change --- src/utils/test/downloadUtils.spec.tsx | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/utils/test/downloadUtils.spec.tsx b/src/utils/test/downloadUtils.spec.tsx index 15e69c46d..518abe0d7 100644 --- a/src/utils/test/downloadUtils.spec.tsx +++ b/src/utils/test/downloadUtils.spec.tsx @@ -102,13 +102,13 @@ describe("downloadUtils", () => { }); - describe("_createTitle", () => { + describe("_createFilename", () => { it("handles no selection set names", () => { const selectionSetNames: string[] = []; const expectedTitle = "download"; - const title = downloadUtils._createTitle(selectionSetNames); + const title = downloadUtils._createFilename(selectionSetNames); expect(title).toEqual(expectedTitle); }); @@ -116,15 +116,15 @@ describe("downloadUtils", () => { const selectionSetNames: string[] = ["fred"]; const expectedTitle = "fred"; - const title = downloadUtils._createTitle(selectionSetNames); + const title = downloadUtils._createFilename(selectionSetNames); expect(title).toEqual(expectedTitle); }); it("handles two selection set names", () => { const selectionSetNames: string[] = ["fred", "ginger"]; - const expectedTitle = "fred,ginger"; + const expectedTitle = "fred, ginger"; - const title = downloadUtils._createTitle(selectionSetNames); + const title = downloadUtils._createFilename(selectionSetNames); expect(title).toEqual(expectedTitle); }); From 2675e50abbe4699779a6c0a570310254ec251412 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Wed, 16 Aug 2023 12:59:33 -0600 Subject: [PATCH 125/406] add more url var handeling --- src/components.d.ts | 16 ++++++++++ src/components/card-manager/card-manager.tsx | 6 ++++ src/components/card-manager/readme.md | 9 +++--- .../crowdsource-manager.css | 4 +++ .../crowdsource-manager.tsx | 16 ++++++++-- src/components/crowdsource-manager/readme.md | 11 +++---- src/components/layer-table/layer-table.tsx | 2 +- src/components/layer-table/readme.md | 2 +- src/demos/crowdsource-manager.html | 29 ++++++++++++++----- 9 files changed, 75 insertions(+), 20 deletions(-) diff --git a/src/components.d.ts b/src/components.d.ts index 4e6f09fba..11c18f813 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -52,6 +52,10 @@ export namespace Components { * esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html */ "mapView": __esri.MapView; + /** + * boolean: When true the selected feature will zoomed to in the map and the row will be scrolled to within the table + */ + "zoomAndScrollToSelected": boolean; } interface CrowdsourceManager { /** @@ -66,6 +70,10 @@ export namespace Components { * IMapInfo[]: array of map infos (name and id) */ "mapInfos": IMapInfo[]; + /** + * boolean: When true the selected feature will zoomed to in the map and the row will be scrolled to within the table + */ + "zoomAndScrollToSelected": boolean; } interface CrowdsourceReporter { } @@ -1037,6 +1045,10 @@ declare namespace LocalJSX { * esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html */ "mapView"?: __esri.MapView; + /** + * boolean: When true the selected feature will zoomed to in the map and the row will be scrolled to within the table + */ + "zoomAndScrollToSelected"?: boolean; } interface CrowdsourceManager { /** @@ -1051,6 +1063,10 @@ declare namespace LocalJSX { * IMapInfo[]: array of map infos (name and id) */ "mapInfos"?: IMapInfo[]; + /** + * boolean: When true the selected feature will zoomed to in the map and the row will be scrolled to within the table + */ + "zoomAndScrollToSelected"?: boolean; } interface CrowdsourceReporter { } diff --git a/src/components/card-manager/card-manager.tsx b/src/components/card-manager/card-manager.tsx index ede376c9a..6a7eb1595 100644 --- a/src/components/card-manager/card-manager.tsx +++ b/src/components/card-manager/card-manager.tsx @@ -49,6 +49,11 @@ export class CardManager { */ @Prop() mapView: __esri.MapView; + /** + * boolean: When true the selected feature will zoomed to in the map and the row will be scrolled to within the table + */ + @Prop() zoomAndScrollToSelected: boolean; + //-------------------------------------------------------------------------- // // Properties (protected) @@ -146,6 +151,7 @@ export class CardManager { graphics={this._graphics} isLoading={this._cardLoading} mapView={this.mapView} + zoomAndScrollToSelected={this.zoomAndScrollToSelected} />
diff --git a/src/components/card-manager/readme.md b/src/components/card-manager/readme.md index 7e9b75854..c31a1943b 100644 --- a/src/components/card-manager/readme.md +++ b/src/components/card-manager/readme.md @@ -7,10 +7,11 @@ ## Properties -| Property | Attribute | Description | Type | Default | -| --------- | --------- | --------------------------------------------------------------------------------------------------------------------------- | -------------- | ----------- | -| `layer` | -- | esri/views/layers/FeatureLayer: https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html | `FeatureLayer` | `undefined` | -| `mapView` | -- | esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html | `MapView` | `undefined` | +| Property | Attribute | Description | Type | Default | +| ------------------------- | ----------------------------- | --------------------------------------------------------------------------------------------------------------------------- | -------------- | ----------- | +| `layer` | -- | esri/views/layers/FeatureLayer: https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html | `FeatureLayer` | `undefined` | +| `mapView` | -- | esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html | `MapView` | `undefined` | +| `zoomAndScrollToSelected` | `zoom-and-scroll-to-selected` | boolean: When true the selected feature will zoomed to in the map and the row will be scrolled to within the table | `boolean` | `undefined` | ## Dependencies diff --git a/src/components/crowdsource-manager/crowdsource-manager.css b/src/components/crowdsource-manager/crowdsource-manager.css index 5aa980933..17ccfd913 100644 --- a/src/components/crowdsource-manager/crowdsource-manager.css +++ b/src/components/crowdsource-manager/crowdsource-manager.css @@ -108,3 +108,7 @@ position: absolute; top: 53px; } + +.display-grid { + display: grid; +} diff --git a/src/components/crowdsource-manager/crowdsource-manager.tsx b/src/components/crowdsource-manager/crowdsource-manager.tsx index 194165c96..1c87d3e65 100644 --- a/src/components/crowdsource-manager/crowdsource-manager.tsx +++ b/src/components/crowdsource-manager/crowdsource-manager.tsx @@ -53,6 +53,11 @@ export class CrowdsourceManager { */ @Prop() mapInfos: IMapInfo[] = []; + /** + * boolean: When true the selected feature will zoomed to in the map and the row will be scrolled to within the table + */ + @Prop() zoomAndScrollToSelected = false; + //-------------------------------------------------------------------------- // // State (internal) @@ -323,7 +328,11 @@ export class CrowdsourceManager {
- +
); @@ -374,7 +383,10 @@ export class CrowdsourceManager {
- +
); diff --git a/src/components/crowdsource-manager/readme.md b/src/components/crowdsource-manager/readme.md index 2a99f5ee4..885f9e990 100644 --- a/src/components/crowdsource-manager/readme.md +++ b/src/components/crowdsource-manager/readme.md @@ -7,11 +7,12 @@ ## Properties -| Property | Attribute | Description | Type | Default | -| ------------- | -------------- | ---------------------------------------------------------------------------------------------------- | ------------ | ------- | -| `classicGrid` | `classic-grid` | boolean: when true the grid will display like the previous manager app with the table across the top | `boolean` | `false` | -| `hideMap` | `hide-map` | boolean: when true no map is displayed for the app | `boolean` | `false` | -| `mapInfos` | -- | IMapInfo[]: array of map infos (name and id) | `IMapInfo[]` | `[]` | +| Property | Attribute | Description | Type | Default | +| ------------------------- | ----------------------------- | ------------------------------------------------------------------------------------------------------------------ | ------------ | ------- | +| `classicGrid` | `classic-grid` | boolean: when true the grid will display like the previous manager app with the table across the top | `boolean` | `false` | +| `hideMap` | `hide-map` | boolean: when true no map is displayed for the app | `boolean` | `false` | +| `mapInfos` | -- | IMapInfo[]: array of map infos (name and id) | `IMapInfo[]` | `[]` | +| `zoomAndScrollToSelected` | `zoom-and-scroll-to-selected` | boolean: When true the selected feature will zoomed to in the map and the row will be scrolled to within the table | `boolean` | `false` | ## Dependencies diff --git a/src/components/layer-table/layer-table.tsx b/src/components/layer-table/layer-table.tsx index ffe7f53db..b77eec6ed 100644 --- a/src/components/layer-table/layer-table.tsx +++ b/src/components/layer-table/layer-table.tsx @@ -50,7 +50,7 @@ export class LayerTable { /** * boolean: When true the selected feature will zoomed to in the map and the row will be scrolled to within the table */ - @Prop() zoomAndScrollToSelected = true; + @Prop() zoomAndScrollToSelected: boolean; //-------------------------------------------------------------------------- // diff --git a/src/components/layer-table/readme.md b/src/components/layer-table/readme.md index 50c594656..ff12445dd 100644 --- a/src/components/layer-table/readme.md +++ b/src/components/layer-table/readme.md @@ -10,7 +10,7 @@ | Property | Attribute | Description | Type | Default | | ------------------------- | ----------------------------- | ------------------------------------------------------------------------------------------------------------------ | --------- | ----------- | | `mapView` | -- | esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html | `MapView` | `undefined` | -| `zoomAndScrollToSelected` | `zoom-and-scroll-to-selected` | boolean: When true the selected feature will zoomed to in the map and the row will be scrolled to within the table | `boolean` | `true` | +| `zoomAndScrollToSelected` | `zoom-and-scroll-to-selected` | boolean: When true the selected feature will zoomed to in the map and the row will be scrolled to within the table | `boolean` | `undefined` | ## Events diff --git a/src/demos/crowdsource-manager.html b/src/demos/crowdsource-manager.html index 323e39d34..51480ae82 100644 --- a/src/demos/crowdsource-manager.html +++ b/src/demos/crowdsource-manager.html @@ -44,13 +44,28 @@ let custom = []; var vars = window.location.search.substring(1).split('&'); - vars.forEach((v) => { - let paramName = v.split('='); - if (paramName[0] === "id") { - custom = [{ - id:paramName[1], - name: "Map from URL" - }]; + vars.forEach((param) => { + let vals = param.split('='); + const v = vals[1]; + switch (vals[0]) { + case "id": + custom = [{ + id: v, + name: "Map from URL" + }]; + break; + // TODO enable when ready for review...have some questions that I need to discuss with the team + // case "hideMap": + // demo.hideMap = v.toLocaleLowerCase() === "true"; + // break; + case "classicGrid": + demo.classicGrid = v.toLocaleLowerCase() === "true"; + break; + case "zoomAndScrollToSelected": + demo.zoomAndScrollToSelected = v.toLocaleLowerCase() === "true"; + break; + default: + break; } }); From ab6f1aef4bc443144fa247f722bc703b7558da76 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Wed, 16 Aug 2023 13:00:36 -0600 Subject: [PATCH 126/406] pn css update for IA issue --- src/components/map-draw-tools/map-draw-tools.css | 1 + 1 file changed, 1 insertion(+) diff --git a/src/components/map-draw-tools/map-draw-tools.css b/src/components/map-draw-tools/map-draw-tools.css index 597a1880c..6475f567c 100644 --- a/src/components/map-draw-tools/map-draw-tools.css +++ b/src/components/map-draw-tools/map-draw-tools.css @@ -74,6 +74,7 @@ html[dir="rtl"] .main-label { display: flex; flex-flow: row wrap; padding: 0; + justify-content: flex-start !important; } .esri-sketch__section { From 0e50a7a138acf9d7b589fa2d60adb0c1b2bf14ac Mon Sep 17 00:00:00 2001 From: Mike Tschudi Date: Wed, 16 Aug 2023 13:52:44 -0700 Subject: [PATCH 127/406] Update config to support transpilation of arcgis-pdf-creator lib for testing --- babel.config.json | 16 + package-lock.json | 20239 +++++++++++++++++++++++++----------------- package.json | 21 +- src/components.d.ts | 2 + stencil.config.ts | 5 + 5 files changed, 11908 insertions(+), 8375 deletions(-) create mode 100644 babel.config.json diff --git a/babel.config.json b/babel.config.json new file mode 100644 index 000000000..127bec4bb --- /dev/null +++ b/babel.config.json @@ -0,0 +1,16 @@ +{ + "filename": ["src/assets/arcgis-pdf-creator/*.js", "src/components/**/*.tsx?", "src/utils/**/*.tsx?"], + "targets": "> 0.25%, not dead", + "presets": [ + [ + "es2015", + { + "modules": false + } + ], + ["@babel/preset-env", { + "esmodules": true + }], + "@babel/preset-typescript" + ] +} diff --git a/package-lock.json b/package-lock.json index e07f7e1db..30763f068 100644 --- a/package-lock.json +++ b/package-lock.json @@ -14,25 +14,30 @@ "@esri/hub-sites": "^12.6.0", "@esri/hub-teams": "^12.4.1", "@pdf-lib/fontkit": "^1.1.1", - "@stencil/core": "^2.20.0", + "@stencil/core": "^4.0.5", "focus-trap": "7.2.0", "jspdf": "^2.5.1", "minimist": "^1.2.6", "pdf-lib": "^1.17.1" }, "devDependencies": { + "@babel/core": "^7.22.10", + "@babel/preset-env": "^7.22.10", + "@babel/preset-typescript": "^7.22.5", "@esri/eslint-plugin-calcite-components": "^0.2.2", "@esri/solution-common": "3.0.1", "@stencil/postcss": "^2.1.0", - "@stencil/sass": "^2.0.0", - "@stencil/store": "^2.0.1", + "@stencil/sass": "^3.0.5", + "@stencil/store": "^2.0.9", "@types/arcgis-js-api": "^4.27.0", - "@types/jest": "^27.5.2", + "@types/jest": "^27.0.3", "@types/node": "^16.11.11", - "@types/puppeteer": "^5.4.2", + "@types/puppeteer": "^7.0.4", "@typescript-eslint/eslint-plugin": "^5.4.0", "@typescript-eslint/parser": "^5.39.0", "autoprefixer": "10.4.4", + "babel-jest": "^29.6.2", + "caniuse-lite": "^1.0.30001412", "dotenv": "^10.0.0", "eslint": "^8.11.0", "eslint-config-prettier": "8.3.0", @@ -43,11 +48,11 @@ "esri-loader": "3.4.0", "form-request-submit-polyfill": "^2.0.0", "gh-release": "^6.0.3", - "jest": "^27.5.1", - "jest-cli": "^27.5.1", + "jest": "^27.0.3", + "jest-cli": "^27.4.5", "pify": "^5.0.0", "prettier": "2.4.1", - "puppeteer": "^13.5.1", + "puppeteer": "^21.0.3", "react": "^18.2.0", "rimraf": "^3.0.2", "tailwindcss": "3.0.23", @@ -274,6 +279,30 @@ "node": ">=6.0.0" } }, + "node_modules/@babel/helper-annotate-as-pure": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.22.5.tgz", + "integrity": "sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-builder-binary-assignment-operator-visitor": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.22.10.tgz", + "integrity": "sha512-Av0qubwDQxC56DoUReVDeLfMEjYYSN1nZrTUrWkXd7hpU73ymRANkbuDm3yni9npkn+RXy9nNbEJZEzXr7xrfQ==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.10" + }, + "engines": { + "node": ">=6.9.0" + } + }, "node_modules/@babel/helper-compilation-targets": { "version": "7.22.10", "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.10.tgz", @@ -299,6 +328,97 @@ "semver": "bin/semver.js" } }, + "node_modules/@babel/helper-create-class-features-plugin": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.22.10.tgz", + "integrity": "sha512-5IBb77txKYQPpOEdUdIhBx8VrZyDCQ+H82H0+5dX1TmuscP5vJKEE3cKurjtIw/vFwzbVH48VweE78kVDBrqjA==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-function-name": "^7.22.5", + "@babel/helper-member-expression-to-functions": "^7.22.5", + "@babel/helper-optimise-call-expression": "^7.22.5", + "@babel/helper-replace-supers": "^7.22.9", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-create-class-features-plugin/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/helper-create-regexp-features-plugin": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.22.9.tgz", + "integrity": "sha512-+svjVa/tFwsNSG4NEy1h85+HQ5imbT92Q5/bgtS7P0GTQlP8WuFdqsiABmQouhiFGyV66oGxZFpeYHza1rNsKw==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "regexpu-core": "^5.3.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-create-regexp-features-plugin/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/helper-define-polyfill-provider": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.4.2.tgz", + "integrity": "sha512-k0qnnOqHn5dK9pZpfD5XXZ9SojAITdCKRn2Lp6rnDGzIbaP0rHyMPk/4wsSxVBVz4RfN0q6VpXWP2pDGIoQ7hw==", + "dev": true, + "dependencies": { + "@babel/helper-compilation-targets": "^7.22.6", + "@babel/helper-plugin-utils": "^7.22.5", + "debug": "^4.1.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.14.2" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/@babel/helper-define-polyfill-provider/node_modules/resolve": { + "version": "1.22.4", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.4.tgz", + "integrity": "sha512-PXNdCiPqDqeUou+w1C2eTQbNfxKSuMxqTCuvlmmMsk1NWHL5fRrhY6Pl0qEYYc6+QqGClco1Qj8XnjPego4wfg==", + "dev": true, + "dependencies": { + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/@babel/helper-environment-visitor": { "version": "7.22.5", "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.5.tgz", @@ -333,6 +453,18 @@ "node": ">=6.9.0" } }, + "node_modules/@babel/helper-member-expression-to-functions": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.22.5.tgz", + "integrity": "sha512-aBiH1NKMG0H2cGZqspNvsaBe6wNGjbJjuLy29aU+eDZjSbbN53BaxlpB02xm9v34pLTZ1nIQPFYn2qMZoa5BQQ==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, "node_modules/@babel/helper-module-imports": { "version": "7.22.5", "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.5.tgz", @@ -364,6 +496,18 @@ "@babel/core": "^7.0.0" } }, + "node_modules/@babel/helper-optimise-call-expression": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.22.5.tgz", + "integrity": "sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, "node_modules/@babel/helper-plugin-utils": { "version": "7.22.5", "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.22.5.tgz", @@ -373,6 +517,40 @@ "node": ">=6.9.0" } }, + "node_modules/@babel/helper-remap-async-to-generator": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.22.9.tgz", + "integrity": "sha512-8WWC4oR4Px+tr+Fp0X3RHDVfINGpF3ad1HIbrc8A77epiR6eMMc6jsgozkzT2uDiOOdoS9cLIQ+XD2XvI2WSmQ==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-wrap-function": "^7.22.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-replace-supers": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.22.9.tgz", + "integrity": "sha512-LJIKvvpgPOPUThdYqcX6IXRuIcTkcAub0IaDRGCZH0p5GPUp7PhRU9QVgFcDDd51BaPkk77ZjqFwh6DZTAEmGg==", + "dev": true, + "dependencies": { + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-member-expression-to-functions": "^7.22.5", + "@babel/helper-optimise-call-expression": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, "node_modules/@babel/helper-simple-access": { "version": "7.22.5", "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz", @@ -385,6 +563,18 @@ "node": ">=6.9.0" } }, + "node_modules/@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.22.5.tgz", + "integrity": "sha512-tK14r66JZKiC43p8Ki33yLBVJKlQDFoA8GYN67lWCDCqoL6EMMSuM9b+Iff2jHaM/RRFYl7K+iiru7hbRqNx8Q==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, "node_modules/@babel/helper-split-export-declaration": { "version": "7.22.6", "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz", @@ -424,6 +614,20 @@ "node": ">=6.9.0" } }, + "node_modules/@babel/helper-wrap-function": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.22.10.tgz", + "integrity": "sha512-OnMhjWjuGYtdoO3FmsEFWvBStBAe2QOgwOLsLNDjN+aaiMD8InJk1/O3HSD8lkqTjCgg5YI34Tz15KNNA3p+nQ==", + "dev": true, + "dependencies": { + "@babel/helper-function-name": "^7.22.5", + "@babel/template": "^7.22.5", + "@babel/types": "^7.22.10" + }, + "engines": { + "node": ">=6.9.0" + } + }, "node_modules/@babel/helpers": { "version": "7.22.10", "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.22.10.tgz", @@ -535,6 +739,50 @@ "node": ">=6.0.0" } }, + "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.22.5.tgz", + "integrity": "sha512-NP1M5Rf+u2Gw9qfSO4ihjcTGW5zXTi36ITLd4/EoAcEhIZ0yjMqmftDNl3QC19CX7olhrjpyU454g/2W7X0jvQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.22.5.tgz", + "integrity": "sha512-31Bb65aZaUwqCbWMnZPduIZxCBngHFlzyN6Dq6KAJjtx+lx6ohKHubc61OomYi7XwVD4Ol0XCVz4h+pYFR048g==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", + "@babel/plugin-transform-optional-chaining": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.13.0" + } + }, + "node_modules/@babel/plugin-proposal-private-property-in-object": { + "version": "7.21.0-placeholder-for-preset-env.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz", + "integrity": "sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==", + "dev": true, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, "node_modules/@babel/plugin-syntax-async-generators": { "version": "7.8.4", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", @@ -571,6 +819,75 @@ "@babel/core": "^7.0.0-0" } }, + "node_modules/@babel/plugin-syntax-class-static-block": { + "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, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-dynamic-import": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", + "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-export-namespace-from": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", + "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-assertions": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.22.5.tgz", + "integrity": "sha512-rdV97N7KqsRzeNGoWUOK6yUsWarLjE5Su/Snk9IYPU9CwkWHs4t+rTGOvffTR8XGkJMTAdLfO0xVnXm8wugIJg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-attributes": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.22.5.tgz", + "integrity": "sha512-KwvoWDeNKPETmozyFE0P2rOLqh39EoQHNjqizrI5B8Vt0ZNS7M56s7dAiAqbYfiAYOuIzIh96z3iR2ktgu3tEg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, "node_modules/@babel/plugin-syntax-import-meta": { "version": "7.10.4", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", @@ -595,6 +912,21 @@ "@babel/core": "^7.0.0-0" } }, + "node_modules/@babel/plugin-syntax-jsx": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.22.5.tgz", + "integrity": "sha512-gvyP4hZrgrs/wWMaocvxZ44Hw0b3W8Pe+cMxc8V1ULQ07oh8VNbIRaoD1LRZVTvD+0nieDKjfgKg89sD7rrKrg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, "node_modules/@babel/plugin-syntax-logical-assignment-operators": { "version": "7.10.4", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", @@ -667,6 +999,21 @@ "@babel/core": "^7.0.0-0" } }, + "node_modules/@babel/plugin-syntax-private-property-in-object": { + "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, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, "node_modules/@babel/plugin-syntax-top-level-await": { "version": "7.14.5", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", @@ -697,3776 +1044,3470 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/runtime": { - "version": "7.20.13", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.20.13.tgz", - "integrity": "sha512-gt3PKXs0DBoL9xCvOIIZ2NEqAGZqHjAnmVbfQtB620V0uReIQutpel14KcneZuer7UioY8ALKZ7iocavvzTNFA==", + "node_modules/@babel/plugin-syntax-unicode-sets-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-unicode-sets-regex/-/plugin-syntax-unicode-sets-regex-7.18.6.tgz", + "integrity": "sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==", + "dev": true, "dependencies": { - "regenerator-runtime": "^0.13.11" + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" }, "engines": { "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "node_modules/@babel/runtime/node_modules/regenerator-runtime": { - "version": "0.13.11", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", - "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==" - }, - "node_modules/@babel/template": { + "node_modules/@babel/plugin-transform-arrow-functions": { "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.5.tgz", - "integrity": "sha512-X7yV7eiwAxdj9k94NEylvbVHLiVG1nvzCV2EAowhxLTwODV1jl9UzZ48leOC0sH7OnuHrIkllaBgneUykIcZaw==", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.22.5.tgz", + "integrity": "sha512-26lTNXoVRdAnsaDXPpvCNUq+OVWEVC6bx7Vvz9rC53F2bagUWW4u4ii2+h8Fejfh7RYqPxn+libeFBBck9muEw==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.22.5", - "@babel/parser": "^7.22.5", - "@babel/types": "^7.22.5" + "@babel/helper-plugin-utils": "^7.22.5" }, "engines": { "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/traverse": { + "node_modules/@babel/plugin-transform-async-generator-functions": { "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.22.10.tgz", - "integrity": "sha512-Q/urqV4pRByiNNpb/f5OSv28ZlGJiFiiTh+GAHktbIrkPhPbl90+uW6SmpoLyZqutrg9AEaEf3Q/ZBRHBXgxig==", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.22.10.tgz", + "integrity": "sha512-eueE8lvKVzq5wIObKK/7dvoeKJ+xc6TvRn6aysIjS6pSCeLy7S/eVi7pEQknZqyqvzaNKdDtem8nUNTBgDVR2g==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.22.10", - "@babel/generator": "^7.22.10", "@babel/helper-environment-visitor": "^7.22.5", - "@babel/helper-function-name": "^7.22.5", - "@babel/helper-hoist-variables": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/parser": "^7.22.10", - "@babel/types": "^7.22.10", - "debug": "^4.1.0", - "globals": "^11.1.0" + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-remap-async-to-generator": "^7.22.9", + "@babel/plugin-syntax-async-generators": "^7.8.4" }, "engines": { "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/traverse/node_modules/globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "node_modules/@babel/plugin-transform-async-to-generator": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.22.5.tgz", + "integrity": "sha512-b1A8D8ZzE/VhNDoV1MSJTnpKkCG5bJo+19R4o4oy03zM7ws8yEMK755j61Dc3EyvdysbqH5BOOTquJ7ZX9C6vQ==", "dev": true, + "dependencies": { + "@babel/helper-module-imports": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-remap-async-to-generator": "^7.22.5" + }, "engines": { - "node": ">=4" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/types": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.22.10.tgz", - "integrity": "sha512-obaoigiLrlDZ7TUQln/8m4mSqIW2QFeOrCQc9r+xsaHGNoplVNYlRVpsfE8Vj35GEm2ZH4ZhrNYogs/3fj85kg==", + "node_modules/@babel/plugin-transform-block-scoped-functions": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.22.5.tgz", + "integrity": "sha512-tdXZ2UdknEKQWKJP1KMNmuF5Lx3MymtMN/pvA+p/VEkhK8jVcQ1fzSy8KM9qRYhAf2/lV33hoMPKI/xaI9sADA==", "dev": true, "dependencies": { - "@babel/helper-string-parser": "^7.22.5", - "@babel/helper-validator-identifier": "^7.22.5", - "to-fast-properties": "^2.0.0" + "@babel/helper-plugin-utils": "^7.22.5" }, "engines": { "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@bcoe/v8-coverage": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", - "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", - "dev": true - }, - "node_modules/@cspotcode/source-map-support": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", - "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", + "node_modules/@babel/plugin-transform-block-scoping": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.22.10.tgz", + "integrity": "sha512-1+kVpGAOOI1Albt6Vse7c8pHzcZQdQKW+wJH+g8mCaszOdDVwRXa/slHPqIw+oJAJANTKDMuM2cBdV0Dg618Vg==", "dev": true, "dependencies": { - "@jridgewell/trace-mapping": "0.3.9" + "@babel/helper-plugin-utils": "^7.22.5" }, "engines": { - "node": ">=12" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@cspotcode/source-map-support/node_modules/@jridgewell/trace-mapping": { - "version": "0.3.9", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", - "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", + "node_modules/@babel/plugin-transform-class-properties": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.22.5.tgz", + "integrity": "sha512-nDkQ0NfkOhPTq8YCLiWNxp1+f9fCobEjCb0n8WdbNUBc4IB5V7P1QnX9IjpSoquKrXF5SKojHleVNs2vGeHCHQ==", "dev": true, "dependencies": { - "@jridgewell/resolve-uri": "^3.0.3", - "@jridgewell/sourcemap-codec": "^1.4.10" + "@babel/helper-create-class-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@eslint/eslintrc": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.4.1.tgz", - "integrity": "sha512-XXrH9Uarn0stsyldqDYq8r++mROmWRI1xKMXa640Bb//SY1+ECYX6VzT6Lcx5frD0V30XieqJ0oX9I2Xj5aoMA==", + "node_modules/@babel/plugin-transform-class-static-block": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.22.5.tgz", + "integrity": "sha512-SPToJ5eYZLxlnp1UzdARpOGeC2GbHvr9d/UV0EukuVx8atktg194oe+C5BqQ8jRTkgLRVOPYeXRSBg1IlMoVRA==", "dev": true, "dependencies": { - "ajv": "^6.12.4", - "debug": "^4.3.2", - "espree": "^9.4.0", - "globals": "^13.19.0", - "ignore": "^5.2.0", - "import-fresh": "^3.2.1", - "js-yaml": "^4.1.0", - "minimatch": "^3.1.2", - "strip-json-comments": "^3.1.1" + "@babel/helper-create-class-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-class-static-block": "^7.14.5" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": ">=6.9.0" }, - "funding": { - "url": "https://opencollective.com/eslint" + "peerDependencies": { + "@babel/core": "^7.12.0" } }, - "node_modules/@esri/arcgis-html-sanitizer": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@esri/arcgis-html-sanitizer/-/arcgis-html-sanitizer-3.0.1.tgz", - "integrity": "sha512-cwZJwsYCJZwtBQU2AmaiIVFg5nZcVwInPYja1/OgC9iKYO+ytZRoc5h+0S9/ygbFNoS8Nd0RX9A85stLX/BgiA==", + "node_modules/@babel/plugin-transform-classes": { + "version": "7.22.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.22.6.tgz", + "integrity": "sha512-58EgM6nuPNG6Py4Z3zSuu0xWu2VfodiMi72Jt5Kj2FECmaYk1RrTXA45z6KBFsu9tRgwQDwIiY4FXTt+YsSFAQ==", "dev": true, "dependencies": { - "xss": "1.0.13" + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-compilation-targets": "^7.22.6", + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-function-name": "^7.22.5", + "@babel/helper-optimise-call-expression": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-replace-supers": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@esri/arcgis-html-sanitizer/node_modules/xss": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/xss/-/xss-1.0.13.tgz", - "integrity": "sha512-clu7dxTm1e8Mo5fz3n/oW3UCXBfV89xZ72jM8yzo1vR/pIS0w3sgB3XV2H8Vm6zfGnHL0FzvLJPJEBhd86/z4Q==", + "node_modules/@babel/plugin-transform-classes/node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/plugin-transform-computed-properties": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.22.5.tgz", + "integrity": "sha512-4GHWBgRf0krxPX+AaPtgBAlTgTeZmqDynokHOX7aqqAB4tHs3U2Y02zH6ETFdLZGcg9UQSD1WCmkVrE9ErHeOg==", "dev": true, "dependencies": { - "commander": "^2.20.3", - "cssfilter": "0.0.10" - }, - "bin": { - "xss": "bin/xss" + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/template": "^7.22.5" }, "engines": { - "node": ">= 0.10.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@esri/arcgis-rest-auth": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/@esri/arcgis-rest-auth/-/arcgis-rest-auth-3.5.0.tgz", - "integrity": "sha512-EeKfGxSLEI2KvGE2FvN+kYDR+a7RWLf+uNzsYDXWK/8wOYrtj+lh091NHxgHU/Fd+NDoAcHSoTSPCCEpgS0Gsg==", - "deprecated": "Development work on ArcGIS REST JS 3.x has ceased. This packages funtionality has moved to @esri/arcgis-rest-request at 4.x.x https://developers.arcgis.com/arcgis-rest-js/release-notes/upgrade-v3-v4/.", - "peer": true, + "node_modules/@babel/plugin-transform-destructuring": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.22.10.tgz", + "integrity": "sha512-dPJrL0VOyxqLM9sritNbMSGx/teueHF/htMKrPT7DNxccXxRDPYqlgPFFdr8u+F+qUZOkZoXue/6rL5O5GduEw==", + "dev": true, "dependencies": { - "@esri/arcgis-rest-types": "^3.5.0", - "tslib": "^1.13.0" + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" }, "peerDependencies": { - "@esri/arcgis-rest-request": "^3.0.0" + "@babel/core": "^7.0.0-0" } }, - "node_modules/@esri/arcgis-rest-auth/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "peer": true - }, - "node_modules/@esri/arcgis-rest-feature-layer": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/@esri/arcgis-rest-feature-layer/-/arcgis-rest-feature-layer-3.5.0.tgz", - "integrity": "sha512-+qjJnwPaYYNQqce20FF1iNvQ1BeFVue6ka8MnDu4BNhSeyw9OKD2WoI1pXfKVkSHpXTHeQIfyMVLC7/nFNja8g==", - "deprecated": "Development work on ArcGIS REST JS 3.x has ceased. This packages funtionality has moved to @esri/arcgis-rest-feature-service at 4.x.x https://developers.arcgis.com/arcgis-rest-js/release-notes/upgrade-v3-v4/.", - "peer": true, + "node_modules/@babel/plugin-transform-dotall-regex": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.22.5.tgz", + "integrity": "sha512-5/Yk9QxCQCl+sOIB1WelKnVRxTJDSAIxtJLL2/pqL14ZVlbH0fUQUZa/T5/UnQtBNgghR7mfB8ERBKyKPCi7Vw==", + "dev": true, "dependencies": { - "@esri/arcgis-rest-types": "^3.5.0", - "tslib": "^1.13.0" + "@babel/helper-create-regexp-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" }, "peerDependencies": { - "@esri/arcgis-rest-auth": "^3.0.0", - "@esri/arcgis-rest-request": "^3.0.0" + "@babel/core": "^7.0.0-0" } }, - "node_modules/@esri/arcgis-rest-feature-layer/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "peer": true - }, - "node_modules/@esri/arcgis-rest-portal": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/@esri/arcgis-rest-portal/-/arcgis-rest-portal-3.5.0.tgz", - "integrity": "sha512-rrl/eUWOxdA5Y0MDYuvCopwNkf8loIfVIE4j1kGRTIz32n4uqdhb38sYKd2X4JK8QW67vyKq0SqxMSIYOHGXQg==", - "peer": true, + "node_modules/@babel/plugin-transform-duplicate-keys": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.22.5.tgz", + "integrity": "sha512-dEnYD+9BBgld5VBXHnF/DbYGp3fqGMsyxKbtD1mDyIA7AkTSpKXFhCVuj/oQVOoALfBs77DudA0BE4d5mcpmqw==", + "dev": true, "dependencies": { - "@esri/arcgis-rest-types": "^3.5.0", - "tslib": "^1.13.0" + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" }, "peerDependencies": { - "@esri/arcgis-rest-auth": "^3.0.0", - "@esri/arcgis-rest-request": "^3.0.0" + "@babel/core": "^7.0.0-0" } }, - "node_modules/@esri/arcgis-rest-portal/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "peer": true - }, - "node_modules/@esri/arcgis-rest-request": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/@esri/arcgis-rest-request/-/arcgis-rest-request-3.5.0.tgz", - "integrity": "sha512-FlI32b2EF/SlJeGe8GZtVqIlvHDxI18bgIB2vQINi9fAC07F1Jg3JMglDTDSl8CCYS/9cYp62n7lWPUwmvn/xQ==", - "peer": true, + "node_modules/@babel/plugin-transform-dynamic-import": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.22.5.tgz", + "integrity": "sha512-0MC3ppTB1AMxd8fXjSrbPa7LT9hrImt+/fcj+Pg5YMD7UQyWp/02+JWpdnCymmsXwIx5Z+sYn1bwCn4ZJNvhqQ==", + "dev": true, "dependencies": { - "tslib": "^1.10.0" + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-dynamic-import": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@esri/arcgis-rest-request/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "peer": true - }, - "node_modules/@esri/arcgis-rest-service-admin": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/@esri/arcgis-rest-service-admin/-/arcgis-rest-service-admin-3.5.0.tgz", - "integrity": "sha512-gZzqb0I9kAyIIx2bBTU070QSEd5CV7C0vyd5IBWZOJqgkvA4Yf/LOPCMZ2s/+y2jF+4B1vRMGjpInovvfEk9Rw==", - "deprecated": "Development work on ArcGIS REST JS 3.x has ceased. This packages funtionality has moved to @esri/arcgis-rest-feature-service at 4.x.x https://developers.arcgis.com/arcgis-rest-js/release-notes/upgrade-v3-v4/.", - "peer": true, + "node_modules/@babel/plugin-transform-exponentiation-operator": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.22.5.tgz", + "integrity": "sha512-vIpJFNM/FjZ4rh1myqIya9jXwrwwgFRHPjT3DkUA9ZLHuzox8jiXkOLvwm1H+PQIP3CqfC++WPKeuDi0Sjdj1g==", + "dev": true, "dependencies": { - "@esri/arcgis-rest-types": "^3.5.0", - "tslib": "^1.13.0" + "@babel/helper-builder-binary-assignment-operator-visitor": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" }, "peerDependencies": { - "@esri/arcgis-rest-auth": "^3.0.0", - "@esri/arcgis-rest-portal": "^3.0.0", - "@esri/arcgis-rest-request": "^3.0.0" + "@babel/core": "^7.0.0-0" } }, - "node_modules/@esri/arcgis-rest-service-admin/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "peer": true - }, - "node_modules/@esri/arcgis-rest-types": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/@esri/arcgis-rest-types/-/arcgis-rest-types-3.6.0.tgz", - "integrity": "sha512-t6QWdVNmqB9OloYAvVWYNjvqlnrXs/m0nCRNwPGt3ZiAPXn5CpkpSn2UD6LPqGp6vPxKG81lbFQvwCw9az4qIg==", - "peer": true - }, - "node_modules/@esri/calcite-components": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/@esri/calcite-components/-/calcite-components-1.4.3.tgz", - "integrity": "sha512-3Yj0ZBOPBCIEp+YPJTM0C6cBmbxFXXsG9a6yv0DKxkaERj7te+hb3DQ1fVbG/lQsMLOdrQHiE70zdXSzMKvKCg==", - "peer": true, + "node_modules/@babel/plugin-transform-export-namespace-from": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.22.5.tgz", + "integrity": "sha512-X4hhm7FRnPgd4nDA4b/5V280xCx6oL7Oob5+9qVS5C13Zq4bh1qq7LU0GgRU6b5dBWBvhGaXYVB4AcN6+ol6vg==", + "dev": true, "dependencies": { - "@floating-ui/dom": "1.4.1", - "@stencil/core": "2.22.3", - "@types/color": "3.0.3", - "color": "4.2.3", - "composed-offset-position": "0.0.4", - "dayjs": "1.11.8", - "focus-trap": "7.4.3", - "form-request-submit-polyfill": "2.0.0", - "lodash-es": "4.17.21", - "sortablejs": "1.15.0" + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@esri/calcite-components/node_modules/focus-trap": { - "version": "7.4.3", - "resolved": "https://registry.npmjs.org/focus-trap/-/focus-trap-7.4.3.tgz", - "integrity": "sha512-BgSSbK4GPnS2VbtZ50VtOv1Sti6DIkj3+LkVjiWMNjLeAp1SH1UlLx3ULu/DCu4vq5R4/uvTm+zrvsMsuYmGLg==", - "peer": true, + "node_modules/@babel/plugin-transform-for-of": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.22.5.tgz", + "integrity": "sha512-3kxQjX1dU9uudwSshyLeEipvrLjBCVthCgeTp6CzE/9JYrlAIaeekVxRpCWsDDfYTfRZRoCeZatCQvwo+wvK8A==", + "dev": true, "dependencies": { - "tabbable": "^6.1.2" + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@esri/eslint-plugin-calcite-components": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/@esri/eslint-plugin-calcite-components/-/eslint-plugin-calcite-components-0.2.2.tgz", - "integrity": "sha512-vmnJ8ogPdEiqq9iyRVJM/YhGMLqzbId35RqN3dS0mj4LWB3USIYMRbLqxtSHlxeWtOD4g6psdSj6eF4oWTXfuQ==", + "node_modules/@babel/plugin-transform-function-name": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.22.5.tgz", + "integrity": "sha512-UIzQNMS0p0HHiQm3oelztj+ECwFnj+ZRV4KnguvlsD2of1whUeM6o7wGNj6oLwcDoAXQ8gEqfgC24D+VdIcevg==", "dev": true, "dependencies": { - "stencil-eslint-core": "~0.3.1", - "tsutils": "~3.21.0" + "@babel/helper-compilation-targets": "^7.22.5", + "@babel/helper-function-name": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" }, "engines": { - "node": ">=8.9.0" + "node": ">=6.9.0" }, "peerDependencies": { - "@typescript-eslint/parser": "^5.8.0", - "eslint": "^8" + "@babel/core": "^7.0.0-0" } }, - "node_modules/@esri/hub-common": { - "version": "12.37.1", - "resolved": "https://registry.npmjs.org/@esri/hub-common/-/hub-common-12.37.1.tgz", - "integrity": "sha512-9gIxzIOo5dRFThk3A5Vkwzqxb1MMLZEKLAY2h0pYahu0hFP3nJpGLA65ODUduFiqnLrCOFUxgPd7qQkCthrSQA==", + "node_modules/@babel/plugin-transform-json-strings": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.22.5.tgz", + "integrity": "sha512-DuCRB7fu8MyTLbEQd1ew3R85nx/88yMoqo2uPSjevMj3yoN7CDM8jkgrY0wmVxfJZyJ/B9fE1iq7EQppWQmR5A==", + "dev": true, "dependencies": { - "abab": "^2.0.5", - "adlib": "^3.0.8", - "ajv": "^6.12.6", - "fast-xml-parser": "^3.21.0", - "json-schema-typed": "^7.0.3", - "jsonapi-typescript": "^0.1.3", - "tslib": "^1.13.0" + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-json-strings": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" }, "peerDependencies": { - "@esri/arcgis-rest-auth": "^2.14.0 || 3", - "@esri/arcgis-rest-feature-layer": "^3.2.0", - "@esri/arcgis-rest-portal": "^2.18.0 || 3", - "@esri/arcgis-rest-request": "^2.14.0 || 3", - "@esri/arcgis-rest-types": "^2.15.0 || 3" + "@babel/core": "^7.0.0-0" } }, - "node_modules/@esri/hub-common/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, - "node_modules/@esri/hub-initiatives": { - "version": "12.4.1", - "resolved": "https://registry.npmjs.org/@esri/hub-initiatives/-/hub-initiatives-12.4.1.tgz", - "integrity": "sha512-RFYpFlS5D78cJThWhnl+qn93jeOMgoCa7U8KkET+2LW7L+Tg71ZvF2BnsPh0A5qo9fD4aQ/i6tBFxuuFqveJQw==", + "node_modules/@babel/plugin-transform-literals": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.22.5.tgz", + "integrity": "sha512-fTLj4D79M+mepcw3dgFBTIDYpbcB9Sm0bpm4ppXPaO+U+PKFFyV9MGRvS0gvGw62sd10kT5lRMKXAADb9pWy8g==", + "dev": true, "dependencies": { - "tslib": "^1.13.0" + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" }, "peerDependencies": { - "@esri/arcgis-rest-auth": "^2.13.0 || 3", - "@esri/arcgis-rest-portal": "^2.13.0 || 3", - "@esri/arcgis-rest-request": "^2.13.0 || 3", - "@esri/hub-common": "^12.4.0" + "@babel/core": "^7.0.0-0" } }, - "node_modules/@esri/hub-initiatives/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, - "node_modules/@esri/hub-sites": { - "version": "12.6.0", - "resolved": "https://registry.npmjs.org/@esri/hub-sites/-/hub-sites-12.6.0.tgz", - "integrity": "sha512-qEdhNIQkkL+zwS0Z7hxNQhbqL/dYBBU3MSDktiXk41/6l23IznjcLdNmtqrDez/qEggbjL1Ed4MXQt1BLswRNQ==", + "node_modules/@babel/plugin-transform-logical-assignment-operators": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.22.5.tgz", + "integrity": "sha512-MQQOUW1KL8X0cDWfbwYP+TbVbZm16QmQXJQ+vndPtH/BoO0lOKpVoEDMI7+PskYxH+IiE0tS8xZye0qr1lGzSA==", + "dev": true, "dependencies": { - "tslib": "^1.13.0" + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" + }, + "engines": { + "node": ">=6.9.0" }, "peerDependencies": { - "@esri/arcgis-rest-auth": "^2.13.0 || 3", - "@esri/arcgis-rest-portal": "^2.19.0 || 3", - "@esri/arcgis-rest-request": "^2.13.0 || 3", - "@esri/hub-common": "^12.4.0", - "@esri/hub-initiatives": "^12.4.0", - "@esri/hub-teams": "^12.4.0" + "@babel/core": "^7.0.0-0" } }, - "node_modules/@esri/hub-sites/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, - "node_modules/@esri/hub-teams": { - "version": "12.4.1", - "resolved": "https://registry.npmjs.org/@esri/hub-teams/-/hub-teams-12.4.1.tgz", - "integrity": "sha512-olnDzWCPueH5olrlmXGqJRaiLhjBLrX+H4AbxTGmM267Wb5GOEuVdiQqOf3POOAvA8OXCIowFDMwuqZzMS0jaw==", + "node_modules/@babel/plugin-transform-member-expression-literals": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.22.5.tgz", + "integrity": "sha512-RZEdkNtzzYCFl9SE9ATaUMTj2hqMb4StarOJLrZRbqqU4HSBE7UlBw9WBWQiDzrJZJdUWiMTVDI6Gv/8DPvfew==", + "dev": true, "dependencies": { - "tslib": "^1.13.0" + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" }, "peerDependencies": { - "@esri/arcgis-rest-auth": "^2.13.0 || 3", - "@esri/arcgis-rest-portal": "^2.15.0 || 3", - "@esri/arcgis-rest-request": "^2.13.0 || 3", - "@esri/arcgis-rest-types": "^2.13.0 || 3", - "@esri/hub-common": "^12.4.0" + "@babel/core": "^7.0.0-0" } }, - "node_modules/@esri/hub-teams/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, - "node_modules/@esri/solution-common": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@esri/solution-common/-/solution-common-3.0.1.tgz", - "integrity": "sha512-5x4kNcfIsuWzpxqZahCm3HkldL3KaNS7LMrH8AwVooqPpZIgIToP6swrO9frl+fiC5YBH21AcM+BAcVnc9KmvA==", + "node_modules/@babel/plugin-transform-modules-amd": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.22.5.tgz", + "integrity": "sha512-R+PTfLTcYEmb1+kK7FNkhQ1gP4KgjpSO6HfH9+f8/yfp2Nt3ggBjiVpRwmwTlfqZLafYKJACy36yDXlEmI9HjQ==", "dev": true, "dependencies": { - "@esri/arcgis-html-sanitizer": "3.0.1", - "@esri/hub-common": "^12.37.1", - "@esri/hub-initiatives": "^12.4.1", - "@esri/hub-sites": "^12.6.0", - "@esri/hub-teams": "^12.4.1", - "@types/lodash.isplainobject": "^4.0.7", - "adlib": "3.0.7", - "jszip": "3.10.1", - "lodash.isplainobject": "^4.0.6", - "tslib": "1.14.1", - "xss": "^1.0.14" + "@babel/helper-module-transforms": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" }, "peerDependencies": { - "@esri/arcgis-rest-auth": "~3.5.0", - "@esri/arcgis-rest-feature-layer": "~3.5.0", - "@esri/arcgis-rest-portal": "~3.5.0", - "@esri/arcgis-rest-request": "~3.5.0", - "@esri/arcgis-rest-service-admin": "~3.5.0" + "@babel/core": "^7.0.0-0" } }, - "node_modules/@esri/solution-common/node_modules/adlib": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/adlib/-/adlib-3.0.7.tgz", - "integrity": "sha512-74ylfcwB7+fu+jqN6e3mBJrAWhWHI5l8icUKh8IhNhmezetLRaMBrxQKJZ+GgyrNxyW+0M12eUirY1RJ5HhWKg==", + "node_modules/@babel/plugin-transform-modules-commonjs": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.22.5.tgz", + "integrity": "sha512-B4pzOXj+ONRmuaQTg05b3y/4DuFz3WcCNAXPLb2Q0GT0TrGKGxNKV4jwsXts+StaM0LQczZbOpj8o1DLPDJIiA==", "dev": true, "dependencies": { - "esm": "^3.2.25" + "@babel/helper-module-transforms": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-simple-access": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@esri/solution-common/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - }, - "node_modules/@floating-ui/core": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.3.1.tgz", - "integrity": "sha512-Bu+AMaXNjrpjh41znzHqaz3r2Nr8hHuHZT6V2LBKMhyMl0FgKA62PNYbqnfgmzOhoWZj70Zecisbo4H1rotP5g==", - "peer": true - }, - "node_modules/@floating-ui/dom": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.4.1.tgz", - "integrity": "sha512-loCXUOLzIC3jp50RFOKXZ/kQjjz26ryr/23M+FWG9jrmAv8lRf3DUfC2AiVZ3+K316GOhB08CR+Povwz8e9mDw==", - "peer": true, + "node_modules/@babel/plugin-transform-modules-systemjs": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.22.5.tgz", + "integrity": "sha512-emtEpoaTMsOs6Tzz+nbmcePl6AKVtS1yC4YNAeMun9U8YCsgadPNxnOPQ8GhHFB2qdx+LZu9LgoC0Lthuu05DQ==", + "dev": true, "dependencies": { - "@floating-ui/core": "^1.3.1" + "@babel/helper-hoist-variables": "^7.22.5", + "@babel/helper-module-transforms": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-validator-identifier": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@humanwhocodes/config-array": { - "version": "0.11.8", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.8.tgz", - "integrity": "sha512-UybHIJzJnR5Qc/MsD9Kr+RpO2h+/P1GhOwdiLPXK5TWk5sgTdu88bTD9UP+CKbPPh5Rni1u0GjAdYQLemG8g+g==", + "node_modules/@babel/plugin-transform-modules-umd": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.22.5.tgz", + "integrity": "sha512-+S6kzefN/E1vkSsKx8kmQuqeQsvCKCd1fraCM7zXm4SFoggI099Tr4G8U81+5gtMdUeMQ4ipdQffbKLX0/7dBQ==", "dev": true, "dependencies": { - "@humanwhocodes/object-schema": "^1.2.1", - "debug": "^4.1.1", - "minimatch": "^3.0.5" + "@babel/helper-module-transforms": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" }, "engines": { - "node": ">=10.10.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@humanwhocodes/module-importer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", - "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "node_modules/@babel/plugin-transform-named-capturing-groups-regex": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.22.5.tgz", + "integrity": "sha512-YgLLKmS3aUBhHaxp5hi1WJTgOUb/NCuDHzGT9z9WTt3YG+CPRhJs6nprbStx6DnWM4dh6gt7SU3sZodbZ08adQ==", "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + }, "engines": { - "node": ">=12.22" + "node": ">=6.9.0" }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/nzakas" + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "node_modules/@humanwhocodes/object-schema": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", - "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", - "dev": true - }, - "node_modules/@istanbuljs/load-nyc-config": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", - "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", + "node_modules/@babel/plugin-transform-new-target": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.22.5.tgz", + "integrity": "sha512-AsF7K0Fx/cNKVyk3a+DW0JLo+Ua598/NxMRvxDnkpCIGFh43+h/v2xyhRUYf6oD8gE4QtL83C7zZVghMjHd+iw==", "dev": true, "dependencies": { - "camelcase": "^5.3.1", - "find-up": "^4.1.0", - "get-package-type": "^0.1.0", - "js-yaml": "^3.13.1", - "resolve-from": "^5.0.0" + "@babel/helper-plugin-utils": "^7.22.5" }, "engines": { - "node": ">=8" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "node_modules/@babel/plugin-transform-nullish-coalescing-operator": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.22.5.tgz", + "integrity": "sha512-6CF8g6z1dNYZ/VXok5uYkkBBICHZPiGEl7oDnAx2Mt1hlHVHOSIKWJaXHjQJA5VB43KZnXZDIexMchY4y2PGdA==", "dev": true, "dependencies": { - "sprintf-js": "~1.0.2" + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "node_modules/@babel/plugin-transform-numeric-separator": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.22.5.tgz", + "integrity": "sha512-NbslED1/6M+sXiwwtcAB/nieypGw02Ejf4KtDeMkCEpP6gWFMX1wI9WKYua+4oBneCCEmulOkRpwywypVZzs/g==", "dev": true, "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-numeric-separator": "^7.10.4" }, "engines": { - "node": ">=8" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "node_modules/@babel/plugin-transform-object-rest-spread": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.22.5.tgz", + "integrity": "sha512-Kk3lyDmEslH9DnvCDA1s1kkd3YWQITiBOHngOtDL9Pt6BZjzqb6hiOlb8VfjiiQJ2unmegBqZu0rx5RxJb5vmQ==", "dev": true, "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" + "@babel/compat-data": "^7.22.5", + "@babel/helper-compilation-targets": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-transform-parameters": "^7.22.5" }, - "bin": { - "js-yaml": "bin/js-yaml.js" + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "node_modules/@babel/plugin-transform-object-super": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.22.5.tgz", + "integrity": "sha512-klXqyaT9trSjIUrcsYIfETAzmOEZL3cBYqOYLJxBHfMFFggmXOv+NYSX/Jbs9mzMVESw/WycLFPRx8ba/b2Ipw==", "dev": true, "dependencies": { - "p-locate": "^4.1.0" + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-replace-supers": "^7.22.5" }, "engines": { - "node": ">=8" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "node_modules/@babel/plugin-transform-optional-catch-binding": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.22.5.tgz", + "integrity": "sha512-pH8orJahy+hzZje5b8e2QIlBWQvGpelS76C63Z+jhZKsmzfNaPQ+LaW6dcJ9bxTpo1mtXbgHwy765Ro3jftmUg==", "dev": true, "dependencies": { - "p-try": "^2.0.0" + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" }, "engines": { - "node": ">=6" + "node": ">=6.9.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "node_modules/@babel/plugin-transform-optional-chaining": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.22.10.tgz", + "integrity": "sha512-MMkQqZAZ+MGj+jGTG3OTuhKeBpNcO+0oCEbrGNEaOmiEn+1MzRyQlYsruGiU8RTK3zV6XwrVJTmwiDOyYK6J9g==", "dev": true, "dependencies": { - "p-limit": "^2.2.0" + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", + "@babel/plugin-syntax-optional-chaining": "^7.8.3" }, "engines": { - "node": ">=8" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "node_modules/@babel/plugin-transform-parameters": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.22.5.tgz", + "integrity": "sha512-AVkFUBurORBREOmHRKo06FjHYgjrabpdqRSwq6+C7R5iTCZOsM4QbcB27St0a4U6fffyAOqh3s/qEfybAhfivg==", "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, "engines": { - "node": ">=8" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@istanbuljs/schema": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", - "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", + "node_modules/@babel/plugin-transform-private-methods": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.22.5.tgz", + "integrity": "sha512-PPjh4gyrQnGe97JTalgRGMuU4icsZFnWkzicB/fUtzlKUqvsWBKEpPPfr5a2JiyirZkHxnAqkQMO5Z5B2kK3fA==", "dev": true, + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + }, "engines": { - "node": ">=8" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@jest/console": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/console/-/console-27.5.1.tgz", - "integrity": "sha512-kZ/tNpS3NXn0mlXXXPNuDZnb4c0oZ20r4K5eemM2k30ZC3G0T02nXUvyhf5YdbXWHPEJLc9qGLxEZ216MdL+Zg==", + "node_modules/@babel/plugin-transform-private-property-in-object": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.22.5.tgz", + "integrity": "sha512-/9xnaTTJcVoBtSSmrVyhtSvO3kbqS2ODoh2juEU72c3aYonNF0OMGiaz2gjukyKM2wBBYJP38S4JiE0Wfb5VMQ==", "dev": true, "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "jest-message-util": "^27.5.1", - "jest-util": "^27.5.1", - "slash": "^3.0.0" + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-create-class-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@jest/console/node_modules/@jest/types": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", - "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "node_modules/@babel/plugin-transform-property-literals": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.22.5.tgz", + "integrity": "sha512-TiOArgddK3mK/x1Qwf5hay2pxI6wCZnvQqrFSqbtg1GLl2JcNMitVH/YnqjP+M31pLUeTfzY1HAXFDnUBV30rQ==", "dev": true, "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^16.0.0", - "chalk": "^4.0.0" + "@babel/helper-plugin-utils": "^7.22.5" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@jest/console/node_modules/@types/yargs": { - "version": "16.0.5", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", - "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "node_modules/@babel/plugin-transform-regenerator": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.22.10.tgz", + "integrity": "sha512-F28b1mDt8KcT5bUyJc/U9nwzw6cV+UmTeRlXYIl2TNqMMJif0Jeey9/RQ3C4NOd2zp0/TRsDns9ttj2L523rsw==", "dev": true, "dependencies": { - "@types/yargs-parser": "*" + "@babel/helper-plugin-utils": "^7.22.5", + "regenerator-transform": "^0.15.2" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@jest/console/node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "node_modules/@babel/plugin-transform-reserved-words": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.22.5.tgz", + "integrity": "sha512-DTtGKFRQUDm8svigJzZHzb/2xatPc6TzNvAIJ5GqOKDsGFYgAskjRulbR/vGsPKq3OPqtexnz327qYpP57RFyA==", "dev": true, "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" + "@babel/helper-plugin-utils": "^7.22.5" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@jest/core": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/core/-/core-27.5.1.tgz", - "integrity": "sha512-AK6/UTrvQD0Cd24NSqmIA6rKsu0tKIxfiCducZvqxYdmMisOYAsdItspT+fQDQYARPf8XgjAFZi0ogW2agH5nQ==", + "node_modules/@babel/plugin-transform-shorthand-properties": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.22.5.tgz", + "integrity": "sha512-vM4fq9IXHscXVKzDv5itkO1X52SmdFBFcMIBZ2FRn2nqVYqw6dBexUgMvAjHW+KXpPPViD/Yo3GrDEBaRC0QYA==", "dev": true, "dependencies": { - "@jest/console": "^27.5.1", - "@jest/reporters": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "ansi-escapes": "^4.2.1", - "chalk": "^4.0.0", - "emittery": "^0.8.1", - "exit": "^0.1.2", - "graceful-fs": "^4.2.9", - "jest-changed-files": "^27.5.1", - "jest-config": "^27.5.1", - "jest-haste-map": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-resolve-dependencies": "^27.5.1", - "jest-runner": "^27.5.1", - "jest-runtime": "^27.5.1", - "jest-snapshot": "^27.5.1", - "jest-util": "^27.5.1", - "jest-validate": "^27.5.1", - "jest-watcher": "^27.5.1", - "micromatch": "^4.0.4", - "rimraf": "^3.0.0", - "slash": "^3.0.0", - "strip-ansi": "^6.0.0" + "@babel/helper-plugin-utils": "^7.22.5" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=6.9.0" }, "peerDependencies": { - "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" - }, - "peerDependenciesMeta": { - "node-notifier": { - "optional": true - } + "@babel/core": "^7.0.0-0" } }, - "node_modules/@jest/core/node_modules/@jest/transform": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz", - "integrity": "sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==", + "node_modules/@babel/plugin-transform-spread": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.22.5.tgz", + "integrity": "sha512-5ZzDQIGyvN4w8+dMmpohL6MBo+l2G7tfC/O2Dg7/hjpgeWvUx8FzfeOKxGog9IimPa4YekaQ9PlDqTLOljkcxg==", "dev": true, "dependencies": { - "@babel/core": "^7.1.0", - "@jest/types": "^27.5.1", - "babel-plugin-istanbul": "^6.1.1", - "chalk": "^4.0.0", - "convert-source-map": "^1.4.0", - "fast-json-stable-stringify": "^2.0.0", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-util": "^27.5.1", - "micromatch": "^4.0.4", - "pirates": "^4.0.4", - "slash": "^3.0.0", - "source-map": "^0.6.1", - "write-file-atomic": "^3.0.0" + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@jest/core/node_modules/@jest/types": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", - "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "node_modules/@babel/plugin-transform-sticky-regex": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.22.5.tgz", + "integrity": "sha512-zf7LuNpHG0iEeiyCNwX4j3gDg1jgt1k3ZdXBKbZSoA3BbGQGvMiSvfbZRR3Dr3aeJe3ooWFZxOOG3IRStYp2Bw==", "dev": true, "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^16.0.0", - "chalk": "^4.0.0" + "@babel/helper-plugin-utils": "^7.22.5" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@jest/core/node_modules/@types/yargs": { - "version": "16.0.5", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", - "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "node_modules/@babel/plugin-transform-template-literals": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.22.5.tgz", + "integrity": "sha512-5ciOehRNf+EyUeewo8NkbQiUs4d6ZxiHo6BcBcnFlgiJfu16q0bQUw9Jvo0b0gBKFG1SMhDSjeKXSYuJLeFSMA==", "dev": true, "dependencies": { - "@types/yargs-parser": "*" + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@jest/core/node_modules/jest-haste-map": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", - "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", + "node_modules/@babel/plugin-transform-typeof-symbol": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.22.5.tgz", + "integrity": "sha512-bYkI5lMzL4kPii4HHEEChkD0rkc+nvnlR6+o/qdqR6zrm0Sv/nodmyLhlq2DO0YKLUNd2VePmPRjJXSBh9OIdA==", "dev": true, "dependencies": { - "@jest/types": "^27.5.1", - "@types/graceful-fs": "^4.1.2", - "@types/node": "*", - "anymatch": "^3.0.3", - "fb-watchman": "^2.0.0", - "graceful-fs": "^4.2.9", - "jest-regex-util": "^27.5.1", - "jest-serializer": "^27.5.1", - "jest-util": "^27.5.1", - "jest-worker": "^27.5.1", - "micromatch": "^4.0.4", - "walker": "^1.0.7" + "@babel/helper-plugin-utils": "^7.22.5" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=6.9.0" }, - "optionalDependencies": { - "fsevents": "^2.3.2" + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@jest/core/node_modules/jest-regex-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", - "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", + "node_modules/@babel/plugin-transform-typescript": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.22.10.tgz", + "integrity": "sha512-7++c8I/ymsDo4QQBAgbraXLzIM6jmfao11KgIBEYZRReWzNWH9NtNgJcyrZiXsOPh523FQm6LfpLyy/U5fn46A==", "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-create-class-features-plugin": "^7.22.10", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-typescript": "^7.22.5" + }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@jest/core/node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "node_modules/@babel/plugin-transform-unicode-escapes": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.22.10.tgz", + "integrity": "sha512-lRfaRKGZCBqDlRU3UIFovdp9c9mEvlylmpod0/OatICsSfuQ9YFthRo1tpTkGsklEefZdqlEFdY4A2dwTb6ohg==", "dev": true, "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" + "@babel/helper-plugin-utils": "^7.22.5" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@jest/core/node_modules/jest-worker": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", - "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "node_modules/@babel/plugin-transform-unicode-property-regex": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.22.5.tgz", + "integrity": "sha512-HCCIb+CbJIAE6sXn5CjFQXMwkCClcOfPCzTlilJ8cUatfzwHlWQkbtV0zD338u9dZskwvuOYTuuaMaA8J5EI5A==", "dev": true, "dependencies": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" + "@babel/helper-create-regexp-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" }, "engines": { - "node": ">= 10.13.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@jest/core/node_modules/supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "node_modules/@babel/plugin-transform-unicode-regex": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.22.5.tgz", + "integrity": "sha512-028laaOKptN5vHJf9/Arr/HiJekMd41hOEZYvNsrsXqJ7YPYuX2bQxh31fkZzGmq3YqHRJzYFFAVYvKfMPKqyg==", "dev": true, "dependencies": { - "has-flag": "^4.0.0" + "@babel/helper-create-regexp-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" }, "engines": { - "node": ">=10" + "node": ">=6.9.0" }, - "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@jest/environment": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-27.5.1.tgz", - "integrity": "sha512-/WQjhPJe3/ghaol/4Bq480JKXV/Rfw8nQdN7f41fM8VDHLcxKXou6QyXAh3EFr9/bVG3x74z1NWDkP87EiY8gA==", + "node_modules/@babel/plugin-transform-unicode-sets-regex": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.22.5.tgz", + "integrity": "sha512-lhMfi4FC15j13eKrh3DnYHjpGj6UKQHtNKTbtc1igvAhRy4+kLhV07OpLcsN0VgDEw/MjAvJO4BdMJsHwMhzCg==", "dev": true, "dependencies": { - "@jest/fake-timers": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "jest-mock": "^27.5.1" + "@babel/helper-create-regexp-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "node_modules/@jest/environment/node_modules/@jest/types": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", - "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "node_modules/@babel/preset-env": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.22.10.tgz", + "integrity": "sha512-riHpLb1drNkpLlocmSyEg4oYJIQFeXAK/d7rI6mbD0XsvoTOOweXDmQPG/ErxsEhWk3rl3Q/3F6RFQlVFS8m0A==", "dev": true, "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^16.0.0", - "chalk": "^4.0.0" + "@babel/compat-data": "^7.22.9", + "@babel/helper-compilation-targets": "^7.22.10", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-validator-option": "^7.22.5", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.22.5", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.22.5", + "@babel/plugin-proposal-private-property-in-object": "7.21.0-placeholder-for-preset-env.2", + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-class-properties": "^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-import-assertions": "^7.22.5", + "@babel/plugin-syntax-import-attributes": "^7.22.5", + "@babel/plugin-syntax-import-meta": "^7.10.4", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.10.4", + "@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.5", + "@babel/plugin-syntax-top-level-await": "^7.14.5", + "@babel/plugin-syntax-unicode-sets-regex": "^7.18.6", + "@babel/plugin-transform-arrow-functions": "^7.22.5", + "@babel/plugin-transform-async-generator-functions": "^7.22.10", + "@babel/plugin-transform-async-to-generator": "^7.22.5", + "@babel/plugin-transform-block-scoped-functions": "^7.22.5", + "@babel/plugin-transform-block-scoping": "^7.22.10", + "@babel/plugin-transform-class-properties": "^7.22.5", + "@babel/plugin-transform-class-static-block": "^7.22.5", + "@babel/plugin-transform-classes": "^7.22.6", + "@babel/plugin-transform-computed-properties": "^7.22.5", + "@babel/plugin-transform-destructuring": "^7.22.10", + "@babel/plugin-transform-dotall-regex": "^7.22.5", + "@babel/plugin-transform-duplicate-keys": "^7.22.5", + "@babel/plugin-transform-dynamic-import": "^7.22.5", + "@babel/plugin-transform-exponentiation-operator": "^7.22.5", + "@babel/plugin-transform-export-namespace-from": "^7.22.5", + "@babel/plugin-transform-for-of": "^7.22.5", + "@babel/plugin-transform-function-name": "^7.22.5", + "@babel/plugin-transform-json-strings": "^7.22.5", + "@babel/plugin-transform-literals": "^7.22.5", + "@babel/plugin-transform-logical-assignment-operators": "^7.22.5", + "@babel/plugin-transform-member-expression-literals": "^7.22.5", + "@babel/plugin-transform-modules-amd": "^7.22.5", + "@babel/plugin-transform-modules-commonjs": "^7.22.5", + "@babel/plugin-transform-modules-systemjs": "^7.22.5", + "@babel/plugin-transform-modules-umd": "^7.22.5", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.22.5", + "@babel/plugin-transform-new-target": "^7.22.5", + "@babel/plugin-transform-nullish-coalescing-operator": "^7.22.5", + "@babel/plugin-transform-numeric-separator": "^7.22.5", + "@babel/plugin-transform-object-rest-spread": "^7.22.5", + "@babel/plugin-transform-object-super": "^7.22.5", + "@babel/plugin-transform-optional-catch-binding": "^7.22.5", + "@babel/plugin-transform-optional-chaining": "^7.22.10", + "@babel/plugin-transform-parameters": "^7.22.5", + "@babel/plugin-transform-private-methods": "^7.22.5", + "@babel/plugin-transform-private-property-in-object": "^7.22.5", + "@babel/plugin-transform-property-literals": "^7.22.5", + "@babel/plugin-transform-regenerator": "^7.22.10", + "@babel/plugin-transform-reserved-words": "^7.22.5", + "@babel/plugin-transform-shorthand-properties": "^7.22.5", + "@babel/plugin-transform-spread": "^7.22.5", + "@babel/plugin-transform-sticky-regex": "^7.22.5", + "@babel/plugin-transform-template-literals": "^7.22.5", + "@babel/plugin-transform-typeof-symbol": "^7.22.5", + "@babel/plugin-transform-unicode-escapes": "^7.22.10", + "@babel/plugin-transform-unicode-property-regex": "^7.22.5", + "@babel/plugin-transform-unicode-regex": "^7.22.5", + "@babel/plugin-transform-unicode-sets-regex": "^7.22.5", + "@babel/preset-modules": "0.1.6-no-external-plugins", + "@babel/types": "^7.22.10", + "babel-plugin-polyfill-corejs2": "^0.4.5", + "babel-plugin-polyfill-corejs3": "^0.8.3", + "babel-plugin-polyfill-regenerator": "^0.5.2", + "core-js-compat": "^3.31.0", + "semver": "^6.3.1" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@jest/environment/node_modules/@types/yargs": { - "version": "16.0.5", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", - "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "node_modules/@babel/preset-env/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "dev": true, - "dependencies": { - "@types/yargs-parser": "*" + "bin": { + "semver": "bin/semver.js" } }, - "node_modules/@jest/fake-timers": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-27.5.1.tgz", - "integrity": "sha512-/aPowoolwa07k7/oM3aASneNeBGCmGQsc3ugN4u6s4C/+s5M64MFo/+djTdiwcbQlRfFElGuDXWzaWj6QgKObQ==", + "node_modules/@babel/preset-modules": { + "version": "0.1.6-no-external-plugins", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.6-no-external-plugins.tgz", + "integrity": "sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==", "dev": true, "dependencies": { - "@jest/types": "^27.5.1", - "@sinonjs/fake-timers": "^8.0.1", - "@types/node": "*", - "jest-message-util": "^27.5.1", - "jest-mock": "^27.5.1", - "jest-util": "^27.5.1" + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/types": "^7.4.4", + "esutils": "^2.0.2" }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "peerDependencies": { + "@babel/core": "^7.0.0-0 || ^8.0.0-0 <8.0.0" } }, - "node_modules/@jest/fake-timers/node_modules/@jest/types": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", - "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "node_modules/@babel/preset-typescript": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.22.5.tgz", + "integrity": "sha512-YbPaal9LxztSGhmndR46FmAbkJ/1fAsw293tSU+I5E5h+cnJ3d4GTwyUgGYmOXJYdGA+uNePle4qbaRzj2NISQ==", "dev": true, "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^16.0.0", - "chalk": "^4.0.0" + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-validator-option": "^7.22.5", + "@babel/plugin-syntax-jsx": "^7.22.5", + "@babel/plugin-transform-modules-commonjs": "^7.22.5", + "@babel/plugin-transform-typescript": "^7.22.5" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@jest/fake-timers/node_modules/@types/yargs": { - "version": "16.0.5", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", - "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", - "dev": true, - "dependencies": { - "@types/yargs-parser": "*" - } + "node_modules/@babel/regjsgen": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@babel/regjsgen/-/regjsgen-0.8.0.tgz", + "integrity": "sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==", + "dev": true }, - "node_modules/@jest/fake-timers/node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, + "node_modules/@babel/runtime": { + "version": "7.20.13", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.20.13.tgz", + "integrity": "sha512-gt3PKXs0DBoL9xCvOIIZ2NEqAGZqHjAnmVbfQtB620V0uReIQutpel14KcneZuer7UioY8ALKZ7iocavvzTNFA==", "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" + "regenerator-runtime": "^0.13.11" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=6.9.0" } }, - "node_modules/@jest/globals": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-27.5.1.tgz", - "integrity": "sha512-ZEJNB41OBQQgGzgyInAv0UUfDDj3upmHydjieSxFvTRuZElrx7tXg/uVQ5hYVEwiXs3+aMsAeEc9X7xiSKCm4Q==", + "node_modules/@babel/runtime/node_modules/regenerator-runtime": { + "version": "0.13.11", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", + "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==" + }, + "node_modules/@babel/template": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.5.tgz", + "integrity": "sha512-X7yV7eiwAxdj9k94NEylvbVHLiVG1nvzCV2EAowhxLTwODV1jl9UzZ48leOC0sH7OnuHrIkllaBgneUykIcZaw==", "dev": true, "dependencies": { - "@jest/environment": "^27.5.1", - "@jest/types": "^27.5.1", - "expect": "^27.5.1" + "@babel/code-frame": "^7.22.5", + "@babel/parser": "^7.22.5", + "@babel/types": "^7.22.5" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=6.9.0" } }, - "node_modules/@jest/globals/node_modules/@jest/types": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", - "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "node_modules/@babel/traverse": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.22.10.tgz", + "integrity": "sha512-Q/urqV4pRByiNNpb/f5OSv28ZlGJiFiiTh+GAHktbIrkPhPbl90+uW6SmpoLyZqutrg9AEaEf3Q/ZBRHBXgxig==", "dev": true, "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^16.0.0", - "chalk": "^4.0.0" + "@babel/code-frame": "^7.22.10", + "@babel/generator": "^7.22.10", + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-function-name": "^7.22.5", + "@babel/helper-hoist-variables": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "@babel/parser": "^7.22.10", + "@babel/types": "^7.22.10", + "debug": "^4.1.0", + "globals": "^11.1.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=6.9.0" } }, - "node_modules/@jest/globals/node_modules/@types/yargs": { - "version": "16.0.5", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", - "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", - "dev": true, - "dependencies": { - "@types/yargs-parser": "*" - } - }, - "node_modules/@jest/reporters": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-27.5.1.tgz", - "integrity": "sha512-cPXh9hWIlVJMQkVk84aIvXuBB4uQQmFqZiacloFuGiP3ah1sbCxCosidXFDfqG8+6fO1oR2dTJTlsOy4VFmUfw==", + "node_modules/@babel/traverse/node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", "dev": true, - "dependencies": { - "@bcoe/v8-coverage": "^0.2.3", - "@jest/console": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "collect-v8-coverage": "^1.0.0", - "exit": "^0.1.2", - "glob": "^7.1.2", - "graceful-fs": "^4.2.9", - "istanbul-lib-coverage": "^3.0.0", - "istanbul-lib-instrument": "^5.1.0", - "istanbul-lib-report": "^3.0.0", - "istanbul-lib-source-maps": "^4.0.0", - "istanbul-reports": "^3.1.3", - "jest-haste-map": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-util": "^27.5.1", - "jest-worker": "^27.5.1", - "slash": "^3.0.0", - "source-map": "^0.6.0", - "string-length": "^4.0.1", - "terminal-link": "^2.0.0", - "v8-to-istanbul": "^8.1.0" - }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - }, - "peerDependencies": { - "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" - }, - "peerDependenciesMeta": { - "node-notifier": { - "optional": true - } + "node": ">=4" } }, - "node_modules/@jest/reporters/node_modules/@jest/transform": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz", - "integrity": "sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==", + "node_modules/@babel/types": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.22.10.tgz", + "integrity": "sha512-obaoigiLrlDZ7TUQln/8m4mSqIW2QFeOrCQc9r+xsaHGNoplVNYlRVpsfE8Vj35GEm2ZH4ZhrNYogs/3fj85kg==", "dev": true, "dependencies": { - "@babel/core": "^7.1.0", - "@jest/types": "^27.5.1", - "babel-plugin-istanbul": "^6.1.1", - "chalk": "^4.0.0", - "convert-source-map": "^1.4.0", - "fast-json-stable-stringify": "^2.0.0", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-util": "^27.5.1", - "micromatch": "^4.0.4", - "pirates": "^4.0.4", - "slash": "^3.0.0", - "source-map": "^0.6.1", - "write-file-atomic": "^3.0.0" + "@babel/helper-string-parser": "^7.22.5", + "@babel/helper-validator-identifier": "^7.22.5", + "to-fast-properties": "^2.0.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=6.9.0" } }, - "node_modules/@jest/reporters/node_modules/@jest/types": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", - "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "node_modules/@bcoe/v8-coverage": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", + "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", + "dev": true + }, + "node_modules/@cspotcode/source-map-support": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", + "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", "dev": true, "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^16.0.0", - "chalk": "^4.0.0" + "@jridgewell/trace-mapping": "0.3.9" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=12" } }, - "node_modules/@jest/reporters/node_modules/@types/yargs": { - "version": "16.0.5", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", - "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "node_modules/@cspotcode/source-map-support/node_modules/@jridgewell/trace-mapping": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", + "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", "dev": true, "dependencies": { - "@types/yargs-parser": "*" + "@jridgewell/resolve-uri": "^3.0.3", + "@jridgewell/sourcemap-codec": "^1.4.10" } }, - "node_modules/@jest/reporters/node_modules/jest-haste-map": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", - "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", + "node_modules/@eslint/eslintrc": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.4.1.tgz", + "integrity": "sha512-XXrH9Uarn0stsyldqDYq8r++mROmWRI1xKMXa640Bb//SY1+ECYX6VzT6Lcx5frD0V30XieqJ0oX9I2Xj5aoMA==", "dev": true, "dependencies": { - "@jest/types": "^27.5.1", - "@types/graceful-fs": "^4.1.2", - "@types/node": "*", - "anymatch": "^3.0.3", - "fb-watchman": "^2.0.0", - "graceful-fs": "^4.2.9", - "jest-regex-util": "^27.5.1", - "jest-serializer": "^27.5.1", - "jest-util": "^27.5.1", - "jest-worker": "^27.5.1", - "micromatch": "^4.0.4", - "walker": "^1.0.7" + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^9.4.0", + "globals": "^13.19.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, - "optionalDependencies": { - "fsevents": "^2.3.2" + "funding": { + "url": "https://opencollective.com/eslint" } }, - "node_modules/@jest/reporters/node_modules/jest-regex-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", - "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", + "node_modules/@esri/arcgis-html-sanitizer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@esri/arcgis-html-sanitizer/-/arcgis-html-sanitizer-3.0.1.tgz", + "integrity": "sha512-cwZJwsYCJZwtBQU2AmaiIVFg5nZcVwInPYja1/OgC9iKYO+ytZRoc5h+0S9/ygbFNoS8Nd0RX9A85stLX/BgiA==", "dev": true, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "dependencies": { + "xss": "1.0.13" } }, - "node_modules/@jest/reporters/node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "node_modules/@esri/arcgis-html-sanitizer/node_modules/xss": { + "version": "1.0.13", + "resolved": "https://registry.npmjs.org/xss/-/xss-1.0.13.tgz", + "integrity": "sha512-clu7dxTm1e8Mo5fz3n/oW3UCXBfV89xZ72jM8yzo1vR/pIS0w3sgB3XV2H8Vm6zfGnHL0FzvLJPJEBhd86/z4Q==", "dev": true, "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" + "commander": "^2.20.3", + "cssfilter": "0.0.10" + }, + "bin": { + "xss": "bin/xss" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">= 0.10.0" } }, - "node_modules/@jest/reporters/node_modules/jest-worker": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", - "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", - "dev": true, + "node_modules/@esri/arcgis-rest-auth": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/@esri/arcgis-rest-auth/-/arcgis-rest-auth-3.5.0.tgz", + "integrity": "sha512-EeKfGxSLEI2KvGE2FvN+kYDR+a7RWLf+uNzsYDXWK/8wOYrtj+lh091NHxgHU/Fd+NDoAcHSoTSPCCEpgS0Gsg==", + "deprecated": "Development work on ArcGIS REST JS 3.x has ceased. This packages funtionality has moved to @esri/arcgis-rest-request at 4.x.x https://developers.arcgis.com/arcgis-rest-js/release-notes/upgrade-v3-v4/.", + "peer": true, "dependencies": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" + "@esri/arcgis-rest-types": "^3.5.0", + "tslib": "^1.13.0" }, - "engines": { - "node": ">= 10.13.0" + "peerDependencies": { + "@esri/arcgis-rest-request": "^3.0.0" } }, - "node_modules/@jest/reporters/node_modules/supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", - "dev": true, + "node_modules/@esri/arcgis-rest-auth/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "peer": true + }, + "node_modules/@esri/arcgis-rest-feature-layer": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/@esri/arcgis-rest-feature-layer/-/arcgis-rest-feature-layer-3.5.0.tgz", + "integrity": "sha512-+qjJnwPaYYNQqce20FF1iNvQ1BeFVue6ka8MnDu4BNhSeyw9OKD2WoI1pXfKVkSHpXTHeQIfyMVLC7/nFNja8g==", + "deprecated": "Development work on ArcGIS REST JS 3.x has ceased. This packages funtionality has moved to @esri/arcgis-rest-feature-service at 4.x.x https://developers.arcgis.com/arcgis-rest-js/release-notes/upgrade-v3-v4/.", + "peer": true, "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=10" + "@esri/arcgis-rest-types": "^3.5.0", + "tslib": "^1.13.0" }, - "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" + "peerDependencies": { + "@esri/arcgis-rest-auth": "^3.0.0", + "@esri/arcgis-rest-request": "^3.0.0" } }, - "node_modules/@jest/source-map": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-27.5.1.tgz", - "integrity": "sha512-y9NIHUYF3PJRlHk98NdC/N1gl88BL08aQQgu4k4ZopQkCw9t9cV8mtl3TV8b/YCB8XaVTFrmUTAJvjsntDireg==", - "dev": true, + "node_modules/@esri/arcgis-rest-feature-layer/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "peer": true + }, + "node_modules/@esri/arcgis-rest-portal": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/@esri/arcgis-rest-portal/-/arcgis-rest-portal-3.5.0.tgz", + "integrity": "sha512-rrl/eUWOxdA5Y0MDYuvCopwNkf8loIfVIE4j1kGRTIz32n4uqdhb38sYKd2X4JK8QW67vyKq0SqxMSIYOHGXQg==", + "peer": true, "dependencies": { - "callsites": "^3.0.0", - "graceful-fs": "^4.2.9", - "source-map": "^0.6.0" + "@esri/arcgis-rest-types": "^3.5.0", + "tslib": "^1.13.0" }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "peerDependencies": { + "@esri/arcgis-rest-auth": "^3.0.0", + "@esri/arcgis-rest-request": "^3.0.0" } }, - "node_modules/@jest/test-result": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-27.5.1.tgz", - "integrity": "sha512-EW35l2RYFUcUQxFJz5Cv5MTOxlJIQs4I7gxzi2zVU7PJhOwfYq1MdC5nhSmYjX1gmMmLPvB3sIaC+BkcHRBfag==", - "dev": true, + "node_modules/@esri/arcgis-rest-portal/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "peer": true + }, + "node_modules/@esri/arcgis-rest-request": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/@esri/arcgis-rest-request/-/arcgis-rest-request-3.5.0.tgz", + "integrity": "sha512-FlI32b2EF/SlJeGe8GZtVqIlvHDxI18bgIB2vQINi9fAC07F1Jg3JMglDTDSl8CCYS/9cYp62n7lWPUwmvn/xQ==", + "peer": true, "dependencies": { - "@jest/console": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/istanbul-lib-coverage": "^2.0.0", - "collect-v8-coverage": "^1.0.0" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "tslib": "^1.10.0" } }, - "node_modules/@jest/test-result/node_modules/@jest/types": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", - "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", - "dev": true, + "node_modules/@esri/arcgis-rest-request/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "peer": true + }, + "node_modules/@esri/arcgis-rest-service-admin": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/@esri/arcgis-rest-service-admin/-/arcgis-rest-service-admin-3.5.0.tgz", + "integrity": "sha512-gZzqb0I9kAyIIx2bBTU070QSEd5CV7C0vyd5IBWZOJqgkvA4Yf/LOPCMZ2s/+y2jF+4B1vRMGjpInovvfEk9Rw==", + "deprecated": "Development work on ArcGIS REST JS 3.x has ceased. This packages funtionality has moved to @esri/arcgis-rest-feature-service at 4.x.x https://developers.arcgis.com/arcgis-rest-js/release-notes/upgrade-v3-v4/.", + "peer": true, "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^16.0.0", - "chalk": "^4.0.0" + "@esri/arcgis-rest-types": "^3.5.0", + "tslib": "^1.13.0" }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "peerDependencies": { + "@esri/arcgis-rest-auth": "^3.0.0", + "@esri/arcgis-rest-portal": "^3.0.0", + "@esri/arcgis-rest-request": "^3.0.0" } }, - "node_modules/@jest/test-result/node_modules/@types/yargs": { - "version": "16.0.5", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", - "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", - "dev": true, - "dependencies": { - "@types/yargs-parser": "*" - } + "node_modules/@esri/arcgis-rest-service-admin/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "peer": true }, - "node_modules/@jest/test-sequencer": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-27.5.1.tgz", - "integrity": "sha512-LCheJF7WB2+9JuCS7VB/EmGIdQuhtqjRNI9A43idHv3E4KltCTsPsLxvdaubFHSYwY/fNjMWjl6vNRhDiN7vpQ==", - "dev": true, + "node_modules/@esri/arcgis-rest-types": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/@esri/arcgis-rest-types/-/arcgis-rest-types-3.6.0.tgz", + "integrity": "sha512-t6QWdVNmqB9OloYAvVWYNjvqlnrXs/m0nCRNwPGt3ZiAPXn5CpkpSn2UD6LPqGp6vPxKG81lbFQvwCw9az4qIg==", + "peer": true + }, + "node_modules/@esri/calcite-components": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/@esri/calcite-components/-/calcite-components-1.4.3.tgz", + "integrity": "sha512-3Yj0ZBOPBCIEp+YPJTM0C6cBmbxFXXsG9a6yv0DKxkaERj7te+hb3DQ1fVbG/lQsMLOdrQHiE70zdXSzMKvKCg==", + "peer": true, "dependencies": { - "@jest/test-result": "^27.5.1", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", - "jest-runtime": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "@floating-ui/dom": "1.4.1", + "@stencil/core": "2.22.3", + "@types/color": "3.0.3", + "color": "4.2.3", + "composed-offset-position": "0.0.4", + "dayjs": "1.11.8", + "focus-trap": "7.4.3", + "form-request-submit-polyfill": "2.0.0", + "lodash-es": "4.17.21", + "sortablejs": "1.15.0" } }, - "node_modules/@jest/test-sequencer/node_modules/@jest/types": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", - "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", - "dev": true, - "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^16.0.0", - "chalk": "^4.0.0" + "node_modules/@esri/calcite-components/node_modules/@stencil/core": { + "version": "2.22.3", + "resolved": "https://registry.npmjs.org/@stencil/core/-/core-2.22.3.tgz", + "integrity": "sha512-kmVA0M/HojwsfkeHsifvHVIYe4l5tin7J5+DLgtl8h6WWfiMClND5K3ifCXXI2ETDNKiEk21p6jql3Fx9o2rng==", + "peer": true, + "bin": { + "stencil": "bin/stencil" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=12.10.0", + "npm": ">=6.0.0" } }, - "node_modules/@jest/test-sequencer/node_modules/@types/yargs": { - "version": "16.0.5", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", - "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", - "dev": true, + "node_modules/@esri/calcite-components/node_modules/focus-trap": { + "version": "7.4.3", + "resolved": "https://registry.npmjs.org/focus-trap/-/focus-trap-7.4.3.tgz", + "integrity": "sha512-BgSSbK4GPnS2VbtZ50VtOv1Sti6DIkj3+LkVjiWMNjLeAp1SH1UlLx3ULu/DCu4vq5R4/uvTm+zrvsMsuYmGLg==", + "peer": true, "dependencies": { - "@types/yargs-parser": "*" + "tabbable": "^6.1.2" } }, - "node_modules/@jest/test-sequencer/node_modules/jest-haste-map": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", - "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", + "node_modules/@esri/eslint-plugin-calcite-components": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/@esri/eslint-plugin-calcite-components/-/eslint-plugin-calcite-components-0.2.2.tgz", + "integrity": "sha512-vmnJ8ogPdEiqq9iyRVJM/YhGMLqzbId35RqN3dS0mj4LWB3USIYMRbLqxtSHlxeWtOD4g6psdSj6eF4oWTXfuQ==", "dev": true, "dependencies": { - "@jest/types": "^27.5.1", - "@types/graceful-fs": "^4.1.2", - "@types/node": "*", - "anymatch": "^3.0.3", - "fb-watchman": "^2.0.0", - "graceful-fs": "^4.2.9", - "jest-regex-util": "^27.5.1", - "jest-serializer": "^27.5.1", - "jest-util": "^27.5.1", - "jest-worker": "^27.5.1", - "micromatch": "^4.0.4", - "walker": "^1.0.7" + "stencil-eslint-core": "~0.3.1", + "tsutils": "~3.21.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=8.9.0" }, - "optionalDependencies": { - "fsevents": "^2.3.2" - } - }, - "node_modules/@jest/test-sequencer/node_modules/jest-regex-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", - "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", - "dev": true, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "peerDependencies": { + "@typescript-eslint/parser": "^5.8.0", + "eslint": "^8" } }, - "node_modules/@jest/test-sequencer/node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, + "node_modules/@esri/hub-common": { + "version": "12.37.1", + "resolved": "https://registry.npmjs.org/@esri/hub-common/-/hub-common-12.37.1.tgz", + "integrity": "sha512-9gIxzIOo5dRFThk3A5Vkwzqxb1MMLZEKLAY2h0pYahu0hFP3nJpGLA65ODUduFiqnLrCOFUxgPd7qQkCthrSQA==", "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" + "abab": "^2.0.5", + "adlib": "^3.0.8", + "ajv": "^6.12.6", + "fast-xml-parser": "^3.21.0", + "json-schema-typed": "^7.0.3", + "jsonapi-typescript": "^0.1.3", + "tslib": "^1.13.0" }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "peerDependencies": { + "@esri/arcgis-rest-auth": "^2.14.0 || 3", + "@esri/arcgis-rest-feature-layer": "^3.2.0", + "@esri/arcgis-rest-portal": "^2.18.0 || 3", + "@esri/arcgis-rest-request": "^2.14.0 || 3", + "@esri/arcgis-rest-types": "^2.15.0 || 3" } }, - "node_modules/@jest/test-sequencer/node_modules/jest-worker": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", - "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", - "dev": true, + "node_modules/@esri/hub-common/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@esri/hub-initiatives": { + "version": "12.4.1", + "resolved": "https://registry.npmjs.org/@esri/hub-initiatives/-/hub-initiatives-12.4.1.tgz", + "integrity": "sha512-RFYpFlS5D78cJThWhnl+qn93jeOMgoCa7U8KkET+2LW7L+Tg71ZvF2BnsPh0A5qo9fD4aQ/i6tBFxuuFqveJQw==", "dependencies": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" + "tslib": "^1.13.0" }, - "engines": { - "node": ">= 10.13.0" + "peerDependencies": { + "@esri/arcgis-rest-auth": "^2.13.0 || 3", + "@esri/arcgis-rest-portal": "^2.13.0 || 3", + "@esri/arcgis-rest-request": "^2.13.0 || 3", + "@esri/hub-common": "^12.4.0" } }, - "node_modules/@jest/test-sequencer/node_modules/supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", - "dev": true, + "node_modules/@esri/hub-initiatives/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@esri/hub-sites": { + "version": "12.6.0", + "resolved": "https://registry.npmjs.org/@esri/hub-sites/-/hub-sites-12.6.0.tgz", + "integrity": "sha512-qEdhNIQkkL+zwS0Z7hxNQhbqL/dYBBU3MSDktiXk41/6l23IznjcLdNmtqrDez/qEggbjL1Ed4MXQt1BLswRNQ==", "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=10" + "tslib": "^1.13.0" }, - "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" + "peerDependencies": { + "@esri/arcgis-rest-auth": "^2.13.0 || 3", + "@esri/arcgis-rest-portal": "^2.19.0 || 3", + "@esri/arcgis-rest-request": "^2.13.0 || 3", + "@esri/hub-common": "^12.4.0", + "@esri/hub-initiatives": "^12.4.0", + "@esri/hub-teams": "^12.4.0" } }, - "node_modules/@jridgewell/gen-mapping": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", - "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", - "dev": true, + "node_modules/@esri/hub-sites/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@esri/hub-teams": { + "version": "12.4.1", + "resolved": "https://registry.npmjs.org/@esri/hub-teams/-/hub-teams-12.4.1.tgz", + "integrity": "sha512-olnDzWCPueH5olrlmXGqJRaiLhjBLrX+H4AbxTGmM267Wb5GOEuVdiQqOf3POOAvA8OXCIowFDMwuqZzMS0jaw==", "dependencies": { - "@jridgewell/set-array": "^1.0.0", - "@jridgewell/sourcemap-codec": "^1.4.10" + "tslib": "^1.13.0" }, - "engines": { - "node": ">=6.0.0" + "peerDependencies": { + "@esri/arcgis-rest-auth": "^2.13.0 || 3", + "@esri/arcgis-rest-portal": "^2.15.0 || 3", + "@esri/arcgis-rest-request": "^2.13.0 || 3", + "@esri/arcgis-rest-types": "^2.13.0 || 3", + "@esri/hub-common": "^12.4.0" } }, - "node_modules/@jridgewell/resolve-uri": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", - "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", + "node_modules/@esri/hub-teams/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@esri/solution-common": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@esri/solution-common/-/solution-common-3.0.1.tgz", + "integrity": "sha512-5x4kNcfIsuWzpxqZahCm3HkldL3KaNS7LMrH8AwVooqPpZIgIToP6swrO9frl+fiC5YBH21AcM+BAcVnc9KmvA==", "dev": true, - "engines": { - "node": ">=6.0.0" + "dependencies": { + "@esri/arcgis-html-sanitizer": "3.0.1", + "@esri/hub-common": "^12.37.1", + "@esri/hub-initiatives": "^12.4.1", + "@esri/hub-sites": "^12.6.0", + "@esri/hub-teams": "^12.4.1", + "@types/lodash.isplainobject": "^4.0.7", + "adlib": "3.0.7", + "jszip": "3.10.1", + "lodash.isplainobject": "^4.0.6", + "tslib": "1.14.1", + "xss": "^1.0.14" + }, + "peerDependencies": { + "@esri/arcgis-rest-auth": "~3.5.0", + "@esri/arcgis-rest-feature-layer": "~3.5.0", + "@esri/arcgis-rest-portal": "~3.5.0", + "@esri/arcgis-rest-request": "~3.5.0", + "@esri/arcgis-rest-service-admin": "~3.5.0" } }, - "node_modules/@jridgewell/set-array": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", - "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "node_modules/@esri/solution-common/node_modules/adlib": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/adlib/-/adlib-3.0.7.tgz", + "integrity": "sha512-74ylfcwB7+fu+jqN6e3mBJrAWhWHI5l8icUKh8IhNhmezetLRaMBrxQKJZ+GgyrNxyW+0M12eUirY1RJ5HhWKg==", "dev": true, - "engines": { - "node": ">=6.0.0" + "dependencies": { + "esm": "^3.2.25" } }, - "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.14", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", - "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", + "node_modules/@esri/solution-common/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", "dev": true }, - "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.19", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.19.tgz", - "integrity": "sha512-kf37QtfW+Hwx/buWGMPcR60iF9ziHa6r/CZJIHbmcm4+0qrXiVdxegAH0F6yddEVQ7zdkjcGCgCzUu+BcbhQxw==", - "dev": true, - "dependencies": { - "@jridgewell/resolve-uri": "^3.1.0", - "@jridgewell/sourcemap-codec": "^1.4.14" - } + "node_modules/@floating-ui/core": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.3.1.tgz", + "integrity": "sha512-Bu+AMaXNjrpjh41znzHqaz3r2Nr8hHuHZT6V2LBKMhyMl0FgKA62PNYbqnfgmzOhoWZj70Zecisbo4H1rotP5g==", + "peer": true }, - "node_modules/@nicolo-ribaudo/eslint-scope-5-internals": { - "version": "5.1.1-v1", - "resolved": "https://registry.npmjs.org/@nicolo-ribaudo/eslint-scope-5-internals/-/eslint-scope-5-internals-5.1.1-v1.tgz", - "integrity": "sha512-54/JRvkLIzzDWshCWfuhadfrfZVPiElY8Fcgmg1HroEly/EDSszzhBAsarCux+D/kOslTRquNzuyGSmUSTTHGg==", - "dev": true, + "node_modules/@floating-ui/dom": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.4.1.tgz", + "integrity": "sha512-loCXUOLzIC3jp50RFOKXZ/kQjjz26ryr/23M+FWG9jrmAv8lRf3DUfC2AiVZ3+K316GOhB08CR+Povwz8e9mDw==", + "peer": true, "dependencies": { - "eslint-scope": "5.1.1" + "@floating-ui/core": "^1.3.1" } }, - "node_modules/@nodelib/fs.scandir": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", - "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "node_modules/@humanwhocodes/config-array": { + "version": "0.11.8", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.8.tgz", + "integrity": "sha512-UybHIJzJnR5Qc/MsD9Kr+RpO2h+/P1GhOwdiLPXK5TWk5sgTdu88bTD9UP+CKbPPh5Rni1u0GjAdYQLemG8g+g==", "dev": true, "dependencies": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" + "@humanwhocodes/object-schema": "^1.2.1", + "debug": "^4.1.1", + "minimatch": "^3.0.5" }, "engines": { - "node": ">= 8" + "node": ">=10.10.0" } }, - "node_modules/@nodelib/fs.stat": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", - "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "node_modules/@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", "dev": true, "engines": { - "node": ">= 8" + "node": ">=12.22" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" } }, - "node_modules/@nodelib/fs.walk": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", - "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "node_modules/@humanwhocodes/object-schema": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", + "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", + "dev": true + }, + "node_modules/@istanbuljs/load-nyc-config": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", + "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", "dev": true, "dependencies": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" + "camelcase": "^5.3.1", + "find-up": "^4.1.0", + "get-package-type": "^0.1.0", + "js-yaml": "^3.13.1", + "resolve-from": "^5.0.0" }, "engines": { - "node": ">= 8" + "node": ">=8" } }, - "node_modules/@octokit/auth-token": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-2.5.0.tgz", - "integrity": "sha512-r5FVUJCOLl19AxiuZD2VRZ/ORjp/4IN98Of6YJoJOkY75CIBuYfmiNHGrDwXr+aLGG55igl9QrxX3hbiXlLb+g==", + "node_modules/@istanbuljs/load-nyc-config/node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", "dev": true, "dependencies": { - "@octokit/types": "^6.0.3" + "sprintf-js": "~1.0.2" } }, - "node_modules/@octokit/core": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/@octokit/core/-/core-3.6.0.tgz", - "integrity": "sha512-7RKRKuA4xTjMhY+eG3jthb3hlZCsOwg3rztWh75Xc+ShDWOfDDATWbeZpAHBNRpm4Tv9WgBMOy1zEJYXG6NJ7Q==", + "node_modules/@istanbuljs/load-nyc-config/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", "dev": true, "dependencies": { - "@octokit/auth-token": "^2.4.4", - "@octokit/graphql": "^4.5.8", - "@octokit/request": "^5.6.3", - "@octokit/request-error": "^2.0.5", - "@octokit/types": "^6.0.3", - "before-after-hook": "^2.2.0", - "universal-user-agent": "^6.0.0" + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "node_modules/@octokit/endpoint": { - "version": "6.0.12", - "resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-6.0.12.tgz", - "integrity": "sha512-lF3puPwkQWGfkMClXb4k/eUT/nZKQfxinRWJrdZaJO85Dqwo/G0yOC434Jr2ojwafWJMYqFGFa5ms4jJUgujdA==", + "node_modules/@istanbuljs/load-nyc-config/node_modules/js-yaml": { + "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, "dependencies": { - "@octokit/types": "^6.0.3", - "is-plain-object": "^5.0.0", - "universal-user-agent": "^6.0.0" + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" } }, - "node_modules/@octokit/graphql": { - "version": "4.8.0", - "resolved": "https://registry.npmjs.org/@octokit/graphql/-/graphql-4.8.0.tgz", - "integrity": "sha512-0gv+qLSBLKF0z8TKaSKTsS39scVKF9dbMxJpj3U0vC7wjNWFuIpL/z76Qe2fiuCbDRcJSavkXsVtMS6/dtQQsg==", + "node_modules/@istanbuljs/load-nyc-config/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", "dev": true, "dependencies": { - "@octokit/request": "^5.6.0", - "@octokit/types": "^6.0.3", - "universal-user-agent": "^6.0.0" + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" } }, - "node_modules/@octokit/openapi-types": { - "version": "12.11.0", - "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-12.11.0.tgz", - "integrity": "sha512-VsXyi8peyRq9PqIz/tpqiL2w3w80OgVMwBHltTml3LmVvXiphgeqmY9mvBw9Wu7e0QWk/fqD37ux8yP5uVekyQ==", - "dev": true - }, - "node_modules/@octokit/plugin-paginate-rest": { - "version": "2.21.3", - "resolved": "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-2.21.3.tgz", - "integrity": "sha512-aCZTEf0y2h3OLbrgKkrfFdjRL6eSOo8komneVQJnYecAxIej7Bafor2xhuDJOIFau4pk0i/P28/XgtbyPF0ZHw==", + "node_modules/@istanbuljs/load-nyc-config/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", "dev": true, "dependencies": { - "@octokit/types": "^6.40.0" + "p-try": "^2.0.0" }, - "peerDependencies": { - "@octokit/core": ">=2" + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@octokit/plugin-request-log": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@octokit/plugin-request-log/-/plugin-request-log-1.0.4.tgz", - "integrity": "sha512-mLUsMkgP7K/cnFEw07kWqXGF5LKrOkD+lhCrKvPHXWDywAwuDUeDwWBpc69XK3pNX0uKiVt8g5z96PJ6z9xCFA==", + "node_modules/@istanbuljs/load-nyc-config/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", "dev": true, - "peerDependencies": { - "@octokit/core": ">=3" + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" } }, - "node_modules/@octokit/plugin-rest-endpoint-methods": { - "version": "5.16.2", - "resolved": "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-5.16.2.tgz", - "integrity": "sha512-8QFz29Fg5jDuTPXVtey05BLm7OB+M8fnvE64RNegzX7U+5NUXcOcnpTIK0YfSHBg8gYd0oxIq3IZTe9SfPZiRw==", - "dev": true, - "dependencies": { - "@octokit/types": "^6.39.0", - "deprecation": "^2.3.1" - }, - "peerDependencies": { - "@octokit/core": ">=3" - } - }, - "node_modules/@octokit/request": { - "version": "5.6.3", - "resolved": "https://registry.npmjs.org/@octokit/request/-/request-5.6.3.tgz", - "integrity": "sha512-bFJl0I1KVc9jYTe9tdGGpAMPy32dLBXXo1dS/YwSCTL/2nd9XeHsY616RE3HPXDVk+a+dBuzyz5YdlXwcDTr2A==", + "node_modules/@istanbuljs/load-nyc-config/node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", "dev": true, - "dependencies": { - "@octokit/endpoint": "^6.0.1", - "@octokit/request-error": "^2.1.0", - "@octokit/types": "^6.16.1", - "is-plain-object": "^5.0.0", - "node-fetch": "^2.6.7", - "universal-user-agent": "^6.0.0" + "engines": { + "node": ">=8" } }, - "node_modules/@octokit/request-error": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-2.1.0.tgz", - "integrity": "sha512-1VIvgXxs9WHSjicsRwq8PlR2LR2x6DwsJAaFgzdi0JfJoGSO8mYI/cHJQ+9FbN21aa+DrgNLnwObmyeSC8Rmpg==", + "node_modules/@istanbuljs/schema": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", + "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", "dev": true, - "dependencies": { - "@octokit/types": "^6.0.3", - "deprecation": "^2.0.0", - "once": "^1.4.0" + "engines": { + "node": ">=8" } }, - "node_modules/@octokit/rest": { - "version": "18.12.0", - "resolved": "https://registry.npmjs.org/@octokit/rest/-/rest-18.12.0.tgz", - "integrity": "sha512-gDPiOHlyGavxr72y0guQEhLsemgVjwRePayJ+FcKc2SJqKUbxbkvf5kAZEWA/MKvsfYlQAMVzNJE3ezQcxMJ2Q==", + "node_modules/@jest/console": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-27.5.1.tgz", + "integrity": "sha512-kZ/tNpS3NXn0mlXXXPNuDZnb4c0oZ20r4K5eemM2k30ZC3G0T02nXUvyhf5YdbXWHPEJLc9qGLxEZ216MdL+Zg==", "dev": true, "dependencies": { - "@octokit/core": "^3.5.1", - "@octokit/plugin-paginate-rest": "^2.16.8", - "@octokit/plugin-request-log": "^1.0.4", - "@octokit/plugin-rest-endpoint-methods": "^5.12.0" + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "jest-message-util": "^27.5.1", + "jest-util": "^27.5.1", + "slash": "^3.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/@octokit/types": { - "version": "6.41.0", - "resolved": "https://registry.npmjs.org/@octokit/types/-/types-6.41.0.tgz", - "integrity": "sha512-eJ2jbzjdijiL3B4PrSQaSjuF2sPEQPVCPzBvTHJD9Nz+9dw2SGH4K4xeQJ77YfTq5bRQ+bD8wT11JbeDPmxmGg==", + "node_modules/@jest/console/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", "dev": true, "dependencies": { - "@octokit/openapi-types": "^12.11.0" - } - }, - "node_modules/@pdf-lib/fontkit": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@pdf-lib/fontkit/-/fontkit-1.1.1.tgz", - "integrity": "sha512-KjMd7grNapIWS/Dm0gvfHEilSyAmeLvrEGVcqLGi0VYebuqqzTbgF29efCx7tvx+IEbG3zQciRSWl3GkUSvjZg==", - "dependencies": { - "pako": "^1.0.6" - } - }, - "node_modules/@pdf-lib/standard-fonts": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@pdf-lib/standard-fonts/-/standard-fonts-1.0.0.tgz", - "integrity": "sha512-hU30BK9IUN/su0Mn9VdlVKsWBS6GyhVfqjwl1FjZN4TxP6cCw0jP2w7V3Hf5uX7M0AZJ16vey9yE0ny7Sa59ZA==", - "dependencies": { - "pako": "^1.0.6" - } - }, - "node_modules/@pdf-lib/upng": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@pdf-lib/upng/-/upng-1.0.1.tgz", - "integrity": "sha512-dQK2FUMQtowVP00mtIksrlZhdFXQZPC+taih1q4CvPZ5vqdxR/LKBaFg0oAfzd1GlHZXXSPdQfzQnt+ViGvEIQ==", - "dependencies": { - "pako": "^1.0.10" - } - }, - "node_modules/@sindresorhus/is": { - "version": "0.14.0", - "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz", - "integrity": "sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==", - "dev": true, + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + }, "engines": { - "node": ">=6" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/@sinonjs/commons": { - "version": "1.8.6", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.6.tgz", - "integrity": "sha512-Ky+XkAkqPZSm3NLBeUng77EBQl3cmeJhITaGHdYH8kjVB+aun3S4XBRti2zt17mtt0mIUDiNxYeoJm6drVvBJQ==", + "node_modules/@jest/console/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", "dev": true, "dependencies": { - "type-detect": "4.0.8" + "@types/yargs-parser": "*" } }, - "node_modules/@sinonjs/fake-timers": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-8.1.0.tgz", - "integrity": "sha512-OAPJUAtgeINhh/TAlUID4QTs53Njm7xzddaVlEs/SXwgtiD1tW22zAB/W1wdqfrpmikgaWQ9Fw6Ws+hsiRm5Vg==", + "node_modules/@jest/console/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", "dev": true, "dependencies": { - "@sinonjs/commons": "^1.7.0" - } - }, - "node_modules/@stencil/core": { - "version": "2.22.3", - "resolved": "https://registry.npmjs.org/@stencil/core/-/core-2.22.3.tgz", - "integrity": "sha512-kmVA0M/HojwsfkeHsifvHVIYe4l5tin7J5+DLgtl8h6WWfiMClND5K3ifCXXI2ETDNKiEk21p6jql3Fx9o2rng==", - "bin": { - "stencil": "bin/stencil" + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" }, "engines": { - "node": ">=12.10.0", - "npm": ">=6.0.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/@stencil/postcss": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@stencil/postcss/-/postcss-2.1.0.tgz", - "integrity": "sha512-/e4TYEXErGaHxH0ocg620YqEMLuMLpK/Wg4MJsiJglrLZCZhU4XCX1N0SwxaIOUbEZ1Zh+AqQ++yMI92ilndEA==", + "node_modules/@jest/core": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/core/-/core-27.5.1.tgz", + "integrity": "sha512-AK6/UTrvQD0Cd24NSqmIA6rKsu0tKIxfiCducZvqxYdmMisOYAsdItspT+fQDQYARPf8XgjAFZi0ogW2agH5nQ==", "dev": true, "dependencies": { - "autoprefixer": "^10.3.6", - "postcss": "~8.3.8" + "@jest/console": "^27.5.1", + "@jest/reporters": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "emittery": "^0.8.1", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "jest-changed-files": "^27.5.1", + "jest-config": "^27.5.1", + "jest-haste-map": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-resolve-dependencies": "^27.5.1", + "jest-runner": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "jest-watcher": "^27.5.1", + "micromatch": "^4.0.4", + "rimraf": "^3.0.0", + "slash": "^3.0.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" }, "peerDependencies": { - "@stencil/core": ">=2.0.0" + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } } }, - "node_modules/@stencil/postcss/node_modules/postcss": { - "version": "8.3.11", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.3.11.tgz", - "integrity": "sha512-hCmlUAIlUiav8Xdqw3Io4LcpA1DOt7h3LSTAC4G6JGHFFaWzI6qvFt9oilvl8BmkbBRX1IhM90ZAmpk68zccQA==", + "node_modules/@jest/core/node_modules/@jest/transform": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz", + "integrity": "sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==", "dev": true, "dependencies": { - "nanoid": "^3.1.30", - "picocolors": "^1.0.0", - "source-map-js": "^0.6.2" + "@babel/core": "^7.1.0", + "@jest/types": "^27.5.1", + "babel-plugin-istanbul": "^6.1.1", + "chalk": "^4.0.0", + "convert-source-map": "^1.4.0", + "fast-json-stable-stringify": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-util": "^27.5.1", + "micromatch": "^4.0.4", + "pirates": "^4.0.4", + "slash": "^3.0.0", + "source-map": "^0.6.1", + "write-file-atomic": "^3.0.0" }, "engines": { - "node": "^10 || ^12 || >=14" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/@stencil/postcss/node_modules/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==", + "node_modules/@jest/core/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", "dev": true, + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + }, "engines": { - "node": ">=0.10.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/@stencil/sass": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@stencil/sass/-/sass-2.0.3.tgz", - "integrity": "sha512-ypS+0f6bJH2qXqrNAHirlYOWFax+qKKOIePLs7cu4LfKFr4ZVJSGRFBdgaeRrZMUhJWnhjV6io2uDldhrQhnMg==", + "node_modules/@jest/core/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", "dev": true, - "peerDependencies": { - "@stencil/core": ">=2.0.0 || >=3.0.0-beta.0" + "dependencies": { + "@types/yargs-parser": "*" } }, - "node_modules/@stencil/store": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@stencil/store/-/store-2.0.3.tgz", - "integrity": "sha512-45SkXtVXaYMo3itvfUleKjQr8BNowi6b0i1jHCx8O2UXJag5myvstjf4uIxkW6IscV92VzLrpIXUFvbJJKa7DA==", - "dev": true, - "peerDependencies": { - "@stencil/core": ">=2.0.0" - } - }, - "node_modules/@szmarczak/http-timer": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-1.1.2.tgz", - "integrity": "sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==", + "node_modules/@jest/core/node_modules/jest-haste-map": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", + "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", "dev": true, "dependencies": { - "defer-to-connect": "^1.0.1" + "@jest/types": "^27.5.1", + "@types/graceful-fs": "^4.1.2", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^27.5.1", + "jest-serializer": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "micromatch": "^4.0.4", + "walker": "^1.0.7" }, "engines": { - "node": ">=6" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "optionalDependencies": { + "fsevents": "^2.3.2" } }, - "node_modules/@tootallnate/once": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz", - "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==", + "node_modules/@jest/core/node_modules/jest-regex-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", + "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", "dev": true, "engines": { - "node": ">= 6" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/@tsconfig/node10": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.9.tgz", - "integrity": "sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==", - "dev": true - }, - "node_modules/@tsconfig/node12": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz", - "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==", - "dev": true - }, - "node_modules/@tsconfig/node14": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", - "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==", - "dev": true - }, - "node_modules/@tsconfig/node16": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.3.tgz", - "integrity": "sha512-yOlFc+7UtL/89t2ZhjPvvB/DeAr3r+Dq58IgzsFkOAvVC6NMJXmCGjbptdXdR9qsX7pKcTL+s87FtYREi2dEEQ==", - "dev": true - }, - "node_modules/@types/arcgis-js-api": { - "version": "4.27.0", - "resolved": "https://registry.npmjs.org/@types/arcgis-js-api/-/arcgis-js-api-4.27.0.tgz", - "integrity": "sha512-sjbbvVTOvzZRUR6rrA4KSbxlvAnclAen2Km+IHlUEYxu7zQKAiSW+zQL6MkQw8ujvYEZRHj8VBttcvjONzmNIg==", - "dev": true - }, - "node_modules/@types/babel__core": { - "version": "7.20.1", - "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.1.tgz", - "integrity": "sha512-aACu/U/omhdk15O4Nfb+fHgH/z3QsfQzpnvRZhYhThms83ZnAOZz7zZAWO7mn2yyNQaA4xTO8GLK3uqFU4bYYw==", + "node_modules/@jest/core/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", "dev": true, "dependencies": { - "@babel/parser": "^7.20.7", - "@babel/types": "^7.20.7", - "@types/babel__generator": "*", - "@types/babel__template": "*", - "@types/babel__traverse": "*" + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/@types/babel__generator": { - "version": "7.6.4", - "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.4.tgz", - "integrity": "sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg==", + "node_modules/@jest/core/node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", "dev": true, "dependencies": { - "@babel/types": "^7.0.0" + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": ">= 10.13.0" } }, - "node_modules/@types/babel__template": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.1.tgz", - "integrity": "sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g==", + "node_modules/@jest/core/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", "dev": true, "dependencies": { - "@babel/parser": "^7.1.0", - "@babel/types": "^7.0.0" + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" } }, - "node_modules/@types/babel__traverse": { - "version": "7.20.1", - "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.1.tgz", - "integrity": "sha512-MitHFXnhtgwsGZWtT68URpOvLN4EREih1u3QtQiN4VdAxWKRVvGCSvw/Qth0M0Qq3pJpnGOu5JaM/ydK7OGbqg==", + "node_modules/@jest/environment": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-27.5.1.tgz", + "integrity": "sha512-/WQjhPJe3/ghaol/4Bq480JKXV/Rfw8nQdN7f41fM8VDHLcxKXou6QyXAh3EFr9/bVG3x74z1NWDkP87EiY8gA==", "dev": true, "dependencies": { - "@babel/types": "^7.20.7" + "@jest/fake-timers": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "jest-mock": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/@types/color": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/color/-/color-3.0.3.tgz", - "integrity": "sha512-X//qzJ3d3Zj82J9sC/C18ZY5f43utPbAJ6PhYt/M7uG6etcF6MRpKdN880KBy43B0BMzSfeT96MzrsNjFI3GbA==", - "peer": true, + "node_modules/@jest/environment/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "dev": true, "dependencies": { - "@types/color-convert": "*" + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/@types/color-convert": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@types/color-convert/-/color-convert-2.0.0.tgz", - "integrity": "sha512-m7GG7IKKGuJUXvkZ1qqG3ChccdIM/qBBo913z+Xft0nKCX4hAU/IxKwZBU4cpRZ7GS5kV4vOblUkILtSShCPXQ==", - "peer": true, + "node_modules/@jest/environment/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "dev": true, "dependencies": { - "@types/color-name": "*" + "@types/yargs-parser": "*" } }, - "node_modules/@types/color-name": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@types/color-name/-/color-name-1.1.1.tgz", - "integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==", - "peer": true - }, - "node_modules/@types/graceful-fs": { - "version": "4.1.6", - "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.6.tgz", - "integrity": "sha512-Sig0SNORX9fdW+bQuTEovKj3uHcUL6LQKbCrrqb1X7J6/ReAbhCXRAhc+SMejhLELFj2QcyuxmUooZ4bt5ReSw==", + "node_modules/@jest/fake-timers": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-27.5.1.tgz", + "integrity": "sha512-/aPowoolwa07k7/oM3aASneNeBGCmGQsc3ugN4u6s4C/+s5M64MFo/+djTdiwcbQlRfFElGuDXWzaWj6QgKObQ==", "dev": true, "dependencies": { - "@types/node": "*" + "@jest/types": "^27.5.1", + "@sinonjs/fake-timers": "^8.0.1", + "@types/node": "*", + "jest-message-util": "^27.5.1", + "jest-mock": "^27.5.1", + "jest-util": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/@types/istanbul-lib-coverage": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz", - "integrity": "sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==", - "dev": true - }, - "node_modules/@types/istanbul-lib-report": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", - "integrity": "sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==", + "node_modules/@jest/fake-timers/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", "dev": true, "dependencies": { - "@types/istanbul-lib-coverage": "*" + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/@types/istanbul-reports": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz", - "integrity": "sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==", + "node_modules/@jest/fake-timers/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", "dev": true, "dependencies": { - "@types/istanbul-lib-report": "*" + "@types/yargs-parser": "*" } }, - "node_modules/@types/jest": { - "version": "27.5.2", - "resolved": "https://registry.npmjs.org/@types/jest/-/jest-27.5.2.tgz", - "integrity": "sha512-mpT8LJJ4CMeeahobofYWIjFo0xonRS/HfxnVEPMPFSQdGUt1uHCnoPT7Zhb+sjDU2wz0oKV0OLUR0WzrHNgfeA==", + "node_modules/@jest/fake-timers/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", "dev": true, "dependencies": { - "jest-matcher-utils": "^27.0.0", - "pretty-format": "^27.0.0" + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/@types/json-schema": { - "version": "7.0.11", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz", - "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==", - "dev": true - }, - "node_modules/@types/lodash": { - "version": "4.14.191", - "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.191.tgz", - "integrity": "sha512-BdZ5BCCvho3EIXw6wUCXHe7rS53AIDPLE+JzwgT+OsJk53oBfbSmZZ7CX4VaRoN78N+TJpFi9QPlfIVNmJYWxQ==", - "dev": true - }, - "node_modules/@types/lodash.isplainobject": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/@types/lodash.isplainobject/-/lodash.isplainobject-4.0.7.tgz", - "integrity": "sha512-fdHtdjpy7fXydEaRHx1dPa+2AVmLbmk2Gv7f0w/90BKCH0DkWo8pIrzygnB3rvgo6oKNb3cO9VaPpj9GLCr5Ug==", + "node_modules/@jest/globals": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-27.5.1.tgz", + "integrity": "sha512-ZEJNB41OBQQgGzgyInAv0UUfDDj3upmHydjieSxFvTRuZElrx7tXg/uVQ5hYVEwiXs3+aMsAeEc9X7xiSKCm4Q==", "dev": true, "dependencies": { - "@types/lodash": "*" + "@jest/environment": "^27.5.1", + "@jest/types": "^27.5.1", + "expect": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/@types/node": { - "version": "16.18.11", - "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.11.tgz", - "integrity": "sha512-3oJbGBUWuS6ahSnEq1eN2XrCyf4YsWI8OyCvo7c64zQJNplk3mO84t53o8lfTk+2ji59g5ycfc6qQ3fdHliHuA==", - "dev": true - }, - "node_modules/@types/normalize-package-data": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz", - "integrity": "sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==", - "dev": true - }, - "node_modules/@types/parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", - "dev": true - }, - "node_modules/@types/prettier": { - "version": "2.7.3", - "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.7.3.tgz", - "integrity": "sha512-+68kP9yzs4LMp7VNh8gdzMSPZFL44MLGqiHWvttYJe+6qnuVr4Ek9wSBQoveqY/r+LwjCcU29kNVkidwim+kYA==", - "dev": true - }, - "node_modules/@types/puppeteer": { - "version": "5.4.7", - "resolved": "https://registry.npmjs.org/@types/puppeteer/-/puppeteer-5.4.7.tgz", - "integrity": "sha512-JdGWZZYL0vKapXF4oQTC5hLVNfOgdPrqeZ1BiQnGk5cB7HeE91EWUiTdVSdQPobRN8rIcdffjiOgCYJ/S8QrnQ==", + "node_modules/@jest/globals/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", "dev": true, "dependencies": { - "@types/node": "*" + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/@types/raf": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/@types/raf/-/raf-3.4.0.tgz", - "integrity": "sha512-taW5/WYqo36N7V39oYyHP9Ipfd5pNFvGTIQsNGj86xV88YQ7GnI30/yMfKDF7Zgin0m3e+ikX88FvImnK4RjGw==", - "optional": true - }, - "node_modules/@types/semver": { - "version": "7.3.13", - "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.3.13.tgz", - "integrity": "sha512-21cFJr9z3g5dW8B0CVI9g2O9beqaThGQ6ZFBqHfwhzLDKUxaqTIy3vnfah/UPkfOiF2pLq+tGz+W8RyCskuslw==", - "dev": true - }, - "node_modules/@types/stack-utils": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.1.tgz", - "integrity": "sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw==", - "dev": true - }, - "node_modules/@types/yargs-parser": { - "version": "21.0.0", - "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.0.tgz", - "integrity": "sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==", - "dev": true - }, - "node_modules/@types/yauzl": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/@types/yauzl/-/yauzl-2.10.0.tgz", - "integrity": "sha512-Cn6WYCm0tXv8p6k+A8PvbDG763EDpBoTzHdA+Q/MF6H3sapGjCm9NzoaJncJS9tUKSuCoDs9XHxYYsQDgxR6kw==", + "node_modules/@jest/globals/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", "dev": true, - "optional": true, "dependencies": { - "@types/node": "*" + "@types/yargs-parser": "*" } }, - "node_modules/@typescript-eslint/eslint-plugin": { - "version": "5.49.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.49.0.tgz", - "integrity": "sha512-IhxabIpcf++TBaBa1h7jtOWyon80SXPRLDq0dVz5SLFC/eW6tofkw/O7Ar3lkx5z5U6wzbKDrl2larprp5kk5Q==", + "node_modules/@jest/reporters": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-27.5.1.tgz", + "integrity": "sha512-cPXh9hWIlVJMQkVk84aIvXuBB4uQQmFqZiacloFuGiP3ah1sbCxCosidXFDfqG8+6fO1oR2dTJTlsOy4VFmUfw==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "5.49.0", - "@typescript-eslint/type-utils": "5.49.0", - "@typescript-eslint/utils": "5.49.0", - "debug": "^4.3.4", - "ignore": "^5.2.0", - "natural-compare-lite": "^1.4.0", - "regexpp": "^3.2.0", - "semver": "^7.3.7", - "tsutils": "^3.21.0" + "@bcoe/v8-coverage": "^0.2.3", + "@jest/console": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "collect-v8-coverage": "^1.0.0", + "exit": "^0.1.2", + "glob": "^7.1.2", + "graceful-fs": "^4.2.9", + "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-instrument": "^5.1.0", + "istanbul-lib-report": "^3.0.0", + "istanbul-lib-source-maps": "^4.0.0", + "istanbul-reports": "^3.1.3", + "jest-haste-map": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "slash": "^3.0.0", + "source-map": "^0.6.0", + "string-length": "^4.0.1", + "terminal-link": "^2.0.0", + "v8-to-istanbul": "^8.1.0" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" }, "peerDependencies": { - "@typescript-eslint/parser": "^5.0.0", - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" }, "peerDependenciesMeta": { - "typescript": { + "node-notifier": { "optional": true } } }, - "node_modules/@typescript-eslint/experimental-utils": { - "version": "5.49.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-5.49.0.tgz", - "integrity": "sha512-veLpCJLYn44Fru7mSvi2doxQMzMCOFSDYdMUQhAzaH1vFYq2RVNpecZ8d18Wh6UMv07yahXkiv/aShWE48iE9Q==", + "node_modules/@jest/reporters/node_modules/@jest/transform": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz", + "integrity": "sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==", "dev": true, "dependencies": { - "@typescript-eslint/utils": "5.49.0" + "@babel/core": "^7.1.0", + "@jest/types": "^27.5.1", + "babel-plugin-istanbul": "^6.1.1", + "chalk": "^4.0.0", + "convert-source-map": "^1.4.0", + "fast-json-stable-stringify": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-util": "^27.5.1", + "micromatch": "^4.0.4", + "pirates": "^4.0.4", + "slash": "^3.0.0", + "source-map": "^0.6.1", + "write-file-atomic": "^3.0.0" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/@typescript-eslint/parser": { - "version": "5.49.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.49.0.tgz", - "integrity": "sha512-veDlZN9mUhGqU31Qiv2qEp+XrJj5fgZpJ8PW30sHU+j/8/e5ruAhLaVDAeznS7A7i4ucb/s8IozpDtt9NqCkZg==", + "node_modules/@jest/reporters/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "5.49.0", - "@typescript-eslint/types": "5.49.0", - "@typescript-eslint/typescript-estree": "5.49.0", - "debug": "^4.3.4" + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/@typescript-eslint/scope-manager": { - "version": "5.49.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.49.0.tgz", - "integrity": "sha512-clpROBOiMIzpbWNxCe1xDK14uPZh35u4QaZO1GddilEzoCLAEz4szb51rBpdgurs5k2YzPtJeTEN3qVbG+LRUQ==", + "node_modules/@jest/reporters/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", "dev": true, "dependencies": { - "@typescript-eslint/types": "5.49.0", - "@typescript-eslint/visitor-keys": "5.49.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" + "@types/yargs-parser": "*" } }, - "node_modules/@typescript-eslint/type-utils": { - "version": "5.49.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.49.0.tgz", - "integrity": "sha512-eUgLTYq0tR0FGU5g1YHm4rt5H/+V2IPVkP0cBmbhRyEmyGe4XvJ2YJ6sYTmONfjmdMqyMLad7SB8GvblbeESZA==", + "node_modules/@jest/reporters/node_modules/jest-haste-map": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", + "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", "dev": true, "dependencies": { - "@typescript-eslint/typescript-estree": "5.49.0", - "@typescript-eslint/utils": "5.49.0", - "debug": "^4.3.4", - "tsutils": "^3.21.0" + "@jest/types": "^27.5.1", + "@types/graceful-fs": "^4.1.2", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^27.5.1", + "jest-serializer": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "micromatch": "^4.0.4", + "walker": "^1.0.7" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" }, - "peerDependencies": { - "eslint": "*" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } + "optionalDependencies": { + "fsevents": "^2.3.2" } }, - "node_modules/@typescript-eslint/types": { - "version": "5.49.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.49.0.tgz", - "integrity": "sha512-7If46kusG+sSnEpu0yOz2xFv5nRz158nzEXnJFCGVEHWnuzolXKwrH5Bsf9zsNlOQkyZuk0BZKKoJQI+1JPBBg==", + "node_modules/@jest/reporters/node_modules/jest-regex-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", + "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", "dev": true, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/@typescript-eslint/typescript-estree": { - "version": "5.49.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.49.0.tgz", - "integrity": "sha512-PBdx+V7deZT/3GjNYPVQv1Nc0U46dAHbIuOG8AZ3on3vuEKiPDwFE/lG1snN2eUB9IhF7EyF7K1hmTcLztNIsA==", + "node_modules/@jest/reporters/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", "dev": true, "dependencies": { - "@typescript-eslint/types": "5.49.0", - "@typescript-eslint/visitor-keys": "5.49.0", - "debug": "^4.3.4", - "globby": "^11.1.0", - "is-glob": "^4.0.3", - "semver": "^7.3.7", - "tsutils": "^3.21.0" + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/@typescript-eslint/utils": { - "version": "5.49.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.49.0.tgz", - "integrity": "sha512-cPJue/4Si25FViIb74sHCLtM4nTSBXtLx1d3/QT6mirQ/c65bV8arBEebBJJizfq8W2YyMoPI/WWPFWitmNqnQ==", + "node_modules/@jest/reporters/node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", "dev": true, "dependencies": { - "@types/json-schema": "^7.0.9", - "@types/semver": "^7.3.12", - "@typescript-eslint/scope-manager": "5.49.0", - "@typescript-eslint/types": "5.49.0", - "@typescript-eslint/typescript-estree": "5.49.0", - "eslint-scope": "^5.1.1", - "eslint-utils": "^3.0.0", - "semver": "^7.3.7" + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + "node": ">= 10.13.0" } }, - "node_modules/@typescript-eslint/visitor-keys": { - "version": "5.49.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.49.0.tgz", - "integrity": "sha512-v9jBMjpNWyn8B6k/Mjt6VbUS4J1GvUlR4x3Y+ibnP1z7y7V4n0WRz+50DY6+Myj0UaXVSuUlHohO+eZ8IJEnkg==", + "node_modules/@jest/reporters/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", "dev": true, "dependencies": { - "@typescript-eslint/types": "5.49.0", - "eslint-visitor-keys": "^3.3.0" + "has-flag": "^4.0.0" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": ">=10" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" + "url": "https://github.com/chalk/supports-color?sponsor=1" } }, - "node_modules/abab": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", - "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==" - }, - "node_modules/acorn": { - "version": "8.8.2", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.2.tgz", - "integrity": "sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==", + "node_modules/@jest/schemas": { + "version": "29.6.0", + "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.0.tgz", + "integrity": "sha512-rxLjXyJBTL4LQeJW3aKo0M/+GkCOXsO+8i9Iu7eDb6KwtP65ayoDsitrdPBtujxQ88k4wI2FNYfa6TOGwSn6cQ==", "dev": true, - "bin": { - "acorn": "bin/acorn" + "dependencies": { + "@sinclair/typebox": "^0.27.8" }, "engines": { - "node": ">=0.4.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/acorn-globals": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-6.0.0.tgz", - "integrity": "sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg==", + "node_modules/@jest/source-map": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-27.5.1.tgz", + "integrity": "sha512-y9NIHUYF3PJRlHk98NdC/N1gl88BL08aQQgu4k4ZopQkCw9t9cV8mtl3TV8b/YCB8XaVTFrmUTAJvjsntDireg==", "dev": true, "dependencies": { - "acorn": "^7.1.1", - "acorn-walk": "^7.1.1" - } - }, - "node_modules/acorn-globals/node_modules/acorn": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", - "dev": true, - "bin": { - "acorn": "bin/acorn" + "callsites": "^3.0.0", + "graceful-fs": "^4.2.9", + "source-map": "^0.6.0" }, "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/acorn-jsx": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", - "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", - "dev": true, - "peerDependencies": { - "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/acorn-node": { - "version": "1.8.2", - "resolved": "https://registry.npmjs.org/acorn-node/-/acorn-node-1.8.2.tgz", - "integrity": "sha512-8mt+fslDufLYntIoPAaIMUe/lrbrehIiwmR3t2k9LljIzoigEPF27eLk2hy8zSGzmR/ogr7zbRKINMo1u0yh5A==", + "node_modules/@jest/test-result": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-27.5.1.tgz", + "integrity": "sha512-EW35l2RYFUcUQxFJz5Cv5MTOxlJIQs4I7gxzi2zVU7PJhOwfYq1MdC5nhSmYjX1gmMmLPvB3sIaC+BkcHRBfag==", "dev": true, "dependencies": { - "acorn": "^7.0.0", - "acorn-walk": "^7.0.0", - "xtend": "^4.0.2" - } - }, - "node_modules/acorn-node/node_modules/acorn": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", - "dev": true, - "bin": { - "acorn": "bin/acorn" + "@jest/console": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/istanbul-lib-coverage": "^2.0.0", + "collect-v8-coverage": "^1.0.0" }, "engines": { - "node": ">=0.4.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/acorn-walk": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz", - "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", + "node_modules/@jest/test-result/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", "dev": true, + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + }, "engines": { - "node": ">=0.4.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/adlib": { - "version": "3.0.8", - "resolved": "https://registry.npmjs.org/adlib/-/adlib-3.0.8.tgz", - "integrity": "sha512-CbQ+mcm45pdDN0aAiGYP6FZWDor+BM4DbqJsrUptM79a2+FbiP8QdF0xHABbgCkioApKqg8lI33Gl6X8GFelfA==", + "node_modules/@jest/test-result/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "dev": true, "dependencies": { - "esm": "^3.2.25" + "@types/yargs-parser": "*" } }, - "node_modules/agent-base": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", - "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "node_modules/@jest/test-sequencer": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-27.5.1.tgz", + "integrity": "sha512-LCheJF7WB2+9JuCS7VB/EmGIdQuhtqjRNI9A43idHv3E4KltCTsPsLxvdaubFHSYwY/fNjMWjl6vNRhDiN7vpQ==", "dev": true, "dependencies": { - "debug": "4" + "@jest/test-result": "^27.5.1", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-runtime": "^27.5.1" }, "engines": { - "node": ">= 6.0.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "node_modules/@jest/test-sequencer/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "dev": true, "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/ansi-align": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.1.tgz", - "integrity": "sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==", + "node_modules/@jest/test-sequencer/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", "dev": true, "dependencies": { - "string-width": "^4.1.0" + "@types/yargs-parser": "*" } }, - "node_modules/ansi-escapes": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", - "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "node_modules/@jest/test-sequencer/node_modules/jest-haste-map": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", + "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", "dev": true, "dependencies": { - "type-fest": "^0.21.3" - }, - "engines": { - "node": ">=8" + "@jest/types": "^27.5.1", + "@types/graceful-fs": "^4.1.2", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^27.5.1", + "jest-serializer": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "micromatch": "^4.0.4", + "walker": "^1.0.7" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "optionalDependencies": { + "fsevents": "^2.3.2" } }, - "node_modules/ansi-escapes/node_modules/type-fest": { - "version": "0.21.3", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", - "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", + "node_modules/@jest/test-sequencer/node_modules/jest-regex-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", + "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", "dev": true, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "node_modules/@jest/test-sequencer/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, "engines": { - "node": ">=8" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "node_modules/@jest/test-sequencer/node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", "dev": true, "dependencies": { - "color-convert": "^2.0.1" + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "node": ">= 10.13.0" } }, - "node_modules/anymatch": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", - "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "node_modules/@jest/test-sequencer/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", "dev": true, "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" + "has-flag": "^4.0.0" }, "engines": { - "node": ">= 8" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" } }, - "node_modules/application-config": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/application-config/-/application-config-2.0.0.tgz", - "integrity": "sha512-NC5/0guSZK3/UgUDfCk/riByXzqz0owL1L3r63JPSBzYk5QALrp3bLxbsR7qeSfvYfFmAhnp3dbqYsW3U9MpZQ==", + "node_modules/@jest/transform": { + "version": "29.6.2", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-29.6.2.tgz", + "integrity": "sha512-ZqCqEISr58Ce3U+buNFJYUktLJZOggfyvR+bZMaiV1e8B1SIvJbwZMrYz3gx/KAPn9EXmOmN+uB08yLCjWkQQg==", "dev": true, "dependencies": { - "application-config-path": "^0.1.0", - "load-json-file": "^6.2.0", - "write-json-file": "^4.2.0" + "@babel/core": "^7.11.6", + "@jest/types": "^29.6.1", + "@jridgewell/trace-mapping": "^0.3.18", + "babel-plugin-istanbul": "^6.1.1", + "chalk": "^4.0.0", + "convert-source-map": "^2.0.0", + "fast-json-stable-stringify": "^2.1.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.6.2", + "jest-regex-util": "^29.4.3", + "jest-util": "^29.6.2", + "micromatch": "^4.0.4", + "pirates": "^4.0.4", + "slash": "^3.0.0", + "write-file-atomic": "^4.0.2" }, "engines": { - "node": ">=8.3" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/application-config-path": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/application-config-path/-/application-config-path-0.1.1.tgz", - "integrity": "sha512-zy9cHePtMP0YhwG+CfHm0bgwdnga2X3gZexpdCwEj//dpb+TKajtiC8REEUJUSq6Ab4f9cgNy2l8ObXzCXFkEw==", - "dev": true - }, - "node_modules/aproba": { + "node_modules/@jest/transform/node_modules/convert-source-map": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", - "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==", - "dev": true - }, - "node_modules/arg": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz", - "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==", - "dev": true - }, - "node_modules/argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", "dev": true }, - "node_modules/array-includes": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.6.tgz", - "integrity": "sha512-sgTbLvL6cNnw24FnbaDyjmvddQ2ML8arZsgaJhoABMoplz/4QRhtrYS+alr1BUM1Bwp6dhx8vVCBSLG+StwOFw==", + "node_modules/@jest/transform/node_modules/write-file-atomic": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz", + "integrity": "sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4", - "get-intrinsic": "^1.1.3", - "is-string": "^1.0.7" + "imurmurhash": "^0.1.4", + "signal-exit": "^3.0.7" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/array-union": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", - "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", + "node_modules/@jest/types": { + "version": "29.6.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.6.1.tgz", + "integrity": "sha512-tPKQNMPuXgvdOn2/Lg9HNfUvjYVGolt04Hp03f5hAk878uwOLikN+JzeLY0HcVgKgFl9Hs3EIqpu3WX27XNhnw==", "dev": true, + "dependencies": { + "@jest/schemas": "^29.6.0", + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^17.0.8", + "chalk": "^4.0.0" + }, "engines": { - "node": ">=8" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/array.prototype.flatmap": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.1.tgz", - "integrity": "sha512-8UGn9O1FDVvMNB0UlLv4voxRMze7+FpHyF5mSMRjWHUMlpoDViniy05870VlxhfgTnLbpuwTzvD76MTtWxB/mQ==", + "node_modules/@jridgewell/gen-mapping": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", + "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4", - "es-shim-unscopables": "^1.0.0" + "@jridgewell/set-array": "^1.0.0", + "@jridgewell/sourcemap-codec": "^1.4.10" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=6.0.0" } }, - "node_modules/async": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/async/-/async-3.2.4.tgz", - "integrity": "sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==", - "dev": true - }, - "node_modules/asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", - "dev": true - }, - "node_modules/atob": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", - "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", - "bin": { - "atob": "bin/atob.js" - }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", + "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", + "dev": true, "engines": { - "node": ">= 4.5.0" + "node": ">=6.0.0" } }, - "node_modules/autoprefixer": { - "version": "10.4.4", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.4.tgz", - "integrity": "sha512-Tm8JxsB286VweiZ5F0anmbyGiNI3v3wGv3mz9W+cxEDYB/6jbnj6GM9H9mK3wIL8ftgl+C07Lcwb8PG5PCCPzA==", + "node_modules/@jridgewell/set-array": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", + "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/autoprefixer" - } - ], - "dependencies": { - "browserslist": "^4.20.2", - "caniuse-lite": "^1.0.30001317", - "fraction.js": "^4.2.0", - "normalize-range": "^0.1.2", - "picocolors": "^1.0.0", - "postcss-value-parser": "^4.2.0" - }, - "bin": { - "autoprefixer": "bin/autoprefixer" - }, "engines": { - "node": "^10 || ^12 || >=14" - }, - "peerDependencies": { - "postcss": "^8.1.0" + "node": ">=6.0.0" } }, - "node_modules/available-typed-arrays": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz", - "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==", + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.14", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", + "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", + "dev": true + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.19", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.19.tgz", + "integrity": "sha512-kf37QtfW+Hwx/buWGMPcR60iF9ziHa6r/CZJIHbmcm4+0qrXiVdxegAH0F6yddEVQ7zdkjcGCgCzUu+BcbhQxw==", "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" } }, - "node_modules/babel-plugin-istanbul": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", - "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", + "node_modules/@nicolo-ribaudo/eslint-scope-5-internals": { + "version": "5.1.1-v1", + "resolved": "https://registry.npmjs.org/@nicolo-ribaudo/eslint-scope-5-internals/-/eslint-scope-5-internals-5.1.1-v1.tgz", + "integrity": "sha512-54/JRvkLIzzDWshCWfuhadfrfZVPiElY8Fcgmg1HroEly/EDSszzhBAsarCux+D/kOslTRquNzuyGSmUSTTHGg==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.0.0", - "@istanbuljs/load-nyc-config": "^1.0.0", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-instrument": "^5.0.4", - "test-exclude": "^6.0.0" - }, - "engines": { - "node": ">=8" + "eslint-scope": "5.1.1" } }, - "node_modules/babel-preset-current-node-syntax": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz", - "integrity": "sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==", + "node_modules/@nodelib/fs.scandir": { + "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, "dependencies": { - "@babel/plugin-syntax-async-generators": "^7.8.4", - "@babel/plugin-syntax-bigint": "^7.8.3", - "@babel/plugin-syntax-class-properties": "^7.8.3", - "@babel/plugin-syntax-import-meta": "^7.8.3", - "@babel/plugin-syntax-json-strings": "^7.8.3", - "@babel/plugin-syntax-logical-assignment-operators": "^7.8.3", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", - "@babel/plugin-syntax-numeric-separator": "^7.8.3", - "@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-top-level-await": "^7.8.3" + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true - }, - "node_modules/base64-arraybuffer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-1.0.2.tgz", - "integrity": "sha512-I3yl4r9QB5ZRY3XuJVEPfc2XhZO6YweFPI+UovAzn+8/hb3oJ6lnysaFcjVpkCPfVWFUDvoZ8kmVDP7WyRtYtQ==", - "optional": true, "engines": { - "node": ">= 0.6.0" + "node": ">= 8" } }, - "node_modules/base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/before-after-hook": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/before-after-hook/-/before-after-hook-2.2.3.tgz", - "integrity": "sha512-NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ==", - "dev": true - }, - "node_modules/binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "node_modules/@nodelib/fs.stat": { + "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, "engines": { - "node": ">=8" - } - }, - "node_modules/bl": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", - "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", - "dev": true, - "dependencies": { - "buffer": "^5.5.0", - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" + "node": ">= 8" } }, - "node_modules/bl/node_modules/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==", + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", "dev": true, "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" }, "engines": { - "node": ">= 6" + "node": ">= 8" } }, - "node_modules/boxen": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/boxen/-/boxen-5.1.2.tgz", - "integrity": "sha512-9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ==", + "node_modules/@octokit/auth-token": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-2.5.0.tgz", + "integrity": "sha512-r5FVUJCOLl19AxiuZD2VRZ/ORjp/4IN98Of6YJoJOkY75CIBuYfmiNHGrDwXr+aLGG55igl9QrxX3hbiXlLb+g==", "dev": true, "dependencies": { - "ansi-align": "^3.0.0", - "camelcase": "^6.2.0", - "chalk": "^4.1.0", - "cli-boxes": "^2.2.1", - "string-width": "^4.2.2", - "type-fest": "^0.20.2", - "widest-line": "^3.1.0", - "wrap-ansi": "^7.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "@octokit/types": "^6.0.3" } }, - "node_modules/boxen/node_modules/camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "node_modules/@octokit/core": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/@octokit/core/-/core-3.6.0.tgz", + "integrity": "sha512-7RKRKuA4xTjMhY+eG3jthb3hlZCsOwg3rztWh75Xc+ShDWOfDDATWbeZpAHBNRpm4Tv9WgBMOy1zEJYXG6NJ7Q==", "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "dependencies": { + "@octokit/auth-token": "^2.4.4", + "@octokit/graphql": "^4.5.8", + "@octokit/request": "^5.6.3", + "@octokit/request-error": "^2.0.5", + "@octokit/types": "^6.0.3", + "before-after-hook": "^2.2.0", + "universal-user-agent": "^6.0.0" } }, - "node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "node_modules/@octokit/endpoint": { + "version": "6.0.12", + "resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-6.0.12.tgz", + "integrity": "sha512-lF3puPwkQWGfkMClXb4k/eUT/nZKQfxinRWJrdZaJO85Dqwo/G0yOC434Jr2ojwafWJMYqFGFa5ms4jJUgujdA==", "dev": true, "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" + "@octokit/types": "^6.0.3", + "is-plain-object": "^5.0.0", + "universal-user-agent": "^6.0.0" } }, - "node_modules/braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "node_modules/@octokit/graphql": { + "version": "4.8.0", + "resolved": "https://registry.npmjs.org/@octokit/graphql/-/graphql-4.8.0.tgz", + "integrity": "sha512-0gv+qLSBLKF0z8TKaSKTsS39scVKF9dbMxJpj3U0vC7wjNWFuIpL/z76Qe2fiuCbDRcJSavkXsVtMS6/dtQQsg==", "dev": true, "dependencies": { - "fill-range": "^7.0.1" - }, - "engines": { - "node": ">=8" + "@octokit/request": "^5.6.0", + "@octokit/types": "^6.0.3", + "universal-user-agent": "^6.0.0" } }, - "node_modules/browser-process-hrtime": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz", - "integrity": "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==", + "node_modules/@octokit/openapi-types": { + "version": "12.11.0", + "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-12.11.0.tgz", + "integrity": "sha512-VsXyi8peyRq9PqIz/tpqiL2w3w80OgVMwBHltTml3LmVvXiphgeqmY9mvBw9Wu7e0QWk/fqD37ux8yP5uVekyQ==", "dev": true }, - "node_modules/browserslist": { - "version": "4.21.10", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.10.tgz", - "integrity": "sha512-bipEBdZfVH5/pwrvqc+Ub0kUPVfGUhlKxbvfD+z1BDnPEO/X98ruXGA1WP5ASpAFKan7Qr6j736IacbZQuAlKQ==", + "node_modules/@octokit/plugin-paginate-rest": { + "version": "2.21.3", + "resolved": "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-2.21.3.tgz", + "integrity": "sha512-aCZTEf0y2h3OLbrgKkrfFdjRL6eSOo8komneVQJnYecAxIej7Bafor2xhuDJOIFau4pk0i/P28/XgtbyPF0ZHw==", "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], "dependencies": { - "caniuse-lite": "^1.0.30001517", - "electron-to-chromium": "^1.4.477", - "node-releases": "^2.0.13", - "update-browserslist-db": "^1.0.11" - }, - "bin": { - "browserslist": "cli.js" + "@octokit/types": "^6.40.0" }, - "engines": { - "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + "peerDependencies": { + "@octokit/core": ">=2" } }, - "node_modules/bser": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz", - "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==", + "node_modules/@octokit/plugin-request-log": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@octokit/plugin-request-log/-/plugin-request-log-1.0.4.tgz", + "integrity": "sha512-mLUsMkgP7K/cnFEw07kWqXGF5LKrOkD+lhCrKvPHXWDywAwuDUeDwWBpc69XK3pNX0uKiVt8g5z96PJ6z9xCFA==", "dev": true, - "dependencies": { - "node-int64": "^0.4.0" + "peerDependencies": { + "@octokit/core": ">=3" } }, - "node_modules/btoa": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/btoa/-/btoa-1.2.1.tgz", - "integrity": "sha512-SB4/MIGlsiVkMcHmT+pSmIPoNDoHg+7cMzmt3Uxt628MTz2487DKSqK/fuhFBrkuqrYv5UCEnACpF4dTFNKc/g==", - "bin": { - "btoa": "bin/btoa.js" + "node_modules/@octokit/plugin-rest-endpoint-methods": { + "version": "5.16.2", + "resolved": "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-5.16.2.tgz", + "integrity": "sha512-8QFz29Fg5jDuTPXVtey05BLm7OB+M8fnvE64RNegzX7U+5NUXcOcnpTIK0YfSHBg8gYd0oxIq3IZTe9SfPZiRw==", + "dev": true, + "dependencies": { + "@octokit/types": "^6.39.0", + "deprecation": "^2.3.1" }, - "engines": { - "node": ">= 0.4.0" + "peerDependencies": { + "@octokit/core": ">=3" } }, - "node_modules/buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "node_modules/@octokit/request": { + "version": "5.6.3", + "resolved": "https://registry.npmjs.org/@octokit/request/-/request-5.6.3.tgz", + "integrity": "sha512-bFJl0I1KVc9jYTe9tdGGpAMPy32dLBXXo1dS/YwSCTL/2nd9XeHsY616RE3HPXDVk+a+dBuzyz5YdlXwcDTr2A==", "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" + "@octokit/endpoint": "^6.0.1", + "@octokit/request-error": "^2.1.0", + "@octokit/types": "^6.16.1", + "is-plain-object": "^5.0.0", + "node-fetch": "^2.6.7", + "universal-user-agent": "^6.0.0" } }, - "node_modules/buffer-crc32": { - "version": "0.2.13", - "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", - "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==", + "node_modules/@octokit/request-error": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-2.1.0.tgz", + "integrity": "sha512-1VIvgXxs9WHSjicsRwq8PlR2LR2x6DwsJAaFgzdi0JfJoGSO8mYI/cHJQ+9FbN21aa+DrgNLnwObmyeSC8Rmpg==", "dev": true, - "engines": { - "node": "*" + "dependencies": { + "@octokit/types": "^6.0.3", + "deprecation": "^2.0.0", + "once": "^1.4.0" } }, - "node_modules/buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", - "dev": true - }, - "node_modules/builtin-modules": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.3.0.tgz", - "integrity": "sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==", + "node_modules/@octokit/rest": { + "version": "18.12.0", + "resolved": "https://registry.npmjs.org/@octokit/rest/-/rest-18.12.0.tgz", + "integrity": "sha512-gDPiOHlyGavxr72y0guQEhLsemgVjwRePayJ+FcKc2SJqKUbxbkvf5kAZEWA/MKvsfYlQAMVzNJE3ezQcxMJ2Q==", "dev": true, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "dependencies": { + "@octokit/core": "^3.5.1", + "@octokit/plugin-paginate-rest": "^2.16.8", + "@octokit/plugin-request-log": "^1.0.4", + "@octokit/plugin-rest-endpoint-methods": "^5.12.0" } }, - "node_modules/cacheable-request": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.1.0.tgz", - "integrity": "sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==", + "node_modules/@octokit/types": { + "version": "6.41.0", + "resolved": "https://registry.npmjs.org/@octokit/types/-/types-6.41.0.tgz", + "integrity": "sha512-eJ2jbzjdijiL3B4PrSQaSjuF2sPEQPVCPzBvTHJD9Nz+9dw2SGH4K4xeQJ77YfTq5bRQ+bD8wT11JbeDPmxmGg==", "dev": true, "dependencies": { - "clone-response": "^1.0.2", - "get-stream": "^5.1.0", - "http-cache-semantics": "^4.0.0", - "keyv": "^3.0.0", - "lowercase-keys": "^2.0.0", - "normalize-url": "^4.1.0", - "responselike": "^1.0.2" - }, - "engines": { - "node": ">=8" + "@octokit/openapi-types": "^12.11.0" } }, - "node_modules/cacheable-request/node_modules/lowercase-keys": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", - "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==", - "dev": true, - "engines": { - "node": ">=8" + "node_modules/@pdf-lib/fontkit": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@pdf-lib/fontkit/-/fontkit-1.1.1.tgz", + "integrity": "sha512-KjMd7grNapIWS/Dm0gvfHEilSyAmeLvrEGVcqLGi0VYebuqqzTbgF29efCx7tvx+IEbG3zQciRSWl3GkUSvjZg==", + "dependencies": { + "pako": "^1.0.6" } }, - "node_modules/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, + "node_modules/@pdf-lib/standard-fonts": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@pdf-lib/standard-fonts/-/standard-fonts-1.0.0.tgz", + "integrity": "sha512-hU30BK9IUN/su0Mn9VdlVKsWBS6GyhVfqjwl1FjZN4TxP6cCw0jP2w7V3Hf5uX7M0AZJ16vey9yE0ny7Sa59ZA==", "dependencies": { - "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "pako": "^1.0.6" } }, - "node_modules/callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "node_modules/@pdf-lib/upng": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@pdf-lib/upng/-/upng-1.0.1.tgz", + "integrity": "sha512-dQK2FUMQtowVP00mtIksrlZhdFXQZPC+taih1q4CvPZ5vqdxR/LKBaFg0oAfzd1GlHZXXSPdQfzQnt+ViGvEIQ==", + "dependencies": { + "pako": "^1.0.10" + } + }, + "node_modules/@puppeteer/browsers": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@puppeteer/browsers/-/browsers-1.6.0.tgz", + "integrity": "sha512-R2ib8j329427jtKB/qlz0MJbwfJE/6I8ocJLiajsRqJ2PPI8DbjiNzC3lQZeISXEcjOBVhbG2RafN8SlHdcT+A==", "dev": true, + "dependencies": { + "debug": "4.3.4", + "extract-zip": "2.0.1", + "progress": "2.0.3", + "proxy-agent": "6.3.0", + "tar-fs": "3.0.4", + "unbzip2-stream": "1.4.3", + "yargs": "17.7.1" + }, + "bin": { + "browsers": "lib/cjs/main-cli.js" + }, "engines": { - "node": ">=6" + "node": ">=16.3.0" } }, - "node_modules/camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "node_modules/@sinclair/typebox": { + "version": "0.27.8", + "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz", + "integrity": "sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==", + "dev": true + }, + "node_modules/@sindresorhus/is": { + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz", + "integrity": "sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==", "dev": true, "engines": { "node": ">=6" } }, - "node_modules/camelcase-css": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz", - "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==", + "node_modules/@sinonjs/commons": { + "version": "1.8.6", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.6.tgz", + "integrity": "sha512-Ky+XkAkqPZSm3NLBeUng77EBQl3cmeJhITaGHdYH8kjVB+aun3S4XBRti2zt17mtt0mIUDiNxYeoJm6drVvBJQ==", "dev": true, - "engines": { - "node": ">= 6" + "dependencies": { + "type-detect": "4.0.8" } }, - "node_modules/caniuse-lite": { - "version": "1.0.30001521", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001521.tgz", - "integrity": "sha512-fnx1grfpEOvDGH+V17eccmNjucGUnCbP6KL+l5KqBIerp26WK/+RQ7CIDE37KGJjaPyqWXXlFUyKiWmvdNNKmQ==", + "node_modules/@sinonjs/fake-timers": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-8.1.0.tgz", + "integrity": "sha512-OAPJUAtgeINhh/TAlUID4QTs53Njm7xzddaVlEs/SXwgtiD1tW22zAB/W1wdqfrpmikgaWQ9Fw6Ws+hsiRm5Vg==", "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/caniuse-lite" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ] - }, - "node_modules/canvg": { - "version": "3.0.10", - "resolved": "https://registry.npmjs.org/canvg/-/canvg-3.0.10.tgz", - "integrity": "sha512-qwR2FRNO9NlzTeKIPIKpnTY6fqwuYSequ8Ru8c0YkYU7U0oW+hLUvWadLvAu1Rl72OMNiFhoLu4f8eUjQ7l/+Q==", - "optional": true, "dependencies": { - "@babel/runtime": "^7.12.5", - "@types/raf": "^3.4.0", - "core-js": "^3.8.3", - "raf": "^3.4.1", - "regenerator-runtime": "^0.13.7", - "rgbcolor": "^1.0.1", - "stackblur-canvas": "^2.0.0", - "svg-pathdata": "^6.0.3" + "@sinonjs/commons": "^1.7.0" + } + }, + "node_modules/@stencil/core": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/@stencil/core/-/core-4.0.5.tgz", + "integrity": "sha512-0nZRvvhjjOKsQFGX0pKiDtOS/5IiL7HRxtLqpIxHAxXKLs9ZcomTsdOwl12m/qjx2AtQReOfP8+x8jLOBNMOIQ==", + "bin": { + "stencil": "bin/stencil" }, "engines": { - "node": ">=10.0.0" + "node": ">=16.0.0", + "npm": ">=7.10.0" } }, - "node_modules/canvg/node_modules/core-js": { - "version": "3.27.2", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.27.2.tgz", - "integrity": "sha512-9ashVQskuh5AZEZ1JdQWp1GqSoC1e1G87MzRqg2gIfVAQ7Qn9K+uFj8EcniUFA4P2NLZfV+TOlX1SzoKfo+s7w==", - "hasInstallScript": true, - "optional": true, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/core-js" + "node_modules/@stencil/postcss": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@stencil/postcss/-/postcss-2.1.0.tgz", + "integrity": "sha512-/e4TYEXErGaHxH0ocg620YqEMLuMLpK/Wg4MJsiJglrLZCZhU4XCX1N0SwxaIOUbEZ1Zh+AqQ++yMI92ilndEA==", + "dev": true, + "dependencies": { + "autoprefixer": "^10.3.6", + "postcss": "~8.3.8" + }, + "peerDependencies": { + "@stencil/core": ">=2.0.0" } }, - "node_modules/canvg/node_modules/regenerator-runtime": { - "version": "0.13.11", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", - "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==", - "optional": true - }, - "node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "node_modules/@stencil/postcss/node_modules/postcss": { + "version": "8.3.11", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.3.11.tgz", + "integrity": "sha512-hCmlUAIlUiav8Xdqw3Io4LcpA1DOt7h3LSTAC4G6JGHFFaWzI6qvFt9oilvl8BmkbBRX1IhM90ZAmpk68zccQA==", "dev": true, "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "nanoid": "^3.1.30", + "picocolors": "^1.0.0", + "source-map-js": "^0.6.2" }, "engines": { - "node": ">=10" + "node": "^10 || ^12 || >=14" }, "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "type": "opencollective", + "url": "https://opencollective.com/postcss/" } }, - "node_modules/changelog-parser": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/changelog-parser/-/changelog-parser-2.8.1.tgz", - "integrity": "sha512-tNUYFRCEeWTXmwLqoNtOEzx9wcytg72MmGQqsEs14ClYwIDln7sbQw7FJj/dulXgSlsxkemc9gpPQhZYZx1TPw==", + "node_modules/@stencil/postcss/node_modules/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, - "dependencies": { - "line-reader": "^0.2.4", - "remove-markdown": "^0.2.2" - }, - "bin": { - "changelog-parser": "bin/cli.js" + "engines": { + "node": ">=0.10.0" } }, - "node_modules/char-regex": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz", - "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==", + "node_modules/@stencil/sass": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@stencil/sass/-/sass-3.0.5.tgz", + "integrity": "sha512-9nyllMXOEvHywo6fP2iwXgnq32A+OOUE36Aq7iUjzwT3wdr04qsvupO1JNIyRvmvCDF15hOKXztrZH1/wDu2Zg==", "dev": true, "engines": { - "node": ">=10" + "node": ">=12.0.0", + "npm": ">=6.0.0" + }, + "peerDependencies": { + "@stencil/core": ">=2.0.0 || >=3.0.0-beta.0 || >= 4.0.0-beta.0 || >= 4.0.0" } }, - "node_modules/chardet": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", - "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", - "dev": true - }, - "node_modules/chokidar": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "node_modules/@stencil/store": { + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/@stencil/store/-/store-2.0.9.tgz", + "integrity": "sha512-wPVkgOEeOVZ6OGuUy7lV/qYyhj7Ra3vZkebqT58HdkaaAAmaUCtinUG02e05iTQIoOWpN7oNhq/MWvhY7H/Wyw==", "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - ], - "dependencies": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - }, "engines": { - "node": ">= 8.10.0" + "node": ">=12.0.0", + "npm": ">=6.0.0" }, - "optionalDependencies": { - "fsevents": "~2.3.2" + "peerDependencies": { + "@stencil/core": ">=2.0.0 || >=3.0.0 || >= 4.0.0-beta.0 || >= 4.0.0" } }, - "node_modules/chokidar/node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "node_modules/@szmarczak/http-timer": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-1.1.2.tgz", + "integrity": "sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==", "dev": true, "dependencies": { - "is-glob": "^4.0.1" + "defer-to-connect": "^1.0.1" }, "engines": { - "node": ">= 6" + "node": ">=6" } }, - "node_modules/chownr": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", - "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==", - "dev": true - }, - "node_modules/ci-info": { - "version": "3.7.1", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.7.1.tgz", - "integrity": "sha512-4jYS4MOAaCIStSRwiuxc4B8MYhIe676yO1sYGzARnjXkWpmzZMMYxY6zu8WYWDhSuth5zhrQ1rhNSibyyvv4/w==", + "node_modules/@tootallnate/once": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz", + "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==", "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/sibiraj-s" - } - ], "engines": { - "node": ">=8" + "node": ">= 6" } }, - "node_modules/cjs-module-lexer": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.2.3.tgz", - "integrity": "sha512-0TNiGstbQmCFwt4akjjBg5pLRTSyj/PkWQ1ZoO2zntmg9yLqSRxwEa4iCfQLGjqhiqBfOJa7W/E8wfGrTDmlZQ==", + "node_modules/@tootallnate/quickjs-emscripten": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@tootallnate/quickjs-emscripten/-/quickjs-emscripten-0.23.0.tgz", + "integrity": "sha512-C5Mc6rdnsaJDjO3UpGW/CQTHtCKaYlScZTly4JIu97Jxo/odCiH0ITnDXSJPTOrEKk/ycSZ0AOgTmkDtkOsvIA==", "dev": true }, - "node_modules/clean-regexp": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/clean-regexp/-/clean-regexp-1.0.0.tgz", - "integrity": "sha512-GfisEZEJvzKrmGWkvfhgzcz/BllN1USeqD2V6tg14OAOgaCD2Z/PUEuxnAZ/nPvmaHRG7a8y77p1T/IRQ4D1Hw==", + "node_modules/@tsconfig/node10": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.9.tgz", + "integrity": "sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==", + "dev": true + }, + "node_modules/@tsconfig/node12": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz", + "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==", + "dev": true + }, + "node_modules/@tsconfig/node14": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", + "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==", + "dev": true + }, + "node_modules/@tsconfig/node16": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.3.tgz", + "integrity": "sha512-yOlFc+7UtL/89t2ZhjPvvB/DeAr3r+Dq58IgzsFkOAvVC6NMJXmCGjbptdXdR9qsX7pKcTL+s87FtYREi2dEEQ==", + "dev": true + }, + "node_modules/@types/arcgis-js-api": { + "version": "4.27.0", + "resolved": "https://registry.npmjs.org/@types/arcgis-js-api/-/arcgis-js-api-4.27.0.tgz", + "integrity": "sha512-sjbbvVTOvzZRUR6rrA4KSbxlvAnclAen2Km+IHlUEYxu7zQKAiSW+zQL6MkQw8ujvYEZRHj8VBttcvjONzmNIg==", + "dev": true + }, + "node_modules/@types/babel__core": { + "version": "7.20.1", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.1.tgz", + "integrity": "sha512-aACu/U/omhdk15O4Nfb+fHgH/z3QsfQzpnvRZhYhThms83ZnAOZz7zZAWO7mn2yyNQaA4xTO8GLK3uqFU4bYYw==", "dev": true, "dependencies": { - "escape-string-regexp": "^1.0.5" - }, - "engines": { - "node": ">=4" + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" } }, - "node_modules/clean-regexp/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "node_modules/@types/babel__generator": { + "version": "7.6.4", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.4.tgz", + "integrity": "sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg==", "dev": true, - "engines": { - "node": ">=0.8.0" + "dependencies": { + "@babel/types": "^7.0.0" } }, - "node_modules/cli-boxes": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-2.2.1.tgz", - "integrity": "sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==", + "node_modules/@types/babel__template": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.1.tgz", + "integrity": "sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g==", "dev": true, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "dependencies": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" } }, - "node_modules/cli-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", - "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "node_modules/@types/babel__traverse": { + "version": "7.20.1", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.1.tgz", + "integrity": "sha512-MitHFXnhtgwsGZWtT68URpOvLN4EREih1u3QtQiN4VdAxWKRVvGCSvw/Qth0M0Qq3pJpnGOu5JaM/ydK7OGbqg==", "dev": true, "dependencies": { - "restore-cursor": "^3.1.0" - }, - "engines": { - "node": ">=8" + "@babel/types": "^7.20.7" } }, - "node_modules/cli-spinners": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.7.0.tgz", - "integrity": "sha512-qu3pN8Y3qHNgE2AFweciB1IfMnmZ/fsNTEE+NOFjmGB2F/7rLhnhzppvpCnN4FovtP26k8lHyy9ptEbNwWFLzw==", - "dev": true, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node_modules/@types/color": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/color/-/color-3.0.3.tgz", + "integrity": "sha512-X//qzJ3d3Zj82J9sC/C18ZY5f43utPbAJ6PhYt/M7uG6etcF6MRpKdN880KBy43B0BMzSfeT96MzrsNjFI3GbA==", + "peer": true, + "dependencies": { + "@types/color-convert": "*" } }, - "node_modules/cli-width": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", - "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", - "dev": true, - "engines": { - "node": ">= 10" + "node_modules/@types/color-convert": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@types/color-convert/-/color-convert-2.0.0.tgz", + "integrity": "sha512-m7GG7IKKGuJUXvkZ1qqG3ChccdIM/qBBo913z+Xft0nKCX4hAU/IxKwZBU4cpRZ7GS5kV4vOblUkILtSShCPXQ==", + "peer": true, + "dependencies": { + "@types/color-name": "*" } }, - "node_modules/cliui": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", - "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "node_modules/@types/color-name": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@types/color-name/-/color-name-1.1.1.tgz", + "integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==", + "peer": true + }, + "node_modules/@types/graceful-fs": { + "version": "4.1.6", + "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.6.tgz", + "integrity": "sha512-Sig0SNORX9fdW+bQuTEovKj3uHcUL6LQKbCrrqb1X7J6/ReAbhCXRAhc+SMejhLELFj2QcyuxmUooZ4bt5ReSw==", "dev": true, "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.1", - "wrap-ansi": "^7.0.0" - }, - "engines": { - "node": ">=12" + "@types/node": "*" } }, - "node_modules/clone": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", - "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", - "dev": true, - "engines": { - "node": ">=0.8" - } + "node_modules/@types/istanbul-lib-coverage": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz", + "integrity": "sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==", + "dev": true }, - "node_modules/clone-response": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.3.tgz", - "integrity": "sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==", + "node_modules/@types/istanbul-lib-report": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", + "integrity": "sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==", "dev": true, "dependencies": { - "mimic-response": "^1.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "@types/istanbul-lib-coverage": "*" } }, - "node_modules/clone-response/node_modules/mimic-response": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", - "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", + "node_modules/@types/istanbul-reports": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz", + "integrity": "sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==", "dev": true, - "engines": { - "node": ">=4" + "dependencies": { + "@types/istanbul-lib-report": "*" } }, - "node_modules/co": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", - "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==", + "node_modules/@types/jest": { + "version": "27.5.2", + "resolved": "https://registry.npmjs.org/@types/jest/-/jest-27.5.2.tgz", + "integrity": "sha512-mpT8LJJ4CMeeahobofYWIjFo0xonRS/HfxnVEPMPFSQdGUt1uHCnoPT7Zhb+sjDU2wz0oKV0OLUR0WzrHNgfeA==", "dev": true, - "engines": { - "iojs": ">= 1.0.0", - "node": ">= 0.12.0" - } - }, - "node_modules/collect-v8-coverage": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.2.tgz", - "integrity": "sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q==", - "dev": true - }, - "node_modules/color": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/color/-/color-4.2.3.tgz", - "integrity": "sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==", - "peer": true, - "dependencies": { - "color-convert": "^2.0.1", - "color-string": "^1.9.0" - }, - "engines": { - "node": ">=12.5.0" - } - }, - "node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" + "jest-matcher-utils": "^27.0.0", + "pretty-format": "^27.0.0" } }, - "node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" - }, - "node_modules/color-string": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz", - "integrity": "sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==", - "peer": true, - "dependencies": { - "color-name": "^1.0.0", - "simple-swizzle": "^0.2.2" - } + "node_modules/@types/json-schema": { + "version": "7.0.11", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz", + "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==", + "dev": true }, - "node_modules/color-support": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", - "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", - "dev": true, - "bin": { - "color-support": "bin.js" - } + "node_modules/@types/lodash": { + "version": "4.14.191", + "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.191.tgz", + "integrity": "sha512-BdZ5BCCvho3EIXw6wUCXHe7rS53AIDPLE+JzwgT+OsJk53oBfbSmZZ7CX4VaRoN78N+TJpFi9QPlfIVNmJYWxQ==", + "dev": true }, - "node_modules/combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "node_modules/@types/lodash.isplainobject": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/@types/lodash.isplainobject/-/lodash.isplainobject-4.0.7.tgz", + "integrity": "sha512-fdHtdjpy7fXydEaRHx1dPa+2AVmLbmk2Gv7f0w/90BKCH0DkWo8pIrzygnB3rvgo6oKNb3cO9VaPpj9GLCr5Ug==", "dev": true, "dependencies": { - "delayed-stream": "~1.0.0" - }, - "engines": { - "node": ">= 0.8" + "@types/lodash": "*" } }, - "node_modules/commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "node_modules/@types/node": { + "version": "16.18.11", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.11.tgz", + "integrity": "sha512-3oJbGBUWuS6ahSnEq1eN2XrCyf4YsWI8OyCvo7c64zQJNplk3mO84t53o8lfTk+2ji59g5ycfc6qQ3fdHliHuA==", "dev": true }, - "node_modules/composed-offset-position": { - "version": "0.0.4", - "resolved": "https://registry.npmjs.org/composed-offset-position/-/composed-offset-position-0.0.4.tgz", - "integrity": "sha512-vMlvu1RuNegVE0YsCDSV/X4X10j56mq7PCIyOKK74FxkXzGLwhOUmdkJLSdOBOMwWycobGUMgft2lp+YgTe8hw==", - "peer": true + "node_modules/@types/normalize-package-data": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz", + "integrity": "sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==", + "dev": true }, - "node_modules/concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "node_modules/@types/parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", "dev": true }, - "node_modules/configstore": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/configstore/-/configstore-5.0.1.tgz", - "integrity": "sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==", + "node_modules/@types/prettier": { + "version": "2.7.3", + "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.7.3.tgz", + "integrity": "sha512-+68kP9yzs4LMp7VNh8gdzMSPZFL44MLGqiHWvttYJe+6qnuVr4Ek9wSBQoveqY/r+LwjCcU29kNVkidwim+kYA==", + "dev": true + }, + "node_modules/@types/puppeteer": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/@types/puppeteer/-/puppeteer-7.0.4.tgz", + "integrity": "sha512-ja78vquZc8y+GM2al07GZqWDKQskQXygCDiu0e3uO0DMRKqE0MjrFBFmTulfPYzLB6WnL7Kl2tFPy0WXSpPomg==", + "deprecated": "This is a stub types definition. puppeteer provides its own type definitions, so you do not need this installed.", "dev": true, "dependencies": { - "dot-prop": "^5.2.0", - "graceful-fs": "^4.1.2", - "make-dir": "^3.0.0", - "unique-string": "^2.0.0", - "write-file-atomic": "^3.0.0", - "xdg-basedir": "^4.0.0" - }, - "engines": { - "node": ">=8" + "puppeteer": "*" } }, - "node_modules/console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==", - "dev": true + "node_modules/@types/raf": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/@types/raf/-/raf-3.4.0.tgz", + "integrity": "sha512-taW5/WYqo36N7V39oYyHP9Ipfd5pNFvGTIQsNGj86xV88YQ7GnI30/yMfKDF7Zgin0m3e+ikX88FvImnK4RjGw==", + "optional": true }, - "node_modules/convert-source-map": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", - "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", + "node_modules/@types/semver": { + "version": "7.3.13", + "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.3.13.tgz", + "integrity": "sha512-21cFJr9z3g5dW8B0CVI9g2O9beqaThGQ6ZFBqHfwhzLDKUxaqTIy3vnfah/UPkfOiF2pLq+tGz+W8RyCskuslw==", "dev": true }, - "node_modules/core-util-is": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", - "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", + "node_modules/@types/stack-utils": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.1.tgz", + "integrity": "sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw==", "dev": true }, - "node_modules/cosmiconfig": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", - "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==", + "node_modules/@types/yargs": { + "version": "17.0.24", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.24.tgz", + "integrity": "sha512-6i0aC7jV6QzQB8ne1joVZ0eSFIstHsCrobmOtghM11yGlH0j43FKL2UhWdELkyps0zuf7qVTUVCCR+tgSlyLLw==", "dev": true, "dependencies": { - "@types/parse-json": "^4.0.0", - "import-fresh": "^3.2.1", - "parse-json": "^5.0.0", - "path-type": "^4.0.0", - "yaml": "^1.10.0" - }, - "engines": { - "node": ">=10" + "@types/yargs-parser": "*" } }, - "node_modules/create-require": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", - "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", + "node_modules/@types/yargs-parser": { + "version": "21.0.0", + "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.0.tgz", + "integrity": "sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==", "dev": true }, - "node_modules/cross-fetch": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.1.5.tgz", - "integrity": "sha512-lvb1SBsI0Z7GDwmuid+mU3kWVBwTVUbe7S0H52yaaAdQOXq2YktTCZdlAcNKFzE6QtRz0snpw9bNiPeOIkkQvw==", + "node_modules/@types/yauzl": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/@types/yauzl/-/yauzl-2.10.0.tgz", + "integrity": "sha512-Cn6WYCm0tXv8p6k+A8PvbDG763EDpBoTzHdA+Q/MF6H3sapGjCm9NzoaJncJS9tUKSuCoDs9XHxYYsQDgxR6kw==", "dev": true, + "optional": true, "dependencies": { - "node-fetch": "2.6.7" + "@types/node": "*" } }, - "node_modules/cross-fetch/node_modules/node-fetch": { - "version": "2.6.7", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", - "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", + "node_modules/@typescript-eslint/eslint-plugin": { + "version": "5.49.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.49.0.tgz", + "integrity": "sha512-IhxabIpcf++TBaBa1h7jtOWyon80SXPRLDq0dVz5SLFC/eW6tofkw/O7Ar3lkx5z5U6wzbKDrl2larprp5kk5Q==", "dev": true, "dependencies": { - "whatwg-url": "^5.0.0" + "@typescript-eslint/scope-manager": "5.49.0", + "@typescript-eslint/type-utils": "5.49.0", + "@typescript-eslint/utils": "5.49.0", + "debug": "^4.3.4", + "ignore": "^5.2.0", + "natural-compare-lite": "^1.4.0", + "regexpp": "^3.2.0", + "semver": "^7.3.7", + "tsutils": "^3.21.0" }, "engines": { - "node": "4.x || >=6.0.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "encoding": "^0.1.0" + "@typescript-eslint/parser": "^5.0.0", + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" }, "peerDependenciesMeta": { - "encoding": { + "typescript": { "optional": true } } }, - "node_modules/cross-fetch/node_modules/tr46": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", - "dev": true - }, - "node_modules/cross-fetch/node_modules/webidl-conversions": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", - "dev": true - }, - "node_modules/cross-fetch/node_modules/whatwg-url": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", - "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", - "dev": true, - "dependencies": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" - } - }, - "node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "node_modules/@typescript-eslint/experimental-utils": { + "version": "5.49.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-5.49.0.tgz", + "integrity": "sha512-veLpCJLYn44Fru7mSvi2doxQMzMCOFSDYdMUQhAzaH1vFYq2RVNpecZ8d18Wh6UMv07yahXkiv/aShWE48iE9Q==", "dev": true, "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" + "@typescript-eslint/utils": "5.49.0" }, "engines": { - "node": ">= 8" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" } }, - "node_modules/crypto-random-string": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz", - "integrity": "sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==", + "node_modules/@typescript-eslint/parser": { + "version": "5.49.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.49.0.tgz", + "integrity": "sha512-veDlZN9mUhGqU31Qiv2qEp+XrJj5fgZpJ8PW30sHU+j/8/e5ruAhLaVDAeznS7A7i4ucb/s8IozpDtt9NqCkZg==", "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/css-line-break": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/css-line-break/-/css-line-break-2.1.0.tgz", - "integrity": "sha512-FHcKFCZcAha3LwfVBhCQbW2nCNbkZXn7KVUJcsT5/P8YmfsVja0FMPJr0B903j/E69HUphKiV9iQArX8SDYA4w==", - "optional": true, "dependencies": { - "utrie": "^1.0.2" - } - }, - "node_modules/cssesc": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", - "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", - "dev": true, - "bin": { - "cssesc": "bin/cssesc" + "@typescript-eslint/scope-manager": "5.49.0", + "@typescript-eslint/types": "5.49.0", + "@typescript-eslint/typescript-estree": "5.49.0", + "debug": "^4.3.4" }, "engines": { - "node": ">=4" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, - "node_modules/cssfilter": { - "version": "0.0.10", - "resolved": "https://registry.npmjs.org/cssfilter/-/cssfilter-0.0.10.tgz", - "integrity": "sha512-FAaLDaplstoRsDR8XGYH51znUN0UY7nMc6Z9/fvE8EXGwvJE9hu7W2vHwx1+bd6gCYnln9nLbzxFTrcO9YQDZw==", - "dev": true - }, - "node_modules/cssom": { - "version": "0.4.4", - "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.4.4.tgz", - "integrity": "sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==", - "dev": true - }, - "node_modules/cssstyle": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-2.3.0.tgz", - "integrity": "sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==", + "node_modules/@typescript-eslint/scope-manager": { + "version": "5.49.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.49.0.tgz", + "integrity": "sha512-clpROBOiMIzpbWNxCe1xDK14uPZh35u4QaZO1GddilEzoCLAEz4szb51rBpdgurs5k2YzPtJeTEN3qVbG+LRUQ==", "dev": true, "dependencies": { - "cssom": "~0.3.6" + "@typescript-eslint/types": "5.49.0", + "@typescript-eslint/visitor-keys": "5.49.0" }, "engines": { - "node": ">=8" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" } }, - "node_modules/cssstyle/node_modules/cssom": { - "version": "0.3.8", - "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz", - "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==", - "dev": true - }, - "node_modules/data-urls": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-2.0.0.tgz", - "integrity": "sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ==", + "node_modules/@typescript-eslint/type-utils": { + "version": "5.49.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.49.0.tgz", + "integrity": "sha512-eUgLTYq0tR0FGU5g1YHm4rt5H/+V2IPVkP0cBmbhRyEmyGe4XvJ2YJ6sYTmONfjmdMqyMLad7SB8GvblbeESZA==", "dev": true, "dependencies": { - "abab": "^2.0.3", - "whatwg-mimetype": "^2.3.0", - "whatwg-url": "^8.0.0" + "@typescript-eslint/typescript-estree": "5.49.0", + "@typescript-eslint/utils": "5.49.0", + "debug": "^4.3.4", + "tsutils": "^3.21.0" }, "engines": { - "node": ">=10" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "*" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, - "node_modules/dayjs": { - "version": "1.11.8", - "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.8.tgz", - "integrity": "sha512-LcgxzFoWMEPO7ggRv1Y2N31hUf2R0Vj7fuy/m+Bg1K8rr+KAs1AEy4y9jd5DXe8pbHgX+srkHNS7TH6Q6ZhYeQ==", - "peer": true + "node_modules/@typescript-eslint/types": { + "version": "5.49.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.49.0.tgz", + "integrity": "sha512-7If46kusG+sSnEpu0yOz2xFv5nRz158nzEXnJFCGVEHWnuzolXKwrH5Bsf9zsNlOQkyZuk0BZKKoJQI+1JPBBg==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } }, - "node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "node_modules/@typescript-eslint/typescript-estree": { + "version": "5.49.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.49.0.tgz", + "integrity": "sha512-PBdx+V7deZT/3GjNYPVQv1Nc0U46dAHbIuOG8AZ3on3vuEKiPDwFE/lG1snN2eUB9IhF7EyF7K1hmTcLztNIsA==", "dev": true, "dependencies": { - "ms": "2.1.2" + "@typescript-eslint/types": "5.49.0", + "@typescript-eslint/visitor-keys": "5.49.0", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "semver": "^7.3.7", + "tsutils": "^3.21.0" }, "engines": { - "node": ">=6.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" }, "peerDependenciesMeta": { - "supports-color": { + "typescript": { "optional": true } } }, - "node_modules/decimal.js": { - "version": "10.4.3", - "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz", - "integrity": "sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==", - "dev": true - }, - "node_modules/decompress-response": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz", - "integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==", + "node_modules/@typescript-eslint/utils": { + "version": "5.49.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.49.0.tgz", + "integrity": "sha512-cPJue/4Si25FViIb74sHCLtM4nTSBXtLx1d3/QT6mirQ/c65bV8arBEebBJJizfq8W2YyMoPI/WWPFWitmNqnQ==", "dev": true, "dependencies": { - "mimic-response": "^3.1.0" + "@types/json-schema": "^7.0.9", + "@types/semver": "^7.3.12", + "@typescript-eslint/scope-manager": "5.49.0", + "@typescript-eslint/types": "5.49.0", + "@typescript-eslint/typescript-estree": "5.49.0", + "eslint-scope": "^5.1.1", + "eslint-utils": "^3.0.0", + "semver": "^7.3.7" }, "engines": { - "node": ">=10" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" } }, - "node_modules/dedent": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz", - "integrity": "sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==", - "dev": true - }, - "node_modules/deep-extend": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", - "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", + "node_modules/@typescript-eslint/visitor-keys": { + "version": "5.49.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.49.0.tgz", + "integrity": "sha512-v9jBMjpNWyn8B6k/Mjt6VbUS4J1GvUlR4x3Y+ibnP1z7y7V4n0WRz+50DY6+Myj0UaXVSuUlHohO+eZ8IJEnkg==", "dev": true, + "dependencies": { + "@typescript-eslint/types": "5.49.0", + "eslint-visitor-keys": "^3.3.0" + }, "engines": { - "node": ">=4.0.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" } }, - "node_modules/deep-is": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", - "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", - "dev": true + "node_modules/abab": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", + "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==" }, - "node_modules/deepmerge": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", - "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", + "node_modules/acorn": { + "version": "8.8.2", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.2.tgz", + "integrity": "sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==", "dev": true, + "bin": { + "acorn": "bin/acorn" + }, "engines": { - "node": ">=0.10.0" + "node": ">=0.4.0" } }, - "node_modules/defaults": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.4.tgz", - "integrity": "sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==", + "node_modules/acorn-globals": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-6.0.0.tgz", + "integrity": "sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg==", "dev": true, "dependencies": { - "clone": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "acorn": "^7.1.1", + "acorn-walk": "^7.1.1" } }, - "node_modules/defer-to-connect": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.1.3.tgz", - "integrity": "sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==", - "dev": true - }, - "node_modules/define-properties": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz", - "integrity": "sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==", + "node_modules/acorn-globals/node_modules/acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", "dev": true, - "dependencies": { - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" + "bin": { + "acorn": "bin/acorn" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/defined": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.1.tgz", - "integrity": "sha512-hsBd2qSVCRE+5PmNdHt1uzyrFu5d3RwmFDKzyNZMFq/EwDNJF7Ee5+D5oEKF0hU6LhtoUF1macFvOe4AskQC1Q==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", - "dev": true, "engines": { "node": ">=0.4.0" } }, - "node_modules/deprecation": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/deprecation/-/deprecation-2.3.1.tgz", - "integrity": "sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ==", - "dev": true - }, - "node_modules/detect-indent": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-6.1.0.tgz", - "integrity": "sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA==", + "node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", "dev": true, - "engines": { - "node": ">=8" + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" } }, - "node_modules/detect-newline": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz", - "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==", + "node_modules/acorn-node": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/acorn-node/-/acorn-node-1.8.2.tgz", + "integrity": "sha512-8mt+fslDufLYntIoPAaIMUe/lrbrehIiwmR3t2k9LljIzoigEPF27eLk2hy8zSGzmR/ogr7zbRKINMo1u0yh5A==", "dev": true, - "engines": { - "node": ">=8" + "dependencies": { + "acorn": "^7.0.0", + "acorn-walk": "^7.0.0", + "xtend": "^4.0.2" } }, - "node_modules/detective": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/detective/-/detective-5.2.1.tgz", - "integrity": "sha512-v9XE1zRnz1wRtgurGu0Bs8uHKFSTdteYZNbIPFVhUZ39L/S79ppMpdmVOZAnoz1jfEFodc48n6MX483Xo3t1yw==", + "node_modules/acorn-node/node_modules/acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", "dev": true, - "dependencies": { - "acorn-node": "^1.8.2", - "defined": "^1.0.0", - "minimist": "^1.2.6" - }, "bin": { - "detective": "bin/detective.js" + "acorn": "bin/acorn" }, "engines": { - "node": ">=0.8.0" + "node": ">=0.4.0" } }, - "node_modules/devtools-protocol": { - "version": "0.0.981744", - "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.981744.tgz", - "integrity": "sha512-0cuGS8+jhR67Fy7qG3i3Pc7Aw494sb9yG9QgpG97SFVWwolgYjlhJg7n+UaHxOQT30d1TYu/EYe9k01ivLErIg==", - "dev": true - }, - "node_modules/didyoumean": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz", - "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==", - "dev": true - }, - "node_modules/diff": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", - "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", + "node_modules/acorn-walk": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz", + "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", "dev": true, "engines": { - "node": ">=0.3.1" + "node": ">=0.4.0" } }, - "node_modules/diff-sequences": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.5.1.tgz", - "integrity": "sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==", - "dev": true, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node_modules/adlib": { + "version": "3.0.8", + "resolved": "https://registry.npmjs.org/adlib/-/adlib-3.0.8.tgz", + "integrity": "sha512-CbQ+mcm45pdDN0aAiGYP6FZWDor+BM4DbqJsrUptM79a2+FbiP8QdF0xHABbgCkioApKqg8lI33Gl6X8GFelfA==", + "dependencies": { + "esm": "^3.2.25" } }, - "node_modules/dir-glob": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", - "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "node_modules/agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", "dev": true, "dependencies": { - "path-type": "^4.0.0" + "debug": "4" }, "engines": { - "node": ">=8" + "node": ">= 6.0.0" } }, - "node_modules/dlv": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz", - "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==", - "dev": true + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } }, - "node_modules/doctrine": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "node_modules/ansi-align": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.1.tgz", + "integrity": "sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==", "dev": true, "dependencies": { - "esutils": "^2.0.2" - }, - "engines": { - "node": ">=6.0.0" + "string-width": "^4.1.0" } }, - "node_modules/domexception": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/domexception/-/domexception-2.0.1.tgz", - "integrity": "sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg==", + "node_modules/ansi-escapes": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", "dev": true, "dependencies": { - "webidl-conversions": "^5.0.0" + "type-fest": "^0.21.3" }, "engines": { "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/domexception/node_modules/webidl-conversions": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-5.0.0.tgz", - "integrity": "sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==", + "node_modules/ansi-escapes/node_modules/type-fest": { + "version": "0.21.3", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", "dev": true, "engines": { - "node": ">=8" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/dompurify": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-2.4.3.tgz", - "integrity": "sha512-q6QaLcakcRjebxjg8/+NP+h0rPfatOgOzc46Fst9VAA3jF2ApfKBNKMzdP4DYTqtUMXSCd5pRS/8Po/OmoCHZQ==", - "optional": true - }, - "node_modules/dot-prop": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", - "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==", + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", "dev": true, - "dependencies": { - "is-obj": "^2.0.0" - }, "engines": { "node": ">=8" } }, - "node_modules/dotenv": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-10.0.0.tgz", - "integrity": "sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q==", + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, "engines": { - "node": ">=10" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/duplexer3": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.5.tgz", - "integrity": "sha512-1A8za6ws41LQgv9HrE/66jyC5yuSjQ3L/KOpFtoBilsAK2iA2wuS5rTt1OCzIvtS2V7nVmedsUU+DGRcjBmOYA==", - "dev": true - }, - "node_modules/duplexify": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-4.1.2.tgz", - "integrity": "sha512-fz3OjcNCHmRP12MJoZMPglx8m4rrFP8rovnk4vT8Fs+aonZoCwGg10dSsQsfP/E62eZcPTMSMP6686fu9Qlqtw==", + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", "dev": true, "dependencies": { - "end-of-stream": "^1.4.1", - "inherits": "^2.0.3", - "readable-stream": "^3.1.1", - "stream-shift": "^1.0.0" + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" } }, - "node_modules/duplexify/node_modules/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==", + "node_modules/application-config": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/application-config/-/application-config-2.0.0.tgz", + "integrity": "sha512-NC5/0guSZK3/UgUDfCk/riByXzqz0owL1L3r63JPSBzYk5QALrp3bLxbsR7qeSfvYfFmAhnp3dbqYsW3U9MpZQ==", "dev": true, "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" + "application-config-path": "^0.1.0", + "load-json-file": "^6.2.0", + "write-json-file": "^4.2.0" }, "engines": { - "node": ">= 6" + "node": ">=8.3" } }, - "node_modules/electron-to-chromium": { - "version": "1.4.491", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.491.tgz", - "integrity": "sha512-ZzPqGKghdVzlQJ+qpfE+r6EB321zed7e5JsvHIlMM4zPFF8okXUkF5Of7h7F3l3cltPL0rG7YVmlp5Qro7RQLA==", + "node_modules/application-config-path": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/application-config-path/-/application-config-path-0.1.1.tgz", + "integrity": "sha512-zy9cHePtMP0YhwG+CfHm0bgwdnga2X3gZexpdCwEj//dpb+TKajtiC8REEUJUSq6Ab4f9cgNy2l8ObXzCXFkEw==", "dev": true }, - "node_modules/emittery": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.8.1.tgz", - "integrity": "sha512-uDfvUjVrfGJJhymx/kz6prltenw1u7WrCg1oa94zYY8xxVpLLUu045LAT0dhDZdXG58/EpPL/5kA180fQ/qudg==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sindresorhus/emittery?sponsor=1" - } + "node_modules/aproba": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", + "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==", + "dev": true }, - "node_modules/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==", + "node_modules/arg": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz", + "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==", "dev": true }, - "node_modules/encoding": { - "version": "0.1.13", - "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", - "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", - "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "iconv-lite": "^0.6.2" - } + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true }, - "node_modules/encoding/node_modules/iconv-lite": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", - "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "node_modules/array-includes": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.6.tgz", + "integrity": "sha512-sgTbLvL6cNnw24FnbaDyjmvddQ2ML8arZsgaJhoABMoplz/4QRhtrYS+alr1BUM1Bwp6dhx8vVCBSLG+StwOFw==", "dev": true, - "optional": true, - "peer": true, "dependencies": { - "safer-buffer": ">= 2.1.2 < 3.0.0" + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "get-intrinsic": "^1.1.3", + "is-string": "^1.0.7" }, "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/end-of-stream": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", - "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", - "dev": true, - "dependencies": { - "once": "^1.4.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/error-ex": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "node_modules/array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", "dev": true, - "dependencies": { - "is-arrayish": "^0.2.1" + "engines": { + "node": ">=8" } }, - "node_modules/es-abstract": { - "version": "1.21.1", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.21.1.tgz", - "integrity": "sha512-QudMsPOz86xYz/1dG1OuGBKOELjCh99IIWHLzy5znUB6j8xG2yMA7bfTV86VSqKF+Y/H08vQPR+9jyXpuC6hfg==", + "node_modules/array.prototype.flatmap": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.1.tgz", + "integrity": "sha512-8UGn9O1FDVvMNB0UlLv4voxRMze7+FpHyF5mSMRjWHUMlpoDViniy05870VlxhfgTnLbpuwTzvD76MTtWxB/mQ==", "dev": true, "dependencies": { - "available-typed-arrays": "^1.0.5", "call-bind": "^1.0.2", - "es-set-tostringtag": "^2.0.1", - "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", - "function.prototype.name": "^1.1.5", - "get-intrinsic": "^1.1.3", - "get-symbol-description": "^1.0.0", - "globalthis": "^1.0.3", - "gopd": "^1.0.1", - "has": "^1.0.3", - "has-property-descriptors": "^1.0.0", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3", - "internal-slot": "^1.0.4", - "is-array-buffer": "^3.0.1", - "is-callable": "^1.2.7", - "is-negative-zero": "^2.0.2", - "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.2", - "is-string": "^1.0.7", - "is-typed-array": "^1.1.10", - "is-weakref": "^1.0.2", - "object-inspect": "^1.12.2", - "object-keys": "^1.1.1", - "object.assign": "^4.1.4", - "regexp.prototype.flags": "^1.4.3", - "safe-regex-test": "^1.0.0", - "string.prototype.trimend": "^1.0.6", - "string.prototype.trimstart": "^1.0.6", - "typed-array-length": "^1.0.4", - "unbox-primitive": "^1.0.2", - "which-typed-array": "^1.1.9" + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "es-shim-unscopables": "^1.0.0" }, "engines": { "node": ">= 0.4" @@ -4475,39 +4516,79 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/es-set-tostringtag": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.1.tgz", - "integrity": "sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==", + "node_modules/ast-types": { + "version": "0.13.4", + "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.13.4.tgz", + "integrity": "sha512-x1FCFnFifvYDDzTaLII71vG5uvDwgtmDTEVWAxrgeiR8VjMONcCXJx7E+USjDtHlwFmt9MysbqgF9b9Vjr6w+w==", "dev": true, "dependencies": { - "get-intrinsic": "^1.1.3", - "has": "^1.0.3", - "has-tostringtag": "^1.0.0" + "tslib": "^2.0.1" }, "engines": { - "node": ">= 0.4" + "node": ">=4" } }, - "node_modules/es-shim-unscopables": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.0.tgz", - "integrity": "sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==", - "dev": true, - "dependencies": { - "has": "^1.0.3" + "node_modules/async": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.4.tgz", + "integrity": "sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==", + "dev": true + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", + "dev": true + }, + "node_modules/atob": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", + "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", + "bin": { + "atob": "bin/atob.js" + }, + "engines": { + "node": ">= 4.5.0" } }, - "node_modules/es-to-primitive": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", - "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "node_modules/autoprefixer": { + "version": "10.4.4", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.4.tgz", + "integrity": "sha512-Tm8JxsB286VweiZ5F0anmbyGiNI3v3wGv3mz9W+cxEDYB/6jbnj6GM9H9mK3wIL8ftgl+C07Lcwb8PG5PCCPzA==", "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/autoprefixer" + } + ], "dependencies": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" + "browserslist": "^4.20.2", + "caniuse-lite": "^1.0.30001317", + "fraction.js": "^4.2.0", + "normalize-range": "^0.1.2", + "picocolors": "^1.0.0", + "postcss-value-parser": "^4.2.0" + }, + "bin": { + "autoprefixer": "bin/autoprefixer" + }, + "engines": { + "node": "^10 || ^12 || >=14" }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/available-typed-arrays": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz", + "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==", + "dev": true, "engines": { "node": ">= 0.4" }, @@ -4515,579 +4596,595 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "node_modules/b4a": { + "version": "1.6.4", + "resolved": "https://registry.npmjs.org/b4a/-/b4a-1.6.4.tgz", + "integrity": "sha512-fpWrvyVHEKyeEvbKZTVOeZF3VSKKWtJxFIxX/jaVPf+cLbGUSitjb49pHLqPV2BUNNZ0LcoeEGfE/YCpyDYHIw==", + "dev": true + }, + "node_modules/babel-jest": { + "version": "29.6.2", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-29.6.2.tgz", + "integrity": "sha512-BYCzImLos6J3BH/+HvUCHG1dTf2MzmAB4jaVxHV+29RZLjR29XuYTmsf2sdDwkrb+FczkGo3kOhE7ga6sI0P4A==", "dev": true, + "dependencies": { + "@jest/transform": "^29.6.2", + "@types/babel__core": "^7.1.14", + "babel-plugin-istanbul": "^6.1.1", + "babel-preset-jest": "^29.5.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "slash": "^3.0.0" + }, "engines": { - "node": ">=6" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.8.0" } }, - "node_modules/escape-goat": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/escape-goat/-/escape-goat-2.1.1.tgz", - "integrity": "sha512-8/uIhbG12Csjy2JEW7D9pHbreaVaS/OpN3ycnyvElTdwM5n6GY6W6e2IPemfvGZeUMqZ9A/3GqIZMgKnBhAw/Q==", + "node_modules/babel-plugin-istanbul": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", + "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@istanbuljs/load-nyc-config": "^1.0.0", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-instrument": "^5.0.4", + "test-exclude": "^6.0.0" + }, "engines": { "node": ">=8" } }, - "node_modules/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==", + "node_modules/babel-plugin-jest-hoist": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.5.0.tgz", + "integrity": "sha512-zSuuuAlTMT4mzLj2nPnUm6fsE6270vdOfnpbJ+RmruU75UhLFvL0N2NgI7xpeS7NaB6hGqmd5pVpGTDYvi4Q3w==", "dev": true, - "engines": { - "node": ">=10" + "dependencies": { + "@babel/template": "^7.3.3", + "@babel/types": "^7.3.3", + "@types/babel__core": "^7.1.14", + "@types/babel__traverse": "^7.0.6" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/escodegen": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-2.1.0.tgz", - "integrity": "sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w==", + "node_modules/babel-plugin-polyfill-corejs2": { + "version": "0.4.5", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.5.tgz", + "integrity": "sha512-19hwUH5FKl49JEsvyTcoHakh6BE0wgXLLptIyKZ3PijHc/Ci521wygORCUCCred+E/twuqRyAkE02BAWPmsHOg==", "dev": true, "dependencies": { - "esprima": "^4.0.1", - "estraverse": "^5.2.0", - "esutils": "^2.0.2" + "@babel/compat-data": "^7.22.6", + "@babel/helper-define-polyfill-provider": "^0.4.2", + "semver": "^6.3.1" }, - "bin": { - "escodegen": "bin/escodegen.js", - "esgenerate": "bin/esgenerate.js" - }, - "engines": { - "node": ">=6.0" - }, - "optionalDependencies": { - "source-map": "~0.6.1" + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" } }, - "node_modules/eslint": { - "version": "8.33.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.33.0.tgz", - "integrity": "sha512-WjOpFQgKK8VrCnAtl8We0SUOy/oVZ5NHykyMiagV1M9r8IFpIJX7DduK6n1mpfhlG7T1NLWm2SuD8QB7KFySaA==", + "node_modules/babel-plugin-polyfill-corejs2/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "dev": true, - "dependencies": { - "@eslint/eslintrc": "^1.4.1", - "@humanwhocodes/config-array": "^0.11.8", - "@humanwhocodes/module-importer": "^1.0.1", - "@nodelib/fs.walk": "^1.2.8", - "ajv": "^6.10.0", - "chalk": "^4.0.0", - "cross-spawn": "^7.0.2", - "debug": "^4.3.2", - "doctrine": "^3.0.0", - "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.1.1", - "eslint-utils": "^3.0.0", - "eslint-visitor-keys": "^3.3.0", - "espree": "^9.4.0", - "esquery": "^1.4.0", - "esutils": "^2.0.2", - "fast-deep-equal": "^3.1.3", - "file-entry-cache": "^6.0.1", - "find-up": "^5.0.0", - "glob-parent": "^6.0.2", - "globals": "^13.19.0", - "grapheme-splitter": "^1.0.4", - "ignore": "^5.2.0", - "import-fresh": "^3.0.0", - "imurmurhash": "^0.1.4", - "is-glob": "^4.0.0", - "is-path-inside": "^3.0.3", - "js-sdsl": "^4.1.4", - "js-yaml": "^4.1.0", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.4.1", - "lodash.merge": "^4.6.2", - "minimatch": "^3.1.2", - "natural-compare": "^1.4.0", - "optionator": "^0.9.1", - "regexpp": "^3.2.0", - "strip-ansi": "^6.0.1", - "strip-json-comments": "^3.1.0", - "text-table": "^0.2.0" - }, "bin": { - "eslint": "bin/eslint.js" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" + "semver": "bin/semver.js" } }, - "node_modules/eslint-config-prettier": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.3.0.tgz", - "integrity": "sha512-BgZuLUSeKzvlL/VUjx/Yb787VQ26RU3gGjA3iiFvdsp/2bMfVIWUVP7tjxtjS0e+HP409cPlPvNkQloz8C91ew==", + "node_modules/babel-plugin-polyfill-corejs3": { + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.8.3.tgz", + "integrity": "sha512-z41XaniZL26WLrvjy7soabMXrfPWARN25PZoriDEiLMxAp50AUW3t35BGQUMg5xK3UrpVTtagIDklxYa+MhiNA==", "dev": true, - "bin": { - "eslint-config-prettier": "bin/cli.js" + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.4.2", + "core-js-compat": "^3.31.0" }, "peerDependencies": { - "eslint": ">=7.0.0" + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" } }, - "node_modules/eslint-plugin-jest": { - "version": "25.3.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-25.3.0.tgz", - "integrity": "sha512-79WQtuBsTN1S8Y9+7euBYwxIOia/k7ykkl9OCBHL3xuww5ecursHy/D8GCIlvzHVWv85gOkS5Kv6Sh7RxOgK1Q==", + "node_modules/babel-plugin-polyfill-regenerator": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.5.2.tgz", + "integrity": "sha512-tAlOptU0Xj34V1Y2PNTL4Y0FOJMDB6bZmoW39FeCQIhigGLkqu3Fj6uiXpxIf6Ij274ENdYx64y6Au+ZKlb1IA==", "dev": true, "dependencies": { - "@typescript-eslint/experimental-utils": "^5.0.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "@babel/helper-define-polyfill-provider": "^0.4.2" }, "peerDependencies": { - "@typescript-eslint/eslint-plugin": "^4.0.0 || ^5.0.0", - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" - }, - "peerDependenciesMeta": { - "@typescript-eslint/eslint-plugin": { - "optional": true - }, - "jest": { - "optional": true - } + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" } }, - "node_modules/eslint-plugin-prettier": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-4.0.0.tgz", - "integrity": "sha512-98MqmCJ7vJodoQK359bqQWaxOE0CS8paAz/GgjaZLyex4TTk3g9HugoO89EqWCrFiOqn9EVvcoo7gZzONCWVwQ==", + "node_modules/babel-preset-current-node-syntax": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz", + "integrity": "sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==", "dev": true, "dependencies": { - "prettier-linter-helpers": "^1.0.0" - }, - "engines": { - "node": ">=6.0.0" + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-bigint": "^7.8.3", + "@babel/plugin-syntax-class-properties": "^7.8.3", + "@babel/plugin-syntax-import-meta": "^7.8.3", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.8.3", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.8.3", + "@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-top-level-await": "^7.8.3" }, "peerDependencies": { - "eslint": ">=7.28.0", - "prettier": ">=2.0.0" - }, - "peerDependenciesMeta": { - "eslint-config-prettier": { - "optional": true - } + "@babel/core": "^7.0.0" } }, - "node_modules/eslint-plugin-react": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.27.1.tgz", - "integrity": "sha512-meyunDjMMYeWr/4EBLTV1op3iSG3mjT/pz5gti38UzfM4OPpNc2m0t2xvKCOMU5D6FSdd34BIMFOvQbW+i8GAA==", + "node_modules/babel-preset-jest": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-29.5.0.tgz", + "integrity": "sha512-JOMloxOqdiBSxMAzjRaH023/vvcaSaec49zvg+2LmNsktC7ei39LTJGw02J+9uUtTZUq6xbLyJ4dxe9sSmIuAg==", "dev": true, "dependencies": { - "array-includes": "^3.1.4", - "array.prototype.flatmap": "^1.2.5", - "doctrine": "^2.1.0", - "estraverse": "^5.3.0", - "jsx-ast-utils": "^2.4.1 || ^3.0.0", - "minimatch": "^3.0.4", - "object.entries": "^1.1.5", - "object.fromentries": "^2.0.5", - "object.hasown": "^1.1.0", - "object.values": "^1.1.5", - "prop-types": "^15.7.2", - "resolve": "^2.0.0-next.3", - "semver": "^6.3.0", - "string.prototype.matchall": "^4.0.6" + "babel-plugin-jest-hoist": "^29.5.0", + "babel-preset-current-node-syntax": "^1.0.0" }, "engines": { - "node": ">=4" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" }, "peerDependencies": { - "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8" + "@babel/core": "^7.0.0" } }, - "node_modules/eslint-plugin-react/node_modules/doctrine": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", - "dev": true, - "dependencies": { - "esutils": "^2.0.2" - }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true + }, + "node_modules/base64-arraybuffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-1.0.2.tgz", + "integrity": "sha512-I3yl4r9QB5ZRY3XuJVEPfc2XhZO6YweFPI+UovAzn+8/hb3oJ6lnysaFcjVpkCPfVWFUDvoZ8kmVDP7WyRtYtQ==", + "optional": true, "engines": { - "node": ">=0.10.0" + "node": ">= 0.6.0" } }, - "node_modules/eslint-plugin-react/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", "dev": true, - "bin": { - "semver": "bin/semver.js" - } + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] }, - "node_modules/eslint-plugin-unicorn": { - "version": "39.0.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-unicorn/-/eslint-plugin-unicorn-39.0.0.tgz", - "integrity": "sha512-fd5RK2FtYjGcIx3wra7csIE/wkkmBo22T1gZtRTsLr1Mb+KsFKJ+JOdSqhHXQUrI/JTs/Mon64cEYzTgSCbltw==", + "node_modules/basic-ftp": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/basic-ftp/-/basic-ftp-5.0.3.tgz", + "integrity": "sha512-QHX8HLlncOLpy54mh+k/sWIFd0ThmRqwe9ZjELybGZK+tZ8rUb9VO0saKJUROTbE+KhzDUT7xziGpGrW8Kmd+g==", "dev": true, - "dependencies": { - "@babel/helper-validator-identifier": "^7.14.9", - "ci-info": "^3.2.0", - "clean-regexp": "^1.0.0", - "eslint-template-visitor": "^2.3.2", - "eslint-utils": "^3.0.0", - "esquery": "^1.4.0", - "indent-string": "4", - "is-builtin-module": "^3.1.0", - "lodash": "^4.17.21", - "pluralize": "^8.0.0", - "read-pkg-up": "^7.0.1", - "regexp-tree": "^0.1.23", - "safe-regex": "^2.1.1", - "semver": "^7.3.5", - "strip-indent": "^3.0.0" - }, "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sindresorhus/eslint-plugin-unicorn?sponsor=1" - }, - "peerDependencies": { - "eslint": ">=7.32.0" + "node": ">=10.0.0" } }, - "node_modules/eslint-scope": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", - "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", - "dev": true, - "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" - }, - "engines": { - "node": ">=8.0.0" - } + "node_modules/before-after-hook": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/before-after-hook/-/before-after-hook-2.2.3.tgz", + "integrity": "sha512-NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ==", + "dev": true }, - "node_modules/eslint-scope/node_modules/estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "node_modules/binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", "dev": true, "engines": { - "node": ">=4.0" + "node": ">=8" } }, - "node_modules/eslint-template-visitor": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/eslint-template-visitor/-/eslint-template-visitor-2.3.2.tgz", - "integrity": "sha512-3ydhqFpuV7x1M9EK52BPNj6V0Kwu0KKkcIAfpUhwHbR8ocRln/oUHgfxQupY8O1h4Qv/POHDumb/BwwNfxbtnA==", + "node_modules/bl": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", "dev": true, "dependencies": { - "@babel/core": "^7.12.16", - "@babel/eslint-parser": "^7.12.16", - "eslint-visitor-keys": "^2.0.0", - "esquery": "^1.3.1", - "multimap": "^1.1.0" - }, - "peerDependencies": { - "eslint": ">=7.0.0" + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" } }, - "node_modules/eslint-template-visitor/node_modules/eslint-visitor-keys": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", - "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "node_modules/bl/node_modules/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, + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, "engines": { - "node": ">=10" + "node": ">= 6" } }, - "node_modules/eslint-utils": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", - "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", + "node_modules/boxen": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/boxen/-/boxen-5.1.2.tgz", + "integrity": "sha512-9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ==", "dev": true, "dependencies": { - "eslint-visitor-keys": "^2.0.0" + "ansi-align": "^3.0.0", + "camelcase": "^6.2.0", + "chalk": "^4.1.0", + "cli-boxes": "^2.2.1", + "string-width": "^4.2.2", + "type-fest": "^0.20.2", + "widest-line": "^3.1.0", + "wrap-ansi": "^7.0.0" }, "engines": { - "node": "^10.0.0 || ^12.0.0 || >= 14.0.0" + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/mysticatea" - }, - "peerDependencies": { - "eslint": ">=5" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/eslint-utils/node_modules/eslint-visitor-keys": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", - "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "node_modules/boxen/node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", "dev": true, "engines": { "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/eslint-visitor-keys": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", - "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==", + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", "dev": true, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" } }, - "node_modules/eslint/node_modules/eslint-scope": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz", - "integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==", + "node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", "dev": true, "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^5.2.0" + "fill-range": "^7.0.1" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": ">=8" } }, - "node_modules/esm": { - "version": "3.2.25", - "resolved": "https://registry.npmjs.org/esm/-/esm-3.2.25.tgz", - "integrity": "sha512-U1suiZ2oDVWv4zPO56S0NcR5QriEahGtdN2OR6FiOG4WJvcjBVFB0qI4+eKoWFH483PKGuLuu6V8Z4T5g63UVA==", - "engines": { - "node": ">=6" - } + "node_modules/browser-process-hrtime": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz", + "integrity": "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==", + "dev": true }, - "node_modules/espree": { - "version": "9.4.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.4.1.tgz", - "integrity": "sha512-XwctdmTO6SIvCzd9810yyNzIrOrqNYV9Koizx4C/mRhf9uq0o4yHoCEU/670pOxOL/MSraektvSAji79kX90Vg==", + "node_modules/browserslist": { + "version": "4.21.10", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.10.tgz", + "integrity": "sha512-bipEBdZfVH5/pwrvqc+Ub0kUPVfGUhlKxbvfD+z1BDnPEO/X98ruXGA1WP5ASpAFKan7Qr6j736IacbZQuAlKQ==", "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], "dependencies": { - "acorn": "^8.8.0", - "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^3.3.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "caniuse-lite": "^1.0.30001517", + "electron-to-chromium": "^1.4.477", + "node-releases": "^2.0.13", + "update-browserslist-db": "^1.0.11" }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true, "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" + "browserslist": "cli.js" }, "engines": { - "node": ">=4" + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" } }, - "node_modules/esquery": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", - "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", + "node_modules/bser": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz", + "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==", "dev": true, "dependencies": { - "estraverse": "^5.1.0" + "node-int64": "^0.4.0" + } + }, + "node_modules/btoa": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/btoa/-/btoa-1.2.1.tgz", + "integrity": "sha512-SB4/MIGlsiVkMcHmT+pSmIPoNDoHg+7cMzmt3Uxt628MTz2487DKSqK/fuhFBrkuqrYv5UCEnACpF4dTFNKc/g==", + "bin": { + "btoa": "bin/btoa.js" }, "engines": { - "node": ">=0.10" + "node": ">= 0.4.0" } }, - "node_modules/esrecurse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "node_modules/buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], "dependencies": { - "estraverse": "^5.2.0" - }, - "engines": { - "node": ">=4.0" + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" } }, - "node_modules/esri-loader": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/esri-loader/-/esri-loader-3.4.0.tgz", - "integrity": "sha512-iS3SbBmrnr4TlUdAjyyVZD2yCud8AMZkyJcmYEVzTiE5wVUtdN8d9USp7XYtilgwkJe/eWR2f2G1+S58ESqLuQ==", - "dev": true - }, - "node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "node_modules/buffer-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==", "dev": true, "engines": { - "node": ">=4.0" + "node": "*" } }, - "node_modules/esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "dev": true + }, + "node_modules/builtin-modules": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.3.0.tgz", + "integrity": "sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==", "dev": true, "engines": { - "node": ">=0.10.0" + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/execa": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", - "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "node_modules/cacheable-request": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.1.0.tgz", + "integrity": "sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==", "dev": true, "dependencies": { - "cross-spawn": "^7.0.3", - "get-stream": "^6.0.0", - "human-signals": "^2.1.0", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.1", - "onetime": "^5.1.2", - "signal-exit": "^3.0.3", - "strip-final-newline": "^2.0.0" + "clone-response": "^1.0.2", + "get-stream": "^5.1.0", + "http-cache-semantics": "^4.0.0", + "keyv": "^3.0.0", + "lowercase-keys": "^2.0.0", + "normalize-url": "^4.1.0", + "responselike": "^1.0.2" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" + "node": ">=8" } }, - "node_modules/execa/node_modules/get-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", - "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "node_modules/cacheable-request/node_modules/lowercase-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", + "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==", "dev": true, "engines": { - "node": ">=10" + "node": ">=8" + } + }, + "node_modules/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, + "dependencies": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/exit": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", - "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", "dev": true, "engines": { - "node": ">= 0.8.0" + "node": ">=6" } }, - "node_modules/expect": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/expect/-/expect-27.5.1.tgz", - "integrity": "sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw==", + "node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "jest-get-type": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1" - }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=6" } }, - "node_modules/expect/node_modules/@jest/types": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", - "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "node_modules/camelcase-css": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz", + "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==", "dev": true, - "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^16.0.0", - "chalk": "^4.0.0" - }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">= 6" } }, - "node_modules/expect/node_modules/@types/yargs": { - "version": "16.0.5", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", - "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "node_modules/caniuse-lite": { + "version": "1.0.30001521", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001521.tgz", + "integrity": "sha512-fnx1grfpEOvDGH+V17eccmNjucGUnCbP6KL+l5KqBIerp26WK/+RQ7CIDE37KGJjaPyqWXXlFUyKiWmvdNNKmQ==", "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ] + }, + "node_modules/canvg": { + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/canvg/-/canvg-3.0.10.tgz", + "integrity": "sha512-qwR2FRNO9NlzTeKIPIKpnTY6fqwuYSequ8Ru8c0YkYU7U0oW+hLUvWadLvAu1Rl72OMNiFhoLu4f8eUjQ7l/+Q==", + "optional": true, "dependencies": { - "@types/yargs-parser": "*" + "@babel/runtime": "^7.12.5", + "@types/raf": "^3.4.0", + "core-js": "^3.8.3", + "raf": "^3.4.1", + "regenerator-runtime": "^0.13.7", + "rgbcolor": "^1.0.1", + "stackblur-canvas": "^2.0.0", + "svg-pathdata": "^6.0.3" + }, + "engines": { + "node": ">=10.0.0" } }, - "node_modules/external-editor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", - "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", + "node_modules/canvg/node_modules/core-js": { + "version": "3.27.2", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.27.2.tgz", + "integrity": "sha512-9ashVQskuh5AZEZ1JdQWp1GqSoC1e1G87MzRqg2gIfVAQ7Qn9K+uFj8EcniUFA4P2NLZfV+TOlX1SzoKfo+s7w==", + "hasInstallScript": true, + "optional": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/canvg/node_modules/regenerator-runtime": { + "version": "0.13.11", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", + "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==", + "optional": true + }, + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, "dependencies": { - "chardet": "^0.7.0", - "iconv-lite": "^0.4.24", - "tmp": "^0.0.33" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, "engines": { - "node": ">=4" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/extract-zip": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-2.0.1.tgz", - "integrity": "sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg==", + "node_modules/changelog-parser": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/changelog-parser/-/changelog-parser-2.8.1.tgz", + "integrity": "sha512-tNUYFRCEeWTXmwLqoNtOEzx9wcytg72MmGQqsEs14ClYwIDln7sbQw7FJj/dulXgSlsxkemc9gpPQhZYZx1TPw==", "dev": true, "dependencies": { - "debug": "^4.1.1", - "get-stream": "^5.1.0", - "yauzl": "^2.10.0" + "line-reader": "^0.2.4", + "remove-markdown": "^0.2.2" }, "bin": { - "extract-zip": "cli.js" - }, - "engines": { - "node": ">= 10.17.0" - }, - "optionalDependencies": { - "@types/yauzl": "^2.9.1" + "changelog-parser": "bin/cli.js" } }, - "node_modules/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==" + "node_modules/char-regex": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz", + "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==", + "dev": true, + "engines": { + "node": ">=10" + } }, - "node_modules/fast-diff": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.2.0.tgz", - "integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==", + "node_modules/chardet": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", + "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", "dev": true }, - "node_modules/fast-glob": { - "version": "3.2.12", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz", - "integrity": "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==", + "node_modules/chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ], "dependencies": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.4" + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" }, "engines": { - "node": ">=8.6.0" + "node": ">= 8.10.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" } }, - "node_modules/fast-glob/node_modules/glob-parent": { + "node_modules/chokidar/node_modules/glob-parent": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", @@ -5099,80 +5196,52 @@ "node": ">= 6" } }, - "node_modules/fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" - }, - "node_modules/fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", - "dev": true - }, - "node_modules/fast-xml-parser": { - "version": "3.21.1", - "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-3.21.1.tgz", - "integrity": "sha512-FTFVjYoBOZTJekiUsawGsSYV9QL0A+zDYCRj7y34IO6Jg+2IMYEtQa+bbictpdpV8dHxXywqU7C0gRDEOFtBFg==", + "node_modules/chromium-bidi": { + "version": "0.4.20", + "resolved": "https://registry.npmjs.org/chromium-bidi/-/chromium-bidi-0.4.20.tgz", + "integrity": "sha512-ruHgVZFEv00mAQMz1tQjfjdG63jiPWrQPF6HLlX2ucqLqVTJoWngeBEKHaJ6n1swV/HSvgnBNbtTRIlcVyW3Fw==", + "dev": true, "dependencies": { - "strnum": "^1.0.4" - }, - "bin": { - "xml2js": "cli.js" + "mitt": "3.0.1" }, - "funding": { - "type": "paypal", - "url": "https://paypal.me/naturalintelligence" + "peerDependencies": { + "devtools-protocol": "*" } }, - "node_modules/fastq": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", - "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", + "node_modules/ci-info": { + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.7.1.tgz", + "integrity": "sha512-4jYS4MOAaCIStSRwiuxc4B8MYhIe676yO1sYGzARnjXkWpmzZMMYxY6zu8WYWDhSuth5zhrQ1rhNSibyyvv4/w==", "dev": true, - "dependencies": { - "reusify": "^1.0.4" + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" + } + ], + "engines": { + "node": ">=8" } }, - "node_modules/fb-watchman": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz", - "integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==", - "dev": true, - "dependencies": { - "bser": "2.1.1" - } - }, - "node_modules/fd-slicer": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", - "integrity": "sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==", - "dev": true, - "dependencies": { - "pend": "~1.2.0" - } - }, - "node_modules/fflate": { - "version": "0.4.8", - "resolved": "https://registry.npmjs.org/fflate/-/fflate-0.4.8.tgz", - "integrity": "sha512-FJqqoDBR00Mdj9ppamLa/Y7vxm+PRmNWA67N846RvsoYVMKB4q3y/de5PA7gUmRMYK/8CMz2GDZQmCRN1wBcWA==" + "node_modules/cjs-module-lexer": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.2.3.tgz", + "integrity": "sha512-0TNiGstbQmCFwt4akjjBg5pLRTSyj/PkWQ1ZoO2zntmg9yLqSRxwEa4iCfQLGjqhiqBfOJa7W/E8wfGrTDmlZQ==", + "dev": true }, - "node_modules/figures": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", - "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", + "node_modules/clean-regexp": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/clean-regexp/-/clean-regexp-1.0.0.tgz", + "integrity": "sha512-GfisEZEJvzKrmGWkvfhgzcz/BllN1USeqD2V6tg14OAOgaCD2Z/PUEuxnAZ/nPvmaHRG7a8y77p1T/IRQ4D1Hw==", "dev": true, "dependencies": { "escape-string-regexp": "^1.0.5" }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=4" } }, - "node_modules/figures/node_modules/escape-string-regexp": { + "node_modules/clean-regexp/node_modules/escape-string-regexp": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", @@ -5181,550 +5250,466 @@ "node": ">=0.8.0" } }, - "node_modules/file-entry-cache": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", - "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", + "node_modules/cli-boxes": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-2.2.1.tgz", + "integrity": "sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==", "dev": true, - "dependencies": { - "flat-cache": "^3.0.4" - }, "engines": { - "node": "^10.12.0 || >=12.0.0" + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "node_modules/cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", "dev": true, "dependencies": { - "to-regex-range": "^5.0.1" + "restore-cursor": "^3.1.0" }, "engines": { "node": ">=8" } }, - "node_modules/find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "node_modules/cli-spinners": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.7.0.tgz", + "integrity": "sha512-qu3pN8Y3qHNgE2AFweciB1IfMnmZ/fsNTEE+NOFjmGB2F/7rLhnhzppvpCnN4FovtP26k8lHyy9ptEbNwWFLzw==", "dev": true, - "dependencies": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - }, "engines": { - "node": ">=10" + "node": ">=6" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/flat-cache": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", - "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", + "node_modules/cli-width": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", + "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", "dev": true, - "dependencies": { - "flatted": "^3.1.0", - "rimraf": "^3.0.2" - }, "engines": { - "node": "^10.12.0 || >=12.0.0" + "node": ">= 10" } }, - "node_modules/flatted": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", - "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==", - "dev": true - }, - "node_modules/focus-trap": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/focus-trap/-/focus-trap-7.2.0.tgz", - "integrity": "sha512-v4wY6HDDYvzkBy4735kW5BUEuw6Yz9ABqMYLuTNbzAFPcBOGiGHwwcNVMvUz4G0kgSYh13wa/7TG3XwTeT4O/A==", + "node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "dev": true, "dependencies": { - "tabbable": "^6.0.1" + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" } }, - "node_modules/for-each": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", - "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", + "node_modules/clone": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", + "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", "dev": true, - "dependencies": { - "is-callable": "^1.1.3" + "engines": { + "node": ">=0.8" } }, - "node_modules/form-data": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz", - "integrity": "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==", + "node_modules/clone-response": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.3.tgz", + "integrity": "sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==", "dev": true, "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" + "mimic-response": "^1.0.0" }, - "engines": { - "node": ">= 6" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/form-request-submit-polyfill": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/form-request-submit-polyfill/-/form-request-submit-polyfill-2.0.0.tgz", - "integrity": "sha512-p0+M92y2gFnP0AuuL8VJ0GYVzAT0bYp3GsSkmPFhvUopdnfDLP/9xplQTBBc4w8qOjKRzdK7GaFcdL9IhlXdTQ==" - }, - "node_modules/fraction.js": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz", - "integrity": "sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==", + "node_modules/clone-response/node_modules/mimic-response": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", + "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", "dev": true, "engines": { - "node": "*" - }, - "funding": { - "type": "patreon", - "url": "https://www.patreon.com/infusion" + "node": ">=4" } }, - "node_modules/fs-constants": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", - "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==", - "dev": true - }, - "node_modules/fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", - "dev": true - }, - "node_modules/fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "node_modules/co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==", "dev": true, - "hasInstallScript": true, - "optional": true, - "os": [ - "darwin" - ], "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + "iojs": ">= 1.0.0", + "node": ">= 0.12.0" } }, - "node_modules/function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "node_modules/collect-v8-coverage": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.2.tgz", + "integrity": "sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q==", "dev": true }, - "node_modules/function.prototype.name": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.5.tgz", - "integrity": "sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==", - "dev": true, + "node_modules/color": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/color/-/color-4.2.3.tgz", + "integrity": "sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==", + "peer": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.19.0", - "functions-have-names": "^1.2.2" + "color-convert": "^2.0.1", + "color-string": "^1.9.0" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/functions-have-names": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", - "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=12.5.0" } }, - "node_modules/gauge": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz", - "integrity": "sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg==", - "dev": true, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dependencies": { - "aproba": "^1.0.3 || ^2.0.0", - "color-support": "^1.1.3", - "console-control-strings": "^1.1.0", - "has-unicode": "^2.0.1", - "signal-exit": "^3.0.7", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1", - "wide-align": "^1.1.5" + "color-name": "~1.1.4" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": ">=7.0.0" } }, - "node_modules/gensync": { - "version": "1.0.0-beta.2", - "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", - "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true, - "engines": { - "node": "6.* || 8.* || >= 10.*" - } + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, - "node_modules/get-intrinsic": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.0.tgz", - "integrity": "sha512-L049y6nFOuom5wGyRc3/gdTLO94dySVKRACj1RmJZBQXlbTMhtNIgkWkUHq+jYmZvKf14EW1EoJnnjbmoHij0Q==", - "dev": true, + "node_modules/color-string": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz", + "integrity": "sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==", + "peer": true, "dependencies": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "color-name": "^1.0.0", + "simple-swizzle": "^0.2.2" } }, - "node_modules/get-package-type": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", - "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", + "node_modules/color-support": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", + "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", "dev": true, - "engines": { - "node": ">=8.0.0" + "bin": { + "color-support": "bin.js" } }, - "node_modules/get-stream": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", - "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", "dev": true, "dependencies": { - "pump": "^3.0.0" + "delayed-stream": "~1.0.0" }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">= 0.8" } }, - "node_modules/get-symbol-description": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", - "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", + "node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "dev": true + }, + "node_modules/composed-offset-position": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/composed-offset-position/-/composed-offset-position-0.0.4.tgz", + "integrity": "sha512-vMlvu1RuNegVE0YsCDSV/X4X10j56mq7PCIyOKK74FxkXzGLwhOUmdkJLSdOBOMwWycobGUMgft2lp+YgTe8hw==", + "peer": true + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true + }, + "node_modules/configstore": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/configstore/-/configstore-5.0.1.tgz", + "integrity": "sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.1" + "dot-prop": "^5.2.0", + "graceful-fs": "^4.1.2", + "make-dir": "^3.0.0", + "unique-string": "^2.0.0", + "write-file-atomic": "^3.0.0", + "xdg-basedir": "^4.0.0" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=8" } }, - "node_modules/gh-release": { - "version": "6.0.4", - "resolved": "https://registry.npmjs.org/gh-release/-/gh-release-6.0.4.tgz", - "integrity": "sha512-6djoVxTUpbw9GZ/mveNjp5j/IDPY3KACscSlmNwwfkR+EQCNTSgGRywb0TRaQdA36RnwtcNOWEaLwB5ez7jSRg==", + "node_modules/console-control-strings": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==", + "dev": true + }, + "node_modules/convert-source-map": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", + "dev": true + }, + "node_modules/core-js-compat": { + "version": "3.32.0", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.32.0.tgz", + "integrity": "sha512-7a9a3D1k4UCVKnLhrgALyFcP7YCsLOQIxPd0dKjf/6GuPcgyiGP70ewWdCGrSK7evyhymi0qO4EqCmSJofDeYw==", "dev": true, "dependencies": { - "@octokit/rest": "^18.0.9", - "changelog-parser": "^2.0.0", - "deep-extend": "^0.6.0", - "gauge": "^v4.0.4", - "gh-release-assets": "^2.0.0", - "ghauth": "^5.0.0", - "github-url-to-object": "^4.0.4", - "inquirer": "^8.0.0", - "shelljs": "^0.8.4", - "update-notifier": "^5.0.0", - "yargs": "^17.0.0" + "browserslist": "^4.21.9" }, - "bin": { - "gh-release": "bin/cli.js" - }, - "engines": { - "node": ">=12" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" } }, - "node_modules/gh-release-assets": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/gh-release-assets/-/gh-release-assets-2.0.1.tgz", - "integrity": "sha512-KrhmYIA/5oQdfEl9vQ2yF6DOM2QOAjpCOsNKFkc7X3dOTefSixttW0ysot3noQ+3XL8NdkdC7z+mqfePzIwexg==", + "node_modules/core-util-is": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", + "dev": true + }, + "node_modules/cosmiconfig": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", + "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==", "dev": true, "dependencies": { - "async": "^3.2.0", - "mime": "^3.0.0", - "progress-stream": "^2.0.0", - "pumpify": "^2.0.1", - "simple-get": "^4.0.0", - "util-extend": "^1.0.1" + "@types/parse-json": "^4.0.0", + "import-fresh": "^3.2.1", + "parse-json": "^5.0.0", + "path-type": "^4.0.0", + "yaml": "^1.10.0" }, "engines": { - "node": ">=12" + "node": ">=10" } }, - "node_modules/ghauth": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ghauth/-/ghauth-5.0.1.tgz", - "integrity": "sha512-WzgL12dczZX/VrvVTkoFAJLU3pb6PDT+TS60kLlaU51fuNEv6VoYpRXlnwIjkMIhqWead9+dLBEzj0E1ghYMkg==", - "dev": true, - "dependencies": { - "application-config": "^2.0.0", - "node-fetch": "^2.6.0", - "ora": "^4.0.5", - "read": "^1.0.7" - } + "node_modules/create-require": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", + "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", + "dev": true }, - "node_modules/github-url-to-object": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/github-url-to-object/-/github-url-to-object-4.0.6.tgz", - "integrity": "sha512-NaqbYHMUAlPcmWFdrAB7bcxrNIiiJWJe8s/2+iOc9vlcHlwHqSGrPk+Yi3nu6ebTwgsZEa7igz+NH2vEq3gYwQ==", + "node_modules/cross-fetch": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-4.0.0.tgz", + "integrity": "sha512-e4a5N8lVvuLgAWgnCrLr2PP0YyDOTHa9H/Rj54dirp61qXnNq46m82bRhNqIA5VccJtWBvPTFRV3TtvHUKPB1g==", "dev": true, "dependencies": { - "is-url": "^1.1.0" + "node-fetch": "^2.6.12" } }, - "node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", "dev": true, "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" }, "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "node": ">= 8" } }, - "node_modules/glob-parent": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", - "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "node_modules/crypto-random-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz", + "integrity": "sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==", "dev": true, - "dependencies": { - "is-glob": "^4.0.3" - }, "engines": { - "node": ">=10.13.0" + "node": ">=8" } }, - "node_modules/global-dirs": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-3.0.1.tgz", - "integrity": "sha512-NBcGGFbBA9s1VzD41QXDG+3++t9Mn5t1FpLdhESY6oKY4gYTFpX4wO3sqGUa0Srjtbfj3szX0RnemmrVRUdULA==", - "dev": true, + "node_modules/css-line-break": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/css-line-break/-/css-line-break-2.1.0.tgz", + "integrity": "sha512-FHcKFCZcAha3LwfVBhCQbW2nCNbkZXn7KVUJcsT5/P8YmfsVja0FMPJr0B903j/E69HUphKiV9iQArX8SDYA4w==", + "optional": true, "dependencies": { - "ini": "2.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "utrie": "^1.0.2" } }, - "node_modules/globals": { - "version": "13.20.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", - "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", + "node_modules/cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", "dev": true, - "dependencies": { - "type-fest": "^0.20.2" + "bin": { + "cssesc": "bin/cssesc" }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=4" } }, - "node_modules/globalthis": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz", - "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==", - "dev": true, - "dependencies": { - "define-properties": "^1.1.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } + "node_modules/cssfilter": { + "version": "0.0.10", + "resolved": "https://registry.npmjs.org/cssfilter/-/cssfilter-0.0.10.tgz", + "integrity": "sha512-FAaLDaplstoRsDR8XGYH51znUN0UY7nMc6Z9/fvE8EXGwvJE9hu7W2vHwx1+bd6gCYnln9nLbzxFTrcO9YQDZw==", + "dev": true }, - "node_modules/globby": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", - "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "node_modules/cssom": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.4.4.tgz", + "integrity": "sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==", + "dev": true + }, + "node_modules/cssstyle": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-2.3.0.tgz", + "integrity": "sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==", "dev": true, "dependencies": { - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.9", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^3.0.0" + "cssom": "~0.3.6" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=8" } }, - "node_modules/gopd": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", - "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", - "dev": true, - "dependencies": { - "get-intrinsic": "^1.1.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } + "node_modules/cssstyle/node_modules/cssom": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz", + "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==", + "dev": true }, - "node_modules/got": { - "version": "9.6.0", - "resolved": "https://registry.npmjs.org/got/-/got-9.6.0.tgz", - "integrity": "sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==", + "node_modules/data-uri-to-buffer": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-5.0.1.tgz", + "integrity": "sha512-a9l6T1qqDogvvnw0nKlfZzqsyikEBZBClF39V3TFoKhDtGBqHu2HkuomJc02j5zft8zrUaXEuoicLeW54RkzPg==", "dev": true, - "dependencies": { - "@sindresorhus/is": "^0.14.0", - "@szmarczak/http-timer": "^1.1.2", - "cacheable-request": "^6.0.0", - "decompress-response": "^3.3.0", - "duplexer3": "^0.1.4", - "get-stream": "^4.1.0", - "lowercase-keys": "^1.0.1", - "mimic-response": "^1.0.1", - "p-cancelable": "^1.0.0", - "to-readable-stream": "^1.0.0", - "url-parse-lax": "^3.0.0" - }, "engines": { - "node": ">=8.6" + "node": ">= 14" } }, - "node_modules/got/node_modules/decompress-response": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", - "integrity": "sha512-BzRPQuY1ip+qDonAOz42gRm/pg9F768C+npV/4JOsxRC2sq+Rlk+Q4ZCAsOhnIaMrgarILY+RMUIvMmmX1qAEA==", + "node_modules/data-urls": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-2.0.0.tgz", + "integrity": "sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ==", "dev": true, "dependencies": { - "mimic-response": "^1.0.0" + "abab": "^2.0.3", + "whatwg-mimetype": "^2.3.0", + "whatwg-url": "^8.0.0" }, "engines": { - "node": ">=4" + "node": ">=10" } }, - "node_modules/got/node_modules/get-stream": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", - "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "node_modules/dayjs": { + "version": "1.11.8", + "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.8.tgz", + "integrity": "sha512-LcgxzFoWMEPO7ggRv1Y2N31hUf2R0Vj7fuy/m+Bg1K8rr+KAs1AEy4y9jd5DXe8pbHgX+srkHNS7TH6Q6ZhYeQ==", + "peer": true + }, + "node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", "dev": true, "dependencies": { - "pump": "^3.0.0" + "ms": "2.1.2" }, "engines": { - "node": ">=6" - } - }, - "node_modules/got/node_modules/mimic-response": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", - "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", - "dev": true, - "engines": { - "node": ">=4" + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } } }, - "node_modules/graceful-fs": { - "version": "4.2.10", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", - "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", - "dev": true - }, - "node_modules/grapheme-splitter": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz", - "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==", + "node_modules/decimal.js": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz", + "integrity": "sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==", "dev": true }, - "node_modules/has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "node_modules/decompress-response": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz", + "integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==", "dev": true, "dependencies": { - "function-bind": "^1.1.1" + "mimic-response": "^3.1.0" }, "engines": { - "node": ">= 0.4.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/has-bigints": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", - "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", + "node_modules/dedent": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz", + "integrity": "sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==", + "dev": true + }, + "node_modules/deep-extend": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">=4.0.0" } }, - "node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "node_modules/deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "dev": true + }, + "node_modules/deepmerge": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", + "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", "dev": true, "engines": { - "node": ">=8" + "node": ">=0.10.0" } }, - "node_modules/has-property-descriptors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", - "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", + "node_modules/defaults": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.4.tgz", + "integrity": "sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==", "dev": true, "dependencies": { - "get-intrinsic": "^1.1.1" + "clone": "^1.0.2" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/has-proto": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz", - "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==", + "node_modules/defer-to-connect": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.1.3.tgz", + "integrity": "sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==", + "dev": true + }, + "node_modules/define-properties": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz", + "integrity": "sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==", "dev": true, + "dependencies": { + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + }, "engines": { "node": ">= 0.4" }, @@ -5732,401 +5717,365 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/has-symbols": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", - "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "node_modules/defined": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.1.tgz", + "integrity": "sha512-hsBd2qSVCRE+5PmNdHt1uzyrFu5d3RwmFDKzyNZMFq/EwDNJF7Ee5+D5oEKF0hU6LhtoUF1macFvOe4AskQC1Q==", "dev": true, - "engines": { - "node": ">= 0.4" - }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/has-tostringtag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", - "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "node_modules/degenerator": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/degenerator/-/degenerator-5.0.1.tgz", + "integrity": "sha512-TllpMR/t0M5sqCXfj85i4XaAzxmS5tVA16dqvdkMwGmzI+dXLXnw3J+3Vdv7VKw+ThlTMboK6i9rnZ6Nntj5CQ==", "dev": true, "dependencies": { - "has-symbols": "^1.0.2" + "ast-types": "^0.13.4", + "escodegen": "^2.1.0", + "esprima": "^4.0.1" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">= 14" } }, - "node_modules/has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==", - "dev": true - }, - "node_modules/has-yarn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/has-yarn/-/has-yarn-2.1.0.tgz", - "integrity": "sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw==", + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", "dev": true, "engines": { - "node": ">=8" + "node": ">=0.4.0" } }, - "node_modules/hosted-git-info": { - "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==", + "node_modules/deprecation": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/deprecation/-/deprecation-2.3.1.tgz", + "integrity": "sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ==", "dev": true }, - "node_modules/html-encoding-sniffer": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz", - "integrity": "sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ==", + "node_modules/detect-indent": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-6.1.0.tgz", + "integrity": "sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA==", "dev": true, - "dependencies": { - "whatwg-encoding": "^1.0.5" - }, "engines": { - "node": ">=10" + "node": ">=8" } }, - "node_modules/html-escaper": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", - "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", - "dev": true - }, - "node_modules/html2canvas": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/html2canvas/-/html2canvas-1.4.1.tgz", - "integrity": "sha512-fPU6BHNpsyIhr8yyMpTLLxAbkaK8ArIBcmZIRiBLiDhjeqvXolaEmDGmELFuX9I4xDcaKKcJl+TKZLqruBbmWA==", - "optional": true, - "dependencies": { - "css-line-break": "^2.1.0", - "text-segmentation": "^1.0.3" - }, + "node_modules/detect-newline": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz", + "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==", + "dev": true, "engines": { - "node": ">=8.0.0" + "node": ">=8" } }, - "node_modules/http-cache-semantics": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", - "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==", - "dev": true - }, - "node_modules/http-proxy-agent": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", - "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", + "node_modules/detective": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/detective/-/detective-5.2.1.tgz", + "integrity": "sha512-v9XE1zRnz1wRtgurGu0Bs8uHKFSTdteYZNbIPFVhUZ39L/S79ppMpdmVOZAnoz1jfEFodc48n6MX483Xo3t1yw==", "dev": true, "dependencies": { - "@tootallnate/once": "1", - "agent-base": "6", - "debug": "4" + "acorn-node": "^1.8.2", + "defined": "^1.0.0", + "minimist": "^1.2.6" + }, + "bin": { + "detective": "bin/detective.js" }, "engines": { - "node": ">= 6" + "node": ">=0.8.0" } }, - "node_modules/https-proxy-agent": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", - "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", + "node_modules/devtools-protocol": { + "version": "0.0.1147663", + "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.1147663.tgz", + "integrity": "sha512-hyWmRrexdhbZ1tcJUGpO95ivbRhWXz++F4Ko+n21AY5PNln2ovoJw+8ZMNDTtip+CNFQfrtLVh/w4009dXO/eQ==", + "dev": true + }, + "node_modules/didyoumean": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz", + "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==", + "dev": true + }, + "node_modules/diff": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", + "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", "dev": true, - "dependencies": { - "agent-base": "6", - "debug": "4" - }, "engines": { - "node": ">= 6" + "node": ">=0.3.1" } }, - "node_modules/human-signals": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", - "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", + "node_modules/diff-sequences": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.5.1.tgz", + "integrity": "sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==", "dev": true, "engines": { - "node": ">=10.17.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "node_modules/dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", "dev": true, "dependencies": { - "safer-buffer": ">= 2.1.2 < 3" + "path-type": "^4.0.0" }, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, - "node_modules/ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] + "node_modules/dlv": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz", + "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==", + "dev": true }, - "node_modules/ignore": { - "version": "5.2.4", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", - "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==", + "node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", "dev": true, + "dependencies": { + "esutils": "^2.0.2" + }, "engines": { - "node": ">= 4" + "node": ">=6.0.0" } }, - "node_modules/immediate": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz", - "integrity": "sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ==", - "dev": true - }, - "node_modules/import-fresh": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "node_modules/domexception": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/domexception/-/domexception-2.0.1.tgz", + "integrity": "sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg==", "dev": true, "dependencies": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" + "webidl-conversions": "^5.0.0" }, "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=8" } }, - "node_modules/import-lazy": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", - "integrity": "sha512-m7ZEHgtw69qOGw+jwxXkHlrlIPdTGkyh66zXZ1ajZbxkDBNjSY/LGbmjc7h0s2ELsUDTAhFr55TrPSSqJGPG0A==", + "node_modules/domexception/node_modules/webidl-conversions": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-5.0.0.tgz", + "integrity": "sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==", "dev": true, "engines": { - "node": ">=4" + "node": ">=8" } }, - "node_modules/import-local": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", - "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==", + "node_modules/dompurify": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-2.4.3.tgz", + "integrity": "sha512-q6QaLcakcRjebxjg8/+NP+h0rPfatOgOzc46Fst9VAA3jF2ApfKBNKMzdP4DYTqtUMXSCd5pRS/8Po/OmoCHZQ==", + "optional": true + }, + "node_modules/dot-prop": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", + "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==", "dev": true, "dependencies": { - "pkg-dir": "^4.2.0", - "resolve-cwd": "^3.0.0" - }, - "bin": { - "import-local-fixture": "fixtures/cli.js" + "is-obj": "^2.0.0" }, "engines": { "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "node_modules/dotenv": { + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-10.0.0.tgz", + "integrity": "sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q==", "dev": true, "engines": { - "node": ">=0.8.19" + "node": ">=10" } }, - "node_modules/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==", + "node_modules/duplexer3": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.5.tgz", + "integrity": "sha512-1A8za6ws41LQgv9HrE/66jyC5yuSjQ3L/KOpFtoBilsAK2iA2wuS5rTt1OCzIvtS2V7nVmedsUU+DGRcjBmOYA==", + "dev": true + }, + "node_modules/duplexify": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-4.1.2.tgz", + "integrity": "sha512-fz3OjcNCHmRP12MJoZMPglx8m4rrFP8rovnk4vT8Fs+aonZoCwGg10dSsQsfP/E62eZcPTMSMP6686fu9Qlqtw==", "dev": true, - "engines": { - "node": ">=8" + "dependencies": { + "end-of-stream": "^1.4.1", + "inherits": "^2.0.3", + "readable-stream": "^3.1.1", + "stream-shift": "^1.0.0" } }, - "node_modules/inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "node_modules/duplexify/node_modules/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, "dependencies": { - "once": "^1.3.0", - "wrappy": "1" + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" } }, - "node_modules/inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "node_modules/electron-to-chromium": { + "version": "1.4.491", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.491.tgz", + "integrity": "sha512-ZzPqGKghdVzlQJ+qpfE+r6EB321zed7e5JsvHIlMM4zPFF8okXUkF5Of7h7F3l3cltPL0rG7YVmlp5Qro7RQLA==", "dev": true }, - "node_modules/ini": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ini/-/ini-2.0.0.tgz", - "integrity": "sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==", + "node_modules/emittery": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.8.1.tgz", + "integrity": "sha512-uDfvUjVrfGJJhymx/kz6prltenw1u7WrCg1oa94zYY8xxVpLLUu045LAT0dhDZdXG58/EpPL/5kA180fQ/qudg==", "dev": true, "engines": { "node": ">=10" - } - }, - "node_modules/inquirer": { - "version": "8.2.5", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.2.5.tgz", - "integrity": "sha512-QAgPDQMEgrDssk1XiwwHoOGYF9BAbUcc1+j+FhEvaOt8/cKRqyLn0U5qA6F74fGhTMGxf92pOvPBeh29jQJDTQ==", - "dev": true, - "dependencies": { - "ansi-escapes": "^4.2.1", - "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.4.1", - "run-async": "^2.4.0", - "rxjs": "^7.5.5", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0", - "through": "^2.3.6", - "wrap-ansi": "^7.0.0" }, - "engines": { - "node": ">=12.0.0" + "funding": { + "url": "https://github.com/sindresorhus/emittery?sponsor=1" } }, - "node_modules/inquirer/node_modules/log-symbols": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", - "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", + "node_modules/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 + }, + "node_modules/encoding": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", + "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", "dev": true, + "optional": true, + "peer": true, "dependencies": { - "chalk": "^4.1.0", - "is-unicode-supported": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "iconv-lite": "^0.6.2" } }, - "node_modules/inquirer/node_modules/ora": { - "version": "5.4.1", - "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz", - "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==", + "node_modules/encoding/node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", "dev": true, + "optional": true, + "peer": true, "dependencies": { - "bl": "^4.1.0", - "chalk": "^4.1.0", - "cli-cursor": "^3.1.0", - "cli-spinners": "^2.5.0", - "is-interactive": "^1.0.0", - "is-unicode-supported": "^0.1.0", - "log-symbols": "^4.1.0", - "strip-ansi": "^6.0.0", - "wcwidth": "^1.0.1" + "safer-buffer": ">= 2.1.2 < 3.0.0" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=0.10.0" } }, - "node_modules/internal-slot": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.4.tgz", - "integrity": "sha512-tA8URYccNzMo94s5MQZgH8NB/XTa6HsOo0MLfXTKKEnHVVdegzaQoFZ7Jp44bdvLvY2waT5dc+j5ICEswhi7UQ==", + "node_modules/end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", "dev": true, "dependencies": { - "get-intrinsic": "^1.1.3", - "has": "^1.0.3", - "side-channel": "^1.0.4" - }, - "engines": { - "node": ">= 0.4" + "once": "^1.4.0" } }, - "node_modules/interpret": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz", - "integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==", + "node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", "dev": true, - "engines": { - "node": ">= 0.10" + "dependencies": { + "is-arrayish": "^0.2.1" } }, - "node_modules/is-array-buffer": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.1.tgz", - "integrity": "sha512-ASfLknmY8Xa2XtB4wmbz13Wu202baeA18cJBCeCy0wXUHZF0IPyVEXqKEcd+t2fNSLLL1vC6k7lxZEojNbISXQ==", + "node_modules/es-abstract": { + "version": "1.21.1", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.21.1.tgz", + "integrity": "sha512-QudMsPOz86xYz/1dG1OuGBKOELjCh99IIWHLzy5znUB6j8xG2yMA7bfTV86VSqKF+Y/H08vQPR+9jyXpuC6hfg==", "dev": true, "dependencies": { + "available-typed-arrays": "^1.0.5", "call-bind": "^1.0.2", + "es-set-tostringtag": "^2.0.1", + "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", + "function.prototype.name": "^1.1.5", "get-intrinsic": "^1.1.3", - "is-typed-array": "^1.1.10" + "get-symbol-description": "^1.0.0", + "globalthis": "^1.0.3", + "gopd": "^1.0.1", + "has": "^1.0.3", + "has-property-descriptors": "^1.0.0", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3", + "internal-slot": "^1.0.4", + "is-array-buffer": "^3.0.1", + "is-callable": "^1.2.7", + "is-negative-zero": "^2.0.2", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.2", + "is-string": "^1.0.7", + "is-typed-array": "^1.1.10", + "is-weakref": "^1.0.2", + "object-inspect": "^1.12.2", + "object-keys": "^1.1.1", + "object.assign": "^4.1.4", + "regexp.prototype.flags": "^1.4.3", + "safe-regex-test": "^1.0.0", + "string.prototype.trimend": "^1.0.6", + "string.prototype.trimstart": "^1.0.6", + "typed-array-length": "^1.0.4", + "unbox-primitive": "^1.0.2", + "which-typed-array": "^1.1.9" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", - "dev": true - }, - "node_modules/is-bigint": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", - "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", + "node_modules/es-set-tostringtag": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.1.tgz", + "integrity": "sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==", "dev": true, "dependencies": { - "has-bigints": "^1.0.1" + "get-intrinsic": "^1.1.3", + "has": "^1.0.3", + "has-tostringtag": "^1.0.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">= 0.4" } }, - "node_modules/is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "node_modules/es-shim-unscopables": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.0.tgz", + "integrity": "sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==", "dev": true, "dependencies": { - "binary-extensions": "^2.0.0" - }, - "engines": { - "node": ">=8" + "has": "^1.0.3" } }, - "node_modules/is-boolean-object": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", - "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", + "node_modules/es-to-primitive": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" }, "engines": { "node": ">= 0.4" @@ -6135,331 +6084,460 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-builtin-module": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-3.2.0.tgz", - "integrity": "sha512-phDA4oSGt7vl1n5tJvTWooWWAsXLY+2xCnxNqvKhGEzujg+A43wPlPOyDg3C8XQHN+6k/JTQWJ/j0dQh/qr+Hw==", + "node_modules/escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", "dev": true, - "dependencies": { - "builtin-modules": "^3.3.0" - }, "engines": { "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/is-callable": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", - "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", + "node_modules/escape-goat": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/escape-goat/-/escape-goat-2.1.1.tgz", + "integrity": "sha512-8/uIhbG12Csjy2JEW7D9pHbreaVaS/OpN3ycnyvElTdwM5n6GY6W6e2IPemfvGZeUMqZ9A/3GqIZMgKnBhAw/Q==", "dev": true, "engines": { - "node": ">= 0.4" + "node": ">=8" + } + }, + "node_modules/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, + "engines": { + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/is-ci": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", - "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", + "node_modules/escodegen": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-2.1.0.tgz", + "integrity": "sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w==", "dev": true, "dependencies": { - "ci-info": "^2.0.0" + "esprima": "^4.0.1", + "estraverse": "^5.2.0", + "esutils": "^2.0.2" }, "bin": { - "is-ci": "bin.js" - } - }, - "node_modules/is-ci/node_modules/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 - }, - "node_modules/is-core-module": { - "version": "2.13.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.0.tgz", - "integrity": "sha512-Z7dk6Qo8pOCp3l4tsX2C5ZVas4V+UxwQodwZhLopL91TX8UyyHEXafPcyoeeWuLrwzHcr3igO78wNLwHJHsMCQ==", - "dev": true, - "dependencies": { - "has": "^1.0.3" + "escodegen": "bin/escodegen.js", + "esgenerate": "bin/esgenerate.js" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">=6.0" + }, + "optionalDependencies": { + "source-map": "~0.6.1" } }, - "node_modules/is-date-object": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", - "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "node_modules/eslint": { + "version": "8.33.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.33.0.tgz", + "integrity": "sha512-WjOpFQgKK8VrCnAtl8We0SUOy/oVZ5NHykyMiagV1M9r8IFpIJX7DduK6n1mpfhlG7T1NLWm2SuD8QB7KFySaA==", "dev": true, "dependencies": { - "has-tostringtag": "^1.0.0" + "@eslint/eslintrc": "^1.4.1", + "@humanwhocodes/config-array": "^0.11.8", + "@humanwhocodes/module-importer": "^1.0.1", + "@nodelib/fs.walk": "^1.2.8", + "ajv": "^6.10.0", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.3.2", + "doctrine": "^3.0.0", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^7.1.1", + "eslint-utils": "^3.0.0", + "eslint-visitor-keys": "^3.3.0", + "espree": "^9.4.0", + "esquery": "^1.4.0", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "globals": "^13.19.0", + "grapheme-splitter": "^1.0.4", + "ignore": "^5.2.0", + "import-fresh": "^3.0.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "is-path-inside": "^3.0.3", + "js-sdsl": "^4.1.4", + "js-yaml": "^4.1.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.1", + "regexpp": "^3.2.0", + "strip-ansi": "^6.0.1", + "strip-json-comments": "^3.1.0", + "text-table": "^0.2.0" + }, + "bin": { + "eslint": "bin/eslint.js" }, "engines": { - "node": ">= 0.4" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://opencollective.com/eslint" } }, - "node_modules/is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "node_modules/eslint-config-prettier": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.3.0.tgz", + "integrity": "sha512-BgZuLUSeKzvlL/VUjx/Yb787VQ26RU3gGjA3iiFvdsp/2bMfVIWUVP7tjxtjS0e+HP409cPlPvNkQloz8C91ew==", "dev": true, - "engines": { - "node": ">=0.10.0" + "bin": { + "eslint-config-prettier": "bin/cli.js" + }, + "peerDependencies": { + "eslint": ">=7.0.0" } }, - "node_modules/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", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "node_modules/eslint-plugin-jest": { + "version": "25.3.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-25.3.0.tgz", + "integrity": "sha512-79WQtuBsTN1S8Y9+7euBYwxIOia/k7ykkl9OCBHL3xuww5ecursHy/D8GCIlvzHVWv85gOkS5Kv6Sh7RxOgK1Q==", "dev": true, + "dependencies": { + "@typescript-eslint/experimental-utils": "^5.0.0" + }, "engines": { - "node": ">=8" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + }, + "peerDependencies": { + "@typescript-eslint/eslint-plugin": "^4.0.0 || ^5.0.0", + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "@typescript-eslint/eslint-plugin": { + "optional": true + }, + "jest": { + "optional": true + } } }, - "node_modules/is-generator-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", - "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==", + "node_modules/eslint-plugin-prettier": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-4.0.0.tgz", + "integrity": "sha512-98MqmCJ7vJodoQK359bqQWaxOE0CS8paAz/GgjaZLyex4TTk3g9HugoO89EqWCrFiOqn9EVvcoo7gZzONCWVwQ==", "dev": true, + "dependencies": { + "prettier-linter-helpers": "^1.0.0" + }, "engines": { - "node": ">=6" + "node": ">=6.0.0" + }, + "peerDependencies": { + "eslint": ">=7.28.0", + "prettier": ">=2.0.0" + }, + "peerDependenciesMeta": { + "eslint-config-prettier": { + "optional": true + } } }, - "node_modules/is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "node_modules/eslint-plugin-react": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.27.1.tgz", + "integrity": "sha512-meyunDjMMYeWr/4EBLTV1op3iSG3mjT/pz5gti38UzfM4OPpNc2m0t2xvKCOMU5D6FSdd34BIMFOvQbW+i8GAA==", "dev": true, "dependencies": { - "is-extglob": "^2.1.1" + "array-includes": "^3.1.4", + "array.prototype.flatmap": "^1.2.5", + "doctrine": "^2.1.0", + "estraverse": "^5.3.0", + "jsx-ast-utils": "^2.4.1 || ^3.0.0", + "minimatch": "^3.0.4", + "object.entries": "^1.1.5", + "object.fromentries": "^2.0.5", + "object.hasown": "^1.1.0", + "object.values": "^1.1.5", + "prop-types": "^15.7.2", + "resolve": "^2.0.0-next.3", + "semver": "^6.3.0", + "string.prototype.matchall": "^4.0.6" }, "engines": { - "node": ">=0.10.0" + "node": ">=4" + }, + "peerDependencies": { + "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8" } }, - "node_modules/is-installed-globally": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.4.0.tgz", - "integrity": "sha512-iwGqO3J21aaSkC7jWnHP/difazwS7SFeIqxv6wEtLU8Y5KlzFTjyqcSIT0d8s4+dDhKytsk9PJZ2BkS5eZwQRQ==", + "node_modules/eslint-plugin-react/node_modules/doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", "dev": true, "dependencies": { - "global-dirs": "^3.0.0", - "is-path-inside": "^3.0.2" + "esutils": "^2.0.2" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=0.10.0" } }, - "node_modules/is-interactive": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz", - "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==", + "node_modules/eslint-plugin-react/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", "dev": true, - "engines": { - "node": ">=8" + "bin": { + "semver": "bin/semver.js" } }, - "node_modules/is-negative-zero": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", - "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", + "node_modules/eslint-plugin-unicorn": { + "version": "39.0.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-unicorn/-/eslint-plugin-unicorn-39.0.0.tgz", + "integrity": "sha512-fd5RK2FtYjGcIx3wra7csIE/wkkmBo22T1gZtRTsLr1Mb+KsFKJ+JOdSqhHXQUrI/JTs/Mon64cEYzTgSCbltw==", "dev": true, + "dependencies": { + "@babel/helper-validator-identifier": "^7.14.9", + "ci-info": "^3.2.0", + "clean-regexp": "^1.0.0", + "eslint-template-visitor": "^2.3.2", + "eslint-utils": "^3.0.0", + "esquery": "^1.4.0", + "indent-string": "4", + "is-builtin-module": "^3.1.0", + "lodash": "^4.17.21", + "pluralize": "^8.0.0", + "read-pkg-up": "^7.0.1", + "regexp-tree": "^0.1.23", + "safe-regex": "^2.1.1", + "semver": "^7.3.5", + "strip-indent": "^3.0.0" + }, "engines": { - "node": ">= 0.4" + "node": ">=12" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sindresorhus/eslint-plugin-unicorn?sponsor=1" + }, + "peerDependencies": { + "eslint": ">=7.32.0" } }, - "node_modules/is-npm": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-5.0.0.tgz", - "integrity": "sha512-WW/rQLOazUq+ST/bCAVBp/2oMERWLsR7OrKyt052dNDk4DHcDE0/7QSXITlmi+VBcV13DfIbysG3tZJm5RfdBA==", + "node_modules/eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", "dev": true, - "engines": { - "node": ">=10" + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": ">=8.0.0" } }, - "node_modules/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "node_modules/eslint-scope/node_modules/estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", "dev": true, "engines": { - "node": ">=0.12.0" + "node": ">=4.0" } }, - "node_modules/is-number-object": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", - "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", - "dev": true, + "node_modules/eslint-template-visitor": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/eslint-template-visitor/-/eslint-template-visitor-2.3.2.tgz", + "integrity": "sha512-3ydhqFpuV7x1M9EK52BPNj6V0Kwu0KKkcIAfpUhwHbR8ocRln/oUHgfxQupY8O1h4Qv/POHDumb/BwwNfxbtnA==", + "dev": true, "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" + "@babel/core": "^7.12.16", + "@babel/eslint-parser": "^7.12.16", + "eslint-visitor-keys": "^2.0.0", + "esquery": "^1.3.1", + "multimap": "^1.1.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "peerDependencies": { + "eslint": ">=7.0.0" } }, - "node_modules/is-obj": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", - "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", + "node_modules/eslint-template-visitor/node_modules/eslint-visitor-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", "dev": true, "engines": { - "node": ">=8" + "node": ">=10" } }, - "node_modules/is-path-inside": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", - "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "node_modules/eslint-utils": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", + "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", "dev": true, + "dependencies": { + "eslint-visitor-keys": "^2.0.0" + }, "engines": { - "node": ">=8" + "node": "^10.0.0 || ^12.0.0 || >= 14.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + }, + "peerDependencies": { + "eslint": ">=5" } }, - "node_modules/is-plain-obj": { + "node_modules/eslint-utils/node_modules/eslint-visitor-keys": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz", - "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", "dev": true, "engines": { - "node": ">=8" + "node": ">=10" } }, - "node_modules/is-plain-object": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", - "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", + "node_modules/eslint-visitor-keys": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", + "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==", "dev": true, "engines": { - "node": ">=0.10.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, - "node_modules/is-potential-custom-element-name": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz", - "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==", - "dev": true - }, - "node_modules/is-regex": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", - "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", + "node_modules/eslint/node_modules/eslint-scope": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz", + "integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, - "node_modules/is-shared-array-buffer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", - "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", + "node_modules/esm": { + "version": "3.2.25", + "resolved": "https://registry.npmjs.org/esm/-/esm-3.2.25.tgz", + "integrity": "sha512-U1suiZ2oDVWv4zPO56S0NcR5QriEahGtdN2OR6FiOG4WJvcjBVFB0qI4+eKoWFH483PKGuLuu6V8Z4T5g63UVA==", + "engines": { + "node": ">=6" + } + }, + "node_modules/espree": { + "version": "9.4.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.4.1.tgz", + "integrity": "sha512-XwctdmTO6SIvCzd9810yyNzIrOrqNYV9Koizx4C/mRhf9uq0o4yHoCEU/670pOxOL/MSraektvSAji79kX90Vg==", "dev": true, "dependencies": { - "call-bind": "^1.0.2" + "acorn": "^8.8.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://opencollective.com/eslint" } }, - "node_modules/is-stream": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", - "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", "dev": true, - "engines": { - "node": ">=8" + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": ">=4" } }, - "node_modules/is-string": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", - "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", + "node_modules/esquery": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", + "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", "dev": true, "dependencies": { - "has-tostringtag": "^1.0.0" + "estraverse": "^5.1.0" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=0.10" } }, - "node_modules/is-symbol": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", - "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", "dev": true, "dependencies": { - "has-symbols": "^1.0.2" + "estraverse": "^5.2.0" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=4.0" } }, - "node_modules/is-typed-array": { - "version": "1.1.10", - "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.10.tgz", - "integrity": "sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A==", + "node_modules/esri-loader": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/esri-loader/-/esri-loader-3.4.0.tgz", + "integrity": "sha512-iS3SbBmrnr4TlUdAjyyVZD2yCud8AMZkyJcmYEVzTiE5wVUtdN8d9USp7XYtilgwkJe/eWR2f2G1+S58ESqLuQ==", + "dev": true + }, + "node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", "dev": true, "dependencies": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-tostringtag": "^1.0.0" + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" }, "engines": { - "node": ">= 0.4" + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sindresorhus/execa?sponsor=1" } }, - "node_modules/is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==", - "dev": true - }, - "node_modules/is-unicode-supported": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", - "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", + "node_modules/execa/node_modules/get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", "dev": true, "engines": { "node": ">=10" @@ -6468,1766 +6546,1533 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/is-url": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/is-url/-/is-url-1.2.4.tgz", - "integrity": "sha512-ITvGim8FhRiYe4IQ5uHSkj7pVaPDrCTkNd3yq3cV7iZAcJdHTUMPMEHcqSOy9xZ9qFenQCvi+2wjH9a1nXqHww==", - "dev": true + "node_modules/exit": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", + "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", + "dev": true, + "engines": { + "node": ">= 0.8.0" + } }, - "node_modules/is-weakref": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", - "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", + "node_modules/expect": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/expect/-/expect-27.5.1.tgz", + "integrity": "sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw==", "dev": true, "dependencies": { - "call-bind": "^1.0.2" + "@jest/types": "^27.5.1", + "jest-get-type": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/is-yarn-global": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/is-yarn-global/-/is-yarn-global-0.3.0.tgz", - "integrity": "sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw==", - "dev": true - }, - "node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", - "dev": true - }, - "node_modules/isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "dev": true - }, - "node_modules/istanbul-lib-coverage": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz", - "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-instrument": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", - "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", + "node_modules/expect/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", "dev": true, "dependencies": { - "@babel/core": "^7.12.3", - "@babel/parser": "^7.14.7", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-coverage": "^3.2.0", - "semver": "^6.3.0" + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" }, "engines": { - "node": ">=8" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/istanbul-lib-instrument/node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "node_modules/expect/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", "dev": true, - "bin": { - "semver": "bin/semver.js" + "dependencies": { + "@types/yargs-parser": "*" } }, - "node_modules/istanbul-lib-report": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", - "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==", + "node_modules/external-editor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", + "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", "dev": true, "dependencies": { - "istanbul-lib-coverage": "^3.0.0", - "make-dir": "^4.0.0", - "supports-color": "^7.1.0" + "chardet": "^0.7.0", + "iconv-lite": "^0.4.24", + "tmp": "^0.0.33" }, "engines": { - "node": ">=10" + "node": ">=4" } }, - "node_modules/istanbul-lib-report/node_modules/make-dir": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", - "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", + "node_modules/extract-zip": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-2.0.1.tgz", + "integrity": "sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg==", "dev": true, "dependencies": { - "semver": "^7.5.3" + "debug": "^4.1.1", + "get-stream": "^5.1.0", + "yauzl": "^2.10.0" + }, + "bin": { + "extract-zip": "cli.js" }, "engines": { - "node": ">=10" + "node": ">= 10.17.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "optionalDependencies": { + "@types/yauzl": "^2.9.1" } }, - "node_modules/istanbul-lib-source-maps": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", - "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", + "node_modules/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==" + }, + "node_modules/fast-diff": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.2.0.tgz", + "integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==", + "dev": true + }, + "node_modules/fast-fifo": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/fast-fifo/-/fast-fifo-1.3.0.tgz", + "integrity": "sha512-IgfweLvEpwyA4WgiQe9Nx6VV2QkML2NkvZnk1oKnIzXgXdWxuhF7zw4DvLTPZJn6PIUneiAXPF24QmoEqHTjyw==", + "dev": true + }, + "node_modules/fast-glob": { + "version": "3.2.12", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz", + "integrity": "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==", "dev": true, "dependencies": { - "debug": "^4.1.1", - "istanbul-lib-coverage": "^3.0.0", - "source-map": "^0.6.1" + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" }, "engines": { - "node": ">=10" + "node": ">=8.6.0" } }, - "node_modules/istanbul-reports": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.6.tgz", - "integrity": "sha512-TLgnMkKg3iTDsQ9PbPTdpfAK2DzjF9mqUG7RMgcQl8oFjad8ob4laGxv5XV5U9MAfx8D6tSJiUyuAwzLicaxlg==", + "node_modules/fast-glob/node_modules/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, "dependencies": { - "html-escaper": "^2.0.0", - "istanbul-lib-report": "^3.0.0" + "is-glob": "^4.0.1" }, "engines": { - "node": ">=8" + "node": ">= 6" } }, - "node_modules/jest": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest/-/jest-27.5.1.tgz", - "integrity": "sha512-Yn0mADZB89zTtjkPJEXwrac3LHudkQMR+Paqa8uxJHCBr9agxztUifWCyiYrjhMPBoUVBjyny0I7XH6ozDr7QQ==", - "dev": true, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "dev": true + }, + "node_modules/fast-xml-parser": { + "version": "3.21.1", + "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-3.21.1.tgz", + "integrity": "sha512-FTFVjYoBOZTJekiUsawGsSYV9QL0A+zDYCRj7y34IO6Jg+2IMYEtQa+bbictpdpV8dHxXywqU7C0gRDEOFtBFg==", "dependencies": { - "@jest/core": "^27.5.1", - "import-local": "^3.0.2", - "jest-cli": "^27.5.1" + "strnum": "^1.0.4" }, "bin": { - "jest": "bin/jest.js" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - }, - "peerDependencies": { - "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + "xml2js": "cli.js" }, - "peerDependenciesMeta": { - "node-notifier": { - "optional": true - } + "funding": { + "type": "paypal", + "url": "https://paypal.me/naturalintelligence" } }, - "node_modules/jest-changed-files": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-27.5.1.tgz", - "integrity": "sha512-buBLMiByfWGCoMsLLzGUUSpAmIAGnbR2KJoMN10ziLhOLvP4e0SlypHnAel8iqQXTrcbmfEY9sSqae5sgUsTvw==", + "node_modules/fastq": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", + "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", "dev": true, "dependencies": { - "@jest/types": "^27.5.1", - "execa": "^5.0.0", - "throat": "^6.0.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "reusify": "^1.0.4" } }, - "node_modules/jest-changed-files/node_modules/@jest/types": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", - "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "node_modules/fb-watchman": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz", + "integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==", "dev": true, "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^16.0.0", - "chalk": "^4.0.0" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "bser": "2.1.1" } }, - "node_modules/jest-changed-files/node_modules/@types/yargs": { - "version": "16.0.5", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", - "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "node_modules/fd-slicer": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", + "integrity": "sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==", "dev": true, "dependencies": { - "@types/yargs-parser": "*" + "pend": "~1.2.0" } }, - "node_modules/jest-circus": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-27.5.1.tgz", - "integrity": "sha512-D95R7x5UtlMA5iBYsOHFFbMD/GVA4R/Kdq15f7xYWUfWHBto9NYRsOvnSauTgdF+ogCpJ4tyKOXhUifxS65gdw==", + "node_modules/fflate": { + "version": "0.4.8", + "resolved": "https://registry.npmjs.org/fflate/-/fflate-0.4.8.tgz", + "integrity": "sha512-FJqqoDBR00Mdj9ppamLa/Y7vxm+PRmNWA67N846RvsoYVMKB4q3y/de5PA7gUmRMYK/8CMz2GDZQmCRN1wBcWA==" + }, + "node_modules/figures": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", + "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", "dev": true, "dependencies": { - "@jest/environment": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "co": "^4.6.0", - "dedent": "^0.7.0", - "expect": "^27.5.1", - "is-generator-fn": "^2.0.0", - "jest-each": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-runtime": "^27.5.1", - "jest-snapshot": "^27.5.1", - "jest-util": "^27.5.1", - "pretty-format": "^27.5.1", - "slash": "^3.0.0", - "stack-utils": "^2.0.3", - "throat": "^6.0.1" + "escape-string-regexp": "^1.0.5" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-circus/node_modules/@jest/types": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", - "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", - "dev": true, - "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^16.0.0", - "chalk": "^4.0.0" + "node": ">=8" }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-circus/node_modules/@types/yargs": { - "version": "16.0.5", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", - "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "node_modules/figures/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", "dev": true, - "dependencies": { - "@types/yargs-parser": "*" + "engines": { + "node": ">=0.8.0" } }, - "node_modules/jest-circus/node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "node_modules/file-entry-cache": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", + "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", "dev": true, "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" + "flat-cache": "^3.0.4" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "^10.12.0 || >=12.0.0" } }, - "node_modules/jest-cli": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-27.5.1.tgz", - "integrity": "sha512-Hc6HOOwYq4/74/c62dEE3r5elx8wjYqxY0r0G/nFrLDPMFRu6RA/u8qINOIkvhxG7mMQ5EJsOGfRpI8L6eFUVw==", + "node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", "dev": true, "dependencies": { - "@jest/core": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/types": "^27.5.1", - "chalk": "^4.0.0", - "exit": "^0.1.2", - "graceful-fs": "^4.2.9", - "import-local": "^3.0.2", - "jest-config": "^27.5.1", - "jest-util": "^27.5.1", - "jest-validate": "^27.5.1", - "prompts": "^2.0.1", - "yargs": "^16.2.0" - }, - "bin": { - "jest": "bin/jest.js" + "to-regex-range": "^5.0.1" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - }, - "peerDependencies": { - "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" - }, - "peerDependenciesMeta": { - "node-notifier": { - "optional": true - } + "node": ">=8" } }, - "node_modules/jest-cli/node_modules/@jest/types": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", - "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", "dev": true, "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^16.0.0", - "chalk": "^4.0.0" + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-cli/node_modules/@types/yargs": { - "version": "16.0.5", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", - "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "node_modules/flat-cache": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", + "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", "dev": true, "dependencies": { - "@types/yargs-parser": "*" + "flatted": "^3.1.0", + "rimraf": "^3.0.2" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" } }, - "node_modules/jest-cli/node_modules/cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", - "dev": true, + "node_modules/flatted": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", + "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==", + "dev": true + }, + "node_modules/focus-trap": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/focus-trap/-/focus-trap-7.2.0.tgz", + "integrity": "sha512-v4wY6HDDYvzkBy4735kW5BUEuw6Yz9ABqMYLuTNbzAFPcBOGiGHwwcNVMvUz4G0kgSYh13wa/7TG3XwTeT4O/A==", "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" + "tabbable": "^6.0.1" } }, - "node_modules/jest-cli/node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "node_modules/for-each": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", + "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", "dev": true, "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "is-callable": "^1.1.3" } }, - "node_modules/jest-cli/node_modules/yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "node_modules/form-data": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz", + "integrity": "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==", "dev": true, "dependencies": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.0", - "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" }, "engines": { - "node": ">=10" + "node": ">= 6" } }, - "node_modules/jest-cli/node_modules/yargs-parser": { - "version": "20.2.9", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", - "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "node_modules/form-request-submit-polyfill": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/form-request-submit-polyfill/-/form-request-submit-polyfill-2.0.0.tgz", + "integrity": "sha512-p0+M92y2gFnP0AuuL8VJ0GYVzAT0bYp3GsSkmPFhvUopdnfDLP/9xplQTBBc4w8qOjKRzdK7GaFcdL9IhlXdTQ==" + }, + "node_modules/fraction.js": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz", + "integrity": "sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==", "dev": true, "engines": { - "node": ">=10" + "node": "*" + }, + "funding": { + "type": "patreon", + "url": "https://www.patreon.com/infusion" } }, - "node_modules/jest-config": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-27.5.1.tgz", - "integrity": "sha512-5sAsjm6tGdsVbW9ahcChPAFCk4IlkQUknH5AvKjuLTSlcO/wCZKyFdn7Rg0EkC+OGgWODEy2hDpWB1PgzH0JNA==", + "node_modules/fs-extra": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", + "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", "dev": true, "dependencies": { - "@babel/core": "^7.8.0", - "@jest/test-sequencer": "^27.5.1", - "@jest/types": "^27.5.1", - "babel-jest": "^27.5.1", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "deepmerge": "^4.2.2", - "glob": "^7.1.1", - "graceful-fs": "^4.2.9", - "jest-circus": "^27.5.1", - "jest-environment-jsdom": "^27.5.1", - "jest-environment-node": "^27.5.1", - "jest-get-type": "^27.5.1", - "jest-jasmine2": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-runner": "^27.5.1", - "jest-util": "^27.5.1", - "jest-validate": "^27.5.1", - "micromatch": "^4.0.4", - "parse-json": "^5.2.0", - "pretty-format": "^27.5.1", - "slash": "^3.0.0", - "strip-json-comments": "^3.1.1" + "graceful-fs": "^4.2.0", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - }, - "peerDependencies": { - "ts-node": ">=9.0.0" - }, - "peerDependenciesMeta": { - "ts-node": { - "optional": true - } + "node": ">=6 <7 || >=8" } }, - "node_modules/jest-config/node_modules/@jest/transform": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz", - "integrity": "sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==", + "node_modules/fs-extra/node_modules/universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", "dev": true, - "dependencies": { - "@babel/core": "^7.1.0", - "@jest/types": "^27.5.1", - "babel-plugin-istanbul": "^6.1.1", - "chalk": "^4.0.0", - "convert-source-map": "^1.4.0", - "fast-json-stable-stringify": "^2.0.0", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-util": "^27.5.1", - "micromatch": "^4.0.4", - "pirates": "^4.0.4", - "slash": "^3.0.0", - "source-map": "^0.6.1", - "write-file-atomic": "^3.0.0" - }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">= 4.0.0" } }, - "node_modules/jest-config/node_modules/@jest/types": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", - "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", - "dev": true, - "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^16.0.0", - "chalk": "^4.0.0" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true }, - "node_modules/jest-config/node_modules/@types/yargs": { - "version": "16.0.5", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", - "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "node_modules/fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", "dev": true, - "dependencies": { - "@types/yargs-parser": "*" + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" } }, - "node_modules/jest-config/node_modules/babel-jest": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-27.5.1.tgz", - "integrity": "sha512-cdQ5dXjGRd0IBRATiQ4mZGlGlRE8kJpjPOixdNRdT+m3UcNqmYWN6rK6nvtXYfY3D76cb8s/O1Ss8ea24PIwcg==", + "node_modules/function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "dev": true + }, + "node_modules/function.prototype.name": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.5.tgz", + "integrity": "sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==", "dev": true, "dependencies": { - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/babel__core": "^7.1.14", - "babel-plugin-istanbul": "^6.1.1", - "babel-preset-jest": "^27.5.1", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "slash": "^3.0.0" + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.19.0", + "functions-have-names": "^1.2.2" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">= 0.4" }, - "peerDependencies": { - "@babel/core": "^7.8.0" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-config/node_modules/babel-plugin-jest-hoist": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.5.1.tgz", - "integrity": "sha512-50wCwD5EMNW4aRpOwtqzyZHIewTYNxLA4nhB+09d8BIssfNfzBRhkBIHiaPv1Si226TQSvp8gxAJm2iY2qs2hQ==", + "node_modules/functions-have-names": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", "dev": true, - "dependencies": { - "@babel/template": "^7.3.3", - "@babel/types": "^7.3.3", - "@types/babel__core": "^7.0.0", - "@types/babel__traverse": "^7.0.6" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-config/node_modules/babel-preset-jest": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-27.5.1.tgz", - "integrity": "sha512-Nptf2FzlPCWYuJg41HBqXVT8ym6bXOevuCTbhxlUpjwtysGaIWFvDEjp4y+G7fl13FgOdjs7P/DmErqH7da0Ag==", + "node_modules/gauge": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz", + "integrity": "sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg==", "dev": true, "dependencies": { - "babel-plugin-jest-hoist": "^27.5.1", - "babel-preset-current-node-syntax": "^1.0.0" + "aproba": "^1.0.3 || ^2.0.0", + "color-support": "^1.1.3", + "console-control-strings": "^1.1.0", + "has-unicode": "^2.0.1", + "signal-exit": "^3.0.7", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1", + "wide-align": "^1.1.5" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/jest-config/node_modules/jest-haste-map": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", - "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "@types/graceful-fs": "^4.1.2", - "@types/node": "*", - "anymatch": "^3.0.3", - "fb-watchman": "^2.0.0", - "graceful-fs": "^4.2.9", - "jest-regex-util": "^27.5.1", - "jest-serializer": "^27.5.1", - "jest-util": "^27.5.1", - "jest-worker": "^27.5.1", - "micromatch": "^4.0.4", - "walker": "^1.0.7" - }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - }, - "optionalDependencies": { - "fsevents": "^2.3.2" + "node": ">=6.9.0" } }, - "node_modules/jest-config/node_modules/jest-regex-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", - "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", "dev": true, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "6.* || 8.* || >= 10.*" } }, - "node_modules/jest-config/node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "node_modules/get-intrinsic": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.0.tgz", + "integrity": "sha512-L049y6nFOuom5wGyRc3/gdTLO94dySVKRACj1RmJZBQXlbTMhtNIgkWkUHq+jYmZvKf14EW1EoJnnjbmoHij0Q==", "dev": true, "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.3" }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-config/node_modules/jest-worker": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", - "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "node_modules/get-package-type": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", + "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", "dev": true, - "dependencies": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" - }, "engines": { - "node": ">= 10.13.0" + "node": ">=8.0.0" } }, - "node_modules/jest-config/node_modules/supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "node_modules/get-stream": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", "dev": true, "dependencies": { - "has-flag": "^4.0.0" + "pump": "^3.0.0" }, "engines": { - "node": ">=10" + "node": ">=8" }, "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-diff": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.5.1.tgz", - "integrity": "sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==", + "node_modules/get-symbol-description": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", + "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", "dev": true, "dependencies": { - "chalk": "^4.0.0", - "diff-sequences": "^27.5.1", - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.1" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-docblock": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-27.5.1.tgz", - "integrity": "sha512-rl7hlABeTsRYxKiUfpHrQrG4e2obOiTQWfMEH3PxPjOtdsfLQO4ReWSZaQ7DETm4xu07rl4q/h4zcKXyU0/OzQ==", + "node_modules/get-uri": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-uri/-/get-uri-6.0.1.tgz", + "integrity": "sha512-7ZqONUVqaabogsYNWlYj0t3YZaL6dhuEueZXGF+/YVmf6dHmaFg8/6psJKqhx9QykIDKzpGcy2cn4oV4YC7V/Q==", "dev": true, "dependencies": { - "detect-newline": "^3.0.0" + "basic-ftp": "^5.0.2", + "data-uri-to-buffer": "^5.0.1", + "debug": "^4.3.4", + "fs-extra": "^8.1.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">= 14" } }, - "node_modules/jest-each": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-27.5.1.tgz", - "integrity": "sha512-1Ff6p+FbhT/bXQnEouYy00bkNSY7OUpfIcmdl8vZ31A1UUaurOLPA8a8BbJOF2RDUElwJhmeaV7LnagI+5UwNQ==", + "node_modules/gh-release": { + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/gh-release/-/gh-release-6.0.4.tgz", + "integrity": "sha512-6djoVxTUpbw9GZ/mveNjp5j/IDPY3KACscSlmNwwfkR+EQCNTSgGRywb0TRaQdA36RnwtcNOWEaLwB5ez7jSRg==", "dev": true, "dependencies": { - "@jest/types": "^27.5.1", - "chalk": "^4.0.0", - "jest-get-type": "^27.5.1", - "jest-util": "^27.5.1", - "pretty-format": "^27.5.1" + "@octokit/rest": "^18.0.9", + "changelog-parser": "^2.0.0", + "deep-extend": "^0.6.0", + "gauge": "^v4.0.4", + "gh-release-assets": "^2.0.0", + "ghauth": "^5.0.0", + "github-url-to-object": "^4.0.4", + "inquirer": "^8.0.0", + "shelljs": "^0.8.4", + "update-notifier": "^5.0.0", + "yargs": "^17.0.0" + }, + "bin": { + "gh-release": "bin/cli.js" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=12" } }, - "node_modules/jest-each/node_modules/@jest/types": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", - "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "node_modules/gh-release-assets": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/gh-release-assets/-/gh-release-assets-2.0.1.tgz", + "integrity": "sha512-KrhmYIA/5oQdfEl9vQ2yF6DOM2QOAjpCOsNKFkc7X3dOTefSixttW0ysot3noQ+3XL8NdkdC7z+mqfePzIwexg==", "dev": true, "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^16.0.0", - "chalk": "^4.0.0" + "async": "^3.2.0", + "mime": "^3.0.0", + "progress-stream": "^2.0.0", + "pumpify": "^2.0.1", + "simple-get": "^4.0.0", + "util-extend": "^1.0.1" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=12" } }, - "node_modules/jest-each/node_modules/@types/yargs": { - "version": "16.0.5", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", - "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "node_modules/ghauth": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ghauth/-/ghauth-5.0.1.tgz", + "integrity": "sha512-WzgL12dczZX/VrvVTkoFAJLU3pb6PDT+TS60kLlaU51fuNEv6VoYpRXlnwIjkMIhqWead9+dLBEzj0E1ghYMkg==", "dev": true, "dependencies": { - "@types/yargs-parser": "*" + "application-config": "^2.0.0", + "node-fetch": "^2.6.0", + "ora": "^4.0.5", + "read": "^1.0.7" } }, - "node_modules/jest-each/node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "node_modules/github-url-to-object": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/github-url-to-object/-/github-url-to-object-4.0.6.tgz", + "integrity": "sha512-NaqbYHMUAlPcmWFdrAB7bcxrNIiiJWJe8s/2+iOc9vlcHlwHqSGrPk+Yi3nu6ebTwgsZEa7igz+NH2vEq3gYwQ==", "dev": true, "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "is-url": "^1.1.0" } }, - "node_modules/jest-environment-jsdom": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-27.5.1.tgz", - "integrity": "sha512-TFBvkTC1Hnnnrka/fUb56atfDtJ9VMZ94JkjTbggl1PEpwrYtUBKMezB3inLmWqQsXYLcMwNoDQwoBTAvFfsfw==", + "node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", "dev": true, "dependencies": { - "@jest/environment": "^27.5.1", - "@jest/fake-timers": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "jest-mock": "^27.5.1", - "jest-util": "^27.5.1", - "jsdom": "^16.6.0" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/jest-environment-jsdom/node_modules/@jest/types": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", - "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", "dev": true, "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^16.0.0", - "chalk": "^4.0.0" + "is-glob": "^4.0.3" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=10.13.0" } }, - "node_modules/jest-environment-jsdom/node_modules/@types/yargs": { - "version": "16.0.5", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", - "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "node_modules/global-dirs": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-3.0.1.tgz", + "integrity": "sha512-NBcGGFbBA9s1VzD41QXDG+3++t9Mn5t1FpLdhESY6oKY4gYTFpX4wO3sqGUa0Srjtbfj3szX0RnemmrVRUdULA==", "dev": true, "dependencies": { - "@types/yargs-parser": "*" + "ini": "2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-environment-jsdom/node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "node_modules/globals": { + "version": "13.20.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", + "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", "dev": true, "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" + "type-fest": "^0.20.2" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-environment-node": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-27.5.1.tgz", - "integrity": "sha512-Jt4ZUnxdOsTGwSRAfKEnE6BcwsSPNOijjwifq5sDFSA2kesnXTvNqKHYgM0hDq3549Uf/KzdXNYn4wMZJPlFLw==", + "node_modules/globalthis": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz", + "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==", "dev": true, "dependencies": { - "@jest/environment": "^27.5.1", - "@jest/fake-timers": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "jest-mock": "^27.5.1", - "jest-util": "^27.5.1" + "define-properties": "^1.1.3" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-environment-node/node_modules/@jest/types": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", - "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "node_modules/globby": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", "dev": true, "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^16.0.0", - "chalk": "^4.0.0" + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-environment-node/node_modules/@types/yargs": { - "version": "16.0.5", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", - "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "node_modules/gopd": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", + "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", "dev": true, "dependencies": { - "@types/yargs-parser": "*" + "get-intrinsic": "^1.1.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-environment-node/node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "node_modules/got": { + "version": "9.6.0", + "resolved": "https://registry.npmjs.org/got/-/got-9.6.0.tgz", + "integrity": "sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==", "dev": true, "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" + "@sindresorhus/is": "^0.14.0", + "@szmarczak/http-timer": "^1.1.2", + "cacheable-request": "^6.0.0", + "decompress-response": "^3.3.0", + "duplexer3": "^0.1.4", + "get-stream": "^4.1.0", + "lowercase-keys": "^1.0.1", + "mimic-response": "^1.0.1", + "p-cancelable": "^1.0.0", + "to-readable-stream": "^1.0.0", + "url-parse-lax": "^3.0.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=8.6" } }, - "node_modules/jest-get-type": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", - "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", + "node_modules/got/node_modules/decompress-response": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", + "integrity": "sha512-BzRPQuY1ip+qDonAOz42gRm/pg9F768C+npV/4JOsxRC2sq+Rlk+Q4ZCAsOhnIaMrgarILY+RMUIvMmmX1qAEA==", "dev": true, + "dependencies": { + "mimic-response": "^1.0.0" + }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=4" } }, - "node_modules/jest-jasmine2": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-27.5.1.tgz", - "integrity": "sha512-jtq7VVyG8SqAorDpApwiJJImd0V2wv1xzdheGHRGyuT7gZm6gG47QEskOlzsN1PG/6WNaCo5pmwMHDf3AkG2pQ==", + "node_modules/got/node_modules/get-stream": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", "dev": true, "dependencies": { - "@jest/environment": "^27.5.1", - "@jest/source-map": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "co": "^4.6.0", - "expect": "^27.5.1", - "is-generator-fn": "^2.0.0", - "jest-each": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-runtime": "^27.5.1", - "jest-snapshot": "^27.5.1", - "jest-util": "^27.5.1", - "pretty-format": "^27.5.1", - "throat": "^6.0.1" + "pump": "^3.0.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=6" } }, - "node_modules/jest-jasmine2/node_modules/@jest/types": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", - "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "node_modules/got/node_modules/mimic-response": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", + "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", "dev": true, - "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^16.0.0", - "chalk": "^4.0.0" - }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=4" } }, - "node_modules/jest-jasmine2/node_modules/@types/yargs": { - "version": "16.0.5", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", - "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "node_modules/graceful-fs": { + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", + "dev": true + }, + "node_modules/grapheme-splitter": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz", + "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==", + "dev": true + }, + "node_modules/has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", "dev": true, "dependencies": { - "@types/yargs-parser": "*" + "function-bind": "^1.1.1" + }, + "engines": { + "node": ">= 0.4.0" } }, - "node_modules/jest-jasmine2/node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "node_modules/has-bigints": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", + "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=8" } }, - "node_modules/jest-leak-detector": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-27.5.1.tgz", - "integrity": "sha512-POXfWAMvfU6WMUXftV4HolnJfnPOGEu10fscNCA76KBpRRhcMN2c8d3iT2pxQS3HLbA+5X4sOUPzYO2NUyIlHQ==", + "node_modules/has-property-descriptors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", + "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", "dev": true, "dependencies": { - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" + "get-intrinsic": "^1.1.1" }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-matcher-utils": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz", - "integrity": "sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==", + "node_modules/has-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz", + "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==", "dev": true, - "dependencies": { - "chalk": "^4.0.0", - "jest-diff": "^27.5.1", - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" + "engines": { + "node": ">= 0.4" }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "dev": true, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-message-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", - "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", + "node_modules/has-tostringtag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", + "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^27.5.1", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.4", - "pretty-format": "^27.5.1", - "slash": "^3.0.0", - "stack-utils": "^2.0.3" + "has-symbols": "^1.0.2" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-message-util/node_modules/@jest/types": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", - "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "node_modules/has-unicode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==", + "dev": true + }, + "node_modules/has-yarn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/has-yarn/-/has-yarn-2.1.0.tgz", + "integrity": "sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw==", "dev": true, - "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^16.0.0", - "chalk": "^4.0.0" - }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=8" } }, - "node_modules/jest-message-util/node_modules/@types/yargs": { - "version": "16.0.5", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", - "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "node_modules/hosted-git-info": { + "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 + }, + "node_modules/html-encoding-sniffer": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz", + "integrity": "sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ==", "dev": true, "dependencies": { - "@types/yargs-parser": "*" + "whatwg-encoding": "^1.0.5" + }, + "engines": { + "node": ">=10" } }, - "node_modules/jest-mock": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-27.5.1.tgz", - "integrity": "sha512-K4jKbY1d4ENhbrG2zuPWaQBvDly+iZ2yAW+T1fATN78hc0sInwn7wZB8XtlNnvHug5RMwV897Xm4LqmPM4e2Og==", - "dev": true, + "node_modules/html-escaper": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", + "dev": true + }, + "node_modules/html2canvas": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/html2canvas/-/html2canvas-1.4.1.tgz", + "integrity": "sha512-fPU6BHNpsyIhr8yyMpTLLxAbkaK8ArIBcmZIRiBLiDhjeqvXolaEmDGmELFuX9I4xDcaKKcJl+TKZLqruBbmWA==", + "optional": true, "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*" + "css-line-break": "^2.1.0", + "text-segmentation": "^1.0.3" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=8.0.0" } }, - "node_modules/jest-mock/node_modules/@jest/types": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", - "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "node_modules/http-cache-semantics": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", + "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==", + "dev": true + }, + "node_modules/http-proxy-agent": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", + "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", "dev": true, "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^16.0.0", - "chalk": "^4.0.0" + "@tootallnate/once": "1", + "agent-base": "6", + "debug": "4" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">= 6" } }, - "node_modules/jest-mock/node_modules/@types/yargs": { - "version": "16.0.5", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", - "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "node_modules/https-proxy-agent": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", "dev": true, "dependencies": { - "@types/yargs-parser": "*" + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" } }, - "node_modules/jest-pnp-resolver": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", - "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==", + "node_modules/human-signals": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", + "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", "dev": true, "engines": { - "node": ">=6" - }, - "peerDependencies": { - "jest-resolve": "*" - }, - "peerDependenciesMeta": { - "jest-resolve": { - "optional": true - } + "node": ">=10.17.0" } }, - "node_modules/jest-resolve": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-27.5.1.tgz", - "integrity": "sha512-FFDy8/9E6CV83IMbDpcjOhumAQPDyETnU2KZ1O98DwTnz8AOBsW/Xv3GySr1mOZdItLR+zDZ7I/UdTFbgSOVCw==", + "node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", "dev": true, "dependencies": { - "@jest/types": "^27.5.1", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", - "jest-pnp-resolver": "^1.2.2", - "jest-util": "^27.5.1", - "jest-validate": "^27.5.1", - "resolve": "^1.20.0", - "resolve.exports": "^1.1.0", - "slash": "^3.0.0" + "safer-buffer": ">= 2.1.2 < 3" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=0.10.0" } }, - "node_modules/jest-resolve-dependencies": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-27.5.1.tgz", - "integrity": "sha512-QQOOdY4PE39iawDn5rzbIePNigfe5B9Z91GDD1ae/xNDlu9kaat8QQ5EKnNmVWPV54hUdxCVwwj6YMgR2O7IOg==", + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-snapshot": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] }, - "node_modules/jest-resolve-dependencies/node_modules/@jest/types": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", - "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "node_modules/ignore": { + "version": "5.2.4", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", + "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==", "dev": true, - "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^16.0.0", - "chalk": "^4.0.0" - }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">= 4" } }, - "node_modules/jest-resolve-dependencies/node_modules/@types/yargs": { - "version": "16.0.5", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", - "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "node_modules/immediate": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz", + "integrity": "sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ==", + "dev": true + }, + "node_modules/import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", "dev": true, "dependencies": { - "@types/yargs-parser": "*" + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-resolve-dependencies/node_modules/jest-regex-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", - "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", + "node_modules/import-lazy": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", + "integrity": "sha512-m7ZEHgtw69qOGw+jwxXkHlrlIPdTGkyh66zXZ1ajZbxkDBNjSY/LGbmjc7h0s2ELsUDTAhFr55TrPSSqJGPG0A==", "dev": true, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=4" } }, - "node_modules/jest-resolve/node_modules/@jest/types": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", - "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "node_modules/import-local": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", + "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==", "dev": true, "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^16.0.0", - "chalk": "^4.0.0" + "pkg-dir": "^4.2.0", + "resolve-cwd": "^3.0.0" + }, + "bin": { + "import-local-fixture": "fixtures/cli.js" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-resolve/node_modules/@types/yargs": { - "version": "16.0.5", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", - "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", "dev": true, - "dependencies": { - "@types/yargs-parser": "*" + "engines": { + "node": ">=0.8.19" } }, - "node_modules/jest-resolve/node_modules/jest-haste-map": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", - "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", + "node_modules/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, - "dependencies": { - "@jest/types": "^27.5.1", - "@types/graceful-fs": "^4.1.2", - "@types/node": "*", - "anymatch": "^3.0.3", - "fb-watchman": "^2.0.0", - "graceful-fs": "^4.2.9", - "jest-regex-util": "^27.5.1", - "jest-serializer": "^27.5.1", - "jest-util": "^27.5.1", - "jest-worker": "^27.5.1", - "micromatch": "^4.0.4", - "walker": "^1.0.7" - }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - }, - "optionalDependencies": { - "fsevents": "^2.3.2" + "node": ">=8" } }, - "node_modules/jest-resolve/node_modules/jest-regex-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", - "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", "dev": true, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" } }, - "node_modules/jest-resolve/node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "node_modules/ini": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ini/-/ini-2.0.0.tgz", + "integrity": "sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==", "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=10" } }, - "node_modules/jest-resolve/node_modules/jest-worker": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", - "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "node_modules/inquirer": { + "version": "8.2.5", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.2.5.tgz", + "integrity": "sha512-QAgPDQMEgrDssk1XiwwHoOGYF9BAbUcc1+j+FhEvaOt8/cKRqyLn0U5qA6F74fGhTMGxf92pOvPBeh29jQJDTQ==", "dev": true, "dependencies": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" + "ansi-escapes": "^4.2.1", + "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.4.1", + "run-async": "^2.4.0", + "rxjs": "^7.5.5", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0", + "through": "^2.3.6", + "wrap-ansi": "^7.0.0" }, "engines": { - "node": ">= 10.13.0" + "node": ">=12.0.0" } }, - "node_modules/jest-resolve/node_modules/resolve": { - "version": "1.22.4", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.4.tgz", - "integrity": "sha512-PXNdCiPqDqeUou+w1C2eTQbNfxKSuMxqTCuvlmmMsk1NWHL5fRrhY6Pl0qEYYc6+QqGClco1Qj8XnjPego4wfg==", + "node_modules/inquirer/node_modules/log-symbols": { + "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, "dependencies": { - "is-core-module": "^2.13.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" + "chalk": "^4.1.0", + "is-unicode-supported": "^0.1.0" }, - "bin": { - "resolve": "bin/resolve" + "engines": { + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-resolve/node_modules/supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "node_modules/inquirer/node_modules/ora": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz", + "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==", "dev": true, "dependencies": { - "has-flag": "^4.0.0" + "bl": "^4.1.0", + "chalk": "^4.1.0", + "cli-cursor": "^3.1.0", + "cli-spinners": "^2.5.0", + "is-interactive": "^1.0.0", + "is-unicode-supported": "^0.1.0", + "log-symbols": "^4.1.0", + "strip-ansi": "^6.0.0", + "wcwidth": "^1.0.1" }, "engines": { "node": ">=10" }, "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-runner": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-27.5.1.tgz", - "integrity": "sha512-g4NPsM4mFCOwFKXO4p/H/kWGdJp9V8kURY2lX8Me2drgXqG7rrZAx5kv+5H7wtt/cdFIjhqYx1HrlqWHaOvDaQ==", + "node_modules/internal-slot": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.4.tgz", + "integrity": "sha512-tA8URYccNzMo94s5MQZgH8NB/XTa6HsOo0MLfXTKKEnHVVdegzaQoFZ7Jp44bdvLvY2waT5dc+j5ICEswhi7UQ==", "dev": true, "dependencies": { - "@jest/console": "^27.5.1", - "@jest/environment": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "emittery": "^0.8.1", - "graceful-fs": "^4.2.9", - "jest-docblock": "^27.5.1", - "jest-environment-jsdom": "^27.5.1", - "jest-environment-node": "^27.5.1", - "jest-haste-map": "^27.5.1", - "jest-leak-detector": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-runtime": "^27.5.1", - "jest-util": "^27.5.1", - "jest-worker": "^27.5.1", - "source-map-support": "^0.5.6", - "throat": "^6.0.1" + "get-intrinsic": "^1.1.3", + "has": "^1.0.3", + "side-channel": "^1.0.4" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">= 0.4" } }, - "node_modules/jest-runner/node_modules/@jest/transform": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz", - "integrity": "sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==", + "node_modules/interpret": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz", + "integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==", + "dev": true, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/ip": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.8.tgz", + "integrity": "sha512-PuExPYUiu6qMBQb4l06ecm6T6ujzhmh+MeJcW9wa89PoAz5pvd4zPgN5WJV104mb6S2T1AwNIAaB70JNrLQWhg==", + "dev": true + }, + "node_modules/is-array-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.1.tgz", + "integrity": "sha512-ASfLknmY8Xa2XtB4wmbz13Wu202baeA18cJBCeCy0wXUHZF0IPyVEXqKEcd+t2fNSLLL1vC6k7lxZEojNbISXQ==", "dev": true, "dependencies": { - "@babel/core": "^7.1.0", - "@jest/types": "^27.5.1", - "babel-plugin-istanbul": "^6.1.1", - "chalk": "^4.0.0", - "convert-source-map": "^1.4.0", - "fast-json-stable-stringify": "^2.0.0", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-util": "^27.5.1", - "micromatch": "^4.0.4", - "pirates": "^4.0.4", - "slash": "^3.0.0", - "source-map": "^0.6.1", - "write-file-atomic": "^3.0.0" + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.3", + "is-typed-array": "^1.1.10" }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-runner/node_modules/@jest/types": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", - "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", + "dev": true + }, + "node_modules/is-bigint": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", + "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", "dev": true, "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^16.0.0", - "chalk": "^4.0.0" + "has-bigints": "^1.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "dependencies": { + "binary-extensions": "^2.0.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=8" } }, - "node_modules/jest-runner/node_modules/@types/yargs": { - "version": "16.0.5", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", - "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "node_modules/is-boolean-object": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", + "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", "dev": true, "dependencies": { - "@types/yargs-parser": "*" + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-runner/node_modules/jest-haste-map": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", - "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", + "node_modules/is-builtin-module": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-3.2.0.tgz", + "integrity": "sha512-phDA4oSGt7vl1n5tJvTWooWWAsXLY+2xCnxNqvKhGEzujg+A43wPlPOyDg3C8XQHN+6k/JTQWJ/j0dQh/qr+Hw==", "dev": true, "dependencies": { - "@jest/types": "^27.5.1", - "@types/graceful-fs": "^4.1.2", - "@types/node": "*", - "anymatch": "^3.0.3", - "fb-watchman": "^2.0.0", - "graceful-fs": "^4.2.9", - "jest-regex-util": "^27.5.1", - "jest-serializer": "^27.5.1", - "jest-util": "^27.5.1", - "jest-worker": "^27.5.1", - "micromatch": "^4.0.4", - "walker": "^1.0.7" + "builtin-modules": "^3.3.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=6" }, - "optionalDependencies": { - "fsevents": "^2.3.2" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-runner/node_modules/jest-regex-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", - "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", + "node_modules/is-callable": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", "dev": true, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-runner/node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "node_modules/is-ci": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", + "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", "dev": true, "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" + "ci-info": "^2.0.0" }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "bin": { + "is-ci": "bin.js" } }, - "node_modules/jest-runner/node_modules/jest-worker": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", - "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "node_modules/is-ci/node_modules/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 + }, + "node_modules/is-core-module": { + "version": "2.13.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.0.tgz", + "integrity": "sha512-Z7dk6Qo8pOCp3l4tsX2C5ZVas4V+UxwQodwZhLopL91TX8UyyHEXafPcyoeeWuLrwzHcr3igO78wNLwHJHsMCQ==", "dev": true, "dependencies": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" + "has": "^1.0.3" }, - "engines": { - "node": ">= 10.13.0" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-runner/node_modules/supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "node_modules/is-date-object": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", "dev": true, "dependencies": { - "has-flag": "^4.0.0" + "has-tostringtag": "^1.0.0" }, "engines": { - "node": ">=10" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-runtime": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-27.5.1.tgz", - "integrity": "sha512-o7gxw3Gf+H2IGt8fv0RiyE1+r83FJBRruoA+FXrlHw6xEyBsU8ugA6IPfTdVyA0w8HClpbK+DGJxH59UrNMx8A==", + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", "dev": true, - "dependencies": { - "@jest/environment": "^27.5.1", - "@jest/fake-timers": "^27.5.1", - "@jest/globals": "^27.5.1", - "@jest/source-map": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "chalk": "^4.0.0", - "cjs-module-lexer": "^1.0.0", - "collect-v8-coverage": "^1.0.0", - "execa": "^5.0.0", - "glob": "^7.1.3", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-mock": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-snapshot": "^27.5.1", - "jest-util": "^27.5.1", - "slash": "^3.0.0", - "strip-bom": "^4.0.0" - }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=0.10.0" } }, - "node_modules/jest-runtime/node_modules/@jest/transform": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz", - "integrity": "sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==", + "node_modules/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", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true, - "dependencies": { - "@babel/core": "^7.1.0", - "@jest/types": "^27.5.1", - "babel-plugin-istanbul": "^6.1.1", - "chalk": "^4.0.0", - "convert-source-map": "^1.4.0", - "fast-json-stable-stringify": "^2.0.0", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-util": "^27.5.1", - "micromatch": "^4.0.4", - "pirates": "^4.0.4", - "slash": "^3.0.0", - "source-map": "^0.6.1", - "write-file-atomic": "^3.0.0" - }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=8" } }, - "node_modules/jest-runtime/node_modules/@jest/types": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", - "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "node_modules/is-generator-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", + "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==", "dev": true, - "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^16.0.0", - "chalk": "^4.0.0" - }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=6" } }, - "node_modules/jest-runtime/node_modules/@types/yargs": { - "version": "16.0.5", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", - "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", "dev": true, "dependencies": { - "@types/yargs-parser": "*" + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" } }, - "node_modules/jest-runtime/node_modules/jest-haste-map": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", - "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", + "node_modules/is-installed-globally": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.4.0.tgz", + "integrity": "sha512-iwGqO3J21aaSkC7jWnHP/difazwS7SFeIqxv6wEtLU8Y5KlzFTjyqcSIT0d8s4+dDhKytsk9PJZ2BkS5eZwQRQ==", "dev": true, "dependencies": { - "@jest/types": "^27.5.1", - "@types/graceful-fs": "^4.1.2", - "@types/node": "*", - "anymatch": "^3.0.3", - "fb-watchman": "^2.0.0", - "graceful-fs": "^4.2.9", - "jest-regex-util": "^27.5.1", - "jest-serializer": "^27.5.1", - "jest-util": "^27.5.1", - "jest-worker": "^27.5.1", - "micromatch": "^4.0.4", - "walker": "^1.0.7" + "global-dirs": "^3.0.0", + "is-path-inside": "^3.0.2" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=10" }, - "optionalDependencies": { - "fsevents": "^2.3.2" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-runtime/node_modules/jest-regex-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", - "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", + "node_modules/is-interactive": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz", + "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==", "dev": true, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=8" } }, - "node_modules/jest-runtime/node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "node_modules/is-negative-zero": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", + "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-runtime/node_modules/jest-worker": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", - "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", - "dev": true, - "dependencies": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" + "node": ">= 0.4" }, - "engines": { - "node": ">= 10.13.0" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-runtime/node_modules/supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "node_modules/is-npm": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-5.0.0.tgz", + "integrity": "sha512-WW/rQLOazUq+ST/bCAVBp/2oMERWLsR7OrKyt052dNDk4DHcDE0/7QSXITlmi+VBcV13DfIbysG3tZJm5RfdBA==", "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, "engines": { "node": ">=10" }, "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-serializer": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-27.5.1.tgz", - "integrity": "sha512-jZCyo6iIxO1aqUxpuBlwTDMkzOAJS4a3eYz3YzgxxVQFwLeSA7Jfq5cbqCY+JLvTDrWirgusI/0KwxKMgrdf7w==", + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", "dev": true, - "dependencies": { - "@types/node": "*", - "graceful-fs": "^4.2.9" - }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=0.12.0" } }, - "node_modules/jest-snapshot": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-27.5.1.tgz", - "integrity": "sha512-yYykXI5a0I31xX67mgeLw1DZ0bJB+gpq5IpSuCAoyDi0+BhgU/RIrL+RTzDmkNTchvDFWKP8lp+w/42Z3us5sA==", + "node_modules/is-number-object": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", + "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", "dev": true, "dependencies": { - "@babel/core": "^7.7.2", - "@babel/generator": "^7.7.2", - "@babel/plugin-syntax-typescript": "^7.7.2", - "@babel/traverse": "^7.7.2", - "@babel/types": "^7.0.0", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/babel__traverse": "^7.0.4", - "@types/prettier": "^2.1.5", - "babel-preset-current-node-syntax": "^1.0.0", - "chalk": "^4.0.0", - "expect": "^27.5.1", - "graceful-fs": "^4.2.9", - "jest-diff": "^27.5.1", - "jest-get-type": "^27.5.1", - "jest-haste-map": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-util": "^27.5.1", - "natural-compare": "^1.4.0", - "pretty-format": "^27.5.1", - "semver": "^7.3.2" + "has-tostringtag": "^1.0.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-snapshot/node_modules/@jest/transform": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz", - "integrity": "sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==", + "node_modules/is-obj": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", + "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", "dev": true, - "dependencies": { - "@babel/core": "^7.1.0", - "@jest/types": "^27.5.1", - "babel-plugin-istanbul": "^6.1.1", - "chalk": "^4.0.0", - "convert-source-map": "^1.4.0", - "fast-json-stable-stringify": "^2.0.0", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-util": "^27.5.1", - "micromatch": "^4.0.4", - "pirates": "^4.0.4", - "slash": "^3.0.0", - "source-map": "^0.6.1", - "write-file-atomic": "^3.0.0" - }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=8" } }, - "node_modules/jest-snapshot/node_modules/@jest/types": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", - "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "node_modules/is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", "dev": true, - "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^16.0.0", - "chalk": "^4.0.0" - }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=8" } }, - "node_modules/jest-snapshot/node_modules/@types/yargs": { - "version": "16.0.5", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", - "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "node_modules/is-plain-obj": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz", + "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==", "dev": true, - "dependencies": { - "@types/yargs-parser": "*" + "engines": { + "node": ">=8" } }, - "node_modules/jest-snapshot/node_modules/jest-haste-map": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", - "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", + "node_modules/is-plain-object": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", + "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "@types/graceful-fs": "^4.1.2", - "@types/node": "*", - "anymatch": "^3.0.3", - "fb-watchman": "^2.0.0", - "graceful-fs": "^4.2.9", - "jest-regex-util": "^27.5.1", - "jest-serializer": "^27.5.1", - "jest-util": "^27.5.1", - "jest-worker": "^27.5.1", - "micromatch": "^4.0.4", - "walker": "^1.0.7" - }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - }, - "optionalDependencies": { - "fsevents": "^2.3.2" + "node": ">=0.10.0" } }, - "node_modules/jest-snapshot/node_modules/jest-regex-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", - "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", - "dev": true, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } + "node_modules/is-potential-custom-element-name": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz", + "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==", + "dev": true }, - "node_modules/jest-snapshot/node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "node_modules/is-regex": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", "dev": true, "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-snapshot/node_modules/jest-worker": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", - "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "node_modules/is-shared-array-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", + "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", "dev": true, "dependencies": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" + "call-bind": "^1.0.2" }, - "engines": { - "node": ">= 10.13.0" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-snapshot/node_modules/supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, "engines": { - "node": ">=10" + "node": ">=8" }, "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-validate": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-27.5.1.tgz", - "integrity": "sha512-thkNli0LYTmOI1tDB3FI1S1RTp/Bqyd9pTarJwL87OIBFuqEb5Apv5EaApEudYg4g86e3CT6kM0RowkhtEnCBQ==", + "node_modules/is-string": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", + "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", "dev": true, "dependencies": { - "@jest/types": "^27.5.1", - "camelcase": "^6.2.0", - "chalk": "^4.0.0", - "jest-get-type": "^27.5.1", - "leven": "^3.1.0", - "pretty-format": "^27.5.1" + "has-tostringtag": "^1.0.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-validate/node_modules/@jest/types": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", - "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "node_modules/is-symbol": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", + "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", "dev": true, "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^16.0.0", - "chalk": "^4.0.0" + "has-symbols": "^1.0.2" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-validate/node_modules/@types/yargs": { - "version": "16.0.5", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", - "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "node_modules/is-typed-array": { + "version": "1.1.10", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.10.tgz", + "integrity": "sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A==", "dev": true, "dependencies": { - "@types/yargs-parser": "*" + "available-typed-arrays": "^1.0.5", + "call-bind": "^1.0.2", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-validate/node_modules/camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "node_modules/is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==", + "dev": true + }, + "node_modules/is-unicode-supported": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", + "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", "dev": true, "engines": { "node": ">=10" @@ -8236,1708 +8081,1817 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-watcher": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-27.5.1.tgz", - "integrity": "sha512-z676SuD6Z8o8qbmEGhoEUFOM1+jfEiL3DXHK/xgEiG2EyNYfFG60jluWcupY6dATjfEsKQuibReS1djInQnoVw==", + "node_modules/is-url": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/is-url/-/is-url-1.2.4.tgz", + "integrity": "sha512-ITvGim8FhRiYe4IQ5uHSkj7pVaPDrCTkNd3yq3cV7iZAcJdHTUMPMEHcqSOy9xZ9qFenQCvi+2wjH9a1nXqHww==", + "dev": true + }, + "node_modules/is-weakref": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", + "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", "dev": true, "dependencies": { - "@jest/test-result": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "ansi-escapes": "^4.2.1", - "chalk": "^4.0.0", - "jest-util": "^27.5.1", - "string-length": "^4.0.1" + "call-bind": "^1.0.2" }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-yarn-global": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/is-yarn-global/-/is-yarn-global-0.3.0.tgz", + "integrity": "sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw==", + "dev": true + }, + "node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "dev": true + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true + }, + "node_modules/istanbul-lib-coverage": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz", + "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==", + "dev": true, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=8" } }, - "node_modules/jest-watcher/node_modules/@jest/types": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", - "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "node_modules/istanbul-lib-instrument": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", + "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", "dev": true, "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^16.0.0", - "chalk": "^4.0.0" + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^6.3.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=8" } }, - "node_modules/jest-watcher/node_modules/@types/yargs": { - "version": "16.0.5", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", - "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "node_modules/istanbul-lib-instrument/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "dev": true, - "dependencies": { - "@types/yargs-parser": "*" + "bin": { + "semver": "bin/semver.js" } }, - "node_modules/jest-watcher/node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "node_modules/istanbul-lib-report": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", + "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==", "dev": true, "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" + "istanbul-lib-coverage": "^3.0.0", + "make-dir": "^4.0.0", + "supports-color": "^7.1.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=10" } }, - "node_modules/js-sdsl": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.3.0.tgz", - "integrity": "sha512-mifzlm2+5nZ+lEcLJMoBK0/IH/bDg8XnJfd/Wq6IP+xoCjLZsTOnV2QpxlVbX9bMnkl5PdEjNtBJ9Cj1NjifhQ==", + "node_modules/istanbul-lib-report/node_modules/make-dir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", + "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", "dev": true, + "dependencies": { + "semver": "^7.5.3" + }, + "engines": { + "node": ">=10" + }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/js-sdsl" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true + "node_modules/istanbul-lib-source-maps": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", + "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", + "dev": true, + "dependencies": { + "debug": "^4.1.1", + "istanbul-lib-coverage": "^3.0.0", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=10" + } }, - "node_modules/js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "node_modules/istanbul-reports": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.6.tgz", + "integrity": "sha512-TLgnMkKg3iTDsQ9PbPTdpfAK2DzjF9mqUG7RMgcQl8oFjad8ob4laGxv5XV5U9MAfx8D6tSJiUyuAwzLicaxlg==", "dev": true, "dependencies": { - "argparse": "^2.0.1" + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" }, - "bin": { - "js-yaml": "bin/js-yaml.js" + "engines": { + "node": ">=8" } }, - "node_modules/jsdom": { - "version": "16.7.0", - "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-16.7.0.tgz", - "integrity": "sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw==", + "node_modules/jest": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest/-/jest-27.5.1.tgz", + "integrity": "sha512-Yn0mADZB89zTtjkPJEXwrac3LHudkQMR+Paqa8uxJHCBr9agxztUifWCyiYrjhMPBoUVBjyny0I7XH6ozDr7QQ==", "dev": true, "dependencies": { - "abab": "^2.0.5", - "acorn": "^8.2.4", - "acorn-globals": "^6.0.0", - "cssom": "^0.4.4", - "cssstyle": "^2.3.0", - "data-urls": "^2.0.0", - "decimal.js": "^10.2.1", - "domexception": "^2.0.1", - "escodegen": "^2.0.0", - "form-data": "^3.0.0", - "html-encoding-sniffer": "^2.0.1", - "http-proxy-agent": "^4.0.1", - "https-proxy-agent": "^5.0.0", - "is-potential-custom-element-name": "^1.0.1", - "nwsapi": "^2.2.0", - "parse5": "6.0.1", - "saxes": "^5.0.1", - "symbol-tree": "^3.2.4", - "tough-cookie": "^4.0.0", - "w3c-hr-time": "^1.0.2", - "w3c-xmlserializer": "^2.0.0", - "webidl-conversions": "^6.1.0", - "whatwg-encoding": "^1.0.5", - "whatwg-mimetype": "^2.3.0", - "whatwg-url": "^8.5.0", - "ws": "^7.4.6", - "xml-name-validator": "^3.0.0" + "@jest/core": "^27.5.1", + "import-local": "^3.0.2", + "jest-cli": "^27.5.1" + }, + "bin": { + "jest": "bin/jest.js" }, "engines": { - "node": ">=10" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" }, "peerDependencies": { - "canvas": "^2.5.0" + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" }, "peerDependenciesMeta": { - "canvas": { + "node-notifier": { "optional": true } } }, - "node_modules/jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "node_modules/jest-changed-files": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-27.5.1.tgz", + "integrity": "sha512-buBLMiByfWGCoMsLLzGUUSpAmIAGnbR2KJoMN10ziLhOLvP4e0SlypHnAel8iqQXTrcbmfEY9sSqae5sgUsTvw==", "dev": true, - "bin": { - "jsesc": "bin/jsesc" + "dependencies": { + "@jest/types": "^27.5.1", + "execa": "^5.0.0", + "throat": "^6.0.1" }, "engines": { - "node": ">=4" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/json-buffer": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", - "integrity": "sha512-CuUqjv0FUZIdXkHPI8MezCnFCdaTAacej1TZYulLoAg1h/PhwkdXFN4V/gzY4g+fMBCOV2xF+rp7t2XD2ns/NQ==", - "dev": true - }, - "node_modules/json-parse-even-better-errors": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", - "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", - "dev": true - }, - "node_modules/json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" - }, - "node_modules/json-schema-typed": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/json-schema-typed/-/json-schema-typed-7.0.3.tgz", - "integrity": "sha512-7DE8mpG+/fVw+dTpjbxnx47TaMnDfOI1jwft9g1VybltZCduyRQPJPvc+zzKY9WPHxhPWczyFuYa6I8Mw4iU5A==" - }, - "node_modules/json-stable-stringify-without-jsonify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", - "dev": true - }, - "node_modules/json-typescript": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/json-typescript/-/json-typescript-1.1.2.tgz", - "integrity": "sha512-Np07MUsYMKbB0nNlw/MMIRjUK7ehO48LA4FsrzrhCfTUxMKbvOBAo0sc0b4nQ80ge9d32sModCunCgoyUojgUA==" - }, - "node_modules/json5": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", - "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "node_modules/jest-changed-files/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", "dev": true, - "bin": { - "json5": "lib/cli.js" + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" }, "engines": { - "node": ">=6" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/jsonapi-typescript": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/jsonapi-typescript/-/jsonapi-typescript-0.1.3.tgz", - "integrity": "sha512-uPcPS01GeM+4HIyn18s7l1yD2S3uLZy2TX1UkQffCM0bLb3TMwudXUyVXPHTMZ4vdZT8MqKqN2vjB5PogTAdFQ==", + "node_modules/jest-changed-files/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "dev": true, "dependencies": { - "json-typescript": "^1.0.0" + "@types/yargs-parser": "*" } }, - "node_modules/jspdf": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/jspdf/-/jspdf-2.5.1.tgz", - "integrity": "sha512-hXObxz7ZqoyhxET78+XR34Xu2qFGrJJ2I2bE5w4SM8eFaFEkW2xcGRVUss360fYelwRSid/jT078kbNvmoW0QA==", + "node_modules/jest-circus": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-27.5.1.tgz", + "integrity": "sha512-D95R7x5UtlMA5iBYsOHFFbMD/GVA4R/Kdq15f7xYWUfWHBto9NYRsOvnSauTgdF+ogCpJ4tyKOXhUifxS65gdw==", + "dev": true, "dependencies": { - "@babel/runtime": "^7.14.0", - "atob": "^2.1.2", - "btoa": "^1.2.1", - "fflate": "^0.4.8" + "@jest/environment": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "dedent": "^0.7.0", + "expect": "^27.5.1", + "is-generator-fn": "^2.0.0", + "jest-each": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "stack-utils": "^2.0.3", + "throat": "^6.0.1" }, - "optionalDependencies": { - "canvg": "^3.0.6", - "core-js": "^3.6.0", - "dompurify": "^2.2.0", - "html2canvas": "^1.0.0-rc.5" - } - }, - "node_modules/jspdf/node_modules/core-js": { - "version": "3.27.2", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.27.2.tgz", - "integrity": "sha512-9ashVQskuh5AZEZ1JdQWp1GqSoC1e1G87MzRqg2gIfVAQ7Qn9K+uFj8EcniUFA4P2NLZfV+TOlX1SzoKfo+s7w==", - "hasInstallScript": true, - "optional": true, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/core-js" + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/jsx-ast-utils": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.3.tgz", - "integrity": "sha512-fYQHZTZ8jSfmWZ0iyzfwiU4WDX4HpHbMCZ3gPlWYiCl3BoeOTsqKBqnTVfH2rYT7eP5c3sVbeSPHnnJOaTrWiw==", + "node_modules/jest-circus/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", "dev": true, "dependencies": { - "array-includes": "^3.1.5", - "object.assign": "^4.1.3" + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" }, "engines": { - "node": ">=4.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/jszip": { - "version": "3.10.1", - "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.10.1.tgz", - "integrity": "sha512-xXDvecyTpGLrqFrvkrUSoxxfJI5AH7U8zxxtVclpsUtMCq4JQ290LY8AW5c7Ggnr/Y/oK+bQMbqK2qmtk3pN4g==", + "node_modules/jest-circus/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", "dev": true, "dependencies": { - "lie": "~3.3.0", - "pako": "~1.0.2", - "readable-stream": "~2.3.6", - "setimmediate": "^1.0.5" + "@types/yargs-parser": "*" } }, - "node_modules/keyv": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz", - "integrity": "sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==", + "node_modules/jest-circus/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", "dev": true, "dependencies": { - "json-buffer": "3.0.0" + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/kleur": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", - "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", + "node_modules/jest-cli": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-27.5.1.tgz", + "integrity": "sha512-Hc6HOOwYq4/74/c62dEE3r5elx8wjYqxY0r0G/nFrLDPMFRu6RA/u8qINOIkvhxG7mMQ5EJsOGfRpI8L6eFUVw==", "dev": true, + "dependencies": { + "@jest/core": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "chalk": "^4.0.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "import-local": "^3.0.2", + "jest-config": "^27.5.1", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "prompts": "^2.0.1", + "yargs": "^16.2.0" + }, + "bin": { + "jest": "bin/jest.js" + }, "engines": { - "node": ">=6" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } } }, - "node_modules/latest-version": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-5.1.0.tgz", - "integrity": "sha512-weT+r0kTkRQdCdYCNtkMwWXQTMEswKrFBkm4ckQOMVhhqhIMI1UT2hMj+1iigIhgSZm5gTmrRXBNoGUgaTY1xA==", + "node_modules/jest-cli/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", "dev": true, "dependencies": { - "package-json": "^6.3.0" + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" }, "engines": { - "node": ">=8" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/leven": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", - "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", + "node_modules/jest-cli/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", "dev": true, - "engines": { - "node": ">=6" + "dependencies": { + "@types/yargs-parser": "*" } }, - "node_modules/levn": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", - "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "node_modules/jest-cli/node_modules/cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", "dev": true, "dependencies": { - "prelude-ls": "^1.2.1", - "type-check": "~0.4.0" + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } + }, + "node_modules/jest-cli/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" }, "engines": { - "node": ">= 0.8.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/lie": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/lie/-/lie-3.3.0.tgz", - "integrity": "sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ==", + "node_modules/jest-cli/node_modules/yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", "dev": true, "dependencies": { - "immediate": "~3.0.5" + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + }, + "engines": { + "node": ">=10" } }, - "node_modules/lilconfig": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.0.6.tgz", - "integrity": "sha512-9JROoBW7pobfsx+Sq2JsASvCo6Pfo6WWoUW79HuB1BCoBXD4PLWJPqDF6fNj67pqBYTbAHkE57M1kS/+L1neOg==", + "node_modules/jest-cli/node_modules/yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", "dev": true, "engines": { "node": ">=10" } }, - "node_modules/line-reader": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/line-reader/-/line-reader-0.2.4.tgz", - "integrity": "sha512-342xzyZZS9uTiKwHJcMacopVl/WjrMMCZS1Qg4Uhl/WBknWRrGFdKOIS1Kec6SaiTcZMtmuxWvvIbPXj/+FMjA==", - "dev": true - }, - "node_modules/lines-and-columns": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", - "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", - "dev": true - }, - "node_modules/load-json-file": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-6.2.0.tgz", - "integrity": "sha512-gUD/epcRms75Cw8RT1pUdHugZYM5ce64ucs2GEISABwkRsOQr0q2wm/MV2TKThycIe5e0ytRweW2RZxclogCdQ==", + "node_modules/jest-config": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-27.5.1.tgz", + "integrity": "sha512-5sAsjm6tGdsVbW9ahcChPAFCk4IlkQUknH5AvKjuLTSlcO/wCZKyFdn7Rg0EkC+OGgWODEy2hDpWB1PgzH0JNA==", "dev": true, "dependencies": { - "graceful-fs": "^4.1.15", - "parse-json": "^5.0.0", - "strip-bom": "^4.0.0", - "type-fest": "^0.6.0" + "@babel/core": "^7.8.0", + "@jest/test-sequencer": "^27.5.1", + "@jest/types": "^27.5.1", + "babel-jest": "^27.5.1", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "deepmerge": "^4.2.2", + "glob": "^7.1.1", + "graceful-fs": "^4.2.9", + "jest-circus": "^27.5.1", + "jest-environment-jsdom": "^27.5.1", + "jest-environment-node": "^27.5.1", + "jest-get-type": "^27.5.1", + "jest-jasmine2": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-runner": "^27.5.1", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "micromatch": "^4.0.4", + "parse-json": "^5.2.0", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "strip-json-comments": "^3.1.1" }, "engines": { - "node": ">=8" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "peerDependencies": { + "ts-node": ">=9.0.0" + }, + "peerDependenciesMeta": { + "ts-node": { + "optional": true + } } }, - "node_modules/load-json-file/node_modules/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==", + "node_modules/jest-config/node_modules/@jest/transform": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz", + "integrity": "sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==", "dev": true, + "dependencies": { + "@babel/core": "^7.1.0", + "@jest/types": "^27.5.1", + "babel-plugin-istanbul": "^6.1.1", + "chalk": "^4.0.0", + "convert-source-map": "^1.4.0", + "fast-json-stable-stringify": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-util": "^27.5.1", + "micromatch": "^4.0.4", + "pirates": "^4.0.4", + "slash": "^3.0.0", + "source-map": "^0.6.1", + "write-file-atomic": "^3.0.0" + }, "engines": { - "node": ">=8" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "node_modules/jest-config/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", "dev": true, "dependencies": { - "p-locate": "^5.0.0" + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", - "dev": true + "node_modules/jest-config/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "dev": true, + "dependencies": { + "@types/yargs-parser": "*" + } }, - "node_modules/lodash-es": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz", - "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==", - "peer": true - }, - "node_modules/lodash.isplainobject": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", - "integrity": "sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==", - "dev": true - }, - "node_modules/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 - }, - "node_modules/log-symbols": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-3.0.0.tgz", - "integrity": "sha512-dSkNGuI7iG3mfvDzUuYZyvk5dD9ocYCYzNU6CYDE6+Xqd+gwme6Z00NS3dUh8mq/73HaEtT7m6W+yUPtU6BZnQ==", + "node_modules/jest-config/node_modules/babel-jest": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-27.5.1.tgz", + "integrity": "sha512-cdQ5dXjGRd0IBRATiQ4mZGlGlRE8kJpjPOixdNRdT+m3UcNqmYWN6rK6nvtXYfY3D76cb8s/O1Ss8ea24PIwcg==", "dev": true, "dependencies": { - "chalk": "^2.4.2" + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/babel__core": "^7.1.14", + "babel-plugin-istanbul": "^6.1.1", + "babel-preset-jest": "^27.5.1", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "slash": "^3.0.0" }, "engines": { - "node": ">=8" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.8.0" } }, - "node_modules/log-symbols/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "node_modules/jest-config/node_modules/babel-plugin-jest-hoist": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.5.1.tgz", + "integrity": "sha512-50wCwD5EMNW4aRpOwtqzyZHIewTYNxLA4nhB+09d8BIssfNfzBRhkBIHiaPv1Si226TQSvp8gxAJm2iY2qs2hQ==", "dev": true, "dependencies": { - "color-convert": "^1.9.0" + "@babel/template": "^7.3.3", + "@babel/types": "^7.3.3", + "@types/babel__core": "^7.0.0", + "@types/babel__traverse": "^7.0.6" }, "engines": { - "node": ">=4" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/log-symbols/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "node_modules/jest-config/node_modules/babel-preset-jest": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-27.5.1.tgz", + "integrity": "sha512-Nptf2FzlPCWYuJg41HBqXVT8ym6bXOevuCTbhxlUpjwtysGaIWFvDEjp4y+G7fl13FgOdjs7P/DmErqH7da0Ag==", "dev": true, "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" + "babel-plugin-jest-hoist": "^27.5.1", + "babel-preset-current-node-syntax": "^1.0.0" }, "engines": { - "node": ">=4" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "node_modules/log-symbols/node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "node_modules/jest-config/node_modules/jest-haste-map": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", + "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", "dev": true, "dependencies": { - "color-name": "1.1.3" + "@jest/types": "^27.5.1", + "@types/graceful-fs": "^4.1.2", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^27.5.1", + "jest-serializer": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "micromatch": "^4.0.4", + "walker": "^1.0.7" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "optionalDependencies": { + "fsevents": "^2.3.2" } }, - "node_modules/log-symbols/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", - "dev": true - }, - "node_modules/log-symbols/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "node_modules/jest-config/node_modules/jest-regex-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", + "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", "dev": true, "engines": { - "node": ">=0.8.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/log-symbols/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "node_modules/jest-config/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, "engines": { - "node": ">=4" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/log-symbols/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "node_modules/jest-config/node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", "dev": true, "dependencies": { - "has-flag": "^3.0.0" + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" }, "engines": { - "node": ">=4" + "node": ">= 10.13.0" } }, - "node_modules/loose-envify": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", - "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "node_modules/jest-config/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", "dev": true, "dependencies": { - "js-tokens": "^3.0.0 || ^4.0.0" + "has-flag": "^4.0.0" }, - "bin": { - "loose-envify": "cli.js" + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" } }, - "node_modules/lowercase-keys": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", - "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", + "node_modules/jest-diff": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.5.1.tgz", + "integrity": "sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==", "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "diff-sequences": "^27.5.1", + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + }, "engines": { - "node": ">=0.10.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/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==", + "node_modules/jest-docblock": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-27.5.1.tgz", + "integrity": "sha512-rl7hlABeTsRYxKiUfpHrQrG4e2obOiTQWfMEH3PxPjOtdsfLQO4ReWSZaQ7DETm4xu07rl4q/h4zcKXyU0/OzQ==", "dev": true, "dependencies": { - "yallist": "^3.0.2" + "detect-newline": "^3.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "node_modules/jest-each": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-27.5.1.tgz", + "integrity": "sha512-1Ff6p+FbhT/bXQnEouYy00bkNSY7OUpfIcmdl8vZ31A1UUaurOLPA8a8BbJOF2RDUElwJhmeaV7LnagI+5UwNQ==", "dev": true, "dependencies": { - "semver": "^6.0.0" + "@jest/types": "^27.5.1", + "chalk": "^4.0.0", + "jest-get-type": "^27.5.1", + "jest-util": "^27.5.1", + "pretty-format": "^27.5.1" }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/make-dir/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "node_modules/jest-each/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", "dev": true, - "bin": { - "semver": "bin/semver.js" + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/make-error": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", - "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", - "dev": true - }, - "node_modules/makeerror": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", - "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", + "node_modules/jest-each/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", "dev": true, "dependencies": { - "tmpl": "1.0.5" + "@types/yargs-parser": "*" } }, - "node_modules/merge-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", - "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", - "dev": true - }, - "node_modules/merge2": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "node_modules/jest-each/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, "engines": { - "node": ">= 8" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/micromatch": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", - "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "node_modules/jest-environment-jsdom": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-27.5.1.tgz", + "integrity": "sha512-TFBvkTC1Hnnnrka/fUb56atfDtJ9VMZ94JkjTbggl1PEpwrYtUBKMezB3inLmWqQsXYLcMwNoDQwoBTAvFfsfw==", "dev": true, "dependencies": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" + "@jest/environment": "^27.5.1", + "@jest/fake-timers": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "jest-mock": "^27.5.1", + "jest-util": "^27.5.1", + "jsdom": "^16.6.0" }, "engines": { - "node": ">=8.6" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/mime": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-3.0.0.tgz", - "integrity": "sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==", + "node_modules/jest-environment-jsdom/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", "dev": true, - "bin": { - "mime": "cli.js" + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" }, "engines": { - "node": ">=10.0.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "node_modules/jest-environment-jsdom/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", "dev": true, - "engines": { - "node": ">= 0.6" + "dependencies": { + "@types/yargs-parser": "*" } }, - "node_modules/mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "node_modules/jest-environment-jsdom/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", "dev": true, "dependencies": { - "mime-db": "1.52.0" + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" }, "engines": { - "node": ">= 0.6" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "node_modules/jest-environment-node": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-27.5.1.tgz", + "integrity": "sha512-Jt4ZUnxdOsTGwSRAfKEnE6BcwsSPNOijjwifq5sDFSA2kesnXTvNqKHYgM0hDq3549Uf/KzdXNYn4wMZJPlFLw==", "dev": true, + "dependencies": { + "@jest/environment": "^27.5.1", + "@jest/fake-timers": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "jest-mock": "^27.5.1", + "jest-util": "^27.5.1" + }, "engines": { - "node": ">=6" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/mimic-response": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz", - "integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==", + "node_modules/jest-environment-node/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", "dev": true, - "engines": { - "node": ">=10" + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/min-indent": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", - "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", + "node_modules/jest-environment-node/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", "dev": true, - "engines": { - "node": ">=4" + "dependencies": { + "@types/yargs-parser": "*" } }, - "node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "node_modules/jest-environment-node/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", "dev": true, "dependencies": { - "brace-expansion": "^1.1.7" + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" }, "engines": { - "node": "*" - } - }, - "node_modules/minimist": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz", - "integrity": "sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==", - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/mkdirp-classic": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz", - "integrity": "sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==", - "dev": true - }, - "node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "node_modules/multimap": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/multimap/-/multimap-1.1.0.tgz", - "integrity": "sha512-0ZIR9PasPxGXmRsEF8jsDzndzHDj7tIav+JUmvIFB/WHswliFnquxECT/De7GR4yg99ky/NlRKJT82G1y271bw==", - "dev": true - }, - "node_modules/mute-stream": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", - "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", - "dev": true - }, - "node_modules/nanoid": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz", - "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==", + "node_modules/jest-get-type": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", + "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", "dev": true, - "bin": { - "nanoid": "bin/nanoid.cjs" - }, "engines": { - "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/natural-compare": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", - "dev": true - }, - "node_modules/natural-compare-lite": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz", - "integrity": "sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==", - "dev": true - }, - "node_modules/node-fetch": { - "version": "2.6.12", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.12.tgz", - "integrity": "sha512-C/fGU2E8ToujUivIO0H+tpQ6HWo4eEmchoPIoXtxCrVghxdKq+QOHqEZW7tuP3KlV3bC8FRMO5nMCC7Zm1VP6g==", + "node_modules/jest-haste-map": { + "version": "29.6.2", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-29.6.2.tgz", + "integrity": "sha512-+51XleTDAAysvU8rT6AnS1ZJ+WHVNqhj1k6nTvN2PYP+HjU3kqlaKQ1Lnw3NYW3bm2r8vq82X0Z1nDDHZMzHVA==", "dev": true, "dependencies": { - "whatwg-url": "^5.0.0" + "@jest/types": "^29.6.1", + "@types/graceful-fs": "^4.1.3", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^29.4.3", + "jest-util": "^29.6.2", + "jest-worker": "^29.6.2", + "micromatch": "^4.0.4", + "walker": "^1.0.8" }, "engines": { - "node": "4.x || >=6.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" }, - "peerDependencies": { - "encoding": "^0.1.0" - }, - "peerDependenciesMeta": { - "encoding": { - "optional": true - } + "optionalDependencies": { + "fsevents": "^2.3.2" } }, - "node_modules/node-fetch/node_modules/tr46": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", - "dev": true - }, - "node_modules/node-fetch/node_modules/webidl-conversions": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", - "dev": true - }, - "node_modules/node-fetch/node_modules/whatwg-url": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", - "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "node_modules/jest-jasmine2": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-27.5.1.tgz", + "integrity": "sha512-jtq7VVyG8SqAorDpApwiJJImd0V2wv1xzdheGHRGyuT7gZm6gG47QEskOlzsN1PG/6WNaCo5pmwMHDf3AkG2pQ==", "dev": true, "dependencies": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" - } - }, - "node_modules/node-int64": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", - "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==", - "dev": true - }, - "node_modules/node-releases": { - "version": "2.0.13", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.13.tgz", - "integrity": "sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==", - "dev": true - }, - "node_modules/normalize-package-data": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", - "dev": true, - "dependencies": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" + "@jest/environment": "^27.5.1", + "@jest/source-map": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "expect": "^27.5.1", + "is-generator-fn": "^2.0.0", + "jest-each": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "pretty-format": "^27.5.1", + "throat": "^6.0.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/normalize-package-data/node_modules/resolve": { - "version": "1.22.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", - "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", + "node_modules/jest-jasmine2/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", "dev": true, "dependencies": { - "is-core-module": "^2.9.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/normalize-package-data/node_modules/semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "node_modules/jest-jasmine2/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", "dev": true, - "bin": { - "semver": "bin/semver" + "dependencies": { + "@types/yargs-parser": "*" } }, - "node_modules/normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "node_modules/jest-jasmine2/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, "engines": { - "node": ">=0.10.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/normalize-range": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", - "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", + "node_modules/jest-leak-detector": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-27.5.1.tgz", + "integrity": "sha512-POXfWAMvfU6WMUXftV4HolnJfnPOGEu10fscNCA76KBpRRhcMN2c8d3iT2pxQS3HLbA+5X4sOUPzYO2NUyIlHQ==", "dev": true, + "dependencies": { + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + }, "engines": { - "node": ">=0.10.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/normalize-url": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.1.tgz", - "integrity": "sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==", + "node_modules/jest-matcher-utils": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz", + "integrity": "sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==", "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "jest-diff": "^27.5.1", + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + }, "engines": { - "node": ">=8" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/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==", + "node_modules/jest-message-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", + "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", "dev": true, "dependencies": { - "path-key": "^3.0.0" + "@babel/code-frame": "^7.12.13", + "@jest/types": "^27.5.1", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" }, "engines": { - "node": ">=8" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/nwsapi": { - "version": "2.2.7", - "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.7.tgz", - "integrity": "sha512-ub5E4+FBPKwAZx0UwIQOjYWGHTEq5sPqHQNRN8Z9e4A7u3Tj1weLJsL59yH9vmvqEtBHaOmT6cYQKIZOxp35FQ==", - "dev": true - }, - "node_modules/object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "node_modules/jest-message-util/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", "dev": true, + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + }, "engines": { - "node": ">=0.10.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/object-hash": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-2.2.0.tgz", - "integrity": "sha512-gScRMn0bS5fH+IuwyIFgnh9zBdo4DV+6GhygmWM9HyNJSgS0hScp1f5vjtm7oIIOiT9trXrShAkLFSc2IqKNgw==", + "node_modules/jest-message-util/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", "dev": true, - "engines": { - "node": ">= 6" + "dependencies": { + "@types/yargs-parser": "*" } }, - "node_modules/object-inspect": { - "version": "1.12.3", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.3.tgz", - "integrity": "sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==", + "node_modules/jest-mock": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-27.5.1.tgz", + "integrity": "sha512-K4jKbY1d4ENhbrG2zuPWaQBvDly+iZ2yAW+T1fATN78hc0sInwn7wZB8XtlNnvHug5RMwV897Xm4LqmPM4e2Og==", "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "node_modules/jest-mock/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", "dev": true, + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + }, "engines": { - "node": ">= 0.4" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/object.assign": { - "version": "4.1.4", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", - "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", + "node_modules/jest-mock/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "has-symbols": "^1.0.3", - "object-keys": "^1.1.1" - }, + "@types/yargs-parser": "*" + } + }, + "node_modules/jest-pnp-resolver": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", + "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==", + "dev": true, "engines": { - "node": ">= 0.4" + "node": ">=6" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "peerDependencies": { + "jest-resolve": "*" + }, + "peerDependenciesMeta": { + "jest-resolve": { + "optional": true + } } }, - "node_modules/object.entries": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.6.tgz", - "integrity": "sha512-leTPzo4Zvg3pmbQ3rDK69Rl8GQvIqMWubrkxONG9/ojtFE2rD9fjMKfSI5BxW3osRH1m6VdzmqK8oAY9aT4x5w==", + "node_modules/jest-regex-util": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-29.4.3.tgz", + "integrity": "sha512-O4FglZaMmWXbGHSQInfXewIsd1LMn9p3ZXB/6r4FOkyhX2/iP/soMG98jGvk/A3HAN78+5VWcBGO0BJAPRh4kg==", "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - }, "engines": { - "node": ">= 0.4" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/object.fromentries": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.6.tgz", - "integrity": "sha512-VciD13dswC4j1Xt5394WR4MzmAQmlgN72phd/riNp9vtD7tp4QQWJ0R4wvclXcafgcYK8veHRed2W6XeGBvcfg==", + "node_modules/jest-resolve": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-27.5.1.tgz", + "integrity": "sha512-FFDy8/9E6CV83IMbDpcjOhumAQPDyETnU2KZ1O98DwTnz8AOBsW/Xv3GySr1mOZdItLR+zDZ7I/UdTFbgSOVCw==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" + "@jest/types": "^27.5.1", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-pnp-resolver": "^1.2.2", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "resolve": "^1.20.0", + "resolve.exports": "^1.1.0", + "slash": "^3.0.0" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/object.hasown": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/object.hasown/-/object.hasown-1.1.2.tgz", - "integrity": "sha512-B5UIT3J1W+WuWIU55h0mjlwaqxiE5vYENJXIXZ4VFe05pNYrkKuK0U/6aFcb0pKywYJh7IhfoqUfKVmrJJHZHw==", + "node_modules/jest-resolve-dependencies": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-27.5.1.tgz", + "integrity": "sha512-QQOOdY4PE39iawDn5rzbIePNigfe5B9Z91GDD1ae/xNDlu9kaat8QQ5EKnNmVWPV54hUdxCVwwj6YMgR2O7IOg==", "dev": true, "dependencies": { - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" + "@jest/types": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-snapshot": "^27.5.1" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/object.values": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.6.tgz", - "integrity": "sha512-FVVTkD1vENCsAcwNs9k6jea2uHC/X0+JcjG8YA60FN5CMaJmG95wT9jek/xX9nornqGRrBkKtzuAu2wuHpKqvw==", + "node_modules/jest-resolve-dependencies/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "node_modules/jest-resolve-dependencies/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", "dev": true, "dependencies": { - "wrappy": "1" + "@types/yargs-parser": "*" } }, - "node_modules/onetime": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", - "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "node_modules/jest-resolve-dependencies/node_modules/jest-regex-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", + "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", "dev": true, - "dependencies": { - "mimic-fn": "^2.1.0" - }, "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/optionator": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", - "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", + "node_modules/jest-resolve/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", "dev": true, "dependencies": { - "deep-is": "^0.1.3", - "fast-levenshtein": "^2.0.6", - "levn": "^0.4.1", - "prelude-ls": "^1.2.1", - "type-check": "^0.4.0", - "word-wrap": "^1.2.3" + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" }, "engines": { - "node": ">= 0.8.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/ora": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ora/-/ora-4.1.1.tgz", - "integrity": "sha512-sjYP8QyVWBpBZWD6Vr1M/KwknSw6kJOz41tvGMlwWeClHBtYKTbHMki1PsLZnxKpXMPbTKv9b3pjQu3REib96A==", + "node_modules/jest-resolve/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", "dev": true, "dependencies": { - "chalk": "^3.0.0", - "cli-cursor": "^3.1.0", - "cli-spinners": "^2.2.0", - "is-interactive": "^1.0.0", - "log-symbols": "^3.0.0", - "mute-stream": "0.0.8", - "strip-ansi": "^6.0.0", - "wcwidth": "^1.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "@types/yargs-parser": "*" } }, - "node_modules/ora/node_modules/chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "node_modules/jest-resolve/node_modules/jest-haste-map": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", + "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", "dev": true, "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "@jest/types": "^27.5.1", + "@types/graceful-fs": "^4.1.2", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^27.5.1", + "jest-serializer": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "micromatch": "^4.0.4", + "walker": "^1.0.7" }, "engines": { - "node": ">=8" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "optionalDependencies": { + "fsevents": "^2.3.2" } }, - "node_modules/os-tmpdir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", + "node_modules/jest-resolve/node_modules/jest-regex-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", + "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", "dev": true, "engines": { - "node": ">=0.10.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/p-cancelable": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz", - "integrity": "sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==", + "node_modules/jest-resolve/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, "engines": { - "node": ">=6" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "node_modules/jest-resolve/node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", "dev": true, "dependencies": { - "yocto-queue": "^0.1.0" + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" }, "engines": { - "node": ">=10" + "node": ">= 10.13.0" + } + }, + "node_modules/jest-resolve/node_modules/resolve": { + "version": "1.22.4", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.4.tgz", + "integrity": "sha512-PXNdCiPqDqeUou+w1C2eTQbNfxKSuMxqTCuvlmmMsk1NWHL5fRrhY6Pl0qEYYc6+QqGClco1Qj8XnjPego4wfg==", + "dev": true, + "dependencies": { + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "node_modules/jest-resolve/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", "dev": true, "dependencies": { - "p-limit": "^3.0.2" + "has-flag": "^4.0.0" }, "engines": { "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/chalk/supports-color?sponsor=1" } }, - "node_modules/p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "node_modules/jest-runner": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-27.5.1.tgz", + "integrity": "sha512-g4NPsM4mFCOwFKXO4p/H/kWGdJp9V8kURY2lX8Me2drgXqG7rrZAx5kv+5H7wtt/cdFIjhqYx1HrlqWHaOvDaQ==", "dev": true, + "dependencies": { + "@jest/console": "^27.5.1", + "@jest/environment": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "emittery": "^0.8.1", + "graceful-fs": "^4.2.9", + "jest-docblock": "^27.5.1", + "jest-environment-jsdom": "^27.5.1", + "jest-environment-node": "^27.5.1", + "jest-haste-map": "^27.5.1", + "jest-leak-detector": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "source-map-support": "^0.5.6", + "throat": "^6.0.1" + }, "engines": { - "node": ">=6" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/package-json": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/package-json/-/package-json-6.5.0.tgz", - "integrity": "sha512-k3bdm2n25tkyxcjSKzB5x8kfVxlMdgsbPr0GkZcwHsLpba6cBjqCt1KlcChKEvxHIcTB1FVMuwoijZ26xex5MQ==", + "node_modules/jest-runner/node_modules/@jest/transform": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz", + "integrity": "sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==", "dev": true, "dependencies": { - "got": "^9.6.0", - "registry-auth-token": "^4.0.0", - "registry-url": "^5.0.0", - "semver": "^6.2.0" + "@babel/core": "^7.1.0", + "@jest/types": "^27.5.1", + "babel-plugin-istanbul": "^6.1.1", + "chalk": "^4.0.0", + "convert-source-map": "^1.4.0", + "fast-json-stable-stringify": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-util": "^27.5.1", + "micromatch": "^4.0.4", + "pirates": "^4.0.4", + "slash": "^3.0.0", + "source-map": "^0.6.1", + "write-file-atomic": "^3.0.0" }, "engines": { - "node": ">=8" - } - }, - "node_modules/package-json/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/pako": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", - "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==" - }, - "node_modules/parent-module": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", - "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "node_modules/jest-runner/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", "dev": true, "dependencies": { - "callsites": "^3.0.0" + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" }, "engines": { - "node": ">=6" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/parse-json": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", - "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "node_modules/jest-runner/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-even-better-errors": "^2.3.0", - "lines-and-columns": "^1.1.6" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/parse5": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", - "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", - "dev": true - }, - "node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true, - "engines": { - "node": ">=8" + "@types/yargs-parser": "*" } }, - "node_modules/path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true - }, - "node_modules/path-type": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", - "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "node_modules/jest-runner/node_modules/jest-haste-map": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", + "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/pdf-lib": { - "version": "1.17.1", - "resolved": "https://registry.npmjs.org/pdf-lib/-/pdf-lib-1.17.1.tgz", - "integrity": "sha512-V/mpyJAoTsN4cnP31vc0wfNA1+p20evqqnap0KLoRUN0Yk/p3wN52DOEsL4oBFcLdb76hlpKPtzJIgo67j/XLw==", "dependencies": { - "@pdf-lib/standard-fonts": "^1.0.0", - "@pdf-lib/upng": "^1.0.1", - "pako": "^1.0.11", - "tslib": "^1.11.1" - } - }, - "node_modules/pdf-lib/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, - "node_modules/pend": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", - "integrity": "sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==", - "dev": true - }, - "node_modules/performance-now": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==", - "optional": true - }, - "node_modules/picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", - "dev": true - }, - "node_modules/picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true, - "engines": { - "node": ">=8.6" + "@jest/types": "^27.5.1", + "@types/graceful-fs": "^4.1.2", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^27.5.1", + "jest-serializer": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "micromatch": "^4.0.4", + "walker": "^1.0.7" }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "node_modules/pify": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-5.0.0.tgz", - "integrity": "sha512-eW/gHNMlxdSP6dmG6uJip6FXN0EQBwm2clYYd8Wul42Cwu/DK8HEftzsapcNdYe2MfLiIwZqsDk2RDEsTE79hA==", - "dev": true, "engines": { - "node": ">=10" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "optionalDependencies": { + "fsevents": "^2.3.2" } }, - "node_modules/pirates": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", - "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==", + "node_modules/jest-runner/node_modules/jest-regex-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", + "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", "dev": true, "engines": { - "node": ">= 6" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/pkg-dir": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", - "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "node_modules/jest-runner/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", "dev": true, "dependencies": { - "find-up": "^4.0.0" + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" }, "engines": { - "node": ">=8" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/pkg-dir/node_modules/find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "node_modules/jest-runner/node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", "dev": true, "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" }, "engines": { - "node": ">=8" + "node": ">= 10.13.0" } }, - "node_modules/pkg-dir/node_modules/locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "node_modules/jest-runner/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", "dev": true, "dependencies": { - "p-locate": "^4.1.0" + "has-flag": "^4.0.0" }, "engines": { - "node": ">=8" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" } }, - "node_modules/pkg-dir/node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "node_modules/jest-runtime": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-27.5.1.tgz", + "integrity": "sha512-o7gxw3Gf+H2IGt8fv0RiyE1+r83FJBRruoA+FXrlHw6xEyBsU8ugA6IPfTdVyA0w8HClpbK+DGJxH59UrNMx8A==", "dev": true, "dependencies": { - "p-try": "^2.0.0" + "@jest/environment": "^27.5.1", + "@jest/fake-timers": "^27.5.1", + "@jest/globals": "^27.5.1", + "@jest/source-map": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "chalk": "^4.0.0", + "cjs-module-lexer": "^1.0.0", + "collect-v8-coverage": "^1.0.0", + "execa": "^5.0.0", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-mock": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "slash": "^3.0.0", + "strip-bom": "^4.0.0" }, "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/pkg-dir/node_modules/p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "node_modules/jest-runtime/node_modules/@jest/transform": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz", + "integrity": "sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==", "dev": true, "dependencies": { - "p-limit": "^2.2.0" + "@babel/core": "^7.1.0", + "@jest/types": "^27.5.1", + "babel-plugin-istanbul": "^6.1.1", + "chalk": "^4.0.0", + "convert-source-map": "^1.4.0", + "fast-json-stable-stringify": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-util": "^27.5.1", + "micromatch": "^4.0.4", + "pirates": "^4.0.4", + "slash": "^3.0.0", + "source-map": "^0.6.1", + "write-file-atomic": "^3.0.0" }, "engines": { - "node": ">=8" - } - }, - "node_modules/pluralize": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-8.0.0.tgz", - "integrity": "sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==", - "dev": true, - "engines": { - "node": ">=4" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/postcss": { - "version": "8.4.21", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.21.tgz", - "integrity": "sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg==", + "node_modules/jest-runtime/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/postcss" - } - ], "dependencies": { - "nanoid": "^3.3.4", - "picocolors": "^1.0.0", - "source-map-js": "^1.0.2" + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" }, "engines": { - "node": "^10 || ^12 || >=14" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/postcss-js": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-js/-/postcss-js-4.0.0.tgz", - "integrity": "sha512-77QESFBwgX4irogGVPgQ5s07vLvFqWr228qZY+w6lW599cRlK/HmnlivnnVUxkjHnCu4J16PDMHcH+e+2HbvTQ==", + "node_modules/jest-runtime/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", "dev": true, "dependencies": { - "camelcase-css": "^2.0.1" - }, - "engines": { - "node": "^12 || ^14 || >= 16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - "peerDependencies": { - "postcss": "^8.3.3" + "@types/yargs-parser": "*" } }, - "node_modules/postcss-load-config": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-3.1.4.tgz", - "integrity": "sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==", + "node_modules/jest-runtime/node_modules/jest-haste-map": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", + "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", "dev": true, "dependencies": { - "lilconfig": "^2.0.5", - "yaml": "^1.10.2" + "@jest/types": "^27.5.1", + "@types/graceful-fs": "^4.1.2", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^27.5.1", + "jest-serializer": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "micromatch": "^4.0.4", + "walker": "^1.0.7" }, "engines": { - "node": ">= 10" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - "peerDependencies": { - "postcss": ">=8.0.9", - "ts-node": ">=9.0.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" }, - "peerDependenciesMeta": { - "postcss": { - "optional": true - }, - "ts-node": { - "optional": true - } + "optionalDependencies": { + "fsevents": "^2.3.2" } }, - "node_modules/postcss-nested": { - "version": "5.0.6", - "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-5.0.6.tgz", - "integrity": "sha512-rKqm2Fk0KbA8Vt3AdGN0FB9OBOMDVajMG6ZCf/GoHgdxUJ4sBFp0A/uMIRm+MJUdo33YXEtjqIz8u7DAp8B7DA==", + "node_modules/jest-runtime/node_modules/jest-regex-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", + "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", "dev": true, - "dependencies": { - "postcss-selector-parser": "^6.0.6" - }, "engines": { - "node": ">=12.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - "peerDependencies": { - "postcss": "^8.2.14" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/postcss-selector-parser": { - "version": "6.0.11", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.11.tgz", - "integrity": "sha512-zbARubNdogI9j7WY4nQJBiNqQf3sLS3wCP4WfOidu+p28LofJqDH1tcXypGrcmMHhDk2t9wGhCsYe/+szLTy1g==", + "node_modules/jest-runtime/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", "dev": true, "dependencies": { - "cssesc": "^3.0.0", - "util-deprecate": "^1.0.2" + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" }, "engines": { - "node": ">=4" - } - }, - "node_modules/postcss-value-parser": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", - "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", - "dev": true - }, - "node_modules/prelude-ls": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", - "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", - "dev": true, - "engines": { - "node": ">= 0.8.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/prepend-http": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", - "integrity": "sha512-ravE6m9Atw9Z/jjttRUZ+clIXogdghyZAuWJ3qEzjT+jI/dL1ifAqhZeC5VHzQp1MSt1+jxKkFNemj/iO7tVUA==", + "node_modules/jest-runtime/node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", "dev": true, + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, "engines": { - "node": ">=4" + "node": ">= 10.13.0" } }, - "node_modules/prettier": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.4.1.tgz", - "integrity": "sha512-9fbDAXSBcc6Bs1mZrDYb3XKzDLm4EXXL9sC1LqKP5rZkT6KRr/rf9amVUcODVXgguK/isJz0d0hP72WeaKWsvA==", + "node_modules/jest-runtime/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", "dev": true, - "bin": { - "prettier": "bin-prettier.js" + "dependencies": { + "has-flag": "^4.0.0" }, "engines": { - "node": ">=10.13.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" } }, - "node_modules/prettier-linter-helpers": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz", - "integrity": "sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==", + "node_modules/jest-serializer": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-27.5.1.tgz", + "integrity": "sha512-jZCyo6iIxO1aqUxpuBlwTDMkzOAJS4a3eYz3YzgxxVQFwLeSA7Jfq5cbqCY+JLvTDrWirgusI/0KwxKMgrdf7w==", "dev": true, "dependencies": { - "fast-diff": "^1.1.2" + "@types/node": "*", + "graceful-fs": "^4.2.9" }, "engines": { - "node": ">=6.0.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/pretty-format": { + "node_modules/jest-snapshot": { "version": "27.5.1", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", - "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", + "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-27.5.1.tgz", + "integrity": "sha512-yYykXI5a0I31xX67mgeLw1DZ0bJB+gpq5IpSuCAoyDi0+BhgU/RIrL+RTzDmkNTchvDFWKP8lp+w/42Z3us5sA==", "dev": true, "dependencies": { - "ansi-regex": "^5.0.1", - "ansi-styles": "^5.0.0", - "react-is": "^17.0.1" + "@babel/core": "^7.7.2", + "@babel/generator": "^7.7.2", + "@babel/plugin-syntax-typescript": "^7.7.2", + "@babel/traverse": "^7.7.2", + "@babel/types": "^7.0.0", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/babel__traverse": "^7.0.4", + "@types/prettier": "^2.1.5", + "babel-preset-current-node-syntax": "^1.0.0", + "chalk": "^4.0.0", + "expect": "^27.5.1", + "graceful-fs": "^4.2.9", + "jest-diff": "^27.5.1", + "jest-get-type": "^27.5.1", + "jest-haste-map": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-util": "^27.5.1", + "natural-compare": "^1.4.0", + "pretty-format": "^27.5.1", + "semver": "^7.3.2" }, "engines": { "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/pretty-format/node_modules/ansi-styles": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", - "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "node_modules/jest-snapshot/node_modules/@jest/transform": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz", + "integrity": "sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==", "dev": true, - "engines": { - "node": ">=10" + "dependencies": { + "@babel/core": "^7.1.0", + "@jest/types": "^27.5.1", + "babel-plugin-istanbul": "^6.1.1", + "chalk": "^4.0.0", + "convert-source-map": "^1.4.0", + "fast-json-stable-stringify": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-util": "^27.5.1", + "micromatch": "^4.0.4", + "pirates": "^4.0.4", + "slash": "^3.0.0", + "source-map": "^0.6.1", + "write-file-atomic": "^3.0.0" }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", - "dev": true - }, - "node_modules/progress": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", - "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", + "node_modules/jest-snapshot/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", "dev": true, + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + }, "engines": { - "node": ">=0.4.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/progress-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/progress-stream/-/progress-stream-2.0.0.tgz", - "integrity": "sha512-xJwOWR46jcXUq6EH9yYyqp+I52skPySOeHfkxOZ2IY1AiBi/sFJhbhAKHoV3OTw/omQ45KTio9215dRJ2Yxd3Q==", + "node_modules/jest-snapshot/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", "dev": true, "dependencies": { - "speedometer": "~1.0.0", - "through2": "~2.0.3" + "@types/yargs-parser": "*" } }, - "node_modules/prompts": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", - "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", + "node_modules/jest-snapshot/node_modules/jest-haste-map": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", + "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", "dev": true, "dependencies": { - "kleur": "^3.0.3", - "sisteransi": "^1.0.5" + "@jest/types": "^27.5.1", + "@types/graceful-fs": "^4.1.2", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^27.5.1", + "jest-serializer": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "micromatch": "^4.0.4", + "walker": "^1.0.7" }, "engines": { - "node": ">= 6" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "optionalDependencies": { + "fsevents": "^2.3.2" } }, - "node_modules/prop-types": { - "version": "15.8.1", - "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", - "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", + "node_modules/jest-snapshot/node_modules/jest-regex-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", + "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", "dev": true, - "dependencies": { - "loose-envify": "^1.4.0", - "object-assign": "^4.1.1", - "react-is": "^16.13.1" + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/prop-types/node_modules/react-is": { - "version": "16.13.1", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", - "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", - "dev": true - }, - "node_modules/proxy-from-env": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", - "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==", - "dev": true - }, - "node_modules/psl": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", - "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==", - "dev": true - }, - "node_modules/pump": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", - "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "node_modules/jest-snapshot/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", "dev": true, "dependencies": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/pumpify": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/pumpify/-/pumpify-2.0.1.tgz", - "integrity": "sha512-m7KOje7jZxrmutanlkS1daj1dS6z6BgslzOXmcSEpIlCxM3VJH7lG5QLeck/6hgF6F4crFf01UtQmNsJfweTAw==", + "node_modules/jest-snapshot/node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", "dev": true, "dependencies": { - "duplexify": "^4.1.1", - "inherits": "^2.0.3", - "pump": "^3.0.0" - } - }, - "node_modules/punycode": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", - "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==", + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, "engines": { - "node": ">=6" + "node": ">= 10.13.0" } }, - "node_modules/pupa": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/pupa/-/pupa-2.1.1.tgz", - "integrity": "sha512-l1jNAspIBSFqbT+y+5FosojNpVpF94nlI+wDUpqP9enwOTfHx9f0gh5nB96vl+6yTpsJsypeNrwfzPrKuHB41A==", + "node_modules/jest-snapshot/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", "dev": true, "dependencies": { - "escape-goat": "^2.0.0" + "has-flag": "^4.0.0" }, "engines": { - "node": ">=8" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" } }, - "node_modules/puppeteer": { - "version": "13.7.0", - "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-13.7.0.tgz", - "integrity": "sha512-U1uufzBjz3+PkpCxFrWzh4OrMIdIb2ztzCu0YEPfRHjHswcSwHZswnK+WdsOQJsRV8WeTg3jLhJR4D867+fjsA==", - "deprecated": "< 19.4.0 is no longer supported", + "node_modules/jest-util": { + "version": "29.6.2", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.6.2.tgz", + "integrity": "sha512-3eX1qb6L88lJNCFlEADKOkjpXJQyZRiavX1INZ4tRnrBVr2COd3RgcTLyUiEXMNBlDU/cgYq6taUS0fExrWW4w==", "dev": true, - "hasInstallScript": true, "dependencies": { - "cross-fetch": "3.1.5", - "debug": "4.3.4", - "devtools-protocol": "0.0.981744", - "extract-zip": "2.0.1", - "https-proxy-agent": "5.0.1", - "pkg-dir": "4.2.0", - "progress": "2.0.3", - "proxy-from-env": "1.1.0", - "rimraf": "3.0.2", - "tar-fs": "2.1.1", - "unbzip2-stream": "1.4.3", - "ws": "8.5.0" + "@jest/types": "^29.6.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" }, "engines": { - "node": ">=10.18.1" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/puppeteer/node_modules/ws": { - "version": "8.5.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.5.0.tgz", - "integrity": "sha512-BWX0SWVgLPzYwF8lTzEy1egjhS4S4OEAHfsO8o65WOVsrnSRGaSiUaa9e0ggGlkMTtBlmOpEXiie9RUcBO86qg==", + "node_modules/jest-validate": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-27.5.1.tgz", + "integrity": "sha512-thkNli0LYTmOI1tDB3FI1S1RTp/Bqyd9pTarJwL87OIBFuqEb5Apv5EaApEudYg4g86e3CT6kM0RowkhtEnCBQ==", "dev": true, - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": "^5.0.2" + "dependencies": { + "@jest/types": "^27.5.1", + "camelcase": "^6.2.0", + "chalk": "^4.0.0", + "jest-get-type": "^27.5.1", + "leven": "^3.1.0", + "pretty-format": "^27.5.1" }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/querystringify": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", - "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==", - "dev": true - }, - "node_modules/queue-microtask": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", - "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "node_modules/jest-validate/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } }, - "node_modules/quick-lru": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz", - "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==", + "node_modules/jest-validate/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "dev": true, + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/jest-validate/node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", "dev": true, "engines": { "node": ">=10" @@ -9946,1161 +9900,1281 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/raf": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/raf/-/raf-3.4.1.tgz", - "integrity": "sha512-Sq4CW4QhwOHE8ucn6J34MqtZCeWFP2aQSmrlroYgqAV1PjStIhJXxYuTgUIfkEk7zTLjmIjLmU5q+fbD1NnOJA==", - "optional": true, - "dependencies": { - "performance-now": "^2.1.0" - } - }, - "node_modules/rc": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", - "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", + "node_modules/jest-watcher": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-27.5.1.tgz", + "integrity": "sha512-z676SuD6Z8o8qbmEGhoEUFOM1+jfEiL3DXHK/xgEiG2EyNYfFG60jluWcupY6dATjfEsKQuibReS1djInQnoVw==", "dev": true, "dependencies": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "jest-util": "^27.5.1", + "string-length": "^4.0.1" }, - "bin": { - "rc": "cli.js" - } - }, - "node_modules/rc/node_modules/ini": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", - "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", - "dev": true - }, - "node_modules/rc/node_modules/strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==", - "dev": true, "engines": { - "node": ">=0.10.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/react": { - "version": "18.2.0", - "resolved": "https://registry.npmjs.org/react/-/react-18.2.0.tgz", - "integrity": "sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==", + "node_modules/jest-watcher/node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", "dev": true, "dependencies": { - "loose-envify": "^1.1.0" + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" }, "engines": { - "node": ">=0.10.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/react-is": { - "version": "17.0.2", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", - "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", - "dev": true + "node_modules/jest-watcher/node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "dev": true, + "dependencies": { + "@types/yargs-parser": "*" + } }, - "node_modules/read": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/read/-/read-1.0.7.tgz", - "integrity": "sha512-rSOKNYUmaxy0om1BNjMN4ezNT6VKK+2xF4GBhc81mkH7L60i6dp8qPYrkndNLT3QPphoII3maL9PVC9XmhHwVQ==", + "node_modules/jest-watcher/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", "dev": true, "dependencies": { - "mute-stream": "~0.0.4" + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" }, "engines": { - "node": ">=0.8" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/read-pkg": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", - "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", + "node_modules/jest-worker": { + "version": "29.6.2", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.6.2.tgz", + "integrity": "sha512-l3ccBOabTdkng8I/ORCkADz4eSMKejTYv1vB/Z83UiubqhC1oQ5Li6dWCyqOIvSifGjUBxuvxvlm6KGK2DtuAQ==", "dev": true, "dependencies": { - "@types/normalize-package-data": "^2.4.0", - "normalize-package-data": "^2.5.0", - "parse-json": "^5.0.0", - "type-fest": "^0.6.0" + "@types/node": "*", + "jest-util": "^29.6.2", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" }, "engines": { - "node": ">=8" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/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==", + "node_modules/jest-worker/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", "dev": true, "dependencies": { - "find-up": "^4.1.0", - "read-pkg": "^5.2.0", - "type-fest": "^0.8.1" + "has-flag": "^4.0.0" }, "engines": { - "node": ">=8" + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/chalk/supports-color?sponsor=1" } }, - "node_modules/read-pkg-up/node_modules/find-up": { + "node_modules/js-sdsl": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.3.0.tgz", + "integrity": "sha512-mifzlm2+5nZ+lEcLJMoBK0/IH/bDg8XnJfd/Wq6IP+xoCjLZsTOnV2QpxlVbX9bMnkl5PdEjNtBJ9Cj1NjifhQ==", + "dev": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/js-sdsl" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true + }, + "node_modules/js-yaml": { "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", "dev": true, "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" + "argparse": "^2.0.1" }, - "engines": { - "node": ">=8" + "bin": { + "js-yaml": "bin/js-yaml.js" } }, - "node_modules/read-pkg-up/node_modules/locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "node_modules/jsdom": { + "version": "16.7.0", + "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-16.7.0.tgz", + "integrity": "sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw==", "dev": true, "dependencies": { - "p-locate": "^4.1.0" + "abab": "^2.0.5", + "acorn": "^8.2.4", + "acorn-globals": "^6.0.0", + "cssom": "^0.4.4", + "cssstyle": "^2.3.0", + "data-urls": "^2.0.0", + "decimal.js": "^10.2.1", + "domexception": "^2.0.1", + "escodegen": "^2.0.0", + "form-data": "^3.0.0", + "html-encoding-sniffer": "^2.0.1", + "http-proxy-agent": "^4.0.1", + "https-proxy-agent": "^5.0.0", + "is-potential-custom-element-name": "^1.0.1", + "nwsapi": "^2.2.0", + "parse5": "6.0.1", + "saxes": "^5.0.1", + "symbol-tree": "^3.2.4", + "tough-cookie": "^4.0.0", + "w3c-hr-time": "^1.0.2", + "w3c-xmlserializer": "^2.0.0", + "webidl-conversions": "^6.1.0", + "whatwg-encoding": "^1.0.5", + "whatwg-mimetype": "^2.3.0", + "whatwg-url": "^8.5.0", + "ws": "^7.4.6", + "xml-name-validator": "^3.0.0" }, "engines": { - "node": ">=8" + "node": ">=10" + }, + "peerDependencies": { + "canvas": "^2.5.0" + }, + "peerDependenciesMeta": { + "canvas": { + "optional": true + } } }, - "node_modules/read-pkg-up/node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", "dev": true, - "dependencies": { - "p-try": "^2.0.0" + "bin": { + "jsesc": "bin/jsesc" }, "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=4" } }, - "node_modules/read-pkg-up/node_modules/p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "node_modules/json-buffer": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", + "integrity": "sha512-CuUqjv0FUZIdXkHPI8MezCnFCdaTAacej1TZYulLoAg1h/PhwkdXFN4V/gzY4g+fMBCOV2xF+rp7t2XD2ns/NQ==", + "dev": true + }, + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "dev": true + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" + }, + "node_modules/json-schema-typed": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/json-schema-typed/-/json-schema-typed-7.0.3.tgz", + "integrity": "sha512-7DE8mpG+/fVw+dTpjbxnx47TaMnDfOI1jwft9g1VybltZCduyRQPJPvc+zzKY9WPHxhPWczyFuYa6I8Mw4iU5A==" + }, + "node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", + "dev": true + }, + "node_modules/json-typescript": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/json-typescript/-/json-typescript-1.1.2.tgz", + "integrity": "sha512-Np07MUsYMKbB0nNlw/MMIRjUK7ehO48LA4FsrzrhCfTUxMKbvOBAo0sc0b4nQ80ge9d32sModCunCgoyUojgUA==" + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", "dev": true, - "dependencies": { - "p-limit": "^2.2.0" + "bin": { + "json5": "lib/cli.js" }, "engines": { - "node": ">=8" + "node": ">=6" } }, - "node_modules/read-pkg-up/node_modules/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, - "engines": { - "node": ">=8" + "node_modules/jsonapi-typescript": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/jsonapi-typescript/-/jsonapi-typescript-0.1.3.tgz", + "integrity": "sha512-uPcPS01GeM+4HIyn18s7l1yD2S3uLZy2TX1UkQffCM0bLb3TMwudXUyVXPHTMZ4vdZT8MqKqN2vjB5PogTAdFQ==", + "dependencies": { + "json-typescript": "^1.0.0" } }, - "node_modules/read-pkg/node_modules/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==", + "node_modules/jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", "dev": true, - "engines": { - "node": ">=8" + "optionalDependencies": { + "graceful-fs": "^4.1.6" } }, - "node_modules/readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, + "node_modules/jspdf": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/jspdf/-/jspdf-2.5.1.tgz", + "integrity": "sha512-hXObxz7ZqoyhxET78+XR34Xu2qFGrJJ2I2bE5w4SM8eFaFEkW2xcGRVUss360fYelwRSid/jT078kbNvmoW0QA==", "dependencies": { - "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" + "@babel/runtime": "^7.14.0", + "atob": "^2.1.2", + "btoa": "^1.2.1", + "fflate": "^0.4.8" + }, + "optionalDependencies": { + "canvg": "^3.0.6", + "core-js": "^3.6.0", + "dompurify": "^2.2.0", + "html2canvas": "^1.0.0-rc.5" } }, - "node_modules/readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "node_modules/jspdf/node_modules/core-js": { + "version": "3.27.2", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.27.2.tgz", + "integrity": "sha512-9ashVQskuh5AZEZ1JdQWp1GqSoC1e1G87MzRqg2gIfVAQ7Qn9K+uFj8EcniUFA4P2NLZfV+TOlX1SzoKfo+s7w==", + "hasInstallScript": true, + "optional": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/jsx-ast-utils": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.3.tgz", + "integrity": "sha512-fYQHZTZ8jSfmWZ0iyzfwiU4WDX4HpHbMCZ3gPlWYiCl3BoeOTsqKBqnTVfH2rYT7eP5c3sVbeSPHnnJOaTrWiw==", "dev": true, "dependencies": { - "picomatch": "^2.2.1" + "array-includes": "^3.1.5", + "object.assign": "^4.1.3" }, "engines": { - "node": ">=8.10.0" + "node": ">=4.0" } }, - "node_modules/rechoir": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", - "integrity": "sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw==", + "node_modules/jszip": { + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.10.1.tgz", + "integrity": "sha512-xXDvecyTpGLrqFrvkrUSoxxfJI5AH7U8zxxtVclpsUtMCq4JQ290LY8AW5c7Ggnr/Y/oK+bQMbqK2qmtk3pN4g==", "dev": true, "dependencies": { - "resolve": "^1.1.6" - }, - "engines": { - "node": ">= 0.10" + "lie": "~3.3.0", + "pako": "~1.0.2", + "readable-stream": "~2.3.6", + "setimmediate": "^1.0.5" } }, - "node_modules/rechoir/node_modules/resolve": { - "version": "1.22.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", - "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", + "node_modules/keyv": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz", + "integrity": "sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==", "dev": true, "dependencies": { - "is-core-module": "^2.9.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "json-buffer": "3.0.0" } }, - "node_modules/regexp-tree": { - "version": "0.1.24", - "resolved": "https://registry.npmjs.org/regexp-tree/-/regexp-tree-0.1.24.tgz", - "integrity": "sha512-s2aEVuLhvnVJW6s/iPgEGK6R+/xngd2jNQ+xy4bXNDKxZKJH6jpPHY6kVeVv1IeLCHgswRj+Kl3ELaDjG6V1iw==", + "node_modules/kleur": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", + "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", "dev": true, - "bin": { - "regexp-tree": "bin/regexp-tree" + "engines": { + "node": ">=6" } }, - "node_modules/regexp.prototype.flags": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz", - "integrity": "sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==", + "node_modules/latest-version": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-5.1.0.tgz", + "integrity": "sha512-weT+r0kTkRQdCdYCNtkMwWXQTMEswKrFBkm4ckQOMVhhqhIMI1UT2hMj+1iigIhgSZm5gTmrRXBNoGUgaTY1xA==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "functions-have-names": "^1.2.2" + "package-json": "^6.3.0" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=8" } }, - "node_modules/regexpp": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", - "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", + "node_modules/leven": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", + "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", "dev": true, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/mysticatea" + "node": ">=6" } }, - "node_modules/registry-auth-token": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.2.2.tgz", - "integrity": "sha512-PC5ZysNb42zpFME6D/XlIgtNGdTl8bBOCw90xQLVMpzuuubJKYDWFAEuUNc+Cn8Z8724tg2SDhDRrkVEsqfDMg==", + "node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", "dev": true, "dependencies": { - "rc": "1.2.8" + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" }, "engines": { - "node": ">=6.0.0" + "node": ">= 0.8.0" } }, - "node_modules/registry-url": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-5.1.0.tgz", - "integrity": "sha512-8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw==", + "node_modules/lie": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/lie/-/lie-3.3.0.tgz", + "integrity": "sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ==", "dev": true, "dependencies": { - "rc": "^1.2.8" - }, - "engines": { - "node": ">=8" + "immediate": "~3.0.5" } }, - "node_modules/remove-markdown": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/remove-markdown/-/remove-markdown-0.2.2.tgz", - "integrity": "sha512-jwgEf3Yh/xi4WodWi/vPlasa9C9pMv1kz5ITOIAGjBW7PeZ/CHZCdBfJzQnn2VX2cBvf1xCuJv0tUJqn/FCMNA==", - "dev": true - }, - "node_modules/require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "node_modules/lilconfig": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.0.6.tgz", + "integrity": "sha512-9JROoBW7pobfsx+Sq2JsASvCo6Pfo6WWoUW79HuB1BCoBXD4PLWJPqDF6fNj67pqBYTbAHkE57M1kS/+L1neOg==", "dev": true, "engines": { - "node": ">=0.10.0" + "node": ">=10" } }, - "node_modules/requires-port": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", - "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==", + "node_modules/line-reader": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/line-reader/-/line-reader-0.2.4.tgz", + "integrity": "sha512-342xzyZZS9uTiKwHJcMacopVl/WjrMMCZS1Qg4Uhl/WBknWRrGFdKOIS1Kec6SaiTcZMtmuxWvvIbPXj/+FMjA==", "dev": true }, - "node_modules/resolve": { - "version": "2.0.0-next.4", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.4.tgz", - "integrity": "sha512-iMDbmAWtfU+MHpxt/I5iWI7cY6YVEZUQ3MBgPQ++XD1PELuJHIl82xBmObyP2KyQmkNB2dsqF7seoQQiAn5yDQ==", - "dev": true, - "dependencies": { - "is-core-module": "^2.9.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", + "dev": true }, - "node_modules/resolve-cwd": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", - "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", + "node_modules/load-json-file": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-6.2.0.tgz", + "integrity": "sha512-gUD/epcRms75Cw8RT1pUdHugZYM5ce64ucs2GEISABwkRsOQr0q2wm/MV2TKThycIe5e0ytRweW2RZxclogCdQ==", "dev": true, "dependencies": { - "resolve-from": "^5.0.0" + "graceful-fs": "^4.1.15", + "parse-json": "^5.0.0", + "strip-bom": "^4.0.0", + "type-fest": "^0.6.0" }, "engines": { "node": ">=8" } }, - "node_modules/resolve-cwd/node_modules/resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "node_modules/load-json-file/node_modules/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, "engines": { "node": ">=8" } }, - "node_modules/resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", "dev": true, + "dependencies": { + "p-locate": "^5.0.0" + }, "engines": { - "node": ">=4" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/resolve.exports": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-1.1.1.tgz", - "integrity": "sha512-/NtpHNDN7jWhAaQ9BvBUYZ6YTXsRBgfqWFWP7BZBaoMJO/I3G5OFzvTuWNlZC3aPjins1F+TNrLKsGbH4rfsRQ==", + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true + }, + "node_modules/lodash-es": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz", + "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==", + "peer": true + }, + "node_modules/lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", + "dev": true + }, + "node_modules/lodash.isplainobject": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", + "integrity": "sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==", + "dev": true + }, + "node_modules/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 + }, + "node_modules/log-symbols": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-3.0.0.tgz", + "integrity": "sha512-dSkNGuI7iG3mfvDzUuYZyvk5dD9ocYCYzNU6CYDE6+Xqd+gwme6Z00NS3dUh8mq/73HaEtT7m6W+yUPtU6BZnQ==", "dev": true, + "dependencies": { + "chalk": "^2.4.2" + }, "engines": { - "node": ">=10" + "node": ">=8" } }, - "node_modules/responselike": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz", - "integrity": "sha512-/Fpe5guzJk1gPqdJLJR5u7eG/gNY4nImjbRDaVWVMRhne55TCmj2i9Q+54PBRfatRC8v/rIiv9BN0pMd9OV5EQ==", + "node_modules/log-symbols/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", "dev": true, "dependencies": { - "lowercase-keys": "^1.0.0" + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" } }, - "node_modules/restore-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", - "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "node_modules/log-symbols/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", "dev": true, "dependencies": { - "onetime": "^5.1.0", - "signal-exit": "^3.0.2" + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" }, "engines": { - "node": ">=8" + "node": ">=4" } }, - "node_modules/reusify": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", - "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "node_modules/log-symbols/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/log-symbols/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "node_modules/log-symbols/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", "dev": true, "engines": { - "iojs": ">=1.0.0", - "node": ">=0.10.0" + "node": ">=0.8.0" } }, - "node_modules/rgbcolor": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/rgbcolor/-/rgbcolor-1.0.1.tgz", - "integrity": "sha512-9aZLIrhRaD97sgVhtJOW6ckOEh6/GnvQtdVNfdZ6s67+3/XwLS9lBcQYzEEhYVeUowN7pRzMLsyGhK2i/xvWbw==", - "optional": true, + "node_modules/log-symbols/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, "engines": { - "node": ">= 0.8.15" + "node": ">=4" } }, - "node_modules/rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "node_modules/log-symbols/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", "dev": true, "dependencies": { - "glob": "^7.1.3" + "has-flag": "^3.0.0" }, - "bin": { - "rimraf": "bin.js" + "engines": { + "node": ">=4" + } + }, + "node_modules/loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "dev": true, + "dependencies": { + "js-tokens": "^3.0.0 || ^4.0.0" }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "bin": { + "loose-envify": "cli.js" } }, - "node_modules/run-async": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", - "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", + "node_modules/lowercase-keys": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", + "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", "dev": true, "engines": { - "node": ">=0.12.0" + "node": ">=0.10.0" } }, - "node_modules/run-parallel": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", - "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "node_modules/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, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], "dependencies": { - "queue-microtask": "^1.2.2" + "yallist": "^3.0.2" } }, - "node_modules/rxjs": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.0.tgz", - "integrity": "sha512-F2+gxDshqmIub1KdvZkaEfGDwLNpPvk9Fs6LD/MyQxNgMds/WH9OdDDXOmxUZpME+iSK3rQCctkL0DYyytUqMg==", + "node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", "dev": true, "dependencies": { - "tslib": "^2.1.0" + "semver": "^6.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "node_modules/make-dir/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/make-error": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", + "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", "dev": true }, - "node_modules/safe-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-2.1.1.tgz", - "integrity": "sha512-rx+x8AMzKb5Q5lQ95Zoi6ZbJqwCLkqi3XuJXp5P3rT8OEc6sZCJG5AE5dU3lsgRr/F4Bs31jSlVN+j5KrsGu9A==", + "node_modules/makeerror": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", + "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", "dev": true, "dependencies": { - "regexp-tree": "~0.1.1" + "tmpl": "1.0.5" } }, - "node_modules/safe-regex-test": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz", - "integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==", + "node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.3", - "is-regex": "^1.1.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">= 8" } }, - "node_modules/safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "dev": true - }, - "node_modules/saxes": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/saxes/-/saxes-5.0.1.tgz", - "integrity": "sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==", + "node_modules/micromatch": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", + "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", "dev": true, "dependencies": { - "xmlchars": "^2.2.0" + "braces": "^3.0.2", + "picomatch": "^2.3.1" }, "engines": { - "node": ">=10" + "node": ">=8.6" } }, - "node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "node_modules/mime": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-3.0.0.tgz", + "integrity": "sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==", "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, "bin": { - "semver": "bin/semver.js" + "mime": "cli.js" }, "engines": { - "node": ">=10" + "node": ">=10.0.0" } }, - "node_modules/semver-diff": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-3.1.1.tgz", - "integrity": "sha512-GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg==", + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", "dev": true, "dependencies": { - "semver": "^6.3.0" + "mime-db": "1.52.0" }, "engines": { - "node": ">=8" + "node": ">= 0.6" } }, - "node_modules/semver-diff/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", "dev": true, - "bin": { - "semver": "bin/semver.js" + "engines": { + "node": ">=6" } }, - "node_modules/semver/node_modules/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==", + "node_modules/mimic-response": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz", + "integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/min-indent": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", + "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", "dev": true, "dependencies": { - "yallist": "^4.0.0" + "brace-expansion": "^1.1.7" }, "engines": { - "node": ">=10" + "node": "*" } }, - "node_modules/semver/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "node_modules/minimist": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz", + "integrity": "sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/mitt": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/mitt/-/mitt-3.0.1.tgz", + "integrity": "sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw==", "dev": true }, - "node_modules/setimmediate": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", - "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==", + "node_modules/mkdirp-classic": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz", + "integrity": "sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==", "dev": true }, - "node_modules/shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/multimap": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/multimap/-/multimap-1.1.0.tgz", + "integrity": "sha512-0ZIR9PasPxGXmRsEF8jsDzndzHDj7tIav+JUmvIFB/WHswliFnquxECT/De7GR4yg99ky/NlRKJT82G1y271bw==", + "dev": true + }, + "node_modules/mute-stream": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", + "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", + "dev": true + }, + "node_modules/nanoid": { + "version": "3.3.4", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz", + "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==", "dev": true, - "dependencies": { - "shebang-regex": "^3.0.0" + "bin": { + "nanoid": "bin/nanoid.cjs" }, "engines": { - "node": ">=8" + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" } }, - "node_modules/shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "dev": true + }, + "node_modules/natural-compare-lite": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz", + "integrity": "sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==", + "dev": true + }, + "node_modules/netmask": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/netmask/-/netmask-2.0.2.tgz", + "integrity": "sha512-dBpDMdxv9Irdq66304OLfEmQ9tbNRFnFTuZiLo+bD+r332bBmMJ8GBLXklIXXgxd3+v9+KUnZaUR5PJMa75Gsg==", "dev": true, "engines": { - "node": ">=8" + "node": ">= 0.4.0" } }, - "node_modules/shelljs": { - "version": "0.8.5", - "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.8.5.tgz", - "integrity": "sha512-TiwcRcrkhHvbrZbnRcFYMLl30Dfov3HKqzp5tO5b4pt6G/SezKcYhmDg15zXVBswHmctSAQKznqNW2LO5tTDow==", + "node_modules/node-fetch": { + "version": "2.6.12", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.12.tgz", + "integrity": "sha512-C/fGU2E8ToujUivIO0H+tpQ6HWo4eEmchoPIoXtxCrVghxdKq+QOHqEZW7tuP3KlV3bC8FRMO5nMCC7Zm1VP6g==", "dev": true, "dependencies": { - "glob": "^7.0.0", - "interpret": "^1.0.0", - "rechoir": "^0.6.2" - }, - "bin": { - "shjs": "bin/shjs" + "whatwg-url": "^5.0.0" }, "engines": { - "node": ">=4" + "node": "4.x || >=6.0.0" + }, + "peerDependencies": { + "encoding": "^0.1.0" + }, + "peerDependenciesMeta": { + "encoding": { + "optional": true + } } }, - "node_modules/side-channel": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", - "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "node_modules/node-fetch/node_modules/tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", + "dev": true + }, + "node_modules/node-fetch/node_modules/webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", + "dev": true + }, + "node_modules/node-fetch/node_modules/whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", "dev": true, "dependencies": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" } }, - "node_modules/signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "node_modules/node-int64": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", + "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==", "dev": true }, - "node_modules/simple-concat": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz", - "integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/simple-get": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-4.0.1.tgz", - "integrity": "sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "dependencies": { - "decompress-response": "^6.0.0", - "once": "^1.3.1", - "simple-concat": "^1.0.0" - } - }, - "node_modules/simple-swizzle": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz", - "integrity": "sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==", - "peer": true, - "dependencies": { - "is-arrayish": "^0.3.1" - } - }, - "node_modules/simple-swizzle/node_modules/is-arrayish": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz", - "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==", - "peer": true - }, - "node_modules/sisteransi": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", - "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", + "node_modules/node-releases": { + "version": "2.0.13", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.13.tgz", + "integrity": "sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==", "dev": true }, - "node_modules/slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "node_modules/normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", "dev": true, - "engines": { - "node": ">=8" + "dependencies": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" } }, - "node_modules/sort-keys": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-4.2.0.tgz", - "integrity": "sha512-aUYIEU/UviqPgc8mHR6IW1EGxkAXpeRETYcrzg8cLAvUPZcpAlleSXHV2mY7G12GphSH6Gzv+4MMVSSkbdteHg==", + "node_modules/normalize-package-data/node_modules/resolve": { + "version": "1.22.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", + "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", "dev": true, "dependencies": { - "is-plain-obj": "^2.0.0" + "is-core-module": "^2.9.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" }, - "engines": { - "node": ">=8" + "bin": { + "resolve": "bin/resolve" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/sortablejs": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/sortablejs/-/sortablejs-1.15.0.tgz", - "integrity": "sha512-bv9qgVMjUMf89wAvM6AxVvS/4MX3sPeN0+agqShejLU5z5GX4C75ow1O2e5k4L6XItUyAK3gH6AxSbXrOM5e8w==", - "peer": true + "node_modules/normalize-package-data/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true, + "bin": { + "semver": "bin/semver" + } }, - "node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", "dev": true, "engines": { "node": ">=0.10.0" } }, - "node_modules/source-map-js": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", - "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", + "node_modules/normalize-range": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", + "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", "dev": true, "engines": { "node": ">=0.10.0" } }, - "node_modules/source-map-support": { - "version": "0.5.21", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", - "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "node_modules/normalize-url": { + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.1.tgz", + "integrity": "sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==", "dev": true, - "dependencies": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" + "engines": { + "node": ">=8" } }, - "node_modules/spdx-correct": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", - "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", + "node_modules/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, "dependencies": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" + "path-key": "^3.0.0" + }, + "engines": { + "node": ">=8" } }, - "node_modules/spdx-exceptions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", - "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", + "node_modules/nwsapi": { + "version": "2.2.7", + "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.7.tgz", + "integrity": "sha512-ub5E4+FBPKwAZx0UwIQOjYWGHTEq5sPqHQNRN8Z9e4A7u3Tj1weLJsL59yH9vmvqEtBHaOmT6cYQKIZOxp35FQ==", "dev": true }, - "node_modules/spdx-expression-parse": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", - "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", "dev": true, - "dependencies": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" + "engines": { + "node": ">=0.10.0" } }, - "node_modules/spdx-license-ids": { - "version": "3.0.12", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.12.tgz", - "integrity": "sha512-rr+VVSXtRhO4OHbXUiAF7xW3Bo9DuuF6C5jH+q/x15j2jniycgKbxU09Hr0WqlSLUs4i4ltHGXqTe7VHclYWyA==", - "dev": true - }, - "node_modules/speedometer": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/speedometer/-/speedometer-1.0.0.tgz", - "integrity": "sha512-lgxErLl/7A5+vgIIXsh9MbeukOaCb2axgQ+bKCdIE+ibNT4XNYGNCR1qFEGq6F+YDASXK3Fh/c5FgtZchFolxw==", - "dev": true - }, - "node_modules/sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", - "dev": true - }, - "node_modules/stack-utils": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", - "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", + "node_modules/object-hash": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-2.2.0.tgz", + "integrity": "sha512-gScRMn0bS5fH+IuwyIFgnh9zBdo4DV+6GhygmWM9HyNJSgS0hScp1f5vjtm7oIIOiT9trXrShAkLFSc2IqKNgw==", "dev": true, - "dependencies": { - "escape-string-regexp": "^2.0.0" - }, "engines": { - "node": ">=10" + "node": ">= 6" } }, - "node_modules/stack-utils/node_modules/escape-string-regexp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", - "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", + "node_modules/object-inspect": { + "version": "1.12.3", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.3.tgz", + "integrity": "sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==", "dev": true, - "engines": { - "node": ">=8" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/stackblur-canvas": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/stackblur-canvas/-/stackblur-canvas-2.5.0.tgz", - "integrity": "sha512-EeNzTVfj+1In7aSLPKDD03F/ly4RxEuF/EX0YcOG0cKoPXs+SLZxDawQbexQDBzwROs4VKLWTOaZQlZkGBFEIQ==", - "optional": true, + "node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "dev": true, "engines": { - "node": ">=0.1.14" + "node": ">= 0.4" } }, - "node_modules/stencil-eslint-core": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/stencil-eslint-core/-/stencil-eslint-core-0.3.1.tgz", - "integrity": "sha512-z1yp1+Qzr6C/X4RgaCt0egDu5CsIrZzMCr9eGMmQTnSU1leVbSJB5aoI/KWv8qe8k7b1LCit46Ff3udRJ96Lfw==", + "node_modules/object.assign": { + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", + "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", "dev": true, "dependencies": { - "eslint-utils": "~3.0.0", - "tsutils": "~3.21.0" + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "has-symbols": "^1.0.3", + "object-keys": "^1.1.1" }, "engines": { - "node": ">=8.9.0" + "node": ">= 0.4" }, - "peerDependencies": { - "@typescript-eslint/parser": "^5.8.0", - "eslint": "^8" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/stream-shift": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz", - "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==", - "dev": true - }, - "node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "dependencies": { - "safe-buffer": "~5.1.0" - } - }, - "node_modules/string-length": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz", - "integrity": "sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==", + "node_modules/object.entries": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.6.tgz", + "integrity": "sha512-leTPzo4Zvg3pmbQ3rDK69Rl8GQvIqMWubrkxONG9/ojtFE2rD9fjMKfSI5BxW3osRH1m6VdzmqK8oAY9aT4x5w==", "dev": true, "dependencies": { - "char-regex": "^1.0.2", - "strip-ansi": "^6.0.0" + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" }, "engines": { - "node": ">=10" + "node": ">= 0.4" } }, - "node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "node_modules/object.fromentries": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.6.tgz", + "integrity": "sha512-VciD13dswC4j1Xt5394WR4MzmAQmlgN72phd/riNp9vtD7tp4QQWJ0R4wvclXcafgcYK8veHRed2W6XeGBvcfg==", "dev": true, "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" }, "engines": { - "node": ">=8" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/string.prototype.matchall": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.8.tgz", - "integrity": "sha512-6zOCOcJ+RJAQshcTvXPHoxoQGONa3e/Lqx90wUA+wEzX78sg5Bo+1tQo4N0pohS0erG9qtCqJDjNCQBjeWVxyg==", + "node_modules/object.hasown": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/object.hasown/-/object.hasown-1.1.2.tgz", + "integrity": "sha512-B5UIT3J1W+WuWIU55h0mjlwaqxiE5vYENJXIXZ4VFe05pNYrkKuK0U/6aFcb0pKywYJh7IhfoqUfKVmrJJHZHw==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", "define-properties": "^1.1.4", - "es-abstract": "^1.20.4", - "get-intrinsic": "^1.1.3", - "has-symbols": "^1.0.3", - "internal-slot": "^1.0.3", - "regexp.prototype.flags": "^1.4.3", - "side-channel": "^1.0.4" + "es-abstract": "^1.20.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/string.prototype.trimend": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz", - "integrity": "sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==", + "node_modules/object.values": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.6.tgz", + "integrity": "sha512-FVVTkD1vENCsAcwNs9k6jea2uHC/X0+JcjG8YA60FN5CMaJmG95wT9jek/xX9nornqGRrBkKtzuAu2wuHpKqvw==", "dev": true, "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.4", "es-abstract": "^1.20.4" }, + "engines": { + "node": ">= 0.4" + }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/string.prototype.trimstart": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.6.tgz", - "integrity": "sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==", + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" + "wrappy": "1" + } + }, + "node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dev": true, + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "node_modules/optionator": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", + "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", "dev": true, "dependencies": { - "ansi-regex": "^5.0.1" + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0", + "word-wrap": "^1.2.3" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/ora": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ora/-/ora-4.1.1.tgz", + "integrity": "sha512-sjYP8QyVWBpBZWD6Vr1M/KwknSw6kJOz41tvGMlwWeClHBtYKTbHMki1PsLZnxKpXMPbTKv9b3pjQu3REib96A==", + "dev": true, + "dependencies": { + "chalk": "^3.0.0", + "cli-cursor": "^3.1.0", + "cli-spinners": "^2.2.0", + "is-interactive": "^1.0.0", + "log-symbols": "^3.0.0", + "mute-stream": "0.0.8", + "strip-ansi": "^6.0.0", + "wcwidth": "^1.0.1" }, "engines": { "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/strip-bom": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", - "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", + "node_modules/ora/node_modules/chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, "engines": { "node": ">=8" } }, - "node_modules/strip-final-newline": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", - "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "node_modules/os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/p-cancelable": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz", + "integrity": "sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==", "dev": true, "engines": { "node": ">=6" } }, - "node_modules/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==", + "node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", "dev": true, "dependencies": { - "min-indent": "^1.0.0" + "yocto-queue": "^0.1.0" }, "engines": { - "node": ">=8" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/strip-json-comments": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", - "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", "dev": true, + "dependencies": { + "p-limit": "^3.0.2" + }, "engines": { - "node": ">=8" + "node": ">=10" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/strnum": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/strnum/-/strnum-1.0.5.tgz", - "integrity": "sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA==" + "node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true, + "engines": { + "node": ">=6" + } }, - "node_modules/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==", + "node_modules/pac-proxy-agent": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/pac-proxy-agent/-/pac-proxy-agent-7.0.0.tgz", + "integrity": "sha512-t4tRAMx0uphnZrio0S0Jw9zg3oDbz1zVhQ/Vy18FjLfP1XOLNUEjaVxYCYRI6NS+BsMBXKIzV6cTLOkO9AtywA==", "dev": true, "dependencies": { - "has-flag": "^4.0.0" + "@tootallnate/quickjs-emscripten": "^0.23.0", + "agent-base": "^7.0.2", + "debug": "^4.3.4", + "get-uri": "^6.0.1", + "http-proxy-agent": "^7.0.0", + "https-proxy-agent": "^7.0.0", + "pac-resolver": "^7.0.0", + "socks-proxy-agent": "^8.0.1" }, "engines": { - "node": ">=8" + "node": ">= 14" } }, - "node_modules/supports-hyperlinks": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.3.0.tgz", - "integrity": "sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA==", + "node_modules/pac-proxy-agent/node_modules/agent-base": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.0.tgz", + "integrity": "sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg==", "dev": true, "dependencies": { - "has-flag": "^4.0.0", - "supports-color": "^7.0.0" + "debug": "^4.3.4" }, "engines": { - "node": ">=8" + "node": ">= 14" } }, - "node_modules/supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "node_modules/pac-proxy-agent/node_modules/http-proxy-agent": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.0.tgz", + "integrity": "sha512-+ZT+iBxVUQ1asugqnD6oWoRiS25AkjNfG085dKJGtGxkdwLQrMKU5wJr2bOOFAXzKcTuqq+7fZlTMgG3SRfIYQ==", "dev": true, + "dependencies": { + "agent-base": "^7.1.0", + "debug": "^4.3.4" + }, "engines": { - "node": ">= 0.4" + "node": ">= 14" + } + }, + "node_modules/pac-proxy-agent/node_modules/https-proxy-agent": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.1.tgz", + "integrity": "sha512-Eun8zV0kcYS1g19r78osiQLEFIRspRUDd9tIfBCTBPBeMieF/EsJNL8VI3xOIdYRDEkjQnqOYPsZ2DsWsVsFwQ==", + "dev": true, + "dependencies": { + "agent-base": "^7.0.2", + "debug": "4" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">= 14" } }, - "node_modules/svg-pathdata": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/svg-pathdata/-/svg-pathdata-6.0.3.tgz", - "integrity": "sha512-qsjeeq5YjBZ5eMdFuUa4ZosMLxgr5RZ+F+Y1OrDhuOCEInRMA3x74XdBtggJcj9kOeInz0WE+LgCPDkZFlBYJw==", - "optional": true, + "node_modules/pac-resolver": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/pac-resolver/-/pac-resolver-7.0.0.tgz", + "integrity": "sha512-Fd9lT9vJbHYRACT8OhCbZBbxr6KRSawSovFpy8nDGshaK99S/EBhVIHp9+crhxrsZOuvLpgL1n23iyPg6Rl2hg==", + "dev": true, + "dependencies": { + "degenerator": "^5.0.0", + "ip": "^1.1.8", + "netmask": "^2.0.2" + }, "engines": { - "node": ">=12.0.0" + "node": ">= 14" } }, - "node_modules/symbol-tree": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", - "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==", - "dev": true - }, - "node_modules/tabbable": { - "version": "6.1.2", - "resolved": "https://registry.npmjs.org/tabbable/-/tabbable-6.1.2.tgz", - "integrity": "sha512-qCN98uP7i9z0fIS4amQ5zbGBOq+OSigYeGvPy7NDk8Y9yncqDZ9pRPgfsc2PJIVM9RrJj7GIfuRgmjoUU9zTHQ==" - }, - "node_modules/tailwindcss": { - "version": "3.0.23", - "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.0.23.tgz", - "integrity": "sha512-+OZOV9ubyQ6oI2BXEhzw4HrqvgcARY38xv3zKcjnWtMIZstEsXdI9xftd1iB7+RbOnj2HOEzkA0OyB5BaSxPQA==", + "node_modules/package-json": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/package-json/-/package-json-6.5.0.tgz", + "integrity": "sha512-k3bdm2n25tkyxcjSKzB5x8kfVxlMdgsbPr0GkZcwHsLpba6cBjqCt1KlcChKEvxHIcTB1FVMuwoijZ26xex5MQ==", "dev": true, "dependencies": { - "arg": "^5.0.1", - "chalk": "^4.1.2", - "chokidar": "^3.5.3", - "color-name": "^1.1.4", - "cosmiconfig": "^7.0.1", - "detective": "^5.2.0", - "didyoumean": "^1.2.2", - "dlv": "^1.1.3", - "fast-glob": "^3.2.11", - "glob-parent": "^6.0.2", - "is-glob": "^4.0.3", - "normalize-path": "^3.0.0", - "object-hash": "^2.2.0", - "postcss": "^8.4.6", - "postcss-js": "^4.0.0", - "postcss-load-config": "^3.1.0", - "postcss-nested": "5.0.6", - "postcss-selector-parser": "^6.0.9", - "postcss-value-parser": "^4.2.0", - "quick-lru": "^5.1.1", - "resolve": "^1.22.0" - }, - "bin": { - "tailwind": "lib/cli.js", - "tailwindcss": "lib/cli.js" + "got": "^9.6.0", + "registry-auth-token": "^4.0.0", + "registry-url": "^5.0.0", + "semver": "^6.2.0" }, "engines": { - "node": ">=12.13.0" - }, - "peerDependencies": { - "autoprefixer": "^10.0.2", - "postcss": "^8.0.9" + "node": ">=8" } }, - "node_modules/tailwindcss/node_modules/resolve": { - "version": "1.22.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", - "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", + "node_modules/package-json/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", "dev": true, - "dependencies": { - "is-core-module": "^2.9.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, "bin": { - "resolve": "bin/resolve" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "semver": "bin/semver.js" } }, - "node_modules/tar-fs": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.1.tgz", - "integrity": "sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==", - "dev": true, - "dependencies": { - "chownr": "^1.1.1", - "mkdirp-classic": "^0.5.2", - "pump": "^3.0.0", - "tar-stream": "^2.1.4" - } + "node_modules/pako": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", + "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==" }, - "node_modules/tar-stream": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", - "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", "dev": true, "dependencies": { - "bl": "^4.0.3", - "end-of-stream": "^1.4.1", - "fs-constants": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.1.1" + "callsites": "^3.0.0" }, "engines": { "node": ">=6" } }, - "node_modules/tar-stream/node_modules/readable-stream": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", - "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", - "dev": true, - "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/terminal-link": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/terminal-link/-/terminal-link-2.1.1.tgz", - "integrity": "sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ==", + "node_modules/parse-json": { + "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, "dependencies": { - "ansi-escapes": "^4.2.1", - "supports-hyperlinks": "^2.0.0" + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" }, "engines": { "node": ">=8" @@ -11109,1329 +11183,4176 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/test-exclude": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", - "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", + "node_modules/parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", + "dev": true + }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", "dev": true, - "dependencies": { - "@istanbuljs/schema": "^0.1.2", - "glob": "^7.1.4", - "minimatch": "^3.0.4" - }, "engines": { "node": ">=8" } }, - "node_modules/text-segmentation": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/text-segmentation/-/text-segmentation-1.0.3.tgz", - "integrity": "sha512-iOiPUo/BGnZ6+54OsWxZidGCsdU8YbE4PSpdPinp7DeMtUJNJBoJ/ouUSTJjHkh1KntHaltHl/gDs2FC4i5+Nw==", - "optional": true, - "dependencies": { - "utrie": "^1.0.2" + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "dev": true, + "engines": { + "node": ">=0.10.0" } }, - "node_modules/text-table": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", - "dev": true - }, - "node_modules/throat": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/throat/-/throat-6.0.2.tgz", - "integrity": "sha512-WKexMoJj3vEuK0yFEapj8y64V0A6xcuPuK9Gt1d0R+dzCSJc0lHqQytAbSB4cDAK0dWh4T0E2ETkoLE2WZ41OQ==", - "dev": true + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "engines": { + "node": ">=8" + } }, - "node_modules/through": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", "dev": true }, - "node_modules/through2": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", - "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", + "node_modules/path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", "dev": true, - "dependencies": { - "readable-stream": "~2.3.6", - "xtend": "~4.0.1" + "engines": { + "node": ">=8" } }, - "node_modules/tmp": { - "version": "0.0.33", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", - "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", - "dev": true, + "node_modules/pdf-lib": { + "version": "1.17.1", + "resolved": "https://registry.npmjs.org/pdf-lib/-/pdf-lib-1.17.1.tgz", + "integrity": "sha512-V/mpyJAoTsN4cnP31vc0wfNA1+p20evqqnap0KLoRUN0Yk/p3wN52DOEsL4oBFcLdb76hlpKPtzJIgo67j/XLw==", "dependencies": { - "os-tmpdir": "~1.0.2" - }, - "engines": { - "node": ">=0.6.0" + "@pdf-lib/standard-fonts": "^1.0.0", + "@pdf-lib/upng": "^1.0.1", + "pako": "^1.0.11", + "tslib": "^1.11.1" } }, - "node_modules/tmpl": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", - "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==", + "node_modules/pdf-lib/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/pend": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", + "integrity": "sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==", "dev": true }, - "node_modules/to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", - "dev": true, - "engines": { - "node": ">=4" - } + "node_modules/performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==", + "optional": true }, - "node_modules/to-readable-stream": { + "node_modules/picocolors": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-1.0.0.tgz", - "integrity": "sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", + "dev": true + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", "dev": true, "engines": { - "node": ">=6" + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" } }, - "node_modules/to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "node_modules/pify": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-5.0.0.tgz", + "integrity": "sha512-eW/gHNMlxdSP6dmG6uJip6FXN0EQBwm2clYYd8Wul42Cwu/DK8HEftzsapcNdYe2MfLiIwZqsDk2RDEsTE79hA==", "dev": true, - "dependencies": { - "is-number": "^7.0.0" - }, "engines": { - "node": ">=8.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/tough-cookie": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.3.tgz", - "integrity": "sha512-aX/y5pVRkfRnfmuX+OdbSdXvPe6ieKX/G2s7e98f4poJHnqH3281gDPm/metm6E/WRamfx7WC4HUqkWHfQHprw==", + "node_modules/pirates": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", + "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==", "dev": true, - "dependencies": { - "psl": "^1.1.33", - "punycode": "^2.1.1", - "universalify": "^0.2.0", - "url-parse": "^1.5.3" - }, "engines": { - "node": ">=6" + "node": ">= 6" } }, - "node_modules/tr46": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-2.1.0.tgz", - "integrity": "sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw==", + "node_modules/pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", "dev": true, "dependencies": { - "punycode": "^2.1.1" + "find-up": "^4.0.0" }, "engines": { "node": ">=8" } }, - "node_modules/ts-node": { - "version": "10.9.1", - "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.1.tgz", - "integrity": "sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==", + "node_modules/pkg-dir/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", "dev": true, "dependencies": { - "@cspotcode/source-map-support": "^0.8.0", - "@tsconfig/node10": "^1.0.7", - "@tsconfig/node12": "^1.0.7", - "@tsconfig/node14": "^1.0.0", - "@tsconfig/node16": "^1.0.2", - "acorn": "^8.4.1", - "acorn-walk": "^8.1.1", - "arg": "^4.1.0", - "create-require": "^1.1.0", - "diff": "^4.0.1", - "make-error": "^1.1.1", - "v8-compile-cache-lib": "^3.0.1", - "yn": "3.1.1" - }, - "bin": { - "ts-node": "dist/bin.js", - "ts-node-cwd": "dist/bin-cwd.js", - "ts-node-esm": "dist/bin-esm.js", - "ts-node-script": "dist/bin-script.js", - "ts-node-transpile-only": "dist/bin-transpile.js", - "ts-script": "dist/bin-script-deprecated.js" - }, - "peerDependencies": { - "@swc/core": ">=1.2.50", - "@swc/wasm": ">=1.2.50", - "@types/node": "*", - "typescript": ">=2.7" + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" }, - "peerDependenciesMeta": { - "@swc/core": { - "optional": true - }, - "@swc/wasm": { - "optional": true - } + "engines": { + "node": ">=8" } }, - "node_modules/ts-node/node_modules/acorn-walk": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", - "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==", + "node_modules/pkg-dir/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", "dev": true, + "dependencies": { + "p-locate": "^4.1.0" + }, "engines": { - "node": ">=0.4.0" + "node": ">=8" } }, - "node_modules/ts-node/node_modules/arg": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", - "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", - "dev": true - }, - "node_modules/tslib": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", - "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==", - "dev": true - }, - "node_modules/tsutils": { - "version": "3.21.0", - "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", - "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", + "node_modules/pkg-dir/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", "dev": true, "dependencies": { - "tslib": "^1.8.1" + "p-try": "^2.0.0" }, "engines": { - "node": ">= 6" + "node": ">=6" }, - "peerDependencies": { - "typescript": ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/tsutils/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - }, - "node_modules/type-check": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", - "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "node_modules/pkg-dir/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", "dev": true, "dependencies": { - "prelude-ls": "^1.2.1" + "p-limit": "^2.2.0" }, "engines": { - "node": ">= 0.8.0" + "node": ">=8" } }, - "node_modules/type-detect": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", - "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", + "node_modules/pluralize": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-8.0.0.tgz", + "integrity": "sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==", "dev": true, "engines": { "node": ">=4" } }, - "node_modules/type-fest": { - "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==", + "node_modules/postcss": { + "version": "8.4.21", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.21.tgz", + "integrity": "sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg==", "dev": true, - "engines": { - "node": ">=10" + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + } + ], + "dependencies": { + "nanoid": "^3.3.4", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": "^10 || ^12 || >=14" } }, - "node_modules/typed-array-length": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.4.tgz", - "integrity": "sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==", + "node_modules/postcss-js": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-js/-/postcss-js-4.0.0.tgz", + "integrity": "sha512-77QESFBwgX4irogGVPgQ5s07vLvFqWr228qZY+w6lW599cRlK/HmnlivnnVUxkjHnCu4J16PDMHcH+e+2HbvTQ==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "is-typed-array": "^1.1.9" + "camelcase-css": "^2.0.1" + }, + "engines": { + "node": "^12 || ^14 || >= 16" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + "peerDependencies": { + "postcss": "^8.3.3" } }, - "node_modules/typedarray-to-buffer": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", - "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", + "node_modules/postcss-load-config": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-3.1.4.tgz", + "integrity": "sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==", "dev": true, "dependencies": { - "is-typedarray": "^1.0.0" - } - }, - "node_modules/typescript": { - "version": "4.9.5", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz", - "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==", - "dev": true, - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" + "lilconfig": "^2.0.5", + "yaml": "^1.10.2" }, "engines": { - "node": ">=4.2.0" + "node": ">= 10" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + "peerDependencies": { + "postcss": ">=8.0.9", + "ts-node": ">=9.0.0" + }, + "peerDependenciesMeta": { + "postcss": { + "optional": true + }, + "ts-node": { + "optional": true + } } }, - "node_modules/unbox-primitive": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", - "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", + "node_modules/postcss-nested": { + "version": "5.0.6", + "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-5.0.6.tgz", + "integrity": "sha512-rKqm2Fk0KbA8Vt3AdGN0FB9OBOMDVajMG6ZCf/GoHgdxUJ4sBFp0A/uMIRm+MJUdo33YXEtjqIz8u7DAp8B7DA==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "has-bigints": "^1.0.2", - "has-symbols": "^1.0.3", - "which-boxed-primitive": "^1.0.2" + "postcss-selector-parser": "^6.0.6" + }, + "engines": { + "node": ">=12.0" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + "peerDependencies": { + "postcss": "^8.2.14" } }, - "node_modules/unbzip2-stream": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/unbzip2-stream/-/unbzip2-stream-1.4.3.tgz", - "integrity": "sha512-mlExGW4w71ebDJviH16lQLtZS32VKqsSfk80GCfUlwT/4/hNRFsoscrF/c++9xinkMzECL1uL9DDwXqFWkruPg==", + "node_modules/postcss-selector-parser": { + "version": "6.0.11", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.11.tgz", + "integrity": "sha512-zbARubNdogI9j7WY4nQJBiNqQf3sLS3wCP4WfOidu+p28LofJqDH1tcXypGrcmMHhDk2t9wGhCsYe/+szLTy1g==", "dev": true, "dependencies": { - "buffer": "^5.2.1", - "through": "^2.3.8" + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" } }, - "node_modules/unique-string": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz", - "integrity": "sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==", + "node_modules/postcss-value-parser": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", + "dev": true + }, + "node_modules/prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", "dev": true, - "dependencies": { - "crypto-random-string": "^2.0.0" - }, "engines": { - "node": ">=8" + "node": ">= 0.8.0" } }, - "node_modules/universal-user-agent": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-6.0.0.tgz", - "integrity": "sha512-isyNax3wXoKaulPDZWHQqbmIx1k2tb9fb3GGDBRxCscfYV2Ch7WxPArBsFEG8s/safwXTT7H4QGhaIkTp9447w==", - "dev": true + "node_modules/prepend-http": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", + "integrity": "sha512-ravE6m9Atw9Z/jjttRUZ+clIXogdghyZAuWJ3qEzjT+jI/dL1ifAqhZeC5VHzQp1MSt1+jxKkFNemj/iO7tVUA==", + "dev": true, + "engines": { + "node": ">=4" + } }, - "node_modules/universalify": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz", - "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==", + "node_modules/prettier": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.4.1.tgz", + "integrity": "sha512-9fbDAXSBcc6Bs1mZrDYb3XKzDLm4EXXL9sC1LqKP5rZkT6KRr/rf9amVUcODVXgguK/isJz0d0hP72WeaKWsvA==", "dev": true, + "bin": { + "prettier": "bin-prettier.js" + }, "engines": { - "node": ">= 4.0.0" + "node": ">=10.13.0" } }, - "node_modules/update-browserslist-db": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz", - "integrity": "sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==", + "node_modules/prettier-linter-helpers": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz", + "integrity": "sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==", "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], "dependencies": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" - }, - "bin": { - "update-browserslist-db": "cli.js" + "fast-diff": "^1.1.2" }, - "peerDependencies": { - "browserslist": ">= 4.21.0" + "engines": { + "node": ">=6.0.0" } }, - "node_modules/update-notifier": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-5.1.0.tgz", - "integrity": "sha512-ItnICHbeMh9GqUy31hFPrD1kcuZ3rpxDZbf4KUDavXwS0bW5m7SLbDQpGX3UYr072cbrF5hFUs3r5tUsPwjfHw==", + "node_modules/pretty-format": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", + "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", "dev": true, "dependencies": { - "boxen": "^5.0.0", - "chalk": "^4.1.0", - "configstore": "^5.0.1", - "has-yarn": "^2.1.0", - "import-lazy": "^2.1.0", - "is-ci": "^2.0.0", - "is-installed-globally": "^0.4.0", - "is-npm": "^5.0.0", - "is-yarn-global": "^0.3.0", - "latest-version": "^5.1.0", - "pupa": "^2.1.1", - "semver": "^7.3.4", - "semver-diff": "^3.1.1", - "xdg-basedir": "^4.0.0" + "ansi-regex": "^5.0.1", + "ansi-styles": "^5.0.0", + "react-is": "^17.0.1" }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/pretty-format/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, "engines": { "node": ">=10" }, "funding": { - "url": "https://github.com/yeoman/update-notifier?sponsor=1" + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dependencies": { - "punycode": "^2.1.0" + "node_modules/process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", + "dev": true + }, + "node_modules/progress": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", + "dev": true, + "engines": { + "node": ">=0.4.0" } }, - "node_modules/url-parse": { - "version": "1.5.10", - "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.10.tgz", - "integrity": "sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==", + "node_modules/progress-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/progress-stream/-/progress-stream-2.0.0.tgz", + "integrity": "sha512-xJwOWR46jcXUq6EH9yYyqp+I52skPySOeHfkxOZ2IY1AiBi/sFJhbhAKHoV3OTw/omQ45KTio9215dRJ2Yxd3Q==", "dev": true, "dependencies": { - "querystringify": "^2.1.1", - "requires-port": "^1.0.0" + "speedometer": "~1.0.0", + "through2": "~2.0.3" } }, - "node_modules/url-parse-lax": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", - "integrity": "sha512-NjFKA0DidqPa5ciFcSrXnAltTtzz84ogy+NebPvfEgAck0+TNg4UJ4IN+fB7zRZfbgUf0syOo9MDxFkDSMuFaQ==", + "node_modules/prompts": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", + "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", "dev": true, "dependencies": { - "prepend-http": "^2.0.0" + "kleur": "^3.0.3", + "sisteransi": "^1.0.5" }, "engines": { - "node": ">=4" + "node": ">= 6" } }, - "node_modules/util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", - "dev": true + "node_modules/prop-types": { + "version": "15.8.1", + "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", + "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", + "dev": true, + "dependencies": { + "loose-envify": "^1.4.0", + "object-assign": "^4.1.1", + "react-is": "^16.13.1" + } }, - "node_modules/util-extend": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/util-extend/-/util-extend-1.0.3.tgz", - "integrity": "sha512-mLs5zAK+ctllYBj+iAQvlDCwoxU/WDOUaJkcFudeiAX6OajC6BKXJUa9a+tbtkC11dz2Ufb7h0lyvIOVn4LADA==", + "node_modules/prop-types/node_modules/react-is": { + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", "dev": true }, - "node_modules/utrie": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/utrie/-/utrie-1.0.2.tgz", - "integrity": "sha512-1MLa5ouZiOmQzUbjbu9VmjLzn1QLXBhwpUa7kdLUQK+KQ5KA9I1vk5U4YHe/X2Ch7PYnJfWuWT+VbuxbGwljhw==", - "optional": true, + "node_modules/proxy-agent": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/proxy-agent/-/proxy-agent-6.3.0.tgz", + "integrity": "sha512-0LdR757eTj/JfuU7TL2YCuAZnxWXu3tkJbg4Oq3geW/qFNT/32T0sp2HnZ9O0lMR4q3vwAt0+xCA8SR0WAD0og==", + "dev": true, "dependencies": { - "base64-arraybuffer": "^1.0.2" + "agent-base": "^7.0.2", + "debug": "^4.3.4", + "http-proxy-agent": "^7.0.0", + "https-proxy-agent": "^7.0.0", + "lru-cache": "^7.14.1", + "pac-proxy-agent": "^7.0.0", + "proxy-from-env": "^1.1.0", + "socks-proxy-agent": "^8.0.1" + }, + "engines": { + "node": ">= 14" } }, - "node_modules/v8-compile-cache-lib": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", - "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==", - "dev": true + "node_modules/proxy-agent/node_modules/agent-base": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.0.tgz", + "integrity": "sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg==", + "dev": true, + "dependencies": { + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" + } }, - "node_modules/v8-to-istanbul": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-8.1.1.tgz", - "integrity": "sha512-FGtKtv3xIpR6BYhvgH8MI/y78oT7d8Au3ww4QIxymrCtZEh5b8gCw2siywE+puhEmuWKDtmfrvF5UlB298ut3w==", + "node_modules/proxy-agent/node_modules/http-proxy-agent": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.0.tgz", + "integrity": "sha512-+ZT+iBxVUQ1asugqnD6oWoRiS25AkjNfG085dKJGtGxkdwLQrMKU5wJr2bOOFAXzKcTuqq+7fZlTMgG3SRfIYQ==", "dev": true, "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.1", - "convert-source-map": "^1.6.0", - "source-map": "^0.7.3" + "agent-base": "^7.1.0", + "debug": "^4.3.4" }, "engines": { - "node": ">=10.12.0" + "node": ">= 14" } }, - "node_modules/v8-to-istanbul/node_modules/source-map": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", - "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", + "node_modules/proxy-agent/node_modules/https-proxy-agent": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.1.tgz", + "integrity": "sha512-Eun8zV0kcYS1g19r78osiQLEFIRspRUDd9tIfBCTBPBeMieF/EsJNL8VI3xOIdYRDEkjQnqOYPsZ2DsWsVsFwQ==", + "dev": true, + "dependencies": { + "agent-base": "^7.0.2", + "debug": "4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/proxy-agent/node_modules/lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", "dev": true, "engines": { - "node": ">= 8" + "node": ">=12" + } + }, + "node_modules/proxy-from-env": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==", + "dev": true + }, + "node_modules/psl": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", + "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==", + "dev": true + }, + "node_modules/pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dev": true, + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "node_modules/pumpify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pumpify/-/pumpify-2.0.1.tgz", + "integrity": "sha512-m7KOje7jZxrmutanlkS1daj1dS6z6BgslzOXmcSEpIlCxM3VJH7lG5QLeck/6hgF6F4crFf01UtQmNsJfweTAw==", + "dev": true, + "dependencies": { + "duplexify": "^4.1.1", + "inherits": "^2.0.3", + "pump": "^3.0.0" + } + }, + "node_modules/punycode": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", + "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==", + "engines": { + "node": ">=6" + } + }, + "node_modules/pupa": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/pupa/-/pupa-2.1.1.tgz", + "integrity": "sha512-l1jNAspIBSFqbT+y+5FosojNpVpF94nlI+wDUpqP9enwOTfHx9f0gh5nB96vl+6yTpsJsypeNrwfzPrKuHB41A==", + "dev": true, + "dependencies": { + "escape-goat": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/puppeteer": { + "version": "21.0.3", + "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-21.0.3.tgz", + "integrity": "sha512-+eBNTEOOBrRBLJ1/jIuHcOoUUOVpUQjQFwp9L/sm/iBDqii+4jv9jxpPJSOmOHXuy++X7GWfhuDw4vz8crNzPw==", + "dev": true, + "hasInstallScript": true, + "dependencies": { + "@puppeteer/browsers": "1.6.0", + "cosmiconfig": "8.2.0", + "puppeteer-core": "21.0.3" + }, + "engines": { + "node": ">=16.3.0" + } + }, + "node_modules/puppeteer-core": { + "version": "21.0.3", + "resolved": "https://registry.npmjs.org/puppeteer-core/-/puppeteer-core-21.0.3.tgz", + "integrity": "sha512-AGvopfkA0jLbW5Ba0m6kBuvRIpLo76PXUK3zJYkXOr9NI1LknJESyai6TtXc6GUSewMkinmyEDx1pFgq900hqg==", + "dev": true, + "dependencies": { + "@puppeteer/browsers": "1.6.0", + "chromium-bidi": "0.4.20", + "cross-fetch": "4.0.0", + "debug": "4.3.4", + "devtools-protocol": "0.0.1147663", + "ws": "8.13.0" + }, + "engines": { + "node": ">=16.3.0" + } + }, + "node_modules/puppeteer-core/node_modules/ws": { + "version": "8.13.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.13.0.tgz", + "integrity": "sha512-x9vcZYTrFPC7aSIbj7sRCYo7L/Xb8Iy+pW0ng0wt2vCJv7M9HOMy0UoN3rr+IFC7hb7vXoqS+P9ktyLLLhO+LA==", + "dev": true, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/puppeteer/node_modules/cosmiconfig": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.2.0.tgz", + "integrity": "sha512-3rTMnFJA1tCOPwRxtgF4wd7Ab2qvDbL8jX+3smjIbS4HlZBagTlpERbdN7iAbWlrfxE3M8c27kTwTawQ7st+OQ==", + "dev": true, + "dependencies": { + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "parse-json": "^5.0.0", + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/d-fischer" + } + }, + "node_modules/querystringify": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", + "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==", + "dev": true + }, + "node_modules/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, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/queue-tick": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/queue-tick/-/queue-tick-1.0.1.tgz", + "integrity": "sha512-kJt5qhMxoszgU/62PLP1CJytzd2NKetjSRnyuj31fDd3Rlcz3fzlFdFLD1SItunPwyqEOkca6GbV612BWfaBag==", + "dev": true + }, + "node_modules/quick-lru": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz", + "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/raf": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/raf/-/raf-3.4.1.tgz", + "integrity": "sha512-Sq4CW4QhwOHE8ucn6J34MqtZCeWFP2aQSmrlroYgqAV1PjStIhJXxYuTgUIfkEk7zTLjmIjLmU5q+fbD1NnOJA==", + "optional": true, + "dependencies": { + "performance-now": "^2.1.0" + } + }, + "node_modules/rc": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", + "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", + "dev": true, + "dependencies": { + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + }, + "bin": { + "rc": "cli.js" + } + }, + "node_modules/rc/node_modules/ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", + "dev": true + }, + "node_modules/rc/node_modules/strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react/-/react-18.2.0.tgz", + "integrity": "sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==", + "dev": true, + "dependencies": { + "loose-envify": "^1.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", + "dev": true + }, + "node_modules/read": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/read/-/read-1.0.7.tgz", + "integrity": "sha512-rSOKNYUmaxy0om1BNjMN4ezNT6VKK+2xF4GBhc81mkH7L60i6dp8qPYrkndNLT3QPphoII3maL9PVC9XmhHwVQ==", + "dev": true, + "dependencies": { + "mute-stream": "~0.0.4" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/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, + "dependencies": { + "@types/normalize-package-data": "^2.4.0", + "normalize-package-data": "^2.5.0", + "parse-json": "^5.0.0", + "type-fest": "^0.6.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/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, + "dependencies": { + "find-up": "^4.1.0", + "read-pkg": "^5.2.0", + "type-fest": "^0.8.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/read-pkg-up/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/read-pkg-up/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/read-pkg-up/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/read-pkg-up/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/read-pkg-up/node_modules/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, + "engines": { + "node": ">=8" + } + }, + "node_modules/read-pkg/node_modules/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, + "engines": { + "node": ">=8" + } + }, + "node_modules/readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": true, + "dependencies": { + "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" + } + }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/rechoir": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", + "integrity": "sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw==", + "dev": true, + "dependencies": { + "resolve": "^1.1.6" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/rechoir/node_modules/resolve": { + "version": "1.22.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", + "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", + "dev": true, + "dependencies": { + "is-core-module": "^2.9.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/regenerate": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", + "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", + "dev": true + }, + "node_modules/regenerate-unicode-properties": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.0.tgz", + "integrity": "sha512-d1VudCLoIGitcU/hEg2QqvyGZQmdC0Lf8BqdOMXGFSvJP4bNV1+XqbPQeHHLD51Jh4QJJ225dlIFvY4Ly6MXmQ==", + "dev": true, + "dependencies": { + "regenerate": "^1.4.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/regenerator-transform": { + "version": "0.15.2", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.2.tgz", + "integrity": "sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==", + "dev": true, + "dependencies": { + "@babel/runtime": "^7.8.4" + } + }, + "node_modules/regexp-tree": { + "version": "0.1.24", + "resolved": "https://registry.npmjs.org/regexp-tree/-/regexp-tree-0.1.24.tgz", + "integrity": "sha512-s2aEVuLhvnVJW6s/iPgEGK6R+/xngd2jNQ+xy4bXNDKxZKJH6jpPHY6kVeVv1IeLCHgswRj+Kl3ELaDjG6V1iw==", + "dev": true, + "bin": { + "regexp-tree": "bin/regexp-tree" + } + }, + "node_modules/regexp.prototype.flags": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz", + "integrity": "sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "functions-have-names": "^1.2.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/regexpp": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", + "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + } + }, + "node_modules/regexpu-core": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.3.2.tgz", + "integrity": "sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ==", + "dev": true, + "dependencies": { + "@babel/regjsgen": "^0.8.0", + "regenerate": "^1.4.2", + "regenerate-unicode-properties": "^10.1.0", + "regjsparser": "^0.9.1", + "unicode-match-property-ecmascript": "^2.0.0", + "unicode-match-property-value-ecmascript": "^2.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/registry-auth-token": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.2.2.tgz", + "integrity": "sha512-PC5ZysNb42zpFME6D/XlIgtNGdTl8bBOCw90xQLVMpzuuubJKYDWFAEuUNc+Cn8Z8724tg2SDhDRrkVEsqfDMg==", + "dev": true, + "dependencies": { + "rc": "1.2.8" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/registry-url": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-5.1.0.tgz", + "integrity": "sha512-8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw==", + "dev": true, + "dependencies": { + "rc": "^1.2.8" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/regjsparser": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.9.1.tgz", + "integrity": "sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==", + "dev": true, + "dependencies": { + "jsesc": "~0.5.0" + }, + "bin": { + "regjsparser": "bin/parser" + } + }, + "node_modules/regjsparser/node_modules/jsesc": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", + "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==", + "dev": true, + "bin": { + "jsesc": "bin/jsesc" + } + }, + "node_modules/remove-markdown": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/remove-markdown/-/remove-markdown-0.2.2.tgz", + "integrity": "sha512-jwgEf3Yh/xi4WodWi/vPlasa9C9pMv1kz5ITOIAGjBW7PeZ/CHZCdBfJzQnn2VX2cBvf1xCuJv0tUJqn/FCMNA==", + "dev": true + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/requires-port": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", + "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==", + "dev": true + }, + "node_modules/resolve": { + "version": "2.0.0-next.4", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.4.tgz", + "integrity": "sha512-iMDbmAWtfU+MHpxt/I5iWI7cY6YVEZUQ3MBgPQ++XD1PELuJHIl82xBmObyP2KyQmkNB2dsqF7seoQQiAn5yDQ==", + "dev": true, + "dependencies": { + "is-core-module": "^2.9.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-cwd": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", + "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", + "dev": true, + "dependencies": { + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-cwd/node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/resolve.exports": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-1.1.1.tgz", + "integrity": "sha512-/NtpHNDN7jWhAaQ9BvBUYZ6YTXsRBgfqWFWP7BZBaoMJO/I3G5OFzvTuWNlZC3aPjins1F+TNrLKsGbH4rfsRQ==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/responselike": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz", + "integrity": "sha512-/Fpe5guzJk1gPqdJLJR5u7eG/gNY4nImjbRDaVWVMRhne55TCmj2i9Q+54PBRfatRC8v/rIiv9BN0pMd9OV5EQ==", + "dev": true, + "dependencies": { + "lowercase-keys": "^1.0.0" + } + }, + "node_modules/restore-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "dev": true, + "dependencies": { + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "dev": true, + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rgbcolor": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/rgbcolor/-/rgbcolor-1.0.1.tgz", + "integrity": "sha512-9aZLIrhRaD97sgVhtJOW6ckOEh6/GnvQtdVNfdZ6s67+3/XwLS9lBcQYzEEhYVeUowN7pRzMLsyGhK2i/xvWbw==", + "optional": true, + "engines": { + "node": ">= 0.8.15" + } + }, + "node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/run-async": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", + "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/run-parallel": { + "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, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/rxjs": { + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.0.tgz", + "integrity": "sha512-F2+gxDshqmIub1KdvZkaEfGDwLNpPvk9Fs6LD/MyQxNgMds/WH9OdDDXOmxUZpME+iSK3rQCctkL0DYyytUqMg==", + "dev": true, + "dependencies": { + "tslib": "^2.1.0" + } + }, + "node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "node_modules/safe-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-2.1.1.tgz", + "integrity": "sha512-rx+x8AMzKb5Q5lQ95Zoi6ZbJqwCLkqi3XuJXp5P3rT8OEc6sZCJG5AE5dU3lsgRr/F4Bs31jSlVN+j5KrsGu9A==", + "dev": true, + "dependencies": { + "regexp-tree": "~0.1.1" + } + }, + "node_modules/safe-regex-test": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz", + "integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.3", + "is-regex": "^1.1.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "dev": true + }, + "node_modules/saxes": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/saxes/-/saxes-5.0.1.tgz", + "integrity": "sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==", + "dev": true, + "dependencies": { + "xmlchars": "^2.2.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/semver-diff": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-3.1.1.tgz", + "integrity": "sha512-GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg==", + "dev": true, + "dependencies": { + "semver": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/semver-diff/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/semver/node_modules/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, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/semver/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/setimmediate": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", + "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==", + "dev": true + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/shelljs": { + "version": "0.8.5", + "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.8.5.tgz", + "integrity": "sha512-TiwcRcrkhHvbrZbnRcFYMLl30Dfov3HKqzp5tO5b4pt6G/SezKcYhmDg15zXVBswHmctSAQKznqNW2LO5tTDow==", + "dev": true, + "dependencies": { + "glob": "^7.0.0", + "interpret": "^1.0.0", + "rechoir": "^0.6.2" + }, + "bin": { + "shjs": "bin/shjs" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/side-channel": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "dev": true + }, + "node_modules/simple-concat": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz", + "integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/simple-get": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-4.0.1.tgz", + "integrity": "sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "decompress-response": "^6.0.0", + "once": "^1.3.1", + "simple-concat": "^1.0.0" + } + }, + "node_modules/simple-swizzle": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz", + "integrity": "sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==", + "peer": true, + "dependencies": { + "is-arrayish": "^0.3.1" + } + }, + "node_modules/simple-swizzle/node_modules/is-arrayish": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz", + "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==", + "peer": true + }, + "node_modules/sisteransi": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", + "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", + "dev": true + }, + "node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/smart-buffer": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", + "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", + "dev": true, + "engines": { + "node": ">= 6.0.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/socks": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.7.1.tgz", + "integrity": "sha512-7maUZy1N7uo6+WVEX6psASxtNlKaNVMlGQKkG/63nEDdLOWNbiUMoLK7X4uYoLhQstau72mLgfEWcXcwsaHbYQ==", + "dev": true, + "dependencies": { + "ip": "^2.0.0", + "smart-buffer": "^4.2.0" + }, + "engines": { + "node": ">= 10.13.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/socks-proxy-agent": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.1.tgz", + "integrity": "sha512-59EjPbbgg8U3x62hhKOFVAmySQUcfRQ4C7Q/D5sEHnZTQRrQlNKINks44DMR1gwXp0p4LaVIeccX2KHTTcHVqQ==", + "dev": true, + "dependencies": { + "agent-base": "^7.0.1", + "debug": "^4.3.4", + "socks": "^2.7.1" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/socks-proxy-agent/node_modules/agent-base": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.0.tgz", + "integrity": "sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg==", + "dev": true, + "dependencies": { + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/socks/node_modules/ip": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ip/-/ip-2.0.0.tgz", + "integrity": "sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ==", + "dev": true + }, + "node_modules/sort-keys": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-4.2.0.tgz", + "integrity": "sha512-aUYIEU/UviqPgc8mHR6IW1EGxkAXpeRETYcrzg8cLAvUPZcpAlleSXHV2mY7G12GphSH6Gzv+4MMVSSkbdteHg==", + "dev": true, + "dependencies": { + "is-plain-obj": "^2.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/sortablejs": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/sortablejs/-/sortablejs-1.15.0.tgz", + "integrity": "sha512-bv9qgVMjUMf89wAvM6AxVvS/4MX3sPeN0+agqShejLU5z5GX4C75ow1O2e5k4L6XItUyAK3gH6AxSbXrOM5e8w==", + "peer": true + }, + "node_modules/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, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-js": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", + "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "dev": true, + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/spdx-correct": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", + "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", + "dev": true, + "dependencies": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-exceptions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", + "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", + "dev": true + }, + "node_modules/spdx-expression-parse": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "dev": true, + "dependencies": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-license-ids": { + "version": "3.0.12", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.12.tgz", + "integrity": "sha512-rr+VVSXtRhO4OHbXUiAF7xW3Bo9DuuF6C5jH+q/x15j2jniycgKbxU09Hr0WqlSLUs4i4ltHGXqTe7VHclYWyA==", + "dev": true + }, + "node_modules/speedometer": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/speedometer/-/speedometer-1.0.0.tgz", + "integrity": "sha512-lgxErLl/7A5+vgIIXsh9MbeukOaCb2axgQ+bKCdIE+ibNT4XNYGNCR1qFEGq6F+YDASXK3Fh/c5FgtZchFolxw==", + "dev": true + }, + "node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", + "dev": true + }, + "node_modules/stack-utils": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", + "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", + "dev": true, + "dependencies": { + "escape-string-regexp": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/stack-utils/node_modules/escape-string-regexp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", + "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/stackblur-canvas": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/stackblur-canvas/-/stackblur-canvas-2.5.0.tgz", + "integrity": "sha512-EeNzTVfj+1In7aSLPKDD03F/ly4RxEuF/EX0YcOG0cKoPXs+SLZxDawQbexQDBzwROs4VKLWTOaZQlZkGBFEIQ==", + "optional": true, + "engines": { + "node": ">=0.1.14" + } + }, + "node_modules/stencil-eslint-core": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/stencil-eslint-core/-/stencil-eslint-core-0.3.1.tgz", + "integrity": "sha512-z1yp1+Qzr6C/X4RgaCt0egDu5CsIrZzMCr9eGMmQTnSU1leVbSJB5aoI/KWv8qe8k7b1LCit46Ff3udRJ96Lfw==", + "dev": true, + "dependencies": { + "eslint-utils": "~3.0.0", + "tsutils": "~3.21.0" + }, + "engines": { + "node": ">=8.9.0" + }, + "peerDependencies": { + "@typescript-eslint/parser": "^5.8.0", + "eslint": "^8" + } + }, + "node_modules/stream-shift": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz", + "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==", + "dev": true + }, + "node_modules/streamx": { + "version": "2.15.1", + "resolved": "https://registry.npmjs.org/streamx/-/streamx-2.15.1.tgz", + "integrity": "sha512-fQMzy2O/Q47rgwErk/eGeLu/roaFWV0jVsogDmrszM9uIw8L5OA+t+V93MgYlufNptfjmYR1tOMWhei/Eh7TQA==", + "dev": true, + "dependencies": { + "fast-fifo": "^1.1.0", + "queue-tick": "^1.0.1" + } + }, + "node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/string-length": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz", + "integrity": "sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==", + "dev": true, + "dependencies": { + "char-regex": "^1.0.2", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string.prototype.matchall": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.8.tgz", + "integrity": "sha512-6zOCOcJ+RJAQshcTvXPHoxoQGONa3e/Lqx90wUA+wEzX78sg5Bo+1tQo4N0pohS0erG9qtCqJDjNCQBjeWVxyg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "get-intrinsic": "^1.1.3", + "has-symbols": "^1.0.3", + "internal-slot": "^1.0.3", + "regexp.prototype.flags": "^1.4.3", + "side-channel": "^1.0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimend": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz", + "integrity": "sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimstart": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.6.tgz", + "integrity": "sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-bom": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", + "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-final-newline": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/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, + "dependencies": { + "min-indent": "^1.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/strnum": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/strnum/-/strnum-1.0.5.tgz", + "integrity": "sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA==" + }, + "node_modules/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==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-hyperlinks": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.3.0.tgz", + "integrity": "sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0", + "supports-color": "^7.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/svg-pathdata": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/svg-pathdata/-/svg-pathdata-6.0.3.tgz", + "integrity": "sha512-qsjeeq5YjBZ5eMdFuUa4ZosMLxgr5RZ+F+Y1OrDhuOCEInRMA3x74XdBtggJcj9kOeInz0WE+LgCPDkZFlBYJw==", + "optional": true, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/symbol-tree": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", + "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==", + "dev": true + }, + "node_modules/tabbable": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/tabbable/-/tabbable-6.1.2.tgz", + "integrity": "sha512-qCN98uP7i9z0fIS4amQ5zbGBOq+OSigYeGvPy7NDk8Y9yncqDZ9pRPgfsc2PJIVM9RrJj7GIfuRgmjoUU9zTHQ==" + }, + "node_modules/tailwindcss": { + "version": "3.0.23", + "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.0.23.tgz", + "integrity": "sha512-+OZOV9ubyQ6oI2BXEhzw4HrqvgcARY38xv3zKcjnWtMIZstEsXdI9xftd1iB7+RbOnj2HOEzkA0OyB5BaSxPQA==", + "dev": true, + "dependencies": { + "arg": "^5.0.1", + "chalk": "^4.1.2", + "chokidar": "^3.5.3", + "color-name": "^1.1.4", + "cosmiconfig": "^7.0.1", + "detective": "^5.2.0", + "didyoumean": "^1.2.2", + "dlv": "^1.1.3", + "fast-glob": "^3.2.11", + "glob-parent": "^6.0.2", + "is-glob": "^4.0.3", + "normalize-path": "^3.0.0", + "object-hash": "^2.2.0", + "postcss": "^8.4.6", + "postcss-js": "^4.0.0", + "postcss-load-config": "^3.1.0", + "postcss-nested": "5.0.6", + "postcss-selector-parser": "^6.0.9", + "postcss-value-parser": "^4.2.0", + "quick-lru": "^5.1.1", + "resolve": "^1.22.0" + }, + "bin": { + "tailwind": "lib/cli.js", + "tailwindcss": "lib/cli.js" + }, + "engines": { + "node": ">=12.13.0" + }, + "peerDependencies": { + "autoprefixer": "^10.0.2", + "postcss": "^8.0.9" + } + }, + "node_modules/tailwindcss/node_modules/resolve": { + "version": "1.22.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", + "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", + "dev": true, + "dependencies": { + "is-core-module": "^2.9.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/tar-fs": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-3.0.4.tgz", + "integrity": "sha512-5AFQU8b9qLfZCX9zp2duONhPmZv0hGYiBPJsyUdqMjzq/mqVpy/rEUSeHk1+YitmxugaptgBh5oDGU3VsAJq4w==", + "dev": true, + "dependencies": { + "mkdirp-classic": "^0.5.2", + "pump": "^3.0.0", + "tar-stream": "^3.1.5" + } + }, + "node_modules/tar-stream": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-3.1.6.tgz", + "integrity": "sha512-B/UyjYwPpMBv+PaFSWAmtYjwdrlEaZQEhMIBFNC5oEG8lpiW8XjcSdmEaClj28ArfKScKHs2nshz3k2le6crsg==", + "dev": true, + "dependencies": { + "b4a": "^1.6.4", + "fast-fifo": "^1.2.0", + "streamx": "^2.15.0" + } + }, + "node_modules/terminal-link": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/terminal-link/-/terminal-link-2.1.1.tgz", + "integrity": "sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ==", + "dev": true, + "dependencies": { + "ansi-escapes": "^4.2.1", + "supports-hyperlinks": "^2.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/test-exclude": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", + "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", + "dev": true, + "dependencies": { + "@istanbuljs/schema": "^0.1.2", + "glob": "^7.1.4", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/text-segmentation": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/text-segmentation/-/text-segmentation-1.0.3.tgz", + "integrity": "sha512-iOiPUo/BGnZ6+54OsWxZidGCsdU8YbE4PSpdPinp7DeMtUJNJBoJ/ouUSTJjHkh1KntHaltHl/gDs2FC4i5+Nw==", + "optional": true, + "dependencies": { + "utrie": "^1.0.2" + } + }, + "node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", + "dev": true + }, + "node_modules/throat": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/throat/-/throat-6.0.2.tgz", + "integrity": "sha512-WKexMoJj3vEuK0yFEapj8y64V0A6xcuPuK9Gt1d0R+dzCSJc0lHqQytAbSB4cDAK0dWh4T0E2ETkoLE2WZ41OQ==", + "dev": true + }, + "node_modules/through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", + "dev": true + }, + "node_modules/through2": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", + "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", + "dev": true, + "dependencies": { + "readable-stream": "~2.3.6", + "xtend": "~4.0.1" + } + }, + "node_modules/tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "dev": true, + "dependencies": { + "os-tmpdir": "~1.0.2" + }, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/tmpl": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", + "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==", + "dev": true + }, + "node_modules/to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/to-readable-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-1.0.0.tgz", + "integrity": "sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/tough-cookie": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.3.tgz", + "integrity": "sha512-aX/y5pVRkfRnfmuX+OdbSdXvPe6ieKX/G2s7e98f4poJHnqH3281gDPm/metm6E/WRamfx7WC4HUqkWHfQHprw==", + "dev": true, + "dependencies": { + "psl": "^1.1.33", + "punycode": "^2.1.1", + "universalify": "^0.2.0", + "url-parse": "^1.5.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/tr46": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-2.1.0.tgz", + "integrity": "sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw==", + "dev": true, + "dependencies": { + "punycode": "^2.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ts-node": { + "version": "10.9.1", + "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.1.tgz", + "integrity": "sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==", + "dev": true, + "dependencies": { + "@cspotcode/source-map-support": "^0.8.0", + "@tsconfig/node10": "^1.0.7", + "@tsconfig/node12": "^1.0.7", + "@tsconfig/node14": "^1.0.0", + "@tsconfig/node16": "^1.0.2", + "acorn": "^8.4.1", + "acorn-walk": "^8.1.1", + "arg": "^4.1.0", + "create-require": "^1.1.0", + "diff": "^4.0.1", + "make-error": "^1.1.1", + "v8-compile-cache-lib": "^3.0.1", + "yn": "3.1.1" + }, + "bin": { + "ts-node": "dist/bin.js", + "ts-node-cwd": "dist/bin-cwd.js", + "ts-node-esm": "dist/bin-esm.js", + "ts-node-script": "dist/bin-script.js", + "ts-node-transpile-only": "dist/bin-transpile.js", + "ts-script": "dist/bin-script-deprecated.js" + }, + "peerDependencies": { + "@swc/core": ">=1.2.50", + "@swc/wasm": ">=1.2.50", + "@types/node": "*", + "typescript": ">=2.7" + }, + "peerDependenciesMeta": { + "@swc/core": { + "optional": true + }, + "@swc/wasm": { + "optional": true + } + } + }, + "node_modules/ts-node/node_modules/acorn-walk": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", + "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/ts-node/node_modules/arg": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", + "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", + "dev": true + }, + "node_modules/tslib": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", + "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==", + "dev": true + }, + "node_modules/tsutils": { + "version": "3.21.0", + "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", + "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", + "dev": true, + "dependencies": { + "tslib": "^1.8.1" + }, + "engines": { + "node": ">= 6" + }, + "peerDependencies": { + "typescript": ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta" + } + }, + "node_modules/tsutils/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + }, + "node_modules/type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dev": true, + "dependencies": { + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/type-detect": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", + "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/type-fest": { + "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, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/typed-array-length": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.4.tgz", + "integrity": "sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "for-each": "^0.3.3", + "is-typed-array": "^1.1.9" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typedarray-to-buffer": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", + "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", + "dev": true, + "dependencies": { + "is-typedarray": "^1.0.0" + } + }, + "node_modules/typescript": { + "version": "4.9.5", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz", + "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==", + "dev": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=4.2.0" + } + }, + "node_modules/unbox-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", + "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "has-bigints": "^1.0.2", + "has-symbols": "^1.0.3", + "which-boxed-primitive": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/unbzip2-stream": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/unbzip2-stream/-/unbzip2-stream-1.4.3.tgz", + "integrity": "sha512-mlExGW4w71ebDJviH16lQLtZS32VKqsSfk80GCfUlwT/4/hNRFsoscrF/c++9xinkMzECL1uL9DDwXqFWkruPg==", + "dev": true, + "dependencies": { + "buffer": "^5.2.1", + "through": "^2.3.8" + } + }, + "node_modules/unicode-canonical-property-names-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", + "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-match-property-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", + "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", + "dev": true, + "dependencies": { + "unicode-canonical-property-names-ecmascript": "^2.0.0", + "unicode-property-aliases-ecmascript": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-match-property-value-ecmascript": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz", + "integrity": "sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-property-aliases-ecmascript": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz", + "integrity": "sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/unique-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz", + "integrity": "sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==", + "dev": true, + "dependencies": { + "crypto-random-string": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/universal-user-agent": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-6.0.0.tgz", + "integrity": "sha512-isyNax3wXoKaulPDZWHQqbmIx1k2tb9fb3GGDBRxCscfYV2Ch7WxPArBsFEG8s/safwXTT7H4QGhaIkTp9447w==", + "dev": true + }, + "node_modules/universalify": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz", + "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==", + "dev": true, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/update-browserslist-db": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz", + "integrity": "sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/update-notifier": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-5.1.0.tgz", + "integrity": "sha512-ItnICHbeMh9GqUy31hFPrD1kcuZ3rpxDZbf4KUDavXwS0bW5m7SLbDQpGX3UYr072cbrF5hFUs3r5tUsPwjfHw==", + "dev": true, + "dependencies": { + "boxen": "^5.0.0", + "chalk": "^4.1.0", + "configstore": "^5.0.1", + "has-yarn": "^2.1.0", + "import-lazy": "^2.1.0", + "is-ci": "^2.0.0", + "is-installed-globally": "^0.4.0", + "is-npm": "^5.0.0", + "is-yarn-global": "^0.3.0", + "latest-version": "^5.1.0", + "pupa": "^2.1.1", + "semver": "^7.3.4", + "semver-diff": "^3.1.1", + "xdg-basedir": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/yeoman/update-notifier?sponsor=1" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/url-parse": { + "version": "1.5.10", + "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.10.tgz", + "integrity": "sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==", + "dev": true, + "dependencies": { + "querystringify": "^2.1.1", + "requires-port": "^1.0.0" + } + }, + "node_modules/url-parse-lax": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", + "integrity": "sha512-NjFKA0DidqPa5ciFcSrXnAltTtzz84ogy+NebPvfEgAck0+TNg4UJ4IN+fB7zRZfbgUf0syOo9MDxFkDSMuFaQ==", + "dev": true, + "dependencies": { + "prepend-http": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "dev": true + }, + "node_modules/util-extend": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/util-extend/-/util-extend-1.0.3.tgz", + "integrity": "sha512-mLs5zAK+ctllYBj+iAQvlDCwoxU/WDOUaJkcFudeiAX6OajC6BKXJUa9a+tbtkC11dz2Ufb7h0lyvIOVn4LADA==", + "dev": true + }, + "node_modules/utrie": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/utrie/-/utrie-1.0.2.tgz", + "integrity": "sha512-1MLa5ouZiOmQzUbjbu9VmjLzn1QLXBhwpUa7kdLUQK+KQ5KA9I1vk5U4YHe/X2Ch7PYnJfWuWT+VbuxbGwljhw==", + "optional": true, + "dependencies": { + "base64-arraybuffer": "^1.0.2" + } + }, + "node_modules/v8-compile-cache-lib": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", + "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==", + "dev": true + }, + "node_modules/v8-to-istanbul": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-8.1.1.tgz", + "integrity": "sha512-FGtKtv3xIpR6BYhvgH8MI/y78oT7d8Au3ww4QIxymrCtZEh5b8gCw2siywE+puhEmuWKDtmfrvF5UlB298ut3w==", + "dev": true, + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.1", + "convert-source-map": "^1.6.0", + "source-map": "^0.7.3" + }, + "engines": { + "node": ">=10.12.0" + } + }, + "node_modules/v8-to-istanbul/node_modules/source-map": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "dev": true, + "dependencies": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "node_modules/w3c-hr-time": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz", + "integrity": "sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==", + "deprecated": "Use your platform's native performance.now() and performance.timeOrigin.", + "dev": true, + "dependencies": { + "browser-process-hrtime": "^1.0.0" + } + }, + "node_modules/w3c-xmlserializer": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz", + "integrity": "sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA==", + "dev": true, + "dependencies": { + "xml-name-validator": "^3.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/walker": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", + "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==", + "dev": true, + "dependencies": { + "makeerror": "1.0.12" + } + }, + "node_modules/wcwidth": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", + "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==", + "dev": true, + "dependencies": { + "defaults": "^1.0.3" + } + }, + "node_modules/webidl-conversions": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-6.1.0.tgz", + "integrity": "sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==", + "dev": true, + "engines": { + "node": ">=10.4" + } + }, + "node_modules/whatwg-encoding": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz", + "integrity": "sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==", + "dev": true, + "dependencies": { + "iconv-lite": "0.4.24" + } + }, + "node_modules/whatwg-mimetype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz", + "integrity": "sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==", + "dev": true + }, + "node_modules/whatwg-url": { + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-8.7.0.tgz", + "integrity": "sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg==", + "dev": true, + "dependencies": { + "lodash": "^4.7.0", + "tr46": "^2.1.0", + "webidl-conversions": "^6.1.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/which-boxed-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", + "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", + "dev": true, + "dependencies": { + "is-bigint": "^1.0.1", + "is-boolean-object": "^1.1.0", + "is-number-object": "^1.0.4", + "is-string": "^1.0.5", + "is-symbol": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-typed-array": { + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.9.tgz", + "integrity": "sha512-w9c4xkx6mPidwp7180ckYWfMmvxpjlZuIudNtDf4N/tTAUB8VJbX25qZoAsrtGuYNnGw3pa0AXgbGKRB8/EceA==", + "dev": true, + "dependencies": { + "available-typed-arrays": "^1.0.5", + "call-bind": "^1.0.2", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-tostringtag": "^1.0.0", + "is-typed-array": "^1.1.10" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/wide-align": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", + "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", + "dev": true, + "dependencies": { + "string-width": "^1.0.2 || 2 || 3 || 4" + } + }, + "node_modules/widest-line": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz", + "integrity": "sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==", + "dev": true, + "dependencies": { + "string-width": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/word-wrap": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", + "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "dev": true + }, + "node_modules/write-file-atomic": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", + "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", + "dev": true, + "dependencies": { + "imurmurhash": "^0.1.4", + "is-typedarray": "^1.0.0", + "signal-exit": "^3.0.2", + "typedarray-to-buffer": "^3.1.5" + } + }, + "node_modules/write-json-file": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/write-json-file/-/write-json-file-4.3.0.tgz", + "integrity": "sha512-PxiShnxf0IlnQuMYOPPhPkhExoCQuTUNPOa/2JWCYTmBquU9njyyDuwRKN26IZBlp4yn1nt+Agh2HOOBl+55HQ==", + "dev": true, + "dependencies": { + "detect-indent": "^6.0.0", + "graceful-fs": "^4.1.15", + "is-plain-obj": "^2.0.0", + "make-dir": "^3.0.0", + "sort-keys": "^4.0.0", + "write-file-atomic": "^3.0.0" + }, + "engines": { + "node": ">=8.3" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ws": { + "version": "7.5.9", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz", + "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", + "dev": true, + "engines": { + "node": ">=8.3.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/xdg-basedir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz", + "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/xml-name-validator": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz", + "integrity": "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==", + "dev": true + }, + "node_modules/xmlchars": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz", + "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==", + "dev": true + }, + "node_modules/xss": { + "version": "1.0.14", + "resolved": "https://registry.npmjs.org/xss/-/xss-1.0.14.tgz", + "integrity": "sha512-og7TEJhXvn1a7kzZGQ7ETjdQVS2UfZyTlsEdDOqvQF7GoxNfY+0YLCzBy1kPdsDDx4QuNAonQPddpsn6Xl/7sw==", + "dev": true, + "dependencies": { + "commander": "^2.20.3", + "cssfilter": "0.0.10" + }, + "bin": { + "xss": "bin/xss" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", + "dev": true, + "engines": { + "node": ">=0.4" + } + }, + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true + }, + "node_modules/yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/yargs": { + "version": "17.7.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.1.tgz", + "integrity": "sha512-cwiTb08Xuv5fqF4AovYacTFNxk62th7LKJ6BL9IGUpTJrWoU7/7WdQGTP2SjKf1dUNBGzDd28p/Yfs/GI6JrLw==", + "dev": true, + "dependencies": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/yauzl": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", + "integrity": "sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==", + "dev": true, + "dependencies": { + "buffer-crc32": "~0.2.3", + "fd-slicer": "~1.1.0" + } + }, + "node_modules/yn": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", + "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + } + }, + "dependencies": { + "@ampproject/remapping": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", + "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", + "dev": true, + "requires": { + "@jridgewell/gen-mapping": "^0.1.0", + "@jridgewell/trace-mapping": "^0.3.9" + } + }, + "@babel/code-frame": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.10.tgz", + "integrity": "sha512-/KKIMG4UEL35WmI9OlvMhurwtytjvXoFcGNrOvyG9zIzA8YmPjVtIZUf7b05+TPO7G7/GEmLHDaoCgACHl9hhA==", + "dev": true, + "requires": { + "@babel/highlight": "^7.22.10", + "chalk": "^2.4.2" + }, + "dependencies": { + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "@babel/compat-data": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.22.9.tgz", + "integrity": "sha512-5UamI7xkUcJ3i9qVDS+KFDEK8/7oJ55/sJMB1Ge7IEapr7KfdfV/HErR+koZwOfd+SgtFKOKRhRakdg++DcJpQ==", + "dev": true + }, + "@babel/core": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.22.10.tgz", + "integrity": "sha512-fTmqbbUBAwCcre6zPzNngvsI0aNrPZe77AeqvDxWM9Nm+04RrJ3CAmGHA9f7lJQY6ZMhRztNemy4uslDxTX4Qw==", + "dev": true, + "requires": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.22.10", + "@babel/generator": "^7.22.10", + "@babel/helper-compilation-targets": "^7.22.10", + "@babel/helper-module-transforms": "^7.22.9", + "@babel/helpers": "^7.22.10", + "@babel/parser": "^7.22.10", + "@babel/template": "^7.22.5", + "@babel/traverse": "^7.22.10", + "@babel/types": "^7.22.10", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.2", + "semver": "^6.3.1" + }, + "dependencies": { + "semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true + } + } + }, + "@babel/eslint-parser": { + "version": "7.19.1", + "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.19.1.tgz", + "integrity": "sha512-AqNf2QWt1rtu2/1rLswy6CDP7H9Oh3mMhk177Y67Rg8d7RD9WfOLLv8CGn6tisFvS2htm86yIe1yLF6I1UDaGQ==", + "dev": true, + "requires": { + "@nicolo-ribaudo/eslint-scope-5-internals": "5.1.1-v1", + "eslint-visitor-keys": "^2.1.0", + "semver": "^6.3.0" + }, + "dependencies": { + "eslint-visitor-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "dev": true + }, + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "@babel/generator": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.22.10.tgz", + "integrity": "sha512-79KIf7YiWjjdZ81JnLujDRApWtl7BxTqWD88+FFdQEIOG8LJ0etDOM7CXuIgGJa55sGOwZVwuEsaLEm0PJ5/+A==", + "dev": true, + "requires": { + "@babel/types": "^7.22.10", + "@jridgewell/gen-mapping": "^0.3.2", + "@jridgewell/trace-mapping": "^0.3.17", + "jsesc": "^2.5.1" + }, + "dependencies": { + "@jridgewell/gen-mapping": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", + "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "dev": true, + "requires": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + } + } + } + }, + "@babel/helper-annotate-as-pure": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.22.5.tgz", + "integrity": "sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg==", + "dev": true, + "requires": { + "@babel/types": "^7.22.5" + } + }, + "@babel/helper-builder-binary-assignment-operator-visitor": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.22.10.tgz", + "integrity": "sha512-Av0qubwDQxC56DoUReVDeLfMEjYYSN1nZrTUrWkXd7hpU73ymRANkbuDm3yni9npkn+RXy9nNbEJZEzXr7xrfQ==", + "dev": true, + "requires": { + "@babel/types": "^7.22.10" + } + }, + "@babel/helper-compilation-targets": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.10.tgz", + "integrity": "sha512-JMSwHD4J7SLod0idLq5PKgI+6g/hLD/iuWBq08ZX49xE14VpVEojJ5rHWptpirV2j020MvypRLAXAO50igCJ5Q==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.22.9", + "@babel/helper-validator-option": "^7.22.5", + "browserslist": "^4.21.9", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "dependencies": { + "semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true + } + } + }, + "@babel/helper-create-class-features-plugin": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.22.10.tgz", + "integrity": "sha512-5IBb77txKYQPpOEdUdIhBx8VrZyDCQ+H82H0+5dX1TmuscP5vJKEE3cKurjtIw/vFwzbVH48VweE78kVDBrqjA==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-function-name": "^7.22.5", + "@babel/helper-member-expression-to-functions": "^7.22.5", + "@babel/helper-optimise-call-expression": "^7.22.5", + "@babel/helper-replace-supers": "^7.22.9", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "semver": "^6.3.1" + }, + "dependencies": { + "semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true + } + } + }, + "@babel/helper-create-regexp-features-plugin": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.22.9.tgz", + "integrity": "sha512-+svjVa/tFwsNSG4NEy1h85+HQ5imbT92Q5/bgtS7P0GTQlP8WuFdqsiABmQouhiFGyV66oGxZFpeYHza1rNsKw==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "regexpu-core": "^5.3.1", + "semver": "^6.3.1" + }, + "dependencies": { + "semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true + } + } + }, + "@babel/helper-define-polyfill-provider": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.4.2.tgz", + "integrity": "sha512-k0qnnOqHn5dK9pZpfD5XXZ9SojAITdCKRn2Lp6rnDGzIbaP0rHyMPk/4wsSxVBVz4RfN0q6VpXWP2pDGIoQ7hw==", + "dev": true, + "requires": { + "@babel/helper-compilation-targets": "^7.22.6", + "@babel/helper-plugin-utils": "^7.22.5", + "debug": "^4.1.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.14.2" + }, + "dependencies": { + "resolve": { + "version": "1.22.4", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.4.tgz", + "integrity": "sha512-PXNdCiPqDqeUou+w1C2eTQbNfxKSuMxqTCuvlmmMsk1NWHL5fRrhY6Pl0qEYYc6+QqGClco1Qj8XnjPego4wfg==", + "dev": true, + "requires": { + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + } + } + } + }, + "@babel/helper-environment-visitor": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.5.tgz", + "integrity": "sha512-XGmhECfVA/5sAt+H+xpSg0mfrHq6FzNr9Oxh7PSEBBRUb/mL7Kz3NICXb194rCqAEdxkhPT1a88teizAFyvk8Q==", + "dev": true + }, + "@babel/helper-function-name": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.22.5.tgz", + "integrity": "sha512-wtHSq6jMRE3uF2otvfuD3DIvVhOsSNshQl0Qrd7qC9oQJzHvOL4qQXlQn2916+CXGywIjpGuIkoyZRRxHPiNQQ==", + "dev": true, + "requires": { + "@babel/template": "^7.22.5", + "@babel/types": "^7.22.5" + } + }, + "@babel/helper-hoist-variables": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz", + "integrity": "sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==", + "dev": true, + "requires": { + "@babel/types": "^7.22.5" + } + }, + "@babel/helper-member-expression-to-functions": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.22.5.tgz", + "integrity": "sha512-aBiH1NKMG0H2cGZqspNvsaBe6wNGjbJjuLy29aU+eDZjSbbN53BaxlpB02xm9v34pLTZ1nIQPFYn2qMZoa5BQQ==", + "dev": true, + "requires": { + "@babel/types": "^7.22.5" + } + }, + "@babel/helper-module-imports": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.5.tgz", + "integrity": "sha512-8Dl6+HD/cKifutF5qGd/8ZJi84QeAKh+CEe1sBzz8UayBBGg1dAIJrdHOcOM5b2MpzWL2yuotJTtGjETq0qjXg==", + "dev": true, + "requires": { + "@babel/types": "^7.22.5" + } + }, + "@babel/helper-module-transforms": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.22.9.tgz", + "integrity": "sha512-t+WA2Xn5K+rTeGtC8jCsdAH52bjggG5TKRuRrAGNM/mjIbO4GxvlLMFOEz9wXY5I2XQ60PMFsAG2WIcG82dQMQ==", + "dev": true, + "requires": { + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-module-imports": "^7.22.5", + "@babel/helper-simple-access": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "@babel/helper-validator-identifier": "^7.22.5" + } + }, + "@babel/helper-optimise-call-expression": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.22.5.tgz", + "integrity": "sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw==", + "dev": true, + "requires": { + "@babel/types": "^7.22.5" + } + }, + "@babel/helper-plugin-utils": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.22.5.tgz", + "integrity": "sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==", + "dev": true + }, + "@babel/helper-remap-async-to-generator": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.22.9.tgz", + "integrity": "sha512-8WWC4oR4Px+tr+Fp0X3RHDVfINGpF3ad1HIbrc8A77epiR6eMMc6jsgozkzT2uDiOOdoS9cLIQ+XD2XvI2WSmQ==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-wrap-function": "^7.22.9" + } + }, + "@babel/helper-replace-supers": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.22.9.tgz", + "integrity": "sha512-LJIKvvpgPOPUThdYqcX6IXRuIcTkcAub0IaDRGCZH0p5GPUp7PhRU9QVgFcDDd51BaPkk77ZjqFwh6DZTAEmGg==", + "dev": true, + "requires": { + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-member-expression-to-functions": "^7.22.5", + "@babel/helper-optimise-call-expression": "^7.22.5" + } + }, + "@babel/helper-simple-access": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz", + "integrity": "sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==", + "dev": true, + "requires": { + "@babel/types": "^7.22.5" + } + }, + "@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.22.5.tgz", + "integrity": "sha512-tK14r66JZKiC43p8Ki33yLBVJKlQDFoA8GYN67lWCDCqoL6EMMSuM9b+Iff2jHaM/RRFYl7K+iiru7hbRqNx8Q==", + "dev": true, + "requires": { + "@babel/types": "^7.22.5" + } + }, + "@babel/helper-split-export-declaration": { + "version": "7.22.6", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz", + "integrity": "sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==", + "dev": true, + "requires": { + "@babel/types": "^7.22.5" + } + }, + "@babel/helper-string-parser": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz", + "integrity": "sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==", + "dev": true + }, + "@babel/helper-validator-identifier": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.5.tgz", + "integrity": "sha512-aJXu+6lErq8ltp+JhkJUfk1MTGyuA4v7f3pA+BJ5HLfNC6nAQ0Cpi9uOquUj8Hehg0aUiHzWQbOVJGao6ztBAQ==", + "dev": true + }, + "@babel/helper-validator-option": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.22.5.tgz", + "integrity": "sha512-R3oB6xlIVKUnxNUxbmgq7pKjxpru24zlimpE8WK47fACIlM0II/Hm1RS8IaOI7NgCr6LNS+jl5l75m20npAziw==", + "dev": true + }, + "@babel/helper-wrap-function": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.22.10.tgz", + "integrity": "sha512-OnMhjWjuGYtdoO3FmsEFWvBStBAe2QOgwOLsLNDjN+aaiMD8InJk1/O3HSD8lkqTjCgg5YI34Tz15KNNA3p+nQ==", + "dev": true, + "requires": { + "@babel/helper-function-name": "^7.22.5", + "@babel/template": "^7.22.5", + "@babel/types": "^7.22.10" + } + }, + "@babel/helpers": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.22.10.tgz", + "integrity": "sha512-a41J4NW8HyZa1I1vAndrraTlPZ/eZoga2ZgS7fEr0tZJGVU4xqdE80CEm0CcNjha5EZ8fTBYLKHF0kqDUuAwQw==", + "dev": true, + "requires": { + "@babel/template": "^7.22.5", + "@babel/traverse": "^7.22.10", + "@babel/types": "^7.22.10" + } + }, + "@babel/highlight": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.10.tgz", + "integrity": "sha512-78aUtVcT7MUscr0K5mIEnkwxPE0MaxkR5RxRwuHaQ+JuU5AmTPhY+do2mdzVTnIJJpyBglql2pehuBIWHug+WQ==", + "dev": true, + "requires": { + "@babel/helper-validator-identifier": "^7.22.5", + "chalk": "^2.4.2", + "js-tokens": "^4.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "@babel/parser": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.22.10.tgz", + "integrity": "sha512-lNbdGsQb9ekfsnjFGhEiF4hfFqGgfOP3H3d27re3n+CGhNuTSUEQdfWk556sTLNTloczcdM5TYF2LhzmDQKyvQ==", + "dev": true + }, + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.22.5.tgz", + "integrity": "sha512-NP1M5Rf+u2Gw9qfSO4ihjcTGW5zXTi36ITLd4/EoAcEhIZ0yjMqmftDNl3QC19CX7olhrjpyU454g/2W7X0jvQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.22.5" + } + }, + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.22.5.tgz", + "integrity": "sha512-31Bb65aZaUwqCbWMnZPduIZxCBngHFlzyN6Dq6KAJjtx+lx6ohKHubc61OomYi7XwVD4Ol0XCVz4h+pYFR048g==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", + "@babel/plugin-transform-optional-chaining": "^7.22.5" + } + }, + "@babel/plugin-proposal-private-property-in-object": { + "version": "7.21.0-placeholder-for-preset-env.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz", + "integrity": "sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==", + "dev": true, + "requires": {} + }, + "@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", + "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" } }, - "node_modules/validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "@babel/plugin-syntax-bigint": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz", + "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==", "dev": true, - "dependencies": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" } }, - "node_modules/w3c-hr-time": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz", - "integrity": "sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==", - "deprecated": "Use your platform's native performance.now() and performance.timeOrigin.", + "@babel/plugin-syntax-class-properties": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", + "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", "dev": true, - "dependencies": { - "browser-process-hrtime": "^1.0.0" + "requires": { + "@babel/helper-plugin-utils": "^7.12.13" } }, - "node_modules/w3c-xmlserializer": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz", - "integrity": "sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA==", + "@babel/plugin-syntax-class-static-block": { + "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, - "dependencies": { - "xml-name-validator": "^3.0.0" - }, - "engines": { - "node": ">=10" + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" } }, - "node_modules/walker": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", - "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==", + "@babel/plugin-syntax-dynamic-import": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", + "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", "dev": true, - "dependencies": { - "makeerror": "1.0.12" + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" } }, - "node_modules/wcwidth": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", - "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==", + "@babel/plugin-syntax-export-namespace-from": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", + "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", "dev": true, - "dependencies": { - "defaults": "^1.0.3" + "requires": { + "@babel/helper-plugin-utils": "^7.8.3" } }, - "node_modules/webidl-conversions": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-6.1.0.tgz", - "integrity": "sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==", + "@babel/plugin-syntax-import-assertions": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.22.5.tgz", + "integrity": "sha512-rdV97N7KqsRzeNGoWUOK6yUsWarLjE5Su/Snk9IYPU9CwkWHs4t+rTGOvffTR8XGkJMTAdLfO0xVnXm8wugIJg==", "dev": true, - "engines": { - "node": ">=10.4" + "requires": { + "@babel/helper-plugin-utils": "^7.22.5" } }, - "node_modules/whatwg-encoding": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz", - "integrity": "sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==", + "@babel/plugin-syntax-import-attributes": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.22.5.tgz", + "integrity": "sha512-KwvoWDeNKPETmozyFE0P2rOLqh39EoQHNjqizrI5B8Vt0ZNS7M56s7dAiAqbYfiAYOuIzIh96z3iR2ktgu3tEg==", "dev": true, - "dependencies": { - "iconv-lite": "0.4.24" + "requires": { + "@babel/helper-plugin-utils": "^7.22.5" } }, - "node_modules/whatwg-mimetype": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz", - "integrity": "sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==", - "dev": true - }, - "node_modules/whatwg-url": { - "version": "8.7.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-8.7.0.tgz", - "integrity": "sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg==", + "@babel/plugin-syntax-import-meta": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", + "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", "dev": true, - "dependencies": { - "lodash": "^4.7.0", - "tr46": "^2.1.0", - "webidl-conversions": "^6.1.0" - }, - "engines": { - "node": ">=10" + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" } }, - "node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "@babel/plugin-syntax-json-strings": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", + "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", "dev": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" } }, - "node_modules/which-boxed-primitive": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", - "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", + "@babel/plugin-syntax-jsx": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.22.5.tgz", + "integrity": "sha512-gvyP4hZrgrs/wWMaocvxZ44Hw0b3W8Pe+cMxc8V1ULQ07oh8VNbIRaoD1LRZVTvD+0nieDKjfgKg89sD7rrKrg==", "dev": true, - "dependencies": { - "is-bigint": "^1.0.1", - "is-boolean-object": "^1.1.0", - "is-number-object": "^1.0.4", - "is-string": "^1.0.5", - "is-symbol": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "requires": { + "@babel/helper-plugin-utils": "^7.22.5" } }, - "node_modules/which-typed-array": { - "version": "1.1.9", - "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.9.tgz", - "integrity": "sha512-w9c4xkx6mPidwp7180ckYWfMmvxpjlZuIudNtDf4N/tTAUB8VJbX25qZoAsrtGuYNnGw3pa0AXgbGKRB8/EceA==", + "@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", + "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", "dev": true, - "dependencies": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-tostringtag": "^1.0.0", - "is-typed-array": "^1.1.10" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" } }, - "node_modules/wide-align": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", - "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", + "@babel/plugin-syntax-nullish-coalescing-operator": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", + "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", "dev": true, - "dependencies": { - "string-width": "^1.0.2 || 2 || 3 || 4" + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" } }, - "node_modules/widest-line": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz", - "integrity": "sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==", + "@babel/plugin-syntax-numeric-separator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", + "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", "dev": true, - "dependencies": { - "string-width": "^4.0.0" - }, - "engines": { - "node": ">=8" + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" } }, - "node_modules/word-wrap": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", - "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", + "@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", + "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", "dev": true, - "engines": { - "node": ">=0.10.0" + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" } }, - "node_modules/wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "@babel/plugin-syntax-optional-catch-binding": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", + "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", "dev": true, - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" } }, - "node_modules/wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", - "dev": true - }, - "node_modules/write-file-atomic": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", - "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", + "@babel/plugin-syntax-optional-chaining": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", + "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", "dev": true, - "dependencies": { - "imurmurhash": "^0.1.4", - "is-typedarray": "^1.0.0", - "signal-exit": "^3.0.2", - "typedarray-to-buffer": "^3.1.5" + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" } }, - "node_modules/write-json-file": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/write-json-file/-/write-json-file-4.3.0.tgz", - "integrity": "sha512-PxiShnxf0IlnQuMYOPPhPkhExoCQuTUNPOa/2JWCYTmBquU9njyyDuwRKN26IZBlp4yn1nt+Agh2HOOBl+55HQ==", + "@babel/plugin-syntax-private-property-in-object": { + "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, - "dependencies": { - "detect-indent": "^6.0.0", - "graceful-fs": "^4.1.15", - "is-plain-obj": "^2.0.0", - "make-dir": "^3.0.0", - "sort-keys": "^4.0.0", - "write-file-atomic": "^3.0.0" - }, - "engines": { - "node": ">=8.3" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-syntax-top-level-await": { + "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.14.5" } }, - "node_modules/ws": { - "version": "7.5.9", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz", - "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", + "@babel/plugin-syntax-typescript": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.22.5.tgz", + "integrity": "sha512-1mS2o03i7t1c6VzH6fdQ3OA8tcEIxwG18zIPRp+UY1Ihv6W+XZzBCVxExF9upussPXJ0xE9XRHwMoNs1ep/nRQ==", "dev": true, - "engines": { - "node": ">=8.3.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": "^5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } + "requires": { + "@babel/helper-plugin-utils": "^7.22.5" } }, - "node_modules/xdg-basedir": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz", - "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==", + "@babel/plugin-syntax-unicode-sets-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-unicode-sets-regex/-/plugin-syntax-unicode-sets-regex-7.18.6.tgz", + "integrity": "sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==", "dev": true, - "engines": { - "node": ">=8" + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" } }, - "node_modules/xml-name-validator": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz", - "integrity": "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==", - "dev": true + "@babel/plugin-transform-arrow-functions": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.22.5.tgz", + "integrity": "sha512-26lTNXoVRdAnsaDXPpvCNUq+OVWEVC6bx7Vvz9rC53F2bagUWW4u4ii2+h8Fejfh7RYqPxn+libeFBBck9muEw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.22.5" + } }, - "node_modules/xmlchars": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz", - "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==", - "dev": true + "@babel/plugin-transform-async-generator-functions": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.22.10.tgz", + "integrity": "sha512-eueE8lvKVzq5wIObKK/7dvoeKJ+xc6TvRn6aysIjS6pSCeLy7S/eVi7pEQknZqyqvzaNKdDtem8nUNTBgDVR2g==", + "dev": true, + "requires": { + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-remap-async-to-generator": "^7.22.9", + "@babel/plugin-syntax-async-generators": "^7.8.4" + } }, - "node_modules/xss": { - "version": "1.0.14", - "resolved": "https://registry.npmjs.org/xss/-/xss-1.0.14.tgz", - "integrity": "sha512-og7TEJhXvn1a7kzZGQ7ETjdQVS2UfZyTlsEdDOqvQF7GoxNfY+0YLCzBy1kPdsDDx4QuNAonQPddpsn6Xl/7sw==", + "@babel/plugin-transform-async-to-generator": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.22.5.tgz", + "integrity": "sha512-b1A8D8ZzE/VhNDoV1MSJTnpKkCG5bJo+19R4o4oy03zM7ws8yEMK755j61Dc3EyvdysbqH5BOOTquJ7ZX9C6vQ==", "dev": true, - "dependencies": { - "commander": "^2.20.3", - "cssfilter": "0.0.10" - }, - "bin": { - "xss": "bin/xss" - }, - "engines": { - "node": ">= 0.10.0" + "requires": { + "@babel/helper-module-imports": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-remap-async-to-generator": "^7.22.5" } }, - "node_modules/xtend": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", - "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", + "@babel/plugin-transform-block-scoped-functions": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.22.5.tgz", + "integrity": "sha512-tdXZ2UdknEKQWKJP1KMNmuF5Lx3MymtMN/pvA+p/VEkhK8jVcQ1fzSy8KM9qRYhAf2/lV33hoMPKI/xaI9sADA==", "dev": true, - "engines": { - "node": ">=0.4" + "requires": { + "@babel/helper-plugin-utils": "^7.22.5" } }, - "node_modules/y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "@babel/plugin-transform-block-scoping": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.22.10.tgz", + "integrity": "sha512-1+kVpGAOOI1Albt6Vse7c8pHzcZQdQKW+wJH+g8mCaszOdDVwRXa/slHPqIw+oJAJANTKDMuM2cBdV0Dg618Vg==", "dev": true, - "engines": { - "node": ">=10" + "requires": { + "@babel/helper-plugin-utils": "^7.22.5" } }, - "node_modules/yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", - "dev": true + "@babel/plugin-transform-class-properties": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.22.5.tgz", + "integrity": "sha512-nDkQ0NfkOhPTq8YCLiWNxp1+f9fCobEjCb0n8WdbNUBc4IB5V7P1QnX9IjpSoquKrXF5SKojHleVNs2vGeHCHQ==", + "dev": true, + "requires": { + "@babel/helper-create-class-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + } }, - "node_modules/yaml": { - "version": "1.10.2", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", - "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "@babel/plugin-transform-class-static-block": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.22.5.tgz", + "integrity": "sha512-SPToJ5eYZLxlnp1UzdARpOGeC2GbHvr9d/UV0EukuVx8atktg194oe+C5BqQ8jRTkgLRVOPYeXRSBg1IlMoVRA==", "dev": true, - "engines": { - "node": ">= 6" + "requires": { + "@babel/helper-create-class-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-class-static-block": "^7.14.5" } }, - "node_modules/yargs": { - "version": "17.7.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.1.tgz", - "integrity": "sha512-cwiTb08Xuv5fqF4AovYacTFNxk62th7LKJ6BL9IGUpTJrWoU7/7WdQGTP2SjKf1dUNBGzDd28p/Yfs/GI6JrLw==", + "@babel/plugin-transform-classes": { + "version": "7.22.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.22.6.tgz", + "integrity": "sha512-58EgM6nuPNG6Py4Z3zSuu0xWu2VfodiMi72Jt5Kj2FECmaYk1RrTXA45z6KBFsu9tRgwQDwIiY4FXTt+YsSFAQ==", "dev": true, - "dependencies": { - "cliui": "^8.0.1", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.3", - "y18n": "^5.0.5", - "yargs-parser": "^21.1.1" + "requires": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-compilation-targets": "^7.22.6", + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-function-name": "^7.22.5", + "@babel/helper-optimise-call-expression": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-replace-supers": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "globals": "^11.1.0" }, - "engines": { - "node": ">=12" + "dependencies": { + "globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true + } } }, - "node_modules/yargs-parser": { - "version": "21.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", - "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "@babel/plugin-transform-computed-properties": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.22.5.tgz", + "integrity": "sha512-4GHWBgRf0krxPX+AaPtgBAlTgTeZmqDynokHOX7aqqAB4tHs3U2Y02zH6ETFdLZGcg9UQSD1WCmkVrE9ErHeOg==", "dev": true, - "engines": { - "node": ">=12" + "requires": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/template": "^7.22.5" } }, - "node_modules/yauzl": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", - "integrity": "sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==", + "@babel/plugin-transform-destructuring": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.22.10.tgz", + "integrity": "sha512-dPJrL0VOyxqLM9sritNbMSGx/teueHF/htMKrPT7DNxccXxRDPYqlgPFFdr8u+F+qUZOkZoXue/6rL5O5GduEw==", "dev": true, - "dependencies": { - "buffer-crc32": "~0.2.3", - "fd-slicer": "~1.1.0" + "requires": { + "@babel/helper-plugin-utils": "^7.22.5" } }, - "node_modules/yn": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", - "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", + "@babel/plugin-transform-dotall-regex": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.22.5.tgz", + "integrity": "sha512-5/Yk9QxCQCl+sOIB1WelKnVRxTJDSAIxtJLL2/pqL14ZVlbH0fUQUZa/T5/UnQtBNgghR7mfB8ERBKyKPCi7Vw==", "dev": true, - "engines": { - "node": ">=6" + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" } }, - "node_modules/yocto-queue": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", - "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "@babel/plugin-transform-duplicate-keys": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.22.5.tgz", + "integrity": "sha512-dEnYD+9BBgld5VBXHnF/DbYGp3fqGMsyxKbtD1mDyIA7AkTSpKXFhCVuj/oQVOoALfBs77DudA0BE4d5mcpmqw==", "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "requires": { + "@babel/helper-plugin-utils": "^7.22.5" } - } - }, - "dependencies": { - "@ampproject/remapping": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", - "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", + }, + "@babel/plugin-transform-dynamic-import": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.22.5.tgz", + "integrity": "sha512-0MC3ppTB1AMxd8fXjSrbPa7LT9hrImt+/fcj+Pg5YMD7UQyWp/02+JWpdnCymmsXwIx5Z+sYn1bwCn4ZJNvhqQ==", "dev": true, "requires": { - "@jridgewell/gen-mapping": "^0.1.0", - "@jridgewell/trace-mapping": "^0.3.9" + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-dynamic-import": "^7.8.3" } }, - "@babel/code-frame": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.10.tgz", - "integrity": "sha512-/KKIMG4UEL35WmI9OlvMhurwtytjvXoFcGNrOvyG9zIzA8YmPjVtIZUf7b05+TPO7G7/GEmLHDaoCgACHl9hhA==", + "@babel/plugin-transform-exponentiation-operator": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.22.5.tgz", + "integrity": "sha512-vIpJFNM/FjZ4rh1myqIya9jXwrwwgFRHPjT3DkUA9ZLHuzox8jiXkOLvwm1H+PQIP3CqfC++WPKeuDi0Sjdj1g==", "dev": true, "requires": { - "@babel/highlight": "^7.22.10", - "chalk": "^2.4.2" - }, - "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", - "dev": true - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", - "dev": true - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } + "@babel/helper-builder-binary-assignment-operator-visitor": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + } + }, + "@babel/plugin-transform-export-namespace-from": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.22.5.tgz", + "integrity": "sha512-X4hhm7FRnPgd4nDA4b/5V280xCx6oL7Oob5+9qVS5C13Zq4bh1qq7LU0GgRU6b5dBWBvhGaXYVB4AcN6+ol6vg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3" } }, - "@babel/compat-data": { - "version": "7.22.9", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.22.9.tgz", - "integrity": "sha512-5UamI7xkUcJ3i9qVDS+KFDEK8/7oJ55/sJMB1Ge7IEapr7KfdfV/HErR+koZwOfd+SgtFKOKRhRakdg++DcJpQ==", - "dev": true - }, - "@babel/core": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.22.10.tgz", - "integrity": "sha512-fTmqbbUBAwCcre6zPzNngvsI0aNrPZe77AeqvDxWM9Nm+04RrJ3CAmGHA9f7lJQY6ZMhRztNemy4uslDxTX4Qw==", + "@babel/plugin-transform-for-of": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.22.5.tgz", + "integrity": "sha512-3kxQjX1dU9uudwSshyLeEipvrLjBCVthCgeTp6CzE/9JYrlAIaeekVxRpCWsDDfYTfRZRoCeZatCQvwo+wvK8A==", "dev": true, "requires": { - "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.22.10", - "@babel/generator": "^7.22.10", - "@babel/helper-compilation-targets": "^7.22.10", - "@babel/helper-module-transforms": "^7.22.9", - "@babel/helpers": "^7.22.10", - "@babel/parser": "^7.22.10", - "@babel/template": "^7.22.5", - "@babel/traverse": "^7.22.10", - "@babel/types": "^7.22.10", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.2", - "json5": "^2.2.2", - "semver": "^6.3.1" - }, - "dependencies": { - "semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true - } + "@babel/helper-plugin-utils": "^7.22.5" } }, - "@babel/eslint-parser": { - "version": "7.19.1", - "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.19.1.tgz", - "integrity": "sha512-AqNf2QWt1rtu2/1rLswy6CDP7H9Oh3mMhk177Y67Rg8d7RD9WfOLLv8CGn6tisFvS2htm86yIe1yLF6I1UDaGQ==", + "@babel/plugin-transform-function-name": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.22.5.tgz", + "integrity": "sha512-UIzQNMS0p0HHiQm3oelztj+ECwFnj+ZRV4KnguvlsD2of1whUeM6o7wGNj6oLwcDoAXQ8gEqfgC24D+VdIcevg==", "dev": true, "requires": { - "@nicolo-ribaudo/eslint-scope-5-internals": "5.1.1-v1", - "eslint-visitor-keys": "^2.1.0", - "semver": "^6.3.0" - }, - "dependencies": { - "eslint-visitor-keys": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", - "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", - "dev": true - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } + "@babel/helper-compilation-targets": "^7.22.5", + "@babel/helper-function-name": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" } }, - "@babel/generator": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.22.10.tgz", - "integrity": "sha512-79KIf7YiWjjdZ81JnLujDRApWtl7BxTqWD88+FFdQEIOG8LJ0etDOM7CXuIgGJa55sGOwZVwuEsaLEm0PJ5/+A==", + "@babel/plugin-transform-json-strings": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.22.5.tgz", + "integrity": "sha512-DuCRB7fu8MyTLbEQd1ew3R85nx/88yMoqo2uPSjevMj3yoN7CDM8jkgrY0wmVxfJZyJ/B9fE1iq7EQppWQmR5A==", "dev": true, "requires": { - "@babel/types": "^7.22.10", - "@jridgewell/gen-mapping": "^0.3.2", - "@jridgewell/trace-mapping": "^0.3.17", - "jsesc": "^2.5.1" - }, - "dependencies": { - "@jridgewell/gen-mapping": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", - "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", - "dev": true, - "requires": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - } - } + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-json-strings": "^7.8.3" } }, - "@babel/helper-compilation-targets": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.10.tgz", - "integrity": "sha512-JMSwHD4J7SLod0idLq5PKgI+6g/hLD/iuWBq08ZX49xE14VpVEojJ5rHWptpirV2j020MvypRLAXAO50igCJ5Q==", + "@babel/plugin-transform-literals": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.22.5.tgz", + "integrity": "sha512-fTLj4D79M+mepcw3dgFBTIDYpbcB9Sm0bpm4ppXPaO+U+PKFFyV9MGRvS0gvGw62sd10kT5lRMKXAADb9pWy8g==", "dev": true, "requires": { - "@babel/compat-data": "^7.22.9", - "@babel/helper-validator-option": "^7.22.5", - "browserslist": "^4.21.9", - "lru-cache": "^5.1.1", - "semver": "^6.3.1" - }, - "dependencies": { - "semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true - } + "@babel/helper-plugin-utils": "^7.22.5" } }, - "@babel/helper-environment-visitor": { + "@babel/plugin-transform-logical-assignment-operators": { "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.5.tgz", - "integrity": "sha512-XGmhECfVA/5sAt+H+xpSg0mfrHq6FzNr9Oxh7PSEBBRUb/mL7Kz3NICXb194rCqAEdxkhPT1a88teizAFyvk8Q==", - "dev": true + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.22.5.tgz", + "integrity": "sha512-MQQOUW1KL8X0cDWfbwYP+TbVbZm16QmQXJQ+vndPtH/BoO0lOKpVoEDMI7+PskYxH+IiE0tS8xZye0qr1lGzSA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" + } }, - "@babel/helper-function-name": { + "@babel/plugin-transform-member-expression-literals": { "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.22.5.tgz", - "integrity": "sha512-wtHSq6jMRE3uF2otvfuD3DIvVhOsSNshQl0Qrd7qC9oQJzHvOL4qQXlQn2916+CXGywIjpGuIkoyZRRxHPiNQQ==", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.22.5.tgz", + "integrity": "sha512-RZEdkNtzzYCFl9SE9ATaUMTj2hqMb4StarOJLrZRbqqU4HSBE7UlBw9WBWQiDzrJZJdUWiMTVDI6Gv/8DPvfew==", "dev": true, "requires": { - "@babel/template": "^7.22.5", - "@babel/types": "^7.22.5" + "@babel/helper-plugin-utils": "^7.22.5" } }, - "@babel/helper-hoist-variables": { + "@babel/plugin-transform-modules-amd": { "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz", - "integrity": "sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.22.5.tgz", + "integrity": "sha512-R+PTfLTcYEmb1+kK7FNkhQ1gP4KgjpSO6HfH9+f8/yfp2Nt3ggBjiVpRwmwTlfqZLafYKJACy36yDXlEmI9HjQ==", "dev": true, "requires": { - "@babel/types": "^7.22.5" + "@babel/helper-module-transforms": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" } }, - "@babel/helper-module-imports": { + "@babel/plugin-transform-modules-commonjs": { "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.5.tgz", - "integrity": "sha512-8Dl6+HD/cKifutF5qGd/8ZJi84QeAKh+CEe1sBzz8UayBBGg1dAIJrdHOcOM5b2MpzWL2yuotJTtGjETq0qjXg==", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.22.5.tgz", + "integrity": "sha512-B4pzOXj+ONRmuaQTg05b3y/4DuFz3WcCNAXPLb2Q0GT0TrGKGxNKV4jwsXts+StaM0LQczZbOpj8o1DLPDJIiA==", "dev": true, "requires": { - "@babel/types": "^7.22.5" + "@babel/helper-module-transforms": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-simple-access": "^7.22.5" } }, - "@babel/helper-module-transforms": { - "version": "7.22.9", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.22.9.tgz", - "integrity": "sha512-t+WA2Xn5K+rTeGtC8jCsdAH52bjggG5TKRuRrAGNM/mjIbO4GxvlLMFOEz9wXY5I2XQ60PMFsAG2WIcG82dQMQ==", + "@babel/plugin-transform-modules-systemjs": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.22.5.tgz", + "integrity": "sha512-emtEpoaTMsOs6Tzz+nbmcePl6AKVtS1yC4YNAeMun9U8YCsgadPNxnOPQ8GhHFB2qdx+LZu9LgoC0Lthuu05DQ==", "dev": true, "requires": { - "@babel/helper-environment-visitor": "^7.22.5", - "@babel/helper-module-imports": "^7.22.5", - "@babel/helper-simple-access": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.6", + "@babel/helper-hoist-variables": "^7.22.5", + "@babel/helper-module-transforms": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", "@babel/helper-validator-identifier": "^7.22.5" } }, - "@babel/helper-plugin-utils": { + "@babel/plugin-transform-modules-umd": { "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.22.5.tgz", - "integrity": "sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==", - "dev": true + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.22.5.tgz", + "integrity": "sha512-+S6kzefN/E1vkSsKx8kmQuqeQsvCKCd1fraCM7zXm4SFoggI099Tr4G8U81+5gtMdUeMQ4ipdQffbKLX0/7dBQ==", + "dev": true, + "requires": { + "@babel/helper-module-transforms": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + } }, - "@babel/helper-simple-access": { + "@babel/plugin-transform-named-capturing-groups-regex": { "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz", - "integrity": "sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.22.5.tgz", + "integrity": "sha512-YgLLKmS3aUBhHaxp5hi1WJTgOUb/NCuDHzGT9z9WTt3YG+CPRhJs6nprbStx6DnWM4dh6gt7SU3sZodbZ08adQ==", "dev": true, "requires": { - "@babel/types": "^7.22.5" + "@babel/helper-create-regexp-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" } }, - "@babel/helper-split-export-declaration": { - "version": "7.22.6", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz", - "integrity": "sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==", + "@babel/plugin-transform-new-target": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.22.5.tgz", + "integrity": "sha512-AsF7K0Fx/cNKVyk3a+DW0JLo+Ua598/NxMRvxDnkpCIGFh43+h/v2xyhRUYf6oD8gE4QtL83C7zZVghMjHd+iw==", "dev": true, "requires": { - "@babel/types": "^7.22.5" + "@babel/helper-plugin-utils": "^7.22.5" } }, - "@babel/helper-string-parser": { + "@babel/plugin-transform-nullish-coalescing-operator": { "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz", - "integrity": "sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==", - "dev": true + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.22.5.tgz", + "integrity": "sha512-6CF8g6z1dNYZ/VXok5uYkkBBICHZPiGEl7oDnAx2Mt1hlHVHOSIKWJaXHjQJA5VB43KZnXZDIexMchY4y2PGdA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" + } }, - "@babel/helper-validator-identifier": { + "@babel/plugin-transform-numeric-separator": { "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.5.tgz", - "integrity": "sha512-aJXu+6lErq8ltp+JhkJUfk1MTGyuA4v7f3pA+BJ5HLfNC6nAQ0Cpi9uOquUj8Hehg0aUiHzWQbOVJGao6ztBAQ==", - "dev": true + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.22.5.tgz", + "integrity": "sha512-NbslED1/6M+sXiwwtcAB/nieypGw02Ejf4KtDeMkCEpP6gWFMX1wI9WKYua+4oBneCCEmulOkRpwywypVZzs/g==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-numeric-separator": "^7.10.4" + } }, - "@babel/helper-validator-option": { + "@babel/plugin-transform-object-rest-spread": { "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.22.5.tgz", - "integrity": "sha512-R3oB6xlIVKUnxNUxbmgq7pKjxpru24zlimpE8WK47fACIlM0II/Hm1RS8IaOI7NgCr6LNS+jl5l75m20npAziw==", - "dev": true + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.22.5.tgz", + "integrity": "sha512-Kk3lyDmEslH9DnvCDA1s1kkd3YWQITiBOHngOtDL9Pt6BZjzqb6hiOlb8VfjiiQJ2unmegBqZu0rx5RxJb5vmQ==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.22.5", + "@babel/helper-compilation-targets": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-transform-parameters": "^7.22.5" + } }, - "@babel/helpers": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.22.10.tgz", - "integrity": "sha512-a41J4NW8HyZa1I1vAndrraTlPZ/eZoga2ZgS7fEr0tZJGVU4xqdE80CEm0CcNjha5EZ8fTBYLKHF0kqDUuAwQw==", + "@babel/plugin-transform-object-super": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.22.5.tgz", + "integrity": "sha512-klXqyaT9trSjIUrcsYIfETAzmOEZL3cBYqOYLJxBHfMFFggmXOv+NYSX/Jbs9mzMVESw/WycLFPRx8ba/b2Ipw==", "dev": true, "requires": { - "@babel/template": "^7.22.5", - "@babel/traverse": "^7.22.10", - "@babel/types": "^7.22.10" + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-replace-supers": "^7.22.5" } }, - "@babel/highlight": { + "@babel/plugin-transform-optional-catch-binding": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.22.5.tgz", + "integrity": "sha512-pH8orJahy+hzZje5b8e2QIlBWQvGpelS76C63Z+jhZKsmzfNaPQ+LaW6dcJ9bxTpo1mtXbgHwy765Ro3jftmUg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" + } + }, + "@babel/plugin-transform-optional-chaining": { "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.10.tgz", - "integrity": "sha512-78aUtVcT7MUscr0K5mIEnkwxPE0MaxkR5RxRwuHaQ+JuU5AmTPhY+do2mdzVTnIJJpyBglql2pehuBIWHug+WQ==", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.22.10.tgz", + "integrity": "sha512-MMkQqZAZ+MGj+jGTG3OTuhKeBpNcO+0oCEbrGNEaOmiEn+1MzRyQlYsruGiU8RTK3zV6XwrVJTmwiDOyYK6J9g==", "dev": true, "requires": { - "@babel/helper-validator-identifier": "^7.22.5", - "chalk": "^2.4.2", - "js-tokens": "^4.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", - "dev": true - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", - "dev": true - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", + "@babel/plugin-syntax-optional-chaining": "^7.8.3" + } + }, + "@babel/plugin-transform-parameters": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.22.5.tgz", + "integrity": "sha512-AVkFUBurORBREOmHRKo06FjHYgjrabpdqRSwq6+C7R5iTCZOsM4QbcB27St0a4U6fffyAOqh3s/qEfybAhfivg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.22.5" } }, - "@babel/parser": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.22.10.tgz", - "integrity": "sha512-lNbdGsQb9ekfsnjFGhEiF4hfFqGgfOP3H3d27re3n+CGhNuTSUEQdfWk556sTLNTloczcdM5TYF2LhzmDQKyvQ==", - "dev": true + "@babel/plugin-transform-private-methods": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.22.5.tgz", + "integrity": "sha512-PPjh4gyrQnGe97JTalgRGMuU4icsZFnWkzicB/fUtzlKUqvsWBKEpPPfr5a2JiyirZkHxnAqkQMO5Z5B2kK3fA==", + "dev": true, + "requires": { + "@babel/helper-create-class-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + } }, - "@babel/plugin-syntax-async-generators": { - "version": "7.8.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", - "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", + "@babel/plugin-transform-private-property-in-object": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.22.5.tgz", + "integrity": "sha512-/9xnaTTJcVoBtSSmrVyhtSvO3kbqS2ODoh2juEU72c3aYonNF0OMGiaz2gjukyKM2wBBYJP38S4JiE0Wfb5VMQ==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.0" + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-create-class-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5" } }, - "@babel/plugin-syntax-bigint": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz", - "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==", + "@babel/plugin-transform-property-literals": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.22.5.tgz", + "integrity": "sha512-TiOArgddK3mK/x1Qwf5hay2pxI6wCZnvQqrFSqbtg1GLl2JcNMitVH/YnqjP+M31pLUeTfzY1HAXFDnUBV30rQ==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.0" + "@babel/helper-plugin-utils": "^7.22.5" } }, - "@babel/plugin-syntax-class-properties": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", - "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", + "@babel/plugin-transform-regenerator": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.22.10.tgz", + "integrity": "sha512-F28b1mDt8KcT5bUyJc/U9nwzw6cV+UmTeRlXYIl2TNqMMJif0Jeey9/RQ3C4NOd2zp0/TRsDns9ttj2L523rsw==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.12.13" + "@babel/helper-plugin-utils": "^7.22.5", + "regenerator-transform": "^0.15.2" } }, - "@babel/plugin-syntax-import-meta": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", - "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", + "@babel/plugin-transform-reserved-words": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.22.5.tgz", + "integrity": "sha512-DTtGKFRQUDm8svigJzZHzb/2xatPc6TzNvAIJ5GqOKDsGFYgAskjRulbR/vGsPKq3OPqtexnz327qYpP57RFyA==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-plugin-utils": "^7.22.5" } }, - "@babel/plugin-syntax-json-strings": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", - "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", + "@babel/plugin-transform-shorthand-properties": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.22.5.tgz", + "integrity": "sha512-vM4fq9IXHscXVKzDv5itkO1X52SmdFBFcMIBZ2FRn2nqVYqw6dBexUgMvAjHW+KXpPPViD/Yo3GrDEBaRC0QYA==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.0" + "@babel/helper-plugin-utils": "^7.22.5" } }, - "@babel/plugin-syntax-logical-assignment-operators": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", - "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", + "@babel/plugin-transform-spread": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.22.5.tgz", + "integrity": "sha512-5ZzDQIGyvN4w8+dMmpohL6MBo+l2G7tfC/O2Dg7/hjpgeWvUx8FzfeOKxGog9IimPa4YekaQ9PlDqTLOljkcxg==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5" } }, - "@babel/plugin-syntax-nullish-coalescing-operator": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", - "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", + "@babel/plugin-transform-sticky-regex": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.22.5.tgz", + "integrity": "sha512-zf7LuNpHG0iEeiyCNwX4j3gDg1jgt1k3ZdXBKbZSoA3BbGQGvMiSvfbZRR3Dr3aeJe3ooWFZxOOG3IRStYp2Bw==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.0" + "@babel/helper-plugin-utils": "^7.22.5" } }, - "@babel/plugin-syntax-numeric-separator": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", - "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", + "@babel/plugin-transform-template-literals": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.22.5.tgz", + "integrity": "sha512-5ciOehRNf+EyUeewo8NkbQiUs4d6ZxiHo6BcBcnFlgiJfu16q0bQUw9Jvo0b0gBKFG1SMhDSjeKXSYuJLeFSMA==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-plugin-utils": "^7.22.5" } }, - "@babel/plugin-syntax-object-rest-spread": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", - "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", + "@babel/plugin-transform-typeof-symbol": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.22.5.tgz", + "integrity": "sha512-bYkI5lMzL4kPii4HHEEChkD0rkc+nvnlR6+o/qdqR6zrm0Sv/nodmyLhlq2DO0YKLUNd2VePmPRjJXSBh9OIdA==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.0" + "@babel/helper-plugin-utils": "^7.22.5" } }, - "@babel/plugin-syntax-optional-catch-binding": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", - "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", + "@babel/plugin-transform-typescript": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.22.10.tgz", + "integrity": "sha512-7++c8I/ymsDo4QQBAgbraXLzIM6jmfao11KgIBEYZRReWzNWH9NtNgJcyrZiXsOPh523FQm6LfpLyy/U5fn46A==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.0" + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-create-class-features-plugin": "^7.22.10", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-typescript": "^7.22.5" } }, - "@babel/plugin-syntax-optional-chaining": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", - "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", + "@babel/plugin-transform-unicode-escapes": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.22.10.tgz", + "integrity": "sha512-lRfaRKGZCBqDlRU3UIFovdp9c9mEvlylmpod0/OatICsSfuQ9YFthRo1tpTkGsklEefZdqlEFdY4A2dwTb6ohg==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.0" + "@babel/helper-plugin-utils": "^7.22.5" } }, - "@babel/plugin-syntax-top-level-await": { - "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==", + "@babel/plugin-transform-unicode-property-regex": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.22.5.tgz", + "integrity": "sha512-HCCIb+CbJIAE6sXn5CjFQXMwkCClcOfPCzTlilJ8cUatfzwHlWQkbtV0zD338u9dZskwvuOYTuuaMaA8J5EI5A==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.14.5" + "@babel/helper-create-regexp-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" } }, - "@babel/plugin-syntax-typescript": { + "@babel/plugin-transform-unicode-regex": { "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.22.5.tgz", - "integrity": "sha512-1mS2o03i7t1c6VzH6fdQ3OA8tcEIxwG18zIPRp+UY1Ihv6W+XZzBCVxExF9upussPXJ0xE9XRHwMoNs1ep/nRQ==", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.22.5.tgz", + "integrity": "sha512-028laaOKptN5vHJf9/Arr/HiJekMd41hOEZYvNsrsXqJ7YPYuX2bQxh31fkZzGmq3YqHRJzYFFAVYvKfMPKqyg==", "dev": true, "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.22.5", "@babel/helper-plugin-utils": "^7.22.5" } }, + "@babel/plugin-transform-unicode-sets-regex": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.22.5.tgz", + "integrity": "sha512-lhMfi4FC15j13eKrh3DnYHjpGj6UKQHtNKTbtc1igvAhRy4+kLhV07OpLcsN0VgDEw/MjAvJO4BdMJsHwMhzCg==", + "dev": true, + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + } + }, + "@babel/preset-env": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.22.10.tgz", + "integrity": "sha512-riHpLb1drNkpLlocmSyEg4oYJIQFeXAK/d7rI6mbD0XsvoTOOweXDmQPG/ErxsEhWk3rl3Q/3F6RFQlVFS8m0A==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.22.9", + "@babel/helper-compilation-targets": "^7.22.10", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-validator-option": "^7.22.5", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.22.5", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.22.5", + "@babel/plugin-proposal-private-property-in-object": "7.21.0-placeholder-for-preset-env.2", + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-class-properties": "^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-import-assertions": "^7.22.5", + "@babel/plugin-syntax-import-attributes": "^7.22.5", + "@babel/plugin-syntax-import-meta": "^7.10.4", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.10.4", + "@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.5", + "@babel/plugin-syntax-top-level-await": "^7.14.5", + "@babel/plugin-syntax-unicode-sets-regex": "^7.18.6", + "@babel/plugin-transform-arrow-functions": "^7.22.5", + "@babel/plugin-transform-async-generator-functions": "^7.22.10", + "@babel/plugin-transform-async-to-generator": "^7.22.5", + "@babel/plugin-transform-block-scoped-functions": "^7.22.5", + "@babel/plugin-transform-block-scoping": "^7.22.10", + "@babel/plugin-transform-class-properties": "^7.22.5", + "@babel/plugin-transform-class-static-block": "^7.22.5", + "@babel/plugin-transform-classes": "^7.22.6", + "@babel/plugin-transform-computed-properties": "^7.22.5", + "@babel/plugin-transform-destructuring": "^7.22.10", + "@babel/plugin-transform-dotall-regex": "^7.22.5", + "@babel/plugin-transform-duplicate-keys": "^7.22.5", + "@babel/plugin-transform-dynamic-import": "^7.22.5", + "@babel/plugin-transform-exponentiation-operator": "^7.22.5", + "@babel/plugin-transform-export-namespace-from": "^7.22.5", + "@babel/plugin-transform-for-of": "^7.22.5", + "@babel/plugin-transform-function-name": "^7.22.5", + "@babel/plugin-transform-json-strings": "^7.22.5", + "@babel/plugin-transform-literals": "^7.22.5", + "@babel/plugin-transform-logical-assignment-operators": "^7.22.5", + "@babel/plugin-transform-member-expression-literals": "^7.22.5", + "@babel/plugin-transform-modules-amd": "^7.22.5", + "@babel/plugin-transform-modules-commonjs": "^7.22.5", + "@babel/plugin-transform-modules-systemjs": "^7.22.5", + "@babel/plugin-transform-modules-umd": "^7.22.5", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.22.5", + "@babel/plugin-transform-new-target": "^7.22.5", + "@babel/plugin-transform-nullish-coalescing-operator": "^7.22.5", + "@babel/plugin-transform-numeric-separator": "^7.22.5", + "@babel/plugin-transform-object-rest-spread": "^7.22.5", + "@babel/plugin-transform-object-super": "^7.22.5", + "@babel/plugin-transform-optional-catch-binding": "^7.22.5", + "@babel/plugin-transform-optional-chaining": "^7.22.10", + "@babel/plugin-transform-parameters": "^7.22.5", + "@babel/plugin-transform-private-methods": "^7.22.5", + "@babel/plugin-transform-private-property-in-object": "^7.22.5", + "@babel/plugin-transform-property-literals": "^7.22.5", + "@babel/plugin-transform-regenerator": "^7.22.10", + "@babel/plugin-transform-reserved-words": "^7.22.5", + "@babel/plugin-transform-shorthand-properties": "^7.22.5", + "@babel/plugin-transform-spread": "^7.22.5", + "@babel/plugin-transform-sticky-regex": "^7.22.5", + "@babel/plugin-transform-template-literals": "^7.22.5", + "@babel/plugin-transform-typeof-symbol": "^7.22.5", + "@babel/plugin-transform-unicode-escapes": "^7.22.10", + "@babel/plugin-transform-unicode-property-regex": "^7.22.5", + "@babel/plugin-transform-unicode-regex": "^7.22.5", + "@babel/plugin-transform-unicode-sets-regex": "^7.22.5", + "@babel/preset-modules": "0.1.6-no-external-plugins", + "@babel/types": "^7.22.10", + "babel-plugin-polyfill-corejs2": "^0.4.5", + "babel-plugin-polyfill-corejs3": "^0.8.3", + "babel-plugin-polyfill-regenerator": "^0.5.2", + "core-js-compat": "^3.31.0", + "semver": "^6.3.1" + }, + "dependencies": { + "semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true + } + } + }, + "@babel/preset-modules": { + "version": "0.1.6-no-external-plugins", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.6-no-external-plugins.tgz", + "integrity": "sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/types": "^7.4.4", + "esutils": "^2.0.2" + } + }, + "@babel/preset-typescript": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.22.5.tgz", + "integrity": "sha512-YbPaal9LxztSGhmndR46FmAbkJ/1fAsw293tSU+I5E5h+cnJ3d4GTwyUgGYmOXJYdGA+uNePle4qbaRzj2NISQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-validator-option": "^7.22.5", + "@babel/plugin-syntax-jsx": "^7.22.5", + "@babel/plugin-transform-modules-commonjs": "^7.22.5", + "@babel/plugin-transform-typescript": "^7.22.5" + } + }, + "@babel/regjsgen": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@babel/regjsgen/-/regjsgen-0.8.0.tgz", + "integrity": "sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==", + "dev": true + }, "@babel/runtime": { "version": "7.20.13", "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.20.13.tgz", @@ -12673,6 +15594,12 @@ "sortablejs": "1.15.0" }, "dependencies": { + "@stencil/core": { + "version": "2.22.3", + "resolved": "https://registry.npmjs.org/@stencil/core/-/core-2.22.3.tgz", + "integrity": "sha512-kmVA0M/HojwsfkeHsifvHVIYe4l5tin7J5+DLgtl8h6WWfiMClND5K3ifCXXI2ETDNKiEk21p6jql3Fx9o2rng==", + "peer": true + }, "focus-trap": { "version": "7.4.3", "resolved": "https://registry.npmjs.org/focus-trap/-/focus-trap-7.4.3.tgz", @@ -13377,6 +16304,15 @@ } } }, + "@jest/schemas": { + "version": "29.6.0", + "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.0.tgz", + "integrity": "sha512-rxLjXyJBTL4LQeJW3aKo0M/+GkCOXsO+8i9Iu7eDb6KwtP65ayoDsitrdPBtujxQ88k4wI2FNYfa6TOGwSn6cQ==", + "dev": true, + "requires": { + "@sinclair/typebox": "^0.27.8" + } + }, "@jest/source-map": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-27.5.1.tgz", @@ -13521,6 +16457,61 @@ } } }, + "@jest/transform": { + "version": "29.6.2", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-29.6.2.tgz", + "integrity": "sha512-ZqCqEISr58Ce3U+buNFJYUktLJZOggfyvR+bZMaiV1e8B1SIvJbwZMrYz3gx/KAPn9EXmOmN+uB08yLCjWkQQg==", + "dev": true, + "requires": { + "@babel/core": "^7.11.6", + "@jest/types": "^29.6.1", + "@jridgewell/trace-mapping": "^0.3.18", + "babel-plugin-istanbul": "^6.1.1", + "chalk": "^4.0.0", + "convert-source-map": "^2.0.0", + "fast-json-stable-stringify": "^2.1.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.6.2", + "jest-regex-util": "^29.4.3", + "jest-util": "^29.6.2", + "micromatch": "^4.0.4", + "pirates": "^4.0.4", + "slash": "^3.0.0", + "write-file-atomic": "^4.0.2" + }, + "dependencies": { + "convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true + }, + "write-file-atomic": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz", + "integrity": "sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==", + "dev": true, + "requires": { + "imurmurhash": "^0.1.4", + "signal-exit": "^3.0.7" + } + } + } + }, + "@jest/types": { + "version": "29.6.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.6.1.tgz", + "integrity": "sha512-tPKQNMPuXgvdOn2/Lg9HNfUvjYVGolt04Hp03f5hAk878uwOLikN+JzeLY0HcVgKgFl9Hs3EIqpu3WX27XNhnw==", + "dev": true, + "requires": { + "@jest/schemas": "^29.6.0", + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^17.0.8", + "chalk": "^4.0.0" + } + }, "@jridgewell/gen-mapping": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", @@ -13742,6 +16733,27 @@ "pako": "^1.0.10" } }, + "@puppeteer/browsers": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@puppeteer/browsers/-/browsers-1.6.0.tgz", + "integrity": "sha512-R2ib8j329427jtKB/qlz0MJbwfJE/6I8ocJLiajsRqJ2PPI8DbjiNzC3lQZeISXEcjOBVhbG2RafN8SlHdcT+A==", + "dev": true, + "requires": { + "debug": "4.3.4", + "extract-zip": "2.0.1", + "progress": "2.0.3", + "proxy-agent": "6.3.0", + "tar-fs": "3.0.4", + "unbzip2-stream": "1.4.3", + "yargs": "17.7.1" + } + }, + "@sinclair/typebox": { + "version": "0.27.8", + "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz", + "integrity": "sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==", + "dev": true + }, "@sindresorhus/is": { "version": "0.14.0", "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz", @@ -13767,9 +16779,9 @@ } }, "@stencil/core": { - "version": "2.22.3", - "resolved": "https://registry.npmjs.org/@stencil/core/-/core-2.22.3.tgz", - "integrity": "sha512-kmVA0M/HojwsfkeHsifvHVIYe4l5tin7J5+DLgtl8h6WWfiMClND5K3ifCXXI2ETDNKiEk21p6jql3Fx9o2rng==" + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/@stencil/core/-/core-4.0.5.tgz", + "integrity": "sha512-0nZRvvhjjOKsQFGX0pKiDtOS/5IiL7HRxtLqpIxHAxXKLs9ZcomTsdOwl12m/qjx2AtQReOfP8+x8jLOBNMOIQ==" }, "@stencil/postcss": { "version": "2.1.0", @@ -13801,16 +16813,16 @@ } }, "@stencil/sass": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@stencil/sass/-/sass-2.0.3.tgz", - "integrity": "sha512-ypS+0f6bJH2qXqrNAHirlYOWFax+qKKOIePLs7cu4LfKFr4ZVJSGRFBdgaeRrZMUhJWnhjV6io2uDldhrQhnMg==", + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@stencil/sass/-/sass-3.0.5.tgz", + "integrity": "sha512-9nyllMXOEvHywo6fP2iwXgnq32A+OOUE36Aq7iUjzwT3wdr04qsvupO1JNIyRvmvCDF15hOKXztrZH1/wDu2Zg==", "dev": true, "requires": {} }, "@stencil/store": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@stencil/store/-/store-2.0.3.tgz", - "integrity": "sha512-45SkXtVXaYMo3itvfUleKjQr8BNowi6b0i1jHCx8O2UXJag5myvstjf4uIxkW6IscV92VzLrpIXUFvbJJKa7DA==", + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/@stencil/store/-/store-2.0.9.tgz", + "integrity": "sha512-wPVkgOEeOVZ6OGuUy7lV/qYyhj7Ra3vZkebqT58HdkaaAAmaUCtinUG02e05iTQIoOWpN7oNhq/MWvhY7H/Wyw==", "dev": true, "requires": {} }, @@ -13829,6 +16841,12 @@ "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==", "dev": true }, + "@tootallnate/quickjs-emscripten": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@tootallnate/quickjs-emscripten/-/quickjs-emscripten-0.23.0.tgz", + "integrity": "sha512-C5Mc6rdnsaJDjO3UpGW/CQTHtCKaYlScZTly4JIu97Jxo/odCiH0ITnDXSJPTOrEKk/ycSZ0AOgTmkDtkOsvIA==", + "dev": true + }, "@tsconfig/node10": { "version": "1.0.9", "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.9.tgz", @@ -14013,12 +17031,12 @@ "dev": true }, "@types/puppeteer": { - "version": "5.4.7", - "resolved": "https://registry.npmjs.org/@types/puppeteer/-/puppeteer-5.4.7.tgz", - "integrity": "sha512-JdGWZZYL0vKapXF4oQTC5hLVNfOgdPrqeZ1BiQnGk5cB7HeE91EWUiTdVSdQPobRN8rIcdffjiOgCYJ/S8QrnQ==", + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/@types/puppeteer/-/puppeteer-7.0.4.tgz", + "integrity": "sha512-ja78vquZc8y+GM2al07GZqWDKQskQXygCDiu0e3uO0DMRKqE0MjrFBFmTulfPYzLB6WnL7Kl2tFPy0WXSpPomg==", "dev": true, "requires": { - "@types/node": "*" + "puppeteer": "*" } }, "@types/raf": { @@ -14039,6 +17057,15 @@ "integrity": "sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw==", "dev": true }, + "@types/yargs": { + "version": "17.0.24", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.24.tgz", + "integrity": "sha512-6i0aC7jV6QzQB8ne1joVZ0eSFIstHsCrobmOtghM11yGlH0j43FKL2UhWdELkyps0zuf7qVTUVCCR+tgSlyLLw==", + "dev": true, + "requires": { + "@types/yargs-parser": "*" + } + }, "@types/yargs-parser": { "version": "21.0.0", "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.0.tgz", @@ -14368,6 +17395,15 @@ "es-shim-unscopables": "^1.0.0" } }, + "ast-types": { + "version": "0.13.4", + "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.13.4.tgz", + "integrity": "sha512-x1FCFnFifvYDDzTaLII71vG5uvDwgtmDTEVWAxrgeiR8VjMONcCXJx7E+USjDtHlwFmt9MysbqgF9b9Vjr6w+w==", + "dev": true, + "requires": { + "tslib": "^2.0.1" + } + }, "async": { "version": "3.2.4", "resolved": "https://registry.npmjs.org/async/-/async-3.2.4.tgz", @@ -14405,6 +17441,27 @@ "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==", "dev": true }, + "b4a": { + "version": "1.6.4", + "resolved": "https://registry.npmjs.org/b4a/-/b4a-1.6.4.tgz", + "integrity": "sha512-fpWrvyVHEKyeEvbKZTVOeZF3VSKKWtJxFIxX/jaVPf+cLbGUSitjb49pHLqPV2BUNNZ0LcoeEGfE/YCpyDYHIw==", + "dev": true + }, + "babel-jest": { + "version": "29.6.2", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-29.6.2.tgz", + "integrity": "sha512-BYCzImLos6J3BH/+HvUCHG1dTf2MzmAB4jaVxHV+29RZLjR29XuYTmsf2sdDwkrb+FczkGo3kOhE7ga6sI0P4A==", + "dev": true, + "requires": { + "@jest/transform": "^29.6.2", + "@types/babel__core": "^7.1.14", + "babel-plugin-istanbul": "^6.1.1", + "babel-preset-jest": "^29.5.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "slash": "^3.0.0" + } + }, "babel-plugin-istanbul": { "version": "6.1.1", "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", @@ -14418,6 +17475,56 @@ "test-exclude": "^6.0.0" } }, + "babel-plugin-jest-hoist": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.5.0.tgz", + "integrity": "sha512-zSuuuAlTMT4mzLj2nPnUm6fsE6270vdOfnpbJ+RmruU75UhLFvL0N2NgI7xpeS7NaB6hGqmd5pVpGTDYvi4Q3w==", + "dev": true, + "requires": { + "@babel/template": "^7.3.3", + "@babel/types": "^7.3.3", + "@types/babel__core": "^7.1.14", + "@types/babel__traverse": "^7.0.6" + } + }, + "babel-plugin-polyfill-corejs2": { + "version": "0.4.5", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.5.tgz", + "integrity": "sha512-19hwUH5FKl49JEsvyTcoHakh6BE0wgXLLptIyKZ3PijHc/Ci521wygORCUCCred+E/twuqRyAkE02BAWPmsHOg==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.22.6", + "@babel/helper-define-polyfill-provider": "^0.4.2", + "semver": "^6.3.1" + }, + "dependencies": { + "semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true + } + } + }, + "babel-plugin-polyfill-corejs3": { + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.8.3.tgz", + "integrity": "sha512-z41XaniZL26WLrvjy7soabMXrfPWARN25PZoriDEiLMxAp50AUW3t35BGQUMg5xK3UrpVTtagIDklxYa+MhiNA==", + "dev": true, + "requires": { + "@babel/helper-define-polyfill-provider": "^0.4.2", + "core-js-compat": "^3.31.0" + } + }, + "babel-plugin-polyfill-regenerator": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.5.2.tgz", + "integrity": "sha512-tAlOptU0Xj34V1Y2PNTL4Y0FOJMDB6bZmoW39FeCQIhigGLkqu3Fj6uiXpxIf6Ij274ENdYx64y6Au+ZKlb1IA==", + "dev": true, + "requires": { + "@babel/helper-define-polyfill-provider": "^0.4.2" + } + }, "babel-preset-current-node-syntax": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz", @@ -14438,6 +17545,16 @@ "@babel/plugin-syntax-top-level-await": "^7.8.3" } }, + "babel-preset-jest": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-29.5.0.tgz", + "integrity": "sha512-JOMloxOqdiBSxMAzjRaH023/vvcaSaec49zvg+2LmNsktC7ei39LTJGw02J+9uUtTZUq6xbLyJ4dxe9sSmIuAg==", + "dev": true, + "requires": { + "babel-plugin-jest-hoist": "^29.5.0", + "babel-preset-current-node-syntax": "^1.0.0" + } + }, "balanced-match": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", @@ -14456,6 +17573,12 @@ "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", "dev": true }, + "basic-ftp": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/basic-ftp/-/basic-ftp-5.0.3.tgz", + "integrity": "sha512-QHX8HLlncOLpy54mh+k/sWIFd0ThmRqwe9ZjELybGZK+tZ8rUb9VO0saKJUROTbE+KhzDUT7xziGpGrW8Kmd+g==", + "dev": true + }, "before-after-hook": { "version": "2.2.3", "resolved": "https://registry.npmjs.org/before-after-hook/-/before-after-hook-2.2.3.tgz", @@ -14741,11 +17864,14 @@ } } }, - "chownr": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", - "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==", - "dev": true + "chromium-bidi": { + "version": "0.4.20", + "resolved": "https://registry.npmjs.org/chromium-bidi/-/chromium-bidi-0.4.20.tgz", + "integrity": "sha512-ruHgVZFEv00mAQMz1tQjfjdG63jiPWrQPF6HLlX2ucqLqVTJoWngeBEKHaJ6n1swV/HSvgnBNbtTRIlcVyW3Fw==", + "dev": true, + "requires": { + "mitt": "3.0.1" + } }, "ci-info": { "version": "3.7.1", @@ -14941,6 +18067,15 @@ "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", "dev": true }, + "core-js-compat": { + "version": "3.32.0", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.32.0.tgz", + "integrity": "sha512-7a9a3D1k4UCVKnLhrgALyFcP7YCsLOQIxPd0dKjf/6GuPcgyiGP70ewWdCGrSK7evyhymi0qO4EqCmSJofDeYw==", + "dev": true, + "requires": { + "browserslist": "^4.21.9" + } + }, "core-util-is": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", @@ -14967,45 +18102,12 @@ "dev": true }, "cross-fetch": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.1.5.tgz", - "integrity": "sha512-lvb1SBsI0Z7GDwmuid+mU3kWVBwTVUbe7S0H52yaaAdQOXq2YktTCZdlAcNKFzE6QtRz0snpw9bNiPeOIkkQvw==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-4.0.0.tgz", + "integrity": "sha512-e4a5N8lVvuLgAWgnCrLr2PP0YyDOTHa9H/Rj54dirp61qXnNq46m82bRhNqIA5VccJtWBvPTFRV3TtvHUKPB1g==", "dev": true, "requires": { - "node-fetch": "2.6.7" - }, - "dependencies": { - "node-fetch": { - "version": "2.6.7", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", - "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", - "dev": true, - "requires": { - "whatwg-url": "^5.0.0" - } - }, - "tr46": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", - "dev": true - }, - "webidl-conversions": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", - "dev": true - }, - "whatwg-url": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", - "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", - "dev": true, - "requires": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" - } - } + "node-fetch": "^2.6.12" } }, "cross-spawn": { @@ -15069,6 +18171,12 @@ } } }, + "data-uri-to-buffer": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-5.0.1.tgz", + "integrity": "sha512-a9l6T1qqDogvvnw0nKlfZzqsyikEBZBClF39V3TFoKhDtGBqHu2HkuomJc02j5zft8zrUaXEuoicLeW54RkzPg==", + "dev": true + }, "data-urls": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-2.0.0.tgz", @@ -15165,6 +18273,17 @@ "integrity": "sha512-hsBd2qSVCRE+5PmNdHt1uzyrFu5d3RwmFDKzyNZMFq/EwDNJF7Ee5+D5oEKF0hU6LhtoUF1macFvOe4AskQC1Q==", "dev": true }, + "degenerator": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/degenerator/-/degenerator-5.0.1.tgz", + "integrity": "sha512-TllpMR/t0M5sqCXfj85i4XaAzxmS5tVA16dqvdkMwGmzI+dXLXnw3J+3Vdv7VKw+ThlTMboK6i9rnZ6Nntj5CQ==", + "dev": true, + "requires": { + "ast-types": "^0.13.4", + "escodegen": "^2.1.0", + "esprima": "^4.0.1" + } + }, "delayed-stream": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", @@ -15201,9 +18320,9 @@ } }, "devtools-protocol": { - "version": "0.0.981744", - "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.981744.tgz", - "integrity": "sha512-0cuGS8+jhR67Fy7qG3i3Pc7Aw494sb9yG9QgpG97SFVWwolgYjlhJg7n+UaHxOQT30d1TYu/EYe9k01ivLErIg==", + "version": "0.0.1147663", + "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.1147663.tgz", + "integrity": "sha512-hyWmRrexdhbZ1tcJUGpO95ivbRhWXz++F4Ko+n21AY5PNln2ovoJw+8ZMNDTtip+CNFQfrtLVh/w4009dXO/eQ==", "dev": true }, "didyoumean": { @@ -15846,6 +18965,12 @@ "integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==", "dev": true }, + "fast-fifo": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/fast-fifo/-/fast-fifo-1.3.0.tgz", + "integrity": "sha512-IgfweLvEpwyA4WgiQe9Nx6VV2QkML2NkvZnk1oKnIzXgXdWxuhF7zw4DvLTPZJn6PIUneiAXPF24QmoEqHTjyw==", + "dev": true + }, "fast-glob": { "version": "3.2.12", "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz", @@ -16021,11 +19146,24 @@ "integrity": "sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==", "dev": true }, - "fs-constants": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", - "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==", - "dev": true + "fs-extra": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", + "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", + "dev": true, + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + }, + "dependencies": { + "universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "dev": true + } + } }, "fs.realpath": { "version": "1.0.0", @@ -16128,6 +19266,18 @@ "get-intrinsic": "^1.1.1" } }, + "get-uri": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-uri/-/get-uri-6.0.1.tgz", + "integrity": "sha512-7ZqONUVqaabogsYNWlYj0t3YZaL6dhuEueZXGF+/YVmf6dHmaFg8/6psJKqhx9QykIDKzpGcy2cn4oV4YC7V/Q==", + "dev": true, + "requires": { + "basic-ftp": "^5.0.2", + "data-uri-to-buffer": "^5.0.1", + "debug": "^4.3.4", + "fs-extra": "^8.1.0" + } + }, "gh-release": { "version": "6.0.4", "resolved": "https://registry.npmjs.org/gh-release/-/gh-release-6.0.4.tgz", @@ -16595,6 +19745,12 @@ "integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==", "dev": true }, + "ip": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.8.tgz", + "integrity": "sha512-PuExPYUiu6qMBQb4l06ecm6T6ujzhmh+MeJcW9wa89PoAz5pvd4zPgN5WJV104mb6S2T1AwNIAaB70JNrLQWhg==", + "dev": true + }, "is-array-buffer": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.1.tgz", @@ -17523,6 +20679,26 @@ "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", "dev": true }, + "jest-haste-map": { + "version": "29.6.2", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-29.6.2.tgz", + "integrity": "sha512-+51XleTDAAysvU8rT6AnS1ZJ+WHVNqhj1k6nTvN2PYP+HjU3kqlaKQ1Lnw3NYW3bm2r8vq82X0Z1nDDHZMzHVA==", + "dev": true, + "requires": { + "@jest/types": "^29.6.1", + "@types/graceful-fs": "^4.1.3", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "fsevents": "^2.3.2", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^29.4.3", + "jest-util": "^29.6.2", + "jest-worker": "^29.6.2", + "micromatch": "^4.0.4", + "walker": "^1.0.8" + } + }, "jest-jasmine2": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-27.5.1.tgz", @@ -17690,6 +20866,12 @@ "dev": true, "requires": {} }, + "jest-regex-util": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-29.4.3.tgz", + "integrity": "sha512-O4FglZaMmWXbGHSQInfXewIsd1LMn9p3ZXB/6r4FOkyhX2/iP/soMG98jGvk/A3HAN78+5VWcBGO0BJAPRh4kg==", + "dev": true + }, "jest-resolve": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-27.5.1.tgz", @@ -18268,6 +21450,20 @@ } } }, + "jest-util": { + "version": "29.6.2", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.6.2.tgz", + "integrity": "sha512-3eX1qb6L88lJNCFlEADKOkjpXJQyZRiavX1INZ4tRnrBVr2COd3RgcTLyUiEXMNBlDU/cgYq6taUS0fExrWW4w==", + "dev": true, + "requires": { + "@jest/types": "^29.6.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + } + }, "jest-validate": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-27.5.1.tgz", @@ -18365,6 +21561,29 @@ } } }, + "jest-worker": { + "version": "29.6.2", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.6.2.tgz", + "integrity": "sha512-l3ccBOabTdkng8I/ORCkADz4eSMKejTYv1vB/Z83UiubqhC1oQ5Li6dWCyqOIvSifGjUBxuvxvlm6KGK2DtuAQ==", + "dev": true, + "requires": { + "@types/node": "*", + "jest-util": "^29.6.2", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "dependencies": { + "supports-color": { + "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" + } + } + } + }, "js-sdsl": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.3.0.tgz", @@ -18474,6 +21693,15 @@ "json-typescript": "^1.0.0" } }, + "jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.6" + } + }, "jspdf": { "version": "2.5.1", "resolved": "https://registry.npmjs.org/jspdf/-/jspdf-2.5.1.tgz", @@ -18627,6 +21855,12 @@ "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==", "peer": true }, + "lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", + "dev": true + }, "lodash.isplainobject": { "version": "4.0.6", "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", @@ -18837,6 +22071,12 @@ "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz", "integrity": "sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==" }, + "mitt": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/mitt/-/mitt-3.0.1.tgz", + "integrity": "sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw==", + "dev": true + }, "mkdirp-classic": { "version": "0.5.3", "resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz", @@ -18879,6 +22119,12 @@ "integrity": "sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==", "dev": true }, + "netmask": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/netmask/-/netmask-2.0.2.tgz", + "integrity": "sha512-dBpDMdxv9Irdq66304OLfEmQ9tbNRFnFTuZiLo+bD+r332bBmMJ8GBLXklIXXgxd3+v9+KUnZaUR5PJMa75Gsg==", + "dev": true + }, "node-fetch": { "version": "2.6.12", "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.12.tgz", @@ -19163,6 +22409,64 @@ "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", "dev": true }, + "pac-proxy-agent": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/pac-proxy-agent/-/pac-proxy-agent-7.0.0.tgz", + "integrity": "sha512-t4tRAMx0uphnZrio0S0Jw9zg3oDbz1zVhQ/Vy18FjLfP1XOLNUEjaVxYCYRI6NS+BsMBXKIzV6cTLOkO9AtywA==", + "dev": true, + "requires": { + "@tootallnate/quickjs-emscripten": "^0.23.0", + "agent-base": "^7.0.2", + "debug": "^4.3.4", + "get-uri": "^6.0.1", + "http-proxy-agent": "^7.0.0", + "https-proxy-agent": "^7.0.0", + "pac-resolver": "^7.0.0", + "socks-proxy-agent": "^8.0.1" + }, + "dependencies": { + "agent-base": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.0.tgz", + "integrity": "sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg==", + "dev": true, + "requires": { + "debug": "^4.3.4" + } + }, + "http-proxy-agent": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.0.tgz", + "integrity": "sha512-+ZT+iBxVUQ1asugqnD6oWoRiS25AkjNfG085dKJGtGxkdwLQrMKU5wJr2bOOFAXzKcTuqq+7fZlTMgG3SRfIYQ==", + "dev": true, + "requires": { + "agent-base": "^7.1.0", + "debug": "^4.3.4" + } + }, + "https-proxy-agent": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.1.tgz", + "integrity": "sha512-Eun8zV0kcYS1g19r78osiQLEFIRspRUDd9tIfBCTBPBeMieF/EsJNL8VI3xOIdYRDEkjQnqOYPsZ2DsWsVsFwQ==", + "dev": true, + "requires": { + "agent-base": "^7.0.2", + "debug": "4" + } + } + } + }, + "pac-resolver": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/pac-resolver/-/pac-resolver-7.0.0.tgz", + "integrity": "sha512-Fd9lT9vJbHYRACT8OhCbZBbxr6KRSawSovFpy8nDGshaK99S/EBhVIHp9+crhxrsZOuvLpgL1n23iyPg6Rl2hg==", + "dev": true, + "requires": { + "degenerator": "^5.0.0", + "ip": "^1.1.8", + "netmask": "^2.0.2" + } + }, "package-json": { "version": "6.5.0", "resolved": "https://registry.npmjs.org/package-json/-/package-json-6.5.0.tgz", @@ -19505,6 +22809,59 @@ } } }, + "proxy-agent": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/proxy-agent/-/proxy-agent-6.3.0.tgz", + "integrity": "sha512-0LdR757eTj/JfuU7TL2YCuAZnxWXu3tkJbg4Oq3geW/qFNT/32T0sp2HnZ9O0lMR4q3vwAt0+xCA8SR0WAD0og==", + "dev": true, + "requires": { + "agent-base": "^7.0.2", + "debug": "^4.3.4", + "http-proxy-agent": "^7.0.0", + "https-proxy-agent": "^7.0.0", + "lru-cache": "^7.14.1", + "pac-proxy-agent": "^7.0.0", + "proxy-from-env": "^1.1.0", + "socks-proxy-agent": "^8.0.1" + }, + "dependencies": { + "agent-base": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.0.tgz", + "integrity": "sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg==", + "dev": true, + "requires": { + "debug": "^4.3.4" + } + }, + "http-proxy-agent": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.0.tgz", + "integrity": "sha512-+ZT+iBxVUQ1asugqnD6oWoRiS25AkjNfG085dKJGtGxkdwLQrMKU5wJr2bOOFAXzKcTuqq+7fZlTMgG3SRfIYQ==", + "dev": true, + "requires": { + "agent-base": "^7.1.0", + "debug": "^4.3.4" + } + }, + "https-proxy-agent": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.1.tgz", + "integrity": "sha512-Eun8zV0kcYS1g19r78osiQLEFIRspRUDd9tIfBCTBPBeMieF/EsJNL8VI3xOIdYRDEkjQnqOYPsZ2DsWsVsFwQ==", + "dev": true, + "requires": { + "agent-base": "^7.0.2", + "debug": "4" + } + }, + "lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "dev": true + } + } + }, "proxy-from-env": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", @@ -19553,29 +22910,48 @@ } }, "puppeteer": { - "version": "13.7.0", - "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-13.7.0.tgz", - "integrity": "sha512-U1uufzBjz3+PkpCxFrWzh4OrMIdIb2ztzCu0YEPfRHjHswcSwHZswnK+WdsOQJsRV8WeTg3jLhJR4D867+fjsA==", + "version": "21.0.3", + "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-21.0.3.tgz", + "integrity": "sha512-+eBNTEOOBrRBLJ1/jIuHcOoUUOVpUQjQFwp9L/sm/iBDqii+4jv9jxpPJSOmOHXuy++X7GWfhuDw4vz8crNzPw==", + "dev": true, + "requires": { + "@puppeteer/browsers": "1.6.0", + "cosmiconfig": "8.2.0", + "puppeteer-core": "21.0.3" + }, + "dependencies": { + "cosmiconfig": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.2.0.tgz", + "integrity": "sha512-3rTMnFJA1tCOPwRxtgF4wd7Ab2qvDbL8jX+3smjIbS4HlZBagTlpERbdN7iAbWlrfxE3M8c27kTwTawQ7st+OQ==", + "dev": true, + "requires": { + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "parse-json": "^5.0.0", + "path-type": "^4.0.0" + } + } + } + }, + "puppeteer-core": { + "version": "21.0.3", + "resolved": "https://registry.npmjs.org/puppeteer-core/-/puppeteer-core-21.0.3.tgz", + "integrity": "sha512-AGvopfkA0jLbW5Ba0m6kBuvRIpLo76PXUK3zJYkXOr9NI1LknJESyai6TtXc6GUSewMkinmyEDx1pFgq900hqg==", "dev": true, "requires": { - "cross-fetch": "3.1.5", + "@puppeteer/browsers": "1.6.0", + "chromium-bidi": "0.4.20", + "cross-fetch": "4.0.0", "debug": "4.3.4", - "devtools-protocol": "0.0.981744", - "extract-zip": "2.0.1", - "https-proxy-agent": "5.0.1", - "pkg-dir": "4.2.0", - "progress": "2.0.3", - "proxy-from-env": "1.1.0", - "rimraf": "3.0.2", - "tar-fs": "2.1.1", - "unbzip2-stream": "1.4.3", - "ws": "8.5.0" + "devtools-protocol": "0.0.1147663", + "ws": "8.13.0" }, "dependencies": { "ws": { - "version": "8.5.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.5.0.tgz", - "integrity": "sha512-BWX0SWVgLPzYwF8lTzEy1egjhS4S4OEAHfsO8o65WOVsrnSRGaSiUaa9e0ggGlkMTtBlmOpEXiie9RUcBO86qg==", + "version": "8.13.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.13.0.tgz", + "integrity": "sha512-x9vcZYTrFPC7aSIbj7sRCYo7L/Xb8Iy+pW0ng0wt2vCJv7M9HOMy0UoN3rr+IFC7hb7vXoqS+P9ktyLLLhO+LA==", "dev": true, "requires": {} } @@ -19593,6 +22969,12 @@ "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", "dev": true }, + "queue-tick": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/queue-tick/-/queue-tick-1.0.1.tgz", + "integrity": "sha512-kJt5qhMxoszgU/62PLP1CJytzd2NKetjSRnyuj31fDd3Rlcz3fzlFdFLD1SItunPwyqEOkca6GbV612BWfaBag==", + "dev": true + }, "quick-lru": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz", @@ -19780,6 +23162,30 @@ } } }, + "regenerate": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", + "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", + "dev": true + }, + "regenerate-unicode-properties": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.0.tgz", + "integrity": "sha512-d1VudCLoIGitcU/hEg2QqvyGZQmdC0Lf8BqdOMXGFSvJP4bNV1+XqbPQeHHLD51Jh4QJJ225dlIFvY4Ly6MXmQ==", + "dev": true, + "requires": { + "regenerate": "^1.4.2" + } + }, + "regenerator-transform": { + "version": "0.15.2", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.2.tgz", + "integrity": "sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==", + "dev": true, + "requires": { + "@babel/runtime": "^7.8.4" + } + }, "regexp-tree": { "version": "0.1.24", "resolved": "https://registry.npmjs.org/regexp-tree/-/regexp-tree-0.1.24.tgz", @@ -19803,6 +23209,20 @@ "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", "dev": true }, + "regexpu-core": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.3.2.tgz", + "integrity": "sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ==", + "dev": true, + "requires": { + "@babel/regjsgen": "^0.8.0", + "regenerate": "^1.4.2", + "regenerate-unicode-properties": "^10.1.0", + "regjsparser": "^0.9.1", + "unicode-match-property-ecmascript": "^2.0.0", + "unicode-match-property-value-ecmascript": "^2.1.0" + } + }, "registry-auth-token": { "version": "4.2.2", "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.2.2.tgz", @@ -19821,6 +23241,23 @@ "rc": "^1.2.8" } }, + "regjsparser": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.9.1.tgz", + "integrity": "sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==", + "dev": true, + "requires": { + "jsesc": "~0.5.0" + }, + "dependencies": { + "jsesc": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", + "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==", + "dev": true + } + } + }, "remove-markdown": { "version": "0.2.2", "resolved": "https://registry.npmjs.org/remove-markdown/-/remove-markdown-0.2.2.tgz", @@ -20122,6 +23559,52 @@ "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", "dev": true }, + "smart-buffer": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", + "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", + "dev": true + }, + "socks": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.7.1.tgz", + "integrity": "sha512-7maUZy1N7uo6+WVEX6psASxtNlKaNVMlGQKkG/63nEDdLOWNbiUMoLK7X4uYoLhQstau72mLgfEWcXcwsaHbYQ==", + "dev": true, + "requires": { + "ip": "^2.0.0", + "smart-buffer": "^4.2.0" + }, + "dependencies": { + "ip": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ip/-/ip-2.0.0.tgz", + "integrity": "sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ==", + "dev": true + } + } + }, + "socks-proxy-agent": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.1.tgz", + "integrity": "sha512-59EjPbbgg8U3x62hhKOFVAmySQUcfRQ4C7Q/D5sEHnZTQRrQlNKINks44DMR1gwXp0p4LaVIeccX2KHTTcHVqQ==", + "dev": true, + "requires": { + "agent-base": "^7.0.1", + "debug": "^4.3.4", + "socks": "^2.7.1" + }, + "dependencies": { + "agent-base": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.0.tgz", + "integrity": "sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg==", + "dev": true, + "requires": { + "debug": "^4.3.4" + } + } + } + }, "sort-keys": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-4.2.0.tgz", @@ -20242,6 +23725,16 @@ "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==", "dev": true }, + "streamx": { + "version": "2.15.1", + "resolved": "https://registry.npmjs.org/streamx/-/streamx-2.15.1.tgz", + "integrity": "sha512-fQMzy2O/Q47rgwErk/eGeLu/roaFWV0jVsogDmrszM9uIw8L5OA+t+V93MgYlufNptfjmYR1tOMWhei/Eh7TQA==", + "dev": true, + "requires": { + "fast-fifo": "^1.1.0", + "queue-tick": "^1.0.1" + } + }, "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -20436,41 +23929,25 @@ } }, "tar-fs": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.1.tgz", - "integrity": "sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-3.0.4.tgz", + "integrity": "sha512-5AFQU8b9qLfZCX9zp2duONhPmZv0hGYiBPJsyUdqMjzq/mqVpy/rEUSeHk1+YitmxugaptgBh5oDGU3VsAJq4w==", "dev": true, "requires": { - "chownr": "^1.1.1", "mkdirp-classic": "^0.5.2", "pump": "^3.0.0", - "tar-stream": "^2.1.4" + "tar-stream": "^3.1.5" } }, "tar-stream": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", - "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-3.1.6.tgz", + "integrity": "sha512-B/UyjYwPpMBv+PaFSWAmtYjwdrlEaZQEhMIBFNC5oEG8lpiW8XjcSdmEaClj28ArfKScKHs2nshz3k2le6crsg==", "dev": true, "requires": { - "bl": "^4.0.3", - "end-of-stream": "^1.4.1", - "fs-constants": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.1.1" - }, - "dependencies": { - "readable-stream": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", - "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - } + "b4a": "^1.6.4", + "fast-fifo": "^1.2.0", + "streamx": "^2.15.0" } }, "terminal-link": { @@ -20715,6 +24192,34 @@ "through": "^2.3.8" } }, + "unicode-canonical-property-names-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", + "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==", + "dev": true + }, + "unicode-match-property-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", + "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", + "dev": true, + "requires": { + "unicode-canonical-property-names-ecmascript": "^2.0.0", + "unicode-property-aliases-ecmascript": "^2.0.0" + } + }, + "unicode-match-property-value-ecmascript": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz", + "integrity": "sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==", + "dev": true + }, + "unicode-property-aliases-ecmascript": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz", + "integrity": "sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==", + "dev": true + }, "unique-string": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz", diff --git a/package.json b/package.json index ce85290e5..828e8a7da 100644 --- a/package.json +++ b/package.json @@ -30,18 +30,23 @@ "update-browserslist": "npx browserslist@latest --update-db" }, "devDependencies": { + "@babel/core": "^7.22.10", + "@babel/preset-env": "^7.22.10", + "@babel/preset-typescript": "^7.22.5", "@esri/eslint-plugin-calcite-components": "^0.2.2", "@esri/solution-common": "3.0.1", "@stencil/postcss": "^2.1.0", - "@stencil/sass": "^2.0.0", - "@stencil/store": "^2.0.1", + "@stencil/sass": "^3.0.5", + "@stencil/store": "^2.0.9", "@types/arcgis-js-api": "^4.27.0", - "@types/jest": "^27.5.2", + "@types/jest": "^27.0.3", "@types/node": "^16.11.11", - "@types/puppeteer": "^5.4.2", + "@types/puppeteer": "^7.0.4", "@typescript-eslint/eslint-plugin": "^5.4.0", "@typescript-eslint/parser": "^5.39.0", "autoprefixer": "10.4.4", + "babel-jest": "^29.6.2", + "caniuse-lite": "^1.0.30001412", "dotenv": "^10.0.0", "eslint": "^8.11.0", "eslint-config-prettier": "8.3.0", @@ -52,11 +57,11 @@ "esri-loader": "3.4.0", "form-request-submit-polyfill": "^2.0.0", "gh-release": "^6.0.3", - "jest": "^27.5.1", - "jest-cli": "^27.5.1", + "jest": "^27.0.3", + "jest-cli": "^27.4.5", "pify": "^5.0.0", "prettier": "2.4.1", - "puppeteer": "^13.5.1", + "puppeteer": "^21.0.3", "react": "^18.2.0", "rimraf": "^3.0.2", "tailwindcss": "3.0.23", @@ -70,7 +75,7 @@ "@esri/hub-sites": "^12.6.0", "@esri/hub-teams": "^12.4.1", "@pdf-lib/fontkit": "^1.1.1", - "@stencil/core": "^2.20.0", + "@stencil/core": "^4.0.5", "focus-trap": "7.2.0", "jspdf": "^2.5.1", "minimist": "^1.2.6", diff --git a/src/components.d.ts b/src/components.d.ts index 4e6f09fba..31ed43016 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -7,6 +7,8 @@ import { HTMLStencilElement, JSXBase } from "@stencil/core/internal"; import { DistanceUnit, EDrawMode, EExpandType, ELayoutMode, IExportInfos, IInventoryItem, IMapInfo, ISearchConfiguration, ISelectionSet, ISketchGraphicsChange, ISolutionSpatialReferenceInfo, ISpatialRefRepresentation, IValueChange } from "./utils/interfaces"; import { UserSession } from "@esri/solution-common"; +export { DistanceUnit, EDrawMode, EExpandType, ELayoutMode, IExportInfos, IInventoryItem, IMapInfo, ISearchConfiguration, ISelectionSet, ISketchGraphicsChange, ISolutionSpatialReferenceInfo, ISpatialRefRepresentation, IValueChange } from "./utils/interfaces"; +export { UserSession } from "@esri/solution-common"; export namespace Components { interface BufferTools { /** diff --git a/stencil.config.ts b/stencil.config.ts index 69b67127d..f857471d1 100644 --- a/stencil.config.ts +++ b/stencil.config.ts @@ -45,6 +45,11 @@ export const config: Config = { autoDefineCustomElements: true }, ], + testing: { + transform: { + "^.+\\.[jt]sx?$": "C:\\Users\\mike6491\\ag\\solutions-components\\node_modules\\@stencil\\core\\testing\\jest-preprocessor.js" + } + }, plugins: [ sass({ injectGlobalPaths: ["src/assets/styles/includes.scss"] From 9d630151597be924912c6ee514b9ab4f3e413537 Mon Sep 17 00:00:00 2001 From: Mike Tschudi Date: Wed, 16 Aug 2023 15:20:17 -0700 Subject: [PATCH 128/406] Lint and update tests --- .../buffer-tools/test/buffer-tools.spec.tsx | 2 -- .../test/map-layer-picker.spec.tsx | 2 ++ .../test/map-select-tools.spec.tsx | 34 +++++++++++++------ .../pdf-download/test/pdf-download.spec.tsx | 4 +-- .../test/public-notification.spec.tsx | 34 +++++++++++-------- src/utils/test/csvUtils.spec.tsx | 6 ++-- src/utils/test/downloadUtils.spec.tsx | 4 +-- 7 files changed, 50 insertions(+), 36 deletions(-) diff --git a/src/components/buffer-tools/test/buffer-tools.spec.tsx b/src/components/buffer-tools/test/buffer-tools.spec.tsx index 89a5a8859..c2488e5b6 100644 --- a/src/components/buffer-tools/test/buffer-tools.spec.tsx +++ b/src/components/buffer-tools/test/buffer-tools.spec.tsx @@ -167,8 +167,6 @@ xdescribe('buffer-tools', () => { expect(bufferTools.appearance).toEqual('text'); expect(bufferTools.distance).toEqual(0); expect(bufferTools.geometries).toEqual([]); - expect(bufferTools.sliderMax).toEqual(100); - expect(bufferTools.sliderMin).toEqual(0); expect(bufferTools.sliderTicks).toEqual(10); expect(bufferTools.unionResults).toEqual(true); expect(bufferTools.unit).toEqual('meters'); diff --git a/src/components/map-layer-picker/test/map-layer-picker.spec.tsx b/src/components/map-layer-picker/test/map-layer-picker.spec.tsx index 06b499c39..0ae33c0bf 100644 --- a/src/components/map-layer-picker/test/map-layer-picker.spec.tsx +++ b/src/components/map-layer-picker/test/map-layer-picker.spec.tsx @@ -14,6 +14,7 @@ * limitations under the License. */ +/* import { h } from '@stencil/core'; import { newSpecPage } from '@stencil/core/testing'; import { MapLayerPicker } from '../map-layer-picker'; @@ -102,3 +103,4 @@ xdescribe('map-layer-picker', () => { `); }); }); +*/ diff --git a/src/components/map-select-tools/test/map-select-tools.spec.tsx b/src/components/map-select-tools/test/map-select-tools.spec.tsx index 443432b99..1ade90964 100644 --- a/src/components/map-select-tools/test/map-select-tools.spec.tsx +++ b/src/components/map-select-tools/test/map-select-tools.spec.tsx @@ -50,7 +50,7 @@ beforeEach(() => { }); jest.spyOn(queryUtils, "queryObjectIds").mockImplementation(async (oids) => { - return oids.map((oid, i) => i); + return oids.map((_, i) => i); }); jest.spyOn(console, 'warn').mockImplementation(() => {}); @@ -184,9 +184,8 @@ xdescribe('map-select-tools', () => { const selectionSet: ISelectionSet = { id: 12345, - workflowType: EWorkflowType.SELECT, searchResult: undefined, - buffer: _unknown, + buffer: {} as unknown as any, distance: 100, download: true, unit: "feet", @@ -194,8 +193,13 @@ xdescribe('map-select-tools', () => { selectedIds: [0], layerView, geometries: [_unknown], - refineSelectLayers: [], - refineIds: undefined + graphics: [], + selectLayers: [], + workflowType: EWorkflowType.SELECT, + searchDistanceEnabled: true, + useLayerFeaturesEnabled: true, + refineInfos: undefined, + sketchGraphic: undefined }; const page = await newSpecPage({ @@ -254,7 +258,6 @@ xdescribe('map-select-tools', () => { const selectionSet: ISelectionSet = { id: 12345, - workflowType: EWorkflowType.SKETCH, searchResult: undefined, buffer: _unknown, distance: 100, @@ -264,8 +267,13 @@ xdescribe('map-select-tools', () => { selectedIds: [0], layerView, geometries: [_unknown], - refineSelectLayers: [], - refineIds: undefined + graphics: [], + selectLayers: [], + workflowType: EWorkflowType.SKETCH, + searchDistanceEnabled: true, + useLayerFeaturesEnabled: true, + refineInfos: undefined, + sketchGraphic: undefined }; const page = await newSpecPage({ @@ -324,7 +332,6 @@ xdescribe('map-select-tools', () => { const selectionSet: ISelectionSet = { id: 12345, - workflowType: EWorkflowType.SEARCH, searchResult: undefined, buffer: _unknown, distance: 100, @@ -334,8 +341,13 @@ xdescribe('map-select-tools', () => { selectedIds: [0,1], layerView, geometries: [_unknown, _unknown], - refineSelectLayers: [], - refineIds: undefined + graphics: [], + selectLayers: [], + workflowType: EWorkflowType.SEARCH, + searchDistanceEnabled: true, + useLayerFeaturesEnabled: true, + refineInfos: undefined, + sketchGraphic: undefined }; const page = await newSpecPage({ diff --git a/src/components/pdf-download/test/pdf-download.spec.tsx b/src/components/pdf-download/test/pdf-download.spec.tsx index 08b1f486e..d33a260eb 100644 --- a/src/components/pdf-download/test/pdf-download.spec.tsx +++ b/src/components/pdf-download/test/pdf-download.spec.tsx @@ -20,7 +20,6 @@ import * as PdfDownload from '../pdf-download'; import * as locale from "../../../utils/locale"; import * as translations from "../../../assets/t9n/pdf-download/resources.json"; import * as csvUtils from "../../../utils/csvUtils"; -import { LayerView } from "../../../utils/test/mocks/jsApi"; jest.setTimeout(30000); @@ -78,10 +77,9 @@ describe('pdf-download', () => { const consoleLogMock = jest.fn(); jest.spyOn(console, "log").mockImplementation(consoleLogMock); - const layerView = new LayerView() as unknown as any; const page = await newSpecPage({ components: [PdfDownload], - template: () => (), + template: () => (), }); await page.root.downloadCSV([], true); diff --git a/src/components/public-notification/test/public-notification.spec.tsx b/src/components/public-notification/test/public-notification.spec.tsx index 8113b4594..4bd5f142a 100644 --- a/src/components/public-notification/test/public-notification.spec.tsx +++ b/src/components/public-notification/test/public-notification.spec.tsx @@ -19,9 +19,9 @@ import { newSpecPage } from '@stencil/core/testing'; import { PublicNotification } from '../public-notification'; import * as locale from "../../../utils/locale"; import * as translations from "../../../assets/t9n/map-draw-tools/resources.json"; -import { geometryEngine, LayerView } from "../../../utils/test/mocks/jsApi"; -import * as queryUtils from "../../../utils/queryUtils"; +//import * as queryUtils from "../../../utils/queryUtils"; import { EWorkflowType, ISelectionSet } from "../../../utils/interfaces"; +import { LayerView } from "../../../utils/test/mocks/jsApi"; jest.setTimeout(30000); @@ -52,8 +52,8 @@ beforeEach(() => { xdescribe('public-notification', () => { it('renders', async () => { - const getSelectionSetQueryMock = jest.fn(); - jest.spyOn(queryUtils, "getSelectionSetQuery").mockImplementation(getSelectionSetQueryMock) + //const getSelectionSetQueryMock = jest.fn(); + //jest.spyOn(queryUtils, "getSelectionSetQuery").mockImplementation(getSelectionSetQueryMock) const page = await newSpecPage({ autoApplyChanges: true, @@ -121,15 +121,14 @@ xdescribe('public-notification', () => { }); it('handles selectionSetsWatchHandler', async () => { - const getSelectionSetQueryMock = jest.fn(); - jest.spyOn(queryUtils, "getSelectionSetQuery").mockImplementation(getSelectionSetQueryMock); + //const getSelectionSetQueryMock = jest.fn(); + //jest.spyOn(queryUtils, "getSelectionSetQuery").mockImplementation(getSelectionSetQueryMock); const page = await newSpecPage({ autoApplyChanges: true, components: [PublicNotification], template: () => ( ), @@ -138,7 +137,6 @@ xdescribe('public-notification', () => { page.win.dispatchEvent(new CustomEvent("selectionSetsChanged", {detail: [{ id: 123456789, - workflowType: EWorkflowType.SKETCH, searchResult: undefined, buffer: {} as unknown as any, distance: 100, @@ -148,13 +146,16 @@ xdescribe('public-notification', () => { selectedIds: [], layerView: new LayerView() as unknown as any, geometries: [], - refineSelectLayers: [], - refineIds: undefined + graphics: [], + selectLayers: [], + workflowType: EWorkflowType.SKETCH, + searchDistanceEnabled: true, + useLayerFeaturesEnabled: true, + refineInfos: undefined, + sketchGraphic: undefined }] as ISelectionSet[]})); page.win.dispatchEvent(new CustomEvent("selectionSetsChanged", {detail: [{ - id: 123456789, - workflowType: EWorkflowType.REFINE, searchResult: undefined, buffer: {} as unknown as any, distance: 100, @@ -164,8 +165,13 @@ xdescribe('public-notification', () => { selectedIds: [], layerView: new LayerView() as unknown as any, geometries: [], - refineSelectLayers: [], - refineIds: undefined + graphics: [], + selectLayers: [], + workflowType: EWorkflowType.REFINE, + searchDistanceEnabled: true, + useLayerFeaturesEnabled: true, + refineInfos: undefined, + sketchGraphic: undefined }] as ISelectionSet[]})); }); }); diff --git a/src/utils/test/csvUtils.spec.tsx b/src/utils/test/csvUtils.spec.tsx index 2b89c91ca..d19aaa752 100644 --- a/src/utils/test/csvUtils.spec.tsx +++ b/src/utils/test/csvUtils.spec.tsx @@ -16,7 +16,7 @@ import * as csvDownload from "../csvDownload"; import * as csvUtils from "../csvUtils"; -import {expect, jest, test} from "@jest/globals"; +import {expect, jest} from "@jest/globals"; afterEach(() => { jest.restoreAllMocks(); @@ -42,9 +42,7 @@ describe("csvUtils", () => { ]; const downloadCSVFileMock = jest.spyOn(csvDownload, "downloadCSVFile") - .mockImplementation( - (fileTitle: string, outputLines: string[]) => {} - ); + .mockImplementation(() => {}); csvUtils.exportCSV(title, labels); expect(downloadCSVFileMock).toBeCalledTimes(1); expect(downloadCSVFileMock.mock.calls[0][0]).toEqual(title); diff --git a/src/utils/test/downloadUtils.spec.tsx b/src/utils/test/downloadUtils.spec.tsx index 518abe0d7..bd01ab5ff 100644 --- a/src/utils/test/downloadUtils.spec.tsx +++ b/src/utils/test/downloadUtils.spec.tsx @@ -26,7 +26,7 @@ describe("downloadUtils", () => { { fieldName: "B", visible: true }, { fieldName: "C", visible: false }, { fieldName: "D", visible: true } - ]; + ] as any[]; const bypassFieldVisiblity = false; const expectedLabelSpec = "{A}|{B}|{D}"; @@ -40,7 +40,7 @@ describe("downloadUtils", () => { { fieldName: "B", visible: true }, { fieldName: "C", visible: false }, { fieldName: "D", visible: true } - ]; + ] as any[]; const bypassFieldVisiblity = true; const expectedLabelSpec = "{A}|{B}|{C}|{D}"; From bf30cb2d72172eba6071c12277da7a38bb972e71 Mon Sep 17 00:00:00 2001 From: Mike Tschudi Date: Thu, 17 Aug 2023 08:05:41 -0700 Subject: [PATCH 129/406] Add placeholder for map-layer-picker test --- src/components.d.ts | 2 -- .../map-layer-picker/test/map-layer-picker.spec.tsx | 6 ++++++ 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/components.d.ts b/src/components.d.ts index 27df82237..11c18f813 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -7,8 +7,6 @@ import { HTMLStencilElement, JSXBase } from "@stencil/core/internal"; import { DistanceUnit, EDrawMode, EExpandType, ELayoutMode, IExportInfos, IInventoryItem, IMapInfo, ISearchConfiguration, ISelectionSet, ISketchGraphicsChange, ISolutionSpatialReferenceInfo, ISpatialRefRepresentation, IValueChange } from "./utils/interfaces"; import { UserSession } from "@esri/solution-common"; -export { DistanceUnit, EDrawMode, EExpandType, ELayoutMode, IExportInfos, IInventoryItem, IMapInfo, ISearchConfiguration, ISelectionSet, ISketchGraphicsChange, ISolutionSpatialReferenceInfo, ISpatialRefRepresentation, IValueChange } from "./utils/interfaces"; -export { UserSession } from "@esri/solution-common"; export namespace Components { interface BufferTools { /** diff --git a/src/components/map-layer-picker/test/map-layer-picker.spec.tsx b/src/components/map-layer-picker/test/map-layer-picker.spec.tsx index 0ae33c0bf..07aefd93f 100644 --- a/src/components/map-layer-picker/test/map-layer-picker.spec.tsx +++ b/src/components/map-layer-picker/test/map-layer-picker.spec.tsx @@ -14,6 +14,12 @@ * limitations under the License. */ +xdescribe('map-layer-picker', () => { + it('is a placeholder', () => { + }); +}); + + /* import { h } from '@stencil/core'; import { newSpecPage } from '@stencil/core/testing'; From e1f6e1a9d39e56fd4625335f47906c145b19a6cb Mon Sep 17 00:00:00 2001 From: Mike Tschudi Date: Thu, 17 Aug 2023 09:09:51 -0700 Subject: [PATCH 130/406] Fix path to transformer --- stencil.config.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/stencil.config.ts b/stencil.config.ts index f857471d1..e735c2334 100644 --- a/stencil.config.ts +++ b/stencil.config.ts @@ -47,7 +47,7 @@ export const config: Config = { ], testing: { transform: { - "^.+\\.[jt]sx?$": "C:\\Users\\mike6491\\ag\\solutions-components\\node_modules\\@stencil\\core\\testing\\jest-preprocessor.js" + "^.+\\.[jt]sx?$": "/node_modules/@stencil/core/testing/jest-preprocessor.js" } }, plugins: [ From 8b35ed6bf76aea16f3f95e1009f31f166d3c9bfa Mon Sep 17 00:00:00 2001 From: Mike Tschudi Date: Thu, 17 Aug 2023 11:23:38 -0700 Subject: [PATCH 131/406] Create functions for extracting Arcade expression references and field names from label formats --- src/utils/downloadUtils.ts | 36 +++++++++++++++++++++++---- src/utils/test/downloadUtils.spec.tsx | 18 ++++++++++++++ 2 files changed, 49 insertions(+), 5 deletions(-) diff --git a/src/utils/downloadUtils.ts b/src/utils/downloadUtils.ts index 8798f1fda..d9e02eff5 100644 --- a/src/utils/downloadUtils.ts +++ b/src/utils/downloadUtils.ts @@ -347,6 +347,35 @@ export function _createRelationshipQueries( return relationships; } +/** + * Extracts Arcade expression references from the lines of a label format. + * + * @param labelFormat Label to examine + * @return Array of Arcade expression references, e.g., ["{expression/expr1}", "{expression/expr2}"] + */ +export function _getExpressionsFromLabel( + labelFormat: string +): string[] { + const arcadeExpressionRegExp = /\{expression\/\w+\}/g; + return labelFormat.match(arcadeExpressionRegExp) ?? []; +} + +/** + * Extracts field name expressions from the lines of a label format. + * + * @param labelFormat Label to examine + * @returns Array of field name expressions, e.g., ["{NAME}", "{STREET}", "{CITY}", "{STATE}", "{ZIP}"] + */ +export function _getFieldsFromLabel( + labelFormat: string +): string[] { + //const fieldNames: string[] = []; + const attributeRegExp = /\{\w+\}/g; + const fieldNames = labelFormat.match(attributeRegExp) ?? []; + + return fieldNames; +} + /** * Prepares an attribute's value by applying domain and type information. * @@ -481,12 +510,9 @@ async function _prepareLabels( let labels: string[][]; // eslint-disable-next-line unicorn/prefer-ternary if (labelFormat) { - const arcadeExpressionRegExp = /\{expression\/\w+\}/g; - const attributeRegExp = /\{\w+\}/g; - // Find the label fields that we need to replace with values - const arcadeExpressionMatches = labelFormat.match(arcadeExpressionRegExp) ?? []; - const attributeMatches = labelFormat.match(attributeRegExp) ?? []; + const arcadeExpressionMatches = _getExpressionsFromLabel(labelFormat); + const attributeMatches = _getFieldsFromLabel(labelFormat); // Convert feature attributes into an array of labels const relationshipKeys = Object.keys(relationshipQueries); diff --git a/src/utils/test/downloadUtils.spec.tsx b/src/utils/test/downloadUtils.spec.tsx index bd01ab5ff..5e1cac128 100644 --- a/src/utils/test/downloadUtils.spec.tsx +++ b/src/utils/test/downloadUtils.spec.tsx @@ -130,4 +130,22 @@ describe("downloadUtils", () => { }); + describe("_getExpressionsFromLabel", () => { + it("handles a label with ASCII expression names", () => { + const labelSpec = "{expression/expr0}\n{OWNERNM1}\n{PSTLADDRESS}\n{PSTLCITY}, {PSTLSTATE} {PSTLZIP5}"; + const expectedExpressionNames = ["{expression/expr0}"]; + const expressionNames = downloadUtils._getExpressionsFromLabel(labelSpec); + expect(expressionNames).toEqual(expectedExpressionNames); + }); + }); + + describe("_getFieldsFromLabel", () => { + it("handles a label with ASCII field names", () => { + const labelSpec = "{expression/expr0}\n{OWNERNM1}\n{PSTLADDRESS}\n{PSTLCITY}, {PSTLSTATE} {PSTLZIP5}"; + const expectedFieldNames = ["{OWNERNM1}", "{PSTLADDRESS}", "{PSTLCITY}", "{PSTLSTATE}", "{PSTLZIP5}"]; + const fieldNames = downloadUtils._getFieldsFromLabel(labelSpec); + expect(fieldNames).toEqual(expectedFieldNames); + }); + }); + }); From 3b6b21c49fda3af66ea175c82334802739e047ce Mon Sep 17 00:00:00 2001 From: Mike Tschudi Date: Thu, 17 Aug 2023 12:51:09 -0700 Subject: [PATCH 132/406] Add support for non-ASCII field names --- src/utils/downloadUtils.ts | 22 +- src/utils/test/downloadUtils.spec.tsx | 285 +++++++++++++++++++++++++- 2 files changed, 297 insertions(+), 10 deletions(-) diff --git a/src/utils/downloadUtils.ts b/src/utils/downloadUtils.ts index d9e02eff5..4c32e1476 100644 --- a/src/utils/downloadUtils.ts +++ b/src/utils/downloadUtils.ts @@ -369,11 +369,25 @@ export function _getExpressionsFromLabel( export function _getFieldsFromLabel( labelFormat: string ): string[] { - //const fieldNames: string[] = []; - const attributeRegExp = /\{\w+\}/g; - const fieldNames = labelFormat.match(attributeRegExp) ?? []; + // Get all fields + const fieldExpressions: string[] = []; + + let iStart = 0; + while (iStart < labelFormat.length) { + const iOpen = labelFormat.indexOf("{", iStart); // Find the next open brace + if (iOpen < 0) { break; } // No more open braces + const iClose = labelFormat.indexOf("}", iOpen); // Find the matching close brace + if (iClose < 0) { break; } // No more close braces + const fieldName = labelFormat.substring(iOpen, iClose + 1); // Extract the field name with braces + fieldExpressions.push(fieldName); + iStart = iClose + 1; // Start looking for the next field name after the close brace + } + + // Get the Arcade expressions + const arcadeExpressions = _getExpressionsFromLabel(labelFormat); - return fieldNames; + // Remove the Arcade expressions from the returned list of field expressions + return fieldExpressions.filter(fieldExpression => arcadeExpressions.indexOf(fieldExpression) < 0); } /** diff --git a/src/utils/test/downloadUtils.spec.tsx b/src/utils/test/downloadUtils.spec.tsx index 5e1cac128..89cc09bd7 100644 --- a/src/utils/test/downloadUtils.spec.tsx +++ b/src/utils/test/downloadUtils.spec.tsx @@ -133,18 +133,291 @@ describe("downloadUtils", () => { describe("_getExpressionsFromLabel", () => { it("handles a label with ASCII expression names", () => { const labelSpec = "{expression/expr0}\n{OWNERNM1}\n{PSTLADDRESS}\n{PSTLCITY}, {PSTLSTATE} {PSTLZIP5}"; - const expectedExpressionNames = ["{expression/expr0}"]; - const expressionNames = downloadUtils._getExpressionsFromLabel(labelSpec); - expect(expressionNames).toEqual(expectedExpressionNames); + const expectedExpressions = ["{expression/expr0}"]; + const expressions = downloadUtils._getExpressionsFromLabel(labelSpec); + expect(expressions).toEqual(expectedExpressions); }); }); describe("_getFieldsFromLabel", () => { it("handles a label with ASCII field names", () => { const labelSpec = "{expression/expr0}\n{OWNERNM1}\n{PSTLADDRESS}\n{PSTLCITY}, {PSTLSTATE} {PSTLZIP5}"; - const expectedFieldNames = ["{OWNERNM1}", "{PSTLADDRESS}", "{PSTLCITY}", "{PSTLSTATE}", "{PSTLZIP5}"]; - const fieldNames = downloadUtils._getFieldsFromLabel(labelSpec); - expect(fieldNames).toEqual(expectedFieldNames); + const expectedFields = ["{OWNERNM1}", "{PSTLADDRESS}", "{PSTLCITY}", "{PSTLSTATE}", "{PSTLZIP5}"]; + const fields = downloadUtils._getFieldsFromLabel(labelSpec); + expect(fields).toEqual(expectedFields); + }); + + it("handles a label with Arabic (ar) field name", () => { + const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{بحث}|{time}"; + const expectedFields = ["{latitude}", "{longitude}", "{بحث}", "{time}"]; + const fields = downloadUtils._getFieldsFromLabel(labelSpec); + expect(fields).toEqual(expectedFields); + }); + + it("handles a label with Bosnian (bs) field name", () => { + const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{računa}|{time}"; + const expectedFields = ["{latitude}", "{longitude}", "{računa}", "{time}"]; + const fields = downloadUtils._getFieldsFromLabel(labelSpec); + expect(fields).toEqual(expectedFields); + }); + + it("handles a label with Bulgarian (bg) field name", () => { + const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Търсене}|{time}"; + const expectedFields = ["{latitude}", "{longitude}", "{Търсене}", "{time}"]; + const fields = downloadUtils._getFieldsFromLabel(labelSpec); + expect(fields).toEqual(expectedFields); + }); + + it("handles a label with Catalan (ca) field name", () => { + const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Descripció}|{time}"; + const expectedFields = ["{latitude}", "{longitude}", "{Descripció}", "{time}"]; + const fields = downloadUtils._getFieldsFromLabel(labelSpec); + expect(fields).toEqual(expectedFields); + }); + + it("handles a label with Simplified Chinese (zh-cn) field name", () => { + const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{帐户个人资料}|{time}"; + const expectedFields = ["{latitude}", "{longitude}", "{帐户个人资料}", "{time}"]; + const fields = downloadUtils._getFieldsFromLabel(labelSpec); + expect(fields).toEqual(expectedFields); + }); + + it("handles a label with Traditional Chinese (Hong Kong) (zh-hk) field name", () => { + const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{帳號設定檔}|{time}"; + const expectedFields = ["{latitude}", "{longitude}", "{帳號設定檔}", "{time}"]; + const fields = downloadUtils._getFieldsFromLabel(labelSpec); + expect(fields).toEqual(expectedFields); + }); + + it("handles a label with Traditional Chinese (Taiwan) (zh-tw) field name", () => { + const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{搜尋}|{time}"; + const expectedFields = ["{latitude}", "{longitude}", "{搜尋}", "{time}"]; + const fields = downloadUtils._getFieldsFromLabel(labelSpec); + expect(fields).toEqual(expectedFields); + }); + + it("handles a label with Croatian (hr) field name", () => { + const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Pretraživanje}|{time}"; + const expectedFields = ["{latitude}", "{longitude}", "{Pretraživanje}", "{time}"]; + const fields = downloadUtils._getFieldsFromLabel(labelSpec); + expect(fields).toEqual(expectedFields); + }); + + it("handles a label with Czech (cs) field name", () => { + const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Přihlásit}|{time}"; + const expectedFields = ["{latitude}", "{longitude}", "{Přihlásit}", "{time}"]; + const fields = downloadUtils._getFieldsFromLabel(labelSpec); + expect(fields).toEqual(expectedFields); + }); + + it("handles a label with Danish (da) field name", () => { + const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Vælg}|{time}"; + const expectedFields = ["{latitude}", "{longitude}", "{Vælg}", "{time}"]; + const fields = downloadUtils._getFieldsFromLabel(labelSpec); + expect(fields).toEqual(expectedFields); + }); + + it("handles a label with Dutch (nl) field name", () => { + const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{geïmplementeerd}|{time}"; + const expectedFields = ["{latitude}", "{longitude}", "{geïmplementeerd}", "{time}"]; + const fields = downloadUtils._getFieldsFromLabel(labelSpec); + expect(fields).toEqual(expectedFields); + }); + + it("handles a label with Estonian (et) field name", () => { + const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Valdkonnapõhised}|{time}"; + const expectedFields = ["{latitude}", "{longitude}", "{Valdkonnapõhised}", "{time}"]; + const fields = downloadUtils._getFieldsFromLabel(labelSpec); + expect(fields).toEqual(expectedFields); + }); + + it("handles a label with Finnish (fi) field name", () => { + const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Näytä}|{time}"; + const expectedFields = ["{latitude}", "{longitude}", "{Näytä}", "{time}"]; + const fields = downloadUtils._getFieldsFromLabel(labelSpec); + expect(fields).toEqual(expectedFields); + }); + + it("handles a label with French (fr) field name", () => { + const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{accès}|{time}"; + const expectedFields = ["{latitude}", "{longitude}", "{accès}", "{time}"]; + const fields = downloadUtils._getFieldsFromLabel(labelSpec); + expect(fields).toEqual(expectedFields); + }); + + it("handles a label with German (de) field name", () => { + const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Öffentliche}|{time}"; + const expectedFields = ["{latitude}", "{longitude}", "{Öffentliche}", "{time}"]; + const fields = downloadUtils._getFieldsFromLabel(labelSpec); + expect(fields).toEqual(expectedFields); + }); + + it("handles a label with Greek (el) field name", () => { + const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Αναζήτηση}|{time}"; + const expectedFields = ["{latitude}", "{longitude}", "{Αναζήτηση}", "{time}"]; + const fields = downloadUtils._getFieldsFromLabel(labelSpec); + expect(fields).toEqual(expectedFields); + }); + + it("handles a label with Hebrew (he) field name", () => { + const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{עוֹמֶק}|{time}"; + const expectedFields = ["{latitude}", "{longitude}", "{עוֹמֶק}", "{time}"]; + const fields = downloadUtils._getFieldsFromLabel(labelSpec); + expect(fields).toEqual(expectedFields); + }); + + it("handles a label with Hungarian (hu) field name", () => { + const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Nyelvváltás}|{time}"; + const expectedFields = ["{latitude}", "{longitude}", "{Nyelvváltás}", "{time}"]; + const fields = downloadUtils._getFieldsFromLabel(labelSpec); + expect(fields).toEqual(expectedFields); + }); + + it("handles a label with Indonesian (id) field name", () => { + const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Bahasa}|{time}"; + const expectedFields = ["{latitude}", "{longitude}", "{Bahasa}", "{time}"]; + const fields = downloadUtils._getFieldsFromLabel(labelSpec); + expect(fields).toEqual(expectedFields); + }); + + it("handles a label with Italian (it) field name", () => { + const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Elettricità}|{time}"; + const expectedFields = ["{latitude}", "{longitude}", "{Elettricità}", "{time}"]; + const fields = downloadUtils._getFieldsFromLabel(labelSpec); + expect(fields).toEqual(expectedFields); + }); + + it("handles a label with Japanese (ja) field name", () => { + const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{深さ}|{time}"; + const expectedFields = ["{latitude}", "{longitude}", "{深さ}", "{time}"]; + const fields = downloadUtils._getFieldsFromLabel(labelSpec); + expect(fields).toEqual(expectedFields); + }); + + it("handles a label with Korean (ko) field name", () => { + const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{계정 프로필}|{time}"; + const expectedFields = ["{latitude}", "{longitude}", "{계정 프로필}", "{time}"]; + const fields = downloadUtils._getFieldsFromLabel(labelSpec); + expect(fields).toEqual(expectedFields); + }); + + it("handles a label with Latvian (lv) field name", () => { + const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Meklēt}|{time}"; + const expectedFields = ["{latitude}", "{longitude}", "{Meklēt}", "{time}"]; + const fields = downloadUtils._getFieldsFromLabel(labelSpec); + expect(fields).toEqual(expectedFields); + }); + + it("handles a label with Lithuanian (lt) field name", () => { + const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{sričių}|{time}"; + const expectedFields = ["{latitude}", "{longitude}", "{sričių}", "{time}"]; + const fields = downloadUtils._getFieldsFromLabel(labelSpec); + expect(fields).toEqual(expectedFields); + }); + + it("handles a label with Norwegian (nb) field name", () => { + const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{språk}|{time}"; + const expectedFields = ["{latitude}", "{longitude}", "{språk}", "{time}"]; + const fields = downloadUtils._getFieldsFromLabel(labelSpec); + expect(fields).toEqual(expectedFields); + }); + + it("handles a label with Polish (pl) field name", () => { + const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Przełącz}|{time}"; + const expectedFields = ["{latitude}", "{longitude}", "{Przełącz}", "{time}"]; + const fields = downloadUtils._getFieldsFromLabel(labelSpec); + expect(fields).toEqual(expectedFields); + }); + + it("handles a label with Portuguese (Brazil) (pt-br) field name", () => { + const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Configurações}|{time}"; + const expectedFields = ["{latitude}", "{longitude}", "{Configurações}", "{time}"]; + const fields = downloadUtils._getFieldsFromLabel(labelSpec); + expect(fields).toEqual(expectedFields); + }); + + it("handles a label with Portuguese (Portugal) (pt-pt) field name", () => { + const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{sessão}|{time}"; + const expectedFields = ["{latitude}", "{longitude}", "{sessão}", "{time}"]; + const fields = downloadUtils._getFieldsFromLabel(labelSpec); + expect(fields).toEqual(expectedFields); + }); + + it("handles a label with Romanian (ro) field name", () => { + const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Copiați}|{time}"; + const expectedFields = ["{latitude}", "{longitude}", "{Copiați}", "{time}"]; + const fields = downloadUtils._getFieldsFromLabel(labelSpec); + expect(fields).toEqual(expectedFields); + }); + + it("handles a label with Russian (ru) field name", () => { + const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Вход}|{time}"; + const expectedFields = ["{latitude}", "{longitude}", "{Вход}", "{time}"]; + const fields = downloadUtils._getFieldsFromLabel(labelSpec); + expect(fields).toEqual(expectedFields); + }); + + it("handles a label with Serbian (sr) field name", () => { + const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{pregledač}|{time}"; + const expectedFields = ["{latitude}", "{longitude}", "{pregledač}", "{time}"]; + const fields = downloadUtils._getFieldsFromLabel(labelSpec); + expect(fields).toEqual(expectedFields); + }); + + it("handles a label with Slovak (sk) field name", () => { + const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Prihlásiť}|{time}"; + const expectedFields = ["{latitude}", "{longitude}", "{Prihlásiť}", "{time}"]; + const fields = downloadUtils._getFieldsFromLabel(labelSpec); + expect(fields).toEqual(expectedFields); + }); + + it("handles a label with Slovenian (sl) field name", () => { + const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{računa}|{time}"; + const expectedFields = ["{latitude}", "{longitude}", "{računa}", "{time}"]; + const fields = downloadUtils._getFieldsFromLabel(labelSpec); + expect(fields).toEqual(expectedFields); + }); + + it("handles a label with Spanish (es) field name", () => { + const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{través}|{time}"; + const expectedFields = ["{latitude}", "{longitude}", "{través}", "{time}"]; + const fields = downloadUtils._getFieldsFromLabel(labelSpec); + expect(fields).toEqual(expectedFields); + }); + + it("handles a label with Swedish (sv) field name", () => { + const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{språk}|{time}"; + const expectedFields = ["{latitude}", "{longitude}", "{språk}", "{time}"]; + const fields = downloadUtils._getFieldsFromLabel(labelSpec); + expect(fields).toEqual(expectedFields); + }); + + it("handles a label with Thai (th) field name", () => { + const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{โปรไฟล์บัญ}|{time}"; + const expectedFields = ["{latitude}", "{longitude}", "{โปรไฟล์บัญ}", "{time}"]; + const fields = downloadUtils._getFieldsFromLabel(labelSpec); + expect(fields).toEqual(expectedFields); + }); + + it("handles a label with Turkish (tr) field name", () => { + const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Değiştir}|{time}"; + const expectedFields = ["{latitude}", "{longitude}", "{Değiştir}", "{time}"]; + const fields = downloadUtils._getFieldsFromLabel(labelSpec); + expect(fields).toEqual(expectedFields); + }); + + it("handles a label with Ukrainian (uk) field name", () => { + const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Пошук}|{time}"; + const expectedFields = ["{latitude}", "{longitude}", "{Пошук}", "{time}"]; + const fields = downloadUtils._getFieldsFromLabel(labelSpec); + expect(fields).toEqual(expectedFields); + }); + + it("handles a label with Vietnamese (vi) field name", () => { + const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Chuyển}|{time}"; + const expectedFields = ["{latitude}", "{longitude}", "{Chuyển}", "{time}"]; + const fields = downloadUtils._getFieldsFromLabel(labelSpec); + expect(fields).toEqual(expectedFields); }); }); From 93df27e8f65b7e83cdea208693a4e0380cc8c610 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Thu, 17 Aug 2023 15:27:06 -0600 Subject: [PATCH 133/406] build --- src/components.d.ts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/components.d.ts b/src/components.d.ts index 11c18f813..27df82237 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -7,6 +7,8 @@ import { HTMLStencilElement, JSXBase } from "@stencil/core/internal"; import { DistanceUnit, EDrawMode, EExpandType, ELayoutMode, IExportInfos, IInventoryItem, IMapInfo, ISearchConfiguration, ISelectionSet, ISketchGraphicsChange, ISolutionSpatialReferenceInfo, ISpatialRefRepresentation, IValueChange } from "./utils/interfaces"; import { UserSession } from "@esri/solution-common"; +export { DistanceUnit, EDrawMode, EExpandType, ELayoutMode, IExportInfos, IInventoryItem, IMapInfo, ISearchConfiguration, ISelectionSet, ISketchGraphicsChange, ISolutionSpatialReferenceInfo, ISpatialRefRepresentation, IValueChange } from "./utils/interfaces"; +export { UserSession } from "@esri/solution-common"; export namespace Components { interface BufferTools { /** From 34a8657294e4f4f0ed394f2a42f617a45c47b421 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Thu, 17 Aug 2023 15:30:15 -0600 Subject: [PATCH 134/406] update version --- CHANGELOG.md | 5 ++++- package-lock.json | 4 ++-- package.json | 2 +- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 6b62777ec..764a49dcc 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,8 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm ## [Unreleased] +## [0.6.5] - Aug 17th 2023 + ## [0.6.4] - Aug 9th 2023 ## [0.6.3] - Aug 3rd 2023 @@ -193,4 +195,5 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm [0.6.2]: https://github.com/Esri/solution.js/compare/v0.6.1...v0.6.2 "v0.6.2" [0.6.3]: https://github.com/Esri/solution.js/compare/v0.6.2...v0.6.3 "v0.6.3" [0.6.4]: https://github.com/Esri/solution.js/compare/v0.6.3...v0.6.4 "v0.6.4" -[Unreleased]: https://github.com/Esri/solution.js/compare/v0.6.4...HEAD "Unreleased Changes" +[0.6.5]: https://github.com/Esri/solution.js/compare/v0.6.4...v0.6.5 "v0.6.5" +[Unreleased]: https://github.com/Esri/solution.js/compare/v0.6.5...HEAD "Unreleased Changes" diff --git a/package-lock.json b/package-lock.json index 30763f068..352cf558f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@esri/solutions-components", - "version": "0.6.4", + "version": "0.6.5", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@esri/solutions-components", - "version": "0.6.4", + "version": "0.6.5", "license": "Apache-2.0", "dependencies": { "@esri/hub-common": "^12.37.1", diff --git a/package.json b/package.json index 828e8a7da..4e87e2b97 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@esri/solutions-components", - "version": "0.6.4", + "version": "0.6.5", "description": "Web Components for Esri's Solutions Applications", "main": "dist/index.cjs.js", "module": "dist/index.js", From c4ec9378bd00427147231f1a7ee4d927d013997b Mon Sep 17 00:00:00 2001 From: Mike Tschudi Date: Thu, 17 Aug 2023 15:33:36 -0700 Subject: [PATCH 135/406] Switch to async execution of Arcade expression --- src/utils/downloadUtils.ts | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/src/utils/downloadUtils.ts b/src/utils/downloadUtils.ts index 4c32e1476..f3d182c9f 100644 --- a/src/utils/downloadUtils.ts +++ b/src/utils/downloadUtils.ts @@ -349,12 +349,12 @@ export function _createRelationshipQueries( /** * Extracts Arcade expression references from the lines of a label format. - * + * * @param labelFormat Label to examine * @return Array of Arcade expression references, e.g., ["{expression/expr1}", "{expression/expr2}"] */ export function _getExpressionsFromLabel( - labelFormat: string + labelFormat: string ): string[] { const arcadeExpressionRegExp = /\{expression\/\w+\}/g; return labelFormat.match(arcadeExpressionRegExp) ?? []; @@ -362,7 +362,7 @@ export function _getExpressionsFromLabel( /** * Extracts field name expressions from the lines of a label format. - * + * * @param labelFormat Label to examine * @returns Array of field name expressions, e.g., ["{NAME}", "{STREET}", "{CITY}", "{STATE}", "{ZIP}"] */ @@ -535,11 +535,18 @@ async function _prepareLabels( let labelPrep = labelFormat; // Replace Arcade expressions in this feature + const executions: Promise[] = []; arcadeExpressionMatches.forEach( (match: string) => { const expressionName = match.substring(match.indexOf("/") + 1, match.length - 1); - const value = arcadeExecutors[expressionName].execute({"$feature": feature}); - labelPrep = labelPrep.replace(match, value); + executions.push(arcadeExecutors[expressionName].executeAsync({"$feature": feature})); + } + ) + + const values = await Promise.all(executions); + values.forEach( + (value: string, i: number) => { + labelPrep = labelPrep.replace(arcadeExpressionMatches[i], value); } ) From d4d2a3a4d243566ced934abb24f2ed89daeed951 Mon Sep 17 00:00:00 2001 From: Mike Tschudi Date: Fri, 18 Aug 2023 09:12:34 -0700 Subject: [PATCH 136/406] Add unit tests --- src/components.d.ts | 2 - src/utils/downloadUtils.ts | 4 +- src/utils/test/downloadUtils.spec.tsx | 116 ++++++++++++++++++++++++++ 3 files changed, 118 insertions(+), 4 deletions(-) diff --git a/src/components.d.ts b/src/components.d.ts index 27df82237..11c18f813 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -7,8 +7,6 @@ import { HTMLStencilElement, JSXBase } from "@stencil/core/internal"; import { DistanceUnit, EDrawMode, EExpandType, ELayoutMode, IExportInfos, IInventoryItem, IMapInfo, ISearchConfiguration, ISelectionSet, ISketchGraphicsChange, ISolutionSpatialReferenceInfo, ISpatialRefRepresentation, IValueChange } from "./utils/interfaces"; import { UserSession } from "@esri/solution-common"; -export { DistanceUnit, EDrawMode, EExpandType, ELayoutMode, IExportInfos, IInventoryItem, IMapInfo, ISearchConfiguration, ISelectionSet, ISketchGraphicsChange, ISolutionSpatialReferenceInfo, ISpatialRefRepresentation, IValueChange } from "./utils/interfaces"; -export { UserSession } from "@esri/solution-common"; export namespace Components { interface BufferTools { /** diff --git a/src/utils/downloadUtils.ts b/src/utils/downloadUtils.ts index f3d182c9f..b232db2d8 100644 --- a/src/utils/downloadUtils.ts +++ b/src/utils/downloadUtils.ts @@ -400,7 +400,7 @@ export function _getFieldsFromLabel( * @param intl esri/intl * @return Attribute value modified appropriate to domain and type */ -function _prepareAttributeValue( +export function _prepareAttributeValue( attributeValue: any, attributeType: string, attributeDomain: __esri.CodedValueDomain | __esri.RangeDomain | __esri.InheritedDomain | null, @@ -683,7 +683,7 @@ export function removeDuplicateLabels( * @param exportInfos Key details about what to export (ids, layer, and selectionSetNames) * @returns selectionSetNames that will be used for export filenames */ -function _getSelectionSetNames( +export function _getSelectionSetNames( exportInfos: IExportInfos, id = /.+/ ): string[] { diff --git a/src/utils/test/downloadUtils.spec.tsx b/src/utils/test/downloadUtils.spec.tsx index 89cc09bd7..bbc3ceb04 100644 --- a/src/utils/test/downloadUtils.spec.tsx +++ b/src/utils/test/downloadUtils.spec.tsx @@ -421,4 +421,120 @@ describe("downloadUtils", () => { }); }); + describe('_prepareAttributeValue', () => { + it('should format date attributes using the specified date format', () => { + const attributeValue = new Date('2022-01-01T00:00:00.000Z'); + const attributeType = 'date'; + const attributeDomain = null; + const attributeFormat = { + dateFormat: 'short-date' + }; + const intl = { + formatDate: jest.fn().mockReturnValue('01/01/2022'), + convertDateFormatToIntlOptions: jest.fn().mockReturnValue({}) + }; + const result = downloadUtils._prepareAttributeValue(attributeValue, attributeType, attributeDomain, attributeFormat as any, intl); + expect(result).toEqual('01/01/2022'); + expect(intl.formatDate).toHaveBeenCalledWith(attributeValue, {}); + expect(intl.convertDateFormatToIntlOptions).toHaveBeenCalledWith('short-date'); + }); + + it('should format number attributes using the specified number format', () => { + const attributeValue = 1234.5678; + const attributeType = 'double'; + const attributeDomain = null; + const attributeFormat = { + places: 2, + digitSeparator: true + }; + const intl = { + formatNumber: jest.fn().mockReturnValue('1,234.57'), + convertNumberFormatToIntlOptions: jest.fn().mockReturnValue({}) + }; + const result = downloadUtils._prepareAttributeValue(attributeValue, attributeType, attributeDomain, attributeFormat as any, intl); + expect(result).toEqual('1,234.57'); + expect(intl.formatNumber).toHaveBeenCalledWith(attributeValue, {}); + expect(intl.convertNumberFormatToIntlOptions).toHaveBeenCalledWith(attributeFormat); + }); + + it('should return the attribute value if no format is specified', () => { + const attributeValue = 'Value'; + const attributeType = 'string'; + const attributeDomain = null; + const attributeFormat = null; + const intl = {}; + const result = downloadUtils._prepareAttributeValue(attributeValue, attributeType, attributeDomain, attributeFormat, intl); + expect(result).toEqual('Value'); + }); + + it('should return the domain name for coded-value domain fields', () => { + const attributeValue = '1'; + const attributeType = 'string'; + const attributeDomain = { + type: 'coded-value', + name: 'Domain', + codedValues: [ + { + name: 'Value 1', + code: '1' + }, + { + name: 'Value 2', + code: '2' + } + ], + getName: function (code: string) { + return this.codedValues.find((codedValue: any) => codedValue.code === code)?.name; + } + } as __esri.CodedValueDomain; + const attributeFormat = null; + const intl = {}; + const result = downloadUtils._prepareAttributeValue(attributeValue, attributeType, attributeDomain as any, attributeFormat, intl); + expect(result).toEqual('Value 1'); + }); + }); + + describe('removeDuplicateLabels', () => { + it('should remove duplicate labels', () => { + const labels = [ + ['Label 1', 'Value 1'], + ['Label 2', 'Value 2'], + ['Label 1', 'Value 1'] + ]; + const result = downloadUtils.removeDuplicateLabels(labels); + expect(result).toEqual([ + ['Label 1', 'Value 1'], + ['Label 2', 'Value 2'] + ]); + }); + }); + + describe('_getSelectionSetNames', () => { + it('should return selection set names for matching IDs', () => { + const exportInfos = { + 'layer1': { + selectionSetNames: ['Selection Set 1', 'Selection Set 2'] + }, + 'layer2': { + selectionSetNames: ['Selection Set 3'] + } + }; + const result = downloadUtils._getSelectionSetNames(exportInfos as any, /^layer/); + expect(result).toEqual(['Selection Set 1', 'Selection Set 2', 'Selection Set 3']); + }); + + it('should return an empty array if no matching IDs are found', () => { + const exportInfos = { + 'layer1': { + selectionSetNames: ['Selection Set 1', 'Selection Set 2'] + }, + 'layer2': { + selectionSetNames: ['Selection Set 3'] + } + }; + const result = downloadUtils._getSelectionSetNames(exportInfos as any, /^foo/); + expect(result).toEqual([]); + }); + }); + }); From e92007ce8eaae9d95accc38cf0da94b18a5f925c Mon Sep 17 00:00:00 2001 From: Mike Tschudi Date: Fri, 18 Aug 2023 10:32:23 -0700 Subject: [PATCH 137/406] Remove Visual Studio files --- .gitignore | 1 + .vs/ProjectSettings.json | 3 --- .vs/VSWorkspaceState.json | 7 ------- .vs/slnx.sqlite | Bin 610304 -> 0 bytes .vs/solutions-components/v15/.suo | Bin 14336 -> 0 bytes 5 files changed, 1 insertion(+), 10 deletions(-) delete mode 100644 .vs/ProjectSettings.json delete mode 100644 .vs/VSWorkspaceState.json delete mode 100644 .vs/slnx.sqlite delete mode 100644 .vs/solutions-components/v15/.suo diff --git a/.gitignore b/.gitignore index de1e9f6f1..95f4d7f85 100644 --- a/.gitignore +++ b/.gitignore @@ -28,6 +28,7 @@ UserInterfaceState.xcuserstate # Tools, notes, outputs __*.* __* +.vs/ .vscode/ coverage/ diff --git a/.vs/ProjectSettings.json b/.vs/ProjectSettings.json deleted file mode 100644 index f8b488856..000000000 --- a/.vs/ProjectSettings.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "CurrentProjectSetting": null -} \ No newline at end of file diff --git a/.vs/VSWorkspaceState.json b/.vs/VSWorkspaceState.json deleted file mode 100644 index 4cdeb6e59..000000000 --- a/.vs/VSWorkspaceState.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "ExpandedNodes": [ - "" - ], - "SelectedNode": "\\dist", - "PreviewInSolutionExplorer": false -} \ No newline at end of file diff --git a/.vs/slnx.sqlite b/.vs/slnx.sqlite deleted file mode 100644 index 948dd810ac4ec329ad26aa639da2ab641e2e2d30..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 610304 zcmeFa31A!5wLd(YMx#Bp6P!KD;>1oYMc(2#3yI@6iNSFe+hijcEn{1WED1?YVs?q8 z>`)4YvJ=+sP|8v$Tj>In()N{7pc@oQ=_{12Y=y#i?u_oty`zzn_WSpJ|JQE}2vA&OyY^CpG_deH)t{UfTN7jC|_<<1PpXTfM*@ptM_*Mk|KZ$_o6&1Vr zIUalUwg8*o7*EFJ1HEG-kyK)>JQz>LbMaJiK>eB=S{F~qU9o{KGa+xs*3S06PJdU= z+Rp9%U5ACS+vD{6H}#ZC@AlX3qK)pZ%U8MW)g9nuhq;qI;St%~HP0bj(>2F+2#M|X zcWmnJM&<0;)Y0DCS$Eb1m%Ta=V9)K%g(C^sSZw2OchQx;_BGv|Cgt`xYf()6rL3;l zZisDP=lagA{>@vvHnwlw;Xk@_hrhkQZ&Ozfz;5j9=>xCezy9v-`Xb8aOln^|CTB=( zEaTtWxvq0-XHQ3GuYVU7>`dn3xv|}~8UZxxR50WgRMy(g?oKE_l)j^VZ6`LQ2B+tk z_N^To+PBs=wzSk~&KP2bRo0Cr5@TCN!-@D{T#lIm(6PpPM??MVvB0Il-1cZx&SvA0 zcmkC}3z<>O(7H-#eDg$s<~Lj3g8$KNY9`&1+FRDaMInnTN1D6%C{Awl%fC zyx&-;Bb68(NtViaoOSuxPJ4APbd*g>M^QYDhLcG-(-Dpi%LApZ8%11nhcU8E5VVeC zl!ca5YHxSl8T}5W+nl{y={80!<8LS3ZH#QNj=PPKMK=7y=r+YFH1qlYNE4x&!9U$X za3>`Tg&Q{2V6mXqTruG=dvo7d8iqPN++Y*9i}l4vrR`y}2yXy=V1nwHqgbu|JzZP+wMz$<(Ui2tg*nAy!9@a7REG`Yg~mNb z&Sarul?>hm)^4w^t7FetskA~2roz*|B)SFCOrrf^23bY_M7zW4YI*eGG<3+(6l-c_ zJsf3JV@pMQb!PzAn9_fUp>AMvI3p)>188_Q^6aM7XOtolw3;*up$op*^|cI9V~W3C(}nJ(MZ<>JX9qBZrZ6oGDjMJgeuwYnm!T=%Hk%!$>D7O^{&rj|Vc<~;I1Rz6`= zPQomR{>f7f&A_ZpLjSG@&AR*s)?Phr8e14rFpCZp|Hn}nyRdiq<+n)rpKF@OgcGCC z*7U(nnRxcYvSxzI1D}F#I^%oI_pt9a_+tH85wId)MZk)H6#**(Rs^gFSP`%yU`4=+ zfE9uNpG6=q2{xu9zZ)K;Jcaez2N)4?`Ged|LY2AIc!D1ihvaXD*{#otO!^Uup(eZ zz>0ts0V@Jl1pY%JFpKYC$H_quCh?2elGFfxA|GIli2>XMeu0BZ0zl8^H+g@GB6XSX zW8ZteH+_Hhz3ls~?^nK``+n^E0X!A(9p7EPufwweH~OyjUGBTscdqXY-zmQRz7u?V zeX?)Bx5L-#+vr>GYxgbpwfGkM>U?v3Gkn#)3ZKho^M2<2$osDM4ey`4FL{6M{iXM( z-X|Q*j!Nlm=^5!>=_+ZT)F*``xBWHyWA+>EXW8TSP4*@BYVi~C*Wx4MP2y?dabl}D z!S;^rDch~KeYQ=ug*IMzQTU#4laLo8!fIhQ{~7-x{}6vYe+qvbzk;8^ea!uayPvz7 z8{>9zOSviR2kdj~J?v%dDBH_6vz6mF3;#ZmSsUsz5wm(+}pi=|LngM8Rf5r$fm{Clu#Q^>jj1om3HHjH%GZPxypDF{; zflbUvngM8R|412tH5x#|3_xT1_m%-@*8ujI0cdQ0ybQo<4Pe*|Kx6xd$^fj=00zwf zG`3$Z18}4U5HkbN*#2l4fR!3R#0)@V`@>}bR%ignn*nHS|3DdlnO#|3z2B5L0?+}>BN2d^Eiy}J~)@&1*Hc|whVNWL@k17DkRAEhQ?lB_MLW*V6kO>w}1TylV zCREdJz`~J<(Zqs%B6Bo}mC6i-lkpRk)G`wn=k065N!Vw`nYg|#Y*-(Hene|pQ1!9|2F(`XHDF?E00utmf^k^gzj|P&d92|6@KH{&*OzRez8YB}N48&6VlZjL~rZJ}+ zEi$u#IU>j6;XpK;!7Nv7)={eQk#M@`AmyDaHl?ems|bWM(cvPjD>h>TYI6V!tXL+z z-=JB&USwtz*}6@*G)!J6GP8h@h-Y&|l>=vLr^w7jobZ^O2`JAEs@4#1t;$1JnE(_7 zTC&FTccA_uiHHnMEt<;20wbwdIH5_*U86S4XePBkre3o^FrCWea6bSObK2EFlR{Kq zK{Bh0GD?*PO5=@WR#7r)Y0~lNUc#3DNY!Pv>6F9|p{%4(BBO(YC@6Z{0hwtl)M}5W zMn>T2YNBotb9s>o6;Ahg#9XE_O<`xXsjVU$iKN65)uPSf`welvS?2OYneH z*(x$sP$jvxWB}8umWa$GprIi{BTj4)nQ9~mPxWWLifCu`&B12W`5oGjlnp=;)2SpB zGCP1u8_xxE2Xd-B6lZP|J@An78fbMRYLO06d8iiL)wHKIpkQD|bPpNdb|W0%Z(mvvN*Ho=`6`J|GX+aD=KCsU9Zc$y{)3 zB(V@PCNEU`%>Gnn?_eUeKg(;JI&g(?i2LP8P;E?@Gp!Z|G2rB~DqX1{%$&0T0!Ad-2U!8XcD<>9C-rBo^oN2QfgnQ%BNODGlJ zp;ZiRt`ZL0ngkUbgUcswZc{yKLy9KkaI!ZO4MxH`&#m&{JSDV%{jwWAFS$JkpBLTM z1D_Y%Is%{P-f{|jo_$L_e4cgl68J3Kv<^P=2NUpl>W!zu=gBvs{Y2^O(zyg3tah48rHuOHYE&O_!ph^}0X57(Tl$>44A9i?_jN$3@87_6tYh^T-S5 z!{_n~`rxze{3LuXJ>LhPP3J9#&xUjNz-Q>3eefChTpB(Xer^_g)}6f_J{O#g?&{Aw zs~SFMpSb`&XPwatpEC+s_?%jp3ZIkmo8fcfKF(3Y%$43lg}KoAy6axgF3-iDf4Gj6 z-g7K+=iC>2TD>nhJT8~}7tWxw(!I?24Y%L*vAf^(Gsj-XQ_fSJPdd6B7r1sfK5@L{ zxXBrHo#cGQ`IPf6*X_PK=e6!5e606*@15Rryn+oU5ISoYOs*dCqXU9PfIDJv$x0b37*9C7maQrKOV3{;K^!`(^gM_BHk? z;#=aK;yL1gxJ2~WUa>u3yTm5jmf3v5E5dh#i-f4KRPgYB;P2%x;KS0jQcgNrnq&XS z{xkb+_EYWs_If)nz93#LX2dShZ~MUZwC!fwn61Y)SNKr)iEvQZFLcA6!u$M>`5X9A z{wVSLj@unybe!ynIF5A8bvUIrrRQ9~_q4hm@GSOBaepfP(EVrkZ(TRIpKyQ6eYLyb zPP^`OhutXPhx0d|-^4}3i73p%17URz9SLU!8iVLk4O4>57>ta}mlyC`2r)DZgxNMF z6NI@cbNgJr>kx9xZT0-FQW<5oS_*h;E#G@M!ptr6_@g;;#x<~{6zyg|-!YyLbJJA5 zl?!Jw;V}q?yd>5fX@TM^MLT!|zqpje+=w8<>2zQyk&1*9*+5gQxvgPoV*}Q^VLHFO zoB(q@3cqnGSnBt6bNKb+i!s+C_wZ^@+cRRWsp9K&vT~7Qt~M9F%0%=_=Au`ch+bhX z`b87b%gseEGZFoQx#*=PqMtVxy~ITHVsp`pOhhj<7rnql^n7#C^Grm~H5Wa{MD%m! zqGy|ko@Fk2ritho=As1?(Y(3n>6LsPt2H>KWu1n0f;AG}w>-5}@Dx+QlS>6pG8H_r zRB+5x@Ia~HepA7HrGlfTg1J(`EG<~vE6vc<;{NCfrRr%@!BnYW(o}GyR4`#GxVKbr zkEvk1RB+f-aHv#p&{R+^6^xk*MoR@Frh?&8!Q)K@2TBExGZoxjDtN4^;I2}^ofZ57 zmfHW@aRlGM;OrI;HnGTtMHB=x`eHe%M%OY*y&5 zm5$>XaTX8U`BV574whQ5G|O#-9huRQrbbma1Kc&Go{c%KVqEB&mX^^RZZWzRr2~=H zB}>|xmo{kEcXWXh(esyk9Q-6MGn&l_wazV!LlFn^N$BFLEEBV^QVb{1E`z>4Z&(sc zCx`eGKycXvel7`kj2jG%i zT=A(MPefDYl@s|zTp9)~blw@z(IVY@hx0Y28qGXL+Q-YQf*ut$~)Cx;SpJ3JLzbj$m`t4=w)dUA1ok=nmCJ~W)`mIrgig4^E#fL#ax ztu6x%ErU_HH5vkcQ03UJb7h%HhS~=OhVi4Kp$Xh5Y#FCAMKtLgV8MV9;Ls**ny}-0 z#dQrMp|FF*8K{Eyfy1yrP!gR=*I$^a2m&4O7HDaVwKT|0F>pv^P)nVH0vCa{GTawW z7Xv4uh0b}%qjaFDwK?1pYQpm%ajo0KOqk3!A-n4kEd2js58N#q$;QG50G7MLon)$} z@ogNe$HNIZ(7H4l0--PxhSMywu#C?RM23_qvZLk9amW&Et;lOrIe6?Cw}JP7HHf@R zL91T_I~=%LIrldiu@ZHpMMx91;&rJ69KBlxQn-p^ghh zlg@sSnZB40YqMu4t{hOeO5x7J*g#Y1Jo9PL>4^(@eaanArblyuV)TP}p@81M5ZIjo#nmGbwnUmc7 zG%mM4j+%gQrZ)%wc&}mlC!sjP;J1KN?*kMg;Jew2%EL@XLn_SaQ~UdISncnD-V7Ah zbRgUoX=qy76w(ZePxxwmwT#aP>UC(~!|vrWvTPDHw$b}KXoMJF$Y*1!s*ug&P{ZDn zZBNJHM<1%GLFixREynpE==xFP$j0HukGu``A>~Xk2?J2TMW|F5>#W3NrK2pogzoFm#WE z6U8cW}bA|IkZ;g+4f98J4{jlRa>D$if zj=1}vW3y|(y~B6C>l4@Wt`&}%(r2#wTvvFX^z}R5bdEU=I-Yg}oqu=!#@pkq@qFU> zh36}t>s(K{9&`p>9k9m#ynBk%?f8e|HOH?Uk2t>RInguhxW-ZNbbD69oggKKB9lIQJ!P54T)&I2s%?9IW(5>0#-h^f_sdw8eGMGsShXXM+19_iv?@ z?jO1DckOcD;=a&5>fYtv;7Yrfy3ytlGe_uP$6MnDnVY5yt!(L17Io(!b8xb-*o?{C zr~r?%(hV{<%oLV`Zkfd}bA7F_3D|}kA0?wukhyN2u>Mej%(aT6xXEiP-W|*}lY~0f zu;$&tTx~ACow>?Hd^__cbMbA=l_uibm@CZ1k72%OB7O{Wxw&{hbD4>FKl251@jm8K z6Y)Og^XB5c%q1q`z0Aet;#--EOvJY`7n+N2VJ|D+A21PKzu#PV-98iHb))9OojDWX z&a6QgXB=e=bev~&f(gjlw7GCc%0##$X)e5G#6);a!d$q0uZeK`9&_QoYvUu-OC+EFyd_Vx}utCLK6qmA3ckp zIR9lIWnTyWib`QN$E9*QA*i*}g%(a-SFcC2z<4yPJA5e!G$Nba zaB4)>=&o0QzJHF;&W$t8WPih7;PfyybYtp7#Yi?S%hBOAqY;$pq`SEV1X`yEivesn zwO@TdMscQSulK#{Y+}$orrO!UDu@``(%7v82Qp7OHsIiFa9+(gP$bZ7r*@XG9Ep}@ zo`5*}82dKJ%u&h@Cr?H9YPMk3$uPO8LIZe`45#~2o8t#$JS(-=PnhHUKI1xqnd25F zK|pdNiHb)nPXm?pN`&C%ud=2@1O)>K(M()fy=W#J&jI^%rLg;C$b~tuF{N!V*y}5f z0`B?MLIcC%9D+aurvS`%UBoz)dIq5*ly<1BU)DnQkybPIKLE2{nQ^59@?cxIv2kfc zTg0HrT$3H$X^Slsws6Lcj14l{e&`(zLqe10v1h;yH{7d*MM`T)E3-sxeie|L!Y$E3 zW%U-ay#>Ilm6|r&?y%Q;-v@z2(Ye;hU~6l0Q!DM9cnOHaiy{rt#*p0Bw$vap&wVCS zsgz$^|AW%Zxk4waugcKwgu1NNv_m#@FLY?W&;=!rXQOf=5l+gfQ8={>CzWW8(sPMt zHZxQ0gmFE*-YAgm(7XWXc*O;@(a@VpXzL>A<$nj}&KW{0r!K2Dz-{9cEU-p2aM$S| zu}x_NgUU|B=ESJp>0D?7>T`3KCf7i6a?Rf?ChC~=I4n8!Pl(f^(0`II?Uu^UBu6>1-X+uS|t zJG(cnhdc|8QCi7rrE{f+VY@_g+It*mte7e^v9P?Bn_HJIiAMCj#wNSRdoSZ1@p?z# z6S8O+W{VO6*w2LT>x-Qq^=S07Mp%!=E=>fss-SJhlgj!yhVnWp9;wWEL1ZIUx;QL2 ziPANAy{|IfhnS<31{VQw_^Uobs8fb`bZcJ=t26+tBNUgkUZ?EVX%hB7dH=|Gy?h$ch%FFCdP{%fSr_dTmEKJ1+cP{ch$}FlD0xWE! z!g+p5J5hCm>`vgpziw2TwNM)P-{*b8G>%Iq@c4_yaQe@s42o$qULUns*sZrlEeo-@ zr9<9QR#%%JdJxnE8qfM=MZk)H6#**(Rs^gFSP`%yU`4=+fE58N0#*d92>fS7K*=qz z*8l%mm1>p7ihvaXD*{#otO!^Uup(eZz>0ts0V@Jl1gr=cB4FMBHw47`X+^+_fE58N z0#*d92v`xYB49K=Rs^gFSP`%yU`4=+fE58N0#*d9 z2v`xYB49H5wId)MZk)H6#**(Rs^gFSP`%y@E;ff>;C_L zV5M3`vLawbz>0ts0V@Jl1gr>H5wId)MZk)H6#**(h6q^ee?vg5pH>8{2v`xYB49

0ts0V@Jl1gr>H5wId)MZk)H z6#**(h6tebze|WQz83Gx-i&*n>qS?MbG9REzgql2i1APJb<8TJ)u6;MqEA$4XAODn z)lE(8d84^-Bq6VhC*b<~;cxHn+tk$qCN_5V^!a->!GHbT z-Sz$=-sVhdUpyvfNOdga-`csZb8BZ$M`y2p7Zy~l?XJ}bpjoGaAqO}0_}6xJcS3PG z+Iu_N*LKzy4Xu^aaxxZ9=1}<#X-yA;X3t1Mc8jGb8t&h`7R9k>_%M8;YK8I%LPV9` zXdKFKB>kWEXLC3=yxZT`xm~R>f5)coZdAOUO;A8BtbO6kkeu7??>VM@YsZH6t+kCU zEp|QC3EtDe@3HkEG_G83$-4Pvo1f!W3S#8VDlT}$(VegcWfk*O01O!j~ zo=Og=Uz0;9N?oymE;Au-vEg_1tnJ+H-*s3R&=r(MRwBLIU%QJoy1Oo4<+fLMfRi2O zPWFUHWOLU%hj2~T9M>Tvw%bqHakRXcp>=7at!Z$Kqr<;v!01jz!>GG$P3h57&^nG$woItb=yxdH=Iq`2wUzME zh~lKXjgd`s8zYNs_=nML@Rd}7Q7-nS7v%ppO@z9R{nMAY|FPa|xJnqhSYLcZ&gQ}+ z>D_*GjqdB(2p6*Am1L1*uU=fo7FQwG zYh0L9oJPP!0#j6n4daEzJx0!Cp<|T{-UZffudb_O&seFnLJX$D)4wFT1=38S{b9zx z*zT~pS{{8k4Z$>E{LvI^YGpkfWi(nW746lX0bFCohCi@53{&0Q02-c+JiBT28Kp=B zttO2^=z?!{eXWPNs^WlA0pbfY0vkCaFp4NXt1|*4ODuX`Y;i_5q4`gHTzAHppbTxF ztI>xxVk9xzve6C8$R?VWk@YV&F|!Npq1sltD$p;RXccVAdv~f7gR%U48>=ubwuIEet7`MF)!i<0y<> z*gJhiTcrHYHO*tfiBV{4`e27wOi&xv{r{4^4U1q!z>0ts0V@Jl1gr>H5wId)MZk)H z6#**(Rs{azB7oNaqU|=ux5xVf*RLJJ(*5wm`m-WnMZk)H6@mX-B5?ME3j3r$KstZh zzPP*}Wd)#Y8RaHiT+SMQ7k8kK>FV6(H}d@9tjD>nt8W9O`*ieg?d>|Ivs9+Nx0rr~ z5{-Hxy{V(mZ@e+k74x_E`qzZB#f&fYj$l`;-e2yP1CsAhZ(67#x(d4CLa}qh{&ib7 zZ7i{>-yDV;qMLg3pQ@MoZ{+#rpox35$hzL(Kkse{gyR0mC;Jy1yTA|s+Z@!23FRP5 zog3D5)$$pt5=n2?Wx9HLAieD}dPniEFnv zxUk;fcUEf{9_M(@9*&dXYB}FZ>j)a?2FSxRZ!G?DLBNt>vt))sq4;6`;^=0=T0-+@kD;; zdgxaLeFKSRn%?U~TL0qhBpqFIS-)Y4?>PR?-5%OZjiiWrV(M<>r>Hbt^YlNv=lM$g(k_a)qtjTsj$2 zO_|Xy1;#|w|2?_6*7<+`w@mRZKdcB?5wId)MZk)H6#**(Rs^gFSP`%yU`4=+z`rj7 z=>GpcwvzF^?E8W58@|hYr}_qbt9fYgQa!+-=?t0#JpX*Xr##UN0cWM- zQ^!k=#~n90vX0%34UT3~Z@h`x1M#_=)&y z@e%PR@ig%`u~nR4d&l;a?N-}9+a}vW8!x;ld{4MZ$O{o+wJ@9ijDL}Th`*jcg+Gp8 z!O!46=6=K7&t1)paXY!C+!Xc$_Br+*_A+*q?PZ&xu;c#u_leA6)*)u(Y-%(EkBAJ& z$>5%BD!ESjwQY1_?P-6TF)A{3qy)|O=gI(dY5-X?0FCX>7y$+|iix!tz<+{KqUfV0 zF(YkeLSy?=WdJ&`i5W>V0FCV*DFd)Z14x(wXl(!9G63xwz#cOIjqQ(@0a&d844VOH zZ2wRhfK?j6pc#P1_RD1ej?@5RW&j%7A1wp0QUi#X0cdQ0xD3Dw4d8e)0FCV*CRmn|qANw2)%iG(3tP zP6RUYpe9t)Z@|K%NC2KX8_~pqeIj!-iIvI>g_H3Um1o;cT%6Y{GOeUMLJMSvp)AQE z4RzjDGpU%I3&#_Bai?!7#tTP;@~mdFp#afTaxgwLno(TSOx0{s#h~o*q#Ve~2|22S zHs3#?cs zyx*W%yuw-shuJ-7jeR4aweeM1lFugU90lYRVDxhftIZC z{2i!&NFpLbQ;ViDvA{?w7EWjqbJwU1Gnz^5kEz!z5KN~sIierTX;%YH3K{##oYh4c zrOE@Q@t(7al2J>Ojz{+rw){t`E~`z)EPiuVQYewpK{zeQ5aVep)M}5WMn>dhj;`Bj z%Zp5?@RB}1ZJEk6g`L%=wu*2pW*$!eQguK|gd=idT`DsY&SjOW?-D$wRJMvt6;w&C zEg8VHswE;b3211@(1;UTM5Y=E!c+ZOFBT0pqt5TphNNr&ikMC%p^(`DRN8nhm^+Zu zX`TnKPiV@zv6!N82@9#j^MSs7AGB4s~APy3(NTD!*zj_ zi9jL~h2pO%O2Fv3AHrJnAehTyj2ZJpW)Z?@OF~zQ55j>DsNyht(p-_5#=xa#G>tl= zLSFd(q?vP|0U|Q=^07!NwKo9gMC9U8%%3+KhE_m@Q?!!Ncp?~+BcnsbQtGy6`Jt5( zQY8Wvv!Je!nT&>9KT~A7kWO*rCmT{A6buC$g1Mm+vHR6Cpjtp0&gxpbu`@Ul!;E>; zRR=etF*`d9S0H~bQ_@1NC$`x)-j~FC{Q(3JRS= z?C$F5?CI4e#uFz)TZ1wUjlv0DS~WCOi%c&F%h^mkP^N56!Dg~-4M!Y~N)x3r>2OpU zDV2$bqe2C}q3X~ojlnj`O6B3GETvQ`4o9VxQkif#DoZF8I3w;*^m&Y)upP*(pdeKWnEcz^4?-+PsJzjvFr**nqmw&&-bZ+I^9 z?DZV&sr5+iKe~V5KIksE2i&XN(_Npy4#0O@Uv%wr^}3o|6PzzOzu`O!*8VL{FRc6T zaGc~=11tXDNne$6QoH1|KWo3vK4M>LcZn~E-w;m~w}^h*>$Y#(&bIa076|VPKNhYL zMucU857zZJ@e#h3`)}@E?sRS)C$Ya`53+mMAoB@0t^GCSVcOacSGj075rz3Inz_pX zby^Zc*F3nkX2zgqf-s>A;;=2w!z^~=;b>uvwmeK|!{!=bb8MigytS4*%yoAhzAm=e zn1}gqFQErhgh(oqIxwEGU>@ehXp(^gQcek5S)Pa4vTUND%whvWnbc^yeA!y_FqPi@ z&uC-2&3Tw4@k$8uce;d!(8hL; z%){({Zy8qu!}5VZJeeNNl{dXC4@-dPKM8=X*XLn%u%1*Nj*nB3wRu=4tQuDwBZu;^ zT%f98SdQ+6c3Hk8^?6u5(9W2tU<>tmSV&OfFxxMWUYmzi1?78*I7SZUVR1orkH}~) zmr9n$UYLgkM+XrXGX;#kI1dXDa$Jd^3C=)cdH6+nSe0~=@ManqzXi^tqDB%0AJ(|a z61=>XhCD1>wivCL>tS2LJS=R;NQL*o3MW(E$ih4lRpn@)WxP^7-?Z17O2Q0-##g}>{CQa2qN3rATkZDG4lFVw4@=w9`#&1r zpGV7EGl=av1T1h%AvC@}4=Y_$h;2FqEPG2KG`>F%Yg|)^V{`~u)0RSLe19Gmu%;0G zIs`0OOCdDAKM$)@Q;0qt0#>7?5E|c~hoz?}M6V73OU+UUjqlIHy3!P4s}2Fn%u)!A z@6W?h(-dNh4uMvjWW6g(L5=Uv!kzPRErrnd{yb9#;%E)xG&2N^ z?LV~)z)>2&DP{l~+kbKyfG!Q-Br^bw?LV;$zy=Lq%nU$d`wx@>Sg!%>Hv`bvPHq8n zG26=c{_1cPzB_%__|Eo?`VzjFZ?$i-_ix^(ybpW7#Z6_u2e|;3vj1Rj@us}p z-a4<-^B2!ko^N@s^qlG$^7OE+9ym?V{W5o{`+M$d-KViXbw}MD?x1^$TX6lEJ<;_u z*S)UmTxYwIu47zBy5_sQ&Uc;9IUjW1>b%%_z|`9TIi7+&gUcNI9XlN> z9U;eD&cojAsB-Y^8|>xME7GIVLFqJUSlS{jlV(YR{m=HF*zdGoZa)oj2YT(R?Dg!B zeX?B;-(WY3&xj9*2gOUped12>NU=tgY;W5B%XYWzO4~`c<81A=c{WjaO?XoHrf``s zCiDvpf`|Vz{{#L;{$zd|-^ly8*SROSJGfK1Ft?UlFj)w2TzHDGSp8zSg)lKRvGoX{ z4kXg)>=0Z)8XAxewo2AW4^I^ufE0_N9sBIwTq>=x9`Xs(khFXN29U~+ zs@AK&Bd~P=zdx*6=N2ZZ{K^+AKT>}H6MlR+Luge%saqSt;oL|<^i|$Q;#T~svWCR1 zc(!t$hFkG)#jiA6`0*_4wCv?zQjpre7Vf}x%Y(V5MrCxf*V|v6F0_DAlG)gdnSU&0 zLOIbE8EC$uh7oJ3kmf~*!M^*%)`>f54IS#GIYPVU1Z+&paKE?btSLmS3t&N9=Qps?lQ7_mFWo2|@ z&zF_aZ9P{`ra`y$tFkh>t!K;1=(c{THh)z0Yf_0=e_A*3jFF`y|H8=90sl*FHyChh zd}x?xqdzy{>aagE;p)gg)tfMKm2Uh`mojzSpOi9n*r#YF>Q{OUeq74bVV^8z>ab5t z7g|}=8%^f#%)!aRVlyUlBcat8jxy z+6Cd*cT0FW+5;s#9rJ#*=cLo!;n5_#;UJ@z^*ctEj(DGur32oJgSlP~6JYm{WF6>k zlB|P#dydcn?QxtXB6Gt`VR?BG=K2zZhPEY3mqw#_kr@)+DnTGbLc*KmRgwRzu!8)} z)o@wus>uJ6|EuW&hg4*Ja!o{ssAYGDyHO1N%}W#dG1`Z`6|vA#ypb)2uN^aQ+sX*5Q3#;;Ix9p}pw zUB|gyZ4a?nAH14JFWzk=Sx32*BTN96 zjgoY9v>Pe94s`=X*Kw}L^sZ!&ykEz;j-u;0*HUyH=Nfe+i^aN5Tx!E~69%#Ri9!vu4P-^PaHUSv(XY^nI`S813Ck6Add{g{JlKcWm(^xzm@C7@ z1$cijpX{OeDtkYF%{*Z}bbX^Hc`q*{{M9e48b>H3yrK3rBT6)j9C)c#*kqzza?6mp z&fFJDkhvB|p9%&09rmFkgaFGLOVZi~D+vf)GzTyE>5ZRA^ry=W9K8-MGjQ~Z_`*z~ zO+kzAgV*|OOu>t(QbZ%Z)Qqj;e%_3&gI}V~jFlG$_2y98;Z`|2n#d7j$;IVFbR!p) z6VVM_NG?kFH-zQnZ*Cr!(bgp}9KWIcfZ=%F0%0S|DH&9$XK6~jVafn$O& z7rqeL1e1gS5DYm4_KCtGf~sZ$h%R9Y5S4rZn@^Yx-?c0O!7WTve?x8nUnSJR4=N*o zs}LY*ipm3U@;>Gk_NNTr&d=kVu)_YS?>t!h_xhIkX8Y{kH@v^_-tE1@JLZjekA_Tu zDV|R~FMA&MeBE=YXP;-M=Sa^2&jj~J?$_PFbN|f!C_l-4oBKj{*4^)Jbx(19=K7=S z$B-Fto9lAd=UijH+qvsp!>(=Ir(D+6?poxUywQ=DmM)b}*^ zbME`xI%hZJ56pCmj=%cu;lAehgX3A>-?&R1KXTm1y~)KKH#p95q#fHGs~xqD3DSqs zi_+uL9nzK3n6y(`F4agr`$zVdVQ1i8`}OwE*;Dpo>?`f_AmiX|@j3A!@fPuXalaT5 zd&D-_6_{ZA$o2=@k8StbZn9l$JI!{2E$VxfJJYt+*3SKo>$T0{7TDa7m+&HFCfp<3 zC|n481+vgBGzn7$k$;E(9seYM4}Xw9kI(QsIWB^_M_+1P23Cby!PZknp zaSE2QHixn9THozVQq_cVdRM@b2qr!QpCdO}$QX&%`Bq>hAm zxlJ!*#$UxNgF_@fgwh+8Sp=-Dvw*B_Z#=4WLzF>R`MavGO%P^44B}B)*{=Ac>L{-; z1qk6B^qR_#tGX0^_{3-;jtGCR+TanYiwdxX@rg^QQl#Pg#|lRggc|PSz#S4|Sgew)#S1zDjsd%n(zVFwJ$VC(>HKB3h z>WR_Pu<0>1-NHb78!xNg!mMN@oY7|{(k_awSL9BLt{ISaC`$~KC#W}w?HWzj-=@)Y z-D8Th1ksrKHJYy5r_prXUgcUAfj5Uh(sXWEH@=l-=qOugh7Pq^g-@i0bd*gRO$X@F zXu9r3Wy%qO`XxICcePWa>5i^dCdrVq zoY*utsH=C7WF27*N!CHy)gS^$Q{y_-t9og5(HbIR+A2-3u~`#5QWMk-t<(e?mS}=2 zG(p|;a%Ex@k%!{Rq*7a&^fI+!=^X5YI)Bns2v3&MD!MzZv=zdqCA5m}SWA%+&d{4m zQZvoajWp2=9ja07zc(d+c4Mo@C=23JV zXD&%^(sAZcbRB0lMb~lsB)w6`nMKicoS76|$C*LW^=(yYIz`uUrcrbqXDV?a;vkBo8)xKaP{GyWOv2lpKJy#B+*xz!d2GmRuM5*|TNb+eNQs%~|nGQxy+5*y1>l}6LG zD>a&~TcIF^cT!uj(gcF4>-z|*j^L#x7W|vSN{YbE=W_bg1}f=I{TEcz{0dRJ7Y2fH64g*I=lhm1HE(fneMUUTXPK@eHJ;`pu z)lo$gu8wR|ZEDE6pMrs-Bk~50j>ZvlHTFmBCmvx6tml6o9W8#O8>b(OGx zY-H((e>bvpz>i24)uino8d*Bv2S%0-_ zw!m({KRmB`e(Jf;bCc&n_9V|9PluKJV|H=Inx5IrGoDy)RJL5jyy@9>k-RPd~ z7F}<szjCUFW#cuI;YXu6oyGm*9NU`GWHY&O4k}JI{8GIQyK-o$!ig#~Y59 z9nW(Yv44V`fQPvp`xD1ON8S;0bT}3}raA1=o6@hOhoxJk3*pIvu+#%9|Ao?2_7=%u z|Iq#l`+57*_WSGyAvfS;d(?iEy$SLHSn*ZyDe+t4mGIm_Ogu_lEKY>g|4X(fYhxeza@~x#in99xUos;-L32S0&6^i_-H4svhz2vlSY& zC0KA*JzUKej3OrX#-X3l^+o$XP|1GgP){uDnC-b0lD%+XdfL)!|qSx zhW0nbx;pmYhWoBk1g$%fz2Kcv7Djs8wBTrCxAHc^&B_|W&B}S$&5B=PH!GekwShf* z>j-|a8fU7bze$s^M}MWs7~~D58c^}blD$q*F~naeDn|Hk&BKyz{pV5^#(J%kg#rIG zg>O;Ig#bynUM=BZxIdO~Fxo4c)8yd)GDXEGf1s!s;iXx8JNCycwc^Dxe2n`0GJK5x zyV-mviC>yg@!PTz*v48_$;$z$Tt6BcM(6e^pKZn|QXI z05@c4jXRbGD6S)aWb9>9EO$Z2Y z5|>h81@VK+;!7$2SNx5uQ96iOy24#099-gWm2hym?^G(qBun8ABLic7)5yS3-NpkthaierYvgBwXAM!10_V)g5bL@M9lI+BRhuO*3C{TgN5Fs2z?O;ItxRTLE? ze5qJ2!<3Y-ui$IYR8>zcxKg8F#49ukM*E`D=8bpkix~wkE3K%M$^JnZvyBWi<>arK z!>=!yYf}#e3xA!-uPQGhyrJ|1BREPTcxgVrsZ^0l41mi9bDgORq!@E;F|>5{z(W)H zKuPLAn{p8`yKXM>{r<@ zu%BvA+avaM_J#Ipcw*pf@%Q3S;E92+h+h)V5i{bk;ySTKoF`U^ob7Gfi;y93kL^a= z`LdbLw%KeRxhaR7VJV}14Tw- z&nsx?B&idZ8Y%3<6ZjgIlv##)jf63EI;n(H?A+3cN+B^?(HCiqqGFT-6cr=vSE2{2qpY0SsNJ)W_R(aF zF-ns$NDdWVP1L}5*Q6{#!|EA=hILOs!7b`m{*m}m@fh)ge}VYHRiF!(X<|s_?PXc~ zwdguXrkdb*rHu^iZ_3EPPA4@6oqHmU7#SEUVPs&ay=q8NE^HFAGO)^}#xTxM2?s+BmT)kdjHWzrE&;kniE}8W7)it!QId$&BT6kp7A_n= zgWU)dG^~6)LBqNON+T`ifULvX$5B+Qznh|Bgkx2gs4Nm`7fHnWJ4qr|-+@+bMDmEV z9TTwHHcY@O$EXA?XGH491gz4B30S39aovzAB5kFpSa}OY#R!`fNIgSD+Jp&MuLl#b z%0^|RBN9WTZjFMKj@Bqx>nOAyrSd_fE}ew+Hs~a*xE@V<%rl^>9xcz~7kl79TAU44 zbrkulvX=ZMtRjDL`<#5Ws#p1m_O;>#?JNJb_LZwuMw4O|NrMt7J%vPChY7fJotS{j zwpMAnROX1(LC~<`8iIy(+m#R#2_w>K6<*60kyc?5oS-2ciA6B-N-TmCGNct)1RGke zj1_tkh?*WEEmPW)PF8Y5BxQbFk{BW_rG&BZRtj13UzQb3mj9l8E&~BoV7GR@x?+`XL2%5>^f9B&=9pB)}XpkZqaK`WZFe}*Qz z#XF_cosv(Dj3SEtA4Ud-`b60$Q`cJLjlGWzbPV)&10CahM9|5*BOe;*80P~69pk)@ z&i^}#d4%yj;kyV<{;&6O-eunZhQh?icx6`4K+E{e$}<_a$zaTfw>6U$R%RGF#7l2u>ZwUrPZF zTOm(K%ED2r=zQ-0I)b_Uu`mq4tJ zmoCy`G!q{wZ>FvQhrhIsFORW<1vm(XJo*Y9D4rZD55BMf$HI`OahWM#^yUJb5knR@ z6NW>c0%nJ_!A6~S0A#2D=f-Rz3Q%4RTUu6tqhz9GR1S4a;*tU!GD9{X(w>$w$@sJQ*EfyY1R&L_*hc`4!faBH=ZW8x3~aD;E?C@sXchS^Z5#JA`W>zpQ#4M zZ!Ez1I8+eAkQ=QeWtOj~U;$3dAv;LAj1smID!>ssWaCYxQQGHtC#cmI;7A?vKt*#E zY@xXTC+v{DN)AR@3WPV}MBO%yPCYaY(`A$x}QUIDXc zl9kYuhjV|(o-wW_wpX9uM>h~S(_wGECu3-~- zjJ-IYq5HFPpz3&)uqb~5-JeZ0Fn(J;O`rO!NC$H9kwc#`+>%ex^OHm9Vw;WmBt3={ z_26;&@<9vcN9e{_P6=CS&L`*|t|}x)MVBbd)fT3oyn7fFr^m6lPdJak*JI^EvR>d1j(0Q1dXpR3A8kXn;Y9g z_?cpDLXpZ3fmL!i_;*>w&^5zmW^&YP- zqsF=%M-$tt&qwG{DGpm$<&D(l!}O?BDvptZ`QzyhGaOFF#w)j#- z%!8cX^f+fs*X4K9W1fjT#;(sFOUDGgIb*z-?4n~*DvpsG@;m935fVMbv@ej~L6@|Q z4z>}@Z>Qrv7*D{ero8_P^V{gSn<-%QMfqds(S0xs?+=0W5%S~+tHaG zA>Zlay|2Tw0S|a@^nT8p^!9sKcxQPz_Dc42c9`Alc?WU>p5*?^b0>G7=L){xbDAgW zS?!tP{=55E?#JEVW?R^)%xCUv_-px>_#g9kyDxBu;TZv!>qXc7u1nyQzzwch&UfI> z|IN;moITDuI2rI+$L)>+JoDe+5T%!;?@C{iGEy(RJ(Qmg7f~i!yS9$yZ@A@Tq2|JrkmX66ug+GxEE!wmkLG}-b$&L z@zMLn8%f4P)rdiVdh7Rh27?;_ym3I0lK7yY)32-`VUV&WSi6^$m7cr zz9H*874 zzP15feTrMnI;i}8JFbtQ1ybJp?a7x+@^<;?=f(6q_}~jqYW1uYw7)Z030f1>X?J2 zOdVEMi%;LU2gDdf*TJF`UB`)#m9NJuOp#3Vvf|-=<5;Jp znR}_w7GGmPJ1A0hXb=h6V6&U3!y=n9qPTRAnITGyxqG(Iu9s1LO9JhRFhgi7ClRvo zR3yv1Wr6v&i51$9yJ%O{7bMV*aCA&)k&un0W1_MtBT7uZWoC#HW9~FTQeLG%`@@(Z zQDPzCvxP!05j(}F(w8zQe%(>dDDB%fsa95eB|`D74U~Jrr*zGzwhfXY;U82Rr|~Gu zij&_M$2uj=e4V=R7je~1SK7@_sA17mFeH3T%{eF`%BdO2yI;w5NyOqCG{3GXV=Ft90qmEzrO zW{47FZc}UDX$nUUHI}Y4^vTdkrA&QZb)xEuAzc?HXk#=(hdV$sbg2Esxuqd* z7qIpjI6By*S(2>dWJt0OasoLShivW_$lsist0+H}N5{FTl};Q4 zr~8pE;pxt#N_e_QNu5Wh=|Y(Pi6i1*Myq4)b;5!s!NU9h{^ENUascl0-Ripx-U2w} z+w5!e&GWgu|Ly&O_jXv{k9h~ZJ>DhWnO=wIZ=RPtPkSDKHv*pJ+3snA=lx%GKjgm7 zeWJV9UF)_%KL5S03tVy68rM|kU!6}vuD~hqM1K>!4e$-etaB`MIHf;B z*1&Dj+0t=RBdp?IwSONn2Tq4o{7U;|@nd*9-~;fS{wd;d;&OOO|2;Ul|1Nk&f7Eu2 ztwwlDcucrdhzX5?#J|Ab#h=5={E_?wIIr*9+}Uti|5C1+eTV&_`Z_>*!erxZcE(kl z%%bN_@VvHkUc}smp3l?x^kfEgVjG8^RVpK3W9RWl8=2JT00_*tOiYkM%$=nu)C49t zvWVZInIX1sO*Lj<)HfOD00LX|;T>W|0se{YK$oo+@LG6l8uJ;CGjx zDO--k+gy}$Q|tKt!;-d5Y2f8?B}p$7cb`0zC!_}R1bXxf*S+aJjM79Vqes8S6|+?@ zw~^ zf_POT)f^_)^ScgL!B*AG?>&?->5fu>?;nOsq!RNOdX`YDaP-1O%Hv9u8fVJ3RZvaE z>{X4-_e#Ji+mF%+#rG>x_9xH?1`(T&YGCDF>c~7|YKZdXVagENN}>GlQgI;JHV*}E zwh6;LR02-fevll(Og3O_ZgSu@2-sZYuvKRBh54?D3Cf2D&;x0sSr44@GHwo z*c|AwL!&-vL1~`%n^_^HnC~p$x6nAI8!k3!F5h(sIh&ol){Ot+N#?%tb}9evB?D>L zML|WhiDX?F1Z+04uF7n(F!z|4pnSNybRt02lz@`iaa|ba6J*>-6x(xy^h-zaaFlx4n7j+WGx2M&nh-Y4XMW-2CpOwIu)5z?UI+}Fw)B}JL9nuyW+ zA&PH*H}Q=Y6FxHW&3w~@`AS)%ly6_A>kDsmP(k~U>N6$VCBg@E9bpX8juNih&25o# z%x!e5rM5LFr{1Sqt*M~!9yuuqW6#a+qBFOSW18~u7WAAK-XLjGo^>E^0!e4-q~elN zI#VYVSAEhM%CjEyU8Rb>>qPp<{WY^aSD#79aqDtd}|!j z;W>b(q-)?gfc4TGID_v=`>pVdeZRfdE{ZS0x%*d&SvYfVhV6AYZ|@+Sw7=cf0?*LD zB|I(MEbJ3D3V!}W{we-ucxqmK``&BZL)<0GlL0f>zr&OAH$!g0cD9*ygUg5iH?IK6 zgy^-laG?l9OJd%`~u_vqIc<{ ztW`5%jOs5y?jL#uCz0N&ws@_e(+iO2x1dA>Bh(cjrw?V}YPqH56Jcr!kj1CO1JYeh z#zBm^s4%SN?j+DFcmm3!9OY3L6o%B?owCvxcU}SV!cvfr8jX|FsMXlV&Y!!6O0M8KH^NOW6dB7{-u3Xs!=Vh2ela%K?T zw44pdtxE=*8ss)(mDUs>p$)~ZjI53c*=z>P*49QjHn;@84NI%qngS%U88As%jJdD? zIc%uyDYnt9WS<-eg_kT1N7_mponL?iHq`dY31ien1;}1Q`Sfu}YfyURc-guO3Xr^p zGPKG{W87H<$XyF4k})_26OHeNCOxeHnQApg39LV_0C{Psm7sHs4g{i0+FIM9k&*$x zUw~{h)JjUlbR@_@(~(-kgN+T5B_+MpUx4H@9f=gvks#}gKw8o?xU@AKH5SZYfJ`$2 zi4em`!2)ELq2$!A7+hS@JA&Y8$|2}w;kIxn+T5hQ)&?sqEI>{fs{HX3u<-oCX0`G+ z$nfw@awrgO2t}HjO5Ywnr?5%wKxTp%ZEm4QWLm)V&}cjsSlS$pHpkjZTJfyHMzy|6 zq;#Ba6=yJ&841XP%?+WZX7m;VG%3(}!>q#5Do%+M##vZ6N(}{MHY!gp1xDk6R=FwG z+S*z&ip(!`si7z*j8SU}8`NH?rZWbb8e0aJv^1AAli7v!>Q%x-4r47UtW*0`=K**+ zCDxZ38iH$Bw5=^9H^fR@Tu|s#`&3zJj60{WR;{jBY9!DcZdn=%5281?QURP<=upQy zqYy@ED6CPlN@H?tG@64xpNNho!tjQw@}qm8(5_~c9zqA(SWsB4mMJDjQt*~TIk2QH z+7t=L&@DyE-MNKTYO64n#CUTHM;4{vJ$wNfI&fpC#iZ@5RNIcS@lHx%oaVxcVrnMb zl8R+hqZx25Bd6g>#qn}pLxttVbkjqsVM|SgWySnzLgkRph%GL(6`!9tloqxVEG#YN z@1~OQVmf&22wq^8NaX^NFhsjG+++;+!a}RseIRqYtO7=_FDxl0&89}s+4Ck-HnQ{9 z7FvqA&1J=P;fu{0}dtsrW7!l|RacEy= z3K+e$5TY~g;hj8i-eLOCMQAE4rZeux)x`D|6@qjIHP|X&lm&%=+VAl8Scx>oZ7S3o zyg8gQEG{gfpYJJKa%`ueu#nDSM;eECmM~DLqjT8H=wKU7g<4}-4&!;C#f1gNvXs%n zcIpfBahokRl=yg0DAX2eaGNbBj**)R^Nb~cD@ImM$kA~gGFn`iYb-$-Eo`T)Fo%9d zB?l$IkJ}ugR$2

1R|9p^I$>3x2vkX7|T)(QzKWSXh`v_eV1YjJ~)qla4_)C#T_U zgXR0kqQVTiN11A1{N}=RI+?#HZL)A8N5W8H8vTGmc{OYa-TyzH4KcpwAjAJ$U&Pnp z^TUaM&wB6mUgphsyS+iL8{YVL51j2c45#}~g?IfuYIehSDzI&zf;2gdc(iHnUaQ@yM_KWPpa2kIt z+~I#xyb<#ByTqxscWsZ`uCt|WN7?+s2XLa^EyBsdb|EB8;9rN6_Yd-C@W=CwJi|T9 z-OioP^>HCiV*kW`kG+LGlRcIV!H&QylDp3PP& zS?ckeLwG`Iu(PS;)8ddqJDaBRWep-BTZ&4{GaHnYK>E!L(Z0;0>JE=Tv@=O658Nmd zvW-yf1oJ67iaRq+ZBcUU3@W*j8mefg5>yj66%5(-QhA+}5M@?zZ+dytlrTGuYDx4N zA+(cwsC-Ow$&f8hwH{iEvaGl{bsX!IG&_Y#vostpLOVK4Hz@iD6D%6C4N-ZX21LrZ z;_Bq_9H7Km`pKk{qe-v}Xb=tA2I-noyd{o6!NMV%91;ffo?L=TxuAG_1l?ea$dm#* ziOSr~D(9kL+p426D*v9A2-%`^>o7l8g`H?(h4!P0>gL5GQD{dZ)OcbL3E9F_^_v~4 zqC}_C%n+r?im^?H)9GZ(mUQx+)%!b1a-wH_DjkdBQ|z_acoQIMvax?*h+dr{kXZ_ zZMH$sSIC*=be%-A&xq|@A-ua~ov5)~><7+T)#ChOQB2|8O?kxjh>=ZPsv5CL`w6p% zi(1rJCSJ4>NpJ9g>Ec~eLRHa(<$|5!Mr_%>!iw0T6g8F#Q;e-33Rz3os38gb`mi;WeeMm+fanKeC?>JE-YAh7qaRe1=K*Lq` zlS?gvR@sljO=DRn#fB^p-f@yj)YwP3Q8@c1&oaC02e*pEwtO$DkW@W9OVrp~Y>TK8 zHTDwQ;*#tK56getDiYiBoiJb6HdpEHAghr*g=f8#Zq(QV+5ZnOd#Wt*0(}1;6IpJZ z_;-0Y72Y#EF7!$0R>%N&P^c{w2)-P=7%~911}o`CqK~s>FoiK$Fmg=sf^EpMGG|$Rne1< zZ)lP#7?lNs);LQ6`9!d?qqAVXst3rvZx~jW1&dV!!kB%YN5M{oP;{O-&Igm?+B7-~ z7AnMR+i_XRiCM5m%>fLCYgjx0#lCVAvtWrrIu3gfQIDU}qvThu*<;S+FND8#b|R*=TJR%tqtDa*B=9V2H7isw`NC5M57lAjQO^ zvta(22x92vP-+lnH-=5if}sZ|M@d1B49lxBKG@frgyfp&BHQHES+MYo1{RWU)t1l6 zf-wgr+jAVS!X1o)H_T}FW@f>jgPa4lS%PX$&Voq?naA-MHFdYP#M+}#hoyKz7EC$F zJnmFuOkl!cOwBFP?(XiS)A*kS!wqBN)hJU#7R)usc#Ss*W4&!{9UTb=QGFInGss!N zp+$L`vS5ZmY4I{(Cr#2j%(-Nv`i)sI#2^QdZRk_onOQK!pi!oq5VMn+fu`=>){ba% zSC4GJo0bI=47v|WYE$0XSunjICxc9?AI3U0m}z476>hp@i=B}Ly9;tM*j53`-joHS z3my@Ry@_r?Jn77Q&YWgcw^G#nk4Hk{d(9dAw+>@Dd2 z{;#EIJ?&XAyP)Kne2Lz^RU_zQd|QdFTC!kyK`G7tCk1J3%~>$MphUMBIQ}BpLy~x= zli=Ty2J?7FN4&M$VXbY-g3$$!^0v#+I;LmA*s?R!kxmlpcBZMjt-U*u>~K7Xle1uE zK@XX`Dq{o#i^v#{H+OaSb~+qiCTGF2A~N!-j1f#KB4bygtt}aCb72HCipa>TGR847 zV`sE8(VK`ny!<9-N6U=7Dq|caGqyLkwRA^29G7TvwpM23RT*QA%-9<3X>CiyTjfW5 za<*D#5DKqk_jIlyyY>9VuwzniYoNX+Z8F^L4xSfNsr9Ily z-05&!nVgL{7&%qO7?v5EdpkPYTHWsOkj%)dQpTy-An_4OC)bU@+q5Yj2UneVyTg@m zQZ_*RZ`>3qTYJ_|<`lB1UBs zM3Y_MV(IWYYRP&^)#fZnYl~$~GB3L<*h{|)=VT2sFaOt4w4P~MoxI~xg^hO9>3@2;AZZ+2ECZ$j}Kp>&gHWEJuz+*Sd~-kdEX^LlD1IXJIBl}XN{%Qtw7 z!{b8^rVv(EOWX=;l#H}}SS9YZpC%TeU6cUPs1 z9b1khjx2+z!Fj9Gse!(cfhFJuhWzfxn8(}O6A72qQf$i+Da z#+LQul9Mk%^qE)s{+PODgiINwlqu`9|n ze+whi!#~4$f47Fu46h3>3pa;7p_fB9gpLax4w3%h;6H=62TuyF3hor#F7QU+roeH5 z?m$PN%KwS~asQ?My@2;%FW_wNI@k-C==sj`tmjfs z&U1)o2T!&6t@(m^qxl;+Yj3GJ1tR>Pfb;c^FqRr~44?j?{*Zo^ev-aQ-wA^6zSf@6 zF4vBODF2<|WRWk`C)8`zlhlm5T%D=>sJx_Ht(>T=QubCFl?v#N;0u6)FVNO0@i(** zF?hF%Vj2-q6vZ@zrNBqMS*}|AK9I464^fm9jAQwjAvZ@axFkx8OBMVMkkZTtY0G|G zLSuf-2acA~G>+i|vt=#5W;BT?(QVbvYb$g3pjPAyCbaEnbWj`J$>vexC_a!CAv`N? z!)%$E*HD^-UUQyhLj6Zdwb-9kRLeL*=qbm;*M{3Ot5l7=rZTgE3#(;bWwbuTWNhX` z-JCkcCO*`S;e0)~MKj#%;`Nk9vDM7~OlZ+Yah#l5#s+bmmKWZHbSCLC(&9Z*O4nF7M~ib$pseR;>7;G9f!9|i@{^e4%!0aY4Ds`% zq+q1@d9sABi!#Bb3ZV`4{8gepD#CRf+BSjqcDXy9t$mT~uHF;?;6xDp#*EpFndZB)%GD?-v1hsTM~%3k5B$i602 z)kx0P4zr(32P0oOZfT8hTga@ux>C)*UqtT|L}m2w=?z5ONC@|UtM7_Z<>VLYujC(E z$teXlpqrl;Bn2bRU*r-#D@uh+6+#=z`HR4NY>4lf!};gYRn0hzA9z89uMl6O?Mhb4 zt11!x4&@nL%zMV6{2jUtW#bS&bB&84-vr#+@PBCrUqA`*?>gC+gx=Hm;vUS;sHHTG zgZTBRti{)in;P6!?Yy=U;D<}{A`zN-Ab*>cP&5wUhe%T5tHq7RJ)6rYKG(x0z%Kvj6X=|Di1MQskP*@sTx=T_fYdUx)7xpA*i6_YO}98==?X6u^^1 zYeRd58bW2k*MqkNPY-5-3xf@T{{)@@Pk@bqy#tf{-}|5TU*U?ZueXOI{|AvOFf;Q29MYL)O^~! z**w`ynmd}6#)rlO#<@n?*xeYT|3`lZpG)uuy`Znvm+GDRB;BWdslBE>pk1x~7CZ&w z+FsgBtpd&xdPcWiMqW>=KmtSCa$d z`e?Ar4#hLDJXb?>SEVioCUs=oPIa$ArcelkPB64O2ln(@KnFHu)^Vk(b6`xz@=Q;B zBh#Gus~n0QnUEa=26pI(dn4j5FC1M_(~DiLGC${g6uD?!*l5@*ty99YUx zANu>&LHsNOs&il-N3H2kZcK69RXMPSqt-xb0j@PQIWT}Dp0%lAIH-l^0n<0)Su@h# z$5lKg2R3iywy*{gF`;F|&@d}hl>>`6ssw>dT$uwaH|j#)U>}oK<-o{|lu_z@Ca%nZ zbsH(KPH@sOIk0S_YRPddkeP<-L~Rc2+jRiq<5c)-Q;`GfHX6}YDON*G4jHmR*o!P? zLky_Pfh8MV|6T~~8;GaD-=c+~)j6w`g#QP>$k*XY+p3#`}z)7Y|T$2NHGpZu7X=rs)r~)j^s0v6C%hW4# zU{xkku6H##upMI(soRw~Fcf3;AweAs!dN{8iBY&V*5<(ei$*)qpIS4L=8#c2F!Z8Z zI}sm%!QjWdItON5GpcA^8 zxFQFpM%2^w8C9n(n34n2Vh6Ntztw%|o+U8zY(nNmNLVs^c;m2IM)gMLz>3IoC4SooDl+@fNKduV;7y61GC^9fYH-6kQ{~>@?nw&oaxl%zzT>i zEDUNqk;2ElFmzN7tbO>k**6Fqy6{G|$t!bU)ATncy&OxV6S=e7cHC5 zkg+*1+o873+jH)sJ?1Z1yob=0`WzVPW&+$TX3$~;<8ok`n}#aHEv0U7KhS}ilm#nX zGca&YaxfrxW%m$O8lMHzTcblsu@&mGU~oh2;8{>Aa9g7$3$`|Ne^@7D+rWe@n9`b{ zsO^VGtACJIKQ;??Gc*Xiiekg#vS2Vnb0>pQ)iypo3+A$&0C#xv(VG5BYnq$|TUlEP zRmE1Dk_AHf%oRaRBJ2CB+dX~_1Hs(3$6TGidGswABk#7uFv z#)NDSsY>8MRoN=jvI#QOvQH?j?k-wgL$;eV%0*MLwI*ld*MJ@bkrl~u{+jQnv&h$jjRV=W8iqh^u}dZT7yho5fK@~CuUcmmmt?D>VC*{ zre>E*V*)zNb&yxwk0{E1@Uk1YU+FFTwNhKAO;LY_698_EoE+(mY#*r!e;R%=d`0+V zIM;92a7F0D&|RT(L&Krvp_b67;7`GS1RoFH82o+kgy3dnxpH){H@L4dS6LI>F*p_c z0=@`551s*MLtcQx0`mhi1LgjY{SUz@00sXVILU7Z|8#$~U-f;W-Q;`Rcd74W?f1TQ zz9qhP5f|XPFV>3*!ajF5^;sHo$?#&PKidv;KyDulkmHKV%CyNlmNE)K;}x`Br&Zxm~$j znWfZ1w83VGH`qxZ4W0#WYL6-ZP@YpBfT)6tl~W+cAU;fkUjTTT%5QWC;V=@lQg2XU z%btAEz++neN=4&#`Zy*lzq|YuZDE-%D^~nixsRY&@n*%3_)H7rv0+=Kt&`)fDA%Wy zDSV59_yCFoeDSVI?hcNs%lbAa*&!28yP%ef0~{CelncrZg?Mtj-UaQ)%)2FriQ6}$ ze!>lA+>g7#jQlZtcw!=%wxTY$Ha{vujPwy1VuTNqzQ8tHGQ9%P!ln&t>_aXnqkT{a zSt?;xR~m(28b0X*zqbboB=oDw*m(eMdjGow63&|eXASMDIvC%H{A~hf9Ci^Q%Gb_1 z_%|kGBlc2*J`Z2t^zg#?DsblC1hd{A{jf}A5;3z*wIZ0Y>!#{;f7Ys>wv zIOD(1x-HSYHy5@v23h~^l_AD@j|?%wyYXQ((8uKPa_;!hyLd4px|0_(k~{FJJ(y(K zx)I>wscv_IjPN!m$Y^gRgMr#cX!k|ON3tH@;)*l!n_Y3ne-oKF82^G~FGv3uH<+>C z=mslT!hnB%npM}*yjj|k)Y*s()}J`rC5 z_IzAGMQn7>ry@3%f3U`KAeoLYhlt6{iNPZ8Vh@Pb{vn45Ec z=L8w&X-<&Qo=RSNcq|ERZ!a5+Q(RC+{96~4G5-c17fh}aV?3FYGNzL_DPuTMUgv6G z=)1@=wNc$5tbMf?v@ZmK8d4jrr>`G^mH3sz34)xp=XgQRT6COsc_as5SO#yE5XM!M z5XM#z0<|SaU-TeGjV(e%xTF#_juj%pOLzm%R$AOD5+CShAtGG%;1w6AzZMs@*RQFc)ylOmz;zu~mMSJjV{Bg2n{Z&UxStPNiZSpbg>_lEZg zN5eI6BEZ|B$3i!T&I=t8Iv~^$8Xq!(9|vEBy?{G{R|d~kc7YQBR|e-sE{0tIPvBqb z{ef2k_XREp9340~uw!7X{|EoO;3aUI{}TVn{*C^)e{VPwu-5lIY) zT76@DW!`ta&wB6jUg15}yV=_faRbx60nfiYFL-YAT;w_4llH9eZ0{NG(aiVFC(Jv{ zDW_@K2 z#G>;4>_99w?@wefaHlfdV%Gbk3{b8gWPnnA&jZ|I*83k4u)!^j(3VNX71D55H1fk; z{t8FOchmc=4A7Q+BLlQ$U!zk`tSiU&@heGAiN2KNl;;ah&Uf&0NltnGCCMqzXI4WK zYsqI?tYvpt(xwKzpIQYNK;)lD1zK9I0v}5SXw4r<1)AHf0v}2RXp=r*^3{FG{vK;- z;eB6{(+b{`!wYtU4YV0P#Sy~3tRz9Oj-URYEzPTZ1VXVQFu3Hd0UcGnztl5 z<$2Q{g?WAHL_cg~S)=fVU4Q~)oL`p;*yH?~RDjm}s#L%p=U1cxv`K%*(-9g7+Nqaq z2_^lTEup1e!ftYCi^hFB$opa`15yb%_ZX2TBr=1Y3?kOik>wFSBMZ4~UdY^E?DCOfW80CBnUpmM3r}t4wPPrbD zqI}plqn**V2w-Qfvn@xCq+~NjO z&YRspN_!LWz_)4nSIJ*oFiLu(3r0C_kTCwWa=i;iIj?iUDCeK8_pP|s<-JxEQ>JS~ zF(tVgKjYFCm-i|`N-3@sq?F+bTgrFpazRQNE)%4b;ZhQ^P-;WV`==5(W&L9bobq2n zoS1EX=TmiYNex=ZMI|+8Ef?Z<1h*+px34}x=Y8=@Qvj6rt;@kSn9yQLJD<2Eb89I2 zF@Zigj2xad_&O+TWUZlPglNa=J>sCu@yVYaN~@zvUPX!Fw-i^Uau1sB`Tpz>(I%n} z(pTLD)^9p?=Ucz&Nd19~6x)EJ1<#WK%J6#`pj79Q%Tjtz%6m>p4N87?Nex=dS>$3# zTT$LKMKR?&Lljez)5$#M+=24`&Vf*>(;Nt8JC)oCjLqJ7@}A;^DBo|L5GDK#I-gM3 zZ}OhZM3mqpCZYvTl-Bq9E|Ngqz%TfqVb4m)**D#@o%x0NviX2{g?W;>!8{z! z?~9o=#!tpSjVFzpActQOeDqfuyBO1r?es77mm~jxvjqPVIUi0F7>q29v_?ipG}u>o zCVXf3kKvQxOo7GW&hSJyRp6`8E1?HMSHZ~w8$*XdbU|xqZ19KRyTPY|*9XrF7K1~< z72r=WG3X6^5_l?bec+71QGqy|JUAy%>Hp6Evi}~~M>x*E8qOPNgVWS&hh@*o7Cs()AcZ97JN**SUW;n2H*Lb`nr0Pda{~OJJm^Q zK=}%?2;8Qes~n{qqU@~H|72rO_nINWN55W@D%a3OzuF;$x1W&l>5zlB_Z&DtjDUhoragk-MgllLkP02%C zg&P_1i{|to)WS`VxJ7e%5PadLN4%mrJ&46{(<4sNoZhbPdgN}i^~UERSOd9?@}1>7 zTAzoY4dgP)E5O~uhN3nP;Ty;+c2j(yAJz-%I(iXn@({Z*8jy_y7@|OR9-=pD0a%Zc zuc;|2AD4&t4fN!&I}qW66tB%gAP1^ycthVRgbYxmCJ(_JsH))vZbLr>CgdTI1Np6H zHbD&Z0OX_T>rdgbYpKepJVbPiLn^<7@vy*%U&45}xQ}1Lc(}o+$^Bo1@r=qtPzHJ` z2T%+gdf4}(4{U87M`Qp5VQ>i9lOlC_h{(VW{}5``1B)4i?m^M&JOpK+X=ebX##48v z@|rx3%Yayl5ggSrp8})v5SM|2EO1C1DzqELM&%(i1GNuF#UW@Og=+H?63{(W7OtD4sKZCLnrPQZVVb90VeuKpkN{!SL!F zgdw0fL&!wa%f%m7JO%6f?a1~%08Q=mj zt8)+)fO+5(mJ7tK$UztY?iV-QRXOneN91sFJlEZ-9C-T^aW~h*2|4iXC;8Vi!)Z9^ z6(T@;hLaE{W;bh84*dF22LZ{f76!ID2cG<>VF2}UJ*m!tzdn}7H$$MCO;w%)|NIEj zXR?|cxZ|Tjq&=gJ&7-lHowG{W67qjK=&hnhK*P7S9ZWP?>P zCI=sV=nfo8ZGfDJ;>8$~gKs_?gw&pCZg@uJ;DZm7rZN!mFwFI_G6!FKxE1^*sm#Gg z9+s}=-rChU__{;mF|<^MZN*{Lk@&&VT? z0pQfghR8vYT_RH={_wxx6u>*e7lsSrwc#b<*6`@ik6{0QFmz?;x1o{HfuWs4lS5vx z|33|p0A~e{3?3fbEjT?G2z(lNCUA4$yg)XvCa^Tn85j$v1pLGQr2l6Bg^(X`*nfzB zp1;u_@qOld%6F~rkG_I$m2Xeq3}4XusrOay{b2P!#e1Z8m3Lonmv@5K%|XpyyD}BG0cpvpsbX1@N``Hdy~}F)zmZ5^=EoH$m2bpN)@BIFhPi+-_w3ittZ>+@k>piKLl_Gj&U?HI@|xR2JXRl$h^ ze^+l;f3F^;u2Gk(yQuYG|9?x_2_gh8R*q9r%1XRDK%9iQ-0(Omv1*jZ9XDe;QrI2F*pX}`&Lhv)Zm-rcSnjJe5ui8|9Dm^ciPD^nHzWHvjwWH;k z<=f2-w)V9Eo<|($2swoAEsQgNYTvF-kP**yf{b<->pIbF_}2CvRJgN*Fv4F+2xHrc zI4qUQt*_j&ojy@f5;h*5Gfm$ITr)us?@p0?;k&_+BI&;Fk>MmYt3zXU+@>CD+78>) zV-4M&jtQ%m^}NdovKl&_AfxRl*XvPtPznK9CRF@fxlojpzg96*lxSb+yNVKU&)F2# zM^hdMqxqTp3E?-daX-P)@GI^oxEanQeuq}rcg6b^9|(f-2g@H41dwy&bwQw3snx{6 zk#Nk0kn@TUD?XBCdsgsk{X;-+k`l`DR#Tp)?cU#*xSiL@{Exsphop>8C@ zOt|1a`-%SzH`=TGZ@AOGjmduI;O(n(L0L6pTu@fm zX!0_$m>1&&K^*lcH<)qPy1|UR#-~@pTVPEl3=Xa+o(Wr&VBU}SL#`Qq+OKxSSw&T@ zIIF3WJja-SZaNufcUFajFwSxbVQkxx8(46Tf}0^i9&<|!(|&3Yq+w2(I!1vw#3{2n zgPbyTiUQ>Tr_7q+CpW&+<_0Bv4vbaebzqFsLvA|BT@wgR5nybF2rw$0jGyec30#_l zFfvs_7@I;~w=NExKv?DkZBFmcPSB?H{$!1X!;=%d=znxzjPwTw#yGzhFk#;D{>Ona z&hH!;i&&MOBfzmg%w_@xXn!Y_D8?Dyv~#0dW- zLyYh<+WLg#@(E4+lon%{^~iZYk&ChC&ik=kj5XvVxfpu_y&uZOSR+5+Al?ZS+W5W< zvC7_)Ax8KveF#KvP~iKggfO~)NC;zlhgBrFg#z8%GQ{}ak|9R;CL1Q|21@)xf$Ep)W#jh8~4DfIo!tq5jY^*a?^!stx&rKL-C5 zd?)x^@c!Tpa8}?c!DE60!2^SP1Y3jSf@a{e!0V7N@Q%Q>kTdY~z}CQqKyP4qV7EYf zV0vIoAPBnzU-{qnzv_R&f0zGS{{@gOpx?i*zsc|Qz2ke{ca!gY-&U~guY?l?8hjq_ zN8YC(Lf|T}?jPaZ-@B`KrguBf=bpcN?)O~dIo)%d=P1uQPttRMXCe47v?*&nQ$3X) z9rg@fGyiH{ZJurB&2{D>=3Zu-S!XK7d&a}Y<;L;GW@8P+3v?QF`cDuoaEE>_WC>WV zx9Sn?EA3_NF6~c{YjC4>xVE>}s*MK^g7@JZf?L%;LZrYZHLmWZ&Veig-z#q`k0^gu z&QOlTy9D$pUu_pKq%Q-2SVA_V7E=uu-!-cX#~EnPm)un)smd@titY_ zaB5fzIaK3^!q>~mX!#^3qh))rn~{|eBe^6sG(tc5eF-N-nYx`2C5&U|HcCjFbGRU- zG=~XN%5Z3{7K871l%u1GKS^>IPR<|TxO25Ohw8Ia8-K-V^T}g&qD@c2fnJH^zNypz zZR8`#Cq$cj5KeQN8iajkIEgIYzpOts+|(28YKyif=z&qjR_yFuTFEH7v2@2F zt5-)HS?kcYmD1_P!YL^olES_tV1io$$GFfg9#~3&cJzQ!3becXV}D%M6I=zQU+D%? z>J@GvrCp9)#^`B08S=C@V{b%TSQQn2E4N~QNWkIaWKk+TyjplM`1W&$X?vEr!?Z>F zlINC?CzD|DqrF_}Kq%!B2SV8vlV=aJQJzJdj4~|bWVGx8Tb8!lun#ArW%uS}wCrAF z&VYIo!-HUsrFHKq$tlMklAQAF9@gq%a|O@D!p79(q8*g*R*tg@h zlxS;q*p?D)+xAx19UH~IE(b!1I~@pR>mW~_wLe_BQ21FfQ~0UxD*RM8kw*%Zt@xS! zUH%&TTl z{gC@n{xJ7LdxQI-)>tI=JlakLbX?o0fDUIXzMtf+U0+NT)8Z|nn36Q(36kH@^+lP8 z7M{aIwBT&~0CO9;z9w5ji_NknwA4)eqO|vKD;J2rD`tql^||72bt4`#YtQy4?nn8n z+z;(b?uR-9zkP&#S|2Z?t!?D=XnUvQ+1t52>zgJ6lx3<6P^u|-Zk2XreUk+#C20_( zlwp!Joc3m{Z=x-sB`4StTB@FKiF>fV@q(0=9w$gC!&p2s^INa@#p1T}>Z@}?lzfa6 zqBV@hQ?~1dt8bJGMk#AuFv?lu(JIkC>ukKbbKhn4Rl9+dy~+)w^p*H|k~dd<6{46@ zm5X9ZvK_wVggsSX1V3y1hN>^j)aV9+FT~VnB|+r>pDFvUEOI5pv=2rWN7^D|B1-uE z@S~9Z@Az;(oB-Gnu7hv>4?<6d{v0|!G!$A9`W2i6;0b;beAcr3CxZI~qrp(%tH9p_ zx53x_ae-7|VPIB3hp+h?{U`c+{5yk({%7Eyf3`2{>-R19b^7YOKX_kBy=O1aSo1UZT0hHNYwlnM;2Zru;|%yd|CLdpzpLK~_WLBn z@O!j>!WjU_c7M3G6MU1Gfmi>n>gno$y1P0-`9^sGa{8U3tWkDT#y~gOzwrfdnnMn0 z1Muk`w@yifmCIAqeP&t#eCKvR3UG*GCW%fzC&?4(YV1j>*-!vyx|qABVrxwRVjg_+ z=okokimfv#4_)<-u={c$wN7ij9uVgYzCr zgKU>a^fo*p5B__|A-x}L@Hi_e<$r|okIjQ8A7bED6dN9w2WLKXB^iuru<=QG@aIFl zB!fDPa<0-k9;S7S&x2bZx|KyG#a5`#gL5Am23`TxV{6RHgO}fY(BMM@_;3#N&945P z);KEz@1&#aaf0}3l4&Ax;V5$)Sa3KufZ-CUh=@O_BQ6hkc#Yv%A37pOFWbN0gn~!Ow03 zP8r-FU6t8=U@K3{gJUF`&K%6vIM|vq^581zO3Us9P8l31U6t9bz$t@MrK>W#7dU0` zv~*QwHv^{(9+~64?Yx3ZiiM$-ig;rmsSF0uuo|zo*G6TRL69HsLM74o&dGN-> zb5knblSC&v;OqZ4RuH^0Q9&|is5VfQ2e(Y*8;VaCu*DU5@XW;CycyM?B)!ukcto~}VXYR1{o@hVOR>6qjI7zHi#$S;6djdsK|a<{9dgV@P!EM_ z^UWkI0XfPeBtenU`KVPL_LWCiH^oNf=U9ZuT^>Pk3RUN4TV2M%kB3uvZN7Sw}90+Qe_DRM&-wm0mDxAh-@*1YV%{sMMQq~2w6mtvH3c(+_zor5xkJXqw`~| zVZ&$3A#4G~#^*5i!FZj>ky%4#-Ik*gV1AKvxz}kN;So)6& zBm#Q{qJdifPyRRk_d(SDN&fZz!~DBJ6hPSbIoS4Z_MPiH#+UHz?rX$R08e|b_nrwc z0CDdw-g?hZp10uyfGZ&H-x|-}o)*s-k7|BsK5O0vp8qGBBWB!OXm*)njPH$CjYo_- zjq8j*8fSwo{|KYsIK-G|G#U~8-}+nnqxwzyMf%D5u)e>(qh6)GuRW}^LFT_BwS%TBvf>c#42b)h;-*&j{~d|kOiIfrc-*ndsXcLFcGbZSFSCN+{yB<=K&*dnq+ z)uCl&6ZM@%75gL@tg~a)VZauoB$gX4^9^XPI<_=}6*6%3wlyGh;G*gJV#ue-HPmhe zHS3@yUDP;{1OseKF>0LP=(f#{t?nkc0cjKsr&yt@|Cjl04KLDLv4Jta6q6l+TD$rmG6TpE^c^GFX@As%`dYkie7xf)G`d>Gk7s$ zIGqcFibK}a6djxLKxMl62jO{A%O-swzIOVauN5l{Pl`i+)wRmeIEByouzIL z=#?;m3=LJhSy@K^1{d?!>EGa9{x$s@T+3$>Z}n6<*#sAKO~!b^^pYDmHMD8J)VzLi zGap9gw{9@&)^FTk*0+OaYrF&Zl!G&F*hJ%J2pf% zGm@=Vh}Gb5I-cQJih`Wc6a+cr$#e1q$CDG}j3+C|8P68-1cClH_j0 zV_k8^`)gO6@gGB;DB@wYYye!pE%yf)ImnwFgPVoJ81GRIjBy@GrYNgiUr%z^P0Qea zMtp?30%PCouE46;M0^iP6^l}~lNq#nqYN?H4Kl`A#tTNdJ5c+&zNgdYn14`iQB58l4Oo@D_Q54at(yW?N>sBHE&r74c5SYt%+sxcNPS~MZB0%E#$?FWC0V~UV}ig4=-jUd-GyOvX?bY$?k(dw5JR)vOQ#o5$wyd3o%#)A^@sH;ud2M3`&scu#k>5^ z6Dm&TewN=={s8w=zfiw~`w6-2U*UeLFRQQeKZ9xovi~pA2g)LEM(%*`{!C<_$aMJL ze=~d&|BINCV*SO!f(8w7HV^?E5KEv-;_+B4?+%qW1Z4x3TnJh0@3WH+9Rhf@8UR;32vstygV z(x%f5m8Jq1>#%K0RPGyu3?dMTD(g=#fWdAj*kZ{z^kvni0@&*u)B_{^a85&fII&vR zpH=|V9X4+9)C0+kizXQG9Gb|pU*?=y0Mp$(xw+jVef>SKdX=>s3ShWHJCj1^WUWaB zu-G9xB-XMHdX|+Y6u?r4EavGH1gzsLAgfF%fQb${36R}|CVGmftk+Ti>)cYT2ZxMe zcXf2mD6%=h%XW}t6Oao{D}a>_4G{!4!hjDzY-qfH6Py{Cku_%*z(ltf(uB{8WICNr z!HL%y7#-RkSab@v%H8d8$RELbb>qhz#YZLJylq>~`t%0V?y7dLH z-XRM<;AC86jfn*?;~@+0P&zpPOILKbsH`)&02V#ureWzM$k(#0HlqNBJ@lj?H}n+j z)(mmomX#X|VC+M^;FU}CVtfHCfXGo{Fg2X)PNmk$WYY_ zP=HNM?3mIAmnAjmJ}To1ki`YrFb9a1T;bRPq;eq+9_h6sLoz(E0Lfg4BT9O0au`mt zO*o#V@de1~f;t5QHH;c9lZ-DwW*18#1NpSjm#}c>j442pmx+YIQM$eWxn3+67Wmd# z<>a4GfUGar3k98t;9A4j0%U-}UMN^aZoufm01u5jshDTUq0^d#xYtr}ODN9tQW(w%{a(TVSB z<8Hm0S(r?Rb|?E^JRY zdXsT9C1zHGLC2{!zR*QFL)GNYOe=JfxjwlO>@Q~>)XdLzO(tQ}4bWrjEPJMM$V0vI~c{MnOC z4uQjLdJrbt5~JH#0K+HNg%=$@tDD`Ya-SLsUZvb)MHJ00wwBCO zUjWM}(a5aEIT>V)sRgi)A}_4&zEy~(pLZl#9GpPWU zQ#6`zmU-WxHKejqV*!k)XoO(HVFWD-uvcCaIyjJ?7b%KD0}JEH*BU;H8A&W##kD>oIuAdDK~eh@ot$n&frU?D~gDXFj6 zx-$x3F-8q3p^F+~D^Dwc^_Z-Dd*O?~@@R%9gf`(h+JuHeEtxrFTF_K%t;vNNa={#0 zs9IZXMxmOtaR|RcI?sECj99DQs3-F6`EGW!v}16#~`*nAc%m z?&$k}5B-cX_%6Q(zRO2E%RJM}Z@}yRT(j5wm04$eV?1qKWNb7R!58_L`u+MDk=G+P zM^1Jhm+;uo&!N{sw}sAx7=hhGqk^9Y9}8X)JPvjXT7nw* z0-O~%EYK1#{V)2j^dIYA=AY$P!1jNcZ=-LqZ<_ae@87)Fd5;5||4!b~P}gVR;eV!{ zf&6@9wNJHswKKIf+I%gnzNy}*7Sw~)7)08?r`)J)QI;ta%l_%|!OuipMOgkG#?Mu$ z^eTv%+l+6+ruFf3A9AeDG@;iQT(8uib}_wLbBeGw-iI%XXLpob5?<79C1w?2#q6Bv z(L2aZeNGV;%+3m|>D#SDvy~WNHys(%9=7#YCWYEPTtu_jF>lG<4I7u%yQO5wuc!q;ZU@avL4wnMGJs z3(cboUD7;cQfJzYMOa!3lXV7mPWs~gO)wWZm|>YMFvEh9IBlToC~3DAVbQ&uA6fSs zMJhI_2&-?r^+7x8!abu1i*Mnz!QV&{zI| zu-B7C_Xee#QiRpB@ZG`dDz@I#BCMT-DU<1;wVSQjRD|WT@PQ(}@vH{eaUG3CSVs$u zmGu={cSaGG(ZVZ1)I|-km8TbBDUH9;$U78Xp~SXqf1}v}LX(TImc~QxqN>)Gm3v1y`Cu%d^=|xyy3tyAGChC+;+Ej!kwlKQlTi&_^`s#_RcQ5QADR&FoC^7{a|tLbguRAND4wdfUk!?hIs#Jcg{3o3S@SkY&e zE&CtThT3SCnpO0=tyirTF8zG5WB;ZXJP*4Sc+gPP$fq9I_ORsu0_Wq7ec;JOmE6QsYgK=$+o?9QsF0f&)Y$$Z zeU9X|O)Hj>n|M8}h`|s7+ifMb@Fo|IA=NWYv^ggePAD8rrZ1-ER5^;MjHJ8cgRXnt z^@StJXYFt*)n8)A?Fh2thBV|FCKfi6>3tjhnO4|DdX98@tZh@*-O%xcjpX{l*5z8a zKGzjCSWfKdV@z($fo%V9FQU)O(mS?|g(2%{LDMT( z$OeWW#dklB`IXrx7gF3*Z0pKu^@Txl1JGH-v8#&m|J|f)EsH!B`E%s-$Wf7GWMO1Z zq&)m(`0wF+!82~+@JwvlX+l9)4-v&Pg z@BdffEPw}sw*;>Wo*q0pxC-I`b`H)Aj)7Q!e+S+SJQTPFvi= zd2^8QFXc^mS9ynkKZsCSxoytmpL^lF|jJnupdz$ZQTd9L?di6mAfCs`BeZ9U$KS*Do@1)PxC+f9&NY}LQ;55NEv}d)yYS(J#Xn8HA9iT1IcGq@< zvjxX!KJ`n8CwNG`3UULkR}TkYg;up*^(&t%f5RISIOPrVoyMsdGV7PaV`L=^+k*2W zF%4K0!TkWHXp&FtFq{L3gXu~L#}^!mQi|An`fTUF@_`b7)`D_N*(J!0RC&LPP-{jR zKal1;K9$Qog4A-L@!c&*ffa48`0he!JuHUA+Ii^Yam$6%cc&AgTz5DjN_e|n4R`jr z?>0e7X>Jvyl;IYXDhD-*Hsoe1pyh6&0$SuRKCK!Tsknyz1=~hiwSs8cNiCMigp%GU zNGbCTWRwN-O67enLMe&~C0Kh$GLlhebM2K}r29r~B{ zANrSSG2rXwX~PMYHVv)D(ZH4a3O_5N!cTn<;iq~u&a{NfR_g5U^0(RF+IQ@4H9AdO zswPH;=MMJl-q+v10zMlClJl%xRoHZ*LwenR(W8U>=l`Nd2lHB-A7&(-Nu`(Jq#s;e z*SKJm|7sVEa$bc~xnRyEkbH?Youp{9#gyp^QJa!nj%N(4y%5e48c9+=ZQo@Mgi>AV zKq%XvSS1S}>pN}IA4M_cxkMCGl8bSIJ=`P+FkmbfNpebap(Lj~7vR|s^U#Kz&qTEJ zADD<1JP#+h0%JBU_IoOzh0dh{TI3uopffF`{~Ij{^jpxAm!KMCVXoupfD`IB;jBsA z$*h%slqD5eS)!jKOVnp@x+?n!*UC%8-xXWL-}>3&Z}n;X%;0d=%BAe@iaG3WeRuY^ zdKBqyrU}ko8i2>z^m(;P=x(O+0{Vw${ZVnW^+)+z)*t%m)*srxtv}Sq=^s{wD2TFh z38@hMT``;etT^{*M)O80t%I4@+T-LYhocvWQw zX;EV@S(N)nX>G2Nc)QkXbA?9GWsEh>pW$hh>m|dLPv!1W43F|v+d{Pqr)UdZ>!pK- z%+tp4_>6X!+NqXtoO~b9HlPvyq)}V$S_waD*bcsZspjySN*7KP=WI^Z4kZBPKAbt& zSz<1p1z4b+?`$fd6X#h}Kqt;KE44=G41DC-@pZm4I2kQ?IwzxLe}~^6a#)@3G*L_$ zP8G$J~DP@`&-?NXOW?y$};PZ^4G0Dw6Co{)LD2owWH=tFTUMe zL*{(Hb-`$pf8&DDcAtz#5;*Bg>Le=IlZzB1Iv4;y6>gL-h$tl|g zNltmzhQ_oOnATW&f%%yKwjY?5!yR6C$wGg`{3Kbhk};{PYMpg_kL@z z9y0xZ6nGp?0Q>`-0N4{)4Eg=*{6F~Lg2?|%{agJR|ACMVaDw0Pz3Y3%cZ=^l-_a2H zzZ*pU`@LVo`F{_=cm8SKVebLn?Y;HhGC2M3S)@Z!9t<8>~j(OlPqB$69ZAnI(TTxaJG{46@W2^LO5)kv$jn{WT!enn( zyrreH+a@Aq##r?@;Ft%_8zLopk{vxgUCmO-QM9BC$2@S>kX5pyy}b>lB>E~Nb=KG= zB{=4(w)&RrYVGKWbw};KRat%GfS9L}*3;46+tt(2E7em$>yhD@r<~T)-rU^Nndr3Z z*^bu3fS4yj>uK%iY)^E{BN3+c$Z*UPq9tRk(dLfkPN{`KT2h8%o&YV`(wm64cCj0P zjG>>Fl;N1iXZ5Wo+1A?Jo@9OVT7Bbyn8#z))6)}6KogTv3r(vY2ORT&0}Z~)J?*i0 zYilwtmDFiT8IE~0+QPQ>?pSYon?3p}Z6O0<9);G^*3!|@*3~1`Q%38N;h6a|t*5m! z-qM;xJ41N%%%5mI42YRO(t28AEuCF(ihyv}nm^EbWH@GiPwR?hLv53Pp* zG4nf1JCW#YZi^?7GZ1Ojzb$PJh?(D7tx9zFHaEvQq)|4%v0CMTW9HYiWLLbiBi1V2 zdnTMKglCw949CnbY01u>?zY}8c_iR$AyQI?W9H{}$yjT1yji+dCYm6YI^38^sf z-IR!R#FD*ja!EL1h?JD!nE44U+0xtF-P$ZYohF0O6iI(1Iw5PS%z7ikO zE5U%6`GH+eS4VR!-XYx|aKMmNj|9ie_pFlLy}dmx@o1}5@?EQ>1CE*hv|8AmY;A6B z>FTvx_z$av91t_#q1rv|9kEzz!q$G9YBL~azC~Nr)!PZ(m;3W3ZIuki%r|H~T`(WU z+G)1XnE5)bhXFD3HChkM_Fb)=^7VO@)+56)^A%dMJsRyyc1!OO^Y65z49CouY00)^ zcN7j6kw*M)w4@Bj%$I22VldStI_%lge3ABz0WtFhOFN!y?(OMlXHWj~mNo~(%;&6D z#o=8Q>*|%Ct7olNIpCQ23@sV&jYV5KrCHj1nwFH|nE8}lvZFcK6_eio=96|w367ah z(7tsglD$1$>~4CT_Kg8C^D$aaS9f!)GZvLb{83tu49CnzXvxm@_U6uRc~l;zC1p5f zK15sC8SRdBcG{~2^Fi7|2E@$2(t0|YTicV6*HWC{AE5QfaLl})mTZSa|D7%J9DE-w zDZ?@IUb|#>YfnpCLaOr~yQBoi%)4pd+Pa(L-O-r+EZ;@@#(tw6`YZRjYZuT~dN$=5@4WH>@ODU{xaC zAAhDLWjJPDOZyh@>S}B2VPkj=?HdDP=GC;GuFhyjYlr+qUPbGX;h1?Pt*5IwnQVtO zAze9KLF-{a%)Fe|(*ZA*gkui8jMgK=G4oPdvK`8`waQP*pJ+)Lj+uX?C1c5s_Rg66 zq+CKv%5coQnD#B!6KigURUYlzMYL}Wh?y7K^>nvFIIcX~TwvED!7=lETCyeD+1AqA zE?wn6(2_D7GtaY1cEUw&k2lNrOG~!3L=#E)m=^D>b7)B!j+tj$qte;h z(+Sstz5ma$Muh`n=9yGG)(qcWE$C=7va&pbYBL~ao^EM(^u&{}RAbz~v$Q!NW}asC zp`#}Xvu9LZO`dA?!2!q2Q;`4vQoX+{@+y4&=ivl^`H?B%AHr{k{~Ep|d`$RY$N(@Y ztc2bQ-5xqEv<~w8O$!;p7lW68egDAVEb!}pA#hpX=)lszEdSU3hy3UI2OtB$7_j9( z2|4}xeB1lHV7outyT-e>w+W*Ezk^(U_joS#oah4#)zKHxD*r zrr&tWxWzct=reXPs`U5uhxP09bHD=MukWXK>Gis){Y!fZ;sLJIPK9g$hiZFjbF^CZ zJBSN-OuY`iVLipOjP&oC6wwkEzF5>}@B zhK5<8s;%G$hAKfI6IX5ppD)w}2wG**s;%JNg_P0OJQG)L1)naYygI>2$7}^hE>!L6 z_#hlr)*VlCov7Uk{#$hbf>XoL>UCVPiml+Xg+_E$iq%lF6+E+0pL?+ti2-#*aKu8_ zzc-ysqRW#^w=lH22>w@SM35(17n9c%!RZR;yzcMY*q3HNWf5GhP*0LVPm0*R%4_z3 zjWwA@UQet@RT12)(3l|8Jrmay!J`UQk-)}s22>WofeKXtrUhOKUQLR!@A?^6)L_dGa6v1~14NrV1$vw53_Dgf@-!?^QhvX z*3D@h=cU=M!4<_r$Sg6^r`gV@HN}I42G~)PHN}JIgMm``Xf{w=Jdo5)+}hI&8C^Vp zBvU{!gxFC=vm^HEiu;rPEZA$_{6)*=&mP`5%+OKAm88}E@xfIikm-OyHN_RA9mxEa zN;9CoxEy)-;avL=UP()4m_}7`Kk~q!%qUD;QCvpGVSPrsn%?= zVIvG4Q(THBW)yG=FQPQsTVUY0;u7=(!V3*f4o#$*td`o`vxPx#F7(=Gl>dvsj}V&QtKua zXOPHQPNk_uQW{@uBu(ra>`l4#VN7v4c`u>7ARDF9wZ&=ZP3<%LnmbX-0d`TR7N?T+ z33^p+E9PumaS9p3p5#CZLe7SyDy9}E6CyYtb_9-zgBNFF1d@`$ISb;5R23V@SRxl; z){w^HB(mUi%T+E>OfOC(;WxZ4bvhDjn^>Gcq8-r5KCrFfHgtY9T6VEATo(B#@+`#l zp9K*BheqZ_CPyOSZ^CbZ{r|e~`EU;4Nchn39^q)XI`p5=8=;3o*M-gr9Ubb1IR98^ zLMRmcCiq71;o#N5Q-d3V2Z7grL$E4n1ilHp2m1r}2d)d8A2=y+1mp@_8Q3+@6c`oI z{Ga+?_CMgi)_=A?=O6SR0J{dW)X{#Q?`_{h%8!s0AP>6-3w<$Pwf8&k%i#Tgo^lIh z2UzD_sSJDPdFOb?dOgbfo==r0J)+U>B{aJqK1whFxax7Q|XHJVrbkNUCtiux#=G!+hnR z$`f$j;6;|F08T_HPHm7IeJ`9a9K^)gKQoj}%pT5cteRFe11Hdi3=;$y&OlDd2{?nK zEyLdZ?N!GSDdn)FTM08CR*jLptA?udDXPlnu7HN@jWZ03?IXbjdsU@Mv>kd@?cl+A z$cI)BmET>V(!aGA^wIQh$WOk6G+;HK0Xlpr6Ixy@o>}2Tn9%ZH0pY>h>EodNtH=>D zl?|2a1VM#Tu~-o3qx4=upe|O=3+c5M2P9Q*V85W*3i|~OAH{w_(-)JmhSX}d*EzK4 zAWq5}e;^q)tP8eim~OzCbXNEPUd*)j=f$kED>-T=T@lgip!wv)k;+MxL;UZGvWi9g zZwOII^1szZ>hFVkH7O6hpJe}l&X?IgpzpQz59m5c(+YJ$B0d_T0o{RQwvCtyiCK5{ zN%ICuIyvaL)B1s4Nb-I@z!;7UYa&ksxP03vn`6-~k8v zwVWqDbZLPMF}8hVh!K)hvlbz1*Iw2@;CdL*p1hcm?16Ji14*KE;fJuHuiEO=NR zuGe=0_c%+pDVgYrgL#8m)}qGqb#T6mD;_nT6U(-?#1g%UcIq)OTgi!Kd0feoyH?K5 zgv>R{(^`b~jbG+Ld!N?AjfPirBZj$I<>y~YbAFS zky2rdsnSEKVd`yRs_ZFiW~$BYHfxlrvZrs3C4?lA?7^MQgp9O_30d)3R0ykf*v5vo zR!*!;IfUguS1fc0^%}j$A%x?j&czA7?K8mOg*#D{z)3DYixPPC)`${#|1RVts9_T- z2SrKwPZbM9iC(QIM2WgUJqKs~ChdX7OyGV(OMc>hLNltlpU{Q{(p)myGlDN}e&=;$0<(gYbE)?$J&mc6{UCl2mVt*s!$)^*QR%U;d_G0zmL zo#+G`eUI($;+agf84&X{Sk`rLV{UEf?UZ~AJd-Tzx&w}RCeo7NAlKZQl>8<=6KF{p zj(O_sl9G!#>D73u#(T!2#?8hBM$uSftOUD$lTl-6kq;s-M(&2w29JvjMV3W&i8MyG!&wLJ z3||pGExb8=2tH>p9Qr);dg!6hjiK{G$A>bZ14BE7Cc{Ytp9Y_SOate_X$0$n`v-Rj zPJ;c0j{{Ey?g;!baAF`8I5;prFe?!8e*^mr_xLaN|JJ|Be>m(iME#@vWxjWOPy255 zUEs_5*1#@9tFP9ldq43$@4Z>uS(~Iq;4Hv5ATHo?^+XlUuTxb|Ri1_e?`~4AR4zbqCg8#k9)^NDy{8&QF##ZY%X_L&6ssjBMZ0C^O7j&I3NzHy zE&EQQi*NqjDkX#F%T_7bZxWaKn^j5%&6h|syP4-C)_;*SlM|aS5KYc&5^FwBG&!;P z9BGNeR}$+#OIqRp&1bAqvY#X_^|Vz=2F<5vDal6?mwJ+xl0fqbt1rw;66-&1^@WMe z$1Hx?HxlbVYVpgU`3NC`D2Zn9Dnic7=01cd7H?}#_Qpg%BXe&;87l0kDRxhAnhYin0mw8NUh%_Y`QGO@YX>RxxUvjZk} z!DY)_WOYvl&4m^}yC(P=E+G8i+1?TZ?=jTtqljilOIJs<6M_xM%fvj=(qv-u2ul;x zAe4fBUYMILO(r%skv4ZkV=b+1ouZ4DxskNl0h${Ke|vATxuc_tzShk3gr5_eBZR*_ z8S80{L6`&mIKX`zCj1W2%vk)%XivPYgT4sOw8hWF<~oZ%k?iX2=n!9m=8(lNgJz1B zYHNpxDAA$M9HgZr&>XNzb#-+^NP!qSWcFL7WYAn|mFjHkY3l}uV_^i=Sfymp?6XDy zVqKD*y)?|gTy2d26Pv53W+I86VR~2eQcYWICP_=$fHBrAx1@)(!~vQKt5h`B74K=5 zdfjc6l0h?0TGa}xvF_eZ>IiNgPFlr@&BF+PYofQew@to7aKf0OCI@I9V)4i0@s?)1 z;=^~;!4^Lgn+I8%on5Wn-AU?bYaVE6GO>Apr3n*FPaAt`_O~>d*j&jpttkoDzJhcm zF1wv$@L@7k4$ypvkj0tfIo5xWRLhCYzgqmVyE)d!DRhRK;xcI7ZWZIo7|;;%8#> zR>JRaE64h`5Pk<}-c0y8$8xNH6XEB?=3gv+*_|Bg-)Qm6pm_r=CApI0QrFW`5@=p$ zm6F}aaj8FBrDV{&*6Is$B**&KSbbq)^JRNl6_5i{d-F}E(awcIY^RO>RkR&J(sDbp%(52sp}Fs%}%b+N7Gb`7Um7ui~F zrgb4}0mV6-%3r`*Kp|V_+mg~ToJyW&OG>hJE|XN8!l~prOj03RXR|t&xPnvpvsj%= znAT5it#*9+8m<8YSX*dqgq?5K>O{L%l5Cw| zOG+!3KJgzB|Nqmqu8KfoV50wfWY2pJ(e_vRi`Yv)#J_`oojQ&{Vn!< z?0&=(495mz2gRCW(_?|?-=nWbe}PPbXCs%uTKEyvMJGq~$h(o>M(&MV7&#T$1P+L7 z4?ltc&KZ0ud~f)|@bSnduv>U>cwFe~(4R1;zdlq9^@a8cB}0>g-v!?aJ{7zlT-6ZT|5_Dves{V z7K48t=TFWfWiinve6B6HQ}W1EOwQ)Qdc9OWmn%=oBTF&yxdfZ*D$EIl8L$R7_u;fO z>Yy)9Um26f+6#5iN2PUzJdTk`Z6vuWKbHHE4@l~~Jfb8>&Ryosi9XZSj+~yXH3q) zZJl%toHRAqi!|DVJB@Rv=HRqWI#yrrCb$%IX1luyf2!oeQC;wn5{~W|8B;iaat_Yv z6dfmM;Q%pu`;$3$Tn--Tv{Kz~t@-|lTw{d)qhH8*= zIQ!@*G@5fJ=Mbtv#wZelMMC6=-YCu;n?tn5c)}&Ca7LWd$K`0iMvw%`5k`zNCgu>Z zL533+D@S-y&YO@!%m%3+4VNRV2xpDYA!vgPUnF9VaKfB3F^7;10?2~q2rtBW6LK_Q z17-n_k6ALDWe+aM|kqazH1Gp6Pcut6;o5lKh*I_FQyA!dUZ7j`fmVQQQ? zHiv)>()M&y-0*Sw#2g|sNQ-ock6;DoP0OudBeoJ%2T=WcE-)dt7kdUYu#T|4-$q-vdc;9l~xZED>4iR2Q7~gQl)ZFgu4rPQL;s1y8$LDrqjb`V^)xYMPiMd@_ zaV*Y`XnnvPT;m)n6= z1tEBZ@fl}K$ZgMbXcQh{eaczmbK9{dB!PH@^NHkaYjY5bM>rpI&Y0Xb%*fn~EbH<^ zRF!LEM&{8fwK9h&01~*lv0aKz%E9U1W!i3$@bK>^rtRRSu60tUDhEG)5@3i!x+QgL z4!-*&Flk^jTtqf(#EDkjy^7Y@T#^MK4s3$)DD^6H@YE;O8c>K;IXLH&BH)QCMaSjf zicjJv2l|kj*TI1IJ!SOvb*iDY6LN67C*hL_Sm}cM`DO_=HV21$5)erZK1m;wgU3C& z=>hagNgkJjmpv^aO%l~h#@HNu>nRTGDkVao`4hcTw;vL!FisM z+m$L-=ioV?Akr?wTxw3p!DpV_Ah*gTYithg@}y$aBvk$*9UrXHO0`xTH?VO=H#M2DoHR%3;z+dZ4tvRVL_-~N`;QaV;@c-XAUK5YT{)rO+?u%U( zJ2jSx?G;PLCPx1qeK~p?GXEbQZH~qwA4DFp}h-{GUplsu+UWCk;c-p*a~4H0ZwoyR4Y2LYopY8Lf)Qw(WM6jF!&zfuv7A|1L@t8RSDFNEHz2? zggk6P($Y+mxO#HUF?kq+bX-SEOY)RFtU%U$?D*>eM|stG7=!EqaJIY5DS4QMP6V~w z>O3q%CqlL%>nLPK9u^{LD_5(kH$Ep1ThVb!6l-~RZD!HRhpW&4M;k+@Lng| zWJVqaB*9Sl?sBH)VM-G7&mki*7UW@3lB0}Rh}_=F*{r1n*5+Yk?!Faacj*iAFg~}2 zuHNo~JS!IEdL9NWIS*Te z(E!xr{`hR5`DaJ`*&qGl|IH3j zP0b325IjXp7N+r5G>`{cAd>|V0wL&E2= z;5mdDnd3#AnTPF54%<`(+$BuQ!vuDtsMVjIhapUEkVnjumU5IcD-Vm9G?YWaUC{JA zjN=j|DUqzpohgnS~d?bz#E1N3z)I2q=1<#EV`e}MZT^nxf;A?O2?FUJH0^~TPtId{K=1~Y&6W#z zX%q99Baq%YDE3+eZ)zShh0@-7KG*%xlvhO9Yt=mw;W5W zBjjf0N3qX_8_!v2+#8G~)e&HG@-c5YmQzQOi+anklsbxB#9NNOXlkQ`z2#U!9f3D3 zA7YN#U#?ni7~VCy>stWNTdw|R7l zhwv72-sIeIY_#F4JcL`zxf627+BM`mdkM}OpF4&%30dnQN{cvWVs5it99`}qyoH=M zA$PP5NLG9ZYXN7C&26%8nLeBOoF3AiugLj6tuUT3ZZQf*r?Cs--)pqTwS$c+qe44V zo2UOte@wqZKS^)bm+Fh-AH`pdKN7zxenz}IzF)jKJ}LGcvIRa9yDN54?6lZXzE6=e zaMxHZG6j5tOaZ@$UK=eUZ{PvZ#^`AH?7tfM1x^P%CvtS;h{!U1R%CW$RQQ|lyWwY$ zBjDojY1D6jckMQ9*KjgCRokpphQ7zi0Z)YP3*D?;rEMF!Bs8KOsp+BPL+$Y8pND(_ zUj$zdJ{i0z_>-+JGjBI9My$esxsSQf^c(N%qqNVp=Y7BT z-R`^GcNW$Xj`pobKEeHb%h+N9jhH5j@(8UOB`!ukUU`DN`1$Bh#D)Hfah|-`VwmDW zi)+7?7g23H8pGX5*1{1-Uh7{z-Pl&sI&psey6)7#!1AN}kcBBD;&8&Bc=AO+PWWRQ zWl594ARMQ!XPs49^&AcNVmk*_@v6gU;GN98hoY-uRfp1`C%H>d6|FjiM)yMxcO9o} zsRUAtR^8UXbyO*4^v9JfT32eIn9(0qZsRIu^oNygych(kee5a*q>t2MaQ&h2e#Od? z780>X;g6;nZAuF+Ne^~ylz~j)4?WmnV`7DG9TG2Q2PW9<*Oifo!&HUd=<2Qw*;QCx z&hjJP{ENaxFSdLl1uwP)&(jA=!B?eIh%W2jx4TzHafNf9d9?rLyDGxl|n zu!?qu+Q^6y)YNN)2)4~IcGNUl%N4yFaq`O&EV8QsV&T)uNXVL=T1Go2qqb@pyhy4`z%Cb9l3Xj1oG);)0^B6gWF+2u&qC=TgCUwg-kEfL@L zVoUHp(I?Q^wXSnhYBLVy!~s4laiR3KKbDb@MZ8r;LYDI86r%}Et(GDm;v1z*iT!#h zQ^Nj%K7Im=Al^>ACu$~z@M|7i3H+)DS0cYcqahV!S>2c2EQz_r&60pG(J1^*j3>)C z^bN{r+VG1`h6H=T$&gUb(-*OmELYR-!!jnAO>Nw~s;768tm$)3hJ^mTlOdshCmAc@ z^d+H?dOm>%NXj4#3H7X#A)$W58H4IkujsGOI2jV^*G`6n`W5>+W$B5rJS;r?OBy?h zDv5Js0sgcUmBHrWr=+MX?nx;sgU!QFNKsjVU(k?N6qP}WMA;~ht7HlMm`au)Kc^`K z2nfc?m4h-}Mfgz{M?yW~;z+cIMIk_wReDGzOPmK)vIJqt<9B0KN~G(Nv_IL-Q!Ui` z_N4)*UToh!G*p$dl8C2G*NI4?I+LaQ_F&hUm$TkWoGEGVU8vXOMAkdCWg*70X{IfN?fc8@}pb-J6q8L18JumM$&yPOP(bElIbq3&QGm{fPK ztjg_zCIM~}G^u+lEZ+z>ifAegVjv}28&l~^Y* z<_AR7nU_f&g;!@@N*jb4uLsH+-=a`uoo`mCveq}vG?oxMrFW=ruhiz=p~2Vh&#C;z-zQT^xya4gK&@v|W1pH#ia(g|9AU zO3bTDnG*I&+A##IY|<;73<-C+lOdrlqeCTyk}#J_qJ+4Fb|xwbb<9BYdHN1gP(ofz z6UD6S@5-#{=~718iyU+be4&FbaW0@a76{Jj{w~-w-HO?DehE+Fomaw>nCH@uJHgy7 zd$c1ZRrnk?OCp}_W=TL~=tsr{0=TRzg(Y@nO7~MYO9KAH&60p;+RfahApKa-B*X~K z|6j4CBK|hc|GOA-`la!4h{At1c6DrHY-#fl; z-!?u2Rs8S&78S7Nva1i95=g|@HJD9w_4Ex5CVGZ8v?Gfqj|&wmILQKbVAhm~Z-6Tx zCNXQBhm8oW#RcritoSdqgvLOj)n9Sas&Xo|ytX~qhfQb6rnxhbsG5qYwm;j^)swXa za7KBet^+}-Ee$+iMwHrHXhEra{@*WEl-N|jZqh*|1tRBVmS-~M&w$*d(5o+CpJ~7U zN>At{3)p{hK06$3kfqs1Q|-uK?OD>|0(PaG&(2#*lryh@y{aA6x*`9pH~8!Vwyj#q zi3-F81?*ofRm7M{;f+~Sz^>M|<%I?6`~tSLmMDUBM(hnbr$Dx}%E}7Nc?IlfsrOEN zH@zWe7qF+L-n&CoASMdf)Y@GsnTRFurf%?tonOG-mU>sE@&bE70oz+@yW-RZ%m=-J zYYN!nQrp!fEKuhbu*J2#TH};6piM~5DqxSRsf?tMT2#P>mpVjca2PXnfA;LK^9tAo zQy)QzxIk_!U{CA-rF<@$pkLj!&dd`+t*(ImvVHy=HKDS&fW0*JE&9PXd|?6mYs=L_ zJjMip-&DYkn>vmt_{jghd9Cv}GND&rfa9Jzj+ECEI<*D(^QnU*HX_@5+k1~LSIC0G zWM?wqN#po#wj5>yFj)j)w-&pLTo_+yOQciiUrZZa$mig0=6dAk<=wD zP!|@kH>r*R?IerWT4$CRAw9Q%jY@UgbxRA$`T{mA)wiBX!a%|jf4NF03fRh2zeC~N|rg5Zt8RM~F}wmsDraS035`33BMs$VypyU{=B-67@_up_E|vz@X6b3p+c zq>h?yr5S1p*eZ3@)F~`bYYW&oRY%Db6-@M{%Jj4adF-f`R>Pqn(ChQqWmTV`jgBe$ zP`Un*$Yb|aeS+RPqKvvcc4XC&(Uzy*M(-wHl*cx$`pSB$C?#O))}sU*V^!`Z7Ui+0 z>rsMJMU;@pW1H7`&*|R&Oxa#OKaag%NB>H@em1P7`ukIx6Ah{MWP5!p z38{5VGph4P!Ql?0Ux}DNT9EH!^-J~jCDwKKwx_xW67_A(t*z-aU)&PHHThmvzcRu? za8bU8J?2y<<2-J_+vdw}U;}ztae+J`-_17une+PKfT1|AuV8*GJFANdfDk`$n6z+oF@S zvm@U`-oi@4jW{dd*vR3LCGY`=hrbTLhunP+gs%?&L^~0Y{zu}ZfVS}D(6^z#gnl2o zKXg@SIJ7a84(%J-KC}=S{QSYsf?I-*2Cohd2agIK9NaNDFBlE{3%mZ$1nv)96*x=l z3!I2k2M^ZX46F$37^n}-3XDd6gAe>K`XBM%rltHBYb*R`XutLk`PcfF;2c8Y3GjRC zKI?Mp46IS?Z*6bQfj7V>=5yv<=8fhR+E>1Ud5)RWKKA_xQ3wZ{OU>EZY1(>iC6=aV zYf;}<$o>Dk?;hXTzLf7cUq2Qrka1zGo*;Q0sAne`H8y4wtqnNqI!kj-nzx4aiC~iL zo2s<|y^8#<8m(&;52_kaW8v^=>u9O+PK_R>!ztI+Ia zqezD2i0JAeF#zO~X|Lo((oQl*Xm^qc2*c!ObkL&*+GF~3VA`}XJI3`HxFn}^P<8{! zRME8o%Pjqyfq?bEs#hoJEsO-iuv=7xuwLz zjzsKht{k?nxqOJWdBZX|e!%+WE18j?lgzaPPBI7a(;C%#-;3qNUn@N!aJh{B^{XMz74r@r38S<*y$UK{OWc7Hx-pRmF z)Y}tTAYV!gmNh08*b1;Qtw|&v8(FUzd(v`i*Q9 z;-e}20DWIM22_yUlB0%r+wAF}@|M}dLFMhTJF5v9j@ie>yva@RJsj1iqP9%N zil|rSjp~)}p@=@!$0Zx+>n_e?(r>UUfTFSk8|>n&(Xu#3wMI!j@`doHr51A8}JEc1G)k#25lX-kU}*L?>{4Ta@9 zK+$MuY|gaR@wAZUb&7^$nb%5lJPn5t>34ffpcg zy=790D=wwalzjD-y}iiJ4k}k);-GSbo#=fKgjL86E{Vk2Pc_>u%VQKWY>{> zU^<}k7TAuy*={a}+}4xJk+)&@jOy{N-$GKX5^By*63;xWKw4V#pC>Yp~rmvZ!m{)nBC_?6y5q+}OMKVakv1iwyK2{^A z_xcyn{!qr^o8iUew_EMSs-t3Ys^*OOUzt7^gG`siJRevbl~#d-Cp5sS-KB zXqCv-N0I#hr|Q!yjK_>ijH8X!Mw2m4|2NJ8xKBS{KLdO58}uWvAHR#Zct4xCPKd|-e0 z`A7W!_P^u*t^aQSh5i%#DV$3%$M3iPVm)PDV->7E%24PZ z2L|0hJ*1eFG^Uc)Xr)Gsp0q|O>eQfG>`yD|(x$5Q9jvI^bl*Yr5GYm@qs8i{7%lcK zxh<{VomSRGYW~=obsA#E7-vO$YG^6Nxo_U?BC7E^RwThNvN-?c# z6fK2WXTp<8+!r^eL@-9>J5^W8i~sR)9-eU^_Dc^hxBnke5LtU1f%e~+A32XgSwa`K zB>4YxXZmVmdyUyUs}#FVR4~H4FzKoj|3dp0McA2ej4JLm(n=i(8C4>*NGi9}5J~fD zDHYyr>=ZwWpcrr{u$g+(35G1Q$;pt#Hc}rqrXegjASE4i3Dn@AOPqSzJt$78Ne8?- zPrk%m?8%q-wbYf7;;XhDkP|MB#9ZX!NVJ9Wd3qRm0A1iMAhG9r3&VYju1 z=lV){E}rjlFD{^A4np_k@?7XHlQ*r}i@2w`E{?pJ8W%_2#T@EKN$xCvodDJo&N}sy+F#L8h}$r!Xu5IgOJf%2ZC0ic=V{w}lCm$)0=(ImweR z@h7q(g{cY137jNR#&eQX9LM^OFfL^`8SCOmm@zJnM5|)Mi_`c-UD%P8T{c}JjdsXO zoKfs{T?^>4ZgEe(#Ep6KC4Q7Ogji-r6(gJ^QNo-g6+`US-Rtep54t!KCg9>oG(W4R z_rg0cEl<8gHa+^0(~QBQujY>3}C0X!yvv(y@oY>y@*Dd_Dw}345D{lc=g)i-D zDQ{f(--0HA{v~Kq_n$U+x$YhQhqr)4{kyk-EaD5hSfz)DKNmC!^qHVZ-A}2}(mB*V z0QXCf*=K7@DHWfqrJUM_#RVbzQYjU(JF`&8p?1010ryTU(I}<7_(L+lSwj8rQ9p?z zN`9dn4|+SXIH#fZ>_#k!2$knO$dKNV_NmSxwqjB1--X>1W?&*OP1TiE*OyW&PpCYt zlxm!3TvAHaeyhDmp8%QJ*}2?-dYzjF%v0SoAYSaI0q+G?Z{VTkRimm7SFcBZQfUW} zGrnOOt5m+WomL3>?y2~h?{wYV#Y~#jX4LqHzSej{-_`hqo-l6I#~5e9Cm>_&YiwuC zGs61c^xx{Y#Qz+BGJZom2M>U~;&t&++PK)avA@J#)P5g(B6e@=idX@8{xkZ~$OEuF z@&?XFzW>UY8T~T)A#(ozCi)Pv{$GHYg8t}Q->1?2qB}-^kL}b&?BK+Lzjj|LPx`MVDHej$QLj+WNGgNzY2aFd>j4)zYac# zGXpLOj$l3Ekl?c5e4GPl2L6r}h2IAr58NHNHgLZ0lEBG<4S@p#+XSZgzw;3fg6I4X zX%FJu!}I;8`8W92__y~j@Q?Q!)<3LwwIx_*xZ3)$wh(6}>~HOa^AE?F-~Su2yB?MAFGIAzEx8j-1bNZVYoEtWcw5#An5 zBX<%2MzY`b$Q@*XkdavD*H=J@EI~0x5W4+-Hd$2S)u0)$DEU;nR3y_?QQ|3NZJ7cl z2B~K~rLH4;tqOI_5<(#Lq%Qcq{bP0_dJ2JU{AXgTE0PLz%uXdhkQnWdAnm~&T*fRW zb#zpHaA3@2x_mAx4$>sDXSRMrH*18dw`S_QYU{K8J=yMc7>W?-3|q2?c^TLuZ?av= z0TM?%Fi3K$+Ke~YJ|SbU(-v&b>uleVapd4wMbB!4a{-0gfO8{wHD04@ffx`I#Fibf zDocC7BfKH`NbxXPbyXch6ju^rP@A{W)k$*qUcM%7ZN+PZX#4)>x|N_aMN(xRioQp= zhobN9{ZMpzYNE$O(RXFNhq!|97mFUF_QT#G-W~!R&xyVb*X=dUb!Q zXMmVzyb{NHa(RW0@#ON#ZB~opfJduDjXmVodZoXjUTN{M z`eHoj_G~u^n`OtJ^!Bu}mIRg8Ye-Odr3M9s*Jyz3`BAJyD%I57(A>xa?aX`GM-+f6 z%lw(tXlU$6XIfL-|G?KFH58UFOFvb;g9t?<)?C_gS-HeiKy$do8i^Xn}{9=%1FG8jv_AvBk@M+BhM0~ z_FlvjaMfOw$d!9kB3Iu)K8jH1n%(v_S6Xjhb9s8EC*%{UbbE7iT~<7idu()-Vctz% z4I;(TLRf~CXOxhPyGluym5{V8ZiC_m7oqZW7s0sGO}NxW&|V^AnqsA) z<5Fwld-4f!(tY2#EkXJTxz~%T-%K8gs!#l%zI7FrXsD$SKl7&RH}Trqwy5uyWaw8= zmkFc#D*mhTME=XTL;O0Q|I&U(A0mFl&*#)u|Fv z<&GsJWB(G8HbQ#8JWZsk%6UEdbLX`Ya9(RWk~iKyZKUc5<)U&2<-%B_Txi4ezES_G zO8#r~XZ)Ap=f5-?0r!W|WDiVTMv+)fZrhTI$ZLHbdEi~hvecFCI!1hLx*Syg%6B@b z{Ka2K>PS;9qPX1|d}8TttoYqX(@`^-=h`*sVWtYn{wC7HOdVw7f$91ZMLCgeY3@kY zXNB)|`((YX4BwY>>EaOWY^I}`#|!w5aOo<1-&&V$BaTyV#98h3>tx>L(pC88oi5#E zdjrl9@8ESd?{MiVeDiiP|3AmKe+9Dt{nXf~9cdh_?QJw`3yg7ENdK4bZ~Ak-C-vL4 z5B0onv)k*tB@Lc?^_&M>7@gw4U#2e#tOy zLcOupH`cqz0C>A~u63-H!s&)>)d%gs~Fb?_5N`jQ*y z!Vac%J-c%kdH=zmSu>Kyv*LtWh@gOQN=imt~wWCZU^nyiBI;IX$}T|oRdb(-ME z+f}tzogOvDqj5-9Ok@shrE6ApBFw6ms?+Em5V;1kWwbG!v?H0Oqj{>Dt4^h9gBS$@ z&BiY)f)tCcqB<(q*NYYxHT;%tPYk5HV2Jk*fJ{fTMe(0Hi!c@%o1GM`UAsdm6sdm} zDwkSRYyW}%fCb16r4NzTPU#Pj>fY)-Kwy0-jJq#D>d4Y(E&BraU8Q{47r^iQp}qi_ zb>;d3cpYW>0$5p_mFn3!)t|)0R@pvAwSTR)N` zyU^#XF*c#gTX)xi}K-L&r_y zjMQTt1TCZ8C0hYKJRz^p!80~)76XE_E`M`zWL-XRab#WIw>hc)K4${L_+MQdiS`#4 zN20w)y(#FaTzh3Z_#_>j=Fd)s#Cq4skWlZi5u!8IpWVHeuMq+1Z3kTf{mDU>IDedP z?B_#g15PH43eOH#lt52q2Wr#zR>&(BG z!&4;d%rDqyhtyB@s<$Lj-r<{)C~xl#_ATthd0|Q;y{=Ftz#kN$GmY8t>4&ovb1+u?XWMzRYGb592Am%Y~4URvh$jUlAY2Rp1W_9n* zup49(KjGp?{9m{@676xC4-F+}2-YU7QYiiCu~MeQ{CO!;!ahoO<_N5;-Xnr0K^_(~ zsr!%(OcoIL?;7Yr&LRo&U@23gJy6P&u=lg?C|#FaNm98=(EHph33;!ZB>{hCH!7(o z!p`JAe*7L6N5b9h;z+c+s0-l$tsc;Jp(%P~74P(7OWZrW*b@A9Hhyz(345E9Apvi7 zG9=V3%yOep+05>k)DF1odUH7u3D5Elvb%Ml$bxR9equ~yDHdVZ_4f01FuWT#cyJ~B z^&VV_e4YJXkq0N6;#!3&k*-mw65(olAWaYTBeXzbT;-rklq(%{iF1XG4#SSGwBz0` zSEv%>GKDG;F14Q%jwHa`M0s~FaWW*%#ZHEVx=1w_jYY;W>a~{E?iA)Dter*T0>)07 zRgIpuE*s-Qg({1`K%vUA&u0%T-JivH+1WctcK9UHc^+Jec&-OmBA>&W-k!rq%(ESI ziFOvr|F^p0kqVstcSXE6zHMBOy%xI}bM*sab=b3iF?wlqFuH4WTIBP{uOpY@w7+eU zvH$JxJ>gTr2Za}gzCv#PvqFc379#iGW5F{p`<@f{2D|6i2aXNwhKTz=`ET|g>)+Ks z!Ftbn$QrRSR*R*ZzcDX0*PF}CiN=S<1ICDPn6Vh=_`QN}{ISR~Fh%=R`;~U7wo%(t zo96r2_jBI}vh6R#*?sS#qUztQBC_LRr*rUI9Q)U3}&nU1zOJd#1r59UN zL{c1@*kfxdqJ+goq{dl6^71I+8(1ihW6MiuEG!~D4o#-B6%8R>TSST+n!W`oCJ~w3 z+mq^Eg?#dfOkG=3U2~e8B*h97>A`a>dz#$+7Ppg$cw{L8hMBc#05oHTAV?=gXL0u)f8Q6aa_UzHCaSj zoHgXR+4&|(J`*g!Y`w~h3&@Q_pY{)EiE`!^kRV4*hJ-S_8+cX$X>mxO7d28O1>WKU zlHoXN@I!T8SU@fuHF=ZQT?+g}0jY4*L^VWuE17oY7mx>MiL=%&d4avSfFwB1x^LKe zddYUc*PG@Q+xk3CWZ>}Gi`+F0v40o>nv)0*vJXJ&q z&4t6A846W#*AVC^r=f6|vr}wEQIwV}9P0dD_4W4kVm0K4zE_7h$FFi)qMU}p!OqI{ zb*0y{1uwE6=>1e`3kNxSY#Aj{O0saE>uy9TTN(8h7Y=aUO&Kjw&ced}&e4gzd1Vt9 zu5pe|ZfSvATUhP7;ncdW9vWru-9ifrtDK!29*1rPfxf7)(%BJv`-tJ^%7G%p=N0yI ze)dYlg=k%2U*}uFM7P#k7ZvvLs*FoTlrX=rw{wJm3uUU?yHVy8Ryaopr>wwSP}s}a zc;pz_a-W!*!k*3%!X>Pr?%_hks&2V9t|{#9LUjrY)MQ~dXV0c<#dIrut37*HXU{ID zCCZss*v0wKF}q&x-ORHK%bm84LsTHnFD!FDIqEv)4LPT<)cNF`vI28qVQ1(2N3*(@ zYvj3wCC>NHEiG`H3OhONCYCLJ5QlkfHDhjlVMpgTzr3C(tG2L%^If-fvPYN6_qm|3 zy|ZI^CvvQ9nD{~1zYoRUh}|FiNo-wgo7jZt z7t!aUH^E!~(CFgGcahf-yZ_V3k%-%`j#%OM!@me$fHV7c4o?bw5_&pxQD}2$b*MfR z3jP_M_2*$XepRqB7!JG@crb8QpeL|PV3z+I|1196{HOZ&_c!`u)~nWK)+TE&Yl`{4 z`E&Cuv)kO+oNIh#{1R~o2jN7350QcJQhlSor#@TzN_#=OUOQ1+qt$AKWa z>>`Xn7orqZ5Mlp05gU`uscb`QgL}mKvZvvAM`jmc z{y7m9Q3VkupA)g6A=#8|?C@wun0rn{MN}Zx6k*(vyuAI{qlU8BCd{Oh9jT`JlHNG8 z2!k%^Ehx~Mi?H7gfl%L2JAAM9#wimWBy||90eVb)qAA_plxnWyZj?f?p=g_N|AnGZ zYA(Wz^Db=_vXx~M?QNMpDVyUJ>RRc>#Lc2k3t2Kq6V+TvuOL=P}s9S|cxj zr>H<|DZ*Gg3}QXKJxe?LdpC3q;rOG}Ajwh4+PWpvLGl}MXE&jlEW&alOLG5>rqG&I zgc(Pk5WK}Z;V9gYZfa~O8MCGrVZS9jqy)~wA`CaOkbxCul9-3pwY8(JrKvGp(l6!~ zcV#`OoV38LDZ)@Aj~kL$*&!P#-o1Nf5oQ`05Ih70+Uz2XH1ZILP+Cm^?->57i?Gi~ zzT^@yfi$NG(~M*#M=E#tsU_MnnYxyi7Vf?%%V!fe6Oo+@ZHnPs=;hQgnrWKPofgG*m5)uOQiw$fFAw6^x zircHBi_R(5vv&2CRWR#HFco)L7v|y;Ohr~;E-2QrK1Rzfjl6S!))W)0kChP?sB?>p z*wYoclgmwXW)&B*r|Tst@Fo`*APqR0o27Dcb=mR7`N$uxaE0FN;yl(XN>VyG?yI^u zm-UJgF$JkcMM}$rO)jK4Dv~0mAk9{hlq60rq**GGA|{Y(i!<4D%$?3eNkZblTu_|B z9`;rg1bR)enmuff(=Q#UGmF#N3*#Xu&}J2Ak?Ut*z7FHUASZYhDYpg4&&1!&Eu0(UPvAM268~`bVYl;(DQ4tB;L|{wMkty!LO1o{8A~gQD9-=SM3e-$&k${62D5SB*)cK?zWZNL-~AiIXN5P14-GF3*My^?&q8lvjo{YMPeR9sIzlT#b)oUWuMvm; zWbn@5MZuGTnc$wm+Ths0mpD7{cY%ij*93lyoPO&A2L+ZRfB)2g>HpZj#s9efR%G@& z(Z9~Ww|@tC@K5uHtbbYWSkG8@Sr=I+S)JBC)>3#GEVQOuqb#5Kh54@elKGT*FHRgh z7he2FnQP(4zpXjn9B&%N7selr-x?3%1j4h7ql~?bMq{%69nL*?QomV0N8hZk)tBgV z^`P%y?Mv-l?OE+-+BMqQ+R0j9Px@|$pThBIPWz99p>RW= z#k}X@&r~di`E9#j#F|Ou3a)MUjaU;2SHdBG)LKODV~W5pX|#QwL`4Y+_DUGfI@Az# z^cxcC<~S^nN$NB&q>G`CCc%gfB8{nf(vz$|P(r2^>mzYG4iLEK>!V0`lu8}5hnwPi zp5$#-W%i=CW6!0~3S*|b2*xwC4qSp9R{*i2$1Lz98}HIKpO)+hq@+h_EU=6_o0pmM-J#Q`c$2B zLi(hhD8tb2Cn5i?GSt9n^97PHpp1a|yaz0O*1aU!&ZR}3c9f)!b<=TAYLUK^J?i8L z*FK2^4mwfB>|RRqJxAY;)X)Gtr*^?u-rEyvq@9bA7$qr$cy9VwgAn4cVZ9LI`RHSH zLWsYcix~yGz_wFWtX5DsP(o0+)*_pNvAt_uFX~j)>!wt$a8rzoo1$Gz0(AQjMM!a~ zW;iZKfA6?7#yKvv74ni)pvQ4pxtHV8pfSg+AP8$0k%(b-Sye56kN!^nHfXdllhO8~ zeFotT-J7w-FqGlWg0Y2e25++kZU%3<`LvfwDBkSzTyzdJ*G1Q#`aHHq*Z5Iy3BRE?>=Vrkfneu#}wZ#w$JD&EN>r+zbvil~spA zag-?vjRQyBZ4 znCjAZarA?3iWZLfZICOR^yj!au4UoZ66(AQQa`{&q_ z#0fA%kJur$j(@f-Darm>bmU8Pv}GC_u=M2^qx>`JLn&qYX^QH;L`Q43y}mK)Jo3!X z9)2m)Kiw{?wXrVM(d0Z$*v~ouv|LR8RQp~U8?trvjeI4=KgGTmN%qr>)qRO>{_{*{;;jp(2-6xwz-~r$kuW*{q!uK zzCEejmH*OjAQkOH-Tc9jUPK-AwCy8^5tN)zFwFp_k;%wZ60Q zCE5Dc#&1YAw6>+3C%{_Y*!XUy^&cC*t|i@8-@xA{>uVcdlC7_pWIEkiPx3_YntaJ5 z6|(hjR+DslM}2*=#o3b9zgSI5nASgSEo9VhNg{qm?cvrxY%Mp_`n#>wnrTO5x9hII zu(jMw>vOJ^Y^+b!JD-L18P{?#txs*OWJ@yJ(d5$l#MW{%t&eRjoNm_MSnqtZtdDFh zH`DsiZtaGSy1Gmw-zKnV-UO^kOS1I=$8T#Pv1-nCd!OUGnATsJR(nTBrXf}5^pUgv z!n8`5)_bg0?b*iq#)dY&Qegd=^#O%!y=zNmnp=`d;Z$zDV@pc1^|oD;wvJZZs;mBg zvTNdIT7R_h+b~`w#SX9amW?mT)|;4iHuojkG4{4Kwz}H?4IAIhv|cCs{~Z-?SH!o( zZ;PK2UlpGo`y}=N&ha}amWX~EeF-u8$0K+D+{k|-uSM=g*8Z-@E|KZs&%-|tUll$z zygs}8j*SM zFZv_;WrzS1ik zk)4&kL^9pj*w!ZYUWLe%VeG+?y#|MfVAl*|%Z=41*`CFYeWvW)VZ)8pr$kVoRS#pk z&8|;7_U+PH{zeLsDZ|)Tv+E;81iNM!8)$ZYuu+}uNIKs+AvkjwduVoj+=4==W*FOO zHdve1@{vY}Oc}<0nT;St1iNM!TV;0pG+|XUlXhB6 zLU86V_R8$`aSIBenqh2~*=ShCZEx#v9>^*LXAWbd%tmty3Za@|Y?9e%4K0~Ea?q9f ztrLPXhp}B|qqzlzQ1vi2&RAPDWZSZt);8|4ql0doDz#3}d6ru8$NE?3!V0lG*ja0k6$z zd}qqE4>ro|`nUxZG;EgHXl>c%WEL}qGHBQ-v(emw3L3V_Y_z84rjDlaZ!z}BY&5r^ zf`$z;8?CV+ooY|Fm8%;z$80pWpn`^tF&hnudD5`b%AsLj%tmtyDrndi<7jnt?d=WD zFS8JwIgA}Lj^+{+LN&wKEMsW(2nEh`AW2-Ar-1D;hE^gd(5i>AVaECxI#^>%M-!j> z3Xv(p*eqjxOc4?6nqh2|+4V^`;4{?bv^Ry|%wcSm+4XS?3Zd#@Y?j&eNukdtvmSjO z+hcZpq=-PM8MZgX`V#d`4Na*gSmI^c$KDY05LD2xA!grQV=|e+*QOjA_QdSFa|YIqiLD_zVoiQ8DEvTSjbBv+YH8f{hGYCm6bEnuCV`wFU3K}-W1X{Yj9e#9W z(6B2e(42w_8n(r3wEFs{Cio7PL&J`kjph~O*csb=2VJse z4TsTCP|FT9CCHk50s-SB1kwR8Za9QOA%z`52V?SZ(5jdP23FA%1D%M0QOlh)96<9B zF7cYf#8_o69`-X|@3m<}Qug*7Ij~!{8xd0jiPnxxvMpWeaJg{UVw<8{(-0epvxiN# z)jouvuz>_jl-6t#vkNvq7h=`J2I~YRVnSs0u&yE{I~w8pN8N87`;pbdnu?@|38Y!W zKDL2PJ+zw|GO#m~B^$)khbvgmaZ3rD`Nb31hUx(IN8D<7>73$^*tWE{tiW7YJf5{K zkL4nVonnu;A&ab`{1i?hJ-2uq+omliEhHBdk7b+f1IRfgcP5OWh%@jJTK+2>O_Ml_*RTO4Hm9zUQY6zYou%x%&mS&x!3 z$I<+WV!z$0r3ro%9Z|--;!$qD;VcsPr8{7YxSs6nVjp{nq&vAHsv!2d5fyiLM`c6W zRTUTdPO8A+A-et#{XOLO{~0{)3;L$`?(v5BD-qn+n_F8XlvR?Ne9L{|S(qCM~oSQcFzogB3yUqs$S)_{8=S44(IUcXV{ ze}&%&|1x}6_)?trHxxcRylZ$-cr;cJUJl(GIxn;-bYQ3rr~O5P{|>$r{4LGvcS^7; zxHlpRCI-F>yc_sc;I6?~kHq>gydKC!3RWcr{_83RUS&;rASxZ3fVTz3oF}YFX*8Tto9wNLWI( zDpyM?MJ80Uauw6J!3oW%TuHO00iRszmHR1|C~tsO$1V}M()_Z@^e#ZMB#D*vIwH62XsZ1?_J zzui@2S2Ly=-R|y(z@4id9R!J0ra1^muCm7KeL!Bo!#Mp&q_L5SUt*6t=&~&ybI@g5 z{G2_B{$BWvW%p0@caftk6ud`0`4aaLPrk%|nDx8&GtdzWv#a^7L19g!@Z)68gRpp2WPDrd^|$_I@wGekO?$UZ01 zj&TsV)g;1Q4!Q)n(?ORwci2^A<0-LrB-ZUEJc)N(2~T3)N>fpxACnLQGSL7FBQ1K? zp)`$_%|S{YBt{|0KN<6oxyGJ!XeVk*nK`lsx3`qa$!guQRXJJ3o3|<_t9z3ik?FvR zH`kbItS_Z%tF^1-h)QMgTCp?fsH%VUf;rWi*`L_YFstF$X6BBcUxii-rqlJA2t z+30eAGqjc36^`K@Sd$$DAg#1(fs_e6DL*>ijS5w^;0+2@w%7GEaTx;A*Yxd-Lt)nM zA|K6lZkEKl*3FWD*SJ{R$q4njnsp^nmMrQjmlAh6g3^^PC0U6pTuR&t2}+l{lw|cT zWA9&Y-w;1E1mc%UqJ+Oh5~cdZb|a#>5SE9|MKbWkE>frxfF-t~O*vH<)5_^ITI}jcqTnn%w|cjAFE^uG@_Cv$nYp*IzF``z|7oYKROKY60<0Y60snO z5--nsPxsKks-uR~RGzV%iz9)~aB(Es>4LMgt3RzIDU6-w;z+bpT^xya3L7U-H+g3# z3z|eYNzkP3iR@+(%%Z%MC)k37$oun;grM>w9xnuCDaQ#x<>fn82+E?5;etI%y*Epu zggjajrTQj8RKAWIB~hvmNupFAWTqK4zKuynr*etI$}i_eGe+1+{5J;I{b*vlK5{@D z-tt=iO7_+5>RFBWF=d<_aL{E{`W_$VuH!4(T|aIkrwEON0)UEJ3pD`>3R0j%Bb79ng^Q znY{&W)5EH)`lPJs0p`c7`qHMZnqRfaVJ>5iH{Twz`7{v^xoTe3MoHyg^{Tm5Lkv*P z=c;O|21C9ZDjxEkTcPzMi}^}zXMK|H*Z!fsiT(B4wR7U{#h;1a8NVQYLc9yU0o%vt z$H&Hfu@7R;!$;tn*qO0o5F4;Mwj`E_O+>c9|3p8J{x$k0G6p;my*GMe^t|ZFSPwWD z`2!mfD=-b``voFjM?Q+Y6?rc5Xylg2MaU(Pi<}VIh>QYhwPh8Kp%g|*Pfp;wV}@HU(Qa6#zI(CLUJI4YD49fWv-ZA0@z z<3lEV58e(w7ko5$Yw+S=A$W9fU2y;4azqx44^{*|2)qDagc}3r2TluY479@|VVl6r zK*;|EA`9+^SHcPYG_n;o`ez_F!8g|5ke}dj>qhG=>lk<_>}e&f$;e*#nfa#qjQOy6 zn|TE?7Mx`EA);V!a|g55oMy(1{}}HZTZ~^AcNte9rr>0w*Ekd@oX^!xK{kW$^*`v3 z>C5yR^@RQteUpB;@2|cWe2?G}us`Zm+c`$3-W_7KdQzNq2RxNcFELZzV5q2kH(ZSiH>bon&70c1|(}*_Jjh1>peOND^0WlO(R#O7Yz9 zan&c($)AxO^M|UBsoRacE~Lz3Vz;{)ywuy=3|{uFo@MKYmMdF7gnHw%T9uo)#BSM| z5UY{V7pSb88=S=GK&#K3t>5ml}*B?=6Tz8lTo$!f{xrIFlIn9X`1%<;D1cig->63TQ zZelqnnd_h7By*6{IoUC(iJj&obC6S=WDar)eTU^-CU!C>aK)22fvcQIZ%3KJ#7s}mV&_~>%D zpzz8ZCMdinhthB2x`CtUdFV%}SC#vyS4M|=rCmynT?Ob|b{edzd) zeL1l%9Xmvlc-;=BkA+Gh8i7u}V+ScTE_a|p<9Bg@gyW?B>3fjvr}x#TTvYC@To_s9 zLc4^V&j)9a?y8ymS7inNWsK*)w7u;rkYugAs%sP)uj*=r#_Polt8CBeF1`>MW0nXd zan1eM4G}4>xG(KUWWyB4qVZDqQHfl6Z}GJNC8e__ zem^^vvN+t1#Q%S#(NPh9JN{_=^7wJ_!{Xb-C&#{wy@=TVVyrW^G&U*v&*-z!Tcd^O z`si-aS(w3Z!QA}}%-Gv-7QpA>--T}spBPSscL+~JjQ{hPo1Yo##(aE1C>(r0_yl76 zhk|(pUP+`ki`C@6vZc^!%6Fi`q@vY1*OM_Sz)hKYh>o zZbeqWtZzHt)QYd|S#_Cz)gy3sW{zvAruO<&dtIqJ;|Ls`nd6!wBD}?FMudxV3Q2|9 zTiVJwwvGrF=Mq7IRy`tIoKx^-Y)Q8BFeM=}Wkk3*D>N-i4%$t zoH-&~oJ$0SP|b*Nac)buG&g2lL5o6g=7?}{E)f($H6y~sxvd@HXblKzD^oY&;#?vq z(5gq^;>`LI!VlV-nlc{G4$jT2FDW7dp=Lz5HN#7{uB8#lv&z&*xHXpu3bg7GxHa4L zX{*m>n-PBKYV#>0aA>ycBSi#4&4_SiZfik=R2pubW$GhbnM(u}G`KP|m(#XpU^O*5 z!xe?#%n>*=Gndm6K_OH#BHWtWk~pEYHCfJ8cSN`~mk0{9>Jj1A+?LEF>+2D;SkhL) ztyvKf2sI5pK;Tf(n{&Yi?_(Yi(*M8-_6=+?q=S6*S@2+=`Cb zoT@MT4hpyC52|nKA+=W*b3@C)!Oz)7OSRUww$_y$Rp9t+ zqqzkITJ;D#pjm6BQr5L11goSD@N>2i zq=IhTk0rEm*$}oJIZ3HPI*fqm&VYXYfF4@pX(*1h3>M;D5?N)UQ3bg8B zxGb~!Ab_vFrKQayL4BVGrZUvljTEV;EBxYQz9tPs)ylvY}Y4S zmq|6Xl-g{=@HV#VBSi#4%`iNS?fRs%Z5V;djX%TiF}CaD7F5uBBwAB5l2()rDcm5@ zT!IQ(w?J!aYexur*}#?c0?jR`pdBgDTAMOW?XBhB*5NLJ<`xua)x({l<&hyF+uFf{ zB!tM6;dP?rrHEix4|hm}be06gmcAWXi6BG-Ld|f7-%%54kgP9%M`?aXC4vfCyFjZ; zwxu#i5?JOfu90eNw4Z19O9NS`Nd9i26to1>s`p``)o8cOQ0Mn$ki1VYG~S#hK9NX;~j&y2T>XORowS#H zMqK|w-=g2IU#S} z7#RbPimiz?#Ujx^!V4hp`%Sbfx;#2ZJ0S86G6h~2+3dS9a!{lxGFEE|f9*ROD+uq0 z{}_Hb{7m@K@Lj$m!50YJec->b0eU`qv)}KNEUVp#v zqlU*Wb_!_rH6rtclz~@-?Q6|tY@E-h={us{IMyef>KhzFfCY1vu-Tu{WkqM;Mb)Qd zRk%NO4DzkxIUPq9ed$$IEmB8R_e1JyWh>=i1)b}9O_=W z_D`VrGUv|(g)849C|v7q*6a=s_1Il1k?Y<`JS+MUY=Fa)yR(YBXY8M3DOYfK>Hlz0 zIm+K1R9=fO$QuO&d``Lg=aR&AKa(V`NK^Bad2jR->2@oZFIl!?IfjwZ4>>NiU{s&( z6Wpn4Kd(Gky)x*o34aH)8v?nCu>B5**P${Zej0SYgbHW}%eS)Jo2wroWn@QlzPb8Z zvS7_dfF)#b80g||eX&nUS-ibIE@km{`-rUm_mg9=J4p0yKX3I9U33ohHy54bd_W&( zYD3@3u63Q_*}dJBQR8dB;WP zAaA?q9Oq9AysKwbPwyt)8h=!Y9N{gM$kpE@yO;ebxxx4bCvdgbIf1MEfe)aS2k~D< zAOEFYAL^{|V^F1IYh{@JGiK6%+Ck(kK5D2}rrvx_P?^-W+D%gNAwY)G7gSNPv;4d&%8PqW6%~8SzgIez23iPz>?N#dpc#_<8HJkW7z^g1rJ z>#zwE;h#tOsjLji-^L92TRV`J*RR&<8A;-``n4qSTK$TY+sD7Xl?OO34VL_rbG2(p ziA=a^q5NGLl)nv@_LQn<2ava^Z|Im~y0iOsVff}R&M#ebUcaYZbY97)=w{;3Kqq_* zIL4C-jq5+5(75g|Xx*qCS-HRbZETRgwQJ}m`p~+n1@@21fc?XmZvW8spQN|>ye-fv z-qstlH3tWb7s(J_&ib=^+6!C5K(~8-k$y-y3>+WQgo$=5pUe0P^Ym5!jj%7jHB{H} zM&|2VLsf*$KX~5@w`Ps!yxW8E?e_Tn)-cc>zw@p+#c&^$WWMHI^Ach6)vckrVv&8h zt)VKyzBA;#IOh@UUiGomtF3e zuePsw_$>1pRs8%nQQsg*s9fVB7~L*{b~W{8u~n+(t5=nN^~#v0UTJGWzM+a?-^vQJ z$((F_ukT{KV%%&L^*P2mV@IP}|5kqiv;U*x&+8S)4|qmA<69YT!wG?ZjNPHV9vg{u z#FqL_j?LAsjZKclV|w)8(f6aTMW2a26ul-o65SX*B)U^{PIO$ zp&Wb)_P|WPD)?RSgWw;7TY|p{J|4U$cs=I&Bf-tVY;eC|TW|)l4So`MF>rt2ia;*V z7dRlWLtqa4`#<%+pSbUh>iIF*n1BsIg0Cjbh@W|a$si#LSb_d3cDI< z6#)Ut1c@YxoMv}trA4cqWrG62HpVu#VRr&xY?8?~jyPk2F*%!@qlhLak-@yLs=K`WyOv`tS5J^lp8z-mFKoH?)Vf>$NM; zjP^e(b(eM)@!Ob<7QrcF>a;6-alHSp#o<2L{xWzr+5%ti^Jz%X$aaBAzRrGL1g9na zG!w-Z+m8&0bx~|TH6Ye#P8`rkr?U?Q$D0p&B)tzF_U}xSXFc@V!~U@}Pesw;R)cb< zCS$oyqLU1_4CZn@Y-bYf5&wibW6x1gK#Zpi;c2JJn6H(YE!la@*)&r~c-Nt`8FR** z*=Q_9>aKDjgej9bW6mf8vaXhG>BqIk0%l3N&8=yb{l=VNB_68-#F+G${b(+Z5Z>Sb zE@{K4I~fQ^w5F{))@7;pXm`W^|+`F*6HJ>;*PYOL|zXF(jRNpEh|eo%Jr z1_`Tuzubk>{;oYV&S=xT2KTuut&BQ*cyA4^v2PD`t^m2JAMI?kkdALFo!d9DO;$KJ zaN2NyeCMxg?H^iz;ogaIcFb^rbn)ProyPv`5Z&ArQ$kS zqWko4!l>~HGYvFljZG(1wpN}j2~x4t5t6`YFiwyJ`Vsms_f_pHkF84fAC+xQ2FBoSh=YSSbP7!fWg|aRmNNvn`@E-7xf(v zEx)*LduaJZev76stFs+2`=(pPZNA}Faf7d09nv-J0dxPB72McsvVxm>l@8Xf`43on zMUrzvFH3T6=OsH@_e2Oxz35hPYg^qaZtw-$ku)O$YtKt^Zt6Kn&h0!)lPra)5!iUf zk@50RJ2GDOshF`Nx&)rdl`WMgIX_a-)Zxw#qu%Iqe&~nmzX%&il)-J$V*Q0%B5M7G z+o9h23%A1IG@)3WML}Rsav_iG2`=QJJx(9rWhc|o?cW<6fgXPh9c~N~#}5Gih$R*0W#IEZLCQnCSCH~J?x7;y zMN)^!5~I$@$rAlA{Ysi9C>B`=Ba!xK+G9x4TumQny(-equgh{>3bqYt6mE#`j@{;2Ptc5zbDQL{3P*6;`fOkBr=J4iE;6d z;}7DDz|)ZTKRX_ay&bzd_G@JMcf@v$?HGLvJO5o2{Wi`7oQqQf-i_Rg^8kO0{Qcc= z7T`PK`@_EppB_F2-|;(y-VEK0wfaHi3N(i_qsLfjOfgLVGdKm{JpYh?1s2f$gB|#; z){Aq3eSu8+-)i3j_kWSrps|nfZ~SlV2$;zhW6E{FkVBD}I08U#!$$TzsK^1< zk2q{(1?Yg9M;tb?az>F<$NCY6jjRA2YqcX_Bin7oPcV|~OdJ6Z*={QiaV#{CI1FUv zOe4uo{fNUrR)B&vFp#a5_dE#60oIRzhitXH0(3ylBVZ#lYpyepT(N!2kEGI0c) zWb4`q5J%lS;;@lD4`6bD+f#GMc^}(Tb6S*)8>#!(4{uM+`G1_6Q$GxTvNaYdhgCT@ zWb?4YQtoh{P35{I4og`93f90G0%0DmCKsLSXO|7 zHHWc`1UmHqEC*OW>@b!UpaW_ib{NYz%St^M%K_F8JB(!o=zwa6!C1CNVBusesg4te z!Bw_KU;*M-XdVVj*=~8z>y?AF9AN!0xXO0RyMYd7f z9Z>V|fsVCIS6h14yt4T_2RPQ;K*8Gn+}d26XVX?TlWQfn<^np_YKK=iZ8g6mi*r>~ zHvaH_PFrz^W1)F?UnidV?K9fuwUx`B7~aQ;#|;#$?d@2bH)qa_dF^Feez{}K4Roy4 z4li?Rhm5y2q`leeoDO8-@KUFC9O9^(hnG0<%$w$ zvuwWVLdTjLC|KKzTWg=yIkW81GQ)dvYc8N;En*zz`F=J3veW5dDF$H?A)Jakv+y1+r$egBNmiGjUB+0X&zUqZ7&JDcAMerg^a zd=hKy7ntV-PYZSh4-W1ToD$p-nf-4DZVBuh_*I}7*le7ReJgeU>;4D)fAe2pe&s*S z-{oKFPy1_)y_4@GpTTZ}e@b4E{C@KI3X;yD#>~*jYGX;PBWUv6`3>eFeD$zm687CqxgyJj2AuSCKa& zk4J8e{2_8t%r_hy*)uXNGA&-RB3C2uwceBAb%uHerzt{XR{S*Bq z{a^aE`W5=w`f1o7@fdwyeGXXtJ7`~NFKKsazt=9*&d|0P4;X(pF4a1;m43?jB+SsI zooh*IETMlSXG&6g{w_Jgn5q4uUtp0Y>FMEA!b;N9!>NRono3E@-RExyGSH zCZ{MGW@WOXVb*pb^tpa&&7O%*PU0d~o}RO8p;$qBes=%5+=g~%|JEcuKiihEq78(< zX3JRFdP)rK>c;t4R{PX30V_o}1ndWb6{(>V)a*uVrUJ^{GOJiMwatWo<^@Gd2Y7i%Av&Kxi6|Bbe zY~%hcFTrXUrwn0BvAmyOmY7S<3`HsP8@r?r7>&-K`jK)wrJgY^^+iBe8SEc&K&iMw zskg&UeByG(f{S4O&b-HW9lZ$__H?ghbjf6z5L~&KMK@g*Gdrz5pYd6Lc2HQCOYUr4 zZYpEN>51nyj+NaBWpA*m(m}FFItR0x$&61D!t=ntO67)mV} zAVfKDz?hZR)t3ufgp+Zq=O69i*y$p>+1(j+0S2tk-Ri5H>h05td zKV6*Z?_~V`WZ11>mnP&^uMkM&E9n5PsuM_5S5$`VF%>fzaRGRvl87e>|aZ zmQfQAO*`?C~}_! z_)BM&bL^`7Y|AF1w$`blE>+a2irQ7tajNJTRdkdpI>Nd~?8a#kPSPSbrun`# zJbI|j_vDhU!?nzJ<&uKhd`B+XK6_4kM|LjD71u77OA2c3=W@wRX2yIWi(0!#E-9$B z3+0m7s%cK!eC&5*4M3)qH^ur0rkx$N`If6>$L!hJv~!M~c7f~@#|<*IcD}15w#%3` zyOY(^eA88utIap$lJhe2aX_VW^tt)ETvAY*|8|v3&+F*waB`}(^IRplTKkz?a&9LM zbjD%Ytc6~aOA2c9RaeP*NF>iXr!JbWxJq)h`LbMc4o*aEPtRpLVrV~=OA2c3T)E_| zwmF&X%z5N>n)ch5yeEV<;&%=~$CW_GYWXS9-BQc!C}SIL=k(m3;(?S-Kg zTqU_$%ezaq&Cbs1a(cq^?vjq$d`>PoqigQG*|YeaJtCJB)Y`E1BpB#Ek>;7Qr__$J zn7v?(k;UvCqmpF6VWiKptioi;){wjZQsUOcCHT%hHnD4>BK|@A z{`jxrr^egkd&bAd-jCfIyDav-SSGf6tTOrznEDq-H$@MN&W`R7c`b5hD88Q3?F4(w!pW*ctFS{U-f#{dE0!e78^14Q;FT z5AA$yv$jT?i3)rFs~y3tehUs;-GJk}GHbH~$7Tsf9$6gI**UPaBbd{dA@-=2u0mLgZegsqZM0w)6meq$^C0kjGj~~ILy{+7P zKShZtdt149f0uIX2&U;L!0g6uMT5C{q8VDRXfP#DG=p{xojAshU^bp=)+uE${Z2Fk z8x;-a+^I&jhDmm+vAd7p2Q%wbqsE4*bfW1WQv6{4oN9842Giz5(?>qgaK#)y<3})K zPMWTdCnpI?%$3_pmZ{_@$Btm8oZ3`l$J98{^r{-nhf@uimlxw0JAw&tqS@fCZ`BB9 zz12P?#DU3fQnE*Fcg%28jl0%kM=-HXH0#xt!kjkI9Bw^A|8R?}i6l~JxTrl^T#oq8cLGfg#Whry&Y)u^2rv(Qvy4>LmGn0h9fF1NMu zBbaL@fp_(L1&%ppT1<6?NoAtRx?5uG$R4)F9$%aw#*ZwpTxADZRvxCb#O`)6d!QAH z?PeG2ZCSp^Rc!pou8wl?LPa^>Q7&BLQjQ&&XFF7T=v+&~Mr$FIIhMiBtXE^rwu`CV zW|pO41Gi&v>`0rfQOnGVI#E#fJhIp>lzkHpxLU>2KB z&cN4nnXTGJqK-8;P_Pzptj)v+^ek-jC}w9n!1|G}W6ce8K(!+wwiw%)ojq#?Hm1XX zEcK{~BSE$pD?l6z%_9L8PiJRa2dYwbj`$sGZlGhW zc0_k-hp8NF>&K>59LU5G&8Z!SIO^sRpA!%Ep`HuwLz&hd{l7~Ob2;l%Kc|}6SE*d91G3E8(EDMhMQ!kYNQ2r@UYx~HII%Q z#=-8vTz??J9-CuErUiUELf?&b5H6lDGBx09fEcSJ*_J-+H(_+?P#Z~t>VR(`;Ry!iKdwDvWy9w*wJ`X@Bgj#_q95Pz&(wRM9V zdIHJR-#iuCwf^7K7z;FAG$cMk)8;i3jM?7$wD~uhS1Ohz`ybq?f7DCPc+Bv_4{`~iCtQ~Mq`$s52!KhYb&tFc9L%^PB~ zBC}sopyGy#n-akd~M;&%Q#C^D0<}U{f%Ue~@-pQpg@D(S`TorFn%0CK_|e{Q{FMnau1t zGv~}=OGjz*uR9|SRhc&bB9xjrtE;1PUWUEVw`yHNDN(6qX}Hyv9d#! zRD76PC`$}5FJ+0oP|wpeUCRzqb9WSeR@_+eq3{z4x>oA71xAkULb@x7GpQNe&$7Ou z2TcO14pQ`=lO;&WUqSEG_1P_b8OF!Mz}zoLdBdL|NO>#w(e4Bb?K#kR__ec+`(|=( zrB}jpI~(X@6nJi;hlzOU^-RPI9zP!2wCE_+w-$&?!L>M>hZlc|xeN7+xvI^q=DDPzUV;_SDw)7G4M1jZtuW9EN z739%P1TogaEq|CiO(=-Vvz>7G1hx+E}OG~S|Pt@XZZ-DnWLDWJfN ze9?Hry7rlknSqY}?mn_sP+3`-QKc2{r}k8(M#wlsmFj!y!`9ojV;9}O(j~$@@V-lg z8zJNp;cnQI4w%Qo7KtuZd7SvW;=R-!;%_5ptPy|fd+29c4TtiGBIW#m|M#39@Eml0 zz$dc_k7PM0xGxQ>8}!~5GN~}2J?Y=2!l=`9E@}&;Xn*S-%=C13fFr<1$ZlD|$H{fF zf{&JKX&szZtl&Om{r`C17rx}P$!nA6Vn6?blC8;T;@^qe5|<{voj58nKe1E%!}tSW z1AH%@iSH4gfSvpv1>Zg&>xu0XYmWJ%PeuP6Jw19vv?Xdpo{s!6G7>pHvMe$w62d-x zw}&qae+L=;yNAc)JN>cHpTP$>KD0E1gFk~W2LBnnD0p)4h~T{7PJ#CVcLy#HoDw($ zyYMB^&3~?0VZ3SFLv|%JHsDl(8AihYCRY0|^`DGg`KJ3r`c`oC&(eGJ zCHh2dn|8nUEA9K*q1t3rYV?0o^H@w>jHRp$HmlyWB!}(WvP-(jag>=J>o^GVnZhQ2 zrslE0S`O{BJV#^EwH(^H91LBb$3pB37RjPqPv;u`oy0*{kad9+zx8=6%(_5|yQVzW zXy=OV4i*v-c$J&-Sg}=ciqob%)^Amu;o(@G_N%}=oMItZfhkTK@>msaqc!aSxA=fwychEOmicVRV|mz( zQd~CVu~h6vDIRO{ST-gEjZ7boFDEmR&M?8;)#kB&EI|}swRtQgOAy7;ggjQ18!ShR zwau^HggjQ2nN~4BA&+Hcrd2Fg<*~F(7W+|!gNM{hRF%g9GuJEDtMXW8=6c0`Lmn&5 zv?2TYFp^SgyIO;WJXW3ED8*Mp9?Q>el;W{Ik9BBzH}>_dpr6jd6b-v9^?9sEyFiM+ z`aG7VT_D9>bsnqKldT3^j-#uU9#EafO0@t`+*IeWU@ZU?7mazWThspEJDBb5&Fr1^ z961{ESj1Lfio3=NOhzJiaSQZcw zikIp<)&l4??d)8Q)D@-Ss`JefK=DzXZ;}9ti~4+{-8(xwK|vf?l*_SqtD?$f&zD^5yfYV+e=5XDbzew+)UIGUK>IpAv|U79#joJ`D*71WA@ ziTRxbwPL(3zatjuh;d{>WqMYLZ>emYtILmZV-z=a`ARoN@ztD91$^@@U)>wK2e+)u z^^$curAp2D3QwTowK>0oCs1)cC7%rV7E;&b$e~q(IDTgB!P$YKo6hrAj8G{+ zu+A?*7_(A2@tID%MhFXCP1*dFGFlPm;k}r zz6`PXi2?*``x1l^GX)6N_hpF9J9HooBV=V?yix)oQ$S&9-;H9-Ob1mvg4KP=U7u2~ z5v=e_kY0C0wIf*Dmm#VZtn5n=#=#U~!OFf2u}Omh1grZJgiT-y5UlP?5Jt}wAXwp- zAnXfQfDE}IHYZbn47wnUoGCyC+z_Q>jr6-AD);*Y7lg4h1xI~uh|RO44oZ+IeusS&+&`nBk|4gwedr6)?aIUY}|+a{vV267rO#8 z1zTdr#g@lfV>`!m>;U*E&iVUAbT~Q?Jv_P?vj$_4pZ`+iE@bEbEOKh37nuZmN9ISS zL?%RH;m^Xah93_9HGEEZbNEpI!QsWoD;OL4Tj=Z1OQCy0n?uKimSDAi2miv57JLU8 z1rG$T5B?JS7@mfm437)$A6$S{|LUL?csX!K;HtnGfepwkI5Kc>V4uK(z>GjsU|b*; zFw8H_ZRT6%R`W6Q9`m2(<>n8~9&Pe^mKn3KMQX(VF7_e3 zi=K;Ez%0bN(We=D5b9r&jT;;RnOsg?tBCx+CrL;S zN?emRZzX9(ipso2GD7RpO|pm_BxbnvFG%VWmtb00G_4IvUd0t@ZGhy`vXWyKi@&tH zWBw}I7Np|KNy74m%-Y`Wt}S@!T25AYh2+@yZe{fLn^t_+GJ5;vDn6g&>bvZ(?Cy2; zw}{Ux2VfrNmIE*sb4X6L%Z2^Y8lUZ=a2Rb_8*w(&#Wb67I8<1_)JeNYlIn|TGk9{vcU!{FYU>0K-U|P z3{Uq`GP|u_N@li&wut@CvVwGb-0AqTwYDIMPqXiR_N^PA${=j>k@yq_Vg4pF2-|if zz6*meuan5QK!z0lQ4?<#WXu%Zg~i6PvW?`tGkZ9~`c0Me)3}w~%(m8EySYU`VCCj! z($_3ROJ{a2w(D{Tn_55Fq(jwdCkSQccXp<6WH=*vnl}q&1f6-4P-gDDj&x>b2U})0 z|4HkLvvFF;B8WA9uA^Zx*_cIEbMQeHb)6`<5=@#mimuu^GVSvm2C~*Cmf<=rr`k7e zvasBz-GWxQ!hnxvypfCr!b6~CR(4jpYsS3!_V{i7gLXS!NCcQSxJ%ENndzLF#%br4 zORd*kS^#Jptc#q%)-X0cHLQrt>lG2sbE196E|_{*`dM+a^wXrLi;@~rFa9Sbt-b?! znAln}-rI3wZvfK&Xdz3it*5Pu3%hDvZqvdZHmw(LaLHMxuXo8=$FCz>AmB9R!Gm2V zt;A~;4YO6FXqdHX`Vc49GM(LwT@yk{auy$ ze@6#7r=^w$bCxQl6Y9+s~Ta-YsbrOM7`EchX7_yyNjGR z?3h|+DY1_hd4;X)l76O^NI#7urJs6P^ahh5_sQ7iUwL@W6&(+==y z2OtArYx1GwEy+J8FHIJb-%9o*k4vsj?u{&fmSlA@i9G_gffw*h;sNXwa82SjiHj3w zCQd;%z_Ez~6AKbk5@QnvcISI4ep~!%?cDeU;0yG{kBaXdpB1l-M`GJz&&6(u{W3Nj z8^At&d&cTxX7u0De}Ox2Ui2iK2e2TT!d?Q`M}CVv`tsOMpf_?9&ik8(6aOYe5)m!D z4SNeb6228D{+%B_4ebAeaY{fd&ifk^_J!UGJrTMwbY*BblnWgcY733WY{0)U7jRAR z0$ao*oafx`oH12tg%zX{g=b>=V4pPDC|M`3q?S~F^VY-}}d z2iu@vY&4F-?gBCYJKBK%UjLQ;)BWrG`}wE%6Z!}GWBQ-<9QBb_Bdr z`>n6RSgh+Epc8aj+s3ru)cIULnAz+Rc#HNywJ~4UJF}hGH4NW$Jsm@!gyOt;`fasf z%yIZyHg!sV=@{5Z52~=m!2TRLyxt!3;ONnE5FX|u z-oV#g;H?3_?N+-Vw-2pdMTukl!rkvy z@$2?4w~Al3`zT$lGYf;<)V*BDjoib9y!hReP>04 zr(WArE<1~y{E>AwPfD8wxvZd1n|aF9a`MoFb16?u%svm!q4Yp0=PWqYGD-5#vNLD2 z&rHvr>4dt+Sfd4(*R9hQ@G|K(Y`xnti|qxRHb;0FL6Vg0uEs4!nS~Tc@nk- z1R3_W(Gj>w+pJCi8wb+^`uOF!%cbGh=uVf0U#L5*kpYeQE3x@Mm4-o4w??WNFzDkMEDx*nnmyuhM4aD)D#4OQ{*+ zZ~y1mS=pF?7Y+-r&(ObZSE+vxyjAR{gfj<;61>%yoFD#2{hvEOz*}WD;gRxIXVX-I zjxBxbEEc&@d9W<0crlfhCH~Kh<+4Oi>))a&4VE25V+cPH&x^uOMD&^P6EUTy7zg2H zYiMv`Zzs~_bMeJY9CIDdYm#UK6{DrFI zX0H?+uAoz+RtK3DzQU#91}}GMxV6jZW84aIF&KKn2ym%e#qC|~iuLL=;f2A)ecwgfQ92Zw!p$JpoN}Z+%jdP6i6rp~v{vds~fK8T=adGA4E)nc~ z*Cm3rpSeV^^?-GY4v;CoN`K`+!q1AWsp-N`|EI<>;io=bKgDjFffj7(O7h>$M+0Gc z2q9uaKEuV%-!D}9+22TQ_?GkcjTKwj-$-mY$NBqF|EKJ4M13S)z4Aai zBJ#81g;cBX)BlOFRQRd4>L=TF`Y>?m>~D-(FR;HcWPQT^#(33gjeY}oU{ZHlNBQ)6 zJ*vH_9hH0`c^6LhJ3o1H^62DpeEE+}e3f_$U;Xzd{*pKs-}}cVRwj1CPW%<|&*EF- zcWd{=uZ({y-l6?IzBpbJ_s3qtZv4NG{UmlutTVP0`2m6GtI^w|f5MJ|=R|*uEdL{- zi=s24waE1U0^j=&N3PROj{G8WR^;1}b&-Q2yGEKLsqlZo{|-NdT>taKCnC##PPj7k zUg+V_Uqe6Bt_*Do9fSOV`ry|%vGCg9PlFqS#|HNf&Ir~8E3nT0e&D&lJ=jC=ia-J1 z`CWkn1G@$q14;8^tnS}wUXPrDl6i{RWgcM8GbfolnWpis@uYE!ai#GioH4k+kv3BP z5B-n$|KdO2f2w~izW1kNUF!>+1aJ?|8azio5vKqw(*A@-6aSI974nsHIIc_-`g~uQmMs&GJz$0D0x$_zdan)NLd`m27W~bjf^C+DM50~RLsn)F#s6$j zWET&e?JhEjEDFh29}z>d(BgibDJ zrszt7AZK>!te~l#C1~>u-^w{s>!D-zYCLqzW;L1FC%&>IvcncR-0Vn|qG9$XDjH^u z?(OYZTfGjH+jaOBVa+$5tj4QqW_O&oni=1jEVMeMS8d4P)6SXMj*RuxGSfSGYMJF7 z$*PrOc|`_`5Zv$>FD0{E>7`_5Q)J%MG0PgELXt8=J4jMyAxUO{LCkPEV1fx)xi}NB zB6RVg6Nw~bHET6nA&St&2QFsC>EZ(yGb3Tb>|kORct{j713^*9iU-J?cV~_~DFYEQ z1C761$i~HK?3WB7ov~kHm6R0PVuo&O@9dZ}KT8N|1Z|$p(1OA|i#8hG?!+vih$%@~ zpoS!6k@_vO9qWaBpNK9BS$Rzqvf@6nP|=A1vN#n4JR3Z!S1Y2_OhshuqlonHkb^3? zt;&G>yW(Z}xBmY3I9hH+Z76bRp(!-lQ9{`stgTg z5AE(8T(@*%wzr36KZn08i(sa|D2rfTJ}0LHa4%M>hV16E@(||d)AA7J=o8wV?4fe? zmOeK0hCg;In9+~i3TA2>9;?>Vir(_w*v6q}V|H0KLr&gc9P99hUP@;B11}}B|Gr(D zKJ0Dbe6p>{pgx@Ow0;wo@jen*GtuEdrIYml@a=uQjp3CS~E`wdu-KYE`41k^C;!ze$v_0r>>C$Kms9z!#7DH%6BMx5Bn8WnGz^9YvB1z?KqpJOF^n#+a zv^)~NOBS=Xzf%^o3vdVRoG{}024%P4?Ii!d$M=a3EB}`#H{y$bXYBQNeIlP|PwbhP zh;RId;=jg9{!v)PkAcyDJI(?4cI?R5+*mUDTJ*-~MbT5Rc0U(u_iy7IfXgD^iX4V> z0Ak@c!*_?T3V%PG2`>om7w4S_CI8-F=pfS@*_-Y{KbEk{{;U5*ylg2 zzpCG&|6D&=KTMykS7;w<-j(Kv$RD9z3_N zx_~ri0bsYY2tcN@0I*w}111)b>`W5whzrIU;aAt*-um8vZuui1iR`o+%}-YT^PWHw6> zC79X*vYI7`;;5#8jAoLK+Ya)A@U_GJ)D)1+EFu&)H3cLxiwMO_RRKxNB-0&U@KL06 z-l_uK$du_74^;&uFZ1#q_K~`5>#-||hkYb2bG?Usq%Cv3V!ye7q-B!A*`5IzsecPu zLqum|-`~8knhVHX_5dm#n+wQc_5dobYYNC^rj2X4o~2Z-rhsH-5urG%DIk+sM0j|? zFeV_{JiORB%ytvBd3dpNm>I&ui=D%4BW8Mdv2&Oi!o!Q5!^{vKUhEuZ8=-EEQd2+< zvryX^9$t{bEFu&y)dgfQ)8W*$O(aVnt}Y;dSpXAO?Fj|sDl@HOxvGE!W#Tz= z#1gN~OR5UUOXhmTdQ}0b$Xu`3A6G#3aSgSvbfIwtBpX{g#qPKQQj9H~VzaJ*#A2Ef zK7@G^y4i+eyRLw=Vi}|Os4F0^SjH&6nhHoPrW?=<;xN>8Bn3oTGG$k|setTa6{q-Y zDj>yJ#VLO43dl32u{nM{>WD;R8Kd~CD4r#a`n(^M4S8f3x6werbF@*4vxYp9jNK^3V|^ZZ#&lZ~ zvIWx`a0|OQmxNul`aCj?T_D9@eIB{SE|7;iWE%@0&zq?}k9=bn$ip2nj$I(dU3DHg z$5w;W+9`dbI**KF0id|4&LiJg04Oe+^2j!JwqBwa%(D%f@<=&Waf-vHJo1iJoZ`1G zkK|+8W66c{?kIJ6WFN~I#a~^1gBzpxs?GOUuU)iTdRDJCzupB=Jk{opcR>_KP5Ex2 z@}zTkSF9<&&I_lwY|5|o!YO_m^Ii5fIMzmFn|eJf*_h9Iz!a~I`A!d*;_qwfT$-qBxq8KhECTf^V~SNR|v@8I}{n2eB#nW6OdS=Tq{>lm#ncOv@h~ z@GWJ-mbKg4-nstn6LY=TSWme%r{#|t1+IiLEq~-Fa3z?j`6J4152wDxP0b%(9<78j zHGf!nv=Rx)|DO^%)|Y%f`KRP*$s?1~lN#3guRxxEGJaWnx7hvo;vb0Z7psYW9K9=g zIk@_(qm!e7$n(h8|8`^z_WAQ;Xa4KL=Z1&E2ZU#Ylc9G)cZGfvIs-!7YXJ2ke>Cy>~#0`4GkVU(-p}gnqE{6lQtJlGFI|PnGMMgjphSSUlPvuev5Iq z%T~)E*8c64G*@JM(L^#SGEa2c+;fJJ8O^Q~1&#K-Z-_)H;d{5)*iW&KJuqDX?@@0o z9u<~07fdl$c|s(IG{kqxIhCNkw|6lPa9ix9n+3R{+g<9~^g_0{fN68LX~v;ttVwQZ zgm0C1ErES+O82kj+TL{VSou)Ew7IL=-&#~`+MGY#INBX4$4UNauy2eSgM|0JzTP}l zxlFe4R@Nc0hirF8maN;h4A6sUto@i;`#QT?I&Df{Yk#&2TQ=JO&^lUX&&bT0IX~^3 z72*5$TJuz;bN$cz^1b%ISEqE>>>1g)Gx>=b^ZxhhB=}03b3N{2x)5)z%)4%YIUeJQ z7dmau_83n@q|{qz?|StcB9Th?UUBtBvaL5goPnO@CDKCD<}BC!;Ehe2ZLa%4#!3EZ z#4nE;gM|0JBt7uR2?MUCok_m`)1ga!$@7xwWFYZG;*W_RCNhaRiOTp}@jK!d#ZQSJ z7M~XTGWG~^_kVzW{1(M(W4`D!(SL%`e`@p??BLfJ`8;xOBIClJh93|A z5j*w`hF6Ev;W43Yq5I%q`@iiiu)PJgx4`xm*xmx$TVQ(&{MRio#eb+XgMeH(@-FT% zeSlXZ&DZQd;G3bouL&oTeGF{Kb!Oymd~<(72=>;SD+v=<)=6(%2*dXu)xL=FeMN}< z%!a)ip7`o$t{@o*?%_fN`97QMU&CtxD|CM{`{GIsvUihzPKOY|&D=>^_gBKB2TZ!Q-5s-+Wc zQ}^3c`y$5oA;~ggHDGf{(zRJcsM_Ta=0fqxvGSq^8pQ`*UPP4d{i*)LWiOsHO7w#4 zMOgJxM4ni4&*}cmC^*qSjq<(GV-WGacf~uznl~AA&pVlWhTkO$ zJ<4O2$(%2a1#WwyXBy-iqj?w6zSp~rQ{9*3e}2w~4B`LI8mIDsUaG?X+)S45HOl|j ze7@w1$y<|GCV!CZ!ruRrk|AUP+>`h%@&I}g`y`qZq4*o|d*i>07vlZ#1F^q9%LVvu zEEC%+RvrBkrvUybdS)~mT^Oy3e1^RK-$qW4WFosocErwo4`V)HBz$~$S-1ha^*xJB z{(NX%XcZYjSK2t&v5lDbMXGf_hyBtT>-i1Pi+i zSP5fV5rk~Q?GeHljoVWMJG(4g31wOlRPC~GC7AI=@V4u$U=&)>_#!CVwo-94z6iFq ztyIi56hYJ`gvyT0hHQUE%30<7sfHrR+HREMsG$hLwi~5*oK^&B+p0J5xN1}PV8^;; z*y&+#5q4x$sy3|%26tJw62r72_}pdTN-%Xru)D4Miv;6I@2x9>;4Nbmw{=C3yk(5y ztFZ{8H#wHhYU*V;Yhc|0Y8FIe5qxh2rg&^Dg7~e#6sJu^Fu)1(QgrH(nAB7R7hJ_D zZkvkWgsV8kZ&lIehFgA>%UV?gH=JObDdvc1@7Oz}`t z1XEl@C_ZY6;E9U}#Yj8S}56~PWCHAe0} z-*}qegH=Va!nt1YQB?#Zoa+_)^+mA33Aea?i0nyyU=CXuE0w7)f)4HiDW2+!poF_X zio2QuXyG(Bqkm{%-Rf@jEn zMs3Bq0@&a(MsZbF03lq)D88x-HYeQnrBtc908Tg|joSdlOLYNcZ~>sWXefXMPM#0# z6c@Dx(7fsWhhs%IVB}b)T&UUt$lVe|aZ_6Wp<99| zj%o@Zaa*;u94UTk3gB&v2*piJ0bFenp?H~406&|i-=aE-hY5v4xmK}0p>PP-dRSh= zw9al&ymw6~tmaw|%d5Cnv0Pg?*lxU@q3mETH@Hp-ytZ(V3!?a_Ega~AD2^r+4zR=M z$*Jj}6AJrttzv#cVI|ipmM0cg*h$en8Rs+r-Z~Qt`w42r_Qb-zf?6?NRoKUVq<63P z%44l6>@DgQ^HqiAqF%8-p|H%ZT6R!PT%1r?%C(B^356wGt5_!M|I5vBzECE#d#Ez_ zLGZrdZ;+XPd~l!OPJ!nGR|ifBtPG4Z-!^YB&og`;vPl$0gpu9Kq#@ zjfo|R@n8$w8vkj0Fuo#Q6MH9iTkNOE8rU~BIc7v(23O$n==Y+T=&sQTkxwHJMSdCi zLFBl|o{{n4uforSuMM9a-UzP1jBq6MX6Vk)FGAn_hL85`>g_GCy#=+W^&Xhpn^fH-@ZuQ++-n9hw-61i@M5`?Wn=+WJk=BaR=1vlG zY&3k@+_BBba+anSR*HoNe)~7ZBbD*pHq+=R<6~WRa|@mGc2!|at8wIiT_kN*&N0@1 zBU}oKR^-R#H@U1}5B>Js zW>*|LxU9H9X)`HzKe7`)u_C#m@%+==P+FN>>}Z@xI`Kq|NCPYui?9d{0YtAy(u= z$jFG7Hm68+QBi4gvP1#q2+11_>8UavC8Y03=`vzhQF26+++TK)`il#aHYZ8_#a2sB zXgE)JIg(($$E8G$u1vctkY;*73tP|@^=Y$7O5Pwk$u7^dM_BN# zAR47Bt$@;IgEVY70Lc{%=Misr643Xs^uT1+EN;lLvs|&&d%9M@X|pbE9Lt9Q#i|qn zjrF0?!;lL29+U{*BJEu6ShdnM^TMUg8tG9jVkDn5$Op>$m9W11C91n%v!ye$<=8e? zqgG3ITzPcbtddCgDpHDqM*OdDh(s#kyHC2)I&vG@b9f*r0Z)|fG!IzXoFFCf2oT93 z4e{P`P9>=C9@i_66bcu=;;ga@XV-to>h`I4iL(u{2Q~|2qCm{2w^Y@4N9%?C@V5*J3Zku8*A^8;l(o zn-NPyKa4(tGyDqCLF^0A7EMInk34{#0Y)MNk=2nY;V;9Fg?|(NPWZs^E}<{sX8XVG zEwH@>wzt6c7TDeb+go6J3zTVr?Ee<`QOH6y=c;^O;pJ6&9X98voMJDmIa}ovi#X}! z3omTGS4WRQ#QR>6S*miLsQ8It&XPH@-bk}e=E%w@(KF@9zC4BQjZB7;2pQ=Q|wEdq^jEfN8 z(_;L5nnns>iWt9&F(-@n8rO?{Xedv4`x0@!C&i29n!}+NV;8YMxB%uPu|JfV;_*G< z;X;bxaWO+eoW7v}G?Pu`y(V|eCNV3*Yih^$nA@`C_fhd`vdIp4SZfrorUEe=n*BVX z%2A6>=!JO1(~$`CJuGGnFiXk|4Q-HmFQ*FBtZVfj>$ICbm8idV-AW!8uzric)|(cm5^=TSuZ?iZgGf<2Gv8?#!xhstBkD#HKo@@?}aA5Z=+ z`F(uoSDcb_DGD4e;j`_{^xi;etdjsd_wH~*d4K-$2P?dh)s!^(HEkB zi;jTvzaY9J_W!>d=lFdua!6#C@aNbO@cQtD;mzTL!!6-p=*7_Wp>sq1p_QS@*!_QN z@cQ7n!T#XN;H01)cqZ_-Krzr0SRSZ1zcQaN|6~q>XRy$mV0>iUZ(L=ZW*lwIF_Qj& z`)~DM>_6FmxPJ~#JBO)PNFY zbqVxeZb03=zp4cGFXazY14V8RsZSeM-hy1U0_-nAuAfF+3HtF{Cdumn*Y)s;X5rdQB%G~nT>t^_i$ zj8R zD1sX7Mky{EieLu2Q63&a3>HzI$uA8>@Pgea509V*yHOqO*fzyct}{p)iZ)$XFr|)Q^+nKyU8a=K8;W2H+gFD9 zQ^&IUBKX2CQ%VKviy#bh(7Nud2U)Ye2*$7rqy$x81Yg(%Qry)Q!4|d$2OPkd+2V0t zNL>+BVHu-1t1E&mEMpX3^+nKyoq(2Z9>g1y@<^#Kf-&p@DclYA4MnhsU8cOc3Yf$$Q%VIV7C|O% zvhH+`jH`)7Fo_+t63E0NsKkz1F+Q~jF7aY&97hUxpAW?!uv3fR7MDXSuBR5kH7)5Ih_Wf!S9mnV77y7WT8~Exd@W72T<|cTm)U& z1E{#JFM_yC`x)7Cy$hSJ532R8FM_`80x2%*i{LQ3K#IGjB8beiMR4n9`^)BnHWfi= zR&k2crXr}#Do*h`sR)uYef_3>M@jyiR9x(hRD4e=F7iey-s_7CS<{eOFYM`Ft6tms z;$8|!@mXKoQvoUNs*8Kr@6;q`+2f_Ly0}0BC~m5YyGsDYMPqR{`vs40eZe>H5X@i0zF)(J%Nhrh~DBmM_c9dU*P|aztg|e-|P=2-$*`^{73RH zU<6!-eE~<3-^Iy*$0t`O7wGRL>-9&lPv9Gg2e4D%xrvjpSKu1#5U?OIBhi!?moVb* z#-EDc7XL&1!uXHkL-C_AYcM6AjBSfO8M`)ie(XE3EV2To$99OmAAKx(9rh6XezYsP zJUT5}5&2k8MIMh_6S*+*-N;()lgQqY$&rfiXW^~d^WocYn&3!yAbgm1Yj}QmeCX@Y z%b~lpt3toRIRhI)2ZUy5XM~c$w}bZw{}4P&+Yme96Zg;M~FA=|9s?*N5~DeU-ip4Qc%&6MEQJbR#|U z2am=Iu3r$cH;Qh72O-N zi}5altHJcEX&cyjTgQB^^3XA#2Ycw4&4b9Pyv*lfo}U>x(5+zB4sa`&sr|_r#?raf zk(FG;im%`zR&YPdVy3%iVP_{!1ZO#$k$v3?W@I0?f|=TzcJ!W}?!JNU0qL_KvRqX$ zb9A>S9Ox;OVg{Gej%ce`V=obf%*bL<$citj#2MF?W#>*=D9Bjhy#yI6yJx~*gR?i%yzZ>+;^1uCG@xS$1R`6te%dr>r$R47QMY=!~ zvQT#~H$3|1(7xAWy&AXVh6XV+iW~+qsH7e&uk+tdN1q;Rw3$a+r>hHAoW8M}AY-xZ zD#%!9^T{c`1K%Ww+Q%2Jo zXOE`U?>XjkzO>aT7S#SFfCnqZdp}osI1C3v#d(L#VZtgwmXgV!co=wn_h-#>B^s!Riy^Y zs*E$rs`Q)P_l$knmA7w8uD?N_J;J?=NA@|YEH$9Yj328q{U-XH73_5k3{;-&Ax!mq z2#p_k2=#x`CqA{A+A92gCjYxa!1y2Ia{Vdc?*wbMg@c3r-PkcF>pYfct19+%ou#VS zBesn_MC7-7t7)}Q>DvXuc5Agy*dQru$fr!|59M|KD_JOVIW)2MvFFExcH55r=^7af zq!Np1qjZqhl*%>y?^GNA+t`=?t)CjgGIzG4r!r{&QSplXhyP3a550}Ngmez|^@!7Y zk(rW|HR%jV%33o``2PiMf1kF$wpF`N`>VbNyXZA&=j$=;qvVarD~xX$oyienCD!1p z48#AX{|^6U{%>OyzRe#`_9pjFwk8{~Ti{!m5BOE$dx>Kb^Alq*2k>b8y7(pWk@!jR zb^5*WgX6o$oAqDC6S0qD&tY$X-^9*}os69W$xJ|PEEIh&`b6{}*dyS_(T&me=>E~! z(TP!iIk-d62z(lNOaEu!*}%U7H|pmHei0bfP7UO=_P~MqJD3GX z;rstF^BVIi^E`b0pPYPOf8OlG48Sb?G_%SK81L#m#v{qcjK3N`749zb)lT0mD*l-| zsmhqE^S72tqe0g@vjgkx_6<%8KUr%Xc3!<1?eZEW_ z{$2dD#W=Xn=R`5L|11@YPs!s4Qd=v}8EZ@xnh?_>xVIobJ7J82+`40em1}l1CZWzb z?4Q#QDpr=+LMj{@cgn%!^^xR-&gir z8GU~HA2ZGaeiV?v6r!>hi8fDw=ertl+IVLssyHOxGEE z;(jYPsR*0X%OJS%)-nk0rG+-Q%ZoF3M5cMEx&5hLYHoZAS1;??f{l$16*o7EO!iW9 z<4B;!laGeROLOCsXkW0@-J7$Wvh8LMEjQidq2-nvttVE0_eQdN9mXBr9u004w^{F2 zaf5YsO{hW81qU;|9fHwXFEuw@>GnZ0Wk3KsAYsFN5F?#+5;EFFVuG!U=xW1~4hJ1Dx~`8S4$;K6dg3a2Gq)7`u^f zWLIQGrhl#EVT`AqJE-*3bNeal24?noU#XB4+~N+hf}2WOFI)W?zI9n7;mEjwxFh3b zW7f0KK7Vd?j>i#oX}Fz;OT(>&=`)Aq@sk54xUG;R=azz!oZGQppgMCKF#em51|s8) zHVrRf8(L;%X3tA!y5`u=g;s6JPR3MKr7d zcn6Z#ej}!=;K3WRf=BPSYX#m@woB-gx+Ld@G)d0w_|$jLikDL}RjL0AV;@zj&(y!; zdN;)*=w+7(PogheB0P|0+LyRv{h}Opo8`>c@YgPlQ;qO{TpFh$;jbEvrSu)p{uV#9 zyK`{e(v8_(VK>U~m*qj+#~0;6+}-EwCD?Yicb06m>Gt>8C@Ajm(@{{|<0li0HmibU zh+e(LSv$nr=EsVTTmMMWahu!1#*RJ>p9O;nYbfa+7|8W(%r47j28S@JI(Jw2Lr*>T z@`0zGdwO4df#%{@tn2B#Ky%HDb^-b&$K%*q<_$P?X6gdrJu>y<)R`9l|8vIwKRP)( z8OQ4W9oX0J`-!f^@>hlwn#Gk@9<6G^TH>D_YT*DKF8Pk)!6sH7g+$)LebzG!CQhC z1c$KCU{&CK?D~IUU?8wGFxGtCyvh8Td4jpWIn@jqFBsPt1tVwdZ?qU8|4aUV_|NtC z`S-z||6l2k>sRYP(%bc2^_2DoULP;kPSOt4ntY$z>+s+3pIu5I6fYp8ENkg>Rd;80 z(H8RmPD8SdQgmRt{Q{Zm%uNkgeoh5{jvP4xUMgOUhD!XPU}lx z7rQ`;yQUJz#gs~Axm(%Y+l|My;<2d&da;UAoHmufFjjGj-^LP1#*`~=`^A^p5Ff`_ zYc!TXGge@V*Txcv#tKYv+E4=3xQ$<2`qrRSwV}kg##U$)rMPS;fotrxrFd*Cfov=U zwoflfs8n1wmcTYvV2aPi68OdnOmSLYVuWL>0?V*txZ<+D#0bY6q&TcEF~TtiDekIE zARNp)WHq zuz#+9aGgZ|;GJx83B+V?tP;WG5*W(fSS5zW5~#}7-EGB?&0@bgrTUE}(3KUK;<>Q| zwz2|KoK}}WR<>?E>Qr%8T>?v404R>COJFAp01p>nB|89;w}F>^P{O9MPF-CB8(9E& zxBwGb04Of%ON@n_LoGVI_ie8)frV^64;_%=s=fpYvJ0fRYc7F*OnKI12hhd2eo)H1 zncF20kUfBk+vXDZ#~wh%bz=$iW9za~*C2YW^f*?au>|h10#n>JmcTw%V2aba68Oh7 z%Oi&mdGD&$l|Vn1F^apo5*WxbM)5Vh1QPOo^iJ%-@pQRO5XL<>& ziqi=tu#_8UQ+T|7 zPAGwy%(RM&2_?{xnO3n}R{{r_UWlHd0k9gy2|U)UbtTY`WsKsbt_0?>j8S}5l|VYC zshmBzq0TKzn^l#ji+aUJRjF0fEA}UrTI_@tVqY;ou{2FkE7m8LrV47scy(!tJ@WKm z>cNBSUR|0j0Tc(-rClU|;-aB6$$pU}F3KKqQEFCEinE4NlZsM2)|MLWR~F*YlTuz= zYH&dmU$v!r7esM1u~g?YuCRE;df3ELt)NyMOf1z1YQ=bMshauk?rYD9Yfj8TZK=uy zQJmD4Cb}Ssqo&dX`&|l0J`HqtZ8;DV(>?qHpLuI4jrYPSE}Kf@yl{%&=F-mgGr{(I zK>P6mfssEyn@eLofr{tm(oUX0#dSn)@_k#|)n}X;{#kfa`0(&<;VPpy^hM~&&~>2; zL*F(I3>_WXEmVco^{vLt;Em?rgO>zP3ucWm!Nume!Ck=7KyBfcSi zP<(cLT-+afJN9_&I_ybsTC6j+G}avRV?N@B=&z#Z;>3YLoH?)(rw%knD1nIEZ*1jFxyUk+dA_v^3e_vpXZ&(TlPGx}mQO8I|u&ZR5stdn`M z`LP^$N;v?fN&;~5r~oVw-c9G&#Dz>dVZb45VoCGEQLSM4@vI7?2J3Z<99;2gYF4=- zlwu0U_gIrevIqT@D)>4dFilUqAeka9a`2vTn0 z$F{T&pAy`{k07;{N6u{F0=p698x$dg+uf99#BTt?LBr=D8MAB6T?Pc2>ZhxR9OH?9nU z<`?6#T9JrSHd zd}iu0D_9q+$mR{6nYz@|0H@oYnYzRi;ZR%==Ea@}hfs~7;{(qIFGFpzDHv3XQKeMA zEC!IfJbgP20N?L>mZt~|jVG4Z!gsN}7QXKsrD@^#y)qpiUbmD{!DXS03jXf!tgCaa z;PPG1cqsy2H<#DKalX73zHj&R?eqfpe#f&sMZou_@>=*FDX)d^+dO?ctY-AUpO20} zbZ>ilpf(WQ#`0Q3H(Xwe=x+7&&56!urY;&Cf#}}y^gwMOx}ow~M0aL+Euy={(>EtK zpP9OFbOfS%a~ETkPsa|Z`|sk!lkte(V-i(hw< z0~H-Ndw`&&@#XO>2MKKR(zBQb>QVd~co~+=8=E@3gYEHRVRp)&c&xmd1 zJ|QRwkEydG`WW92wJx6-F+MlmFrG5*Gj1?`V_aaIVVq%x)GNu~ijG+G`|0~FT zztMkH_|Wh|vI{}#LuGXtH$rNQRlxL`2wQQ)P(Kh5t4 zE()9!I6N>XFvfh}ywCil)}{Se`@QzA_Hgp$REniG`?U;OR(BgiSZ6yN@X*i~Rrd{R6Xdn)=BF>HZV^NBR%M4haeWT>oUh z4_UMC=`ZN_>DTJN(1-N_{cwGeK2;y1ZPqe+PCr`V7D&4ETSs_uk=k6ldGG&X&{m6fBu$)gxJ!ZICU?oo?L04cj!+awHwu!YW1u zY)VKWKu93KsUjhe&_d|Fm(V)_Lg*br4J3q663Tba?9R^2&K~^!^SiF!_g%050G;P~ z=DufV>&)EqjIk`P*J|vS_EY#K(qHq&(B<;Eg9>Ed?vBkccg85supqlaw+(T?z?6+M*ZiEux&qK7yE>>De( z&Iw?Rbg&b^zOJGNIRUIS4x|ggo$spMY^VECwX5@+eNpY={AQn1b4ga>^50U?14w)~ zCThV(l6gE%FIGnawqXEsE6np4S)%8RhYdN=kCHUQnavmg>mf7#9V0#D_Hvw$ko>v0 z_0zprAU6n6&ic&YmQ8~LWDM8|dH8#7T(>=r{+_1;aLDIobj0BjA4P2T+j+v3~P zT;8d>qn807q+ zquGJ~QLwSXmkKsk_74nj{(w6%AH760veFleMppbH7t$5sM=um?tndYbjg|d9SyfJs zTK;~D{?21(80UNJ4Cg%Z+9Wva*ni6mtmL`Oz>55aJp8(Q?1$f8@{3R3wcLwOr#V&R z7oR?te4#itG5Kip*Ioy!%{g8NtJNrZL$i4%dy(eKLA*uTah1yW8E~tIl)(|k%| zR@Ue*xrr731vjyRr`aZ9ek=NOZej&bqocjOz1t~o z7L@Wrgqe4a75wZP`6)NC!}GZLRo#5kR zpvM#a|Hg`UDv~cIuSZY33;X|VllVCC7*_M2irM!CiKc`Wektn_gj}(Keu|UrPd_NzzTp{qlM^TbOrj=6_FPrH$={g^hFj# zs>7d#?+Bk7UK4H$$D#j!EOce)%uruwpHNHiyWn%dtB|3uC%6dv0DNn{XkKCd$XsJi zH7(;^<00$=aGH_9SVT3(A)eGP#XbNl^+v1#cwV~>bN0ue?>$G`KJaavb*8H+f`l4a-Uxvruv>*$u90H;}bKq?E}GLb*|EMsP>kW?1ZWjRJ6 zN@XEimSYsIx-2BiL<8Anuh4hSBd<(d7FuN?Kw+uNLa8hS_)tKnOaqXs0OYSPZk0cis~$M$wZb$(jh4L)mf;KnO6a?&O&|6yb5w-7HVT6+yrvxV9zFBJ!WGT zB4baG!qb?AzSt9_&`r)lT0D=^Wi~BCa^imU##h7HsR{7qRXi@i|_aZ?t;VsDhf*qDW`*lwMUk@ah6Q!9jxS*VIVK?+}E7Rq8z zkV03Jg}RuetL{Sgm@lAYcUMgo+G5wOP}F3hEOy-rcq$8BF}?5b3As8=l#t4yq_U6} z%P|T~Dhp+?9HVee&O%sBPb;{#mREan76Rik!3z82EJVg-f|Y8dvJe`xsxG4Ac0Pv; zjjTg{~B`>Hb=vQQRFAqrDN7Q$jFL?LR;)Y(o`0zWL_~Tkqvv0 zr?Su_%P|UFDhpAv9HVeGW}!+ZFBQ8n=OYQ0dQ&!Lp-c7zDQt~dsFOWG3SDg$8f7YO zr|qenx7sX3%G|Gz)MlYj=6(ggItzI+x$!$kI@HrtorN-)c@^yHEcD3C>w^pxGW9}& zsnokV3+*xU`XEDa%)AP6T^1^1@)6iMNaS$p#ax%&Rtiw?>#}2|0EHrzt#YmeN+F~j z=GSm4Tj`Bah*H@x-WY{zLUtSHJ|5V#W$gg2s4{Bv3E8A?pu##KoA3=(sH?Mar=3CV zbB#|X&g$IyL+vinTmyJjP3VvNSECnbO_1RFcVkdGLVC^U*J?iVY zJ{y!H6q5R^DM$FQ7-B@HAB!$W_^@blgu>F2MZeKmNJysLFl}%^x_3la<=XSX751jHf9S00uvg*Id@9Q2&~)|*YLvp-boTLTl)^~*|6Qd2|620)Yr_*mUx%JWum6_y9>3G^cmCIuL+60>cQQ!3@5vm_A0tgU^bx#K zYP06hOYlZ1&DxwpKY@H#%BjMYQ`wwDUqOviSetX`Ca7@=Z+#9u1ad1fUWKtfhi-uw zp>Wmb&?yij6qdRix&-98?^O!1d!sIg{(ummaMb0{8xR5%iuxS-0(K=lDj>#DpF>wb zj8I7GbLa$!5eiFP4xj(D8XjE_BdN>byI%-UIO=lv>K6hOiiVu?&F@Vt&M&-%9KQL< zH?2y!6Let;09FgE6# zet;09&`rppA7HnKf2KD^IU$F>fKQ-8J0XWoflr`9JwAut0qI}4dCsIfaEy3-4xI!g zOrag0LvKL|Q%EP}&~30U{IXf%81tkYIuZV{3jL%Ux)lDgN*yNV(7_=2a@+$~a>%hN zOw6IT;Tx*dU}6sa4&P9v0xdc8K*$H5TLEu|ImX|TLs!HvQlW3jp+n*qsjxTX&@G{l zJthAfqix8cS0aTdd<{ADN2Cyis5*z92 zCtRt)&e>zXCtRsaYj#VpVzE>i-wbrDHm%vs-xse`r!{-b_r)vqY04gLcO6LMDEaAF zEt;|;YLvp=lpR*16vme9kn{0%a3VUmIliNPumr|S6p*1`3 zeep_7TC@G%7q8T3r)-~{rU>mX)yH?7a;I!>`DmpsJ7qVPk5+2ZkUi3QHuMa6(s8rK zXvp?>LKM!1>;_MWLR6PsZ+B0eiEZV1N%H@nt_@ctUrFAYEGCaj9+8}%+*!LYnbb~6 ze60;*Ea3UXeTl0R`NXl%<1fKJf8(GC_#pl?)c6<1Pj~kCn-bqXUJ-jY_C)N4*l%N} z#5TnajO`I?jwP%w=z9EftYfSnKp)UybI|XQBSkfuY?) z^&u1E2u}rX3tkjFEjSQd8{9KEIk;^wVE)~F!MxQhnw!o2&E3o z9kld_yM0ZbHH-K2RV1#C|ey7l-=T>*9cax33dVzK@Rt zD~I_|uyTYCYK^&QZi>)4r+x19nceMOZc~AkO(Y(^{(p8Pbd?0o)<)`s)lAXi6BiT95+xB$| zoCA>DR!A)Vmh9k2Z^{l1^@dBa770^$m0p+Z9OyO4&T(F~A4{mxnxlGqgdNGFuXsEh z>t&CJqrK!-cg?_vE6Bt(`=adNSTD#94)r{DY)A{qqodEs4i5EK*}4bFZ!1<5gh!PG7+5RY5NW&Ec|pl#f=>6&)mq1Kj}8=>Wm=oMcX~$@o=EWJsytc zys1%{RhxvX<5BmrhneF%BAPkK!!GjslqL zWCsVjR(5cxYg`7tE(JhWi)IdUm1yQ5SGrHR1)^vxdWB@?Fqcbqj&qp{&sVCTGJh1! z9OY8c%t8L(f(uJlfO3gs=P(ybc8+rqhj-Vm0Omr`%uy~7%^c+S?tSF_#EkyV>*8SN zdtDsxJo|G6Hx9q`e(Tye#JR4Gm;DW0(a)B(ObPAf>4zXEz^-NcA#mDj`sIEI%yVhR z2gfWfaY1YSTJiBJo}>79RY&bR+sU}5u5|%)sayzWD3%N1L_VN<5jk4SNBco;W(ul~|qFE0IF)|E>7r@td%}-!IVnKO(*) zJ}o{jZpQu*dkK5{T@@RRofI30t&1&+wa4mWLF)tSY3oMo0_#ku1v1FTH`8juJ^|lF zKaRc>f6+7+1zx54gzuLmCv zUK{*%@KmS_I)clPg`gp5nV*|)n2(s(nZGelHaD5;%mwCTb1d>7yn&SlR~ZG22y|h` zfjLH_q3dt!_d6p3-Dsx&{rA5u@ck`7mjMn89)o2jY#p<;TNPOm&Wz}H4D?&O(q(P~ zgMEv7GQC|ZyV?E zJBY|47$jZSs4`FkJPOQLuh9Qw6HgWJpf&qpf%0wU^s1F2ZNf*919?2B=a|{ zK2y972G#0yFsPmBGDaLhYo>d~w6^IpNVX@sa%>qpHqjH<*Nvam-qAU`V;buRn!j=5 z1&{e_$0|)ASvyHqR>{edmDO;PompdW~f6P)W&oL;h;MI!?k zFB)0#Cc9<>!(vC?YLu)DASGEDLIYU?XOEJylU2`6tZW@Ov4XYs0eJ>eEs|4(40So< zs|=u8HZzcMbWyAwEsUR9J9_L4W(SX*;cRc$PZ&0}w&NyNdRuN{1;;w|l1EFeD%s2c zDrGYR8Dl>`NXiJ-%d@r-Y^-=vu(7fU4k>hhthj7u2r=2rKrC(+hD5EXY-S)4*~~z~ z_Vq!If{%n+A<4=hf|8XXm}1(Mssr6zD^&ucFf#i8Xv!M89(#aI#7Dmp8wI1>LS`Co zo*K8o#=PtP`Tt?c8lRERz&>OZE6Zu)2?#6|6W$P~Fr-Ny&E`4Y(n5eaN|&+o5zpwq znZdcLqMtE?b3sM_Me=@#1D(-NT?;GpPuIdq{li{q?;YQae&Vq+gpWOThVys&xDbam zqaSe-EBzriv4S6v6}=cez|50(G}A2EWL}?H6v~KWm1M2-5}}OX3oNG36LhxtC}#A1 z!N#iio?v5je3!mXP*xbcjQ&kDveNH}Mppc7`T#(2am+IMmSklBZ%S5%@CJhwhAN}4 zi$+%dHPOh5ze*ossDLy=8GS`IGl-XEGXr^v)l3|ijJ_yY8N>^cl_5OuT7~h*=yQ^l zA^cUcGK6R8_Z<$zcNjAI7k@Xye8%6+z@Mf!2LX3p?$M`Q3xoKxYhk6HWUVC)I!2$6 z&8+<6vYCO{X_i3E#~P!LvI~(9G)5m0Y^?0V3{o0mj6NirSp^=H%?#uL=dSULEJpA5 z*cr@y9y`Oi*R7yCpcuVJu(9%g5^SvO-882K8o_@YF?v@SKf}C}=>IoVylwaY&rcqU zzWnGL$SO>5}^sDG2(Q~33qq|09k(VQvMYdq?zwN^Bgs%&q7EXufgcF#*zcqAD=-AM@ z(A>}t!7s4x|0e7ka7^&P;OyWS^F#A~^LOS6=E3GPGlKs3^~Nd2I?T-{^!Km|;Bx&8 zy+>a_R{^}D-L9RZZKkUL#s>ZscnUcMPY?8B<^SYB2nQtmYsfnaWisGOhYX#=7xY|t zN1^P7I4#UW>he%16Qwr|akJQn0njH40SZZ79-?F+K%uD5Ly1hZT!cazOJu5$`aJZ< zVuV6cpNH^Rj8ItW@=zSJYKS9^jHE6PrLhp8aMb0YFctz7iuyd1#jFz2I3(k!&qGoy zMkplpd5DR{2!*9C4;isr4Plg$k<{g(9~J@>j=DUw!$N>U(U^C1!{m&3$1oX9V;;I; zB2yNE6spENG{c@Cg|0dey)aQ}5+vt|$}h0$JVe6Gs}NM@p$%qU1-U5?N$_-nY!52R z1C{JZn(|Ntd!rPlraZL3-YA7}avmyRvRK_=T;Mm1$%rTCApnEMr$+B^io z-0y=AF|h5IrX@K(guvYIgAW-n_bd2yd5D0?jV~uB;-{uA4-K#opfJ?sp#T;F6pGqB z^uJCOc$y&2P@9MNm-`ih+B~Gc+^^ub=&tUw&WlK_KQ^5 zC*&XoCMz2Rc3%bagd7yXK7k7NgdDWMK7k7L)Erd6`%-G(jJhn5EpO^6IS7H5eqRYX zCd&&<%|QwLJrpd>B`+~02QBdTP$-8xH3u>9_fW9GW03;F;P0VO8mcu1jqqaiuvs!s zJKrZK*f|HaFcEJf7pY%?{Fj8JmF=;4gnv{bU*gsaG zos@$p*gsaO!}uK3!DJDTR0rjwVtft?VI@pq9-r&>2~$WLav58a?4~MK2pe);o)Cqs zA=l{%QHW}C9nJ}m_K;xjhnieka4Q5gxgQ8_1-w3Yg#GEM>@dOb>vM<85eh|p?l3t* zVX4j?YJac^S&{i=F)nvVup&iHpP*=B^wqg_Zc+6{8<#uSEvnS3I(Lv;RK1DD_F(J3cc~P)EBkaZU%9S=Dx7s&Qp`Vc3 z&o@w^Zpy84K8_f*xLpN1J59NjYLr6Slv|-jDU7wb<<3`tyqN{#s?9AE{R&HMZeP)_ z;FJ0PV&H=c<7MN1<4U85x$jP6sWIKCMb7_^^r!S2_21|}(KqO;_1%&mB%ey&oIEdi z3ijYxw!Tl|sumGON1_;_c0Uc5f`P3#RQ z11^o79XmGG8QV8DBUTfOSYKIhSPxs*Sb1xUbr{wL%+x;6jvyAckqwFeDK8Jk#rrwq+rN=$Gq3P%*>j{VN7DSxvlXz#@D|M?5Zu$=>8Gw z2h*E2kaekRNNR633I+-FFZ|r@>9J1pbGv89`gy&vtEN%#HJ#~U4D_z*9pI8W>r`Jq zhd)L2Qwh}i%m8*x-iQ>!;Ieh}Pg2bb9GysUJCqqbx~G#npP(A)^#geISH-H<(S1C+ zhmdk>6R}uT2iv-z!3;7h3~tN}l1bF6Xw^YcV+^W403CjeZtY>0!B5K;=I{crMX3#` zHqeBfq*j$zRzA&%$9zyZME2%K;lTm+7tI`Et!U;TYiv#KNPnk%WvrI$9A-bs&T&@JYo&Xnw-?!4 zGnxK{7%Ad)TIu8Em@9m|9C^9@Y;}=2>N1aqBkt?*aI}5o*Sk?+tdK3*Z0%>l>l}A! zh42%1>TG&0x(B%=3=fB;+{kOOgd2GUob@{Vs|3$7{X1j1{bG^K+AQrPdL?&rGZvG5 z=e40yvuuSg;x=FaaNb}>xS|#*K3>IzijUXS-qDS46HMOh_Kt4M&aw8kFAXQ2&9jTzvPI#cZ*TkN$QgMJ_7uZ~2mc;+Bib;$V)mYGt|-!d zrR*k#^ZM>;w+T}ma=j$Z^Dc^y(>UsEp&ZAYL*II?UePO@1oG@M5gdP3nF!9}EG%R- z;0-pzUX;Kb9CNzt;85-EfqJBrsOmJu#{t_EAIF^P`aGISU`|nd9J5vNam<~ojhR?b zha(dultjTZC9rIJqt(Y3z=n&gj3A>VW!lW&@G^q0&HOcMC`n|Aiti*lc&#VP4qoL+ z&c~uhZ3(Q29uEg=@pw4e1a>covP)n!OLmSlUb1tXCa1cx{t`fqvV$X~WCw?8pl^Fg zhzXqfX!N3ra{@MjN75rd!c>1XQ0`a$|`dP)zH z_5Iov+8Nr9wP9_&wocne+eMqKjSGAecs+10G6nu3`9$&#taSKw@~6p-$u-GcF^XX& zK25xkxI1xKqLBD;VjyvN>>}(uxJzPuA`$-*84&M_|1qA$XhtT!Fy4%n4xh$e!_I>@ z+FgF9iLIX#ZCaTgyLGB7M<6m{zs`2m6GWgz%k$v`=e$~{`S|{4yndBpsHgZj8SKeK zW=N}Z6xjo_>Ja&N0TYQBD@^KJi$E%zn-UcyuX_vALs98;Kvf38zW}NzC|=Lpv|I@6+cEqSNfUO(f)1* zIpXhT;KM}aD0MHbA)*@-`>1#Grb) zi51*PgtPW|*gE&m$~o?z#!B~3?c|U?2C-E!`~PD;u>Wra?Ehd)x}K=pp%8JKHDs3u)7fGKIi{; zogM9Tc{+#x_ph@fSN;0Iff14%h3viiXZi{p>FH{nHnY1kGrO}5SC4rveHW3igV@K- z<=n(BoXfb0UAliHB58^bRph|Pu($m#E#qg9e<rgZgcfW*!@5{DGqj6j zGXuGhzE;W6EkeIqn9r~-P&^Fk_lk$1{f@RELu1W#zGP)6=SfzE@LT#yBM7YYxvqtk z{Eg?t>3g^#4CdG5K3+fA)3rag)n!QMh(-oBDjHew5`CAWINMI0K@`0X22=1l7*w9f z^GQvXWHzVQyIa&)IggzIWj%I=b2hUtkhX8L&hpq9&Y2!N!}*oncs*>8&pLw{Sjp3w zfff0s+w0(6NY)^~pl8uD{af`U(fos$V!YIL@_)6K=`8YN#Rb+%r}Mg(5sK} zVlBWh)&lGjtTn$eUor163+8~i#2jxDg~BaZn?Gc%GL(aC_uu^{R%~G0U~bhSMXB>$he8#m#=YkP9d*DssJ&!9Ha20 z3XpQkF$z~>0YYx7Nmo|Law2~$XG^N?#hHv}$tsG)U^H4I|ONG2^j5$SP9{OcZkV4d$hl<$~q|nvop=G95fw&Zz zGu7rHX6Al{q&5!$Gxsa_b$N)E>4Of7n)pg$PEePJQdtO480zxSC<_4!MSULXWVTjJ zSa8fa>hlmLixCP*eIB}GF+yQ!$UCxRvN}s#m&|Dz@{lFdi;{&XJPmnBlcf-as6G#Q zGOLQPe3|pq=N*MIsS1fuXzKHhLYYM;S5J9{wg(yUm@{lYO zDL!dm-=)=@aZ(E4mEk`mg#eZ)IoVd*W{sAcHIh7O&&63*R6o3 z^3W%<(<&|0<_DI_L!B(gC^V@&6v}dp!c~`tN}1i@d_6ZOs>|;q1t=_a`K3~TLXpZZ z;nk3qeRGynez7-3Axh;Jd1Dl=#{5F|*j4jRvR7PVet{CCur=oAD?tifU4C!j*xg0s z{J84!^P~WUrY^si6rfN{&hP0gxx|&`zt)`7P0sI8HdvvaoZr1{uu_e>{BFFSVn$2W zsCD^Wr2vJlF29QupingA=ki-$&UeX38uD{IAqq`Hezqq>A*##I;x!SoVKSP!{7fl8 zA*svHkOCBnhWvD13prONBO&_#A>;lETxzgOzoMMhMgUNR> z&wfMl0^_sf>BcMASMZ4BKFMhqS@?V6sl+vyXFo3SgT%tbB+RgX8h;LZ37iw(5j=EF&48vN49}GkxTGYYooOSy9sQE-2~pm zI)Q7Db>OGbuIRjIW8}NY8z@6=c6yX%wnO6@<|n;2!d zQ9B>%g5xpLaG172+f!@P>aZSyZOO}xI~Y@aoNeX}LaFu{-JM-?(mbtr zw@^xS1~ODnw{c(?iQ&LewQW_WY#H;f%6YQIh#CjU7HyvPD=NFQaiHAaR`>}${lA2t z(C9^lpOC}ZlCzCuEx|y4Xi8{b8@-P-iMfpt65+paiR?vBA-O*A5s$+m6}YYH4j=39t1jhMddiS!J~P;z?#v8L=^}UC ztg%0(Qo^48?t#`$tkbg1dyeg(SD9-b+ctL3Dx*1|_4IdTHiOZ=0spAjrUq`O$I0T% zXM?e%QOgUqnU_kxrv`3Iz#m`*67BTruzzkC?&}REE3fmI0=MeO;0uME9hDjCb80j_ zI7XIy5ze8#~2{6VuGG?E+vYj?X^CDS>qYpkoglT#2S|YHZsQ)94e2 z)~B^=`t(dk=XCbOX*2&opE!!M&Adb?)j4bK?75vC9WL`hLMhQ1I8ZFrK4Vtb+_sE+ zN-h>lac7%(kx(k#IlFt-tPJC7GcOcM3C=e20-@CGba(r-j#(_H4Tg~m}v>^9NSxVaGZIvgG22_WsekU4HlDem3?eakB5Wp;qh>^-5ZSE zHO)rLtS9+F(~{^twwrxC{O-n8K6&go)f%|NxXq^FvG%17&#m70BZpwUC1uPb_X>M* zv}R_{>YhF=GuJ(%9drkXG7*8axBTqc?U}CbS!|n*DS;n&%Zm|#BfRBjq%+fI%oMKP zYrW-#h&J;YZ~5sR?bFjUyIK9)%&WcSg@`uuD!R`IJ-RgB6-Q@~POcqW;dae(Z@Me# zJ|ks9+RQ5ygtqjoIq8nMtO`>ChbstTNZ>H%DLtIQej)tj+AW&-g_IG^{3_~lPW;d& z`<=&eIz1i^)#34Qv^3Q=_w*0-tluy^G`s<6YvHuNQC=?R!>e;2x^{+@8|obF*);4H ze5tGxC705a=d9!=aed~CWn3t=M5;?4)^GA}sTa!mP;RkvGYn%#?!r$aXsi`}YP)N{u#74^rTTmDIWva+jgOg6*x&e+39`TO zA>%yN@aZwwN1tcQGGq}iKY#=6$DTKUAIAay0sL_GcTTWN!Ix;n);iaW;KM=Vt9$3z z8gDTsvw?55w-~R^e%@kCbc156yv2AWSGq2$JMHP@EwIAt;$+LcE)KY?-q@Wyv7K+a zBig6njWM{zeOz5mml62++swPp@`WRopAtA!!IxqJhuCjL#_#Y39tix`d2h3i zO}t+o2>i$M1?qhC;k$nlxtdrkG2_F}{-WjP&LM*FmHfFHxFzs_Q-`h|EDawJE~DIcM)>xZwYmV7KJ8- zV#wF`X7F*S`18Rn!E|tGa9VH&==c9-K44yqT>3+1+Dw=$(7$d-zLR_;c@6dxI5F8{ ze3@L1zW=s~ZxZh$9>-pSS?nfo2=)?aPK-_H=>NYQe;|H!{MYf5<4460jW3S3$7|w2 z>?iO_?2*__vGZd;N3Ov`Vhduev2Cqytaq%Jtf#C8p*px4BLM~L=hhFcA!`G22&}Z` zS<|g%tJ)f4nb9w!A4Xq{J{-L{dI|O#JP}z5_mA!wofNH#d=q&W`wQF_xhRs0{1obh zLnDhKZIK-#TKL28U$6#Yv)N%TGiRB#reS<&JZs!#Txy(c9EV*2_A%Ow?TiZj1N|@h zt@`=;$$GzjfWC*mlRj2Awa>M8wdb{mF-CBKcBVF@t;U{XW3>v54g4i=d*J-Qsrt5B zZ%@Zi<;_Hd)H{&Iq@8mG5fMo5Kxeu)(>i-jXIr|xlYC>FcM(Mgvrq3#cg)GmVb|Oy zu?+VG28gbXfG;2D8o{_Q`T)kC>{xEIKa7mKy|G6Q8F!H^yh8cb8JQVv-P7i$%hQ9aw1g5g9VB}iVS zv1{o?NQ0e2ie1A^PF-SGdm;7ZJcvPEMFfPDWz|6M7HH3~vWTSNV7OP7@iUSu%J>=n z<@C@=RULc=e3{q55dY|PFsMuEC2T{XQ@|#jVt?@18PFvjJHxq{KG+D(^7JOp;a=q9 zV|W+(_!#B|L?K9<5t!@{e=iyt%I`!YD}FwGFp(-P>**)?T*Omwo}ZJ!{npRPV9#|g zH3G}3MK_J0btP5?L^q9atqg(6A*q#5dBmt3k{Ma~l6zc;WW|ea1(xt67O{e4WdM1} z$`Eq&-X<-xn54Vu>2yzfR`D>TvlS0Rqe4hp^F^ZIAV!6df}J7#%Dsf_c!qO^Yu|ft zV57THYwUFU3DTcgFo17v?80K-ub;VQ>}%U0m= zG$r<~WMv3{ldKHk9oO11(%ZofoMvh7CB0-~We7A&yK7|#Z_-ZF6KTj4YI2dDY5PoR7rB??W&yErI z8;$*?UqSX%=*?^%pi?Iq@mJ-1@t3hq{H2{mmV(i8RolCNj`_FyrxA1i)aH{4;bV=A z&Q^5^KPvYYei#P}KeRJx4N<0QJNDO@&)8pv#s1RvrZ)kYKp_GzciqCQrEBqI3 zVg;X}mvN?hSZau;B`Yiblw@THf2NOEAc(bpQZ%yiPl!fV{BdSn*yVo4#2yoktoWm% zkrjW0)oC8?FZV`%Sh6yJha@XQpiAs}QGeEO50D#$7+AUcnSm9#&-n<#(ue~xgTv@` zvhTszy{e1B+@rb};GdlLB>B%6kP~n49U*Udcc|JF8@;VsD zja~;MxIz6=WoP($)y3ehBl`c16|WQh|82?9GxYzHkjw9>*k!Sw#g2gbzXt067p$An2OqXpTWwY}`gZir=y}l}MbpvUqdP|a z9eEsm>=Pn~MCL}eN8W&E!`FxN;iHk6Z%%kej4=EqbY(@KMp<-ycoFw z4!}+TJD6XYFPOKOqvo;LpKn*Q+V~p!|ErCYjDw6>##sGR{Q>cQt>SgtD?FHfi#hEl9e4!TXChzgd(KTB3ZM7Pw@J=W| zT`feQ140(90sfeQ7c0tDA?^Y|_C=j@XT5MTSpDixSifEL?7 zR;fdM0n%(DE~U+mIw;3oUw}Saj8ORM3y^1v5emzs0@T@Jjg*7|;*mn8?H{W!PbxsP z?H{Yup|$`CHxVXFc?CFcO~Dayi%AB!yS4xkw_BVKle7D>rr@Z!X>p~dwFRiS-Qs+> zoEL|Ho5(L|ai7XVy3LBaSqjA3IjU_^yt~_n-cfDaeg(g#0M$077ZMO~_?iMl+pb$d zuPH#X?Yb54<^lxU^j7rCNWfW|3(#$=aSB~?0qSivPT{RBK*LQNO-x+C`DzPLaC5)H zQ(J(1oBI{~>H@Ue^lg&yxo@fqkZm)sf?ZvJWSe;v#pWs+s~6+pb&Ts3}0L?Ye!yq13kBJTZa@4wbg+_5p`N z+jT48bp@!iiCS3BpTObk3eaW?0SZA~0fKBHK%uBFK!r^naNTm617KrV31w?M>RiIa38lvZ-v_jZyeg z1*o#+7=^2*0AV&cmtwvJPE%8WEZcP}3^fHPvR$_V-c*1Xn_THE@tu@pkKZ+rV|$|% zs-^<;*xo3GvAzI7Ha)3wrUZUO^#!Q0#R!F|z5qG47~#VLJvNPC=@D3dJa$ZV1qiaK zVxC3NQ7*9>5Mc`t>ies%0Ohp+;Zskjtpy169adLha%;O5%7HW$Ah)KCiivQ~PRG2i zO$BJKy-`YanhKCzd!rP_Nd+jc$p-?N`=*R)UO(1|lM0Yv`^PHmlL}B{`^PGEXedCK zO_z_bIw;>*4Fx96W+4h=L!sS+q7XF|rtv26q%9Dew@r;w=$Z;s)hHjvDLhKa7|0s7 zsnDuM`7rLRMk$O9g`M1H@Z|YpbPa{co)Cqrp)ko4q7bDD6P>3Sw5QUZ%e*O5g%)p& zLX|2^@Wv=y^@V2l){=7svSX?*jF%%6p87(Q9HFo@6dKtE`Eq0!KBp~FIZhMGd5;D^DdgSQ0F2_6?b6e|TL1TF0A_b9UHpN_Ts`l~F;YfY|3rU5zgNFP&+1$BBhb6w2^q9L#|{8@Yu9NP zBS-%)sq+3%ZJD+Ql=qF8UDpGj2Hpt#8M*y#3|tER{m%o31(pUzk{>0XP2QQjBzZ=1 zBzb6ZesVI_9(X#}E|6H@iO|A-RGol-;rF?W;19Va&fP=Sv17W~`G8+I;OS zD#@l8P&;kUe?jl`Z~hC4rx^bQ&C`5(2y6^{yQ(hn_n6Nr_ZEK}mT|E7TiaVZ(>@T4 zXM=V-_Xk)%bAN!;a({qxZ>kis$E3v}U8s^?^}5^}DE5li<=#25m#KVA8RQ1uOCAr0 zd(q?JXfFsJVZ0b<&wD%^?KzK!qy3di@$9;}FO=A`f|aBEMX+*&XQ&Q{4EA~&>uK4+ zah{SL9O}k6u1q}7oJ+fkRB6d$k1jf#)g;s$ocFs#q?A^e)T-p9*vuk-P8 zkA;PwTo^7PJ5^ zi)@2?+IItUa>%pQk{tFdeo;xv7J#1Vb#cgFd0iav4DOO7E&x2;>*9dF^tw3UFZhkL zcX|kWHZhqL5KmKl9P;Oik7J(7A2j@KK7|`O%E{cwi~o$*ww3DZFpfc1-~}GizMx;$ z^fb9Hm_O&I)iFD=>YIEW_$t1fin>K0QS{wr-b_W~e*QM|CVn|OY($p*koIpXCKt;% zLUH?ea0{&LUPF{IyivaLx_Hxk>2>i2`ojJm1fZ>F;&`8XJRI)d9uG(RjC({G6wd#@ zJRXkrsmH_7{%N;3>L%);0QL{r!LdG(9USUo`(p}F`~d&%+Bm>Ru8o)d&;gYdQmDoU zvV)_%FFQEYd)y&Nr2zG=?BGy;lN}uD9qte`Q-FF~c5tY-WCw?O)4mfV@f3jG5X~Is zb>(NI7Uqr7CoEFVTkHtLx0_+FS z9C$YxhGzbmz)0lQ$hjB~7>fKLvNSRyQWtnCVrXNrzW#~u4dGJw)bM8H5m<%!{f4lm zT_5@~^iJsM&^_9Pp)0jBF-CAwXdrZmc6?~}P<8N|;7hTOXikBWHZ^!!@c3ZA_Rrv9 z!DYc+wTFXE!I+jYKQmu8AJNvB*PG{LhT#O;Yo61l_)iS>#7 z61yS?!S)F={z3f7`1SEzd^o-qdlpWK?|}aQ*o{POfrn9R*I@dX*5QGHUT1Ofky^Z> zia7Yf;vS;#Af};AFJ#<^?#p!br0odugsQxYMr78fiL%FzOb>Q$u-7H`5|IWm+K-e? zJ=lwG&~|-qEsTVo3UH=$DdulJ*(}^0SsGp2=>2Zo1aL5fK;NA8;6p#MthFRqs?`odW29lVN)6 zw;h`xlBs&jsXU8$)2ReqGs=u_5YZCh=)x92L_^nOk%O5&g%);CMBquH&|`5`)t2lY zyJVuiM(fL@heif7dyn+=c3~HSB^mM}G`?5pXo@3cND!yDaveL^$BP+fy(L-Y`;D*+jGqJd5Mmxz_ zOg?l>s_FB3%!l3h8ME5DySvlw0-9s(n-@reC$PnP+v#iRsVCcV+P57$;C(!HR_&#} zx2e9y6V483iRX^1T8{ImmyKVN&8FXP4ZTN?3_1()xm=7xDNy?4cvpQL7fxu>^ybuvM#=eHc z$D2-*^rKGVy7@ReR%&D?W07-6)X18Ap#v#A9rgX>r=z}#h+aXl%GG(t7jP4UpU+JU zoMv@LLGiJwue4A8rup_3%S`tlpXaeN+`T+@2EM0LOLh(J;rwRhc6WZW_}z%k6P4jF zQ}Pb7Pq!X%t^==A5Bt8k=)3pMvM&8P`%d$4;VWMcvDc*dCJaE=+ZyoJZ6EvQAt3af z?o>7Cv@jF6}#3VZlsmbz2#Sesx7f;18s6g%YTd_H9LlaiMGvJX)zw zqSp?OUBXU1{gkvTr+s5TI-T#!BZsuF*@Z--XoYT7O!`&qaA}luz1+tRS8|#6R#fQU zkxEiCsrG-#Mm^ku3W+#@VTnSzPKJPW9V;1lB&OHWLnX+I$qF?jAL;Mu-hxl6#l7jF zAz=+ceAhC5_I%i-jGsL(=GqsygulF}f5d%Y%|U?E0`3dJ{<=Pew!iy@XdCbXg_V8i z<4`LreWVo25PIkd;Vtjnm@#@?i)P*OoFjVu-{oV}ucuExUYI-@qV%O?f9ndPneh!C zJFD$_kDb-Gd$N8Y`}S5k2l8isX6vDht!wL{tOA`|>z%N((6O~ZMxM6y|L;^J-%Q?@ zJP-N*_fNJ#|Nl4ahIdY4II$Y~|3v(g_@Cp~#LtLtj4z3&V*iOf6T2$*i`e?uF0r`v zx^=g8zV#!k!&+cXuyl+c+z~xDdP4Ltj2pxw??mp4ToCz5LxJF{!P|nR;7D*a_5}=^Z<)85S#zVgz^pYshgRUX z#-OnjZ?Z3-5x7l1S0B*l=~dbX+Ml$N)~_wV9)Dj4UJcwG$On!L>={S}^on<|xPknu zE<&zMq?bL@X0W|MxTd4J2&ppjIt?RwAx>sq=R|Pt#3JO#yHn)$gI3|y(}6wY*KEqT z>kGwDsF8g`70!u82$Ow7l?qfBAyT%h*Y0;{kSH^+LQ`FYLYa9LT;aS~ClsM$_6bzD zClsM*_6by|cPc{LJfBjtwMnFNJJ{1PA|$wB0-BwQkUE!(Rw}Vm5rXG((MnCKi;z8& z6SM(iNy?E|7a?|LUWKW;2&pskD##Ox5IWPw=;`ep!iYs?A<{l|^1*6$coT|HJo^MH zd=rWgKl=nK)RT(PK@%a}2K(JO9~&93&xmhGesU)jp^Em8RVpy42yL`~tWt;ZMJS|6 zetoG9N(+xKLL#k%Da_-GkV-3I3Tbl@l4+vOC8TtDY-Vt651)ZyP2OCDc3O>7Xq$@= zQLAwZZ(|W^YLWzA;8hN_u?S7ICrDvzEJ9c92~y}9iqKXQ@#6-pHecAcX_#lsWJlOg zgt}S^QK%Yu1wnj)msZgHi8wMA&C-QudMxTXjNwOd@Nd|eUpX`)+3 z<+_lPw>LRq!^ktgvWy^|rvsD+NiDq5}zPbo4H1jIRwMA&4$syAH;nXj< z+9K4?+^?Y579oA+eg%JW5xVDj41by5{&xI8CKsWAE)%RUPcA|VT_#wmMylv&qLpp% zID4uHO*FY#c#J}tDnb=4$0%Imi_k@r*D=Le1bw|Q(!lA)7a@*T!W72w#gtE&LfTMl zurDH)RJqz4iuIllg{+}i=Lu1WYKpb?!;umxBsIkv!L1O~6srZd0$yJnXG_XGJM!^X zt1s>-M<^8a#U11bg{7&uy{-EvES`<~I8#$`J2gsSYbtK5Mk$Pq#j*B>i@LubCu}TM zDM1QfW3f^R@}V2UgXC=hMY?U2ARoG<5~R>o7Zdgqh8&%8MN}8#+^Z0f{{N8`A6Gyv z|3~ENOG7E&ocIrR|GO}8O5(`G@V-7A3~17AB7JM zw}->n`|tM9Iiby={js}1GWbdG$>3GNlY$2arv#(OCwPx}o_V}^usPS<(fG=E5n1|w zV{9=FFs5U=`+faB{XDD>SgTLbBidWq&D!Z&2i60O3w$1UB=Fn7U|@BiJy3~*QvRh% z=*^JF2QsZXnPQdJtSzAn2q~cSVj-I8!BbRpc0jYhnrA6grsU zO?IkKPAs9P;v1?kPb{Io;v1?|ps9pj%XHd^LOxXQCvRg3-4@cfA^A6*q^(K?n@Z@o zc%anJ-^LR9E*>c50GdkZy?CJ1PvOQAIxrq6C*E8w*yrw`-Fs?N}BOX$PU+n8ouSKw<)PAA4Lui!V7(1{^mm2^H;%DK)c z8cOKMNFfSKLkV3ODMTSkmC%`?_aI5`F3v3TcTK9~^k?im>m+NtLX|2x{TUvka7`?s zKSS?2%H@}@ogLi761p|Mp$hZF5;{1(p-Kg6OX%v@XNAnnC^u+r2|XR|SEy=B=;3g` zg5OX=&&F+U-|xnT5;`?fh{DoPLcc}|QHbhG=-QCAwY0VQWIaD;^(Ay}#0Z6^zJ$Jw z7@@GVl+d*yO6c?WMJkjnC3JoKA{F*=CG>z& zeII(sOe$0%I&CG>mfvu66NHZp^*Ty^y&bb7=Hg{QuR z9*-EIu(XuW-Jwmowb`_m68b!TkqT=|3H=|xNQHe|Ddse`&s5sDlI1!Tj&Y@^>r`M< zrHIqK?F%r4);ln$-m71)WT3g;<2ZEKIDiNzDkgesI1i$5$As#Ku5c!J%9?m-2V3%|N} zJohRz)y3nuS3#awJeE~rYY(Q0#Vut*70!vp&1FKB3Pc0TE6xf`uQ11$CVJW*7%v%* zL05l;@q43a{Lcfau=J1ghx7~eAL)l7Ti~t9%aZ444<=8*>iWgnHOVPhU;kg^ z_kSvJ3&svk*Um`{YClB&z+Dmz2`&Dt&L)T+6hds+OHPq!} zof29>*H==Rj<2pL0l2hMGwgV3^MuiYv=#?ua`3jH#+O_b!ajZ8GMQrYS323+)`AQ#QuE@#C}0 z#&E7#bZM%G%YB-~XZpE0!wf$+2cJ$;L14WFmR^jj+Q5H}`Lc2m|79eN!}u?4k(P@Z zW6%K8k@8`j^CuEMeChm&bPq}APb7O-WG9R`+P+VwgqG7idU{9bK7~70trvcd`J!^6 z@Y6^bhYCNng<6(w)`PMj-jV$c<}cXapiWFS_CwwLR)g4TFWx$bZ!MI!)M0d~pSpwt zXZldDixV8;b#cIT_MIZF|<)qA##TdGTPqzr7EX@UG&w`#$ys z#g~WhLs{zoh6COjZy|o1OX%uCwz7&m2CA!iytXl4RWA10jBSj=y*6#JmUkZM_KGgt zrPY!Fx9V4t0r%@Rk^v74_YEdKn6d5OgY3P-?Y8z5z6aEYIo&Goe!AWlr@$@aT~E?x zK1A0Umy2mLA5<}f6(jcf-K=7WF@a;8%T-)gf=`UMeatvvtJ%@Wh%Yn(8KP>mh?GCG|@;0b!T}mR>EIL^A{+*P)P$g zt+M20_CD;3lPxuIs{gniWT%UJ0*~t^J1xxWRQV1+J1ToE-8j;&Ed2l#7b3Ko572Fr zecWy4{p`AAOymF`*A2Q^rBFg#zF^;eM|(M?kiZB#l@2f(=kaZ@->%a*q?WUny60B> z+{F`-Fa#dcb@$wQ{P1b+*^_)uL)~89i{`qa_Eog0r%XBPE`Lf7n6VFvbsL1 zSGcEG@&+E&zH^U4@Hq9nt(*_Fyqeuj;x|93@lf%lswsQ>pc>x^%WSB)EuGmLIy zFJqkknf|E$dpiF=RgY?~W4FCuYF*lH+E~p0KOeX?Pz($Q_6tl6#4A2TPmTYpAI0P* z8Ga;Lyrg7fY!ak?6f>J*gxgR&0u!5Jg!@Qm5e=ixye46hQ<3oy%xjYAAvZ+fX&A-a zrWB$ORgYqRljzC_ihI%-NA)PCHs|a>kfjMlt8<7pZW!jAG`~FH&J|9L4-6nfs;>NKXnh zM%*}x2~bav!r3^AsZURkLN{R)lb%E`Pw9LTq%q0~qnPsa2~=n&jAHK7Cs3ho8pR|i zkseTLZ!$E-+cb))P;Zn%+BAyUP;ZpN*gT2}QRfQqOO?hrn@2G#s>Ug-&7+tbRpS)i z+EL7qlIdQ%k(Ilob`jjE$q17TAr67>Wr ze2t@+6ZHfsbQ4A~De7L@%e^}W@?)GZikVTLK!tX~DCS6g0u}1|QOuUoC%!jn8#~PU zQB0VM5eixTC?-n92!*9()R`cq7b;n#SnjrL8N~#t^FWi5zbULOqnIuAi&WSfMlp3t z-!|kJg(Z@_VH-vQo9*cp64Ab1H=>MB_&>aY`h_^sLblD!w-&Z@clMm^)R%6vFYN zm_Sv+6w<~~%%ZwCj3?0?JHEzIOr&~(6vD<)%%OUMeCRNJ>IQkz&~ZAK7PDO>KI?sD5g}sQ3_$xC?-|CQ3_+tD5h139D<%iCr`MHNO3PnR{y(dH=sw;Kd3$l=p7MoP63!myr87V*^sVj9!0SZN`)ai&p zTqV2GQmImhH%1|fBCY%hWd8pL=IThvoNvxBn@!Dl&A1)w?SEu+7|XEVUPEktY)-5- za(b*jHYTP=PP9I^{$gEgogTTz8nF(u7Fu(xsn!lwAo^bPN%Z~CkDeACMh1XI(W%kx zBi}{dHQzNf==Pu0|AgHBzea|>WAx>Eee$o#KP0os6C;a~M`GMzPO>`jZQ}2VmlKaB zZcbd3I6JX9ad=`uVsc`e_~-GLfE)zF@pbXN;uGRA-PAtRp3-j8&eeXZ^zL;IjrKTPW%=%2q~aG;&3)K9 zyQ{l%#`MfwXSmdSY?8kJ|0vpglw?!sA3#Tj)$R$`!fN%nYhkr{tO^Me`v;Z^qR;rF zf{m4YM6j{450mUg{R3T@q5b=%R4)&C9Sr3`^Q{Wg&Vw^D)YG|QzuHj-k>25+O;~xF9_&eXAl)N7?CX5J4DniDFGIejQD3a}5#+9(K1iE!AEtX( zr-z2!2X6f8@*#}ls`4R>=*om%4P;BxyX3%-ozu^Z}2Z^mU&xm5gR{D5S( z8R+ljNp2GXZgKz<72L!?zawXKpu1Zr8UI$WvATRC*jU-GgUuC&_armt1GE5rnDrc; zY3(F+-k0Q_vLA5NHs+hi#d>Ps=*-~JT=$u%BH4GCkyX7?G&&rKG4#QQ;=Soji!$k9 zq}F8TKe3IEkAWpgJ8Wv5K6^%bX4~{>s9KPwaDr*ptnN%lhGj$y?(IZ!b8sF>N`}ap zGdkM4I=iJDR>8eUbND!edpf12&zRLQw|kacY7eKB*BRX1Db+r^t8G@MLoT(OQ_AZM z?n<&BZE9`L%*}MoncMC>M1s56$0C@6b8YujG% zggIpXDLBi)=jPx{2S44_HLG*3r>$l<_+Dplx>IUyX4dq~49`)wJEgqN;54Vy%vm$L zXHK6XA4{84%IgeHbxO@>?@V`e&Xr3|aY}ie!B(f#w9MSjX*1JushyotUT1J8R;sP7 zqoaMcTxv2aB|FJo)Q<;b$H2fwT=v+3q3Q$m&Z_G3+*wui^zpD|=%`+to~mB59ef}8 zRaGZGH>x&b5~D`ABdh9Ru$)MeLbX40OzY4QA;dJK)Jo?%6NBnlLgW=HRePRg)bt|nSa!dAQhSOc?VWK4)=pS>7 zuUQL)k#VZOcPKO^rdQ(+8XVe>wpQjC^jEP?vwuBn-CI0%R+*bUc2<|0{s*U0zlo$J zCFgt7NC!GGt+?!Zy2&y;oO=6Y|7mLx`i->qB#$XF*sT(;!ODI94|DGw9!GV(0c&Sw zXZwyUnSd>6rIp-`ZP_bXQfM)zgTY{9n`&0l%9brlM#Y8RdxsFT)k#Qx^bVnf5)u-6 z?+^ln&|4B(2!!vQa_7#SGb{5w&-cgYf2=*{-1FXhr`|d5J;(V=NjrZ@SJ>z0xbN&g zm1_G>X&*gx;6UdPo)q}XKdUu0cP{eQwgblqeV?Fbr}I?%ju%^|=FV?M!C?KKuebC+ zDYkT|{ZG*AOzEUDY1DP?DdSxN$;i;_d`WI)2l4~=3t}rfl0dh?7^$lN?l9~|-ury+Cs)R+sA^!)i$(>W5alo z3@9&G1dl`3{z=Hl_b_(lpBU&4>>X$iOjbS*#Fdw^`h7!vSiM30Idb%Osr#!P>LgY5 zzwdt(Yv|MbY5%_dR)4Ku*51>e)Na@E$hyBqI}q#ndQHW8{`vSl@n6Nyj<1g|kME3% zd(qgxW3R^k5c^H+?AZF)^4QL?$zT-xJNjz$57Dcl7eJDD1T&|p@9HaCqE0jI)jboBhrBukT z%D2fE$m`_&PkDdmB81lJ7KMFQXSUC_8~Z zJJ6};vhT|DXRyU~Ek0r5_?hLHJ}_u6xNo~25}=;l23wz5+RQCyjao<(#BM49) zF)awBeWWW)(zxyeRL}(f1s>>k{1-@|)%+J2p!=A#C$?0zE=Ek>9ioCy`R$^DPxx)- zAuh9$h09yL4Y=!DybUUBguG1prX?&&&9 z!dqQy9v*9vTU}SZRuGK)Z`Iy{0GHNLf0vw%tg%sKukrmRf6ta<_r_jkJGMEebCvm8G$+s_Dp(TW z|BrX=Y#$pgx3PyGf}wII{Fn@yJU$`8FF&eBduX})^&VR8dB7yMIbQfN+x=X~{jB3c z-n`G6Mln$^Tv*$JT)BdwSR=OJu6j*2qJ8w(i{(>t)TH=1HNL0hi2E$CsDJl+$#Lhp z%_JalFFG&rDLL#qX+Xw%$|QZ-mTmi*v__I-7{giZR`Cg2=`8wt9{8 z_qcDX_HzDK#wjbEzoosT%Z;M3dVAb#YV9Am*L-XLz^!JS{R4NJz08B7XAxg=^hnyV zYd2=rY+J`wd{k!5HiwE2!mQb5sLZeMeBR8OZ4MQ8crNdT*@`hDQ=Ba-M%FULS)yXt%G5t6aHdPKnzcAXR18_$3Fib(cPVUFr@0i?XP-HNQ(X$X zSEq=I!4U?2vP&_*6eo!@wtjfl;-yS?BGK)75YwF?I$Uq}?RZhqZzCP&QrIny6%~E< z#2n*N3^VY}qGGL$u}M^{F~6z><^(p1ieB5*2A86nVT_21)%H{lyA<}}8geNz%+;W% z=&@TI?NZpM-Fi`xvAa9qQs|E*d`p`X=yxgfT4aX8+GfozmyA8_?ET2v9Nukrm%Se` zg*}Pv{m4>u+2Fk*c$eK`wW#Q{TddOg|9v3JYj0@3*RtA1ZK*aFJNf^Kef-yB&7O%b zh}R(l;PbH?W9P(rk^g^cOac48!H-@DevxYn^djN;$tY$svmi;Av$pS# z+!|!*a@O`elUYy6f;6p@PhCB+Z^+ybylD?Zf4kmDNM_PJnd;p;HPE5qxLi<9hjO0rP^Sn4iE0$m(jo84|(HH&4OI*Wl7+tX2GoX zvLxuWS%;v&N*`i7ZIcdWL7c%p$7okrO461wqtAir5H>EH(WEmBjnGmpsETcj*69P0T3o110&;ACl$18>Sq%7#r z#Ebw=%7PP3%m`>Q3u3gM#;FheGC|3ClFWh{E!q&cWER|L(S~3(WEnXcSk73WgG!eL zIhswjVM34^vLHqaCIqM{3sQ8-8kA9F*z3G(%7PQ^wjyv%S&*XLRs^vj3syAilvvi7 zos|t)aH0hhg4K`(BU&&aK*=ol&}^P}9T^_Bd1QPNlUdNAMH>Q@%z_Lp+IV1r3e9c$ z`aII+C$k_zi#8ruU_*;G1gj(8 z%xz&5W!AT^AF9W9s;pqf$8qpcH_J`ih0L5*fw;=X1S+-RmHo*PC%jyA#FmD1U4 zHH=ymX`?=kUQ>l&G>lplY1_mD$f8IaCI^8PL2d&Lqo7FJebG%kfIyNKOgw-zp^>gs)6&P|49l-8KX)IeLiO#sh1G(`G-f4a>>Vk$qu(e~x7#BJ5>PDA3^#r4Cbcs_>{5OmqWSuM+h4(>f7(LKsLQon;7rRUd zQ2pou)=m-tc}`jV=>DPwfvF!|Bw7#@J^p`|Z)Sz^k@Af1ugdMpsB*m0t?aAJ184Mq z@;mY)@(uE(;OieI?;=mrKG2@k?loBZtF$)M34AU7$M|)=_3_K%$Hfni?-;L*2V-Bv z-i$pOyDe6XogC|q?HQX9i$y<2&A>aNqtWA{E2FzcCr5*kkMPyt=E!A{jgdnmJ4G5$ zIq==^BjM}97l!-7dxxjs%fb7|>UVqSm%c}Q#n3sSA>S>&GegTlt)cCZMc~cgBgi9= zM`pkE;O+k`I4vjzUPea0vjTmA#etT9Cd<+r>LtA3H!_H~;gwDG<1?G|)3k=%yw&373e%o%&vzDDBJg4{lx;#Gp& zK8fPvjHGb7AIj|wY#*=mQgg4Gmzq0|8!*|B!Xu3?DW?42il@AWcwOJ>oDA6P@iYW+tF=w&OmL z)@H8l(?QmR%ZJ=5?(t7<6?gbY^EA*qDX!FF54tqm-5*>U?(G5NQ=(1Ov=2<|eo?`F z-6txzt9z{(B0NqE_4h=_9h&K7JlLFQcenRBkGM*}h_UG8&6$DO)^!bLbaSSoqunO? zrqm`Q$IJRzbJO5Wr!pyAi8=)_r8bUNrusnGb|_M6(nuEsVe7osbn85k1)WkG7>-+= zQtMgEmQ<>HF1YMCM+Z0CXbINRtxl!dkl3DRmp`NHjOMw6rug zvu!phb-Z;X9Ey}$y_MTD(tjN~_U#!Khm^k;*r#ngXq=h@gR9d0y~l{z^y2}dvrpT& zN_5<(f4Xv@Pa0T{*ks?pP-fu(ica+7jF{Eg)6qWPBvk6B;cVYYla;-mJSTh(Dfdy~ zklG$%KbX%yVJ{4>doy>GwMEAE5&Pb0&7FK_q-OG@BAc^(f{~iZ+rW3ctF?oUtha9V zKj~`iFlhEa;qd@R*5FPLv9zx=>VB?+r7+$t16g5T^I7V-EfLf6UoSPErfhZmZr`O!?)D#4$=$v~l#KBXw|}Qf?)Gh}U7`!_V`cdhYW%Pd)eltnrLs{`vTx5#-$8)5aZ=*~1T(RCs2u5X`yzr{*X}`0#FC zX7jFt1#jN+kDI9+{3Gps$BymWwK2Ha|M=Lx9rn$Bq&u9fzyB|?HwR;`pX5S5Ay052 zANJ$cEID@x!@*-tF?aE(zW)D>?;jP~C)%spU$k4bl6Edw0A1Pv+78-Otvdcg{G<3w zSmoasAB~?HUk48Vg80n%HnAUKAH<%E-5dKqWCc7nmWdq@>xeah$Ny#Yjp$#ZH({-R zN_1^>sgcoNi+mG#EAlAv`4=N+MFt~>M;1nAM8*ZL41XW~ApAo34_NnK5k56M5Iz)Z z|Mu|Ia5b_9d=z>)^bm3fUJ*J0*#i#>{VX&)v~8#Y9D?V9_hQHXreJ4qzhG-H5ex*r z4E#OtOyEv%3C_S5fP=7ip)Me)@2StI_o%;7uTW1_`;paucjWc2Lw&)o{qKNVa0^!a zry#@NQhz&kFH|Uh2gBfM`C*S_S68bSdil3{(04zkeZl8)q=d z^PBNfGPm8v9O`3V$^ztCmqW&!7~AZOIa)fv+NQncP42d(dmxblJ1dS7q|EC|LCX9d zX>@pCq`y1U?WPN8M|dfjzr($h%Iy>g~2=Hx&wV$BzG z5o>sWdCXA-)lU7O?eCDWri&ah)^wTO;)_iZ{TD16t z%ZxJucdMZlyQUfUMcYe|GH-hdQs!ixD9%$Jdiz}bSi+DXqE zVkp?L-qDt@#yi*&*6OFmNvOxXg)5*#6tnj2qL?{pGp8O-9MKAGz93~TS_LWd&|*s+ z>3Ox3F$tKJ!I3UKc|`YcW|L0DtUggNXRhZ7Qs#QD-DfA+Olua!%*Py2%$&?NCyrAC zv{|-rV?Km!`8AQXpOeY%VZJKeN_Uhi)5uVCLto;-&Vhtx7 zS1E!Qog<9-u1#{tSkoqljJ0jlcg_y>*c=5d$poxb0~4?&^~PnL(KmwQ-enT)w1nZC z36002R_8Eeq<EVaOnA9EOZQr%iMiGUy4WOlNV}bF`g9#vE?zkg>KuDRZ(_9Z^Q1 z43|+z*BU3H>%6U=>m{wyyrjw$FR66IHu4-F?qUNYgI$@Sl@^V8&^TpnX~rZTSLD6L zS#R+b-r~!>#g}=DFYy*%EC^yv3(^i%;$(k@Ra-VL26t~HZ*-}8{VPIAlk zF!PGFPJQG4QIYeIje5v_;UW9EhwM@h*~K2R3q54#d&ti9ke%%zJJUmUx`*sk58268 z@^pSnFy`e%DmtEuj@9}9-4(A?XwPZC)i$G+-!58X{QLOJ@mu4U#)sld;&YMx|C89m zv0ukdh#emLX>7ab*T|-KJND`KA}ipy$loH@N6w3^jqDSd9H|Ju7XEGc=uII_^t|`8ayhvQ*dJ7zk$~S_Xd6*ScklN+o>O^_o-QRgL;rULzVomBAdXl ze}TUqd-PvZ?gkTKlX8%cWtoRlKVgC|25P5aN^SXilUQnj38$72APRfDCtFvm&UHi*=J5d^$y=FVjEGn;H zW<5fjW)_uKFe9K1IZ%0Zs*!1SKu?eL5a*s6a-i`FCIqY@2NthjLV)UWAo1#nV@)7} zQkMgPm+J{cT@LJBt|$Iy=Rn=vTle3Kdhwfoo1<&XCZjYp=D_ZC84>8l9QeI1BM&$*d~GAwhE5I#j<3te z0}do#ml1)h&4J~s?;kKmM~-K04g_CYO(1G>;P%>T;=CybT5rm9PB(+H!8GMS>~&ia zsHPkUzHTdmn8<ttGvOU~A0)*=aW8-kb2S|nj^L$GFKK@!%h zB&-wi9yk}V{0=lD3$}0>V}d>-3)*lQW73VuS@4IAsS&zChCMk84l%VO;FGf;5>q>Z zTbl)&*tn{NSBfWjy_{6eT zM*sdnb1SeOv}VCI-g-OIsn#qA$Xjnm`kBgtmAqt(ehQfvST9pq5S6#qiu5s+1$%jG ztw;~&WkG2^uv`yaDJob8=Vd{2-by3Vzj;~Ep10D7bgwaM(V)F*t+MVkW1q<3?KwuJCP@o+K1Y%AW{O5i33Ex_sRyMpj zS+JqUYC$?NCkuY`SS?7enzCR_8xMT5S7Ig!){~|zc++kxg5Hz`b=qx35EEIjr;Uj+ z5k00F+-Zja!AWF6opu-yi2AI>oHnM~nT3K4s6M-&^=hDZ0u}_MKD)1IK~NgA`&cIy zufs|P)0o|x7!j<->|Vr(z}08>WF1<+1R2WcYNtNChiE~7>a)9x76hd(yPLIi5KDWq ziL1*lbm|F0U3OQep7?LfE?`5ot95!z+Rum)L2AtILW~I9#O%&yNdcV&I?q^J^LL7g z*_~`9aX&G;qpc)vXJmJo=}x2V5RHzEJuKI$B`(*LFZMdZ-W`_J_E z`wszYezIT19)ibx`}=wk^IsP|D0*A86g>mn|4*aO#ZHS2#FoVt#HPhN;tlag>|e2$ zVt2-Vtz81H!3u3BEun?tpJO+{gYo~1p9Pk|{?SC_2hJ^@ln(6?ni{GK{wMfG@c!VH%3a9wcdoKt zIZ)YAX;OlyLGZkM52E=e%RTa*$Q%%pzLEZ>{X_e+cCGY)bgguWv{70i?Ia~6+4qj` zDc>EwUt)sjKa13wPWPmmTiP>>)M}AgQ|VSPdL7w~Q|jJU3!>7=Cnuh&hPpYFw%paXn zpS3!jcB@nBGpwa+m=@a8tfgC>QlGM0wjsfC%FT;@(r)Qer_?9d*gCp0J>4C8Msjm( zkF&9HMM`~);dFG)O|_@oyyQot9sY+ft?BmW&QyDQv+eB9%o$gt)Q6a}wz)0yGf2cC zQnEp@Pw52kv|F80|HxX-@9D|3&vR3XiBiyJcrf_dG($e!y<&Qm0h#?dKTX zY3-bw?rdg^-jsSD8yi=o)O#6D3vzY0b%-gnQ|j*-j$55l?_oILskfy%`N?)S!{LgQ zdY6UMk?HA5wRMZ>vr{S(S{idm)G76M7EVW|Gu_%Xf4+UJ?yztiij;ag!|Cd1Zf?#P zIF`uRtkc}%J{OSA%YY{8l)5Kt*^U&@nNBw^eh=2ttxl=CTb*_!sW;Eo-K})VZvsJB_{BvYEAXt5fP6*3zBI-fYQst;}<)Q|c_% z(w)xUY`HzdbgNV9OuMC+(%!o3&ahj$)G2kk)p9Pl6x}^7?n`}|)sm=F>Qw6(V*5=? zTTg3?eW_2ej-f-5QYTxE+B$pM+FDW^C#7C!b)hZYJ{Pxl_hSaR_>4=0s8j0sRu|gR zxYhS`wAo!a&+39hky6iPI2|1wZEf@2H;8i>j$55l&$e66YfE)EyKhQo*)3h_l!^pq z#{Ipm4P_s?QhF{Y^I)FAddL+i^>l{QI=`(s)#AoEjp4Y}DfLvlW$V05TgLs=JH>A4 zQm0fTGc$YGf(jNbxNWi?p2T{{6)E*ZW}V8+OLcU#+SVs9YpzJCNMC09p4ZXV+>W9b z%=dB3nk!N&QkR+5FrA-D^Vg?im^D|V)Xi+f&8c}Ut?hjGmpQ+i*ofWgl#29a1`f)P z%x!Dy;3w_|3&){IsUsH7{7kAFqeWJnI>bTb)t|?3S(bTjpiNf+s1p-)`wrr_^=YwH4U4V(f@Zbs|}RS4Pj) zpHh(s)qE^0&y7{Y6N?l})%3*Kza6hK#YH8`{XyzB=VurvKDfIxW(1=0)5&JHZGTDD-*UrT%QJl6}}L9C@)ol+09df3w1+Sc9bIKfs}J#;8i>T-v5 z+q_mimz~+SWe#ggkx~z4y>fThY_pWL!D_v;r(M6wQtC?9rmLr?hweK(l8wZzPN_$* zzNORYd3mvaP!^`XbF9 zPmgVFD^hC4>QyT|r{Xh2WS~lZ#vwN<4COTP5w>qV!*^KkUZJq~5VHJ9? zzWi`6byDgh7FxP}{`|S^o$eLh!xkD*r_{gb@&7dyA6968)9%x@Xs2l1+8)|8Egb(a z{%HJ~_?hu;@ck#pL*M}18#_OCL~LFx5Pdy*SM+k^>EAy(J*q_Bh}`MQ{&z)qD7=4o zT38Cb9=ZoSfX$&pLpy|OgWn<_{~f{ez}s&J7vQ_V8-e=*#lQ)H<$>lvNPQbz{mayK z>KZU*~)rL?nD z=ljn0y6^YCyzdy_3g3KRB?cw@YsytqN)B;LJujh|#K2uJkwZ<%AzJBSNFb-=5U%tvB+xT* zh*#aYPy`i; znFlDsio}e7*5wdb)bG%)J)R7$E{B*R*Atk!972j*PyE;95K+|gfeAZ6nfIC;!ih{v zeAna%hcKc3>}2R9FjJpH zh|p<4(CTxD5jrghN^K57LY*KXZpLH-tIZ)qXse0;+8pA8wwgFkThAy_Ed5UhqAVud;# zhNiw@Pz^am3I!8_)R05GP%t4tO*upj&6)N{jKi>+atI%~tq5FG4sk=b6+vvwAz*0C zwMTg>2H2QuCq@LXG1o?n2wX#MzC|n|WtkXQL$1|jLZBLQEiMxRG%c4hvr-!sl|0H1 z^NVd-ZeAHv0z54@w~Q(2z^q)eTCpe2nXQy`V#A)5n=_U@>B_9!?6K@gefMLT-DeBRCUsGntO~Y{<>9jsq#l#D>+7o9;3p2o1SuE)xP&mz!!n>(&`SWB_%! zDNa3ssLM@u>WTlF+$8gPr~4<~YjRCoOMKVl8oAcPbCPN8OeYyoj#>>*I&ud%*PgxY)O`zsDX&mcKk=`$MtL*nzRV5#R5K&5cco)x;`e{^+;S z&!X={Ux_{zy*GMe^q0}Iqen*%i7vo5gUZO)kryMkN3K9!zat|HB8l*S!+#CmAI^t2 zhY#_c99|S&fXaT;!xO`i(08FvkO$z8p&LS%hBk$c26$ zP~*?c1vrFV28-}*p(z;0PJ{OYF9hyJMu5{$&2YECq(EH#2HzO|tX`vDpl(!;QujtS zfC;M4|DOK||E>OC`7idLJ)$_2`?N=7+A=};P#i2Q~8 zmi#0*1Xs%E%Ny_&Vn4Y}o-9|(71Ag88u2h{1zstg1P(z9vH^VUd)xPf?{~gm3LhfG zANBGA$*35(G1F;mHD5o_w|Uh-KaRD&AtIw7&~d>$K3`);GxM zwwb*L>@9w8IfbnKn@%BX{}foAjWS$YcbS%XMJni-rmA0dx)3%)9u-~N2RYLfTf zik(pw z%_uEuidZ|Nw5Ta!4PP-_Wrp`ds{KCw17Vfv+#!*T3ZHtJTWrj>XZmGhQY|3^c*!Yb z5HIRG&CDvfKw;^$v=>A%bMd?=W=@_n256MpW%KeZ7qQ0Aa1m?xwB@fi-M1LIDp}*F zL@{&lq$p-io-ocpl)1#F8M_{V_P8KrE*=x4%)_H*&-#Z32IuR6l!1Qj5iV-cV>l2! z%tfrDf8ipA@Mnie{{oDL4{;Gg{F6D9{_dp%yP`ZN^Jf&b9>Te9ikVNNs5KWeCx6g) z=IUbI#m4ktw|)E{AR6ZCexhOC?$fu;>fTsq?qvej_V-M{n%rYL)A!jd>mBOtw5uj) zcM}bBau?AsZ$>TZp^WbBAe3NW4?gX8dW~v_oO!y#C1-waH|N&c{j-7%=QdHyyxb~^ znUh=etO_P5s#)*R+lMM$%+t*tI_B;s4;}M)qj~a)+mf^!1S#`#y&z>Ct}|}Y#uOom zD3ZPoi9NfvjGlSDri`BXzgkZ-V2*krcA%{q7~ISTeHB$Pum49?%;9g%Q(qr4bMzZ7 zVh*n4BG&NN=FO^WWUzPG?!&K~Le}_~P9bZ)#q^jS>{`umOI*a77P*KuESU42UWfG} zzn|s>DQlh+q|8HB&lfR-a*eq7t50|QsOob3P>yl@kZ#t~wdifC+t^=K+pxcs?b%;a zm(k&_!QS=ubdGWn>(>=r#5(m0;}CTXqT-xhSb7mMu(El%oT`|kpHmfcc$qQlUA;rN zXWF-&OPxaI8x+x-0u-aD7=YLm?=YK0R z`QK9K*zYy+x<+|V_(P>+{@&BuKit(fFw%|w>aRZk+p3A&r>DoEUMvUSkENB@68GjZ zF+JS1+H&ySR!!tJdUhG12dHev+W&V9rQA!D`q^(Ge>;X!Uacof5->ZhJuFu1|7^uT zUZv+O5Ik5dzbT`TdyM-&scc>SwYOZ(nDTT#GPZO%PW+2pa(2RA=#ry9#$)_~m|TaR zru%gMOZBPFUsY-6FJ+VSmvm!T-qvha-D>|?Rc-&N%&`BI(#D^9Y`gjt`_HPQ>_3%_ z_Mg%X0ePG>)LGqP{$EvP{;y0o|Cf$39@lAm1*x6S1Za}3Vt-YQ)8qd~W8*xs|6Qvcr!CTEX|ebx@ju0L@xl1w`0RKz_7SrAUyW7%O6>lh z5d9|lQuOBNxzS8?ujtHZJn~88@yNB2Ga~88j**{)KMy||zBYVbcpc*Zv%^~GGvood z2`l#vp+iC)p$XvSzYx4Rcz!U0YyjH?J_|e&_;uiH6ug$D}a zwhjxHhKHjh@(9`LAq1-**2%~X>hlQJI$W>>J=`LZN1WE-!lR#v&^lbO)IClY2+lfO zkb%_X5th|MQRpUn@8QjB@`%PVErGAeBM8g1#B(B#*sBHYx$`EGN7U6}K>R22h_^Zn z2*kuZBCScY^JIP}<`G}Dl*IMKJffoogi)Oq1fV{T z2&&V9pw#9OJT=Z^y%aI&er+B>Q(H~^*X9u{wbjIVT^>PFJ$ktwNuoTyjMn9?=%}eD z?h|=LM~$gB+OvlYpMgZ)+Hq+)@bG~6sKbLt7ZD=mT_pNM9zjye0bY*iK}h5gCv_Nj zbOGT}hXH}8%OfgkcAj^+z9+6P4C;sd6RvZ*mrr|WcJd&eapGO?j zI87`If>EDGDAZ{|P#W`yhUzgUpe({>N6(9`F^`z2%ZOk#<`EZl84W{)Fo`_Eq7DNB(U3<(R1f6=qN}&h>(Dgh5e^kh2uwpB!BD}305#hcJUT9*Y5AHk{1BPh!C1fwpGcqrEs{}b~Fg&H^S z485Wz<`Dw5l*IGIJc6H=lDMtQBkXCwrbl>UJ$}op%_HV%+;UC5@p8%4b$P@&?dJ4p zUYkd7({4_>R+mRW({4_m230GwNuJbhD3Gd;*&C2v@qT2vk!Z5lgofL2S$;XldMuI3hWZ8uJKSx{L^3 zV;-?fml1(W}1GcDNwNv_5Y-Lc{aXmeSsME1JZA$ancpiInr^`TIta6 zvEen?X}>Gh^L629=)a*4LobFNL_9tlIyJN=@cYoB(Com8p-A8`Waj^4@V9|t@SNb9 z;1c8#m>i7x7W!slCBE7BfbU9WFJ+ceC4Y^T`~C8-<9bHU-%L-j6?q{RijA`{D=SE5x|i=cqPtOYG;d;n?!neB(RBYtg%-1*4+i&e3GF zBJ%ghgOT4vPK&IH>=BtB35Gwyw}|V*=czel|6i*vQFlo{a>$MN%lsr-PVdPE7@BfH&fD}OWz?^iN&!{som|2C;xE+=X zY_F+;+&*fWzfNhBq`}O3#8_vMQh{I2P!80!s2_+>SGun|J)G`L4`sRr`uoicdN`o? z3a(aFe__;(8q5p~A{xI?k2rD=vlf+8XP*aJ;73BBhDN7!Kt&k6L5}5^vaQ~)?%p9O zCLLx}CmBSCjPmSyavb{%iho_DBz4oHM|ua1IQgAbuPfaZ5!25|rBY`(!aImENf{Ib z(qYoo913*}=kQme0+W2+NUtf^P{jq_iUTXo z^HwabILBLYK*d?!iv26j@K!9UIL%wJU&SfjihV0i+7=t*cv9Gv*0k?)g13C{>aKa)jBg&l$ht9zF3iUJjUP1X zYPuVv*?#!c-ChP+_X_m{qSo69PcnXSD@N@g0O3+)k$v1LWT%+lB_yYqJMkISpxnL1 zqe0)@=zC7y&bouR#=2$*x^1odu1kl|J(NG0tn68Ko-Oy!%QZ&rM>o86Gyw9vJkcmm zSH?nzdS0F|#^Lha<$JzX>Cmq@v707F+X0?O3$32}i870}YTMta$b|>-(CXeEBh1rW zeS%w76|XwnEmI~dLvERLxO5GB{2Ko7z-<-;c;?0h0Uo=P1p!_MY%Eq524_J9!y2$p zf%p%$%s&3{|1oF121jE~_3?tBDpqxvQC87@9L(yT-<+C{%m>yv((Fe`y*3|zkT?yR z{hzv8cec*&?8>yU{lK$*TU@Q32ELN3bviw_!`f`EpP#dRMOSO5fv@0djZ8K3QyueJ zii2i9O8N;scNjGLKX$k7YHiIlBNdQ&^3L|<-K`x4zMQ)?vO=`9cC&Fe`%x57#O4Og z{tsQP+tVGW(K?^)i*EL#Frd)dVbJV<-`%>oy{o6o-W@;Nmvy&x82CnAt=qa=(yhoD zU>|Rk78I}@2F?C=-L2aZ*Ug|ZtvPGWev}s!TXTbE|2wYM^HIRJv)L|-I@@=JtF_a> z_X}6+mel-oW?s7<$<@!6WF(@it!Mi#bGLRF_%3y|o|i^(+Id}!%{$w7iL15K zz<05`^}PAb-E-Sna*Nr%i`=ap2EGeP>r`u|rH7v_D9|X3d)_?TpxOV1tM%NTw)WN* z$KBxqS8Jz%?|f@5F@!9S!Wu~1#-*|Ef!cVN#=aA3)kfJq+~*wMi?k{(VZrdJnk$XGRC3M}QHq zJ-Gc}L|%&A9VtXk1Si0#^B4Xm{C@c9@SWi;;j_bo;lskahv$SRguV~Gh5CNihAs|m z46Oh=U?TDZyc)ba_{-o~!GYj1xiYv*a9VI&;Gd}McXQyPz(8RCz|MiWfl1P2X+>as zK#{hQSE!$;FRJ%rjlU5qd{lwP`u<)2D^gI}*Z+wBF5fruUjCB*bX56Uj7$O(QRVMl z<#FX^tn`mn(#oFJ_lVc!2j#1LSNhKO_4}4!GOm_>E*IoWe4j`^L)C!|zQ3XFz-sAC z-!sxYX@ivUJs?lF*aXIdZU}TAetga~R!KJX#pd(iS&2MBDDCc0@k4#KTg4roWt>U8 z6<=AMsY%8|l<}jgs=&H+9NXSg){yg6MwrED%2PDG@Ga-N9u_Tc_bb*s3;Q$#2pZ`V$CX}G(S zTpI4}L=nhlccFVHxK-TW@op7&c$^5uXkPGltV_e)9pln)Z<|FRo9_j8ND$?my=KSk zZFH-+!wn)7BYwf(h)ct}H|)}IZ$r)#PMM}`aQ;R@l?mF7asy9g+H zGw7-3eLC7x&wIAsT=zQsv$6>MY91(S!*Tk{+HkCO=2}xI3yLB1ImO)LTBn#hS>wD` zm8r^z^S5-Qbe(-K!&FYSe_$$)v@CHQqt55-!14xVC)`ELl=?)+dc6&J7gu{5@XoF> zXWzT#ClGo(^&BAMsptN?%{dZ^f5L5-Q_Q`YMeD^9ps+>`qgj{-*Ig91+HS6J6aqzy zqeKNqSSc!aM~^fI;$0CG9*^+UbH|5!>bd{J%(cE}X;8R7)Jx61BNJAKF$2!RqTKlk z%Ka>MNV$gt ztW(BW@enTdcZ#`>MNTnyVttYl>xjb3zUHSYOU~WwBgna*z0E7tDkwTTu*^KITs1}E zcrQ`GJ?|+hxa&R4k91zeMd5FE4=s1Pn}?QrUTA*y(mlJXjKcA*RLT7=pi1ucXXato z-C9*e`HguOqT^0?COYnOCv&Bu`{d4cbD==o1+pboXr;%+*hlp;I3M@!cmeGu2Q0cyP78|xU0Fmzs?e*@YU?naA$K|8t!ej zHI2L$DICq>LhfUGF67N;S|P@!jLe*!QtlVt2=K zvEyQg8M^?!h&~m)CVEnI8CLvq@R{Mx@XlD}e-U~r zbWP}-&>HOA-!AxW@V4Lu!PUWCgAIZI8MOe5ffECV1X6(*Y7E?}o}nJD&QpU}!~e52QNf%3l(o$(YY65=cd){}8 z?|k2Ca1W9g+F1YU3m|9f#MQy{I_D01POGUefT8WQuum06<7g~^rmd5=22pQz>1w@1 z`JjCh8^#zNxt-~$pAMjx56hPWGyKGtzp!x!M+fECDQd0nR zTc^$IC}cD>1u(anmUyozfVa)G#B*%{tZkjfcl5}B7YVQc&bF;4zH19$Y};z$yr}@b zw$2VSqVQl==-gG({iXs~+ioiY)l>j=+igV<8w%iW>jYkgNOxJ(7r@}wXPcXtD~9da zfo~{)!|im!?^Zk^$I^zcHyZI53L zbp`Oaxt?^Qt^f)**L(N}d)v?tmhlhbHrIRj2XC9}iT}m|XxsWFw0`86WBM|SdovEY z2%Cn+0;t`o!4TA~2*w!?tHBnsedI}8X!eF2nh z{lKpu99RP;4u8R7!>KQTuI;oSAoT?hwVf6OWoiKwZ9VrIP$P_?}*3Hpoz2-^!xbY#>R!h7V>%sOn$8usYGi~^Y3WsFH5W)wi zq^SVvx7&)KH5I@BcUuv}IRy~G_cbOhv#xh!-NJ$XVE`YDF)q}ZYjhsx6u=E1s|D%F zoC0{_W3?c?sw;pquHTt-!e82BLqP#-ajqwbbp;T`xt{oMEHIAv!1{yN?}|-}Yw5PZ z#sWCv#!ZVG5v0Zfc;YT24>)keMI-uTOBTQvH#S<>aOB807C;*p9nq&-vH<$H=*Xkn zV3CWC=o2nk0Et|5M21#d0EOJRss`4N&<$0!1#ri0HR(oe0nBk*O`O*iz#BIYBMuY) z2+eNRbp_DIxt_SMD}XW1^~C>_0?6We{$ndo)UwRrupf+p z%ZOk$7Cr4ThBx-;_GY`W$L{Fb{3eH*K`dajN(MzKP(F3EY=r)ME;5C7> z1FHjj2BroA>U-(~>Zm%1NPdgDjsKs>%XhW^41X7@3)X?7|B`a6a-p(T*$+|sxcok1 z_IY_k-XCe+evn?0Zj{cGdZj(2Ns{Dy(|5nG=sVtbgl{Kb9R^4LH5IWW(_b{qFWkG~ zO%DZ3%$y_q7Ft)tvP{1hyS{_7yG>mYYcj4UlUrBBij3=t|3neXG5roPI3Ru{X8?&J zR$~qWf{-X;Ip#1R5cNf@$MpBNLH9RwhEZR{ip*(2K``K$DADl<7N34WOl~bw=tyAIqM`kKE)U)@9U=Ku#`V zc}DFB?xZ4CX?i|y1DAY_XLC8Jh_xCqBdC*#Sg;W@0@_r>s?9h_y}s2m%%&n%Zf+|A z*;K@;&22>xYl~R1>CY5nnB*AN7O_mT)dZuqh=rN0CeD*ZEXDMvjqzpPyGDDmh!vP< zLtv6ctiMDXg4IyO>dQQp+))5FZw*B(y#y12)KJ9oOEB>O!V=6j5n==!2+J_R!~+QH zFu{ZXC5u>y*`pRC2n;D%#8OPOAyCO87Gk0e!Ky7{8D<_xXMBOd)E2S+veg8kwur@+ zttQSV6|u51PkyiH0|S{<#Bz$55wJ-`tg46^0j(=qi>pB~Ho?&9idbA3cWOgVVCsrk zS8+Y@pD1EUW!#5dkqZWpC}KI~FdzttB9>AP0|HS~#5&6Os_KkuF#k10ETEW{IIk&U z>BO|ebA1tOCgc9jq8od--fj{_teA|>F$D;& z2PKMFIyqdBfh3ApJDCQ`yrB34ME4Z*4{Vr^txNCH=s!PFM9AhOj2p|*&nkgX=pn~GQj84m<=W1+aSjA1kt zu?liq5vZmjmO^eTg4kHZdPrY(dF?x6fQ?10iCjhmud#@gk;{m{H5IWwa&$`EmB#Rz zidZJOtq5RK5ep@^6+x^oVyR@F!LCiB46VM1g_6^PAk`PKOmbQfltdAWB=Zy%H{>vo zL=h__hXKJz6tPHh7!Zh>qP0%K*EGJ>gZZy1V4Y;#OrRysYYNsfNpDL$Ckt36nWsJ3 z%*p&G3s@_OHUuSEz=}zusw*6AJq8h0@%Ua{S6J`V z6NtLPfKyNWPcHOZuj6Tbll1~@jNUxdOPBeR3+ue>2;SsEpO+oMZ7i&{ZYX*VWbEJa z4&kmLMg+03&`XR6Tti{CHPeVXd%p-b6jr%R2vkF%$7Mo*>I)g`ZeoSE$$1g>wN;$t z+pa=+O!<|vSy`r}5MTd~{5B%&cgVk#&qI#;qvU<$l=cB?1Kg@zhA#xmv^Hru>H_>T z{%ri#_+{~t_%f+Io{Cq-{uz5Vc5Cdi*oZU%I|Sy$Dx?35J{!H&x1I0X=ta?Ws24Z~ z`vd+dkN3S6c@kLzFN_RDmPdAwzVY23sX+~Z*TeUQi{TTcSA1K-hle}D6OnD;_0YZ2 z-M*8NZD3>Q;7}?wF8G;rg>Pl>k>Ia`CkIy|k6?|o!M9W3%fM5C`vX@6E)EEBK!ON&oHsy#Gx9p#KQ}LjQEXrhI{E5dInb zy`f&jpfbw`2G?c=XZK^a{wN4gP;;P_jr54BZ{xP1hKSRBx(A0d+7GNmFBl@O+!Mx@XV?zSUcu zG4}S|RDFxLy4%P*d{gz!Wv9iMI85+YWi5<}gTRr`;zzC1IRmujPNf+c45Ai1tm8=*v>&+8 zZm<213+?9G_g25UGhL3)FWPrbF?aD_rxP=+Eqz-i&+j@Pehi>v-xv z?LXyAxbttynQ)-5rzwkY`T=OsNZ)WTE;9pdh`@a{wjl@oa%@8m{e{WV?@zB^IM>WRVEF--H@RY(jrtgxHL9yWxY$oy(P@Uv<~5P`@UOQ$A#QSEf@0UH3pM#XdRME z?J+R8j=PvBD!7{oqJq2H&K$DtYGHa^W{{s?mD{>i+}%&yD(-L_6REGaTmJyZDM*#$ zMFn?OEh@OHDuePqq`Mj%+6$R;jzKur5kIXQ=WW1US9%+82+cg%O$a`Zai^HOi#f&I zNz^<>efUt!T|~H$I|y?jZyquj$U}X&e;RuQ4lz;IZeH9szysEmL8q9z3^>KyscJf1 z%bcz-Nq_Fg7JDM;n^UVUs>*KNN_s{vW7}I-Y(F|W0({p26U`#iRZGka;IJO1Glr(RU?&D-UysQCTu@w`H z=3VaxmEi?Ld3Fpn#&P`^Y7F9oG1M4AgLn6g=c_e>Uu?w$Blw3mh~Whzz`j-n_@Phf-7-|ggi80g| z;8kO&F~E1mP-B2K-n}>8>#YG^vK12y@J(+J!wUxZ=@@DZ@bNL!7~ubnp~e8qoZtpF z254q^Ay>VzGO-4DvG)LN6AbWg-hD7kFu+g7P-B3PjiJT>e>;X611xj?8`v1&1oKV7 zT%Pb36~9x=-z$`G9I3E;Kdp%G6rU2;u*?4~Wc$A#b^WeJ#Q&n$Dag0i6FVT*9!ti8 zsOR@$^#15o(Tk&Nqq|4zBR@p`7P%km_+La$1^a(xWKra&k*SgKU;%s_emVSm?Dsz{ zygIyJxH()I`aJY}=uU6}P6~C0_6ki41%n?4pT=&0D}u+NYTwU-4d4U3A9y@)Q{b|| zrof6od!RN@p}wO&tX`*Hq^?&Nt8HpR_4_~eKj**OUqG$CZvS4$-dCx7p}efzsa%1| z07ogiVJmFZ_fz>}`Ele$xIi9|7t3?Cx8%6=k@UE9y>x*zAT8DgrCCzg_r31}-wVD! z_-^z4%6F0P1m7CpGVKZNM(tv4skXB=4Ve(WjlUg#G=3W@AD$K85bs_-;QT~j)SU8s zf>+;JEl-!MH(G11D`O6s^#WHJHA>An-Y6?0wuH3{+Y;6)q!)EyFOr8CZiTnV%AiBW z+yopl=14UhSuc+(j9NGD@d$5@*{zyL???n}{KeRM=^viHjrRCxrdOGB&y%6UccHSnanF?3Dc6

O0CPs{U0*G4AOy3gy}|3i-V<3Mt`vT=+Zc z&&SqFfA^d#qkZ-5<#kp6EUz2)RC%3pO?jQ{eLa{jvvr>1;BT^*jjfm7_QW;XSKn4% zSM_;$-MA;q>y)d@>tye1#eC(h^&AI(-@SBfz4VqRuK5-D*7CZl&&un@JyBk#Tvc8t zzf)c()p(ABzxG}-wqAPE)3?#S+N^5nzEaJX;ZMuA8~1p5o$`O>b+Y$0WWE4T^c;u% zYFl;j*m~)2p14N)>YK~!sy->N8~0dwo$}lAI@$XgGT(zI7_U3ROK_#%A!DyaibKX; zi)5pcqw_<4rNl+7rH_kP!wTb7&GG$S`@xo2&9wj7604Q=z1aolXM62Chm5uSuS3S# zerp`AvR~`9|CG@)pWl?xGyh*tmKSaHBfa+3m{tty%Q3AO;ul7}GmL2AK;OtZ7D>_m zEsB}Xe~Dt|s(tQOFh`%c70lJACPHtfuX`bKOIZsl?GsVV z+ozu2W5$eAUXOxU4J&JH ziPfgE#;EG*3UyRY6r`;61VPF?Y-g0)BN2|uZC!Ha|L<`uZ*1x)Zzr(+zem--dz4XSqq1CSQ?`{q zlm8-@Jd zoe*Vbnr1b)Ia;y=uCi!Dz>+19l|>tZHKhc$vc6%=#u5r*bHFJjaF#s`3F?#*h|3;^ z1iGOF_OectwxR7$T#V1vPy%^bFd=XaB@mbe69P1&1QN5pZ`cI#D*VmIIimzha~Wd- zKBEL;a~WgOjmag@oAvz(W;a~*!FdlRm%wkPb_9HK2|Q}L8&W&_H6dTQIwox z)RjPd=6ZrqR|4&s>xut{5?IgXc_h{@=MW7g(4GYog3?d|@mVk-Ky@WBpN)<<%aC)F zx)O-bTu&hCO5i?M}%ZOk#mOzJg84KUU8R zORk)n5?IhoO8{z0pg%J$@!VLlc+Wf;tj8Ac5_r!>AMKjYJV7P9Nj8>1dv+NSxMT^e zXX9C5dm_V0mcV%yZOEXKC9s}F8-mqX0`FPqkRx9y?=`5;E+c~0SOWdoWkleTB~YM+ zF7a%p3@up#3tF@xV96r5(4q~&YAk{gEp*6{>y&{t7D0@584KI!V96qQ(V`8(YAk{jEp*6{CzTHklxUX`L2E365bZJ|aLFR*&_b7Z z7FC9pEP@Ly+7Pg05oBo5hG0!Cf(@;2OdoV)G8LF`3~_1^q-ZZof;+VcdbF1%L7!O! zQF@^Zo#atvJ(yVpZMvK_>BY<<$kXMlNly|*P^gW~07De!md%{Xz@`YejOs{!|@}PbbQzNBxPaj zyV&!wTjX717smQx`^KikBFItwZuAe)U&)QpQ=*;G-J*?AHS)d^jyw>#BC4Um9)?UM~MpnkYql-}yfA zz2^@tK>j&i&xk$R-t;>rYlh_y4dt8) zXqT8&aMn*ltIq;d2YEEKCIDJ9W3=EF(#0lcp1EVghUNfqG{T6XHmhR6T`$snZN^zp z-BEp}S(?F;q25FX@nKHt>fv>Ls#f*qG1R`h<$J{Ou)fXKOMty7*OMb+_!jOG&uz^H z#ZMpho&nSYd(mVvJLbl5%*~sO?*%zwa*WGa!J>}z!r{l7iifslgZa37hO&fTh^})G zC+nbo81!3Tv;Rxsnk{46?EgZ%WQ1dEO!EtJ?QG?+vY=hSa{|xyT{%`C1#{o8$Yz!ar@m?5a0$pTM*zDoG~vt zq?>s4#WY*S+fKFI8oOrnDl7KuP307~ zihG*uR&j@uoGN`A4tLlj9wXtFhGX=)c#H&f+rhJyL$-Rqv(8xGYx229kzD(Dmw8;E zK;UcgIX~*jVqIB}|7c@eVt<&aEZKUW^&8M@^4W8hm0PtHZbvWwziWY;(-S}DnSlfG zn(!_#%X{+LmKqtu?J3ru9c=zzk|&wlg4lh`Qu}>1xC*e@A^c&B2V`?th!p5r5Cqqgemekt7hq*Fh8$&v}f;l z)-=2CDti4aHY{s${<1Y2%+Bx4O`z-o z7W@ct-*3dbE5pSd7H_K!;yLM1>Mv|CNSgWo{!yX5t^G;+t#+ceLYu3_;vd8xivK2l zdOU;d|C8hX*xT3>kdJMOEsZr}SO4eHr=!1fBT1Lgw@d7q5H6Ve?#b?&}^{&-wysBod4nA;$U6i!@%zX=LC)jGzT>G zQ}qe;2K7RN>EEnY`ai=i{pp3o{+a%$@(JqpU8|gOvM|q2Uth`K~ zYjFD?M$Nu+q_xtXQj_lo->bgc!RTM>+ryXi$rb;osM&%jsu5LjzUHtGB{f?RJ7rq? z{e)>7w;*C_e3&*j3=6M5+z8=Pmy!Jv#ElR$bs2fUA#mz25?+kBCqz$OMjmhopt_6* zTyhIysK%FYy62gpCAT1oD%udRES=4O$K_u1ak&BYV!5X$8h$@&6sD>?wq6#JiXxbKpQT5N|<#%GUBQJ5L?y51Xc&^Kw=AGsSX1V2n13M1A*D*Ep>7KTr(90}>b4+g%Jsy5Z3zKWV-g)aS?<2JgjlJq zCf;jHh?3fB;yh78eAFDBlTORsCrXHoIt&OvqJ+Sx!+=1{C?P6puy@L`ZaLhH62hZp zj0yCN62hcqj7c||O9+=P(k~WtW9$qX?DAmyA*d?a5Ui#W!l@~965Lc@j@DE{DAjF6@R~{pp}MUIVzPwLso5(R zBbehQO9+^XHUuqMLd;aO@xVgZ)UN)|skF0)83C;+ z?PM)cGyOE#c};0Yt|bsPr5(7Ic-G_pC;MtDjQoE0XusCZ)rPdgw1ubwFi{J|zlpyY ze>i?q{8z~HcSd|ud{ulIz6i9$C!iwWTd_N1=f>8?_K8i7eut_6cSm#4P0@68pXl^x zF!D*{naJ&tQG69hM|Oye3x5`VB>d~}@yP49LwI@^dssprgq{rD8oD6Vi^_mALgCCTADkHYKJaGXkI3kEc3>c|G|+);exIpNt2Y_h01i@{)d{N4|AGG* z|2_U+`j7Xo@TdHW@`7@ma*DD7F&I^TRlXnJZ_bog$$Q9?Wkvdj^dPVU$>K6 z`4{RTK9*(1o_z)-#Dds7Tp)DTZ6cp9%%i9_=HiL17|0KfVPMS1vBIGgA@mtJ&)DYZ zIf(HGm)H4TpD1_mSrPmmJX1b|PqKGthE349Q{@AHgsptebot<|+8I;!_>Z-e|L|ih zjY&Lan!IGI==yA)JzHM6HABb8;FtejnafX1lK0)3_wh@Agpu#HCV5|e^t=zzQsIiw zqaW;`O)@s0v2(`K$W6w!HbH6}kjK2`@&i4!(;2^d&}#M z`TBp@d++GFimPu}r`+C)W!dVIyDeFkEEfzIV@x;2HkeMXq$}%UNmtgra-oXJ*bEiLCcs>s!ye7W{#A_ixYMGjrz5nVDT? zll%aweAH!Ad-P8~!l2!cBf_a>K?2t)&-^!B+9LuNHFR05bdGO?L1e?__*(cJaU6ox z4H?fy$I{4iDrI3%Qh9W;Y!qg94%Hfj*Uv<7$Nq6_OuNq>!$WjL7#^lfG(78tXGJ0I zDg5`018(MoMf;{sc%iH;TCKH0oCMrU5B~^*cCWCW5Ebz5 zWsa|e*V3NR@#Q$`aPMb@2}G2F9zo3^Tp{KN7oJH8wB!s*phcz=QC9!A@H7jZ3Yco4Q#n&OI%nMtla(9G zN=@Z7S@@}(M*L=3&9>nNkxZr3i)1RK4()JFnCf&JBvzzqKn{#TT9{dfB>@(=s> zhC2bP)GEjf@VM_LB@G$=)4u(EbA3_uZ0}cU8g2)?(|e(}A94cD^s1h>J--FdfRo%u zcruU`@BsJep5>l-o_hC2_Ydxu-S@dKbuV*Ial2gaz&SwPb+Ri7_XJLHDbClNk2r64 zUgJE?nRc#qE_F_KhQMFo3CB&2oa21QNsf#o;n)}Q2h3J(a|FS2;7PbS@O<@ceMCQ4 z-$Ad@zJs%Y+u&}4B;*m8syVD1|NqP1B!?^gtZ@ei3*y^EXD2hrfE+9w6hB^cae>u7 zz5|=g!*~{18{bMCqR0*ycKgZUikzUOV zCA(X*nazOD79IZxp3S&s#ix)CLH(6Rl}!&P`f>OMyaN!@;EcvqB6}#A?C#rnqzfWD zgo|Rr``O~go8_7l-q#j4UNOM;nWpanE}NYE6`Q;J69d?d-#jc0uN;q!Y1?}|Hl}nh z;`+lW6|d?I?`hA#6zyTpz*Ou`Mmnd0HD)&nV}f^;FeY=w_)kllp$(B?B0NthPadT* zCI}_dMuYG{8TaNG=WVZQ7qZfcet|)GRl9)1)4)mm2AsxcN$d=f5}g!XCsOn_eXB@O z*Qs}qI2$Ynf)$o(Y=j^a6oR7#ddOx+)r_K|I6a+XmwB&Bz(d%7+Nx})nR>z&NYnCA(07-N=HlwXDDuj%iK zAh!wu@Ezk#GMs$PWsy;N<#p|H(OH`30Q53r{*}t39V>*UJvkl@?#&O2YcD1pIvB)X zD*CCLFt?9~7}g(U0;|~*W32zcef#w)eIDyr7E`&BGI_x#=BGC(6U=cd)#s7*CI?lL$z_t^h^Ij7}mjs0i z*V?aPl?U_}#c?67eqmhxO&oOuH8hFbKso7uySzV0JssL*8d;>-~5mIZ}wl}KhA%Mf3ZLA``Y)c?`GeHzG2@!zQw*N zzAB#|ZUgwz`;PZH@1Gzl;1}M_-b1{LymemP^P%U@o?m&kd4@e}J==R~+~2!jaX;$5 z+db+&AMONL=UxSO`^|9sAREC`u7_RsK+eFt>jF3h$ig|m9Zbzt&VdX8yssK3mvr%P5(fD6ygTX);H@t`hNP3`W$_-UIFm~e}M>s zd$n7%>$EGi^R%C9o8dHIe{Dx?mNrq-)Q{9>)d$sEz+WJ*Uap?6o}q44Gio2?8r)M| zs7_I1s-k?Vyrw*++^3Y3ZOTUJ%s{ZMm@_fiUmuSTW3q|i<*DIrbNwF9iezJv70!rc zV|f)G#z{0mNJl%lt~tB`A6a1vyb9^T@DOF8*D;6Fl!Xc(q%8Eh7B0BNK#U?6E!%3&sjmOj*^&{Bus=0n=u z!6bE73zI7<2#uCJh~uMW*Wv?z?lfU_x*I%NsQLr#VJh(edzcC*c63g-**U987qG*h z3>CRbLa4O;@!QQw;|`3%``Lk1=Dv0y6}u1i3gX1d=S1O^Q=BgT zcqqK5ElTC@VT)49yJN>GPBMLhyIBD$Z&xcoMXewYb&R9CxH>MZ4Uy-^mj=PG1&u3X zAzGR=&Hji;yU;9WIUmw4z_t|oL)qhkT0I>9(SxHigrCuM!cTpx@Ke15PXf4XYzg~2 zI*I+Qx3Ry~b>zEadq5Q4#SWwoVYwYhAH>daZ8q3^gmaoqz;TSlTzkrxidHHmt zcghfzI$wsUzz#f|!K2vrs3+WR4^zSO>|rXr4G&#jIIZkl385leC4@?AA%^s^^B^g| z!Y|SonUa(nr1D&TBkV!>Z>c=T;rJfECFTLr>B7%wukceR?;mAWZ^y3-{u$ej{T;1h zf9rGE-)b)zlE$$H^Z=ScDr|__An(w{A31QTk>>MuVx9+<8Mxu!k@wJ0CuUA^e9N1n zh0-i3l56IeDhQKn2I*TH6|lQ;O&?PSJEl>7Ii?Q6q+H*m?eSwrG`vqI-7B(5addPScc2h<)G zjP6V*^t^Vd;GSY)+)2bsKgOXwfz8Eq=W5D`A7oEgUa!>Vna_!}gj@$k#R%sVw0kZQ zde6$DUCfV=77@nX^u&)aXb+9UfQ_MB1(ym@1?ta>1Q#6v=lb-;|AtE=x9iw;NPMmE zOa(p4Yl0(%fUU(F5-O6KEaOvb$@+`Js1lEW;lQ z-~YWsQ-l8rJ{=ql9vxg2oCW*-X9L#-jtLwV*db5{e*Q0krT-Ft*1yU>10w&Q@!jY< z-Ph$?=<|Eu^xo_}9%BBdc)s;K>ABu>lIKv*T#x2{-hHS0Vu<)Z0KEDqx;}M1;wrdK zawS~LTn%u;-|No%oR>N?&ehHiXUy>x?BDNpT<$o=ahPL~Bd&j{KMo%KXX;1kd+M{m zr~fVOLG4m)NZUi3sd>~7)IX|4^#paLI$3#7`J+-+ey$v;Y^O}9_*B}D8-%7j#4h8Y z>yaV2ZyKl5Ha==B-lZuIQOhP1+}xASFe4j{r)8XzxME%8X-KVa$V1e#z#=Jb$V1$- zz#=KC%|qlf4uu=(f-HrSmfAcGe8#w>qBc(hpD`}UpOS~bXM8QhNLODnflQ67vUKyx zdUZ+;;-4ipN!yeh#6e4JlG4T;#6#nVI8&+Au*Mt&MTvItQjN=Hi!->?oKKT*V=OE~r=a6*N=OD(J=a95C z<{+dQx72$4#-34Qj>a&XJd&oy9F1W%c_dvmIf!A#!JYU_j-1jlHPtx?U&eVyFpQ6x z7+RBquw`19o;WeMItTH}w6IjWnjFL_)57!|iZ2Wy%CxXl?b;j!CzA)oo%ylSwK)h( zX1JuhHU~k;4433L=4e2&_2iD}Xw1=oWRpkI)0m?H$tI7at1brt$#`Nk4)d%Jp*9E6 z$hfiwgXJ;QkY{HW8x*S9$<1P^n z3Yqx29E2rv43dJn97H8^43dhOIS5K#iasmcIh1go$h6JOL3pw~ucUZp4#Je}d8Il` z$w9a>>1yt9QJOcW zh-bFrl(e_zAgXx}i+1@ClU1TM2O-Ym6p-rDnuCDnaSBLPnvsL>XPkkC8wvbbC#%ei z9E3sJvP#vMk%Ne6TUMz8%{d5;?y&TUGzyw?5F%~mlGHZmAW+)MC25?VgK%m5ywH)E zoue3C!%ojZ;Itj5qcj=La2ETNn3pmqNjNd8!Zqx zZE~)ozXZz!RhkBFpGv6n^7kt0>-Qc^}x7F9<+Y>VLH~1!krC(8> zR8I7M;eAKVE33Ruc<+IT|8u=Zdwae6dw1~8@CH3!dS3F}8oDI-rsoRJ@t*ab1A>3{ zba(>6o86zdA9LRh9{(r0j|v^{-Y3)zrv-Ixr|YB89SE*twYtn(q9NwX@2!<^(}W>Jh{aPLDhI^ceiPp&$O<9v%zvbJ>!CGozJ>!Nj`c0E7Th zEpx(`6DLZHgEYsp&cFnHItbX5%69jeV>o;nM>R)K_)?C_WL`p2P;W~0;`;9xJ6j+` zYobR91ieE)Q6Q*CsdtkOKr)~qJF;Kk-CVQ`vtzuN0AzhK>8PU0usKM@Sy5M ztD`BdJEN1MeOgn68(G#odQ4HWiw9d48r=!Hs%dw^-;;q6{{$WwJ##r#tV=H9sH{sa z4BT0vW9MQVG{E{b&xlM$4rk8BoFD=W1>knRi7_&<*H}gmlY6xVVZyJnAWYhoaea0L z>VSd7V5&C>qYo}&Fj6by0Rky?QvK<5(2KF9v27&hvIU6NM%UW{kZ|)PTR>f}-b4C~ z7X=S}sZ523P%Bem5X_gUFc{X`4t~~2SJ>jLtA0WJv+!V=*WQunf%6#ifo$~a)!;rl zG6b<8StHLhI}Kz?E+9^j3}W)nw?gb$oW~%`$zk|hE5rnzV}+Q&ZI${=c&#mGgWSm%ZJDh~eDid3h!=~&k@zb}SyM;FibS8hJKxZ08NMH}7 z%Gm-ApV>b6VwpNJWLz4UNgke{x4^rI$X)65`j$)*QUTzjX4@P;)ar}Dlhu}^&G8@N#VVl4n#s#(Rc^G=B5*0cHoBjy zJ$Qw_LDF9H(ia|FtuIEchX}q@e``;&Yh)b>wS}m*#!7uI!%T7m$=Z#&DFZ!~=tuVx zb*KCLlilc67_(zH7*E^cWC-DCSqs9RYsP}GCp%2SYlL&m@CIX;A{Rt>JSbyWc*taA zM`hu($;fmKnvCp7EIeQ`GS&S?ZwhCT;q@Gq2{qOb*jJHBNU=49-mag(eyJ(-E@Qy} zU!r#7Px$<#+Klj+yJ<1jo#(@iT5!rO(rk=YE3A>z#BR1zj|c{tbQ9N8VA}L&@-w zGRP`-gbcFE98SiCaO@a9j1ifbLm813KZG>ga_F+5ULD*9sCRA{M#H{6Ko6m10M$- z58MQI^`!&*2IdAr{!jc*`|t2y=I{6K1U~MVF@;(o@^IhuQ;yo0+ z{3m!mha7*u^qlHB1akkY?$;sr|K;ux_x|n{@azA;^(WVrt_`kTUCrPJKs@UZjw>Ra?fA%ee3`$BshJoiu14%2qf>eL_9SJnH# zPd}}$P^*=%lqZzyl~a{&WhbRc(JS7qsHo0^ITaba;5;;K&e`;AtvU}@REnBC#!#@I zQq=4@iZTF&su)R`LQc#@-!z)E4$u)T} zyW);dk8p=svhoZ3 z6R~u(Ap)lAeY0NSu_ zu~#@F4<=GuR!Q-UJQzo9S)~fp=fNzBhhyK!Kv(8~A*rGDd9Z`>9Fn^FJeWUu4oOR6 z9;}|oc_xds?2_IjzdDV1Fn5YPlBUKy7&}ECNmoN2Or5yblbf@v2NM0VFI7Vx?3@CN zq^Thf22O!RQZzFUmQ7^R&w`@;AkX%?;lxni-ihIL@~3=e9&DTTyprmfd9ZTY^GbDS z%!9oXcL>yBWwIwVB45zmmhoaE!{F$8p6M0pY2hWC+fS%x9!S-Nn&>i?9@Jis} zz^#F60%t>9z)^wKf$alR13v#}{^$J<`ET)G4L1W0`w#Ok@P~aL`kn(%fg637fTut& zsXAkfZsP(wqpSeG9zX7)d+~L03eHxr2^te|;hQPV*8n?&wwd-xyldcCKOTbmG zZLW>3wXQ|3NiGNY3A_(62G7Cmg1>X#;k@2?m2xlS4cy>7(z%Cop>rzSH29t4UB~Yo zS38b&3^{t03mp49ws%Zdu5?V$e}LS9FGK!-d-Ut{3-n|4UVUGEk>04Q+S}Sg+Kt*} zZ~`%+9ilA-D{n;o7H$}L63!v6f{27}IEk39MwIWAca+DuSOgq|BcEQKpxj*HLq}3A z9laiHf|`XXH-2tRn~DEA09KVoe!mMqmX}9Kf!CqH2jo6H3mlbNr7q%yzmn!U~H_lZTN9pluCRIg{I)LDY7o+Y)^6DIH0!0RxYj6 zUr+=dS%{j;-SD4zBCWxrJdqZE1oxG79UI1JY}xXbiujYrO@;gsMb@n8OAYtH!ZEvL zpEOuxAQdAR-y`>r38`L`!ywy74r~v@9d23Uh94HFv=$EuR9Xpq7sHr~*YNLAn3fDv znZL7#sqo+8hFe#q;opd4D(pd#Ooco^>&-7W!}kkRD&jtYN+sNjl2V{X7_(gX9!j9) z?xqA<UI6PGUEu>Pyk}-TUPo&ar;)%5Qjif*5R0BOZ%}UW< zB|S-bjGlZ&#K$C&APipK3?dUqV5+*>0R9;~e&Pw4eR0pUnPN??ss~fIqgA z@kg}I_(ShB{!shzq?*XA?}hmg8VK`a+$+nUm^M-ZR8NOO1Qw>*%WGdv! zm^NGTfx^!noWACw{4wAlwGfT84DYW5({OB?9W}b%j;fzzM^*1Zoh8VPEtN>%VrAvh z=Sw7YJr3ryUl)h3umfq&{K5{T{c|~vipOH1&CUQ;%sUH)FJmMs@lr;jaxTFcxv7uf z+5E5QQT#9cME;k0H_rBh%Efjx|BTj{f9f6PpXyOK&5z+Fc_^*}zmg7L%t*AR7cmm8 zDM{C1W5kQQaZI=kqHXkP)uwM4UamJc+K$1j6}?B!r4NUP7p}t!TcHe7nNOiDWA0SdmPH9D`=T z40Gv5;x=hoC<64XC35K7Fuwx=?3+)O#WGsmG3!D-_pz`ip zjvsKSzAf(f4^EpTV1i>8azDFKme2Djzb21|cS1N=A}Md++f;Z>2jesW_Ksi^w7I5_ zn7LSJz{wHD_G^fD;xr!P`w+x6l>hHyshVI^^of(*VWq2uCrX5ArIdw{Z;)eeLL-a*Y>Vy5UKBRRlCCazx6}F zqW_-raoBO^o!gvSoQFG?!Ct$<@v`GiuAANV|@1dtccZIGBog7Mq z_6;o#HHQLl^T4aYhl4i+FVL=svxg&sdj=N-n}XiJ=Yf|3e+c|4a4|$Hbi>Vq?SaVw z)&H^o1^*u)Ug0c%+JCTrxxd9<<=1@w@cr3$o$nOiX5V_P)3?gk>8tVn;C&bFA-oyx zAlT|ndDnQi^EP;$aNh8#{V^Ools{c7zy&wbi?o~yNtXREf_)9u;a)8dJ_{{`L) ze{}!aeUa)^zE(bj+<#9fzg2EiMwLsz*C3<(Oj%hG)f-jy=)RUUYsucO)zw8wyYEFw z2})YN4<-E!dzozkw@jeu+v%tCzts)uZ~XcMRYf@XU~Omq04J;s*jH;aDY#fajr*w% zsSjdzEkL2zV){3f8Vc$4in1v^yuPkh+2RB2Od=rKE80gg6%r*j<2n&uy`-19pW4gXoBYpbv{$&F>MQDN{LdHFSNWe& zwTl1gS7T-?kSD3xil1Zun@ve@KTZxN`_teuX<{d1Hy?_v>rZ!a;7LRteq7ltaQ!av zG+Gcp&#zBZ)Dbw-$aKaR;P?lERstuX{F1c-r@V;16)R#t z$c^Z_$=LGP`NTa4H4`%+>dvwA@IcINO5wG@bO=6mH0+%XFM_yH{i=K z>qsj4PV{|i6{9CcN$z~Jia=WsS|1%Sst5rGjaG@j zi8h#31iap;V&o5zKVo0PkwNeqG`@bWIT1f2!gC<*brBz~#mFEGBzB8&#LH2c01roH z65N!U8ssFnI4YCiL99MoPPn~BNS#%5ybRQv`R z>h^$eBuX;n5ci@ z(KE81Jl$5;5yp^!3u0b1{!}As96ts8j?ys1$=lfqF@ej*`&7UOn8c&7uL1j10C>F7X!@N2vE;M8mCc%9tvHqa zQq$@K#_R|Wdy(-cJnA%V^2nNz;lWix=9S1!7KAlxsRd!J+L26~NSbMritNCMOa{5$ z1M6kQm(=JBjjwATXw6)Pvt;+3uDGpR_ z<4Se(&QB)in^!ouIW?{n2evs?uGGBtwl0VOrI$9hDz|c_cu={8tr|L9v)GTh$^$r2 zJz7sdR;GQDS+rJKGo0vV{wI;`#$sWeNiI9Fk;1xm5qSuih;&X5;6RN)8CLftC(3y}~0-ed3iC;$~XJu+|gsaL75nz(YJZF|*qNd@6Cj$23 zLSZ9Qc`_3-g(ov1&1O9XH?2sMKxbka1v-<{Kt8}w8TP2^O&Tj-XVO^NS~5qVMJrm0 zGH;bgjRj$Hs!4ZQ7P>Iskw7}U0>;9an#rWtKY*|WVbVetgh>mM z(T|q6tZ@P2|Nl)z=%vu@p>sk@$R|Yl*)&$xD ze*Z`QzxaRUKhxjm-__p)IRIbs-S4~FcY^N--}b)A5CQOl_b%^6-VKlmaE{mOdEfI0 zL;#%SNqUxgCc!THMfW}KU$~EP9|orks_R+TovusaBw>xK&E ztQ?^%R;nt#;q349&$amg5i(NF-hv`3*e89ytWWirjHw1R9AfgoUwThNl|?P9I|;1 zNlQZkoU)NuAJVcCZl`1;n5tSABI#);fOodQA}OjbfQL4%%I>Ki_8p*l>I;UG zHmVBZkkr%{3@2^MVWY)x(%uN=(`%Dm=D=rKz)73bgK*er0UvFiL(RC@Zh%RmFiGe0C#Tm(vdYbTcpr_tSf*+ zH^(4pt1EyzH^(5UXe@v;H}a4rDr}!tV*$LmMIK2}V*%W_MIIYn;J?jyR;D+~UD;Rw z$8C|vMi;nli#(F9h5|Tms zfbTY|FyfI^H5R~mTjY^+H5I^n8_%)0QR1G9Dr+i$|F(rm($-V}$88Ifq^_|59^0r& zHaj7zt+8NuYBL^5S!2QQ)Mh-Au9^aPYNK}<^Vq!0;G}KBl7^ZBIB1)&Bz#r@oU@l9 z;p6NnXp3eQz)gD$W=Zj^0(fnY!7NpyrT|XdxR$VblwanW0(fzou%xP{0504nED5hI zfd4j%T0!e%Za+esRa*e>ZH7zYYYX74&2UM6a{+v_I}G{KZiQ-TE`UR}l}pmqTmYwR zE0?6PrT~uFw83lxK~>chz$@E?B^@;daKtuYNqBt$e6P`G40V_7tXE$Ek87SoQc+(3 zw`-n5($Y`>-)l5~n7bNjWH%JR16yE`^fVN}30q*16x9{LnuO+g>n@4*R$T!cu{j1w zNnHUvu{j1wMSTHWv1x0CJrvbZUjS!poozJC6zG5&B6U`E0X(uP zDoL*{fG;*hCCQBi!wZ{jnI!p*1@OYgGoHCele9Dz!2eq0k#yA;!1Efn)4B;`eFYxZ zJcp#Gz5qVgJcp#EwqST&kBD0|s-w1GcwG}*(okD4ysil@$!{!x*EMdbyn&-S8Vlfg zE%Hcu8VlffE%Mmt3R50wd&hKztUNZlf>s_$S4|;cObx>3kE*FD_&He8P*d=6uq3>; z;5Ft^(Ii5p*A_fHE{U%#xOv=0zRSdUg9(%Ga&*rm!e7Zl?|K`J8}TWB4c3l%b#q`EnOyv!wOMEn0kAbD8mb%_7p2EPAG zLzBV!{+D18^8X(m+$q=$Hvqh8?*Cf@ZvR{U`}`OA2mHJHn_>6=2Ke`ve8+%&eWuUj z{Q#`%H-dG2GuYPKynfF=;3j}uJ?DcL|302M9v}Gc|H)l)pX5Fg?)IAuKKoC*ZgidD z>TxY~O>%w#KKj=>PjnvYT|SU(u@ z^v%}8+Sl3(+HbT=v;l1w@TvY>{R`X&aJ0IQ+N7$=-<4;S`@uec4p`?8hFk!%lt{&Q z^Z)?s8B^WP?#xi+H?(sri?FMlgsFXrVGf8DVKa%@hd63w5jK#RJq@v8NhW7v z5%!JMNKSwHD7cJ`Ayq}#FV-R?F_7#}txGd#LJ{_f69MXiqft&vtO%P!q`NDT<+))$ zh`19+clW0lJzj*3-~>b;N^a)KumQy6t^_B$wg?+Pv=9=^`H_cdhs-P*o4pJ;uk|Ml zJM$n!B!H(wb`u=UM;>Lo#%9lsw;MSSFy3iJ*z7F^y%O*6h=mb0eYTA2(*k325jKBl znI%aS^}-I&R@_kuLEN+=Yy)i>Q^-)ow*>Zrwv4?faS+c48$w$~a4rxTVOMC&hzK8flg><7`>pgY}@0<&9dHrpHdABs*a!d4IuPJ%}MM3Jf@>;UoL zBuFOmM+!xYu=9(6u8~ya50qG0gsmP|fd?4?`#bVt3=E_PBPKAh2%9>jy9+L2heZ!V zCKX{PR}XbY2e~-oSL6XIuBr$dI8?8GNCq(iu`LX$EW)-8X@a;}@VQ_>eG&F*vyrAm z2C}};k{QMkFTzd@y%NB|NsJa@bB0>FF%!9y)?jK8wqy&TcDC^zt`^ESsR(;B)QVLr zmhG}~Me9Hh!)l7KF++=VBR~fpI%LfnJ!A zmzJQ-MPr}EbIBjGqOs57xulO-bJ5smAuhPqWLMi0%;qBOvuM32myJf)Zdth`jZH<^ zb)jLTpKC@QJ1F2XL1 zqLSpsBJ9A>sMtK-=z=|%$RlZKEW$oaY@G?5!hcNt^s$|LEjD;!Iv3vgoX1GiU6QC;B}fkDzzS2$W=kW@@AY#|91K!qfJ za$&OxN}?whHkqI#c3NShG5o;Ye z{k2V{)>Iglm?V`=g$)vuq;6Vah}8>>&0{7InN~>KGD>Qv6$Wh?CDnC>0psD4mP*eL z`TyUq+~QC^Q=V6Tr`PKN?K|xQ?Ro8C?KUl^Z3}%IdOq~K&<&6q@WfDm=rHZL&~92^ zs1v;OBcY1mC&AZ(e+=Fjyd-!=a45JoxMOfma5Byj@LJ#z@Y6pxFdR4-;_Dv+zyGTo zXE}~_4CwdkdxA}WFZ~96v16HIp~I(N4*UCB{U7?VfjyO5Ae+FfK#dv&PlNBl*WeZX zJN?i48T!HgNBnm}G=9o|qkj}m1B(93{U^gI#9Ht|==4wV`ydbDi@v+yPJ)c@XTFub z?R?XHai8M-#QQ4b8o1qimG@L{+Ix_9nYYzj?R9&;@Vo||3AcK#)K+;;@eFzn_w4Oi z;+f`&xW9M5?|#PpTlX*B7rD2(Q|>kHrI4?%8gdML>U!Swpz8+LWv)|P8Mwi4UkED< zIX`j!&H1A00^fyeo##16oJTm9JLfnfjvut0v{r4RRsr`EzNx;bKBYdQKB(TNUI!Th zPE$9iYtwXLXD#6kUh^UrA7{8K;G{8N3v1sNDNcEy&Hf1{1$Uwskz zS52c}C}xi{-h;?aBH4J+B1=UweJVSmz*XL07umt2(4yO;rda*-;~^YZolf^>V9l__ zXmt=jOCTD*aYQCb;$}z-zldUo2+62K_yrt2%cWuqKW|cKvFA(*E%hv+upDdQXG{t$ z^;eTZOFeClBW`pdPfVwRgL;`GaO?&YU26LC$4Kn58BP!*!Nlfo7^JcDa2f<7w%}ZI zTw@RG*v>dm9>CZ#^aLS};C+k6D85JC)EGTolmHP0sOxx*(LqjQbil&jKs83|iN?qu zId=W$+z<6W%BwG+f2jkO`spMPnst%-ywFAZHNsC7p4oJZi!{0)nL14i9@02|-0-Gu zL1!0ur!oyi;L&8A+&3-!Pb)y5_&4Z@;{k0v@yHUCwgS%tR_9x%1HTj~>V=1#I#+`8 zt%X6N+|HF?ka8OA01Z;2`A|G&SIMxMrDuDi5IOy|Inr zk?qF7jsA+@E9Gs<)81Qz`x6eesI@z?(4~gK^P< z?dZ88E{lCSGS3Q7A#GNGikeGnMc4lkoGk+hr@l&&7L$jTnuDe_#KT#XBeQuTRXmF) z(&97mTnWW_m)Xb+fl38T7pPRiv=~H0qY5xj*~nCmMoUlOXtZoItrBP4jWqE@TDp-Z z(&7#1eMhS4x1^pDXt6pBAE(^iexGzLdX_FXe2C>sgRIJrb2>v zbaEEXNWi4fqJEP?OZjkV--G;0Sbq}@ z9kMPa!6^D042P)Q*FD-q5_8pwZH%Zl`EN08*w<)9O##bJF#MGrNIU9FJCKU~0=?Ci zRN3Lrc_J0_8Be6eKgF%%a$tu)F)6g*KTHZO^)YFrl-xS}krkja{%!@Rs1Nb-%D89a zaFqW-PGKGXz(S`|-?z}I(D%@|F^sokt%qdCsG}+q4&g^OFB&QF3}9rRKP0&FO~2zen&8` z@#zV_g!cah!y_PXsT3zXtyRd;80SKM$@Ct_m&=HU>R` z&jK$7eiyhta9&_j;E2GkfmXON@H_t-{)hed`fu`=wBt3m`mleSf203MxE-L;ulnBe z{l#~S?*iDDukr2Tn+F*Hect!fY2GK{e!znF6xHKRDIa_HbzkE?1$Nsj-SgaW*Eg=0 zT)%OZz&Bt7_Sq}FiR z>X6X_@Vxkrygehc6Bq{UGO>NmO5C!OTS7#88QL<#eI+7 zr>}(TWGc09wb!)YYopqk_`U!C_kTF{hn`5obB4_{#Dq^Y$t)5c$dx#XiblJ0k??>` z7&8(cz<9I1Tvef9a`O;eBnRi~Nr(a->Q7{i98bU#7Lg%~D@ z3Szs&F2Iqd2!>Gc6*M&g{Jjf~t0C5GBj-T$z34Zb@aVhIkNBUjN8clnjG5@&(bsVJ zi%=ZxE28H{ui(p^6Frarc~;a2Y|ljQik`{WJlY)PQ!GTAqC;lQA%eV_)*SwBl4~A$ zIPxr~C-P9_QU2$Hk%x_%NA8R~fFBNT-Zb7(2(i0W!i*Okuv;X|c-;ZJ*~F-slgYeE z!kEk(C5*}ZH4bOBGj~RQWrdi;8>|o$_)GlAYz&%_>n#Wqcbx@c(yqnfW7G=BOqP*R z9Q4Hi!?qVG3k8@-FH#Z;Fx^F=05jl43PJ%^r97cq&5n^AeoL*!#>h21J6E5pd3IKv zt9W*NFg?L^82N=sV`48iX{_vJxYuorgON)u2$OS(1!2-I#$oHs{1>^1 z5Lnp@34s;4fV^U&fiFT*S8T#mR`@)Qmq|FcPG1Z&*%&6g$T@Z}lex_fX2Q?LeI^*` zB4?R2Cgx0&#>$?7Ul7BrB$(kMr&}Q==`<_E1fEJJbYj=D7}_GI$RHE?a~Wh}PsURN zZ~kIa%1IK&gq|p2Oy&uAjMx~gchmhH@IEE)P?MMIE0tVuXPsAgNw{b?cP!dzHnUa|BO(DIpLVMJ89qJ48PhIul)*%y`H4Zm&loevyQdWp*?8DzwYLjCV z+&Y2IMD+@ECMSuP3P_F^OB?AC0Vb(i1emBUQ-u&M8%YRsCg^7Zoyj@Upj+Z$BS#2y zCg*U0&g2|sRMZG(Wqow02rx;9hyW9HFb+%?V_G8zF(MPOmJwO;1Mzx&V~Q;3T3tut zix*|vDXSv6no;Ipiq?!FgK1rj$10MM+)NMqVa2_QCo_5b^JFGuKRjI$A>0W%$l2F| zFj4zh5GHLUhX}Ezk-aSlleQP~{~yxVR=E0It6cM4)y~hIk2rJAP0oFsGaNrSo^$-t zu@!Rl?dE86RN+1G6Z#$cmHMgrfW9{LA!P2m7c%#q78-Ca5Q*c za7*y8;4Z=0!Fb^Nz}tbx0(S?l3Y;1k3>+9(6sQkqVB3Gj|DgXmI4cJ?DBx zJcoLA@=W*m-T!bu1$P5n={^B+8Sdk5cUQUo>3ZGu2iJA3)AUjObl9=)uFujV+E?0( zuw%bgJ6jvnb_W}MT>Ty_^be~ysOPD}>VfKZDqJq2{6qP(a;tKgvKeyw?WVLqM@=k& zw+C{THTJd9X6mw3SppZ2Nq~?YZnTL46H4IHF%bZ4$Bs5qdTj|jIFP%UaEuvkp!mcR zIBp>V5ZOn`lS&XAg51zIWKbLn!n_QF01<=@ZOQgQYye;$ zidB{%N(7DMp%IkyFY2a1bqV4`P~C@y)7f;_NH0QN6s;{mln5HnL+MRmGW;pF2EUR& z#nwRT&{h=9@KbEf@n4P;TT@qp;0)yT-8-C24kXa7t{vX5$ousDswzR82ATkn>+xa) zy+@%*B?#0&Z!-jwZBC(CAo4E7DoY*YZBF8A6e90Xptc0T8R&iOfjpMUVdT4o3jU4a z6H5@5fo8fMxYz_CZ&PGa2|_WDy6!DQeI!cfEs9l^AOHhR9%P1&yvYEFxgY?ViXv}N zU{VRfEU+{>O+{X(SY-)SDynC5Urq1Xi}NU|_riAr449T2(M|tOS7#NIWbl7`3(p!3@)ZDy%0MKA{A$3@H2% zFD4j0T7n1$RILmbs~9Um)B;ig%Lv9=S%PQ<6uL#$5Ig{Z3K+l(2nJM@AVvWNIMLMu zgC>+9Gy&HKEgcv=UV?B0)M&JBVC2dYL?B=lc+tRs38k1J2dx+wJz9d`1KcjIyW=GY zJ3zwGT7mJ#OAu{9$X#0)xuFC>1}%u&vPxhqRV9csKnz zNPy{RalrT^C5RgcA$~@yEJ3sYYBgCF@Bjn~Ab_k17!WH#i~xFaupnU6suBbRplZ_9 z0D~r%AQS+NK(Z7NAI9VogaDY}h7q_Ym6fb2f#W|Gn$BcXi7eN~SP7i{aV_{q5-Wjk zKc@C^5v>zS;LDHtV`!Z)+Ttbf-bW7wj9A?Gm{bIJ{dz=BWZ;Pl0lAe$aMQ=Vf-zRr z>LU2&H$$N`4r@zoOty40bV3ol@=*;2wg@$tPy}auOwaTrgwR~@!ACV4NDXm~t}24( zJ?aniMd*RsR+)xq5&Z7aU>xXR#8?sh?NN91k8tC*vIvg$s15z84G=NL*e4Xhu^!c? zKe-tqG|dp`coF>QQEmE@!V6PGj>SM;pUy(ER>nV}2%hpt&QT-%DNga^B5aq?vpy=Z z5xQ?UHN?LmMc6SRB?x4)Vnx_5p(dmTg@|U@Eg|Npa{zCZeI@SO=e^L-(g{$%j2f8YD4_m|!?;r71O-i5F$*F7J29{1erIny%) zR`ne{&2VSm$L^=yx4SQMAM5UR@8xcD2V7r*ZU0_Z0c`u}&}*RwLKlYyLMuYG;BW9` z@Vej$!2^P`;LPCPfp-Isz?npcYl8DD=kw0HoL4xHbM`s+cP?^P!N~-QDabi8j$Iv- z^pD_nf{S5yzesm$e}jAg7i#OYC0a;*TfJ93N9|HOR9$&Rxm`I==~s4##{Ree%_zeH zWC!?ycSERhPX2PRGOTOHV8=23BKyoTEOwUKNXKFRR$f^C z*zw{>f01`u8P-ILZR8U7tf*PvnPpfe*$Ksa5>e>PGOV8LcyY+Tl@}IMcDy+1-^vRs zEIVEt_;2Nfb(bA4j{O&To64{TLt%IPqqBBEV;L4?I35k(5x`yL5IvVZ)Rr==&vpYr zQtkwrq}c^HX2Ok$}+4v(cDiQ zV4~;Hr&U>obtea$#Q<1s;;#ivTj{~53DlNht%>%BW-bQ&{Lf?sVaN2c3(RPf>G9NvWqLa$7@T|wEaghbXYRjw6uxVlwm1~5+lHe zloj4e3r{Y?nzWI?w5$pKbb|cT2{PIG50CtGf{b3-u}+Zb@xPP4SGA?pD%F_O5zJl{?s(MA#>6%?r{t)vNFjJ+hlksl~LskAql(#Td5VgI36U1=|J1jy|u5yQVJLse-{ zQX#ylM9}vP+QWd*z7j#-QD|amcT!ihwM59b6sa!lMmmh{E)n`KicTo)incJ2XQl(u z|4HeUr4^*VV2_D_ZzwRSvBsmXrG7ohE|5qR_FyEm8Bg>(_rt3 zfKMnev9vuYg1!d``3FTROG`)**nuM8V+z!kwlh94<|Y*3A5naAX)*aq82eBJ{+)so zN{dL}ufqwhKBV+XrG=zN$Ziys`G8`R%W&v{_KMuO-|r|GFB>Nx=yMohWT z94o=02i+-})EOl>@j#m)eyPdt5+c8)>SmPS_+t!Kk_F6Uomzqu5wu6KN+n6aI6gQb zvEw5-z)ZfT5*(RW7sS{Akzw_lT7tt9J7L61VG5gCg7XwRK9T^8 z7dt+Z{)^*-0~k9#lKso%t1H2Y46+*Vod<)$WT-E}$qY(2!!w}$zsZ68|ChQ~RzQ^h zjiFOQhlM)8hW}>pq2RT_GlPA>U4v6#FaAT|!@#qFo7@9|GXp(vLNLkyrT=lbZ|`{j zLH;(d+P?`o0E@n#`+C5?e~K^Y{ipXW@9(`=gT4L`?{@B$-e$-I_?72%h_}DZbCu^b z&j!x{p2eP8j|TYwpK#yezVN@@kpIN@QxE*q13&e^Pd)Hc5B$^v|Lb}HUuVZ+#JWaO z{gB5KJQQ(QTI|uO`fjS4+>DHDT_eM(0d$VO1q_HNF{H`$NUgq5ReO^O)^u$=lQ#)`uQ7} zyyr?7lX#AVF`3(NSPGHJYIinAWpd8qs7%6{26YIomt_*p;HXT(=^T|wI1PKF!gK0} zYpR)uQ+YCzaSBgnLViBp!v=TyMa}vOMP0FZ2=+f~aLj2-_u|EE$$34Uux~+!iLJ`6 z_4*Fu@F*)}8J)fJyV~2^k@Fdn(dM{Bmcj9~IWDGM0QF#PJ(;7jrk=!6SxZkeTAIr4 z4woZtN^BADNc5gyi!-Um+u}_AR_sHc+-%ClWA#d z?P#6fnq7DF#Q%b^12Ir3K{PF(@8TFp= z{yB7uda3s}-rGWDbs<2YGh&ba)y) zLH9r1Z$a$*o$j3bOn26OgnM`Q68BVh$n`JRo32M(x415G9pn0$YggACR}}68c*c2$ z^K!8IC!G5^mpWUW0mnyV2VO^nF8JdTVHzUL9)H-Jxpj8|_`~S?wX&QsL@5ff7zl` z%|D6W`LvUK-%tWA|1~AhB3}`KmhojgF5j27C>8dFElMSSPE@sy&a-)W7tw1kEA2|N3>rZ4d@Rp~*_mV!Nf7pSvi$AslX?K5Atu1C^mvy7Aq*DKG zgHfR$+F(@X2l(Nnhf_zV2eUTUH~QWmi-AgiZ!89?0;kXEOAnZJ#p!bpfr|JWejY%e zMc&3WPWAVL|6EUU1^6_XcL4a_vcagJH*GK~^Nl*l*V0GU;>%%jSeN8i11uB*Cv_Pd2p2F{m5q7x?W=SSCZdpB; z-bBScDNw1nCj=@L_qa)21@325!eauJO8ARFr4s&ZP_r;5%&oESQGrS&JR(r3g#W=a zP7;?UJ0stpP_CywLc&vm?~f)E-3a&|HkqjWhfF5A#P|KdWTNVRk0-@sq9>E23w7V` zI2sl9TaHG{{st`ppk6%?wY@4!Z`SrbD3Ym!2ShRzaz7OeLTHcQ$I)oo5 zb|)2R>7Lit)zQ&KclOGD=sREoD*N)KI_CHEbhj;B0R4*g@{Sx|iUS?j;Gss6oVu2? zMTEYJ{jHv1tQmB00>z6573VS~i-!Y^OKoW@@5XN!UVTuAHuf$VqHVqtKUIFsqVF$} zRGf&Gtyy$UT*Ii_ks{zGO3$Z!cQ6vI#_fzm)!&8(ZDIh<&fwsTHsw}8nf%EqNsx4VVW?p%oy`fK3T#h2*;e z<*HjZoa#9M7KK#OFL)vqb~#U^wYUtu^QbsGlOogXrB;B7xx@-kQ5U069TK&Bax=NF zhDf@|LZ^Z*w9u)X3k*7b0r@3y>{)}vmc+4Veq>1;`zxxh&5}6wG@ew2C2{Pj(5rME z8aKAI8F9+}c!(p#K4|e)r zyIyuZ;L5vBa}Bxhd{1hMoQm&Xb%6JKLNt$D5A39p^f_;bwq|jtcz){VDxE zy$I3!gZcsbQhgfS`uDB&ruHbL1G!Y&s`bL2eXcecvh2UDJ_gwUbLtstzq&?UqE1o$ z$`{J3%Ks?8RxVMtD!t(QKUaxWd{6h~@lo&~NA54kjVt;F^iBaanxeKgi&z2Mzz6ST8tha1rKXf8|0$J z$d#kuPL1Rc|11Vf7zNj9BnLZZG5X|D@RAneffyJc1+QqN1i57~a%>d*pHUNF&&jCq zQ6sz#jblcRje?sqVuqswMx8tgKF(r15CbQUf}b-N55$n@D0n!Ncpyfs90l)Y)Mny= z#enKj@Nc%n12J^MC^$N!9>MWIj9xhkF3w0Ci3egpY!v*PQA;2mh*2kxf>*N`55&Ou zC^$8v4n*-lj9fVizRXAki3egpY!uv>kqYn!;;G=hOsGSQS~&{NWmpIfgJM8z6dcPi z`w-7w2EQ`Qj^lF~`@}MMmf?E`$)%VKsVaka85-I&GM7OU%HU0gIuD2CGJ32Gu470y z#N;ySgfcjaA#NOy%joekIEJC_LD9H88C=0I8A5RxxwZ_RU&uq8c+#7hDCrzAvkV?z zC`LmHXQ1H{QPb6LW*NM`#^S~9aEy0a89cvGP>UoN`@`{!;QD3Dh#le>V{;i?z&h+C zg5RoH$7y8<)w30cUE+8~2-~w|#6EF6BLwo0LRoe3UUb$<>!p)3>s!oH7QdaVcihjLVOf`^YQ- zH&mFx^_AsyLIqx@!=|#_OJ58eZeaow%Soc!xD+#LB9qEJhFdMY6f>E1)*W8^X4WtILK1{<`EKWC`v@8wU0Orj@|~AHBWF zemDXILv#yl)P|FZ?moOqXN=R!;E<2wx#*KJAFL&AadsIz^o8mP&(y*_vkXrAcp9d1 zA?W}dWA{U7WUqyHb{X9G1<4SwPr^UZQ?YQ*FN0VA0em;v4-`wWrZPDEBUfc}NZQDr zRR*Vj9REdY%?~7t#OY-S0}#5-977h)S!IX{ki{Bf!NNSd41oedZwMpD!ac1FfdhD& zrZuL6#=Wr?&;g!lS@63r}+y!VJ*2Zm2s2 z0l59$BaosR(j}o)A`8`>TZV`O^llC&HhBm>LJuS-6d{ z+penh<(-JvHJQ4WW63beSrzKbOAQW~))IEH!c)sT5*Khd7;DMkcg8jrxW2rDAqn#( zhT(k@n>)3KOkAS~$I!T26nSenY6;b_iYd6W*scwe%N^vql!6;9Hd{(hEVrXCwZ~~#A=yKnR-R|faFEq(ym;%{avSNx zp5#Cp-O_APF|9n82N}O8OFg@K{A=mRrb7$A_&CCy~RL^wg36|DNu? ziqPLf&q4nGGef zq;a-@rho@B`Tf;@r~fMd3I26BTR_~e_&)SK<-6UNhkOAWAn*SY$olVqd;w2*Z}nd8 zJ=WXp-PPOT4SW9WdDrt8WDK~+v!7?7XR=3e{|)l^-Rr)V?$dwz_op8CsRw@Q zfuDNdrylsJ2mase0c2r=^#}NhB!-4y3ru%v#I6+k2svf&xDXW(`#Umr47GGDoS*1y z>p*5l=W=9a1JZ&8y>KrL^#^zEY;ZENa~ZNZ17|0Aj`wu;w!;2(7$t8-HfQHf$UI{M zI+q%yI_59vTHL!pEVZLi$_hGnFiN#A>}gv78Q}$8+Z&~Dhkk)54}e8?EI zpnI{UujU)_t)R2RD784bpd&fo(rSE3CA7i{I_DXsIu~^Ic6Q7c+k!8ugi=<}IoBvP zzr8!r)xB6O)oRqx3OZYiQuC6FyXSQ##8PvNQdZD8o0e*8>*{J>D3+QG+R4i3vl(K@(YEr7LeL>Hnp3ZKu)MQdh0-cl0Qr+{qI@`ojRc0v>bWSu%&70TR z*_*JmtI{ZC1)UQ}Z@0D0pFh8?4drXaZydh3aHxeNJ7dTyo`xLo=$Zh-ejXHvhP^r% zrgmb_QpvkE)5_J7x-L%5Y7M|3f!b$52paf2i664f_wm<``=NE z`rhCfaEJdY{b2v;{7ehe`L4|zw` zZ@p)GhrI`Rck<4F^MFr0PpBI_H+r^tvXIq(XU`1vW>47trTZ24Z{0VzFL9sf?sulD|3>kxIJYiIQ>SBtC4r8z%wzU=&y^HcLI}W57`9G0`+>GZ$Je&qr8#kr0TV{dR#Ziq12~;OXWfB}XtZ2OJ zW}&D)HWQVP@2w*@4#akfor7<|LAeP*6Atc-2XL5RHj!D6a!H$HFTNoU3c}rfJE_lA z=r|Y-E)j==Px6N213#1B$0>@|Mf;%$zHl!K33FYu;?r@kCMrGz5gDduI@~|#r;6Yz zzB;X{!mk=>i}3{}IE^BtTG?VM3gST0HGQe!p8ddJzGWXc&+P__Bbd-!Es^{6A!WV_ zr;uIAo&#ZGrrj_nd=;sIiGV=tDLyBBWn7b~T``$9+tw zD{;0;tTTY?VLqt%g7~>)I6yBPfNqR$ z?P<+s;^)RM2ra1ysOVvGJme-xgJ(hf9Q-aJ9#RwvPLH=5M9Q1Zz-X9;dy8%*GOfw> zB&Y#kDvrRVx9qM-nI7xV`hQ9oYxy@4##;R~8M$z`!+O}iSZ?kGxnJ4hO!k+yIFtVc z8K`DxCLLCv3v?#$Gl9*E5bBk5WyzLwWnIa(sG+wc6hlaW(7C&!mk_Ek5E25(OGpTz z1qcK}2`MBYfdJwAotd4T-MuT5@A=;E`=0lC{=p0I>{7uWB^8Gzje@MeQ!AEvdY)_v=>Q# z<%|8AlOZ+z#>tSXUS%&X&nhhSyketDB`@2kQo~EUQ#$)8oLJ1+7bQ`a|FtB_;xCv) z=?sky`IRKf;?GN>EdI+e+FZZVj~Bdo?yR=CGYhlZ&<5Ic%?SFdwdP75OfRy`?Dn~H z=gn)S^eHXcopq|LP7GEUz9$Q}7c!*y(8S+7%b28+^{JcTiSHZ*J z+i327T`HgT7Lcm{i?1=>Usp7C&|86Q!q51W>lo;6DXkHqDtMTmI_R>(XB>2?=V{(w zOwVE%Yvt7ViHjq3J>}v^Z9g9VTdnw%C|_N;9|7W(d1^Asy|b!2-z7pL@DM-Z9WNNN z<|myDS@929*fOcY9wE=5+78Xb`CdNG6T?VI<&O^|A!~VzKR9Yxj$P3}x75DF#gSSc zb#bJ&?bgG%n)-;7A$2|MWJpyH@#PW?lTCWiqDci0STtGoe*U`JzTybYec!A}eA@YI z2gZ9YX>5jG*WTrm3n~`FzA2mV0|#9;<30ynHs$-)#>Br}d!0cEz!2Kk3D8D-I%6zwNMY(+#3E2s^4I?4DQbE)@Izf3)nx;}MQYJKX^)E=q2l!mN;FC`yK-kdxmxiPsqxqotU zGMV^i;tkv*+?u#FaWZZZRwQ;$)FzbpJMrh@55;ecpN|`a)$zUK4RIy*PVDK}U9rm$ zXV4NmFt%GP9{pSNMMN816+JDwK6-F;S~MN`XXN$BlaZScb)03 zUgRD)C47vwKpUt2Tm7|qhkA~BoVtgaR^C@0SH6v-)f#0#WwH|W|Iz=f|1RVR=<~1i z@3C_$ORYYQJ7xBlOo->~jl$EgPM^xXJLp(w;X`L{5d1Ov6z;T1d{Nrs*6EXZX>#I` zrLUKzC-Kt67o{!kSbbt8G{Sl<(7^qIzl9dK?UvKf@Lf7rfBFC9q|&wh;olOztpk zlS4>_mmK$(w&cd^h_Ubn5S8tlsE_tm#=WI2WfOG-V0cx^ouzGZ2+8o0Va8v?_$_E{%Bb37fKvYUp>j>%~e<(92W_F1f#3~&T9kt-_ zoS50gf-y=*Oh+{sEGK4mk)YSf5wJn4ixbg2J5Ic|HDv^9)ImTXnrG`J3!xf} zWg?nqtt7V9WfrG_QXJ7dYvr&VQ%0Od6X`SaWzq66MyMQBMyLiYI}Fi0YbCO+Dzj(} zq`F{;=2@A=wv1?vaVTIRnrCZ-vYIjiHmH39(L8IVu&pj5VuO|`6VW_tWw5O+BVL0P zT8QRZD~D}OnMG?LV+AGAqJ~>3Z0pL1)?mpl?1<)BE01k;89^IVp^0dowKCaOl@Y8# z>ms7(NTp0C|adr_8R#isK1{E=JdaMjbb!9|ru%sFGpwq0Cy>@gN0UH#} zArZ~9R{q*iWkhRG-!nw>Y+Tejt!39)CxmEng^!IL~ErqoeYhU-0Ju$-8ZQB#J`J;hEUkc4H_maI`_c-yn~P(BSw z&z0eBPY+EwF(tXG3>SM=1-GYfBF(a$-u>s4{%zsbMT9rkxJgct)q3n3A3@!#AGg z#FVtE@^1X8c}`3_V^_}LIWZ+8TgLg1Mh-bKCAFrElOHuxrhn06-4 zd=`^sHj&JlG7fx9shQS9va)5I_E;u{bdg83MBjfBX;e z7vekOx5O`p-~Yz=+W3O_uJKW^FX8$BLhP}a5xY3HHP##Jh@GIWS3XuAjU5`>6WIa6 z(GR1~MIVS>7d;O?{?~-hhz^GP!Y$#I(Ifq@g!c?xSprd|ml*q)VBD`-`)Kosr{$YlDk`GcZ1w3kCy!4!jh2JaAXw+Q7F0Ck6_E zBLe#brUbIcPjD#Qa?Xex5SarPiM;l2?LF;zZM$Y@mqw;V8q`K*Ya|;9Dqkq8wUe|q zZF%?~;opaUjeD~?Euem=KCeEcUay{~7G3uUg!w>GsV#8K;CD7TmxRyfA;bKPwiH@Q ztq85_qDV@!@F)TZ5sdX+#TJW`BVY<}0P_n2bD^izh1HhJ!t-PPX2jyb?b2;e&t<@z zA(_&opGzy;hXu zGn+_&H#F0$&M_OBDT;<>n#_h~#;5k6hGrVcP0CSg`UP1_`Wf5bKjJl}x05H)iN#{~ z>f#EPH`cs~OW)&Wn74fCyWI@)Rxf>*V5}JEKd^JFg-Vyc)6Ed7?r<}Ns@n3tBWr5+(N@JxL|8%X({0aiDw&fl7$w-Nft_U0;}1&qP3qxxNsP*beWu& zBo$i}brsrfEr`MtGwnh_5T!2=1X1LCnz~zLd##r?3^i(9$8@2h%6pXrlN@Hkv4VB7qR$yCWW9(EKgRY&Cxi`7LaK z^IaQPci_p_cPuUztyXXL;0Zkg9z3D5pXvY*$Le+LO%1h}zn2}tf9K8Liw@(zPq2Lm zwDW8~lpSLE*Y*;BDYh?#cCP$tD36*S2yMRkhtiu+$N9yiFHK{;WxfJvDj96fW&;3P zq0g32T{;j@g`};TYZ{>B{->=#JuCe`{6^)cT6!k1N*(!G* z>Y2msKGZY5V)vn*o>UwCm?oytZYq1vFbm*XWpmd`mt1r)`h70C82L?NR#duZrF%Vi zLSNB?Cv^6(F5ztxvzqULI8Es2vdM|E8~KM{eV+fXyk!0#qxO@>_u9@5X8aY_p%2eZCsPqDPu z`sg0ypb8bs98{rUsZ_iK;q{^!2Rg|@#}X%5C|S(jBG!yW9felm8lPU|q6;+(U38&m z0nTjC$kUO-6LvLhCME~te_W!*46JKg`YF%pI)c8~cw)$Tt z?@3;o>`xvIOMO%7r^#^QkBOfrh7uPg1`@|67A7Vo;_;6V^M8N*s`wf44e=H6-QwBU zr^p-dIL`gwigm>fi8Vz(i#{K{HF{?Bxac0yWaM{11iT?~A^iH+MfL(N;1}W7!aKs( zhR;mB74AyimAW*%D!f-XjT8S4WC7?7Ee+KNKMp<}{9f>!U`KFSunDL2cLI+Dt_*C2 zx4|UsU)l@W9onhdYHhX_SO2X3M7>!(7ifS7s2Sz2$}g2$lrxkTWgn&5{}=x={wsn1 zcf5Ze|7hPAcwq5ww2nJ>x);T1vBZZXXx*KU({bxgrcW@Lt9pe*gN}RmW=Jp>_LAMb zT-+Cq)o}q&xuUs{yRqByq!&e-bzHGf2*>bT`6SQ-atr*JZN*Vd%t=AZh&A?=o`*I@%7QwF4L z5cslDV|3U8=n`IFt2!RNL5D$rCffQ!(XrS_1rv1G1!!C$0(7%Ni2}-6D~5lx4l4o8 z_;%#7aJO=T4l@DiFq3bUI&kG!DORt;V8HA$X1tkO&tx4ogT0|g-aWZefr&9~)?q@R zIsO$%!G!z-9hL=ZApmhUGw2=mUb!1EUWb)|W-t0-V}G%?)ITU(q-2jx)nRbhp9vLu zyMXZBgFWLgy*pKh34+PO5wV0Dvx1zb?#i2V*d=I25GV_+{+V)ra`@lxL-oVVO{DLs?%ZMptsKH_4Ke9xiLCy9W=r1UQZS`r^Dt!rUBw+Zx@B8 z>aciFw^yJc3Y5j{T~ZcCkl|#R&ybXzq{Avg9ao{3ISttbVJ7huWL`s3ut|sEga*Ar zBaC-e8z;d9MZO{{Z8{!B!#297w7a}!!oUD~t z2XQY;8RWA23Dzh*Mixl07=2$suhOHmT!6lbd7|ti7`1wYZ;rVkoRsY?d0~^sY~jS) zOYp|%A^xcm=5XT97u*^>Xtt0n;>6lhu&VU{cR?VdIC16)POYw))iJv`@%9kB8eKIN zl4+b+a|LUZu9%NZ5k}cLf?lorc|~L(C(dli@d-`~VU%QN2~Jb_H2#GF5+wyTQg+lf zicBG?nL=tz`BeVw!ctD$8G>6=K7}`x8Ow>ayJVegvdCUetm%SPTRxFLJU5RMZ#T&s zo2Wi7tO@Ayw#)rU-?e=Kcyw#1>WDo@X)^~IhbrsE>F%& zHp2G*F?{r&PTZULUgF%uro_>SCCp1-jeijTMf~CT&GC!kgYnk*^7y=XV>}l7IQAQ4 z4!k9{Ep~FO5IZ=wdn^}=Df>jfP^QCQ|L*98(aq6(^w8*@(Fut4Cy)IfMedDUAGs*9 zC31XZX=L|Eb@?te8jIg|_e)rZwt!M`YV>Ke5%_^PrDNC5W+uMK_+nFPCn zM*|IDesEGS8}tP}2>dGWXyD#};r~c|Ry|$`st2mgYEJpL@*Zvw9#(EbM!^B)*q&m~ zA{ZyS5t@ZufcPhKfD7uB>6>(y7~X4bWdU<-7q2ql4V+>J#eDSqL_C&iEgYV zW9dSwyO1y8(_=xl0r>UJyS!mQl&4GX0q# zrvIfJ>#L?OE?vrZTacuOkoAmXn6mio^aErILNl#&;i>LS@-C8mFa_S26jwMre=_M!(jIH;lrJ85WShhUD9KZeQ>V;p2P#^#MR;}{TX zW`_q+{eBh~;kLr~M5_c|`hleRe~#a;*j^7YgF0NVjcEOP$lqehFQjDUxB*yJpv$w> z#okp&SZAd&OBAN5>%^NkjHuAs_SK@Iqgtn^tA^FOFkiCXffj3Qw2bwq!Y#ukRo zo`KS;O#}Hpt3xhw(M1cs<)VvPziH7OE<%ZKxadO9g)X|#a{>G6Q+veFoNrM?+4C%l zD0MC$i=NKzf$pV!c`Gw_;v6?a=s4TW5US2%FA|~!ph`61OdCxoIKxI0Wlv`>9F^@n z(dx;s+liv|X?CJ0e(FSZIc+CIEcU`e|CR!vwFnKY&+3m;b}A(*IC-a1qQ;Z#+ZiQb zZf6vY5&(900zA8yc6c_^Y2w66mZ);Dk|pZd%07pdLeZ~VoMfSBvy&{846q?X0w#bS zm5#SLw|v9R5MC}9x*5XV7<%%IKx3@SG15l-AOHS4PSRWbZ>w2;j200G&f`6O3padp{Lhu z$tezMkE#7+C)Jca$wBQhpZi27mCosC^`L{wZjnLV>Y%dAU{JR>sO;t!)Xh#R;hlgw z;GlMxS(VMRiaBXI%)T!reGV$SK8D^+PO9nh(CeTU%x5b)sdR+`4LwdOW$p&G z+etNhvdckb7tWB~=%mse3#jJS(|op8v$jr$ED$A`Y=?u|V#;Fs=U2PMd(c9c6wur5 zkj?b<0?UR#Lx z`7hMprrtW7yT%@BYI7AYjiby0#cEWBF{z2kuxHN$f8ICJOX|lzAbzz@cm|n zcM1JD^gOWrE)SL9_rFId7yL)?rQogVz3Mi#s2++_dX@4SGXCvQE?0V#rOFiLSlIe& zac}Ul{}KOH{*(P{{j>d1-N`goSgQK;X zbb}JrFz`4j*kHg+$^%xMf>NZ(fQfWAba^BTky2v~*hwdnlr5!+V4qrDZ@@S@mDrAK zCQ@Lu0c$A5jmRUAWHuPEfl@1R@^T~)ks_lFSU_2MD|d)wHW)B@it=6gu?B9X$dSQ` z%O)OoP^JmRzWp7H(x|^F|zyjnDn>TyT%su9~#3mcKvLXYr(ALas zuG34sg;v0OY?TTd4Fuw_tT3&e94)R=W|V=j914BmmmyYTY7E5W&|NhPH)p_c;&E~Y zB67%5MNb>DE-uF!h{fTZAmCF7ZcdbHFc6PJW_sZ)AQ9<=NTY$^9BQxY$?R(C420^C zDV5!A3Jg41%`{^?&)vf(7XcTFL^PGcBQ7rer4bhwc8MfiAO2^$xJ)x(A6?UirE7-O8t70ZVG1srG8Tb^G8{#jYR)~Mt6_be96S#!NHmOEQe zf-0b_4B)2E(X?^K7_MGi;gf!cM4d63uK=BN_G!;ETvFRYGsdXp&2KGj_G(-WZydM3 zJ2clD)x2@SD;*mFhpSP&Q6&YW54fB=O~xp0hl2CAI~+|)O)zqNp%+s2*fc4&tAT6y zMHo_uNoOIke7f5<*~swEg7l$uT%St46O1&kUP?+oOexl2?7|mpDdw)T!ANnDfxeb} zkEes%I3vl&vjSvRtoox37*5H(#*UaPn2iQZru0duh{BT%oov8%N*_c94rn^kdAdH; z8?dI5tB(_sOR5@Uz^cm3K@vAgawizDtFjODK;P!V;LKUGnbVKESH>8^#Omc))o8%P z%063xC+zr{?fbsPZCIEM^5_7>OSE%9L zv!)s_k1#(W%KlfRxmN7UcQG6J=_j({vbbY3X8b z3?@74lip(2;QAtgPdi@0W*s(Ma*A^aV=+Md{y>Er*c2UB-F-dfD^~&4LS_Vv^_(dQGda6R!-DmTP7b02ch5NP3huqiai;Ocx<=Msrp9#6n5cZo}ymgz?Tvv zZY+3x*rw>6{52ZRIwzmEN$=p3(!*3IrRwzc{3~usxm!P0Z|A28LaQ0*b+a4w0`F8} z7y5gSbjAyE=7FYD4NUWB{C!${-uS z?~>0X@5cGQm|TfW05!>I_`z@w@Bm&<{3LNt_~LLmaZTca@X3k3#Mcsw61ycv0Ttkn z@t5O2iru$Y@P|)9H#y&dtrX zshXUd%2Gq%gtEFX4+C_M1b$9D=w_K#k|o|p+}x5WLEwL=u;D-(ogp7>AX z{12)3vkW^sPamFn{40f^=?4t$zK0x&VXT@SI(!$c4t+XkdQaD9yBvh{=b3{Y1TCxO z9R%fIKE_e5_ zASeeZSMYHn9T?F%`3ocZnf!$j&B$LE(S!K-2@jQV+*c z=TxbrY`*s7hbA@LY%UO%lNpBRCW|IZ-)PZf*&9rnC=XO zysDBZyW`4ArtFmO@^^F?_t#)1`~FS^fN#IfoNi7BI5g@zPKIpI6;6h1%(u;cuzA8k z&*e6%RC1Y(Dm83lYjL;frZPRWg5^N+ycEd3HyjTSwU%qQJI$dl-mRoUb`8rov2$-a zJjSIv6O+$%37!8}grD@muK!HxzSMQ83xNcX2X6m7U;!kOpWqJQ+2n)Cn-CXpVzK~C zz`c?afZhK|;;qEb5m$)F&pExeDEHNuFHlf8ojQ=YBNc^VwH{$*AW8#Z}3y_O_ z9(z0Xv)K1zSI5o*GQg_XUa>}?0RB1p>*)6AO^6BTiynpSf0Ka`@NwidVEEq}xim5u zIX1E&GBFYf|26z7nm6)qqz6WNV5A2|dSIjnMtWeR2OK@XHsF1QemeVG+x1k9oowxR zQq^{{wUtX%vF({>Y;E?m;dq%;=GftQ+9a)iI3Ao8Z)LkucYQdk&Gcj-scp)WffF3h zg6dX-JK$*7t31 z#v0#c-i+10OT8JZd>4B&R{Fl>%{apM4R6Nbz6-n=D}3j9GY<2e_l(+(yiX~12=oqm-Ktn7jN>WFDiP|7j}Eo7i{#V zAJFMd-+#R~eZPV?ecx7Z`aXGY`rgNT)Aw?}Cg!-zKYEll)%KdO3%8?uS9ws6^nKTZ zy3Tin2X(CvC(H`HYkb>0sH=UKcu-gQF7lwR^nKHVdW7#n59;B*^F635eCK*l5A&Vv zL0#@U(}Q}b@AMp=O)fdC&ki}wgLv>M9>jxA@*pl7^dK%pp1X>Q4jk|xE-85s7x#J) z7xj1$7j}6N7i{n#9?;=I+`rv}xL=zGao-jX;yx#M5cfXLgSgi*9>n=yYtZ($P2uLk z?EKu;_F3~VE) zzXjh6{yg|l@Fqm-7lVfen}bp1mw~?#N`LD8fF3wMPy|N*yg;q?rS_)ssP=R1K~47` zrCqEIYAxDf+I(%Iwu}0?`mXw-dcS&wx6{TKN+E>Om63vla|U*FTIhLz8izbJ42@0V;Jg#BS@7rWNAxrgTJ z5@|nzeMz|~l1COkTdW^$ZT4)^7MTrj$yghh#Jpi;tldmvk9uu>g&u2bl$h(qmNm@r zVoT+w>18%1QFe5;gWns{uk^6C0V7 z`6sq62eO+r5lS^Zw47xl6$zTM>&>6+&eZH=mSKL696s31iemS@H5q5Kjb9g>1e?h} ziCdf&<~sO5336^mZXvsa?CS5ca{eyp>Rc~(mWf&30XuLx-}gpy((7B5*`~Ot#%b?+KIy&~~*11)@EO(=0*R zf~l6EK(vS86iZMxWisz}s>O+T~cf z+b8O@`F>0XpsW;{+Y0mM7FuS>bl-io+DuQbf0Mo3{I<3k^XAPHx}%Y*16Vli%ie5J{xyNV27jJ?ACnCo`pTla?}02j&e4xzi4)t-PIi3^EfkY z+TQ}Jj~=Ti!8&Tkcx@4Ng{7!@PGQcB_L+Omw_5*by|(wTA~OQpD>TfUm2aChV|Kgs z96c2p>>~bdb5Qeb1q!=kNjxsdU|%ztztI*|c}aOSr%mRKv8XcwkC@|cD#*N=dD}@z zZ%;qrq^QrSFFPqpOxa}@ZJbT{i~v$(V^dGPgW6irG~T-Deryk9GfakmBkz5zDXTh) zTO>3C=6#c!CFlNlH%rd{MrKr@wQD87U-Lcdt=N62Y^Y>PrQ<4@Qf)n7D@kp>ty3Ui zLuH+lA=Qm_GNh_8Ry~IycYL95Wxq^wofuuolqzd0nNn>H%Unzk&eh6qShb5I6;`=8 zQrjr2^>%<6Ja5j)kh-!?hE$bdXM1WGLy~rkak_#h74A~OlREhc-_j|cHEFeiRVKA1 zoD8WdZuP;!f&PBG5j5uFNM%tMM{0}MIDqFB=-cSHu!|$Lg*#XS=D-A{t-7IQ+26cbZs4c*XA*oPg*Erq3!Brov9+rf^lP^l5y#GP} z(SC>Bi)t>2=_q4k+>Mo(cC-Q)p;$C@7T zFDrPKuK2$zc$Uui7v^+WERsBf}wR8`P|IwmJ1s_^8S@sX6Qp|-_Jr))dn(={?A+@~kWJp!- zNybY1HF5l1Cqt_Gy^|qTy(1Yd16?A~4O;cKlOa|8&dHFf-ZEDr#I{&iPf+xxoh;S- z)=rj6-e5iFKnu*?feZ4qVyE%4a(l&}AAKkKWYmB?z9+gMIxQNC zyoa26w?xi@C4PQnR2Ydm!`s8xhtB~P-@@?3uo8L)=l7dKr-hCQ%??FVzezokx-3;p zElrI|ewh4G^6KQ4l@x#P-5?zQ87#;sK_)&a&@E5@2yBO#D6~U=Nf8dS4 z{ejDIu0JHupnak}qg}0)aFTCS|EWHMX#avbU)@D{OL;)qrVJ=+l-Wwk|Dpd`|1JIt z{2Tmx`{TY3;#b5s$Nm~WD)ve|65AfToCT|};Ay*=VB8Sm>?n-I7FNxVh9VMgw;@E? zEulb{ftD`j(&h@Rc8ep_&Rd+vqdLXwh7fp1Vcm%K=RuopK0@ypU&N$3`He$}xud8$ zT-?a0RHw|CAw=F$aG&E$ES|4n2r+jQ0A<_d^JB0DX4*J}fIF(h5u56)WZV#9?x-Ve z(Wy>}x*^2a(W6-LsZRcwA;i^DGtCH9CwKf1!s%v$OF@4HU=8*F@}`eB^eFKxlMO`F zv3Rp$*8oLeHE$L^gIw}RA-Su8a5@%mCL~2TQ8UGCap`qJdXj-)ItG7DA%FQUfI$=} z-5FwdSu58H!Kns9=~x`0Pz#t^D$$H0F4R61SC`Q*D&6GkI7gD@MtAy}m17UTJ?qkB8h+gB8D~04V z1EF=5YTF9^`A#54vQ9Zd2#+@qV#kKg-UcpoxDc9TAjpn&u@FM7{d5b$1y=~cT@6Ip zIl2vkaHJam#2QANOCKhs5ne~q-uN9{dbyCEXduLnNBTKIJhs)JaJi*IZk&N|I;P2j_}~%;3W78Kdsi;zI^!YvVUO$OrUsO3~+TVH+) zhehGqEHvsm13`53=95$_au#s@BB7<;K;#?+^jh0kF0fDtG#Ch)V{24?u+Z1c!g9ID z0wFTSK-^pt)dBxq6UQ%C5ZpQgVRMwB+2IVCYZd$|0}*kAPLJEyLVqb|p9+p{sQO z!NB%9CK&rr%qub>^cAbTQy;4<^u{XV1PBHVdC#A+3dr`P3Ppg2{($(g% z#(a~Fw@!RC?WOnR?3RIce9`QfMtl(G@j*nm|1b}nGxh+Cjz1j4=eDb4VVqAh=3?3P z)7KiG$B3qm4Nj5(py*IN#duX3pkJ+k0)5tTkp~3Zf)sAld3H zSZ~b4A_pF}6TLv}6JHWr;Tcqzb)6|-@oJ3SISSB*(t_Sj?22<15_x=@Z}9&M=F!9< zpl8g-107Bq(NYJ#-wpl6hMwMTx{YY75o_7#A;4!4t^{v8`xaj!n4^Y(fgxd!E)w+I z5D+Z{wo%U7`PB~rT!U6-3Gl@9S>@ty`F3~f8}-`1HPEX)^oq7zlr+kA>|G=OWgs&Q1WbeG)~f-e}=Xu-<=O z(n@78$;k6&L zTnLTEv3%b_yJ@j7aCKHrght~SQ^vMBa2YEzLZfjsm$5GqT*gX~FwyuL-z~V;2`*

7%Q6dtD(DCMUmB|vFQD4`UJT|3$OC(x1~C$!LzQl}{gBjorebz;ZXu3Hi{ zy>UX~%n6A~^a2v17bK)!+7q`{2q95%fD2a++>qMveX~2sdJ~)VI-<4li{9?+cxK+b znfKnjnK!w0bLVfDukQX`IN+GrBJQqi6A#+*eYUjNA;eaEGw<%o$_jsC8p#f{&KDkw=4?ifiAMZ1jZr-%v$AYz4}C#Px0@TejJVc zY&AG3&Vx!p%CkKLL5{ z=syMlpd^v@fObIXzS7}s$fq8=(f?g2r|PSA`F;rb_U}&m{uu$zmqM;1Oj8y(XOscX zKi6xw^G~&=&F8v7yHDBSy6_xu4{$GVAMkl#FYpE6e&CD1KHy8h1HhMo2Z65uUj-fl zz6SII1Hi+;ATR{%2Mz!=;1OUL7y(9sG2kHZb>JJoqrhW8#WUX{w(l{d$ANFz@>u2_ ze4hkPIP&f7Fx_fk?|*0hS5}&x|5lTM5qP{MF)xbnc6Gen`n^yC347pwa^FWALD@HR z>pv&)Gj*FV1-b_4o`kP!z!Of0bJ7Q|h_v*K4YOFyC;i_o_?33bE&X>+rB6c`h1Agk8e$qeXQB1ZUYO--Jz@VOUD77hDre8PkNw*3#s#9kPPWmI5hb%^99#*F$^}piKc(a~*9t3@L2H}?fVN{;68gSC*dXPpB%Byl$ zZEqA^^@jd8eEu_p%4_;pZGY8zv>+`(My^lw`a}CmU!8upTmIj)(WmUv9^Wh24B9;V zazZnC&bHiqQwDzkj$*fwwCp);3fChh=9TlMx7l17h(1ta+e!W^SWC@$ zYF+z48$}&5@J_e*{5W}8gf-OKj3@5pi;^eCnObvAa?Vp)u5l_?h#%XAvpm*ddIYq4 zx7&s*Gp0F@S)(uA>Q-IJow9&DA)&X`PBV4^ww+q0gR?w#NaXIgeGGMC zNNZn&md#@~N$)C#J!ca8(^)*Z)3u+p8i?u9>J;UP4^Mlkq2_wAN~UIl^qT>m8xpNk z5FT!`Nn+4#PXjo$GthfamCjhyjt8+DxBvN9zv`##b(n4p5~6SWo#8{DUO#^I_E$H% zubjnTBt$f~>&D$1`%ZrOdFGqX_Wj8qY7OAI#{{fuL0VOwR?zq4nMK(;1(`#Mqqt4T zC=H{q)xbCeV;6GBWh9B|{166nwb*#XAJbwHe<&Uv z7>I;M#-n4ymzML!%)*C8Nv~w}q%9pt8)dyTx11hKo;R|(ku2utvtcb3N~Vg*LViY1 z=}Y$VwbE#3dHG^0oQ`N(D(VkrwUl4WrNjPcG@SAW!&-lIAb3OzN3=`J<0ZYwlQr^O zAKt&o$eDNO6V3>pA$W#FNeJPThtGOInQaEhrFr&_nEl7!U-R0Q@5uGPz106&-}}jQ z@zQr*>wE2QyVP?^kEy}`e(zE7---V=8-Hm!{_A5b!E5}tk@zFyR2A48o@(>F_#EgC zd5HfcP><`zW&z_K3O1|FM%q!d`EI1%W|eJ*zBB%H7IWK)|Fu;7Pu|t@8vk2A|J;>O z&s*mHhmW!3M(*EG@94J>+Ti|&k9S{q*V3*1slNYF9e?KiC&r$6FN60l7<;Ye5- IzwaOZ0UjDr761SM From abd8b11fe512798adcb33eb8a9d5580996ebe2a7 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Fri, 18 Aug 2023 11:42:16 -0600 Subject: [PATCH 138/406] add hideHeader --- src/components.d.ts | 8 ++++++++ .../crowdsource-manager/crowdsource-manager.tsx | 9 +++++++-- src/components/crowdsource-manager/readme.md | 1 + src/demos/crowdsource-manager.html | 11 +++++++++++ 4 files changed, 27 insertions(+), 2 deletions(-) diff --git a/src/components.d.ts b/src/components.d.ts index 27df82237..55450d3f9 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -64,6 +64,10 @@ export namespace Components { * boolean: when true the grid will display like the previous manager app with the table across the top */ "classicGrid": boolean; + /** + * boolean: when true no header is displayed for the app + */ + "hideHeader": boolean; /** * boolean: when true no map is displayed for the app */ @@ -1057,6 +1061,10 @@ declare namespace LocalJSX { * boolean: when true the grid will display like the previous manager app with the table across the top */ "classicGrid"?: boolean; + /** + * boolean: when true no header is displayed for the app + */ + "hideHeader"?: boolean; /** * boolean: when true no map is displayed for the app */ diff --git a/src/components/crowdsource-manager/crowdsource-manager.tsx b/src/components/crowdsource-manager/crowdsource-manager.tsx index 1c87d3e65..1415c3947 100644 --- a/src/components/crowdsource-manager/crowdsource-manager.tsx +++ b/src/components/crowdsource-manager/crowdsource-manager.tsx @@ -43,6 +43,11 @@ export class CrowdsourceManager { */ @Prop() classicGrid = false; + /** + * boolean: when true no header is displayed for the app + */ + @Prop() hideHeader = true; + /** * boolean: when true no map is displayed for the app */ @@ -154,9 +159,9 @@ export class CrowdsourceManager { - + {this.hideHeader ? undefined : ()} {this._getBody(this._layoutMode, this._panelOpen, this.hideMap)} diff --git a/src/components/crowdsource-manager/readme.md b/src/components/crowdsource-manager/readme.md index 885f9e990..b3f3fe4c7 100644 --- a/src/components/crowdsource-manager/readme.md +++ b/src/components/crowdsource-manager/readme.md @@ -10,6 +10,7 @@ | Property | Attribute | Description | Type | Default | | ------------------------- | ----------------------------- | ------------------------------------------------------------------------------------------------------------------ | ------------ | ------- | | `classicGrid` | `classic-grid` | boolean: when true the grid will display like the previous manager app with the table across the top | `boolean` | `false` | +| `hideHeader` | `hide-header` | boolean: when true no header is displayed for the app | `boolean` | `true` | | `hideMap` | `hide-map` | boolean: when true no map is displayed for the app | `boolean` | `false` | | `mapInfos` | -- | IMapInfo[]: array of map infos (name and id) | `IMapInfo[]` | `[]` | | `zoomAndScrollToSelected` | `zoom-and-scroll-to-selected` | boolean: When true the selected feature will zoomed to in the map and the row will be scrolled to within the table | `boolean` | `false` | diff --git a/src/demos/crowdsource-manager.html b/src/demos/crowdsource-manager.html index 51480ae82..96517f2be 100644 --- a/src/demos/crowdsource-manager.html +++ b/src/demos/crowdsource-manager.html @@ -42,6 +42,7 @@ function addValues() { const demo = document.getElementById("demo"); + let headerSet = false; let custom = []; var vars = window.location.search.substring(1).split('&'); vars.forEach((param) => { @@ -64,11 +65,21 @@ case "zoomAndScrollToSelected": demo.zoomAndScrollToSelected = v.toLocaleLowerCase() === "true"; break; + case "hideHeader": + demo.hideHeader = v.toLocaleLowerCase() === "true"; + headerSet = true; + break; default: break; } }); + if (!headerSet) { + // Want the header to be disabled by default for IA + // Want the header to be enabled by default for the demo app + demo.hideHeader = false; + } + demo.mapInfos = [ ...custom, ...[{ From 5d450bd016dbbfab58b66a2205ba20fe3f9e8264 Mon Sep 17 00:00:00 2001 From: Mike Tschudi Date: Fri, 18 Aug 2023 10:49:19 -0700 Subject: [PATCH 139/406] Add arcgis/core --- package-lock.json | 156 ++++++++++++++++++++++++++++++++-------------- package.json | 1 + 2 files changed, 110 insertions(+), 47 deletions(-) diff --git a/package-lock.json b/package-lock.json index 352cf558f..8a1eb9ee6 100644 --- a/package-lock.json +++ b/package-lock.json @@ -21,6 +21,7 @@ "pdf-lib": "^1.17.1" }, "devDependencies": { + "@arcgis/core": "^4.27.6", "@babel/core": "^7.22.10", "@babel/preset-env": "^7.22.10", "@babel/preset-typescript": "^7.22.5", @@ -82,6 +83,30 @@ "node": ">=6.0.0" } }, + "node_modules/@arcgis/core": { + "version": "4.27.6", + "resolved": "https://registry.npmjs.org/@arcgis/core/-/core-4.27.6.tgz", + "integrity": "sha512-Pdz8Y1hHpQm2LKkJUGNrag2o2pQ9Pe8KHjywWb+TOJcfqM8L2UQBLmtUGY26VmfMwT/FfnUfNJ7HhYzHi5ef0w==", + "dev": true, + "dependencies": { + "@esri/arcgis-html-sanitizer": "~3.0.1", + "@esri/calcite-colors": "~6.1.0", + "@esri/calcite-components": "^1.4.2", + "@popperjs/core": "~2.11.7", + "focus-trap": "~7.4.3", + "luxon": "~3.3.0", + "sortablejs": "~1.15.0" + } + }, + "node_modules/@arcgis/core/node_modules/focus-trap": { + "version": "7.4.3", + "resolved": "https://registry.npmjs.org/focus-trap/-/focus-trap-7.4.3.tgz", + "integrity": "sha512-BgSSbK4GPnS2VbtZ50VtOv1Sti6DIkj3+LkVjiWMNjLeAp1SH1UlLx3ULu/DCu4vq5R4/uvTm+zrvsMsuYmGLg==", + "dev": true, + "dependencies": { + "tabbable": "^6.1.2" + } + }, "node_modules/@babel/code-frame": { "version": "7.22.10", "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.10.tgz", @@ -2255,11 +2280,16 @@ "integrity": "sha512-t6QWdVNmqB9OloYAvVWYNjvqlnrXs/m0nCRNwPGt3ZiAPXn5CpkpSn2UD6LPqGp6vPxKG81lbFQvwCw9az4qIg==", "peer": true }, + "node_modules/@esri/calcite-colors": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/@esri/calcite-colors/-/calcite-colors-6.1.0.tgz", + "integrity": "sha512-wHQYWFtDa6c328EraXEVZvgOiaQyYr0yuaaZ0G3cB4C3lSkWefW34L/e5TLAhtuG3zJ/wR6pl5X1YYNfBc0/4Q==", + "dev": true + }, "node_modules/@esri/calcite-components": { "version": "1.4.3", "resolved": "https://registry.npmjs.org/@esri/calcite-components/-/calcite-components-1.4.3.tgz", "integrity": "sha512-3Yj0ZBOPBCIEp+YPJTM0C6cBmbxFXXsG9a6yv0DKxkaERj7te+hb3DQ1fVbG/lQsMLOdrQHiE70zdXSzMKvKCg==", - "peer": true, "dependencies": { "@floating-ui/dom": "1.4.1", "@stencil/core": "2.22.3", @@ -2277,7 +2307,6 @@ "version": "2.22.3", "resolved": "https://registry.npmjs.org/@stencil/core/-/core-2.22.3.tgz", "integrity": "sha512-kmVA0M/HojwsfkeHsifvHVIYe4l5tin7J5+DLgtl8h6WWfiMClND5K3ifCXXI2ETDNKiEk21p6jql3Fx9o2rng==", - "peer": true, "bin": { "stencil": "bin/stencil" }, @@ -2290,7 +2319,6 @@ "version": "7.4.3", "resolved": "https://registry.npmjs.org/focus-trap/-/focus-trap-7.4.3.tgz", "integrity": "sha512-BgSSbK4GPnS2VbtZ50VtOv1Sti6DIkj3+LkVjiWMNjLeAp1SH1UlLx3ULu/DCu4vq5R4/uvTm+zrvsMsuYmGLg==", - "peer": true, "dependencies": { "tabbable": "^6.1.2" } @@ -2442,14 +2470,12 @@ "node_modules/@floating-ui/core": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.3.1.tgz", - "integrity": "sha512-Bu+AMaXNjrpjh41znzHqaz3r2Nr8hHuHZT6V2LBKMhyMl0FgKA62PNYbqnfgmzOhoWZj70Zecisbo4H1rotP5g==", - "peer": true + "integrity": "sha512-Bu+AMaXNjrpjh41znzHqaz3r2Nr8hHuHZT6V2LBKMhyMl0FgKA62PNYbqnfgmzOhoWZj70Zecisbo4H1rotP5g==" }, "node_modules/@floating-ui/dom": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.4.1.tgz", "integrity": "sha512-loCXUOLzIC3jp50RFOKXZ/kQjjz26ryr/23M+FWG9jrmAv8lRf3DUfC2AiVZ3+K316GOhB08CR+Povwz8e9mDw==", - "peer": true, "dependencies": { "@floating-ui/core": "^1.3.1" } @@ -3643,6 +3669,16 @@ "pako": "^1.0.10" } }, + "node_modules/@popperjs/core": { + "version": "2.11.8", + "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz", + "integrity": "sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==", + "dev": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/popperjs" + } + }, "node_modules/@puppeteer/browsers": { "version": "1.6.0", "resolved": "https://registry.npmjs.org/@puppeteer/browsers/-/browsers-1.6.0.tgz", @@ -3877,7 +3913,6 @@ "version": "3.0.3", "resolved": "https://registry.npmjs.org/@types/color/-/color-3.0.3.tgz", "integrity": "sha512-X//qzJ3d3Zj82J9sC/C18ZY5f43utPbAJ6PhYt/M7uG6etcF6MRpKdN880KBy43B0BMzSfeT96MzrsNjFI3GbA==", - "peer": true, "dependencies": { "@types/color-convert": "*" } @@ -3886,7 +3921,6 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/@types/color-convert/-/color-convert-2.0.0.tgz", "integrity": "sha512-m7GG7IKKGuJUXvkZ1qqG3ChccdIM/qBBo913z+Xft0nKCX4hAU/IxKwZBU4cpRZ7GS5kV4vOblUkILtSShCPXQ==", - "peer": true, "dependencies": { "@types/color-name": "*" } @@ -3894,8 +3928,7 @@ "node_modules/@types/color-name": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/@types/color-name/-/color-name-1.1.1.tgz", - "integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==", - "peer": true + "integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==" }, "node_modules/@types/graceful-fs": { "version": "4.1.6", @@ -5359,7 +5392,6 @@ "version": "4.2.3", "resolved": "https://registry.npmjs.org/color/-/color-4.2.3.tgz", "integrity": "sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==", - "peer": true, "dependencies": { "color-convert": "^2.0.1", "color-string": "^1.9.0" @@ -5388,7 +5420,6 @@ "version": "1.9.1", "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz", "integrity": "sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==", - "peer": true, "dependencies": { "color-name": "^1.0.0", "simple-swizzle": "^0.2.2" @@ -5424,8 +5455,7 @@ "node_modules/composed-offset-position": { "version": "0.0.4", "resolved": "https://registry.npmjs.org/composed-offset-position/-/composed-offset-position-0.0.4.tgz", - "integrity": "sha512-vMlvu1RuNegVE0YsCDSV/X4X10j56mq7PCIyOKK74FxkXzGLwhOUmdkJLSdOBOMwWycobGUMgft2lp+YgTe8hw==", - "peer": true + "integrity": "sha512-vMlvu1RuNegVE0YsCDSV/X4X10j56mq7PCIyOKK74FxkXzGLwhOUmdkJLSdOBOMwWycobGUMgft2lp+YgTe8hw==" }, "node_modules/concat-map": { "version": "0.0.1", @@ -5612,8 +5642,7 @@ "node_modules/dayjs": { "version": "1.11.8", "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.8.tgz", - "integrity": "sha512-LcgxzFoWMEPO7ggRv1Y2N31hUf2R0Vj7fuy/m+Bg1K8rr+KAs1AEy4y9jd5DXe8pbHgX+srkHNS7TH6Q6ZhYeQ==", - "peer": true + "integrity": "sha512-LcgxzFoWMEPO7ggRv1Y2N31hUf2R0Vj7fuy/m+Bg1K8rr+KAs1AEy4y9jd5DXe8pbHgX+srkHNS7TH6Q6ZhYeQ==" }, "node_modules/debug": { "version": "4.3.4", @@ -10321,8 +10350,7 @@ "node_modules/lodash-es": { "version": "4.17.21", "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz", - "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==", - "peer": true + "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==" }, "node_modules/lodash.debounce": { "version": "4.0.8", @@ -10455,6 +10483,15 @@ "yallist": "^3.0.2" } }, + "node_modules/luxon": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/luxon/-/luxon-3.3.0.tgz", + "integrity": "sha512-An0UCfG/rSiqtAIiBPO0Y9/zAnHUZxAMiCpTd5h2smgsj7GGmcenvrvww2cqNA8/4A5ZrD1gJpHN2mIHZQF+Mg==", + "dev": true, + "engines": { + "node": ">=12" + } + }, "node_modules/make-dir": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", @@ -12580,7 +12617,6 @@ "version": "0.2.2", "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz", "integrity": "sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==", - "peer": true, "dependencies": { "is-arrayish": "^0.3.1" } @@ -12588,8 +12624,7 @@ "node_modules/simple-swizzle/node_modules/is-arrayish": { "version": "0.3.2", "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz", - "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==", - "peer": true + "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==" }, "node_modules/sisteransi": { "version": "1.0.5", @@ -12680,8 +12715,7 @@ "node_modules/sortablejs": { "version": "1.15.0", "resolved": "https://registry.npmjs.org/sortablejs/-/sortablejs-1.15.0.tgz", - "integrity": "sha512-bv9qgVMjUMf89wAvM6AxVvS/4MX3sPeN0+agqShejLU5z5GX4C75ow1O2e5k4L6XItUyAK3gH6AxSbXrOM5e8w==", - "peer": true + "integrity": "sha512-bv9qgVMjUMf89wAvM6AxVvS/4MX3sPeN0+agqShejLU5z5GX4C75ow1O2e5k4L6XItUyAK3gH6AxSbXrOM5e8w==" }, "node_modules/source-map": { "version": "0.6.1", @@ -14007,6 +14041,32 @@ "@jridgewell/trace-mapping": "^0.3.9" } }, + "@arcgis/core": { + "version": "4.27.6", + "resolved": "https://registry.npmjs.org/@arcgis/core/-/core-4.27.6.tgz", + "integrity": "sha512-Pdz8Y1hHpQm2LKkJUGNrag2o2pQ9Pe8KHjywWb+TOJcfqM8L2UQBLmtUGY26VmfMwT/FfnUfNJ7HhYzHi5ef0w==", + "dev": true, + "requires": { + "@esri/arcgis-html-sanitizer": "~3.0.1", + "@esri/calcite-colors": "~6.1.0", + "@esri/calcite-components": "^1.4.2", + "@popperjs/core": "~2.11.7", + "focus-trap": "~7.4.3", + "luxon": "~3.3.0", + "sortablejs": "~1.15.0" + }, + "dependencies": { + "focus-trap": { + "version": "7.4.3", + "resolved": "https://registry.npmjs.org/focus-trap/-/focus-trap-7.4.3.tgz", + "integrity": "sha512-BgSSbK4GPnS2VbtZ50VtOv1Sti6DIkj3+LkVjiWMNjLeAp1SH1UlLx3ULu/DCu4vq5R4/uvTm+zrvsMsuYmGLg==", + "dev": true, + "requires": { + "tabbable": "^6.1.2" + } + } + } + }, "@babel/code-frame": { "version": "7.22.10", "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.10.tgz", @@ -15576,11 +15636,16 @@ "integrity": "sha512-t6QWdVNmqB9OloYAvVWYNjvqlnrXs/m0nCRNwPGt3ZiAPXn5CpkpSn2UD6LPqGp6vPxKG81lbFQvwCw9az4qIg==", "peer": true }, + "@esri/calcite-colors": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/@esri/calcite-colors/-/calcite-colors-6.1.0.tgz", + "integrity": "sha512-wHQYWFtDa6c328EraXEVZvgOiaQyYr0yuaaZ0G3cB4C3lSkWefW34L/e5TLAhtuG3zJ/wR6pl5X1YYNfBc0/4Q==", + "dev": true + }, "@esri/calcite-components": { "version": "1.4.3", "resolved": "https://registry.npmjs.org/@esri/calcite-components/-/calcite-components-1.4.3.tgz", "integrity": "sha512-3Yj0ZBOPBCIEp+YPJTM0C6cBmbxFXXsG9a6yv0DKxkaERj7te+hb3DQ1fVbG/lQsMLOdrQHiE70zdXSzMKvKCg==", - "peer": true, "requires": { "@floating-ui/dom": "1.4.1", "@stencil/core": "2.22.3", @@ -15597,14 +15662,12 @@ "@stencil/core": { "version": "2.22.3", "resolved": "https://registry.npmjs.org/@stencil/core/-/core-2.22.3.tgz", - "integrity": "sha512-kmVA0M/HojwsfkeHsifvHVIYe4l5tin7J5+DLgtl8h6WWfiMClND5K3ifCXXI2ETDNKiEk21p6jql3Fx9o2rng==", - "peer": true + "integrity": "sha512-kmVA0M/HojwsfkeHsifvHVIYe4l5tin7J5+DLgtl8h6WWfiMClND5K3ifCXXI2ETDNKiEk21p6jql3Fx9o2rng==" }, "focus-trap": { "version": "7.4.3", "resolved": "https://registry.npmjs.org/focus-trap/-/focus-trap-7.4.3.tgz", "integrity": "sha512-BgSSbK4GPnS2VbtZ50VtOv1Sti6DIkj3+LkVjiWMNjLeAp1SH1UlLx3ULu/DCu4vq5R4/uvTm+zrvsMsuYmGLg==", - "peer": true, "requires": { "tabbable": "^6.1.2" } @@ -15726,14 +15789,12 @@ "@floating-ui/core": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.3.1.tgz", - "integrity": "sha512-Bu+AMaXNjrpjh41znzHqaz3r2Nr8hHuHZT6V2LBKMhyMl0FgKA62PNYbqnfgmzOhoWZj70Zecisbo4H1rotP5g==", - "peer": true + "integrity": "sha512-Bu+AMaXNjrpjh41znzHqaz3r2Nr8hHuHZT6V2LBKMhyMl0FgKA62PNYbqnfgmzOhoWZj70Zecisbo4H1rotP5g==" }, "@floating-ui/dom": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.4.1.tgz", "integrity": "sha512-loCXUOLzIC3jp50RFOKXZ/kQjjz26ryr/23M+FWG9jrmAv8lRf3DUfC2AiVZ3+K316GOhB08CR+Povwz8e9mDw==", - "peer": true, "requires": { "@floating-ui/core": "^1.3.1" } @@ -16733,6 +16794,12 @@ "pako": "^1.0.10" } }, + "@popperjs/core": { + "version": "2.11.8", + "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz", + "integrity": "sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==", + "dev": true + }, "@puppeteer/browsers": { "version": "1.6.0", "resolved": "https://registry.npmjs.org/@puppeteer/browsers/-/browsers-1.6.0.tgz", @@ -16922,7 +16989,6 @@ "version": "3.0.3", "resolved": "https://registry.npmjs.org/@types/color/-/color-3.0.3.tgz", "integrity": "sha512-X//qzJ3d3Zj82J9sC/C18ZY5f43utPbAJ6PhYt/M7uG6etcF6MRpKdN880KBy43B0BMzSfeT96MzrsNjFI3GbA==", - "peer": true, "requires": { "@types/color-convert": "*" } @@ -16931,7 +16997,6 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/@types/color-convert/-/color-convert-2.0.0.tgz", "integrity": "sha512-m7GG7IKKGuJUXvkZ1qqG3ChccdIM/qBBo913z+Xft0nKCX4hAU/IxKwZBU4cpRZ7GS5kV4vOblUkILtSShCPXQ==", - "peer": true, "requires": { "@types/color-name": "*" } @@ -16939,8 +17004,7 @@ "@types/color-name": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/@types/color-name/-/color-name-1.1.1.tgz", - "integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==", - "peer": true + "integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==" }, "@types/graceful-fs": { "version": "4.1.6", @@ -17979,7 +18043,6 @@ "version": "4.2.3", "resolved": "https://registry.npmjs.org/color/-/color-4.2.3.tgz", "integrity": "sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==", - "peer": true, "requires": { "color-convert": "^2.0.1", "color-string": "^1.9.0" @@ -18002,7 +18065,6 @@ "version": "1.9.1", "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz", "integrity": "sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==", - "peer": true, "requires": { "color-name": "^1.0.0", "simple-swizzle": "^0.2.2" @@ -18032,8 +18094,7 @@ "composed-offset-position": { "version": "0.0.4", "resolved": "https://registry.npmjs.org/composed-offset-position/-/composed-offset-position-0.0.4.tgz", - "integrity": "sha512-vMlvu1RuNegVE0YsCDSV/X4X10j56mq7PCIyOKK74FxkXzGLwhOUmdkJLSdOBOMwWycobGUMgft2lp+YgTe8hw==", - "peer": true + "integrity": "sha512-vMlvu1RuNegVE0YsCDSV/X4X10j56mq7PCIyOKK74FxkXzGLwhOUmdkJLSdOBOMwWycobGUMgft2lp+YgTe8hw==" }, "concat-map": { "version": "0.0.1", @@ -18191,8 +18252,7 @@ "dayjs": { "version": "1.11.8", "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.8.tgz", - "integrity": "sha512-LcgxzFoWMEPO7ggRv1Y2N31hUf2R0Vj7fuy/m+Bg1K8rr+KAs1AEy4y9jd5DXe8pbHgX+srkHNS7TH6Q6ZhYeQ==", - "peer": true + "integrity": "sha512-LcgxzFoWMEPO7ggRv1Y2N31hUf2R0Vj7fuy/m+Bg1K8rr+KAs1AEy4y9jd5DXe8pbHgX+srkHNS7TH6Q6ZhYeQ==" }, "debug": { "version": "4.3.4", @@ -21852,8 +21912,7 @@ "lodash-es": { "version": "4.17.21", "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz", - "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==", - "peer": true + "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==" }, "lodash.debounce": { "version": "4.0.8", @@ -21964,6 +22023,12 @@ "yallist": "^3.0.2" } }, + "luxon": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/luxon/-/luxon-3.3.0.tgz", + "integrity": "sha512-An0UCfG/rSiqtAIiBPO0Y9/zAnHUZxAMiCpTd5h2smgsj7GGmcenvrvww2cqNA8/4A5ZrD1gJpHN2mIHZQF+Mg==", + "dev": true + }, "make-dir": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", @@ -23534,7 +23599,6 @@ "version": "0.2.2", "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz", "integrity": "sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==", - "peer": true, "requires": { "is-arrayish": "^0.3.1" }, @@ -23542,8 +23606,7 @@ "is-arrayish": { "version": "0.3.2", "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz", - "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==", - "peer": true + "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==" } } }, @@ -23617,8 +23680,7 @@ "sortablejs": { "version": "1.15.0", "resolved": "https://registry.npmjs.org/sortablejs/-/sortablejs-1.15.0.tgz", - "integrity": "sha512-bv9qgVMjUMf89wAvM6AxVvS/4MX3sPeN0+agqShejLU5z5GX4C75ow1O2e5k4L6XItUyAK3gH6AxSbXrOM5e8w==", - "peer": true + "integrity": "sha512-bv9qgVMjUMf89wAvM6AxVvS/4MX3sPeN0+agqShejLU5z5GX4C75ow1O2e5k4L6XItUyAK3gH6AxSbXrOM5e8w==" }, "source-map": { "version": "0.6.1", diff --git a/package.json b/package.json index 4e87e2b97..5ebab4288 100644 --- a/package.json +++ b/package.json @@ -30,6 +30,7 @@ "update-browserslist": "npx browserslist@latest --update-db" }, "devDependencies": { + "@arcgis/core": "^4.27.6", "@babel/core": "^7.22.10", "@babel/preset-env": "^7.22.10", "@babel/preset-typescript": "^7.22.5", From 020502f2a64209cb815ea04b958679a8b6f34b6a Mon Sep 17 00:00:00 2001 From: John Hauck Date: Fri, 18 Aug 2023 13:46:55 -0600 Subject: [PATCH 140/406] update calcite and add map picker focus --- package-lock.json | 118 +++++++++++-------- package.json | 2 +- src/components/crowdsource-manager/readme.md | 3 + src/components/map-card/readme.md | 3 + src/components/map-picker/map-picker.tsx | 16 ++- src/components/map-picker/readme.md | 3 + src/components/public-notification/readme.md | 3 + src/components/refine-selection/readme.md | 3 + 8 files changed, 100 insertions(+), 51 deletions(-) diff --git a/package-lock.json b/package-lock.json index 352cf558f..b7ec3cd05 100644 --- a/package-lock.json +++ b/package-lock.json @@ -66,7 +66,7 @@ "@esri/arcgis-rest-portal": "^3.4.2", "@esri/arcgis-rest-request": "^3.4.2", "@esri/arcgis-rest-service-admin": "^3.4.2", - "@esri/calcite-components": "^1.4.3" + "@esri/calcite-components": "^1.6.0" } }, "node_modules/@ampproject/remapping": { @@ -2256,18 +2256,18 @@ "peer": true }, "node_modules/@esri/calcite-components": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/@esri/calcite-components/-/calcite-components-1.4.3.tgz", - "integrity": "sha512-3Yj0ZBOPBCIEp+YPJTM0C6cBmbxFXXsG9a6yv0DKxkaERj7te+hb3DQ1fVbG/lQsMLOdrQHiE70zdXSzMKvKCg==", + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@esri/calcite-components/-/calcite-components-1.6.0.tgz", + "integrity": "sha512-EYhIdr0IO9ite/hFX7xR6R6t5ZTzk7tlivNHcuMkJVMppkDyHGoF/pDh836WVIw7rbLce/0sz4co176eqCpczw==", "peer": true, "dependencies": { - "@floating-ui/dom": "1.4.1", + "@floating-ui/dom": "1.5.1", "@stencil/core": "2.22.3", "@types/color": "3.0.3", "color": "4.2.3", "composed-offset-position": "0.0.4", - "dayjs": "1.11.8", - "focus-trap": "7.4.3", + "dayjs": "1.11.9", + "focus-trap": "7.5.2", "form-request-submit-polyfill": "2.0.0", "lodash-es": "4.17.21", "sortablejs": "1.15.0" @@ -2287,12 +2287,12 @@ } }, "node_modules/@esri/calcite-components/node_modules/focus-trap": { - "version": "7.4.3", - "resolved": "https://registry.npmjs.org/focus-trap/-/focus-trap-7.4.3.tgz", - "integrity": "sha512-BgSSbK4GPnS2VbtZ50VtOv1Sti6DIkj3+LkVjiWMNjLeAp1SH1UlLx3ULu/DCu4vq5R4/uvTm+zrvsMsuYmGLg==", + "version": "7.5.2", + "resolved": "https://registry.npmjs.org/focus-trap/-/focus-trap-7.5.2.tgz", + "integrity": "sha512-p6vGNNWLDGwJCiEjkSK6oERj/hEyI9ITsSwIUICBoKLlWiTWXJRfQibCwcoi50rTZdbi87qDtUlMCmQwsGSgPw==", "peer": true, "dependencies": { - "tabbable": "^6.1.2" + "tabbable": "^6.2.0" } }, "node_modules/@esri/eslint-plugin-calcite-components": { @@ -2440,20 +2440,30 @@ "dev": true }, "node_modules/@floating-ui/core": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.3.1.tgz", - "integrity": "sha512-Bu+AMaXNjrpjh41znzHqaz3r2Nr8hHuHZT6V2LBKMhyMl0FgKA62PNYbqnfgmzOhoWZj70Zecisbo4H1rotP5g==", - "peer": true + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.4.1.tgz", + "integrity": "sha512-jk3WqquEJRlcyu7997NtR5PibI+y5bi+LS3hPmguVClypenMsCY3CBa3LAQnozRCtCrYWSEtAdiskpamuJRFOQ==", + "peer": true, + "dependencies": { + "@floating-ui/utils": "^0.1.1" + } }, "node_modules/@floating-ui/dom": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.4.1.tgz", - "integrity": "sha512-loCXUOLzIC3jp50RFOKXZ/kQjjz26ryr/23M+FWG9jrmAv8lRf3DUfC2AiVZ3+K316GOhB08CR+Povwz8e9mDw==", + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.5.1.tgz", + "integrity": "sha512-KwvVcPSXg6mQygvA1TjbN/gh///36kKtllIF8SUm0qpFj8+rvYrpvlYdL1JoA71SHpDqgSSdGOSoQ0Mp3uY5aw==", "peer": true, "dependencies": { - "@floating-ui/core": "^1.3.1" + "@floating-ui/core": "^1.4.1", + "@floating-ui/utils": "^0.1.1" } }, + "node_modules/@floating-ui/utils": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.1.1.tgz", + "integrity": "sha512-m0G6wlnhm/AX0H12IOWtK8gASEMffnX08RtKkCgTdHb9JpHKGloI7icFfLg9ZmQeavcvR0PKmzxClyuFPSjKWw==", + "peer": true + }, "node_modules/@humanwhocodes/config-array": { "version": "0.11.8", "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.8.tgz", @@ -5610,9 +5620,9 @@ } }, "node_modules/dayjs": { - "version": "1.11.8", - "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.8.tgz", - "integrity": "sha512-LcgxzFoWMEPO7ggRv1Y2N31hUf2R0Vj7fuy/m+Bg1K8rr+KAs1AEy4y9jd5DXe8pbHgX+srkHNS7TH6Q6ZhYeQ==", + "version": "1.11.9", + "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.9.tgz", + "integrity": "sha512-QvzAURSbQ0pKdIye2txOzNaHmxtUBXerpY0FJsFXUMKbIZeFm5ht1LS/jFsrncjnmtv8HsG0W2g6c0zUjZWmpA==", "peer": true }, "node_modules/debug": { @@ -13013,9 +13023,9 @@ "dev": true }, "node_modules/tabbable": { - "version": "6.1.2", - "resolved": "https://registry.npmjs.org/tabbable/-/tabbable-6.1.2.tgz", - "integrity": "sha512-qCN98uP7i9z0fIS4amQ5zbGBOq+OSigYeGvPy7NDk8Y9yncqDZ9pRPgfsc2PJIVM9RrJj7GIfuRgmjoUU9zTHQ==" + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/tabbable/-/tabbable-6.2.0.tgz", + "integrity": "sha512-Cat63mxsVJlzYvN51JmVXIgNoUokrIaT2zLclCXjRd8boZ0004U4KCs/sToJ75C6sdlByWxpYnb5Boif1VSFew==" }, "node_modules/tailwindcss": { "version": "3.0.23", @@ -15577,18 +15587,18 @@ "peer": true }, "@esri/calcite-components": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/@esri/calcite-components/-/calcite-components-1.4.3.tgz", - "integrity": "sha512-3Yj0ZBOPBCIEp+YPJTM0C6cBmbxFXXsG9a6yv0DKxkaERj7te+hb3DQ1fVbG/lQsMLOdrQHiE70zdXSzMKvKCg==", + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@esri/calcite-components/-/calcite-components-1.6.0.tgz", + "integrity": "sha512-EYhIdr0IO9ite/hFX7xR6R6t5ZTzk7tlivNHcuMkJVMppkDyHGoF/pDh836WVIw7rbLce/0sz4co176eqCpczw==", "peer": true, "requires": { - "@floating-ui/dom": "1.4.1", + "@floating-ui/dom": "1.5.1", "@stencil/core": "2.22.3", "@types/color": "3.0.3", "color": "4.2.3", "composed-offset-position": "0.0.4", - "dayjs": "1.11.8", - "focus-trap": "7.4.3", + "dayjs": "1.11.9", + "focus-trap": "7.5.2", "form-request-submit-polyfill": "2.0.0", "lodash-es": "4.17.21", "sortablejs": "1.15.0" @@ -15601,12 +15611,12 @@ "peer": true }, "focus-trap": { - "version": "7.4.3", - "resolved": "https://registry.npmjs.org/focus-trap/-/focus-trap-7.4.3.tgz", - "integrity": "sha512-BgSSbK4GPnS2VbtZ50VtOv1Sti6DIkj3+LkVjiWMNjLeAp1SH1UlLx3ULu/DCu4vq5R4/uvTm+zrvsMsuYmGLg==", + "version": "7.5.2", + "resolved": "https://registry.npmjs.org/focus-trap/-/focus-trap-7.5.2.tgz", + "integrity": "sha512-p6vGNNWLDGwJCiEjkSK6oERj/hEyI9ITsSwIUICBoKLlWiTWXJRfQibCwcoi50rTZdbi87qDtUlMCmQwsGSgPw==", "peer": true, "requires": { - "tabbable": "^6.1.2" + "tabbable": "^6.2.0" } } } @@ -15724,20 +15734,30 @@ } }, "@floating-ui/core": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.3.1.tgz", - "integrity": "sha512-Bu+AMaXNjrpjh41znzHqaz3r2Nr8hHuHZT6V2LBKMhyMl0FgKA62PNYbqnfgmzOhoWZj70Zecisbo4H1rotP5g==", - "peer": true + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.4.1.tgz", + "integrity": "sha512-jk3WqquEJRlcyu7997NtR5PibI+y5bi+LS3hPmguVClypenMsCY3CBa3LAQnozRCtCrYWSEtAdiskpamuJRFOQ==", + "peer": true, + "requires": { + "@floating-ui/utils": "^0.1.1" + } }, "@floating-ui/dom": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.4.1.tgz", - "integrity": "sha512-loCXUOLzIC3jp50RFOKXZ/kQjjz26ryr/23M+FWG9jrmAv8lRf3DUfC2AiVZ3+K316GOhB08CR+Povwz8e9mDw==", + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.5.1.tgz", + "integrity": "sha512-KwvVcPSXg6mQygvA1TjbN/gh///36kKtllIF8SUm0qpFj8+rvYrpvlYdL1JoA71SHpDqgSSdGOSoQ0Mp3uY5aw==", "peer": true, "requires": { - "@floating-ui/core": "^1.3.1" + "@floating-ui/core": "^1.4.1", + "@floating-ui/utils": "^0.1.1" } }, + "@floating-ui/utils": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.1.1.tgz", + "integrity": "sha512-m0G6wlnhm/AX0H12IOWtK8gASEMffnX08RtKkCgTdHb9JpHKGloI7icFfLg9ZmQeavcvR0PKmzxClyuFPSjKWw==", + "peer": true + }, "@humanwhocodes/config-array": { "version": "0.11.8", "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.8.tgz", @@ -18189,9 +18209,9 @@ } }, "dayjs": { - "version": "1.11.8", - "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.8.tgz", - "integrity": "sha512-LcgxzFoWMEPO7ggRv1Y2N31hUf2R0Vj7fuy/m+Bg1K8rr+KAs1AEy4y9jd5DXe8pbHgX+srkHNS7TH6Q6ZhYeQ==", + "version": "1.11.9", + "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.9.tgz", + "integrity": "sha512-QvzAURSbQ0pKdIye2txOzNaHmxtUBXerpY0FJsFXUMKbIZeFm5ht1LS/jFsrncjnmtv8HsG0W2g6c0zUjZWmpA==", "peer": true }, "debug": { @@ -23882,9 +23902,9 @@ "dev": true }, "tabbable": { - "version": "6.1.2", - "resolved": "https://registry.npmjs.org/tabbable/-/tabbable-6.1.2.tgz", - "integrity": "sha512-qCN98uP7i9z0fIS4amQ5zbGBOq+OSigYeGvPy7NDk8Y9yncqDZ9pRPgfsc2PJIVM9RrJj7GIfuRgmjoUU9zTHQ==" + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/tabbable/-/tabbable-6.2.0.tgz", + "integrity": "sha512-Cat63mxsVJlzYvN51JmVXIgNoUokrIaT2zLclCXjRd8boZ0004U4KCs/sToJ75C6sdlByWxpYnb5Boif1VSFew==" }, "tailwindcss": { "version": "3.0.23", diff --git a/package.json b/package.json index 4e87e2b97..5692053aa 100644 --- a/package.json +++ b/package.json @@ -87,7 +87,7 @@ "@esri/arcgis-rest-portal": "^3.4.2", "@esri/arcgis-rest-request": "^3.4.2", "@esri/arcgis-rest-service-admin": "^3.4.2", - "@esri/calcite-components": "^1.4.3" + "@esri/calcite-components": "^1.6.0" }, "repository": { "type": "git", diff --git a/src/components/crowdsource-manager/readme.md b/src/components/crowdsource-manager/readme.md index b3f3fe4c7..58b476dac 100644 --- a/src/components/crowdsource-manager/readme.md +++ b/src/components/crowdsource-manager/readme.md @@ -68,12 +68,15 @@ graph TD; calcite-action-group --> calcite-action-menu calcite-action-group --> calcite-action calcite-list --> calcite-scrim + calcite-list --> calcite-stack calcite-list --> calcite-filter calcite-filter --> calcite-input calcite-input --> calcite-progress calcite-input --> calcite-icon calcite-list-item --> calcite-icon + calcite-list-item --> calcite-handle calcite-list-item --> calcite-action + calcite-handle --> calcite-icon map-tools --> calcite-action map-tools --> calcite-action-bar map-tools --> calcite-action-group diff --git a/src/components/map-card/readme.md b/src/components/map-card/readme.md index 2d2012cf3..aa78f8a3f 100644 --- a/src/components/map-card/readme.md +++ b/src/components/map-card/readme.md @@ -52,13 +52,16 @@ graph TD; calcite-popover --> calcite-action calcite-popover --> calcite-icon calcite-list --> calcite-scrim + calcite-list --> calcite-stack calcite-list --> calcite-filter calcite-scrim --> calcite-loader calcite-filter --> calcite-input calcite-input --> calcite-progress calcite-input --> calcite-icon calcite-list-item --> calcite-icon + calcite-list-item --> calcite-handle calcite-list-item --> calcite-action + calcite-handle --> calcite-icon map-tools --> calcite-action map-tools --> calcite-action-bar map-tools --> calcite-action-group diff --git a/src/components/map-picker/map-picker.tsx b/src/components/map-picker/map-picker.tsx index 93f517b7d..fa97fd19d 100644 --- a/src/components/map-picker/map-picker.tsx +++ b/src/components/map-picker/map-picker.tsx @@ -64,6 +64,11 @@ export class MapPicker { // //-------------------------------------------------------------------------- + /** + * HTMLCalciteListElement: this list of map names + */ + protected _list: HTMLCalciteListElement; + /** * string: the id of map currently displayed */ @@ -131,6 +136,15 @@ export class MapPicker { ); } + /** + * Called after each render + */ + async componentDidRender() { + if (this._mapListExpanded) { + await this._list.setFocus(); + } + } + /** * Called once after the component has loaded */ @@ -204,7 +218,7 @@ export class MapPicker { const listClass = show ? "map-list" : "display-none"; return (

- + this._list = el} selectionAppearance="border"> {this.mapInfos.map(mapInfo => { return ( calcite-action calcite-popover --> calcite-icon calcite-list --> calcite-scrim + calcite-list --> calcite-stack calcite-list --> calcite-filter calcite-scrim --> calcite-loader calcite-filter --> calcite-input calcite-input --> calcite-progress calcite-input --> calcite-icon calcite-list-item --> calcite-icon + calcite-list-item --> calcite-handle calcite-list-item --> calcite-action + calcite-handle --> calcite-icon map-card --> map-picker style map-picker fill:#f9f,stroke:#333,stroke-width:4px ``` diff --git a/src/components/public-notification/readme.md b/src/components/public-notification/readme.md index 0e381cf88..4bc990298 100644 --- a/src/components/public-notification/readme.md +++ b/src/components/public-notification/readme.md @@ -103,12 +103,15 @@ graph TD; calcite-button --> calcite-loader calcite-button --> calcite-icon calcite-list --> calcite-scrim + calcite-list --> calcite-stack calcite-list --> calcite-filter calcite-filter --> calcite-input calcite-input --> calcite-progress calcite-input --> calcite-icon calcite-list-item --> calcite-icon + calcite-list-item --> calcite-handle calcite-list-item --> calcite-action + calcite-handle --> calcite-icon map-select-tools --> map-draw-tools map-select-tools --> calcite-label map-select-tools --> calcite-icon diff --git a/src/components/refine-selection/readme.md b/src/components/refine-selection/readme.md index 32846e961..5c310ba5e 100644 --- a/src/components/refine-selection/readme.md +++ b/src/components/refine-selection/readme.md @@ -80,13 +80,16 @@ graph TD; calcite-segmented-control-item --> calcite-icon map-draw-tools --> calcite-action calcite-list --> calcite-scrim + calcite-list --> calcite-stack calcite-list --> calcite-filter calcite-scrim --> calcite-loader calcite-filter --> calcite-input calcite-input --> calcite-progress calcite-input --> calcite-icon calcite-list-item --> calcite-icon + calcite-list-item --> calcite-handle calcite-list-item --> calcite-action + calcite-handle --> calcite-icon public-notification --> refine-selection style refine-selection fill:#f9f,stroke:#333,stroke-width:4px ``` From b77c0a13d30d03ea45b4361862919c56f078098e Mon Sep 17 00:00:00 2001 From: John Hauck Date: Fri, 18 Aug 2023 14:23:21 -0600 Subject: [PATCH 141/406] classic grid update --- .../crowdsource-manager.css | 4 + .../crowdsource-manager.tsx | 79 ++++++++++++++----- 2 files changed, 63 insertions(+), 20 deletions(-) diff --git a/src/components/crowdsource-manager/crowdsource-manager.css b/src/components/crowdsource-manager/crowdsource-manager.css index 17ccfd913..277af7cea 100644 --- a/src/components/crowdsource-manager/crowdsource-manager.css +++ b/src/components/crowdsource-manager/crowdsource-manager.css @@ -80,6 +80,10 @@ border: 1px solid var(--calcite-ui-border-3); } +.border-bottom { + border-bottom: 1px solid var(--calcite-ui-border-3); +} + .position-relative { position: relative; } diff --git a/src/components/crowdsource-manager/crowdsource-manager.tsx b/src/components/crowdsource-manager/crowdsource-manager.tsx index 1415c3947..6d702a879 100644 --- a/src/components/crowdsource-manager/crowdsource-manager.tsx +++ b/src/components/crowdsource-manager/crowdsource-manager.tsx @@ -289,13 +289,13 @@ export class CrowdsourceManager {
{this._getTable(layoutMode, panelOpen)} - {this._getMap(layoutMode, panelOpen, hideMap)} + {this._getMapAndCard(layoutMode, panelOpen, hideMap)}
) : (
- {this._getMap(layoutMode, panelOpen, hideMap)} + {this._getMapAndCard(layoutMode, panelOpen, hideMap)} {this._getTable(layoutMode, panelOpen)}
@@ -303,7 +303,7 @@ export class CrowdsourceManager { } /** - * Get the map node based for the current layout + * Get the map and card nodes based for the current layout options * * @param layoutMode ELayoutMode the current layout mode * @param panelOpen boolean indicates if all panels are open @@ -312,33 +312,72 @@ export class CrowdsourceManager { * @returns the map node * @protected */ - protected _getMap( + protected _getMapAndCard( layoutMode: ELayoutMode, panelOpen: boolean, hideMap: boolean + ): VNode { + const mapSizeClass = this._getMapSizeClass(layoutMode, panelOpen); + return this.classicGrid ? ( +
+ {this._getCardNode(layoutMode, hideMap)} + {this._getMapNode(layoutMode, hideMap)} +
+ ) : ( +
+ {this._getMapNode(layoutMode, hideMap)} + {this._getCardNode(layoutMode, hideMap)} +
+ ); + } + + /** + * Get the map node based for the current layout options + * + * @param layoutMode ELayoutMode the current layout mode + * @param hideMap when true no map is displayed + * + * @returns the map node + * @protected + */ + protected _getMapNode( + layoutMode: ELayoutMode, + hideMap: boolean ): VNode { const mapDisplayClass = this.classicGrid && layoutMode === ELayoutMode.GRID ? "display-flex height-full width-1-2" : layoutMode === ELayoutMode.GRID && !hideMap ? "" : "display-none"; - const cardManagerHeight = this.classicGrid && layoutMode === ELayoutMode.GRID ? "" : - layoutMode === ELayoutMode.GRID && !hideMap ? "adjusted-height-50" : "adjusted-height-100"; - // - const mapSizeClass = this._getMapSizeClass(layoutMode, panelOpen); const mapContainerClass = this.classicGrid && layoutMode === ELayoutMode.GRID ? "width-full" : "adjusted-height-50"; + return ( +
+ +
+ ); + } + /** + * Get the card node based for the current layout options + * + * @param layoutMode ELayoutMode the current layout mode + * @param hideMap when true no map is displayed + * + * @returns the map node + * @protected + */ + protected _getCardNode( + layoutMode: ELayoutMode, + hideMap: boolean + ): VNode { + const cardManagerHeight = this.classicGrid && layoutMode === ELayoutMode.GRID ? "" : + layoutMode === ELayoutMode.GRID && !hideMap ? "adjusted-height-50" : "adjusted-height-100"; const cardManagerContainer = this.classicGrid && layoutMode === ELayoutMode.GRID ? "width-full adjusted-height-100" : "width-50 height-full"; return ( -
-
- -
-
- -
+
+
); } @@ -365,7 +404,7 @@ export class CrowdsourceManager { this.classicGrid && layoutMode === ELayoutMode.VERTICAL ? "panel-end" : layoutMode === ELayoutMode.HORIZONTAL ? "header" : "panel-start"; return ( - + Date: Fri, 18 Aug 2023 14:51:06 -0600 Subject: [PATCH 142/406] update version --- CHANGELOG.md | 5 ++++- package-lock.json | 4 ++-- package.json | 2 +- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 764a49dcc..cd52f3a84 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,8 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm ## [Unreleased] +## [0.6.6] - Aug 18th 2023 + ## [0.6.5] - Aug 17th 2023 ## [0.6.4] - Aug 9th 2023 @@ -196,4 +198,5 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm [0.6.3]: https://github.com/Esri/solution.js/compare/v0.6.2...v0.6.3 "v0.6.3" [0.6.4]: https://github.com/Esri/solution.js/compare/v0.6.3...v0.6.4 "v0.6.4" [0.6.5]: https://github.com/Esri/solution.js/compare/v0.6.4...v0.6.5 "v0.6.5" -[Unreleased]: https://github.com/Esri/solution.js/compare/v0.6.5...HEAD "Unreleased Changes" +[0.6.6]: https://github.com/Esri/solution.js/compare/v0.6.5...v0.6.6 "v0.6.6" +[Unreleased]: https://github.com/Esri/solution.js/compare/v0.6.6...HEAD "Unreleased Changes" diff --git a/package-lock.json b/package-lock.json index b7ec3cd05..f00f5904c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@esri/solutions-components", - "version": "0.6.5", + "version": "0.6.6", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@esri/solutions-components", - "version": "0.6.5", + "version": "0.6.6", "license": "Apache-2.0", "dependencies": { "@esri/hub-common": "^12.37.1", diff --git a/package.json b/package.json index 5692053aa..ea9c95018 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@esri/solutions-components", - "version": "0.6.5", + "version": "0.6.6", "description": "Web Components for Esri's Solutions Applications", "main": "dist/index.cjs.js", "module": "dist/index.js", From 3576b19dd0f7a8c84d1346817a5b5d6f8c4cd4a3 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Mon, 21 Aug 2023 11:50:59 -0600 Subject: [PATCH 143/406] roll back stencil --- package-lock.json | 37 +++++++++---------------------------- package.json | 2 +- src/components.d.ts | 2 -- 3 files changed, 10 insertions(+), 31 deletions(-) diff --git a/package-lock.json b/package-lock.json index f00f5904c..ae987133a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -14,7 +14,7 @@ "@esri/hub-sites": "^12.6.0", "@esri/hub-teams": "^12.4.1", "@pdf-lib/fontkit": "^1.1.1", - "@stencil/core": "^4.0.5", + "@stencil/core": "^2.20.0", "focus-trap": "7.2.0", "jspdf": "^2.5.1", "minimist": "^1.2.6", @@ -2273,19 +2273,6 @@ "sortablejs": "1.15.0" } }, - "node_modules/@esri/calcite-components/node_modules/@stencil/core": { - "version": "2.22.3", - "resolved": "https://registry.npmjs.org/@stencil/core/-/core-2.22.3.tgz", - "integrity": "sha512-kmVA0M/HojwsfkeHsifvHVIYe4l5tin7J5+DLgtl8h6WWfiMClND5K3ifCXXI2ETDNKiEk21p6jql3Fx9o2rng==", - "peer": true, - "bin": { - "stencil": "bin/stencil" - }, - "engines": { - "node": ">=12.10.0", - "npm": ">=6.0.0" - } - }, "node_modules/@esri/calcite-components/node_modules/focus-trap": { "version": "7.5.2", "resolved": "https://registry.npmjs.org/focus-trap/-/focus-trap-7.5.2.tgz", @@ -3708,15 +3695,15 @@ } }, "node_modules/@stencil/core": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/@stencil/core/-/core-4.0.5.tgz", - "integrity": "sha512-0nZRvvhjjOKsQFGX0pKiDtOS/5IiL7HRxtLqpIxHAxXKLs9ZcomTsdOwl12m/qjx2AtQReOfP8+x8jLOBNMOIQ==", + "version": "2.22.3", + "resolved": "https://registry.npmjs.org/@stencil/core/-/core-2.22.3.tgz", + "integrity": "sha512-kmVA0M/HojwsfkeHsifvHVIYe4l5tin7J5+DLgtl8h6WWfiMClND5K3ifCXXI2ETDNKiEk21p6jql3Fx9o2rng==", "bin": { "stencil": "bin/stencil" }, "engines": { - "node": ">=16.0.0", - "npm": ">=7.10.0" + "node": ">=12.10.0", + "npm": ">=6.0.0" } }, "node_modules/@stencil/postcss": { @@ -15604,12 +15591,6 @@ "sortablejs": "1.15.0" }, "dependencies": { - "@stencil/core": { - "version": "2.22.3", - "resolved": "https://registry.npmjs.org/@stencil/core/-/core-2.22.3.tgz", - "integrity": "sha512-kmVA0M/HojwsfkeHsifvHVIYe4l5tin7J5+DLgtl8h6WWfiMClND5K3ifCXXI2ETDNKiEk21p6jql3Fx9o2rng==", - "peer": true - }, "focus-trap": { "version": "7.5.2", "resolved": "https://registry.npmjs.org/focus-trap/-/focus-trap-7.5.2.tgz", @@ -16799,9 +16780,9 @@ } }, "@stencil/core": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/@stencil/core/-/core-4.0.5.tgz", - "integrity": "sha512-0nZRvvhjjOKsQFGX0pKiDtOS/5IiL7HRxtLqpIxHAxXKLs9ZcomTsdOwl12m/qjx2AtQReOfP8+x8jLOBNMOIQ==" + "version": "2.22.3", + "resolved": "https://registry.npmjs.org/@stencil/core/-/core-2.22.3.tgz", + "integrity": "sha512-kmVA0M/HojwsfkeHsifvHVIYe4l5tin7J5+DLgtl8h6WWfiMClND5K3ifCXXI2ETDNKiEk21p6jql3Fx9o2rng==" }, "@stencil/postcss": { "version": "2.1.0", diff --git a/package.json b/package.json index ea9c95018..d6582ad39 100644 --- a/package.json +++ b/package.json @@ -75,7 +75,7 @@ "@esri/hub-sites": "^12.6.0", "@esri/hub-teams": "^12.4.1", "@pdf-lib/fontkit": "^1.1.1", - "@stencil/core": "^4.0.5", + "@stencil/core": "^2.20.0", "focus-trap": "7.2.0", "jspdf": "^2.5.1", "minimist": "^1.2.6", diff --git a/src/components.d.ts b/src/components.d.ts index 55450d3f9..62267b9ee 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -7,8 +7,6 @@ import { HTMLStencilElement, JSXBase } from "@stencil/core/internal"; import { DistanceUnit, EDrawMode, EExpandType, ELayoutMode, IExportInfos, IInventoryItem, IMapInfo, ISearchConfiguration, ISelectionSet, ISketchGraphicsChange, ISolutionSpatialReferenceInfo, ISpatialRefRepresentation, IValueChange } from "./utils/interfaces"; import { UserSession } from "@esri/solution-common"; -export { DistanceUnit, EDrawMode, EExpandType, ELayoutMode, IExportInfos, IInventoryItem, IMapInfo, ISearchConfiguration, ISelectionSet, ISketchGraphicsChange, ISolutionSpatialReferenceInfo, ISpatialRefRepresentation, IValueChange } from "./utils/interfaces"; -export { UserSession } from "@esri/solution-common"; export namespace Components { interface BufferTools { /** From 9d7e065b08e89b639cd9fdf95a153d944b4a52cf Mon Sep 17 00:00:00 2001 From: John Hauck Date: Mon, 21 Aug 2023 11:56:18 -0600 Subject: [PATCH 144/406] update version --- CHANGELOG.md | 5 ++++- package-lock.json | 4 ++-- package.json | 2 +- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index cd52f3a84..2aeece778 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,8 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm ## [Unreleased] +## [0.6.7] - Aug 21st 2023 + ## [0.6.6] - Aug 18th 2023 ## [0.6.5] - Aug 17th 2023 @@ -199,4 +201,5 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm [0.6.4]: https://github.com/Esri/solution.js/compare/v0.6.3...v0.6.4 "v0.6.4" [0.6.5]: https://github.com/Esri/solution.js/compare/v0.6.4...v0.6.5 "v0.6.5" [0.6.6]: https://github.com/Esri/solution.js/compare/v0.6.5...v0.6.6 "v0.6.6" -[Unreleased]: https://github.com/Esri/solution.js/compare/v0.6.6...HEAD "Unreleased Changes" +[0.6.7]: https://github.com/Esri/solution.js/compare/v0.6.6...v0.6.7 "v0.6.7" +[Unreleased]: https://github.com/Esri/solution.js/compare/v0.6.7...HEAD "Unreleased Changes" diff --git a/package-lock.json b/package-lock.json index ae987133a..ff523ef07 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@esri/solutions-components", - "version": "0.6.6", + "version": "0.6.7", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@esri/solutions-components", - "version": "0.6.6", + "version": "0.6.7", "license": "Apache-2.0", "dependencies": { "@esri/hub-common": "^12.37.1", diff --git a/package.json b/package.json index d6582ad39..a089768b8 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@esri/solutions-components", - "version": "0.6.6", + "version": "0.6.7", "description": "Web Components for Esri's Solutions Applications", "main": "dist/index.cjs.js", "module": "dist/index.js", From 370707619dac5806b95d279bbca076f90f0bfc3e Mon Sep 17 00:00:00 2001 From: John Hauck Date: Mon, 21 Aug 2023 14:14:57 -0600 Subject: [PATCH 145/406] upgrade stencil and add customElementsExportBehavior --- package-lock.json | 37 ++++++++++++++++++++++++++++--------- package.json | 2 +- src/components.d.ts | 2 ++ stencil.config.ts | 2 +- 4 files changed, 32 insertions(+), 11 deletions(-) diff --git a/package-lock.json b/package-lock.json index ff523ef07..a7d8c6baf 100644 --- a/package-lock.json +++ b/package-lock.json @@ -14,7 +14,7 @@ "@esri/hub-sites": "^12.6.0", "@esri/hub-teams": "^12.4.1", "@pdf-lib/fontkit": "^1.1.1", - "@stencil/core": "^2.20.0", + "@stencil/core": "^4.0.5", "focus-trap": "7.2.0", "jspdf": "^2.5.1", "minimist": "^1.2.6", @@ -2273,6 +2273,19 @@ "sortablejs": "1.15.0" } }, + "node_modules/@esri/calcite-components/node_modules/@stencil/core": { + "version": "2.22.3", + "resolved": "https://registry.npmjs.org/@stencil/core/-/core-2.22.3.tgz", + "integrity": "sha512-kmVA0M/HojwsfkeHsifvHVIYe4l5tin7J5+DLgtl8h6WWfiMClND5K3ifCXXI2ETDNKiEk21p6jql3Fx9o2rng==", + "peer": true, + "bin": { + "stencil": "bin/stencil" + }, + "engines": { + "node": ">=12.10.0", + "npm": ">=6.0.0" + } + }, "node_modules/@esri/calcite-components/node_modules/focus-trap": { "version": "7.5.2", "resolved": "https://registry.npmjs.org/focus-trap/-/focus-trap-7.5.2.tgz", @@ -3695,15 +3708,15 @@ } }, "node_modules/@stencil/core": { - "version": "2.22.3", - "resolved": "https://registry.npmjs.org/@stencil/core/-/core-2.22.3.tgz", - "integrity": "sha512-kmVA0M/HojwsfkeHsifvHVIYe4l5tin7J5+DLgtl8h6WWfiMClND5K3ifCXXI2ETDNKiEk21p6jql3Fx9o2rng==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/@stencil/core/-/core-4.1.0.tgz", + "integrity": "sha512-yIpL+CX02fy5zvFXwXcHZjjEILRm3aiONbucpfLIWPS7zcBAuucdROssartEa+D7E1JRko97ydxn1Ntdu4GoWg==", "bin": { "stencil": "bin/stencil" }, "engines": { - "node": ">=12.10.0", - "npm": ">=6.0.0" + "node": ">=16.0.0", + "npm": ">=7.10.0" } }, "node_modules/@stencil/postcss": { @@ -15591,6 +15604,12 @@ "sortablejs": "1.15.0" }, "dependencies": { + "@stencil/core": { + "version": "2.22.3", + "resolved": "https://registry.npmjs.org/@stencil/core/-/core-2.22.3.tgz", + "integrity": "sha512-kmVA0M/HojwsfkeHsifvHVIYe4l5tin7J5+DLgtl8h6WWfiMClND5K3ifCXXI2ETDNKiEk21p6jql3Fx9o2rng==", + "peer": true + }, "focus-trap": { "version": "7.5.2", "resolved": "https://registry.npmjs.org/focus-trap/-/focus-trap-7.5.2.tgz", @@ -16780,9 +16799,9 @@ } }, "@stencil/core": { - "version": "2.22.3", - "resolved": "https://registry.npmjs.org/@stencil/core/-/core-2.22.3.tgz", - "integrity": "sha512-kmVA0M/HojwsfkeHsifvHVIYe4l5tin7J5+DLgtl8h6WWfiMClND5K3ifCXXI2ETDNKiEk21p6jql3Fx9o2rng==" + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/@stencil/core/-/core-4.1.0.tgz", + "integrity": "sha512-yIpL+CX02fy5zvFXwXcHZjjEILRm3aiONbucpfLIWPS7zcBAuucdROssartEa+D7E1JRko97ydxn1Ntdu4GoWg==" }, "@stencil/postcss": { "version": "2.1.0", diff --git a/package.json b/package.json index a089768b8..09d7849a8 100644 --- a/package.json +++ b/package.json @@ -75,7 +75,7 @@ "@esri/hub-sites": "^12.6.0", "@esri/hub-teams": "^12.4.1", "@pdf-lib/fontkit": "^1.1.1", - "@stencil/core": "^2.20.0", + "@stencil/core": "^4.0.5", "focus-trap": "7.2.0", "jspdf": "^2.5.1", "minimist": "^1.2.6", diff --git a/src/components.d.ts b/src/components.d.ts index 62267b9ee..55450d3f9 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -7,6 +7,8 @@ import { HTMLStencilElement, JSXBase } from "@stencil/core/internal"; import { DistanceUnit, EDrawMode, EExpandType, ELayoutMode, IExportInfos, IInventoryItem, IMapInfo, ISearchConfiguration, ISelectionSet, ISketchGraphicsChange, ISolutionSpatialReferenceInfo, ISpatialRefRepresentation, IValueChange } from "./utils/interfaces"; import { UserSession } from "@esri/solution-common"; +export { DistanceUnit, EDrawMode, EExpandType, ELayoutMode, IExportInfos, IInventoryItem, IMapInfo, ISearchConfiguration, ISelectionSet, ISketchGraphicsChange, ISolutionSpatialReferenceInfo, ISpatialRefRepresentation, IValueChange } from "./utils/interfaces"; +export { UserSession } from "@esri/solution-common"; export namespace Components { interface BufferTools { /** diff --git a/stencil.config.ts b/stencil.config.ts index e735c2334..e356b9fb3 100644 --- a/stencil.config.ts +++ b/stencil.config.ts @@ -42,7 +42,7 @@ export const config: Config = { }, { type: "dist-custom-elements", - autoDefineCustomElements: true + customElementsExportBehavior: 'auto-define-custom-elements' }, ], testing: { From 3c798df4e577500fd1493a17ebb7a3c7e4755712 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Tue, 22 Aug 2023 11:53:36 -0600 Subject: [PATCH 146/406] update shell position --- src/components/crowdsource-manager/crowdsource-manager.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/crowdsource-manager/crowdsource-manager.tsx b/src/components/crowdsource-manager/crowdsource-manager.tsx index 6d702a879..9f1923acc 100644 --- a/src/components/crowdsource-manager/crowdsource-manager.tsx +++ b/src/components/crowdsource-manager/crowdsource-manager.tsx @@ -156,7 +156,7 @@ export class CrowdsourceManager { render() { return ( - + Date: Tue, 22 Aug 2023 11:51:36 -0700 Subject: [PATCH 147/406] Fix handling of column names when there's no format --- src/utils/downloadUtils.ts | 62 ++++++++++------- src/utils/test/downloadUtils.spec.tsx | 98 +++++++++++++++------------ 2 files changed, 89 insertions(+), 71 deletions(-) diff --git a/src/utils/downloadUtils.ts b/src/utils/downloadUtils.ts index b232db2d8..8e6fe0306 100644 --- a/src/utils/downloadUtils.ts +++ b/src/utils/downloadUtils.ts @@ -366,7 +366,7 @@ export function _getExpressionsFromLabel( * @param labelFormat Label to examine * @returns Array of field name expressions, e.g., ["{NAME}", "{STREET}", "{CITY}", "{STATE}", "{ZIP}"] */ -export function _getFieldsFromLabel( +export function _getFieldExpressionsFromLabel( labelFormat: string ): string[] { // Get all fields @@ -390,6 +390,20 @@ export function _getFieldsFromLabel( return fieldExpressions.filter(fieldExpression => arcadeExpressions.indexOf(fieldExpression) < 0); } +/** + * Extracts field names from field name expressions. + * + * @param fieldExpressions Array of field name expressions, e.g., ["{NAME}", "{STREET}", "{CITY}", "{STATE}", "{ZIP}"] + * @returns Array of field names, e.g., ["NAME", "STREET", "CITY", "STATE", "ZIP"] + */ +export function _getFieldNamesFromFieldExpressions( + fieldExpressions: string[] +): string[] { + return fieldExpressions.map( + expr => expr.substring(1, expr.length - 1) + ) +} + /** * Prepares an attribute's value by applying domain and type information. * @@ -398,7 +412,7 @@ export function _getFieldsFromLabel( * @param attributeDomain Domain info for attribute, if any * @param attributeFormat Format info for attribute, if any * @param intl esri/intl - * @return Attribute value modified appropriate to domain and type + * @return Attribute value modified appropriate to domain and type and converted to a string */ export function _prepareAttributeValue( attributeValue: any, @@ -406,11 +420,11 @@ export function _prepareAttributeValue( attributeDomain: __esri.CodedValueDomain | __esri.RangeDomain | __esri.InheritedDomain | null, attributeFormat: __esri.FieldInfoFormat, intl: any -): any { +): string { if (attributeDomain && (attributeDomain as __esri.CodedValueDomain).type === "coded-value") { // "coded-value" domain field const value = (attributeDomain as __esri.CodedValueDomain).getName(attributeValue); - return value; + return value.toString(); } else { // Non-domain field or unsupported domain type let value = attributeValue; @@ -418,7 +432,7 @@ export function _prepareAttributeValue( switch (attributeType) { case "date": if (attributeFormat?.dateFormat) { - const dateFormatIntlOptions = intl.convertDateFormatToIntlOptions(attributeFormat.dateFormat); + const dateFormatIntlOptions = intl.convertDateFormatToIntlOptions(attributeFormat.dateFormat as any); value = intl.formatDate(value, dateFormatIntlOptions); } else { value = intl.formatDate(value); @@ -455,7 +469,7 @@ export function _prepareAttributeValue( * @param includeHeaderNames Add the label format at the front of the list of generated labels * @returns Promise resolving when function is done */ -async function _prepareLabels( +export async function _prepareLabels( layer: __esri.FeatureLayer, ids: number[], formatUsingLayerPopup = true, @@ -526,7 +540,8 @@ async function _prepareLabels( if (labelFormat) { // Find the label fields that we need to replace with values const arcadeExpressionMatches = _getExpressionsFromLabel(labelFormat); - const attributeMatches = _getFieldsFromLabel(labelFormat); + const attributeExpressionMatches = _getFieldExpressionsFromLabel(labelFormat); + const attributeNames = _getFieldNamesFromFieldExpressions(attributeExpressionMatches); // Convert feature attributes into an array of labels const relationshipKeys = Object.keys(relationshipQueries); @@ -603,16 +618,14 @@ async function _prepareLabels( ); // Replace non-Arcade fields in this feature - attributeMatches.forEach( - (match: string) => { - const attributeName = match.substring(1, match.length - 1); - + attributeNames.forEach( + (attributeName: string, i: number) => { const value = _prepareAttributeValue(feature.attributes[attributeName], attributeTypes[attributeName], attributeDomains[attributeName], attributeFormats[attributeName], intl); - labelPrep = labelPrep.replace(match, value); + labelPrep = labelPrep.replace(attributeExpressionMatches[i], value); - } + }, ) // Split label into lines @@ -625,37 +638,34 @@ async function _prepareLabels( } )); + // Add header names + if (includeHeaderNames) { + labels.unshift(attributeNames); + } + } else { // Export all attributes labels = featureSet.map( feature => { return Object.keys(feature.attributes).map( (attributeName: string) => { - const value = _prepareAttributeValue(feature.attributes[attributeName], + return _prepareAttributeValue(feature.attributes[attributeName], attributeTypes[attributeName], attributeDomains[attributeName], null, intl); - return `${value}`; } ); } ); - } - // Add header names - if (includeHeaderNames) { - let headerNames = []; - - if (labelFormat) { - headerNames = labelFormat.replace(/\{/g, "").replace(/\}/g, "").split(lineSeparatorChar); - - } else { + // Add header names + if (includeHeaderNames) { + let headerNames = []; const featuresAttrs = featureSet[0].attributes; Object.keys(featuresAttrs).forEach(k => { headerNames.push(k); }); + labels.unshift(headerNames); } - - labels.unshift(headerNames); } return Promise.resolve(labels); diff --git a/src/utils/test/downloadUtils.spec.tsx b/src/utils/test/downloadUtils.spec.tsx index bbc3ceb04..e7d21388a 100644 --- a/src/utils/test/downloadUtils.spec.tsx +++ b/src/utils/test/downloadUtils.spec.tsx @@ -139,288 +139,296 @@ describe("downloadUtils", () => { }); }); - describe("_getFieldsFromLabel", () => { + describe("_getFieldExpressionsFromLabel", () => { it("handles a label with ASCII field names", () => { const labelSpec = "{expression/expr0}\n{OWNERNM1}\n{PSTLADDRESS}\n{PSTLCITY}, {PSTLSTATE} {PSTLZIP5}"; const expectedFields = ["{OWNERNM1}", "{PSTLADDRESS}", "{PSTLCITY}", "{PSTLSTATE}", "{PSTLZIP5}"]; - const fields = downloadUtils._getFieldsFromLabel(labelSpec); + const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec); expect(fields).toEqual(expectedFields); }); it("handles a label with Arabic (ar) field name", () => { const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{بحث}|{time}"; const expectedFields = ["{latitude}", "{longitude}", "{بحث}", "{time}"]; - const fields = downloadUtils._getFieldsFromLabel(labelSpec); + const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec); expect(fields).toEqual(expectedFields); }); it("handles a label with Bosnian (bs) field name", () => { const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{računa}|{time}"; const expectedFields = ["{latitude}", "{longitude}", "{računa}", "{time}"]; - const fields = downloadUtils._getFieldsFromLabel(labelSpec); + const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec); expect(fields).toEqual(expectedFields); }); it("handles a label with Bulgarian (bg) field name", () => { const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Търсене}|{time}"; const expectedFields = ["{latitude}", "{longitude}", "{Търсене}", "{time}"]; - const fields = downloadUtils._getFieldsFromLabel(labelSpec); + const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec); expect(fields).toEqual(expectedFields); }); it("handles a label with Catalan (ca) field name", () => { const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Descripció}|{time}"; const expectedFields = ["{latitude}", "{longitude}", "{Descripció}", "{time}"]; - const fields = downloadUtils._getFieldsFromLabel(labelSpec); + const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec); expect(fields).toEqual(expectedFields); }); it("handles a label with Simplified Chinese (zh-cn) field name", () => { const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{帐户个人资料}|{time}"; const expectedFields = ["{latitude}", "{longitude}", "{帐户个人资料}", "{time}"]; - const fields = downloadUtils._getFieldsFromLabel(labelSpec); + const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec); expect(fields).toEqual(expectedFields); }); it("handles a label with Traditional Chinese (Hong Kong) (zh-hk) field name", () => { const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{帳號設定檔}|{time}"; const expectedFields = ["{latitude}", "{longitude}", "{帳號設定檔}", "{time}"]; - const fields = downloadUtils._getFieldsFromLabel(labelSpec); + const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec); expect(fields).toEqual(expectedFields); }); it("handles a label with Traditional Chinese (Taiwan) (zh-tw) field name", () => { const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{搜尋}|{time}"; const expectedFields = ["{latitude}", "{longitude}", "{搜尋}", "{time}"]; - const fields = downloadUtils._getFieldsFromLabel(labelSpec); + const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec); expect(fields).toEqual(expectedFields); }); it("handles a label with Croatian (hr) field name", () => { const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Pretraživanje}|{time}"; const expectedFields = ["{latitude}", "{longitude}", "{Pretraživanje}", "{time}"]; - const fields = downloadUtils._getFieldsFromLabel(labelSpec); + const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec); expect(fields).toEqual(expectedFields); }); it("handles a label with Czech (cs) field name", () => { const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Přihlásit}|{time}"; const expectedFields = ["{latitude}", "{longitude}", "{Přihlásit}", "{time}"]; - const fields = downloadUtils._getFieldsFromLabel(labelSpec); + const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec); expect(fields).toEqual(expectedFields); }); it("handles a label with Danish (da) field name", () => { const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Vælg}|{time}"; const expectedFields = ["{latitude}", "{longitude}", "{Vælg}", "{time}"]; - const fields = downloadUtils._getFieldsFromLabel(labelSpec); + const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec); expect(fields).toEqual(expectedFields); }); it("handles a label with Dutch (nl) field name", () => { const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{geïmplementeerd}|{time}"; const expectedFields = ["{latitude}", "{longitude}", "{geïmplementeerd}", "{time}"]; - const fields = downloadUtils._getFieldsFromLabel(labelSpec); + const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec); expect(fields).toEqual(expectedFields); }); it("handles a label with Estonian (et) field name", () => { const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Valdkonnapõhised}|{time}"; const expectedFields = ["{latitude}", "{longitude}", "{Valdkonnapõhised}", "{time}"]; - const fields = downloadUtils._getFieldsFromLabel(labelSpec); + const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec); expect(fields).toEqual(expectedFields); }); it("handles a label with Finnish (fi) field name", () => { const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Näytä}|{time}"; const expectedFields = ["{latitude}", "{longitude}", "{Näytä}", "{time}"]; - const fields = downloadUtils._getFieldsFromLabel(labelSpec); + const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec); expect(fields).toEqual(expectedFields); }); it("handles a label with French (fr) field name", () => { const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{accès}|{time}"; const expectedFields = ["{latitude}", "{longitude}", "{accès}", "{time}"]; - const fields = downloadUtils._getFieldsFromLabel(labelSpec); + const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec); expect(fields).toEqual(expectedFields); }); it("handles a label with German (de) field name", () => { const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Öffentliche}|{time}"; const expectedFields = ["{latitude}", "{longitude}", "{Öffentliche}", "{time}"]; - const fields = downloadUtils._getFieldsFromLabel(labelSpec); + const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec); expect(fields).toEqual(expectedFields); }); it("handles a label with Greek (el) field name", () => { const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Αναζήτηση}|{time}"; const expectedFields = ["{latitude}", "{longitude}", "{Αναζήτηση}", "{time}"]; - const fields = downloadUtils._getFieldsFromLabel(labelSpec); + const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec); expect(fields).toEqual(expectedFields); }); it("handles a label with Hebrew (he) field name", () => { const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{עוֹמֶק}|{time}"; const expectedFields = ["{latitude}", "{longitude}", "{עוֹמֶק}", "{time}"]; - const fields = downloadUtils._getFieldsFromLabel(labelSpec); + const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec); expect(fields).toEqual(expectedFields); }); it("handles a label with Hungarian (hu) field name", () => { const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Nyelvváltás}|{time}"; const expectedFields = ["{latitude}", "{longitude}", "{Nyelvváltás}", "{time}"]; - const fields = downloadUtils._getFieldsFromLabel(labelSpec); + const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec); expect(fields).toEqual(expectedFields); }); it("handles a label with Indonesian (id) field name", () => { const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Bahasa}|{time}"; const expectedFields = ["{latitude}", "{longitude}", "{Bahasa}", "{time}"]; - const fields = downloadUtils._getFieldsFromLabel(labelSpec); + const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec); expect(fields).toEqual(expectedFields); }); it("handles a label with Italian (it) field name", () => { const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Elettricità}|{time}"; const expectedFields = ["{latitude}", "{longitude}", "{Elettricità}", "{time}"]; - const fields = downloadUtils._getFieldsFromLabel(labelSpec); + const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec); expect(fields).toEqual(expectedFields); }); it("handles a label with Japanese (ja) field name", () => { const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{深さ}|{time}"; const expectedFields = ["{latitude}", "{longitude}", "{深さ}", "{time}"]; - const fields = downloadUtils._getFieldsFromLabel(labelSpec); + const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec); expect(fields).toEqual(expectedFields); }); it("handles a label with Korean (ko) field name", () => { const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{계정 프로필}|{time}"; const expectedFields = ["{latitude}", "{longitude}", "{계정 프로필}", "{time}"]; - const fields = downloadUtils._getFieldsFromLabel(labelSpec); + const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec); expect(fields).toEqual(expectedFields); }); it("handles a label with Latvian (lv) field name", () => { const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Meklēt}|{time}"; const expectedFields = ["{latitude}", "{longitude}", "{Meklēt}", "{time}"]; - const fields = downloadUtils._getFieldsFromLabel(labelSpec); + const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec); expect(fields).toEqual(expectedFields); }); it("handles a label with Lithuanian (lt) field name", () => { const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{sričių}|{time}"; const expectedFields = ["{latitude}", "{longitude}", "{sričių}", "{time}"]; - const fields = downloadUtils._getFieldsFromLabel(labelSpec); + const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec); expect(fields).toEqual(expectedFields); }); it("handles a label with Norwegian (nb) field name", () => { const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{språk}|{time}"; const expectedFields = ["{latitude}", "{longitude}", "{språk}", "{time}"]; - const fields = downloadUtils._getFieldsFromLabel(labelSpec); + const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec); expect(fields).toEqual(expectedFields); }); it("handles a label with Polish (pl) field name", () => { const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Przełącz}|{time}"; const expectedFields = ["{latitude}", "{longitude}", "{Przełącz}", "{time}"]; - const fields = downloadUtils._getFieldsFromLabel(labelSpec); + const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec); expect(fields).toEqual(expectedFields); }); it("handles a label with Portuguese (Brazil) (pt-br) field name", () => { const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Configurações}|{time}"; const expectedFields = ["{latitude}", "{longitude}", "{Configurações}", "{time}"]; - const fields = downloadUtils._getFieldsFromLabel(labelSpec); + const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec); expect(fields).toEqual(expectedFields); }); it("handles a label with Portuguese (Portugal) (pt-pt) field name", () => { const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{sessão}|{time}"; const expectedFields = ["{latitude}", "{longitude}", "{sessão}", "{time}"]; - const fields = downloadUtils._getFieldsFromLabel(labelSpec); + const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec); expect(fields).toEqual(expectedFields); }); it("handles a label with Romanian (ro) field name", () => { const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Copiați}|{time}"; const expectedFields = ["{latitude}", "{longitude}", "{Copiați}", "{time}"]; - const fields = downloadUtils._getFieldsFromLabel(labelSpec); + const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec); expect(fields).toEqual(expectedFields); }); it("handles a label with Russian (ru) field name", () => { const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Вход}|{time}"; const expectedFields = ["{latitude}", "{longitude}", "{Вход}", "{time}"]; - const fields = downloadUtils._getFieldsFromLabel(labelSpec); + const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec); expect(fields).toEqual(expectedFields); }); it("handles a label with Serbian (sr) field name", () => { const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{pregledač}|{time}"; const expectedFields = ["{latitude}", "{longitude}", "{pregledač}", "{time}"]; - const fields = downloadUtils._getFieldsFromLabel(labelSpec); + const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec); expect(fields).toEqual(expectedFields); }); it("handles a label with Slovak (sk) field name", () => { const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Prihlásiť}|{time}"; const expectedFields = ["{latitude}", "{longitude}", "{Prihlásiť}", "{time}"]; - const fields = downloadUtils._getFieldsFromLabel(labelSpec); + const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec); expect(fields).toEqual(expectedFields); }); it("handles a label with Slovenian (sl) field name", () => { const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{računa}|{time}"; const expectedFields = ["{latitude}", "{longitude}", "{računa}", "{time}"]; - const fields = downloadUtils._getFieldsFromLabel(labelSpec); + const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec); expect(fields).toEqual(expectedFields); }); it("handles a label with Spanish (es) field name", () => { const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{través}|{time}"; const expectedFields = ["{latitude}", "{longitude}", "{través}", "{time}"]; - const fields = downloadUtils._getFieldsFromLabel(labelSpec); + const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec); expect(fields).toEqual(expectedFields); }); it("handles a label with Swedish (sv) field name", () => { const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{språk}|{time}"; const expectedFields = ["{latitude}", "{longitude}", "{språk}", "{time}"]; - const fields = downloadUtils._getFieldsFromLabel(labelSpec); + const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec); expect(fields).toEqual(expectedFields); }); it("handles a label with Thai (th) field name", () => { const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{โปรไฟล์บัญ}|{time}"; const expectedFields = ["{latitude}", "{longitude}", "{โปรไฟล์บัญ}", "{time}"]; - const fields = downloadUtils._getFieldsFromLabel(labelSpec); + const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec); expect(fields).toEqual(expectedFields); }); it("handles a label with Turkish (tr) field name", () => { const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Değiştir}|{time}"; const expectedFields = ["{latitude}", "{longitude}", "{Değiştir}", "{time}"]; - const fields = downloadUtils._getFieldsFromLabel(labelSpec); + const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec); expect(fields).toEqual(expectedFields); }); it("handles a label with Ukrainian (uk) field name", () => { const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Пошук}|{time}"; const expectedFields = ["{latitude}", "{longitude}", "{Пошук}", "{time}"]; - const fields = downloadUtils._getFieldsFromLabel(labelSpec); + const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec); expect(fields).toEqual(expectedFields); }); it("handles a label with Vietnamese (vi) field name", () => { const labelSpec = "{latitude}|{expression/expr0}\n{longitude}|{Chuyển}|{time}"; const expectedFields = ["{latitude}", "{longitude}", "{Chuyển}", "{time}"]; - const fields = downloadUtils._getFieldsFromLabel(labelSpec); + const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec); expect(fields).toEqual(expectedFields); }); }); + describe('_getFieldNamesFromFieldExpressions', () => { + it("extracts field names from field name expressions", () => { + const expressions = ["{NAME}", "{STREET}", "{CITY}", "{STATE}", "{ZIP}"]; + const names = ["NAME", "STREET", "CITY", "STATE", "ZIP"]; + expect(downloadUtils._getFieldNamesFromFieldExpressions(expressions)).toEqual(names); + }); + }); + describe('_prepareAttributeValue', () => { it('should format date attributes using the specified date format', () => { const attributeValue = new Date('2022-01-01T00:00:00.000Z'); @@ -438,7 +446,7 @@ describe("downloadUtils", () => { expect(intl.formatDate).toHaveBeenCalledWith(attributeValue, {}); expect(intl.convertDateFormatToIntlOptions).toHaveBeenCalledWith('short-date'); }); - + it('should format number attributes using the specified number format', () => { const attributeValue = 1234.5678; const attributeType = 'double'; @@ -456,7 +464,7 @@ describe("downloadUtils", () => { expect(intl.formatNumber).toHaveBeenCalledWith(attributeValue, {}); expect(intl.convertNumberFormatToIntlOptions).toHaveBeenCalledWith(attributeFormat); }); - + it('should return the attribute value if no format is specified', () => { const attributeValue = 'Value'; const attributeType = 'string'; @@ -466,7 +474,7 @@ describe("downloadUtils", () => { const result = downloadUtils._prepareAttributeValue(attributeValue, attributeType, attributeDomain, attributeFormat, intl); expect(result).toEqual('Value'); }); - + it('should return the domain name for coded-value domain fields', () => { const attributeValue = '1'; const attributeType = 'string'; @@ -522,7 +530,7 @@ describe("downloadUtils", () => { const result = downloadUtils._getSelectionSetNames(exportInfos as any, /^layer/); expect(result).toEqual(['Selection Set 1', 'Selection Set 2', 'Selection Set 3']); }); - + it('should return an empty array if no matching IDs are found', () => { const exportInfos = { 'layer1': { From b4c93efaad8c2f7a5cacfbce621ac20cf1753dea Mon Sep 17 00:00:00 2001 From: Mike Tschudi Date: Tue, 22 Aug 2023 13:45:43 -0700 Subject: [PATCH 148/406] Break up functions for testing; arrange alphabetically --- src/utils/downloadUtils.ts | 523 +++++++++++--------------- src/utils/test/downloadUtils.spec.tsx | 86 ++--- 2 files changed, 255 insertions(+), 354 deletions(-) diff --git a/src/utils/downloadUtils.ts b/src/utils/downloadUtils.ts index 8e6fe0306..fc9824f64 100644 --- a/src/utils/downloadUtils.ts +++ b/src/utils/downloadUtils.ts @@ -24,14 +24,6 @@ import { IExportInfo, IExportInfos } from "../utils/interfaces"; export { ILabel } from "./pdfUtils"; -interface IArcadeExecutors { - [expressionName: string]: __esri.ArcadeExecutor; -} - -interface IArcadeExecutorPromises { - [expressionName: string]: Promise<__esri.ArcadeExecutor>; -} - interface IAttributeDomains { [attributeName: string]: __esri.CodedValueDomain | __esri.RangeDomain | __esri.InheritedDomain | null; } @@ -66,8 +58,39 @@ interface IRelatedFeaturesQuery { const lineSeparatorChar = "|"; //#endregion +// ------------------------------------------------------------------------------------------------------------------ // //#region Public functions +/** + * Create and consolidate labels from all layers + * + * @param exportInfos Key details about what to export (ids, layer, and selectionSetNames) + * @param formatUsingLayerPopup When true, the layer's popup is used to choose attributes for each column; when false, + * all attributes are exported + * @param includeHeaderNames Add the label format at the front of the list of generated labels + * @returns selectionSetNames that will be used for export filenames + */ +export async function consolidateLabels( + exportInfos: IExportInfos, + formatUsingLayerPopup = true, + includeHeaderNames = false, + isCSVExport = false +): Promise { + const labelRequests = []; + + Object.keys(exportInfos).forEach(k => { + const labelInfo: IExportInfo = exportInfos[k]; + labelRequests.push(_prepareLabels(labelInfo.layerView?.layer || labelInfo.layer, labelInfo.ids, formatUsingLayerPopup, includeHeaderNames)); + if (isCSVExport) { + // add the layer id as a temp value separator that we can use to split values for CSV export + labelRequests.push(Promise.resolve([[k]])); + } + }); + + const labels = await Promise.all(labelRequests); + return labels.reduce((prev, cur) => prev.concat(cur), []); +} + /** * Downloads csv of mailing labels for the provided list of ids * @@ -140,7 +163,24 @@ export async function downloadPDF( return Promise.resolve(); } +/** + * Remove any duplicate labels + * + * @param labels Labels to evaluate for duplicates + * @returns labels with duplicates removed + */ +export function removeDuplicateLabels( + labels: string[][] +): string[][] { + const labelsAsStrings: string[] = labels.map(label => JSON.stringify(label)); + const uniqueLabels = new Set(labelsAsStrings); + return Array.from(uniqueLabels, + labelString => JSON.parse(labelString) + ); +} + //#endregion +// ------------------------------------------------------------------------------------------------------------------ // //#region Private functions /** @@ -214,86 +254,6 @@ export function _convertPopupTextToLabelSpec( return labelSpec.trim(); }; -/** - * Extracts Arcade expressions from the lines of a label format and creates an Arcade executor for each - * referenced expression name. - * - * @param labelFormat Label to examine - * @param layer Layer from which to fetch features - * @return Promise resolving to a set of executors keyed using the expression name - */ -async function _createArcadeExecutors( - labelFormat: string, - layer: __esri.FeatureLayer -): Promise { - const arcadeExecutors: IArcadeExecutors = {}; - - // Are any Arcade expressions in the layer? - if (!Array.isArray(layer.popupTemplate.expressionInfos) || layer.popupTemplate.expressionInfos.length === 0) { - return Promise.resolve(arcadeExecutors); - } - - // Are there any Arcade expressions in the label format? - const arcadeExpressionRegExp = /\{expression\/\w+\}/g; - const arcadeExpressionsMatches = labelFormat.match(arcadeExpressionRegExp); - if (!arcadeExpressionsMatches) { - return Promise.resolve(arcadeExecutors); - } - - // Generate an Arcade executor for each match - const [arcade] = await loadModules(["esri/arcade"]); - const labelingProfile: __esri.Profile = { - variables: [ - { - name: "$feature", - type: "feature" - }, - { - name: "$layer", - type: "featureSet" - }, - { - name: "$datastore", - type: "featureSetCollection" - }, - { - name: "$map", - type: "featureSetCollection" - } - ] - }; - - const createArcadeExecutorPromises: IArcadeExecutorPromises = {}; - arcadeExpressionsMatches.forEach( - (match: string) => { - const expressionName = match.substring(match.indexOf("/") + 1, match.length - 1); - - (layer.popupTemplate.expressionInfos || []).forEach( - expressionInfo => { - if (expressionInfo.name === expressionName) { - createArcadeExecutorPromises[expressionName] = - arcade.createArcadeExecutor(expressionInfo.expression, labelingProfile); - } - } - ); - } - ); - - const promises = Object.values(createArcadeExecutorPromises); - return Promise.all(promises) - .then( - executors => { - const expressionNames = Object.keys(createArcadeExecutorPromises); - - for (let i = 0; i < expressionNames.length; ++i) { - arcadeExecutors[expressionNames[i]] = executors[i].valueOf() as __esri.ArcadeExecutor; - } - - return arcadeExecutors; - } - ); -} - /** * Creates a title from a list of selection set names. * @@ -404,6 +364,78 @@ export function _getFieldNamesFromFieldExpressions( ) } +/** + * Extracts the label format from the layer. + * + * @param layer Layer with label format + * @param formatUsingLayerPopup When true, the layer's popup is used to choose attributes for each column; when false, + * all attributes are exported + * @param attributeFormats Empty object to hold the formats for each attribute in a feature; the object is filled + * with formats by this function + * @returns + */ +export function _getLabelFormat( + layer: __esri.FeatureLayer, + formatUsingLayerPopup: boolean, + attributeFormats: IAttributeFormats +): string { + let labelFormat: string; + if (layer.popupEnabled) { + layer.popupTemplate.fieldInfos.forEach( + // Extract any format info that we have + fieldInfo => { + if (fieldInfo.format) { + attributeFormats[fieldInfo.fieldName] = fieldInfo.format; + } + } + ); + + // What data fields are used in the labels? + // Example labelFormat: ['{NAME}', '{STREET}', '{CITY}, {STATE} {ZIP}'] + if (formatUsingLayerPopup && layer.popupTemplate?.content[0]?.type === "fields") { + labelFormat = _convertPopupFieldsToLabelSpec(layer.popupTemplate.fieldInfos); + + // If popup is configured with "no attribute information", then no fields will visible + if (labelFormat.length === 0) { + // Can we use the popup title? + // eslint-disable-next-line unicorn/prefer-ternary + if (typeof layer.popupTemplate.title === "string") { + labelFormat = layer.popupTemplate.title; + + // Otherwise revert to using attributes + } else { + labelFormat = _convertPopupFieldsToLabelSpec(layer.popupTemplate.fieldInfos, true); + } + } + + } else if (formatUsingLayerPopup && layer.popupTemplate?.content[0]?.type === "text") { + labelFormat = _convertPopupTextToLabelSpec(layer.popupTemplate.content[0].text); + } + } + + return labelFormat; +} + +/** + * Extract selectionSetNames from the provided exportInfos + * + * @param exportInfos Key details about what to export (ids, layer, and selectionSetNames) + * @returns selectionSetNames that will be used for export filenames + */ +export function _getSelectionSetNames( + exportInfos: IExportInfos, + id = /.+/ +): string[] { + let selectionSetNames: string[] = []; + Object.keys(exportInfos).forEach(k => { + const exportInfo: IExportInfo = exportInfos[k]; + if (id.test(k)) { + selectionSetNames = selectionSetNames.concat(exportInfo.selectionSetNames); + } + }); + return selectionSetNames; +} + /** * Prepares an attribute's value by applying domain and type information. * @@ -475,8 +507,6 @@ export async function _prepareLabels( formatUsingLayerPopup = true, includeHeaderNames = false ): Promise { - const [intl] = await loadModules(["esri/intl"]); - // Get the features to export const featureSet = await queryFeaturesByID(ids, layer, [], false); @@ -492,249 +522,120 @@ export async function _prepareLabels( const attributeFormats: IAttributeFormats = {}; // Get the label formatting, if any - let labelFormat: string; - let relationshipQueries: ILayerRelationshipQueryHash = {}; - let arcadeExecutors: IArcadeExecutors = {}; - if (layer.popupEnabled) { - layer.popupTemplate.fieldInfos.forEach( - // Extract any format info that we have - fieldInfo => { - if (fieldInfo.format) { - attributeFormats[fieldInfo.fieldName] = fieldInfo.format; - } - } - ); - - // What data fields are used in the labels? - // Example labelFormat: ['{NAME}', '{STREET}', '{CITY}, {STATE} {ZIP}'] - if (formatUsingLayerPopup && layer.popupTemplate?.content[0]?.type === "fields") { - labelFormat = _convertPopupFieldsToLabelSpec(layer.popupTemplate.fieldInfos); - - // If popup is configured with "no attribute information", then no fields will visible - if (labelFormat.length === 0) { - // Can we use the popup title? - // eslint-disable-next-line unicorn/prefer-ternary - if (typeof layer.popupTemplate.title === "string") { - labelFormat = layer.popupTemplate.title; - - // Otherwise revert to using attributes - } else { - labelFormat = _convertPopupFieldsToLabelSpec(layer.popupTemplate.fieldInfos, true); - } - } - - } else if (formatUsingLayerPopup && layer.popupTemplate?.content[0]?.type === "text") { - labelFormat = _convertPopupTextToLabelSpec(layer.popupTemplate.content[0].text); - - // Do we need any relationship queries? - relationshipQueries = _createRelationshipQueries(layer); - - // Do we need any Arcade executors? - arcadeExecutors = await _createArcadeExecutors(labelFormat, layer); - } - } + const labelFormat = _getLabelFormat(layer, formatUsingLayerPopup, attributeFormats); // Apply the label format - let labels: string[][]; - // eslint-disable-next-line unicorn/prefer-ternary - if (labelFormat) { - // Find the label fields that we need to replace with values - const arcadeExpressionMatches = _getExpressionsFromLabel(labelFormat); - const attributeExpressionMatches = _getFieldExpressionsFromLabel(labelFormat); - const attributeNames = _getFieldNamesFromFieldExpressions(attributeExpressionMatches); - - // Convert feature attributes into an array of labels - const relationshipKeys = Object.keys(relationshipQueries); - labels = await Promise.all(featureSet.map( - async feature => { - let labelPrep = labelFormat; - - // Replace Arcade expressions in this feature - const executions: Promise[] = []; - arcadeExpressionMatches.forEach( - (match: string) => { - const expressionName = match.substring(match.indexOf("/") + 1, match.length - 1); - executions.push(arcadeExecutors[expressionName].executeAsync({"$feature": feature})); - } - ) - - const values = await Promise.all(executions); - values.forEach( - (value: string, i: number) => { - labelPrep = labelPrep.replace(arcadeExpressionMatches[i], value); - } - ) - - // Replace relationship expressions in this feature - const relatedFeatureQueries = [] as Promise<__esri.FeatureSet>[]; - const relationshipIds = [] as string[]; - relationshipKeys.forEach( - (relationshipId) => { - const relationship = relationshipQueries[relationshipId]; - const objectId = feature.attributes[relationship.layer.objectIdField]; - const relatedQuery = { - ...relationship.relatedQuery, - objectIds: [objectId] - }; - relatedFeatureQueries.push(relationship.layer.queryRelatedFeatures(relatedQuery as any)); - relationshipIds.push(relationshipId); - } - ); - - // Wait for all of the queries for related records for this label - const relatedFeatureQueryResults = await Promise.all(relatedFeatureQueries); - relatedFeatureQueryResults.forEach( - (relatedFeatureQueryResult, i) => { - // We have an object with FeatureSets grouped by source layer or table objectIds - const relationshipId = relationshipIds[i]; - - // Run through the source layer or table objectIds - Object.keys(relatedFeatureQueryResult).forEach( - relatedFeatureSetId => { - // We have a feature set - const relatedFeatures = relatedFeatureQueryResult[relatedFeatureSetId].features; - - // Get the values from each feature and replace them in the label - relatedFeatures.forEach( - feature => { - // Merge the base and related feature attributes and create the label - // Prefix related feature's attributes with "relationships//" to match popup - const rePrefix = "\{relationships/" + relationshipId + "/"; - const reSuffix = "\}"; - - const attributes = feature.attributes; - Object.keys(attributes).forEach( - attributeName => { - // Replace the value using the attribute name as a relationship - const attributeRelationshipRegExp = new RegExp(rePrefix + attributeName + reSuffix, "g"); - labelPrep = labelPrep.replaceAll(attributeRelationshipRegExp, attributes[attributeName]); - } - ); - } - ); - } - ); - } - ); - - // Replace non-Arcade fields in this feature - attributeNames.forEach( - (attributeName: string, i: number) => { - const value = _prepareAttributeValue(feature.attributes[attributeName], - attributeTypes[attributeName], attributeDomains[attributeName], - attributeFormats[attributeName], intl); - labelPrep = labelPrep.replace(attributeExpressionMatches[i], value); - - }, - ) - - // Split label into lines - let label = labelPrep.split(lineSeparatorChar); - - // Trim lines - label = label.map(line => line.trim()); - - return label; - } - )); - - // Add header names - if (includeHeaderNames) { - labels.unshift(attributeNames); - } - - } else { + const labels = labelFormat ? + // Export attributes in format + await _prepareLabelsFromSet(featureSet, attributeTypes, attributeDomains, + attributeFormats, labelFormat, includeHeaderNames) + : // Export all attributes - labels = featureSet.map( - feature => { - return Object.keys(feature.attributes).map( - (attributeName: string) => { - return _prepareAttributeValue(feature.attributes[attributeName], - attributeTypes[attributeName], attributeDomains[attributeName], - null, intl); - } - ); - } - ); - - // Add header names - if (includeHeaderNames) { - let headerNames = []; - const featuresAttrs = featureSet[0].attributes; - Object.keys(featuresAttrs).forEach(k => { - headerNames.push(k); - }); - labels.unshift(headerNames); - } - } + await _prepareLabelsFromAll(featureSet, attributeTypes, attributeDomains, includeHeaderNames); return Promise.resolve(labels); } /** - * Remove any duplicate labels + * Creates labels from all attributes in items. * - * @param labels Labels to evaluate for duplicates - * @returns labels with duplicates removed + * @param featureSet Features to convert to labels + * @param attributeTypes Type for each attribute in a feature + * @param attributeDomains Domains for each attribute in a feature + * @param includeHeaderNames Add the label format at the front of the list of generated labels + * @returns Promise resolving with list of labels, each of which is a list of label lines */ -export function removeDuplicateLabels( - labels: string[][] -): string[][] { - const labelsAsStrings: string[] = labels.map(label => JSON.stringify(label)); - const uniqueLabels = new Set(labelsAsStrings); - return Array.from(uniqueLabels, - labelString => JSON.parse(labelString) - ); -} +export async function _prepareLabelsFromAll( + featureSet: __esri.Graphic[], + attributeTypes: IAttributeTypes, + attributeDomains: IAttributeDomains, + includeHeaderNames = false +): Promise { + const [intl] = await loadModules(["esri/intl"]); -/** - * Extract selectionSetNames from the provided exportInfos - * - * @param exportInfos Key details about what to export (ids, layer, and selectionSetNames) - * @returns selectionSetNames that will be used for export filenames - */ -export function _getSelectionSetNames( - exportInfos: IExportInfos, - id = /.+/ -): string[] { - let selectionSetNames: string[] = []; - Object.keys(exportInfos).forEach(k => { - const exportInfo: IExportInfo = exportInfos[k]; - if (id.test(k)) { - selectionSetNames = selectionSetNames.concat(exportInfo.selectionSetNames); + // Export all attributes + const labels = featureSet.map( + feature => { + return Object.keys(feature.attributes).map( + (attributeName: string) => { + return _prepareAttributeValue(feature.attributes[attributeName], + attributeTypes[attributeName], attributeDomains[attributeName], + null, intl); + } + ); } - }); - return selectionSetNames; + ); + + // Add header names + if (includeHeaderNames) { + const headerNames = []; + const featuresAttrs = featureSet[0].attributes; + Object.keys(featuresAttrs).forEach(k => { + headerNames.push(k); + }); + labels.unshift(headerNames); + } + + return Promise.resolve(labels); } /** - * Create and consolidate labels from all layers + * Creates labels from all attributes in items. * - * @param exportInfos Key details about what to export (ids, layer, and selectionSetNames) - * @param formatUsingLayerPopup When true, the layer's popup is used to choose attributes for each column; when false, - * all attributes are exported + * @param featureSet Features to convert to labels + * @param attributeTypes Type for each attribute in a feature + * @param attributeDomains Domains for each attribute in a feature + * @param attributeFormats Formats for each attribute in a feature + * @param labelFormat Format for label * @param includeHeaderNames Add the label format at the front of the list of generated labels - * @returns selectionSetNames that will be used for export filenames + * @returns Promise resolving with list of labels, each of which is a list of label lines */ -export async function consolidateLabels( - exportInfos: IExportInfos, - formatUsingLayerPopup = true, - includeHeaderNames = false, - isCSVExport = false +export async function _prepareLabelsFromSet( + featureSet: __esri.Graphic[], + attributeTypes: IAttributeTypes, + attributeDomains: IAttributeDomains, + attributeFormats: IAttributeFormats, + labelFormat: string, + includeHeaderNames = false ): Promise { - const labelRequests = []; + const [intl] = await loadModules(["esri/intl"]); - Object.keys(exportInfos).forEach(k => { - const labelInfo: IExportInfo = exportInfos[k]; - labelRequests.push(_prepareLabels(labelInfo.layerView?.layer || labelInfo.layer, labelInfo.ids, formatUsingLayerPopup, includeHeaderNames)); - if (isCSVExport) { - // add the layer id as a temp value separator that we can use to split values for CSV export - labelRequests.push(Promise.resolve([[k]])); + // Find the label fields that we need to replace with values + const attributeExpressionMatches = _getFieldExpressionsFromLabel(labelFormat); + const attributeNames = _getFieldNamesFromFieldExpressions(attributeExpressionMatches); + + // Convert feature attributes into an array of labels + const labels = await Promise.all(featureSet.map( + async feature => { + let labelPrep = labelFormat; + + // Replace non-Arcade fields in this feature + attributeNames.forEach( + (attributeName: string, i: number) => { + const value = _prepareAttributeValue(feature.attributes[attributeName], + attributeTypes[attributeName], attributeDomains[attributeName], + attributeFormats[attributeName], intl); + labelPrep = labelPrep.replace(attributeExpressionMatches[i], value); + + }, + ) + + // Split label into lines + let label = labelPrep.split(lineSeparatorChar); + + // Trim lines + label = label.map(line => line.trim()); + + return label; } - }); + )); - const labels = await Promise.all(labelRequests); - return labels.reduce((prev, cur) => prev.concat(cur), []); + // Add header names + if (includeHeaderNames) { + labels.unshift(attributeNames); + } + + return Promise.resolve(labels); } //#endregion diff --git a/src/utils/test/downloadUtils.spec.tsx b/src/utils/test/downloadUtils.spec.tsx index e7d21388a..4c9935307 100644 --- a/src/utils/test/downloadUtils.spec.tsx +++ b/src/utils/test/downloadUtils.spec.tsx @@ -18,6 +18,21 @@ import * as downloadUtils from "../downloadUtils"; describe("downloadUtils", () => { + describe('removeDuplicateLabels', () => { + it('should remove duplicate labels', () => { + const labels = [ + ['Label 1', 'Value 1'], + ['Label 2', 'Value 2'], + ['Label 1', 'Value 1'] + ]; + const result = downloadUtils.removeDuplicateLabels(labels); + expect(result).toEqual([ + ['Label 1', 'Value 1'], + ['Label 2', 'Value 2'] + ]); + }); + }); + describe("_convertPopupFieldsToLabelSpec", () => { it("handles fieldname visibility", () => { @@ -429,6 +444,34 @@ describe("downloadUtils", () => { }); }); + describe('_getSelectionSetNames', () => { + it('should return selection set names for matching IDs', () => { + const exportInfos = { + 'layer1': { + selectionSetNames: ['Selection Set 1', 'Selection Set 2'] + }, + 'layer2': { + selectionSetNames: ['Selection Set 3'] + } + }; + const result = downloadUtils._getSelectionSetNames(exportInfos as any, /^layer/); + expect(result).toEqual(['Selection Set 1', 'Selection Set 2', 'Selection Set 3']); + }); + + it('should return an empty array if no matching IDs are found', () => { + const exportInfos = { + 'layer1': { + selectionSetNames: ['Selection Set 1', 'Selection Set 2'] + }, + 'layer2': { + selectionSetNames: ['Selection Set 3'] + } + }; + const result = downloadUtils._getSelectionSetNames(exportInfos as any, /^foo/); + expect(result).toEqual([]); + }); + }); + describe('_prepareAttributeValue', () => { it('should format date attributes using the specified date format', () => { const attributeValue = new Date('2022-01-01T00:00:00.000Z'); @@ -502,47 +545,4 @@ describe("downloadUtils", () => { }); }); - describe('removeDuplicateLabels', () => { - it('should remove duplicate labels', () => { - const labels = [ - ['Label 1', 'Value 1'], - ['Label 2', 'Value 2'], - ['Label 1', 'Value 1'] - ]; - const result = downloadUtils.removeDuplicateLabels(labels); - expect(result).toEqual([ - ['Label 1', 'Value 1'], - ['Label 2', 'Value 2'] - ]); - }); - }); - - describe('_getSelectionSetNames', () => { - it('should return selection set names for matching IDs', () => { - const exportInfos = { - 'layer1': { - selectionSetNames: ['Selection Set 1', 'Selection Set 2'] - }, - 'layer2': { - selectionSetNames: ['Selection Set 3'] - } - }; - const result = downloadUtils._getSelectionSetNames(exportInfos as any, /^layer/); - expect(result).toEqual(['Selection Set 1', 'Selection Set 2', 'Selection Set 3']); - }); - - it('should return an empty array if no matching IDs are found', () => { - const exportInfos = { - 'layer1': { - selectionSetNames: ['Selection Set 1', 'Selection Set 2'] - }, - 'layer2': { - selectionSetNames: ['Selection Set 3'] - } - }; - const result = downloadUtils._getSelectionSetNames(exportInfos as any, /^foo/); - expect(result).toEqual([]); - }); - }); - }); From 203bc62f625863a1dd1e67700aaf63c5cb5af3af Mon Sep 17 00:00:00 2001 From: Mike Tschudi Date: Tue, 22 Aug 2023 15:34:20 -0700 Subject: [PATCH 149/406] Added tests for _getLabelFormat; some refactoring --- src/utils/downloadUtils.ts | 25 ++- src/utils/test/downloadUtils.spec.tsx | 220 ++++++++++++++++++++++++++ 2 files changed, 231 insertions(+), 14 deletions(-) diff --git a/src/utils/downloadUtils.ts b/src/utils/downloadUtils.ts index fc9824f64..e203e7bae 100644 --- a/src/utils/downloadUtils.ts +++ b/src/utils/downloadUtils.ts @@ -24,24 +24,24 @@ import { IExportInfo, IExportInfos } from "../utils/interfaces"; export { ILabel } from "./pdfUtils"; -interface IAttributeDomains { +export interface IAttributeDomains { [attributeName: string]: __esri.CodedValueDomain | __esri.RangeDomain | __esri.InheritedDomain | null; } -interface IAttributeFormats { +export interface IAttributeFormats { [attributeName: string]: __esri.FieldInfoFormat; } -interface IAttributeTypes { +export interface IAttributeTypes { [attributeName: string]: string; } -interface ILayerRelationshipQuery { +export interface ILayerRelationshipQuery { layer: __esri.FeatureLayer; relatedQuery: IRelatedFeaturesQuery; } -interface ILayerRelationshipQueryHash { +export interface ILayerRelationshipQueryHash { [relationshipId: string]: ILayerRelationshipQuery; } @@ -372,7 +372,7 @@ export function _getFieldNamesFromFieldExpressions( * all attributes are exported * @param attributeFormats Empty object to hold the formats for each attribute in a feature; the object is filled * with formats by this function - * @returns + * @returns The format of a single label, e.g., "{NAME}|{STREET}|{CITY}, {STATE} {ZIP}" */ export function _getLabelFormat( layer: __esri.FeatureLayer, @@ -398,14 +398,11 @@ export function _getLabelFormat( // If popup is configured with "no attribute information", then no fields will visible if (labelFormat.length === 0) { // Can we use the popup title? - // eslint-disable-next-line unicorn/prefer-ternary - if (typeof layer.popupTemplate.title === "string") { - labelFormat = layer.popupTemplate.title; - - // Otherwise revert to using attributes - } else { - labelFormat = _convertPopupFieldsToLabelSpec(layer.popupTemplate.fieldInfos, true); - } + labelFormat = layer.popupTemplate.title && typeof layer.popupTemplate.title === "string" ? + layer.popupTemplate.title + : + // Otherwise revert to using attributes + _convertPopupFieldsToLabelSpec(layer.popupTemplate.fieldInfos, true); } } else if (formatUsingLayerPopup && layer.popupTemplate?.content[0]?.type === "text") { diff --git a/src/utils/test/downloadUtils.spec.tsx b/src/utils/test/downloadUtils.spec.tsx index 4c9935307..ad754c397 100644 --- a/src/utils/test/downloadUtils.spec.tsx +++ b/src/utils/test/downloadUtils.spec.tsx @@ -444,6 +444,226 @@ describe("downloadUtils", () => { }); }); + describe('_getLabelFormat', () => { + it('should prepare labels from visible popup fields', async () => { + const popupTemplate = { + title: '{name}', + content: [{ + type: 'fields' + }], + fieldInfos: [{ + fieldName: 'name', + visible: true + }, { + fieldName: 'age', + format: { + places: 0, + digitSeparator: true + }, + visible: true + }, { + fieldName: 'start', + format: { + dateFormat: 'short-date' + }, + visible: true + }] + }; + const layer = { + popupEnabled: true, + popupTemplate + }; + const formatUsingLayerPopup = true; + + const attributeFormats: downloadUtils.IAttributeFormats = {}; + const result = await downloadUtils._getLabelFormat(layer as any, formatUsingLayerPopup, attributeFormats); + expect(result).toEqual('{name}|{age}|{start}'); + }); + + it('should prepare labels from a partial set of visible popup fields', async () => { + const popupTemplate = { + title: '{name}', + content: [{ + type: 'fields' + }], + fieldInfos: [{ + fieldName: 'name', + visible: false + }, { + fieldName: 'age', + format: { + places: 0, + digitSeparator: true + }, + visible: false + }, { + fieldName: 'start', + format: { + dateFormat: 'short-date' + }, + visible: true + }] + }; + const layer = { + popupEnabled: true, + popupTemplate + }; + const formatUsingLayerPopup = true; + + const attributeFormats: downloadUtils.IAttributeFormats = {}; + const result = await downloadUtils._getLabelFormat(layer as any, formatUsingLayerPopup, attributeFormats); + expect(result).toEqual('{start}'); + }); + + it('should prepare labels from invisible popup fields, but title is present', async () => { + const popupTemplate = { + title: '{name}', + content: [{ + type: 'fields' + }], + fieldInfos: [{ + fieldName: 'name', + visible: false + }, { + fieldName: 'age', + format: { + places: 0, + digitSeparator: true + }, + visible: false + }, { + fieldName: 'start', + format: { + dateFormat: 'short-date' + }, + visible: false + }] + }; + const layer = { + popupEnabled: true, + popupTemplate + }; + const formatUsingLayerPopup = true; + + const attributeFormats: downloadUtils.IAttributeFormats = {}; + const result = await downloadUtils._getLabelFormat(layer as any, formatUsingLayerPopup, attributeFormats); + expect(result).toEqual('{name}'); + }); + + it('should prepare labels from invisible popup fields with no title present', async () => { + const popupTemplate = { + title: '', + content: [{ + type: 'fields' + }], + fieldInfos: [{ + fieldName: 'name', + visible: false + }, { + fieldName: 'age', + format: { + places: 0, + digitSeparator: true + }, + visible: false + }, { + fieldName: 'start', + format: { + dateFormat: 'short-date' + }, + visible: false + }] + }; + const layer = { + popupEnabled: true, + popupTemplate + }; + const formatUsingLayerPopup = true; + + const attributeFormats: downloadUtils.IAttributeFormats = {}; + const result = await downloadUtils._getLabelFormat(layer as any, formatUsingLayerPopup, attributeFormats); + expect(result).toEqual('{name}|{age}|{start}'); + }); + + it('should prepare labels from popup text', async () => { + const popupTemplate = { + title: '{name}', + content: [{ + type: 'text', + text: '

{name} {age} years  

started: {start}

' + }], + fieldInfos: [{ + fieldName: 'name', + visible: true + }, { + fieldName: 'age', + format: { + places: 0, + digitSeparator: true + }, + visible: true + }, { + fieldName: 'start', + format: { + dateFormat: 'short-date' + }, + visible: true + }] + }; + const layer = { + popupEnabled: true, + popupTemplate + }; + const formatUsingLayerPopup = true; + + const attributeFormats: downloadUtils.IAttributeFormats = {}; + const result = await downloadUtils._getLabelFormat(layer as any, formatUsingLayerPopup, attributeFormats); + expect(result).toEqual('{name} {age} years|started: {start}'); + }); + + it('should prepare labels without popup; formatUsingLayerPopup is true', async () => { + const layer = { + popupEnabled: false, + fields: [ + { + name: 'name', + type: 'string' + }, + { + name: 'age', + type: 'integer' + } + ] + } as __esri.FeatureLayer; + const formatUsingLayerPopup = true; + + const attributeFormats: downloadUtils.IAttributeFormats = {}; + const result = await downloadUtils._getLabelFormat(layer, formatUsingLayerPopup, attributeFormats); + expect(result).toBeUndefined(); + }); + + it('should prepare labels without popup; formatUsingLayerPopup is false', async () => { + const layer = { + popupEnabled: false, + fields: [ + { + name: 'name', + type: 'string' + }, + { + name: 'age', + type: 'integer' + } + ] + } as __esri.FeatureLayer; + const formatUsingLayerPopup = false; + + const attributeFormats: downloadUtils.IAttributeFormats = {}; + const result = await downloadUtils._getLabelFormat(layer, formatUsingLayerPopup, attributeFormats); + expect(result).toBeUndefined(); + }); + }); + describe('_getSelectionSetNames', () => { it('should return selection set names for matching IDs', () => { const exportInfos = { From fbce8ffebdc973f23e00846f5396eefec1049cb4 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Wed, 23 Aug 2023 15:05:26 -0600 Subject: [PATCH 150/406] add basemap picker --- src/components/map-card/map-card.css | 7 --- src/components/map-card/map-card.tsx | 8 ++- src/components/map-tools/map-tools.tsx | 87 +++++++++++++++++++++++++- 3 files changed, 92 insertions(+), 10 deletions(-) diff --git a/src/components/map-card/map-card.css b/src/components/map-card/map-card.css index 03df0acf7..deb21a22f 100644 --- a/src/components/map-card/map-card.css +++ b/src/components/map-card/map-card.css @@ -30,10 +30,3 @@ .esri-zoom { display: none !important; } - -.map-tools { - position: absolute; - top: 40px; - right: 0px; - padding: 1rem; -} diff --git a/src/components/map-card/map-card.tsx b/src/components/map-card/map-card.tsx index 362750177..432ceca61 100644 --- a/src/components/map-card/map-card.tsx +++ b/src/components/map-card/map-card.tsx @@ -93,6 +93,11 @@ export class MapCard { */ protected _mapDiv: HTMLDivElement; + /** + * HTMLMapToolsElement: the container div for the map tools + */ + protected _mapTools: HTMLMapToolsElement; + //-------------------------------------------------------------------------- // // Watch handlers @@ -147,7 +152,7 @@ export class MapCard {
(this._mapDiv = el)}/> - + this._mapTools = el}/> ); } @@ -206,6 +211,7 @@ export class MapCard { this._loadedId = id; this.mapChanged.emit(this.mapView); + this.mapView.ui.add(this._mapTools, { position: "top-right", index: 0}); } } diff --git a/src/components/map-tools/map-tools.tsx b/src/components/map-tools/map-tools.tsx index 4bd5d18f0..8d6c22b87 100644 --- a/src/components/map-tools/map-tools.tsx +++ b/src/components/map-tools/map-tools.tsx @@ -14,10 +14,11 @@ * limitations under the License. */ -import { Component, Element, Event, EventEmitter, Host, h, Prop, State, VNode } from '@stencil/core'; +import { Component, Element, Event, EventEmitter, Host, h, Listen, Prop, State, VNode, Watch } from '@stencil/core'; import MapTools_T9n from "../../assets/t9n/map-tools/resources.json"; import { getLocaleComponentStrings } from "../../utils/locale"; import { EExpandType } from "../../utils/interfaces"; +import { loadModules } from "../../utils/loadModules" @Component({ tag: 'map-tools', @@ -77,12 +78,43 @@ export class MapTools { // //-------------------------------------------------------------------------- + /** + * esri/widgets/BasemapGallery: https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-BasemapGallery.html + * + * BasemapGallery constructor + */ + protected BasemapGallery: typeof import("esri/widgets/BasemapGallery"); + + /** + * esri/widgets/BasemapGallery: https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-BasemapGallery.html + * + * BasemapGallery instance + */ + protected _baseMapGallery: __esri.BasemapGallery; + //-------------------------------------------------------------------------- // // Watch handlers // //-------------------------------------------------------------------------- + @Watch("_showBasemapPicker") + async _showBasemapPickerWatchHandler( + v: boolean + ): Promise { + if (v) { + if (!this._baseMapGallery) { + this._initBaseMapGallery(this.mapView); + } + this.mapView.ui.add(this._baseMapGallery, { + position: "top-right", + index: 1 + }); + } else { + this.mapView.ui.remove(this._baseMapGallery); + } + } + //-------------------------------------------------------------------------- // // Methods (public) @@ -100,6 +132,16 @@ export class MapTools { */ @Event() expandMap: EventEmitter; + /** + * Listen for changes to map info and load the appropriate map + */ + @Listen("mapChanged", { target: "window" }) + async mapChanged( + evt: CustomEvent + ): Promise { + this._initBaseMapGallery(evt?.detail); + } + //-------------------------------------------------------------------------- // // Functions (lifecycle) @@ -111,6 +153,7 @@ export class MapTools { */ async componentWillLoad(): Promise { await this._getTranslations(); + return this._initModules(); } /** @@ -121,7 +164,7 @@ export class MapTools { const toolsClass = this._showTools ? "" : "display-none"; return ( -
+
this._toggleBasemapPicker())}
+
); } + //-------------------------------------------------------------------------- + // + // Functions (protected) + // + //-------------------------------------------------------------------------- + + /** + * Load esri javascript api modules + * + * @returns Promise resolving when function is done + * + * @protected + */ + protected async _initModules(): Promise { + const [BasemapGallery] = await loadModules([ + "esri/widgets/BasemapGallery" + ]); + this.BasemapGallery = BasemapGallery; + } + + protected _initBaseMapGallery( + view: __esri.MapView + ): void { + if (view && this.BasemapGallery) { + if (!this._baseMapGallery) { + this._baseMapGallery = new this.BasemapGallery({ + container: "basemap-container", + view + }); + } else { + this._baseMapGallery.view = view; + } + } + } + /** * Get a calcite action group for the current action * @@ -216,6 +295,7 @@ export class MapTools { */ protected _toggleBasemapPicker(): void { this._showBasemapPicker = !this._showBasemapPicker; + this._showTools = false; } /** @@ -237,6 +317,9 @@ export class MapTools { * @protected */ protected _toggleTools(): void { + if (!this._showTools) { + this._showBasemapPicker = false; + } this._showTools = !this._showTools; } From e0f66b717b103f01a7762a772020079b97c6d69b Mon Sep 17 00:00:00 2001 From: John Hauck Date: Wed, 23 Aug 2023 15:14:24 -0600 Subject: [PATCH 151/406] add doc --- src/components/map-tools/map-tools.tsx | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/components/map-tools/map-tools.tsx b/src/components/map-tools/map-tools.tsx index 8d6c22b87..b6565f775 100644 --- a/src/components/map-tools/map-tools.tsx +++ b/src/components/map-tools/map-tools.tsx @@ -98,6 +98,9 @@ export class MapTools { // //-------------------------------------------------------------------------- + /** + * When the _showBasemapPicker property is true display the basemap gallery + */ @Watch("_showBasemapPicker") async _showBasemapPickerWatchHandler( v: boolean @@ -208,6 +211,13 @@ export class MapTools { this.BasemapGallery = BasemapGallery; } + /** + * Initialize the basemap gallery or reset the current view if it already exists + * + * @returns void + * + * @protected + */ protected _initBaseMapGallery( view: __esri.MapView ): void { From 3b4a3a8f6ee39f8398eaaf4665d06dc41923ab14 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Thu, 24 Aug 2023 10:41:45 -0600 Subject: [PATCH 152/406] add fixed zoom in/out --- src/components/map-tools/map-tools.tsx | 46 +++++++++++++++++++++----- 1 file changed, 38 insertions(+), 8 deletions(-) diff --git a/src/components/map-tools/map-tools.tsx b/src/components/map-tools/map-tools.tsx index b6565f775..7d364c864 100644 --- a/src/components/map-tools/map-tools.tsx +++ b/src/components/map-tools/map-tools.tsx @@ -178,8 +178,8 @@ export class MapTools { /> {this._getActionGroup("home", false, this._translations.home, () => this._goHome())} - {this._getActionGroup("plus", false, this._translations.zoomIn, () => this._zoomIn())} - {this._getActionGroup("minus", false, this._translations.zoomOut, () => this._zoomOut())} + {this._getActionGroup("plus", false, this._translations.zoomIn, () => void this._zoomIn())} + {this._getActionGroup("minus", false, this._translations.zoomOut, () => void this._zoomOut())} {this._getActionGroup("list", false, this._translations.list, () => this._showList())} {this._getActionGroup("magnifying-glass", false, this._translations.search, () => this._search())} {this._getActionGroup("expand", false, this._translations.expand, () => this._expand())} @@ -286,14 +286,44 @@ export class MapTools { alert("search") } - // Need to explore map fixed zoom in considerations - protected _zoomIn(): void { - alert("zoom in") + /** + * Fixed zoom in + * + * @returns void + * + * @protected + */ + protected async _zoomIn(): Promise { + await this._zoom(this.mapView.zoom + 1); + } + + /** + * Fixed zoom out + * + * @returns void + * + * @protected + */ + protected async _zoomOut(): Promise { + await this._zoom(this.mapView.zoom - 1); } - // Need to explore map fixed zoom out considerations - protected _zoomOut(): void { - alert("zoom out") + /** + * Zoom in/out at the maps current center point + * + * @param zoom Number to zoom level to go to + * + * @returns void + * + * @protected + */ + protected async _zoom( + zoom: number + ): Promise { + await this.mapView?.goTo({ + target: this.mapView.center, + zoom + }); } /** From c3ab905c3b3981948e1d135475f75809f54442e0 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Thu, 24 Aug 2023 11:37:56 -0600 Subject: [PATCH 153/406] implement home button --- src/components/map-card/map-card.tsx | 15 ++++----- src/components/map-tools/map-tools.tsx | 42 +++++++++++++++++--------- 2 files changed, 35 insertions(+), 22 deletions(-) diff --git a/src/components/map-card/map-card.tsx b/src/components/map-card/map-card.tsx index 432ceca61..64c5b5789 100644 --- a/src/components/map-card/map-card.tsx +++ b/src/components/map-card/map-card.tsx @@ -128,7 +128,7 @@ export class MapCard { async mapInfoChange( evt: CustomEvent ): Promise { - this._loadMap(evt.detail); + await this._loadMap(evt.detail); } //-------------------------------------------------------------------------- @@ -188,9 +188,9 @@ export class MapCard { * * @protected */ - protected _loadMap( + protected async _loadMap( webMapInfo: IMapInfo - ): void { + ): Promise { let id = webMapInfo?.id; // on the first render use the first child of the provided mapInfos this._webMapInfo = (id === "" || !id) && this.mapInfos.length > 0 ? @@ -208,10 +208,11 @@ export class MapCard { map: webMap, resizeAlign: "top-left" }); - - this._loadedId = id; - this.mapChanged.emit(this.mapView); - this.mapView.ui.add(this._mapTools, { position: "top-right", index: 0}); + await this.mapView.when(() => { + this._loadedId = id; + this.mapChanged.emit(this.mapView); + this.mapView.ui.add(this._mapTools, { position: "top-right", index: 0}); + }); } } diff --git a/src/components/map-tools/map-tools.tsx b/src/components/map-tools/map-tools.tsx index 7d364c864..ec52fa140 100644 --- a/src/components/map-tools/map-tools.tsx +++ b/src/components/map-tools/map-tools.tsx @@ -14,7 +14,7 @@ * limitations under the License. */ -import { Component, Element, Event, EventEmitter, Host, h, Listen, Prop, State, VNode, Watch } from '@stencil/core'; +import { Component, Element, Event, EventEmitter, Host, h, Prop, State, VNode, Watch } from '@stencil/core'; import MapTools_T9n from "../../assets/t9n/map-tools/resources.json"; import { getLocaleComponentStrings } from "../../utils/locale"; import { EExpandType } from "../../utils/interfaces"; @@ -92,12 +92,28 @@ export class MapTools { */ protected _baseMapGallery: __esri.BasemapGallery; + /** + * esri/geometry/Extent: https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Extent.html + */ + protected _homeExtent: __esri.Extent; + //-------------------------------------------------------------------------- // // Watch handlers // //-------------------------------------------------------------------------- + /** + * Store the home extent and update the basemap gallery when the map view changes + */ + @Watch("mapView") + async mapViewWatchHandler(): Promise { + await this.mapView.when(() => { + this._homeExtent = this.mapView.extent; + this._initBaseMapGallery(this.mapView); + }); + } + /** * When the _showBasemapPicker property is true display the basemap gallery */ @@ -135,16 +151,6 @@ export class MapTools { */ @Event() expandMap: EventEmitter; - /** - * Listen for changes to map info and load the appropriate map - */ - @Listen("mapChanged", { target: "window" }) - async mapChanged( - evt: CustomEvent - ): Promise { - this._initBaseMapGallery(evt?.detail); - } - //-------------------------------------------------------------------------- // // Functions (lifecycle) @@ -177,7 +183,7 @@ export class MapTools { text="" /> - {this._getActionGroup("home", false, this._translations.home, () => this._goHome())} + {this._getActionGroup("home", false, this._translations.home, () => void this._goHome())} {this._getActionGroup("plus", false, this._translations.zoomIn, () => void this._zoomIn())} {this._getActionGroup("minus", false, this._translations.zoomOut, () => void this._zoomOut())} {this._getActionGroup("list", false, this._translations.list, () => this._showList())} @@ -271,9 +277,15 @@ export class MapTools { ); } - // Need to discuss this with the team - protected _goHome(): void { - alert("go home") + /** + * Go to the exent that was first used when loading the map + * + * @returns void + * + * @protected + */ + protected async _goHome(): Promise { + await this.mapView.goTo(this._homeExtent); } // need to discuss this with the team From afee347c3e7b4d7969eb92f5d13a94d2cac115de Mon Sep 17 00:00:00 2001 From: John Hauck Date: Thu, 24 Aug 2023 11:46:06 -0600 Subject: [PATCH 154/406] add map search --- src/components.d.ts | 13 +++ src/components/map-search/map-search.css | 3 + src/components/map-search/map-search.tsx | 88 +++++++++++++++++++ src/components/map-search/readme.md | 10 +++ .../map-search/test/map-search.e2e.ts | 11 +++ .../map-search/test/map-search.spec.tsx | 18 ++++ 6 files changed, 143 insertions(+) create mode 100644 src/components/map-search/map-search.css create mode 100644 src/components/map-search/map-search.tsx create mode 100644 src/components/map-search/readme.md create mode 100644 src/components/map-search/test/map-search.e2e.ts create mode 100644 src/components/map-search/test/map-search.spec.tsx diff --git a/src/components.d.ts b/src/components.d.ts index 55450d3f9..de02a8cf9 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -289,6 +289,8 @@ export namespace Components { */ "mapInfos": IMapInfo[]; } + interface MapSearch { + } interface MapSelectTools { /** * string | number[] | object with r, g, b, a: https://developers.arcgis.com/javascript/latest/api-reference/esri-Color.html @@ -850,6 +852,12 @@ declare global { prototype: HTMLMapPickerElement; new (): HTMLMapPickerElement; }; + interface HTMLMapSearchElement extends Components.MapSearch, HTMLStencilElement { + } + var HTMLMapSearchElement: { + prototype: HTMLMapSearchElement; + new (): HTMLMapSearchElement; + }; interface HTMLMapSelectToolsElement extends Components.MapSelectTools, HTMLStencilElement { } var HTMLMapSelectToolsElement: { @@ -974,6 +982,7 @@ declare global { "map-draw-tools": HTMLMapDrawToolsElement; "map-layer-picker": HTMLMapLayerPickerElement; "map-picker": HTMLMapPickerElement; + "map-search": HTMLMapSearchElement; "map-select-tools": HTMLMapSelectToolsElement; "map-tools": HTMLMapToolsElement; "pci-calculator": HTMLPciCalculatorElement; @@ -1294,6 +1303,8 @@ declare namespace LocalJSX { */ "onMapInfoChange"?: (event: MapPickerCustomEvent) => void; } + interface MapSearch { + } interface MapSelectTools { /** * string | number[] | object with r, g, b, a: https://developers.arcgis.com/javascript/latest/api-reference/esri-Color.html @@ -1681,6 +1692,7 @@ declare namespace LocalJSX { "map-draw-tools": MapDrawTools; "map-layer-picker": MapLayerPicker; "map-picker": MapPicker; + "map-search": MapSearch; "map-select-tools": MapSelectTools; "map-tools": MapTools; "pci-calculator": PciCalculator; @@ -1720,6 +1732,7 @@ declare module "@stencil/core" { "map-draw-tools": LocalJSX.MapDrawTools & JSXBase.HTMLAttributes; "map-layer-picker": LocalJSX.MapLayerPicker & JSXBase.HTMLAttributes; "map-picker": LocalJSX.MapPicker & JSXBase.HTMLAttributes; + "map-search": LocalJSX.MapSearch & JSXBase.HTMLAttributes; "map-select-tools": LocalJSX.MapSelectTools & JSXBase.HTMLAttributes; "map-tools": LocalJSX.MapTools & JSXBase.HTMLAttributes; "pci-calculator": LocalJSX.PciCalculator & JSXBase.HTMLAttributes; diff --git a/src/components/map-search/map-search.css b/src/components/map-search/map-search.css new file mode 100644 index 000000000..5d4e87f30 --- /dev/null +++ b/src/components/map-search/map-search.css @@ -0,0 +1,3 @@ +:host { + display: block; +} diff --git a/src/components/map-search/map-search.tsx b/src/components/map-search/map-search.tsx new file mode 100644 index 000000000..86bcdf771 --- /dev/null +++ b/src/components/map-search/map-search.tsx @@ -0,0 +1,88 @@ +/** @license + * Copyright 2022 Esri + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { Component, Host, h } from '@stencil/core'; + +@Component({ + tag: 'map-search', + styleUrl: 'map-search.css', + shadow: true, +}) +export class MapSearch { + //-------------------------------------------------------------------------- + // + // Host element access + // + //-------------------------------------------------------------------------- + + //-------------------------------------------------------------------------- + // + // Properties (public) + // + //-------------------------------------------------------------------------- + + //-------------------------------------------------------------------------- + // + // State (internal) + // + //-------------------------------------------------------------------------- + + //-------------------------------------------------------------------------- + // + // Properties (protected) + // + //-------------------------------------------------------------------------- + + //-------------------------------------------------------------------------- + // + // Watch handlers + // + //-------------------------------------------------------------------------- + + //-------------------------------------------------------------------------- + // + // Methods (public) + // + //-------------------------------------------------------------------------- + + //-------------------------------------------------------------------------- + // + // Events (public) + // + //-------------------------------------------------------------------------- + + //-------------------------------------------------------------------------- + // + // Functions (lifecycle) + // + //-------------------------------------------------------------------------- + + /** + * Renders the component. + */ + render() { + return ( + + ); + } + + //-------------------------------------------------------------------------- + // + // Functions (protected) + // + //-------------------------------------------------------------------------- + +} diff --git a/src/components/map-search/readme.md b/src/components/map-search/readme.md new file mode 100644 index 000000000..90da0d7ab --- /dev/null +++ b/src/components/map-search/readme.md @@ -0,0 +1,10 @@ +# map-search + + + + + + +---------------------------------------------- + +*Built with [StencilJS](https://stenciljs.com/)* diff --git a/src/components/map-search/test/map-search.e2e.ts b/src/components/map-search/test/map-search.e2e.ts new file mode 100644 index 000000000..fcd093edf --- /dev/null +++ b/src/components/map-search/test/map-search.e2e.ts @@ -0,0 +1,11 @@ +import { newE2EPage } from '@stencil/core/testing'; + +xdescribe('map-search', () => { + it('renders', async () => { + const page = await newE2EPage(); + await page.setContent(''); + + const element = await page.find('map-search'); + expect(element).toHaveClass('hydrated'); + }); +}); diff --git a/src/components/map-search/test/map-search.spec.tsx b/src/components/map-search/test/map-search.spec.tsx new file mode 100644 index 000000000..57675f1a6 --- /dev/null +++ b/src/components/map-search/test/map-search.spec.tsx @@ -0,0 +1,18 @@ +import { newSpecPage } from '@stencil/core/testing'; +import { MapSearch } from '../map-search'; + +xdescribe('map-search', () => { + it('renders', async () => { + const page = await newSpecPage({ + components: [MapSearch], + html: ``, + }); + expect(page.root).toEqualHtml(` + + + + + + `); + }); +}); From 735e7ba1da329050f578462dd5a437cddc336782 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Thu, 24 Aug 2023 14:41:37 -0600 Subject: [PATCH 155/406] add search basics --- src/components.d.ts | 72 +++++++ .../crowdsource-manager.tsx | 9 +- src/components/crowdsource-manager/readme.md | 16 +- src/components/map-card/map-card.tsx | 16 +- src/components/map-card/readme.md | 10 +- src/components/map-search/map-search.css | 5 + src/components/map-search/map-search.tsx | 194 +++++++++++++++++- src/components/map-search/readme.md | 25 +++ src/components/map-tools/map-tools.tsx | 46 ++++- src/components/map-tools/readme.md | 11 +- src/demos/crowdsource-manager.html | 6 +- 11 files changed, 382 insertions(+), 28 deletions(-) diff --git a/src/components.d.ts b/src/components.d.ts index de02a8cf9..786c93c94 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -76,6 +76,10 @@ export namespace Components { * IMapInfo[]: array of map infos (name and id) */ "mapInfos": IMapInfo[]; + /** + * ISearchConfiguration: Configuration details for the Search widget + */ + "searchConfiguration": ISearchConfiguration; /** * boolean: When true the selected feature will zoomed to in the map and the row will be scrolled to within the table */ @@ -192,6 +196,10 @@ export namespace Components { * esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html */ "mapView": __esri.MapView; + /** + * ISearchConfiguration: Configuration details for the Search widget + */ + "searchConfiguration": ISearchConfiguration; } interface MapDrawTools { /** @@ -290,6 +298,30 @@ export namespace Components { "mapInfos": IMapInfo[]; } interface MapSearch { + /** + * esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html + */ + "mapView": __esri.MapView; + /** + * boolean: When true the selected feature popup will be shown when serach result is found + */ + "popupEnabled": boolean; + /** + * boolean: When true a graphic will be added for the search result + */ + "resultGraphicEnabled": boolean; + /** + * ISearchConfiguration: Configuration details for the Search widget + */ + "searchConfiguration": ISearchConfiguration; + /** + * string: Text entered by the end user. Used to search against the locator. + */ + "searchTerm": string; + /** + * esri/widgets/Search: https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Search.html + */ + "searchWidget": __esri.widgetsSearch; } interface MapSelectTools { /** @@ -384,6 +416,10 @@ export namespace Components { * esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html */ "mapView": __esri.MapView; + /** + * ISearchConfiguration: Configuration details for the Search widget + */ + "searchConfiguration": ISearchConfiguration; } interface PciCalculator { } @@ -1082,6 +1118,10 @@ declare namespace LocalJSX { * IMapInfo[]: array of map infos (name and id) */ "mapInfos"?: IMapInfo[]; + /** + * ISearchConfiguration: Configuration details for the Search widget + */ + "searchConfiguration"?: ISearchConfiguration; /** * boolean: When true the selected feature will zoomed to in the map and the row will be scrolled to within the table */ @@ -1192,6 +1232,10 @@ declare namespace LocalJSX { * Emitted when a new map is loaded */ "onMapChanged"?: (event: MapCardCustomEvent<__esri.MapView>) => void; + /** + * ISearchConfiguration: Configuration details for the Search widget + */ + "searchConfiguration"?: ISearchConfiguration; } interface MapDrawTools { /** @@ -1304,6 +1348,30 @@ declare namespace LocalJSX { "onMapInfoChange"?: (event: MapPickerCustomEvent) => void; } interface MapSearch { + /** + * esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html + */ + "mapView"?: __esri.MapView; + /** + * boolean: When true the selected feature popup will be shown when serach result is found + */ + "popupEnabled"?: boolean; + /** + * boolean: When true a graphic will be added for the search result + */ + "resultGraphicEnabled"?: boolean; + /** + * ISearchConfiguration: Configuration details for the Search widget + */ + "searchConfiguration"?: ISearchConfiguration; + /** + * string: Text entered by the end user. Used to search against the locator. + */ + "searchTerm"?: string; + /** + * esri/widgets/Search: https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Search.html + */ + "searchWidget"?: __esri.widgetsSearch; } interface MapSelectTools { /** @@ -1396,6 +1464,10 @@ declare namespace LocalJSX { * Emitted when the expand button is clicked */ "onExpandMap"?: (event: MapToolsCustomEvent) => void; + /** + * ISearchConfiguration: Configuration details for the Search widget + */ + "searchConfiguration"?: ISearchConfiguration; } interface PciCalculator { } diff --git a/src/components/crowdsource-manager/crowdsource-manager.tsx b/src/components/crowdsource-manager/crowdsource-manager.tsx index 9f1923acc..eb1a9f8bf 100644 --- a/src/components/crowdsource-manager/crowdsource-manager.tsx +++ b/src/components/crowdsource-manager/crowdsource-manager.tsx @@ -17,7 +17,7 @@ import { Component, Element, Host, h, Listen, Prop, State, VNode } from "@stencil/core"; import CrowdsourceManager_T9n from "../../assets/t9n/crowdsource-manager/resources.json"; import { getLocaleComponentStrings } from "../../utils/locale"; -import { ELayoutMode, IMapInfo } from "../../utils/interfaces"; +import { ELayoutMode, IMapInfo, ISearchConfiguration } from "../../utils/interfaces"; @Component({ tag: "crowdsource-manager", @@ -58,6 +58,11 @@ export class CrowdsourceManager { */ @Prop() mapInfos: IMapInfo[] = []; + /** + * ISearchConfiguration: Configuration details for the Search widget + */ + @Prop() searchConfiguration: ISearchConfiguration; + /** * boolean: When true the selected feature will zoomed to in the map and the row will be scrolled to within the table */ @@ -349,7 +354,7 @@ export class CrowdsourceManager { const mapContainerClass = this.classicGrid && layoutMode === ELayoutMode.GRID ? "width-full" : "adjusted-height-50"; return (
- +
); } diff --git a/src/components/crowdsource-manager/readme.md b/src/components/crowdsource-manager/readme.md index 58b476dac..f07ddf344 100644 --- a/src/components/crowdsource-manager/readme.md +++ b/src/components/crowdsource-manager/readme.md @@ -7,13 +7,14 @@ ## Properties -| Property | Attribute | Description | Type | Default | -| ------------------------- | ----------------------------- | ------------------------------------------------------------------------------------------------------------------ | ------------ | ------- | -| `classicGrid` | `classic-grid` | boolean: when true the grid will display like the previous manager app with the table across the top | `boolean` | `false` | -| `hideHeader` | `hide-header` | boolean: when true no header is displayed for the app | `boolean` | `true` | -| `hideMap` | `hide-map` | boolean: when true no map is displayed for the app | `boolean` | `false` | -| `mapInfos` | -- | IMapInfo[]: array of map infos (name and id) | `IMapInfo[]` | `[]` | -| `zoomAndScrollToSelected` | `zoom-and-scroll-to-selected` | boolean: When true the selected feature will zoomed to in the map and the row will be scrolled to within the table | `boolean` | `false` | +| Property | Attribute | Description | Type | Default | +| ------------------------- | ----------------------------- | ------------------------------------------------------------------------------------------------------------------ | ---------------------- | ----------- | +| `classicGrid` | `classic-grid` | boolean: when true the grid will display like the previous manager app with the table across the top | `boolean` | `false` | +| `hideHeader` | `hide-header` | boolean: when true no header is displayed for the app | `boolean` | `true` | +| `hideMap` | `hide-map` | boolean: when true no map is displayed for the app | `boolean` | `false` | +| `mapInfos` | -- | IMapInfo[]: array of map infos (name and id) | `IMapInfo[]` | `[]` | +| `searchConfiguration` | -- | ISearchConfiguration: Configuration details for the Search widget | `ISearchConfiguration` | `undefined` | +| `zoomAndScrollToSelected` | `zoom-and-scroll-to-selected` | boolean: When true the selected feature will zoomed to in the map and the row will be scrolled to within the table | `boolean` | `false` | ## Dependencies @@ -79,6 +80,7 @@ graph TD; calcite-handle --> calcite-icon map-tools --> calcite-action map-tools --> calcite-action-bar + map-tools --> map-search map-tools --> calcite-action-group map-tools --> calcite-icon map-tools --> calcite-tooltip diff --git a/src/components/map-card/map-card.tsx b/src/components/map-card/map-card.tsx index 64c5b5789..7469584ef 100644 --- a/src/components/map-card/map-card.tsx +++ b/src/components/map-card/map-card.tsx @@ -16,13 +16,12 @@ import { Component, Element, Event, EventEmitter, Host, h, Listen, Prop, State } from "@stencil/core"; import { loadModules } from "../../utils/loadModules"; -import { IMapInfo } from "../../utils/interfaces"; +import { IMapInfo, ISearchConfiguration } from "../../utils/interfaces"; // TODO navigation and accessability isn't right for the map list // tab does not go into the list when it's open // focus is not set when it opens -// TODO clarify what the Home and List buttons are supposed to do -// TODO handle zoom in/out +// TODO clarify what the List button is supposed to do // TODO map list button tooltip does not work // TODO map list should close if the user clicks something else...hope this will be easy when I figure out how to set focus when it opens @@ -56,6 +55,11 @@ export class MapCard { */ @Prop() mapView: __esri.MapView; + /** + * ISearchConfiguration: Configuration details for the Search widget + */ + @Prop() searchConfiguration: ISearchConfiguration; + //-------------------------------------------------------------------------- // // State (internal) @@ -152,7 +156,11 @@ export class MapCard {
(this._mapDiv = el)}/> - this._mapTools = el}/> + this._mapTools = el} + searchConfiguration={this.searchConfiguration} + /> ); } diff --git a/src/components/map-card/readme.md b/src/components/map-card/readme.md index aa78f8a3f..886c3eb3d 100644 --- a/src/components/map-card/readme.md +++ b/src/components/map-card/readme.md @@ -7,10 +7,11 @@ ## Properties -| Property | Attribute | Description | Type | Default | -| ---------- | --------- | ------------------------------------------------------------------------------------------------------ | ------------ | ----------- | -| `mapInfos` | -- | IMapInfo[]: array of map infos (name and id) | `IMapInfo[]` | `[]` | -| `mapView` | -- | esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html | `MapView` | `undefined` | +| Property | Attribute | Description | Type | Default | +| --------------------- | --------- | ------------------------------------------------------------------------------------------------------ | ---------------------- | ----------- | +| `mapInfos` | -- | IMapInfo[]: array of map infos (name and id) | `IMapInfo[]` | `[]` | +| `mapView` | -- | esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html | `MapView` | `undefined` | +| `searchConfiguration` | -- | ISearchConfiguration: Configuration details for the Search widget | `ISearchConfiguration` | `undefined` | ## Events @@ -64,6 +65,7 @@ graph TD; calcite-handle --> calcite-icon map-tools --> calcite-action map-tools --> calcite-action-bar + map-tools --> map-search map-tools --> calcite-action-group map-tools --> calcite-icon map-tools --> calcite-tooltip diff --git a/src/components/map-search/map-search.css b/src/components/map-search/map-search.css index 5d4e87f30..ad9f32985 100644 --- a/src/components/map-search/map-search.css +++ b/src/components/map-search/map-search.css @@ -1,3 +1,8 @@ :host { display: block; } + +.search-widget { + width: 100% !important; + border: 1px solid var(--calcite-ui-border-input); +} diff --git a/src/components/map-search/map-search.tsx b/src/components/map-search/map-search.tsx index 86bcdf771..1090bf75b 100644 --- a/src/components/map-search/map-search.tsx +++ b/src/components/map-search/map-search.tsx @@ -14,7 +14,9 @@ * limitations under the License. */ -import { Component, Host, h } from '@stencil/core'; +import { Component, Host, h, Prop, Watch } from "@stencil/core"; +import { loadModules } from "../../utils/loadModules"; +import { ILayerSourceConfigItem, ILocatorSourceConfigItem, ISearchConfiguration } from "../../utils/interfaces"; @Component({ tag: 'map-search', @@ -34,6 +36,37 @@ export class MapSearch { // //-------------------------------------------------------------------------- + /** + * esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html + */ + @Prop() mapView: __esri.MapView; + + /** + * boolean: When true the selected feature popup will be shown when serach result is found + */ + @Prop() popupEnabled = false; + + /** + * boolean: When true a graphic will be added for the search result + */ + @Prop() resultGraphicEnabled = false; + + /** + * ISearchConfiguration: Configuration details for the Search widget + */ + @Prop() searchConfiguration: ISearchConfiguration; + + /** + * string: Text entered by the end user. + * Used to search against the locator. + */ + @Prop() searchTerm: string; + + /** + * esri/widgets/Search: https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Search.html + */ + @Prop() searchWidget: __esri.widgetsSearch; + //-------------------------------------------------------------------------- // // State (internal) @@ -46,12 +79,54 @@ export class MapSearch { // //-------------------------------------------------------------------------- + /** + * esri/layers/FeatureLayer: https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html + */ + protected FeatureLayer: typeof import("esri/layers/FeatureLayer"); + + /** + * esri/widgets/Search: https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Search.html + */ + protected Search: typeof import("esri/widgets/Search"); + + /** + * HTMLElement: The container div for the search widget + */ + protected _searchElement: HTMLElement; + + /** + * An array of objects representing the results of search + */ + protected _searchResult: any; + //-------------------------------------------------------------------------- // // Watch handlers // //-------------------------------------------------------------------------- + /** + * Called each time the searchConfiguration prop is changed. + * + * @returns Promise when complete + */ + @Watch("searchConfiguration") + async watchSearchConfigurationHandler(): Promise { + this._initSearchWidget(); + } + + /** + * Called each time the mapView prop is changed. + * + * @returns Promise when complete + */ + @Watch("mapView") + async mapViewWatchHandler(): Promise { + await this.mapView.when(() => { + this._initSearchWidget(); + }); + } + //-------------------------------------------------------------------------- // // Methods (public) @@ -70,12 +145,29 @@ export class MapSearch { // //-------------------------------------------------------------------------- + /** + * StencilJS: Called once just after the component is first connected to the DOM. + */ + async componentWillLoad(): Promise { + await this._initModules(); + } + + /** + * StencilJS: Called once just after the component is fully loaded and the first render() occurs. + */ + async componentDidLoad(): Promise { + return this._initSearchWidget(); + } + /** * Renders the component. */ render() { + console.log("render map search") return ( - + +
{ this._searchElement = el }} /> + ); } @@ -85,4 +177,102 @@ export class MapSearch { // //-------------------------------------------------------------------------- + /** + * Load esri javascript api modules + * + * @returns Promise resolving when function is done + * + * @protected + */ + protected async _initModules(): Promise { + const [Search, FeatureLayer] = await loadModules([ + "esri/widgets/Search", + "esri/layers/FeatureLayer" + ]); + this.Search = Search; + this.FeatureLayer = FeatureLayer; + } + + /** + * Initialize the search widget + * + * @protected + */ + protected _initSearchWidget(): void { + if (this.mapView && this._searchElement && !this.searchWidget) { + + const searchConfiguration = this._getSearchConfig(this.searchConfiguration, this.mapView); + + const searchOptions: __esri.widgetsSearchProperties = { + view: this.mapView, + container: this._searchElement, + searchTerm: this.searchTerm, + ...searchConfiguration + }; + this.searchWidget = new this.Search(searchOptions); + this.searchWidget.popupEnabled = this.popupEnabled; + this.searchWidget.resultGraphicEnabled = this.resultGraphicEnabled; + } else { + if (this.searchWidget) { + this.searchWidget.view = this.mapView; + } + } + } + + /** + * Initialize the search widget based on user defined configuration + * + * @param searchConfiguration search configuration defined by the user + * @param view the current map view + * + * @protected + */ + protected _getSearchConfig( + searchConfiguration: ISearchConfiguration, + view: __esri.MapView + ): ISearchConfiguration { + const INCLUDE_DEFAULT_SOURCES = "includeDefaultSources"; + const sources = searchConfiguration?.sources; + + if (sources?.length > 0) { + searchConfiguration[INCLUDE_DEFAULT_SOURCES] = false; + + sources.forEach((source) => { + const isLayerSource = source.hasOwnProperty("layer"); + if (isLayerSource) { + const layerSource = source as ILayerSourceConfigItem; + const layerId = layerSource.layer?.id; + const layerFromMap = layerId ? view.map.findLayerById(layerId) : null; + const layerUrl = layerSource?.layer?.url; + if (layerFromMap) { + layerSource.layer = layerFromMap as __esri.FeatureLayer; + } else if (layerUrl) { + layerSource.layer = new this.FeatureLayer(layerUrl as any); + } + } + }); + + sources?.forEach((source) => { + const isLocatorSource = source.hasOwnProperty("locator"); + if (isLocatorSource) { + const locatorSource = (source as ILocatorSourceConfigItem); + if (locatorSource?.name === "ArcGIS World Geocoding Service") { + const outFields = locatorSource.outFields || ["Addr_type", "Match_addr", "StAddr", "City"]; + locatorSource.outFields = outFields; + locatorSource.singleLineFieldName = "SingleLine"; + } + + locatorSource.url = locatorSource.url; + delete locatorSource.url; + } + }); + } else { + searchConfiguration = { + ...searchConfiguration, + includeDefaultSources: true + } + } + return searchConfiguration; + } + } diff --git a/src/components/map-search/readme.md b/src/components/map-search/readme.md index 90da0d7ab..68971dc97 100644 --- a/src/components/map-search/readme.md +++ b/src/components/map-search/readme.md @@ -5,6 +5,31 @@ +## Properties + +| Property | Attribute | Description | Type | Default | +| ---------------------- | ------------------------ | ----------------------------------------------------------------------------------------------------------- | ---------------------- | ----------- | +| `mapView` | -- | esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html | `MapView` | `undefined` | +| `popupEnabled` | `popup-enabled` | boolean: When true the selected feature popup will be shown when serach result is found | `boolean` | `false` | +| `resultGraphicEnabled` | `result-graphic-enabled` | boolean: When true a graphic will be added for the search result | `boolean` | `false` | +| `searchConfiguration` | -- | ISearchConfiguration: Configuration details for the Search widget | `ISearchConfiguration` | `undefined` | +| `searchTerm` | `search-term` | string: Text entered by the end user. Used to search against the locator. | `string` | `undefined` | +| `searchWidget` | -- | esri/widgets/Search: https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Search.html | `widgetsSearch` | `undefined` | + + +## Dependencies + +### Used by + + - [map-tools](../map-tools) + +### Graph +```mermaid +graph TD; + map-tools --> map-search + style map-search fill:#f9f,stroke:#333,stroke-width:4px +``` + ---------------------------------------------- *Built with [StencilJS](https://stenciljs.com/)* diff --git a/src/components/map-tools/map-tools.tsx b/src/components/map-tools/map-tools.tsx index ec52fa140..32e3924bd 100644 --- a/src/components/map-tools/map-tools.tsx +++ b/src/components/map-tools/map-tools.tsx @@ -17,7 +17,7 @@ import { Component, Element, Event, EventEmitter, Host, h, Prop, State, VNode, Watch } from '@stencil/core'; import MapTools_T9n from "../../assets/t9n/map-tools/resources.json"; import { getLocaleComponentStrings } from "../../utils/locale"; -import { EExpandType } from "../../utils/interfaces"; +import { EExpandType, ISearchConfiguration } from "../../utils/interfaces"; import { loadModules } from "../../utils/loadModules" @Component({ @@ -50,6 +50,11 @@ export class MapTools { */ @Prop() mapView: __esri.MapView; + /** + * ISearchConfiguration: Configuration details for the Search widget + */ + @Prop() searchConfiguration: ISearchConfiguration; + //-------------------------------------------------------------------------- // // State (internal) @@ -72,6 +77,11 @@ export class MapTools { */ @State() _showBasemapPicker = false; + /** + * When true the search widget will be displayed + */ + @State() _showSearchWidget = false; + //-------------------------------------------------------------------------- // // Properties (protected) @@ -97,6 +107,11 @@ export class MapTools { */ protected _homeExtent: __esri.Extent; + /** + * HTMLMapSearchElement: The search element node + */ + protected _searchElement: HTMLMapSearchElement; + //-------------------------------------------------------------------------- // // Watch handlers @@ -134,6 +149,24 @@ export class MapTools { } } + /** + * When the _showSearchWidget property is true display the search widget + */ + @Watch("_showSearchWidget") + async _showSearchWidgetWatchHandler( + v: boolean + ): Promise { + console.log("_showSearchWidget changed") + if (v) { + this.mapView.ui.add(this._searchElement.searchWidget, { + position: "top-right", + index: 1 + }); + } else { + this.mapView.ui.remove(this._searchElement.searchWidget); + } + } + //-------------------------------------------------------------------------- // // Methods (public) @@ -171,6 +204,7 @@ export class MapTools { render() { const toggleIcon = this._showTools ? "chevrons-up" : "chevrons-down"; const toolsClass = this._showTools ? "" : "display-none"; + const searchClass = this._showSearchWidget ? "" : "display-none"; return (
@@ -193,6 +227,12 @@ export class MapTools {
+ { this._searchElement = el }} + searchConfiguration={this.searchConfiguration} + /> ); } @@ -295,7 +335,8 @@ export class MapTools { // Need to discuss this with the team protected _search(): void { - alert("search") + this._showSearchWidget = !this._showSearchWidget; + this._showTools = false; } /** @@ -371,6 +412,7 @@ export class MapTools { protected _toggleTools(): void { if (!this._showTools) { this._showBasemapPicker = false; + this._showSearchWidget = false; } this._showTools = !this._showTools; } diff --git a/src/components/map-tools/readme.md b/src/components/map-tools/readme.md index 92e361052..b4a513fbb 100644 --- a/src/components/map-tools/readme.md +++ b/src/components/map-tools/readme.md @@ -7,10 +7,11 @@ ## Properties -| Property | Attribute | Description | Type | Default | -| --------- | --------- | ------------------------------------------------------------------------------------------------------ | ---------------------------- | ------------ | -| `layout` | `layout` | "horizontal" \| "vertical": used to control the orientation of the tools | `"horizontal" \| "vertical"` | `"vertical"` | -| `mapView` | -- | esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html | `MapView` | `undefined` | +| Property | Attribute | Description | Type | Default | +| --------------------- | --------- | ------------------------------------------------------------------------------------------------------ | ---------------------------- | ------------ | +| `layout` | `layout` | "horizontal" \| "vertical": used to control the orientation of the tools | `"horizontal" \| "vertical"` | `"vertical"` | +| `mapView` | -- | esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html | `MapView` | `undefined` | +| `searchConfiguration` | -- | ISearchConfiguration: Configuration details for the Search widget | `ISearchConfiguration` | `undefined` | ## Events @@ -30,6 +31,7 @@ - calcite-action - calcite-action-bar +- [map-search](../map-search) - calcite-action-group - calcite-icon - calcite-tooltip @@ -39,6 +41,7 @@ graph TD; map-tools --> calcite-action map-tools --> calcite-action-bar + map-tools --> map-search map-tools --> calcite-action-group map-tools --> calcite-icon map-tools --> calcite-tooltip diff --git a/src/demos/crowdsource-manager.html b/src/demos/crowdsource-manager.html index 96517f2be..599eba9f1 100644 --- a/src/demos/crowdsource-manager.html +++ b/src/demos/crowdsource-manager.html @@ -83,6 +83,9 @@ demo.mapInfos = [ ...custom, ...[{ + id: "ce3dec81bf714d3bb71da9691ab686d1", + name: "Popup Configured Map" + }, { id: "863e4f6f2a7840db896cc1b1606d552d", name: "IA map" }, { @@ -94,9 +97,6 @@ }, { id: "f5b01c17a09941eaad63e7b4e6c7d880", name: "Attachments Map" - }, { - id: "ce3dec81bf714d3bb71da9691ab686d1", - name: "Popup Configured Map" }] ]; } From 7533e57888c8b669c10dad4b71e52639fbda1a01 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Thu, 24 Aug 2023 14:47:58 -0600 Subject: [PATCH 156/406] update IMapInfo --- .../crowdsource-manager/crowdsource-manager.tsx | 2 +- src/components/map-card/map-card.tsx | 13 +++++++------ src/utils/interfaces.ts | 2 ++ 3 files changed, 10 insertions(+), 7 deletions(-) diff --git a/src/components/crowdsource-manager/crowdsource-manager.tsx b/src/components/crowdsource-manager/crowdsource-manager.tsx index eb1a9f8bf..626a8bb0b 100644 --- a/src/components/crowdsource-manager/crowdsource-manager.tsx +++ b/src/components/crowdsource-manager/crowdsource-manager.tsx @@ -354,7 +354,7 @@ export class CrowdsourceManager { const mapContainerClass = this.classicGrid && layoutMode === ELayoutMode.GRID ? "width-full" : "adjusted-height-50"; return (
- +
); } diff --git a/src/components/map-card/map-card.tsx b/src/components/map-card/map-card.tsx index 7469584ef..1b3a37014 100644 --- a/src/components/map-card/map-card.tsx +++ b/src/components/map-card/map-card.tsx @@ -55,17 +55,17 @@ export class MapCard { */ @Prop() mapView: __esri.MapView; - /** - * ISearchConfiguration: Configuration details for the Search widget - */ - @Prop() searchConfiguration: ISearchConfiguration; - //-------------------------------------------------------------------------- // // State (internal) // //-------------------------------------------------------------------------- + /** + * ISearchConfiguration: Configuration details for the Search widget + */ + @State() _searchConfiguration: ISearchConfiguration; + /** * IMapInfo: id and name of the map to display */ @@ -159,7 +159,7 @@ export class MapCard { this._mapTools = el} - searchConfiguration={this.searchConfiguration} + searchConfiguration={this._searchConfiguration} /> ); @@ -218,6 +218,7 @@ export class MapCard { }); await this.mapView.when(() => { this._loadedId = id; + this._searchConfiguration = this._webMapInfo.searchConfiguration; this.mapChanged.emit(this.mapView); this.mapView.ui.add(this._mapTools, { position: "top-right", index: 0}); }); diff --git a/src/utils/interfaces.ts b/src/utils/interfaces.ts index 833d14623..0a729dfc8 100644 --- a/src/utils/interfaces.ts +++ b/src/utils/interfaces.ts @@ -446,6 +446,8 @@ export interface IMediaCardValues { export interface IMapInfo { id: string; name: string; + searchConfiguration?: ISearchConfiguration; + filters?: any[]; // TODO generate an interface for this once we know how it will be passed in } export interface IExportInfos { From 69b556418c71a82af87e04a9324dedae4438f8fe Mon Sep 17 00:00:00 2001 From: John Hauck Date: Thu, 24 Aug 2023 15:20:51 -0600 Subject: [PATCH 157/406] move basemap gallery to a component --- src/components.d.ts | 37 +++- .../basemap-gallery/basemap-gallery.css | 3 + .../basemap-gallery/basemap-gallery.tsx | 161 ++++++++++++++++++ src/components/basemap-gallery/readme.md | 31 ++++ .../test/basemap-gallery.e2e.ts | 11 ++ .../test/basemap-gallery.spec.tsx | 18 ++ src/components/crowdsource-manager/readme.md | 1 + src/components/map-card/readme.md | 10 +- src/components/map-tools/map-tools.tsx | 80 ++------- src/components/map-tools/readme.md | 2 + 10 files changed, 278 insertions(+), 76 deletions(-) create mode 100644 src/components/basemap-gallery/basemap-gallery.css create mode 100644 src/components/basemap-gallery/basemap-gallery.tsx create mode 100644 src/components/basemap-gallery/readme.md create mode 100644 src/components/basemap-gallery/test/basemap-gallery.e2e.ts create mode 100644 src/components/basemap-gallery/test/basemap-gallery.spec.tsx diff --git a/src/components.d.ts b/src/components.d.ts index 786c93c94..1e5bc8880 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -10,6 +10,16 @@ import { UserSession } from "@esri/solution-common"; export { DistanceUnit, EDrawMode, EExpandType, ELayoutMode, IExportInfos, IInventoryItem, IMapInfo, ISearchConfiguration, ISelectionSet, ISketchGraphicsChange, ISolutionSpatialReferenceInfo, ISpatialRefRepresentation, IValueChange } from "./utils/interfaces"; export { UserSession } from "@esri/solution-common"; export namespace Components { + interface BasemapGallery { + /** + * esri/widgets/BasemapGallery: https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-BasemapGallery.html BasemapGallery instance + */ + "basemapWidget": __esri.BasemapGallery; + /** + * esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html + */ + "mapView": __esri.MapView; + } interface BufferTools { /** * string: The appearance of display. Can be a "slider" or "text" inputs for distance/value @@ -196,10 +206,6 @@ export namespace Components { * esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html */ "mapView": __esri.MapView; - /** - * ISearchConfiguration: Configuration details for the Search widget - */ - "searchConfiguration": ISearchConfiguration; } interface MapDrawTools { /** @@ -798,6 +804,12 @@ export interface StoreManagerCustomEvent extends CustomEvent { target: HTMLStoreManagerElement; } declare global { + interface HTMLBasemapGalleryElement extends Components.BasemapGallery, HTMLStencilElement { + } + var HTMLBasemapGalleryElement: { + prototype: HTMLBasemapGalleryElement; + new (): HTMLBasemapGalleryElement; + }; interface HTMLBufferToolsElement extends Components.BufferTools, HTMLStencilElement { } var HTMLBufferToolsElement: { @@ -1003,6 +1015,7 @@ declare global { new (): HTMLStoreManagerElement; }; interface HTMLElementTagNameMap { + "basemap-gallery": HTMLBasemapGalleryElement; "buffer-tools": HTMLBufferToolsElement; "card-manager": HTMLCardManagerElement; "crowdsource-manager": HTMLCrowdsourceManagerElement; @@ -1040,6 +1053,16 @@ declare global { } } declare namespace LocalJSX { + interface BasemapGallery { + /** + * esri/widgets/BasemapGallery: https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-BasemapGallery.html BasemapGallery instance + */ + "basemapWidget"?: __esri.BasemapGallery; + /** + * esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html + */ + "mapView"?: __esri.MapView; + } interface BufferTools { /** * string: The appearance of display. Can be a "slider" or "text" inputs for distance/value @@ -1232,10 +1255,6 @@ declare namespace LocalJSX { * Emitted when a new map is loaded */ "onMapChanged"?: (event: MapCardCustomEvent<__esri.MapView>) => void; - /** - * ISearchConfiguration: Configuration details for the Search widget - */ - "searchConfiguration"?: ISearchConfiguration; } interface MapDrawTools { /** @@ -1749,6 +1768,7 @@ declare namespace LocalJSX { "value"?: string; } interface IntrinsicElements { + "basemap-gallery": BasemapGallery; "buffer-tools": BufferTools; "card-manager": CardManager; "crowdsource-manager": CrowdsourceManager; @@ -1789,6 +1809,7 @@ export { LocalJSX as JSX }; declare module "@stencil/core" { export namespace JSX { interface IntrinsicElements { + "basemap-gallery": LocalJSX.BasemapGallery & JSXBase.HTMLAttributes; "buffer-tools": LocalJSX.BufferTools & JSXBase.HTMLAttributes; "card-manager": LocalJSX.CardManager & JSXBase.HTMLAttributes; "crowdsource-manager": LocalJSX.CrowdsourceManager & JSXBase.HTMLAttributes; diff --git a/src/components/basemap-gallery/basemap-gallery.css b/src/components/basemap-gallery/basemap-gallery.css new file mode 100644 index 000000000..5d4e87f30 --- /dev/null +++ b/src/components/basemap-gallery/basemap-gallery.css @@ -0,0 +1,3 @@ +:host { + display: block; +} diff --git a/src/components/basemap-gallery/basemap-gallery.tsx b/src/components/basemap-gallery/basemap-gallery.tsx new file mode 100644 index 000000000..162e54e06 --- /dev/null +++ b/src/components/basemap-gallery/basemap-gallery.tsx @@ -0,0 +1,161 @@ +/** @license + * Copyright 2022 Esri + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { Component, Element, Host, h, Prop, Watch } from '@stencil/core'; +import { loadModules } from "../../utils/loadModules"; + +@Component({ + tag: 'basemap-gallery', + styleUrl: 'basemap-gallery.css', + shadow: true, +}) +export class BasemapGallery { + //-------------------------------------------------------------------------- + // + // Host element access + // + //-------------------------------------------------------------------------- + + @Element() el: HTMLBasemapGalleryElement; + + //-------------------------------------------------------------------------- + // + // Properties (public) + // + //-------------------------------------------------------------------------- + + /** + * esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html + */ + @Prop() mapView: __esri.MapView; + + /** + * esri/widgets/BasemapGallery: https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-BasemapGallery.html + * + * BasemapGallery instance + */ + @Prop() basemapWidget: __esri.BasemapGallery; + + //-------------------------------------------------------------------------- + // + // State (internal) + // + //-------------------------------------------------------------------------- + + //-------------------------------------------------------------------------- + // + // Properties (protected) + // + //-------------------------------------------------------------------------- + + /** + * esri/widgets/BasemapGallery: https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-BasemapGallery.html + * + * BasemapGallery constructor + */ + protected BasemapGallery: typeof import("esri/widgets/BasemapGallery"); + + //-------------------------------------------------------------------------- + // + // Watch handlers + // + //-------------------------------------------------------------------------- + + @Watch("mapView") + async mapViewWatchHandler(): Promise { + await this.mapView.when(() => { + this._initBaseMapGallery(this.mapView); + }); + } + + //-------------------------------------------------------------------------- + // + // Methods (public) + // + //-------------------------------------------------------------------------- + + //-------------------------------------------------------------------------- + // + // Events (public) + // + //-------------------------------------------------------------------------- + + //-------------------------------------------------------------------------- + // + // Functions (lifecycle) + // + //-------------------------------------------------------------------------- + + /** + * StencilJS: Called once just after the component is first connected to the DOM. + */ + async componentWillLoad(): Promise { + return this._initModules(); + } + + /** + * StencilJS: Renders the component. + */ + render() { + return ( + + + + ); + } + + //-------------------------------------------------------------------------- + // + // Functions (protected) + // + //-------------------------------------------------------------------------- + + /** + * Load esri javascript api modules + * + * @returns Promise resolving when function is done + * + * @protected + */ + protected async _initModules(): Promise { + const [BasemapGallery] = await loadModules([ + "esri/widgets/BasemapGallery" + ]); + this.BasemapGallery = BasemapGallery; + } + + /** + * Initialize the basemap gallery or reset the current view if it already exists + * + * @returns void + * + * @protected + */ + protected _initBaseMapGallery( + view: __esri.MapView + ): void { + if (view && this.BasemapGallery) { + if (!this.basemapWidget) { + this.basemapWidget = new this.BasemapGallery({ + container: "basemap-container", + view + }); + } else { + this.basemapWidget.view = view; + } + } + } +} diff --git a/src/components/basemap-gallery/readme.md b/src/components/basemap-gallery/readme.md new file mode 100644 index 000000000..081fef809 --- /dev/null +++ b/src/components/basemap-gallery/readme.md @@ -0,0 +1,31 @@ +# basemap-gallery + + + + + + +## Properties + +| Property | Attribute | Description | Type | Default | +| --------------- | --------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------- | ----------- | +| `basemapWidget` | -- | esri/widgets/BasemapGallery: https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-BasemapGallery.html BasemapGallery instance | `BasemapGallery` | `undefined` | +| `mapView` | -- | esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html | `MapView` | `undefined` | + + +## Dependencies + +### Used by + + - [map-tools](../map-tools) + +### Graph +```mermaid +graph TD; + map-tools --> basemap-gallery + style basemap-gallery fill:#f9f,stroke:#333,stroke-width:4px +``` + +---------------------------------------------- + +*Built with [StencilJS](https://stenciljs.com/)* diff --git a/src/components/basemap-gallery/test/basemap-gallery.e2e.ts b/src/components/basemap-gallery/test/basemap-gallery.e2e.ts new file mode 100644 index 000000000..c6fa07c74 --- /dev/null +++ b/src/components/basemap-gallery/test/basemap-gallery.e2e.ts @@ -0,0 +1,11 @@ +import { newE2EPage } from '@stencil/core/testing'; + +xdescribe('basemap-gallery', () => { + it('renders', async () => { + const page = await newE2EPage(); + await page.setContent(''); + + const element = await page.find('basemap-gallery'); + expect(element).toHaveClass('hydrated'); + }); +}); diff --git a/src/components/basemap-gallery/test/basemap-gallery.spec.tsx b/src/components/basemap-gallery/test/basemap-gallery.spec.tsx new file mode 100644 index 000000000..587769484 --- /dev/null +++ b/src/components/basemap-gallery/test/basemap-gallery.spec.tsx @@ -0,0 +1,18 @@ +import { newSpecPage } from '@stencil/core/testing'; +import { BasemapGallery } from '../basemap-gallery'; + +xdescribe('basemap-gallery', () => { + it('renders', async () => { + const page = await newSpecPage({ + components: [BasemapGallery], + html: ``, + }); + expect(page.root).toEqualHtml(` + + + + + + `); + }); +}); diff --git a/src/components/crowdsource-manager/readme.md b/src/components/crowdsource-manager/readme.md index f07ddf344..dd7e272f5 100644 --- a/src/components/crowdsource-manager/readme.md +++ b/src/components/crowdsource-manager/readme.md @@ -80,6 +80,7 @@ graph TD; calcite-handle --> calcite-icon map-tools --> calcite-action map-tools --> calcite-action-bar + map-tools --> basemap-gallery map-tools --> map-search map-tools --> calcite-action-group map-tools --> calcite-icon diff --git a/src/components/map-card/readme.md b/src/components/map-card/readme.md index 886c3eb3d..51ae14dac 100644 --- a/src/components/map-card/readme.md +++ b/src/components/map-card/readme.md @@ -7,11 +7,10 @@ ## Properties -| Property | Attribute | Description | Type | Default | -| --------------------- | --------- | ------------------------------------------------------------------------------------------------------ | ---------------------- | ----------- | -| `mapInfos` | -- | IMapInfo[]: array of map infos (name and id) | `IMapInfo[]` | `[]` | -| `mapView` | -- | esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html | `MapView` | `undefined` | -| `searchConfiguration` | -- | ISearchConfiguration: Configuration details for the Search widget | `ISearchConfiguration` | `undefined` | +| Property | Attribute | Description | Type | Default | +| ---------- | --------- | ------------------------------------------------------------------------------------------------------ | ------------ | ----------- | +| `mapInfos` | -- | IMapInfo[]: array of map infos (name and id) | `IMapInfo[]` | `[]` | +| `mapView` | -- | esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html | `MapView` | `undefined` | ## Events @@ -65,6 +64,7 @@ graph TD; calcite-handle --> calcite-icon map-tools --> calcite-action map-tools --> calcite-action-bar + map-tools --> basemap-gallery map-tools --> map-search map-tools --> calcite-action-group map-tools --> calcite-icon diff --git a/src/components/map-tools/map-tools.tsx b/src/components/map-tools/map-tools.tsx index 32e3924bd..04b153bff 100644 --- a/src/components/map-tools/map-tools.tsx +++ b/src/components/map-tools/map-tools.tsx @@ -18,7 +18,6 @@ import { Component, Element, Event, EventEmitter, Host, h, Prop, State, VNode, W import MapTools_T9n from "../../assets/t9n/map-tools/resources.json"; import { getLocaleComponentStrings } from "../../utils/locale"; import { EExpandType, ISearchConfiguration } from "../../utils/interfaces"; -import { loadModules } from "../../utils/loadModules" @Component({ tag: 'map-tools', @@ -75,7 +74,7 @@ export class MapTools { /** * When true the basemap picker will be displayed */ - @State() _showBasemapPicker = false; + @State() _showBasemapWidget = false; /** * When true the search widget will be displayed @@ -89,18 +88,9 @@ export class MapTools { //-------------------------------------------------------------------------- /** - * esri/widgets/BasemapGallery: https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-BasemapGallery.html - * - * BasemapGallery constructor - */ - protected BasemapGallery: typeof import("esri/widgets/BasemapGallery"); - - /** - * esri/widgets/BasemapGallery: https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-BasemapGallery.html - * - * BasemapGallery instance + * HTMLMapSearchElement: The search element node */ - protected _baseMapGallery: __esri.BasemapGallery; + protected _basemapElement: HTMLBasemapGalleryElement; /** * esri/geometry/Extent: https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Extent.html @@ -119,33 +109,29 @@ export class MapTools { //-------------------------------------------------------------------------- /** - * Store the home extent and update the basemap gallery when the map view changes + * Store the home extent when the map view changes */ @Watch("mapView") async mapViewWatchHandler(): Promise { await this.mapView.when(() => { this._homeExtent = this.mapView.extent; - this._initBaseMapGallery(this.mapView); }); } /** - * When the _showBasemapPicker property is true display the basemap gallery + * When the _showBasemapWidget property is true display the basemap gallery */ - @Watch("_showBasemapPicker") - async _showBasemapPickerWatchHandler( + @Watch("_showBasemapWidget") + async _showBasemapWidgetWatchHandler( v: boolean ): Promise { if (v) { - if (!this._baseMapGallery) { - this._initBaseMapGallery(this.mapView); - } - this.mapView.ui.add(this._baseMapGallery, { + this.mapView.ui.add(this._basemapElement.basemapWidget, { position: "top-right", index: 1 }); } else { - this.mapView.ui.remove(this._baseMapGallery); + this.mapView.ui.remove(this._basemapElement.basemapWidget); } } @@ -195,7 +181,6 @@ export class MapTools { */ async componentWillLoad(): Promise { await this._getTranslations(); - return this._initModules(); } /** @@ -205,6 +190,7 @@ export class MapTools { const toggleIcon = this._showTools ? "chevrons-up" : "chevrons-down"; const toolsClass = this._showTools ? "" : "display-none"; const searchClass = this._showSearchWidget ? "" : "display-none"; + const basemapClass = this._showBasemapWidget ? "" : "display-none"; return (
@@ -226,7 +212,11 @@ export class MapTools { {this._getActionGroup("basemap", false, this._translations.basemap, () => this._toggleBasemapPicker())}
-
+ {this._basemapElement = el}} + /> { - const [BasemapGallery] = await loadModules([ - "esri/widgets/BasemapGallery" - ]); - this.BasemapGallery = BasemapGallery; - } - - /** - * Initialize the basemap gallery or reset the current view if it already exists - * - * @returns void - * - * @protected - */ - protected _initBaseMapGallery( - view: __esri.MapView - ): void { - if (view && this.BasemapGallery) { - if (!this._baseMapGallery) { - this._baseMapGallery = new this.BasemapGallery({ - container: "basemap-container", - view - }); - } else { - this._baseMapGallery.view = view; - } - } - } - /** * Get a calcite action group for the current action * @@ -387,7 +341,7 @@ export class MapTools { * @protected */ protected _toggleBasemapPicker(): void { - this._showBasemapPicker = !this._showBasemapPicker; + this._showBasemapWidget = !this._showBasemapWidget; this._showTools = false; } @@ -411,7 +365,7 @@ export class MapTools { */ protected _toggleTools(): void { if (!this._showTools) { - this._showBasemapPicker = false; + this._showBasemapWidget = false; this._showSearchWidget = false; } this._showTools = !this._showTools; diff --git a/src/components/map-tools/readme.md b/src/components/map-tools/readme.md index b4a513fbb..9ae155eb5 100644 --- a/src/components/map-tools/readme.md +++ b/src/components/map-tools/readme.md @@ -31,6 +31,7 @@ - calcite-action - calcite-action-bar +- [basemap-gallery](../basemap-gallery) - [map-search](../map-search) - calcite-action-group - calcite-icon @@ -41,6 +42,7 @@ graph TD; map-tools --> calcite-action map-tools --> calcite-action-bar + map-tools --> basemap-gallery map-tools --> map-search map-tools --> calcite-action-group map-tools --> calcite-icon From ee18ff7899d7d896a1a01f15629b9033918e5f94 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Thu, 24 Aug 2023 15:22:46 -0600 Subject: [PATCH 158/406] add Copyright --- .../basemap-gallery/basemap-gallery.css | 16 ++++++++++++++++ .../basemap-gallery/test/basemap-gallery.e2e.ts | 16 ++++++++++++++++ .../test/basemap-gallery.spec.tsx | 16 ++++++++++++++++ src/components/map-search/map-search.css | 16 ++++++++++++++++ src/components/map-search/test/map-search.e2e.ts | 16 ++++++++++++++++ .../map-search/test/map-search.spec.tsx | 16 ++++++++++++++++ 6 files changed, 96 insertions(+) diff --git a/src/components/basemap-gallery/basemap-gallery.css b/src/components/basemap-gallery/basemap-gallery.css index 5d4e87f30..5fb2a40a9 100644 --- a/src/components/basemap-gallery/basemap-gallery.css +++ b/src/components/basemap-gallery/basemap-gallery.css @@ -1,3 +1,19 @@ +/** @license + * Copyright 2022 Esri + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + :host { display: block; } diff --git a/src/components/basemap-gallery/test/basemap-gallery.e2e.ts b/src/components/basemap-gallery/test/basemap-gallery.e2e.ts index c6fa07c74..5cd1acf8f 100644 --- a/src/components/basemap-gallery/test/basemap-gallery.e2e.ts +++ b/src/components/basemap-gallery/test/basemap-gallery.e2e.ts @@ -1,3 +1,19 @@ +/** @license + * Copyright 2022 Esri + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + import { newE2EPage } from '@stencil/core/testing'; xdescribe('basemap-gallery', () => { diff --git a/src/components/basemap-gallery/test/basemap-gallery.spec.tsx b/src/components/basemap-gallery/test/basemap-gallery.spec.tsx index 587769484..9a1271bef 100644 --- a/src/components/basemap-gallery/test/basemap-gallery.spec.tsx +++ b/src/components/basemap-gallery/test/basemap-gallery.spec.tsx @@ -1,3 +1,19 @@ +/** @license + * Copyright 2022 Esri + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + import { newSpecPage } from '@stencil/core/testing'; import { BasemapGallery } from '../basemap-gallery'; diff --git a/src/components/map-search/map-search.css b/src/components/map-search/map-search.css index ad9f32985..2858e8618 100644 --- a/src/components/map-search/map-search.css +++ b/src/components/map-search/map-search.css @@ -1,3 +1,19 @@ +/** @license + * Copyright 2022 Esri + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + :host { display: block; } diff --git a/src/components/map-search/test/map-search.e2e.ts b/src/components/map-search/test/map-search.e2e.ts index fcd093edf..ff697ad5a 100644 --- a/src/components/map-search/test/map-search.e2e.ts +++ b/src/components/map-search/test/map-search.e2e.ts @@ -1,3 +1,19 @@ +/** @license + * Copyright 2022 Esri + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + import { newE2EPage } from '@stencil/core/testing'; xdescribe('map-search', () => { diff --git a/src/components/map-search/test/map-search.spec.tsx b/src/components/map-search/test/map-search.spec.tsx index 57675f1a6..e34aaceb0 100644 --- a/src/components/map-search/test/map-search.spec.tsx +++ b/src/components/map-search/test/map-search.spec.tsx @@ -1,3 +1,19 @@ +/** @license + * Copyright 2022 Esri + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + import { newSpecPage } from '@stencil/core/testing'; import { MapSearch } from '../map-search'; From 3002ae549d6bbbd961217f75a0476a87430a493b Mon Sep 17 00:00:00 2001 From: John Hauck Date: Thu, 24 Aug 2023 15:29:26 -0600 Subject: [PATCH 159/406] add element --- src/components/basemap-gallery/basemap-gallery.tsx | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/components/basemap-gallery/basemap-gallery.tsx b/src/components/basemap-gallery/basemap-gallery.tsx index 162e54e06..a33c2b628 100644 --- a/src/components/basemap-gallery/basemap-gallery.tsx +++ b/src/components/basemap-gallery/basemap-gallery.tsx @@ -68,6 +68,11 @@ export class BasemapGallery { */ protected BasemapGallery: typeof import("esri/widgets/BasemapGallery"); + /** + * HTMLElement: The container div for the basemap gallery widget + */ + protected _basemapElement: HTMLElement; + //-------------------------------------------------------------------------- // // Watch handlers @@ -112,7 +117,7 @@ export class BasemapGallery { render() { return ( - +
{ this._basemapElement = el }} /> ); } @@ -150,7 +155,7 @@ export class BasemapGallery { if (view && this.BasemapGallery) { if (!this.basemapWidget) { this.basemapWidget = new this.BasemapGallery({ - container: "basemap-container", + container: this._basemapElement, view }); } else { From 1208c59192f84483157da487d15de55c0d85e5d2 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Thu, 24 Aug 2023 16:52:41 -0600 Subject: [PATCH 160/406] searchConfiguration is required to init search widget --- src/components/map-search/map-search.tsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/components/map-search/map-search.tsx b/src/components/map-search/map-search.tsx index 1090bf75b..5fb0bec5a 100644 --- a/src/components/map-search/map-search.tsx +++ b/src/components/map-search/map-search.tsx @@ -199,7 +199,7 @@ export class MapSearch { * @protected */ protected _initSearchWidget(): void { - if (this.mapView && this._searchElement && !this.searchWidget) { + if (this.mapView && this._searchElement && !this.searchWidget && this.searchConfiguration) { const searchConfiguration = this._getSearchConfig(this.searchConfiguration, this.mapView); @@ -232,7 +232,7 @@ export class MapSearch { view: __esri.MapView ): ISearchConfiguration { const INCLUDE_DEFAULT_SOURCES = "includeDefaultSources"; - const sources = searchConfiguration?.sources; + const sources = searchConfiguration.sources; if (sources?.length > 0) { searchConfiguration[INCLUDE_DEFAULT_SOURCES] = false; From f7c47e790e71d00c9839a880e3a017f704d96930 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Fri, 25 Aug 2023 13:39:03 -0600 Subject: [PATCH 161/406] add default sort --- src/components/layer-table/layer-table.tsx | 119 +++++++++++++++------ 1 file changed, 88 insertions(+), 31 deletions(-) diff --git a/src/components/layer-table/layer-table.tsx b/src/components/layer-table/layer-table.tsx index b77eec6ed..863816432 100644 --- a/src/components/layer-table/layer-table.tsx +++ b/src/components/layer-table/layer-table.tsx @@ -83,6 +83,11 @@ export class LayerTable { */ @State() _showOnlySelected = false; + /** + * boolean: When true the user has defined a sort order that should override the default order + */ + @State() _sortActive = false; + /** * Contains the translations for this component. * All UI strings should be defined here. @@ -165,6 +170,11 @@ export class LayerTable { */ protected _tableNode: HTMLDivElement; + /** + * bool: When true the table is being sorted + */ + protected _tableSorting = false; + //-------------------------------------------------------------------------- // // Watch handlers @@ -179,7 +189,6 @@ export class LayerTable { this._fetchingData = true; const mapLayerIds = await getMapLayerIds(this.mapView); this._layer = await getLayer(this.mapView, mapLayerIds[0]); - this._resetTable(); this.reactiveUtils.on( () => this.mapView, "click", @@ -196,10 +205,20 @@ export class LayerTable { @Watch("_layer") async _layerWatchHandler(): Promise { this._fetchingData = true; - this._resetTable(); + await this._resetTable(); this._fetchingData = false; } + /** + * When sortActive is false the user has not defined a sort and we should use the default sort + */ + @Watch("_sortActive") + async _sortActiveWatchHandler(): Promise { + if (!this._sortActive) { + await this._sortTable(); + } + } + //-------------------------------------------------------------------------- // // Methods (public) @@ -503,7 +522,6 @@ export class LayerTable { node: HTMLDivElement ) => { this._tableNode = node; - this._getTable(node); } /** @@ -513,33 +531,43 @@ export class LayerTable { * * @returns void */ - protected _getTable( + protected async _getTable( node: HTMLDivElement - ): void { + ): Promise { if (this._layer) { - this._table = new this.FeatureTable({ - layer: this._layer, - view: this.mapView, - //editingEnabled: this._editEnabled, - highlightEnabled: true, - multiSortEnabled: false, - visibleElements: { - header: false, - menu: false - }, - container: node - } as __esri.FeatureTableProperties); - - this._table.highlightIds.on("change", () => { - this._selectedIndexes = this._table.highlightIds.toArray(); - if (this._showOnlySelected) { - if (this._selectedIndexes.length > 0) { - this._table.filterBySelection(); - } else { - this._toggleShowSelected(); - } - } - this.featureSelectionChange.emit(this._selectedIndexes); + await this._layer.when(async () => { + this._table = new this.FeatureTable({ + layer: this._layer, + view: this.mapView, + //editingEnabled: this._editEnabled, + highlightEnabled: true, + multiSortEnabled: false, + visibleElements: { + header: false, + menu: false + }, + container: node + } as __esri.FeatureTableProperties); + + await this._table.when(async () => { + this._table.highlightIds.on("change", () => { + this._selectedIndexes = this._table.highlightIds.toArray(); + if (this._showOnlySelected) { + if (this._selectedIndexes.length > 0) { + this._table.filterBySelection(); + } else { + this._toggleShowSelected(); + } + } + this.featureSelectionChange.emit(this._selectedIndexes); + }); + + this.reactiveUtils.watch( + () => this._table.activeSortOrders, + (sortOrders) => { + this._sortActive = sortOrders.length > 0 && sortOrders[0]?.direction === "asc" || sortOrders[0]?.direction === "desc"; + }); + }); }); } } @@ -549,9 +577,10 @@ export class LayerTable { * * @returns void */ - protected _resetTable(): void { + protected async _resetTable(): Promise { if (this._layer && this._table) { this._clearSelection(); + this._allIds = []; this.featureSelectionChange.emit(this._selectedIndexes); this._table.layer = this._layer; this._editEnabled = this._layer.editingEnabled; @@ -559,6 +588,27 @@ export class LayerTable { this._table.editingEnabled = this._editEnabled; this._table.clearSelectionFilter(); this._showOnlySelected = false; + this._sortActive = false; + await this._sortTable(); + } + } + + /** + * Sort the objectid field in descending order + * + * @returns void + */ + protected async _sortTable(): Promise { + if (this._table && this._layer && !this._sortActive) { + if (!this._tableSorting) { + this._tableSorting = true; + await this._table.when(async () => { + await this._layer.when(async () => { + this._table.sortColumn(this._layer.objectIdField, "desc"); + this._tableSorting = false; + }); + }); + } } } @@ -762,14 +812,21 @@ export class LayerTable { const id: string = evt.detail[0]; if (id !== this._layer.id || this._allIds.length === 0) { this._fetchingData = true; - this._table.highlightIds.removeAll(); this._layer = await getLayer(this.mapView, id); this._allIds = await queryAllIds(this._layer) + if (!this._table) { + await this._getTable(this._tableNode); + } + await this._table.when(() => { + this._table.highlightIds.removeAll(); + }); this._selectedIndexes = []; this._table.layer = this._layer; this._table.render(); - this._fetchingData = false; } + this._sortActive = false; + await this._sortTable(); + this._fetchingData = false; } /** From 0392dd8869254cf83a555296f1dccca10265d170 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Fri, 25 Aug 2023 14:54:10 -0600 Subject: [PATCH 162/406] allow search without searchConfiguration --- src/components/map-search/map-search.tsx | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/src/components/map-search/map-search.tsx b/src/components/map-search/map-search.tsx index 5fb0bec5a..b31a1c06c 100644 --- a/src/components/map-search/map-search.tsx +++ b/src/components/map-search/map-search.tsx @@ -163,7 +163,6 @@ export class MapSearch { * Renders the component. */ render() { - console.log("render map search") return (
{ this._searchElement = el }} /> @@ -199,16 +198,20 @@ export class MapSearch { * @protected */ protected _initSearchWidget(): void { - if (this.mapView && this._searchElement && !this.searchWidget && this.searchConfiguration) { + if (this.mapView && this._searchElement && !this.searchWidget) { - const searchConfiguration = this._getSearchConfig(this.searchConfiguration, this.mapView); - - const searchOptions: __esri.widgetsSearchProperties = { + let searchOptions: __esri.widgetsSearchProperties = { view: this.mapView, container: this._searchElement, - searchTerm: this.searchTerm, - ...searchConfiguration + searchTerm: this.searchTerm }; + + if (this.searchConfiguration) { + const searchConfiguration = this._getSearchConfig(this.searchConfiguration, this.mapView); + searchOptions = { + ...searchConfiguration + } + } this.searchWidget = new this.Search(searchOptions); this.searchWidget.popupEnabled = this.popupEnabled; this.searchWidget.resultGraphicEnabled = this.resultGraphicEnabled; From cd2964051cbaca4b8ebf734068cf09a0725a679e Mon Sep 17 00:00:00 2001 From: John Hauck Date: Fri, 25 Aug 2023 15:12:46 -0600 Subject: [PATCH 163/406] add prop for default search --- src/components.d.ts | 16 ++++++++++++++++ .../crowdsource-manager/crowdsource-manager.tsx | 6 ++++++ src/components/crowdsource-manager/readme.md | 1 + src/components/layer-table/layer-table.tsx | 7 ++++++- src/components/layer-table/readme.md | 1 + 5 files changed, 30 insertions(+), 1 deletion(-) diff --git a/src/components.d.ts b/src/components.d.ts index 1e5bc8880..866fc4088 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -90,6 +90,10 @@ export namespace Components { * ISearchConfiguration: Configuration details for the Search widget */ "searchConfiguration": ISearchConfiguration; + /** + * boolean: when true the table will be sorted by objectid in descending order by default + */ + "showNewestFirst": boolean; /** * boolean: When true the selected feature will zoomed to in the map and the row will be scrolled to within the table */ @@ -188,6 +192,10 @@ export namespace Components { * esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html */ "mapView": __esri.MapView; + /** + * boolean: when true the table will be sorted by objectid in descending order by default + */ + "showNewestFirst": boolean; /** * boolean: When true the selected feature will zoomed to in the map and the row will be scrolled to within the table */ @@ -1145,6 +1153,10 @@ declare namespace LocalJSX { * ISearchConfiguration: Configuration details for the Search widget */ "searchConfiguration"?: ISearchConfiguration; + /** + * boolean: when true the table will be sorted by objectid in descending order by default + */ + "showNewestFirst"?: boolean; /** * boolean: When true the selected feature will zoomed to in the map and the row will be scrolled to within the table */ @@ -1229,6 +1241,10 @@ declare namespace LocalJSX { * Emitted on demand when a layer is selected */ "onFeatureSelectionChange"?: (event: LayerTableCustomEvent) => void; + /** + * boolean: when true the table will be sorted by objectid in descending order by default + */ + "showNewestFirst"?: boolean; /** * boolean: When true the selected feature will zoomed to in the map and the row will be scrolled to within the table */ diff --git a/src/components/crowdsource-manager/crowdsource-manager.tsx b/src/components/crowdsource-manager/crowdsource-manager.tsx index 626a8bb0b..689e69a0f 100644 --- a/src/components/crowdsource-manager/crowdsource-manager.tsx +++ b/src/components/crowdsource-manager/crowdsource-manager.tsx @@ -43,6 +43,11 @@ export class CrowdsourceManager { */ @Prop() classicGrid = false; + /** + * boolean: when true the table will be sorted by objectid in descending order by default + */ + @Prop() showNewestFirst = false; + /** * boolean: when true no header is displayed for the app */ @@ -434,6 +439,7 @@ export class CrowdsourceManager {
diff --git a/src/components/crowdsource-manager/readme.md b/src/components/crowdsource-manager/readme.md index dd7e272f5..196b1462d 100644 --- a/src/components/crowdsource-manager/readme.md +++ b/src/components/crowdsource-manager/readme.md @@ -14,6 +14,7 @@ | `hideMap` | `hide-map` | boolean: when true no map is displayed for the app | `boolean` | `false` | | `mapInfos` | -- | IMapInfo[]: array of map infos (name and id) | `IMapInfo[]` | `[]` | | `searchConfiguration` | -- | ISearchConfiguration: Configuration details for the Search widget | `ISearchConfiguration` | `undefined` | +| `showNewestFirst` | `show-newest-first` | boolean: when true the table will be sorted by objectid in descending order by default | `boolean` | `false` | | `zoomAndScrollToSelected` | `zoom-and-scroll-to-selected` | boolean: When true the selected feature will zoomed to in the map and the row will be scrolled to within the table | `boolean` | `false` | diff --git a/src/components/layer-table/layer-table.tsx b/src/components/layer-table/layer-table.tsx index 863816432..eab5fba7f 100644 --- a/src/components/layer-table/layer-table.tsx +++ b/src/components/layer-table/layer-table.tsx @@ -47,6 +47,11 @@ export class LayerTable { */ @Prop() mapView: __esri.MapView; + /** + * boolean: when true the table will be sorted by objectid in descending order by default + */ + @Prop() showNewestFirst: boolean; + /** * boolean: When true the selected feature will zoomed to in the map and the row will be scrolled to within the table */ @@ -600,7 +605,7 @@ export class LayerTable { */ protected async _sortTable(): Promise { if (this._table && this._layer && !this._sortActive) { - if (!this._tableSorting) { + if (!this._tableSorting && this.showNewestFirst) { this._tableSorting = true; await this._table.when(async () => { await this._layer.when(async () => { diff --git a/src/components/layer-table/readme.md b/src/components/layer-table/readme.md index ff12445dd..c65ce3bef 100644 --- a/src/components/layer-table/readme.md +++ b/src/components/layer-table/readme.md @@ -10,6 +10,7 @@ | Property | Attribute | Description | Type | Default | | ------------------------- | ----------------------------- | ------------------------------------------------------------------------------------------------------------------ | --------- | ----------- | | `mapView` | -- | esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html | `MapView` | `undefined` | +| `showNewestFirst` | `show-newest-first` | boolean: when true the table will be sorted by objectid in descending order by default | `boolean` | `undefined` | | `zoomAndScrollToSelected` | `zoom-and-scroll-to-selected` | boolean: When true the selected feature will zoomed to in the map and the row will be scrolled to within the table | `boolean` | `undefined` | From 298a141d63d2f57bf941028561896da3753b30f6 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Fri, 25 Aug 2023 15:22:23 -0600 Subject: [PATCH 164/406] update version --- CHANGELOG.md | 5 ++++- package-lock.json | 4 ++-- package.json | 2 +- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 2aeece778..32f2c4ee3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,8 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm ## [Unreleased] +## [0.6.8] - Aug 25th 2023 + ## [0.6.7] - Aug 21st 2023 ## [0.6.6] - Aug 18th 2023 @@ -202,4 +204,5 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm [0.6.5]: https://github.com/Esri/solution.js/compare/v0.6.4...v0.6.5 "v0.6.5" [0.6.6]: https://github.com/Esri/solution.js/compare/v0.6.5...v0.6.6 "v0.6.6" [0.6.7]: https://github.com/Esri/solution.js/compare/v0.6.6...v0.6.7 "v0.6.7" -[Unreleased]: https://github.com/Esri/solution.js/compare/v0.6.7...HEAD "Unreleased Changes" +[0.6.8]: https://github.com/Esri/solution.js/compare/v0.6.7...v0.6.8 "v0.6.8" +[Unreleased]: https://github.com/Esri/solution.js/compare/v0.6.8...HEAD "Unreleased Changes" diff --git a/package-lock.json b/package-lock.json index a7d8c6baf..4b8aef7a1 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@esri/solutions-components", - "version": "0.6.7", + "version": "0.6.8", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@esri/solutions-components", - "version": "0.6.7", + "version": "0.6.8", "license": "Apache-2.0", "dependencies": { "@esri/hub-common": "^12.37.1", diff --git a/package.json b/package.json index 09d7849a8..2d1e86c71 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@esri/solutions-components", - "version": "0.6.7", + "version": "0.6.8", "description": "Web Components for Esri's Solutions Applications", "main": "dist/index.cjs.js", "module": "dist/index.js", From 08a9a8aae14e466125ce7286166ef52a594cb950 Mon Sep 17 00:00:00 2001 From: Mike Tschudi Date: Mon, 28 Aug 2023 11:42:56 -0700 Subject: [PATCH 165/406] Complete merge --- package-lock.json | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) diff --git a/package-lock.json b/package-lock.json index c62a1b9e6..5d85c9aac 100644 --- a/package-lock.json +++ b/package-lock.json @@ -2306,7 +2306,6 @@ "version": "2.22.3", "resolved": "https://registry.npmjs.org/@stencil/core/-/core-2.22.3.tgz", "integrity": "sha512-kmVA0M/HojwsfkeHsifvHVIYe4l5tin7J5+DLgtl8h6WWfiMClND5K3ifCXXI2ETDNKiEk21p6jql3Fx9o2rng==", - "peer": true, "bin": { "stencil": "bin/stencil" }, @@ -5100,9 +5099,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001522", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001522.tgz", - "integrity": "sha512-TKiyTVZxJGhsTszLuzb+6vUZSjVOAhClszBr2Ta2k9IwtNBT/4dzmL6aywt0HCgEZlmwJzXJd8yNiob6HgwTRg==", + "version": "1.0.30001524", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001524.tgz", + "integrity": "sha512-Jj917pJtYg9HSJBF95HVX3Cdr89JUyLT4IZ8SvM5aDRni95swKgYi3TgYLH5hnGfPE/U1dg6IfZ50UsIlLkwSA==", "dev": true, "funding": [ { @@ -15671,8 +15670,7 @@ "@stencil/core": { "version": "2.22.3", "resolved": "https://registry.npmjs.org/@stencil/core/-/core-2.22.3.tgz", - "integrity": "sha512-kmVA0M/HojwsfkeHsifvHVIYe4l5tin7J5+DLgtl8h6WWfiMClND5K3ifCXXI2ETDNKiEk21p6jql3Fx9o2rng==", - "peer": true + "integrity": "sha512-kmVA0M/HojwsfkeHsifvHVIYe4l5tin7J5+DLgtl8h6WWfiMClND5K3ifCXXI2ETDNKiEk21p6jql3Fx9o2rng==" }, "focus-trap": { "version": "7.5.2", @@ -17853,9 +17851,9 @@ "dev": true }, "caniuse-lite": { - "version": "1.0.30001522", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001522.tgz", - "integrity": "sha512-TKiyTVZxJGhsTszLuzb+6vUZSjVOAhClszBr2Ta2k9IwtNBT/4dzmL6aywt0HCgEZlmwJzXJd8yNiob6HgwTRg==", + "version": "1.0.30001524", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001524.tgz", + "integrity": "sha512-Jj917pJtYg9HSJBF95HVX3Cdr89JUyLT4IZ8SvM5aDRni95swKgYi3TgYLH5hnGfPE/U1dg6IfZ50UsIlLkwSA==", "dev": true }, "canvg": { From 6805e7bdb5f1f6f6d2368d228af1cc3ebfbd2a89 Mon Sep 17 00:00:00 2001 From: Mike Tschudi Date: Mon, 28 Aug 2023 12:07:49 -0700 Subject: [PATCH 166/406] Refactor --- src/utils/downloadUtils.ts | 127 ++++++++++++--- src/utils/test/downloadUtils.spec.tsx | 219 ++++++++++++++++++++++---- 2 files changed, 290 insertions(+), 56 deletions(-) diff --git a/src/utils/downloadUtils.ts b/src/utils/downloadUtils.ts index e203e7bae..970479564 100644 --- a/src/utils/downloadUtils.ts +++ b/src/utils/downloadUtils.ts @@ -36,6 +36,11 @@ export interface IAttributeTypes { [attributeName: string]: string; } +export interface ILabelFormat { + type: "pattern" | "executor" | "unsupported"; + format: string | __esri.ArcadeExecutor | undefined; +} + export interface ILayerRelationshipQuery { layer: __esri.FeatureLayer; relatedQuery: IRelatedFeaturesQuery; @@ -188,12 +193,12 @@ export function removeDuplicateLabels( * * @param fieldInfos Layer's fieldInfos structure * @param bypassFieldVisiblity Indicates if the configured fieldInfo visibility property should be ignored - * @return Label spec with lines separated by `lineSeparatorChar` + * @return "pattern" label spec with lines separated by `lineSeparatorChar` */ export function _convertPopupFieldsToLabelSpec( fieldInfos: __esri.FieldInfo[], bypassFieldVisiblity = false -): string { +): ILabelFormat { const labelSpec: string[] = []; // Every visible attribute is used @@ -205,7 +210,10 @@ export function _convertPopupFieldsToLabelSpec( } ); - return labelSpec.join(lineSeparatorChar); + return { + type: "pattern", + format: labelSpec.join(lineSeparatorChar) + } as ILabelFormat; }; /** @@ -214,11 +222,11 @@ export function _convertPopupFieldsToLabelSpec( * * @param popupInfo Layer's popupInfo structure containing description, fieldInfos, and expressionInfos, e.g., * "
{NAME}
{STREET}
{CITY}, {STATE} {ZIP} 
" - * @return Label spec with lines separated by `lineSeparatorChar` + * @return "pattern" label spec with lines separated by `lineSeparatorChar` */ export function _convertPopupTextToLabelSpec( popupInfo: string, -): string { +): ILabelFormat { // Replace
variants with the line separator character popupInfo = popupInfo.replace(//gi, lineSeparatorChar); @@ -251,9 +259,53 @@ export function _convertPopupTextToLabelSpec( labelSpec = labelSpec.replace(/^\|/, ""); labelSpec = labelSpec.replace(/\|$/, ""); - return labelSpec.trim(); + return { + type: "pattern", + format: labelSpec.trim() + } as ILabelFormat; }; +/** + * Converts an Arcade expression of a custom popup into a multiline label specification. + * + * @param expressionInfo Structure containing expression and info about it + * @return Promise resolving to an "executor" label spec + */ +/* +export async function _convertPopupArcadeToLabelSpec( + expressionInfo: __esri.ElementExpressionInfo +): Promise { + // Generate an Arcade executor + const arcade = await import("@arcgis/core/arcade.js"); + const labelingProfile: __esri.Profile = { + variables: [ + { + name: "$feature", + type: "feature" + }, + { + name: "$layer", + type: "featureSet" + }, + { + name: "$datastore", + type: "featureSetCollection" + }, + { + name: "$map", + type: "featureSetCollection" + } + ] + }; + const executor = await arcade.createArcadeExecutor(expressionInfo.expression, labelingProfile); + + return Promise.resolve({ + type: "executor", + format: executor + } as ILabelFormat); +} +*/ + /** * Creates a title from a list of selection set names. * @@ -372,14 +424,19 @@ export function _getFieldNamesFromFieldExpressions( * all attributes are exported * @param attributeFormats Empty object to hold the formats for each attribute in a feature; the object is filled * with formats by this function - * @returns The format of a single label, e.g., "{NAME}|{STREET}|{CITY}, {STATE} {ZIP}" + * @returns A Promise resolving to the format of a single label, e.g., for ILabelFormat type "pattern": + * "{NAME}|{STREET}|{CITY}, {STATE} {ZIP}" */ -export function _getLabelFormat( +export async function _getLabelFormat( layer: __esri.FeatureLayer, formatUsingLayerPopup: boolean, attributeFormats: IAttributeFormats -): string { - let labelFormat: string; +): Promise { + let labelFormat: ILabelFormat = { + type: "unsupported", + format: undefined + }; + if (layer.popupEnabled) { layer.popupTemplate.fieldInfos.forEach( // Extract any format info that we have @@ -390,27 +447,32 @@ export function _getLabelFormat( } ); - // What data fields are used in the labels? - // Example labelFormat: ['{NAME}', '{STREET}', '{CITY}, {STATE} {ZIP}'] + // What is the nature of the label content? + // Fields list if (formatUsingLayerPopup && layer.popupTemplate?.content[0]?.type === "fields") { labelFormat = _convertPopupFieldsToLabelSpec(layer.popupTemplate.fieldInfos); // If popup is configured with "no attribute information", then no fields will visible - if (labelFormat.length === 0) { + if ((labelFormat.format as string).length === 0) { // Can we use the popup title? labelFormat = layer.popupTemplate.title && typeof layer.popupTemplate.title === "string" ? - layer.popupTemplate.title + { type: "pattern", format: layer.popupTemplate.title } as ILabelFormat : // Otherwise revert to using attributes _convertPopupFieldsToLabelSpec(layer.popupTemplate.fieldInfos, true); } + // Example text: '

{name} {age} years  

started: {start}

' } else if (formatUsingLayerPopup && layer.popupTemplate?.content[0]?.type === "text") { labelFormat = _convertPopupTextToLabelSpec(layer.popupTemplate.content[0].text); + + // Example expression: 'var feat = $feature\nvar label = `\n\t${feat["name"]} ${feat["age"]} years
\n\tstarted: ${feat["start"]}\n`\n\nreturn { \n type : \'text\', \n text : label\n}', + //} else if (formatUsingLayerPopup && layer.popupTemplate?.content[0]?.type === "expression") { + // labelFormat = await _convertPopupArcadeToLabelSpec(layer.popupTemplate.content[0].expressionInfo); } } - return labelFormat; + return Promise.resolve(labelFormat); } /** @@ -519,16 +581,21 @@ export async function _prepareLabels( const attributeFormats: IAttributeFormats = {}; // Get the label formatting, if any - const labelFormat = _getLabelFormat(layer, formatUsingLayerPopup, attributeFormats); + const labelFormat: ILabelFormat = await _getLabelFormat(layer, formatUsingLayerPopup, attributeFormats); // Apply the label format - const labels = labelFormat ? + const labels = labelFormat.type === "unsupported" ? + // Export all attributes + await _prepareLabelsFromAll(featureSet, attributeTypes, attributeDomains, includeHeaderNames) + : labelFormat.type == "pattern" ? // Export attributes in format - await _prepareLabelsFromSet(featureSet, attributeTypes, attributeDomains, - attributeFormats, labelFormat, includeHeaderNames) + await _prepareLabelsFromPattern(featureSet, attributeTypes, attributeDomains, + attributeFormats, labelFormat.format as string, includeHeaderNames) : - // Export all attributes - await _prepareLabelsFromAll(featureSet, attributeTypes, attributeDomains, includeHeaderNames); + // Export attributes in expression + await _prepareLabelsUsingExecutor(); + //await _prepareLabelsUsingExecutor(featureSet, attributeTypes, attributeDomains, + // attributeFormats, labelFormat.format as __esri.ArcadeExecutor, includeHeaderNames); return Promise.resolve(labels); } @@ -587,7 +654,7 @@ export async function _prepareLabelsFromAll( * @param includeHeaderNames Add the label format at the front of the list of generated labels * @returns Promise resolving with list of labels, each of which is a list of label lines */ -export async function _prepareLabelsFromSet( +export async function _prepareLabelsFromPattern( featureSet: __esri.Graphic[], attributeTypes: IAttributeTypes, attributeDomains: IAttributeDomains, @@ -635,4 +702,20 @@ export async function _prepareLabelsFromSet( return Promise.resolve(labels); } +export async function _prepareLabelsUsingExecutor( + /* + featureSet: __esri.Graphic[], + attributeTypes: IAttributeTypes, + attributeDomains: IAttributeDomains, + attributeFormats: IAttributeFormats, + labelFormat: __esri.ArcadeExecutor, + includeHeaderNames = false + */ +): Promise { + //const arcade = await import("@arcgis/core/arcade.js"); + const labels: string[][] = undefined;//??? + + return Promise.resolve(labels); +} + //#endregion diff --git a/src/utils/test/downloadUtils.spec.tsx b/src/utils/test/downloadUtils.spec.tsx index ad754c397..21a49fd71 100644 --- a/src/utils/test/downloadUtils.spec.tsx +++ b/src/utils/test/downloadUtils.spec.tsx @@ -19,6 +19,7 @@ import * as downloadUtils from "../downloadUtils"; describe("downloadUtils", () => { describe('removeDuplicateLabels', () => { + it('should remove duplicate labels', () => { const labels = [ ['Label 1', 'Value 1'], @@ -31,6 +32,7 @@ describe("downloadUtils", () => { ['Label 2', 'Value 2'] ]); }); + }); describe("_convertPopupFieldsToLabelSpec", () => { @@ -45,8 +47,10 @@ describe("downloadUtils", () => { const bypassFieldVisiblity = false; const expectedLabelSpec = "{A}|{B}|{D}"; - const labelSpec = downloadUtils._convertPopupFieldsToLabelSpec(fieldInfos, bypassFieldVisiblity); - expect(labelSpec).toEqual(expectedLabelSpec); + const result: downloadUtils.ILabelFormat = + downloadUtils._convertPopupFieldsToLabelSpec(fieldInfos, bypassFieldVisiblity); + expect(result.type).toEqual("pattern"); + expect(result.format).toEqual(expectedLabelSpec); }); it("handles fieldname ignoring visibility", () => { @@ -59,8 +63,10 @@ describe("downloadUtils", () => { const bypassFieldVisiblity = true; const expectedLabelSpec = "{A}|{B}|{C}|{D}"; - const labelSpec = downloadUtils._convertPopupFieldsToLabelSpec(fieldInfos, bypassFieldVisiblity); - expect(labelSpec).toEqual(expectedLabelSpec); + const result: downloadUtils.ILabelFormat = + downloadUtils._convertPopupFieldsToLabelSpec(fieldInfos, bypassFieldVisiblity); + expect(result.type).toEqual("pattern"); + expect(result.format).toEqual(expectedLabelSpec); }); }); @@ -71,52 +77,126 @@ describe("downloadUtils", () => { const popupInfo = "
{NAME}
{STREET}
{CITY}, {STATE} {ZIP} 
"; const expectedLabelSpec = "{NAME}|{STREET}|{CITY}, {STATE} {ZIP}"; - const labelSpec = downloadUtils._convertPopupTextToLabelSpec(popupInfo); - expect(labelSpec).toEqual(expectedLabelSpec); + const result: downloadUtils.ILabelFormat = downloadUtils._convertPopupTextToLabelSpec(popupInfo); + expect(result.type).toEqual("pattern"); + expect(result.format).toEqual(expectedLabelSpec); }); it("handles

", () => { const popupInfo = "

{NAME}

{STREET}

{CITY}, {STATE} {ZIP}

"; const expectedLabelSpec = "{NAME}|{STREET}|{CITY}, {STATE} {ZIP}"; - const labelSpec = downloadUtils._convertPopupTextToLabelSpec(popupInfo); - expect(labelSpec).toEqual(expectedLabelSpec); + const result: downloadUtils.ILabelFormat = downloadUtils._convertPopupTextToLabelSpec(popupInfo); + expect(result.type).toEqual("pattern"); + expect(result.format).toEqual(expectedLabelSpec); }); it("handles popup's use of \xA0", () => { - const popupInfo = "
{NAME}
{STREET}
{CITY},\xA0{STATE}\xA0{ZIP}\xA0
"; + const popupInfo = + "
{NAME}
{STREET}
{CITY},\xA0{STATE}\xA0{ZIP}\xA0
"; const expectedLabelSpec = "{NAME}|{STREET}|{CITY}, {STATE} {ZIP}"; - const labelSpec = downloadUtils._convertPopupTextToLabelSpec(popupInfo); - expect(labelSpec).toEqual(expectedLabelSpec); + const result: downloadUtils.ILabelFormat = downloadUtils._convertPopupTextToLabelSpec(popupInfo); + expect(result.type).toEqual("pattern"); + expect(result.format).toEqual(expectedLabelSpec); }); it("removes newlines and blank lines, and trims each line", () => { - const popupInfo = " \n\n {NAME} \n \n\n {STREET}\n{CITY}, {STATE} {ZIP}\n\n \n "; + const popupInfo = + " \n\n {NAME} \n \n\n {STREET}\n{CITY}, {STATE} {ZIP}\n\n \n "; const expectedLabelSpec = "{NAME}|{STREET}|{CITY}, {STATE} {ZIP}"; - const labelSpec = downloadUtils._convertPopupTextToLabelSpec(popupInfo); - expect(labelSpec).toEqual(expectedLabelSpec); + const result: downloadUtils.ILabelFormat = downloadUtils._convertPopupTextToLabelSpec(popupInfo); + expect(result.type).toEqual("pattern"); + expect(result.format).toEqual(expectedLabelSpec); }); it("removes extra HTML", () => { - const popupInfo = "\n
{NAME}
{STREET}
{CITY},\xA0{STATE}\xA0{ZIP}\xA0
\n"; + const popupInfo = + "\n
{NAME}
{STREET}
{CITY},\xA0{STATE}\xA0{ZIP}\xA0
\n"; const expectedLabelSpec = "{NAME}|{STREET}|{CITY}, {STATE} {ZIP}"; - const labelSpec = downloadUtils._convertPopupTextToLabelSpec(popupInfo); - expect(labelSpec).toEqual(expectedLabelSpec); + const result: downloadUtils.ILabelFormat = downloadUtils._convertPopupTextToLabelSpec(popupInfo); + expect(result.type).toEqual("pattern"); + expect(result.format).toEqual(expectedLabelSpec); }); it("handles some special characters", () => { - const popupInfo = "
<{NAME}>
{STREET}
{CITY}, {STATE} {ZIP}
"; + const popupInfo = + "
<{NAME}>
{STREET}
{CITY}, {STATE} {ZIP}
"; const expectedLabelSpec = "<{NAME}>|{STREET}|{CITY}, {STATE} {ZIP}"; - const labelSpec = downloadUtils._convertPopupTextToLabelSpec(popupInfo); - expect(labelSpec).toEqual(expectedLabelSpec); + const result: downloadUtils.ILabelFormat = downloadUtils._convertPopupTextToLabelSpec(popupInfo); + expect(result.type).toEqual("pattern"); + expect(result.format).toEqual(expectedLabelSpec); }); }); + /* + describe("_convertPopupArcadeToLabelSpec", () => { + + //jest.spyOn(utils, "default").mockImplementation(() => { return {Promise}}); // 1 + //jest.spyOn(utils, "default").mockImplementation(() => Promise); // 2 + //jest.mock("../../../node_modules/esri-loader/dist/esm/utils/index.js", () => {{Promise}}); + //jest.mock("../../../node_modules/esri-loader/dist/esm/utils/index.js", () => Promise); + //jest.mock("../../../node_modules/esri-loader/dist/esm/utils", () => {{Promise}}); + //jest.mock("../../../node_modules/esri-loader/dist/esm/utils", () => {{Promise: Promise}}); + //jest.mock("../../../node_modules/esri-loader/dist/esm/utils", () => Promise); + + it("handles
variants", async () => { + //console.log("global.Promise", global.Promise); + //console.log("window.Promise 1", window.Promise); + //utils.Promise = window.Promise = global.Promise; + //console.log("window.Promise 2", window.Promise); + //console.log("utils 1", utils, utils.Promise); + //jest.resetModules(); + //console.log("window.Promise 3", window.Promise); + //jest.mock("../../../node_modules/esri-loader/dist/esm/utils", () => {{Promise}}); + //jest.mock("../../../node_modules/esri-loader/dist/esm/utils/index.js", () => {{Promise}}); + //jest.mock("../../../node_modules/esri-loader/dist/esm/utils", () => Promise); + //jest.mock("../../../node_modules/esri-loader/dist/esm/utils/index.js", () => Promise); + //jest.spyOn(utils, "Promise").mockImplementation(Promise[Symbol.species]); // 2 + //jest.spyOn(utils, "Promise").mockImplementation( + // (executor: (resolve: (value: unknown) => void, reject: (reason?: any) => void) => void) => new Promise(executor) + //); + //jest.mock("../../../node_modules/esri-loader/dist/esm/utils/index.js", + // ((executor: (resolve: (value: unknown) => void, reject: (reason?: any) => void) => void) => new Promise(executor)) + //); + //jest.mock("../../../node_modules/esri-loader/dist/esm/utils", () => Promise); + //jest.mock("../../../node_modules/esri-loader/dist/esm/utils", (executor) => new PromiseConstructor(executor)); + //jest.mock("../../../node_modules/esri-loader/dist/esm/utils", () => Promise); + //jest.mock("../../../node_modules/esri-loader/dist/esm/utils/index.js", () => Promise); + //jest.mock("../../../node_modules/esri-loader/dist/esm/utils/index.js", () => { return (executor) => new Promise(executor) }); + //jest.mock("../../../node_modules/esri-loader/dist/esm/utils/index.js", () => { return { Promise: (executor) => new Promise(executor) }}); + //jest.mock("../../../node_modules/esri-loader/dist/esm/utils", () => { return { Promise: (executor) => new Promise(executor) }}); + //jest.mock("../../../node_modules/esri-loader/dist/esm/utils", () => { return { Promise: Promise }}); + //jest.mock("../../../node_modules/esri-loader/dist/esm/utils", () => { return { Promise: Promise }}); + //jest.mock("../../../node_modules/esri-loader/dist/esm/utils/index.js", () => { return { Promise: Promise }}); + //console.log("utils 2", utils, utils.Promise); + //console.log("typeof window", typeof window); + //console.log("window['Promise']", window['Promise']); + + //jest.mock("../../../node_modules/esri-loader/dist/esm/utils", () => { return { + // Promise: jest.fn().mockImplementation(() => { return window['Promise']; }) + //} }); + + const expressionInfo: __esri.ElementExpressionInfo = { + expression: 'var feat = $feature\nvar label = `\n\t${feat["name"]} ${feat["age"]} years
\n\tstarted: ${feat["start"]}\n`\n\nreturn { \n type : \'text\', \n text : label\n}' + } as any; + + //console.log("window.Promise 4", window.Promise);//??? + //console.log("utils.Promise", utils.Promise);//??? + const result: downloadUtils.ILabelFormat = await downloadUtils._convertPopupArcadeToLabelSpec(expressionInfo); + expect(result.type).toEqual("executor"); + expect(typeof result.format).toEqual("ArcadeExecutor"); + + //jest.clearAllMocks(); + }); + + }); + */ + describe("_createFilename", () => { it("handles no selection set names", () => { @@ -146,15 +226,18 @@ describe("downloadUtils", () => { }); describe("_getExpressionsFromLabel", () => { + it("handles a label with ASCII expression names", () => { const labelSpec = "{expression/expr0}\n{OWNERNM1}\n{PSTLADDRESS}\n{PSTLCITY}, {PSTLSTATE} {PSTLZIP5}"; const expectedExpressions = ["{expression/expr0}"]; const expressions = downloadUtils._getExpressionsFromLabel(labelSpec); expect(expressions).toEqual(expectedExpressions); }); + }); describe("_getFieldExpressionsFromLabel", () => { + it("handles a label with ASCII field names", () => { const labelSpec = "{expression/expr0}\n{OWNERNM1}\n{PSTLADDRESS}\n{PSTLCITY}, {PSTLSTATE} {PSTLZIP5}"; const expectedFields = ["{OWNERNM1}", "{PSTLADDRESS}", "{PSTLCITY}", "{PSTLSTATE}", "{PSTLZIP5}"]; @@ -434,17 +517,21 @@ describe("downloadUtils", () => { const fields = downloadUtils._getFieldExpressionsFromLabel(labelSpec); expect(fields).toEqual(expectedFields); }); + }); describe('_getFieldNamesFromFieldExpressions', () => { + it("extracts field names from field name expressions", () => { const expressions = ["{NAME}", "{STREET}", "{CITY}", "{STATE}", "{ZIP}"]; const names = ["NAME", "STREET", "CITY", "STATE", "ZIP"]; expect(downloadUtils._getFieldNamesFromFieldExpressions(expressions)).toEqual(names); }); + }); describe('_getLabelFormat', () => { + it('should prepare labels from visible popup fields', async () => { const popupTemplate = { title: '{name}', @@ -476,8 +563,10 @@ describe("downloadUtils", () => { const formatUsingLayerPopup = true; const attributeFormats: downloadUtils.IAttributeFormats = {}; - const result = await downloadUtils._getLabelFormat(layer as any, formatUsingLayerPopup, attributeFormats); - expect(result).toEqual('{name}|{age}|{start}'); + const result: downloadUtils.ILabelFormat = + await downloadUtils._getLabelFormat(layer as any, formatUsingLayerPopup, attributeFormats); + expect(result.type).toEqual('pattern'); + expect(result.format).toEqual('{name}|{age}|{start}'); }); it('should prepare labels from a partial set of visible popup fields', async () => { @@ -511,8 +600,10 @@ describe("downloadUtils", () => { const formatUsingLayerPopup = true; const attributeFormats: downloadUtils.IAttributeFormats = {}; - const result = await downloadUtils._getLabelFormat(layer as any, formatUsingLayerPopup, attributeFormats); - expect(result).toEqual('{start}'); + const result: downloadUtils.ILabelFormat = + await downloadUtils._getLabelFormat(layer as any, formatUsingLayerPopup, attributeFormats); + expect(result.type).toEqual('pattern'); + expect(result.format).toEqual('{start}'); }); it('should prepare labels from invisible popup fields, but title is present', async () => { @@ -546,8 +637,10 @@ describe("downloadUtils", () => { const formatUsingLayerPopup = true; const attributeFormats: downloadUtils.IAttributeFormats = {}; - const result = await downloadUtils._getLabelFormat(layer as any, formatUsingLayerPopup, attributeFormats); - expect(result).toEqual('{name}'); + const result: downloadUtils.ILabelFormat = + await downloadUtils._getLabelFormat(layer as any, formatUsingLayerPopup, attributeFormats); + expect(result.type).toEqual('pattern'); + expect(result.format).toEqual('{name}'); }); it('should prepare labels from invisible popup fields with no title present', async () => { @@ -581,8 +674,10 @@ describe("downloadUtils", () => { const formatUsingLayerPopup = true; const attributeFormats: downloadUtils.IAttributeFormats = {}; - const result = await downloadUtils._getLabelFormat(layer as any, formatUsingLayerPopup, attributeFormats); - expect(result).toEqual('{name}|{age}|{start}'); + const result: downloadUtils.ILabelFormat = + await downloadUtils._getLabelFormat(layer as any, formatUsingLayerPopup, attributeFormats); + expect(result.type).toEqual('pattern'); + expect(result.format).toEqual('{name}|{age}|{start}'); }); it('should prepare labels from popup text', async () => { @@ -617,9 +712,56 @@ describe("downloadUtils", () => { const formatUsingLayerPopup = true; const attributeFormats: downloadUtils.IAttributeFormats = {}; - const result = await downloadUtils._getLabelFormat(layer as any, formatUsingLayerPopup, attributeFormats); - expect(result).toEqual('{name} {age} years|started: {start}'); + const result: downloadUtils.ILabelFormat = + await downloadUtils._getLabelFormat(layer as any, formatUsingLayerPopup, attributeFormats); + expect(result.type).toEqual('pattern'); + expect(result.format).toEqual('{name} {age} years|started: {start}'); + }); + + /* + it('should prepare labels from popup Arcade', async () => { + const popupTemplate = { + title: '{name}', + content: [{ + type: 'expression', + expressionInfo: { + title: 'New expression', + expression: 'var feat = $feature\nvar label = `\n\t${feat["name"]} ${feat["age"]} years
\n\tstarted: ${feat["start"]}\n`\n\nreturn { \n type : \'text\', \n text : label\n}', + returnType: 'dictionary' + } + }], + fieldInfos: [{ + fieldName: 'name', + visible: true + }, { + fieldName: 'age', + format: { + places: 0, + digitSeparator: true + }, + visible: true + }, { + fieldName: 'start', + format: { + dateFormat: 'short-date' + }, + visible: true + }] + }; + const layer = { + popupEnabled: true, + popupTemplate + }; + const formatUsingLayerPopup = true; + + const attributeFormats: downloadUtils.IAttributeFormats = {}; + const result: downloadUtils.ILabelFormat = + await downloadUtils._getLabelFormat(layer as any, formatUsingLayerPopup, attributeFormats); + expect(result.type).toEqual('executor'); + console.log(JSON.stringify(result, null, 2));//??? + expect(result.format).toEqual('{name} {age} years|started: {start}'); }); + */ it('should prepare labels without popup; formatUsingLayerPopup is true', async () => { const layer = { @@ -638,8 +780,10 @@ describe("downloadUtils", () => { const formatUsingLayerPopup = true; const attributeFormats: downloadUtils.IAttributeFormats = {}; - const result = await downloadUtils._getLabelFormat(layer, formatUsingLayerPopup, attributeFormats); - expect(result).toBeUndefined(); + const result: downloadUtils.ILabelFormat = + await downloadUtils._getLabelFormat(layer as any, formatUsingLayerPopup, attributeFormats); + expect(result.type).toEqual('unsupported'); + expect(result.format).toBeUndefined(); }); it('should prepare labels without popup; formatUsingLayerPopup is false', async () => { @@ -659,12 +803,16 @@ describe("downloadUtils", () => { const formatUsingLayerPopup = false; const attributeFormats: downloadUtils.IAttributeFormats = {}; - const result = await downloadUtils._getLabelFormat(layer, formatUsingLayerPopup, attributeFormats); - expect(result).toBeUndefined(); + const result: downloadUtils.ILabelFormat = + await downloadUtils._getLabelFormat(layer as any, formatUsingLayerPopup, attributeFormats); + expect(result.type).toEqual('unsupported'); + expect(result.format).toBeUndefined(); }); + }); describe('_getSelectionSetNames', () => { + it('should return selection set names for matching IDs', () => { const exportInfos = { 'layer1': { @@ -690,9 +838,11 @@ describe("downloadUtils", () => { const result = downloadUtils._getSelectionSetNames(exportInfos as any, /^foo/); expect(result).toEqual([]); }); + }); describe('_prepareAttributeValue', () => { + it('should format date attributes using the specified date format', () => { const attributeValue = new Date('2022-01-01T00:00:00.000Z'); const attributeType = 'date'; @@ -763,6 +913,7 @@ describe("downloadUtils", () => { const result = downloadUtils._prepareAttributeValue(attributeValue, attributeType, attributeDomain as any, attributeFormat, intl); expect(result).toEqual('Value 1'); }); + }); }); From 3c67d9bd6ed9017f19faff40ecd8040c7011916a Mon Sep 17 00:00:00 2001 From: Mike Tschudi Date: Mon, 28 Aug 2023 12:24:57 -0700 Subject: [PATCH 167/406] Update packages --- package-lock.json | 330 ++++++++++++++++++++++++++-------------------- package.json | 11 +- 2 files changed, 188 insertions(+), 153 deletions(-) diff --git a/package-lock.json b/package-lock.json index 5d85c9aac..c816d0dbf 100644 --- a/package-lock.json +++ b/package-lock.json @@ -39,13 +39,13 @@ "autoprefixer": "10.4.4", "babel-jest": "^29.6.2", "dotenv": "^10.0.0", - "eslint": "^8.11.0", + "eslint": "^8.47.0", "eslint-config-prettier": "8.3.0", "eslint-plugin-jest": "25.3.0", "eslint-plugin-prettier": "4.0.0", "eslint-plugin-react": "7.27.1", "eslint-plugin-unicorn": "39.0.0", - "esri-loader": "3.4.0", + "esri-loader": "^3.7.0", "form-request-submit-polyfill": "^2.0.0", "gh-release": "^6.0.3", "jest": "^27.0.3", @@ -69,6 +69,15 @@ "@esri/calcite-components": "^1.6.0" } }, + "node_modules/@aashutoshrathi/word-wrap": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz", + "integrity": "sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/@ampproject/remapping": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", @@ -2127,15 +2136,39 @@ "@jridgewell/sourcemap-codec": "^1.4.10" } }, + "node_modules/@eslint-community/eslint-utils": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", + "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==", + "dev": true, + "dependencies": { + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" + } + }, + "node_modules/@eslint-community/regexpp": { + "version": "4.8.0", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.8.0.tgz", + "integrity": "sha512-JylOEEzDiOryeUnFbQz+oViCXS0KsvR1mvHkoMiu5+UiBvy+RYX7tzlIIIEstF/gVa2tj9AQXk3dgnxv6KxhFg==", + "dev": true, + "engines": { + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + } + }, "node_modules/@eslint/eslintrc": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.4.1.tgz", - "integrity": "sha512-XXrH9Uarn0stsyldqDYq8r++mROmWRI1xKMXa640Bb//SY1+ECYX6VzT6Lcx5frD0V30XieqJ0oX9I2Xj5aoMA==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.2.tgz", + "integrity": "sha512-+wvgpDsrB1YqAMdEUCcnTlpfVBH7Vqn6A/NT3D8WVXFIaKMlErPIZT3oCIAVCOtarRpMtelZLqJeU3t7WY6X6g==", "dev": true, "dependencies": { "ajv": "^6.12.4", "debug": "^4.3.2", - "espree": "^9.4.0", + "espree": "^9.6.0", "globals": "^13.19.0", "ignore": "^5.2.0", "import-fresh": "^3.2.1", @@ -2150,6 +2183,15 @@ "url": "https://opencollective.com/eslint" } }, + "node_modules/@eslint/js": { + "version": "8.48.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.48.0.tgz", + "integrity": "sha512-ZSjtmelB7IJfWD2Fvb7+Z+ChTIKWq6kjda95fLcQKNS5aheVHn4IkfgRQE3sIIzTcSLwLcLZUD9UBt+V7+h+Pw==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, "node_modules/@esri/arcgis-html-sanitizer": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/@esri/arcgis-html-sanitizer/-/arcgis-html-sanitizer-3.0.1.tgz", @@ -2489,9 +2531,9 @@ "integrity": "sha512-m0G6wlnhm/AX0H12IOWtK8gASEMffnX08RtKkCgTdHb9JpHKGloI7icFfLg9ZmQeavcvR0PKmzxClyuFPSjKWw==" }, "node_modules/@humanwhocodes/config-array": { - "version": "0.11.8", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.8.tgz", - "integrity": "sha512-UybHIJzJnR5Qc/MsD9Kr+RpO2h+/P1GhOwdiLPXK5TWk5sgTdu88bTD9UP+CKbPPh5Rni1u0GjAdYQLemG8g+g==", + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.10.tgz", + "integrity": "sha512-KVVjQmNUepDVGXNuoRRdmmEjruj0KfiGSbS8LVc12LMsWDQzRXJ0qdhN8L8uUigKpfEHRhlaQFY0ib1tnUbNeQ==", "dev": true, "dependencies": { "@humanwhocodes/object-schema": "^1.2.1", @@ -4291,9 +4333,9 @@ "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==" }, "node_modules/acorn": { - "version": "8.8.2", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.2.tgz", - "integrity": "sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==", + "version": "8.10.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz", + "integrity": "sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==", "dev": true, "bin": { "acorn": "bin/acorn" @@ -6173,49 +6215,47 @@ } }, "node_modules/eslint": { - "version": "8.33.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.33.0.tgz", - "integrity": "sha512-WjOpFQgKK8VrCnAtl8We0SUOy/oVZ5NHykyMiagV1M9r8IFpIJX7DduK6n1mpfhlG7T1NLWm2SuD8QB7KFySaA==", + "version": "8.48.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.48.0.tgz", + "integrity": "sha512-sb6DLeIuRXxeM1YljSe1KEx9/YYeZFQWcV8Rq9HfigmdDEugjLEVEa1ozDjL6YDjBpQHPJxJzze+alxi4T3OLg==", "dev": true, "dependencies": { - "@eslint/eslintrc": "^1.4.1", - "@humanwhocodes/config-array": "^0.11.8", + "@eslint-community/eslint-utils": "^4.2.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.2", + "@eslint/js": "8.48.0", + "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", - "ajv": "^6.10.0", + "ajv": "^6.12.4", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", "debug": "^4.3.2", "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.1.1", - "eslint-utils": "^3.0.0", - "eslint-visitor-keys": "^3.3.0", - "espree": "^9.4.0", - "esquery": "^1.4.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.3", + "espree": "^9.6.1", + "esquery": "^1.4.2", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", "file-entry-cache": "^6.0.1", "find-up": "^5.0.0", "glob-parent": "^6.0.2", "globals": "^13.19.0", - "grapheme-splitter": "^1.0.4", + "graphemer": "^1.4.0", "ignore": "^5.2.0", - "import-fresh": "^3.0.0", "imurmurhash": "^0.1.4", "is-glob": "^4.0.0", "is-path-inside": "^3.0.3", - "js-sdsl": "^4.1.4", "js-yaml": "^4.1.0", "json-stable-stringify-without-jsonify": "^1.0.1", "levn": "^0.4.1", "lodash.merge": "^4.6.2", "minimatch": "^3.1.2", "natural-compare": "^1.4.0", - "optionator": "^0.9.1", - "regexpp": "^3.2.0", + "optionator": "^0.9.3", "strip-ansi": "^6.0.1", - "strip-json-comments": "^3.1.0", "text-table": "^0.2.0" }, "bin": { @@ -6441,18 +6481,21 @@ } }, "node_modules/eslint-visitor-keys": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", - "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==", + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, "node_modules/eslint/node_modules/eslint-scope": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz", - "integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==", + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", + "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", "dev": true, "dependencies": { "esrecurse": "^4.3.0", @@ -6460,6 +6503,9 @@ }, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, "node_modules/esm": { @@ -6471,14 +6517,14 @@ } }, "node_modules/espree": { - "version": "9.4.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.4.1.tgz", - "integrity": "sha512-XwctdmTO6SIvCzd9810yyNzIrOrqNYV9Koizx4C/mRhf9uq0o4yHoCEU/670pOxOL/MSraektvSAji79kX90Vg==", + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", + "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", "dev": true, "dependencies": { - "acorn": "^8.8.0", + "acorn": "^8.9.0", "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^3.3.0" + "eslint-visitor-keys": "^3.4.1" }, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -6501,9 +6547,9 @@ } }, "node_modules/esquery": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", - "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", + "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", "dev": true, "dependencies": { "estraverse": "^5.1.0" @@ -6525,9 +6571,9 @@ } }, "node_modules/esri-loader": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/esri-loader/-/esri-loader-3.4.0.tgz", - "integrity": "sha512-iS3SbBmrnr4TlUdAjyyVZD2yCud8AMZkyJcmYEVzTiE5wVUtdN8d9USp7XYtilgwkJe/eWR2f2G1+S58ESqLuQ==", + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/esri-loader/-/esri-loader-3.7.0.tgz", + "integrity": "sha512-cB1Sw9EQjtW4mtT7eFBjn/6VaaIWNTjmTd2asnnEyuZk1xVSFRMCfLZSBSjZM7ZarDcVu5WIjOP0t0MYVu4hVQ==", "dev": true }, "node_modules/estraverse": { @@ -7194,9 +7240,9 @@ } }, "node_modules/globals": { - "version": "13.20.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", - "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", + "version": "13.21.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.21.0.tgz", + "integrity": "sha512-ybyme3s4yy/t/3s35bewwXKOf7cvzfreG2lH0lZl0JB7I4GxRP2ghxOK/Nb9EkRXdbBXZLfq/p/0W2JUONB/Gg==", "dev": true, "dependencies": { "type-fest": "^0.20.2" @@ -7316,10 +7362,10 @@ "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", "dev": true }, - "node_modules/grapheme-splitter": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz", - "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==", + "node_modules/graphemer": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", + "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", "dev": true }, "node_modules/has": { @@ -10027,16 +10073,6 @@ "url": "https://github.com/chalk/supports-color?sponsor=1" } }, - "node_modules/js-sdsl": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.3.0.tgz", - "integrity": "sha512-mifzlm2+5nZ+lEcLJMoBK0/IH/bDg8XnJfd/Wq6IP+xoCjLZsTOnV2QpxlVbX9bMnkl5PdEjNtBJ9Cj1NjifhQ==", - "dev": true, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/js-sdsl" - } - }, "node_modules/js-tokens": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", @@ -10990,17 +11026,17 @@ } }, "node_modules/optionator": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", - "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", + "version": "0.9.3", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz", + "integrity": "sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==", "dev": true, "dependencies": { + "@aashutoshrathi/word-wrap": "^1.2.3", "deep-is": "^0.1.3", "fast-levenshtein": "^2.0.6", "levn": "^0.4.1", "prelude-ls": "^1.2.1", - "type-check": "^0.4.0", - "word-wrap": "^1.2.3" + "type-check": "^0.4.0" }, "engines": { "node": ">= 0.8.0" @@ -13824,15 +13860,6 @@ "node": ">=8" } }, - "node_modules/word-wrap": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", - "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/wrap-ansi": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", @@ -14039,6 +14066,12 @@ } }, "dependencies": { + "@aashutoshrathi/word-wrap": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz", + "integrity": "sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==", + "dev": true + }, "@ampproject/remapping": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", @@ -15511,15 +15544,30 @@ } } }, + "@eslint-community/eslint-utils": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", + "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==", + "dev": true, + "requires": { + "eslint-visitor-keys": "^3.3.0" + } + }, + "@eslint-community/regexpp": { + "version": "4.8.0", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.8.0.tgz", + "integrity": "sha512-JylOEEzDiOryeUnFbQz+oViCXS0KsvR1mvHkoMiu5+UiBvy+RYX7tzlIIIEstF/gVa2tj9AQXk3dgnxv6KxhFg==", + "dev": true + }, "@eslint/eslintrc": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.4.1.tgz", - "integrity": "sha512-XXrH9Uarn0stsyldqDYq8r++mROmWRI1xKMXa640Bb//SY1+ECYX6VzT6Lcx5frD0V30XieqJ0oX9I2Xj5aoMA==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.2.tgz", + "integrity": "sha512-+wvgpDsrB1YqAMdEUCcnTlpfVBH7Vqn6A/NT3D8WVXFIaKMlErPIZT3oCIAVCOtarRpMtelZLqJeU3t7WY6X6g==", "dev": true, "requires": { "ajv": "^6.12.4", "debug": "^4.3.2", - "espree": "^9.4.0", + "espree": "^9.6.0", "globals": "^13.19.0", "ignore": "^5.2.0", "import-fresh": "^3.2.1", @@ -15528,6 +15576,12 @@ "strip-json-comments": "^3.1.1" } }, + "@eslint/js": { + "version": "8.48.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.48.0.tgz", + "integrity": "sha512-ZSjtmelB7IJfWD2Fvb7+Z+ChTIKWq6kjda95fLcQKNS5aheVHn4IkfgRQE3sIIzTcSLwLcLZUD9UBt+V7+h+Pw==", + "dev": true + }, "@esri/arcgis-html-sanitizer": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/@esri/arcgis-html-sanitizer/-/arcgis-html-sanitizer-3.0.1.tgz", @@ -15817,9 +15871,9 @@ "integrity": "sha512-m0G6wlnhm/AX0H12IOWtK8gASEMffnX08RtKkCgTdHb9JpHKGloI7icFfLg9ZmQeavcvR0PKmzxClyuFPSjKWw==" }, "@humanwhocodes/config-array": { - "version": "0.11.8", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.8.tgz", - "integrity": "sha512-UybHIJzJnR5Qc/MsD9Kr+RpO2h+/P1GhOwdiLPXK5TWk5sgTdu88bTD9UP+CKbPPh5Rni1u0GjAdYQLemG8g+g==", + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.10.tgz", + "integrity": "sha512-KVVjQmNUepDVGXNuoRRdmmEjruj0KfiGSbS8LVc12LMsWDQzRXJ0qdhN8L8uUigKpfEHRhlaQFY0ib1tnUbNeQ==", "dev": true, "requires": { "@humanwhocodes/object-schema": "^1.2.1", @@ -17276,9 +17330,9 @@ "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==" }, "acorn": { - "version": "8.8.2", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.2.tgz", - "integrity": "sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==", + "version": "8.10.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz", + "integrity": "sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==", "dev": true }, "acorn-globals": { @@ -18676,56 +18730,54 @@ } }, "eslint": { - "version": "8.33.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.33.0.tgz", - "integrity": "sha512-WjOpFQgKK8VrCnAtl8We0SUOy/oVZ5NHykyMiagV1M9r8IFpIJX7DduK6n1mpfhlG7T1NLWm2SuD8QB7KFySaA==", + "version": "8.48.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.48.0.tgz", + "integrity": "sha512-sb6DLeIuRXxeM1YljSe1KEx9/YYeZFQWcV8Rq9HfigmdDEugjLEVEa1ozDjL6YDjBpQHPJxJzze+alxi4T3OLg==", "dev": true, "requires": { - "@eslint/eslintrc": "^1.4.1", - "@humanwhocodes/config-array": "^0.11.8", + "@eslint-community/eslint-utils": "^4.2.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.2", + "@eslint/js": "8.48.0", + "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", - "ajv": "^6.10.0", + "ajv": "^6.12.4", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", "debug": "^4.3.2", "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.1.1", - "eslint-utils": "^3.0.0", - "eslint-visitor-keys": "^3.3.0", - "espree": "^9.4.0", - "esquery": "^1.4.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.3", + "espree": "^9.6.1", + "esquery": "^1.4.2", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", "file-entry-cache": "^6.0.1", "find-up": "^5.0.0", "glob-parent": "^6.0.2", "globals": "^13.19.0", - "grapheme-splitter": "^1.0.4", + "graphemer": "^1.4.0", "ignore": "^5.2.0", - "import-fresh": "^3.0.0", "imurmurhash": "^0.1.4", "is-glob": "^4.0.0", "is-path-inside": "^3.0.3", - "js-sdsl": "^4.1.4", "js-yaml": "^4.1.0", "json-stable-stringify-without-jsonify": "^1.0.1", "levn": "^0.4.1", "lodash.merge": "^4.6.2", "minimatch": "^3.1.2", "natural-compare": "^1.4.0", - "optionator": "^0.9.1", - "regexpp": "^3.2.0", + "optionator": "^0.9.3", "strip-ansi": "^6.0.1", - "strip-json-comments": "^3.1.0", "text-table": "^0.2.0" }, "dependencies": { "eslint-scope": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz", - "integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==", + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", + "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", "dev": true, "requires": { "esrecurse": "^4.3.0", @@ -18878,9 +18930,9 @@ } }, "eslint-visitor-keys": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", - "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==", + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", "dev": true }, "esm": { @@ -18889,14 +18941,14 @@ "integrity": "sha512-U1suiZ2oDVWv4zPO56S0NcR5QriEahGtdN2OR6FiOG4WJvcjBVFB0qI4+eKoWFH483PKGuLuu6V8Z4T5g63UVA==" }, "espree": { - "version": "9.4.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.4.1.tgz", - "integrity": "sha512-XwctdmTO6SIvCzd9810yyNzIrOrqNYV9Koizx4C/mRhf9uq0o4yHoCEU/670pOxOL/MSraektvSAji79kX90Vg==", + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", + "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", "dev": true, "requires": { - "acorn": "^8.8.0", + "acorn": "^8.9.0", "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^3.3.0" + "eslint-visitor-keys": "^3.4.1" } }, "esprima": { @@ -18906,9 +18958,9 @@ "dev": true }, "esquery": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", - "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", + "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", "dev": true, "requires": { "estraverse": "^5.1.0" @@ -18924,9 +18976,9 @@ } }, "esri-loader": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/esri-loader/-/esri-loader-3.4.0.tgz", - "integrity": "sha512-iS3SbBmrnr4TlUdAjyyVZD2yCud8AMZkyJcmYEVzTiE5wVUtdN8d9USp7XYtilgwkJe/eWR2f2G1+S58ESqLuQ==", + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/esri-loader/-/esri-loader-3.7.0.tgz", + "integrity": "sha512-cB1Sw9EQjtW4mtT7eFBjn/6VaaIWNTjmTd2asnnEyuZk1xVSFRMCfLZSBSjZM7ZarDcVu5WIjOP0t0MYVu4hVQ==", "dev": true }, "estraverse": { @@ -19442,9 +19494,9 @@ } }, "globals": { - "version": "13.20.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", - "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", + "version": "13.21.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.21.0.tgz", + "integrity": "sha512-ybyme3s4yy/t/3s35bewwXKOf7cvzfreG2lH0lZl0JB7I4GxRP2ghxOK/Nb9EkRXdbBXZLfq/p/0W2JUONB/Gg==", "dev": true, "requires": { "type-fest": "^0.20.2" @@ -19533,10 +19585,10 @@ "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", "dev": true }, - "grapheme-splitter": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz", - "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==", + "graphemer": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", + "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", "dev": true }, "has": { @@ -21661,12 +21713,6 @@ } } }, - "js-sdsl": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.3.0.tgz", - "integrity": "sha512-mifzlm2+5nZ+lEcLJMoBK0/IH/bDg8XnJfd/Wq6IP+xoCjLZsTOnV2QpxlVbX9bMnkl5PdEjNtBJ9Cj1NjifhQ==", - "dev": true - }, "js-tokens": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", @@ -22414,17 +22460,17 @@ } }, "optionator": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", - "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", + "version": "0.9.3", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz", + "integrity": "sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==", "dev": true, "requires": { + "@aashutoshrathi/word-wrap": "^1.2.3", "deep-is": "^0.1.3", "fast-levenshtein": "^2.0.6", "levn": "^0.4.1", "prelude-ls": "^1.2.1", - "type-check": "^0.4.0", - "word-wrap": "^1.2.3" + "type-check": "^0.4.0" } }, "ora": { @@ -24557,12 +24603,6 @@ "string-width": "^4.0.0" } }, - "word-wrap": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", - "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", - "dev": true - }, "wrap-ansi": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", diff --git a/package.json b/package.json index 510b7e91a..6509e7af9 100644 --- a/package.json +++ b/package.json @@ -48,13 +48,13 @@ "autoprefixer": "10.4.4", "babel-jest": "^29.6.2", "dotenv": "^10.0.0", - "eslint": "^8.11.0", + "eslint": "^8.47.0", "eslint-config-prettier": "8.3.0", "eslint-plugin-jest": "25.3.0", "eslint-plugin-prettier": "4.0.0", "eslint-plugin-react": "7.27.1", "eslint-plugin-unicorn": "39.0.0", - "esri-loader": "3.4.0", + "esri-loader": "^3.7.0", "form-request-submit-polyfill": "^2.0.0", "gh-release": "^6.0.3", "jest": "^27.0.3", @@ -103,10 +103,5 @@ "email": "mtschudi@esri.com" } ], - "license": "Apache-2.0", - "volta": { - "node": "16.17.1", - "npm": "8.18.0", - "typescript": "4.8.4" - } + "license": "Apache-2.0" } From 5eb20f7bebba7fae4fa52582f8f604866ab05b26 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Mon, 28 Aug 2023 14:58:24 -0600 Subject: [PATCH 168/406] default show newest first --- src/components/crowdsource-manager/crowdsource-manager.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/crowdsource-manager/crowdsource-manager.tsx b/src/components/crowdsource-manager/crowdsource-manager.tsx index 689e69a0f..0e2543bf3 100644 --- a/src/components/crowdsource-manager/crowdsource-manager.tsx +++ b/src/components/crowdsource-manager/crowdsource-manager.tsx @@ -46,7 +46,7 @@ export class CrowdsourceManager { /** * boolean: when true the table will be sorted by objectid in descending order by default */ - @Prop() showNewestFirst = false; + @Prop() showNewestFirst = true; /** * boolean: when true no header is displayed for the app From c13ca68f5da85cd42963f02c3f0b81a220d82738 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Mon, 28 Aug 2023 15:03:18 -0600 Subject: [PATCH 169/406] remove header --- src/components.d.ts | 8 -------- .../crowdsource-manager/crowdsource-manager.tsx | 7 ------- src/components/crowdsource-manager/readme.md | 9 +-------- src/components/layout-manager/readme.md | 5 ----- 4 files changed, 1 insertion(+), 28 deletions(-) diff --git a/src/components.d.ts b/src/components.d.ts index 866fc4088..24b721b99 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -74,10 +74,6 @@ export namespace Components { * boolean: when true the grid will display like the previous manager app with the table across the top */ "classicGrid": boolean; - /** - * boolean: when true no header is displayed for the app - */ - "hideHeader": boolean; /** * boolean: when true no map is displayed for the app */ @@ -1137,10 +1133,6 @@ declare namespace LocalJSX { * boolean: when true the grid will display like the previous manager app with the table across the top */ "classicGrid"?: boolean; - /** - * boolean: when true no header is displayed for the app - */ - "hideHeader"?: boolean; /** * boolean: when true no map is displayed for the app */ diff --git a/src/components/crowdsource-manager/crowdsource-manager.tsx b/src/components/crowdsource-manager/crowdsource-manager.tsx index 0e2543bf3..3b259e151 100644 --- a/src/components/crowdsource-manager/crowdsource-manager.tsx +++ b/src/components/crowdsource-manager/crowdsource-manager.tsx @@ -48,11 +48,6 @@ export class CrowdsourceManager { */ @Prop() showNewestFirst = true; - /** - * boolean: when true no header is displayed for the app - */ - @Prop() hideHeader = true; - /** * boolean: when true no map is displayed for the app */ @@ -169,9 +164,7 @@ export class CrowdsourceManager { - {this.hideHeader ? undefined : ()} {this._getBody(this._layoutMode, this._panelOpen, this.hideMap)} diff --git a/src/components/crowdsource-manager/readme.md b/src/components/crowdsource-manager/readme.md index 196b1462d..0844363af 100644 --- a/src/components/crowdsource-manager/readme.md +++ b/src/components/crowdsource-manager/readme.md @@ -10,11 +10,10 @@ | Property | Attribute | Description | Type | Default | | ------------------------- | ----------------------------- | ------------------------------------------------------------------------------------------------------------------ | ---------------------- | ----------- | | `classicGrid` | `classic-grid` | boolean: when true the grid will display like the previous manager app with the table across the top | `boolean` | `false` | -| `hideHeader` | `hide-header` | boolean: when true no header is displayed for the app | `boolean` | `true` | | `hideMap` | `hide-map` | boolean: when true no map is displayed for the app | `boolean` | `false` | | `mapInfos` | -- | IMapInfo[]: array of map infos (name and id) | `IMapInfo[]` | `[]` | | `searchConfiguration` | -- | ISearchConfiguration: Configuration details for the Search widget | `ISearchConfiguration` | `undefined` | -| `showNewestFirst` | `show-newest-first` | boolean: when true the table will be sorted by objectid in descending order by default | `boolean` | `false` | +| `showNewestFirst` | `show-newest-first` | boolean: when true the table will be sorted by objectid in descending order by default | `boolean` | `true` | | `zoomAndScrollToSelected` | `zoom-and-scroll-to-selected` | boolean: When true the selected feature will zoomed to in the map and the row will be scrolled to within the table | `boolean` | `false` | @@ -24,7 +23,6 @@ - calcite-shell - calcite-panel -- [layout-manager](../layout-manager) - [map-card](../map-card) - [card-manager](../card-manager) - calcite-action-bar @@ -37,7 +35,6 @@ graph TD; crowdsource-manager --> calcite-shell crowdsource-manager --> calcite-panel - crowdsource-manager --> layout-manager crowdsource-manager --> map-card crowdsource-manager --> card-manager crowdsource-manager --> calcite-action-bar @@ -54,10 +51,6 @@ graph TD; calcite-popover --> calcite-action calcite-popover --> calcite-icon calcite-scrim --> calcite-loader - layout-manager --> calcite-icon - layout-manager --> calcite-popover - layout-manager --> calcite-action - layout-manager --> calcite-tooltip map-card --> map-picker map-card --> map-tools map-picker --> calcite-button diff --git a/src/components/layout-manager/readme.md b/src/components/layout-manager/readme.md index 539a98aa3..b3579704d 100644 --- a/src/components/layout-manager/readme.md +++ b/src/components/layout-manager/readme.md @@ -14,10 +14,6 @@ ## Dependencies -### Used by - - - [crowdsource-manager](../crowdsource-manager) - ### Depends on - calcite-icon @@ -36,7 +32,6 @@ graph TD; calcite-popover --> calcite-icon calcite-action --> calcite-loader calcite-action --> calcite-icon - crowdsource-manager --> layout-manager style layout-manager fill:#f9f,stroke:#333,stroke-width:4px ``` From 6a73f3009515a9c8804d714434a1b3a8d72ce078 Mon Sep 17 00:00:00 2001 From: Mike Tschudi Date: Mon, 28 Aug 2023 14:57:45 -0700 Subject: [PATCH 170/406] Add tests --- src/utils/downloadUtils.ts | 16 +++--- src/utils/test/downloadUtils.spec.tsx | 72 +++++++-------------------- 2 files changed, 25 insertions(+), 63 deletions(-) diff --git a/src/utils/downloadUtils.ts b/src/utils/downloadUtils.ts index 970479564..130d7006e 100644 --- a/src/utils/downloadUtils.ts +++ b/src/utils/downloadUtils.ts @@ -271,12 +271,11 @@ export function _convertPopupTextToLabelSpec( * @param expressionInfo Structure containing expression and info about it * @return Promise resolving to an "executor" label spec */ -/* export async function _convertPopupArcadeToLabelSpec( expressionInfo: __esri.ElementExpressionInfo ): Promise { // Generate an Arcade executor - const arcade = await import("@arcgis/core/arcade.js"); + const [arcade] = await loadModules(["esri/arcade"]); const labelingProfile: __esri.Profile = { variables: [ { @@ -304,7 +303,6 @@ export async function _convertPopupArcadeToLabelSpec( format: executor } as ILabelFormat); } -*/ /** * Creates a title from a list of selection set names. @@ -467,8 +465,8 @@ export async function _getLabelFormat( labelFormat = _convertPopupTextToLabelSpec(layer.popupTemplate.content[0].text); // Example expression: 'var feat = $feature\nvar label = `\n\t${feat["name"]} ${feat["age"]} years
\n\tstarted: ${feat["start"]}\n`\n\nreturn { \n type : \'text\', \n text : label\n}', - //} else if (formatUsingLayerPopup && layer.popupTemplate?.content[0]?.type === "expression") { - // labelFormat = await _convertPopupArcadeToLabelSpec(layer.popupTemplate.content[0].expressionInfo); + } else if (formatUsingLayerPopup && layer.popupTemplate?.content[0]?.type === "expression") { + labelFormat = await _convertPopupArcadeToLabelSpec(layer.popupTemplate.content[0].expressionInfo); } } @@ -593,9 +591,8 @@ export async function _prepareLabels( attributeFormats, labelFormat.format as string, includeHeaderNames) : // Export attributes in expression - await _prepareLabelsUsingExecutor(); - //await _prepareLabelsUsingExecutor(featureSet, attributeTypes, attributeDomains, - // attributeFormats, labelFormat.format as __esri.ArcadeExecutor, includeHeaderNames); + await _prepareLabelsUsingExecutor(featureSet, attributeTypes, attributeDomains, + attributeFormats, labelFormat.format as __esri.ArcadeExecutor, includeHeaderNames); return Promise.resolve(labels); } @@ -703,15 +700,14 @@ export async function _prepareLabelsFromPattern( } export async function _prepareLabelsUsingExecutor( - /* featureSet: __esri.Graphic[], attributeTypes: IAttributeTypes, attributeDomains: IAttributeDomains, attributeFormats: IAttributeFormats, labelFormat: __esri.ArcadeExecutor, includeHeaderNames = false - */ ): Promise { + const [arcade] = await loadModules(["esri/arcade"]); //const arcade = await import("@arcgis/core/arcade.js"); const labels: string[][] = undefined;//??? diff --git a/src/utils/test/downloadUtils.spec.tsx b/src/utils/test/downloadUtils.spec.tsx index 21a49fd71..6b65ae6cf 100644 --- a/src/utils/test/downloadUtils.spec.tsx +++ b/src/utils/test/downloadUtils.spec.tsx @@ -15,6 +15,7 @@ */ import * as downloadUtils from "../downloadUtils"; +import * as esriLoader from 'esri-loader'; describe("downloadUtils", () => { @@ -133,69 +134,28 @@ describe("downloadUtils", () => { }); - /* describe("_convertPopupArcadeToLabelSpec", () => { - //jest.spyOn(utils, "default").mockImplementation(() => { return {Promise}}); // 1 - //jest.spyOn(utils, "default").mockImplementation(() => Promise); // 2 - //jest.mock("../../../node_modules/esri-loader/dist/esm/utils/index.js", () => {{Promise}}); - //jest.mock("../../../node_modules/esri-loader/dist/esm/utils/index.js", () => Promise); - //jest.mock("../../../node_modules/esri-loader/dist/esm/utils", () => {{Promise}}); - //jest.mock("../../../node_modules/esri-loader/dist/esm/utils", () => {{Promise: Promise}}); - //jest.mock("../../../node_modules/esri-loader/dist/esm/utils", () => Promise); - it("handles
variants", async () => { - //console.log("global.Promise", global.Promise); - //console.log("window.Promise 1", window.Promise); - //utils.Promise = window.Promise = global.Promise; - //console.log("window.Promise 2", window.Promise); - //console.log("utils 1", utils, utils.Promise); - //jest.resetModules(); - //console.log("window.Promise 3", window.Promise); - //jest.mock("../../../node_modules/esri-loader/dist/esm/utils", () => {{Promise}}); - //jest.mock("../../../node_modules/esri-loader/dist/esm/utils/index.js", () => {{Promise}}); - //jest.mock("../../../node_modules/esri-loader/dist/esm/utils", () => Promise); - //jest.mock("../../../node_modules/esri-loader/dist/esm/utils/index.js", () => Promise); - //jest.spyOn(utils, "Promise").mockImplementation(Promise[Symbol.species]); // 2 - //jest.spyOn(utils, "Promise").mockImplementation( - // (executor: (resolve: (value: unknown) => void, reject: (reason?: any) => void) => void) => new Promise(executor) - //); - //jest.mock("../../../node_modules/esri-loader/dist/esm/utils/index.js", - // ((executor: (resolve: (value: unknown) => void, reject: (reason?: any) => void) => void) => new Promise(executor)) - //); - //jest.mock("../../../node_modules/esri-loader/dist/esm/utils", () => Promise); - //jest.mock("../../../node_modules/esri-loader/dist/esm/utils", (executor) => new PromiseConstructor(executor)); - //jest.mock("../../../node_modules/esri-loader/dist/esm/utils", () => Promise); - //jest.mock("../../../node_modules/esri-loader/dist/esm/utils/index.js", () => Promise); - //jest.mock("../../../node_modules/esri-loader/dist/esm/utils/index.js", () => { return (executor) => new Promise(executor) }); - //jest.mock("../../../node_modules/esri-loader/dist/esm/utils/index.js", () => { return { Promise: (executor) => new Promise(executor) }}); - //jest.mock("../../../node_modules/esri-loader/dist/esm/utils", () => { return { Promise: (executor) => new Promise(executor) }}); - //jest.mock("../../../node_modules/esri-loader/dist/esm/utils", () => { return { Promise: Promise }}); - //jest.mock("../../../node_modules/esri-loader/dist/esm/utils", () => { return { Promise: Promise }}); - //jest.mock("../../../node_modules/esri-loader/dist/esm/utils/index.js", () => { return { Promise: Promise }}); - //console.log("utils 2", utils, utils.Promise); - //console.log("typeof window", typeof window); - //console.log("window['Promise']", window['Promise']); - - //jest.mock("../../../node_modules/esri-loader/dist/esm/utils", () => { return { - // Promise: jest.fn().mockImplementation(() => { return window['Promise']; }) - //} }); + const Arcade = { + createArcadeExecutor: (): Promise<__esri.ArcadeExecutor> => { + const executor: __esri.ArcadeExecutor = {} as __esri.ArcadeExecutor; + return Promise.resolve(executor); + } + }; + const loadModulesSpy = jest.spyOn(esriLoader, 'loadModules').mockResolvedValue([Arcade]); const expressionInfo: __esri.ElementExpressionInfo = { expression: 'var feat = $feature\nvar label = `\n\t${feat["name"]} ${feat["age"]} years
\n\tstarted: ${feat["start"]}\n`\n\nreturn { \n type : \'text\', \n text : label\n}' } as any; - //console.log("window.Promise 4", window.Promise);//??? - //console.log("utils.Promise", utils.Promise);//??? const result: downloadUtils.ILabelFormat = await downloadUtils._convertPopupArcadeToLabelSpec(expressionInfo); expect(result.type).toEqual("executor"); - expect(typeof result.format).toEqual("ArcadeExecutor"); - //jest.clearAllMocks(); + loadModulesSpy.mockRestore(); }); }); - */ describe("_createFilename", () => { @@ -718,8 +678,15 @@ describe("downloadUtils", () => { expect(result.format).toEqual('{name} {age} years|started: {start}'); }); - /* it('should prepare labels from popup Arcade', async () => { + const Arcade = { + createArcadeExecutor: (): Promise<__esri.ArcadeExecutor> => { + const executor: __esri.ArcadeExecutor = {} as __esri.ArcadeExecutor; + return Promise.resolve(executor); + } + }; + const loadModulesSpy = jest.spyOn(esriLoader, 'loadModules').mockResolvedValue([Arcade]); + const popupTemplate = { title: '{name}', content: [{ @@ -758,10 +725,9 @@ describe("downloadUtils", () => { const result: downloadUtils.ILabelFormat = await downloadUtils._getLabelFormat(layer as any, formatUsingLayerPopup, attributeFormats); expect(result.type).toEqual('executor'); - console.log(JSON.stringify(result, null, 2));//??? - expect(result.format).toEqual('{name} {age} years|started: {start}'); + + loadModulesSpy.mockRestore(); }); - */ it('should prepare labels without popup; formatUsingLayerPopup is true', async () => { const layer = { From 6bbc6bec59640e1dbd6e315350e9c6e55ccf3599 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Mon, 28 Aug 2023 15:59:59 -0600 Subject: [PATCH 171/406] check for update capability --- src/assets/t9n/info-card/resources.json | 2 +- src/assets/t9n/info-card/resources_en.json | 2 +- src/components/info-card/info-card.tsx | 3 ++- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/src/assets/t9n/info-card/resources.json b/src/assets/t9n/info-card/resources.json index 233f6ef89..72fd6d24f 100644 --- a/src/assets/t9n/info-card/resources.json +++ b/src/assets/t9n/info-card/resources.json @@ -1,6 +1,6 @@ { "fetchingData": "Fetching data", "edit": "Edit", - "enableEditing": "Editing must be enabled on the layer.", + "enableEditing": "Update cabability must be enabled on the layer.", "editDisabled": "Editing Disabled" } diff --git a/src/assets/t9n/info-card/resources_en.json b/src/assets/t9n/info-card/resources_en.json index 233f6ef89..72fd6d24f 100644 --- a/src/assets/t9n/info-card/resources_en.json +++ b/src/assets/t9n/info-card/resources_en.json @@ -1,6 +1,6 @@ { "fetchingData": "Fetching data", "edit": "Edit", - "enableEditing": "Editing must be enabled on the layer.", + "enableEditing": "Update cabability must be enabled on the layer.", "editDisabled": "Editing Disabled" } diff --git a/src/components/info-card/info-card.tsx b/src/components/info-card/info-card.tsx index 0858ad282..6adacb7f8 100644 --- a/src/components/info-card/info-card.tsx +++ b/src/components/info-card/info-card.tsx @@ -121,7 +121,8 @@ export class InfoCard { @Watch("graphics") async graphicsWatchHandler(): Promise { if (this.graphics.length > 0) { - this._editEnabled = (this.graphics[0]?.layer as __esri.FeatureLayer).editingEnabled; + const featureLayer = (this.graphics[0]?.layer as __esri.FeatureLayer); + this._editEnabled = featureLayer.editingEnabled && featureLayer.capabilities.operations.supportsUpdate; this._features.open({ features: this.graphics }); From 7044a387004901fa5325725f8f7ef635f1e021d9 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Mon, 28 Aug 2023 16:40:42 -0600 Subject: [PATCH 172/406] move edit button --- src/components/card-manager/readme.md | 6 +++--- src/components/crowdsource-manager/readme.md | 2 +- src/components/info-card/info-card.css | 14 ++++++++++++++ src/components/info-card/info-card.tsx | 14 ++++++-------- src/components/info-card/readme.md | 8 ++++---- 5 files changed, 28 insertions(+), 16 deletions(-) diff --git a/src/components/card-manager/readme.md b/src/components/card-manager/readme.md index c31a1943b..dc0ed9e48 100644 --- a/src/components/card-manager/readme.md +++ b/src/components/card-manager/readme.md @@ -34,12 +34,12 @@ graph TD; card-manager --> calcite-notice info-card --> calcite-shell info-card --> calcite-loader - info-card --> calcite-button + info-card --> calcite-action info-card --> calcite-tooltip info-card --> edit-card info-card --> calcite-alert - calcite-button --> calcite-loader - calcite-button --> calcite-icon + calcite-action --> calcite-loader + calcite-action --> calcite-icon edit-card --> calcite-notice calcite-notice --> calcite-icon calcite-alert --> calcite-icon diff --git a/src/components/crowdsource-manager/readme.md b/src/components/crowdsource-manager/readme.md index 0844363af..cbd90fe81 100644 --- a/src/components/crowdsource-manager/readme.md +++ b/src/components/crowdsource-manager/readme.md @@ -84,7 +84,7 @@ graph TD; card-manager --> calcite-notice info-card --> calcite-shell info-card --> calcite-loader - info-card --> calcite-button + info-card --> calcite-action info-card --> calcite-tooltip info-card --> edit-card info-card --> calcite-alert diff --git a/src/components/info-card/info-card.css b/src/components/info-card/info-card.css index 76baf2a10..4f9b9d307 100644 --- a/src/components/info-card/info-card.css +++ b/src/components/info-card/info-card.css @@ -66,3 +66,17 @@ tr:nth-child(odd) { left: 0; overflow: auto; } + +.edit-btn { + z-index: 999; + position: absolute; + width: 50px; +} + +.edit-btn-position { + right: 0; +} + +html[dir="rtl"] .edit-btn-position { + left: 0; +} diff --git a/src/components/info-card/info-card.tsx b/src/components/info-card/info-card.tsx index 6adacb7f8..782e6dda3 100644 --- a/src/components/info-card/info-card.tsx +++ b/src/components/info-card/info-card.tsx @@ -214,16 +214,14 @@ export class InfoCard { class={"esri-widget " + featureNodeClass} id="features-node" /> -
- + this._openEditRecord()} - width="full" - > - {this._translations.edit} - + scale="m" + /> {this._translations.edit} diff --git a/src/components/info-card/readme.md b/src/components/info-card/readme.md index 1eaa79a4e..20ae97e25 100644 --- a/src/components/info-card/readme.md +++ b/src/components/info-card/readme.md @@ -45,7 +45,7 @@ Promise resolving with the current feature - calcite-shell - calcite-loader -- calcite-button +- calcite-action - calcite-tooltip - [edit-card](../edit-card) - calcite-alert @@ -55,12 +55,12 @@ Promise resolving with the current feature graph TD; info-card --> calcite-shell info-card --> calcite-loader - info-card --> calcite-button + info-card --> calcite-action info-card --> calcite-tooltip info-card --> edit-card info-card --> calcite-alert - calcite-button --> calcite-loader - calcite-button --> calcite-icon + calcite-action --> calcite-loader + calcite-action --> calcite-icon edit-card --> calcite-notice calcite-notice --> calcite-icon calcite-alert --> calcite-icon From 757103c744c72060ef55669fb43e33614ed7f9eb Mon Sep 17 00:00:00 2001 From: John Hauck Date: Mon, 28 Aug 2023 16:57:55 -0600 Subject: [PATCH 173/406] fix sp error --- src/assets/t9n/info-card/resources.json | 2 +- src/assets/t9n/info-card/resources_en.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/assets/t9n/info-card/resources.json b/src/assets/t9n/info-card/resources.json index 72fd6d24f..79abd0fbf 100644 --- a/src/assets/t9n/info-card/resources.json +++ b/src/assets/t9n/info-card/resources.json @@ -1,6 +1,6 @@ { "fetchingData": "Fetching data", "edit": "Edit", - "enableEditing": "Update cabability must be enabled on the layer.", + "enableEditing": "Update capability must be enabled on the layer.", "editDisabled": "Editing Disabled" } diff --git a/src/assets/t9n/info-card/resources_en.json b/src/assets/t9n/info-card/resources_en.json index 72fd6d24f..79abd0fbf 100644 --- a/src/assets/t9n/info-card/resources_en.json +++ b/src/assets/t9n/info-card/resources_en.json @@ -1,6 +1,6 @@ { "fetchingData": "Fetching data", "edit": "Edit", - "enableEditing": "Update cabability must be enabled on the layer.", + "enableEditing": "Update capability must be enabled on the layer.", "editDisabled": "Editing Disabled" } From 22c64019383053b90c4910cf8fe02c5048fc3aa7 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Tue, 29 Aug 2023 11:34:04 -0600 Subject: [PATCH 174/406] fix index issue with switch selected --- src/components/layer-table/layer-table.tsx | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/src/components/layer-table/layer-table.tsx b/src/components/layer-table/layer-table.tsx index eab5fba7f..a40d5edbc 100644 --- a/src/components/layer-table/layer-table.tsx +++ b/src/components/layer-table/layer-table.tsx @@ -708,14 +708,15 @@ export class LayerTable { */ protected _switchSelected(): void { const currentIndexes = [...this._selectedIndexes]; - this._selectedIndexes = this._allIds.reduce((prev, _cur, i) => { - if (currentIndexes.indexOf(i) < 0) { - prev.push(i); + this._table.highlightIds.removeAll(); + const ids = this._allIds.reduce((prev, _cur) => { + if (currentIndexes.indexOf(_cur) < 0) { + prev.push(_cur); } return prev; }, []); - this._table.highlightIds.removeAll(); - this._table.highlightIds.addMany(this._selectedIndexes); + this._table.highlightIds.addMany(ids); + this._selectedIndexes = ids; } /** From 270800d4e8617e88ae092ee530d3688f4702112a Mon Sep 17 00:00:00 2001 From: Mike Tschudi Date: Tue, 29 Aug 2023 12:02:47 -0700 Subject: [PATCH 175/406] Refactor --- src/utils/downloadUtils.ts | 123 ++++++++++++++++---------- src/utils/test/downloadUtils.spec.tsx | 65 ++++++++++++++ 2 files changed, 143 insertions(+), 45 deletions(-) diff --git a/src/utils/downloadUtils.ts b/src/utils/downloadUtils.ts index 130d7006e..4eed4391b 100644 --- a/src/utils/downloadUtils.ts +++ b/src/utils/downloadUtils.ts @@ -188,6 +188,52 @@ export function removeDuplicateLabels( // ------------------------------------------------------------------------------------------------------------------ // //#region Private functions +/** + * Converts the text of a custom popup into a multiline label specification; conversion splits text into + * lines on
s, and removes HTML tags. + * + * @param labelText Layer's popup text, e.g., + * "
{NAME}
{STREET}
{CITY}, {STATE} {ZIP} 
" + * @return Cleaned-up popup text with lines separated by `lineSeparatorChar` + */ +export function _cleanupLabel( + labelText: string, +): string { + // Replace
variants with the line separator character + labelText = labelText.replace(//gi, lineSeparatorChar); + + // Replace

variants with the line separator character, except in the first position + labelText = labelText.replace(/]*>/gi, lineSeparatorChar).trim().replace(/^\|/, ""); + + // Remove

+ labelText = labelText.replace(/<\/p>/gi, ""); + + // Replace \n with the line separator character + labelText = labelText.replace(/\n/gi, "|"); + + // Remove remaining HTML tags, replace 0xA0 that popup uses for spaces, and replace some char representations + labelText = labelText + .replace(/<[\s.]*[^<>]*\/?>/gi, "") + .replace(/\xA0/gi, " ") + .replace(/</gi, "<") + .replace(/>/gi, ">") + .replace(/ /gi, " "); + + // Trim each line + labelText = labelText.replace(/\s*\|\s*/g, "|"); + + // Remove empty lines + while (labelText.match(/\|\|/)) { + labelText = labelText.replace(/\|\|/, "|"); + } + + // Remove leading and trailing line feeds + labelText = labelText.replace(/^\|/, ""); + labelText = labelText.replace(/\|$/, ""); + + return labelText; +}; + /** * Converts a set of fieldInfos into template lines. * @@ -220,48 +266,16 @@ export function _convertPopupFieldsToLabelSpec( * Converts the text of a custom popup into a multiline label specification; conversion splits text into * lines on
s, and removes HTML tags. It does not handle Arcade and related records. * - * @param popupInfo Layer's popupInfo structure containing description, fieldInfos, and expressionInfos, e.g., + * @param labelText Layer's labelText structure containing description, fieldInfos, and expressionInfos, e.g., * "
{NAME}
{STREET}
{CITY}, {STATE} {ZIP} 
" * @return "pattern" label spec with lines separated by `lineSeparatorChar` */ export function _convertPopupTextToLabelSpec( popupInfo: string, ): ILabelFormat { - // Replace
variants with the line separator character - popupInfo = popupInfo.replace(//gi, lineSeparatorChar); - - // Replace

variants with the line separator character, except in the first position - popupInfo = popupInfo.replace(/]*>/gi, lineSeparatorChar).trim().replace(/^\|/, ""); - - // Remove

- popupInfo = popupInfo.replace(/<\/p>/gi, ""); - - // Replace \n with the line separator character - popupInfo = popupInfo.replace(/\n/gi, "|"); - - // Remove remaining HTML tags, replace 0xA0 that popup uses for spaces, and replace some char representations - let labelSpec = popupInfo - .replace(/<[\s.]*[^<>]*\/?>/gi, "") - .replace(/\xA0/gi, " ") - .replace(/</gi, "<") - .replace(/>/gi, ">") - .replace(/ /gi, " "); - - // Trim each line - labelSpec = labelSpec.replace(/\s*\|\s*/g, "|"); - - // Remove empty lines - while (labelSpec.match(/\|\|/)) { - labelSpec = labelSpec.replace(/\|\|/, "|"); - } - - // Remove leading and trailing line feeds - labelSpec = labelSpec.replace(/^\|/, ""); - labelSpec = labelSpec.replace(/\|$/, ""); - return { type: "pattern", - format: labelSpec.trim() + format: _cleanupLabel(popupInfo) } as ILabelFormat; }; @@ -510,6 +524,10 @@ export function _prepareAttributeValue( attributeFormat: __esri.FieldInfoFormat, intl: any ): string { + if (attributeValue === null || typeof attributeValue === "undefined") { + return ""; + } + if (attributeDomain && (attributeDomain as __esri.CodedValueDomain).type === "coded-value") { // "coded-value" domain field const value = (attributeDomain as __esri.CodedValueDomain).getName(attributeValue); @@ -591,8 +609,9 @@ export async function _prepareLabels( attributeFormats, labelFormat.format as string, includeHeaderNames) : // Export attributes in expression - await _prepareLabelsUsingExecutor(featureSet, attributeTypes, attributeDomains, - attributeFormats, labelFormat.format as __esri.ArcadeExecutor, includeHeaderNames); + await _prepareLabelsUsingExecutor(featureSet, labelFormat.format as __esri.ArcadeExecutor); + //await _prepareLabelsUsingExecutor(featureSet, attributeTypes, attributeDomains, + // attributeFormats, labelFormat.format as __esri.ArcadeExecutor, includeHeaderNames); return Promise.resolve(labels); } @@ -685,7 +704,7 @@ export async function _prepareLabelsFromPattern( let label = labelPrep.split(lineSeparatorChar); // Trim lines - label = label.map(line => line.trim()); + label = label.map(line => _cleanupLabel(line)); return label; } @@ -701,15 +720,29 @@ export async function _prepareLabelsFromPattern( export async function _prepareLabelsUsingExecutor( featureSet: __esri.Graphic[], - attributeTypes: IAttributeTypes, - attributeDomains: IAttributeDomains, - attributeFormats: IAttributeFormats, - labelFormat: __esri.ArcadeExecutor, - includeHeaderNames = false + //ttributeTypes: IAttributeTypes, + //attributeDomains: IAttributeDomains, + //attributeFormats: IAttributeFormats, + labelFormat: __esri.ArcadeExecutor + //includeHeaderNames = false ): Promise { - const [arcade] = await loadModules(["esri/arcade"]); - //const arcade = await import("@arcgis/core/arcade.js"); - const labels: string[][] = undefined;//??? + // Convert feature attributes into an array of labels + const execResults = await Promise.all(featureSet.map( + async feature => { + return labelFormat.executeAsync({"$feature": feature}); + } + )); + + const labels = execResults.map( + result => _cleanupLabel(result.text).split(lineSeparatorChar) + ) + + // Add header names + /* + if (includeHeaderNames) { + labels.unshift(attributeNames); + } + */ return Promise.resolve(labels); } diff --git a/src/utils/test/downloadUtils.spec.tsx b/src/utils/test/downloadUtils.spec.tsx index 6b65ae6cf..1fbcc7279 100644 --- a/src/utils/test/downloadUtils.spec.tsx +++ b/src/utils/test/downloadUtils.spec.tsx @@ -36,6 +36,71 @@ describe("downloadUtils", () => { }); + describe("_cleanupLabel", () => { + + it("handles
variants", () => { + const labelText = "
{NAME}
{STREET}
{CITY}, {STATE} {ZIP} 
"; + const expectedCleanedText = "{NAME}|{STREET}|{CITY}, {STATE} {ZIP}"; + + const result: string = downloadUtils._cleanupLabel(labelText); + expect(result).toEqual(expectedCleanedText); + }); + + it("handles

", () => { + const labelText = "

{NAME}

{STREET}

{CITY}, {STATE} {ZIP}

"; + const expectedCleanedText = "{NAME}|{STREET}|{CITY}, {STATE} {ZIP}"; + + const result: string = downloadUtils._cleanupLabel(labelText); + expect(result).toEqual(expectedCleanedText); + }); + + it("handles popup's use of \xA0", () => { + const labelText = + "
{NAME}
{STREET}
{CITY},\xA0{STATE}\xA0{ZIP}\xA0
"; + const expectedCleanedText = "{NAME}|{STREET}|{CITY}, {STATE} {ZIP}"; + + const result: string = downloadUtils._cleanupLabel(labelText); + expect(result).toEqual(expectedCleanedText); + }); + + it("removes newlines and blank lines, and trims each line", () => { + const labelText = + " \n\n {NAME} \n \n\n {STREET}\n{CITY}, {STATE} {ZIP}\n\n \n "; + const expectedCleanedText = "{NAME}|{STREET}|{CITY}, {STATE} {ZIP}"; + + const result: string = downloadUtils._cleanupLabel(labelText); + expect(result).toEqual(expectedCleanedText); + }); + + it("handles tabs", () => { + const labelText = + " \t\t {NAME} \n \n\n {STREET}\n{CITY}, {STATE} {ZIP}"; + const expectedCleanedText = "{NAME}|{STREET}|{CITY}, {STATE} {ZIP}"; + + const result: string = downloadUtils._cleanupLabel(labelText); + expect(result).toEqual(expectedCleanedText); + }); + + it("removes extra HTML", () => { + const labelText = + "\n
{NAME}
{STREET}
{CITY},\xA0{STATE}\xA0{ZIP}\xA0
\n"; + const expectedCleanedText = "{NAME}|{STREET}|{CITY}, {STATE} {ZIP}"; + + const result: string = downloadUtils._cleanupLabel(labelText); + expect(result).toEqual(expectedCleanedText); + }); + + it("handles some special characters", () => { + const labelText = + "
<{NAME}>
{STREET}
{CITY}, {STATE} {ZIP}
"; + const expectedCleanedText = "<{NAME}>|{STREET}|{CITY}, {STATE} {ZIP}"; + + const result: string = downloadUtils._cleanupLabel(labelText); + expect(result).toEqual(expectedCleanedText); + }); + + }); + describe("_convertPopupFieldsToLabelSpec", () => { it("handles fieldname visibility", () => { From e9ce8dc71bdabf1c6179d2e8db131a85aa8855f7 Mon Sep 17 00:00:00 2001 From: Mike Tschudi Date: Tue, 29 Aug 2023 12:15:59 -0700 Subject: [PATCH 176/406] Remove unused function parameters --- src/utils/downloadUtils.ts | 13 ------------- 1 file changed, 13 deletions(-) diff --git a/src/utils/downloadUtils.ts b/src/utils/downloadUtils.ts index 4eed4391b..726b83ef3 100644 --- a/src/utils/downloadUtils.ts +++ b/src/utils/downloadUtils.ts @@ -610,8 +610,6 @@ export async function _prepareLabels( : // Export attributes in expression await _prepareLabelsUsingExecutor(featureSet, labelFormat.format as __esri.ArcadeExecutor); - //await _prepareLabelsUsingExecutor(featureSet, attributeTypes, attributeDomains, - // attributeFormats, labelFormat.format as __esri.ArcadeExecutor, includeHeaderNames); return Promise.resolve(labels); } @@ -720,11 +718,7 @@ export async function _prepareLabelsFromPattern( export async function _prepareLabelsUsingExecutor( featureSet: __esri.Graphic[], - //ttributeTypes: IAttributeTypes, - //attributeDomains: IAttributeDomains, - //attributeFormats: IAttributeFormats, labelFormat: __esri.ArcadeExecutor - //includeHeaderNames = false ): Promise { // Convert feature attributes into an array of labels const execResults = await Promise.all(featureSet.map( @@ -737,13 +731,6 @@ export async function _prepareLabelsUsingExecutor( result => _cleanupLabel(result.text).split(lineSeparatorChar) ) - // Add header names - /* - if (includeHeaderNames) { - labels.unshift(attributeNames); - } - */ - return Promise.resolve(labels); } From 495344dfcca53fec073b8a12bca864f840cbb868 Mon Sep 17 00:00:00 2001 From: Mike Tschudi Date: Tue, 29 Aug 2023 12:27:13 -0700 Subject: [PATCH 177/406] Update doc --- src/utils/downloadUtils.ts | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/utils/downloadUtils.ts b/src/utils/downloadUtils.ts index 726b83ef3..c2f78108c 100644 --- a/src/utils/downloadUtils.ts +++ b/src/utils/downloadUtils.ts @@ -658,7 +658,7 @@ export async function _prepareLabelsFromAll( } /** - * Creates labels from all attributes in items. + * Creates labels from attributes in a layer popup. * * @param featureSet Features to convert to labels * @param attributeTypes Type for each attribute in a feature @@ -716,6 +716,13 @@ export async function _prepareLabelsFromPattern( return Promise.resolve(labels); } +/** + * Creates labels from attributes in an Arcade label. + * + * @param featureSet Features to convert to labels + * @param labelFormat Arcade executor for label + * @returns Promise resolving with list of labels, each of which is a list of label lines + */ export async function _prepareLabelsUsingExecutor( featureSet: __esri.Graphic[], labelFormat: __esri.ArcadeExecutor From e95d042ae4701590c47b02746575f0a9c585147c Mon Sep 17 00:00:00 2001 From: John Hauck Date: Tue, 29 Aug 2023 14:56:47 -0600 Subject: [PATCH 178/406] add legend component --- src/components.d.ts | 29 +++ src/components/map-legend/map-legend.css | 3 + src/components/map-legend/map-legend.tsx | 166 ++++++++++++++++++ src/components/map-legend/readme.md | 18 ++ .../map-legend/test/map-legend.e2e.ts | 11 ++ .../map-legend/test/map-legend.spec.tsx | 18 ++ 6 files changed, 245 insertions(+) create mode 100644 src/components/map-legend/map-legend.css create mode 100644 src/components/map-legend/map-legend.tsx create mode 100644 src/components/map-legend/readme.md create mode 100644 src/components/map-legend/test/map-legend.e2e.ts create mode 100644 src/components/map-legend/test/map-legend.spec.tsx diff --git a/src/components.d.ts b/src/components.d.ts index 24b721b99..d5dc6dbf9 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -301,6 +301,16 @@ export namespace Components { */ "type": "select" | "combobox" | "dropdown"; } + interface MapLegend { + /** + * esri/widgets/Legend: https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Legend.html Legend instance + */ + "legendWidget": __esri.Legend; + /** + * esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html + */ + "mapView": __esri.MapView; + } interface MapPicker { /** * IMapInfo[]: array of map infos (name and id) @@ -898,6 +908,12 @@ declare global { prototype: HTMLMapLayerPickerElement; new (): HTMLMapLayerPickerElement; }; + interface HTMLMapLegendElement extends Components.MapLegend, HTMLStencilElement { + } + var HTMLMapLegendElement: { + prototype: HTMLMapLegendElement; + new (): HTMLMapLegendElement; + }; interface HTMLMapPickerElement extends Components.MapPicker, HTMLStencilElement { } var HTMLMapPickerElement: { @@ -1034,6 +1050,7 @@ declare global { "map-card": HTMLMapCardElement; "map-draw-tools": HTMLMapDrawToolsElement; "map-layer-picker": HTMLMapLayerPickerElement; + "map-legend": HTMLMapLegendElement; "map-picker": HTMLMapPickerElement; "map-search": HTMLMapSearchElement; "map-select-tools": HTMLMapSelectToolsElement; @@ -1364,6 +1381,16 @@ declare namespace LocalJSX { */ "type"?: "select" | "combobox" | "dropdown"; } + interface MapLegend { + /** + * esri/widgets/Legend: https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Legend.html Legend instance + */ + "legendWidget"?: __esri.Legend; + /** + * esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html + */ + "mapView"?: __esri.MapView; + } interface MapPicker { /** * IMapInfo[]: array of map infos (name and id) @@ -1791,6 +1818,7 @@ declare namespace LocalJSX { "map-card": MapCard; "map-draw-tools": MapDrawTools; "map-layer-picker": MapLayerPicker; + "map-legend": MapLegend; "map-picker": MapPicker; "map-search": MapSearch; "map-select-tools": MapSelectTools; @@ -1832,6 +1860,7 @@ declare module "@stencil/core" { "map-card": LocalJSX.MapCard & JSXBase.HTMLAttributes; "map-draw-tools": LocalJSX.MapDrawTools & JSXBase.HTMLAttributes; "map-layer-picker": LocalJSX.MapLayerPicker & JSXBase.HTMLAttributes; + "map-legend": LocalJSX.MapLegend & JSXBase.HTMLAttributes; "map-picker": LocalJSX.MapPicker & JSXBase.HTMLAttributes; "map-search": LocalJSX.MapSearch & JSXBase.HTMLAttributes; "map-select-tools": LocalJSX.MapSelectTools & JSXBase.HTMLAttributes; diff --git a/src/components/map-legend/map-legend.css b/src/components/map-legend/map-legend.css new file mode 100644 index 000000000..5d4e87f30 --- /dev/null +++ b/src/components/map-legend/map-legend.css @@ -0,0 +1,3 @@ +:host { + display: block; +} diff --git a/src/components/map-legend/map-legend.tsx b/src/components/map-legend/map-legend.tsx new file mode 100644 index 000000000..b90b14fb7 --- /dev/null +++ b/src/components/map-legend/map-legend.tsx @@ -0,0 +1,166 @@ +/** @license + * Copyright 2022 Esri + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { Component, Element, Host, h, Prop, Watch } from '@stencil/core'; +import { loadModules } from "../../utils/loadModules"; + +@Component({ + tag: 'map-legend', + styleUrl: 'map-legend.css', + shadow: true, +}) +export class MapLegend { + //-------------------------------------------------------------------------- + // + // Host element access + // + //-------------------------------------------------------------------------- + + @Element() el: HTMLMapLegendElement; + + //-------------------------------------------------------------------------- + // + // Properties (public) + // + //-------------------------------------------------------------------------- + + /** + * esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html + */ + @Prop() mapView: __esri.MapView; + + /** + * esri/widgets/Legend: https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Legend.html + * + * Legend instance + */ + @Prop() legendWidget: __esri.Legend; + + //-------------------------------------------------------------------------- + // + // State (internal) + // + //-------------------------------------------------------------------------- + + //-------------------------------------------------------------------------- + // + // Properties (protected) + // + //-------------------------------------------------------------------------- + + /** + * esri/widgets/Legend: https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Legend.html + * + * Legend constructor + */ + protected Legend: typeof import("esri/widgets/Legend"); + + /** + * HTMLElement: The container div for the basemap gallery widget + */ + protected _legendElement: HTMLElement; + + //-------------------------------------------------------------------------- + // + // Watch handlers + // + //-------------------------------------------------------------------------- + + @Watch("mapView") + async mapViewWatchHandler(): Promise { + await this.mapView.when(() => { + this._initLegend(this.mapView); + }); + } + + //-------------------------------------------------------------------------- + // + // Methods (public) + // + //-------------------------------------------------------------------------- + + //-------------------------------------------------------------------------- + // + // Events (public) + // + //-------------------------------------------------------------------------- + + //-------------------------------------------------------------------------- + // + // Functions (lifecycle) + // + //-------------------------------------------------------------------------- + + /** + * StencilJS: Called once just after the component is first connected to the DOM. + */ + async componentWillLoad(): Promise { + return this._initModules(); + } + + /** + * StencilJS: Renders the component. + */ + render() { + return ( + +
{ this._legendElement = el }} /> + + ); + } + + //-------------------------------------------------------------------------- + // + // Functions (protected) + // + //-------------------------------------------------------------------------- + + /** + * Load esri javascript api modules + * + * @returns Promise resolving when function is done + * + * @protected + */ + protected async _initModules(): Promise { + const [Legend] = await loadModules([ + "esri/widgets/Legend" + ]); + this.Legend = Legend; + } + + /** + * Initialize the basemap gallery or reset the current view if it already exists + * + * @returns void + * + * @protected + */ + protected _initLegend( + view: __esri.MapView + ): void { + if (view && this.Legend) { + if (!this.legendWidget) { + this.legendWidget = new this.Legend({ + container: this._legendElement, + view + }); + } else { + this.legendWidget.view = view; + } + } + } +} diff --git a/src/components/map-legend/readme.md b/src/components/map-legend/readme.md new file mode 100644 index 000000000..99b8f5419 --- /dev/null +++ b/src/components/map-legend/readme.md @@ -0,0 +1,18 @@ +# map-legend + + + + + + +## Properties + +| Property | Attribute | Description | Type | Default | +| -------------- | --------- | ---------------------------------------------------------------------------------------------------------------------------- | --------- | ----------- | +| `legendWidget` | -- | esri/widgets/Legend: https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Legend.html Legend instance | `Legend` | `undefined` | +| `mapView` | -- | esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html | `MapView` | `undefined` | + + +---------------------------------------------- + +*Built with [StencilJS](https://stenciljs.com/)* diff --git a/src/components/map-legend/test/map-legend.e2e.ts b/src/components/map-legend/test/map-legend.e2e.ts new file mode 100644 index 000000000..540009d05 --- /dev/null +++ b/src/components/map-legend/test/map-legend.e2e.ts @@ -0,0 +1,11 @@ +import { newE2EPage } from '@stencil/core/testing'; + +xdescribe('map-legend', () => { + it('renders', async () => { + const page = await newE2EPage(); + await page.setContent(''); + + const element = await page.find('map-legend'); + expect(element).toHaveClass('hydrated'); + }); +}); diff --git a/src/components/map-legend/test/map-legend.spec.tsx b/src/components/map-legend/test/map-legend.spec.tsx new file mode 100644 index 000000000..eb1f71f90 --- /dev/null +++ b/src/components/map-legend/test/map-legend.spec.tsx @@ -0,0 +1,18 @@ +import { newSpecPage } from '@stencil/core/testing'; +import { MapLegend } from '../map-legend'; + +xdescribe('map-legend', () => { + it('renders', async () => { + const page = await newSpecPage({ + components: [MapLegend], + html: ``, + }); + expect(page.root).toEqualHtml(` + + + + + + `); + }); +}); From 34e2dc519c635b715a1d367dadc89c91a4e83ca3 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Tue, 29 Aug 2023 16:24:54 -0600 Subject: [PATCH 179/406] use legend widget --- src/assets/t9n/map-tools/resources.json | 2 +- src/assets/t9n/map-tools/resources_en.json | 2 +- src/components/crowdsource-manager/readme.md | 1 + src/components/map-card/readme.md | 1 + src/components/map-legend/readme.md | 13 ++++++ src/components/map-tools/map-tools.tsx | 42 ++++++++++++++++++-- src/components/map-tools/readme.md | 2 + 7 files changed, 57 insertions(+), 6 deletions(-) diff --git a/src/assets/t9n/map-tools/resources.json b/src/assets/t9n/map-tools/resources.json index 9a05d95cd..dc15f4ba4 100644 --- a/src/assets/t9n/map-tools/resources.json +++ b/src/assets/t9n/map-tools/resources.json @@ -1,6 +1,6 @@ { "home": "Home", - "list": "List", + "legend": "Legend", "search": "Search", "zoomIn": "Zoom In", "zoomOut": "Zoom Out", diff --git a/src/assets/t9n/map-tools/resources_en.json b/src/assets/t9n/map-tools/resources_en.json index 9a05d95cd..dc15f4ba4 100644 --- a/src/assets/t9n/map-tools/resources_en.json +++ b/src/assets/t9n/map-tools/resources_en.json @@ -1,6 +1,6 @@ { "home": "Home", - "list": "List", + "legend": "Legend", "search": "Search", "zoomIn": "Zoom In", "zoomOut": "Zoom Out", diff --git a/src/components/crowdsource-manager/readme.md b/src/components/crowdsource-manager/readme.md index cbd90fe81..3fcce21f7 100644 --- a/src/components/crowdsource-manager/readme.md +++ b/src/components/crowdsource-manager/readme.md @@ -76,6 +76,7 @@ graph TD; map-tools --> calcite-action-bar map-tools --> basemap-gallery map-tools --> map-search + map-tools --> map-legend map-tools --> calcite-action-group map-tools --> calcite-icon map-tools --> calcite-tooltip diff --git a/src/components/map-card/readme.md b/src/components/map-card/readme.md index 51ae14dac..17e1c15d7 100644 --- a/src/components/map-card/readme.md +++ b/src/components/map-card/readme.md @@ -66,6 +66,7 @@ graph TD; map-tools --> calcite-action-bar map-tools --> basemap-gallery map-tools --> map-search + map-tools --> map-legend map-tools --> calcite-action-group map-tools --> calcite-icon map-tools --> calcite-tooltip diff --git a/src/components/map-legend/readme.md b/src/components/map-legend/readme.md index 99b8f5419..a211d9c82 100644 --- a/src/components/map-legend/readme.md +++ b/src/components/map-legend/readme.md @@ -13,6 +13,19 @@ | `mapView` | -- | esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html | `MapView` | `undefined` | +## Dependencies + +### Used by + + - [map-tools](../map-tools) + +### Graph +```mermaid +graph TD; + map-tools --> map-legend + style map-legend fill:#f9f,stroke:#333,stroke-width:4px +``` + ---------------------------------------------- *Built with [StencilJS](https://stenciljs.com/)* diff --git a/src/components/map-tools/map-tools.tsx b/src/components/map-tools/map-tools.tsx index 04b153bff..5e53a963b 100644 --- a/src/components/map-tools/map-tools.tsx +++ b/src/components/map-tools/map-tools.tsx @@ -76,6 +76,11 @@ export class MapTools { */ @State() _showBasemapWidget = false; + /** + * When true the legend widget will be displayed + */ + @State() _showLegendWidget = false; + /** * When true the search widget will be displayed */ @@ -97,6 +102,11 @@ export class MapTools { */ protected _homeExtent: __esri.Extent; + /** + * HTMLLegendElement: The legend element node + */ + protected _legendElement: HTMLMapLegendElement; + /** * HTMLMapSearchElement: The search element node */ @@ -135,6 +145,23 @@ export class MapTools { } } + /** + * When the _showLegendWidget property is true display the search widget + */ + @Watch("_showLegendWidget") + async _showLegendWidgetWatchHandler( + v: boolean + ): Promise { + if (v) { + this.mapView.ui.add(this._legendElement.legendWidget, { + position: "top-right", + index: 1 + }); + } else { + this.mapView.ui.remove(this._legendElement.legendWidget); + } + } + /** * When the _showSearchWidget property is true display the search widget */ @@ -142,7 +169,6 @@ export class MapTools { async _showSearchWidgetWatchHandler( v: boolean ): Promise { - console.log("_showSearchWidget changed") if (v) { this.mapView.ui.add(this._searchElement.searchWidget, { position: "top-right", @@ -191,6 +217,7 @@ export class MapTools { const toolsClass = this._showTools ? "" : "display-none"; const searchClass = this._showSearchWidget ? "" : "display-none"; const basemapClass = this._showBasemapWidget ? "" : "display-none"; + const legendClass = this._showLegendWidget ? "" : "display-none"; return (
@@ -206,7 +233,7 @@ export class MapTools { {this._getActionGroup("home", false, this._translations.home, () => void this._goHome())} {this._getActionGroup("plus", false, this._translations.zoomIn, () => void this._zoomIn())} {this._getActionGroup("minus", false, this._translations.zoomOut, () => void this._zoomOut())} - {this._getActionGroup("list", false, this._translations.list, () => this._showList())} + {this._getActionGroup("legend", false, this._translations.legend, () => this._showLegend())} {this._getActionGroup("magnifying-glass", false, this._translations.search, () => this._search())} {this._getActionGroup("expand", false, this._translations.expand, () => this._expand())} {this._getActionGroup("basemap", false, this._translations.basemap, () => this._toggleBasemapPicker())} @@ -223,6 +250,11 @@ export class MapTools { ref={(el) => { this._searchElement = el }} searchConfiguration={this.searchConfiguration} /> + {this._legendElement = el}} + /> ); } @@ -283,8 +315,9 @@ export class MapTools { } // need to discuss this with the team - protected _showList(): void { - alert("show list") + protected _showLegend(): void { + this._showLegendWidget = !this._showLegendWidget; + this._showTools = false; } // Need to discuss this with the team @@ -367,6 +400,7 @@ export class MapTools { if (!this._showTools) { this._showBasemapWidget = false; this._showSearchWidget = false; + this._showLegendWidget = false; } this._showTools = !this._showTools; } diff --git a/src/components/map-tools/readme.md b/src/components/map-tools/readme.md index 9ae155eb5..44e21ca09 100644 --- a/src/components/map-tools/readme.md +++ b/src/components/map-tools/readme.md @@ -33,6 +33,7 @@ - calcite-action-bar - [basemap-gallery](../basemap-gallery) - [map-search](../map-search) +- [map-legend](../map-legend) - calcite-action-group - calcite-icon - calcite-tooltip @@ -44,6 +45,7 @@ graph TD; map-tools --> calcite-action-bar map-tools --> basemap-gallery map-tools --> map-search + map-tools --> map-legend map-tools --> calcite-action-group map-tools --> calcite-icon map-tools --> calcite-tooltip From e0323ea7f74c5a5b2379c7f6daf3afffbe32adab Mon Sep 17 00:00:00 2001 From: John Hauck Date: Tue, 29 Aug 2023 16:48:48 -0600 Subject: [PATCH 180/406] change sort order logic --- src/components/layer-table/layer-table.tsx | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/components/layer-table/layer-table.tsx b/src/components/layer-table/layer-table.tsx index a40d5edbc..6b045e3fa 100644 --- a/src/components/layer-table/layer-table.tsx +++ b/src/components/layer-table/layer-table.tsx @@ -570,7 +570,8 @@ export class LayerTable { this.reactiveUtils.watch( () => this._table.activeSortOrders, (sortOrders) => { - this._sortActive = sortOrders.length > 0 && sortOrders[0]?.direction === "asc" || sortOrders[0]?.direction === "desc"; + this._sortActive = (sortOrders.length > 0 && sortOrders[0]?.direction === "asc" || sortOrders[0]?.direction === "desc") || + sortOrders[0]?.direction === null && sortOrders[0]?.fieldName === this._layer.objectIdField; }); }); }); From cd0d3295bfb9c08d3e6380196696e5583ec76ec8 Mon Sep 17 00:00:00 2001 From: Mike Tschudi Date: Wed, 30 Aug 2023 08:06:08 -0700 Subject: [PATCH 181/406] Remove unused package --- package-lock.json | 158 ++++++++++++++-------------------------------- package.json | 1 - 2 files changed, 49 insertions(+), 110 deletions(-) diff --git a/package-lock.json b/package-lock.json index c816d0dbf..85d76d7f3 100644 --- a/package-lock.json +++ b/package-lock.json @@ -21,7 +21,6 @@ "pdf-lib": "^1.17.1" }, "devDependencies": { - "@arcgis/core": "^4.27.6", "@babel/core": "^7.22.10", "@babel/preset-env": "^7.22.10", "@babel/preset-typescript": "^7.22.5", @@ -91,30 +90,6 @@ "node": ">=6.0.0" } }, - "node_modules/@arcgis/core": { - "version": "4.27.6", - "resolved": "https://registry.npmjs.org/@arcgis/core/-/core-4.27.6.tgz", - "integrity": "sha512-Pdz8Y1hHpQm2LKkJUGNrag2o2pQ9Pe8KHjywWb+TOJcfqM8L2UQBLmtUGY26VmfMwT/FfnUfNJ7HhYzHi5ef0w==", - "dev": true, - "dependencies": { - "@esri/arcgis-html-sanitizer": "~3.0.1", - "@esri/calcite-colors": "~6.1.0", - "@esri/calcite-components": "^1.4.2", - "@popperjs/core": "~2.11.7", - "focus-trap": "~7.4.3", - "luxon": "~3.3.0", - "sortablejs": "~1.15.0" - } - }, - "node_modules/@arcgis/core/node_modules/focus-trap": { - "version": "7.4.3", - "resolved": "https://registry.npmjs.org/focus-trap/-/focus-trap-7.4.3.tgz", - "integrity": "sha512-BgSSbK4GPnS2VbtZ50VtOv1Sti6DIkj3+LkVjiWMNjLeAp1SH1UlLx3ULu/DCu4vq5R4/uvTm+zrvsMsuYmGLg==", - "dev": true, - "dependencies": { - "tabbable": "^6.1.2" - } - }, "node_modules/@babel/code-frame": { "version": "7.22.10", "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.10.tgz", @@ -2321,16 +2296,11 @@ "integrity": "sha512-t6QWdVNmqB9OloYAvVWYNjvqlnrXs/m0nCRNwPGt3ZiAPXn5CpkpSn2UD6LPqGp6vPxKG81lbFQvwCw9az4qIg==", "peer": true }, - "node_modules/@esri/calcite-colors": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/@esri/calcite-colors/-/calcite-colors-6.1.0.tgz", - "integrity": "sha512-wHQYWFtDa6c328EraXEVZvgOiaQyYr0yuaaZ0G3cB4C3lSkWefW34L/e5TLAhtuG3zJ/wR6pl5X1YYNfBc0/4Q==", - "dev": true - }, "node_modules/@esri/calcite-components": { "version": "1.6.1", "resolved": "https://registry.npmjs.org/@esri/calcite-components/-/calcite-components-1.6.1.tgz", "integrity": "sha512-qvaSMdbSjueeNd7GI2Wuspv8z+c6c1Kd4Qe34bfnWS9UDkhBF0H/YXRCp/mKYcvbI04MVQQdyWS+ZHi8XQllDQ==", + "peer": true, "dependencies": { "@floating-ui/dom": "1.5.1", "@stencil/core": "2.22.3", @@ -2348,6 +2318,7 @@ "version": "2.22.3", "resolved": "https://registry.npmjs.org/@stencil/core/-/core-2.22.3.tgz", "integrity": "sha512-kmVA0M/HojwsfkeHsifvHVIYe4l5tin7J5+DLgtl8h6WWfiMClND5K3ifCXXI2ETDNKiEk21p6jql3Fx9o2rng==", + "peer": true, "bin": { "stencil": "bin/stencil" }, @@ -2360,6 +2331,7 @@ "version": "7.5.2", "resolved": "https://registry.npmjs.org/focus-trap/-/focus-trap-7.5.2.tgz", "integrity": "sha512-p6vGNNWLDGwJCiEjkSK6oERj/hEyI9ITsSwIUICBoKLlWiTWXJRfQibCwcoi50rTZdbi87qDtUlMCmQwsGSgPw==", + "peer": true, "dependencies": { "tabbable": "^6.2.0" } @@ -2512,6 +2484,7 @@ "version": "1.4.1", "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.4.1.tgz", "integrity": "sha512-jk3WqquEJRlcyu7997NtR5PibI+y5bi+LS3hPmguVClypenMsCY3CBa3LAQnozRCtCrYWSEtAdiskpamuJRFOQ==", + "peer": true, "dependencies": { "@floating-ui/utils": "^0.1.1" } @@ -2520,6 +2493,7 @@ "version": "1.5.1", "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.5.1.tgz", "integrity": "sha512-KwvVcPSXg6mQygvA1TjbN/gh///36kKtllIF8SUm0qpFj8+rvYrpvlYdL1JoA71SHpDqgSSdGOSoQ0Mp3uY5aw==", + "peer": true, "dependencies": { "@floating-ui/core": "^1.4.1", "@floating-ui/utils": "^0.1.1" @@ -2528,7 +2502,8 @@ "node_modules/@floating-ui/utils": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.1.1.tgz", - "integrity": "sha512-m0G6wlnhm/AX0H12IOWtK8gASEMffnX08RtKkCgTdHb9JpHKGloI7icFfLg9ZmQeavcvR0PKmzxClyuFPSjKWw==" + "integrity": "sha512-m0G6wlnhm/AX0H12IOWtK8gASEMffnX08RtKkCgTdHb9JpHKGloI7icFfLg9ZmQeavcvR0PKmzxClyuFPSjKWw==", + "peer": true }, "node_modules/@humanwhocodes/config-array": { "version": "0.11.10", @@ -3719,16 +3694,6 @@ "pako": "^1.0.10" } }, - "node_modules/@popperjs/core": { - "version": "2.11.8", - "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz", - "integrity": "sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==", - "dev": true, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/popperjs" - } - }, "node_modules/@puppeteer/browsers": { "version": "1.6.0", "resolved": "https://registry.npmjs.org/@puppeteer/browsers/-/browsers-1.6.0.tgz", @@ -3963,6 +3928,7 @@ "version": "3.0.3", "resolved": "https://registry.npmjs.org/@types/color/-/color-3.0.3.tgz", "integrity": "sha512-X//qzJ3d3Zj82J9sC/C18ZY5f43utPbAJ6PhYt/M7uG6etcF6MRpKdN880KBy43B0BMzSfeT96MzrsNjFI3GbA==", + "peer": true, "dependencies": { "@types/color-convert": "*" } @@ -3971,6 +3937,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/@types/color-convert/-/color-convert-2.0.0.tgz", "integrity": "sha512-m7GG7IKKGuJUXvkZ1qqG3ChccdIM/qBBo913z+Xft0nKCX4hAU/IxKwZBU4cpRZ7GS5kV4vOblUkILtSShCPXQ==", + "peer": true, "dependencies": { "@types/color-name": "*" } @@ -3978,7 +3945,8 @@ "node_modules/@types/color-name": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/@types/color-name/-/color-name-1.1.1.tgz", - "integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==" + "integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==", + "peer": true }, "node_modules/@types/graceful-fs": { "version": "4.1.6", @@ -5442,6 +5410,7 @@ "version": "4.2.3", "resolved": "https://registry.npmjs.org/color/-/color-4.2.3.tgz", "integrity": "sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==", + "peer": true, "dependencies": { "color-convert": "^2.0.1", "color-string": "^1.9.0" @@ -5470,6 +5439,7 @@ "version": "1.9.1", "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz", "integrity": "sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==", + "peer": true, "dependencies": { "color-name": "^1.0.0", "simple-swizzle": "^0.2.2" @@ -5505,7 +5475,8 @@ "node_modules/composed-offset-position": { "version": "0.0.4", "resolved": "https://registry.npmjs.org/composed-offset-position/-/composed-offset-position-0.0.4.tgz", - "integrity": "sha512-vMlvu1RuNegVE0YsCDSV/X4X10j56mq7PCIyOKK74FxkXzGLwhOUmdkJLSdOBOMwWycobGUMgft2lp+YgTe8hw==" + "integrity": "sha512-vMlvu1RuNegVE0YsCDSV/X4X10j56mq7PCIyOKK74FxkXzGLwhOUmdkJLSdOBOMwWycobGUMgft2lp+YgTe8hw==", + "peer": true }, "node_modules/concat-map": { "version": "0.0.1", @@ -5692,7 +5663,8 @@ "node_modules/dayjs": { "version": "1.11.9", "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.9.tgz", - "integrity": "sha512-QvzAURSbQ0pKdIye2txOzNaHmxtUBXerpY0FJsFXUMKbIZeFm5ht1LS/jFsrncjnmtv8HsG0W2g6c0zUjZWmpA==" + "integrity": "sha512-QvzAURSbQ0pKdIye2txOzNaHmxtUBXerpY0FJsFXUMKbIZeFm5ht1LS/jFsrncjnmtv8HsG0W2g6c0zUjZWmpA==", + "peer": true }, "node_modules/debug": { "version": "4.3.4", @@ -10394,7 +10366,8 @@ "node_modules/lodash-es": { "version": "4.17.21", "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz", - "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==" + "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==", + "peer": true }, "node_modules/lodash.debounce": { "version": "4.0.8", @@ -10527,15 +10500,6 @@ "yallist": "^3.0.2" } }, - "node_modules/luxon": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/luxon/-/luxon-3.3.0.tgz", - "integrity": "sha512-An0UCfG/rSiqtAIiBPO0Y9/zAnHUZxAMiCpTd5h2smgsj7GGmcenvrvww2cqNA8/4A5ZrD1gJpHN2mIHZQF+Mg==", - "dev": true, - "engines": { - "node": ">=12" - } - }, "node_modules/make-dir": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", @@ -12661,6 +12625,7 @@ "version": "0.2.2", "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz", "integrity": "sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==", + "peer": true, "dependencies": { "is-arrayish": "^0.3.1" } @@ -12668,7 +12633,8 @@ "node_modules/simple-swizzle/node_modules/is-arrayish": { "version": "0.3.2", "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz", - "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==" + "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==", + "peer": true }, "node_modules/sisteransi": { "version": "1.0.5", @@ -12759,7 +12725,8 @@ "node_modules/sortablejs": { "version": "1.15.0", "resolved": "https://registry.npmjs.org/sortablejs/-/sortablejs-1.15.0.tgz", - "integrity": "sha512-bv9qgVMjUMf89wAvM6AxVvS/4MX3sPeN0+agqShejLU5z5GX4C75ow1O2e5k4L6XItUyAK3gH6AxSbXrOM5e8w==" + "integrity": "sha512-bv9qgVMjUMf89wAvM6AxVvS/4MX3sPeN0+agqShejLU5z5GX4C75ow1O2e5k4L6XItUyAK3gH6AxSbXrOM5e8w==", + "peer": true }, "node_modules/source-map": { "version": "0.6.1", @@ -14082,32 +14049,6 @@ "@jridgewell/trace-mapping": "^0.3.9" } }, - "@arcgis/core": { - "version": "4.27.6", - "resolved": "https://registry.npmjs.org/@arcgis/core/-/core-4.27.6.tgz", - "integrity": "sha512-Pdz8Y1hHpQm2LKkJUGNrag2o2pQ9Pe8KHjywWb+TOJcfqM8L2UQBLmtUGY26VmfMwT/FfnUfNJ7HhYzHi5ef0w==", - "dev": true, - "requires": { - "@esri/arcgis-html-sanitizer": "~3.0.1", - "@esri/calcite-colors": "~6.1.0", - "@esri/calcite-components": "^1.4.2", - "@popperjs/core": "~2.11.7", - "focus-trap": "~7.4.3", - "luxon": "~3.3.0", - "sortablejs": "~1.15.0" - }, - "dependencies": { - "focus-trap": { - "version": "7.4.3", - "resolved": "https://registry.npmjs.org/focus-trap/-/focus-trap-7.4.3.tgz", - "integrity": "sha512-BgSSbK4GPnS2VbtZ50VtOv1Sti6DIkj3+LkVjiWMNjLeAp1SH1UlLx3ULu/DCu4vq5R4/uvTm+zrvsMsuYmGLg==", - "dev": true, - "requires": { - "tabbable": "^6.1.2" - } - } - } - }, "@babel/code-frame": { "version": "7.22.10", "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.10.tgz", @@ -15698,16 +15639,11 @@ "integrity": "sha512-t6QWdVNmqB9OloYAvVWYNjvqlnrXs/m0nCRNwPGt3ZiAPXn5CpkpSn2UD6LPqGp6vPxKG81lbFQvwCw9az4qIg==", "peer": true }, - "@esri/calcite-colors": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/@esri/calcite-colors/-/calcite-colors-6.1.0.tgz", - "integrity": "sha512-wHQYWFtDa6c328EraXEVZvgOiaQyYr0yuaaZ0G3cB4C3lSkWefW34L/e5TLAhtuG3zJ/wR6pl5X1YYNfBc0/4Q==", - "dev": true - }, "@esri/calcite-components": { "version": "1.6.1", "resolved": "https://registry.npmjs.org/@esri/calcite-components/-/calcite-components-1.6.1.tgz", "integrity": "sha512-qvaSMdbSjueeNd7GI2Wuspv8z+c6c1Kd4Qe34bfnWS9UDkhBF0H/YXRCp/mKYcvbI04MVQQdyWS+ZHi8XQllDQ==", + "peer": true, "requires": { "@floating-ui/dom": "1.5.1", "@stencil/core": "2.22.3", @@ -15724,12 +15660,14 @@ "@stencil/core": { "version": "2.22.3", "resolved": "https://registry.npmjs.org/@stencil/core/-/core-2.22.3.tgz", - "integrity": "sha512-kmVA0M/HojwsfkeHsifvHVIYe4l5tin7J5+DLgtl8h6WWfiMClND5K3ifCXXI2ETDNKiEk21p6jql3Fx9o2rng==" + "integrity": "sha512-kmVA0M/HojwsfkeHsifvHVIYe4l5tin7J5+DLgtl8h6WWfiMClND5K3ifCXXI2ETDNKiEk21p6jql3Fx9o2rng==", + "peer": true }, "focus-trap": { "version": "7.5.2", "resolved": "https://registry.npmjs.org/focus-trap/-/focus-trap-7.5.2.tgz", "integrity": "sha512-p6vGNNWLDGwJCiEjkSK6oERj/hEyI9ITsSwIUICBoKLlWiTWXJRfQibCwcoi50rTZdbi87qDtUlMCmQwsGSgPw==", + "peer": true, "requires": { "tabbable": "^6.2.0" } @@ -15852,6 +15790,7 @@ "version": "1.4.1", "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.4.1.tgz", "integrity": "sha512-jk3WqquEJRlcyu7997NtR5PibI+y5bi+LS3hPmguVClypenMsCY3CBa3LAQnozRCtCrYWSEtAdiskpamuJRFOQ==", + "peer": true, "requires": { "@floating-ui/utils": "^0.1.1" } @@ -15860,6 +15799,7 @@ "version": "1.5.1", "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.5.1.tgz", "integrity": "sha512-KwvVcPSXg6mQygvA1TjbN/gh///36kKtllIF8SUm0qpFj8+rvYrpvlYdL1JoA71SHpDqgSSdGOSoQ0Mp3uY5aw==", + "peer": true, "requires": { "@floating-ui/core": "^1.4.1", "@floating-ui/utils": "^0.1.1" @@ -15868,7 +15808,8 @@ "@floating-ui/utils": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.1.1.tgz", - "integrity": "sha512-m0G6wlnhm/AX0H12IOWtK8gASEMffnX08RtKkCgTdHb9JpHKGloI7icFfLg9ZmQeavcvR0PKmzxClyuFPSjKWw==" + "integrity": "sha512-m0G6wlnhm/AX0H12IOWtK8gASEMffnX08RtKkCgTdHb9JpHKGloI7icFfLg9ZmQeavcvR0PKmzxClyuFPSjKWw==", + "peer": true }, "@humanwhocodes/config-array": { "version": "0.11.10", @@ -16865,12 +16806,6 @@ "pako": "^1.0.10" } }, - "@popperjs/core": { - "version": "2.11.8", - "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz", - "integrity": "sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==", - "dev": true - }, "@puppeteer/browsers": { "version": "1.6.0", "resolved": "https://registry.npmjs.org/@puppeteer/browsers/-/browsers-1.6.0.tgz", @@ -17060,6 +16995,7 @@ "version": "3.0.3", "resolved": "https://registry.npmjs.org/@types/color/-/color-3.0.3.tgz", "integrity": "sha512-X//qzJ3d3Zj82J9sC/C18ZY5f43utPbAJ6PhYt/M7uG6etcF6MRpKdN880KBy43B0BMzSfeT96MzrsNjFI3GbA==", + "peer": true, "requires": { "@types/color-convert": "*" } @@ -17068,6 +17004,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/@types/color-convert/-/color-convert-2.0.0.tgz", "integrity": "sha512-m7GG7IKKGuJUXvkZ1qqG3ChccdIM/qBBo913z+Xft0nKCX4hAU/IxKwZBU4cpRZ7GS5kV4vOblUkILtSShCPXQ==", + "peer": true, "requires": { "@types/color-name": "*" } @@ -17075,7 +17012,8 @@ "@types/color-name": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/@types/color-name/-/color-name-1.1.1.tgz", - "integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==" + "integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==", + "peer": true }, "@types/graceful-fs": { "version": "4.1.6", @@ -18114,6 +18052,7 @@ "version": "4.2.3", "resolved": "https://registry.npmjs.org/color/-/color-4.2.3.tgz", "integrity": "sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==", + "peer": true, "requires": { "color-convert": "^2.0.1", "color-string": "^1.9.0" @@ -18136,6 +18075,7 @@ "version": "1.9.1", "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz", "integrity": "sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==", + "peer": true, "requires": { "color-name": "^1.0.0", "simple-swizzle": "^0.2.2" @@ -18165,7 +18105,8 @@ "composed-offset-position": { "version": "0.0.4", "resolved": "https://registry.npmjs.org/composed-offset-position/-/composed-offset-position-0.0.4.tgz", - "integrity": "sha512-vMlvu1RuNegVE0YsCDSV/X4X10j56mq7PCIyOKK74FxkXzGLwhOUmdkJLSdOBOMwWycobGUMgft2lp+YgTe8hw==" + "integrity": "sha512-vMlvu1RuNegVE0YsCDSV/X4X10j56mq7PCIyOKK74FxkXzGLwhOUmdkJLSdOBOMwWycobGUMgft2lp+YgTe8hw==", + "peer": true }, "concat-map": { "version": "0.0.1", @@ -18323,7 +18264,8 @@ "dayjs": { "version": "1.11.9", "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.9.tgz", - "integrity": "sha512-QvzAURSbQ0pKdIye2txOzNaHmxtUBXerpY0FJsFXUMKbIZeFm5ht1LS/jFsrncjnmtv8HsG0W2g6c0zUjZWmpA==" + "integrity": "sha512-QvzAURSbQ0pKdIye2txOzNaHmxtUBXerpY0FJsFXUMKbIZeFm5ht1LS/jFsrncjnmtv8HsG0W2g6c0zUjZWmpA==", + "peer": true }, "debug": { "version": "4.3.4", @@ -21975,7 +21917,8 @@ "lodash-es": { "version": "4.17.21", "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz", - "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==" + "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==", + "peer": true }, "lodash.debounce": { "version": "4.0.8", @@ -22086,12 +22029,6 @@ "yallist": "^3.0.2" } }, - "luxon": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/luxon/-/luxon-3.3.0.tgz", - "integrity": "sha512-An0UCfG/rSiqtAIiBPO0Y9/zAnHUZxAMiCpTd5h2smgsj7GGmcenvrvww2cqNA8/4A5ZrD1gJpHN2mIHZQF+Mg==", - "dev": true - }, "make-dir": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", @@ -23662,6 +23599,7 @@ "version": "0.2.2", "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz", "integrity": "sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==", + "peer": true, "requires": { "is-arrayish": "^0.3.1" }, @@ -23669,7 +23607,8 @@ "is-arrayish": { "version": "0.3.2", "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz", - "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==" + "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==", + "peer": true } } }, @@ -23743,7 +23682,8 @@ "sortablejs": { "version": "1.15.0", "resolved": "https://registry.npmjs.org/sortablejs/-/sortablejs-1.15.0.tgz", - "integrity": "sha512-bv9qgVMjUMf89wAvM6AxVvS/4MX3sPeN0+agqShejLU5z5GX4C75ow1O2e5k4L6XItUyAK3gH6AxSbXrOM5e8w==" + "integrity": "sha512-bv9qgVMjUMf89wAvM6AxVvS/4MX3sPeN0+agqShejLU5z5GX4C75ow1O2e5k4L6XItUyAK3gH6AxSbXrOM5e8w==", + "peer": true }, "source-map": { "version": "0.6.1", diff --git a/package.json b/package.json index 6509e7af9..e2f6343e9 100644 --- a/package.json +++ b/package.json @@ -30,7 +30,6 @@ "update-browserslist": "npx browserslist@latest --update-db" }, "devDependencies": { - "@arcgis/core": "^4.27.6", "@babel/core": "^7.22.10", "@babel/preset-env": "^7.22.10", "@babel/preset-typescript": "^7.22.5", From e94e2ae01b0550252931b993b117708104668b7a Mon Sep 17 00:00:00 2001 From: John Hauck Date: Wed, 30 Aug 2023 13:49:52 -0600 Subject: [PATCH 182/406] handle column templates --- src/components.d.ts | 14 +++++-- .../crowdsource-manager.tsx | 31 +++++++++++++- src/components/layer-table/layer-table.tsx | 40 +++++++++++++++++-- src/components/layer-table/readme.md | 11 ++--- src/components/map-card/map-card.tsx | 9 +++-- src/components/map-card/readme.md | 6 +-- src/demos/crowdsource-manager.html | 27 ++++++++++++- src/utils/interfaces.ts | 11 +++++ 8 files changed, 129 insertions(+), 20 deletions(-) diff --git a/src/components.d.ts b/src/components.d.ts index d5dc6dbf9..8d06197f5 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -5,9 +5,9 @@ * It contains typing information for all components that exist in this project. */ import { HTMLStencilElement, JSXBase } from "@stencil/core/internal"; -import { DistanceUnit, EDrawMode, EExpandType, ELayoutMode, IExportInfos, IInventoryItem, IMapInfo, ISearchConfiguration, ISelectionSet, ISketchGraphicsChange, ISolutionSpatialReferenceInfo, ISpatialRefRepresentation, IValueChange } from "./utils/interfaces"; +import { DistanceUnit, EDrawMode, EExpandType, ELayoutMode, IExportInfos, IInventoryItem, IMapChange, IMapInfo, ISearchConfiguration, ISelectionSet, ISketchGraphicsChange, ISolutionSpatialReferenceInfo, ISpatialRefRepresentation, IValueChange } from "./utils/interfaces"; import { UserSession } from "@esri/solution-common"; -export { DistanceUnit, EDrawMode, EExpandType, ELayoutMode, IExportInfos, IInventoryItem, IMapInfo, ISearchConfiguration, ISelectionSet, ISketchGraphicsChange, ISolutionSpatialReferenceInfo, ISpatialRefRepresentation, IValueChange } from "./utils/interfaces"; +export { DistanceUnit, EDrawMode, EExpandType, ELayoutMode, IExportInfos, IInventoryItem, IMapChange, IMapInfo, ISearchConfiguration, ISelectionSet, ISketchGraphicsChange, ISolutionSpatialReferenceInfo, ISpatialRefRepresentation, IValueChange } from "./utils/interfaces"; export { UserSession } from "@esri/solution-common"; export namespace Components { interface BasemapGallery { @@ -184,6 +184,10 @@ export namespace Components { * @returns Promise that resolves when the operation is complete */ "getSelectedGraphics": () => Promise<__esri.Graphic[]>; + /** + * IMapInfo: key configuration details about the current map + */ + "mapInfo": IMapInfo; /** * esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html */ @@ -1242,6 +1246,10 @@ declare namespace LocalJSX { "value"?: any; } interface LayerTable { + /** + * IMapInfo: key configuration details about the current map + */ + "mapInfo"?: IMapInfo; /** * esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html */ @@ -1279,7 +1287,7 @@ declare namespace LocalJSX { /** * Emitted when a new map is loaded */ - "onMapChanged"?: (event: MapCardCustomEvent<__esri.MapView>) => void; + "onMapChanged"?: (event: MapCardCustomEvent) => void; } interface MapDrawTools { /** diff --git a/src/components/crowdsource-manager/crowdsource-manager.tsx b/src/components/crowdsource-manager/crowdsource-manager.tsx index 3b259e151..3a6645313 100644 --- a/src/components/crowdsource-manager/crowdsource-manager.tsx +++ b/src/components/crowdsource-manager/crowdsource-manager.tsx @@ -17,7 +17,7 @@ import { Component, Element, Host, h, Listen, Prop, State, VNode } from "@stencil/core"; import CrowdsourceManager_T9n from "../../assets/t9n/crowdsource-manager/resources.json"; import { getLocaleComponentStrings } from "../../utils/locale"; -import { ELayoutMode, IMapInfo, ISearchConfiguration } from "../../utils/interfaces"; +import { ELayoutMode, IMapChange, IMapInfo, ISearchConfiguration } from "../../utils/interfaces"; @Component({ tag: "crowdsource-manager", @@ -101,6 +101,11 @@ export class CrowdsourceManager { // //-------------------------------------------------------------------------- + /** + * IMapInfo: The current map info stores configuration details + */ + protected _mapInfo: IMapInfo; + //-------------------------------------------------------------------------- // // Watch handlers @@ -136,7 +141,9 @@ export class CrowdsourceManager { async mapChanged( evt: CustomEvent ): Promise { - this._mapView = evt.detail; + const mapChange: IMapChange = evt.detail; + this._mapInfo = this._getMapInfo(mapChange.id); + this._mapView = mapChange.mapView; this._mapView.popupEnabled = false; } @@ -431,6 +438,7 @@ export class CrowdsourceManager {
{ + if (mi.id === id) { + mapInfo = mi; + return true; + } + }) + return mapInfo; + } + /** * Fetches the component's translations * diff --git a/src/components/layer-table/layer-table.tsx b/src/components/layer-table/layer-table.tsx index 6b045e3fa..7fd3dd999 100644 --- a/src/components/layer-table/layer-table.tsx +++ b/src/components/layer-table/layer-table.tsx @@ -21,7 +21,7 @@ import { getLocaleComponentStrings } from "../../utils/locale"; import { getLayer, getMapLayerIds, goToSelection } from "../../utils/mapViewUtils"; import { queryFeaturesByID, queryAllIds } from "../../utils/queryUtils"; import * as downloadUtils from "../../utils/downloadUtils"; -import { IExportInfos, IMapClick } from "../../utils/interfaces"; +import { IExportInfos, ILayerInfo, IMapClick, IMapInfo } from "../../utils/interfaces"; @Component({ tag: "layer-table", @@ -42,6 +42,11 @@ export class LayerTable { // //-------------------------------------------------------------------------- + /** + * IMapInfo: key configuration details about the current map + */ + @Prop() mapInfo: IMapInfo; + /** * esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html */ @@ -537,7 +542,8 @@ export class LayerTable { * @returns void */ protected async _getTable( - node: HTMLDivElement + node: HTMLDivElement, + columnTemplates?: __esri.FieldColumnTemplate[] | __esri.GroupColumnTemplate[] ): Promise { if (this._layer) { await this._layer.when(async () => { @@ -551,6 +557,9 @@ export class LayerTable { header: false, menu: false }, + tableTemplate: { + columnTemplates + }, container: node } as __esri.FeatureTableProperties); @@ -588,7 +597,9 @@ export class LayerTable { this._clearSelection(); this._allIds = []; this.featureSelectionChange.emit(this._selectedIndexes); + const columnTemplates = this._getColumnTemplates(this._layer.id); this._table.layer = this._layer; + this._table.tableTemplate.columnTemplates = columnTemplates; this._editEnabled = this._layer.editingEnabled; this._table.view = this.mapView; this._table.editingEnabled = this._editEnabled; @@ -819,10 +830,13 @@ export class LayerTable { const id: string = evt.detail[0]; if (id !== this._layer.id || this._allIds.length === 0) { this._fetchingData = true; + const columnTemplates = this._getColumnTemplates(id); this._layer = await getLayer(this.mapView, id); this._allIds = await queryAllIds(this._layer) if (!this._table) { - await this._getTable(this._tableNode); + await this._getTable(this._tableNode, columnTemplates); + } else if (columnTemplates) { + this._table.tableTemplate.columnTemplates = columnTemplates; } await this._table.when(() => { this._table.highlightIds.removeAll(); @@ -836,6 +850,26 @@ export class LayerTable { this._fetchingData = false; } + /** + * Get any columnt templates for the current map + * + * @param id item ID of the current map + * + * @returns a list of column templates if they exist + */ + protected _getColumnTemplates( + id: string + ): __esri.FieldColumnTemplate[] | __esri.GroupColumnTemplate[] { + let layerInfo: ILayerInfo; + this.mapInfo.layerInfos?.some(li => { + if (li.id === id) { + layerInfo = li; + return true; + } + }); + return layerInfo?.columnTemplates; + } + /** * Fetches the component's translations * diff --git a/src/components/layer-table/readme.md b/src/components/layer-table/readme.md index c65ce3bef..593dc94f7 100644 --- a/src/components/layer-table/readme.md +++ b/src/components/layer-table/readme.md @@ -7,11 +7,12 @@ ## Properties -| Property | Attribute | Description | Type | Default | -| ------------------------- | ----------------------------- | ------------------------------------------------------------------------------------------------------------------ | --------- | ----------- | -| `mapView` | -- | esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html | `MapView` | `undefined` | -| `showNewestFirst` | `show-newest-first` | boolean: when true the table will be sorted by objectid in descending order by default | `boolean` | `undefined` | -| `zoomAndScrollToSelected` | `zoom-and-scroll-to-selected` | boolean: When true the selected feature will zoomed to in the map and the row will be scrolled to within the table | `boolean` | `undefined` | +| Property | Attribute | Description | Type | Default | +| ------------------------- | ----------------------------- | ------------------------------------------------------------------------------------------------------------------ | ---------- | ----------- | +| `mapInfo` | -- | IMapInfo: key configuration details about the current map | `IMapInfo` | `undefined` | +| `mapView` | -- | esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html | `MapView` | `undefined` | +| `showNewestFirst` | `show-newest-first` | boolean: when true the table will be sorted by objectid in descending order by default | `boolean` | `undefined` | +| `zoomAndScrollToSelected` | `zoom-and-scroll-to-selected` | boolean: When true the selected feature will zoomed to in the map and the row will be scrolled to within the table | `boolean` | `undefined` | ## Events diff --git a/src/components/map-card/map-card.tsx b/src/components/map-card/map-card.tsx index 1b3a37014..a304e8708 100644 --- a/src/components/map-card/map-card.tsx +++ b/src/components/map-card/map-card.tsx @@ -16,7 +16,7 @@ import { Component, Element, Event, EventEmitter, Host, h, Listen, Prop, State } from "@stencil/core"; import { loadModules } from "../../utils/loadModules"; -import { IMapInfo, ISearchConfiguration } from "../../utils/interfaces"; +import { IMapChange, IMapInfo, ISearchConfiguration } from "../../utils/interfaces"; // TODO navigation and accessability isn't right for the map list // tab does not go into the list when it's open @@ -123,7 +123,7 @@ export class MapCard { /** * Emitted when a new map is loaded */ - @Event() mapChanged: EventEmitter<__esri.MapView>; + @Event() mapChanged: EventEmitter; /** * Listen for changes to map info and load the appropriate map @@ -219,7 +219,10 @@ export class MapCard { await this.mapView.when(() => { this._loadedId = id; this._searchConfiguration = this._webMapInfo.searchConfiguration; - this.mapChanged.emit(this.mapView); + this.mapChanged.emit({ + id: id, + mapView: this.mapView + }); this.mapView.ui.add(this._mapTools, { position: "top-right", index: 0}); }); } diff --git a/src/components/map-card/readme.md b/src/components/map-card/readme.md index 17e1c15d7..8a2ee60db 100644 --- a/src/components/map-card/readme.md +++ b/src/components/map-card/readme.md @@ -15,9 +15,9 @@ ## Events -| Event | Description | Type | -| ------------ | -------------------------------- | ---------------------- | -| `mapChanged` | Emitted when a new map is loaded | `CustomEvent` | +| Event | Description | Type | +| ------------ | -------------------------------- | ------------------------- | +| `mapChanged` | Emitted when a new map is loaded | `CustomEvent` | ## Dependencies diff --git a/src/demos/crowdsource-manager.html b/src/demos/crowdsource-manager.html index 599eba9f1..778796250 100644 --- a/src/demos/crowdsource-manager.html +++ b/src/demos/crowdsource-manager.html @@ -84,7 +84,32 @@ ...custom, ...[{ id: "ce3dec81bf714d3bb71da9691ab686d1", - name: "Popup Configured Map" + name: "Popup Configured Map", + // layerInfos: [{ + // id: "Requests_681", + // columnTemplates: [{ + // type: "field", + // fieldName: "ObjectId", + // visible: false + // }, { + // type: "field", + // fieldName: "reqcategory", + // label: "Request ID", + // visible: true + // }] + // }, { + // id: "Requets_6608", + // columnTemplates: [{ + // type: "field", + // fieldName: "requestglobalid", + // visible: false + // }, { + // type: "field", + // fieldName: "comments", + // label: "Comments", + // visible: true + // }] + // }] }, { id: "863e4f6f2a7840db896cc1b1606d552d", name: "IA map" diff --git a/src/utils/interfaces.ts b/src/utils/interfaces.ts index 0a729dfc8..3e0102ffc 100644 --- a/src/utils/interfaces.ts +++ b/src/utils/interfaces.ts @@ -448,6 +448,17 @@ export interface IMapInfo { name: string; searchConfiguration?: ISearchConfiguration; filters?: any[]; // TODO generate an interface for this once we know how it will be passed in + layerInfos?: ILayerInfo[]; +} + +export interface ILayerInfo { + id: string; + columnTemplates: __esri.FieldColumnTemplate[] | __esri.GroupColumnTemplate[]; +} + +export interface IMapChange { + id: string; + mapView: __esri.MapView; } export interface IExportInfos { From abf2060e83db966e7953607e96efb0dcd8931d7d Mon Sep 17 00:00:00 2001 From: John Hauck Date: Thu, 31 Aug 2023 06:53:15 -0600 Subject: [PATCH 183/406] update version --- CHANGELOG.md | 5 ++++- package-lock.json | 4 ++-- package.json | 2 +- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 32f2c4ee3..fa5fcd4d6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,8 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm ## [Unreleased] +## [0.6.9] - Aug 31st 2023 + ## [0.6.8] - Aug 25th 2023 ## [0.6.7] - Aug 21st 2023 @@ -205,4 +207,5 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm [0.6.6]: https://github.com/Esri/solution.js/compare/v0.6.5...v0.6.6 "v0.6.6" [0.6.7]: https://github.com/Esri/solution.js/compare/v0.6.6...v0.6.7 "v0.6.7" [0.6.8]: https://github.com/Esri/solution.js/compare/v0.6.7...v0.6.8 "v0.6.8" -[Unreleased]: https://github.com/Esri/solution.js/compare/v0.6.8...HEAD "Unreleased Changes" +[0.6.9]: https://github.com/Esri/solution.js/compare/v0.6.8...v0.6.9 "v0.6.9" +[Unreleased]: https://github.com/Esri/solution.js/compare/v0.6.9...HEAD "Unreleased Changes" diff --git a/package-lock.json b/package-lock.json index 85d76d7f3..29181aa2e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@esri/solutions-components", - "version": "0.6.8", + "version": "0.6.9", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@esri/solutions-components", - "version": "0.6.8", + "version": "0.6.9", "license": "Apache-2.0", "dependencies": { "@esri/hub-common": "^12.37.1", diff --git a/package.json b/package.json index e2f6343e9..047c58bb3 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@esri/solutions-components", - "version": "0.6.8", + "version": "0.6.9", "description": "Web Components for Esri's Solutions Applications", "main": "dist/index.cjs.js", "module": "dist/index.js", From 26c35fd777d48f19cf50d1e6843b89ae0c356067 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Tue, 5 Sep 2023 12:10:17 -0600 Subject: [PATCH 184/406] remove zoom in/out and home from map-tools --- src/assets/t9n/map-tools/resources.json | 3 - src/assets/t9n/map-tools/resources_en.json | 3 - src/components/map-card/map-card.css | 7 --- src/components/map-card/map-card.tsx | 20 +++++- src/components/map-tools/map-tools.tsx | 71 +--------------------- 5 files changed, 18 insertions(+), 86 deletions(-) diff --git a/src/assets/t9n/map-tools/resources.json b/src/assets/t9n/map-tools/resources.json index dc15f4ba4..f5c7f99ba 100644 --- a/src/assets/t9n/map-tools/resources.json +++ b/src/assets/t9n/map-tools/resources.json @@ -1,9 +1,6 @@ { - "home": "Home", "legend": "Legend", "search": "Search", - "zoomIn": "Zoom In", - "zoomOut": "Zoom Out", "expand": "Expand", "basemap": "Basemap" } diff --git a/src/assets/t9n/map-tools/resources_en.json b/src/assets/t9n/map-tools/resources_en.json index dc15f4ba4..f5c7f99ba 100644 --- a/src/assets/t9n/map-tools/resources_en.json +++ b/src/assets/t9n/map-tools/resources_en.json @@ -1,9 +1,6 @@ { - "home": "Home", "legend": "Legend", "search": "Search", - "zoomIn": "Zoom In", - "zoomOut": "Zoom Out", "expand": "Expand", "basemap": "Basemap" } diff --git a/src/components/map-card/map-card.css b/src/components/map-card/map-card.css index deb21a22f..007ef4415 100644 --- a/src/components/map-card/map-card.css +++ b/src/components/map-card/map-card.css @@ -23,10 +23,3 @@ .map-height { height: calc(100% - 58px); } - -/* Not sure how else to do this - tried navigation gamepad settings but enabled: false still shows this */ - -.esri-zoom { - display: none !important; -} diff --git a/src/components/map-card/map-card.tsx b/src/components/map-card/map-card.tsx index a304e8708..265b2072e 100644 --- a/src/components/map-card/map-card.tsx +++ b/src/components/map-card/map-card.tsx @@ -77,6 +77,11 @@ export class MapCard { // //-------------------------------------------------------------------------- + /** + * esri/widgets/Home: https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Home.html + */ + protected Home: typeof import("esri/widgets/Home"); + /** * esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html */ @@ -179,12 +184,14 @@ export class MapCard { * @protected */ protected async _initModules(): Promise { - const [WebMap, MapView] = await loadModules([ + const [WebMap, MapView, Home] = await loadModules([ "esri/WebMap", - "esri/views/MapView" + "esri/views/MapView", + "esri/widgets/Home" ]); this.WebMap = WebMap; this.MapView = MapView; + this.Home = Home; } /** @@ -219,11 +226,18 @@ export class MapCard { await this.mapView.when(() => { this._loadedId = id; this._searchConfiguration = this._webMapInfo.searchConfiguration; + + const home = new this.Home({ + view: this.mapView + }); + + this.mapView.ui.add(home, { position: "top-left", index: 3}); + this.mapView.ui.add(this._mapTools, { position: "top-right", index: 0}); + this.mapChanged.emit({ id: id, mapView: this.mapView }); - this.mapView.ui.add(this._mapTools, { position: "top-right", index: 0}); }); } } diff --git a/src/components/map-tools/map-tools.tsx b/src/components/map-tools/map-tools.tsx index 5e53a963b..b82cdc7c6 100644 --- a/src/components/map-tools/map-tools.tsx +++ b/src/components/map-tools/map-tools.tsx @@ -97,11 +97,6 @@ export class MapTools { */ protected _basemapElement: HTMLBasemapGalleryElement; - /** - * esri/geometry/Extent: https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Extent.html - */ - protected _homeExtent: __esri.Extent; - /** * HTMLLegendElement: The legend element node */ @@ -118,16 +113,6 @@ export class MapTools { // //-------------------------------------------------------------------------- - /** - * Store the home extent when the map view changes - */ - @Watch("mapView") - async mapViewWatchHandler(): Promise { - await this.mapView.when(() => { - this._homeExtent = this.mapView.extent; - }); - } - /** * When the _showBasemapWidget property is true display the basemap gallery */ @@ -230,9 +215,6 @@ export class MapTools { text="" /> - {this._getActionGroup("home", false, this._translations.home, () => void this._goHome())} - {this._getActionGroup("plus", false, this._translations.zoomIn, () => void this._zoomIn())} - {this._getActionGroup("minus", false, this._translations.zoomOut, () => void this._zoomOut())} {this._getActionGroup("legend", false, this._translations.legend, () => this._showLegend())} {this._getActionGroup("magnifying-glass", false, this._translations.search, () => this._search())} {this._getActionGroup("expand", false, this._translations.expand, () => this._expand())} @@ -296,24 +278,13 @@ export class MapTools { > - + {tip} ); } - /** - * Go to the exent that was first used when loading the map - * - * @returns void - * - * @protected - */ - protected async _goHome(): Promise { - await this.mapView.goTo(this._homeExtent); - } - // need to discuss this with the team protected _showLegend(): void { this._showLegendWidget = !this._showLegendWidget; @@ -326,46 +297,6 @@ export class MapTools { this._showTools = false; } - /** - * Fixed zoom in - * - * @returns void - * - * @protected - */ - protected async _zoomIn(): Promise { - await this._zoom(this.mapView.zoom + 1); - } - - /** - * Fixed zoom out - * - * @returns void - * - * @protected - */ - protected async _zoomOut(): Promise { - await this._zoom(this.mapView.zoom - 1); - } - - /** - * Zoom in/out at the maps current center point - * - * @param zoom Number to zoom level to go to - * - * @returns void - * - * @protected - */ - protected async _zoom( - zoom: number - ): Promise { - await this.mapView?.goTo({ - target: this.mapView.center, - zoom - }); - } - /** * Show/Hide the basemap picker * From 84c5c2504957689ec3433dfdc3626845e490e88a Mon Sep 17 00:00:00 2001 From: John Hauck Date: Tue, 5 Sep 2023 12:55:59 -0600 Subject: [PATCH 185/406] add count and num selected --- src/assets/t9n/layer-table/resources.json | 4 +++- src/assets/t9n/layer-table/resources_en.json | 4 +++- src/components/layer-table/layer-table.css | 20 ++++++++++++++++++++ src/components/layer-table/layer-table.tsx | 3 +++ 4 files changed, 29 insertions(+), 2 deletions(-) diff --git a/src/assets/t9n/layer-table/resources.json b/src/assets/t9n/layer-table/resources.json index 5373bd98f..8d34802c1 100644 --- a/src/assets/t9n/layer-table/resources.json +++ b/src/assets/t9n/layer-table/resources.json @@ -16,5 +16,7 @@ "deleteRows": "Delete Data", "deleteDisabled": "Delete Disabled", "editMultipleDisabled": "Edit Multiple Disabled", - "showAll": "Show all" + "showAll": "Show all", + "records": "records", + "selected": "selected" } diff --git a/src/assets/t9n/layer-table/resources_en.json b/src/assets/t9n/layer-table/resources_en.json index 5373bd98f..8d34802c1 100644 --- a/src/assets/t9n/layer-table/resources_en.json +++ b/src/assets/t9n/layer-table/resources_en.json @@ -16,5 +16,7 @@ "deleteRows": "Delete Data", "deleteDisabled": "Delete Disabled", "editMultipleDisabled": "Edit Multiple Disabled", - "showAll": "Show all" + "showAll": "Show all", + "records": "records", + "selected": "selected" } diff --git a/src/components/layer-table/layer-table.css b/src/components/layer-table/layer-table.css index 02bd06486..4c18d97f9 100644 --- a/src/components/layer-table/layer-table.css +++ b/src/components/layer-table/layer-table.css @@ -45,3 +45,23 @@ .height-51 { height: 51px; } + +.bottom-left { + position: absolute; + left: 0; + bottom: 0; +} + +html[dir="rtl"] .bottom-left { + position: absolute; + right: 0; + bottom: 0; +} + +.background { + background-color: var(--calcite-ui-background); +} + +.text-color { + color: var(--calcite-ui-text-1); +} diff --git a/src/components/layer-table/layer-table.tsx b/src/components/layer-table/layer-table.tsx index 7fd3dd999..a0fc7ef35 100644 --- a/src/components/layer-table/layer-table.tsx +++ b/src/components/layer-table/layer-table.tsx @@ -330,6 +330,9 @@ export class LayerTable { ref={this.onTableNodeCreate} /> +
+ {`${this._allIds.length} ${this._translations.records}, ${this._selectedIndexes.length} ${this._translations.selected}`} +
Date: Wed, 6 Sep 2023 08:31:57 -0700 Subject: [PATCH 186/406] Support field case not matching field name #293 --- src/utils/downloadUtils.ts | 31 +++++++++++++++++++++---------- 1 file changed, 21 insertions(+), 10 deletions(-) diff --git a/src/utils/downloadUtils.ts b/src/utils/downloadUtils.ts index c2f78108c..02d1615c4 100644 --- a/src/utils/downloadUtils.ts +++ b/src/utils/downloadUtils.ts @@ -24,6 +24,10 @@ import { IExportInfo, IExportInfos } from "../utils/interfaces"; export { ILabel } from "./pdfUtils"; +export interface IAttributeOrigNames { + [lowercaseName: string]: string; +} + export interface IAttributeDomains { [attributeName: string]: __esri.CodedValueDomain | __esri.RangeDomain | __esri.InheritedDomain | null; } @@ -436,8 +440,8 @@ export function _getFieldNamesFromFieldExpressions( * all attributes are exported * @param attributeFormats Empty object to hold the formats for each attribute in a feature; the object is filled * with formats by this function - * @returns A Promise resolving to the format of a single label, e.g., for ILabelFormat type "pattern": - * "{NAME}|{STREET}|{CITY}, {STATE} {ZIP}" + * @returns A Promise resolving to the format of a single label with fields coerced to lowercase, e.g., + * for ILabelFormat type "pattern": "{name}|{street}|{city}, {state} {zip}" */ export async function _getLabelFormat( layer: __esri.FeatureLayer, @@ -454,7 +458,7 @@ export async function _getLabelFormat( // Extract any format info that we have fieldInfo => { if (fieldInfo.format) { - attributeFormats[fieldInfo.fieldName] = fieldInfo.format; + attributeFormats[fieldInfo.fieldName.toLowerCase()] = fieldInfo.format; } } ); @@ -586,12 +590,15 @@ export async function _prepareLabels( const featureSet = await queryFeaturesByID(ids, layer, [], false); // Get field data types. Do we have any domain-based fields? + const attributeOrigNames: IAttributeOrigNames = {}; const attributeTypes: IAttributeTypes = {}; const attributeDomains: IAttributeDomains = {}; layer.fields.forEach( field => { - attributeTypes[field.name] = field.type; - attributeDomains[field.name] = field.domain; + const lowercaseFieldname = field.name.toLowerCase(); + attributeOrigNames[lowercaseFieldname] = field.name; + attributeDomains[lowercaseFieldname] = field.domain; + attributeTypes[lowercaseFieldname] = field.type; } ); const attributeFormats: IAttributeFormats = {}; @@ -605,7 +612,7 @@ export async function _prepareLabels( await _prepareLabelsFromAll(featureSet, attributeTypes, attributeDomains, includeHeaderNames) : labelFormat.type == "pattern" ? // Export attributes in format - await _prepareLabelsFromPattern(featureSet, attributeTypes, attributeDomains, + await _prepareLabelsFromPattern(featureSet, attributeOrigNames, attributeTypes, attributeDomains, attributeFormats, labelFormat.format as string, includeHeaderNames) : // Export attributes in expression @@ -636,8 +643,9 @@ export async function _prepareLabelsFromAll( feature => { return Object.keys(feature.attributes).map( (attributeName: string) => { + const lowercaseFieldname = attributeName.toLowerCase(); return _prepareAttributeValue(feature.attributes[attributeName], - attributeTypes[attributeName], attributeDomains[attributeName], + attributeTypes[lowercaseFieldname], attributeDomains[lowercaseFieldname], null, intl); } ); @@ -661,6 +669,7 @@ export async function _prepareLabelsFromAll( * Creates labels from attributes in a layer popup. * * @param featureSet Features to convert to labels + * @param attributeOrigNames Mapping from lowercase field names to original field names * @param attributeTypes Type for each attribute in a feature * @param attributeDomains Domains for each attribute in a feature * @param attributeFormats Formats for each attribute in a feature @@ -670,6 +679,7 @@ export async function _prepareLabelsFromAll( */ export async function _prepareLabelsFromPattern( featureSet: __esri.Graphic[], + attributeOrigNames: IAttributeOrigNames, attributeTypes: IAttributeTypes, attributeDomains: IAttributeDomains, attributeFormats: IAttributeFormats, @@ -690,9 +700,10 @@ export async function _prepareLabelsFromPattern( // Replace non-Arcade fields in this feature attributeNames.forEach( (attributeName: string, i: number) => { - const value = _prepareAttributeValue(feature.attributes[attributeName], - attributeTypes[attributeName], attributeDomains[attributeName], - attributeFormats[attributeName], intl); + const lowercaseFieldname = attributeName.toLowerCase(); + const value = _prepareAttributeValue(feature.attributes[attributeOrigNames[lowercaseFieldname]], + attributeTypes[lowercaseFieldname], attributeDomains[lowercaseFieldname], + attributeFormats[lowercaseFieldname], intl); labelPrep = labelPrep.replace(attributeExpressionMatches[i], value); }, From a6d13c1a489f352a628d3db8eb5b5d94adc8d02f Mon Sep 17 00:00:00 2001 From: John Hauck Date: Wed, 6 Sep 2023 14:18:31 -0600 Subject: [PATCH 187/406] add popup expand --- .../t9n/crowdsource-manager/resources.json | 3 +- .../t9n/crowdsource-manager/resources_en.json | 3 +- src/components/card-manager/card-manager.tsx | 2 +- .../crowdsource-manager.css | 25 ++++++++- .../crowdsource-manager.tsx | 55 ++++++++++++++++++- src/components/crowdsource-manager/readme.md | 6 +- src/components/map-card/map-card.tsx | 17 +++--- src/components/map-picker/map-picker.css | 2 +- 8 files changed, 93 insertions(+), 20 deletions(-) diff --git a/src/assets/t9n/crowdsource-manager/resources.json b/src/assets/t9n/crowdsource-manager/resources.json index 27dc5a4fa..208c74d21 100644 --- a/src/assets/t9n/crowdsource-manager/resources.json +++ b/src/assets/t9n/crowdsource-manager/resources.json @@ -1,5 +1,6 @@ { "header": "Crowdsource Manager", "open": "Open", - "close": "Close" + "close": "Close", + "information": "Information" } diff --git a/src/assets/t9n/crowdsource-manager/resources_en.json b/src/assets/t9n/crowdsource-manager/resources_en.json index 9ec01a3ee..7e6acc970 100644 --- a/src/assets/t9n/crowdsource-manager/resources_en.json +++ b/src/assets/t9n/crowdsource-manager/resources_en.json @@ -1,5 +1,6 @@ { "header": "Crowdsource Manager", "open": "Open", - "close": "Close" + "close": "Close", + "information": "Information" } diff --git a/src/components/card-manager/card-manager.tsx b/src/components/card-manager/card-manager.tsx index 6a7eb1595..d7d5eb6cf 100644 --- a/src/components/card-manager/card-manager.tsx +++ b/src/components/card-manager/card-manager.tsx @@ -145,7 +145,7 @@ export class CardManager { return (
- +
{ const mapChange: IMapChange = evt.detail; + // close popup by default when the map changes otherwise other components that rely on the view don't work since it + // doesn't seem to fully load when it's not visible + this._expandPopup = false; this._mapInfo = this._getMapInfo(mapChange.id); this._mapView = mapChange.mapView; this._mapView.popupEnabled = false; @@ -336,6 +344,7 @@ export class CrowdsourceManager { ) : (
{this._getMapNode(layoutMode, hideMap)} + {this._getPopupExpandNode()} {this._getCardNode(layoutMode, hideMap)}
); @@ -356,7 +365,7 @@ export class CrowdsourceManager { ): VNode { const mapDisplayClass = this.classicGrid && layoutMode === ELayoutMode.GRID ? "display-flex height-full width-1-2" : layoutMode === ELayoutMode.GRID && !hideMap ? "" : "display-none"; - const mapContainerClass = this.classicGrid && layoutMode === ELayoutMode.GRID ? "width-full" : "adjusted-height-50"; + const mapContainerClass = this.classicGrid && layoutMode === ELayoutMode.GRID ? "width-full" : this._expandPopup ? "height-50-px" : "adjusted-height-50"; return (
@@ -364,6 +373,46 @@ export class CrowdsourceManager { ); } + /** + * Get the expand node for the popup information + * + * @returns the expand node + * @protected + */ + protected _getPopupExpandNode(): VNode { + const icon = this._expandPopup ? "chevrons-down" : "chevrons-up"; + return ( +
+ +
+ +
+ {this._translations.information} +
+
+ this._togglePopup()} + slot="header-actions-end" + /> +
+
+ ); + } + + /** + * Toggle the popup information + * + * @protected + */ + protected _togglePopup(): void { + this._expandPopup = !this._expandPopup; + } + /** * Get the card node based for the current layout options * @@ -378,9 +427,9 @@ export class CrowdsourceManager { hideMap: boolean ): VNode { const cardManagerHeight = this.classicGrid && layoutMode === ELayoutMode.GRID ? "" : - layoutMode === ELayoutMode.GRID && !hideMap ? "adjusted-height-50" : "adjusted-height-100"; + layoutMode === ELayoutMode.GRID && !this._expandPopup && !hideMap ? "adjusted-height-50" : "adjusted-height-100"; const cardManagerContainer = this.classicGrid && layoutMode === ELayoutMode.GRID ? - "width-full adjusted-height-100" : "width-50 height-full"; + "width-full adjusted-height-100" : this._expandPopup ? "width-50 adjusted-height-100-50" : "width-50 height-full"; return (
calcite-shell crowdsource-manager --> calcite-panel crowdsource-manager --> map-card + crowdsource-manager --> calcite-icon + crowdsource-manager --> calcite-action crowdsource-manager --> card-manager crowdsource-manager --> calcite-action-bar - crowdsource-manager --> calcite-action crowdsource-manager --> calcite-tooltip crowdsource-manager --> layer-table calcite-panel --> calcite-action diff --git a/src/components/map-card/map-card.tsx b/src/components/map-card/map-card.tsx index 265b2072e..5ab7f0164 100644 --- a/src/components/map-card/map-card.tsx +++ b/src/components/map-card/map-card.tsx @@ -223,21 +223,20 @@ export class MapCard { map: webMap, resizeAlign: "top-left" }); - await this.mapView.when(() => { - this._loadedId = id; - this._searchConfiguration = this._webMapInfo.searchConfiguration; + this._loadedId = id; + this._searchConfiguration = this._webMapInfo.searchConfiguration; + + this.mapChanged.emit({ + id: id, + mapView: this.mapView + }); + await this.mapView.when(() => { const home = new this.Home({ view: this.mapView }); - this.mapView.ui.add(home, { position: "top-left", index: 3}); this.mapView.ui.add(this._mapTools, { position: "top-right", index: 0}); - - this.mapChanged.emit({ - id: id, - mapView: this.mapView - }); }); } } diff --git a/src/components/map-picker/map-picker.css b/src/components/map-picker/map-picker.css index dd1d7b7eb..a20dd847d 100644 --- a/src/components/map-picker/map-picker.css +++ b/src/components/map-picker/map-picker.css @@ -49,7 +49,7 @@ overflow: hidden; animation: calcite-scrim-fade-in var(--calcite-internal-animation-timing-medium) ease-in-out; background-color: var(--calcite-scrim-background); - z-index: 1; + z-index: 1000; width: 100%; height: fit-content; } From 6d30033fb1f7bba3ea69df43bf5856e034407681 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Thu, 7 Sep 2023 12:08:00 -0600 Subject: [PATCH 188/406] add custom next and back buttons --- src/assets/t9n/info-card/resources.json | 5 +- src/assets/t9n/info-card/resources_en.json | 5 +- src/components/card-manager/readme.md | 6 +- src/components/crowdsource-manager/readme.md | 2 +- src/components/info-card/info-card.css | 17 ++++- src/components/info-card/info-card.tsx | 79 ++++++++++++++++++-- src/components/info-card/readme.md | 8 +- 7 files changed, 105 insertions(+), 17 deletions(-) diff --git a/src/assets/t9n/info-card/resources.json b/src/assets/t9n/info-card/resources.json index 79abd0fbf..574131135 100644 --- a/src/assets/t9n/info-card/resources.json +++ b/src/assets/t9n/info-card/resources.json @@ -2,5 +2,8 @@ "fetchingData": "Fetching data", "edit": "Edit", "enableEditing": "Update capability must be enabled on the layer.", - "editDisabled": "Editing Disabled" + "editDisabled": "Editing Disabled", + "next": "Next", + "back": "Back", + "of": "of" } diff --git a/src/assets/t9n/info-card/resources_en.json b/src/assets/t9n/info-card/resources_en.json index 79abd0fbf..574131135 100644 --- a/src/assets/t9n/info-card/resources_en.json +++ b/src/assets/t9n/info-card/resources_en.json @@ -2,5 +2,8 @@ "fetchingData": "Fetching data", "edit": "Edit", "enableEditing": "Update capability must be enabled on the layer.", - "editDisabled": "Editing Disabled" + "editDisabled": "Editing Disabled", + "next": "Next", + "back": "Back", + "of": "of" } diff --git a/src/components/card-manager/readme.md b/src/components/card-manager/readme.md index dc0ed9e48..c31a1943b 100644 --- a/src/components/card-manager/readme.md +++ b/src/components/card-manager/readme.md @@ -34,12 +34,12 @@ graph TD; card-manager --> calcite-notice info-card --> calcite-shell info-card --> calcite-loader - info-card --> calcite-action + info-card --> calcite-button info-card --> calcite-tooltip info-card --> edit-card info-card --> calcite-alert - calcite-action --> calcite-loader - calcite-action --> calcite-icon + calcite-button --> calcite-loader + calcite-button --> calcite-icon edit-card --> calcite-notice calcite-notice --> calcite-icon calcite-alert --> calcite-icon diff --git a/src/components/crowdsource-manager/readme.md b/src/components/crowdsource-manager/readme.md index 8e26a9afc..8761aeddb 100644 --- a/src/components/crowdsource-manager/readme.md +++ b/src/components/crowdsource-manager/readme.md @@ -87,7 +87,7 @@ graph TD; card-manager --> calcite-notice info-card --> calcite-shell info-card --> calcite-loader - info-card --> calcite-action + info-card --> calcite-button info-card --> calcite-tooltip info-card --> edit-card info-card --> calcite-alert diff --git a/src/components/info-card/info-card.css b/src/components/info-card/info-card.css index 4f9b9d307..365c445f6 100644 --- a/src/components/info-card/info-card.css +++ b/src/components/info-card/info-card.css @@ -70,13 +70,26 @@ tr:nth-child(odd) { .edit-btn { z-index: 999; position: absolute; - width: 50px; } .edit-btn-position { - right: 0; + right: 0.5rem; + top: 0.5rem; } html[dir="rtl"] .edit-btn-position { left: 0; } + +.esri-features__footer { + display: none !important; +} + +.button-container { + justify-content: space-between; + align-items: center; +} + +.min-width-100 { + min-width: 100px; +} diff --git a/src/components/info-card/info-card.tsx b/src/components/info-card/info-card.tsx index 782e6dda3..32678c83b 100644 --- a/src/components/info-card/info-card.tsx +++ b/src/components/info-card/info-card.tsx @@ -70,6 +70,12 @@ export class InfoCard { */ @State() _alertOpen = false; + /** + * string: Current index of total string + * This value is not displayed but will force a render if it changes + */ + @State() _count = ""; + /** * When true the add record modal will be displayed */ @@ -214,14 +220,46 @@ export class InfoCard { class={"esri-widget " + featureNodeClass} id="features-node" /> +
+
+ this._back()} + width="full" + > + {this._translations.back} + + + {this._translations.back} + +
+
+ {this._getCount()} +
+
+ this._next()} + width="full" + > + {this._translations.next} + + + {this._translations.next} + +
+
- this._openEditRecord()} - scale="m" - /> + > + {this._translations.edit} + {this._translations.edit} @@ -339,6 +377,37 @@ export class InfoCard { } } + /** + * Go to the previous feature in the features widget + * + * @returns void + */ + protected _back(): void { + this._features.previous(); + this._count = this._getCount(); + } + + /** + * Go to the next feature in the features widget + * + * @returns void + */ + protected _next(): void { + this._features.next(); + this._count = this._getCount(); + } + + /** + * Get the current index of total string + * + * @returns the index of total string + */ + protected _getCount(): string { + const index = this._features?.viewModel.selectedFeatureIndex + 1; + const total = this._features?.features?.length; + return `${index} ${this._translations.of} ${total}`; + } + /** * Fetches the component's translations * diff --git a/src/components/info-card/readme.md b/src/components/info-card/readme.md index 20ae97e25..1eaa79a4e 100644 --- a/src/components/info-card/readme.md +++ b/src/components/info-card/readme.md @@ -45,7 +45,7 @@ Promise resolving with the current feature - calcite-shell - calcite-loader -- calcite-action +- calcite-button - calcite-tooltip - [edit-card](../edit-card) - calcite-alert @@ -55,12 +55,12 @@ Promise resolving with the current feature graph TD; info-card --> calcite-shell info-card --> calcite-loader - info-card --> calcite-action + info-card --> calcite-button info-card --> calcite-tooltip info-card --> edit-card info-card --> calcite-alert - calcite-action --> calcite-loader - calcite-action --> calcite-icon + calcite-button --> calcite-loader + calcite-button --> calcite-icon edit-card --> calcite-notice calcite-notice --> calcite-icon calcite-alert --> calcite-icon From 6543397c3c53ccaa5c2547e064dd648f5f881124 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Thu, 7 Sep 2023 13:27:22 -0600 Subject: [PATCH 189/406] update records selected string --- src/assets/t9n/layer-table/resources.json | 3 +-- src/assets/t9n/layer-table/resources_en.json | 3 +-- src/components/layer-table/layer-table.tsx | 8 +++++++- 3 files changed, 9 insertions(+), 5 deletions(-) diff --git a/src/assets/t9n/layer-table/resources.json b/src/assets/t9n/layer-table/resources.json index 8d34802c1..0e0c60a0e 100644 --- a/src/assets/t9n/layer-table/resources.json +++ b/src/assets/t9n/layer-table/resources.json @@ -17,6 +17,5 @@ "deleteDisabled": "Delete Disabled", "editMultipleDisabled": "Edit Multiple Disabled", "showAll": "Show all", - "records": "records", - "selected": "selected" + "recordsSelected": "{{total}} records, {{selected}} selected" } diff --git a/src/assets/t9n/layer-table/resources_en.json b/src/assets/t9n/layer-table/resources_en.json index 8d34802c1..0e0c60a0e 100644 --- a/src/assets/t9n/layer-table/resources_en.json +++ b/src/assets/t9n/layer-table/resources_en.json @@ -17,6 +17,5 @@ "deleteDisabled": "Delete Disabled", "editMultipleDisabled": "Edit Multiple Disabled", "showAll": "Show all", - "records": "records", - "selected": "selected" + "recordsSelected": "{{total}} records, {{selected}} selected" } diff --git a/src/components/layer-table/layer-table.tsx b/src/components/layer-table/layer-table.tsx index a0fc7ef35..d9bfa7b47 100644 --- a/src/components/layer-table/layer-table.tsx +++ b/src/components/layer-table/layer-table.tsx @@ -314,6 +314,8 @@ export class LayerTable { const tableNodeClass = this._fetchingData ? "display-none" : ""; const loadingClass = this._fetchingData ? "" : "display-none"; const alertActionClass = this._alertShowAction ? "" : "display-none"; + const total = this._allIds.length.toString(); + const selected = this._selectedIndexes.length.toString(); return ( @@ -331,7 +333,11 @@ export class LayerTable { />
- {`${this._allIds.length} ${this._translations.records}, ${this._selectedIndexes.length} ${this._translations.selected}`} + { + this._translations.recordsSelected + .replace("{{total}}", total) + .replace("{{selected}}", selected) + }
Date: Thu, 7 Sep 2023 13:53:01 -0600 Subject: [PATCH 190/406] update indexOf string --- src/assets/t9n/info-card/resources.json | 2 +- src/assets/t9n/info-card/resources_en.json | 2 +- src/components/info-card/info-card.tsx | 8 +++++--- 3 files changed, 7 insertions(+), 5 deletions(-) diff --git a/src/assets/t9n/info-card/resources.json b/src/assets/t9n/info-card/resources.json index 574131135..3d3271703 100644 --- a/src/assets/t9n/info-card/resources.json +++ b/src/assets/t9n/info-card/resources.json @@ -5,5 +5,5 @@ "editDisabled": "Editing Disabled", "next": "Next", "back": "Back", - "of": "of" + "indexOfTotal": "{{index}} of {{total}}" } diff --git a/src/assets/t9n/info-card/resources_en.json b/src/assets/t9n/info-card/resources_en.json index 574131135..3d3271703 100644 --- a/src/assets/t9n/info-card/resources_en.json +++ b/src/assets/t9n/info-card/resources_en.json @@ -5,5 +5,5 @@ "editDisabled": "Editing Disabled", "next": "Next", "back": "Back", - "of": "of" + "indexOfTotal": "{{index}} of {{total}}" } diff --git a/src/components/info-card/info-card.tsx b/src/components/info-card/info-card.tsx index 32678c83b..0649d450e 100644 --- a/src/components/info-card/info-card.tsx +++ b/src/components/info-card/info-card.tsx @@ -403,9 +403,11 @@ export class InfoCard { * @returns the index of total string */ protected _getCount(): string { - const index = this._features?.viewModel.selectedFeatureIndex + 1; - const total = this._features?.features?.length; - return `${index} ${this._translations.of} ${total}`; + const index = (this._features?.viewModel.selectedFeatureIndex + 1).toString(); + const total = this._features?.features?.length.toString(); + return this._translations.indexOfTotal + .replace("{{index}}", index) + .replace("{{total}}", total); } /** From 441dd2d8bba23922a78a4abf73628acefffd97a0 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Thu, 7 Sep 2023 13:58:22 -0600 Subject: [PATCH 191/406] hide next/back while editing --- src/components/info-card/info-card.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/info-card/info-card.tsx b/src/components/info-card/info-card.tsx index 0649d450e..7489e92d0 100644 --- a/src/components/info-card/info-card.tsx +++ b/src/components/info-card/info-card.tsx @@ -220,7 +220,7 @@ export class InfoCard { class={"esri-widget " + featureNodeClass} id="features-node" /> -
+
Date: Thu, 7 Sep 2023 14:12:27 -0600 Subject: [PATCH 192/406] change background color of map picker --- src/components/map-picker/map-picker.css | 4 ++++ src/components/map-picker/map-picker.tsx | 4 ++-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/components/map-picker/map-picker.css b/src/components/map-picker/map-picker.css index a20dd847d..472f68a94 100644 --- a/src/components/map-picker/map-picker.css +++ b/src/components/map-picker/map-picker.css @@ -57,3 +57,7 @@ .display-none { display: none; } + +.action-bar-color { + background-color: var(--calcite-ui-border-3) !important; +} diff --git a/src/components/map-picker/map-picker.tsx b/src/components/map-picker/map-picker.tsx index fa97fd19d..bebc0348d 100644 --- a/src/components/map-picker/map-picker.tsx +++ b/src/components/map-picker/map-picker.tsx @@ -174,7 +174,7 @@ export class MapPicker { return ( - + {this._getMapPicker()}
From a555168a03fbd792287e638e9addbe09ae7973ad Mon Sep 17 00:00:00 2001 From: John Hauck Date: Thu, 7 Sep 2023 14:34:50 -0600 Subject: [PATCH 193/406] square the buttons --- src/components/map-tools/map-tools.css | 14 ++++++++++++++ src/components/map-tools/map-tools.tsx | 9 ++++++--- 2 files changed, 20 insertions(+), 3 deletions(-) diff --git a/src/components/map-tools/map-tools.css b/src/components/map-tools/map-tools.css index 961cbab6d..9db504e3c 100644 --- a/src/components/map-tools/map-tools.css +++ b/src/components/map-tools/map-tools.css @@ -29,3 +29,17 @@ .margin-top-1-2 { margin-top: 0.5rem; } + +.square-40 { + width: 40px; + height: 40px; +} + +.width-40 { + width: 40px; +} + +.square-40-41 { + width: 40px; + height: 41px; +} diff --git a/src/components/map-tools/map-tools.tsx b/src/components/map-tools/map-tools.tsx index b82cdc7c6..90bf81e73 100644 --- a/src/components/map-tools/map-tools.tsx +++ b/src/components/map-tools/map-tools.tsx @@ -208,13 +208,14 @@ export class MapTools {
{ this._toggleTools() }} + scale="s" text="" /> - + {this._getActionGroup("legend", false, this._translations.legend, () => this._showLegend())} {this._getActionGroup("magnifying-glass", false, this._translations.search, () => this._search())} {this._getActionGroup("expand", false, this._translations.expand, () => this._expand())} @@ -266,14 +267,16 @@ export class MapTools { func: any ): VNode { return ( - + From ac7f8944f217bc4a18a619c54b67c3278cad5ad6 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Thu, 7 Sep 2023 15:25:47 -0600 Subject: [PATCH 194/406] update version --- CHANGELOG.md | 5 ++++- package-lock.json | 4 ++-- package.json | 2 +- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index fa5fcd4d6..d982ec8b2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,8 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm ## [Unreleased] +## [0.6.10] - Sept 7th 2023 + ## [0.6.9] - Aug 31st 2023 ## [0.6.8] - Aug 25th 2023 @@ -208,4 +210,5 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm [0.6.7]: https://github.com/Esri/solution.js/compare/v0.6.6...v0.6.7 "v0.6.7" [0.6.8]: https://github.com/Esri/solution.js/compare/v0.6.7...v0.6.8 "v0.6.8" [0.6.9]: https://github.com/Esri/solution.js/compare/v0.6.8...v0.6.9 "v0.6.9" -[Unreleased]: https://github.com/Esri/solution.js/compare/v0.6.9...HEAD "Unreleased Changes" +[0.6.10]: https://github.com/Esri/solution.js/compare/v0.6.9...v0.6.10 "v0.6.10" +[Unreleased]: https://github.com/Esri/solution.js/compare/v0.6.10...HEAD "Unreleased Changes" diff --git a/package-lock.json b/package-lock.json index 29181aa2e..7644e7147 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@esri/solutions-components", - "version": "0.6.9", + "version": "0.6.10", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@esri/solutions-components", - "version": "0.6.9", + "version": "0.6.10", "license": "Apache-2.0", "dependencies": { "@esri/hub-common": "^12.37.1", diff --git a/package.json b/package.json index 047c58bb3..a4fa004e5 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@esri/solutions-components", - "version": "0.6.9", + "version": "0.6.10", "description": "Web Components for Esri's Solutions Applications", "main": "dist/index.cjs.js", "module": "dist/index.js", From 1fe164569b45868027c3484af1e6dbc5bcd76f50 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Fri, 8 Sep 2023 14:44:45 -0600 Subject: [PATCH 195/406] check for wgs or web mercator --- src/components/buffer-tools/buffer-tools.tsx | 21 +++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/src/components/buffer-tools/buffer-tools.tsx b/src/components/buffer-tools/buffer-tools.tsx index 7dc4d696d..432a787a5 100644 --- a/src/components/buffer-tools/buffer-tools.tsx +++ b/src/components/buffer-tools/buffer-tools.tsx @@ -283,14 +283,21 @@ export class BufferTools { } this._bufferTimeout = setTimeout(() => { - // needs to be wgs 84 or Web Mercator if (this.geometries?.length > 0 && this.unit && this.distance > 0) { - const buffer = this._geometryEngine.geodesicBuffer( - this.geometries, - this.distance, - this.unit, - this.unionResults - ); + const geom = this.geometries[0]; + const sr = geom.spatialReference; + const buffer = (sr.isWGS84 || sr.isWebMercator) ? + this._geometryEngine.geodesicBuffer( + this.geometries, + this.distance, + this.unit, + this.unionResults + ) : this._geometryEngine.buffer( + this.geometries, + this.distance, + this.unit, + this.unionResults + ); this.bufferComplete.emit(buffer); } }, 400); From c43e23c70d2e00e20d59296c0e026a9ded4c9a62 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Fri, 8 Sep 2023 15:00:40 -0600 Subject: [PATCH 196/406] update version --- CHANGELOG.md | 5 ++++- package-lock.json | 4 ++-- package.json | 2 +- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index d982ec8b2..839e7978c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,8 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm ## [Unreleased] +## [0.6.11] - Sept 8th 2023 + ## [0.6.10] - Sept 7th 2023 ## [0.6.9] - Aug 31st 2023 @@ -211,4 +213,5 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm [0.6.8]: https://github.com/Esri/solution.js/compare/v0.6.7...v0.6.8 "v0.6.8" [0.6.9]: https://github.com/Esri/solution.js/compare/v0.6.8...v0.6.9 "v0.6.9" [0.6.10]: https://github.com/Esri/solution.js/compare/v0.6.9...v0.6.10 "v0.6.10" -[Unreleased]: https://github.com/Esri/solution.js/compare/v0.6.10...HEAD "Unreleased Changes" +[0.6.11]: https://github.com/Esri/solution.js/compare/v0.6.10...v0.6.11 "v0.6.11" +[Unreleased]: https://github.com/Esri/solution.js/compare/v0.6.11...HEAD "Unreleased Changes" diff --git a/package-lock.json b/package-lock.json index 7644e7147..f4d716288 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@esri/solutions-components", - "version": "0.6.10", + "version": "0.6.11", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@esri/solutions-components", - "version": "0.6.10", + "version": "0.6.11", "license": "Apache-2.0", "dependencies": { "@esri/hub-common": "^12.37.1", diff --git a/package.json b/package.json index a4fa004e5..5826abe68 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@esri/solutions-components", - "version": "0.6.10", + "version": "0.6.11", "description": "Web Components for Esri's Solutions Applications", "main": "dist/index.cjs.js", "module": "dist/index.js", From 2ffaa498211876aa15a91fa7276bb1642e2c84ca Mon Sep 17 00:00:00 2001 From: John Hauck Date: Mon, 11 Sep 2023 15:18:10 -0600 Subject: [PATCH 197/406] few updates and logs --- .../crowdsource-manager.tsx | 1 + src/components/edit-card/edit-card.tsx | 7 ++- src/components/info-card/info-card.tsx | 54 ++++++++++--------- src/components/map-card/map-card.tsx | 11 ++-- 4 files changed, 44 insertions(+), 29 deletions(-) diff --git a/src/components/crowdsource-manager/crowdsource-manager.tsx b/src/components/crowdsource-manager/crowdsource-manager.tsx index cea1b27ea..fda0c3b65 100644 --- a/src/components/crowdsource-manager/crowdsource-manager.tsx +++ b/src/components/crowdsource-manager/crowdsource-manager.tsx @@ -174,6 +174,7 @@ export class CrowdsourceManager { * Renders the component. */ render() { + console.log("CM render") return ( diff --git a/src/components/edit-card/edit-card.tsx b/src/components/edit-card/edit-card.tsx index 456fa5f42..69b0088e7 100644 --- a/src/components/edit-card/edit-card.tsx +++ b/src/components/edit-card/edit-card.tsx @@ -293,6 +293,7 @@ export class EditCard { }); if (this._editHandle && this._attachmentHandle && this._activeWorkflowHandle) { + console.log("remove handles") this._editHandle.remove(); this._attachmentHandle.remove(); this._activeWorkflowHandle.remove(); @@ -306,8 +307,12 @@ export class EditCard { ); this._editHandle = this.reactiveUtils.when( - () => this._editor.viewModel.state === "ready", () => { + console.log("this._editor.viewModel.state: " + this._editor.viewModel.state.toString()) + return this._editor.viewModel.state === "ready"; + }, + () => { + console.log("this._shouldClose: " + this._shouldClose.toString()) if (this._shouldClose) { this.closeEdit.emit(); this._shouldClose = false; diff --git a/src/components/info-card/info-card.tsx b/src/components/info-card/info-card.tsx index 7489e92d0..b71fd3e0b 100644 --- a/src/components/info-card/info-card.tsx +++ b/src/components/info-card/info-card.tsx @@ -126,6 +126,9 @@ export class InfoCard { */ @Watch("graphics") async graphicsWatchHandler(): Promise { + if (!this._features) { + await this._initFeaturesWidget(); + } if (this.graphics.length > 0) { const featureLayer = (this.graphics[0]?.layer as __esri.FeatureLayer); this._editEnabled = featureLayer.editingEnabled && featureLayer.capabilities.operations.supportsUpdate; @@ -143,9 +146,8 @@ export class InfoCard { */ @Watch("mapView") async mapViewWatchHandler(): Promise { - await this.mapView.when(async () => { - await this._initFeaturesWidget(); - }); + console.log("mapViewWatchHandler") + return await this._initFeaturesWidget(); } //-------------------------------------------------------------------------- @@ -321,29 +323,33 @@ export class InfoCard { * @protected */ protected async _initFeaturesWidget(): Promise { - if (!this._features) { - this._features = new this.Features({ - view: this.mapView, - container: "features-node", - visibleElements: { - actionBar: false, - closeButton: false, - heading: true + console.log("_initFeaturesWidget") + return await this.mapView.when(() => { + console.log("_initFeaturesWidget mapView when") + + if (!this._features) { + this._features = new this.Features({ + view: this.mapView, + container: "features-node", + visibleElements: { + actionBar: false, + closeButton: false, + heading: true + } + }); + if (this.zoomAndScrollToSelected) { + this.reactiveUtils.watch( + () => this._features.selectedFeatureIndex, + (i) => { + if (i > -1) { + this.selectionChanged.emit(this._features.selectedFeature); + } + }); } - }); - - if (this.zoomAndScrollToSelected) { - this.reactiveUtils.watch( - () => this._features.selectedFeatureIndex, - (i) => { - if (i > -1) { - this.selectionChanged.emit(this._features.selectedFeature); - } - }); + } else { + this._features.view = this.mapView; } - } else { - this._features.view = this.mapView; - } + }); } /** diff --git a/src/components/map-card/map-card.tsx b/src/components/map-card/map-card.tsx index 5ab7f0164..9e01eec00 100644 --- a/src/components/map-card/map-card.tsx +++ b/src/components/map-card/map-card.tsx @@ -206,6 +206,7 @@ export class MapCard { protected async _loadMap( webMapInfo: IMapInfo ): Promise { + console.log("_loadMap") let id = webMapInfo?.id; // on the first render use the first child of the provided mapInfos this._webMapInfo = (id === "" || !id) && this.mapInfos.length > 0 ? @@ -227,10 +228,6 @@ export class MapCard { this._loadedId = id; this._searchConfiguration = this._webMapInfo.searchConfiguration; - this.mapChanged.emit({ - id: id, - mapView: this.mapView - }); await this.mapView.when(() => { const home = new this.Home({ view: this.mapView @@ -238,6 +235,12 @@ export class MapCard { this.mapView.ui.add(home, { position: "top-left", index: 3}); this.mapView.ui.add(this._mapTools, { position: "top-right", index: 0}); }); + + console.log("emit mapView") + this.mapChanged.emit({ + id: id, + mapView: this.mapView + }); } } From 4d3c0a16829de1f683141aef4d818fd1905ebc7b Mon Sep 17 00:00:00 2001 From: John Hauck Date: Mon, 11 Sep 2023 16:59:22 -0600 Subject: [PATCH 198/406] fix map-tools and map picker --- src/assets/t9n/map-tools/resources.json | 3 +- src/assets/t9n/map-tools/resources_en.json | 3 +- .../crowdsource-manager.tsx | 47 ++++++++++++++++--- src/components/crowdsource-manager/readme.md | 4 +- src/components/map-card/map-card.css | 4 ++ src/components/map-card/map-card.tsx | 12 ++--- src/components/map-card/readme.md | 4 +- src/components/map-tools/map-tools.css | 12 +++-- src/components/map-tools/map-tools.tsx | 21 ++++----- src/components/map-tools/readme.md | 15 +----- 10 files changed, 74 insertions(+), 51 deletions(-) diff --git a/src/assets/t9n/map-tools/resources.json b/src/assets/t9n/map-tools/resources.json index f5c7f99ba..30fa42790 100644 --- a/src/assets/t9n/map-tools/resources.json +++ b/src/assets/t9n/map-tools/resources.json @@ -2,5 +2,6 @@ "legend": "Legend", "search": "Search", "expand": "Expand", - "basemap": "Basemap" + "basemap": "Basemap", + "collapse": "Collapse" } diff --git a/src/assets/t9n/map-tools/resources_en.json b/src/assets/t9n/map-tools/resources_en.json index f5c7f99ba..30fa42790 100644 --- a/src/assets/t9n/map-tools/resources_en.json +++ b/src/assets/t9n/map-tools/resources_en.json @@ -2,5 +2,6 @@ "legend": "Legend", "search": "Search", "expand": "Expand", - "basemap": "Basemap" + "basemap": "Basemap", + "collapse": "Collapse" } diff --git a/src/components/crowdsource-manager/crowdsource-manager.tsx b/src/components/crowdsource-manager/crowdsource-manager.tsx index fda0c3b65..93c72b1c2 100644 --- a/src/components/crowdsource-manager/crowdsource-manager.tsx +++ b/src/components/crowdsource-manager/crowdsource-manager.tsx @@ -106,11 +106,22 @@ export class CrowdsourceManager { // //-------------------------------------------------------------------------- + /** + * IMapChange: The current map change details + */ + protected _mapChange: IMapChange; + /** * IMapInfo: The current map info stores configuration details */ protected _mapInfo: IMapInfo; + /** + * boolean: When true the map view will be set after render due to popup obstructing the view + * MapView.when is not fired when mapView is not currently visible + */ + protected _shouldSetMapView = false; + //-------------------------------------------------------------------------- // // Watch handlers @@ -146,13 +157,13 @@ export class CrowdsourceManager { async mapChanged( evt: CustomEvent ): Promise { - const mapChange: IMapChange = evt.detail; - // close popup by default when the map changes otherwise other components that rely on the view don't work since it - // doesn't seem to fully load when it's not visible - this._expandPopup = false; - this._mapInfo = this._getMapInfo(mapChange.id); - this._mapView = mapChange.mapView; - this._mapView.popupEnabled = false; + this._mapChange = evt.detail; + if (this._expandPopup) { + this._shouldSetMapView = true; + this._expandPopup = false; + } else { + this._setMapView(); + } } //-------------------------------------------------------------------------- @@ -188,6 +199,17 @@ export class CrowdsourceManager { ); } + /** + * Called after each render + * Used to delay the setting of the mapView when the popup is expaneded and obstructs the view + */ + componentDidRender() { + if (this._shouldSetMapView) { + this._shouldSetMapView = false; + this._setMapView(); + } + } + //-------------------------------------------------------------------------- // // Functions (protected) @@ -528,6 +550,17 @@ export class CrowdsourceManager { return mapInfo; } + /** + * Set the current map info when maps change + * + * @protected + */ + protected _setMapView(): void { + this._mapInfo = this._getMapInfo(this._mapChange.id); + this._mapView = this._mapChange.mapView; + this._mapView.popupEnabled = false; + } + /** * Fetches the component's translations * diff --git a/src/components/crowdsource-manager/readme.md b/src/components/crowdsource-manager/readme.md index 8761aeddb..a23f43212 100644 --- a/src/components/crowdsource-manager/readme.md +++ b/src/components/crowdsource-manager/readme.md @@ -74,12 +74,10 @@ graph TD; calcite-list-item --> calcite-handle calcite-list-item --> calcite-action calcite-handle --> calcite-icon - map-tools --> calcite-action - map-tools --> calcite-action-bar map-tools --> basemap-gallery map-tools --> map-search map-tools --> map-legend - map-tools --> calcite-action-group + map-tools --> calcite-action map-tools --> calcite-icon map-tools --> calcite-tooltip card-manager --> calcite-shell diff --git a/src/components/map-card/map-card.css b/src/components/map-card/map-card.css index 007ef4415..9c55807e2 100644 --- a/src/components/map-card/map-card.css +++ b/src/components/map-card/map-card.css @@ -23,3 +23,7 @@ .map-height { height: calc(100% - 58px); } + +.box-shadow { + box-shadow: none !important; +} diff --git a/src/components/map-card/map-card.tsx b/src/components/map-card/map-card.tsx index 9e01eec00..bb56a869f 100644 --- a/src/components/map-card/map-card.tsx +++ b/src/components/map-card/map-card.tsx @@ -162,6 +162,7 @@ export class MapCard {
(this._mapDiv = el)}/> this._mapTools = el} searchConfiguration={this._searchConfiguration} @@ -228,6 +229,11 @@ export class MapCard { this._loadedId = id; this._searchConfiguration = this._webMapInfo.searchConfiguration; + this.mapChanged.emit({ + id: id, + mapView: this.mapView + }); + await this.mapView.when(() => { const home = new this.Home({ view: this.mapView @@ -235,12 +241,6 @@ export class MapCard { this.mapView.ui.add(home, { position: "top-left", index: 3}); this.mapView.ui.add(this._mapTools, { position: "top-right", index: 0}); }); - - console.log("emit mapView") - this.mapChanged.emit({ - id: id, - mapView: this.mapView - }); } } diff --git a/src/components/map-card/readme.md b/src/components/map-card/readme.md index 8a2ee60db..f930b841f 100644 --- a/src/components/map-card/readme.md +++ b/src/components/map-card/readme.md @@ -62,12 +62,10 @@ graph TD; calcite-list-item --> calcite-handle calcite-list-item --> calcite-action calcite-handle --> calcite-icon - map-tools --> calcite-action - map-tools --> calcite-action-bar map-tools --> basemap-gallery map-tools --> map-search map-tools --> map-legend - map-tools --> calcite-action-group + map-tools --> calcite-action map-tools --> calcite-icon map-tools --> calcite-tooltip crowdsource-manager --> map-card diff --git a/src/components/map-tools/map-tools.css b/src/components/map-tools/map-tools.css index 9db504e3c..3c96d1cc1 100644 --- a/src/components/map-tools/map-tools.css +++ b/src/components/map-tools/map-tools.css @@ -22,10 +22,6 @@ display: none; } -.border { - border: 1px solid var(--calcite-ui-border-3); -} - .margin-top-1-2 { margin-top: 0.5rem; } @@ -43,3 +39,11 @@ width: 40px; height: 41px; } + +.border-bottom { + border-bottom: 1px solid var(--calcite-ui-border-3); +} + +.box-shadow { + box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3); +} diff --git a/src/components/map-tools/map-tools.tsx b/src/components/map-tools/map-tools.tsx index 90bf81e73..e2528e918 100644 --- a/src/components/map-tools/map-tools.tsx +++ b/src/components/map-tools/map-tools.tsx @@ -203,24 +203,19 @@ export class MapTools { const searchClass = this._showSearchWidget ? "" : "display-none"; const basemapClass = this._showBasemapWidget ? "" : "display-none"; const legendClass = this._showLegendWidget ? "" : "display-none"; + const expandTip = this._showTools ? this._translations.collapse : this._translations.expand; return (
- { this._toggleTools() }} - scale="s" - text="" - /> - +
+ {this._getActionGroup(toggleIcon, false, expandTip, () => this._toggleTools())} +
+
{this._getActionGroup("legend", false, this._translations.legend, () => this._showLegend())} {this._getActionGroup("magnifying-glass", false, this._translations.search, () => this._search())} {this._getActionGroup("expand", false, this._translations.expand, () => this._expand())} {this._getActionGroup("basemap", false, this._translations.basemap, () => this._toggleBasemapPicker())} - +
+
{tip} - +
); } diff --git a/src/components/map-tools/readme.md b/src/components/map-tools/readme.md index 44e21ca09..8c8c1c582 100644 --- a/src/components/map-tools/readme.md +++ b/src/components/map-tools/readme.md @@ -29,35 +29,24 @@ ### Depends on -- calcite-action -- calcite-action-bar - [basemap-gallery](../basemap-gallery) - [map-search](../map-search) - [map-legend](../map-legend) -- calcite-action-group +- calcite-action - calcite-icon - calcite-tooltip ### Graph ```mermaid graph TD; - map-tools --> calcite-action - map-tools --> calcite-action-bar map-tools --> basemap-gallery map-tools --> map-search map-tools --> map-legend - map-tools --> calcite-action-group + map-tools --> calcite-action map-tools --> calcite-icon map-tools --> calcite-tooltip calcite-action --> calcite-loader calcite-action --> calcite-icon - calcite-action-bar --> calcite-action-group - calcite-action-group --> calcite-action-menu - calcite-action-group --> calcite-action - calcite-action-menu --> calcite-action - calcite-action-menu --> calcite-popover - calcite-popover --> calcite-action - calcite-popover --> calcite-icon map-card --> map-tools style map-tools fill:#f9f,stroke:#333,stroke-width:4px ``` From fb859f8b6020191a178891230932d3d0dd82444b Mon Sep 17 00:00:00 2001 From: John Hauck Date: Mon, 11 Sep 2023 17:01:13 -0600 Subject: [PATCH 199/406] remove console.log --- src/components/crowdsource-manager/crowdsource-manager.tsx | 1 - 1 file changed, 1 deletion(-) diff --git a/src/components/crowdsource-manager/crowdsource-manager.tsx b/src/components/crowdsource-manager/crowdsource-manager.tsx index 93c72b1c2..2d92a958d 100644 --- a/src/components/crowdsource-manager/crowdsource-manager.tsx +++ b/src/components/crowdsource-manager/crowdsource-manager.tsx @@ -185,7 +185,6 @@ export class CrowdsourceManager { * Renders the component. */ render() { - console.log("CM render") return ( From cb701083705175f323f7d047ab43cc039c81143b Mon Sep 17 00:00:00 2001 From: John Hauck Date: Tue, 12 Sep 2023 09:19:35 -0600 Subject: [PATCH 200/406] update switch selected icon --- src/components/layer-table/layer-table.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/layer-table/layer-table.tsx b/src/components/layer-table/layer-table.tsx index d9bfa7b47..35a1bedb0 100644 --- a/src/components/layer-table/layer-table.tsx +++ b/src/components/layer-table/layer-table.tsx @@ -506,7 +506,7 @@ export class LayerTable { } this._switchSelected()} > {this._translations.switchSelected} From 397e8d0012d36d283cbfed8441b25f6ee636fdca Mon Sep 17 00:00:00 2001 From: John Hauck Date: Tue, 12 Sep 2023 11:16:04 -0600 Subject: [PATCH 201/406] add fullscreen --- src/assets/t9n/map-tools/resources.json | 4 +- src/assets/t9n/map-tools/resources_en.json | 4 +- src/components.d.ts | 41 ++++- src/components/crowdsource-manager/readme.md | 1 + src/components/map-card/readme.md | 1 + .../map-fullscreen/map-fullscreen.css | 3 + .../map-fullscreen/map-fullscreen.tsx | 174 ++++++++++++++++++ src/components/map-fullscreen/readme.md | 31 ++++ .../map-fullscreen/test/map-fullscreen.e2e.ts | 11 ++ .../test/map-fullscreen.spec.tsx | 18 ++ src/components/map-tools/map-tools.tsx | 48 ++++- src/components/map-tools/readme.md | 9 +- src/utils/interfaces.ts | 5 - 13 files changed, 316 insertions(+), 34 deletions(-) create mode 100644 src/components/map-fullscreen/map-fullscreen.css create mode 100644 src/components/map-fullscreen/map-fullscreen.tsx create mode 100644 src/components/map-fullscreen/readme.md create mode 100644 src/components/map-fullscreen/test/map-fullscreen.e2e.ts create mode 100644 src/components/map-fullscreen/test/map-fullscreen.spec.tsx diff --git a/src/assets/t9n/map-tools/resources.json b/src/assets/t9n/map-tools/resources.json index 30fa42790..c90e951dc 100644 --- a/src/assets/t9n/map-tools/resources.json +++ b/src/assets/t9n/map-tools/resources.json @@ -3,5 +3,7 @@ "search": "Search", "expand": "Expand", "basemap": "Basemap", - "collapse": "Collapse" + "collapse": "Collapse", + "enterFullscreen": "Enter fullscreen", + "exitFullscreen": "Exit fullscreen" } diff --git a/src/assets/t9n/map-tools/resources_en.json b/src/assets/t9n/map-tools/resources_en.json index 30fa42790..c90e951dc 100644 --- a/src/assets/t9n/map-tools/resources_en.json +++ b/src/assets/t9n/map-tools/resources_en.json @@ -3,5 +3,7 @@ "search": "Search", "expand": "Expand", "basemap": "Basemap", - "collapse": "Collapse" + "collapse": "Collapse", + "enterFullscreen": "Enter fullscreen", + "exitFullscreen": "Exit fullscreen" } diff --git a/src/components.d.ts b/src/components.d.ts index 8d06197f5..fea3c8aef 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -5,9 +5,9 @@ * It contains typing information for all components that exist in this project. */ import { HTMLStencilElement, JSXBase } from "@stencil/core/internal"; -import { DistanceUnit, EDrawMode, EExpandType, ELayoutMode, IExportInfos, IInventoryItem, IMapChange, IMapInfo, ISearchConfiguration, ISelectionSet, ISketchGraphicsChange, ISolutionSpatialReferenceInfo, ISpatialRefRepresentation, IValueChange } from "./utils/interfaces"; +import { DistanceUnit, EDrawMode, ELayoutMode, IExportInfos, IInventoryItem, IMapChange, IMapInfo, ISearchConfiguration, ISelectionSet, ISketchGraphicsChange, ISolutionSpatialReferenceInfo, ISpatialRefRepresentation, IValueChange } from "./utils/interfaces"; import { UserSession } from "@esri/solution-common"; -export { DistanceUnit, EDrawMode, EExpandType, ELayoutMode, IExportInfos, IInventoryItem, IMapChange, IMapInfo, ISearchConfiguration, ISelectionSet, ISketchGraphicsChange, ISolutionSpatialReferenceInfo, ISpatialRefRepresentation, IValueChange } from "./utils/interfaces"; +export { DistanceUnit, EDrawMode, ELayoutMode, IExportInfos, IInventoryItem, IMapChange, IMapInfo, ISearchConfiguration, ISelectionSet, ISketchGraphicsChange, ISolutionSpatialReferenceInfo, ISpatialRefRepresentation, IValueChange } from "./utils/interfaces"; export { UserSession } from "@esri/solution-common"; export namespace Components { interface BasemapGallery { @@ -267,6 +267,16 @@ export namespace Components { */ "updateGraphics": () => Promise; } + interface MapFullscreen { + /** + * esri/widgets/Fullscreen: https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Fullscreen.html + */ + "fullscreenWidget": __esri.Fullscreen; + /** + * esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html + */ + "mapView": __esri.MapView; + } interface MapLayerPicker { /** * "transparent" | "solid": controls the button appearance when using the "dropdown" type @@ -789,10 +799,6 @@ export interface MapSelectToolsCustomEvent extends CustomEvent { detail: T; target: HTMLMapSelectToolsElement; } -export interface MapToolsCustomEvent extends CustomEvent { - detail: T; - target: HTMLMapToolsElement; -} export interface PublicNotificationCustomEvent extends CustomEvent { detail: T; target: HTMLPublicNotificationElement; @@ -906,6 +912,12 @@ declare global { prototype: HTMLMapDrawToolsElement; new (): HTMLMapDrawToolsElement; }; + interface HTMLMapFullscreenElement extends Components.MapFullscreen, HTMLStencilElement { + } + var HTMLMapFullscreenElement: { + prototype: HTMLMapFullscreenElement; + new (): HTMLMapFullscreenElement; + }; interface HTMLMapLayerPickerElement extends Components.MapLayerPicker, HTMLStencilElement { } var HTMLMapLayerPickerElement: { @@ -1053,6 +1065,7 @@ declare global { "list-item": HTMLListItemElement; "map-card": HTMLMapCardElement; "map-draw-tools": HTMLMapDrawToolsElement; + "map-fullscreen": HTMLMapFullscreenElement; "map-layer-picker": HTMLMapLayerPickerElement; "map-legend": HTMLMapLegendElement; "map-picker": HTMLMapPickerElement; @@ -1347,6 +1360,16 @@ declare namespace LocalJSX { */ "undoEnabled"?: boolean; } + interface MapFullscreen { + /** + * esri/widgets/Fullscreen: https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Fullscreen.html + */ + "fullscreenWidget"?: __esri.Fullscreen; + /** + * esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html + */ + "mapView"?: __esri.MapView; + } interface MapLayerPicker { /** * "transparent" | "solid": controls the button appearance when using the "dropdown" type @@ -1522,10 +1545,6 @@ declare namespace LocalJSX { * esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html */ "mapView"?: __esri.MapView; - /** - * Emitted when the expand button is clicked - */ - "onExpandMap"?: (event: MapToolsCustomEvent) => void; /** * ISearchConfiguration: Configuration details for the Search widget */ @@ -1825,6 +1844,7 @@ declare namespace LocalJSX { "list-item": ListItem; "map-card": MapCard; "map-draw-tools": MapDrawTools; + "map-fullscreen": MapFullscreen; "map-layer-picker": MapLayerPicker; "map-legend": MapLegend; "map-picker": MapPicker; @@ -1867,6 +1887,7 @@ declare module "@stencil/core" { "list-item": LocalJSX.ListItem & JSXBase.HTMLAttributes; "map-card": LocalJSX.MapCard & JSXBase.HTMLAttributes; "map-draw-tools": LocalJSX.MapDrawTools & JSXBase.HTMLAttributes; + "map-fullscreen": LocalJSX.MapFullscreen & JSXBase.HTMLAttributes; "map-layer-picker": LocalJSX.MapLayerPicker & JSXBase.HTMLAttributes; "map-legend": LocalJSX.MapLegend & JSXBase.HTMLAttributes; "map-picker": LocalJSX.MapPicker & JSXBase.HTMLAttributes; diff --git a/src/components/crowdsource-manager/readme.md b/src/components/crowdsource-manager/readme.md index a23f43212..cec5066de 100644 --- a/src/components/crowdsource-manager/readme.md +++ b/src/components/crowdsource-manager/readme.md @@ -77,6 +77,7 @@ graph TD; map-tools --> basemap-gallery map-tools --> map-search map-tools --> map-legend + map-tools --> map-fullscreen map-tools --> calcite-action map-tools --> calcite-icon map-tools --> calcite-tooltip diff --git a/src/components/map-card/readme.md b/src/components/map-card/readme.md index f930b841f..ce831e55a 100644 --- a/src/components/map-card/readme.md +++ b/src/components/map-card/readme.md @@ -65,6 +65,7 @@ graph TD; map-tools --> basemap-gallery map-tools --> map-search map-tools --> map-legend + map-tools --> map-fullscreen map-tools --> calcite-action map-tools --> calcite-icon map-tools --> calcite-tooltip diff --git a/src/components/map-fullscreen/map-fullscreen.css b/src/components/map-fullscreen/map-fullscreen.css new file mode 100644 index 000000000..5d4e87f30 --- /dev/null +++ b/src/components/map-fullscreen/map-fullscreen.css @@ -0,0 +1,3 @@ +:host { + display: block; +} diff --git a/src/components/map-fullscreen/map-fullscreen.tsx b/src/components/map-fullscreen/map-fullscreen.tsx new file mode 100644 index 000000000..b55cbc881 --- /dev/null +++ b/src/components/map-fullscreen/map-fullscreen.tsx @@ -0,0 +1,174 @@ +/** @license + * Copyright 2022 Esri + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { Component, Host, h, Prop, Watch } from '@stencil/core'; +import { loadModules } from "../../utils/loadModules"; + +@Component({ + tag: 'map-fullscreen', + styleUrl: 'map-fullscreen.css', + shadow: true, +}) +export class MapFullscreen { + //-------------------------------------------------------------------------- + // + // Host element access + // + //-------------------------------------------------------------------------- + + //-------------------------------------------------------------------------- + // + // Properties (public) + // + //-------------------------------------------------------------------------- + + /** + * esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html + */ + @Prop() mapView: __esri.MapView; + + /** + * esri/widgets/Fullscreen: https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Fullscreen.html + */ + @Prop() fullscreenWidget: __esri.Fullscreen; + + //-------------------------------------------------------------------------- + // + // State (internal) + // + //-------------------------------------------------------------------------- + + //-------------------------------------------------------------------------- + // + // Properties (protected) + // + //-------------------------------------------------------------------------- + + /** + * esri/widgets/Fullscreen: https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Fullscreen.html + */ + protected Fullscreen: typeof import("esri/widgets/Fullscreen"); + + /** + * HTMLElement: The container div for the Fullscreen widget + */ + protected _fullscreenElement: HTMLElement; + + //-------------------------------------------------------------------------- + // + // Watch handlers + // + //-------------------------------------------------------------------------- + + /** + * Called each time the mapView prop is changed. + * + * @returns Promise when complete + */ + @Watch("mapView") + async mapViewWatchHandler(): Promise { + await this.mapView.when(() => { + this._initFullscreenWidget(); + }); + } + + //-------------------------------------------------------------------------- + // + // Methods (public) + // + //-------------------------------------------------------------------------- + + //-------------------------------------------------------------------------- + // + // Events (public) + // + //-------------------------------------------------------------------------- + + //-------------------------------------------------------------------------- + // + // Functions (lifecycle) + // + //-------------------------------------------------------------------------- + + /** + * StencilJS: Called once just after the component is first connected to the DOM. + */ + async componentWillLoad(): Promise { + await this._initModules(); + } + + /** + * Renders the component. + */ + render() { + return ( + +
{ this._fullscreenElement = el }} /> + + ); + } + + /** + * StencilJS: Called just after the component updates. + * It's never called during the first render(). + */ + async componentDidUpdate(): Promise { + this._initFullscreenWidget(); + } + + /** + * StencilJS: Called once just after the component is fully loaded and the first render() occurs. + */ + async componentDidLoad(): Promise { + this._initFullscreenWidget(); + } + + //-------------------------------------------------------------------------- + // + // Functions (protected) + // + //-------------------------------------------------------------------------- + + /** + * Load esri javascript api modules + * + * @returns Promise resolving when function is done + * + * @protected + */ + protected async _initModules(): Promise { + const [Fullscreen] = await loadModules([ + "esri/widgets/Fullscreen" + ]); + this.Fullscreen = Fullscreen; + } + + /** + * Initialize the search widget + * + * @protected + */ + protected _initFullscreenWidget(): void { + if (this.mapView && this._fullscreenElement && !this.fullscreenWidget) { + this.fullscreenWidget = new this.Fullscreen({ + view: this.mapView + }); + } else if (this.fullscreenWidget) { + this.fullscreenWidget.view = this.mapView; + } + } + +} diff --git a/src/components/map-fullscreen/readme.md b/src/components/map-fullscreen/readme.md new file mode 100644 index 000000000..74645aa6f --- /dev/null +++ b/src/components/map-fullscreen/readme.md @@ -0,0 +1,31 @@ +# map-fullscreen + + + + + + +## Properties + +| Property | Attribute | Description | Type | Default | +| ------------------ | --------- | ------------------------------------------------------------------------------------------------------------------- | ------------ | ----------- | +| `fullscreenWidget` | -- | esri/widgets/Fullscreen: https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Fullscreen.html | `Fullscreen` | `undefined` | +| `mapView` | -- | esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html | `MapView` | `undefined` | + + +## Dependencies + +### Used by + + - [map-tools](../map-tools) + +### Graph +```mermaid +graph TD; + map-tools --> map-fullscreen + style map-fullscreen fill:#f9f,stroke:#333,stroke-width:4px +``` + +---------------------------------------------- + +*Built with [StencilJS](https://stenciljs.com/)* diff --git a/src/components/map-fullscreen/test/map-fullscreen.e2e.ts b/src/components/map-fullscreen/test/map-fullscreen.e2e.ts new file mode 100644 index 000000000..1ebf6ab6c --- /dev/null +++ b/src/components/map-fullscreen/test/map-fullscreen.e2e.ts @@ -0,0 +1,11 @@ +import { newE2EPage } from '@stencil/core/testing'; + +xdescribe('map-fullscreen', () => { + it('renders', async () => { + const page = await newE2EPage(); + await page.setContent(''); + + const element = await page.find('map-fullscreen'); + expect(element).toHaveClass('hydrated'); + }); +}); diff --git a/src/components/map-fullscreen/test/map-fullscreen.spec.tsx b/src/components/map-fullscreen/test/map-fullscreen.spec.tsx new file mode 100644 index 000000000..d18a82f2a --- /dev/null +++ b/src/components/map-fullscreen/test/map-fullscreen.spec.tsx @@ -0,0 +1,18 @@ +import { newSpecPage } from '@stencil/core/testing'; +import { MapFullscreen } from '../map-fullscreen'; + +xdescribe('map-fullscreen', () => { + it('renders', async () => { + const page = await newSpecPage({ + components: [MapFullscreen], + html: ``, + }); + expect(page.root).toEqualHtml(` + + + + + + `); + }); +}); diff --git a/src/components/map-tools/map-tools.tsx b/src/components/map-tools/map-tools.tsx index e2528e918..9bbe2c410 100644 --- a/src/components/map-tools/map-tools.tsx +++ b/src/components/map-tools/map-tools.tsx @@ -14,10 +14,10 @@ * limitations under the License. */ -import { Component, Element, Event, EventEmitter, Host, h, Prop, State, VNode, Watch } from '@stencil/core'; +import { Component, Element, Host, h, Prop, State, VNode, Watch } from '@stencil/core'; import MapTools_T9n from "../../assets/t9n/map-tools/resources.json"; import { getLocaleComponentStrings } from "../../utils/locale"; -import { EExpandType, ISearchConfiguration } from "../../utils/interfaces"; +import { ISearchConfiguration } from "../../utils/interfaces"; @Component({ tag: 'map-tools', @@ -76,6 +76,11 @@ export class MapTools { */ @State() _showBasemapWidget = false; + /** + * When true the map will be displayed in fullscreen mode + */ + @State() _showFullscreen = false; + /** * When true the legend widget will be displayed */ @@ -97,6 +102,11 @@ export class MapTools { */ protected _basemapElement: HTMLBasemapGalleryElement; + /** + * HTMLMapFullscreenElement: The fullscreen element node + */ + protected _fullscreenElement: HTMLMapFullscreenElement; + /** * HTMLLegendElement: The legend element node */ @@ -130,6 +140,21 @@ export class MapTools { } } + /** + * When the _showBasemapWidget property is true display the basemap gallery + */ + @Watch("_showFullscreen") + async _showFullscreenWatchHandler( + v: boolean + ): Promise { + const fs = this._fullscreenElement.fullscreenWidget; + if (v) { + fs.viewModel.enter(); + } else { + fs.viewModel.exit(); + } + } + /** * When the _showLegendWidget property is true display the search widget */ @@ -176,11 +201,6 @@ export class MapTools { // //-------------------------------------------------------------------------- - /** - * Emitted when the expand button is clicked - */ - @Event() expandMap: EventEmitter; - //-------------------------------------------------------------------------- // // Functions (lifecycle) @@ -203,6 +223,9 @@ export class MapTools { const searchClass = this._showSearchWidget ? "" : "display-none"; const basemapClass = this._showBasemapWidget ? "" : "display-none"; const legendClass = this._showLegendWidget ? "" : "display-none"; + const fullscreenClass = this._showFullscreen ? "" : "display-none"; + const fullscreenIcon = this._showFullscreen ? "full-screen-exit" : "full-screen"; + const fullscreenTip = this._showFullscreen ? this._translations.exitFullscreen : this._translations.enterFullscreen; const expandTip = this._showTools ? this._translations.collapse : this._translations.expand; return ( @@ -213,7 +236,7 @@ export class MapTools {
{this._getActionGroup("legend", false, this._translations.legend, () => this._showLegend())} {this._getActionGroup("magnifying-glass", false, this._translations.search, () => this._search())} - {this._getActionGroup("expand", false, this._translations.expand, () => this._expand())} + {this._getActionGroup(fullscreenIcon, false, fullscreenTip, () => this._expand())} {this._getActionGroup("basemap", false, this._translations.basemap, () => this._toggleBasemapPicker())}
@@ -233,6 +256,11 @@ export class MapTools { mapView={this.mapView} ref={(el) => {this._legendElement = el}} /> + {this._fullscreenElement = el}} + />
); } @@ -308,14 +336,14 @@ export class MapTools { } /** - * Emit the expand map event + * Enter/Exit fullscreen mode * * @returns void * * @protected */ protected _expand(): void { - this.expandMap.emit(EExpandType.EXPAND); + this._showFullscreen = !this._showFullscreen; } /** diff --git a/src/components/map-tools/readme.md b/src/components/map-tools/readme.md index 8c8c1c582..301efbde7 100644 --- a/src/components/map-tools/readme.md +++ b/src/components/map-tools/readme.md @@ -14,13 +14,6 @@ | `searchConfiguration` | -- | ISearchConfiguration: Configuration details for the Search widget | `ISearchConfiguration` | `undefined` | -## Events - -| Event | Description | Type | -| ----------- | ----------------------------------------- | --------------------------------------------------------- | -| `expandMap` | Emitted when the expand button is clicked | `CustomEvent` | - - ## Dependencies ### Used by @@ -32,6 +25,7 @@ - [basemap-gallery](../basemap-gallery) - [map-search](../map-search) - [map-legend](../map-legend) +- [map-fullscreen](../map-fullscreen) - calcite-action - calcite-icon - calcite-tooltip @@ -42,6 +36,7 @@ graph TD; map-tools --> basemap-gallery map-tools --> map-search map-tools --> map-legend + map-tools --> map-fullscreen map-tools --> calcite-action map-tools --> calcite-icon map-tools --> calcite-tooltip diff --git a/src/utils/interfaces.ts b/src/utils/interfaces.ts index 3e0102ffc..b169458c7 100644 --- a/src/utils/interfaces.ts +++ b/src/utils/interfaces.ts @@ -60,11 +60,6 @@ export enum ESelectionType { RECT="RECT" } -export enum EExpandType { - EXPAND="EXPAND", - COLLAPSE="COLLAPSE" -} - export enum EWorkflowType { SEARCH="SEARCH", SELECT="SELECT", From 0eb29dc67d9a00e972cdaeb2a7d3e14b87090868 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Tue, 12 Sep 2023 11:17:06 -0600 Subject: [PATCH 202/406] add copyright --- src/components/map-fullscreen/map-fullscreen.css | 16 ++++++++++++++++ .../map-fullscreen/test/map-fullscreen.e2e.ts | 16 ++++++++++++++++ .../map-fullscreen/test/map-fullscreen.spec.tsx | 16 ++++++++++++++++ 3 files changed, 48 insertions(+) diff --git a/src/components/map-fullscreen/map-fullscreen.css b/src/components/map-fullscreen/map-fullscreen.css index 5d4e87f30..5fb2a40a9 100644 --- a/src/components/map-fullscreen/map-fullscreen.css +++ b/src/components/map-fullscreen/map-fullscreen.css @@ -1,3 +1,19 @@ +/** @license + * Copyright 2022 Esri + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + :host { display: block; } diff --git a/src/components/map-fullscreen/test/map-fullscreen.e2e.ts b/src/components/map-fullscreen/test/map-fullscreen.e2e.ts index 1ebf6ab6c..5fa1bb666 100644 --- a/src/components/map-fullscreen/test/map-fullscreen.e2e.ts +++ b/src/components/map-fullscreen/test/map-fullscreen.e2e.ts @@ -1,3 +1,19 @@ +/** @license + * Copyright 2022 Esri + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + import { newE2EPage } from '@stencil/core/testing'; xdescribe('map-fullscreen', () => { diff --git a/src/components/map-fullscreen/test/map-fullscreen.spec.tsx b/src/components/map-fullscreen/test/map-fullscreen.spec.tsx index d18a82f2a..68695ed30 100644 --- a/src/components/map-fullscreen/test/map-fullscreen.spec.tsx +++ b/src/components/map-fullscreen/test/map-fullscreen.spec.tsx @@ -1,3 +1,19 @@ +/** @license + * Copyright 2022 Esri + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + import { newSpecPage } from '@stencil/core/testing'; import { MapFullscreen } from '../map-fullscreen'; From bea2a47620a8e664d0d74e4d952766ecdc542bad Mon Sep 17 00:00:00 2001 From: John Hauck Date: Tue, 12 Sep 2023 11:34:22 -0600 Subject: [PATCH 203/406] use layer name as export title and show column names --- src/components/layer-table/layer-table.tsx | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/components/layer-table/layer-table.tsx b/src/components/layer-table/layer-table.tsx index 35a1bedb0..5b4dde49c 100644 --- a/src/components/layer-table/layer-table.tsx +++ b/src/components/layer-table/layer-table.tsx @@ -749,13 +749,14 @@ export class LayerTable { const exportInfos: IExportInfos = {}; const ids = this._table.highlightIds.toArray(); exportInfos[this._layer.id] = { - selectionSetNames: [], + selectionSetNames: [this._layer.title], ids, layer: this._layer } void downloadUtils.downloadCSV( exportInfos, false, // formatUsingLayerPopup + false, // removeDuplicates true, // addColumnTitle ); } From 2fb43b160caf1d88cdeddd4371367e8b176e7e70 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Tue, 12 Sep 2023 11:37:18 -0600 Subject: [PATCH 204/406] remove logs --- src/components/edit-card/edit-card.tsx | 3 --- src/components/info-card/info-card.tsx | 4 ---- src/components/map-card/map-card.tsx | 1 - 3 files changed, 8 deletions(-) diff --git a/src/components/edit-card/edit-card.tsx b/src/components/edit-card/edit-card.tsx index 69b0088e7..a0fb849ea 100644 --- a/src/components/edit-card/edit-card.tsx +++ b/src/components/edit-card/edit-card.tsx @@ -293,7 +293,6 @@ export class EditCard { }); if (this._editHandle && this._attachmentHandle && this._activeWorkflowHandle) { - console.log("remove handles") this._editHandle.remove(); this._attachmentHandle.remove(); this._activeWorkflowHandle.remove(); @@ -308,11 +307,9 @@ export class EditCard { this._editHandle = this.reactiveUtils.when( () => { - console.log("this._editor.viewModel.state: " + this._editor.viewModel.state.toString()) return this._editor.viewModel.state === "ready"; }, () => { - console.log("this._shouldClose: " + this._shouldClose.toString()) if (this._shouldClose) { this.closeEdit.emit(); this._shouldClose = false; diff --git a/src/components/info-card/info-card.tsx b/src/components/info-card/info-card.tsx index b71fd3e0b..0f3902255 100644 --- a/src/components/info-card/info-card.tsx +++ b/src/components/info-card/info-card.tsx @@ -146,7 +146,6 @@ export class InfoCard { */ @Watch("mapView") async mapViewWatchHandler(): Promise { - console.log("mapViewWatchHandler") return await this._initFeaturesWidget(); } @@ -323,10 +322,7 @@ export class InfoCard { * @protected */ protected async _initFeaturesWidget(): Promise { - console.log("_initFeaturesWidget") return await this.mapView.when(() => { - console.log("_initFeaturesWidget mapView when") - if (!this._features) { this._features = new this.Features({ view: this.mapView, diff --git a/src/components/map-card/map-card.tsx b/src/components/map-card/map-card.tsx index bb56a869f..0b74ec458 100644 --- a/src/components/map-card/map-card.tsx +++ b/src/components/map-card/map-card.tsx @@ -207,7 +207,6 @@ export class MapCard { protected async _loadMap( webMapInfo: IMapInfo ): Promise { - console.log("_loadMap") let id = webMapInfo?.id; // on the first render use the first child of the provided mapInfos this._webMapInfo = (id === "" || !id) && this.mapInfos.length > 0 ? From 2527123bc2e2dbd39037aae1b18f20af5f15805c Mon Sep 17 00:00:00 2001 From: John Hauck Date: Tue, 12 Sep 2023 11:39:57 -0600 Subject: [PATCH 205/406] clean ready check --- src/components/edit-card/edit-card.tsx | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/components/edit-card/edit-card.tsx b/src/components/edit-card/edit-card.tsx index a0fb849ea..456fa5f42 100644 --- a/src/components/edit-card/edit-card.tsx +++ b/src/components/edit-card/edit-card.tsx @@ -306,9 +306,7 @@ export class EditCard { ); this._editHandle = this.reactiveUtils.when( - () => { - return this._editor.viewModel.state === "ready"; - }, + () => this._editor.viewModel.state === "ready", () => { if (this._shouldClose) { this.closeEdit.emit(); From 57f3af52ac6d1659c7985eea4df8db222051259f Mon Sep 17 00:00:00 2001 From: John Hauck Date: Tue, 12 Sep 2023 14:26:47 -0600 Subject: [PATCH 206/406] use didLoad rather than didRender --- src/components/pdf-download/pdf-download.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/pdf-download/pdf-download.tsx b/src/components/pdf-download/pdf-download.tsx index 7589e4db3..11323f64c 100644 --- a/src/components/pdf-download/pdf-download.tsx +++ b/src/components/pdf-download/pdf-download.tsx @@ -174,7 +174,7 @@ export class PdfDownload { ); } - componentDidRender(): void { + componentDidLoad(): void { // Render the options outside of Stencil's rendering so that it doesn't mangle RTL text with embedded LTR this._renderOptions(); } From 2e4668e37db17514502b09991ecf01a80a2feb3a Mon Sep 17 00:00:00 2001 From: John Hauck Date: Tue, 12 Sep 2023 17:16:36 -0600 Subject: [PATCH 207/406] add placeholder --- src/assets/t9n/map-select-tools/resources.json | 3 ++- src/assets/t9n/map-select-tools/resources_en.json | 3 ++- src/components/map-select-tools/map-select-tools.tsx | 8 +++++++- 3 files changed, 11 insertions(+), 3 deletions(-) diff --git a/src/assets/t9n/map-select-tools/resources.json b/src/assets/t9n/map-select-tools/resources.json index 9cda8ed50..ed0b4c413 100644 --- a/src/assets/t9n/map-select-tools/resources.json +++ b/src/assets/t9n/map-select-tools/resources.json @@ -11,5 +11,6 @@ "useLayerFeatures": "Use layer features", "inputLayer": "Input layer", "useLayerFeaturesTooltip": "Choose a layer and use the sketch tools to point to features that can be used as a boundary to select intersecting features from the input layer.", - "useSearchDistanceTootip": "Define a distance for a search buffer that will select input features that intersect the buffer." + "useSearchDistanceTootip": "Define a distance for a search buffer that will select input features that intersect the buffer.", + "placeholder": "Find address or place" } diff --git a/src/assets/t9n/map-select-tools/resources_en.json b/src/assets/t9n/map-select-tools/resources_en.json index 9cda8ed50..ed0b4c413 100644 --- a/src/assets/t9n/map-select-tools/resources_en.json +++ b/src/assets/t9n/map-select-tools/resources_en.json @@ -11,5 +11,6 @@ "useLayerFeatures": "Use layer features", "inputLayer": "Input layer", "useLayerFeaturesTooltip": "Choose a layer and use the sketch tools to point to features that can be used as a boundary to select intersecting features from the input layer.", - "useSearchDistanceTootip": "Define a distance for a search buffer that will select input features that intersect the buffer." + "useSearchDistanceTootip": "Define a distance for a search buffer that will select input features that intersect the buffer.", + "placeholder": "Find address or place" } diff --git a/src/components/map-select-tools/map-select-tools.tsx b/src/components/map-select-tools/map-select-tools.tsx index 74b15b54c..b8fe33102 100644 --- a/src/components/map-select-tools/map-select-tools.tsx +++ b/src/components/map-select-tools/map-select-tools.tsx @@ -444,7 +444,13 @@ export class MapSelectTools { * StencilJS: Called once just after the component is fully loaded and the first render() occurs. */ async componentDidLoad(): Promise { - return this._init(); + await this._init(); + await this._searchWidget.when(() => { + this._searchWidget.allPlaceholder = this._translations.placeholder; + this._searchWidget.defaultSources.forEach(s => { + s.placeholder = this._translations.placeholder; + }) + }) } /** From cb2dbc4d075f93a64ff4e01bb9b111dec9e8bf31 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Tue, 12 Sep 2023 17:32:04 -0600 Subject: [PATCH 208/406] update version --- CHANGELOG.md | 5 ++++- package-lock.json | 4 ++-- package.json | 2 +- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 839e7978c..ab45155ce 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,8 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm ## [Unreleased] +## [0.6.12] - Sept 12th 2023 + ## [0.6.11] - Sept 8th 2023 ## [0.6.10] - Sept 7th 2023 @@ -214,4 +216,5 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm [0.6.9]: https://github.com/Esri/solution.js/compare/v0.6.8...v0.6.9 "v0.6.9" [0.6.10]: https://github.com/Esri/solution.js/compare/v0.6.9...v0.6.10 "v0.6.10" [0.6.11]: https://github.com/Esri/solution.js/compare/v0.6.10...v0.6.11 "v0.6.11" -[Unreleased]: https://github.com/Esri/solution.js/compare/v0.6.11...HEAD "Unreleased Changes" +[0.6.12]: https://github.com/Esri/solution.js/compare/v0.6.11...v0.6.12 "v0.6.12" +[Unreleased]: https://github.com/Esri/solution.js/compare/v0.6.12...HEAD "Unreleased Changes" diff --git a/package-lock.json b/package-lock.json index f4d716288..4eeaebb09 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@esri/solutions-components", - "version": "0.6.11", + "version": "0.6.12", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@esri/solutions-components", - "version": "0.6.11", + "version": "0.6.12", "license": "Apache-2.0", "dependencies": { "@esri/hub-common": "^12.37.1", diff --git a/package.json b/package.json index 5826abe68..a65415fe6 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@esri/solutions-components", - "version": "0.6.11", + "version": "0.6.12", "description": "Web Components for Esri's Solutions Applications", "main": "dist/index.cjs.js", "module": "dist/index.js", From fc20b39b9f96f5f04b2df28a81417f68ec1ea12f Mon Sep 17 00:00:00 2001 From: John Hauck Date: Wed, 13 Sep 2023 14:33:50 -0600 Subject: [PATCH 209/406] #327 --- src/components/card-manager/card-manager.css | 5 ----- src/components/card-manager/card-manager.tsx | 2 +- .../crowdsource-manager/crowdsource-manager.css | 4 ++-- .../crowdsource-manager/crowdsource-manager.tsx | 2 +- src/components/edit-card/edit-card.css | 8 ++++++++ src/components/info-card/info-card.css | 10 ++++++++++ src/components/info-card/info-card.tsx | 2 +- 7 files changed, 23 insertions(+), 10 deletions(-) diff --git a/src/components/card-manager/card-manager.css b/src/components/card-manager/card-manager.css index 3f040ad52..bb896037d 100644 --- a/src/components/card-manager/card-manager.css +++ b/src/components/card-manager/card-manager.css @@ -50,11 +50,6 @@ overflow: auto; } -.border-rounded { - border: 1px solid var(--calcite-ui-border-2); - border-radius: 5px; -} - .height-full { height: 100%; } diff --git a/src/components/card-manager/card-manager.tsx b/src/components/card-manager/card-manager.tsx index d7d5eb6cf..a4a13c7d4 100644 --- a/src/components/card-manager/card-manager.tsx +++ b/src/components/card-manager/card-manager.tsx @@ -144,7 +144,7 @@ export class CardManager { return ( -
+
+
-
+
Date: Wed, 13 Sep 2023 15:05:17 -0700 Subject: [PATCH 210/406] Update packages --- package-lock.json | 137 ++++++++++++++-------------------------------- package.json | 15 +++-- 2 files changed, 47 insertions(+), 105 deletions(-) diff --git a/package-lock.json b/package-lock.json index 4eeaebb09..5ac2bdfef 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,10 +9,17 @@ "version": "0.6.12", "license": "Apache-2.0", "dependencies": { + "@esri/arcgis-rest-auth": "^3.4.2", + "@esri/arcgis-rest-feature-layer": "^3.4.2", + "@esri/arcgis-rest-portal": "^3.4.2", + "@esri/arcgis-rest-request": "^3.4.2", + "@esri/arcgis-rest-service-admin": "^3.4.2", + "@esri/calcite-components": "^1.6.0", "@esri/hub-common": "^12.37.1", "@esri/hub-initiatives": "^12.4.1", "@esri/hub-sites": "^12.6.0", "@esri/hub-teams": "^12.4.1", + "@esri/solution-common": "^5.0.7", "@pdf-lib/fontkit": "^1.1.1", "@stencil/core": "^4.0.5", "focus-trap": "7.2.0", @@ -58,14 +65,6 @@ "ts-node": "^10.9.1", "tslib": "^2.4.0", "typescript": "^4.8.4" - }, - "peerDependencies": { - "@esri/arcgis-rest-auth": "^3.4.2", - "@esri/arcgis-rest-feature-layer": "^3.4.2", - "@esri/arcgis-rest-portal": "^3.4.2", - "@esri/arcgis-rest-request": "^3.4.2", - "@esri/arcgis-rest-service-admin": "^3.4.2", - "@esri/calcite-components": "^1.6.0" } }, "node_modules/@aashutoshrathi/word-wrap": { @@ -2197,7 +2196,6 @@ "resolved": "https://registry.npmjs.org/@esri/arcgis-rest-auth/-/arcgis-rest-auth-3.5.0.tgz", "integrity": "sha512-EeKfGxSLEI2KvGE2FvN+kYDR+a7RWLf+uNzsYDXWK/8wOYrtj+lh091NHxgHU/Fd+NDoAcHSoTSPCCEpgS0Gsg==", "deprecated": "Development work on ArcGIS REST JS 3.x has ceased. This packages funtionality has moved to @esri/arcgis-rest-request at 4.x.x https://developers.arcgis.com/arcgis-rest-js/release-notes/upgrade-v3-v4/.", - "peer": true, "dependencies": { "@esri/arcgis-rest-types": "^3.5.0", "tslib": "^1.13.0" @@ -2209,15 +2207,13 @@ "node_modules/@esri/arcgis-rest-auth/node_modules/tslib": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "peer": true + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" }, "node_modules/@esri/arcgis-rest-feature-layer": { "version": "3.5.0", "resolved": "https://registry.npmjs.org/@esri/arcgis-rest-feature-layer/-/arcgis-rest-feature-layer-3.5.0.tgz", "integrity": "sha512-+qjJnwPaYYNQqce20FF1iNvQ1BeFVue6ka8MnDu4BNhSeyw9OKD2WoI1pXfKVkSHpXTHeQIfyMVLC7/nFNja8g==", "deprecated": "Development work on ArcGIS REST JS 3.x has ceased. This packages funtionality has moved to @esri/arcgis-rest-feature-service at 4.x.x https://developers.arcgis.com/arcgis-rest-js/release-notes/upgrade-v3-v4/.", - "peer": true, "dependencies": { "@esri/arcgis-rest-types": "^3.5.0", "tslib": "^1.13.0" @@ -2230,14 +2226,12 @@ "node_modules/@esri/arcgis-rest-feature-layer/node_modules/tslib": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "peer": true + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" }, "node_modules/@esri/arcgis-rest-portal": { "version": "3.5.0", "resolved": "https://registry.npmjs.org/@esri/arcgis-rest-portal/-/arcgis-rest-portal-3.5.0.tgz", "integrity": "sha512-rrl/eUWOxdA5Y0MDYuvCopwNkf8loIfVIE4j1kGRTIz32n4uqdhb38sYKd2X4JK8QW67vyKq0SqxMSIYOHGXQg==", - "peer": true, "dependencies": { "@esri/arcgis-rest-types": "^3.5.0", "tslib": "^1.13.0" @@ -2250,14 +2244,12 @@ "node_modules/@esri/arcgis-rest-portal/node_modules/tslib": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "peer": true + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" }, "node_modules/@esri/arcgis-rest-request": { "version": "3.5.0", "resolved": "https://registry.npmjs.org/@esri/arcgis-rest-request/-/arcgis-rest-request-3.5.0.tgz", "integrity": "sha512-FlI32b2EF/SlJeGe8GZtVqIlvHDxI18bgIB2vQINi9fAC07F1Jg3JMglDTDSl8CCYS/9cYp62n7lWPUwmvn/xQ==", - "peer": true, "dependencies": { "tslib": "^1.10.0" } @@ -2265,15 +2257,13 @@ "node_modules/@esri/arcgis-rest-request/node_modules/tslib": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "peer": true + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" }, "node_modules/@esri/arcgis-rest-service-admin": { "version": "3.5.0", "resolved": "https://registry.npmjs.org/@esri/arcgis-rest-service-admin/-/arcgis-rest-service-admin-3.5.0.tgz", "integrity": "sha512-gZzqb0I9kAyIIx2bBTU070QSEd5CV7C0vyd5IBWZOJqgkvA4Yf/LOPCMZ2s/+y2jF+4B1vRMGjpInovvfEk9Rw==", "deprecated": "Development work on ArcGIS REST JS 3.x has ceased. This packages funtionality has moved to @esri/arcgis-rest-feature-service at 4.x.x https://developers.arcgis.com/arcgis-rest-js/release-notes/upgrade-v3-v4/.", - "peer": true, "dependencies": { "@esri/arcgis-rest-types": "^3.5.0", "tslib": "^1.13.0" @@ -2287,20 +2277,17 @@ "node_modules/@esri/arcgis-rest-service-admin/node_modules/tslib": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "peer": true + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" }, "node_modules/@esri/arcgis-rest-types": { "version": "3.6.0", "resolved": "https://registry.npmjs.org/@esri/arcgis-rest-types/-/arcgis-rest-types-3.6.0.tgz", - "integrity": "sha512-t6QWdVNmqB9OloYAvVWYNjvqlnrXs/m0nCRNwPGt3ZiAPXn5CpkpSn2UD6LPqGp6vPxKG81lbFQvwCw9az4qIg==", - "peer": true + "integrity": "sha512-t6QWdVNmqB9OloYAvVWYNjvqlnrXs/m0nCRNwPGt3ZiAPXn5CpkpSn2UD6LPqGp6vPxKG81lbFQvwCw9az4qIg==" }, "node_modules/@esri/calcite-components": { "version": "1.6.1", "resolved": "https://registry.npmjs.org/@esri/calcite-components/-/calcite-components-1.6.1.tgz", "integrity": "sha512-qvaSMdbSjueeNd7GI2Wuspv8z+c6c1Kd4Qe34bfnWS9UDkhBF0H/YXRCp/mKYcvbI04MVQQdyWS+ZHi8XQllDQ==", - "peer": true, "dependencies": { "@floating-ui/dom": "1.5.1", "@stencil/core": "2.22.3", @@ -2318,7 +2305,6 @@ "version": "2.22.3", "resolved": "https://registry.npmjs.org/@stencil/core/-/core-2.22.3.tgz", "integrity": "sha512-kmVA0M/HojwsfkeHsifvHVIYe4l5tin7J5+DLgtl8h6WWfiMClND5K3ifCXXI2ETDNKiEk21p6jql3Fx9o2rng==", - "peer": true, "bin": { "stencil": "bin/stencil" }, @@ -2331,7 +2317,6 @@ "version": "7.5.2", "resolved": "https://registry.npmjs.org/focus-trap/-/focus-trap-7.5.2.tgz", "integrity": "sha512-p6vGNNWLDGwJCiEjkSK6oERj/hEyI9ITsSwIUICBoKLlWiTWXJRfQibCwcoi50rTZdbi87qDtUlMCmQwsGSgPw==", - "peer": true, "dependencies": { "tabbable": "^6.2.0" } @@ -2484,7 +2469,6 @@ "version": "1.4.1", "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.4.1.tgz", "integrity": "sha512-jk3WqquEJRlcyu7997NtR5PibI+y5bi+LS3hPmguVClypenMsCY3CBa3LAQnozRCtCrYWSEtAdiskpamuJRFOQ==", - "peer": true, "dependencies": { "@floating-ui/utils": "^0.1.1" } @@ -2493,7 +2477,6 @@ "version": "1.5.1", "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.5.1.tgz", "integrity": "sha512-KwvVcPSXg6mQygvA1TjbN/gh///36kKtllIF8SUm0qpFj8+rvYrpvlYdL1JoA71SHpDqgSSdGOSoQ0Mp3uY5aw==", - "peer": true, "dependencies": { "@floating-ui/core": "^1.4.1", "@floating-ui/utils": "^0.1.1" @@ -2502,8 +2485,7 @@ "node_modules/@floating-ui/utils": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.1.1.tgz", - "integrity": "sha512-m0G6wlnhm/AX0H12IOWtK8gASEMffnX08RtKkCgTdHb9JpHKGloI7icFfLg9ZmQeavcvR0PKmzxClyuFPSjKWw==", - "peer": true + "integrity": "sha512-m0G6wlnhm/AX0H12IOWtK8gASEMffnX08RtKkCgTdHb9JpHKGloI7icFfLg9ZmQeavcvR0PKmzxClyuFPSjKWw==" }, "node_modules/@humanwhocodes/config-array": { "version": "0.11.10", @@ -3928,7 +3910,6 @@ "version": "3.0.3", "resolved": "https://registry.npmjs.org/@types/color/-/color-3.0.3.tgz", "integrity": "sha512-X//qzJ3d3Zj82J9sC/C18ZY5f43utPbAJ6PhYt/M7uG6etcF6MRpKdN880KBy43B0BMzSfeT96MzrsNjFI3GbA==", - "peer": true, "dependencies": { "@types/color-convert": "*" } @@ -3937,7 +3918,6 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/@types/color-convert/-/color-convert-2.0.0.tgz", "integrity": "sha512-m7GG7IKKGuJUXvkZ1qqG3ChccdIM/qBBo913z+Xft0nKCX4hAU/IxKwZBU4cpRZ7GS5kV4vOblUkILtSShCPXQ==", - "peer": true, "dependencies": { "@types/color-name": "*" } @@ -3945,8 +3925,7 @@ "node_modules/@types/color-name": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/@types/color-name/-/color-name-1.1.1.tgz", - "integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==", - "peer": true + "integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==" }, "node_modules/@types/graceful-fs": { "version": "4.1.6", @@ -5109,9 +5088,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001524", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001524.tgz", - "integrity": "sha512-Jj917pJtYg9HSJBF95HVX3Cdr89JUyLT4IZ8SvM5aDRni95swKgYi3TgYLH5hnGfPE/U1dg6IfZ50UsIlLkwSA==", + "version": "1.0.30001534", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001534.tgz", + "integrity": "sha512-vlPVrhsCS7XaSh2VvWluIQEzVhefrUQcEsQWSS5A5V+dM07uv1qHeQzAOTGIMy9i3e9bH15+muvI/UHojVgS/Q==", "dev": true, "funding": [ { @@ -5410,7 +5389,6 @@ "version": "4.2.3", "resolved": "https://registry.npmjs.org/color/-/color-4.2.3.tgz", "integrity": "sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==", - "peer": true, "dependencies": { "color-convert": "^2.0.1", "color-string": "^1.9.0" @@ -5439,7 +5417,6 @@ "version": "1.9.1", "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz", "integrity": "sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==", - "peer": true, "dependencies": { "color-name": "^1.0.0", "simple-swizzle": "^0.2.2" @@ -5475,8 +5452,7 @@ "node_modules/composed-offset-position": { "version": "0.0.4", "resolved": "https://registry.npmjs.org/composed-offset-position/-/composed-offset-position-0.0.4.tgz", - "integrity": "sha512-vMlvu1RuNegVE0YsCDSV/X4X10j56mq7PCIyOKK74FxkXzGLwhOUmdkJLSdOBOMwWycobGUMgft2lp+YgTe8hw==", - "peer": true + "integrity": "sha512-vMlvu1RuNegVE0YsCDSV/X4X10j56mq7PCIyOKK74FxkXzGLwhOUmdkJLSdOBOMwWycobGUMgft2lp+YgTe8hw==" }, "node_modules/concat-map": { "version": "0.0.1", @@ -5663,8 +5639,7 @@ "node_modules/dayjs": { "version": "1.11.9", "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.9.tgz", - "integrity": "sha512-QvzAURSbQ0pKdIye2txOzNaHmxtUBXerpY0FJsFXUMKbIZeFm5ht1LS/jFsrncjnmtv8HsG0W2g6c0zUjZWmpA==", - "peer": true + "integrity": "sha512-QvzAURSbQ0pKdIye2txOzNaHmxtUBXerpY0FJsFXUMKbIZeFm5ht1LS/jFsrncjnmtv8HsG0W2g6c0zUjZWmpA==" }, "node_modules/debug": { "version": "4.3.4", @@ -10366,8 +10341,7 @@ "node_modules/lodash-es": { "version": "4.17.21", "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz", - "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==", - "peer": true + "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==" }, "node_modules/lodash.debounce": { "version": "4.0.8", @@ -12625,7 +12599,6 @@ "version": "0.2.2", "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz", "integrity": "sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==", - "peer": true, "dependencies": { "is-arrayish": "^0.3.1" } @@ -12633,8 +12606,7 @@ "node_modules/simple-swizzle/node_modules/is-arrayish": { "version": "0.3.2", "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz", - "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==", - "peer": true + "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==" }, "node_modules/sisteransi": { "version": "1.0.5", @@ -12725,8 +12697,7 @@ "node_modules/sortablejs": { "version": "1.15.0", "resolved": "https://registry.npmjs.org/sortablejs/-/sortablejs-1.15.0.tgz", - "integrity": "sha512-bv9qgVMjUMf89wAvM6AxVvS/4MX3sPeN0+agqShejLU5z5GX4C75ow1O2e5k4L6XItUyAK3gH6AxSbXrOM5e8w==", - "peer": true + "integrity": "sha512-bv9qgVMjUMf89wAvM6AxVvS/4MX3sPeN0+agqShejLU5z5GX4C75ow1O2e5k4L6XItUyAK3gH6AxSbXrOM5e8w==" }, "node_modules/source-map": { "version": "0.6.1", @@ -15548,7 +15519,6 @@ "version": "3.5.0", "resolved": "https://registry.npmjs.org/@esri/arcgis-rest-auth/-/arcgis-rest-auth-3.5.0.tgz", "integrity": "sha512-EeKfGxSLEI2KvGE2FvN+kYDR+a7RWLf+uNzsYDXWK/8wOYrtj+lh091NHxgHU/Fd+NDoAcHSoTSPCCEpgS0Gsg==", - "peer": true, "requires": { "@esri/arcgis-rest-types": "^3.5.0", "tslib": "^1.13.0" @@ -15557,8 +15527,7 @@ "tslib": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "peer": true + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" } } }, @@ -15566,7 +15535,6 @@ "version": "3.5.0", "resolved": "https://registry.npmjs.org/@esri/arcgis-rest-feature-layer/-/arcgis-rest-feature-layer-3.5.0.tgz", "integrity": "sha512-+qjJnwPaYYNQqce20FF1iNvQ1BeFVue6ka8MnDu4BNhSeyw9OKD2WoI1pXfKVkSHpXTHeQIfyMVLC7/nFNja8g==", - "peer": true, "requires": { "@esri/arcgis-rest-types": "^3.5.0", "tslib": "^1.13.0" @@ -15575,8 +15543,7 @@ "tslib": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "peer": true + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" } } }, @@ -15584,7 +15551,6 @@ "version": "3.5.0", "resolved": "https://registry.npmjs.org/@esri/arcgis-rest-portal/-/arcgis-rest-portal-3.5.0.tgz", "integrity": "sha512-rrl/eUWOxdA5Y0MDYuvCopwNkf8loIfVIE4j1kGRTIz32n4uqdhb38sYKd2X4JK8QW67vyKq0SqxMSIYOHGXQg==", - "peer": true, "requires": { "@esri/arcgis-rest-types": "^3.5.0", "tslib": "^1.13.0" @@ -15593,8 +15559,7 @@ "tslib": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "peer": true + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" } } }, @@ -15602,7 +15567,6 @@ "version": "3.5.0", "resolved": "https://registry.npmjs.org/@esri/arcgis-rest-request/-/arcgis-rest-request-3.5.0.tgz", "integrity": "sha512-FlI32b2EF/SlJeGe8GZtVqIlvHDxI18bgIB2vQINi9fAC07F1Jg3JMglDTDSl8CCYS/9cYp62n7lWPUwmvn/xQ==", - "peer": true, "requires": { "tslib": "^1.10.0" }, @@ -15610,8 +15574,7 @@ "tslib": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "peer": true + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" } } }, @@ -15619,7 +15582,6 @@ "version": "3.5.0", "resolved": "https://registry.npmjs.org/@esri/arcgis-rest-service-admin/-/arcgis-rest-service-admin-3.5.0.tgz", "integrity": "sha512-gZzqb0I9kAyIIx2bBTU070QSEd5CV7C0vyd5IBWZOJqgkvA4Yf/LOPCMZ2s/+y2jF+4B1vRMGjpInovvfEk9Rw==", - "peer": true, "requires": { "@esri/arcgis-rest-types": "^3.5.0", "tslib": "^1.13.0" @@ -15628,22 +15590,19 @@ "tslib": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "peer": true + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" } } }, "@esri/arcgis-rest-types": { "version": "3.6.0", "resolved": "https://registry.npmjs.org/@esri/arcgis-rest-types/-/arcgis-rest-types-3.6.0.tgz", - "integrity": "sha512-t6QWdVNmqB9OloYAvVWYNjvqlnrXs/m0nCRNwPGt3ZiAPXn5CpkpSn2UD6LPqGp6vPxKG81lbFQvwCw9az4qIg==", - "peer": true + "integrity": "sha512-t6QWdVNmqB9OloYAvVWYNjvqlnrXs/m0nCRNwPGt3ZiAPXn5CpkpSn2UD6LPqGp6vPxKG81lbFQvwCw9az4qIg==" }, "@esri/calcite-components": { "version": "1.6.1", "resolved": "https://registry.npmjs.org/@esri/calcite-components/-/calcite-components-1.6.1.tgz", "integrity": "sha512-qvaSMdbSjueeNd7GI2Wuspv8z+c6c1Kd4Qe34bfnWS9UDkhBF0H/YXRCp/mKYcvbI04MVQQdyWS+ZHi8XQllDQ==", - "peer": true, "requires": { "@floating-ui/dom": "1.5.1", "@stencil/core": "2.22.3", @@ -15660,14 +15619,12 @@ "@stencil/core": { "version": "2.22.3", "resolved": "https://registry.npmjs.org/@stencil/core/-/core-2.22.3.tgz", - "integrity": "sha512-kmVA0M/HojwsfkeHsifvHVIYe4l5tin7J5+DLgtl8h6WWfiMClND5K3ifCXXI2ETDNKiEk21p6jql3Fx9o2rng==", - "peer": true + "integrity": "sha512-kmVA0M/HojwsfkeHsifvHVIYe4l5tin7J5+DLgtl8h6WWfiMClND5K3ifCXXI2ETDNKiEk21p6jql3Fx9o2rng==" }, "focus-trap": { "version": "7.5.2", "resolved": "https://registry.npmjs.org/focus-trap/-/focus-trap-7.5.2.tgz", "integrity": "sha512-p6vGNNWLDGwJCiEjkSK6oERj/hEyI9ITsSwIUICBoKLlWiTWXJRfQibCwcoi50rTZdbi87qDtUlMCmQwsGSgPw==", - "peer": true, "requires": { "tabbable": "^6.2.0" } @@ -15790,7 +15747,6 @@ "version": "1.4.1", "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.4.1.tgz", "integrity": "sha512-jk3WqquEJRlcyu7997NtR5PibI+y5bi+LS3hPmguVClypenMsCY3CBa3LAQnozRCtCrYWSEtAdiskpamuJRFOQ==", - "peer": true, "requires": { "@floating-ui/utils": "^0.1.1" } @@ -15799,7 +15755,6 @@ "version": "1.5.1", "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.5.1.tgz", "integrity": "sha512-KwvVcPSXg6mQygvA1TjbN/gh///36kKtllIF8SUm0qpFj8+rvYrpvlYdL1JoA71SHpDqgSSdGOSoQ0Mp3uY5aw==", - "peer": true, "requires": { "@floating-ui/core": "^1.4.1", "@floating-ui/utils": "^0.1.1" @@ -15808,8 +15763,7 @@ "@floating-ui/utils": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.1.1.tgz", - "integrity": "sha512-m0G6wlnhm/AX0H12IOWtK8gASEMffnX08RtKkCgTdHb9JpHKGloI7icFfLg9ZmQeavcvR0PKmzxClyuFPSjKWw==", - "peer": true + "integrity": "sha512-m0G6wlnhm/AX0H12IOWtK8gASEMffnX08RtKkCgTdHb9JpHKGloI7icFfLg9ZmQeavcvR0PKmzxClyuFPSjKWw==" }, "@humanwhocodes/config-array": { "version": "0.11.10", @@ -16995,7 +16949,6 @@ "version": "3.0.3", "resolved": "https://registry.npmjs.org/@types/color/-/color-3.0.3.tgz", "integrity": "sha512-X//qzJ3d3Zj82J9sC/C18ZY5f43utPbAJ6PhYt/M7uG6etcF6MRpKdN880KBy43B0BMzSfeT96MzrsNjFI3GbA==", - "peer": true, "requires": { "@types/color-convert": "*" } @@ -17004,7 +16957,6 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/@types/color-convert/-/color-convert-2.0.0.tgz", "integrity": "sha512-m7GG7IKKGuJUXvkZ1qqG3ChccdIM/qBBo913z+Xft0nKCX4hAU/IxKwZBU4cpRZ7GS5kV4vOblUkILtSShCPXQ==", - "peer": true, "requires": { "@types/color-name": "*" } @@ -17012,8 +16964,7 @@ "@types/color-name": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/@types/color-name/-/color-name-1.1.1.tgz", - "integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==", - "peer": true + "integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==" }, "@types/graceful-fs": { "version": "4.1.6", @@ -17843,9 +17794,9 @@ "dev": true }, "caniuse-lite": { - "version": "1.0.30001524", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001524.tgz", - "integrity": "sha512-Jj917pJtYg9HSJBF95HVX3Cdr89JUyLT4IZ8SvM5aDRni95swKgYi3TgYLH5hnGfPE/U1dg6IfZ50UsIlLkwSA==", + "version": "1.0.30001534", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001534.tgz", + "integrity": "sha512-vlPVrhsCS7XaSh2VvWluIQEzVhefrUQcEsQWSS5A5V+dM07uv1qHeQzAOTGIMy9i3e9bH15+muvI/UHojVgS/Q==", "dev": true }, "canvg": { @@ -18052,7 +18003,6 @@ "version": "4.2.3", "resolved": "https://registry.npmjs.org/color/-/color-4.2.3.tgz", "integrity": "sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==", - "peer": true, "requires": { "color-convert": "^2.0.1", "color-string": "^1.9.0" @@ -18075,7 +18025,6 @@ "version": "1.9.1", "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz", "integrity": "sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==", - "peer": true, "requires": { "color-name": "^1.0.0", "simple-swizzle": "^0.2.2" @@ -18105,8 +18054,7 @@ "composed-offset-position": { "version": "0.0.4", "resolved": "https://registry.npmjs.org/composed-offset-position/-/composed-offset-position-0.0.4.tgz", - "integrity": "sha512-vMlvu1RuNegVE0YsCDSV/X4X10j56mq7PCIyOKK74FxkXzGLwhOUmdkJLSdOBOMwWycobGUMgft2lp+YgTe8hw==", - "peer": true + "integrity": "sha512-vMlvu1RuNegVE0YsCDSV/X4X10j56mq7PCIyOKK74FxkXzGLwhOUmdkJLSdOBOMwWycobGUMgft2lp+YgTe8hw==" }, "concat-map": { "version": "0.0.1", @@ -18264,8 +18212,7 @@ "dayjs": { "version": "1.11.9", "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.9.tgz", - "integrity": "sha512-QvzAURSbQ0pKdIye2txOzNaHmxtUBXerpY0FJsFXUMKbIZeFm5ht1LS/jFsrncjnmtv8HsG0W2g6c0zUjZWmpA==", - "peer": true + "integrity": "sha512-QvzAURSbQ0pKdIye2txOzNaHmxtUBXerpY0FJsFXUMKbIZeFm5ht1LS/jFsrncjnmtv8HsG0W2g6c0zUjZWmpA==" }, "debug": { "version": "4.3.4", @@ -21917,8 +21864,7 @@ "lodash-es": { "version": "4.17.21", "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz", - "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==", - "peer": true + "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==" }, "lodash.debounce": { "version": "4.0.8", @@ -23599,7 +23545,6 @@ "version": "0.2.2", "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz", "integrity": "sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==", - "peer": true, "requires": { "is-arrayish": "^0.3.1" }, @@ -23607,8 +23552,7 @@ "is-arrayish": { "version": "0.3.2", "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz", - "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==", - "peer": true + "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==" } } }, @@ -23682,8 +23626,7 @@ "sortablejs": { "version": "1.15.0", "resolved": "https://registry.npmjs.org/sortablejs/-/sortablejs-1.15.0.tgz", - "integrity": "sha512-bv9qgVMjUMf89wAvM6AxVvS/4MX3sPeN0+agqShejLU5z5GX4C75ow1O2e5k4L6XItUyAK3gH6AxSbXrOM5e8w==", - "peer": true + "integrity": "sha512-bv9qgVMjUMf89wAvM6AxVvS/4MX3sPeN0+agqShejLU5z5GX4C75ow1O2e5k4L6XItUyAK3gH6AxSbXrOM5e8w==" }, "source-map": { "version": "0.6.1", diff --git a/package.json b/package.json index a65415fe6..cc9b39cba 100644 --- a/package.json +++ b/package.json @@ -69,10 +69,17 @@ "typescript": "^4.8.4" }, "dependencies": { + "@esri/arcgis-rest-auth": "^3.4.2", + "@esri/arcgis-rest-feature-layer": "^3.4.2", + "@esri/arcgis-rest-portal": "^3.4.2", + "@esri/arcgis-rest-request": "^3.4.2", + "@esri/arcgis-rest-service-admin": "^3.4.2", + "@esri/calcite-components": "^1.6.0", "@esri/hub-common": "^12.37.1", "@esri/hub-initiatives": "^12.4.1", "@esri/hub-sites": "^12.6.0", "@esri/hub-teams": "^12.4.1", + "@esri/solution-common": "^5.0.7", "@pdf-lib/fontkit": "^1.1.1", "@stencil/core": "^4.0.5", "focus-trap": "7.2.0", @@ -80,14 +87,6 @@ "minimist": "^1.2.6", "pdf-lib": "^1.17.1" }, - "peerDependencies": { - "@esri/arcgis-rest-auth": "^3.4.2", - "@esri/arcgis-rest-feature-layer": "^3.4.2", - "@esri/arcgis-rest-portal": "^3.4.2", - "@esri/arcgis-rest-request": "^3.4.2", - "@esri/arcgis-rest-service-admin": "^3.4.2", - "@esri/calcite-components": "^1.6.0" - }, "repository": { "type": "git", "url": "git+https://github.com/Esri/solutions-components.git" From e808ddfd2dd8df1c0ba9c7edf58180dbb53e3fad Mon Sep 17 00:00:00 2001 From: Mike Tschudi Date: Wed, 13 Sep 2023 17:22:03 -0700 Subject: [PATCH 211/406] First cut related records handling --- src/components.d.ts | 6 +- src/components/layer-table/layer-table.tsx | 1 + src/components/pdf-download/pdf-download.tsx | 7 + src/components/pdf-download/readme.md | 4 +- .../public-notification.tsx | 6 +- src/utils/downloadUtils.ts | 287 ++++++++++++------ src/utils/test/downloadUtils.spec.tsx | 2 + 7 files changed, 221 insertions(+), 92 deletions(-) diff --git a/src/components.d.ts b/src/components.d.ts index fea3c8aef..dce59ef74 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -468,21 +468,23 @@ export namespace Components { "disabled": boolean; /** * Downloads csv of mailing labels for the provided list of ids + * @param webmap Webmap containing layer * @param exportInfos Information about items to be exported * @param removeDuplicates When true a single label is generated when multiple featues have a shared address value * @param addColumnTitle Indicates if column headings should be included in output * @returns Promise resolving when function is done */ - "downloadCSV": (exportInfos: IExportInfos, removeDuplicates: boolean, addColumnTitle?: boolean) => Promise; + "downloadCSV": (webmap: __esri.Map, exportInfos: IExportInfos, removeDuplicates: boolean, addColumnTitle?: boolean) => Promise; /** * Downloads pdf of mailing labels for the provided list of ids + * @param webmap Webmap containing layer * @param exportInfos Information about items to be exported * @param removeDuplicates When true a single label is generated when multiple featues have a shared address value * @param title Title for each page * @param initialImageDataUrl Data URL of image for first page * @returns Promise resolving when function is done */ - "downloadPDF": (exportInfos: IExportInfos, removeDuplicates?: boolean, title?: string, initialImageDataUrl?: string) => Promise; + "downloadPDF": (webmap: __esri.Map, exportInfos: IExportInfos, removeDuplicates?: boolean, title?: string, initialImageDataUrl?: string) => Promise; } interface PublicNotification { /** diff --git a/src/components/layer-table/layer-table.tsx b/src/components/layer-table/layer-table.tsx index 5b4dde49c..ff87cdd6c 100644 --- a/src/components/layer-table/layer-table.tsx +++ b/src/components/layer-table/layer-table.tsx @@ -754,6 +754,7 @@ export class LayerTable { layer: this._layer } void downloadUtils.downloadCSV( + null,//??? exportInfos, false, // formatUsingLayerPopup false, // removeDuplicates diff --git a/src/components/pdf-download/pdf-download.tsx b/src/components/pdf-download/pdf-download.tsx index 11323f64c..db8d68a4f 100644 --- a/src/components/pdf-download/pdf-download.tsx +++ b/src/components/pdf-download/pdf-download.tsx @@ -95,6 +95,7 @@ export class PdfDownload { /** * Downloads csv of mailing labels for the provided list of ids * + * @param webmap Webmap containing layer * @param exportInfos Information about items to be exported * @param removeDuplicates When true a single label is generated when multiple featues have a shared address value * @param addColumnTitle Indicates if column headings should be included in output @@ -102,11 +103,13 @@ export class PdfDownload { */ @Method() async downloadCSV( + webmap: __esri.Map, exportInfos: IExportInfos, removeDuplicates: boolean, addColumnTitle = true ): Promise { return downloadUtils.downloadCSV( + webmap, exportInfos, true, // formatUsingLayerPopup removeDuplicates, @@ -117,6 +120,7 @@ export class PdfDownload { /** * Downloads pdf of mailing labels for the provided list of ids * + * @param webmap Webmap containing layer * @param exportInfos Information about items to be exported * @param removeDuplicates When true a single label is generated when multiple featues have a shared address value * @param title Title for each page @@ -125,12 +129,15 @@ export class PdfDownload { */ @Method() async downloadPDF( + webmap: __esri.Map, exportInfos: IExportInfos, removeDuplicates = false, title = "", initialImageDataUrl = "" ): Promise { + console.log("pdf-download downloadPDF");//??? return downloadUtils.downloadPDF( + webmap, exportInfos, this._labelInfoElement.selectedOption?.value as downloadUtils.ILabel, removeDuplicates, diff --git a/src/components/pdf-download/readme.md b/src/components/pdf-download/readme.md index 001083c8e..6e9c1a49d 100644 --- a/src/components/pdf-download/readme.md +++ b/src/components/pdf-download/readme.md @@ -15,7 +15,7 @@ ## Methods -### `downloadCSV(exportInfos: IExportInfos, removeDuplicates: boolean, addColumnTitle?: boolean) => Promise` +### `downloadCSV(webmap: __esri.Map, exportInfos: IExportInfos, removeDuplicates: boolean, addColumnTitle?: boolean) => Promise` Downloads csv of mailing labels for the provided list of ids @@ -25,7 +25,7 @@ Type: `Promise` Promise resolving when function is done -### `downloadPDF(exportInfos: IExportInfos, removeDuplicates?: boolean, title?: string, initialImageDataUrl?: string) => Promise` +### `downloadPDF(webmap: __esri.Map, exportInfos: IExportInfos, removeDuplicates?: boolean, title?: string, initialImageDataUrl?: string) => Promise` Downloads pdf of mailing labels for the provided list of ids diff --git a/src/components/public-notification/public-notification.tsx b/src/components/public-notification/public-notification.tsx index 30855a79d..c6b4833c9 100644 --- a/src/components/public-notification/public-notification.tsx +++ b/src/components/public-notification/public-notification.tsx @@ -801,7 +801,7 @@ export class PublicNotification { */ protected async _getNumDuplicates(): Promise { const exportInfos: IExportInfos = this._getExportInfos(); - const labels = await consolidateLabels(exportInfos); + const labels = await consolidateLabels(this.mapView.map, exportInfos);//??? const duplicatesRemoved = removeDuplicateLabels(labels); return labels.length - duplicatesRemoved.length; } @@ -1293,6 +1293,7 @@ export class PublicNotification { */ protected async _export(): Promise { const exportInfos: IExportInfos = this._getSelectionIdsAndViews(this._selectionSets, true); + console.log("public-notification.tsx export");//??? if (this._exportType === EExportType.PDF) { // Generate a map screenshot @@ -1304,7 +1305,9 @@ export class PublicNotification { this._fetchingData = true; // Create the labels for each selection set + console.log("public-notification downloadPDF");//??? await this._downloadTools.downloadPDF( + this.mapView.map, exportInfos, this._removeDuplicates.checked, this._addTitle ? this._titleElement.value : "", @@ -1316,6 +1319,7 @@ export class PublicNotification { if (this._exportType === EExportType.CSV) { this._fetchingData = true; await this._downloadTools.downloadCSV( + this.mapView.map, exportInfos, this._removeDuplicates.checked ); diff --git a/src/utils/downloadUtils.ts b/src/utils/downloadUtils.ts index 02d1615c4..bbb1ae159 100644 --- a/src/utils/downloadUtils.ts +++ b/src/utils/downloadUtils.ts @@ -21,6 +21,7 @@ import { ILabel, exportPDF } from "./pdfUtils"; import { loadModules } from "./loadModules"; import { queryFeaturesByID } from "./queryUtils"; import { IExportInfo, IExportInfos } from "../utils/interfaces"; +//import * as common from "@esri/solution-common"; export { ILabel } from "./pdfUtils"; @@ -45,6 +46,13 @@ export interface ILabelFormat { format: string | __esri.ArcadeExecutor | undefined; } +export interface ILabelFormatProps { + layer: __esri.FeatureLayer; + attributeFormats: IAttributeFormats; + relationshipId: number | undefined; + labelFormat: ILabelFormat; +} + export interface ILayerRelationshipQuery { layer: __esri.FeatureLayer; relatedQuery: IRelatedFeaturesQuery; @@ -66,6 +74,34 @@ interface IRelatedFeaturesQuery { const lineSeparatorChar = "|"; +import { + IFeature, + IQueryRelatedOptions, + IQueryRelatedResponse, + IRelatedRecordGroup, + queryRelated +} from "@esri/arcgis-rest-feature-layer"; +/** + * Get the related records for a feature service. + * + * @param url Feature service's URL, e.g., layer.url + * @param relationshipId Id of relationship + * @param objectIds Objects in the feature service whose related records are sought + */ +export function getFeatureServiceRelatedRecords( + url: string, + relationshipId?: number, + objectIds?: number[] +): Promise { + const options: IQueryRelatedOptions = { + url: url + `/${relationshipId}`, + relationshipId, + objectIds + } + + return queryRelated(options); +} + //#endregion // ------------------------------------------------------------------------------------------------------------------ // //#region Public functions @@ -73,6 +109,7 @@ const lineSeparatorChar = "|"; /** * Create and consolidate labels from all layers * + * @param webmap Webmap containing layer * @param exportInfos Key details about what to export (ids, layer, and selectionSetNames) * @param formatUsingLayerPopup When true, the layer's popup is used to choose attributes for each column; when false, * all attributes are exported @@ -80,6 +117,7 @@ const lineSeparatorChar = "|"; * @returns selectionSetNames that will be used for export filenames */ export async function consolidateLabels( + webmap: __esri.Map, exportInfos: IExportInfos, formatUsingLayerPopup = true, includeHeaderNames = false, @@ -89,7 +127,9 @@ export async function consolidateLabels( Object.keys(exportInfos).forEach(k => { const labelInfo: IExportInfo = exportInfos[k]; - labelRequests.push(_prepareLabels(labelInfo.layerView?.layer || labelInfo.layer, labelInfo.ids, formatUsingLayerPopup, includeHeaderNames)); + labelRequests.push( + _prepareLabels(webmap, labelInfo.layerView?.layer || labelInfo.layer, labelInfo.ids, formatUsingLayerPopup, includeHeaderNames) + ); if (isCSVExport) { // add the layer id as a temp value separator that we can use to split values for CSV export labelRequests.push(Promise.resolve([[k]])); @@ -103,6 +143,7 @@ export async function consolidateLabels( /** * Downloads csv of mailing labels for the provided list of ids * + * @param webmap Webmap containing layer * @param exportInfos Key details about what to export (ids, layer, and selectionSetNames) * @param formatUsingLayerPopup When true, the layer's popup is used to choose attributes for each column; when false, * all attributes are exported @@ -111,12 +152,13 @@ export async function consolidateLabels( * @returns Promise resolving when function is done */ export async function downloadCSV( + webmap: __esri.Map, exportInfos: IExportInfos, formatUsingLayerPopup: boolean, removeDuplicates = false, addColumnTitle = false ): Promise { - let labels = await consolidateLabels(exportInfos, formatUsingLayerPopup, addColumnTitle, true); + let labels = await consolidateLabels(webmap, exportInfos, formatUsingLayerPopup, addColumnTitle, true); labels = removeDuplicates ? removeDuplicateLabels(labels) : labels; const layerIds = Object.keys(exportInfos); @@ -142,6 +184,7 @@ export async function downloadCSV( /** * Downloads csv of mailing labels for the provided list of ids * + * @param webmap Webmap containing layer * @param exportInfos Key details about what to export (ids, layer, and selectionSetNames) * @param labelPageDescription Provides PDF page layout info * @param removeDuplicates When true a single label is generated when multiple featues have a shared address value @@ -150,13 +193,15 @@ export async function downloadCSV( * @returns Promise resolving when function is done */ export async function downloadPDF( + webmap: __esri.Map, exportInfos: IExportInfos, labelPageDescription: ILabel, removeDuplicates = false, title = "", initialImageDataUrl = "" ): Promise { - let labels = await consolidateLabels(exportInfos); + console.log("downloadUtils downloadPDF");//??? + let labels = await consolidateLabels(webmap, exportInfos); const selectionSetNames = _getSelectionSetNames(exportInfos); labels = @@ -337,44 +382,6 @@ export function _createFilename( return title; } -/** - * Creates relationship queries for each relationship flag in a popup. - * @param layer Layer whose popup is to be examined - * @return Hash of relationships by their id, or null if there are no relationship flags in the - * popup; each relationship has the properties layer and relatedQuery for the related layer - * and the query for that layer - */ -export function _createRelationshipQueries( - layer: __esri.FeatureLayer, -): ILayerRelationshipQueryHash { - - const relationships: ILayerRelationshipQueryHash = {}; - const relationshipFieldPattern = /\{relationships\/\d+\//gm; - const relationshipIdPattern = /\d+/; - - // Test if this popup has any relationship references - const matches = layer.popupTemplate.content[0].text.match(relationshipFieldPattern); - if (matches) { - matches.forEach(match => { - // Add a query to a found relationship if we don't already have one - const id = match.match(relationshipIdPattern)[0]; - if (!relationships.hasOwnProperty(id)) { - const relatedQuery: IRelatedFeaturesQuery = { - outFields: ['*'], - relationshipId: id, - returnGeometry: false - }; - relationships[id] = { - layer, - relatedQuery - } as ILayerRelationshipQuery; - } - }); - } - - return relationships; -} - /** * Extracts Arcade expression references from the lines of a label format. * @@ -435,22 +442,26 @@ export function _getFieldNamesFromFieldExpressions( /** * Extracts the label format from the layer. * + * @param webmap Webmap containing layer * @param layer Layer with label format * @param formatUsingLayerPopup When true, the layer's popup is used to choose attributes for each column; when false, * all attributes are exported - * @param attributeFormats Empty object to hold the formats for each attribute in a feature; the object is filled - * with formats by this function * @returns A Promise resolving to the format of a single label with fields coerced to lowercase, e.g., - * for ILabelFormat type "pattern": "{name}|{street}|{city}, {state} {zip}" + * for ILabelFormatProps type "pattern": "{name}|{street}|{city}, {state} {zip}" */ export async function _getLabelFormat( + webmap: __esri.Map, layer: __esri.FeatureLayer, - formatUsingLayerPopup: boolean, - attributeFormats: IAttributeFormats -): Promise { - let labelFormat: ILabelFormat = { - type: "unsupported", - format: undefined + formatUsingLayerPopup: boolean +): Promise { + let labelFormatProps: ILabelFormatProps = { + layer, + attributeFormats: {}, + relationshipId: undefined, + labelFormat: { + type: "unsupported", + format: undefined + } }; if (layer.popupEnabled) { @@ -458,37 +469,105 @@ export async function _getLabelFormat( // Extract any format info that we have fieldInfo => { if (fieldInfo.format) { - attributeFormats[fieldInfo.fieldName.toLowerCase()] = fieldInfo.format; + labelFormatProps.attributeFormats[fieldInfo.fieldName.toLowerCase()] = fieldInfo.format; } } ); + /* + TODO: handle exprn in text label + webmapTablePopups text [ + { + "type": "text", + "text": "

{expression/expr0}   
{OWNERNM1}   
{PSTLADDRESS}   
{PSTLCITY} , {PSTLSTATE}, {PSTLZIP5} 

" + } + ] + index.3878dde2.js:924 webmapTablePopups exr [ + { + "name": "expr0", + "title": "New expression", + "expression": "// Write a script to return a value to show in the pop-up. \n// For example, get the average of 4 fields:\n// Average($feature.SalesQ1, $feature.SalesQ2, $feature.SalesQ3, $feature.SalesQ4)\nvar relatedFeatures = FeatureSetByRelationshipName($feature, \"\", [\"*\"], false)\nreturn First(relatedFeatures)['SITEADDID']\n", + "returnType": "string" + } + ] + */ + // What is the nature of the label content? + // Fields list - if (formatUsingLayerPopup && layer.popupTemplate?.content[0]?.type === "fields") { - labelFormat = _convertPopupFieldsToLabelSpec(layer.popupTemplate.fieldInfos); - - // If popup is configured with "no attribute information", then no fields will visible - if ((labelFormat.format as string).length === 0) { - // Can we use the popup title? - labelFormat = layer.popupTemplate.title && typeof layer.popupTemplate.title === "string" ? - { type: "pattern", format: layer.popupTemplate.title } as ILabelFormat - : - // Otherwise revert to using attributes - _convertPopupFieldsToLabelSpec(layer.popupTemplate.fieldInfos, true); - } + if (formatUsingLayerPopup) { + const labelFormatType = layer.popupTemplate?.content[0]?.type; + console.log("_getLabelFormat labelFormatType", layer.id, labelFormatType);//??? + + if (labelFormatType === "relationship") { + if (webmap) { + const relationshipId = layer.popupTemplate.content[0].relationshipId; + const webmapLayers0 = webmap.layers.toArray().concat(webmap.tables.toArray()) as __esri.FeatureLayer[];//??? + console.log(layer.id, webmapLayers0.map(layer=>layer.id));//??? + console.log("relationshipId", relationshipId);//??? + webmapLayers0.forEach(layer=>{console.log(layer.id, layer.relationships ? layer.relationships.map(rel=>rel.id) : "")});//??? + + const webmapLayers = webmap.layers.toArray().concat(webmap.tables.toArray()) + .filter((entry: __esri.FeatureLayer) => + entry.type === "feature" + && entry.id !== layer.id + && entry.relationships + && entry.relationships.some(relationship => relationship.id === relationshipId)); + + // Get the "feature" layer or table that contains the desired relationship id + /*const relatedLayerCollection = webmap.layers.concat(webmap.tables) + .filter((entry: __esri.FeatureLayer) => + entry.type === "feature" + && entry.id !== layer.id + && entry.relationships.some(relationship => relationship.id === labelFormat.relationshipId)); + *///??? + + labelFormatProps = await _getLabelFormat(webmap, webmapLayers[0] as __esri.FeatureLayer, formatUsingLayerPopup); + labelFormatProps.relationshipId = relationshipId; + + /* + const webmapPopupFeature = webmap.layers.concat(webmap.tables) + // Get the "feature" layer or table that contains the desired relationship id + .filter((entry: __esri.FeatureLayer) => + entry.type === "feature" && entry.relationships.some(relationship => relationship.id === relationshipId)) + // Extract the popup template + .map((entry: __esri.FeatureLayer) => entry.popupTemplate); + console.log("webmapPopupFeature text", JSON.stringify(webmapPopupFeature.at(0).content, null, 2));//??? + console.log("webmapPopupFeature expr", JSON.stringify(webmapPopupFeature.at(0).expressionInfos, null, 2));//??? + //labelFormat = _convertPopupTextToLabelSpec(webmapPopupFeature.at(0).content[0].text); + */ + } else { console.warn("Path is missing a webmap");//??? + } - // Example text: '

{name} {age} years  

started: {start}

' - } else if (formatUsingLayerPopup && layer.popupTemplate?.content[0]?.type === "text") { - labelFormat = _convertPopupTextToLabelSpec(layer.popupTemplate.content[0].text); + } else if (labelFormatType === "fields") { + labelFormatProps.labelFormat = _convertPopupFieldsToLabelSpec(layer.popupTemplate.fieldInfos); + + // If popup is configured with "no attribute information", then no fields will visible + if ((labelFormatProps.labelFormat.format as string).length === 0) { + // Can we use the popup title? + labelFormatProps.labelFormat = layer.popupTemplate.title && typeof layer.popupTemplate.title === "string" ? + { type: "pattern", format: layer.popupTemplate.title } as ILabelFormat + : + // Otherwise revert to using attributes + _convertPopupFieldsToLabelSpec(layer.popupTemplate.fieldInfos, true); + } - // Example expression: 'var feat = $feature\nvar label = `\n\t${feat["name"]} ${feat["age"]} years
\n\tstarted: ${feat["start"]}\n`\n\nreturn { \n type : \'text\', \n text : label\n}', - } else if (formatUsingLayerPopup && layer.popupTemplate?.content[0]?.type === "expression") { - labelFormat = await _convertPopupArcadeToLabelSpec(layer.popupTemplate.content[0].expressionInfo); + // Example text: '

{name} {age} years  

started: {start}

' + } else if (labelFormatType === "text") { + labelFormatProps.labelFormat = _convertPopupTextToLabelSpec(layer.popupTemplate.content[0].text); + + // Example expression: 'var feat = $feature\nvar label = `\n\t${feat["name"]} ${feat["age"]} years
\n\tstarted: ${feat["start"]}\n`\n\nreturn { \n type : \'text\', \n text : label\n}', + } else if (labelFormatType === "expression") { + labelFormatProps.labelFormat = await _convertPopupArcadeToLabelSpec(layer.popupTemplate.content[0].expressionInfo); + + // Fallback to all fields + } else { + labelFormatProps.labelFormat = _convertPopupFieldsToLabelSpec(layer.popupTemplate.fieldInfos); + } } } - return Promise.resolve(labelFormat); + return Promise.resolve(labelFormatProps); } /** @@ -573,6 +652,7 @@ export function _prepareAttributeValue( /** * Creates labels from items. * + * @param webmap Webmap containing layer * @param layer Layer from which to fetch features * @param ids List of ids to download * @param formatUsingLayerPopup When true, the layer's popup is used to choose attributes for each column; when false, @@ -581,19 +661,52 @@ export function _prepareAttributeValue( * @returns Promise resolving when function is done */ export async function _prepareLabels( + webmap: __esri.Map, layer: __esri.FeatureLayer, ids: number[], formatUsingLayerPopup = true, includeHeaderNames = false ): Promise { - // Get the features to export - const featureSet = await queryFeaturesByID(ids, layer, [], false); + // Get the label formatting, if any + const labelFormatProps: ILabelFormatProps = await _getLabelFormat(webmap, layer, formatUsingLayerPopup); + console.log("_getLabelFormat labelFormatProps", JSON.stringify(labelFormatProps,null,2));//??? + + let featureSet: IFeature[] = []; + if (typeof(labelFormatProps.relationshipId) !== "undefined") { + // Get the related items for each id + console.log("queryFeaturesByID related ids:", ids);//??? + const relatedRecResponse = await getFeatureServiceRelatedRecords(layer.url, labelFormatProps.relationshipId, ids); + + relatedRecResponse.relatedRecordGroups.forEach( + (relatedRecGroup: IRelatedRecordGroup) => { + //???console.log("relatedRecGroup", JSON.stringify(relatedRecGroup,null,2));//??? + featureSet = featureSet.concat(relatedRecGroup.relatedRecords); + } + ); + + } else { + // Get the features to export + console.log("queryFeaturesByID selected ids:", ids);//??? + const graphics = await queryFeaturesByID(ids, layer, [], false); + featureSet = graphics.map( + (graphic: __esri.Graphic) => { + return { + attributes: graphic.attributes + } as IFeature; + } + ) + } + + // Because the label may actually come from a related layer, we'll use the layer that comes back from _getLabelFormat. + // That function returns the supplied layer in all cases except for a "relationship" type of popup. + const featureLayer = labelFormatProps.layer; + console.log("featureSet", JSON.stringify(featureSet, null, 2));//??? // Get field data types. Do we have any domain-based fields? const attributeOrigNames: IAttributeOrigNames = {}; const attributeTypes: IAttributeTypes = {}; const attributeDomains: IAttributeDomains = {}; - layer.fields.forEach( + featureLayer.fields.forEach( field => { const lowercaseFieldname = field.name.toLowerCase(); attributeOrigNames[lowercaseFieldname] = field.name; @@ -601,23 +714,23 @@ export async function _prepareLabels( attributeTypes[lowercaseFieldname] = field.type; } ); - const attributeFormats: IAttributeFormats = {}; - - // Get the label formatting, if any - const labelFormat: ILabelFormat = await _getLabelFormat(layer, formatUsingLayerPopup, attributeFormats); // Apply the label format - const labels = labelFormat.type === "unsupported" ? - // Export all attributes - await _prepareLabelsFromAll(featureSet, attributeTypes, attributeDomains, includeHeaderNames) - : labelFormat.type == "pattern" ? + const labels + = labelFormatProps.labelFormat.type === "pattern" ? // Export attributes in format await _prepareLabelsFromPattern(featureSet, attributeOrigNames, attributeTypes, attributeDomains, - attributeFormats, labelFormat.format as string, includeHeaderNames) - : + labelFormatProps.attributeFormats, labelFormatProps.labelFormat.format as string, includeHeaderNames) + + : labelFormatProps.labelFormat.type === "executor" ? // Export attributes in expression - await _prepareLabelsUsingExecutor(featureSet, labelFormat.format as __esri.ArcadeExecutor); + await _prepareLabelsUsingExecutor(featureSet, labelFormatProps.labelFormat.format as __esri.ArcadeExecutor) + + : + // Export all attributes + await _prepareLabelsFromAll(featureSet, attributeTypes, attributeDomains, includeHeaderNames); + console.log("labels", JSON.stringify(labels, null, 2));//??? return Promise.resolve(labels); } @@ -631,7 +744,7 @@ export async function _prepareLabels( * @returns Promise resolving with list of labels, each of which is a list of label lines */ export async function _prepareLabelsFromAll( - featureSet: __esri.Graphic[], + featureSet: IFeature[], attributeTypes: IAttributeTypes, attributeDomains: IAttributeDomains, includeHeaderNames = false @@ -678,7 +791,7 @@ export async function _prepareLabelsFromAll( * @returns Promise resolving with list of labels, each of which is a list of label lines */ export async function _prepareLabelsFromPattern( - featureSet: __esri.Graphic[], + featureSet: IFeature[], attributeOrigNames: IAttributeOrigNames, attributeTypes: IAttributeTypes, attributeDomains: IAttributeDomains, @@ -735,7 +848,7 @@ export async function _prepareLabelsFromPattern( * @returns Promise resolving with list of labels, each of which is a list of label lines */ export async function _prepareLabelsUsingExecutor( - featureSet: __esri.Graphic[], + featureSet: IFeature[], labelFormat: __esri.ArcadeExecutor ): Promise { // Convert feature attributes into an array of labels diff --git a/src/utils/test/downloadUtils.spec.tsx b/src/utils/test/downloadUtils.spec.tsx index 1fbcc7279..c6ae38d7f 100644 --- a/src/utils/test/downloadUtils.spec.tsx +++ b/src/utils/test/downloadUtils.spec.tsx @@ -555,6 +555,7 @@ describe("downloadUtils", () => { }); + /* describe('_getLabelFormat', () => { it('should prepare labels from visible popup fields', async () => { @@ -841,6 +842,7 @@ describe("downloadUtils", () => { }); }); + */ describe('_getSelectionSetNames', () => { From 1f51f63bb31d6b65e6bc3a6fd1c27d2e0a4e8d91 Mon Sep 17 00:00:00 2001 From: Mike Tschudi Date: Thu, 14 Sep 2023 06:40:36 -0700 Subject: [PATCH 212/406] Add Arcade for expressions --- src/utils/downloadUtils.ts | 133 +++++++++++++++++++++++++++++++------ 1 file changed, 112 insertions(+), 21 deletions(-) diff --git a/src/utils/downloadUtils.ts b/src/utils/downloadUtils.ts index bbb1ae159..b4150d1a2 100644 --- a/src/utils/downloadUtils.ts +++ b/src/utils/downloadUtils.ts @@ -25,6 +25,14 @@ import { IExportInfo, IExportInfos } from "../utils/interfaces"; export { ILabel } from "./pdfUtils"; +interface IArcadeExecutors { + [expressionName: string]: __esri.ArcadeExecutor; +} + +interface IArcadeExecutorPromises { + [expressionName: string]: Promise<__esri.ArcadeExecutor>; +} + export interface IAttributeOrigNames { [lowercaseName: string]: string; } @@ -367,6 +375,86 @@ export async function _convertPopupArcadeToLabelSpec( } as ILabelFormat); } +/** + * Extracts Arcade expressions from the lines of a label format and creates an Arcade executor for each + * referenced expression name. + * + * @param labelFormat Label to examine + * @param layer Layer from which to fetch features + * @return Promise resolving to a set of executors keyed using the expression name + */ +async function _createArcadeExecutors( + labelFormat: string, + layer: __esri.FeatureLayer +): Promise { + const arcadeExecutors: IArcadeExecutors = {}; + + // Are any Arcade expressions in the layer? + if (!Array.isArray(layer.popupTemplate.expressionInfos) || layer.popupTemplate.expressionInfos.length === 0) { + return Promise.resolve(arcadeExecutors); + } + + // Are there any Arcade expressions in the label format? + const arcadeExpressionRegExp = /\{expression\/\w+\}/g; + const arcadeExpressionsMatches = labelFormat.match(arcadeExpressionRegExp); + if (!arcadeExpressionsMatches) { + return Promise.resolve(arcadeExecutors); + } + + // Generate an Arcade executor for each match + const [arcade] = await loadModules(["esri/arcade"]); + const labelingProfile: __esri.Profile = { + variables: [ + { + name: "$feature", + type: "feature" + }, + { + name: "$layer", + type: "featureSet" + }, + { + name: "$datastore", + type: "featureSetCollection" + }, + { + name: "$map", + type: "featureSetCollection" + } + ] + }; + + const createArcadeExecutorPromises: IArcadeExecutorPromises = {}; + arcadeExpressionsMatches.forEach( + (match: string) => { + const expressionName = match.substring(match.indexOf("/") + 1, match.length - 1); + + (layer.popupTemplate.expressionInfos || []).forEach( + expressionInfo => { + if (expressionInfo.name === expressionName) { + createArcadeExecutorPromises[expressionName] = + arcade.createArcadeExecutor(expressionInfo.expression, labelingProfile); + } + } + ); + } + ); + + const promises = Object.values(createArcadeExecutorPromises); + return Promise.all(promises) + .then( + executors => { + const expressionNames = Object.keys(createArcadeExecutorPromises); + + for (let i = 0; i < expressionNames.length; ++i) { + arcadeExecutors[expressionNames[i]] = executors[i].valueOf() as __esri.ArcadeExecutor; + } + + return arcadeExecutors; + } + ); +} + /** * Creates a title from a list of selection set names. * @@ -514,28 +602,8 @@ export async function _getLabelFormat( && entry.relationships && entry.relationships.some(relationship => relationship.id === relationshipId)); - // Get the "feature" layer or table that contains the desired relationship id - /*const relatedLayerCollection = webmap.layers.concat(webmap.tables) - .filter((entry: __esri.FeatureLayer) => - entry.type === "feature" - && entry.id !== layer.id - && entry.relationships.some(relationship => relationship.id === labelFormat.relationshipId)); - *///??? - labelFormatProps = await _getLabelFormat(webmap, webmapLayers[0] as __esri.FeatureLayer, formatUsingLayerPopup); labelFormatProps.relationshipId = relationshipId; - - /* - const webmapPopupFeature = webmap.layers.concat(webmap.tables) - // Get the "feature" layer or table that contains the desired relationship id - .filter((entry: __esri.FeatureLayer) => - entry.type === "feature" && entry.relationships.some(relationship => relationship.id === relationshipId)) - // Extract the popup template - .map((entry: __esri.FeatureLayer) => entry.popupTemplate); - console.log("webmapPopupFeature text", JSON.stringify(webmapPopupFeature.at(0).content, null, 2));//??? - console.log("webmapPopupFeature expr", JSON.stringify(webmapPopupFeature.at(0).expressionInfos, null, 2));//??? - //labelFormat = _convertPopupTextToLabelSpec(webmapPopupFeature.at(0).content[0].text); - */ } else { console.warn("Path is missing a webmap");//??? } @@ -719,7 +787,7 @@ export async function _prepareLabels( const labels = labelFormatProps.labelFormat.type === "pattern" ? // Export attributes in format - await _prepareLabelsFromPattern(featureSet, attributeOrigNames, attributeTypes, attributeDomains, + await _prepareLabelsFromPattern(layer, featureSet, attributeOrigNames, attributeTypes, attributeDomains, labelFormatProps.attributeFormats, labelFormatProps.labelFormat.format as string, includeHeaderNames) : labelFormatProps.labelFormat.type === "executor" ? @@ -791,6 +859,7 @@ export async function _prepareLabelsFromAll( * @returns Promise resolving with list of labels, each of which is a list of label lines */ export async function _prepareLabelsFromPattern( + layer: __esri.FeatureLayer, featureSet: IFeature[], attributeOrigNames: IAttributeOrigNames, attributeTypes: IAttributeTypes, @@ -805,11 +874,33 @@ export async function _prepareLabelsFromPattern( const attributeExpressionMatches = _getFieldExpressionsFromLabel(labelFormat); const attributeNames = _getFieldNamesFromFieldExpressions(attributeExpressionMatches); + // Do we need any Arcade executors? + const arcadeExecutors = await _createArcadeExecutors(labelFormat, layer); + const arcadeExpressionRegExp = /\{expression\/\w+\}/g; + //???const attributeRegExp = /\{\w+\}/g; + + // Find the label fields that we need to replace with values + const arcadeExpressionMatches = labelFormat.match(arcadeExpressionRegExp) ?? []; + //???const attributeMatches = labelFormat.match(attributeRegExp) ?? []; + console.log("arcadeExpressionMatches", arcadeExpressionMatches);//??? + + console.log("_prepareLabelsFromPattern format", labelFormat);//??? // Convert feature attributes into an array of labels const labels = await Promise.all(featureSet.map( async feature => { let labelPrep = labelFormat; + // Replace Arcade expressions in this feature + console.log("arcade label before", labelPrep);//??? + for (let i = 0; i < arcadeExpressionMatches.length; i++) { + const match: string = arcadeExpressionMatches[i]; + const expressionName = match.substring(match.indexOf("/") + 1, match.length - 1); + const value = await arcadeExecutors[expressionName].executeAsync({"$feature": feature, "$layer": layer}); + console.log("arcade # match, expr, value", i, match, expressionName, value);//??? + labelPrep = labelPrep.replace(match, value); + console.log("arcade label after", labelPrep);//??? + } + // Replace non-Arcade fields in this feature attributeNames.forEach( (attributeName: string, i: number) => { From 8795f48c2b5f2d65b5809d272e557475cdeec70f Mon Sep 17 00:00:00 2001 From: John Hauck Date: Thu, 14 Sep 2023 09:48:30 -0600 Subject: [PATCH 213/406] update delete message --- src/assets/t9n/layer-table/resources.json | 7 +- src/assets/t9n/layer-table/resources_en.json | 7 +- src/components/crowdsource-manager/readme.md | 6 +- src/components/layer-table/layer-table.css | 62 +++++++ src/components/layer-table/layer-table.tsx | 173 +++++++++++-------- src/components/layer-table/readme.md | 17 +- 6 files changed, 182 insertions(+), 90 deletions(-) diff --git a/src/assets/t9n/layer-table/resources.json b/src/assets/t9n/layer-table/resources.json index 0e0c60a0e..2eb2b6ee7 100644 --- a/src/assets/t9n/layer-table/resources.json +++ b/src/assets/t9n/layer-table/resources.json @@ -12,10 +12,11 @@ "fetchingData": "Fetching Data", "refresh": "Refresh", "enableEditing": "Editing must be enabled on the layer.", - "confirm": "Are you sure?", - "deleteRows": "Delete Data", + "confirm": "This feature will be permanently removed.", + "deleteFeature": "Delete feature", "deleteDisabled": "Delete Disabled", "editMultipleDisabled": "Edit Multiple Disabled", "showAll": "Show all", - "recordsSelected": "{{total}} records, {{selected}} selected" + "recordsSelected": "{{total}} records, {{selected}} selected", + "keepFeature": "Keep feature" } diff --git a/src/assets/t9n/layer-table/resources_en.json b/src/assets/t9n/layer-table/resources_en.json index 0e0c60a0e..2eb2b6ee7 100644 --- a/src/assets/t9n/layer-table/resources_en.json +++ b/src/assets/t9n/layer-table/resources_en.json @@ -12,10 +12,11 @@ "fetchingData": "Fetching Data", "refresh": "Refresh", "enableEditing": "Editing must be enabled on the layer.", - "confirm": "Are you sure?", - "deleteRows": "Delete Data", + "confirm": "This feature will be permanently removed.", + "deleteFeature": "Delete feature", "deleteDisabled": "Delete Disabled", "editMultipleDisabled": "Edit Multiple Disabled", "showAll": "Show all", - "recordsSelected": "{{total}} records, {{selected}} selected" + "recordsSelected": "{{total}} records, {{selected}} selected", + "keepFeature": "Keep feature" } diff --git a/src/components/crowdsource-manager/readme.md b/src/components/crowdsource-manager/readme.md index cec5066de..0ada2dd73 100644 --- a/src/components/crowdsource-manager/readme.md +++ b/src/components/crowdsource-manager/readme.md @@ -98,8 +98,6 @@ graph TD; layer-table --> calcite-shell layer-table --> calcite-panel layer-table --> calcite-loader - layer-table --> calcite-alert - layer-table --> calcite-link layer-table --> calcite-action-bar layer-table --> map-layer-picker layer-table --> calcite-action @@ -108,7 +106,9 @@ graph TD; layer-table --> calcite-dropdown layer-table --> calcite-dropdown-group layer-table --> calcite-dropdown-item - calcite-link --> calcite-icon + layer-table --> calcite-alert + layer-table --> calcite-scrim + layer-table --> calcite-icon map-layer-picker --> calcite-select map-layer-picker --> calcite-combobox map-layer-picker --> calcite-dropdown diff --git a/src/components/layer-table/layer-table.css b/src/components/layer-table/layer-table.css index 4c18d97f9..0cd39dc71 100644 --- a/src/components/layer-table/layer-table.css +++ b/src/components/layer-table/layer-table.css @@ -65,3 +65,65 @@ html[dir="rtl"] .bottom-left { .text-color { color: var(--calcite-ui-text-1); } + +.esri-editor__prompt__actions { + display: flex; + flex-direction: row; +} + +.esri-editor__prompt__divider { + color: inherit; + margin: 0 0 12px 0; + border-bottom: 1px solid rgba(110,110,110,.3); + border-color: rgba(110,110,110,.15); + flex: 0 0 auto; +} + +.esri-editor__prompt__message { + color: inherit; + font-weight: 400; + word-break: break-word; + flex: 1 1 auto; + overflow: auto; + overflow-x: hidden; + padding: 0 0 12px 0; +} + +.esri-widget__heading { + color: #323232; + font-weight: 600; + margin: 0 0 0.5rem 0; +} + +.esri-editor__prompt__header__heading { + color: #323232; + margin: 0 3px; +} + +.esri-editor__prompt__header { + color: var(--calcite-ui-danger); + display: flex; + margin-bottom: 12px; + flex: 0 0 auto; + align-items: center; + gap: 7px; +} + +.esri-editor__prompt--danger { + background-color: var(--calcite-ui-background); + border-top: solid 3px var(--calcite-ui-danger); + color: #323232; + box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3); + padding: 12px 15px; + position: absolute; + left: 0; + right: 0; + bottom: 0; + max-height: 85%; + display: flex; + flex-flow: column nowrap; + animation: esri-fade-in-up 250ms ease-in-out; + position: relative !important; + width: 100% !important; + background-color: var(--calcite-ui-foreground-1) !important; +} diff --git a/src/components/layer-table/layer-table.tsx b/src/components/layer-table/layer-table.tsx index 5b4dde49c..1a0ebca74 100644 --- a/src/components/layer-table/layer-table.tsx +++ b/src/components/layer-table/layer-table.tsx @@ -116,39 +116,9 @@ export class LayerTable { protected FeatureTable: typeof import("esri/widgets/FeatureTable"); /** - * any: The function that the alerts action should execute + * boolean: When true the user will be asked to confirm the delete operation */ - protected _alertActionFunction: any; - - /** - * string: The alerts action text...will be displayed when _alertShowAction is True - */ - protected _alertActionText: string; - - /** - * string: main icon of the alert - */ - protected _alertIcon: string; - - /** - * "warning" | "danger": the kind of alert to display - */ - protected _alertKind: "warning" | "danger"; - - /** - * boolean: When true a action link will be deisplayed - */ - protected _alertShowAction: boolean; - - /** - * string: main message of the alert - */ - protected _alertMessage: string; - - /** - * string: the alerts title - */ - protected _alertTitle: string; + protected _confirmDelete: boolean; /** * number[]: A list of all IDs for the current layer @@ -313,7 +283,6 @@ export class LayerTable { } const tableNodeClass = this._fetchingData ? "display-none" : ""; const loadingClass = this._fetchingData ? "" : "display-none"; - const alertActionClass = this._alertShowAction ? "" : "display-none"; const total = this._allIds.length.toString(); const selected = this._selectedIndexes.length.toString(); return ( @@ -340,29 +309,9 @@ export class LayerTable { }
- this._alertClosed()} - open={this._alertOpen} - placement="top" - > -
- {this._alertTitle} -
-
- {this._alertMessage} -
- - {this._alertActionText} - -
+ {this._getEditDisabledWarning()} + {this._deleteMessage()} ); } @@ -638,6 +587,100 @@ export class LayerTable { } } + /** + * Show warning when editing is disabled + * + * @returns node with warning message + */ + protected _getEditDisabledWarning(): VNode { + return ( + this._alertClosed()} + open={this._alertOpen && !this._confirmDelete} + placement="top" + > +
+ {this._translations.deleteDisabled} +
+
+ {this._translations.enableEditing} +
+
+ ); + } + + /** + * Show delete confirmation message + * + * @returns node to confirm or deny the delete operation + */ + protected _deleteMessage(): VNode { + const showClass = this._confirmDelete ? "" : "display-none"; + return ( + +
+
+
+
+ {this._translations.confirm} +
+
+
+ this._alertClosed()} + scale="m" + type="button" + width="half" + > + {this._translations.keepFeature} + + this._deleteFeatures()} + scale="m" + type="button" + width="half" + > + {this._translations.delete} + +
+
+ + ); + } + + /** + * Delete the currently selected features + * + * @returns void + */ + protected _deleteFeatures(): void { + void this._layer.applyEdits({ + deleteFeatures: this._table.highlightIds.toArray() + }); + this._alertClosed(); + } + /** * Handle map click events to keep table and map click selection in sync * @@ -675,6 +718,7 @@ export class LayerTable { */ protected _alertClosed(): void { this._alertOpen = false; + this._confirmDelete = false; } /** @@ -786,24 +830,7 @@ export class LayerTable { */ protected _delete(): void { if (this._editEnabled) { - this._alertIcon = "trash"; - this._alertTitle = this._translations.deleteRows; - this._alertActionText = this._translations.delete; - this._alertShowAction = true; - this._alertMessage = this._translations.confirm; - this._alertKind = "danger"; - this._alertActionFunction = () => { - void this._layer.applyEdits({ - deleteFeatures: this._table.highlightIds.toArray() - }); - this._alertOpen = false; - } - } else { - this._alertIcon = "layer-broken"; - this._alertTitle = this._translations.deleteDisabled; - this._alertShowAction = false; - this._alertMessage = this._translations.enableEditing; - this._alertKind = "warning"; + this._confirmDelete = true; } this._alertOpen = true; } diff --git a/src/components/layer-table/readme.md b/src/components/layer-table/readme.md index 593dc94f7..ae30cceea 100644 --- a/src/components/layer-table/readme.md +++ b/src/components/layer-table/readme.md @@ -46,8 +46,6 @@ Promise that resolves when the operation is complete - calcite-shell - calcite-panel - calcite-loader -- calcite-alert -- calcite-link - calcite-action-bar - [map-layer-picker](../map-layer-picker) - calcite-action @@ -56,6 +54,9 @@ Promise that resolves when the operation is complete - calcite-dropdown - calcite-dropdown-group - calcite-dropdown-item +- calcite-alert +- calcite-scrim +- calcite-icon ### Graph ```mermaid @@ -63,8 +64,6 @@ graph TD; layer-table --> calcite-shell layer-table --> calcite-panel layer-table --> calcite-loader - layer-table --> calcite-alert - layer-table --> calcite-link layer-table --> calcite-action-bar layer-table --> map-layer-picker layer-table --> calcite-action @@ -73,6 +72,9 @@ graph TD; layer-table --> calcite-dropdown layer-table --> calcite-dropdown-group layer-table --> calcite-dropdown-item + layer-table --> calcite-alert + layer-table --> calcite-scrim + layer-table --> calcite-icon calcite-panel --> calcite-action calcite-panel --> calcite-action-menu calcite-panel --> calcite-scrim @@ -83,10 +85,6 @@ graph TD; calcite-popover --> calcite-action calcite-popover --> calcite-icon calcite-scrim --> calcite-loader - calcite-alert --> calcite-icon - calcite-alert --> calcite-chip - calcite-chip --> calcite-icon - calcite-link --> calcite-icon calcite-action-bar --> calcite-action-group calcite-action-group --> calcite-action-menu calcite-action-group --> calcite-action @@ -102,10 +100,13 @@ graph TD; calcite-select --> calcite-icon calcite-combobox --> calcite-chip calcite-combobox --> calcite-icon + calcite-chip --> calcite-icon calcite-button --> calcite-loader calcite-button --> calcite-icon calcite-combobox-item --> calcite-icon calcite-dropdown-item --> calcite-icon + calcite-alert --> calcite-icon + calcite-alert --> calcite-chip crowdsource-manager --> layer-table style layer-table fill:#f9f,stroke:#333,stroke-width:4px ``` From 42ab77c4c6d62ec307a48665ad1245e7a00e7656 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Thu, 14 Sep 2023 11:33:51 -0600 Subject: [PATCH 214/406] fix delete feature --- src/components/layer-table/layer-table.tsx | 21 +++++++++++++++++---- 1 file changed, 17 insertions(+), 4 deletions(-) diff --git a/src/components/layer-table/layer-table.tsx b/src/components/layer-table/layer-table.tsx index 1a0ebca74..9dab64da7 100644 --- a/src/components/layer-table/layer-table.tsx +++ b/src/components/layer-table/layer-table.tsx @@ -78,6 +78,11 @@ export class LayerTable { */ @State() _fetchingData = false; + /** + * boolean: When true a loading indicator will be shown in the delete button + */ + @State() _isDeleting = false; + /** * esri/views/layers/FeatureLayer: https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html */ @@ -656,7 +661,8 @@ export class LayerTable { alignment="center" appearance="solid" kind="danger" - onClick={() => this._deleteFeatures()} + loading={this._isDeleting} + onClick={() => void this._deleteFeatures()} scale="m" type="button" width="half" @@ -674,10 +680,17 @@ export class LayerTable { * * @returns void */ - protected _deleteFeatures(): void { - void this._layer.applyEdits({ - deleteFeatures: this._table.highlightIds.toArray() + protected async _deleteFeatures(): Promise { + this._isDeleting = true; + const deleteFeatures = this._table.highlightIds.toArray().map((objectId) => { + return {objectId}; + }) + await this._layer.applyEdits({ + deleteFeatures }); + await this._table.refresh(); + this._allIds = await queryAllIds(this._layer); + this._isDeleting = false; this._alertClosed(); } From 8ef52672fe5f2ba1b9c5ad2b857db14759deb6ed Mon Sep 17 00:00:00 2001 From: John Hauck Date: Thu, 14 Sep 2023 12:16:50 -0600 Subject: [PATCH 215/406] add enableAutoRefresh and enableInlineEdit props --- src/components.d.ts | 32 +++++++++++++++++++ .../crowdsource-manager.tsx | 12 +++++++ src/components/crowdsource-manager/readme.md | 2 ++ src/components/layer-table/layer-table.tsx | 13 +++++++- src/components/layer-table/readme.md | 2 ++ 5 files changed, 60 insertions(+), 1 deletion(-) diff --git a/src/components.d.ts b/src/components.d.ts index fea3c8aef..3f340864e 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -74,6 +74,14 @@ export namespace Components { * boolean: when true the grid will display like the previous manager app with the table across the top */ "classicGrid": boolean; + /** + * boolean: when true the layer table will auto refresh the data + */ + "enableAutoRefresh": boolean; + /** + * boolean: when true edits can be applied directly within the table + */ + "enableInlineEdit": boolean; /** * boolean: when true no map is displayed for the app */ @@ -179,6 +187,14 @@ export namespace Components { "value": any; } interface LayerTable { + /** + * boolean: when true the layer table will auto refresh the data + */ + "enableAutoRefresh": boolean; + /** + * boolean: when true edits can be applied directly within the table + */ + "enableInlineEdit": boolean; /** * Get the selected graphics * @returns Promise that resolves when the operation is complete @@ -1167,6 +1183,14 @@ declare namespace LocalJSX { * boolean: when true the grid will display like the previous manager app with the table across the top */ "classicGrid"?: boolean; + /** + * boolean: when true the layer table will auto refresh the data + */ + "enableAutoRefresh"?: boolean; + /** + * boolean: when true edits can be applied directly within the table + */ + "enableInlineEdit"?: boolean; /** * boolean: when true no map is displayed for the app */ @@ -1259,6 +1283,14 @@ declare namespace LocalJSX { "value"?: any; } interface LayerTable { + /** + * boolean: when true the layer table will auto refresh the data + */ + "enableAutoRefresh"?: boolean; + /** + * boolean: when true edits can be applied directly within the table + */ + "enableInlineEdit"?: boolean; /** * IMapInfo: key configuration details about the current map */ diff --git a/src/components/crowdsource-manager/crowdsource-manager.tsx b/src/components/crowdsource-manager/crowdsource-manager.tsx index da8633492..8aceb4bde 100644 --- a/src/components/crowdsource-manager/crowdsource-manager.tsx +++ b/src/components/crowdsource-manager/crowdsource-manager.tsx @@ -43,6 +43,16 @@ export class CrowdsourceManager { */ @Prop() classicGrid = false; + /** + * boolean: when true the layer table will auto refresh the data + */ + @Prop() enableAutoRefresh = true; + + /** + * boolean: when true edits can be applied directly within the table + */ + @Prop() enableInlineEdit = false; + /** * boolean: when true the table will be sorted by objectid in descending order by default */ @@ -509,6 +519,8 @@ export class CrowdsourceManager {
{ this._table = new this.FeatureTable({ + autoRefreshEnabled: this.enableAutoRefresh, layer: this._layer, view: this.mapView, - //editingEnabled: this._editEnabled, + editingEnabled: this._editEnabled && this.enableInlineEdit, highlightEnabled: true, multiSortEnabled: false, visibleElements: { diff --git a/src/components/layer-table/readme.md b/src/components/layer-table/readme.md index ae30cceea..e11e94a13 100644 --- a/src/components/layer-table/readme.md +++ b/src/components/layer-table/readme.md @@ -9,6 +9,8 @@ | Property | Attribute | Description | Type | Default | | ------------------------- | ----------------------------- | ------------------------------------------------------------------------------------------------------------------ | ---------- | ----------- | +| `enableAutoRefresh` | `enable-auto-refresh` | boolean: when true the layer table will auto refresh the data | `boolean` | `undefined` | +| `enableInlineEdit` | `enable-inline-edit` | boolean: when true edits can be applied directly within the table | `boolean` | `undefined` | | `mapInfo` | -- | IMapInfo: key configuration details about the current map | `IMapInfo` | `undefined` | | `mapView` | -- | esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html | `MapView` | `undefined` | | `showNewestFirst` | `show-newest-first` | boolean: when true the table will be sorted by objectid in descending order by default | `boolean` | `undefined` | From 7bbd93e5a79c7ea3bedf8b1e1138cb653b7801e1 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Thu, 14 Sep 2023 12:57:22 -0600 Subject: [PATCH 216/406] move delete to modal --- src/assets/t9n/layer-table/resources.json | 4 +- src/assets/t9n/layer-table/resources_en.json | 4 +- src/components/crowdsource-manager/readme.md | 4 +- src/components/info-card/info-card.css | 2 +- src/components/layer-table/layer-table.css | 64 ++---------------- src/components/layer-table/layer-table.tsx | 70 +++++++++----------- src/components/layer-table/readme.md | 6 +- 7 files changed, 49 insertions(+), 105 deletions(-) diff --git a/src/assets/t9n/layer-table/resources.json b/src/assets/t9n/layer-table/resources.json index 2eb2b6ee7..70cb7c58d 100644 --- a/src/assets/t9n/layer-table/resources.json +++ b/src/assets/t9n/layer-table/resources.json @@ -12,11 +12,11 @@ "fetchingData": "Fetching Data", "refresh": "Refresh", "enableEditing": "Editing must be enabled on the layer.", - "confirm": "This feature will be permanently removed.", + "confirm": "These features will be permanently removed.", "deleteFeature": "Delete feature", "deleteDisabled": "Delete Disabled", "editMultipleDisabled": "Edit Multiple Disabled", "showAll": "Show all", "recordsSelected": "{{total}} records, {{selected}} selected", - "keepFeature": "Keep feature" + "cancel": "Cancel" } diff --git a/src/assets/t9n/layer-table/resources_en.json b/src/assets/t9n/layer-table/resources_en.json index 2eb2b6ee7..70cb7c58d 100644 --- a/src/assets/t9n/layer-table/resources_en.json +++ b/src/assets/t9n/layer-table/resources_en.json @@ -12,11 +12,11 @@ "fetchingData": "Fetching Data", "refresh": "Refresh", "enableEditing": "Editing must be enabled on the layer.", - "confirm": "This feature will be permanently removed.", + "confirm": "These features will be permanently removed.", "deleteFeature": "Delete feature", "deleteDisabled": "Delete Disabled", "editMultipleDisabled": "Edit Multiple Disabled", "showAll": "Show all", "recordsSelected": "{{total}} records, {{selected}} selected", - "keepFeature": "Keep feature" + "cancel": "Cancel" } diff --git a/src/components/crowdsource-manager/readme.md b/src/components/crowdsource-manager/readme.md index 839932396..f0d35889f 100644 --- a/src/components/crowdsource-manager/readme.md +++ b/src/components/crowdsource-manager/readme.md @@ -109,7 +109,7 @@ graph TD; layer-table --> calcite-dropdown-group layer-table --> calcite-dropdown-item layer-table --> calcite-alert - layer-table --> calcite-scrim + layer-table --> calcite-modal layer-table --> calcite-icon map-layer-picker --> calcite-select map-layer-picker --> calcite-combobox @@ -125,6 +125,8 @@ graph TD; calcite-combobox --> calcite-icon calcite-combobox-item --> calcite-icon calcite-dropdown-item --> calcite-icon + calcite-modal --> calcite-scrim + calcite-modal --> calcite-icon style crowdsource-manager fill:#f9f,stroke:#333,stroke-width:4px ``` diff --git a/src/components/info-card/info-card.css b/src/components/info-card/info-card.css index 25f232510..686279096 100644 --- a/src/components/info-card/info-card.css +++ b/src/components/info-card/info-card.css @@ -68,7 +68,7 @@ tr:nth-child(odd) { } .edit-btn { - z-index: 999; + z-index: 99; position: absolute; } diff --git a/src/components/layer-table/layer-table.css b/src/components/layer-table/layer-table.css index 0cd39dc71..79062d26a 100644 --- a/src/components/layer-table/layer-table.css +++ b/src/components/layer-table/layer-table.css @@ -42,6 +42,10 @@ padding: 5px; } +.padding-end-1 { + padding-inline-end: 1rem; +} + .height-51 { height: 51px; } @@ -66,64 +70,10 @@ html[dir="rtl"] .bottom-left { color: var(--calcite-ui-text-1); } -.esri-editor__prompt__actions { - display: flex; - flex-direction: row; -} - -.esri-editor__prompt__divider { - color: inherit; - margin: 0 0 12px 0; - border-bottom: 1px solid rgba(110,110,110,.3); - border-color: rgba(110,110,110,.15); - flex: 0 0 auto; -} - -.esri-editor__prompt__message { - color: inherit; - font-weight: 400; - word-break: break-word; - flex: 1 1 auto; - overflow: auto; - overflow-x: hidden; - padding: 0 0 12px 0; -} - -.esri-widget__heading { - color: #323232; - font-weight: 600; - margin: 0 0 0.5rem 0; -} - -.esri-editor__prompt__header__heading { - color: #323232; - margin: 0 3px; -} - -.esri-editor__prompt__header { - color: var(--calcite-ui-danger); - display: flex; - margin-bottom: 12px; - flex: 0 0 auto; +.align-center { align-items: center; - gap: 7px; } -.esri-editor__prompt--danger { - background-color: var(--calcite-ui-background); - border-top: solid 3px var(--calcite-ui-danger); - color: #323232; - box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3); - padding: 12px 15px; - position: absolute; - left: 0; - right: 0; - bottom: 0; - max-height: 85%; - display: flex; - flex-flow: column nowrap; - animation: esri-fade-in-up 250ms ease-in-out; - position: relative !important; - width: 100% !important; - background-color: var(--calcite-ui-foreground-1) !important; +.danger-color { + color: var(--calcite-ui-danger); } diff --git a/src/components/layer-table/layer-table.tsx b/src/components/layer-table/layer-table.tsx index 7e81fd847..5d65f3197 100644 --- a/src/components/layer-table/layer-table.tsx +++ b/src/components/layer-table/layer-table.tsx @@ -634,55 +634,45 @@ export class LayerTable { * @returns node to confirm or deny the delete operation */ protected _deleteMessage(): VNode { - const showClass = this._confirmDelete ? "" : "display-none"; return ( - -
-
+ + -
+
{this._translations.confirm}
-
-
- this._alertClosed()} - scale="m" - type="button" - width="half" - > - {this._translations.keepFeature} - - void this._deleteFeatures()} - scale="m" - type="button" - width="half" - > - {this._translations.delete} - -
-
- + this._alertClosed()} + slot="secondary" + width="full" + > + {this._translations.cancel} + + void this._deleteFeatures()} + slot="primary" width="full"> + {this._translations.delete} + + ); } diff --git a/src/components/layer-table/readme.md b/src/components/layer-table/readme.md index e11e94a13..687bfcd81 100644 --- a/src/components/layer-table/readme.md +++ b/src/components/layer-table/readme.md @@ -57,7 +57,7 @@ Promise that resolves when the operation is complete - calcite-dropdown-group - calcite-dropdown-item - calcite-alert -- calcite-scrim +- calcite-modal - calcite-icon ### Graph @@ -75,7 +75,7 @@ graph TD; layer-table --> calcite-dropdown-group layer-table --> calcite-dropdown-item layer-table --> calcite-alert - layer-table --> calcite-scrim + layer-table --> calcite-modal layer-table --> calcite-icon calcite-panel --> calcite-action calcite-panel --> calcite-action-menu @@ -109,6 +109,8 @@ graph TD; calcite-dropdown-item --> calcite-icon calcite-alert --> calcite-icon calcite-alert --> calcite-chip + calcite-modal --> calcite-scrim + calcite-modal --> calcite-icon crowdsource-manager --> layer-table style layer-table fill:#f9f,stroke:#333,stroke-width:4px ``` From 291797bf38c1aa5b7ab7bb11d9ae46af383d4a50 Mon Sep 17 00:00:00 2001 From: Mike Tschudi Date: Thu, 14 Sep 2023 11:59:08 -0700 Subject: [PATCH 217/406] Disable expression handling for now --- src/components/pdf-download/pdf-download.tsx | 1 - .../public-notification.tsx | 4 +- src/utils/downloadUtils.ts | 116 +++++++----------- 3 files changed, 43 insertions(+), 78 deletions(-) diff --git a/src/components/pdf-download/pdf-download.tsx b/src/components/pdf-download/pdf-download.tsx index db8d68a4f..497c22a8b 100644 --- a/src/components/pdf-download/pdf-download.tsx +++ b/src/components/pdf-download/pdf-download.tsx @@ -135,7 +135,6 @@ export class PdfDownload { title = "", initialImageDataUrl = "" ): Promise { - console.log("pdf-download downloadPDF");//??? return downloadUtils.downloadPDF( webmap, exportInfos, diff --git a/src/components/public-notification/public-notification.tsx b/src/components/public-notification/public-notification.tsx index c6b4833c9..231d4220b 100644 --- a/src/components/public-notification/public-notification.tsx +++ b/src/components/public-notification/public-notification.tsx @@ -801,7 +801,7 @@ export class PublicNotification { */ protected async _getNumDuplicates(): Promise { const exportInfos: IExportInfos = this._getExportInfos(); - const labels = await consolidateLabels(this.mapView.map, exportInfos);//??? + const labels = await consolidateLabels(this.mapView.map, exportInfos); const duplicatesRemoved = removeDuplicateLabels(labels); return labels.length - duplicatesRemoved.length; } @@ -1293,7 +1293,6 @@ export class PublicNotification { */ protected async _export(): Promise { const exportInfos: IExportInfos = this._getSelectionIdsAndViews(this._selectionSets, true); - console.log("public-notification.tsx export");//??? if (this._exportType === EExportType.PDF) { // Generate a map screenshot @@ -1305,7 +1304,6 @@ export class PublicNotification { this._fetchingData = true; // Create the labels for each selection set - console.log("public-notification downloadPDF");//??? await this._downloadTools.downloadPDF( this.mapView.map, exportInfos, diff --git a/src/utils/downloadUtils.ts b/src/utils/downloadUtils.ts index b4150d1a2..f83b17981 100644 --- a/src/utils/downloadUtils.ts +++ b/src/utils/downloadUtils.ts @@ -25,6 +25,7 @@ import { IExportInfo, IExportInfos } from "../utils/interfaces"; export { ILabel } from "./pdfUtils"; +/* interface IArcadeExecutors { [expressionName: string]: __esri.ArcadeExecutor; } @@ -32,6 +33,7 @@ interface IArcadeExecutors { interface IArcadeExecutorPromises { [expressionName: string]: Promise<__esri.ArcadeExecutor>; } +*/ export interface IAttributeOrigNames { [lowercaseName: string]: string; @@ -208,7 +210,6 @@ export async function downloadPDF( title = "", initialImageDataUrl = "" ): Promise { - console.log("downloadUtils downloadPDF");//??? let labels = await consolidateLabels(webmap, exportInfos); const selectionSetNames = _getSelectionSetNames(exportInfos); @@ -383,6 +384,7 @@ export async function _convertPopupArcadeToLabelSpec( * @param layer Layer from which to fetch features * @return Promise resolving to a set of executors keyed using the expression name */ +/* async function _createArcadeExecutors( labelFormat: string, layer: __esri.FeatureLayer @@ -454,6 +456,7 @@ async function _createArcadeExecutors( } ); } +*/ /** * Creates a title from a list of selection set names. @@ -562,50 +565,24 @@ export async function _getLabelFormat( } ); - /* - TODO: handle exprn in text label - webmapTablePopups text [ - { - "type": "text", - "text": "

{expression/expr0}   
{OWNERNM1}   
{PSTLADDRESS}   
{PSTLCITY} , {PSTLSTATE}, {PSTLZIP5} 

" - } - ] - index.3878dde2.js:924 webmapTablePopups exr [ - { - "name": "expr0", - "title": "New expression", - "expression": "// Write a script to return a value to show in the pop-up. \n// For example, get the average of 4 fields:\n// Average($feature.SalesQ1, $feature.SalesQ2, $feature.SalesQ3, $feature.SalesQ4)\nvar relatedFeatures = FeatureSetByRelationshipName($feature, \"\", [\"*\"], false)\nreturn First(relatedFeatures)['SITEADDID']\n", - "returnType": "string" - } - ] - */ - // What is the nature of the label content? // Fields list if (formatUsingLayerPopup) { const labelFormatType = layer.popupTemplate?.content[0]?.type; - console.log("_getLabelFormat labelFormatType", layer.id, labelFormatType);//??? if (labelFormatType === "relationship") { - if (webmap) { - const relationshipId = layer.popupTemplate.content[0].relationshipId; - const webmapLayers0 = webmap.layers.toArray().concat(webmap.tables.toArray()) as __esri.FeatureLayer[];//??? - console.log(layer.id, webmapLayers0.map(layer=>layer.id));//??? - console.log("relationshipId", relationshipId);//??? - webmapLayers0.forEach(layer=>{console.log(layer.id, layer.relationships ? layer.relationships.map(rel=>rel.id) : "")});//??? - - const webmapLayers = webmap.layers.toArray().concat(webmap.tables.toArray()) - .filter((entry: __esri.FeatureLayer) => - entry.type === "feature" - && entry.id !== layer.id - && entry.relationships - && entry.relationships.some(relationship => relationship.id === relationshipId)); - - labelFormatProps = await _getLabelFormat(webmap, webmapLayers[0] as __esri.FeatureLayer, formatUsingLayerPopup); - labelFormatProps.relationshipId = relationshipId; - } else { console.warn("Path is missing a webmap");//??? - } + const relationshipId = layer.popupTemplate.content[0].relationshipId; + + const webmapLayers = webmap.layers.toArray().concat(webmap.tables.toArray()) + .filter((entry: __esri.FeatureLayer) => + entry.type === "feature" + && entry.id !== layer.id + && entry.relationships + && entry.relationships.some(relationship => relationship.id === relationshipId)); + + labelFormatProps = await _getLabelFormat(webmap, webmapLayers[0] as __esri.FeatureLayer, formatUsingLayerPopup); + labelFormatProps.relationshipId = relationshipId; } else if (labelFormatType === "fields") { labelFormatProps.labelFormat = _convertPopupFieldsToLabelSpec(layer.popupTemplate.fieldInfos); @@ -737,39 +714,36 @@ export async function _prepareLabels( ): Promise { // Get the label formatting, if any const labelFormatProps: ILabelFormatProps = await _getLabelFormat(webmap, layer, formatUsingLayerPopup); - console.log("_getLabelFormat labelFormatProps", JSON.stringify(labelFormatProps,null,2));//??? - let featureSet: IFeature[] = []; + // Because the label may actually come from a related layer, we'll use the layer that comes back from _getLabelFormat. + // That function returns the supplied layer in all cases except for a "relationship" type of popup. + const featureLayer = labelFormatProps.layer; + + let featureSet: __esri.Graphic[] = []; if (typeof(labelFormatProps.relationshipId) !== "undefined") { // Get the related items for each id - console.log("queryFeaturesByID related ids:", ids);//??? const relatedRecResponse = await getFeatureServiceRelatedRecords(layer.url, labelFormatProps.relationshipId, ids); + const objectIdField = layer.objectIdField; + let relatedFeatureIds: number[] = []; relatedRecResponse.relatedRecordGroups.forEach( (relatedRecGroup: IRelatedRecordGroup) => { - //???console.log("relatedRecGroup", JSON.stringify(relatedRecGroup,null,2));//??? - featureSet = featureSet.concat(relatedRecGroup.relatedRecords); + relatedFeatureIds = relatedFeatureIds.concat(relatedRecGroup.relatedRecords.map((rec: IFeature) => rec.attributes[objectIdField])); } ); + // Remove duplicates + relatedFeatureIds.sort(); + relatedFeatureIds = relatedFeatureIds.filter((id, i) => i === 0 ? true : id !== relatedFeatureIds[i-1]); + + // Get the full items + featureSet = await queryFeaturesByID(relatedFeatureIds, featureLayer, [], false); + } else { // Get the features to export - console.log("queryFeaturesByID selected ids:", ids);//??? - const graphics = await queryFeaturesByID(ids, layer, [], false); - featureSet = graphics.map( - (graphic: __esri.Graphic) => { - return { - attributes: graphic.attributes - } as IFeature; - } - ) + featureSet = await queryFeaturesByID(ids, featureLayer, [], false); } - // Because the label may actually come from a related layer, we'll use the layer that comes back from _getLabelFormat. - // That function returns the supplied layer in all cases except for a "relationship" type of popup. - const featureLayer = labelFormatProps.layer; - console.log("featureSet", JSON.stringify(featureSet, null, 2));//??? - // Get field data types. Do we have any domain-based fields? const attributeOrigNames: IAttributeOrigNames = {}; const attributeTypes: IAttributeTypes = {}; @@ -787,7 +761,7 @@ export async function _prepareLabels( const labels = labelFormatProps.labelFormat.type === "pattern" ? // Export attributes in format - await _prepareLabelsFromPattern(layer, featureSet, attributeOrigNames, attributeTypes, attributeDomains, + await _prepareLabelsFromPattern(/*layer,*/ featureSet, attributeOrigNames, attributeTypes, attributeDomains, labelFormatProps.attributeFormats, labelFormatProps.labelFormat.format as string, includeHeaderNames) : labelFormatProps.labelFormat.type === "executor" ? @@ -798,7 +772,6 @@ export async function _prepareLabels( // Export all attributes await _prepareLabelsFromAll(featureSet, attributeTypes, attributeDomains, includeHeaderNames); - console.log("labels", JSON.stringify(labels, null, 2));//??? return Promise.resolve(labels); } @@ -812,7 +785,7 @@ export async function _prepareLabels( * @returns Promise resolving with list of labels, each of which is a list of label lines */ export async function _prepareLabelsFromAll( - featureSet: IFeature[], + featureSet: __esri.Graphic[], attributeTypes: IAttributeTypes, attributeDomains: IAttributeDomains, includeHeaderNames = false @@ -859,8 +832,8 @@ export async function _prepareLabelsFromAll( * @returns Promise resolving with list of labels, each of which is a list of label lines */ export async function _prepareLabelsFromPattern( - layer: __esri.FeatureLayer, - featureSet: IFeature[], + //layer: __esri.FeatureLayer, + featureSet: __esri.Graphic[], attributeOrigNames: IAttributeOrigNames, attributeTypes: IAttributeTypes, attributeDomains: IAttributeDomains, @@ -875,31 +848,26 @@ export async function _prepareLabelsFromPattern( const attributeNames = _getFieldNamesFromFieldExpressions(attributeExpressionMatches); // Do we need any Arcade executors? - const arcadeExecutors = await _createArcadeExecutors(labelFormat, layer); - const arcadeExpressionRegExp = /\{expression\/\w+\}/g; - //???const attributeRegExp = /\{\w+\}/g; + //const arcadeExecutors = await _createArcadeExecutors(labelFormat, layer); + //const arcadeExpressionRegExp = /\{expression\/\w+\}/g; // Find the label fields that we need to replace with values - const arcadeExpressionMatches = labelFormat.match(arcadeExpressionRegExp) ?? []; - //???const attributeMatches = labelFormat.match(attributeRegExp) ?? []; - console.log("arcadeExpressionMatches", arcadeExpressionMatches);//??? + //const arcadeExpressionMatches = labelFormat.match(arcadeExpressionRegExp) ?? []; - console.log("_prepareLabelsFromPattern format", labelFormat);//??? // Convert feature attributes into an array of labels const labels = await Promise.all(featureSet.map( async feature => { let labelPrep = labelFormat; + /* // Replace Arcade expressions in this feature - console.log("arcade label before", labelPrep);//??? for (let i = 0; i < arcadeExpressionMatches.length; i++) { const match: string = arcadeExpressionMatches[i]; const expressionName = match.substring(match.indexOf("/") + 1, match.length - 1); - const value = await arcadeExecutors[expressionName].executeAsync({"$feature": feature, "$layer": layer}); - console.log("arcade # match, expr, value", i, match, expressionName, value);//??? + const value = await arcadeExecutors[expressionName].executeAsync({"$feature": feature, "$layer", layer}); labelPrep = labelPrep.replace(match, value); - console.log("arcade label after", labelPrep);//??? } + */ // Replace non-Arcade fields in this feature attributeNames.forEach( @@ -939,7 +907,7 @@ export async function _prepareLabelsFromPattern( * @returns Promise resolving with list of labels, each of which is a list of label lines */ export async function _prepareLabelsUsingExecutor( - featureSet: IFeature[], + featureSet: __esri.Graphic[], labelFormat: __esri.ArcadeExecutor ): Promise { // Convert feature attributes into an array of labels From 8dc91964279d3da2dc4921653e2e37579c839983 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Thu, 14 Sep 2023 13:23:08 -0600 Subject: [PATCH 218/406] update edit capabilities check --- src/components/layer-table/layer-table.tsx | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/src/components/layer-table/layer-table.tsx b/src/components/layer-table/layer-table.tsx index 5d65f3197..822df4c3d 100644 --- a/src/components/layer-table/layer-table.tsx +++ b/src/components/layer-table/layer-table.tsx @@ -145,6 +145,11 @@ export class LayerTable { */ protected _editEnabled: boolean; + /** + * boolean: When false alerts will be shown to indicate that the layer must have delete and editing enabled + */ + protected _deleteEnabled: boolean; + /** * esri/core/reactiveUtils: https://developers.arcgis.com/javascript/latest/api-reference/esri-core-reactiveUtils.html */ @@ -537,6 +542,8 @@ export class LayerTable { container: node } as __esri.FeatureTableProperties); + this._checkEditEnabled(); + await this._table.when(async () => { this._table.highlightIds.on("change", () => { this._selectedIndexes = this._table.highlightIds.toArray(); @@ -574,7 +581,7 @@ export class LayerTable { const columnTemplates = this._getColumnTemplates(this._layer.id); this._table.layer = this._layer; this._table.tableTemplate.columnTemplates = columnTemplates; - this._editEnabled = this._layer.editingEnabled; + this._checkEditEnabled(); this._table.view = this.mapView; this._table.editingEnabled = this._editEnabled; this._table.clearSelectionFilter(); @@ -584,6 +591,16 @@ export class LayerTable { } } + /** + * Verify edit capabilities of the layer + * + * @returns void + */ + protected _checkEditEnabled(): void { + this._editEnabled = this._layer.editingEnabled && this._layer.capabilities.operations.supportsUpdate; + this._deleteEnabled = this._layer.editingEnabled && this._layer.capabilities.operations.supportsDelete; + } + /** * Sort the objectid field in descending order * From 63384a8454e520db9fa683b9f795cc89651ec5b2 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Thu, 14 Sep 2023 14:03:50 -0600 Subject: [PATCH 219/406] move edit button --- src/components/info-card/info-card.css | 18 ++---- src/components/info-card/info-card.tsx | 89 +++++++++++++------------- 2 files changed, 50 insertions(+), 57 deletions(-) diff --git a/src/components/info-card/info-card.css b/src/components/info-card/info-card.css index 686279096..b77003575 100644 --- a/src/components/info-card/info-card.css +++ b/src/components/info-card/info-card.css @@ -67,20 +67,6 @@ tr:nth-child(odd) { overflow: auto; } -.edit-btn { - z-index: 99; - position: absolute; -} - -.edit-btn-position { - right: 0.5rem; - top: 0.5rem; -} - -html[dir="rtl"] .edit-btn-position { - left: 0; -} - .esri-features__footer { display: none !important; } @@ -98,6 +84,10 @@ html[dir="rtl"] .edit-btn-position { min-width: 100px; } +.width-100 { + width: 100%; +} + .esri-features__container { padding: 0.5rem !important; background-color: var(--calcite-ui-foreground-1) !important; diff --git a/src/components/info-card/info-card.tsx b/src/components/info-card/info-card.tsx index a3030b656..4a65b2f76 100644 --- a/src/components/info-card/info-card.tsx +++ b/src/components/info-card/info-card.tsx @@ -221,49 +221,52 @@ export class InfoCard { class={"esri-widget " + featureNodeClass} id="features-node" /> -
-
- this._back()} - width="full" - > - {this._translations.back} - - - {this._translations.back} - -
-
- {this._getCount()} -
-
- this._next()} - width="full" - > - {this._translations.next} - - - {this._translations.next} - -
-
-
- this._openEditRecord()} - > - {this._translations.edit} - - - {this._translations.edit} - +
+
+ this._openEditRecord()} + width="full" + > + {this._translations.edit} + + + {this._translations.edit} + +
+
+
+ this._back()} + width="full" + > + {this._translations.back} + + + {this._translations.back} + +
+
+ {this._getCount()} +
+
+ this._next()} + width="full" + > + {this._translations.next} + + + {this._translations.next} + +
+
Date: Thu, 14 Sep 2023 16:46:09 -0600 Subject: [PATCH 220/406] update version --- CHANGELOG.md | 5 ++++- package-lock.json | 4 ++-- package.json | 2 +- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index ab45155ce..6d407b304 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,8 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm ## [Unreleased] +## [0.6.13] - Sept 14th 2023 + ## [0.6.12] - Sept 12th 2023 ## [0.6.11] - Sept 8th 2023 @@ -217,4 +219,5 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm [0.6.10]: https://github.com/Esri/solution.js/compare/v0.6.9...v0.6.10 "v0.6.10" [0.6.11]: https://github.com/Esri/solution.js/compare/v0.6.10...v0.6.11 "v0.6.11" [0.6.12]: https://github.com/Esri/solution.js/compare/v0.6.11...v0.6.12 "v0.6.12" -[Unreleased]: https://github.com/Esri/solution.js/compare/v0.6.12...HEAD "Unreleased Changes" +[0.6.13]: https://github.com/Esri/solution.js/compare/v0.6.12...v0.6.13 "v0.6.13" +[Unreleased]: https://github.com/Esri/solution.js/compare/v0.6.13...HEAD "Unreleased Changes" diff --git a/package-lock.json b/package-lock.json index 5ac2bdfef..88a193b8f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@esri/solutions-components", - "version": "0.6.12", + "version": "0.6.13", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@esri/solutions-components", - "version": "0.6.12", + "version": "0.6.13", "license": "Apache-2.0", "dependencies": { "@esri/arcgis-rest-auth": "^3.4.2", diff --git a/package.json b/package.json index cc9b39cba..4b585edae 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@esri/solutions-components", - "version": "0.6.12", + "version": "0.6.13", "description": "Web Components for Esri's Solutions Applications", "main": "dist/index.cjs.js", "module": "dist/index.js", From 99140b990a584f143fe58e38b39573c12a7f908e Mon Sep 17 00:00:00 2001 From: John Hauck Date: Fri, 15 Sep 2023 11:12:39 -0600 Subject: [PATCH 221/406] make delete button conditional --- .../crowdsource-manager.tsx | 5 +- src/components/crowdsource-manager/readme.md | 4 +- src/components/layer-table/layer-table.tsx | 240 +++++++++++------- src/components/layer-table/readme.md | 8 +- 4 files changed, 161 insertions(+), 96 deletions(-) diff --git a/src/components/crowdsource-manager/crowdsource-manager.tsx b/src/components/crowdsource-manager/crowdsource-manager.tsx index 8aceb4bde..2a2a8bff3 100644 --- a/src/components/crowdsource-manager/crowdsource-manager.tsx +++ b/src/components/crowdsource-manager/crowdsource-manager.tsx @@ -171,9 +171,10 @@ export class CrowdsourceManager { if (this._expandPopup) { this._shouldSetMapView = true; this._expandPopup = false; - } else { - this._setMapView(); } + await this._mapChange.mapView.when(() => { + this._setMapView(); + }); } //-------------------------------------------------------------------------- diff --git a/src/components/crowdsource-manager/readme.md b/src/components/crowdsource-manager/readme.md index f0d35889f..95f4a1aed 100644 --- a/src/components/crowdsource-manager/readme.md +++ b/src/components/crowdsource-manager/readme.md @@ -102,12 +102,12 @@ graph TD; layer-table --> calcite-loader layer-table --> calcite-action-bar layer-table --> map-layer-picker + layer-table --> calcite-dropdown layer-table --> calcite-action - layer-table --> calcite-tooltip layer-table --> calcite-button - layer-table --> calcite-dropdown layer-table --> calcite-dropdown-group layer-table --> calcite-dropdown-item + layer-table --> calcite-tooltip layer-table --> calcite-alert layer-table --> calcite-modal layer-table --> calcite-icon diff --git a/src/components/layer-table/layer-table.tsx b/src/components/layer-table/layer-table.tsx index dac599fd8..418181e45 100644 --- a/src/components/layer-table/layer-table.tsx +++ b/src/components/layer-table/layer-table.tsx @@ -386,62 +386,38 @@ export class LayerTable { type="dropdown" />
- this._zoom()} - text={this._translations.zoom} - textEnabled={true} - /> - - {this._translations.zoom} - - this._filter()} - text={this._translations.filters} - text-enabled="true" - textEnabled={true} - /> - - {this._translations.filters} - - this._delete()} - text="" - > - - {this._translations.delete} - - - - {this._translations.delete} - - this._clearSelection()} - text={this._translations.clearSelection} - text-enabled="true" - textEnabled={true} - /> - - {this._translations.clearSelection} - + { + this._getAction( + "magnifying-glass", + this._translations.zoom, + () => this._zoom(), + !featuresSelected + ) + } + { + this._getAction( + "filter", + this._translations.filters, + () => this._filter(), + false + ) + } + { + this._deleteEnabled ? this._getDangerAction( + "trash", + this._translations.delete, + () => this._delete(), + !featuresSelected + ) : undefined + } + { + this._getAction( + "erase", + this._translations.clearSelection, + () => this._clearSelection(), + !featuresSelected + ) + } + + + {label} + +
+ ) + } + + /** + * Get an action with danger color icon and text + * + * @param icon string the name of the icon to display, will also be used as the id + * @param label string the text to display and label the action + * @param func any the function to execute + * @param disabled boolean when true the user will not be able to interact with the action + * + * @returns VNode The node representing the DOM element that will contain the action + */ + private _getDangerAction( + icon: string, + label: string, + func: any, + disabled: boolean + ): VNode { + return ( +
+ + + {label} + + + + {label} + +
+ ) + } + /** * Store a reference to the table node after it's first created * and initializes the FeatureTable @@ -524,7 +583,7 @@ export class LayerTable { columnTemplates?: __esri.FieldColumnTemplate[] | __esri.GroupColumnTemplate[] ): Promise { if (this._layer) { - await this._layer.when(async () => { + await this._layer.when(() => { this._table = new this.FeatureTable({ autoRefreshEnabled: this.enableAutoRefresh, layer: this._layer, @@ -541,29 +600,29 @@ export class LayerTable { }, container: node } as __esri.FeatureTableProperties); + }); - this._checkEditEnabled(); + this._checkEditEnabled(); - await this._table.when(async () => { - this._table.highlightIds.on("change", () => { - this._selectedIndexes = this._table.highlightIds.toArray(); - if (this._showOnlySelected) { - if (this._selectedIndexes.length > 0) { - this._table.filterBySelection(); - } else { - this._toggleShowSelected(); - } + await this._table.when(() => { + this._table.highlightIds.on("change", () => { + this._selectedIndexes = this._table.highlightIds.toArray(); + if (this._showOnlySelected) { + if (this._selectedIndexes.length > 0) { + this._table.filterBySelection(); + } else { + this._toggleShowSelected(); } - this.featureSelectionChange.emit(this._selectedIndexes); - }); - - this.reactiveUtils.watch( - () => this._table.activeSortOrders, - (sortOrders) => { - this._sortActive = (sortOrders.length > 0 && sortOrders[0]?.direction === "asc" || sortOrders[0]?.direction === "desc") || - sortOrders[0]?.direction === null && sortOrders[0]?.fieldName === this._layer.objectIdField; - }); + } + this.featureSelectionChange.emit(this._selectedIndexes); }); + + this.reactiveUtils.watch( + () => this._table.activeSortOrders, + (sortOrders) => { + this._sortActive = (sortOrders.length > 0 && sortOrders[0]?.direction === "asc" || sortOrders[0]?.direction === "desc") || + sortOrders[0]?.direction === null && sortOrders[0]?.fieldName === this._layer.objectIdField; + }); }); } } @@ -578,13 +637,19 @@ export class LayerTable { this._clearSelection(); this._allIds = []; this.featureSelectionChange.emit(this._selectedIndexes); - const columnTemplates = this._getColumnTemplates(this._layer.id); - this._table.layer = this._layer; - this._table.tableTemplate.columnTemplates = columnTemplates; - this._checkEditEnabled(); - this._table.view = this.mapView; - this._table.editingEnabled = this._editEnabled; - this._table.clearSelectionFilter(); + await this._layer.when(() => { + const columnTemplates = this._getColumnTemplates(this._layer.id); + this._table.layer = this._layer; + this._table.tableTemplate.columnTemplates = columnTemplates; + this._table.view = this.mapView; + this._checkEditEnabled(); + this._table.editingEnabled = this._editEnabled && this.enableInlineEdit; + }); + + await this._table.when(() => { + this._table.clearSelectionFilter(); + }); + this._showOnlySelected = false; this._sortActive = false; await this._sortTable(); @@ -610,11 +675,10 @@ export class LayerTable { if (this._table && this._layer && !this._sortActive) { if (!this._tableSorting && this.showNewestFirst) { this._tableSorting = true; - await this._table.when(async () => { - await this._layer.when(async () => { - this._table.sortColumn(this._layer.objectIdField, "desc"); - this._tableSorting = false; - }); + await this._table.when(); + await this._layer.when(() => { + this._table.sortColumn(this._layer.objectIdField, "desc"); + this._tableSorting = false; }); } } diff --git a/src/components/layer-table/readme.md b/src/components/layer-table/readme.md index 687bfcd81..063d792e3 100644 --- a/src/components/layer-table/readme.md +++ b/src/components/layer-table/readme.md @@ -50,12 +50,12 @@ Promise that resolves when the operation is complete - calcite-loader - calcite-action-bar - [map-layer-picker](../map-layer-picker) +- calcite-dropdown - calcite-action -- calcite-tooltip - calcite-button -- calcite-dropdown - calcite-dropdown-group - calcite-dropdown-item +- calcite-tooltip - calcite-alert - calcite-modal - calcite-icon @@ -68,12 +68,12 @@ graph TD; layer-table --> calcite-loader layer-table --> calcite-action-bar layer-table --> map-layer-picker + layer-table --> calcite-dropdown layer-table --> calcite-action - layer-table --> calcite-tooltip layer-table --> calcite-button - layer-table --> calcite-dropdown layer-table --> calcite-dropdown-group layer-table --> calcite-dropdown-item + layer-table --> calcite-tooltip layer-table --> calcite-alert layer-table --> calcite-modal layer-table --> calcite-icon From bd433bcb444f16b400971ba9dc9ab5f5b1cfa709 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Fri, 15 Sep 2023 15:03:57 -0600 Subject: [PATCH 222/406] update layer fetch utils to optionally only get updatable layers --- src/utils/mapViewUtils.ts | 27 +++++++++++++++++++++++---- 1 file changed, 23 insertions(+), 4 deletions(-) diff --git a/src/utils/mapViewUtils.ts b/src/utils/mapViewUtils.ts index a70bcfa7c..730e4565d 100644 --- a/src/utils/mapViewUtils.ts +++ b/src/utils/mapViewUtils.ts @@ -70,7 +70,8 @@ export async function getMapTableHash( * */ export async function getMapLayerIds( - mapView: __esri.MapView + mapView: __esri.MapView, + onlyShowUpdatableLayers = false ): Promise { let layerIds = []; await mapView.when(() => { @@ -81,7 +82,15 @@ export async function getMapLayerIds( return prev; }, []); }); - return layerIds; + return onlyShowUpdatableLayers ? await layerIds.reduce(async (prev, cur) => { + const layer = await getLayer(mapView, cur); + await layer.when(() => { + if (layer.editingEnabled && layer.capabilities.operations.supportsUpdate) { + prev.push(cur); + } + }); + return prev; + }, []) : layerIds; } /** @@ -93,7 +102,8 @@ export async function getMapLayerIds( * */ export async function getMapTableIds( - mapView: __esri.MapView + mapView: __esri.MapView, + onlyShowUpdatableTables = false ): Promise { // TODO...seems like its the same as the hash...see if I can remove this let tableIds = []; @@ -103,7 +113,16 @@ export async function getMapTableIds( return prev; }, []); }); - return tableIds; + + return onlyShowUpdatableTables ? await tableIds.reduce(async (prev, cur) => { + const table = await getLayer(mapView, cur); + await table.when(() => { + if (table.editingEnabled && table.capabilities.operations.supportsUpdate) { + prev.push(cur); + } + }); + return prev; + }, []) : tableIds; } /** From d018ff32d18158fb7577540796a9b2d199775801 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Fri, 15 Sep 2023 15:04:47 -0600 Subject: [PATCH 223/406] add onlyShowUpdatableLayers support to map picker --- src/components/map-layer-picker/map-layer-picker.tsx | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/components/map-layer-picker/map-layer-picker.tsx b/src/components/map-layer-picker/map-layer-picker.tsx index 3d08b0700..d950345f4 100644 --- a/src/components/map-layer-picker/map-layer-picker.tsx +++ b/src/components/map-layer-picker/map-layer-picker.tsx @@ -59,6 +59,11 @@ export class MapLayerPicker { */ @Prop() mapView: __esri.MapView; + /** + * boolean: When true only editable layers that support the update capability will be available + */ + @Prop() onlyShowUpdatableLayers: boolean; + /** * string: optional placeholder icon used with "combobox" type */ @@ -336,8 +341,8 @@ export class MapLayerPicker { */ async _setLayers(): Promise { if (this.mapView) { - const mapLayerIds = await getMapLayerIds(this.mapView); - const mapTableIds = this.showTables ? await getMapTableIds(this.mapView) : []; + const mapLayerIds = await getMapLayerIds(this.mapView, this.onlyShowUpdatableLayers); + const mapTableIds = this.showTables ? await getMapTableIds(this.mapView, this.onlyShowUpdatableLayers) : []; this.ids = [ ...mapLayerIds.filter(n => this.enabledLayerIds?.length > 0 ? this.enabledLayerIds.indexOf(n) > -1 : true), ...mapTableIds.filter(n => this.enabledTableIds?.length > 0 ? this.enabledTableIds.indexOf(n) > -1 : true), From 1602dace643d280381f63e6f0e2ba218db53114d Mon Sep 17 00:00:00 2001 From: John Hauck Date: Fri, 15 Sep 2023 15:06:22 -0600 Subject: [PATCH 224/406] add beforeMapChanged --- .../crowdsource-manager/crowdsource-manager.tsx | 13 ++++++++++--- src/components/map-card/map-card.tsx | 15 +++++++++++---- 2 files changed, 21 insertions(+), 7 deletions(-) diff --git a/src/components/crowdsource-manager/crowdsource-manager.tsx b/src/components/crowdsource-manager/crowdsource-manager.tsx index 2a2a8bff3..4bc53e760 100644 --- a/src/components/crowdsource-manager/crowdsource-manager.tsx +++ b/src/components/crowdsource-manager/crowdsource-manager.tsx @@ -168,13 +168,20 @@ export class CrowdsourceManager { evt: CustomEvent ): Promise { this._mapChange = evt.detail; + await this._mapChange.mapView.when(() => { + this._setMapView(); + }); + } + + /** + * Listen for beforeMapChanged and minimize the popup if it's expanded + */ + @Listen("beforeMapChanged", { target: "window" }) + async beforeMapChanged(): Promise { if (this._expandPopup) { this._shouldSetMapView = true; this._expandPopup = false; } - await this._mapChange.mapView.when(() => { - this._setMapView(); - }); } //-------------------------------------------------------------------------- diff --git a/src/components/map-card/map-card.tsx b/src/components/map-card/map-card.tsx index 0b74ec458..36acf9f46 100644 --- a/src/components/map-card/map-card.tsx +++ b/src/components/map-card/map-card.tsx @@ -130,6 +130,11 @@ export class MapCard { */ @Event() mapChanged: EventEmitter; + /** + * Emitted before a new map is loaded + */ + @Event() beforeMapChanged: EventEmitter; + /** * Listen for changes to map info and load the appropriate map */ @@ -228,10 +233,7 @@ export class MapCard { this._loadedId = id; this._searchConfiguration = this._webMapInfo.searchConfiguration; - this.mapChanged.emit({ - id: id, - mapView: this.mapView - }); + this.beforeMapChanged.emit(); await this.mapView.when(() => { const home = new this.Home({ @@ -239,6 +241,11 @@ export class MapCard { }); this.mapView.ui.add(home, { position: "top-left", index: 3}); this.mapView.ui.add(this._mapTools, { position: "top-right", index: 0}); + + this.mapChanged.emit({ + id: id, + mapView: this.mapView + }); }); } } From d19303a8923197b30c15cb5f79b3244500b0fcd1 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Fri, 15 Sep 2023 15:21:03 -0600 Subject: [PATCH 225/406] build --- src/components.d.ts | 12 ++++++++++++ src/components/map-card/readme.md | 7 ++++--- src/components/map-layer-picker/readme.md | 23 ++++++++++++----------- 3 files changed, 28 insertions(+), 14 deletions(-) diff --git a/src/components.d.ts b/src/components.d.ts index b202b7153..ecc18eda5 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -310,6 +310,10 @@ export namespace Components { * esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html */ "mapView": __esri.MapView; + /** + * boolean: When true only editable layers that support the update capability will be available + */ + "onlyShowUpdatableLayers": boolean; /** * string: optional placeholder icon used with "combobox" type */ @@ -1331,6 +1335,10 @@ declare namespace LocalJSX { * esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html */ "mapView"?: __esri.MapView; + /** + * Emitted before a new map is loaded + */ + "onBeforeMapChanged"?: (event: MapCardCustomEvent) => void; /** * Emitted when a new map is loaded */ @@ -1425,6 +1433,10 @@ declare namespace LocalJSX { * Emitted on demand when a layer is selected */ "onLayerSelectionChange"?: (event: MapLayerPickerCustomEvent) => void; + /** + * boolean: When true only editable layers that support the update capability will be available + */ + "onlyShowUpdatableLayers"?: boolean; /** * string: optional placeholder icon used with "combobox" type */ diff --git a/src/components/map-card/readme.md b/src/components/map-card/readme.md index ce831e55a..8660203ae 100644 --- a/src/components/map-card/readme.md +++ b/src/components/map-card/readme.md @@ -15,9 +15,10 @@ ## Events -| Event | Description | Type | -| ------------ | -------------------------------- | ------------------------- | -| `mapChanged` | Emitted when a new map is loaded | `CustomEvent` | +| Event | Description | Type | +| ------------------ | ---------------------------------- | ------------------------- | +| `beforeMapChanged` | Emitted before a new map is loaded | `CustomEvent` | +| `mapChanged` | Emitted when a new map is loaded | `CustomEvent` | ## Dependencies diff --git a/src/components/map-layer-picker/readme.md b/src/components/map-layer-picker/readme.md index ce086aad4..c7da0c6a1 100644 --- a/src/components/map-layer-picker/readme.md +++ b/src/components/map-layer-picker/readme.md @@ -7,17 +7,18 @@ ## Properties -| Property | Attribute | Description | Type | Default | -| ----------------- | ------------------ | ------------------------------------------------------------------------------------------------------ | -------------------------------------- | --------------- | -| `appearance` | `appearance` | "transparent" \| "solid": controls the button appearance when using the "dropdown" type | `"solid" \| "transparent"` | `"transparent"` | -| `enabledLayerIds` | -- | string[]: Optional list of enabled layer ids If empty all layers will be available | `string[]` | `[]` | -| `enabledTableIds` | -- | string[]: Optional list of enabled table ids If empty all tables will be available | `string[]` | `[]` | -| `mapView` | -- | esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html | `MapView` | `undefined` | -| `placeholderIcon` | `placeholder-icon` | string: optional placeholder icon used with "combobox" type | `string` | `""` | -| `scale` | `scale` | "s" \| "m" \| "l": scale to render the component | `"l" \| "m" \| "s"` | `"m"` | -| `selectedIds` | -- | string[]: list of layer ids that have been selected by the end user | `string[]` | `[]` | -| `showTables` | `show-tables` | boolean: when true standalone tables will also be available | `boolean` | `true` | -| `type` | `type` | "select" \| "combobox" \| "dropdown": type of component to leverage | `"combobox" \| "dropdown" \| "select"` | `"select"` | +| Property | Attribute | Description | Type | Default | +| ------------------------- | ---------------------------- | ------------------------------------------------------------------------------------------------------ | -------------------------------------- | --------------- | +| `appearance` | `appearance` | "transparent" \| "solid": controls the button appearance when using the "dropdown" type | `"solid" \| "transparent"` | `"transparent"` | +| `enabledLayerIds` | -- | string[]: Optional list of enabled layer ids If empty all layers will be available | `string[]` | `[]` | +| `enabledTableIds` | -- | string[]: Optional list of enabled table ids If empty all tables will be available | `string[]` | `[]` | +| `mapView` | -- | esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html | `MapView` | `undefined` | +| `onlyShowUpdatableLayers` | `only-show-updatable-layers` | boolean: When true only editable layers that support the update capability will be available | `boolean` | `undefined` | +| `placeholderIcon` | `placeholder-icon` | string: optional placeholder icon used with "combobox" type | `string` | `""` | +| `scale` | `scale` | "s" \| "m" \| "l": scale to render the component | `"l" \| "m" \| "s"` | `"m"` | +| `selectedIds` | -- | string[]: list of layer ids that have been selected by the end user | `string[]` | `[]` | +| `showTables` | `show-tables` | boolean: when true standalone tables will also be available | `boolean` | `true` | +| `type` | `type` | "select" \| "combobox" \| "dropdown": type of component to leverage | `"combobox" \| "dropdown" \| "select"` | `"select"` | ## Events From 69a317edb8de3670304dc6aecac8d0890ac78557 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Mon, 18 Sep 2023 09:45:50 -0600 Subject: [PATCH 226/406] add onlyShowUpdatableLayers prop --- src/components.d.ts | 16 ++++++++++++++++ .../crowdsource-manager/crowdsource-manager.tsx | 6 ++++++ src/components/crowdsource-manager/readme.md | 1 + src/components/layer-table/layer-table.tsx | 6 ++++++ src/components/layer-table/readme.md | 1 + 5 files changed, 30 insertions(+) diff --git a/src/components.d.ts b/src/components.d.ts index ecc18eda5..887396fd4 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -90,6 +90,10 @@ export namespace Components { * IMapInfo[]: array of map infos (name and id) */ "mapInfos": IMapInfo[]; + /** + * boolean: When true only editable layers that support the update capability will be available + */ + "onlyShowUpdatableLayers": boolean; /** * ISearchConfiguration: Configuration details for the Search widget */ @@ -208,6 +212,10 @@ export namespace Components { * esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html */ "mapView": __esri.MapView; + /** + * boolean: When true only editable layers that support the update capability will be available + */ + "onlyShowUpdatableLayers": boolean; /** * boolean: when true the table will be sorted by objectid in descending order by default */ @@ -1205,6 +1213,10 @@ declare namespace LocalJSX { * IMapInfo[]: array of map infos (name and id) */ "mapInfos"?: IMapInfo[]; + /** + * boolean: When true only editable layers that support the update capability will be available + */ + "onlyShowUpdatableLayers"?: boolean; /** * ISearchConfiguration: Configuration details for the Search widget */ @@ -1309,6 +1321,10 @@ declare namespace LocalJSX { * Emitted on demand when a layer is selected */ "onFeatureSelectionChange"?: (event: LayerTableCustomEvent) => void; + /** + * boolean: When true only editable layers that support the update capability will be available + */ + "onlyShowUpdatableLayers"?: boolean; /** * boolean: when true the table will be sorted by objectid in descending order by default */ diff --git a/src/components/crowdsource-manager/crowdsource-manager.tsx b/src/components/crowdsource-manager/crowdsource-manager.tsx index 4bc53e760..8e665797d 100644 --- a/src/components/crowdsource-manager/crowdsource-manager.tsx +++ b/src/components/crowdsource-manager/crowdsource-manager.tsx @@ -68,6 +68,11 @@ export class CrowdsourceManager { */ @Prop() mapInfos: IMapInfo[] = []; + /** + * boolean: When true only editable layers that support the update capability will be available + */ + @Prop() onlyShowUpdatableLayers: boolean; + /** * ISearchConfiguration: Configuration details for the Search widget */ @@ -531,6 +536,7 @@ export class CrowdsourceManager { enableInlineEdit={this.enableInlineEdit} mapInfo={this._mapInfo} mapView={this?._mapView} + onlyShowUpdatableLayers={this.onlyShowUpdatableLayers} showNewestFirst={this.showNewestFirst} zoomAndScrollToSelected={this.zoomAndScrollToSelected} /> diff --git a/src/components/crowdsource-manager/readme.md b/src/components/crowdsource-manager/readme.md index 95f4a1aed..04346d2d1 100644 --- a/src/components/crowdsource-manager/readme.md +++ b/src/components/crowdsource-manager/readme.md @@ -14,6 +14,7 @@ | `enableInlineEdit` | `enable-inline-edit` | boolean: when true edits can be applied directly within the table | `boolean` | `false` | | `hideMap` | `hide-map` | boolean: when true no map is displayed for the app | `boolean` | `false` | | `mapInfos` | -- | IMapInfo[]: array of map infos (name and id) | `IMapInfo[]` | `[]` | +| `onlyShowUpdatableLayers` | `only-show-updatable-layers` | boolean: When true only editable layers that support the update capability will be available | `boolean` | `undefined` | | `searchConfiguration` | -- | ISearchConfiguration: Configuration details for the Search widget | `ISearchConfiguration` | `undefined` | | `showNewestFirst` | `show-newest-first` | boolean: when true the table will be sorted by objectid in descending order by default | `boolean` | `true` | | `zoomAndScrollToSelected` | `zoom-and-scroll-to-selected` | boolean: When true the selected feature will zoomed to in the map and the row will be scrolled to within the table | `boolean` | `false` | diff --git a/src/components/layer-table/layer-table.tsx b/src/components/layer-table/layer-table.tsx index 418181e45..cd2a9b956 100644 --- a/src/components/layer-table/layer-table.tsx +++ b/src/components/layer-table/layer-table.tsx @@ -62,6 +62,11 @@ export class LayerTable { */ @Prop() mapView: __esri.MapView; + /** + * boolean: When true only editable layers that support the update capability will be available + */ + @Prop() onlyShowUpdatableLayers: boolean; + /** * boolean: when true the table will be sorted by objectid in descending order by default */ @@ -381,6 +386,7 @@ export class LayerTable { appearance="transparent" mapView={this.mapView} onLayerSelectionChange={(evt) => this._layerSelectionChanged(evt)} + onlyShowUpdatableLayers={this.onlyShowUpdatableLayers} placeholderIcon="layers" scale="l" type="dropdown" diff --git a/src/components/layer-table/readme.md b/src/components/layer-table/readme.md index 063d792e3..722aa246e 100644 --- a/src/components/layer-table/readme.md +++ b/src/components/layer-table/readme.md @@ -13,6 +13,7 @@ | `enableInlineEdit` | `enable-inline-edit` | boolean: when true edits can be applied directly within the table | `boolean` | `undefined` | | `mapInfo` | -- | IMapInfo: key configuration details about the current map | `IMapInfo` | `undefined` | | `mapView` | -- | esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html | `MapView` | `undefined` | +| `onlyShowUpdatableLayers` | `only-show-updatable-layers` | boolean: When true only editable layers that support the update capability will be available | `boolean` | `undefined` | | `showNewestFirst` | `show-newest-first` | boolean: when true the table will be sorted by objectid in descending order by default | `boolean` | `undefined` | | `zoomAndScrollToSelected` | `zoom-and-scroll-to-selected` | boolean: When true the selected feature will zoomed to in the map and the row will be scrolled to within the table | `boolean` | `undefined` | From ff758b3a2bba7e06d69f3918d17927805af1c9a7 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Mon, 18 Sep 2023 12:51:47 -0600 Subject: [PATCH 227/406] remove layer/table hash from store --- src/components/card-manager/card-manager.tsx | 4 +- .../crowdsource-manager.tsx | 2 +- src/components/crowdsource-manager/readme.md | 2 +- src/components/layer-table/layer-table.tsx | 6 +- .../map-layer-picker/map-layer-picker.tsx | 36 +++++--- src/utils/mapViewUtils.ts | 86 +++++++++++++++---- src/utils/publicNotificationStore.ts | 4 - 7 files changed, 98 insertions(+), 42 deletions(-) diff --git a/src/components/card-manager/card-manager.tsx b/src/components/card-manager/card-manager.tsx index a4a13c7d4..12b238624 100644 --- a/src/components/card-manager/card-manager.tsx +++ b/src/components/card-manager/card-manager.tsx @@ -18,7 +18,7 @@ import { Component, Element, Host, h, Listen, Prop, State } from "@stencil/core" import CardManager_T9n from "../../assets/t9n/card-manager/resources.json"; import { getLocaleComponentStrings } from "../../utils/locale"; import { queryFeaturesByID } from "../../utils/queryUtils"; -import { getLayer } from "../../utils/mapViewUtils"; +import { getLayerOrTable } from "../../utils/mapViewUtils"; @Component({ tag: "card-manager", @@ -117,7 +117,7 @@ export class CardManager { evt: CustomEvent ): Promise { const id: string = evt.detail[0]; - this.layer = await getLayer(this.mapView, id); + this.layer = await getLayerOrTable(this.mapView, id); } //-------------------------------------------------------------------------- diff --git a/src/components/crowdsource-manager/crowdsource-manager.tsx b/src/components/crowdsource-manager/crowdsource-manager.tsx index 8e665797d..452e406e2 100644 --- a/src/components/crowdsource-manager/crowdsource-manager.tsx +++ b/src/components/crowdsource-manager/crowdsource-manager.tsx @@ -71,7 +71,7 @@ export class CrowdsourceManager { /** * boolean: When true only editable layers that support the update capability will be available */ - @Prop() onlyShowUpdatableLayers: boolean; + @Prop() onlyShowUpdatableLayers = false; /** * ISearchConfiguration: Configuration details for the Search widget diff --git a/src/components/crowdsource-manager/readme.md b/src/components/crowdsource-manager/readme.md index 04346d2d1..9c25ad139 100644 --- a/src/components/crowdsource-manager/readme.md +++ b/src/components/crowdsource-manager/readme.md @@ -14,7 +14,7 @@ | `enableInlineEdit` | `enable-inline-edit` | boolean: when true edits can be applied directly within the table | `boolean` | `false` | | `hideMap` | `hide-map` | boolean: when true no map is displayed for the app | `boolean` | `false` | | `mapInfos` | -- | IMapInfo[]: array of map infos (name and id) | `IMapInfo[]` | `[]` | -| `onlyShowUpdatableLayers` | `only-show-updatable-layers` | boolean: When true only editable layers that support the update capability will be available | `boolean` | `undefined` | +| `onlyShowUpdatableLayers` | `only-show-updatable-layers` | boolean: When true only editable layers that support the update capability will be available | `boolean` | `false` | | `searchConfiguration` | -- | ISearchConfiguration: Configuration details for the Search widget | `ISearchConfiguration` | `undefined` | | `showNewestFirst` | `show-newest-first` | boolean: when true the table will be sorted by objectid in descending order by default | `boolean` | `true` | | `zoomAndScrollToSelected` | `zoom-and-scroll-to-selected` | boolean: When true the selected feature will zoomed to in the map and the row will be scrolled to within the table | `boolean` | `false` | diff --git a/src/components/layer-table/layer-table.tsx b/src/components/layer-table/layer-table.tsx index cd2a9b956..2c2a84cc4 100644 --- a/src/components/layer-table/layer-table.tsx +++ b/src/components/layer-table/layer-table.tsx @@ -18,7 +18,7 @@ import { Component, Element, Event, EventEmitter, Host, h, Listen, Method, Prop, import LayerTable_T9n from "../../assets/t9n/layer-table/resources.json"; import { loadModules } from "../../utils/loadModules"; import { getLocaleComponentStrings } from "../../utils/locale"; -import { getLayer, getMapLayerIds, goToSelection } from "../../utils/mapViewUtils"; +import { getLayerOrTable, getMapLayerIds, goToSelection } from "../../utils/mapViewUtils"; import { queryFeaturesByID, queryAllIds } from "../../utils/queryUtils"; import * as downloadUtils from "../../utils/downloadUtils"; import { IExportInfos, ILayerInfo, IMapClick, IMapInfo } from "../../utils/interfaces"; @@ -193,7 +193,7 @@ export class LayerTable { async mapViewWatchHandler(): Promise { this._fetchingData = true; const mapLayerIds = await getMapLayerIds(this.mapView); - this._layer = await getLayer(this.mapView, mapLayerIds[0]); + this._layer = await getLayerOrTable(this.mapView, mapLayerIds[0]); this.reactiveUtils.on( () => this.mapView, "click", @@ -970,7 +970,7 @@ export class LayerTable { if (id !== this._layer.id || this._allIds.length === 0) { this._fetchingData = true; const columnTemplates = this._getColumnTemplates(id); - this._layer = await getLayer(this.mapView, id); + this._layer = await getLayerOrTable(this.mapView, id); this._allIds = await queryAllIds(this._layer) if (!this._table) { await this._getTable(this._tableNode, columnTemplates); diff --git a/src/components/map-layer-picker/map-layer-picker.tsx b/src/components/map-layer-picker/map-layer-picker.tsx index d950345f4..6aa44d1cc 100644 --- a/src/components/map-layer-picker/map-layer-picker.tsx +++ b/src/components/map-layer-picker/map-layer-picker.tsx @@ -17,6 +17,7 @@ import { Component, Element, Event, EventEmitter, Host, h, Prop, State, VNode, Watch } from "@stencil/core"; import { getMapLayerHash, getMapLayerIds, getMapTableHash, getMapTableIds } from "../../utils/mapViewUtils"; import state from "../../utils/publicNotificationStore"; +import { IMapItemHash } from "../../utils/interfaces"; @Component({ tag: "map-layer-picker", @@ -116,6 +117,16 @@ export class MapLayerPicker { */ protected _layerElement: HTMLCalciteSelectElement | HTMLCalciteComboboxElement; + /** + * IMapItemHash: id/name lookup + */ + protected _layerNameHash: IMapItemHash; + + /** + * IMapItemHash: id/name lookup + */ + protected _tableNameHash: IMapItemHash; + //-------------------------------------------------------------------------- // // Watch handlers @@ -129,8 +140,8 @@ export class MapLayerPicker { @Watch("mapView") async mapViewWatchHandler(): Promise { await this._setLayers(); - const hasLayers = Object.keys(state.layerNameHash).length > 0; - const hasTables = Object.keys(state.tableNameHash).length > 0 && this.showTables; + const hasLayers = Object.keys(this._layerNameHash).length > 0; + const hasTables = Object.keys(this._tableNameHash).length > 0 && this.showTables; if (hasLayers || hasTables) { this._setSelectedLayer(this.ids[0], hasLayers ? "layer" : "table"); } @@ -199,9 +210,9 @@ export class MapLayerPicker { if (this.type === "select") { this._layerElement.value = id; } else if (this.type === "dropdown") { - this.selectedName = Object.keys(state.layerNameHash).indexOf(id) > -1 ? - state.layerNameHash[id] : Object.keys(state.tableNameHash).indexOf(id) > -1 ? - state.tableNameHash[id] : ""; + this.selectedName = Object.keys(this._layerNameHash).indexOf(id) > -1 ? + this._layerNameHash[id] : Object.keys(this._tableNameHash).indexOf(id) > -1 ? + this._tableNameHash[id] : ""; } } } @@ -310,7 +321,7 @@ export class MapLayerPicker { id: string, itemType: "layer" | "table" ): VNode { - const name = itemType === "layer" ? state.layerNameHash[id] : state.tableNameHash[id]; + const name = itemType === "layer" ? this._layerNameHash[id] : this._tableNameHash[id]; return this.type === "combobox" ? () : this.type === "select" ? () : ( @@ -329,7 +340,7 @@ export class MapLayerPicker { id: string, type: "layer" | "table" ): void { - this.selectedName = type === "layer" ? state.layerNameHash[id] : state.tableNameHash[id]; + this.selectedName = type === "layer" ? this._layerNameHash[id] : this._tableNameHash[id]; this.selectedIds = [id]; this.layerSelectionChange.emit(this.selectedIds); } @@ -358,8 +369,9 @@ export class MapLayerPicker { */ protected async _initStateHash(): Promise { if (this.mapView) { - state.layerNameHash = await getMapLayerHash(this.mapView); - state.tableNameHash = this.showTables ? await getMapTableHash(this.mapView) : {}; + this._layerNameHash = await getMapLayerHash(this.mapView); + this._tableNameHash = this.showTables ? await getMapTableHash( + this.mapView, this.onlyShowUpdatableLayers, false) : {}; } } @@ -371,9 +383,9 @@ export class MapLayerPicker { protected _validLayer( id: string ): boolean { - const name = state.layerNameHash[id]; + const name = this._layerNameHash[id]; return name && state.managedLayers.indexOf(name) < 0 && (this.enabledLayerIds.length > 0 ? - this.enabledLayerIds.indexOf(id) > -1 : name); + this.enabledLayerIds.indexOf(id) > -1 : true); } /** @@ -384,7 +396,7 @@ export class MapLayerPicker { protected _validTable( id: string ): boolean { - const name = state.tableNameHash[id]; + const name = this._tableNameHash[id]; const validName = name && this.showTables; return validName ? state.managedTables.indexOf(name) < 0 && (this.enabledTableIds.length > 0 ? this.enabledTableIds.indexOf(id) > -1 : true) : validName; diff --git a/src/utils/mapViewUtils.ts b/src/utils/mapViewUtils.ts index 730e4565d..85355645e 100644 --- a/src/utils/mapViewUtils.ts +++ b/src/utils/mapViewUtils.ts @@ -21,50 +21,97 @@ import { EWorkflowType, IMapItemHash, ISelectionSet } from "./interfaces"; * Gets the layer names from the current map * * @param mapView the map view to fetch the layer names from + * @param onlyShowUpdatableLayers when true only layers that support editing and updates will be returned + * @param onlyIDs when true an array of ids is returned + * when false a id/name hash is returned * * @returns Promise resolving with an array of layer names * */ export async function getMapLayerHash( - mapView: __esri.MapView -): Promise { - let layerHash = {}; + mapView: __esri.MapView, + onlyShowUpdatableLayers: boolean, + onlyIDs: boolean +): Promise { + let layerHash; await mapView.when(() => { layerHash = mapView.map.allLayers.toArray().reduce((prev, cur) => { if (cur.type === "feature") { - prev[cur.id] = cur.title; + if (onlyIDs) { + (prev as Array).push(cur.id); + } else { + prev[cur.id] = cur.title; + } } return prev; - }, {}); + }, onlyIDs ? [] : {}); }); - return layerHash; + + return onlyShowUpdatableLayers ? Object.keys(layerHash).reduce(async (prev, cur) => { + const layer = await getLayerOrTable(mapView, cur); + await layer.when(() => { + if (layer.editingEnabled && layer.capabilities.operations.supportsUpdate) { + if (onlyIDs) { + (prev as Array).push(cur); + } else { + prev[cur] = layerHash[cur]; + } + } + }); + return prev; + }, onlyIDs ? [] : {}) : layerHash; } /** * Gets the table names from the current map * * @param mapView the map view to fetch the table names from + * @param onlyShowUpdatableLayers when true only layers that support editing and updates will be returned + * @param onlyIDs when true an array of ids is returned + * when false a id/name hash is returned * * @returns Promise resolving with an array of table names * */ export async function getMapTableHash( - mapView: __esri.MapView -): Promise { - let tableHash = {}; + mapView: __esri.MapView, + onlyShowUpdatableTables: boolean, + onlyIDs: boolean +): Promise { + let tableHash; await mapView.when(() => { tableHash = mapView.map.allTables.toArray().reduce((prev, cur) => { - prev[cur.id] = cur.title; + if (onlyIDs) { + // when only IDs is used it will be an array + (prev as Array).push(cur.id); + } else { + prev[cur.id] = cur.title; + } return prev; - }, {}); + }, onlyIDs ? [] : {}); }); - return tableHash; + + const ids = onlyIDs ? tableHash : Object.keys(tableHash); + return onlyShowUpdatableTables ? ids.reduce(async (prev, cur) => { + const item = await getLayerOrTable(mapView, cur); + await item.when(() => { + if (item.editingEnabled && item.capabilities.operations.supportsUpdate) { + if (onlyIDs) { + prev.push(cur); + } else { + prev[cur] = tableHash[cur]; + } + } + }); + return prev; + }, onlyIDs ? [] : {}) : tableHash; } /** * Gets the layer names from the current map * * @param mapView the map view to fetch the layer names from + * @param onlyShowUpdatableLayers when true only layers that support editing and updates will be returned * * @returns Promise resolving with an array of layer names * @@ -83,7 +130,7 @@ export async function getMapLayerIds( }, []); }); return onlyShowUpdatableLayers ? await layerIds.reduce(async (prev, cur) => { - const layer = await getLayer(mapView, cur); + const layer = await getLayerOrTable(mapView, cur); await layer.when(() => { if (layer.editingEnabled && layer.capabilities.operations.supportsUpdate) { prev.push(cur); @@ -97,6 +144,7 @@ export async function getMapLayerIds( * Gets the table names from the current map * * @param mapView the map view to fetch the table names from + * @param onlyShowUpdatableLayers when true only layers that support editing and updates will be returned * * @returns Promise resolving with an array of table names * @@ -115,7 +163,7 @@ export async function getMapTableIds( }); return onlyShowUpdatableTables ? await tableIds.reduce(async (prev, cur) => { - const table = await getLayer(mapView, cur); + const table = await getLayerOrTable(mapView, cur); await table.when(() => { if (table.editingEnabled && table.capabilities.operations.supportsUpdate) { prev.push(cur); @@ -138,20 +186,20 @@ export async function getFeatureLayerView( mapView: __esri.MapView, id: string ): Promise<__esri.FeatureLayerView> { - const layer = await getLayer(mapView, id); + const layer = await getLayerOrTable(mapView, id); return layer ? await mapView.whenLayerView(layer) : undefined; } /** - * Get a layer by id + * Get a layer or table by id * * @param mapView the map view to fetch the layer from - * @param id the id if the layer to fetch + * @param id the id of the layer or table to fetch * - * @returns Promise resolving with the fetched layer + * @returns Promise resolving with the fetched layer or table * */ -export async function getLayer( +export async function getLayerOrTable( mapView: __esri.MapView, id: string ): Promise<__esri.FeatureLayer> { diff --git a/src/utils/publicNotificationStore.ts b/src/utils/publicNotificationStore.ts index 800cb014f..bc942f971 100644 --- a/src/utils/publicNotificationStore.ts +++ b/src/utils/publicNotificationStore.ts @@ -23,10 +23,6 @@ const { state, onChange } = createStore({ managedTables: [], // Handle[]: https://developers.arcgis.com/javascript/latest/api-reference/esri-core-Handles.html#Handle highlightHandles: [], - // IMapItemHash title: id lookup to be used across components - layerNameHash: {}, - // IMapItemHash title: id lookup to be used across components - tableNameHash: {}, // remove all handles removeHandles: () => { state.highlightHandles.forEach(h => h?.remove()); From 7e240be9b168df0357ba46bcf0177056f90cba80 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Mon, 18 Sep 2023 13:18:44 -0600 Subject: [PATCH 228/406] remove getMapLayerIds and getMapTableIds --- src/components/layer-table/layer-table.tsx | 5 +- .../map-layer-picker/map-layer-picker.tsx | 18 ++- src/utils/mapViewUtils.ts | 116 ++---------------- stencil.config.ts | 2 +- 4 files changed, 25 insertions(+), 116 deletions(-) diff --git a/src/components/layer-table/layer-table.tsx b/src/components/layer-table/layer-table.tsx index 2c2a84cc4..5d214654f 100644 --- a/src/components/layer-table/layer-table.tsx +++ b/src/components/layer-table/layer-table.tsx @@ -18,7 +18,7 @@ import { Component, Element, Event, EventEmitter, Host, h, Listen, Method, Prop, import LayerTable_T9n from "../../assets/t9n/layer-table/resources.json"; import { loadModules } from "../../utils/loadModules"; import { getLocaleComponentStrings } from "../../utils/locale"; -import { getLayerOrTable, getMapLayerIds, goToSelection } from "../../utils/mapViewUtils"; +import { getLayerOrTable, getMapLayerHash, goToSelection } from "../../utils/mapViewUtils"; import { queryFeaturesByID, queryAllIds } from "../../utils/queryUtils"; import * as downloadUtils from "../../utils/downloadUtils"; import { IExportInfos, ILayerInfo, IMapClick, IMapInfo } from "../../utils/interfaces"; @@ -192,7 +192,8 @@ export class LayerTable { @Watch("mapView") async mapViewWatchHandler(): Promise { this._fetchingData = true; - const mapLayerIds = await getMapLayerIds(this.mapView); + const mapLayerHash = await getMapLayerHash(this.mapView, this.onlyShowUpdatableLayers); + const mapLayerIds = Object.keys(mapLayerHash); this._layer = await getLayerOrTable(this.mapView, mapLayerIds[0]); this.reactiveUtils.on( () => this.mapView, diff --git a/src/components/map-layer-picker/map-layer-picker.tsx b/src/components/map-layer-picker/map-layer-picker.tsx index 6aa44d1cc..0b556d189 100644 --- a/src/components/map-layer-picker/map-layer-picker.tsx +++ b/src/components/map-layer-picker/map-layer-picker.tsx @@ -15,7 +15,7 @@ */ import { Component, Element, Event, EventEmitter, Host, h, Prop, State, VNode, Watch } from "@stencil/core"; -import { getMapLayerHash, getMapLayerIds, getMapTableHash, getMapTableIds } from "../../utils/mapViewUtils"; +import { getMapLayerHash, getMapTableHash } from "../../utils/mapViewUtils"; import state from "../../utils/publicNotificationStore"; import { IMapItemHash } from "../../utils/interfaces"; @@ -352,13 +352,13 @@ export class MapLayerPicker { */ async _setLayers(): Promise { if (this.mapView) { - const mapLayerIds = await getMapLayerIds(this.mapView, this.onlyShowUpdatableLayers); - const mapTableIds = this.showTables ? await getMapTableIds(this.mapView, this.onlyShowUpdatableLayers) : []; + await this._initLayerTableHash(); + const mapLayerIds = Object.keys(this._layerNameHash); + const mapTableIds = this.showTables ? Object.keys(this._tableNameHash) : []; this.ids = [ ...mapLayerIds.filter(n => this.enabledLayerIds?.length > 0 ? this.enabledLayerIds.indexOf(n) > -1 : true), ...mapTableIds.filter(n => this.enabledTableIds?.length > 0 ? this.enabledTableIds.indexOf(n) > -1 : true), ]; - await this._initStateHash(); } } @@ -367,12 +367,10 @@ export class MapLayerPicker { * * @returns Promise when the operation has completed */ - protected async _initStateHash(): Promise { - if (this.mapView) { - this._layerNameHash = await getMapLayerHash(this.mapView); - this._tableNameHash = this.showTables ? await getMapTableHash( - this.mapView, this.onlyShowUpdatableLayers, false) : {}; - } + protected async _initLayerTableHash(): Promise { + this._layerNameHash = await getMapLayerHash(this.mapView, this.onlyShowUpdatableLayers); + this._tableNameHash = this.showTables ? await getMapTableHash( + this.mapView, this.onlyShowUpdatableLayers) : {}; } /** diff --git a/src/utils/mapViewUtils.ts b/src/utils/mapViewUtils.ts index 85355645e..9be4c3ec6 100644 --- a/src/utils/mapViewUtils.ts +++ b/src/utils/mapViewUtils.ts @@ -22,44 +22,33 @@ import { EWorkflowType, IMapItemHash, ISelectionSet } from "./interfaces"; * * @param mapView the map view to fetch the layer names from * @param onlyShowUpdatableLayers when true only layers that support editing and updates will be returned - * @param onlyIDs when true an array of ids is returned - * when false a id/name hash is returned * * @returns Promise resolving with an array of layer names * */ export async function getMapLayerHash( mapView: __esri.MapView, - onlyShowUpdatableLayers: boolean, - onlyIDs: boolean -): Promise { + onlyShowUpdatableLayers: boolean +): Promise { let layerHash; await mapView.when(() => { layerHash = mapView.map.allLayers.toArray().reduce((prev, cur) => { if (cur.type === "feature") { - if (onlyIDs) { - (prev as Array).push(cur.id); - } else { - prev[cur.id] = cur.title; - } + prev[cur.id] = cur.title; } return prev; - }, onlyIDs ? [] : {}); + }, {}); }); return onlyShowUpdatableLayers ? Object.keys(layerHash).reduce(async (prev, cur) => { const layer = await getLayerOrTable(mapView, cur); await layer.when(() => { if (layer.editingEnabled && layer.capabilities.operations.supportsUpdate) { - if (onlyIDs) { - (prev as Array).push(cur); - } else { - prev[cur] = layerHash[cur]; - } + prev[cur] = layerHash[cur]; } }); return prev; - }, onlyIDs ? [] : {}) : layerHash; + }, {}) : layerHash; } /** @@ -67,110 +56,31 @@ export async function getMapLayerHash( * * @param mapView the map view to fetch the table names from * @param onlyShowUpdatableLayers when true only layers that support editing and updates will be returned - * @param onlyIDs when true an array of ids is returned - * when false a id/name hash is returned * * @returns Promise resolving with an array of table names * */ export async function getMapTableHash( mapView: __esri.MapView, - onlyShowUpdatableTables: boolean, - onlyIDs: boolean -): Promise { + onlyShowUpdatableTables: boolean +): Promise { let tableHash; await mapView.when(() => { tableHash = mapView.map.allTables.toArray().reduce((prev, cur) => { - if (onlyIDs) { - // when only IDs is used it will be an array - (prev as Array).push(cur.id); - } else { - prev[cur.id] = cur.title; - } + prev[cur.id] = cur.title; return prev; - }, onlyIDs ? [] : {}); + }, {}); }); - const ids = onlyIDs ? tableHash : Object.keys(tableHash); - return onlyShowUpdatableTables ? ids.reduce(async (prev, cur) => { + return onlyShowUpdatableTables ? Object.keys(tableHash).reduce(async (prev, cur) => { const item = await getLayerOrTable(mapView, cur); await item.when(() => { if (item.editingEnabled && item.capabilities.operations.supportsUpdate) { - if (onlyIDs) { - prev.push(cur); - } else { - prev[cur] = tableHash[cur]; - } - } - }); - return prev; - }, onlyIDs ? [] : {}) : tableHash; -} - -/** - * Gets the layer names from the current map - * - * @param mapView the map view to fetch the layer names from - * @param onlyShowUpdatableLayers when true only layers that support editing and updates will be returned - * - * @returns Promise resolving with an array of layer names - * - */ -export async function getMapLayerIds( - mapView: __esri.MapView, - onlyShowUpdatableLayers = false -): Promise { - let layerIds = []; - await mapView.when(() => { - layerIds = mapView.map.allLayers.toArray().reduce((prev, cur) => { - if (cur.type === "feature") { - prev.push(cur.id); - } - return prev; - }, []); - }); - return onlyShowUpdatableLayers ? await layerIds.reduce(async (prev, cur) => { - const layer = await getLayerOrTable(mapView, cur); - await layer.when(() => { - if (layer.editingEnabled && layer.capabilities.operations.supportsUpdate) { - prev.push(cur); - } - }); - return prev; - }, []) : layerIds; -} - -/** - * Gets the table names from the current map - * - * @param mapView the map view to fetch the table names from - * @param onlyShowUpdatableLayers when true only layers that support editing and updates will be returned - * - * @returns Promise resolving with an array of table names - * - */ -export async function getMapTableIds( - mapView: __esri.MapView, - onlyShowUpdatableTables = false -): Promise { - // TODO...seems like its the same as the hash...see if I can remove this - let tableIds = []; - await mapView.when(() => { - tableIds = mapView.map.allTables.toArray().reduce((prev, cur) => { - prev.push(cur.id); - return prev; - }, []); - }); - - return onlyShowUpdatableTables ? await tableIds.reduce(async (prev, cur) => { - const table = await getLayerOrTable(mapView, cur); - await table.when(() => { - if (table.editingEnabled && table.capabilities.operations.supportsUpdate) { - prev.push(cur); + prev[cur] = tableHash[cur]; } }); return prev; - }, []) : tableIds; + }, {}) : tableHash; } /** diff --git a/stencil.config.ts b/stencil.config.ts index e356b9fb3..4acb1c096 100644 --- a/stencil.config.ts +++ b/stencil.config.ts @@ -9,7 +9,7 @@ import { generatePreactTypes } from "./support/preact"; export const config: Config = { namespace: 'solutions-components', globalStyle: 'src/assets/styles/styles.scss', - minifyJs: true, + minifyJs: false, minifyCss: true, sourceMap: false, outputTargets: [ From 05a90101787deb5051292aed18bb139a9255c123 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Mon, 18 Sep 2023 14:14:01 -0600 Subject: [PATCH 229/406] remove redundant layer fetch --- src/components/layer-table/layer-table.tsx | 24 +++++++++++----------- 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/src/components/layer-table/layer-table.tsx b/src/components/layer-table/layer-table.tsx index 5d214654f..f2d222569 100644 --- a/src/components/layer-table/layer-table.tsx +++ b/src/components/layer-table/layer-table.tsx @@ -18,7 +18,7 @@ import { Component, Element, Event, EventEmitter, Host, h, Listen, Method, Prop, import LayerTable_T9n from "../../assets/t9n/layer-table/resources.json"; import { loadModules } from "../../utils/loadModules"; import { getLocaleComponentStrings } from "../../utils/locale"; -import { getLayerOrTable, getMapLayerHash, goToSelection } from "../../utils/mapViewUtils"; +import { getLayerOrTable, goToSelection } from "../../utils/mapViewUtils"; import { queryFeaturesByID, queryAllIds } from "../../utils/queryUtils"; import * as downloadUtils from "../../utils/downloadUtils"; import { IExportInfos, ILayerInfo, IMapClick, IMapInfo } from "../../utils/interfaces"; @@ -155,6 +155,11 @@ export class LayerTable { */ protected _deleteEnabled: boolean; + /** + * IHandle: The map click handle + */ + protected _mapClickHandle: IHandle; + /** * esri/core/reactiveUtils: https://developers.arcgis.com/javascript/latest/api-reference/esri-core-reactiveUtils.html */ @@ -191,18 +196,16 @@ export class LayerTable { */ @Watch("mapView") async mapViewWatchHandler(): Promise { - this._fetchingData = true; - const mapLayerHash = await getMapLayerHash(this.mapView, this.onlyShowUpdatableLayers); - const mapLayerIds = Object.keys(mapLayerHash); - this._layer = await getLayerOrTable(this.mapView, mapLayerIds[0]); - this.reactiveUtils.on( + if (this._mapClickHandle) { + this._mapClickHandle.remove(); + } + this._mapClickHandle = this.reactiveUtils.on( () => this.mapView, "click", (event) => { void this._mapClicked(event); } ); - this._fetchingData = false; } /** @@ -304,9 +307,6 @@ export class LayerTable { * Renders the component. */ render() { - if (!this._layer) { - return null; - } const tableNodeClass = this._fetchingData ? "display-none" : ""; const loadingClass = this._fetchingData ? "" : "display-none"; const total = this._allIds.length.toString(); @@ -968,11 +968,11 @@ export class LayerTable { evt: CustomEvent ): Promise { const id: string = evt.detail[0]; - if (id !== this._layer.id || this._allIds.length === 0) { + if (id !== this._layer?.id || this._allIds.length === 0) { this._fetchingData = true; const columnTemplates = this._getColumnTemplates(id); this._layer = await getLayerOrTable(this.mapView, id); - this._allIds = await queryAllIds(this._layer) + this._allIds = await queryAllIds(this._layer); if (!this._table) { await this._getTable(this._tableNode, columnTemplates); } else if (columnTemplates) { From 580cfef50d4bed7b9b4b03ee1a6415b81723dfcd Mon Sep 17 00:00:00 2001 From: John Hauck Date: Tue, 19 Sep 2023 11:25:52 -0600 Subject: [PATCH 230/406] prevent maps without editable layers from loading --- src/assets/t9n/map-picker/resources.json | 3 + src/assets/t9n/map-picker/resources_en.json | 3 + .../crowdsource-manager.tsx | 2 +- src/components/crowdsource-manager/readme.md | 4 +- src/components/map-card/readme.md | 2 + src/components/map-picker/map-picker.css | 6 +- src/components/map-picker/map-picker.tsx | 129 +++++++++++++++++- src/components/map-picker/readme.md | 4 + src/utils/interfaces.ts | 1 + src/utils/mapViewUtils.ts | 12 +- 10 files changed, 153 insertions(+), 13 deletions(-) create mode 100644 src/assets/t9n/map-picker/resources.json create mode 100644 src/assets/t9n/map-picker/resources_en.json diff --git a/src/assets/t9n/map-picker/resources.json b/src/assets/t9n/map-picker/resources.json new file mode 100644 index 000000000..8ea612670 --- /dev/null +++ b/src/assets/t9n/map-picker/resources.json @@ -0,0 +1,3 @@ +{ + "enableEditUpdate": "One or more layer must support editing with the 'Update' capablility." +} diff --git a/src/assets/t9n/map-picker/resources_en.json b/src/assets/t9n/map-picker/resources_en.json new file mode 100644 index 000000000..8ea612670 --- /dev/null +++ b/src/assets/t9n/map-picker/resources_en.json @@ -0,0 +1,3 @@ +{ + "enableEditUpdate": "One or more layer must support editing with the 'Update' capablility." +} diff --git a/src/components/crowdsource-manager/crowdsource-manager.tsx b/src/components/crowdsource-manager/crowdsource-manager.tsx index 452e406e2..f78502a2e 100644 --- a/src/components/crowdsource-manager/crowdsource-manager.tsx +++ b/src/components/crowdsource-manager/crowdsource-manager.tsx @@ -71,7 +71,7 @@ export class CrowdsourceManager { /** * boolean: When true only editable layers that support the update capability will be available */ - @Prop() onlyShowUpdatableLayers = false; + @Prop() onlyShowUpdatableLayers = true; /** * ISearchConfiguration: Configuration details for the Search widget diff --git a/src/components/crowdsource-manager/readme.md b/src/components/crowdsource-manager/readme.md index 9c25ad139..09a39af45 100644 --- a/src/components/crowdsource-manager/readme.md +++ b/src/components/crowdsource-manager/readme.md @@ -14,7 +14,7 @@ | `enableInlineEdit` | `enable-inline-edit` | boolean: when true edits can be applied directly within the table | `boolean` | `false` | | `hideMap` | `hide-map` | boolean: when true no map is displayed for the app | `boolean` | `false` | | `mapInfos` | -- | IMapInfo[]: array of map infos (name and id) | `IMapInfo[]` | `[]` | -| `onlyShowUpdatableLayers` | `only-show-updatable-layers` | boolean: When true only editable layers that support the update capability will be available | `boolean` | `false` | +| `onlyShowUpdatableLayers` | `only-show-updatable-layers` | boolean: When true only editable layers that support the update capability will be available | `boolean` | `true` | | `searchConfiguration` | -- | ISearchConfiguration: Configuration details for the Search widget | `ISearchConfiguration` | `undefined` | | `showNewestFirst` | `show-newest-first` | boolean: when true the table will be sorted by objectid in descending order by default | `boolean` | `true` | | `zoomAndScrollToSelected` | `zoom-and-scroll-to-selected` | boolean: When true the selected feature will zoomed to in the map and the row will be scrolled to within the table | `boolean` | `false` | @@ -62,6 +62,8 @@ graph TD; map-picker --> calcite-action-bar map-picker --> calcite-list map-picker --> calcite-list-item + map-picker --> calcite-icon + map-picker --> calcite-tooltip calcite-button --> calcite-loader calcite-button --> calcite-icon calcite-action-bar --> calcite-action-group diff --git a/src/components/map-card/readme.md b/src/components/map-card/readme.md index 8660203ae..f1e7e66aa 100644 --- a/src/components/map-card/readme.md +++ b/src/components/map-card/readme.md @@ -41,6 +41,8 @@ graph TD; map-picker --> calcite-action-bar map-picker --> calcite-list map-picker --> calcite-list-item + map-picker --> calcite-icon + map-picker --> calcite-tooltip calcite-button --> calcite-loader calcite-button --> calcite-icon calcite-action-bar --> calcite-action-group diff --git a/src/components/map-picker/map-picker.css b/src/components/map-picker/map-picker.css index 472f68a94..9c82f2d0d 100644 --- a/src/components/map-picker/map-picker.css +++ b/src/components/map-picker/map-picker.css @@ -48,7 +48,7 @@ flex-direction: column; overflow: hidden; animation: calcite-scrim-fade-in var(--calcite-internal-animation-timing-medium) ease-in-out; - background-color: var(--calcite-scrim-background); + background-color: var(--calcite-ui-background); z-index: 1000; width: 100%; height: fit-content; @@ -61,3 +61,7 @@ .action-bar-color { background-color: var(--calcite-ui-border-3) !important; } + +.align-center { + align-items: center; +} diff --git a/src/components/map-picker/map-picker.tsx b/src/components/map-picker/map-picker.tsx index bebc0348d..5ae693ded 100644 --- a/src/components/map-picker/map-picker.tsx +++ b/src/components/map-picker/map-picker.tsx @@ -15,6 +15,9 @@ */ import { Component, Element, Event, EventEmitter, Host, h, Prop, State, VNode, Watch } from '@stencil/core'; +import MapPicker_T9n from "../../assets/t9n/map-picker/resources.json"; +import { loadModules } from "../../utils/loadModules"; +import { getLocaleComponentStrings } from "../../utils/locale"; import { IMapInfo } from "../../utils/interfaces"; @Component({ @@ -53,6 +56,12 @@ export class MapPicker { */ @State() _mapListExpanded = false; + /** + * Contains the translations for this component. + * All UI strings should be defined here. + */ + @State() _translations: typeof MapPicker_T9n; + /** * IMapInfo: id and name of the map to display */ @@ -64,6 +73,11 @@ export class MapPicker { // //-------------------------------------------------------------------------- + /** + * esri/WebMap: https://developers.arcgis.com/javascript/latest/api-reference/esri-WebMap.html + */ + protected WebMap: typeof import("esri/WebMap"); + /** * HTMLCalciteListElement: this list of map names */ @@ -95,9 +109,9 @@ export class MapPicker { * Called each time the mapInfos prop is changed. */ @Watch("mapInfos") - mapInfosWatchHandler(v: IMapInfo[], oldV: IMapInfo[]): void { + async mapInfosWatchHandler(v: IMapInfo[], oldV: IMapInfo[]): Promise { if (v && JSON.stringify(v) !== JSON.stringify(oldV)) { - this.mapInfoChange.emit(v[0]); + await this._validateMaps(v); } } @@ -124,6 +138,14 @@ export class MapPicker { // //-------------------------------------------------------------------------- + /** + * StencilJS: Called once just after the component is first connected to the DOM. + */ + async componentWillLoad(): Promise { + await this._getTranslations(); + await this._initModules(); + } + /** * Renders the component. */ @@ -148,9 +170,10 @@ export class MapPicker { /** * Called once after the component has loaded */ - componentDidLoad() { + async componentDidLoad() { const webMapInfo = this.mapInfos && this.mapInfos.length > 0 ? this.mapInfos[0] : undefined; if (webMapInfo) { + await this._validateMaps(this.mapInfos); this._webMapSelected(webMapInfo); } } @@ -161,6 +184,64 @@ export class MapPicker { // //-------------------------------------------------------------------------- + /** + * Load esri javascript api modules + * + * @returns Promise resolving when function is done + * + * @protected + */ + protected async _initModules(): Promise { + const [WebMap] = await loadModules([ + "esri/WebMap" + ]); + this.WebMap = WebMap; + } + + /** + * Validate that each map has at least one layer that has editing enabled and supports the Update edit actions + * + * @param mapInfos IMapInfo[] the current list of maps info + * + * @returns Promise resolving when function is done + * + * @protected + */ + protected async _validateMaps( + mapInfos: IMapInfo[] + ): Promise { + let mapInfoEmitted = false; + for (let i = 0; i < mapInfos.length; i++) { + const mapInfo = mapInfos[i]; + const webmap = new this.WebMap({ + portalItem: { + id: mapInfo.id + } + }); + await webmap.load(); + + let layerEditable = false; + await webmap.when(); + const layers = webmap.layers.toArray(); + for (let ii = 0; ii < layers.length; ii++) { + const layer: any = layers[ii]; + await layer.load(); + await layer.when(); + layerEditable = layerEditable || layer?.editingEnabled && layer?.capabilities?.operations?.supportsUpdate; + if (layerEditable) { + if (!mapInfoEmitted) { + // Emit the first mapInfo that is found that has at least one editable layer + // this allows the rest of the UI to load while the other maps are checked + this._webMapSelected(mapInfo); + mapInfoEmitted = true; + } + break; + } + } + mapInfo._hasValidLayers = layerEditable; + } + } + /** * Get a calcite action group for the map list * Actions do not support multiple icons so this uses a block @@ -216,17 +297,44 @@ export class MapPicker { show: boolean ): VNode { const listClass = show ? "map-list" : "display-none"; + const loading = this.mapInfos[this.mapInfos.length -1]._hasValidLayers === undefined; return (
- this._list = el} selectionAppearance="border"> + this._list = el} + selectionAppearance="border" + > {this.mapInfos.map(mapInfo => { - return ( + return mapInfo._hasValidLayers ? ( this._webMapSelected(mapInfo)} selected={mapInfo.id === this._loadedId} value={mapInfo.id} /> + ) : ( +
+ this._webMapSelected(mapInfo)} + selected={mapInfo.id === this._loadedId} + value={mapInfo.id} + > + + + + {this._translations.enableEditUpdate} + +
) })}
@@ -261,4 +369,15 @@ export class MapPicker { this._mapListExpanded = !this._mapListExpanded; } + /** + * Fetches the component's translations + * + * @returns Promise when complete + * @protected + */ + protected async _getTranslations(): Promise { + const messages = await getLocaleComponentStrings(this.el); + this._translations = messages[0] as typeof MapPicker_T9n; + } + } diff --git a/src/components/map-picker/readme.md b/src/components/map-picker/readme.md index bab10d1cf..12ccc48bb 100644 --- a/src/components/map-picker/readme.md +++ b/src/components/map-picker/readme.md @@ -31,6 +31,8 @@ - calcite-action-bar - calcite-list - calcite-list-item +- calcite-icon +- calcite-tooltip ### Graph ```mermaid @@ -39,6 +41,8 @@ graph TD; map-picker --> calcite-action-bar map-picker --> calcite-list map-picker --> calcite-list-item + map-picker --> calcite-icon + map-picker --> calcite-tooltip calcite-button --> calcite-loader calcite-button --> calcite-icon calcite-action-bar --> calcite-action-group diff --git a/src/utils/interfaces.ts b/src/utils/interfaces.ts index b169458c7..3f4d2321e 100644 --- a/src/utils/interfaces.ts +++ b/src/utils/interfaces.ts @@ -444,6 +444,7 @@ export interface IMapInfo { searchConfiguration?: ISearchConfiguration; filters?: any[]; // TODO generate an interface for this once we know how it will be passed in layerInfos?: ILayerInfo[]; + _hasValidLayers?: boolean; } export interface ILayerInfo { diff --git a/src/utils/mapViewUtils.ts b/src/utils/mapViewUtils.ts index 9be4c3ec6..af5fc1d32 100644 --- a/src/utils/mapViewUtils.ts +++ b/src/utils/mapViewUtils.ts @@ -74,11 +74,13 @@ export async function getMapTableHash( return onlyShowUpdatableTables ? Object.keys(tableHash).reduce(async (prev, cur) => { const item = await getLayerOrTable(mapView, cur); - await item.when(() => { - if (item.editingEnabled && item.capabilities.operations.supportsUpdate) { - prev[cur] = tableHash[cur]; - } - }); + // This .when never seems to resolve...just checking editingEnabled until this is figured out + //await item.when(() => { + //if (item.editingEnabled && item.capabilities.operations.supportsUpdate) { + if (item.editingEnabled) { + prev[cur] = tableHash[cur]; + } + //}); return prev; }, {}) : tableHash; } From b646eec836e860bd803a7e370c557e18f1fba22a Mon Sep 17 00:00:00 2001 From: John Hauck Date: Tue, 19 Sep 2023 11:31:33 -0600 Subject: [PATCH 231/406] update zoom icon --- src/components/layer-table/layer-table.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/layer-table/layer-table.tsx b/src/components/layer-table/layer-table.tsx index f2d222569..089ed3b72 100644 --- a/src/components/layer-table/layer-table.tsx +++ b/src/components/layer-table/layer-table.tsx @@ -395,7 +395,7 @@ export class LayerTable {
{ this._getAction( - "magnifying-glass", + "zoom-to-object", this._translations.zoom, () => this._zoom(), !featuresSelected From 778581b12c4442438d524b06021b2fef15964d48 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Tue, 19 Sep 2023 12:31:12 -0600 Subject: [PATCH 232/406] add tables --- src/components/map-picker/map-picker.tsx | 2 +- src/utils/mapViewUtils.ts | 9 +++------ 2 files changed, 4 insertions(+), 7 deletions(-) diff --git a/src/components/map-picker/map-picker.tsx b/src/components/map-picker/map-picker.tsx index 5ae693ded..8fdc924ae 100644 --- a/src/components/map-picker/map-picker.tsx +++ b/src/components/map-picker/map-picker.tsx @@ -222,7 +222,7 @@ export class MapPicker { let layerEditable = false; await webmap.when(); - const layers = webmap.layers.toArray(); + const layers = webmap.layers.toArray().concat(webmap.allTables.toArray()); for (let ii = 0; ii < layers.length; ii++) { const layer: any = layers[ii]; await layer.load(); diff --git a/src/utils/mapViewUtils.ts b/src/utils/mapViewUtils.ts index af5fc1d32..ad9aa202b 100644 --- a/src/utils/mapViewUtils.ts +++ b/src/utils/mapViewUtils.ts @@ -74,13 +74,10 @@ export async function getMapTableHash( return onlyShowUpdatableTables ? Object.keys(tableHash).reduce(async (prev, cur) => { const item = await getLayerOrTable(mapView, cur); - // This .when never seems to resolve...just checking editingEnabled until this is figured out - //await item.when(() => { - //if (item.editingEnabled && item.capabilities.operations.supportsUpdate) { - if (item.editingEnabled) { + await item.load(); + if (item.editingEnabled && item.capabilities.operations.supportsUpdate) { prev[cur] = tableHash[cur]; - } - //}); + }; return prev; }, {}) : tableHash; } From 811c383c003a88be459d07cfaedc3dbfe752a555 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Tue, 19 Sep 2023 12:39:31 -0600 Subject: [PATCH 233/406] update string --- src/assets/t9n/layer-table/resources.json | 2 +- src/assets/t9n/layer-table/resources_en.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/assets/t9n/layer-table/resources.json b/src/assets/t9n/layer-table/resources.json index 70cb7c58d..023ef54e9 100644 --- a/src/assets/t9n/layer-table/resources.json +++ b/src/assets/t9n/layer-table/resources.json @@ -17,6 +17,6 @@ "deleteDisabled": "Delete Disabled", "editMultipleDisabled": "Edit Multiple Disabled", "showAll": "Show all", - "recordsSelected": "{{total}} records, {{selected}} selected", + "recordsSelected": "Total: {{total}} | Selection: {{selected}}", "cancel": "Cancel" } diff --git a/src/assets/t9n/layer-table/resources_en.json b/src/assets/t9n/layer-table/resources_en.json index 70cb7c58d..023ef54e9 100644 --- a/src/assets/t9n/layer-table/resources_en.json +++ b/src/assets/t9n/layer-table/resources_en.json @@ -17,6 +17,6 @@ "deleteDisabled": "Delete Disabled", "editMultipleDisabled": "Edit Multiple Disabled", "showAll": "Show all", - "recordsSelected": "{{total}} records, {{selected}} selected", + "recordsSelected": "Total: {{total}} | Selection: {{selected}}", "cancel": "Cancel" } From 63699c640a43db70fb8c7a6547f6acfd5f290808 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Tue, 19 Sep 2023 12:42:58 -0600 Subject: [PATCH 234/406] reset stencil config --- stencil.config.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/stencil.config.ts b/stencil.config.ts index 4acb1c096..e356b9fb3 100644 --- a/stencil.config.ts +++ b/stencil.config.ts @@ -9,7 +9,7 @@ import { generatePreactTypes } from "./support/preact"; export const config: Config = { namespace: 'solutions-components', globalStyle: 'src/assets/styles/styles.scss', - minifyJs: false, + minifyJs: true, minifyCss: true, sourceMap: false, outputTargets: [ From fa47a8a7c3e98331e1ef1528119b0b9e3feb3e14 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Tue, 19 Sep 2023 14:53:39 -0600 Subject: [PATCH 235/406] emit event for layer edits --- src/components.d.ts | 4 ++++ src/components/edit-card/edit-card.tsx | 14 ++++++++++++++ src/components/edit-card/readme.md | 7 ++++--- src/components/layer-table/layer-table.tsx | 9 +++++++++ 4 files changed, 31 insertions(+), 3 deletions(-) diff --git a/src/components.d.ts b/src/components.d.ts index 887396fd4..2565edc1e 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -1255,6 +1255,10 @@ declare namespace LocalJSX { * Emitted on demand when the Editor widget should be closed */ "onCloseEdit"?: (event: EditCardCustomEvent) => void; + /** + * Emitted on demand when edits are completed on current edit layer + */ + "onEditsComplete"?: (event: EditCardCustomEvent) => void; /** * When true the component is displayed */ diff --git a/src/components/edit-card/edit-card.tsx b/src/components/edit-card/edit-card.tsx index 456fa5f42..e8020c908 100644 --- a/src/components/edit-card/edit-card.tsx +++ b/src/components/edit-card/edit-card.tsx @@ -91,6 +91,11 @@ export class EditCard { */ protected _editHandle: __esri.WatchHandle; + /** + * esri/core/Accessor: https://developers.arcgis.com/javascript/latest/api-reference/esri-core-Accessor.html#WatchHandle + */ + protected _layerEditHandle: __esri.WatchHandle; + /** * esri/widgets/Editor: https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Editor.html * The Editor constructor @@ -181,6 +186,11 @@ export class EditCard { */ @Event() closeEdit: EventEmitter; + /** + * Emitted on demand when edits are completed on current edit layer + */ + @Event() editsComplete: EventEmitter; + //-------------------------------------------------------------------------- // // Functions (lifecycle) @@ -211,6 +221,10 @@ export class EditCard { } if (this.graphics?.length > 0 && this.graphics[0]?.layer) { this._layer = this.graphics[0].layer as __esri.FeatureLayer; + if (this._layerEditHandle) { + this._layerEditHandle.remove(); + } + this._layerEditHandle = this._layer.on("edits", () => this.editsComplete.emit()); } } diff --git a/src/components/edit-card/readme.md b/src/components/edit-card/readme.md index 867f1c32f..cd756148e 100644 --- a/src/components/edit-card/readme.md +++ b/src/components/edit-card/readme.md @@ -17,9 +17,10 @@ ## Events -| Event | Description | Type | -| ----------- | --------------------------------------------------------- | ------------------- | -| `closeEdit` | Emitted on demand when the Editor widget should be closed | `CustomEvent` | +| Event | Description | Type | +| --------------- | ---------------------------------------------------------------- | ------------------- | +| `closeEdit` | Emitted on demand when the Editor widget should be closed | `CustomEvent` | +| `editsComplete` | Emitted on demand when edits are completed on current edit layer | `CustomEvent` | ## Dependencies diff --git a/src/components/layer-table/layer-table.tsx b/src/components/layer-table/layer-table.tsx index 089ed3b72..7c1c1d0d4 100644 --- a/src/components/layer-table/layer-table.tsx +++ b/src/components/layer-table/layer-table.tsx @@ -287,6 +287,15 @@ export class LayerTable { } } + /** + * Refresh the table when edits are completed + * + */ + @Listen("editsComplete", { target: "window" }) + editsComplete(): void { + this._refresh(); + } + //-------------------------------------------------------------------------- // // Functions (lifecycle) From 9859e1237162607c46a4b681949f01ac46087a8f Mon Sep 17 00:00:00 2001 From: John Hauck Date: Tue, 19 Sep 2023 14:54:33 -0600 Subject: [PATCH 236/406] update string --- src/assets/t9n/map-picker/resources.json | 2 +- src/assets/t9n/map-picker/resources_en.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/assets/t9n/map-picker/resources.json b/src/assets/t9n/map-picker/resources.json index 8ea612670..8b58bddc2 100644 --- a/src/assets/t9n/map-picker/resources.json +++ b/src/assets/t9n/map-picker/resources.json @@ -1,3 +1,3 @@ { - "enableEditUpdate": "One or more layer must support editing with the 'Update' capablility." + "enableEditUpdate": "One or more layers must support editing with the 'Update' capability." } diff --git a/src/assets/t9n/map-picker/resources_en.json b/src/assets/t9n/map-picker/resources_en.json index 8ea612670..8b58bddc2 100644 --- a/src/assets/t9n/map-picker/resources_en.json +++ b/src/assets/t9n/map-picker/resources_en.json @@ -1,3 +1,3 @@ { - "enableEditUpdate": "One or more layer must support editing with the 'Update' capablility." + "enableEditUpdate": "One or more layers must support editing with the 'Update' capability." } From 3ee6aab74e51f83f35f04e0f0f7449b116c17ac1 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Tue, 19 Sep 2023 15:01:47 -0600 Subject: [PATCH 237/406] remove map validation --- src/components/crowdsource-manager/readme.md | 2 - src/components/map-card/readme.md | 2 - src/components/map-picker/map-picker.tsx | 119 +------------------ src/components/map-picker/readme.md | 4 - 4 files changed, 2 insertions(+), 125 deletions(-) diff --git a/src/components/crowdsource-manager/readme.md b/src/components/crowdsource-manager/readme.md index 09a39af45..d8aefe27f 100644 --- a/src/components/crowdsource-manager/readme.md +++ b/src/components/crowdsource-manager/readme.md @@ -62,8 +62,6 @@ graph TD; map-picker --> calcite-action-bar map-picker --> calcite-list map-picker --> calcite-list-item - map-picker --> calcite-icon - map-picker --> calcite-tooltip calcite-button --> calcite-loader calcite-button --> calcite-icon calcite-action-bar --> calcite-action-group diff --git a/src/components/map-card/readme.md b/src/components/map-card/readme.md index f1e7e66aa..8660203ae 100644 --- a/src/components/map-card/readme.md +++ b/src/components/map-card/readme.md @@ -41,8 +41,6 @@ graph TD; map-picker --> calcite-action-bar map-picker --> calcite-list map-picker --> calcite-list-item - map-picker --> calcite-icon - map-picker --> calcite-tooltip calcite-button --> calcite-loader calcite-button --> calcite-icon calcite-action-bar --> calcite-action-group diff --git a/src/components/map-picker/map-picker.tsx b/src/components/map-picker/map-picker.tsx index 8fdc924ae..11e2c5c83 100644 --- a/src/components/map-picker/map-picker.tsx +++ b/src/components/map-picker/map-picker.tsx @@ -15,9 +15,6 @@ */ import { Component, Element, Event, EventEmitter, Host, h, Prop, State, VNode, Watch } from '@stencil/core'; -import MapPicker_T9n from "../../assets/t9n/map-picker/resources.json"; -import { loadModules } from "../../utils/loadModules"; -import { getLocaleComponentStrings } from "../../utils/locale"; import { IMapInfo } from "../../utils/interfaces"; @Component({ @@ -56,12 +53,6 @@ export class MapPicker { */ @State() _mapListExpanded = false; - /** - * Contains the translations for this component. - * All UI strings should be defined here. - */ - @State() _translations: typeof MapPicker_T9n; - /** * IMapInfo: id and name of the map to display */ @@ -73,11 +64,6 @@ export class MapPicker { // //-------------------------------------------------------------------------- - /** - * esri/WebMap: https://developers.arcgis.com/javascript/latest/api-reference/esri-WebMap.html - */ - protected WebMap: typeof import("esri/WebMap"); - /** * HTMLCalciteListElement: this list of map names */ @@ -111,7 +97,7 @@ export class MapPicker { @Watch("mapInfos") async mapInfosWatchHandler(v: IMapInfo[], oldV: IMapInfo[]): Promise { if (v && JSON.stringify(v) !== JSON.stringify(oldV)) { - await this._validateMaps(v); + this._webMapSelected(v[0]); } } @@ -138,14 +124,6 @@ export class MapPicker { // //-------------------------------------------------------------------------- - /** - * StencilJS: Called once just after the component is first connected to the DOM. - */ - async componentWillLoad(): Promise { - await this._getTranslations(); - await this._initModules(); - } - /** * Renders the component. */ @@ -173,7 +151,6 @@ export class MapPicker { async componentDidLoad() { const webMapInfo = this.mapInfos && this.mapInfos.length > 0 ? this.mapInfos[0] : undefined; if (webMapInfo) { - await this._validateMaps(this.mapInfos); this._webMapSelected(webMapInfo); } } @@ -184,64 +161,6 @@ export class MapPicker { // //-------------------------------------------------------------------------- - /** - * Load esri javascript api modules - * - * @returns Promise resolving when function is done - * - * @protected - */ - protected async _initModules(): Promise { - const [WebMap] = await loadModules([ - "esri/WebMap" - ]); - this.WebMap = WebMap; - } - - /** - * Validate that each map has at least one layer that has editing enabled and supports the Update edit actions - * - * @param mapInfos IMapInfo[] the current list of maps info - * - * @returns Promise resolving when function is done - * - * @protected - */ - protected async _validateMaps( - mapInfos: IMapInfo[] - ): Promise { - let mapInfoEmitted = false; - for (let i = 0; i < mapInfos.length; i++) { - const mapInfo = mapInfos[i]; - const webmap = new this.WebMap({ - portalItem: { - id: mapInfo.id - } - }); - await webmap.load(); - - let layerEditable = false; - await webmap.when(); - const layers = webmap.layers.toArray().concat(webmap.allTables.toArray()); - for (let ii = 0; ii < layers.length; ii++) { - const layer: any = layers[ii]; - await layer.load(); - await layer.when(); - layerEditable = layerEditable || layer?.editingEnabled && layer?.capabilities?.operations?.supportsUpdate; - if (layerEditable) { - if (!mapInfoEmitted) { - // Emit the first mapInfo that is found that has at least one editable layer - // this allows the rest of the UI to load while the other maps are checked - this._webMapSelected(mapInfo); - mapInfoEmitted = true; - } - break; - } - } - mapInfo._hasValidLayers = layerEditable; - } - } - /** * Get a calcite action group for the map list * Actions do not support multiple icons so this uses a block @@ -297,44 +216,21 @@ export class MapPicker { show: boolean ): VNode { const listClass = show ? "map-list" : "display-none"; - const loading = this.mapInfos[this.mapInfos.length -1]._hasValidLayers === undefined; return (
this._list = el} selectionAppearance="border" > {this.mapInfos.map(mapInfo => { - return mapInfo._hasValidLayers ? ( + return ( this._webMapSelected(mapInfo)} selected={mapInfo.id === this._loadedId} value={mapInfo.id} /> - ) : ( -
- this._webMapSelected(mapInfo)} - selected={mapInfo.id === this._loadedId} - value={mapInfo.id} - > - - - - {this._translations.enableEditUpdate} - -
) })}
@@ -369,15 +265,4 @@ export class MapPicker { this._mapListExpanded = !this._mapListExpanded; } - /** - * Fetches the component's translations - * - * @returns Promise when complete - * @protected - */ - protected async _getTranslations(): Promise { - const messages = await getLocaleComponentStrings(this.el); - this._translations = messages[0] as typeof MapPicker_T9n; - } - } diff --git a/src/components/map-picker/readme.md b/src/components/map-picker/readme.md index 12ccc48bb..bab10d1cf 100644 --- a/src/components/map-picker/readme.md +++ b/src/components/map-picker/readme.md @@ -31,8 +31,6 @@ - calcite-action-bar - calcite-list - calcite-list-item -- calcite-icon -- calcite-tooltip ### Graph ```mermaid @@ -41,8 +39,6 @@ graph TD; map-picker --> calcite-action-bar map-picker --> calcite-list map-picker --> calcite-list-item - map-picker --> calcite-icon - map-picker --> calcite-tooltip calcite-button --> calcite-loader calcite-button --> calcite-icon calcite-action-bar --> calcite-action-group From 0871818b6fd67d9b7b8bd86126a5ff33b90f9a62 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Tue, 19 Sep 2023 15:04:47 -0600 Subject: [PATCH 238/406] remove t9n files --- src/assets/t9n/map-picker/resources.json | 3 --- src/assets/t9n/map-picker/resources_en.json | 3 --- 2 files changed, 6 deletions(-) delete mode 100644 src/assets/t9n/map-picker/resources.json delete mode 100644 src/assets/t9n/map-picker/resources_en.json diff --git a/src/assets/t9n/map-picker/resources.json b/src/assets/t9n/map-picker/resources.json deleted file mode 100644 index 8b58bddc2..000000000 --- a/src/assets/t9n/map-picker/resources.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "enableEditUpdate": "One or more layers must support editing with the 'Update' capability." -} diff --git a/src/assets/t9n/map-picker/resources_en.json b/src/assets/t9n/map-picker/resources_en.json deleted file mode 100644 index 8b58bddc2..000000000 --- a/src/assets/t9n/map-picker/resources_en.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "enableEditUpdate": "One or more layers must support editing with the 'Update' capability." -} From 0dff215f14e408c9361f40b9f20529f7045dc63a Mon Sep 17 00:00:00 2001 From: John Hauck Date: Wed, 20 Sep 2023 09:52:37 -0600 Subject: [PATCH 239/406] keep track of editable/non-editable layers --- .../map-layer-picker/map-layer-picker.tsx | 12 +++++----- src/utils/interfaces.ts | 7 +++++- src/utils/mapViewUtils.ts | 22 +++++++++++++------ 3 files changed, 27 insertions(+), 14 deletions(-) diff --git a/src/components/map-layer-picker/map-layer-picker.tsx b/src/components/map-layer-picker/map-layer-picker.tsx index 0b556d189..1158bd197 100644 --- a/src/components/map-layer-picker/map-layer-picker.tsx +++ b/src/components/map-layer-picker/map-layer-picker.tsx @@ -211,8 +211,8 @@ export class MapLayerPicker { this._layerElement.value = id; } else if (this.type === "dropdown") { this.selectedName = Object.keys(this._layerNameHash).indexOf(id) > -1 ? - this._layerNameHash[id] : Object.keys(this._tableNameHash).indexOf(id) > -1 ? - this._tableNameHash[id] : ""; + this._layerNameHash[id].name : Object.keys(this._tableNameHash).indexOf(id) > -1 ? + this._tableNameHash[id].name : ""; } } } @@ -321,7 +321,7 @@ export class MapLayerPicker { id: string, itemType: "layer" | "table" ): VNode { - const name = itemType === "layer" ? this._layerNameHash[id] : this._tableNameHash[id]; + const name = itemType === "layer" ? this._layerNameHash[id].name : this._tableNameHash[id].name; return this.type === "combobox" ? () : this.type === "select" ? () : ( @@ -340,7 +340,7 @@ export class MapLayerPicker { id: string, type: "layer" | "table" ): void { - this.selectedName = type === "layer" ? this._layerNameHash[id] : this._tableNameHash[id]; + this.selectedName = type === "layer" ? this._layerNameHash[id].name : this._tableNameHash[id].name; this.selectedIds = [id]; this.layerSelectionChange.emit(this.selectedIds); } @@ -381,7 +381,7 @@ export class MapLayerPicker { protected _validLayer( id: string ): boolean { - const name = this._layerNameHash[id]; + const name = this._layerNameHash[id]?.name; return name && state.managedLayers.indexOf(name) < 0 && (this.enabledLayerIds.length > 0 ? this.enabledLayerIds.indexOf(id) > -1 : true); } @@ -394,7 +394,7 @@ export class MapLayerPicker { protected _validTable( id: string ): boolean { - const name = this._tableNameHash[id]; + const name = this._tableNameHash[id]?.name; const validName = name && this.showTables; return validName ? state.managedTables.indexOf(name) < 0 && (this.enabledTableIds.length > 0 ? this.enabledTableIds.indexOf(id) > -1 : true) : validName; diff --git a/src/utils/interfaces.ts b/src/utils/interfaces.ts index 3f4d2321e..0456d2fdd 100644 --- a/src/utils/interfaces.ts +++ b/src/utils/interfaces.ts @@ -165,7 +165,12 @@ export interface IValueChange { * Layer or table id and title key value pair */ export interface IMapItemHash { - [key: string]: string; + [key: string]: ILayerHashInfo; +} + +export interface ILayerHashInfo { + name: string; + supportsUpdate: boolean; } /** diff --git a/src/utils/mapViewUtils.ts b/src/utils/mapViewUtils.ts index ad9aa202b..20eb73049 100644 --- a/src/utils/mapViewUtils.ts +++ b/src/utils/mapViewUtils.ts @@ -34,7 +34,10 @@ export async function getMapLayerHash( await mapView.when(() => { layerHash = mapView.map.allLayers.toArray().reduce((prev, cur) => { if (cur.type === "feature") { - prev[cur.id] = cur.title; + prev[cur.id] = { + name: cur.title, + supportsUpdate: undefined + }; } return prev; }, {}); @@ -43,9 +46,10 @@ export async function getMapLayerHash( return onlyShowUpdatableLayers ? Object.keys(layerHash).reduce(async (prev, cur) => { const layer = await getLayerOrTable(mapView, cur); await layer.when(() => { - if (layer.editingEnabled && layer.capabilities.operations.supportsUpdate) { - prev[cur] = layerHash[cur]; - } + prev[cur] = { + name: layerHash[cur].name, + supportsUpdate: layer.editingEnabled && layer.capabilities.operations.supportsUpdate + }; }); return prev; }, {}) : layerHash; @@ -67,7 +71,10 @@ export async function getMapTableHash( let tableHash; await mapView.when(() => { tableHash = mapView.map.allTables.toArray().reduce((prev, cur) => { - prev[cur.id] = cur.title; + prev[cur.id] = { + name: cur.title, + supportsUpdate: undefined + }; return prev; }, {}); }); @@ -75,8 +82,9 @@ export async function getMapTableHash( return onlyShowUpdatableTables ? Object.keys(tableHash).reduce(async (prev, cur) => { const item = await getLayerOrTable(mapView, cur); await item.load(); - if (item.editingEnabled && item.capabilities.operations.supportsUpdate) { - prev[cur] = tableHash[cur]; + prev[cur] = { + name: tableHash[cur].name, + supportsUpdate: item.editingEnabled && item.capabilities.operations.supportsUpdate }; return prev; }, {}) : tableHash; From a535d38cd8774f572d1419e25c93b4127beeb9f0 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Wed, 20 Sep 2023 11:58:59 -0600 Subject: [PATCH 240/406] handle no layers found --- .../t9n/map-layer-picker/resources.json | 3 + .../t9n/map-layer-picker/resources_en.json | 3 + src/components.d.ts | 4 + src/components/crowdsource-manager/readme.md | 1 + src/components/layer-table/layer-table.tsx | 58 ++++++---- src/components/layer-table/readme.md | 2 + .../map-layer-picker/map-layer-picker.css | 4 + .../map-layer-picker/map-layer-picker.tsx | 101 +++++++++++++++--- src/components/map-layer-picker/readme.md | 10 +- src/components/map-select-tools/readme.md | 2 + src/components/public-notification/readme.md | 3 +- src/components/refine-selection/readme.md | 2 + 12 files changed, 154 insertions(+), 39 deletions(-) create mode 100644 src/assets/t9n/map-layer-picker/resources.json create mode 100644 src/assets/t9n/map-layer-picker/resources_en.json diff --git a/src/assets/t9n/map-layer-picker/resources.json b/src/assets/t9n/map-layer-picker/resources.json new file mode 100644 index 000000000..13cde91e7 --- /dev/null +++ b/src/assets/t9n/map-layer-picker/resources.json @@ -0,0 +1,3 @@ +{ + "noLayersFound": "No valid layers found" +} diff --git a/src/assets/t9n/map-layer-picker/resources_en.json b/src/assets/t9n/map-layer-picker/resources_en.json new file mode 100644 index 000000000..7d8ca89c2 --- /dev/null +++ b/src/assets/t9n/map-layer-picker/resources_en.json @@ -0,0 +1,3 @@ +{ + "noLayersFound": "No valid layers found" +} diff --git a/src/components.d.ts b/src/components.d.ts index 2565edc1e..85a53a314 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -1453,6 +1453,10 @@ declare namespace LocalJSX { * Emitted on demand when a layer is selected */ "onLayerSelectionChange"?: (event: MapLayerPickerCustomEvent) => void; + /** + * Emitted on demand when no valid layers are found + */ + "onNoLayersFound"?: (event: MapLayerPickerCustomEvent) => void; /** * boolean: When true only editable layers that support the update capability will be available */ diff --git a/src/components/crowdsource-manager/readme.md b/src/components/crowdsource-manager/readme.md index d8aefe27f..075dbe28d 100644 --- a/src/components/crowdsource-manager/readme.md +++ b/src/components/crowdsource-manager/readme.md @@ -112,6 +112,7 @@ graph TD; layer-table --> calcite-alert layer-table --> calcite-modal layer-table --> calcite-icon + map-layer-picker --> calcite-notice map-layer-picker --> calcite-select map-layer-picker --> calcite-combobox map-layer-picker --> calcite-dropdown diff --git a/src/components/layer-table/layer-table.tsx b/src/components/layer-table/layer-table.tsx index 7c1c1d0d4..4919b1c6a 100644 --- a/src/components/layer-table/layer-table.tsx +++ b/src/components/layer-table/layer-table.tsx @@ -296,6 +296,17 @@ export class LayerTable { this._refresh(); } + /** + * Refresh the table when edits are completed + * + */ + @Listen("noLayersFound", { target: "window" }) + noLayersFound(): void { + this._layer = undefined; + this._allIds = []; + this._clearSelection(); + } + //-------------------------------------------------------------------------- // // Functions (lifecycle) @@ -435,7 +446,7 @@ export class LayerTable { ) } - + this._table.activeSortOrders, (sortOrders) => { - this._sortActive = (sortOrders.length > 0 && sortOrders[0]?.direction === "asc" || sortOrders[0]?.direction === "desc") || - sortOrders[0]?.direction === null && sortOrders[0]?.fieldName === this._layer.objectIdField; + this._sortActive = this._layer ? (sortOrders.length > 0 && sortOrders[0]?.direction === "asc" || sortOrders[0]?.direction === "desc") || + sortOrders[0]?.direction === null && sortOrders[0]?.fieldName === this._layer.objectIdField : false; }); }); } @@ -649,26 +662,31 @@ export class LayerTable { * @returns void */ protected async _resetTable(): Promise { - if (this._layer && this._table) { + if (this._table) { this._clearSelection(); this._allIds = []; this.featureSelectionChange.emit(this._selectedIndexes); - await this._layer.when(() => { - const columnTemplates = this._getColumnTemplates(this._layer.id); - this._table.layer = this._layer; - this._table.tableTemplate.columnTemplates = columnTemplates; - this._table.view = this.mapView; - this._checkEditEnabled(); - this._table.editingEnabled = this._editEnabled && this.enableInlineEdit; - }); + if (this._layer) { + await this._layer.when(() => { + const columnTemplates = this._getColumnTemplates(this._layer.id); + this._table.layer = this._layer; + this._table.tableTemplate.columnTemplates = columnTemplates; + this._table.view = this.mapView; + this._checkEditEnabled(); + this._table.editingEnabled = this._editEnabled && this.enableInlineEdit; + }); - await this._table.when(() => { - this._table.clearSelectionFilter(); - }); + await this._table.when(() => { + this._table.clearSelectionFilter(); + }); - this._showOnlySelected = false; - this._sortActive = false; - await this._sortTable(); + this._showOnlySelected = false; + this._sortActive = false; + await this._sortTable(); + } else { + this._table.view = this.mapView; + this._table.layer = this._layer; + } } } diff --git a/src/components/layer-table/readme.md b/src/components/layer-table/readme.md index 722aa246e..411736eea 100644 --- a/src/components/layer-table/readme.md +++ b/src/components/layer-table/readme.md @@ -91,6 +91,7 @@ graph TD; calcite-action-bar --> calcite-action-group calcite-action-group --> calcite-action-menu calcite-action-group --> calcite-action + map-layer-picker --> calcite-notice map-layer-picker --> calcite-select map-layer-picker --> calcite-combobox map-layer-picker --> calcite-dropdown @@ -100,6 +101,7 @@ graph TD; map-layer-picker --> calcite-combobox-item map-layer-picker --> calcite-option map-layer-picker --> calcite-dropdown-item + calcite-notice --> calcite-icon calcite-select --> calcite-icon calcite-combobox --> calcite-chip calcite-combobox --> calcite-icon diff --git a/src/components/map-layer-picker/map-layer-picker.css b/src/components/map-layer-picker/map-layer-picker.css index 5e148b384..71ff6dbb2 100644 --- a/src/components/map-layer-picker/map-layer-picker.css +++ b/src/components/map-layer-picker/map-layer-picker.css @@ -40,3 +40,7 @@ .max-width-350 { max-width: 350px; } + +.height-100 { + height: 100%; +} diff --git a/src/components/map-layer-picker/map-layer-picker.tsx b/src/components/map-layer-picker/map-layer-picker.tsx index 1158bd197..915b92214 100644 --- a/src/components/map-layer-picker/map-layer-picker.tsx +++ b/src/components/map-layer-picker/map-layer-picker.tsx @@ -15,6 +15,8 @@ */ import { Component, Element, Event, EventEmitter, Host, h, Prop, State, VNode, Watch } from "@stencil/core"; +import MapLayerPicker_T9n from "../../assets/t9n/map-layer-picker/resources.json"; +import { getLocaleComponentStrings } from "../../utils/locale"; import { getMapLayerHash, getMapTableHash } from "../../utils/mapViewUtils"; import state from "../../utils/publicNotificationStore"; import { IMapItemHash } from "../../utils/interfaces"; @@ -96,16 +98,27 @@ export class MapLayerPicker { // //-------------------------------------------------------------------------- + /** + * boolean: when true the map contains valid layers and all expected tools will be enabled + */ + @State() _hasValidLayers = true; + /** * string[]: list of layer and table (if showTables is true) ids from the map */ @State() ids: string[] = []; /** - * string: lcurrent layer name to display when using "dropdown" type + * string: current layer name to display when using "dropdown" type */ @State() selectedName = ""; + /** + * Contains the translations for this component. + * All UI strings should be defined here. + */ + @State() _translations: typeof MapLayerPicker_T9n; + //-------------------------------------------------------------------------- // // Properties (protected) @@ -140,10 +153,12 @@ export class MapLayerPicker { @Watch("mapView") async mapViewWatchHandler(): Promise { await this._setLayers(); - const hasLayers = Object.keys(this._layerNameHash).length > 0; - const hasTables = Object.keys(this._tableNameHash).length > 0 && this.showTables; - if (hasLayers || hasTables) { - this._setSelectedLayer(this.ids[0], hasLayers ? "layer" : "table"); + if (this.ids.length > 0) { + this._hasValidLayers = true; + this._setSelectedLayer(this.ids[0]); + } else { + this._hasValidLayers = false; + this.noLayersFound.emit(); } } @@ -159,6 +174,12 @@ export class MapLayerPicker { // //-------------------------------------------------------------------------- + /** + * Emitted on demand when no valid layers are found + * + */ + @Event() noLayersFound: EventEmitter; + /** * Emitted on demand when a layer is selected * @@ -175,6 +196,7 @@ export class MapLayerPicker { * StencilJS: Called once just after the component is first connected to the DOM. */ async componentWillLoad(): Promise { + await this._getTranslations(); await this._setLayers(); if (this.ids.length > 0 || this.selectedIds.length === 1) { this.layerSelectionChange.emit( @@ -192,7 +214,7 @@ export class MapLayerPicker {
{ - this.type === "combobox" ? this._getCombobox() : + !this._hasValidLayers ? this._getInvalidPlaceholder() : this.type === "combobox" ? this._getCombobox() : this.type === "select" ? this._getSelect() : this._getDropdown() }
@@ -223,6 +245,21 @@ export class MapLayerPicker { // //-------------------------------------------------------------------------- + /** + * Create a notice to inform the user that no layers were found + * + * @returns Calcite Notice component with the message + */ + protected _getInvalidPlaceholder(): VNode { + return ( +
+ +
{this._translations.noLayersFound}
+
+
+ ); + } + /** * Create a list of layers from the map * @@ -321,12 +358,15 @@ export class MapLayerPicker { id: string, itemType: "layer" | "table" ): VNode { - const name = itemType === "layer" ? this._layerNameHash[id].name : this._tableNameHash[id].name; - return this.type === "combobox" ? () : - this.type === "select" ? () : + const item = itemType === "layer" ? this._layerNameHash[id] : this._tableNameHash[id]; + const disabled = this.onlyShowUpdatableLayers ? !item.supportsUpdate : false; + const name = item.name; + return this.type === "combobox" ? () : + this.type === "select" ? () : ( void this._setSelectedLayer(id, itemType)} + disabled={disabled} + onClick={disabled ? undefined : () => void this._setSelectedLayer(id)} > {name} @@ -337,10 +377,12 @@ export class MapLayerPicker { * Store the layer name based on the user selection */ _setSelectedLayer( - id: string, - type: "layer" | "table" + id: string ): void { - this.selectedName = type === "layer" ? this._layerNameHash[id].name : this._tableNameHash[id].name; + const item = Object.keys(this._layerNameHash).indexOf(id) > -1 ? + this._layerNameHash[id] : Object.keys(this._tableNameHash).indexOf(id) > -1 ? + this._tableNameHash[id] : undefined; + this.selectedName = item?.name; this.selectedIds = [id]; this.layerSelectionChange.emit(this.selectedIds); } @@ -353,8 +395,10 @@ export class MapLayerPicker { async _setLayers(): Promise { if (this.mapView) { await this._initLayerTableHash(); - const mapLayerIds = Object.keys(this._layerNameHash); - const mapTableIds = this.showTables ? Object.keys(this._tableNameHash) : []; + const mapLayerIds = this.onlyShowUpdatableLayers ? + this._getEditableIds(this._layerNameHash) : Object.keys(this._layerNameHash); + const mapTableIds = this.showTables ? this.onlyShowUpdatableLayers ? + this._getEditableIds(this._tableNameHash) : Object.keys(this._tableNameHash) : []; this.ids = [ ...mapLayerIds.filter(n => this.enabledLayerIds?.length > 0 ? this.enabledLayerIds.indexOf(n) > -1 : true), ...mapTableIds.filter(n => this.enabledTableIds?.length > 0 ? this.enabledTableIds.indexOf(n) > -1 : true), @@ -362,6 +406,22 @@ export class MapLayerPicker { } } + /** + * Fetch the ids of all layers that support edits with the update capability + * + * @returns array of layer ids + */ + protected _getEditableIds( + hash: IMapItemHash + ): string[] { + return Object.keys(hash).reduce((prev, cur) => { + if (hash[cur].supportsUpdate) { + prev.push(cur); + } + return prev; + }, []); + } + /** * Create a layer id:title hash for layer name display * @@ -412,4 +472,15 @@ export class MapLayerPicker { this.layerSelectionChange.emit(this.selectedIds); } } + + /** + * Fetches the component's translations + * + * @returns Promise when complete + * @protected + */ + protected async _getTranslations(): Promise { + const messages = await getLocaleComponentStrings(this.el); + this._translations = messages[0] as typeof MapLayerPicker_T9n; + } } diff --git a/src/components/map-layer-picker/readme.md b/src/components/map-layer-picker/readme.md index c7da0c6a1..982c9ead5 100644 --- a/src/components/map-layer-picker/readme.md +++ b/src/components/map-layer-picker/readme.md @@ -23,9 +23,10 @@ ## Events -| Event | Description | Type | -| ---------------------- | ------------------------------------------ | ----------------------- | -| `layerSelectionChange` | Emitted on demand when a layer is selected | `CustomEvent` | +| Event | Description | Type | +| ---------------------- | ------------------------------------------------ | ----------------------- | +| `layerSelectionChange` | Emitted on demand when a layer is selected | `CustomEvent` | +| `noLayersFound` | Emitted on demand when no valid layers are found | `CustomEvent` | ## Dependencies @@ -38,6 +39,7 @@ ### Depends on +- calcite-notice - calcite-select - calcite-combobox - calcite-dropdown @@ -51,6 +53,7 @@ ### Graph ```mermaid graph TD; + map-layer-picker --> calcite-notice map-layer-picker --> calcite-select map-layer-picker --> calcite-combobox map-layer-picker --> calcite-dropdown @@ -60,6 +63,7 @@ graph TD; map-layer-picker --> calcite-combobox-item map-layer-picker --> calcite-option map-layer-picker --> calcite-dropdown-item + calcite-notice --> calcite-icon calcite-select --> calcite-icon calcite-combobox --> calcite-chip calcite-combobox --> calcite-icon diff --git a/src/components/map-select-tools/readme.md b/src/components/map-select-tools/readme.md index b647ac721..590999e3e 100644 --- a/src/components/map-select-tools/readme.md +++ b/src/components/map-select-tools/readme.md @@ -104,6 +104,7 @@ graph TD; calcite-input --> calcite-icon calcite-select --> calcite-icon calcite-slider --> calcite-graph + map-layer-picker --> calcite-notice map-layer-picker --> calcite-select map-layer-picker --> calcite-combobox map-layer-picker --> calcite-dropdown @@ -113,6 +114,7 @@ graph TD; map-layer-picker --> calcite-combobox-item map-layer-picker --> calcite-option map-layer-picker --> calcite-dropdown-item + calcite-notice --> calcite-icon calcite-combobox --> calcite-chip calcite-combobox --> calcite-icon calcite-chip --> calcite-icon diff --git a/src/components/public-notification/readme.md b/src/components/public-notification/readme.md index 4bc990298..6323ab208 100644 --- a/src/components/public-notification/readme.md +++ b/src/components/public-notification/readme.md @@ -129,6 +129,7 @@ graph TD; buffer-tools --> calcite-slider calcite-select --> calcite-icon calcite-slider --> calcite-graph + map-layer-picker --> calcite-notice map-layer-picker --> calcite-select map-layer-picker --> calcite-combobox map-layer-picker --> calcite-dropdown @@ -138,6 +139,7 @@ graph TD; map-layer-picker --> calcite-combobox-item map-layer-picker --> calcite-option map-layer-picker --> calcite-dropdown-item + calcite-notice --> calcite-icon calcite-combobox --> calcite-chip calcite-combobox --> calcite-icon calcite-chip --> calcite-icon @@ -158,7 +160,6 @@ graph TD; refine-selection --> map-draw-tools refine-selection --> calcite-list refine-selection --> calcite-list-item - calcite-notice --> calcite-icon style public-notification fill:#f9f,stroke:#333,stroke-width:4px ``` diff --git a/src/components/refine-selection/readme.md b/src/components/refine-selection/readme.md index 5c310ba5e..c41d68631 100644 --- a/src/components/refine-selection/readme.md +++ b/src/components/refine-selection/readme.md @@ -56,6 +56,7 @@ graph TD; refine-selection --> map-draw-tools refine-selection --> calcite-list refine-selection --> calcite-list-item + map-layer-picker --> calcite-notice map-layer-picker --> calcite-select map-layer-picker --> calcite-combobox map-layer-picker --> calcite-dropdown @@ -65,6 +66,7 @@ graph TD; map-layer-picker --> calcite-combobox-item map-layer-picker --> calcite-option map-layer-picker --> calcite-dropdown-item + calcite-notice --> calcite-icon calcite-select --> calcite-icon calcite-combobox --> calcite-chip calcite-combobox --> calcite-icon From 4dce1ce456087779fcc51378e67caf1f206e0a30 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Wed, 20 Sep 2023 12:32:35 -0600 Subject: [PATCH 241/406] add tooltip and update icon --- src/assets/t9n/map-layer-picker/resources.json | 3 ++- src/assets/t9n/map-layer-picker/resources_en.json | 3 ++- src/components/crowdsource-manager/readme.md | 1 + src/components/layer-table/readme.md | 1 + .../map-layer-picker/map-layer-picker.tsx | 15 ++++++++++++++- src/components/map-layer-picker/readme.md | 2 ++ src/components/map-select-tools/readme.md | 1 + src/components/public-notification/readme.md | 1 + src/components/refine-selection/readme.md | 1 + 9 files changed, 25 insertions(+), 3 deletions(-) diff --git a/src/assets/t9n/map-layer-picker/resources.json b/src/assets/t9n/map-layer-picker/resources.json index 13cde91e7..551d17f15 100644 --- a/src/assets/t9n/map-layer-picker/resources.json +++ b/src/assets/t9n/map-layer-picker/resources.json @@ -1,3 +1,4 @@ { - "noLayersFound": "No valid layers found" + "noLayersFound": "No valid layers found", + "enableEditUpdate": "One or more layers must support editing with the 'Update' capability." } diff --git a/src/assets/t9n/map-layer-picker/resources_en.json b/src/assets/t9n/map-layer-picker/resources_en.json index 7d8ca89c2..551d17f15 100644 --- a/src/assets/t9n/map-layer-picker/resources_en.json +++ b/src/assets/t9n/map-layer-picker/resources_en.json @@ -1,3 +1,4 @@ { - "noLayersFound": "No valid layers found" + "noLayersFound": "No valid layers found", + "enableEditUpdate": "One or more layers must support editing with the 'Update' capability." } diff --git a/src/components/crowdsource-manager/readme.md b/src/components/crowdsource-manager/readme.md index 075dbe28d..59ed1a641 100644 --- a/src/components/crowdsource-manager/readme.md +++ b/src/components/crowdsource-manager/readme.md @@ -113,6 +113,7 @@ graph TD; layer-table --> calcite-modal layer-table --> calcite-icon map-layer-picker --> calcite-notice + map-layer-picker --> calcite-tooltip map-layer-picker --> calcite-select map-layer-picker --> calcite-combobox map-layer-picker --> calcite-dropdown diff --git a/src/components/layer-table/readme.md b/src/components/layer-table/readme.md index 411736eea..119c1d2cf 100644 --- a/src/components/layer-table/readme.md +++ b/src/components/layer-table/readme.md @@ -92,6 +92,7 @@ graph TD; calcite-action-group --> calcite-action-menu calcite-action-group --> calcite-action map-layer-picker --> calcite-notice + map-layer-picker --> calcite-tooltip map-layer-picker --> calcite-select map-layer-picker --> calcite-combobox map-layer-picker --> calcite-dropdown diff --git a/src/components/map-layer-picker/map-layer-picker.tsx b/src/components/map-layer-picker/map-layer-picker.tsx index 915b92214..9128866ed 100644 --- a/src/components/map-layer-picker/map-layer-picker.tsx +++ b/src/components/map-layer-picker/map-layer-picker.tsx @@ -253,9 +253,22 @@ export class MapLayerPicker { protected _getInvalidPlaceholder(): VNode { return (
- +
{this._translations.noLayersFound}
+ + {this._translations.enableEditUpdate} +
); } diff --git a/src/components/map-layer-picker/readme.md b/src/components/map-layer-picker/readme.md index 982c9ead5..c4d218b52 100644 --- a/src/components/map-layer-picker/readme.md +++ b/src/components/map-layer-picker/readme.md @@ -40,6 +40,7 @@ ### Depends on - calcite-notice +- calcite-tooltip - calcite-select - calcite-combobox - calcite-dropdown @@ -54,6 +55,7 @@ ```mermaid graph TD; map-layer-picker --> calcite-notice + map-layer-picker --> calcite-tooltip map-layer-picker --> calcite-select map-layer-picker --> calcite-combobox map-layer-picker --> calcite-dropdown diff --git a/src/components/map-select-tools/readme.md b/src/components/map-select-tools/readme.md index 590999e3e..59d8bf331 100644 --- a/src/components/map-select-tools/readme.md +++ b/src/components/map-select-tools/readme.md @@ -105,6 +105,7 @@ graph TD; calcite-select --> calcite-icon calcite-slider --> calcite-graph map-layer-picker --> calcite-notice + map-layer-picker --> calcite-tooltip map-layer-picker --> calcite-select map-layer-picker --> calcite-combobox map-layer-picker --> calcite-dropdown diff --git a/src/components/public-notification/readme.md b/src/components/public-notification/readme.md index 6323ab208..96c362f4f 100644 --- a/src/components/public-notification/readme.md +++ b/src/components/public-notification/readme.md @@ -130,6 +130,7 @@ graph TD; calcite-select --> calcite-icon calcite-slider --> calcite-graph map-layer-picker --> calcite-notice + map-layer-picker --> calcite-tooltip map-layer-picker --> calcite-select map-layer-picker --> calcite-combobox map-layer-picker --> calcite-dropdown diff --git a/src/components/refine-selection/readme.md b/src/components/refine-selection/readme.md index c41d68631..926d8381e 100644 --- a/src/components/refine-selection/readme.md +++ b/src/components/refine-selection/readme.md @@ -57,6 +57,7 @@ graph TD; refine-selection --> calcite-list refine-selection --> calcite-list-item map-layer-picker --> calcite-notice + map-layer-picker --> calcite-tooltip map-layer-picker --> calcite-select map-layer-picker --> calcite-combobox map-layer-picker --> calcite-dropdown From 5102d870af9535fa3a09cd6637efae85ddd40afd Mon Sep 17 00:00:00 2001 From: John Hauck Date: Wed, 20 Sep 2023 14:15:07 -0600 Subject: [PATCH 242/406] add enable widgets props --- src/components.d.ts | 148 +++++++++++++++++- .../basemap-gallery/basemap-gallery.tsx | 6 + src/components/basemap-gallery/readme.md | 1 + .../crowdsource-manager.tsx | 47 +++++- src/components/crowdsource-manager/readme.md | 29 ++-- src/components/map-card/map-card.tsx | 32 +++- src/components/map-card/readme.md | 13 +- src/components/map-tools/map-tools.tsx | 55 ++++++- src/components/map-tools/readme.md | 15 +- src/utils/interfaces.ts | 5 + 10 files changed, 320 insertions(+), 31 deletions(-) diff --git a/src/components.d.ts b/src/components.d.ts index 85a53a314..b1eb8825b 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -5,12 +5,16 @@ * It contains typing information for all components that exist in this project. */ import { HTMLStencilElement, JSXBase } from "@stencil/core/internal"; -import { DistanceUnit, EDrawMode, ELayoutMode, IExportInfos, IInventoryItem, IMapChange, IMapInfo, ISearchConfiguration, ISelectionSet, ISketchGraphicsChange, ISolutionSpatialReferenceInfo, ISpatialRefRepresentation, IValueChange } from "./utils/interfaces"; +import { DistanceUnit, EDrawMode, ELayoutMode, IBasemapConfig, IExportInfos, IInventoryItem, IMapChange, IMapInfo, ISearchConfiguration, ISelectionSet, ISketchGraphicsChange, ISolutionSpatialReferenceInfo, ISpatialRefRepresentation, IValueChange } from "./utils/interfaces"; import { UserSession } from "@esri/solution-common"; -export { DistanceUnit, EDrawMode, ELayoutMode, IExportInfos, IInventoryItem, IMapChange, IMapInfo, ISearchConfiguration, ISelectionSet, ISketchGraphicsChange, ISolutionSpatialReferenceInfo, ISpatialRefRepresentation, IValueChange } from "./utils/interfaces"; +export { DistanceUnit, EDrawMode, ELayoutMode, IBasemapConfig, IExportInfos, IInventoryItem, IMapChange, IMapInfo, ISearchConfiguration, ISelectionSet, ISketchGraphicsChange, ISolutionSpatialReferenceInfo, ISpatialRefRepresentation, IValueChange } from "./utils/interfaces"; export { UserSession } from "@esri/solution-common"; export namespace Components { interface BasemapGallery { + /** + * IBasemapConfig: List of any basemaps to filter out from the basemap widget + */ + "basemapConfig": IBasemapConfig; /** * esri/widgets/BasemapGallery: https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-BasemapGallery.html BasemapGallery instance */ @@ -70,6 +74,10 @@ export namespace Components { "zoomAndScrollToSelected": boolean; } interface CrowdsourceManager { + /** + * IBasemapConfig: List of any basemaps to filter out from the basemap widget + */ + "basemapConfig": IBasemapConfig; /** * boolean: when true the grid will display like the previous manager app with the table across the top */ @@ -78,10 +86,34 @@ export namespace Components { * boolean: when true the layer table will auto refresh the data */ "enableAutoRefresh": boolean; + /** + * boolean: when true the basemap widget will be available + */ + "enableBasemap": boolean; + /** + * boolean: when true the fullscreen widget will be available + */ + "enableFullscreen": boolean; + /** + * boolean: when true the home widget will be available + */ + "enableHome": boolean; /** * boolean: when true edits can be applied directly within the table */ "enableInlineEdit": boolean; + /** + * boolean: when true the legend widget will be available + */ + "enableLegend": boolean; + /** + * boolean: when true the search widget will be available + */ + "enableSearch": boolean; + /** + * boolean: when true the zoom widget will be available + */ + "enableZoom": boolean; /** * boolean: when true no map is displayed for the app */ @@ -230,6 +262,26 @@ export namespace Components { interface ListItem { } interface MapCard { + /** + * IBasemapConfig: List of any basemaps to filter out from the basemap widget + */ + "basemapConfig": IBasemapConfig; + /** + * boolean: when true the basemap widget will be available + */ + "enableBasemap": boolean; + /** + * boolean: when true the fullscreen widget will be available + */ + "enableFullscreen": boolean; + /** + * boolean: when true the legend widget will be available + */ + "enableLegend": boolean; + /** + * boolean: when true the search widget will be available + */ + "enableSearch": boolean; /** * IMapInfo[]: array of map infos (name and id) */ @@ -470,6 +522,26 @@ export namespace Components { "sketchPolygonSymbol": __esri.SimpleFillSymbol; } interface MapTools { + /** + * IBasemapConfig: List of any basemaps to filter out from the basemap widget + */ + "basemapConfig": IBasemapConfig; + /** + * boolean: when true the basemap widget will be available + */ + "enableBasemap": boolean; + /** + * boolean: when true the fullscreen widget will be available + */ + "enableFullscreen": boolean; + /** + * boolean: when true the legend widget will be available + */ + "enableLegend": boolean; + /** + * boolean: when true the search widget will be available + */ + "enableSearch": boolean; /** * "horizontal" | "vertical": used to control the orientation of the tools */ @@ -1122,6 +1194,10 @@ declare global { } declare namespace LocalJSX { interface BasemapGallery { + /** + * IBasemapConfig: List of any basemaps to filter out from the basemap widget + */ + "basemapConfig"?: IBasemapConfig; /** * esri/widgets/BasemapGallery: https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-BasemapGallery.html BasemapGallery instance */ @@ -1193,6 +1269,10 @@ declare namespace LocalJSX { "zoomAndScrollToSelected"?: boolean; } interface CrowdsourceManager { + /** + * IBasemapConfig: List of any basemaps to filter out from the basemap widget + */ + "basemapConfig"?: IBasemapConfig; /** * boolean: when true the grid will display like the previous manager app with the table across the top */ @@ -1201,10 +1281,34 @@ declare namespace LocalJSX { * boolean: when true the layer table will auto refresh the data */ "enableAutoRefresh"?: boolean; + /** + * boolean: when true the basemap widget will be available + */ + "enableBasemap"?: boolean; + /** + * boolean: when true the fullscreen widget will be available + */ + "enableFullscreen"?: boolean; + /** + * boolean: when true the home widget will be available + */ + "enableHome"?: boolean; /** * boolean: when true edits can be applied directly within the table */ "enableInlineEdit"?: boolean; + /** + * boolean: when true the legend widget will be available + */ + "enableLegend"?: boolean; + /** + * boolean: when true the search widget will be available + */ + "enableSearch"?: boolean; + /** + * boolean: when true the zoom widget will be available + */ + "enableZoom"?: boolean; /** * boolean: when true no map is displayed for the app */ @@ -1347,6 +1451,26 @@ declare namespace LocalJSX { interface ListItem { } interface MapCard { + /** + * IBasemapConfig: List of any basemaps to filter out from the basemap widget + */ + "basemapConfig"?: IBasemapConfig; + /** + * boolean: when true the basemap widget will be available + */ + "enableBasemap"?: boolean; + /** + * boolean: when true the fullscreen widget will be available + */ + "enableFullscreen"?: boolean; + /** + * boolean: when true the legend widget will be available + */ + "enableLegend"?: boolean; + /** + * boolean: when true the search widget will be available + */ + "enableSearch"?: boolean; /** * IMapInfo[]: array of map infos (name and id) */ @@ -1607,6 +1731,26 @@ declare namespace LocalJSX { "sketchPolygonSymbol"?: __esri.SimpleFillSymbol; } interface MapTools { + /** + * IBasemapConfig: List of any basemaps to filter out from the basemap widget + */ + "basemapConfig"?: IBasemapConfig; + /** + * boolean: when true the basemap widget will be available + */ + "enableBasemap"?: boolean; + /** + * boolean: when true the fullscreen widget will be available + */ + "enableFullscreen"?: boolean; + /** + * boolean: when true the legend widget will be available + */ + "enableLegend"?: boolean; + /** + * boolean: when true the search widget will be available + */ + "enableSearch"?: boolean; /** * "horizontal" | "vertical": used to control the orientation of the tools */ diff --git a/src/components/basemap-gallery/basemap-gallery.tsx b/src/components/basemap-gallery/basemap-gallery.tsx index a33c2b628..5deec94e9 100644 --- a/src/components/basemap-gallery/basemap-gallery.tsx +++ b/src/components/basemap-gallery/basemap-gallery.tsx @@ -16,6 +16,7 @@ import { Component, Element, Host, h, Prop, Watch } from '@stencil/core'; import { loadModules } from "../../utils/loadModules"; +import { IBasemapConfig } from '../../utils/interfaces'; @Component({ tag: 'basemap-gallery', @@ -42,6 +43,11 @@ export class BasemapGallery { */ @Prop() mapView: __esri.MapView; + /** + * IBasemapConfig: List of any basemaps to filter out from the basemap widget + */ + @Prop() basemapConfig: IBasemapConfig; + /** * esri/widgets/BasemapGallery: https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-BasemapGallery.html * diff --git a/src/components/basemap-gallery/readme.md b/src/components/basemap-gallery/readme.md index 081fef809..4d408b735 100644 --- a/src/components/basemap-gallery/readme.md +++ b/src/components/basemap-gallery/readme.md @@ -9,6 +9,7 @@ | Property | Attribute | Description | Type | Default | | --------------- | --------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------- | ----------- | +| `basemapConfig` | -- | IBasemapConfig: List of any basemaps to filter out from the basemap widget | `IBasemapConfig` | `undefined` | | `basemapWidget` | -- | esri/widgets/BasemapGallery: https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-BasemapGallery.html BasemapGallery instance | `BasemapGallery` | `undefined` | | `mapView` | -- | esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html | `MapView` | `undefined` | diff --git a/src/components/crowdsource-manager/crowdsource-manager.tsx b/src/components/crowdsource-manager/crowdsource-manager.tsx index f78502a2e..774ed255f 100644 --- a/src/components/crowdsource-manager/crowdsource-manager.tsx +++ b/src/components/crowdsource-manager/crowdsource-manager.tsx @@ -17,7 +17,7 @@ import { Component, Element, Host, h, Listen, Prop, State, VNode } from "@stencil/core"; import CrowdsourceManager_T9n from "../../assets/t9n/crowdsource-manager/resources.json"; import { getLocaleComponentStrings } from "../../utils/locale"; -import { ELayoutMode, IMapChange, IMapInfo, ISearchConfiguration } from "../../utils/interfaces"; +import { ELayoutMode, IBasemapConfig, IMapChange, IMapInfo, ISearchConfiguration } from "../../utils/interfaces"; @Component({ tag: "crowdsource-manager", @@ -48,11 +48,46 @@ export class CrowdsourceManager { */ @Prop() enableAutoRefresh = true; + /** + * boolean: when true the fullscreen widget will be available + */ + @Prop() enableFullscreen = true; + /** * boolean: when true edits can be applied directly within the table */ @Prop() enableInlineEdit = false; + /** + * boolean: when true the legend widget will be available + */ + @Prop() enableLegend = true; + + /** + * boolean: when true the search widget will be available + */ + @Prop() enableSearch = true; + + /** + * boolean: when true the home widget will be available + */ + @Prop() enableHome = true; + + /** + * boolean: when true the zoom widget will be available + */ + @Prop() enableZoom = true; + + /** + * boolean: when true the basemap widget will be available + */ + @Prop() enableBasemap = true; + + /** + * IBasemapConfig: List of any basemaps to filter out from the basemap widget + */ + @Prop() basemapConfig: IBasemapConfig; + /** * boolean: when true the table will be sorted by objectid in descending order by default */ @@ -413,7 +448,15 @@ export class CrowdsourceManager { const mapContainerClass = this.classicGrid && layoutMode === ELayoutMode.GRID ? "width-full" : this._expandPopup ? "height-50-px" : "adjusted-height-50"; return (
- +
); } diff --git a/src/components/crowdsource-manager/readme.md b/src/components/crowdsource-manager/readme.md index 59ed1a641..9537cb1f7 100644 --- a/src/components/crowdsource-manager/readme.md +++ b/src/components/crowdsource-manager/readme.md @@ -7,17 +7,24 @@ ## Properties -| Property | Attribute | Description | Type | Default | -| ------------------------- | ----------------------------- | ------------------------------------------------------------------------------------------------------------------ | ---------------------- | ----------- | -| `classicGrid` | `classic-grid` | boolean: when true the grid will display like the previous manager app with the table across the top | `boolean` | `false` | -| `enableAutoRefresh` | `enable-auto-refresh` | boolean: when true the layer table will auto refresh the data | `boolean` | `true` | -| `enableInlineEdit` | `enable-inline-edit` | boolean: when true edits can be applied directly within the table | `boolean` | `false` | -| `hideMap` | `hide-map` | boolean: when true no map is displayed for the app | `boolean` | `false` | -| `mapInfos` | -- | IMapInfo[]: array of map infos (name and id) | `IMapInfo[]` | `[]` | -| `onlyShowUpdatableLayers` | `only-show-updatable-layers` | boolean: When true only editable layers that support the update capability will be available | `boolean` | `true` | -| `searchConfiguration` | -- | ISearchConfiguration: Configuration details for the Search widget | `ISearchConfiguration` | `undefined` | -| `showNewestFirst` | `show-newest-first` | boolean: when true the table will be sorted by objectid in descending order by default | `boolean` | `true` | -| `zoomAndScrollToSelected` | `zoom-and-scroll-to-selected` | boolean: When true the selected feature will zoomed to in the map and the row will be scrolled to within the table | `boolean` | `false` | +| Property | Attribute | Description | Type | Default | +| ------------------------- | ----------------------------- | ------------------------------------------------------------------------------------------------------------------ | ---------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `basemapConfig` | -- | IBasemapConfig: List of any basemaps to filter out from the basemap widget | `IBasemapConfig` | `{ basemapIdsToFilter: [ "1c0b6073543c4ee7bb60fd251380a426", "a6da86abac924c6db5fc846bbd720085", "7677a8cc22b7463eac3321e810289ee1", "ddac8c0f133e4948ac99b16d7334626d", "3a88d9a6d52e4656b0f81e48ad579116", "bd32e66c073a454ba410d99af33f4ccd", "f9d4828215fa4a48935b2d7ffb19c168", "4b6c014c04b94ab799da1555f846ecfa", "59da30b422ec4280aea84d14de6f4e67", "b2930409e2514744a1a263f80d2b3ac9" ] }` | +| `classicGrid` | `classic-grid` | boolean: when true the grid will display like the previous manager app with the table across the top | `boolean` | `false` | +| `enableAutoRefresh` | `enable-auto-refresh` | boolean: when true the layer table will auto refresh the data | `boolean` | `true` | +| `enableBasemap` | `enable-basemap` | boolean: when true the basemap widget will be available | `boolean` | `true` | +| `enableFullscreen` | `enable-fullscreen` | boolean: when true the fullscreen widget will be available | `boolean` | `false` | +| `enableHome` | `enable-home` | boolean: when true the home widget will be available | `boolean` | `true` | +| `enableInlineEdit` | `enable-inline-edit` | boolean: when true edits can be applied directly within the table | `boolean` | `false` | +| `enableLegend` | `enable-legend` | boolean: when true the legend widget will be available | `boolean` | `false` | +| `enableSearch` | `enable-search` | boolean: when true the search widget will be available | `boolean` | `false` | +| `enableZoom` | `enable-zoom` | boolean: when true the zoom widget will be available | `boolean` | `true` | +| `hideMap` | `hide-map` | boolean: when true no map is displayed for the app | `boolean` | `false` | +| `mapInfos` | -- | IMapInfo[]: array of map infos (name and id) | `IMapInfo[]` | `[]` | +| `onlyShowUpdatableLayers` | `only-show-updatable-layers` | boolean: When true only editable layers that support the update capability will be available | `boolean` | `true` | +| `searchConfiguration` | -- | ISearchConfiguration: Configuration details for the Search widget | `ISearchConfiguration` | `undefined` | +| `showNewestFirst` | `show-newest-first` | boolean: when true the table will be sorted by objectid in descending order by default | `boolean` | `true` | +| `zoomAndScrollToSelected` | `zoom-and-scroll-to-selected` | boolean: When true the selected feature will zoomed to in the map and the row will be scrolled to within the table | `boolean` | `false` | ## Dependencies diff --git a/src/components/map-card/map-card.tsx b/src/components/map-card/map-card.tsx index 36acf9f46..57bd21599 100644 --- a/src/components/map-card/map-card.tsx +++ b/src/components/map-card/map-card.tsx @@ -16,7 +16,7 @@ import { Component, Element, Event, EventEmitter, Host, h, Listen, Prop, State } from "@stencil/core"; import { loadModules } from "../../utils/loadModules"; -import { IMapChange, IMapInfo, ISearchConfiguration } from "../../utils/interfaces"; +import { IBasemapConfig, IMapChange, IMapInfo, ISearchConfiguration } from "../../utils/interfaces"; // TODO navigation and accessability isn't right for the map list // tab does not go into the list when it's open @@ -45,6 +45,31 @@ export class MapCard { // //-------------------------------------------------------------------------- + /** + * boolean: when true the legend widget will be available + */ + @Prop() enableLegend: boolean; + + /** + * boolean: when true the fullscreen widget will be available + */ + @Prop() enableFullscreen: boolean; + + /** + * boolean: when true the search widget will be available + */ + @Prop() enableSearch: boolean; + + /** + * boolean: when true the basemap widget will be available + */ + @Prop() enableBasemap: boolean; + + /** + * IBasemapConfig: List of any basemaps to filter out from the basemap widget + */ + @Prop() basemapConfig: IBasemapConfig; + /** * IMapInfo[]: array of map infos (name and id) */ @@ -167,7 +192,12 @@ export class MapCard {
(this._mapDiv = el)}/> this._mapTools = el} searchConfiguration={this._searchConfiguration} diff --git a/src/components/map-card/readme.md b/src/components/map-card/readme.md index 8660203ae..ac25ccd26 100644 --- a/src/components/map-card/readme.md +++ b/src/components/map-card/readme.md @@ -7,10 +7,15 @@ ## Properties -| Property | Attribute | Description | Type | Default | -| ---------- | --------- | ------------------------------------------------------------------------------------------------------ | ------------ | ----------- | -| `mapInfos` | -- | IMapInfo[]: array of map infos (name and id) | `IMapInfo[]` | `[]` | -| `mapView` | -- | esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html | `MapView` | `undefined` | +| Property | Attribute | Description | Type | Default | +| ------------------ | ------------------- | ------------------------------------------------------------------------------------------------------ | ---------------- | ----------- | +| `basemapConfig` | -- | IBasemapConfig: List of any basemaps to filter out from the basemap widget | `IBasemapConfig` | `undefined` | +| `enableBasemap` | `enable-basemap` | boolean: when true the basemap widget will be available | `boolean` | `undefined` | +| `enableFullscreen` | `enable-fullscreen` | boolean: when true the fullscreen widget will be available | `boolean` | `undefined` | +| `enableLegend` | `enable-legend` | boolean: when true the legend widget will be available | `boolean` | `undefined` | +| `enableSearch` | `enable-search` | boolean: when true the search widget will be available | `boolean` | `undefined` | +| `mapInfos` | -- | IMapInfo[]: array of map infos (name and id) | `IMapInfo[]` | `[]` | +| `mapView` | -- | esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html | `MapView` | `undefined` | ## Events diff --git a/src/components/map-tools/map-tools.tsx b/src/components/map-tools/map-tools.tsx index 9bbe2c410..b4949209e 100644 --- a/src/components/map-tools/map-tools.tsx +++ b/src/components/map-tools/map-tools.tsx @@ -17,7 +17,7 @@ import { Component, Element, Host, h, Prop, State, VNode, Watch } from '@stencil/core'; import MapTools_T9n from "../../assets/t9n/map-tools/resources.json"; import { getLocaleComponentStrings } from "../../utils/locale"; -import { ISearchConfiguration } from "../../utils/interfaces"; +import { IBasemapConfig, ISearchConfiguration } from "../../utils/interfaces"; @Component({ tag: 'map-tools', @@ -39,6 +39,31 @@ export class MapTools { // //-------------------------------------------------------------------------- + /** + * boolean: when true the legend widget will be available + */ + @Prop() enableLegend: boolean; + + /** + * boolean: when true the fullscreen widget will be available + */ + @Prop() enableFullscreen: boolean; + + /** + * boolean: when true the search widget will be available + */ + @Prop() enableSearch: boolean; + + /** + * boolean: when true the basemap widget will be available + */ + @Prop() enableBasemap: boolean; + + /** + * IBasemapConfig: List of any basemaps to filter out from the basemap widget + */ + @Prop() basemapConfig: IBasemapConfig; + /** * "horizontal" | "vertical": used to control the orientation of the tools */ @@ -227,20 +252,38 @@ export class MapTools { const fullscreenIcon = this._showFullscreen ? "full-screen-exit" : "full-screen"; const fullscreenTip = this._showFullscreen ? this._translations.exitFullscreen : this._translations.enterFullscreen; const expandTip = this._showTools ? this._translations.collapse : this._translations.expand; + const containerClass = !this.enableBasemap && !this.enableFullscreen && !this.enableLegend && !this.enableSearch ? "display-none" : ""; return ( -
+
{this._getActionGroup(toggleIcon, false, expandTip, () => this._toggleTools())}
- {this._getActionGroup("legend", false, this._translations.legend, () => this._showLegend())} - {this._getActionGroup("magnifying-glass", false, this._translations.search, () => this._search())} - {this._getActionGroup(fullscreenIcon, false, fullscreenTip, () => this._expand())} - {this._getActionGroup("basemap", false, this._translations.basemap, () => this._toggleBasemapPicker())} + { + this.enableLegend ? + this._getActionGroup("legend", false, this._translations.legend, () => this._showLegend()) : + undefined + } + { + this.enableSearch ? + this._getActionGroup("magnifying-glass", false, this._translations.search, () => this._search()) : + undefined + } + { + this.enableFullscreen ? + this._getActionGroup(fullscreenIcon, false, fullscreenTip, () => this._expand()) : + undefined + } + { + this.enableBasemap ? + this._getActionGroup("basemap", false, this._translations.basemap, () => this._toggleBasemapPicker()) : + undefined + }
{this._basemapElement = el}} diff --git a/src/components/map-tools/readme.md b/src/components/map-tools/readme.md index 301efbde7..475ed2719 100644 --- a/src/components/map-tools/readme.md +++ b/src/components/map-tools/readme.md @@ -7,11 +7,16 @@ ## Properties -| Property | Attribute | Description | Type | Default | -| --------------------- | --------- | ------------------------------------------------------------------------------------------------------ | ---------------------------- | ------------ | -| `layout` | `layout` | "horizontal" \| "vertical": used to control the orientation of the tools | `"horizontal" \| "vertical"` | `"vertical"` | -| `mapView` | -- | esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html | `MapView` | `undefined` | -| `searchConfiguration` | -- | ISearchConfiguration: Configuration details for the Search widget | `ISearchConfiguration` | `undefined` | +| Property | Attribute | Description | Type | Default | +| --------------------- | ------------------- | ------------------------------------------------------------------------------------------------------ | ---------------------------- | ------------ | +| `basemapConfig` | -- | IBasemapConfig: List of any basemaps to filter out from the basemap widget | `IBasemapConfig` | `undefined` | +| `enableBasemap` | `enable-basemap` | boolean: when true the basemap widget will be available | `boolean` | `undefined` | +| `enableFullscreen` | `enable-fullscreen` | boolean: when true the fullscreen widget will be available | `boolean` | `undefined` | +| `enableLegend` | `enable-legend` | boolean: when true the legend widget will be available | `boolean` | `undefined` | +| `enableSearch` | `enable-search` | boolean: when true the search widget will be available | `boolean` | `undefined` | +| `layout` | `layout` | "horizontal" \| "vertical": used to control the orientation of the tools | `"horizontal" \| "vertical"` | `"vertical"` | +| `mapView` | -- | esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html | `MapView` | `undefined` | +| `searchConfiguration` | -- | ISearchConfiguration: Configuration details for the Search widget | `ISearchConfiguration` | `undefined` | ## Dependencies diff --git a/src/utils/interfaces.ts b/src/utils/interfaces.ts index 0456d2fdd..39d35b1d8 100644 --- a/src/utils/interfaces.ts +++ b/src/utils/interfaces.ts @@ -450,6 +450,7 @@ export interface IMapInfo { filters?: any[]; // TODO generate an interface for this once we know how it will be passed in layerInfos?: ILayerInfo[]; _hasValidLayers?: boolean; + visible: boolean; } export interface ILayerInfo { @@ -472,3 +473,7 @@ export interface IExportInfo { layerView?: __esri.FeatureLayerView; selectionSetNames: string[]; } + +export interface IBasemapConfig { + basemapIdsToFilter: string[]; +} From 86498c72dffd7b72cd75ce95a3d99d6f271a1293 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Wed, 20 Sep 2023 14:38:02 -0600 Subject: [PATCH 243/406] update value --- src/components/crowdsource-manager/crowdsource-manager.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/crowdsource-manager/crowdsource-manager.tsx b/src/components/crowdsource-manager/crowdsource-manager.tsx index 774ed255f..a351aaca4 100644 --- a/src/components/crowdsource-manager/crowdsource-manager.tsx +++ b/src/components/crowdsource-manager/crowdsource-manager.tsx @@ -453,7 +453,7 @@ export class CrowdsourceManager { class="width-full" enableBasemap={this.enableBasemap} enableFullscreen={this.enableFullscreen} - enableLegend={this.enableFullscreen} + enableLegend={this.enableLegend} enableSearch={this.enableSearch} mapInfos={this.mapInfos} /> From c7890e5b7fb3d61c8845b3ed9d2280045a713c79 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Wed, 20 Sep 2023 14:42:27 -0600 Subject: [PATCH 244/406] update version --- CHANGELOG.md | 5 ++- package-lock.json | 4 +-- package.json | 2 +- src/components/crowdsource-manager/readme.md | 36 ++++++++++---------- 4 files changed, 25 insertions(+), 22 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 6d407b304..c74b357bc 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,8 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm ## [Unreleased] +## [0.6.14] - Sept 20th 2023 + ## [0.6.13] - Sept 14th 2023 ## [0.6.12] - Sept 12th 2023 @@ -220,4 +222,5 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm [0.6.11]: https://github.com/Esri/solution.js/compare/v0.6.10...v0.6.11 "v0.6.11" [0.6.12]: https://github.com/Esri/solution.js/compare/v0.6.11...v0.6.12 "v0.6.12" [0.6.13]: https://github.com/Esri/solution.js/compare/v0.6.12...v0.6.13 "v0.6.13" -[Unreleased]: https://github.com/Esri/solution.js/compare/v0.6.13...HEAD "Unreleased Changes" +[0.6.14]: https://github.com/Esri/solution.js/compare/v0.6.13...v0.6.14 "v0.6.14" +[Unreleased]: https://github.com/Esri/solution.js/compare/v0.6.14...HEAD "Unreleased Changes" diff --git a/package-lock.json b/package-lock.json index 88a193b8f..6702c8383 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@esri/solutions-components", - "version": "0.6.13", + "version": "0.6.14", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@esri/solutions-components", - "version": "0.6.13", + "version": "0.6.14", "license": "Apache-2.0", "dependencies": { "@esri/arcgis-rest-auth": "^3.4.2", diff --git a/package.json b/package.json index 4b585edae..592154a59 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@esri/solutions-components", - "version": "0.6.13", + "version": "0.6.14", "description": "Web Components for Esri's Solutions Applications", "main": "dist/index.cjs.js", "module": "dist/index.js", diff --git a/src/components/crowdsource-manager/readme.md b/src/components/crowdsource-manager/readme.md index 9537cb1f7..ee616f80b 100644 --- a/src/components/crowdsource-manager/readme.md +++ b/src/components/crowdsource-manager/readme.md @@ -7,24 +7,24 @@ ## Properties -| Property | Attribute | Description | Type | Default | -| ------------------------- | ----------------------------- | ------------------------------------------------------------------------------------------------------------------ | ---------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `basemapConfig` | -- | IBasemapConfig: List of any basemaps to filter out from the basemap widget | `IBasemapConfig` | `{ basemapIdsToFilter: [ "1c0b6073543c4ee7bb60fd251380a426", "a6da86abac924c6db5fc846bbd720085", "7677a8cc22b7463eac3321e810289ee1", "ddac8c0f133e4948ac99b16d7334626d", "3a88d9a6d52e4656b0f81e48ad579116", "bd32e66c073a454ba410d99af33f4ccd", "f9d4828215fa4a48935b2d7ffb19c168", "4b6c014c04b94ab799da1555f846ecfa", "59da30b422ec4280aea84d14de6f4e67", "b2930409e2514744a1a263f80d2b3ac9" ] }` | -| `classicGrid` | `classic-grid` | boolean: when true the grid will display like the previous manager app with the table across the top | `boolean` | `false` | -| `enableAutoRefresh` | `enable-auto-refresh` | boolean: when true the layer table will auto refresh the data | `boolean` | `true` | -| `enableBasemap` | `enable-basemap` | boolean: when true the basemap widget will be available | `boolean` | `true` | -| `enableFullscreen` | `enable-fullscreen` | boolean: when true the fullscreen widget will be available | `boolean` | `false` | -| `enableHome` | `enable-home` | boolean: when true the home widget will be available | `boolean` | `true` | -| `enableInlineEdit` | `enable-inline-edit` | boolean: when true edits can be applied directly within the table | `boolean` | `false` | -| `enableLegend` | `enable-legend` | boolean: when true the legend widget will be available | `boolean` | `false` | -| `enableSearch` | `enable-search` | boolean: when true the search widget will be available | `boolean` | `false` | -| `enableZoom` | `enable-zoom` | boolean: when true the zoom widget will be available | `boolean` | `true` | -| `hideMap` | `hide-map` | boolean: when true no map is displayed for the app | `boolean` | `false` | -| `mapInfos` | -- | IMapInfo[]: array of map infos (name and id) | `IMapInfo[]` | `[]` | -| `onlyShowUpdatableLayers` | `only-show-updatable-layers` | boolean: When true only editable layers that support the update capability will be available | `boolean` | `true` | -| `searchConfiguration` | -- | ISearchConfiguration: Configuration details for the Search widget | `ISearchConfiguration` | `undefined` | -| `showNewestFirst` | `show-newest-first` | boolean: when true the table will be sorted by objectid in descending order by default | `boolean` | `true` | -| `zoomAndScrollToSelected` | `zoom-and-scroll-to-selected` | boolean: When true the selected feature will zoomed to in the map and the row will be scrolled to within the table | `boolean` | `false` | +| Property | Attribute | Description | Type | Default | +| ------------------------- | ----------------------------- | ------------------------------------------------------------------------------------------------------------------ | ---------------------- | ----------- | +| `basemapConfig` | -- | IBasemapConfig: List of any basemaps to filter out from the basemap widget | `IBasemapConfig` | `undefined` | +| `classicGrid` | `classic-grid` | boolean: when true the grid will display like the previous manager app with the table across the top | `boolean` | `false` | +| `enableAutoRefresh` | `enable-auto-refresh` | boolean: when true the layer table will auto refresh the data | `boolean` | `true` | +| `enableBasemap` | `enable-basemap` | boolean: when true the basemap widget will be available | `boolean` | `true` | +| `enableFullscreen` | `enable-fullscreen` | boolean: when true the fullscreen widget will be available | `boolean` | `true` | +| `enableHome` | `enable-home` | boolean: when true the home widget will be available | `boolean` | `true` | +| `enableInlineEdit` | `enable-inline-edit` | boolean: when true edits can be applied directly within the table | `boolean` | `false` | +| `enableLegend` | `enable-legend` | boolean: when true the legend widget will be available | `boolean` | `true` | +| `enableSearch` | `enable-search` | boolean: when true the search widget will be available | `boolean` | `true` | +| `enableZoom` | `enable-zoom` | boolean: when true the zoom widget will be available | `boolean` | `true` | +| `hideMap` | `hide-map` | boolean: when true no map is displayed for the app | `boolean` | `false` | +| `mapInfos` | -- | IMapInfo[]: array of map infos (name and id) | `IMapInfo[]` | `[]` | +| `onlyShowUpdatableLayers` | `only-show-updatable-layers` | boolean: When true only editable layers that support the update capability will be available | `boolean` | `true` | +| `searchConfiguration` | -- | ISearchConfiguration: Configuration details for the Search widget | `ISearchConfiguration` | `undefined` | +| `showNewestFirst` | `show-newest-first` | boolean: when true the table will be sorted by objectid in descending order by default | `boolean` | `true` | +| `zoomAndScrollToSelected` | `zoom-and-scroll-to-selected` | boolean: When true the selected feature will zoomed to in the map and the row will be scrolled to within the table | `boolean` | `false` | ## Dependencies From 59d290eb25b809f3e19850c1054095afa145ec99 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Thu, 21 Sep 2023 14:23:59 -0600 Subject: [PATCH 245/406] use 4.28 for samples and fix editor issue --- src/components/edit-card/edit-card.tsx | 43 ++++++++++--------- .../map-layer-picker/map-layer-picker.css | 2 + src/demos/crowdsource-manager.html | 4 +- src/demos/new-public-notification.html | 6 +-- 4 files changed, 30 insertions(+), 25 deletions(-) diff --git a/src/components/edit-card/edit-card.tsx b/src/components/edit-card/edit-card.tsx index e8020c908..f1a56be90 100644 --- a/src/components/edit-card/edit-card.tsx +++ b/src/components/edit-card/edit-card.tsx @@ -145,28 +145,30 @@ export class EditCard { // //-------------------------------------------------------------------------- - /** - * Watch for changes to the graphics and update the feature widget - */ - @Watch("graphicIndex") - graphicIndexWatchHandler(): void { - this._initEditorWidget(); - } - /** * Watch for changes to the graphics and update the feature widget */ @Watch("graphics") - graphicsWatchHandler(): void { - this._initEditorWidget(); + async graphicsWatchHandler(): Promise { + if (this.graphics.length === 0) { + this._shouldClose = false; + this.closeEdit.emit(); + } } - /** - * Watch for changes to the mapView and re-init the Feature widget - */ - @Watch("mapView") - mapViewWatchHandler(): void { - this._initEditorWidget(); + @Watch("open") + async openWatchHandler(v: boolean): Promise { + if (v && this.graphics?.length > 0 && this.graphicIndex > -1) { + this._initEditorWidget(); + if (this.graphicIndex > -1 && this.graphics.length > 0 && this.open && !this._shouldClose) { + await this._editor.startUpdateWorkflowAtFeatureEdit(this.graphics[this.graphicIndex]); + this._shouldClose = true; + } + } + if (!v) { + this._shouldClose = false; + this.closeEdit.emit(); + } } //-------------------------------------------------------------------------- @@ -313,7 +315,9 @@ export class EditCard { } this._attachmentHandle = this.reactiveUtils.when( - () => this._editor.viewModel.state === "adding-attachment" || this._editor.viewModel.state === "editing-attachment", + () => this._editor.viewModel.state === "adding-attachment" || + this._editor.viewModel.state === "editing-attachment" || + this._editor.viewModel.state === "creating-features", () => { this._shouldClose = false; } @@ -323,10 +327,9 @@ export class EditCard { () => this._editor.viewModel.state === "ready", () => { if (this._shouldClose) { - this.closeEdit.emit(); this._shouldClose = false; - } - if (this.graphicIndex > -1 && this.graphics.length > 0 && this.open && !this._shouldClose) { + this.closeEdit.emit(); + } else if (this.graphicIndex > -1 && this.graphics.length > 0 && this.open && !this._shouldClose) { void this._editor.startUpdateWorkflowAtFeatureEdit(this.graphics[this.graphicIndex]); this._shouldClose = true; } diff --git a/src/components/map-layer-picker/map-layer-picker.css b/src/components/map-layer-picker/map-layer-picker.css index 71ff6dbb2..160e4dd25 100644 --- a/src/components/map-layer-picker/map-layer-picker.css +++ b/src/components/map-layer-picker/map-layer-picker.css @@ -20,12 +20,14 @@ .map-layer-picker-container { width: 100%; + height: 100%; } .map-layer-picker { position: relative; width: 100%; display: inline-block; + height: 100%; } .padding-bottom-1 { diff --git a/src/demos/crowdsource-manager.html b/src/demos/crowdsource-manager.html index 778796250..e68c7a764 100644 --- a/src/demos/crowdsource-manager.html +++ b/src/demos/crowdsource-manager.html @@ -30,12 +30,12 @@ - + + + + + +

Demo Spatial Reference

+
+
+ +
+
+ + + + + + From 39840f84d34de34ae2325fed64889c7291b4a5dd Mon Sep 17 00:00:00 2001 From: Mike Tschudi Date: Tue, 26 Sep 2023 10:20:14 -0700 Subject: [PATCH 264/406] Update solution-spatial-ref --- .../t9n/solution-spatial-ref/resources.json | 1 - .../solution-spatial-ref/resources_en.json | 1 - .../solution-spatial-ref/resources_fr.json | 6 + .../solution-spatial-ref/resources_he.json | 6 + src/components.d.ts | 24 +- .../solution-configuration/readme.md | 7 +- src/components/solution-spatial-ref/readme.md | 47 +- .../solution-spatial-ref.scss | 8 +- .../solution-spatial-ref.tsx | 297 +- .../solution-spatial-ref/spatialreferences.ts | 21044 ---------------- .../test/solution-spatial-ref.e2e.ts | 26 +- .../test/solution-spatial-ref.spec.tsx | 207 +- src/components/spatial-ref/readme.md | 14 +- src/components/spatial-ref/spatial-ref.tsx | 6 + src/demos/solution-spatial-ref.html | 25 +- 15 files changed, 139 insertions(+), 21580 deletions(-) create mode 100644 src/assets/t9n/solution-spatial-ref/resources_fr.json create mode 100644 src/assets/t9n/solution-spatial-ref/resources_he.json delete mode 100644 src/components/solution-spatial-ref/spatialreferences.ts diff --git a/src/assets/t9n/solution-spatial-ref/resources.json b/src/assets/t9n/solution-spatial-ref/resources.json index f7e22b5bf..8793e6ba1 100644 --- a/src/assets/t9n/solution-spatial-ref/resources.json +++ b/src/assets/t9n/solution-spatial-ref/resources.json @@ -1,7 +1,6 @@ { "paramDescription": "Expose the Spatial Reference parameter and allow users to change the layers spatial reference when deploying the solution.", "specifyParam": "Spatial Reference parameter", - "spatialReferencePlaceholder": "Search for spatial reference using name or WKID", "spatialReferenceInfo": "Select the default spatial reference of the feature layers deployed with the solution.", "featureServicesHeading": "Apply spatial reference to the following layers" } diff --git a/src/assets/t9n/solution-spatial-ref/resources_en.json b/src/assets/t9n/solution-spatial-ref/resources_en.json index f7e22b5bf..8793e6ba1 100644 --- a/src/assets/t9n/solution-spatial-ref/resources_en.json +++ b/src/assets/t9n/solution-spatial-ref/resources_en.json @@ -1,7 +1,6 @@ { "paramDescription": "Expose the Spatial Reference parameter and allow users to change the layers spatial reference when deploying the solution.", "specifyParam": "Spatial Reference parameter", - "spatialReferencePlaceholder": "Search for spatial reference using name or WKID", "spatialReferenceInfo": "Select the default spatial reference of the feature layers deployed with the solution.", "featureServicesHeading": "Apply spatial reference to the following layers" } diff --git a/src/assets/t9n/solution-spatial-ref/resources_fr.json b/src/assets/t9n/solution-spatial-ref/resources_fr.json new file mode 100644 index 000000000..70a21518c --- /dev/null +++ b/src/assets/t9n/solution-spatial-ref/resources_fr.json @@ -0,0 +1,6 @@ +{ + "paramDescription": "Exposez le paramètre Spatial Reference et autorisez les utilisateurs à modifier la référence spatiale des couches lors du déploiement de la solution.", + "specifyParam": "Paramètre de référence spatiale", + "spatialReferencePlaceholder": "Rechercher une référence spatiale à l'aide du nom ou du WKID", + "spatialReferenceInfo": "Sélectionnez la référence spatiale par défaut." +} diff --git a/src/assets/t9n/solution-spatial-ref/resources_he.json b/src/assets/t9n/solution-spatial-ref/resources_he.json new file mode 100644 index 000000000..f929f5cf0 --- /dev/null +++ b/src/assets/t9n/solution-spatial-ref/resources_he.json @@ -0,0 +1,6 @@ +{ + "paramDescription": "חשוף את הפרמטר Spatial Reference ואפשר למשתמשים לשנות את ההתייחסות המרחבית לשכבות בעת פריסת הפתרון.", + "specifyParam": "פרמטר התייחסות מרחבית", + "spatialReferencePlaceholder": "חפש הפניה מרחבית באמצעות שם או WKID", + "spatialReferenceInfo": "בחר ברירת המחדל של הפניה מרחבית." +} diff --git a/src/components.d.ts b/src/components.d.ts index 377c72fe6..df6927c38 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -700,20 +700,10 @@ export namespace Components { "itemId": string; } interface SolutionSpatialRef { - /** - * Returns the spatial reference description of the supplied value. (Exposes protected method `_createSpatialRefDisplay` for testing.) - * @param value WKID or WKT or null for default - * @returns If component is using a WKID, description using WKID; otherwise, the WKT; defaults to 102100 - */ - "createSpatialRefDisplay": (value: string) => Promise; /** * The wkid that will be used as the default when no user selection has been made. */ "defaultWkid": number; - /** - * Returns the current spatial reference description. (Exposes protected variable `spatialRef` for testing.) - */ - "getSpatialRef": () => Promise; /** * When true, all but the main switch are disabled to prevent interaction. */ @@ -726,12 +716,6 @@ export namespace Components { * Contains the public value for this component, which is a wkid or a wkt. */ "value": string; - /** - * Converts a WKID into a spatial reference description. (Exposes protected method `_wkidToDisplay` for testing.) - * @param wkid WKID to look up - * @returns Description, or "WKID <wkid>" if a description doesn't exist for the WKID - */ - "wkidToDisplay": (wkid: number) => Promise; } interface SolutionTemplateData { /** @@ -769,6 +753,10 @@ export namespace Components { * The wkid that will be used as the default when no user selection has been made. */ "defaultWkid": number; + /** + * When true, all are disabled to prevent interaction. + */ + "disabled": boolean; /** * Returns the current spatial reference description. (Exposes protected variable `spatialRef` for testing.) */ @@ -1890,6 +1878,10 @@ declare namespace LocalJSX { * The wkid that will be used as the default when no user selection has been made. */ "defaultWkid"?: number; + /** + * When true, all are disabled to prevent interaction. + */ + "disabled"?: boolean; "onSpatialReferenceChange"?: (event: SpatialRefCustomEvent<{ name: string, enabled: boolean }>) => void; /** * Contains the public value for this component, which is a wkid or a wkt. diff --git a/src/components/solution-configuration/readme.md b/src/components/solution-configuration/readme.md index b02ec8835..e1db66775 100644 --- a/src/components/solution-configuration/readme.md +++ b/src/components/solution-configuration/readme.md @@ -134,9 +134,10 @@ graph TD; calcite-action-group --> calcite-action solution-spatial-ref --> calcite-label solution-spatial-ref --> calcite-switch - solution-spatial-ref --> calcite-input - solution-spatial-ref --> calcite-tree - solution-spatial-ref --> calcite-tree-item + solution-spatial-ref --> spatial-ref + spatial-ref --> calcite-input + spatial-ref --> calcite-tree + spatial-ref --> calcite-tree-item style solution-configuration fill:#f9f,stroke:#333,stroke-width:4px ``` diff --git a/src/components/solution-spatial-ref/readme.md b/src/components/solution-spatial-ref/readme.md index 4a92c12f3..987bad790 100644 --- a/src/components/solution-spatial-ref/readme.md +++ b/src/components/solution-spatial-ref/readme.md @@ -22,42 +22,6 @@ | `featureServiceSpatialReferenceChange` | | `CustomEvent<{ name: string; enabled: boolean; }>` | -## Methods - -### `createSpatialRefDisplay(value: string) => Promise` - -Returns the spatial reference description of the supplied value. -(Exposes protected method `_createSpatialRefDisplay` for testing.) - -#### Returns - -Type: `Promise` - -If component is using a WKID, description using WKID; otherwise, the WKT; defaults to 102100 - -### `getSpatialRef() => Promise` - -Returns the current spatial reference description. -(Exposes protected variable `spatialRef` for testing.) - -#### Returns - -Type: `Promise` - - - -### `wkidToDisplay(wkid: number) => Promise` - -Converts a WKID into a spatial reference description. -(Exposes protected method `_wkidToDisplay` for testing.) - -#### Returns - -Type: `Promise` - -Description, or "WKID <wkid>" if a description doesn't exist for the WKID - - ## Dependencies ### Used by @@ -68,18 +32,17 @@ Description, or "WKID <wkid>" if a description doesn't exist for the WKID - calcite-label - calcite-switch -- calcite-input -- calcite-tree -- calcite-tree-item +- [spatial-ref](../spatial-ref) ### Graph ```mermaid graph TD; solution-spatial-ref --> calcite-label solution-spatial-ref --> calcite-switch - solution-spatial-ref --> calcite-input - solution-spatial-ref --> calcite-tree - solution-spatial-ref --> calcite-tree-item + solution-spatial-ref --> spatial-ref + spatial-ref --> calcite-input + spatial-ref --> calcite-tree + spatial-ref --> calcite-tree-item calcite-input --> calcite-progress calcite-input --> calcite-icon calcite-tree-item --> calcite-icon diff --git a/src/components/solution-spatial-ref/solution-spatial-ref.scss b/src/components/solution-spatial-ref/solution-spatial-ref.scss index 29df64a65..510728cfa 100644 --- a/src/components/solution-spatial-ref/solution-spatial-ref.scss +++ b/src/components/solution-spatial-ref/solution-spatial-ref.scss @@ -18,7 +18,7 @@ @apply m-inline-end-2; } -.spatial-ref-switch-title { +.spatial-ref-component { @apply mt-2.5 m-inline-start-10; } @@ -51,12 +51,6 @@ opacity-40; } -.spatial-ref-container { - max-height: 200px; - @apply overflow-y-auto - mb-4; -} - .spatial-ref-desc { padding-bottom: .5rem; @apply p-inline-start-1; diff --git a/src/components/solution-spatial-ref/solution-spatial-ref.tsx b/src/components/solution-spatial-ref/solution-spatial-ref.tsx index c1ad4ee2c..0433aba17 100644 --- a/src/components/solution-spatial-ref/solution-spatial-ref.tsx +++ b/src/components/solution-spatial-ref/solution-spatial-ref.tsx @@ -14,12 +14,10 @@ * limitations under the License. */ -import { Component, Element, Event, EventEmitter, h, Host, Method, Prop, State, Watch, VNode } from '@stencil/core'; +import { Component, Element, Event, EventEmitter, h, Host, Prop, State, VNode } from '@stencil/core'; import '@esri/calcite-components'; -import { wkids } from './spatialreferences'; import state from "../../utils/solution-store"; import { nodeListToArray } from '../../utils/common'; -import { ISpatialRefRepresentation, IWkidDescription } from '../../utils/interfaces'; import SolutionSpatialRef_T9n from '../../assets/t9n/solution-spatial-ref/resources.json'; import { getLocaleComponentStrings } from '../../utils/locale'; @@ -50,25 +48,15 @@ export class SolutionSpatialRef { @Prop({ mutable: true, reflect: true }) defaultWkid = 102100; /** - * When true, all but the main switch are disabled to prevent interaction. + * Indicates if the control has been enabled. + * The first time Spatial Reference has been enabled it should enable all feature services. */ - @Prop({ mutable: true, reflect: true }) locked = true; + @State() loaded = false; /** - * Contains the public value for this component, which is a wkid or a wkt. - */ - @Prop({ mutable: true, reflect: true }) value: string = this.defaultWkid.toString(); - - @Watch("value") - valueChanged(newValue: string): void { - this.spatialRef = this._createSpatialRefDisplay(newValue); - this._updateStore(); - const searchBox = document.getElementById("calcite-sr-search") as HTMLCalciteInputElement; - if (searchBox) { - searchBox.value = this._srSearchText = ""; - } - this._clearSelection(); - } + * When true, all but the main switch are disabled to prevent interaction. + */ + @Prop({ mutable: true, reflect: true }) locked = true; /** * List of service names the spatial reference should apply to @@ -76,10 +64,9 @@ export class SolutionSpatialRef { @Prop({ mutable: true, reflect: true }) services: string[] = []; /** - * Indicates if the control has been enabled. - * The first time Spatial Reference has been enabled it should enable all feature services. - */ - @State() loaded = false; + * Contains the public value for this component, which is a wkid or a wkt. + */ + @Prop({ mutable: true, reflect: true }) value: string = this.defaultWkid.toString(); //-------------------------------------------------------------------------- // @@ -87,11 +74,6 @@ export class SolutionSpatialRef { // //-------------------------------------------------------------------------- - constructor() { - this.spatialRef = this._createSpatialRefDisplay(this.value); - this.locked = typeof this.value === "undefined"; - } - /** * StencilJS: Called once just after the component is first connected to the DOM. */ @@ -105,37 +87,28 @@ export class SolutionSpatialRef { render(): VNode { return ( -
- {this._translations.paramDescription} -
- -
- - {this._translations.spatialReferenceInfo} - - -
- - {this._getTreeContent()} - +
+
+ {this._translations.paramDescription} +
+ +
+ + {this._translations.spatialReferenceInfo} + + + {this._getFeatureServices(this.services)}
- {this._getFeatureServices(this.services)}
); @@ -147,11 +120,6 @@ export class SolutionSpatialRef { // //-------------------------------------------------------------------------- - /** - * Internal representation of component's value for display purposes. - */ - @State() protected spatialRef: ISpatialRefRepresentation; - /** * Current text that is being used to filter the list of spatial references. */ @@ -183,79 +151,12 @@ export class SolutionSpatialRef { // //-------------------------------------------------------------------------- - /** - * Returns the spatial reference description of the supplied value. - * (Exposes protected method `_createSpatialRefDisplay` for testing.) - * - * @param value WKID or WKT or null for default - * @returns If component is using a WKID, description using WKID; otherwise, the WKT; defaults to 102100 - */ - @Method() - async createSpatialRefDisplay(value: string): Promise { - return this._createSpatialRefDisplay(value); - } - - /** - * Returns the current spatial reference description. - * (Exposes protected variable `spatialRef` for testing.) - */ - @Method() - async getSpatialRef(): Promise { - return this.spatialRef; - } - - /** - * Converts a WKID into a spatial reference description. - * (Exposes protected method `_wkidToDisplay` for testing.) - * - * @param wkid WKID to look up - * @returns Description, or "WKID <wkid>" if a description doesn't exist for the WKID - */ - @Method() - async wkidToDisplay(wkid: number): Promise { - return this._wkidToDisplay(wkid); - } - //-------------------------------------------------------------------------- // // Private Methods // //-------------------------------------------------------------------------- - /** - * Returns the spatial reference description of the supplied value. - * - * @param value WKID or WKT or null for default - * @returns If component is using a WKID, description using WKID; otherwise, the WKT; defaults to 102100 - */ - protected _createSpatialRefDisplay(value: string): ISpatialRefRepresentation { - let spatialRef: ISpatialRefRepresentation; - - if (!value) { - spatialRef = { - display: this._wkidToDisplay(this.defaultWkid), - usingWkid: true, - wkid: this.defaultWkid, - wkt: "" - } - } else { - const wkid = Number.parseInt(value); - spatialRef = isNaN(wkid) ? { - display: value, - usingWkid: false, - wkid: 0, - wkt: value - } : { - display: this._wkidToDisplay(wkid), - usingWkid: true, - wkid: wkid, - wkt: "" - }; - } - - return spatialRef; - } - /** * Toggles the ability to set the default spatial reference. */ @@ -287,26 +188,6 @@ export class SolutionSpatialRef { services.forEach(name => this._updateEnabledServices({ detail: { switched: true } }, name)); } - /** - * Stores the wkid as the components value. - */ - protected _setSpatialRef(wkid: string): void { - if (this.value !== wkid) { - this.value = wkid; - } - } - - /** - * Converts a WKID into a spatial reference description. - * - * @param wkid WKID to look up - * @returns Description, or "WKID <wkid>" if a description doesn't exist for the WKID - */ - protected _wkidToDisplay(wkid: number): string { - const description: IWkidDescription = wkids[wkid]; - return description ? description.label + " (" + wkid.toString() + ")" : "WKID " + wkid.toString(); - } - /** * Create a switch control for each of the services * @@ -343,7 +224,7 @@ export class SolutionSpatialRef { protected _updateStore(): void { const spatialReferenceInfo = state.getStoreInfo("spatialReferenceInfo"); spatialReferenceInfo.enabled = !this.locked; - spatialReferenceInfo.spatialReference = this.spatialRef.wkid; + spatialReferenceInfo.spatialReference = this.value; state.setStoreInfo("spatialReferenceInfo", spatialReferenceInfo); } @@ -361,120 +242,6 @@ export class SolutionSpatialRef { }); } - /** - * Select the first child on Enter key click - * OR - * Clear any selection while user is entering values and use the default wkid - * - * @param event The keyboard event - */ - protected _inputKeyDown( - event: KeyboardEvent - ): void { - if (event.key === "Enter") { - this._selectFirstChild(true); - } else { - if (this._srSearchText?.length > 1) { - this._clearSelection(); - this._setSpatialRef(this.defaultWkid.toString()); - } - } - } - - /** - * Clear any selected items in the elements tree. - * - */ - protected _clearSelection(): void { - const selectedItems = nodeListToArray( - this.el.querySelectorAll("calcite-tree-item[selected]") - ); - selectedItems.forEach((treeItem: HTMLCalciteTreeItemElement) => { - treeItem.selected = false; - }); - } - - /** - * Select the first child from the tree. - * - * @param autoFocus Boolean to indicate if focus should also be shifted to the first child. - * - */ - protected _selectFirstChild( - autoFocus: boolean - ): void { - const wkidContainer = document.getElementById("solution-wkid-container"); - if (wkidContainer && wkidContainer.firstChild) { - const firstChild = wkidContainer.firstChild as HTMLCalciteTreeItemElement; - firstChild.selected = true; - this._setSpatialRef(firstChild.id); - if (autoFocus) { - firstChild.focus(); - } - } - } - - /** - * Set the search text State and cause render. - * - * @param event the event to get the value from - * - */ - protected _searchSpatialReferences( - event: CustomEvent - ): void { - this._srSearchText = event.detail.value; - } - - /** - * Get the tree items for the current spatial reference search - * - */ - protected _getTreeContent(): VNode { - const id = "solution-wkid-container"; - const containerClass = "spatial-ref-container"; - if (this._srSearchText && this._srSearchText !== "" && this._srSearchText.length > 1) { - const regEx = new RegExp(`${this._srSearchText}`, 'gi'); - const matches = Object.keys(wkids).filter(wkid => { - return regEx.test(wkid.toString()) || regEx.test(wkids[wkid].label); - }); - return matches.length > 0 ? ( -
- {matches.map((wkid) => this._getTreeItem(wkid, false))} -
- ) : (null); - } else { - return ( -
- {this._getTreeItem(this.value.toString(), true)} -
- ); - } - } - - /** - * Get the individual spatial reference tree item - * - * @param wkid The wkid for the spatial reference that will be displayed. - * @param selected Should the item be selected by default. - * - */ - protected _getTreeItem( - wkid: string, - selected: boolean - ): VNode { - return ( - this._setSpatialRef(wkid)} - selected={selected} - > -
{`${wkids[wkid].label} (${wkid})`}
-
- ) - } - /** * Fetches the component's translations * diff --git a/src/components/solution-spatial-ref/spatialreferences.ts b/src/components/solution-spatial-ref/spatialreferences.ts deleted file mode 100644 index ea7ddc870..000000000 --- a/src/components/solution-spatial-ref/spatialreferences.ts +++ /dev/null @@ -1,21044 +0,0 @@ -/** @license - * Copyright 2022 Esri - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import { IWkidDescription } from '../../utils/interfaces'; - -export const wkids: Record = { - 2000: { - "label": "Anguilla 1957 British West Indies Grid", - "defaultExtent": "{\"xmin\": -5220382.125577026, \"ymin\": -9605698.138723183, \"xmax\": 6020382.125577026, \"ymax\": 9605698.13872318}" - }, - 2001: { - "label": "Antigua 1943 British West Indies Grid", - "defaultExtent": "{\"xmin\": -5220382.125577026, \"ymin\": -9605698.138723183, \"xmax\": 6020382.125577026, \"ymax\": 9605698.13872318}" - }, - 2002: { - "label": "Dominica 1945 British West Indies Grid", - "defaultExtent": "{\"xmin\": -5220382.125577026, \"ymin\": -9605698.138723183, \"xmax\": 6020382.125577026, \"ymax\": 9605698.13872318}" - }, - 2003: { - "label": "Grenada 1953 British West Indies Grid", - "defaultExtent": "{\"xmin\": -5220382.125577026, \"ymin\": -9605698.138723183, \"xmax\": 6020382.125577026, \"ymax\": 9605698.13872318}" - }, - 2004: { - "label": "Montserrat 1958 British West Indies Grid", - "defaultExtent": "{\"xmin\": -5220382.125577026, \"ymin\": -9605698.138723183, \"xmax\": 6020382.125577026, \"ymax\": 9605698.13872318}" - }, - 2005: { - "label": "St Kitts 1955 British West Indies Grid", - "defaultExtent": "{\"xmin\": -5220382.125577026, \"ymin\": -9605698.138723183, \"xmax\": 6020382.125577026, \"ymax\": 9605698.13872318}" - }, - 2006: { - "label": "St Lucia 1955 British West Indies Grid", - "defaultExtent": "{\"xmin\": -5220382.125577026, \"ymin\": -9605698.138723183, \"xmax\": 6020382.125577026, \"ymax\": 9605698.13872318}" - }, - 2007: { - "label": "St Vincent 1945 British West Indies Grid", - "defaultExtent": "{\"xmin\": -5220382.125577026, \"ymin\": -9605698.138723183, \"xmax\": 6020382.125577026, \"ymax\": 9605698.13872318}" - }, - 2008: { - "label": "NAD 1927 CGQ77 MTM 2 SCoPQ", - "defaultExtent": "{\"xmin\": -5317767.571686545, \"ymin\": -9609572.266315758, \"xmax\": 5927367.571686544, \"ymax\": 9609572.266315753}" - }, - 2009: { - "label": "NAD 1927 CGQ77 MTM 3 SCoPQ", - "defaultExtent": "{\"xmin\": -5317767.571686544, \"ymin\": -9609572.266315758, \"xmax\": 5927367.571686544, \"ymax\": 9609572.266315753}" - }, - 2010: { - "label": "NAD 1927 CGQ77 MTM 4 SCoPQ", - "defaultExtent": "{\"xmin\": -5317767.571686544, \"ymin\": -9609572.266315758, \"xmax\": 5927367.571686544, \"ymax\": 9609572.266315753}" - }, - 2011: { - "label": "NAD 1927 CGQ77 MTM 5 SCoPQ", - "defaultExtent": "{\"xmin\": -5317767.571686546, \"ymin\": -9609572.266315758, \"xmax\": 5927367.571686544, \"ymax\": 9609572.266315753}" - }, - 2012: { - "label": "NAD 1927 CGQ77 MTM 6 SCoPQ", - "defaultExtent": "{\"xmin\": -5317767.571686544, \"ymin\": -9609572.266315758, \"xmax\": 5927367.571686544, \"ymax\": 9609572.266315753}" - }, - 2013: { - "label": "NAD 1927 CGQ77 MTM 7 SCoPQ", - "defaultExtent": "{\"xmin\": -5317767.571686542, \"ymin\": -9609572.266315758, \"xmax\": 5927367.571686544, \"ymax\": 9609572.266315753}" - }, - 2014: { - "label": "NAD 1927 CGQ77 MTM 8 SCoPQ", - "defaultExtent": "{\"xmin\": -5317767.571686546, \"ymin\": -9609572.266315758, \"xmax\": 5927367.571686544, \"ymax\": 9609572.266315753}" - }, - 2015: { - "label": "NAD 1927 CGQ77 MTM 9 SCoPQ", - "defaultExtent": "{\"xmin\": -5317767.571686544, \"ymin\": -9609572.266315758, \"xmax\": 5927367.571686544, \"ymax\": 9609572.266315753}" - }, - 2016: { - "label": "NAD 1927 CGQ77 MTM 10 SCoPQ", - "defaultExtent": "{\"xmin\": -5317767.571686542, \"ymin\": -9609572.266315758, \"xmax\": 5927367.571686545, \"ymax\": 9609572.266315753}" - }, - 2017: { - "label": "NAD 1927 DEF 1976 MTM 8", - "defaultExtent": "{\"xmin\": -5317767.571686546, \"ymin\": -9609572.266315758, \"xmax\": 5927367.571686544, \"ymax\": 9609572.266315753}" - }, - 2018: { - "label": "NAD 1927 DEF 1976 MTM 9", - "defaultExtent": "{\"xmin\": -5317767.571686544, \"ymin\": -9609572.266315758, \"xmax\": 5927367.571686544, \"ymax\": 9609572.266315753}" - }, - 2019: { - "label": "NAD 1927 DEF 1976 MTM 10", - "defaultExtent": "{\"xmin\": -5317767.571686542, \"ymin\": -9609572.266315758, \"xmax\": 5927367.571686545, \"ymax\": 9609572.266315753}" - }, - 2020: { - "label": "NAD 1927 DEF 1976 MTM 11", - "defaultExtent": "{\"xmin\": -5317767.571686546, \"ymin\": -9609572.266315758, \"xmax\": 5927367.571686544, \"ymax\": 9609572.266315753}" - }, - 2021: { - "label": "NAD 1927 DEF 1976 MTM 12", - "defaultExtent": "{\"xmin\": -5317767.571686544, \"ymin\": -9609572.266315758, \"xmax\": 5927367.571686544, \"ymax\": 9609572.266315753}" - }, - 2022: { - "label": "NAD 1927 DEF 1976 MTM 13", - "defaultExtent": "{\"xmin\": -5317767.571686542, \"ymin\": -9609572.266315758, \"xmax\": 5927367.571686545, \"ymax\": 9609572.266315753}" - }, - 2023: { - "label": "NAD 1927 DEF 1976 MTM 14", - "defaultExtent": "{\"xmin\": -5317767.571686542, \"ymin\": -9609572.26631576, \"xmax\": 5927367.571686544, \"ymax\": 9609572.266315753}" - }, - 2024: { - "label": "NAD 1927 DEF 1976 MTM 15", - "defaultExtent": "{\"xmin\": -5317767.571686544, \"ymin\": -9609572.266315758, \"xmax\": 5927367.571686544, \"ymax\": 9609572.266315753}" - }, - 2025: { - "label": "NAD 1927 DEF 1976 MTM 16", - "defaultExtent": "{\"xmin\": -5317767.571686542, \"ymin\": -9609572.266315758, \"xmax\": 5927367.571686544, \"ymax\": 9609572.266315753}" - }, - 2026: { - "label": "NAD 1927 DEF 1976 MTM 17", - "defaultExtent": "{\"xmin\": -5317767.571686544, \"ymin\": -9609572.266315758, \"xmax\": 5927367.571686544, \"ymax\": 9609572.266315753}" - }, - 2027: { - "label": "NAD 1927 DEF 1976 UTM Zone 15N", - "defaultExtent": "{\"xmin\": -5120880.63272114, \"ymin\": -9606689.106319863, \"xmax\": 6120880.632721142, \"ymax\": 9606689.106319858}" - }, - 2028: { - "label": "NAD 1927 DEF 1976 UTM Zone 16N", - "defaultExtent": "{\"xmin\": -5120880.63272114, \"ymin\": -9606689.106319865, \"xmax\": 6120880.632721142, \"ymax\": 9606689.106319858}" - }, - 2029: { - "label": "NAD 1927 DEF 1976 UTM Zone 17N", - "defaultExtent": "{\"xmin\": -5120880.632721142, \"ymin\": -9606689.106319863, \"xmax\": 6120880.632721142, \"ymax\": 9606689.106319858}" - }, - 2030: { - "label": "NAD 1927 DEF 1976 UTM Zone 18N", - "defaultExtent": "{\"xmin\": -5120880.632721144, \"ymin\": -9606689.106319863, \"xmax\": 6120880.632721142, \"ymax\": 9606689.106319858}" - }, - 2031: { - "label": "NAD 1927 CGQ77 UTM Zone 17N", - "defaultExtent": "{\"xmin\": -5120880.632721142, \"ymin\": -9606689.106319863, \"xmax\": 6120880.632721142, \"ymax\": 9606689.106319858}" - }, - 2032: { - "label": "NAD 1927 CGQ77 UTM Zone 18N", - "defaultExtent": "{\"xmin\": -5120880.632721144, \"ymin\": -9606689.106319863, \"xmax\": 6120880.632721142, \"ymax\": 9606689.106319858}" - }, - 2033: { - "label": "NAD 1927 CGQ77 UTM Zone 19N", - "defaultExtent": "{\"xmin\": -5120880.632721144, \"ymin\": -9606689.106319863, \"xmax\": 6120880.632721142, \"ymax\": 9606689.106319858}" - }, - 2034: { - "label": "NAD 1927 CGQ77 UTM Zone 20N", - "defaultExtent": "{\"xmin\": -5120880.632721142, \"ymin\": -9606689.106319863, \"xmax\": 6120880.632721142, \"ymax\": 9606689.106319858}" - }, - 2035: { - "label": "NAD 1927 CGQ77 UTM Zone 21N", - "defaultExtent": "{\"xmin\": -5120880.632721142, \"ymin\": -9606689.106319863, \"xmax\": 6120880.632721142, \"ymax\": 9606689.106319858}" - }, - 2039: { - "label": "Israel TM Grid", - "defaultExtent": "{\"xmin\": -5403521.063100083, \"ymin\": -12496211.12664412, \"xmax\": 5842580.231100084, \"ymax\": 6725177.229542296}" - }, - 2040: { - "label": "Locodjo 1965 UTM Zone 30N", - "defaultExtent": "{\"xmin\": -5120944.444949271, \"ymin\": -9606659.189062225, \"xmax\": 6120944.444949269, \"ymax\": 9606659.189062221}" - }, - 2041: { - "label": "Abidjan 1987 UTM Zone 30N", - "defaultExtent": "{\"xmin\": -5120944.444949271, \"ymin\": -9606659.189062225, \"xmax\": 6120944.444949269, \"ymax\": 9606659.189062221}" - }, - 2042: { - "label": "Locodjo 1965 UTM Zone 29N", - "defaultExtent": "{\"xmin\": -5120944.444949269, \"ymin\": -9606659.189062225, \"xmax\": 6120944.444949269, \"ymax\": 9606659.189062221}" - }, - 2043: { - "label": "Abidjan 1987 UTM Zone 29N", - "defaultExtent": "{\"xmin\": -5120944.444949269, \"ymin\": -9606659.189062225, \"xmax\": 6120944.444949269, \"ymax\": 9606659.189062221}" - }, - 2044: { - "label": "Hanoi 1972 GK Zone 18", - "defaultExtent": "{\"xmin\": 12876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 24123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2045: { - "label": "Hanoi 1972 GK Zone 19", - "defaultExtent": "{\"xmin\": 13876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 25123107.467526715, \"ymax\": 9610795.116133094}" - }, - 2056: { - "label": "CH1903+ LV95", - "defaultExtent": "{\"xmin\": -27386227.448577397, \"ymin\": -32067738.605040614, \"xmax\": 12489449.048149817, \"ymax\": 31815241.658078846}" - }, - 2057: { - "label": "Rassadiran Nakhl e Taqi", - "defaultExtent": "{\"xmin\": -29926354.55882242, \"ymin\": -19918901.197766192, \"xmax\": 35077639.814961664, \"ymax\": 19885128.006973}" - }, - 2058: { - "label": "ED 1950 ED77 UTM Zone 38N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 2059: { - "label": "ED 1950 ED77 UTM Zone 39N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542034, \"ymax\": 9607087.052499557}" - }, - 2060: { - "label": "ED 1950 ED77 UTM Zone 40N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 2061: { - "label": "ED 1950 ED77 UTM Zone 41N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 2062: { - "label": "Madrid 1870 Madrid Spain", - "defaultExtent": "{\"xmin\": -36349677.85483202, \"ymin\": -28746726.944227017, \"xmax\": 37549677.85368081, \"ymax\": 24227538.492870588}" - }, - 2065: { - "label": "S-JTSK Ferro Krovak", - "defaultExtent": "{\"xmin\": -33632762.769879624, \"ymin\": -33699687.51498498, \"xmax\": 33699674.50237148, \"ymax\": 33699687.5149513}" - }, - 2066: { - "label": "Mount Dillon Tobago Grid", - "defaultExtent": "{\"xmin\": -24714795.887599796, \"ymin\": -53779334.73830363, \"xmax\": 25089795.887599796, \"ymax\": 41768668.489557534}" - }, - 2067: { - "label": "Naparima 1955 UTM Zone 20N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 2068: { - "label": "ELD 1979 Libya 5", - "defaultExtent": "{\"xmin\": -5422693.155186254, \"ymin\": -9609970.331927082, \"xmax\": 5822693.155186254, \"ymax\": 9609970.331927076}" - }, - 2069: { - "label": "ELD 1979 Libya 6", - "defaultExtent": "{\"xmin\": -5422693.155186251, \"ymin\": -9609970.331927082, \"xmax\": 5822693.155186254, \"ymax\": 9609970.331927076}" - }, - 2070: { - "label": "ELD 1979 Libya 7", - "defaultExtent": "{\"xmin\": -5422693.155186254, \"ymin\": -9609970.331927082, \"xmax\": 5822693.1551862545, \"ymax\": 9609970.331927076}" - }, - 2071: { - "label": "ELD 1979 Libya 8", - "defaultExtent": "{\"xmin\": -5422693.155186254, \"ymin\": -9609970.331927082, \"xmax\": 5822693.155186254, \"ymax\": 9609970.331927076}" - }, - 2072: { - "label": "ELD 1979 Libya 9", - "defaultExtent": "{\"xmin\": -5422693.155186254, \"ymin\": -9609970.331927082, \"xmax\": 5822693.155186254, \"ymax\": 9609970.331927076}" - }, - 2073: { - "label": "ELD 1979 Libya 10", - "defaultExtent": "{\"xmin\": -5422693.155186254, \"ymin\": -9609970.331927082, \"xmax\": 5822693.155186254, \"ymax\": 9609970.331927076}" - }, - 2074: { - "label": "ELD 1979 Libya 11", - "defaultExtent": "{\"xmin\": -5422693.155186254, \"ymin\": -9609970.331927082, \"xmax\": 5822693.155186254, \"ymax\": 9609970.331927076}" - }, - 2075: { - "label": "ELD 1979 Libya 12", - "defaultExtent": "{\"xmin\": -5422693.155186254, \"ymin\": -9609970.331927082, \"xmax\": 5822693.15518625, \"ymax\": 9609970.331927076}" - }, - 2076: { - "label": "ELD 1979 Libya 13", - "defaultExtent": "{\"xmin\": -5422693.155186254, \"ymin\": -9609970.331927082, \"xmax\": 5822693.155186254, \"ymax\": 9609970.331927076}" - }, - 2077: { - "label": "ELD 1979 UTM Zone 32N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 2078: { - "label": "ELD 1979 UTM Zone 33N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 2079: { - "label": "ELD 1979 UTM Zone 34N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 2080: { - "label": "ELD 1979 UTM Zone 35N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 2081: { - "label": "Chos Malal 1914 Argentina 2", - "defaultExtent": "{\"xmin\": -3123255.4807343287, \"ymin\": 391356.8739198543, \"xmax\": 8123255.480734327, \"ymax\": 19613219.724059027}" - }, - 2082: { - "label": "Pampa del Castillo Argentina 2", - "defaultExtent": "{\"xmin\": -3123255.4807343287, \"ymin\": 391356.8739198543, \"xmax\": 8123255.480734327, \"ymax\": 19613219.724059027}" - }, - 2083: { - "label": "Hito XVIII 1963 Argentina 2", - "defaultExtent": "{\"xmin\": -3123255.4807343287, \"ymin\": 391356.8739198543, \"xmax\": 8123255.480734327, \"ymax\": 19613219.724059027}" - }, - 2084: { - "label": "Hito XVIII 1963 UTM 19S", - "defaultExtent": "{\"xmin\": -5121006.178542035, \"ymin\": 392912.94750043936, \"xmax\": 6121006.178542033, \"ymax\": 19607087.052499555}" - }, - 2085: { - "label": "NAD 1927 Cuba Norte", - "defaultExtent": "{\"xmin\": -39042471.53403076, \"ymin\": -26715093.921938278, \"xmax\": 40042471.534030765, \"ymax\": 13786473.853020452}" - }, - 2086: { - "label": "NAD 1927 Cuba Sur", - "defaultExtent": "{\"xmin\": -38652658.93796885, \"ymin\": -26583087.797057137, \"xmax\": 39652658.93804861, \"ymax\": 14289203.12179948}" - }, - 2087: { - "label": "ELD 1979 TM 12 NE", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 2088: { - "label": "Carthage TM 11 NE", - "defaultExtent": "{\"xmin\": -5120944.475688977, \"ymin\": -9606659.335852288, \"xmax\": 6120944.475688979, \"ymax\": 9606659.335852282}" - }, - 2089: { - "label": "Yemen NGN 1996 UTM Zone 38N", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699434, \"ymax\": 9606785.535047516}" - }, - 2090: { - "label": "Yemen NGN 1996 UTM Zone 39N", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699435, \"ymax\": 9606785.535047516}" - }, - 2093: { - "label": "Hanoi 1972 GK 106 NE", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 2094: { - "label": "WGS 1972 BE TM 106 NE", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": -9606782.690946043, \"xmax\": 6120761.958538103, \"ymax\": 9606782.690946037}" - }, - 2095: { - "label": "Bissau UTM Zone 28N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 2096: { - "label": "Korean 1985 Korea East Belt", - "defaultExtent": "{\"xmin\": -5422345.712638919, \"ymin\": -13316646.83479561, \"xmax\": 5822345.712638919, \"ymax\": 5902491.419305773}" - }, - 2097: { - "label": "Korean 1985 Korea Central Belt", - "defaultExtent": "{\"xmin\": -5422345.712638919, \"ymin\": -13316646.83479561, \"xmax\": 5822345.712638919, \"ymax\": 5902491.419305773}" - }, - 2098: { - "label": "Korean 1985 Korea West Belt", - "defaultExtent": "{\"xmin\": -5422345.712638919, \"ymin\": -13316646.83479561, \"xmax\": 5822345.712638919, \"ymax\": 5902491.419305773}" - }, - 2099: { - "label": "Qatar 1948 Qatar Grid", - "defaultExtent": "{\"xmin\": -4909426.5657816045, \"ymin\": -12319061.998402502, \"xmax\": 5109426.565781605, \"ymax\": 6902180.596532611}" - }, - 2100: { - "label": "Greek Grid", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767723999, \"ymax\": 9606785.534958888}" - }, - 2101: { - "label": "Lake Maracaibo Grid M1", - "defaultExtent": "{\"xmin\": -32511321.141440753, \"ymin\": -26225497.79277541, \"xmax\": 32511321.141368896, \"ymax\": 17577282.923904065}" - }, - 2102: { - "label": "Lake Maracaibo Grid", - "defaultExtent": "{\"xmin\": -32311321.141440753, \"ymin\": -26025497.79277541, \"xmax\": 32711321.141368896, \"ymax\": 17777282.923904065}" - }, - 2103: { - "label": "Lake Maracaibo Grid M3", - "defaultExtent": "{\"xmin\": -32011321.141440753, \"ymin\": -25725497.79277541, \"xmax\": 33011321.141368896, \"ymax\": 18077282.923904065}" - }, - 2104: { - "label": "Lake Maracaibo La Rosa Grid", - "defaultExtent": "{\"xmin\": -32528365.141440753, \"ymin\": -26195952.79077541, \"xmax\": 32494277.141368896, \"ymax\": 17606827.925904065}" - }, - 2105: { - "label": "NZGD 2000 Mount Eden Circuit", - "defaultExtent": "{\"xmin\": -5222450.671563505, \"ymin\": -4726914.074119132, \"xmax\": 6022450.671668238, \"ymax\": 14492423.373633703}" - }, - 2106: { - "label": "NZGD 2000 Bay of Plenty Circuit", - "defaultExtent": "{\"xmin\": -5223012.972930613, \"ymin\": -4629647.053218633, \"xmax\": 6023012.9728957135, \"ymax\": 14591612.520488545}" - }, - 2107: { - "label": "NZGD 2000 Poverty Bay Circuit", - "defaultExtent": "{\"xmin\": -5223012.972843332, \"ymin\": -4533816.938488752, \"xmax\": 6023012.972982994, \"ymax\": 14687442.63522297}" - }, - 2108: { - "label": "NZGD 2000 Hawkes Bay Circuit", - "defaultExtent": "{\"xmin\": -5223012.972930617, \"ymin\": -4419869.178591101, \"xmax\": 6023012.9728957135, \"ymax\": 14801390.395116076}" - }, - 2109: { - "label": "NZGD 2000 Taranaki Circuit", - "defaultExtent": "{\"xmin\": -5223012.972878254, \"ymin\": -4477076.861570403, \"xmax\": 6023012.972948075, \"ymax\": 14744182.71213829}" - }, - 2110: { - "label": "NZGD 2000 Tuhirangi Circuit", - "defaultExtent": "{\"xmin\": -5223012.972913149, \"ymin\": -4435258.699244389, \"xmax\": 6023012.972913173, \"ymax\": 14786000.874461276}" - }, - 2111: { - "label": "NZGD 2000 Wanganui Circuit", - "defaultExtent": "{\"xmin\": -5223012.972843336, \"ymin\": -4354235.981375858, \"xmax\": 6023012.972982986, \"ymax\": 14867023.592335863}" - }, - 2112: { - "label": "NZGD 2000 Wairarapa Circuit", - "defaultExtent": "{\"xmin\": -5223012.972948059, \"ymin\": -4278354.636567472, \"xmax\": 6023012.972878262, \"ymax\": 14942904.937141221}" - }, - 2113: { - "label": "NZGD 2000 Wellington Circuit", - "defaultExtent": "{\"xmin\": -5223012.97289571, \"ymin\": -4236616.053418994, \"xmax\": 6023012.972930617, \"ymax\": 14984643.520288184}" - }, - 2114: { - "label": "NZGD 2000 Collingwood Circuit", - "defaultExtent": "{\"xmin\": -5223012.972982981, \"ymin\": -4301736.921640576, \"xmax\": 6023012.972843352, \"ymax\": 14919522.652071146}" - }, - 2115: { - "label": "NZGD 2000 Nelson Circuit", - "defaultExtent": "{\"xmin\": -5223012.972860799, \"ymin\": -4239577.6394076105, \"xmax\": 6023012.972965526, \"ymax\": 14981681.934302598}" - }, - 2116: { - "label": "NZGD 2000 Karamea Circuit", - "defaultExtent": "{\"xmin\": -5223012.97289571, \"ymin\": -4237880.899118383, \"xmax\": 6023012.972930617, \"ymax\": 14983378.674588792}" - }, - 2117: { - "label": "NZGD 2000 Buller Circuit", - "defaultExtent": "{\"xmin\": -5223012.972930613, \"ymin\": -4180034.7755396916, \"xmax\": 6023012.9728957135, \"ymax\": 15041224.798167488}" - }, - 2118: { - "label": "NZGD 2000 Grey Circuit", - "defaultExtent": "{\"xmin\": -5223012.972948072, \"ymin\": -4121936.5448016105, \"xmax\": 6023012.972878254, \"ymax\": 15099323.028907083}" - }, - 2119: { - "label": "NZGD 2000 Amuri Circuit", - "defaultExtent": "{\"xmin\": -5223012.972913149, \"ymin\": -4082471.144910902, \"xmax\": 6023012.972913173, \"ymax\": 15138788.428794764}" - }, - 2120: { - "label": "NZGD 2000 Marlborough Circuit", - "defaultExtent": "{\"xmin\": -5223012.972982981, \"ymin\": -4209590.945141053, \"xmax\": 6023012.972843352, \"ymax\": 15011668.628570668}" - }, - 2121: { - "label": "NZGD 2000 Hokitika Circuit", - "defaultExtent": "{\"xmin\": -5223012.972948059, \"ymin\": -4060562.004878413, \"xmax\": 6023012.972878254, \"ymax\": 15160697.56883028}" - }, - 2122: { - "label": "NZGD 2000 Okarito Circuit", - "defaultExtent": "{\"xmin\": -5223012.972965518, \"ymin\": -4035689.584065403, \"xmax\": 6023012.972860804, \"ymax\": 15185569.989644803}" - }, - 2123: { - "label": "NZGD 2000 Jacksons Bay Circuit", - "defaultExtent": "{\"xmin\": -5223012.972930617, \"ymin\": -3939276.5733710034, \"xmax\": 6023012.9728957135, \"ymax\": 15281983.000336176}" - }, - 2124: { - "label": "NZGD 2000 Mount Pleasant Circuit", - "defaultExtent": "{\"xmin\": -5223012.97298297, \"ymin\": -3982300.071245821, \"xmax\": 6023012.972843352, \"ymax\": 15238959.5024659}" - }, - 2125: { - "label": "NZGD 2000 Gawler Circuit", - "defaultExtent": "{\"xmin\": -5223012.972843348, \"ymin\": -3964739.1834712774, \"xmax\": 6023012.9729829775, \"ymax\": 15256520.390240442}" - }, - 2126: { - "label": "NZGD 2000 Timaru Circuit", - "defaultExtent": "{\"xmin\": -5223012.972948063, \"ymin\": -3892144.8913752744, \"xmax\": 6023012.972878254, \"ymax\": 15329114.68233342}" - }, - 2127: { - "label": "NZGD 2000 Lindis Peak Circuit", - "defaultExtent": "{\"xmin\": -5223012.9729131535, \"ymin\": -3855134.6438566605, \"xmax\": 6023012.972913173, \"ymax\": 15366124.929849006}" - }, - 2128: { - "label": "NZGD 2000 Mount Nicholas Circuit", - "defaultExtent": "{\"xmin\": -5223012.972930613, \"ymin\": -3810929.406284387, \"xmax\": 6023012.9728957135, \"ymax\": 15410330.16742279}" - }, - 2129: { - "label": "NZGD 2000 Mount York Circuit", - "defaultExtent": "{\"xmin\": -5223012.972930608, \"ymin\": -3763047.2005148353, \"xmax\": 6023012.9728957135, \"ymax\": 15458212.373192342}" - }, - 2130: { - "label": "NZGD 2000 Observation Point Circuit", - "defaultExtent": "{\"xmin\": -5223012.972965507, \"ymin\": -3734983.0226578964, \"xmax\": 6023012.972860811, \"ymax\": 15486276.551052311}" - }, - 2131: { - "label": "NZGD 2000 North Taieri Circuit", - "defaultExtent": "{\"xmin\": -5222788.052394249, \"ymin\": -3729769.282580708, \"xmax\": 6022788.052394249, \"ymax\": 15490721.440742007}" - }, - 2132: { - "label": "NZGD 2000 Bluff Circuit", - "defaultExtent": "{\"xmin\": -5223012.972878254, \"ymin\": -3647849.553718252, \"xmax\": 6023012.972948075, \"ymax\": 15573410.01999044}" - }, - 2133: { - "label": "NZGD 2000 UTM Zone 58S", - "defaultExtent": "{\"xmin\": -5120763.76772398, \"ymin\": 393214.4650619123, \"xmax\": 6120763.767724008, \"ymax\": 19606785.534938097}" - }, - 2134: { - "label": "NZGD 2000 UTM Zone 59S", - "defaultExtent": "{\"xmin\": -5120763.76772398, \"ymin\": 393214.4650619123, \"xmax\": 6120763.767724008, \"ymax\": 19606785.534938097}" - }, - 2135: { - "label": "NZGD 2000 UTM Zone 60S", - "defaultExtent": "{\"xmin\": -5120763.767723984, \"ymin\": 393214.4650619123, \"xmax\": 6120763.767724008, \"ymax\": 19606785.534938097}" - }, - 2136: { - "label": "Accra Ghana Grid", - "defaultExtent": "{\"xmin\": -17544207.536361087, \"ymin\": -33215967.608121596, \"xmax\": 19344207.536361087, \"ymax\": 29830908.4451378}" - }, - 2137: { - "label": "Accra TM 1 NW", - "defaultExtent": "{\"xmin\": -5120945.63237391, \"ymin\": -9606893.16382267, \"xmax\": 6120945.63237391, \"ymax\": 9606893.163822664}" - }, - 2138: { - "label": "NAD 1927 CGQ77 Quebec Lambert", - "defaultExtent": "{\"xmin\": -35680010.172839805, \"ymin\": -29914856.728651848, \"xmax\": 35681054.02616269, \"ymax\": 34676682.98203933}" - }, - 2154: { - "label": "RGF 1993 Lambert 93", - "defaultExtent": "{\"xmin\": -35597354.96561363, \"ymin\": -23641742.915780753, \"xmax\": 36997354.96567414, \"ymax\": 36281510.84249297}" - }, - 2157: { - "label": "IRENET95 Irish Transverse Mercator", - "defaultExtent": "{\"xmin\": -5022000.830578041, \"ymin\": -14788098.285919925, \"xmax\": 6222000.830578041, \"ymax\": 4429701.461104079}" - }, - 2158: { - "label": "IRENET95 UTM Zone 29N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 2159: { - "label": "Sierra Leone 1924 New Colony Grid", - "defaultExtent": "{\"xmin\": -17948819.741296414, \"ymin\": -33949880.98263223, \"xmax\": 18948819.74129641, \"ymax\": 29112760.7310556}" - }, - 2160: { - "label": "Sierra Leone 1924 New War Office Grid", - "defaultExtent": "{\"xmin\": -17648819.74129641, \"ymin\": -33349880.98263223, \"xmax\": 19248819.741296414, \"ymax\": 29712760.731055595}" - }, - 2161: { - "label": "Sierra Leone 1968 UTM Zone 28N", - "defaultExtent": "{\"xmin\": -5120944.444949269, \"ymin\": -9606659.189062225, \"xmax\": 6120944.444949269, \"ymax\": 9606659.189062221}" - }, - 2162: { - "label": "Sierra Leone 1968 UTM Zone 29N", - "defaultExtent": "{\"xmin\": -5120944.444949269, \"ymin\": -9606659.189062225, \"xmax\": 6120944.444949269, \"ymax\": 9606659.189062221}" - }, - 2163: { - "label": "US National Atlas Equal Area", - "defaultExtent": "{\"xmin\": -12741963.67642718, \"ymin\": -12741963.676353633, \"xmax\": 12741963.676424429, \"ymax\": 12741963.67623926}" - }, - 2164: { - "label": "Locodjo 1965 TM 5 NW", - "defaultExtent": "{\"xmin\": -5120944.444949269, \"ymin\": -9606659.189062225, \"xmax\": 6120944.444949269, \"ymax\": 9606659.189062221}" - }, - 2165: { - "label": "Abidjan 1987 TM 5 NW", - "defaultExtent": "{\"xmin\": -5120944.444949269, \"ymin\": -9606659.189062225, \"xmax\": 6120944.444949269, \"ymax\": 9606659.189062221}" - }, - 2169: { - "label": "Luxembourg 1930 Gauss", - "defaultExtent": "{\"xmin\": -5543255.480734328, \"ymin\": -15033351.564889232, \"xmax\": 5703255.480734327, \"ymax\": 4188511.285249942}" - }, - 2170: { - "label": "MGI Slovenia Grid", - "defaultExtent": "{\"xmin\": -5121783.478067655, \"ymin\": -9608608.17013799, \"xmax\": 6121783.478067655, \"ymax\": 9608608.170137983}" - }, - 2172: { - "label": "Pulkovo 1942 Adj 1958 Poland Zone II", - "defaultExtent": "{\"xmin\": -26065569.363572035, \"ymin\": -24937516.03734677, \"xmax\": 35271569.36357747, \"ymax\": 36452418.27478253}" - }, - 2173: { - "label": "Pulkovo 1942 Adj 1958 Poland Zone III", - "defaultExtent": "{\"xmin\": -27163598.314889286, \"ymin\": -24742211.285152666, \"xmax\": 34165598.31472582, \"ymax\": 36640728.145694464}" - }, - 2174: { - "label": "Pulkovo 1942 Adj 1958 Poland Zone IV", - "defaultExtent": "{\"xmin\": -26974921.312138308, \"ymin\": -25121418.529166248, \"xmax\": 34380921.31167108, \"ymax\": 36284270.467157505}" - }, - 2175: { - "label": "Pulkovo 1942 Adj 1958 Poland Zone V", - "defaultExtent": "{\"xmin\": -5386011.874699769, \"ymin\": -14310631.732616123, \"xmax\": 5860011.874699769, \"ymax\": 4910631.732616119}" - }, - 2176: { - "label": "ETRS 1989 Poland CS2000 Zone 5", - "defaultExtent": "{\"xmin\": -122580.0009142505, \"ymin\": -9609889.768380051, \"xmax\": 11122580.00091425, \"ymax\": 9609889.768380046}" - }, - 2177: { - "label": "ETRS 1989 Poland CS2000 Zone 6", - "defaultExtent": "{\"xmin\": 877419.9990857495, \"ymin\": -9609889.768380051, \"xmax\": 12122580.00091425, \"ymax\": 9609889.768380046}" - }, - 2178: { - "label": "ETRS 1989 Poland CS2000 Zone 7", - "defaultExtent": "{\"xmin\": 1877419.9990857495, \"ymin\": -9609889.768380051, \"xmax\": 13122580.00091425, \"ymax\": 9609889.768380046}" - }, - 2179: { - "label": "ETRS 1989 Poland CS2000 Zone 8", - "defaultExtent": "{\"xmin\": 2877419.9990857495, \"ymin\": -9609889.768380051, \"xmax\": 14122580.00091425, \"ymax\": 9609889.768380046}" - }, - 2180: { - "label": "ETRS 1989 Poland CS92", - "defaultExtent": "{\"xmin\": -5119076.863832125, \"ymin\": -14903902.34602283, \"xmax\": 6119076.863832125, \"ymax\": 4303902.346022826}" - }, - 2181: { - "label": "ED 1950 Turkey 9", - "defaultExtent": "{\"xmin\": 3878993.821457967, \"ymin\": -9607087.05249956, \"xmax\": 15121006.178542033, \"ymax\": 9607087.052499557}" - }, - 2182: { - "label": "ED 1950 Turkey 10", - "defaultExtent": "{\"xmin\": 4878993.821457967, \"ymin\": -9607087.05249956, \"xmax\": 16121006.178542031, \"ymax\": 9607087.052499557}" - }, - 2183: { - "label": "ED 1950 Turkey 11", - "defaultExtent": "{\"xmin\": 5878993.821457967, \"ymin\": -9607087.05249956, \"xmax\": 17121006.178542033, \"ymax\": 9607087.052499557}" - }, - 2184: { - "label": "ED 1950 Turkey 12", - "defaultExtent": "{\"xmin\": 6878993.821457967, \"ymin\": -9607087.05249956, \"xmax\": 18121006.178542033, \"ymax\": 9607087.052499557}" - }, - 2185: { - "label": "ED 1950 Turkey 13", - "defaultExtent": "{\"xmin\": 7878993.821457967, \"ymin\": -9607087.05249956, \"xmax\": 19121006.178542033, \"ymax\": 9607087.052499557}" - }, - 2186: { - "label": "ED 1950 Turkey 14", - "defaultExtent": "{\"xmin\": 8878993.821457967, \"ymin\": -9607087.05249956, \"xmax\": 20121006.178542033, \"ymax\": 9607087.052499557}" - }, - 2187: { - "label": "ED 1950 Turkey 15", - "defaultExtent": "{\"xmin\": 9878993.821457967, \"ymin\": -9607087.05249956, \"xmax\": 21121006.178542033, \"ymax\": 9607087.052499557}" - }, - 2188: { - "label": "Azores Occidental 1939 UTM Zone 25N", - "defaultExtent": "{\"xmin\": -5121006.178542031, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 2189: { - "label": "Azores Central 1948 UTM Zone 26N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 2190: { - "label": "Azores Oriental 1940 UTM Zone 26N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 2191: { - "label": "Madeira 1936 UTM Zone 28N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 2192: { - "label": "ED 1950 France EuroLambert", - "defaultExtent": "{\"xmin\": -35694046.103438176, \"ymin\": -28094349.070989404, \"xmax\": 36894046.103399254, \"ymax\": 32113038.798133034}" - }, - 2193: { - "label": "NZGD 2000 New Zealand Transverse Mercator", - "defaultExtent": "{\"xmin\": -4020763.767723984, \"ymin\": 393214.4650619123, \"xmax\": 7220763.767724008, \"ymax\": 19606785.534938097}" - }, - 2195: { - "label": "NAD 1983 HARN UTM Zone 2S", - "defaultExtent": "{\"xmin\": -5120763.767723977, \"ymin\": 393214.4650619123, \"xmax\": 6120763.767724008, \"ymax\": 19606785.534938097}" - }, - 2196: { - "label": "ETRS 1989 Kp2000 Jutland", - "defaultExtent": "{\"xmin\": -5422731.8222645195, \"ymin\": -9610149.255384298, \"xmax\": 5822731.8222645195, \"ymax\": 9610149.255384292}" - }, - 2197: { - "label": "ETRS 1989 Kp2000 Zealand", - "defaultExtent": "{\"xmin\": -5122731.8222645195, \"ymin\": -9610149.255384298, \"xmax\": 6122731.8222645195, \"ymax\": 9610149.255384292}" - }, - 2198: { - "label": "ETRS 1989 Kp2000 Bornholm", - "defaultExtent": "{\"xmin\": -4723012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 6523012.972913165, \"ymax\": 9610629.786873637}" - }, - 2200: { - "label": "ATS 1977 New Brunswick Stereographic", - "defaultExtent": "{\"xmin\": -30416599.611189995, \"ymin\": -29744560.485488568, \"xmax\": 31016599.61129628, \"ymax\": 31499030.265266657}" - }, - 2201: { - "label": "REGVEN UTM Zone 18N", - "defaultExtent": "{\"xmin\": -5120763.767724002, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 2202: { - "label": "REGVEN UTM Zone 19N", - "defaultExtent": "{\"xmin\": -5120763.767724002, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 2203: { - "label": "REGVEN UTM Zone 20N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 2204: { - "label": "NAD 1927 StatePlane Tennessee FIPS 4100", - "defaultExtent": "{\"xmin\": -121484079.03694716, \"ymin\": -93948929.07689278, \"xmax\": 125484079.03734456, \"ymax\": 62283766.187677965}" - }, - 2205: { - "label": "NAD 1983 StatePlane Kentucky North FIPS 1601", - "defaultExtent": "{\"xmin\": -36706540.6144563, \"ymin\": -29061234.143652882, \"xmax\": 37706540.61484275, \"ymax\": 22066321.05409854}" - }, - 2206: { - "label": "ED 1950 3 Degree GK Zone 9", - "defaultExtent": "{\"xmin\": 3876744.519265673, \"ymin\": -9610931.42506959, \"xmax\": 15123255.480734326, \"ymax\": 9610931.425069584}" - }, - 2207: { - "label": "ED 1950 3 Degree GK Zone 10", - "defaultExtent": "{\"xmin\": 4876744.519265673, \"ymin\": -9610931.42506959, \"xmax\": 16123255.480734326, \"ymax\": 9610931.425069584}" - }, - 2208: { - "label": "ED 1950 3 Degree GK Zone 11", - "defaultExtent": "{\"xmin\": 5876744.519265673, \"ymin\": -9610931.42506959, \"xmax\": 17123255.480734326, \"ymax\": 9610931.425069584}" - }, - 2209: { - "label": "ED 1950 3 Degree GK Zone 12", - "defaultExtent": "{\"xmin\": 6876744.519265673, \"ymin\": -9610931.42506959, \"xmax\": 18123255.480734326, \"ymax\": 9610931.425069584}" - }, - 2210: { - "label": "ED 1950 3 Degree GK Zone 13", - "defaultExtent": "{\"xmin\": 7876744.519265673, \"ymin\": -9610931.42506959, \"xmax\": 19123255.480734326, \"ymax\": 9610931.425069584}" - }, - 2211: { - "label": "ED 1950 3 Degree GK Zone 14", - "defaultExtent": "{\"xmin\": 8876744.519265674, \"ymin\": -9610931.42506959, \"xmax\": 20123255.480734326, \"ymax\": 9610931.425069584}" - }, - 2212: { - "label": "ED 1950 3 Degree GK Zone 15", - "defaultExtent": "{\"xmin\": 9876744.519265674, \"ymin\": -9610931.42506959, \"xmax\": 21123255.480734326, \"ymax\": 9610931.425069584}" - }, - 2213: { - "label": "ETRS 1989 TM 30 NE", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767723999, \"ymax\": 9606785.534958888}" - }, - 2215: { - "label": "Manoca 1962 UTM Zone 32N", - "defaultExtent": "{\"xmin\": -5120944.475688979, \"ymin\": -9606659.335852288, \"xmax\": 6120944.475688979, \"ymax\": 9606659.335852282}" - }, - 2216: { - "label": "Qornoq 1927 UTM Zone 22N", - "defaultExtent": "{\"xmin\": -5121006.178542034, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 2217: { - "label": "Qornoq 1927 UTM Zone 23N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 2219: { - "label": "ATS 1977 UTM Zone 19N", - "defaultExtent": "{\"xmin\": -5120762.00894637, \"ymin\": -9606782.509083675, \"xmax\": 6120762.0089463685, \"ymax\": 9606782.50908367}" - }, - 2220: { - "label": "ATS 1977 UTM Zone 20N", - "defaultExtent": "{\"xmin\": -5120762.0089463685, \"ymin\": -9606782.509083675, \"xmax\": 6120762.0089463685, \"ymax\": 9606782.50908367}" - }, - 2222: { - "label": "NAD 1983 StatePlane Arizona East FIPS 0201 Feet Intl", - "defaultExtent": "{\"xmin\": -17746360.47118069, \"ymin\": -42783136.31847593, \"xmax\": 19146360.47118069, \"ymax\": 20272432.735952888}" - }, - 2223: { - "label": "NAD 1983 StatePlane Arizona Central FIPS 0202 Feet Intl", - "defaultExtent": "{\"xmin\": -17746360.47118068, \"ymin\": -42783136.31847593, \"xmax\": 19146360.47118069, \"ymax\": 20272432.735952888}" - }, - 2224: { - "label": "NAD 1983 StatePlane Arizona West FIPS 0203 Feet Intl", - "defaultExtent": "{\"xmin\": -17746975.41135708, \"ymin\": -42784562.5656446, \"xmax\": 19146975.41135708, \"ymax\": 20273108.55129229}" - }, - 2225: { - "label": "NAD 1983 StatePlane California I FIPS 0401 Feet", - "defaultExtent": "{\"xmin\": -114458610.55480444, \"ymin\": -94588064.20459928, \"xmax\": 127581943.88890164, \"ymax\": 82685969.32718042}" - }, - 2226: { - "label": "NAD 1983 StatePlane California II FIPS 0402 Feet", - "defaultExtent": "{\"xmin\": -115211412.98768437, \"ymin\": -93821072.13784765, \"xmax\": 128334746.32134637, \"ymax\": 76478294.09990206}" - }, - 2227: { - "label": "NAD 1983 StatePlane California III FIPS 0403 Feet", - "defaultExtent": "{\"xmin\": -115860210.37094994, \"ymin\": -93269129.6599007, \"xmax\": 128983543.70415375, \"ymax\": 71428330.00270241}" - }, - 2228: { - "label": "NAD 1983 StatePlane California IV FIPS 0404 Feet", - "defaultExtent": "{\"xmin\": -116465913.66438816, \"ymin\": -92734900.17158945, \"xmax\": 129589246.99847071, \"ymax\": 67053603.00798039}" - }, - 2229: { - "label": "NAD 1983 StatePlane California V FIPS 0405 Feet", - "defaultExtent": "{\"xmin\": -117608557.49121174, \"ymin\": -91881062.55921307, \"xmax\": 130731890.82417348, \"ymax\": 59380571.79304032}" - }, - 2230: { - "label": "NAD 1983 StatePlane California VI FIPS 0406 Feet", - "defaultExtent": "{\"xmin\": -118608490.04197799, \"ymin\": -91259162.22866274, \"xmax\": 131731823.37510438, \"ymax\": 53304515.12412693}" - }, - 2231: { - "label": "NAD 1983 StatePlane Colorado North FIPS 0501 Feet", - "defaultExtent": "{\"xmin\": -118265167.59051295, \"ymin\": -95179746.55749778, \"xmax\": 124265167.5923714, \"ymax\": 79822140.81045881}" - }, - 2232: { - "label": "NAD 1983 StatePlane Colorado Central FIPS 0502 Feet", - "defaultExtent": "{\"xmin\": -118767524.2862273, \"ymin\": -94525123.55933148, \"xmax\": 124767524.28523397, \"ymax\": 75844078.47557206}" - }, - 2233: { - "label": "NAD 1983 StatePlane Colorado South FIPS 0503 Feet", - "defaultExtent": "{\"xmin\": -119380948.96589889, \"ymin\": -93979378.42345235, \"xmax\": 125380948.96797225, \"ymax\": 71076245.23941058}" - }, - 2234: { - "label": "NAD 1983 StatePlane Connecticut FIPS 0600 Feet", - "defaultExtent": "{\"xmin\": -119755880.50351368, \"ymin\": -96342133.97695734, \"xmax\": 121755880.50251827, \"ymax\": 83602707.3085715}" - }, - 2235: { - "label": "NAD 1983 StatePlane Delaware FIPS 0700 Feet", - "defaultExtent": "{\"xmin\": -17791909.487790633, \"ymin\": -45334747.63504151, \"xmax\": 19104242.821123965, \"ymax\": 17726686.174415406}" - }, - 2236: { - "label": "NAD 1983 StatePlane Florida East FIPS 0901 Feet", - "defaultExtent": "{\"xmin\": -17790916.542256415, \"ymin\": -40361188.817423075, \"xmax\": 19103249.875589747, \"ymax\": 22696850.786125436}" - }, - 2237: { - "label": "NAD 1983 StatePlane Florida West FIPS 0902 Feet", - "defaultExtent": "{\"xmin\": -17790916.542256407, \"ymin\": -40361188.817423075, \"xmax\": 19103249.875589747, \"ymax\": 22696850.786125436}" - }, - 2238: { - "label": "NAD 1983 StatePlane Florida North FIPS 0903 Feet", - "defaultExtent": "{\"xmin\": -125938673.75279626, \"ymin\": -91452964.48785444, \"xmax\": 129875673.75419696, \"ymax\": 37469174.881458886}" - }, - 2239: { - "label": "NAD 1983 StatePlane Georgia East FIPS 1001 Feet", - "defaultExtent": "{\"xmin\": -17790156.91179308, \"ymin\": -42419370.90387128, \"xmax\": 19102490.24512641, \"ymax\": 20636072.039419413}" - }, - 2240: { - "label": "NAD 1983 StatePlane Georgia West FIPS 1002 Feet", - "defaultExtent": "{\"xmin\": -16149740.245126404, \"ymin\": -42419370.90387128, \"xmax\": 20742906.91179307, \"ymax\": 20636072.039419413}" - }, - 2241: { - "label": "NAD 1983 StatePlane Idaho East FIPS 1101 Feet", - "defaultExtent": "{\"xmin\": -17791030.77240127, \"ymin\": -46668196.09827923, \"xmax\": 19103364.105734605, \"ymax\": 16390233.980496006}" - }, - 2242: { - "label": "NAD 1983 StatePlane Idaho Central FIPS 1102 Feet", - "defaultExtent": "{\"xmin\": -16806780.77240127, \"ymin\": -46668196.09827923, \"xmax\": 20087614.105734613, \"ymax\": 16390233.980496006}" - }, - 2243: { - "label": "NAD 1983 StatePlane Idaho West FIPS 1103 Feet", - "defaultExtent": "{\"xmin\": -15822271.850739589, \"ymin\": -46667541.07157821, \"xmax\": 21071605.18407292, \"ymax\": 16390003.930016432}" - }, - 2246: { - "label": "NAD 1983 StatePlane Kentucky North FIPS 1601 Feet", - "defaultExtent": "{\"xmin\": -120428041.99926203, \"ymin\": -95345065.68630116, \"xmax\": 123708875.33386324, \"ymax\": 72395921.65832162}" - }, - 2247: { - "label": "NAD 1983 StatePlane Kentucky South FIPS 1602 Feet", - "defaultExtent": "{\"xmin\": -121000416.20168285, \"ymin\": -93168846.35527569, \"xmax\": 124281249.53427276, \"ymax\": 69730104.69593088}" - }, - 2248: { - "label": "NAD 1983 StatePlane Maryland FIPS 1900 Feet", - "defaultExtent": "{\"xmin\": -120560806.33287005, \"ymin\": -95443984.07002771, \"xmax\": 123185473.00068705, \"ymax\": 73998139.81175338}" - }, - 2249: { - "label": "NAD 1983 StatePlane Massachusetts Mainland FIPS 2001 Feet", - "defaultExtent": "{\"xmin\": -119851157.08837874, \"ymin\": -94497855.62743106, \"xmax\": 121163490.421691, \"ymax\": 87915078.06965832}" - }, - 2250: { - "label": "NAD 1983 StatePlane Massachusetts Island FIPS 2002 Feet", - "defaultExtent": "{\"xmin\": -119174181.5124591, \"ymin\": -96890792.84508213, \"xmax\": 122455014.84498255, \"ymax\": 82490183.72572033}" - }, - 2251: { - "label": "NAD 1983 StatePlane Michigan North FIPS 2111 Feet Intl", - "defaultExtent": "{\"xmin\": -92972467.72510123, \"ymin\": -98631116.53314169, \"xmax\": 145465906.0456582, \"ymax\": 97383435.38129252}" - }, - 2252: { - "label": "NAD 1983 StatePlane Michigan Central FIPS 2112 Feet Intl", - "defaultExtent": "{\"xmin\": -99918604.4313006, \"ymin\": -98010270.3373822, \"xmax\": 139288683.17293534, \"ymax\": 93827998.58621791}" - }, - 2253: { - "label": "NAD 1983 StatePlane Michigan South FIPS 2113 Feet Intl", - "defaultExtent": "{\"xmin\": -107138194.28103462, \"ymin\": -97193419.70523094, \"xmax\": 133384913.43970798, \"ymax\": 87676226.96755593}" - }, - 2254: { - "label": "NAD 1983 StatePlane Mississippi East FIPS 2301 Feet", - "defaultExtent": "{\"xmin\": -17462995.9868795, \"ymin\": -42239663.87008002, \"xmax\": 19431495.98687951, \"ymax\": 20818932.160666604}" - }, - 2255: { - "label": "NAD 1983 StatePlane Mississippi West FIPS 2302 Feet", - "defaultExtent": "{\"xmin\": -16150662.653546175, \"ymin\": -42239663.87008, \"xmax\": 20743829.32021284, \"ymax\": 20818932.160666604}" - }, - 2256: { - "label": "NAD 1983 StatePlane Montana FIPS 2500 Feet Intl", - "defaultExtent": "{\"xmin\": -117013995.52207346, \"ymin\": -98447330.28043139, \"xmax\": 120951003.39639506, \"ymax\": 99640574.5270326}" - }, - 2257: { - "label": "NAD 1983 StatePlane New Mexico East FIPS 3001 Feet", - "defaultExtent": "{\"xmin\": -17905153.78908151, \"ymin\": -42783439.727925874, \"xmax\": 18987828.789081518, \"ymax\": 20272576.503993165}" - }, - 2258: { - "label": "NAD 1983 StatePlane New Mexico Central FIPS 3002 Feet", - "defaultExtent": "{\"xmin\": -16805906.91179308, \"ymin\": -42783050.752203286, \"xmax\": 20086740.24512641, \"ymax\": 20272392.191087414}" - }, - 2259: { - "label": "NAD 1983 StatePlane New Mexico West FIPS 3003 Feet", - "defaultExtent": "{\"xmin\": -15723539.381266333, \"ymin\": -42783763.87436138, \"xmax\": 21169722.714599665, \"ymax\": 20272730.0980813}" - }, - 2260: { - "label": "NAD 1983 StatePlane New York East FIPS 3101 Feet", - "defaultExtent": "{\"xmin\": -17954198.578459747, \"ymin\": -45633899.523189425, \"xmax\": 18938448.578459747, \"ymax\": 17421543.42010127}" - }, - 2261: { - "label": "NAD 1983 StatePlane New York Central FIPS 3102 Feet", - "defaultExtent": "{\"xmin\": -17626807.051441226, \"ymin\": -46060542.08865336, \"xmax\": 19267223.7181079, \"ymax\": 16997265.67022927}" - }, - 2262: { - "label": "NAD 1983 StatePlane New York West FIPS 3103 Feet", - "defaultExtent": "{\"xmin\": -17298723.718107905, \"ymin\": -46060542.08865336, \"xmax\": 19595307.051441234, \"ymax\": 16997265.67022927}" - }, - 2263: { - "label": "NAD 1983 StatePlane New York Long Island FIPS 3104 Feet", - "defaultExtent": "{\"xmin\": -120038987.02345988, \"ymin\": -96539899.17850932, \"xmax\": 122007487.02620924, \"ymax\": 80805040.5747754}" - }, - 2264: { - "label": "NAD 1983 StatePlane North Carolina FIPS 3200 Feet", - "defaultExtent": "{\"xmin\": -121841586.87741105, \"ymin\": -93658623.64436917, \"xmax\": 125841586.88327493, \"ymax\": 59913544.75136323}" - }, - 2265: { - "label": "NAD 1983 StatePlane North Dakota North FIPS 3301 Feet Intl", - "defaultExtent": "{\"xmin\": -116783950.51168965, \"ymin\": -99537492.31395046, \"xmax\": 120720958.38720465, \"ymax\": 101623824.1606784}" - }, - 2266: { - "label": "NAD 1983 StatePlane North Dakota South FIPS 3302 Feet Intl", - "defaultExtent": "{\"xmin\": -117105075.65506853, \"ymin\": -98987163.59963356, \"xmax\": 121042083.53063746, \"ymax\": 98657782.40360132}" - }, - 2267: { - "label": "NAD 1983 StatePlane Oklahoma North FIPS 3501 Feet", - "defaultExtent": "{\"xmin\": -121322703.18440174, \"ymin\": -94209043.74450657, \"xmax\": 125259703.18427433, \"ymax\": 63533994.71936889}" - }, - 2268: { - "label": "NAD 1983 StatePlane Oklahoma South FIPS 3502 Feet", - "defaultExtent": "{\"xmin\": -122314145.16124853, \"ymin\": -93445293.73183505, \"xmax\": 126251145.15971924, \"ymax\": 57039858.7775079}" - }, - 2269: { - "label": "NAD 1983 StatePlane Oregon North FIPS 3601 Feet Intl", - "defaultExtent": "{\"xmin\": -111333319.15464048, \"ymin\": -98152135.76997603, \"xmax\": 127737518.6308039, \"ymax\": 94405600.09722382}" - }, - 2270: { - "label": "NAD 1983 StatePlane Oregon South FIPS 3602 Feet Intl", - "defaultExtent": "{\"xmin\": -115242838.16340137, \"ymin\": -97276009.95433559, \"xmax\": 125085357.8485172, \"ymax\": 88591642.56355196}" - }, - 2271: { - "label": "NAD 1983 StatePlane Pennsylvania North FIPS 3701 Feet", - "defaultExtent": "{\"xmin\": -118829356.74151887, \"ymin\": -96587444.64488281, \"xmax\": 122766356.74360676, \"ymax\": 82916574.83834386}" - }, - 2272: { - "label": "NAD 1983 StatePlane Pennsylvania South FIPS 3702 Feet", - "defaultExtent": "{\"xmin\": -119213784.2218722, \"ymin\": -96198102.70097685, \"xmax\": 123150784.2210237, \"ymax\": 79590002.60442021}" - }, - 2273: { - "label": "NAD 1983 StatePlane South Carolina FIPS 3900 Feet Intl", - "defaultExtent": "{\"xmin\": -122907247.20356415, \"ymin\": -92800295.78573051, \"xmax\": 126907247.20854722, \"ymax\": 53349900.40648384}" - }, - 2274: { - "label": "NAD 1983 StatePlane Tennessee FIPS 4100 Feet", - "defaultExtent": "{\"xmin\": -121520920.4350513, \"ymin\": -93933602.54162051, \"xmax\": 125457920.43544713, \"ymax\": 62305849.94527583}" - }, - 2275: { - "label": "NAD 1983 StatePlane Texas North FIPS 4201 Feet", - "defaultExtent": "{\"xmin\": -123084727.03576224, \"ymin\": -90487774.87579198, \"xmax\": 124397060.36918813, \"ymax\": 63851419.2061681}" - }, - 2276: { - "label": "NAD 1983 StatePlane Texas North Central FIPS 4202 Feet", - "defaultExtent": "{\"xmin\": -123407288.90697485, \"ymin\": -86123158.24650788, \"xmax\": 127344288.90679376, \"ymax\": 57072008.04375381}" - }, - 2277: { - "label": "NAD 1983 StatePlane Texas Central FIPS 4203 Feet", - "defaultExtent": "{\"xmin\": -124805075.29653856, \"ymin\": -81922742.74194843, \"xmax\": 129398241.96319537, \"ymax\": 51189696.39569576}" - }, - 2278: { - "label": "NAD 1983 StatePlane Texas South Central FIPS 4204 Feet", - "defaultExtent": "{\"xmin\": -126725298.51400925, \"ymin\": -77828390.98283607, \"xmax\": 130662298.51400925, \"ymax\": 50600114.754025035}" - }, - 2279: { - "label": "NAD 1983 StatePlane Texas South FIPS 4205 Feet", - "defaultExtent": "{\"xmin\": -129208724.97637452, \"ymin\": -73583789.01494722, \"xmax\": 131177224.97637452, \"ymax\": 56202225.512442015}" - }, - 2280: { - "label": "NAD 1983 StatePlane Utah North FIPS 4301 Feet Intl", - "defaultExtent": "{\"xmin\": -119221897.73343366, \"ymin\": -93352960.55201896, \"xmax\": 122502737.93217586, \"ymax\": 85520637.00545405}" - }, - 2281: { - "label": "NAD 1983 StatePlane Utah Central FIPS 4302 Feet Intl", - "defaultExtent": "{\"xmin\": -119796785.37297969, \"ymin\": -89212006.47602427, \"xmax\": 123077625.27009863, \"ymax\": 84130276.14041065}" - }, - 2282: { - "label": "NAD 1983 StatePlane Utah South FIPS 4303 Feet Intl", - "defaultExtent": "{\"xmin\": -120766876.88852009, \"ymin\": -85132571.66656305, \"xmax\": 124047716.78259352, \"ymax\": 79709545.58655652}" - }, - 2283: { - "label": "NAD 1983 StatePlane Virginia North FIPS 4501 Feet", - "defaultExtent": "{\"xmin\": -110512122.6100782, \"ymin\": -88857586.91005945, \"xmax\": 133477955.94636394, \"ymax\": 79510388.9753926}" - }, - 2284: { - "label": "NAD 1983 StatePlane Virginia South FIPS 4502 Feet", - "defaultExtent": "{\"xmin\": -111140252.78501177, \"ymin\": -91531690.27508196, \"xmax\": 134106086.11804111, \"ymax\": 71512049.29681908}" - }, - 2285: { - "label": "NAD 1983 StatePlane Washington North FIPS 4601 Feet", - "defaultExtent": "{\"xmin\": -117104065.01403554, \"ymin\": -99539209.71191388, \"xmax\": 120384898.34799246, \"ymax\": 101712467.82241428}" - }, - 2286: { - "label": "NAD 1983 StatePlane Washington South FIPS 4602 Feet", - "defaultExtent": "{\"xmin\": -117497986.15361571, \"ymin\": -98849886.06598788, \"xmax\": 120778819.48946907, \"ymax\": 98059213.04053889}" - }, - 2287: { - "label": "NAD 1983 StatePlane Wisconsin North FIPS 4801 Feet", - "defaultExtent": "{\"xmin\": -117286293.49705541, \"ymin\": -98766220.59380393, \"xmax\": 121223293.49621527, \"ymax\": 96899429.19742505}" - }, - 2288: { - "label": "NAD 1983 StatePlane Wisconsin Central FIPS 4802 Feet", - "defaultExtent": "{\"xmin\": -117657339.14061904, \"ymin\": -98195540.81718999, \"xmax\": 121594339.12275791, \"ymax\": 93429232.43439895}" - }, - 2289: { - "label": "NAD 1983 StatePlane Wisconsin South FIPS 4803 Feet", - "defaultExtent": "{\"xmin\": -118120973.36007847, \"ymin\": -97417963.07799816, \"xmax\": 122057973.36029819, \"ymax\": 89265120.26596287}" - }, - 2290: { - "label": "Prince Edward Island Stereographic", - "defaultExtent": "{\"xmin\": -30010549.426865466, \"ymin\": -30167203.47139143, \"xmax\": 31410549.42693893, \"ymax\": 31092903.208509132}" - }, - 2294: { - "label": "ATS 1977 MTM 4 Nova Scotia", - "defaultExtent": "{\"xmin\": -1122448.9123103973, \"ymin\": -9609665.69711161, \"xmax\": 10122448.912310397, \"ymax\": 9609665.697111605}" - }, - 2295: { - "label": "ATS 1977 MTM 5 Nova Scotia", - "defaultExtent": "{\"xmin\": -122448.91231040005, \"ymin\": -9609665.69711161, \"xmax\": 11122448.912310397, \"ymax\": 9609665.697111605}" - }, - 2308: { - "label": "Batavia TM 109 SE", - "defaultExtent": "{\"xmin\": -5120096.774353864, \"ymin\": 394274.70060012117, \"xmax\": 6120096.774353857, \"ymax\": 19605725.299399868}" - }, - 2309: { - "label": "WGS 1984 TM 116 SE", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": 393214.4649524782, \"xmax\": 6120763.767699434, \"ymax\": 19606785.535047516}" - }, - 2310: { - "label": "WGS 1984 TM 132 SE", - "defaultExtent": "{\"xmin\": -5120763.767699436, \"ymin\": 393214.4649524782, \"xmax\": 6120763.767699434, \"ymax\": 19606785.535047516}" - }, - 2311: { - "label": "WGS 1984 TM 6 NE", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699434, \"ymax\": 9606785.535047516}" - }, - 2312: { - "label": "Garoua UTM Zone 33N", - "defaultExtent": "{\"xmin\": -5120944.444949269, \"ymin\": -9606659.189062225, \"xmax\": 6120944.444949269, \"ymax\": 9606659.189062221}" - }, - 2313: { - "label": "Kousseri UTM Zone 33N", - "defaultExtent": "{\"xmin\": -5120944.444949269, \"ymin\": -9606659.189062225, \"xmax\": 6120944.444949269, \"ymax\": 9606659.189062221}" - }, - 2314: { - "label": "Trinidad 1903 Trinidad Grid Feet Clarke", - "defaultExtent": "{\"xmin\": -16151715.285815865, \"ymin\": -35104537.2023878, \"xmax\": 16719315.285815863, \"ymax\": 27957144.92800056}" - }, - 2315: { - "label": "Campo Inchauspe UTM 19S", - "defaultExtent": "{\"xmin\": -5121006.178542035, \"ymin\": 392912.94750043936, \"xmax\": 6121006.178542033, \"ymax\": 19607087.052499555}" - }, - 2316: { - "label": "Campo Inchauspe UTM 20S", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": 392912.94750043936, \"xmax\": 6121006.178542033, \"ymax\": 19607087.052499555}" - }, - 2317: { - "label": "PSAD 1956 ICN Regional", - "defaultExtent": "{\"xmin\": -26426440.02614715, \"ymin\": -23423189.391888738, \"xmax\": 28426440.02614717, \"ymax\": 19814342.582411215}" - }, - 2318: { - "label": "Ain el Abd Aramco Lambert", - "defaultExtent": "{\"xmin\": -39472439.502809376, \"ymin\": -27124715.530694135, \"xmax\": 39472439.502809376, \"ymax\": 12477105.744220322}" - }, - 2319: { - "label": "ED 1950 TM27", - "defaultExtent": "{\"xmin\": -5123255.480734327, \"ymin\": -9610931.42506959, \"xmax\": 6123255.480734327, \"ymax\": 9610931.425069584}" - }, - 2320: { - "label": "ED 1950 TM30", - "defaultExtent": "{\"xmin\": -5123255.480734327, \"ymin\": -9610931.42506959, \"xmax\": 6123255.480734325, \"ymax\": 9610931.425069584}" - }, - 2321: { - "label": "ED 1950 TM33", - "defaultExtent": "{\"xmin\": -5123255.480734327, \"ymin\": -9610931.42506959, \"xmax\": 6123255.480734325, \"ymax\": 9610931.425069584}" - }, - 2322: { - "label": "ED 1950 TM36", - "defaultExtent": "{\"xmin\": -5123255.480734327, \"ymin\": -9610931.42506959, \"xmax\": 6123255.480734327, \"ymax\": 9610931.425069584}" - }, - 2323: { - "label": "ED 1950 TM39", - "defaultExtent": "{\"xmin\": -5123255.480734327, \"ymin\": -9610931.42506959, \"xmax\": 6123255.480734325, \"ymax\": 9610931.425069584}" - }, - 2324: { - "label": "ED 1950 TM42", - "defaultExtent": "{\"xmin\": -5123255.480734327, \"ymin\": -9610931.42506959, \"xmax\": 6123255.480734325, \"ymax\": 9610931.425069584}" - }, - 2325: { - "label": "ED 1950 TM45", - "defaultExtent": "{\"xmin\": -5123255.480734327, \"ymin\": -9610931.42506959, \"xmax\": 6123255.480734327, \"ymax\": 9610931.425069584}" - }, - 2326: { - "label": "Hong Kong 1980 Grid", - "defaultExtent": "{\"xmin\": -4786561.430734327, \"ymin\": -11260257.347926376, \"xmax\": 6459949.530734327, \"ymax\": 7961605.5022127945}" - }, - 2327: { - "label": "Xian 1980 GK Zone 13", - "defaultExtent": "{\"xmin\": 7876984.378531103, \"ymin\": -9610634.29382909, \"xmax\": 19123015.621468898, \"ymax\": 9610634.293829085}" - }, - 2328: { - "label": "Xian 1980 GK Zone 14", - "defaultExtent": "{\"xmin\": 8876984.378531102, \"ymin\": -9610634.29382909, \"xmax\": 20123015.621468898, \"ymax\": 9610634.293829085}" - }, - 2329: { - "label": "Xian 1980 GK Zone 15", - "defaultExtent": "{\"xmin\": 9876984.378531102, \"ymin\": -9610634.29382909, \"xmax\": 21123015.621468894, \"ymax\": 9610634.293829085}" - }, - 2330: { - "label": "Xian 1980 GK Zone 16", - "defaultExtent": "{\"xmin\": 10876984.378531102, \"ymin\": -9610634.29382909, \"xmax\": 22123015.621468894, \"ymax\": 9610634.293829085}" - }, - 2331: { - "label": "Xian 1980 GK Zone 17", - "defaultExtent": "{\"xmin\": 11876984.378531102, \"ymin\": -9610634.29382909, \"xmax\": 23123015.621468898, \"ymax\": 9610634.293829085}" - }, - 2332: { - "label": "Xian 1980 GK Zone 18", - "defaultExtent": "{\"xmin\": 12876984.378531102, \"ymin\": -9610634.29382909, \"xmax\": 24123015.621468898, \"ymax\": 9610634.293829085}" - }, - 2333: { - "label": "Xian 1980 GK Zone 19", - "defaultExtent": "{\"xmin\": 13876984.378531102, \"ymin\": -9610634.29382909, \"xmax\": 25123015.621468894, \"ymax\": 9610634.293829085}" - }, - 2334: { - "label": "Xian 1980 GK Zone 20", - "defaultExtent": "{\"xmin\": 14876984.378531102, \"ymin\": -9610634.29382909, \"xmax\": 26123015.621468898, \"ymax\": 9610634.293829085}" - }, - 2335: { - "label": "Xian 1980 GK Zone 21", - "defaultExtent": "{\"xmin\": 15876984.378531102, \"ymin\": -9610634.29382909, \"xmax\": 27123015.621468898, \"ymax\": 9610634.293829085}" - }, - 2336: { - "label": "Xian 1980 GK Zone 22", - "defaultExtent": "{\"xmin\": 16876984.378531102, \"ymin\": -9610634.29382909, \"xmax\": 28123015.621468898, \"ymax\": 9610634.293829085}" - }, - 2337: { - "label": "Xian 1980 GK Zone 23", - "defaultExtent": "{\"xmin\": 17876984.378531102, \"ymin\": -9610634.293829087, \"xmax\": 29123013.821345787, \"ymax\": 9610634.293829085}" - }, - 2338: { - "label": "Xian 1980 GK CM 75E", - "defaultExtent": "{\"xmin\": -5123015.621468897, \"ymin\": -9610634.29382909, \"xmax\": 6123015.621468899, \"ymax\": 9610634.293829085}" - }, - 2339: { - "label": "Xian 1980 GK CM 81E", - "defaultExtent": "{\"xmin\": -5123015.621468897, \"ymin\": -9610634.29382909, \"xmax\": 6123015.621468897, \"ymax\": 9610634.293829085}" - }, - 2340: { - "label": "Xian 1980 GK CM 87E", - "defaultExtent": "{\"xmin\": -5123015.621468897, \"ymin\": -9610634.29382909, \"xmax\": 6123015.621468895, \"ymax\": 9610634.293829085}" - }, - 2341: { - "label": "Xian 1980 GK CM 93E", - "defaultExtent": "{\"xmin\": -5123015.621468897, \"ymin\": -9610634.29382909, \"xmax\": 6123015.621468895, \"ymax\": 9610634.293829085}" - }, - 2342: { - "label": "Xian 1980 GK CM 99E", - "defaultExtent": "{\"xmin\": -5123015.621468897, \"ymin\": -9610634.29382909, \"xmax\": 6123015.621468897, \"ymax\": 9610634.293829085}" - }, - 2343: { - "label": "Xian 1980 GK CM 105E", - "defaultExtent": "{\"xmin\": -5123015.621468897, \"ymin\": -9610634.29382909, \"xmax\": 6123015.621468897, \"ymax\": 9610634.293829085}" - }, - 2344: { - "label": "Xian 1980 GK CM 111E", - "defaultExtent": "{\"xmin\": -5123015.621468897, \"ymin\": -9610634.29382909, \"xmax\": 6123015.621468895, \"ymax\": 9610634.293829085}" - }, - 2345: { - "label": "Xian 1980 GK CM 117E", - "defaultExtent": "{\"xmin\": -5123015.621468897, \"ymin\": -9610634.29382909, \"xmax\": 6123015.621468897, \"ymax\": 9610634.293829085}" - }, - 2346: { - "label": "Xian 1980 GK CM 123E", - "defaultExtent": "{\"xmin\": -5123015.621468899, \"ymin\": -9610634.29382909, \"xmax\": 6123015.621468897, \"ymax\": 9610634.293829085}" - }, - 2347: { - "label": "Xian 1980 GK CM 129E", - "defaultExtent": "{\"xmin\": -5123015.621468897, \"ymin\": -9610634.29382909, \"xmax\": 6123015.621468897, \"ymax\": 9610634.293829085}" - }, - 2348: { - "label": "Xian 1980 GK CM 135E", - "defaultExtent": "{\"xmin\": -5123015.621468897, \"ymin\": -9610634.293829087, \"xmax\": 6123013.821345787, \"ymax\": 9610634.293829085}" - }, - 2349: { - "label": "Xian 1980 3 Degree GK Zone 25", - "defaultExtent": "{\"xmin\": 19876984.378531102, \"ymin\": -9610634.29382909, \"xmax\": 31123015.621468898, \"ymax\": 9610634.293829085}" - }, - 2350: { - "label": "Xian 1980 3 Degree GK Zone 26", - "defaultExtent": "{\"xmin\": 20876984.378531102, \"ymin\": -9610634.29382909, \"xmax\": 32123015.621468894, \"ymax\": 9610634.293829085}" - }, - 2351: { - "label": "Xian 1980 3 Degree GK Zone 27", - "defaultExtent": "{\"xmin\": 21876984.378531102, \"ymin\": -9610634.29382909, \"xmax\": 33123015.621468898, \"ymax\": 9610634.293829085}" - }, - 2352: { - "label": "Xian 1980 3 Degree GK Zone 28", - "defaultExtent": "{\"xmin\": 22876984.378531102, \"ymin\": -9610634.29382909, \"xmax\": 34123015.621468894, \"ymax\": 9610634.293829085}" - }, - 2353: { - "label": "Xian 1980 3 Degree GK Zone 29", - "defaultExtent": "{\"xmin\": 23876984.378531102, \"ymin\": -9610634.29382909, \"xmax\": 35123015.621468894, \"ymax\": 9610634.293829085}" - }, - 2354: { - "label": "Xian 1980 3 Degree GK Zone 30", - "defaultExtent": "{\"xmin\": 24876984.378531102, \"ymin\": -9610634.29382909, \"xmax\": 36123015.621468894, \"ymax\": 9610634.293829085}" - }, - 2355: { - "label": "Xian 1980 3 Degree GK Zone 31", - "defaultExtent": "{\"xmin\": 25876984.378531102, \"ymin\": -9610634.29382909, \"xmax\": 37123015.621468894, \"ymax\": 9610634.293829085}" - }, - 2356: { - "label": "Xian 1980 3 Degree GK Zone 32", - "defaultExtent": "{\"xmin\": 26876984.378531102, \"ymin\": -9610634.29382909, \"xmax\": 38123015.621468894, \"ymax\": 9610634.293829085}" - }, - 2357: { - "label": "Xian 1980 3 Degree GK Zone 33", - "defaultExtent": "{\"xmin\": 27876984.378531102, \"ymin\": -9610634.29382909, \"xmax\": 39123015.621468894, \"ymax\": 9610634.293829085}" - }, - 2358: { - "label": "Xian 1980 3 Degree GK Zone 34", - "defaultExtent": "{\"xmin\": 28876984.378531102, \"ymin\": -9610634.29382909, \"xmax\": 40123015.621468894, \"ymax\": 9610634.293829085}" - }, - 2359: { - "label": "Xian 1980 3 Degree GK Zone 35", - "defaultExtent": "{\"xmin\": 29876984.378531102, \"ymin\": -9610634.29382909, \"xmax\": 41123015.621468894, \"ymax\": 9610634.293829085}" - }, - 2360: { - "label": "Xian 1980 3 Degree GK Zone 36", - "defaultExtent": "{\"xmin\": 30876984.378531102, \"ymin\": -9610634.29382909, \"xmax\": 42123015.621468894, \"ymax\": 9610634.293829085}" - }, - 2361: { - "label": "Xian 1980 3 Degree GK Zone 37", - "defaultExtent": "{\"xmin\": 31876984.378531102, \"ymin\": -9610634.29382909, \"xmax\": 43123015.621468894, \"ymax\": 9610634.293829085}" - }, - 2362: { - "label": "Xian 1980 3 Degree GK Zone 38", - "defaultExtent": "{\"xmin\": 32876984.378531102, \"ymin\": -9610634.29382909, \"xmax\": 44123015.621468894, \"ymax\": 9610634.293829085}" - }, - 2363: { - "label": "Xian 1980 3 Degree GK Zone 39", - "defaultExtent": "{\"xmin\": 33876984.378531106, \"ymin\": -9610634.29382909, \"xmax\": 45123015.621468894, \"ymax\": 9610634.293829085}" - }, - 2364: { - "label": "Xian 1980 3 Degree GK Zone 40", - "defaultExtent": "{\"xmin\": 34876984.378531106, \"ymin\": -9610634.29382909, \"xmax\": 46123015.621468894, \"ymax\": 9610634.293829085}" - }, - 2365: { - "label": "Xian 1980 3 Degree GK Zone 41", - "defaultExtent": "{\"xmin\": 35876984.3785311, \"ymin\": -9610634.29382909, \"xmax\": 47123015.621468894, \"ymax\": 9610634.293829085}" - }, - 2366: { - "label": "Xian 1980 3 Degree GK Zone 42", - "defaultExtent": "{\"xmin\": 36876984.378531106, \"ymin\": -9610634.29382909, \"xmax\": 48123015.621468894, \"ymax\": 9610634.293829085}" - }, - 2367: { - "label": "Xian 1980 3 Degree GK Zone 43", - "defaultExtent": "{\"xmin\": 37876984.378531106, \"ymin\": -9610634.29382909, \"xmax\": 49123015.621468894, \"ymax\": 9610634.293829085}" - }, - 2368: { - "label": "Xian 1980 3 Degree GK Zone 44", - "defaultExtent": "{\"xmin\": 38876984.3785311, \"ymin\": -9610634.29382909, \"xmax\": 50123015.621468894, \"ymax\": 9610634.293829085}" - }, - 2369: { - "label": "Xian 1980 3 Degree GK Zone 45", - "defaultExtent": "{\"xmin\": 39876984.378531106, \"ymin\": -9610634.293829087, \"xmax\": 51123013.821345784, \"ymax\": 9610634.293829085}" - }, - 2370: { - "label": "Xian 1980 3 Degree GK CM 75E", - "defaultExtent": "{\"xmin\": -5123015.621468897, \"ymin\": -9610634.29382909, \"xmax\": 6123015.621468899, \"ymax\": 9610634.293829085}" - }, - 2371: { - "label": "Xian 1980 3 Degree GK CM 78E", - "defaultExtent": "{\"xmin\": -5123015.621468897, \"ymin\": -9610634.29382909, \"xmax\": 6123015.621468895, \"ymax\": 9610634.293829085}" - }, - 2372: { - "label": "Xian 1980 3 Degree GK CM 81E", - "defaultExtent": "{\"xmin\": -5123015.621468897, \"ymin\": -9610634.29382909, \"xmax\": 6123015.621468897, \"ymax\": 9610634.293829085}" - }, - 2373: { - "label": "Xian 1980 3 Degree GK CM 84E", - "defaultExtent": "{\"xmin\": -5123015.621468898, \"ymin\": -9610634.29382909, \"xmax\": 6123015.621468895, \"ymax\": 9610634.293829085}" - }, - 2374: { - "label": "Xian 1980 3 Degree GK CM 87E", - "defaultExtent": "{\"xmin\": -5123015.621468897, \"ymin\": -9610634.29382909, \"xmax\": 6123015.621468895, \"ymax\": 9610634.293829085}" - }, - 2375: { - "label": "Xian 1980 3 Degree GK CM 90E", - "defaultExtent": "{\"xmin\": -5123015.621468897, \"ymin\": -9610634.29382909, \"xmax\": 6123015.621468897, \"ymax\": 9610634.293829085}" - }, - 2376: { - "label": "Xian 1980 3 Degree GK CM 93E", - "defaultExtent": "{\"xmin\": -5123015.621468897, \"ymin\": -9610634.29382909, \"xmax\": 6123015.621468895, \"ymax\": 9610634.293829085}" - }, - 2377: { - "label": "Xian 1980 3 Degree GK CM 96E", - "defaultExtent": "{\"xmin\": -5123015.621468897, \"ymin\": -9610634.29382909, \"xmax\": 6123015.621468897, \"ymax\": 9610634.293829085}" - }, - 2378: { - "label": "Xian 1980 3 Degree GK CM 99E", - "defaultExtent": "{\"xmin\": -5123015.621468897, \"ymin\": -9610634.29382909, \"xmax\": 6123015.621468897, \"ymax\": 9610634.293829085}" - }, - 2379: { - "label": "Xian 1980 3 Degree GK CM 102E", - "defaultExtent": "{\"xmin\": -5123015.621468897, \"ymin\": -9610634.29382909, \"xmax\": 6123015.621468895, \"ymax\": 9610634.293829085}" - }, - 2380: { - "label": "Xian 1980 3 Degree GK CM 105E", - "defaultExtent": "{\"xmin\": -5123015.621468897, \"ymin\": -9610634.29382909, \"xmax\": 6123015.621468897, \"ymax\": 9610634.293829085}" - }, - 2381: { - "label": "Xian 1980 3 Degree GK CM 108E", - "defaultExtent": "{\"xmin\": -5123015.621468897, \"ymin\": -9610634.29382909, \"xmax\": 6123015.621468897, \"ymax\": 9610634.293829085}" - }, - 2382: { - "label": "Xian 1980 3 Degree GK CM 111E", - "defaultExtent": "{\"xmin\": -5123015.621468897, \"ymin\": -9610634.29382909, \"xmax\": 6123015.621468895, \"ymax\": 9610634.293829085}" - }, - 2383: { - "label": "Xian 1980 3 Degree GK CM 114E", - "defaultExtent": "{\"xmin\": -5123015.621468899, \"ymin\": -9610634.29382909, \"xmax\": 6123015.621468897, \"ymax\": 9610634.293829085}" - }, - 2384: { - "label": "Xian 1980 3 Degree GK CM 117E", - "defaultExtent": "{\"xmin\": -5123015.621468897, \"ymin\": -9610634.29382909, \"xmax\": 6123015.621468897, \"ymax\": 9610634.293829085}" - }, - 2385: { - "label": "Xian 1980 3 Degree GK CM 120E", - "defaultExtent": "{\"xmin\": -5123015.621468897, \"ymin\": -9610634.29382909, \"xmax\": 6123015.621468897, \"ymax\": 9610634.293829085}" - }, - 2386: { - "label": "Xian 1980 3 Degree GK CM 123E", - "defaultExtent": "{\"xmin\": -5123015.621468899, \"ymin\": -9610634.29382909, \"xmax\": 6123015.621468897, \"ymax\": 9610634.293829085}" - }, - 2387: { - "label": "Xian 1980 3 Degree GK CM 126E", - "defaultExtent": "{\"xmin\": -5123015.621468897, \"ymin\": -9610634.29382909, \"xmax\": 6123015.621468897, \"ymax\": 9610634.293829085}" - }, - 2388: { - "label": "Xian 1980 3 Degree GK CM 129E", - "defaultExtent": "{\"xmin\": -5123015.621468897, \"ymin\": -9610634.29382909, \"xmax\": 6123015.621468897, \"ymax\": 9610634.293829085}" - }, - 2389: { - "label": "Xian 1980 3 Degree GK CM 132E", - "defaultExtent": "{\"xmin\": -5123015.621468899, \"ymin\": -9610634.29382909, \"xmax\": 6123015.621468897, \"ymax\": 9610634.293829085}" - }, - 2390: { - "label": "Xian 1980 3 Degree GK CM 135E", - "defaultExtent": "{\"xmin\": -5123015.621468897, \"ymin\": -9610634.293829087, \"xmax\": 6123013.821345787, \"ymax\": 9610634.293829085}" - }, - 2391: { - "label": "Finland Zone 1", - "defaultExtent": "{\"xmin\": -4123255.480734327, \"ymin\": -9610931.42506959, \"xmax\": 7123255.480734327, \"ymax\": 9610931.425069584}" - }, - 2392: { - "label": "Finland Zone 2", - "defaultExtent": "{\"xmin\": -3123255.480734327, \"ymin\": -9610931.42506959, \"xmax\": 8123255.480734325, \"ymax\": 9610931.425069584}" - }, - 2393: { - "label": "Finland Zone 3", - "defaultExtent": "{\"xmin\": -2123255.480734327, \"ymin\": -9610931.42506959, \"xmax\": 9123255.480734326, \"ymax\": 9610931.425069584}" - }, - 2394: { - "label": "Finland Zone 4", - "defaultExtent": "{\"xmin\": -1123255.4807343269, \"ymin\": -9610931.42506959, \"xmax\": 10123255.480734326, \"ymax\": 9610931.425069584}" - }, - 2395: { - "label": "South Yemen GK Zone 8", - "defaultExtent": "{\"xmin\": 2876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 14123107.467526717, \"ymax\": 9610795.116133094}" - }, - 2396: { - "label": "South Yemen GK Zone 9", - "defaultExtent": "{\"xmin\": 3876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 15123107.467526719, \"ymax\": 9610795.116133094}" - }, - 2397: { - "label": "Pulkovo 1942 Adj 1983 3 Degree GK Zone 3", - "defaultExtent": "{\"xmin\": -2123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 9123107.467526717, \"ymax\": 9610795.116133094}" - }, - 2398: { - "label": "Pulkovo 1942 Adj 1983 3 Degree GK Zone 4", - "defaultExtent": "{\"xmin\": -1123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 10123107.467526717, \"ymax\": 9610795.116133094}" - }, - 2399: { - "label": "Pulkovo 1942 Adj 1983 3 Degree GK Zone 5", - "defaultExtent": "{\"xmin\": -123107.46752671711, \"ymin\": -9610795.116133098, \"xmax\": 11123107.467526717, \"ymax\": 9610795.116133094}" - }, - 2400: { - "label": "RT90 25 gon W", - "defaultExtent": "{\"xmin\": -4122345.7126389192, \"ymin\": -9609569.127050694, \"xmax\": 7122345.712638919, \"ymax\": 9609569.127050688}" - }, - 2401: { - "label": "Beijing 1954 3 Degree GK Zone 25", - "defaultExtent": "{\"xmin\": 19876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 31123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2402: { - "label": "Beijing 1954 3 Degree GK Zone 26", - "defaultExtent": "{\"xmin\": 20876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 32123107.467526715, \"ymax\": 9610795.116133094}" - }, - 2403: { - "label": "Beijing 1954 3 Degree GK Zone 27", - "defaultExtent": "{\"xmin\": 21876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 33123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2404: { - "label": "Beijing 1954 3 Degree GK Zone 28", - "defaultExtent": "{\"xmin\": 22876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 34123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2405: { - "label": "Beijing 1954 3 Degree GK Zone 29", - "defaultExtent": "{\"xmin\": 23876892.53247328, \"ymin\": -9610795.116133101, \"xmax\": 35123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2406: { - "label": "Beijing 1954 3 Degree GK Zone 30", - "defaultExtent": "{\"xmin\": 24876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 36123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2407: { - "label": "Beijing 1954 3 Degree GK Zone 31", - "defaultExtent": "{\"xmin\": 25876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 37123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2408: { - "label": "Beijing 1954 3 Degree GK Zone 32", - "defaultExtent": "{\"xmin\": 26876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 38123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2409: { - "label": "Beijing 1954 3 Degree GK Zone 33", - "defaultExtent": "{\"xmin\": 27876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 39123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2410: { - "label": "Beijing 1954 3 Degree GK Zone 34", - "defaultExtent": "{\"xmin\": 28876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 40123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2411: { - "label": "Beijing 1954 3 Degree GK Zone 35", - "defaultExtent": "{\"xmin\": 29876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 41123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2412: { - "label": "Beijing 1954 3 Degree GK Zone 36", - "defaultExtent": "{\"xmin\": 30876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 42123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2413: { - "label": "Beijing 1954 3 Degree GK Zone 37", - "defaultExtent": "{\"xmin\": 31876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 43123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2414: { - "label": "Beijing 1954 3 Degree GK Zone 38", - "defaultExtent": "{\"xmin\": 32876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 44123107.46752672, \"ymax\": 9610795.116133096}" - }, - 2415: { - "label": "Beijing 1954 3 Degree GK Zone 39", - "defaultExtent": "{\"xmin\": 33876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 45123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2416: { - "label": "Beijing 1954 3 Degree GK Zone 40", - "defaultExtent": "{\"xmin\": 34876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 46123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2417: { - "label": "Beijing 1954 3 Degree GK Zone 41", - "defaultExtent": "{\"xmin\": 35876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 47123107.46752672, \"ymax\": 9610795.116133096}" - }, - 2418: { - "label": "Beijing 1954 3 Degree GK Zone 42", - "defaultExtent": "{\"xmin\": 36876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 48123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2419: { - "label": "Beijing 1954 3 Degree GK Zone 43", - "defaultExtent": "{\"xmin\": 37876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 49123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2420: { - "label": "Beijing 1954 3 Degree GK Zone 44", - "defaultExtent": "{\"xmin\": 38876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 50123107.46752672, \"ymax\": 9610795.116133096}" - }, - 2421: { - "label": "Beijing 1954 3 Degree GK Zone 45", - "defaultExtent": "{\"xmin\": 39876892.53247328, \"ymin\": -9610795.116133096, \"xmax\": 51123105.66737464, \"ymax\": 9610795.116133094}" - }, - 2422: { - "label": "Beijing 1954 3 Degree GK CM 75E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2423: { - "label": "Beijing 1954 3 Degree GK CM 78E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526715, \"ymax\": 9610795.116133094}" - }, - 2424: { - "label": "Beijing 1954 3 Degree GK CM 81E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 2425: { - "label": "Beijing 1954 3 Degree GK CM 84E", - "defaultExtent": "{\"xmin\": -5123107.467526718, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526715, \"ymax\": 9610795.116133094}" - }, - 2426: { - "label": "Beijing 1954 3 Degree GK CM 87E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133101, \"xmax\": 6123107.467526715, \"ymax\": 9610795.116133094}" - }, - 2427: { - "label": "Beijing 1954 3 Degree GK CM 90E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 2428: { - "label": "Beijing 1954 3 Degree GK CM 93E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526715, \"ymax\": 9610795.116133094}" - }, - 2429: { - "label": "Beijing 1954 3 Degree GK CM 96E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 2430: { - "label": "Beijing 1954 3 Degree GK CM 99E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 2431: { - "label": "Beijing 1954 3 Degree GK CM 102E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526715, \"ymax\": 9610795.116133094}" - }, - 2432: { - "label": "Beijing 1954 3 Degree GK CM 105E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 2433: { - "label": "Beijing 1954 3 Degree GK CM 108E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 2434: { - "label": "Beijing 1954 3 Degree GK CM 111E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526715, \"ymax\": 9610795.116133094}" - }, - 2435: { - "label": "Beijing 1954 3 Degree GK CM 114E", - "defaultExtent": "{\"xmin\": -5123107.46752672, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133096}" - }, - 2436: { - "label": "Beijing 1954 3 Degree GK CM 117E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 2437: { - "label": "Beijing 1954 3 Degree GK CM 120E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 2438: { - "label": "Beijing 1954 3 Degree GK CM 123E", - "defaultExtent": "{\"xmin\": -5123107.46752672, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133096}" - }, - 2439: { - "label": "Beijing 1954 3 Degree GK CM 126E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 2440: { - "label": "Beijing 1954 3 Degree GK CM 129E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 2441: { - "label": "Beijing 1954 3 Degree GK CM 132E", - "defaultExtent": "{\"xmin\": -5123107.46752672, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133096}" - }, - 2442: { - "label": "Beijing 1954 3 Degree GK CM 135E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133096, \"xmax\": 6123105.667374637, \"ymax\": 9610795.116133094}" - }, - 2443: { - "label": "JGD 2000 Japan Zone 1", - "defaultExtent": "{\"xmin\": -5622450.671615874, \"ymin\": -13262051.49216574, \"xmax\": 5622450.671615874, \"ymax\": 5957285.955624162}" - }, - 2444: { - "label": "JGD 2000 Japan Zone 2", - "defaultExtent": "{\"xmin\": -5622450.671615875, \"ymin\": -13262051.49216574, \"xmax\": 5622450.671615874, \"ymax\": 5957285.955624163}" - }, - 2445: { - "label": "JGD 2000 Japan Zone 3", - "defaultExtent": "{\"xmin\": -5622450.671615874, \"ymin\": -13594812.839924177, \"xmax\": 5622450.671615878, \"ymax\": 5624524.607865727}" - }, - 2446: { - "label": "JGD 2000 Japan Zone 4", - "defaultExtent": "{\"xmin\": -5622450.671615874, \"ymin\": -13262051.49216574, \"xmax\": 5622450.671615874, \"ymax\": 5957285.955624162}" - }, - 2447: { - "label": "JGD 2000 Japan Zone 5", - "defaultExtent": "{\"xmin\": -5622450.671615874, \"ymin\": -13594812.839924177, \"xmax\": 5622450.671615874, \"ymax\": 5624524.607865727}" - }, - 2448: { - "label": "JGD 2000 Japan Zone 6", - "defaultExtent": "{\"xmin\": -5622450.671615865, \"ymin\": -13594812.839903364, \"xmax\": 5622450.671615874, \"ymax\": 5624524.60784493}" - }, - 2449: { - "label": "JGD 2000 Japan Zone 7", - "defaultExtent": "{\"xmin\": -5622450.671563503, \"ymin\": -13594812.839905635, \"xmax\": 5622450.671668238, \"ymax\": 5624524.607847202}" - }, - 2450: { - "label": "JGD 2000 Japan Zone 8", - "defaultExtent": "{\"xmin\": -5622450.671615865, \"ymin\": -13594812.839903364, \"xmax\": 5622450.671615882, \"ymax\": 5624524.607844931}" - }, - 2451: { - "label": "JGD 2000 Japan Zone 9", - "defaultExtent": "{\"xmin\": -5622450.671668228, \"ymin\": -13594812.839905635, \"xmax\": 5622450.67156351, \"ymax\": 5624524.607847202}" - }, - 2452: { - "label": "JGD 2000 Japan Zone 10", - "defaultExtent": "{\"xmin\": -5622450.671668227, \"ymin\": -14038754.801209979, \"xmax\": 5622450.671563517, \"ymax\": 5180582.6465428565}" - }, - 2453: { - "label": "JGD 2000 Japan Zone 11", - "defaultExtent": "{\"xmin\": -5622450.671615865, \"ymin\": -14483003.711233342, \"xmax\": 5622450.671615882, \"ymax\": 4736333.736514953}" - }, - 2454: { - "label": "JGD 2000 Japan Zone 12", - "defaultExtent": "{\"xmin\": -5622450.671615865, \"ymin\": -14483003.711233342, \"xmax\": 5622450.671615882, \"ymax\": 4736333.736514953}" - }, - 2455: { - "label": "JGD 2000 Japan Zone 13", - "defaultExtent": "{\"xmin\": -5622450.671615865, \"ymin\": -14483003.711233342, \"xmax\": 5622450.671615882, \"ymax\": 4736333.736514953}" - }, - 2456: { - "label": "JGD 2000 Japan Zone 14", - "defaultExtent": "{\"xmin\": -5622450.671615864, \"ymin\": -12486215.612935264, \"xmax\": 5622450.671615882, \"ymax\": 6733121.834813031}" - }, - 2457: { - "label": "JGD 2000 Japan Zone 15", - "defaultExtent": "{\"xmin\": -5622450.671615875, \"ymin\": -12486215.612956075, \"xmax\": 5622450.671615874, \"ymax\": 6733121.834833829}" - }, - 2458: { - "label": "JGD 2000 Japan Zone 16", - "defaultExtent": "{\"xmin\": -5622450.671615874, \"ymin\": -12486215.612956075, \"xmax\": 5622450.671615874, \"ymax\": 6733121.834833828}" - }, - 2459: { - "label": "JGD 2000 Japan Zone 17", - "defaultExtent": "{\"xmin\": -5622450.671615875, \"ymin\": -12486215.612956075, \"xmax\": 5622450.671615874, \"ymax\": 6733121.834833829}" - }, - 2460: { - "label": "JGD 2000 Japan Zone 18", - "defaultExtent": "{\"xmin\": -5622450.671615865, \"ymin\": -11821813.741351712, \"xmax\": 5622450.671615874, \"ymax\": 7397523.70639658}" - }, - 2461: { - "label": "JGD 2000 Japan Zone 19", - "defaultExtent": "{\"xmin\": -5622450.671615865, \"ymin\": -12486215.612935264, \"xmax\": 5622450.671615874, \"ymax\": 6733121.83481303}" - }, - 2462: { - "label": "Albanian 1987 GK Zone 4", - "defaultExtent": "{\"xmin\": -1123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 10123107.467526717, \"ymax\": 9610795.116133094}" - }, - 2523: { - "label": "Pulkovo 1942 3 Degree GK Zone 7", - "defaultExtent": "{\"xmin\": 1876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 13123107.467526717, \"ymax\": 9610795.116133094}" - }, - 2524: { - "label": "Pulkovo 1942 3 Degree GK Zone 8", - "defaultExtent": "{\"xmin\": 2876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 14123107.467526715, \"ymax\": 9610795.116133094}" - }, - 2525: { - "label": "Pulkovo 1942 3 Degree GK Zone 9", - "defaultExtent": "{\"xmin\": 3876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 15123107.467526717, \"ymax\": 9610795.116133094}" - }, - 2526: { - "label": "Pulkovo 1942 3 Degree GK Zone 10", - "defaultExtent": "{\"xmin\": 4876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 16123107.467526715, \"ymax\": 9610795.116133094}" - }, - 2527: { - "label": "Pulkovo 1942 3 Degree GK Zone 11", - "defaultExtent": "{\"xmin\": 5876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 17123107.467526715, \"ymax\": 9610795.116133094}" - }, - 2528: { - "label": "Pulkovo 1942 3 Degree GK Zone 12", - "defaultExtent": "{\"xmin\": 6876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 18123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2529: { - "label": "Pulkovo 1942 3 Degree GK Zone 13", - "defaultExtent": "{\"xmin\": 7876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 19123107.467526715, \"ymax\": 9610795.116133094}" - }, - 2530: { - "label": "Pulkovo 1942 3 Degree GK Zone 14", - "defaultExtent": "{\"xmin\": 8876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 20123107.467526715, \"ymax\": 9610795.116133094}" - }, - 2531: { - "label": "Pulkovo 1942 3 Degree GK Zone 15", - "defaultExtent": "{\"xmin\": 9876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 21123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2532: { - "label": "Pulkovo 1942 3 Degree GK Zone 16", - "defaultExtent": "{\"xmin\": 10876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 22123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2533: { - "label": "Pulkovo 1942 3 Degree GK Zone 17", - "defaultExtent": "{\"xmin\": 11876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 23123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2534: { - "label": "Pulkovo 1942 3 Degree GK Zone 18", - "defaultExtent": "{\"xmin\": 12876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 24123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2535: { - "label": "Pulkovo 1942 3 Degree GK Zone 19", - "defaultExtent": "{\"xmin\": 13876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 25123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2536: { - "label": "Pulkovo 1942 3 Degree GK Zone 20", - "defaultExtent": "{\"xmin\": 14876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 26123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2537: { - "label": "Pulkovo 1942 3 Degree GK Zone 21", - "defaultExtent": "{\"xmin\": 15876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 27123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2538: { - "label": "Pulkovo 1942 3 Degree GK Zone 22", - "defaultExtent": "{\"xmin\": 16876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 28123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2539: { - "label": "Pulkovo 1942 3 Degree GK Zone 23", - "defaultExtent": "{\"xmin\": 17876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 29123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2540: { - "label": "Pulkovo 1942 3 Degree GK Zone 24", - "defaultExtent": "{\"xmin\": 18876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 30123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2541: { - "label": "Pulkovo 1942 3 Degree GK Zone 25", - "defaultExtent": "{\"xmin\": 19876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 31123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2542: { - "label": "Pulkovo 1942 3 Degree GK Zone 26", - "defaultExtent": "{\"xmin\": 20876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 32123107.467526715, \"ymax\": 9610795.116133094}" - }, - 2543: { - "label": "Pulkovo 1942 3 Degree GK Zone 27", - "defaultExtent": "{\"xmin\": 21876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 33123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2544: { - "label": "Pulkovo 1942 3 Degree GK Zone 28", - "defaultExtent": "{\"xmin\": 22876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 34123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2545: { - "label": "Pulkovo 1942 3 Degree GK Zone 29", - "defaultExtent": "{\"xmin\": 23876892.53247328, \"ymin\": -9610795.116133101, \"xmax\": 35123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2546: { - "label": "Pulkovo 1942 3 Degree GK Zone 30", - "defaultExtent": "{\"xmin\": 24876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 36123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2547: { - "label": "Pulkovo 1942 3 Degree GK Zone 31", - "defaultExtent": "{\"xmin\": 25876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 37123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2548: { - "label": "Pulkovo 1942 3 Degree GK Zone 32", - "defaultExtent": "{\"xmin\": 26876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 38123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2549: { - "label": "Pulkovo 1942 3 Degree GK Zone 33", - "defaultExtent": "{\"xmin\": 27876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 39123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2550: { - "label": "Samboja UTM Zone 50S", - "defaultExtent": "{\"xmin\": -5120096.774353864, \"ymin\": 394274.7006001249, \"xmax\": 6120096.774353864, \"ymax\": 19605725.299399868}" - }, - 2551: { - "label": "Pulkovo 1942 3 Degree GK Zone 34", - "defaultExtent": "{\"xmin\": 28876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 40123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2552: { - "label": "Pulkovo 1942 3 Degree GK Zone 35", - "defaultExtent": "{\"xmin\": 29876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 41123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2553: { - "label": "Pulkovo 1942 3 Degree GK Zone 36", - "defaultExtent": "{\"xmin\": 30876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 42123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2554: { - "label": "Pulkovo 1942 3 Degree GK Zone 37", - "defaultExtent": "{\"xmin\": 31876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 43123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2555: { - "label": "Pulkovo 1942 3 Degree GK Zone 38", - "defaultExtent": "{\"xmin\": 32876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 44123107.46752672, \"ymax\": 9610795.116133096}" - }, - 2556: { - "label": "Pulkovo 1942 3 Degree GK Zone 39", - "defaultExtent": "{\"xmin\": 33876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 45123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2557: { - "label": "Pulkovo 1942 3 Degree GK Zone 40", - "defaultExtent": "{\"xmin\": 34876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 46123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2558: { - "label": "Pulkovo 1942 3 Degree GK Zone 41", - "defaultExtent": "{\"xmin\": 35876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 47123107.46752672, \"ymax\": 9610795.116133096}" - }, - 2559: { - "label": "Pulkovo 1942 3 Degree GK Zone 42", - "defaultExtent": "{\"xmin\": 36876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 48123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2560: { - "label": "Pulkovo 1942 3 Degree GK Zone 43", - "defaultExtent": "{\"xmin\": 37876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 49123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2561: { - "label": "Pulkovo 1942 3 Degree GK Zone 44", - "defaultExtent": "{\"xmin\": 38876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 50123107.46752672, \"ymax\": 9610795.116133096}" - }, - 2562: { - "label": "Pulkovo 1942 3 Degree GK Zone 45", - "defaultExtent": "{\"xmin\": 39876892.53247328, \"ymin\": -9610795.116133096, \"xmax\": 51123105.66737464, \"ymax\": 9610795.116133094}" - }, - 2563: { - "label": "Pulkovo 1942 3 Degree GK Zone 46", - "defaultExtent": "{\"xmin\": 40876892.532473296, \"ymin\": -9610795.116112284, \"xmax\": 52123107.46752673, \"ymax\": 9610795.116112294}" - }, - 2564: { - "label": "Pulkovo 1942 3 Degree GK Zone 47", - "defaultExtent": "{\"xmin\": 41876892.53247329, \"ymin\": -9610795.116112284, \"xmax\": 53123107.46752673, \"ymax\": 9610795.116112294}" - }, - 2565: { - "label": "Pulkovo 1942 3 Degree GK Zone 48", - "defaultExtent": "{\"xmin\": 42876892.532473296, \"ymin\": -9610795.116112284, \"xmax\": 54123107.46752673, \"ymax\": 9610795.116112294}" - }, - 2566: { - "label": "Pulkovo 1942 3 Degree GK Zone 49", - "defaultExtent": "{\"xmin\": 43876892.532473296, \"ymin\": -9610795.116112284, \"xmax\": 55123107.46752673, \"ymax\": 9610795.116112294}" - }, - 2567: { - "label": "Pulkovo 1942 3 Degree GK Zone 50", - "defaultExtent": "{\"xmin\": 44876892.53247329, \"ymin\": -9610795.116112284, \"xmax\": 56123107.46752673, \"ymax\": 9610795.116112294}" - }, - 2568: { - "label": "Pulkovo 1942 3 Degree GK Zone 51", - "defaultExtent": "{\"xmin\": 45876892.532473296, \"ymin\": -9610795.116112284, \"xmax\": 57123107.46752673, \"ymax\": 9610795.116112294}" - }, - 2569: { - "label": "Pulkovo 1942 3 Degree GK Zone 52", - "defaultExtent": "{\"xmin\": 46876892.532473296, \"ymin\": -9610795.116112284, \"xmax\": 58123107.46752673, \"ymax\": 9610795.116112294}" - }, - 2570: { - "label": "Pulkovo 1942 3 Degree GK Zone 53", - "defaultExtent": "{\"xmin\": 47876892.532473296, \"ymin\": -9610795.116112284, \"xmax\": 59123107.46752673, \"ymax\": 9610795.116112294}" - }, - 2571: { - "label": "Pulkovo 1942 3 Degree GK Zone 54", - "defaultExtent": "{\"xmin\": 48876892.5324733, \"ymin\": -9610795.116112284, \"xmax\": 60123107.46752673, \"ymax\": 9610795.116112294}" - }, - 2572: { - "label": "Pulkovo 1942 3 Degree GK Zone 55", - "defaultExtent": "{\"xmin\": 49876892.5324733, \"ymin\": -9610795.116112284, \"xmax\": 61123107.46752673, \"ymax\": 9610795.116112294}" - }, - 2573: { - "label": "Pulkovo 1942 3 Degree GK Zone 56", - "defaultExtent": "{\"xmin\": 50876892.532473296, \"ymin\": -9610795.116112284, \"xmax\": 62123107.46752673, \"ymax\": 9610795.116112294}" - }, - 2574: { - "label": "Pulkovo 1942 3 Degree GK Zone 57", - "defaultExtent": "{\"xmin\": 51876892.5324733, \"ymin\": -9610795.116112284, \"xmax\": 63123107.46752673, \"ymax\": 9610795.116112294}" - }, - 2575: { - "label": "Pulkovo 1942 3 Degree GK Zone 58", - "defaultExtent": "{\"xmin\": 52876892.5324733, \"ymin\": -9610795.116112284, \"xmax\": 64123107.46752673, \"ymax\": 9610795.116112294}" - }, - 2576: { - "label": "Pulkovo 1942 3 Degree GK Zone 59", - "defaultExtent": "{\"xmin\": 53876892.532473296, \"ymin\": -9610795.116112284, \"xmax\": 65123107.46752673, \"ymax\": 9610795.116112294}" - }, - 2578: { - "label": "Pulkovo 1942 3 Degree GK Zone 61", - "defaultExtent": "{\"xmin\": 55876892.53247331, \"ymin\": -9610795.116112284, \"xmax\": 67123107.46752672, \"ymax\": 9610795.116112294}" - }, - 2579: { - "label": "Pulkovo 1942 3 Degree GK Zone 62", - "defaultExtent": "{\"xmin\": 56876892.532473296, \"ymin\": -9610795.116112284, \"xmax\": 68123107.46752672, \"ymax\": 9610795.116112294}" - }, - 2580: { - "label": "Pulkovo 1942 3 Degree GK Zone 63", - "defaultExtent": "{\"xmin\": 57876892.53247331, \"ymin\": -9610795.116112284, \"xmax\": 69123107.46752672, \"ymax\": 9610795.116112294}" - }, - 2581: { - "label": "Pulkovo 1942 3 Degree GK Zone 64", - "defaultExtent": "{\"xmin\": 58876892.53247331, \"ymin\": -9610795.116112284, \"xmax\": 70123107.46752672, \"ymax\": 9610795.116112294}" - }, - 2582: { - "label": "Pulkovo 1942 3 Degree GK CM 21E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 2583: { - "label": "Pulkovo 1942 3 Degree GK CM 24E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526716, \"ymax\": 9610795.116133094}" - }, - 2584: { - "label": "Pulkovo 1942 3 Degree GK CM 27E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 2585: { - "label": "Pulkovo 1942 3 Degree GK CM 30E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526716, \"ymax\": 9610795.116133094}" - }, - 2586: { - "label": "Pulkovo 1942 3 Degree GK CM 33E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526716, \"ymax\": 9610795.116133094}" - }, - 2587: { - "label": "Pulkovo 1942 3 Degree GK CM 36E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 2588: { - "label": "Pulkovo 1942 3 Degree GK CM 39E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526716, \"ymax\": 9610795.116133094}" - }, - 2589: { - "label": "Pulkovo 1942 3 Degree GK CM 42E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526716, \"ymax\": 9610795.116133094}" - }, - 2590: { - "label": "Pulkovo 1942 3 Degree GK CM 45E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 2591: { - "label": "Pulkovo 1942 3 Degree GK CM 48E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 2592: { - "label": "Pulkovo 1942 3 Degree GK CM 51E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526718, \"ymax\": 9610795.116133094}" - }, - 2593: { - "label": "Pulkovo 1942 3 Degree GK CM 54E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 2594: { - "label": "Pulkovo 1942 3 Degree GK CM 57E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 2595: { - "label": "Pulkovo 1942 3 Degree GK CM 60E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2596: { - "label": "Pulkovo 1942 3 Degree GK CM 63E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 2597: { - "label": "Pulkovo 1942 3 Degree GK CM 66E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 2598: { - "label": "Pulkovo 1942 3 Degree GK CM 69E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2599: { - "label": "Pulkovo 1942 3 Degree GK CM 72E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 2601: { - "label": "Pulkovo 1942 3 Degree GK CM 75E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2602: { - "label": "Pulkovo 1942 3 Degree GK CM 78E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526715, \"ymax\": 9610795.116133094}" - }, - 2603: { - "label": "Pulkovo 1942 3 Degree GK CM 81E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 2604: { - "label": "Pulkovo 1942 3 Degree GK CM 84E", - "defaultExtent": "{\"xmin\": -5123107.467526718, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526715, \"ymax\": 9610795.116133094}" - }, - 2605: { - "label": "Pulkovo 1942 3 Degree GK CM 87E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133101, \"xmax\": 6123107.467526715, \"ymax\": 9610795.116133094}" - }, - 2606: { - "label": "Pulkovo 1942 3 Degree GK CM 90E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 2607: { - "label": "Pulkovo 1942 3 Degree GK CM 93E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526715, \"ymax\": 9610795.116133094}" - }, - 2608: { - "label": "Pulkovo 1942 3 Degree GK CM 96E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 2609: { - "label": "Pulkovo 1942 3 Degree GK CM 99E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 2610: { - "label": "Pulkovo 1942 3 Degree GK CM 102E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526715, \"ymax\": 9610795.116133094}" - }, - 2611: { - "label": "Pulkovo 1942 3 Degree GK CM 105E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 2612: { - "label": "Pulkovo 1942 3 Degree GK CM 108E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 2613: { - "label": "Pulkovo 1942 3 Degree GK CM 111E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526715, \"ymax\": 9610795.116133094}" - }, - 2614: { - "label": "Pulkovo 1942 3 Degree GK CM 114E", - "defaultExtent": "{\"xmin\": -5123107.46752672, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133096}" - }, - 2615: { - "label": "Pulkovo 1942 3 Degree GK CM 117E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 2616: { - "label": "Pulkovo 1942 3 Degree GK CM 120E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 2617: { - "label": "Pulkovo 1942 3 Degree GK CM 123E", - "defaultExtent": "{\"xmin\": -5123107.46752672, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133096}" - }, - 2618: { - "label": "Pulkovo 1942 3 Degree GK CM 126E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 2619: { - "label": "Pulkovo 1942 3 Degree GK CM 129E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 2620: { - "label": "Pulkovo 1942 3 Degree GK CM 132E", - "defaultExtent": "{\"xmin\": -5123107.46752672, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133096}" - }, - 2621: { - "label": "Pulkovo 1942 3 Degree GK CM 135E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133096, \"xmax\": 6123105.667374637, \"ymax\": 9610795.116133094}" - }, - 2622: { - "label": "Pulkovo 1942 3 Degree GK CM 138E", - "defaultExtent": "{\"xmin\": -5123107.467526707, \"ymin\": -9610795.116112284, \"xmax\": 6123107.4675267255, \"ymax\": 9610795.116112294}" - }, - 2623: { - "label": "Pulkovo 1942 3 Degree GK CM 141E", - "defaultExtent": "{\"xmin\": -5123107.46752671, \"ymin\": -9610795.116112284, \"xmax\": 6123107.4675267255, \"ymax\": 9610795.116112294}" - }, - 2624: { - "label": "Pulkovo 1942 3 Degree GK CM 144E", - "defaultExtent": "{\"xmin\": -5123107.467526707, \"ymin\": -9610795.116112284, \"xmax\": 6123107.4675267255, \"ymax\": 9610795.116112294}" - }, - 2625: { - "label": "Pulkovo 1942 3 Degree GK CM 147E", - "defaultExtent": "{\"xmin\": -5123107.467526707, \"ymin\": -9610795.116112284, \"xmax\": 6123107.4675267255, \"ymax\": 9610795.116112294}" - }, - 2626: { - "label": "Pulkovo 1942 3 Degree GK CM 150E", - "defaultExtent": "{\"xmin\": -5123107.46752671, \"ymin\": -9610795.116112284, \"xmax\": 6123107.4675267255, \"ymax\": 9610795.116112294}" - }, - 2627: { - "label": "Pulkovo 1942 3 Degree GK CM 153E", - "defaultExtent": "{\"xmin\": -5123107.467526707, \"ymin\": -9610795.116112284, \"xmax\": 6123107.4675267255, \"ymax\": 9610795.116112294}" - }, - 2628: { - "label": "Pulkovo 1942 3 Degree GK CM 156E", - "defaultExtent": "{\"xmin\": -5123107.467526707, \"ymin\": -9610795.116112284, \"xmax\": 6123107.4675267255, \"ymax\": 9610795.116112294}" - }, - 2629: { - "label": "Pulkovo 1942 3 Degree GK CM 159E", - "defaultExtent": "{\"xmin\": -5123107.467526701, \"ymin\": -9610795.116112284, \"xmax\": 6123107.4675267255, \"ymax\": 9610795.116112294}" - }, - 2630: { - "label": "Pulkovo 1942 3 Degree GK CM 162E", - "defaultExtent": "{\"xmin\": -5123107.467526697, \"ymin\": -9610795.116112284, \"xmax\": 6123107.4675267255, \"ymax\": 9610795.116112294}" - }, - 2631: { - "label": "Pulkovo 1942 3 Degree GK CM 165E", - "defaultExtent": "{\"xmin\": -5123107.467526697, \"ymin\": -9610795.116112284, \"xmax\": 6123107.4675267255, \"ymax\": 9610795.116112294}" - }, - 2632: { - "label": "Pulkovo 1942 3 Degree GK CM 168E", - "defaultExtent": "{\"xmin\": -5123107.467526701, \"ymin\": -9610795.116112284, \"xmax\": 6123107.4675267255, \"ymax\": 9610795.116112294}" - }, - 2633: { - "label": "Pulkovo 1942 3 Degree GK CM 171E", - "defaultExtent": "{\"xmin\": -5123107.467526697, \"ymin\": -9610795.116112284, \"xmax\": 6123107.4675267255, \"ymax\": 9610795.116112294}" - }, - 2634: { - "label": "Pulkovo 1942 3 Degree GK CM 174E", - "defaultExtent": "{\"xmin\": -5123107.467526697, \"ymin\": -9610795.116112284, \"xmax\": 6123107.4675267255, \"ymax\": 9610795.116112294}" - }, - 2635: { - "label": "Pulkovo 1942 3 Degree GK CM 177E", - "defaultExtent": "{\"xmin\": -5123107.467526701, \"ymin\": -9610795.116112284, \"xmax\": 6123107.4675267255, \"ymax\": 9610795.116112294}" - }, - 2636: { - "label": "Pulkovo 1942 3 Degree GK CM 180E", - "defaultExtent": "{\"xmin\": -5123107.467526697, \"ymin\": -9610795.116112284, \"xmax\": 6123107.4675267255, \"ymax\": 9610795.116112294}" - }, - 2637: { - "label": "Pulkovo 1942 3 Degree GK CM 177W", - "defaultExtent": "{\"xmin\": -5123107.467526693, \"ymin\": -9610795.116112284, \"xmax\": 6123107.4675267255, \"ymax\": 9610795.116112294}" - }, - 2638: { - "label": "Pulkovo 1942 3 Degree GK CM 174W", - "defaultExtent": "{\"xmin\": -5123107.467526701, \"ymin\": -9610795.116112284, \"xmax\": 6123107.4675267255, \"ymax\": 9610795.116112294}" - }, - 2639: { - "label": "Pulkovo 1942 3 Degree GK CM 171W", - "defaultExtent": "{\"xmin\": -5123107.467526693, \"ymin\": -9610795.116112284, \"xmax\": 6123107.4675267255, \"ymax\": 9610795.116112294}" - }, - 2640: { - "label": "Pulkovo 1942 3 Degree GK CM 168W", - "defaultExtent": "{\"xmin\": -5123107.467526693, \"ymin\": -9610795.116112284, \"xmax\": 6123107.4675267255, \"ymax\": 9610795.116112294}" - }, - 2641: { - "label": "Pulkovo 1995 3 Degree GK Zone 7", - "defaultExtent": "{\"xmin\": 1876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 13123107.467526717, \"ymax\": 9610795.116133094}" - }, - 2642: { - "label": "Pulkovo 1995 3 Degree GK Zone 8", - "defaultExtent": "{\"xmin\": 2876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 14123107.467526715, \"ymax\": 9610795.116133094}" - }, - 2643: { - "label": "Pulkovo 1995 3 Degree GK Zone 9", - "defaultExtent": "{\"xmin\": 3876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 15123107.467526717, \"ymax\": 9610795.116133094}" - }, - 2644: { - "label": "Pulkovo 1995 3 Degree GK Zone 10", - "defaultExtent": "{\"xmin\": 4876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 16123107.467526715, \"ymax\": 9610795.116133094}" - }, - 2645: { - "label": "Pulkovo 1995 3 Degree GK Zone 11", - "defaultExtent": "{\"xmin\": 5876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 17123107.467526715, \"ymax\": 9610795.116133094}" - }, - 2646: { - "label": "Pulkovo 1995 3 Degree GK Zone 12", - "defaultExtent": "{\"xmin\": 6876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 18123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2647: { - "label": "Pulkovo 1995 3 Degree GK Zone 13", - "defaultExtent": "{\"xmin\": 7876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 19123107.467526715, \"ymax\": 9610795.116133094}" - }, - 2648: { - "label": "Pulkovo 1995 3 Degree GK Zone 14", - "defaultExtent": "{\"xmin\": 8876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 20123107.467526715, \"ymax\": 9610795.116133094}" - }, - 2649: { - "label": "Pulkovo 1995 3 Degree GK Zone 15", - "defaultExtent": "{\"xmin\": 9876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 21123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2650: { - "label": "Pulkovo 1995 3 Degree GK Zone 16", - "defaultExtent": "{\"xmin\": 10876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 22123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2651: { - "label": "Pulkovo 1995 3 Degree GK Zone 17", - "defaultExtent": "{\"xmin\": 11876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 23123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2652: { - "label": "Pulkovo 1995 3 Degree GK Zone 18", - "defaultExtent": "{\"xmin\": 12876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 24123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2653: { - "label": "Pulkovo 1995 3 Degree GK Zone 19", - "defaultExtent": "{\"xmin\": 13876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 25123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2654: { - "label": "Pulkovo 1995 3 Degree GK Zone 20", - "defaultExtent": "{\"xmin\": 14876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 26123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2655: { - "label": "Pulkovo 1995 3 Degree GK Zone 21", - "defaultExtent": "{\"xmin\": 15876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 27123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2656: { - "label": "Pulkovo 1995 3 Degree GK Zone 22", - "defaultExtent": "{\"xmin\": 16876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 28123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2657: { - "label": "Pulkovo 1995 3 Degree GK Zone 23", - "defaultExtent": "{\"xmin\": 17876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 29123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2658: { - "label": "Pulkovo 1995 3 Degree GK Zone 24", - "defaultExtent": "{\"xmin\": 18876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 30123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2659: { - "label": "Pulkovo 1995 3 Degree GK Zone 25", - "defaultExtent": "{\"xmin\": 19876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 31123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2660: { - "label": "Pulkovo 1995 3 Degree GK Zone 26", - "defaultExtent": "{\"xmin\": 20876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 32123107.467526715, \"ymax\": 9610795.116133094}" - }, - 2661: { - "label": "Pulkovo 1995 3 Degree GK Zone 27", - "defaultExtent": "{\"xmin\": 21876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 33123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2662: { - "label": "Pulkovo 1995 3 Degree GK Zone 28", - "defaultExtent": "{\"xmin\": 22876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 34123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2663: { - "label": "Pulkovo 1995 3 Degree GK Zone 29", - "defaultExtent": "{\"xmin\": 23876892.53247328, \"ymin\": -9610795.116133101, \"xmax\": 35123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2664: { - "label": "Pulkovo 1995 3 Degree GK Zone 30", - "defaultExtent": "{\"xmin\": 24876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 36123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2665: { - "label": "Pulkovo 1995 3 Degree GK Zone 31", - "defaultExtent": "{\"xmin\": 25876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 37123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2666: { - "label": "Pulkovo 1995 3 Degree GK Zone 32", - "defaultExtent": "{\"xmin\": 26876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 38123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2667: { - "label": "Pulkovo 1995 3 Degree GK Zone 33", - "defaultExtent": "{\"xmin\": 27876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 39123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2668: { - "label": "Pulkovo 1995 3 Degree GK Zone 34", - "defaultExtent": "{\"xmin\": 28876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 40123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2669: { - "label": "Pulkovo 1995 3 Degree GK Zone 35", - "defaultExtent": "{\"xmin\": 29876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 41123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2670: { - "label": "Pulkovo 1995 3 Degree GK Zone 36", - "defaultExtent": "{\"xmin\": 30876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 42123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2671: { - "label": "Pulkovo 1995 3 Degree GK Zone 37", - "defaultExtent": "{\"xmin\": 31876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 43123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2672: { - "label": "Pulkovo 1995 3 Degree GK Zone 38", - "defaultExtent": "{\"xmin\": 32876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 44123107.46752672, \"ymax\": 9610795.116133096}" - }, - 2673: { - "label": "Pulkovo 1995 3 Degree GK Zone 39", - "defaultExtent": "{\"xmin\": 33876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 45123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2674: { - "label": "Pulkovo 1995 3 Degree GK Zone 40", - "defaultExtent": "{\"xmin\": 34876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 46123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2675: { - "label": "Pulkovo 1995 3 Degree GK Zone 41", - "defaultExtent": "{\"xmin\": 35876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 47123107.46752672, \"ymax\": 9610795.116133096}" - }, - 2676: { - "label": "Pulkovo 1995 3 Degree GK Zone 42", - "defaultExtent": "{\"xmin\": 36876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 48123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2677: { - "label": "Pulkovo 1995 3 Degree GK Zone 43", - "defaultExtent": "{\"xmin\": 37876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 49123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2678: { - "label": "Pulkovo 1995 3 Degree GK Zone 44", - "defaultExtent": "{\"xmin\": 38876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 50123107.46752672, \"ymax\": 9610795.116133096}" - }, - 2679: { - "label": "Pulkovo 1995 3 Degree GK Zone 45", - "defaultExtent": "{\"xmin\": 39876892.53247328, \"ymin\": -9610795.116133096, \"xmax\": 51123105.66737464, \"ymax\": 9610795.116133094}" - }, - 2680: { - "label": "Pulkovo 1995 3 Degree GK Zone 46", - "defaultExtent": "{\"xmin\": 40876892.532473296, \"ymin\": -9610795.116112284, \"xmax\": 52123107.46752673, \"ymax\": 9610795.116112294}" - }, - 2681: { - "label": "Pulkovo 1995 3 Degree GK Zone 47", - "defaultExtent": "{\"xmin\": 41876892.53247329, \"ymin\": -9610795.116112284, \"xmax\": 53123107.46752673, \"ymax\": 9610795.116112294}" - }, - 2682: { - "label": "Pulkovo 1995 3 Degree GK Zone 48", - "defaultExtent": "{\"xmin\": 42876892.532473296, \"ymin\": -9610795.116112284, \"xmax\": 54123107.46752673, \"ymax\": 9610795.116112294}" - }, - 2683: { - "label": "Pulkovo 1995 3 Degree GK Zone 49", - "defaultExtent": "{\"xmin\": 43876892.532473296, \"ymin\": -9610795.116112284, \"xmax\": 55123107.46752673, \"ymax\": 9610795.116112294}" - }, - 2684: { - "label": "Pulkovo 1995 3 Degree GK Zone 50", - "defaultExtent": "{\"xmin\": 44876892.53247329, \"ymin\": -9610795.116112284, \"xmax\": 56123107.46752673, \"ymax\": 9610795.116112294}" - }, - 2685: { - "label": "Pulkovo 1995 3 Degree GK Zone 51", - "defaultExtent": "{\"xmin\": 45876892.532473296, \"ymin\": -9610795.116112284, \"xmax\": 57123107.46752673, \"ymax\": 9610795.116112294}" - }, - 2686: { - "label": "Pulkovo 1995 3 Degree GK Zone 52", - "defaultExtent": "{\"xmin\": 46876892.532473296, \"ymin\": -9610795.116112284, \"xmax\": 58123107.46752673, \"ymax\": 9610795.116112294}" - }, - 2687: { - "label": "Pulkovo 1995 3 Degree GK Zone 53", - "defaultExtent": "{\"xmin\": 47876892.532473296, \"ymin\": -9610795.116112284, \"xmax\": 59123107.46752673, \"ymax\": 9610795.116112294}" - }, - 2688: { - "label": "Pulkovo 1995 3 Degree GK Zone 54", - "defaultExtent": "{\"xmin\": 48876892.5324733, \"ymin\": -9610795.116112284, \"xmax\": 60123107.46752673, \"ymax\": 9610795.116112294}" - }, - 2689: { - "label": "Pulkovo 1995 3 Degree GK Zone 55", - "defaultExtent": "{\"xmin\": 49876892.5324733, \"ymin\": -9610795.116112284, \"xmax\": 61123107.46752673, \"ymax\": 9610795.116112294}" - }, - 2690: { - "label": "Pulkovo 1995 3 Degree GK Zone 56", - "defaultExtent": "{\"xmin\": 50876892.532473296, \"ymin\": -9610795.116112284, \"xmax\": 62123107.46752673, \"ymax\": 9610795.116112294}" - }, - 2691: { - "label": "Pulkovo 1995 3 Degree GK Zone 57", - "defaultExtent": "{\"xmin\": 51876892.5324733, \"ymin\": -9610795.116112284, \"xmax\": 63123107.46752673, \"ymax\": 9610795.116112294}" - }, - 2692: { - "label": "Pulkovo 1995 3 Degree GK Zone 58", - "defaultExtent": "{\"xmin\": 52876892.5324733, \"ymin\": -9610795.116112284, \"xmax\": 64123107.46752673, \"ymax\": 9610795.116112294}" - }, - 2693: { - "label": "Pulkovo 1995 3 Degree GK Zone 59", - "defaultExtent": "{\"xmin\": 53876892.532473296, \"ymin\": -9610795.116112284, \"xmax\": 65123107.46752673, \"ymax\": 9610795.116112294}" - }, - 2695: { - "label": "Pulkovo 1995 3 Degree GK Zone 61", - "defaultExtent": "{\"xmin\": 55876892.53247331, \"ymin\": -9610795.116112284, \"xmax\": 67123107.46752672, \"ymax\": 9610795.116112294}" - }, - 2696: { - "label": "Pulkovo 1995 3 Degree GK Zone 62", - "defaultExtent": "{\"xmin\": 56876892.532473296, \"ymin\": -9610795.116112284, \"xmax\": 68123107.46752672, \"ymax\": 9610795.116112294}" - }, - 2697: { - "label": "Pulkovo 1995 3 Degree GK Zone 63", - "defaultExtent": "{\"xmin\": 57876892.53247331, \"ymin\": -9610795.116112284, \"xmax\": 69123107.46752672, \"ymax\": 9610795.116112294}" - }, - 2698: { - "label": "Pulkovo 1995 3 Degree GK Zone 64", - "defaultExtent": "{\"xmin\": 58876892.53247331, \"ymin\": -9610795.116112284, \"xmax\": 70123107.46752672, \"ymax\": 9610795.116112294}" - }, - 2699: { - "label": "Pulkovo 1995 3 Degree GK CM 21E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 2700: { - "label": "Pulkovo 1995 3 Degree GK CM 24E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526716, \"ymax\": 9610795.116133094}" - }, - 2701: { - "label": "Pulkovo 1995 3 Degree GK CM 27E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 2702: { - "label": "Pulkovo 1995 3 Degree GK CM 30E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526716, \"ymax\": 9610795.116133094}" - }, - 2703: { - "label": "Pulkovo 1995 3 Degree GK CM 33E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526716, \"ymax\": 9610795.116133094}" - }, - 2704: { - "label": "Pulkovo 1995 3 Degree GK CM 36E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 2705: { - "label": "Pulkovo 1995 3 Degree GK CM 39E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526716, \"ymax\": 9610795.116133094}" - }, - 2706: { - "label": "Pulkovo 1995 3 Degree GK CM 42E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526716, \"ymax\": 9610795.116133094}" - }, - 2707: { - "label": "Pulkovo 1995 3 Degree GK CM 45E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 2708: { - "label": "Pulkovo 1995 3 Degree GK CM 48E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 2709: { - "label": "Pulkovo 1995 3 Degree GK CM 51E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526718, \"ymax\": 9610795.116133094}" - }, - 2710: { - "label": "Pulkovo 1995 3 Degree GK CM 54E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 2711: { - "label": "Pulkovo 1995 3 Degree GK CM 57E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 2712: { - "label": "Pulkovo 1995 3 Degree GK CM 60E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2713: { - "label": "Pulkovo 1995 3 Degree GK CM 63E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 2714: { - "label": "Pulkovo 1995 3 Degree GK CM 66E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 2715: { - "label": "Pulkovo 1995 3 Degree GK CM 69E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2716: { - "label": "Pulkovo 1995 3 Degree GK CM 72E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 2717: { - "label": "Pulkovo 1995 3 Degree GK CM 75E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.46752672, \"ymax\": 9610795.116133094}" - }, - 2718: { - "label": "Pulkovo 1995 3 Degree GK CM 78E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526715, \"ymax\": 9610795.116133094}" - }, - 2719: { - "label": "Pulkovo 1995 3 Degree GK CM 81E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 2720: { - "label": "Pulkovo 1995 3 Degree GK CM 84E", - "defaultExtent": "{\"xmin\": -5123107.467526718, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526715, \"ymax\": 9610795.116133094}" - }, - 2721: { - "label": "Pulkovo 1995 3 Degree GK CM 87E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133101, \"xmax\": 6123107.467526715, \"ymax\": 9610795.116133094}" - }, - 2722: { - "label": "Pulkovo 1995 3 Degree GK CM 90E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 2723: { - "label": "Pulkovo 1995 3 Degree GK CM 93E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526715, \"ymax\": 9610795.116133094}" - }, - 2724: { - "label": "Pulkovo 1995 3 Degree GK CM 96E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 2725: { - "label": "Pulkovo 1995 3 Degree GK CM 99E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 2726: { - "label": "Pulkovo 1995 3 Degree GK CM 102E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526715, \"ymax\": 9610795.116133094}" - }, - 2727: { - "label": "Pulkovo 1995 3 Degree GK CM 105E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 2728: { - "label": "Pulkovo 1995 3 Degree GK CM 108E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 2729: { - "label": "Pulkovo 1995 3 Degree GK CM 111E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526715, \"ymax\": 9610795.116133094}" - }, - 2730: { - "label": "Pulkovo 1995 3 Degree GK CM 114E", - "defaultExtent": "{\"xmin\": -5123107.46752672, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133096}" - }, - 2731: { - "label": "Pulkovo 1995 3 Degree GK CM 117E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 2732: { - "label": "Pulkovo 1995 3 Degree GK CM 120E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 2733: { - "label": "Pulkovo 1995 3 Degree GK CM 123E", - "defaultExtent": "{\"xmin\": -5123107.46752672, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133096}" - }, - 2734: { - "label": "Pulkovo 1995 3 Degree GK CM 126E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 2735: { - "label": "Pulkovo 1995 3 Degree GK CM 129E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 2736: { - "label": "Tete UTM Zone 36S", - "defaultExtent": "{\"xmin\": -5120880.632721142, \"ymin\": 393310.89368013665, \"xmax\": 6120880.632721141, \"ymax\": 19606689.10631986}" - }, - 2737: { - "label": "Tete UTM Zone 37S", - "defaultExtent": "{\"xmin\": -5120880.632721142, \"ymin\": 393310.89368013665, \"xmax\": 6120880.632721141, \"ymax\": 19606689.10631986}" - }, - 2738: { - "label": "Pulkovo 1995 3 Degree GK CM 132E", - "defaultExtent": "{\"xmin\": -5123107.46752672, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133096}" - }, - 2739: { - "label": "Pulkovo 1995 3 Degree GK CM 135E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133096, \"xmax\": 6123105.667374637, \"ymax\": 9610795.116133094}" - }, - 2740: { - "label": "Pulkovo 1995 3 Degree GK CM 138E", - "defaultExtent": "{\"xmin\": -5123107.467526707, \"ymin\": -9610795.116112284, \"xmax\": 6123107.4675267255, \"ymax\": 9610795.116112294}" - }, - 2741: { - "label": "Pulkovo 1995 3 Degree GK CM 141E", - "defaultExtent": "{\"xmin\": -5123107.46752671, \"ymin\": -9610795.116112284, \"xmax\": 6123107.4675267255, \"ymax\": 9610795.116112294}" - }, - 2742: { - "label": "Pulkovo 1995 3 Degree GK CM 144E", - "defaultExtent": "{\"xmin\": -5123107.467526707, \"ymin\": -9610795.116112284, \"xmax\": 6123107.4675267255, \"ymax\": 9610795.116112294}" - }, - 2743: { - "label": "Pulkovo 1995 3 Degree GK CM 147E", - "defaultExtent": "{\"xmin\": -5123107.467526707, \"ymin\": -9610795.116112284, \"xmax\": 6123107.4675267255, \"ymax\": 9610795.116112294}" - }, - 2744: { - "label": "Pulkovo 1995 3 Degree GK CM 150E", - "defaultExtent": "{\"xmin\": -5123107.46752671, \"ymin\": -9610795.116112284, \"xmax\": 6123107.4675267255, \"ymax\": 9610795.116112294}" - }, - 2745: { - "label": "Pulkovo 1995 3 Degree GK CM 153E", - "defaultExtent": "{\"xmin\": -5123107.467526707, \"ymin\": -9610795.116112284, \"xmax\": 6123107.4675267255, \"ymax\": 9610795.116112294}" - }, - 2746: { - "label": "Pulkovo 1995 3 Degree GK CM 156E", - "defaultExtent": "{\"xmin\": -5123107.467526707, \"ymin\": -9610795.116112284, \"xmax\": 6123107.4675267255, \"ymax\": 9610795.116112294}" - }, - 2747: { - "label": "Pulkovo 1995 3 Degree GK CM 159E", - "defaultExtent": "{\"xmin\": -5123107.467526701, \"ymin\": -9610795.116112284, \"xmax\": 6123107.4675267255, \"ymax\": 9610795.116112294}" - }, - 2748: { - "label": "Pulkovo 1995 3 Degree GK CM 162E", - "defaultExtent": "{\"xmin\": -5123107.467526697, \"ymin\": -9610795.116112284, \"xmax\": 6123107.4675267255, \"ymax\": 9610795.116112294}" - }, - 2749: { - "label": "Pulkovo 1995 3 Degree GK CM 165E", - "defaultExtent": "{\"xmin\": -5123107.467526697, \"ymin\": -9610795.116112284, \"xmax\": 6123107.4675267255, \"ymax\": 9610795.116112294}" - }, - 2750: { - "label": "Pulkovo 1995 3 Degree GK CM 168E", - "defaultExtent": "{\"xmin\": -5123107.467526701, \"ymin\": -9610795.116112284, \"xmax\": 6123107.4675267255, \"ymax\": 9610795.116112294}" - }, - 2751: { - "label": "Pulkovo 1995 3 Degree GK CM 171E", - "defaultExtent": "{\"xmin\": -5123107.467526697, \"ymin\": -9610795.116112284, \"xmax\": 6123107.4675267255, \"ymax\": 9610795.116112294}" - }, - 2752: { - "label": "Pulkovo 1995 3 Degree GK CM 174E", - "defaultExtent": "{\"xmin\": -5123107.467526697, \"ymin\": -9610795.116112284, \"xmax\": 6123107.4675267255, \"ymax\": 9610795.116112294}" - }, - 2753: { - "label": "Pulkovo 1995 3 Degree GK CM 177E", - "defaultExtent": "{\"xmin\": -5123107.467526701, \"ymin\": -9610795.116112284, \"xmax\": 6123107.4675267255, \"ymax\": 9610795.116112294}" - }, - 2754: { - "label": "Pulkovo 1995 3 Degree GK CM 180E", - "defaultExtent": "{\"xmin\": -5123107.467526697, \"ymin\": -9610795.116112284, \"xmax\": 6123107.4675267255, \"ymax\": 9610795.116112294}" - }, - 2755: { - "label": "Pulkovo 1995 3 Degree GK CM 177W", - "defaultExtent": "{\"xmin\": -5123107.467526693, \"ymin\": -9610795.116112284, \"xmax\": 6123107.4675267255, \"ymax\": 9610795.116112294}" - }, - 2756: { - "label": "Pulkovo 1995 3 Degree GK CM 174W", - "defaultExtent": "{\"xmin\": -5123107.467526701, \"ymin\": -9610795.116112284, \"xmax\": 6123107.4675267255, \"ymax\": 9610795.116112294}" - }, - 2757: { - "label": "Pulkovo 1995 3 Degree GK CM 171W", - "defaultExtent": "{\"xmin\": -5123107.467526693, \"ymin\": -9610795.116112284, \"xmax\": 6123107.4675267255, \"ymax\": 9610795.116112294}" - }, - 2758: { - "label": "Pulkovo 1995 3 Degree GK CM 168W", - "defaultExtent": "{\"xmin\": -5123107.467526693, \"ymin\": -9610795.116112284, \"xmax\": 6123107.4675267255, \"ymax\": 9610795.116112294}" - }, - 2759: { - "label": "NAD 1983 HARN StatePlane Alabama East FIPS 0101", - "defaultExtent": "{\"xmin\": -5422788.052394249, \"ymin\": -12985652.072866369, \"xmax\": 5822788.052394249, \"ymax\": 6234838.650497956}" - }, - 2760: { - "label": "NAD 1983 HARN StatePlane Alabama West FIPS 0102", - "defaultExtent": "{\"xmin\": -5022638.105381638, \"ymin\": -12929881.135173015, \"xmax\": 6222638.105381638, \"ymax\": 6290097.0212693475}" - }, - 2761: { - "label": "NAD 1983 HARN StatePlane Arizona East FIPS 0201", - "defaultExtent": "{\"xmin\": -5409090.671615874, \"ymin\": -13040299.949871464, \"xmax\": 5835810.671615874, \"ymax\": 6179037.49791844}" - }, - 2762: { - "label": "NAD 1983 HARN StatePlane Arizona Central FIPS 0202", - "defaultExtent": "{\"xmin\": -5409090.671615872, \"ymin\": -13040299.949871464, \"xmax\": 5835810.671615874, \"ymax\": 6179037.49791844}" - }, - 2763: { - "label": "NAD 1983 HARN StatePlane Arizona West FIPS 0203", - "defaultExtent": "{\"xmin\": -5409278.105381638, \"ymin\": -13040734.670008475, \"xmax\": 5835998.105381638, \"ymax\": 6179243.48643389}" - }, - 2764: { - "label": "NAD 1983 HARN StatePlane Arkansas North FIPS 0301", - "defaultExtent": "{\"xmin\": -37285630.80991245, \"ymin\": -28623235.611847952, \"xmax\": 38085630.80986683, \"ymax\": 18652037.545588575}" - }, - 2765: { - "label": "NAD 1983 HARN StatePlane Arkansas South FIPS 0302", - "defaultExtent": "{\"xmin\": -37595985.155181974, \"ymin\": -27991400.9264211, \"xmax\": 38395985.15505119, \"ymax\": 17088046.267518982}" - }, - 2766: { - "label": "NAD 1983 HARN StatePlane California I FIPS 0401", - "defaultExtent": "{\"xmin\": -34887054.27121294, \"ymin\": -28830499.630561125, \"xmax\": 38887054.271445766, \"ymax\": 25202733.856392305}" - }, - 2767: { - "label": "NAD 1983 HARN StatePlane California II FIPS 0402", - "defaultExtent": "{\"xmin\": -35116508.911664024, \"ymin\": -28596719.981055927, \"xmax\": 39116508.911764205, \"ymax\": 23310630.66291148}" - }, - 2768: { - "label": "NAD 1983 HARN StatePlane California III FIPS 0403", - "defaultExtent": "{\"xmin\": -35314262.749591045, \"ymin\": -28428487.57731289, \"xmax\": 39314262.749551564, \"ymax\": 21771398.527620755}" - }, - 2769: { - "label": "NAD 1983 HARN StatePlane California IV FIPS 0404", - "defaultExtent": "{\"xmin\": -35498881.48266848, \"ymin\": -28265654.103608675, \"xmax\": 39498881.48289684, \"ymax\": 20437979.07279057}" - }, - 2770: { - "label": "NAD 1983 HARN StatePlane California V FIPS 0405", - "defaultExtent": "{\"xmin\": -35847160.01764138, \"ymin\": -28005403.878855906, \"xmax\": 39847160.01752812, \"ymax\": 18099234.480987653}" - }, - 2771: { - "label": "NAD 1983 HARN StatePlane California VI FIPS 0406", - "defaultExtent": "{\"xmin\": -36151940.068675034, \"ymin\": -27815848.278992966, \"xmax\": 40151940.06861196, \"ymax\": 16247248.704331301}" - }, - 2772: { - "label": "NAD 1983 HARN StatePlane Colorado North FIPS 0501", - "defaultExtent": "{\"xmin\": -36047295.1761787, \"ymin\": -29010844.772414874, \"xmax\": 37876098.83435248, \"ymax\": 24329837.178702205}" - }, - 2773: { - "label": "NAD 1983 HARN StatePlane Colorado Central FIPS 0502", - "defaultExtent": "{\"xmin\": -36200413.80326969, \"ymin\": -28811315.283514805, \"xmax\": 38029217.46057424, \"ymax\": 23117321.353997074}" - }, - 2774: { - "label": "NAD 1983 HARN StatePlane Colorado South FIPS 0503", - "defaultExtent": "{\"xmin\": -36387386.019578025, \"ymin\": -28644971.833411947, \"xmax\": 38216189.6778173, \"ymax\": 21664082.8771381}" - }, - 2775: { - "label": "NAD 1983 HARN StatePlane Connecticut FIPS 0600", - "defaultExtent": "{\"xmin\": -36501665.38080174, \"ymin\": -29365141.16645893, \"xmax\": 37111266.59970077, \"ymax\": 25482156.151964903}" - }, - 2776: { - "label": "NAD 1983 HARN StatePlane Delaware FIPS 0700", - "defaultExtent": "{\"xmin\": -5422984.8578483015, \"ymin\": -13818058.715278085, \"xmax\": 5822984.857848301, \"ymax\": 5403104.752171321}" - }, - 2777: { - "label": "NAD 1983 HARN StatePlane Florida East FIPS 0901", - "defaultExtent": "{\"xmin\": -5422682.2074441705, \"ymin\": -12302114.955780467, \"xmax\": 5822682.2074441705, \"ymax\": 6918013.955638945}" - }, - 2778: { - "label": "NAD 1983 HARN StatePlane Florida West FIPS 0902", - "defaultExtent": "{\"xmin\": -5422682.207444169, \"ymin\": -12302114.955780467, \"xmax\": 5822682.2074441705, \"ymax\": 6918013.955638945}" - }, - 2779: { - "label": "NAD 1983 HARN StatePlane Florida North FIPS 0903", - "defaultExtent": "{\"xmin\": -38386184.53222137, \"ymin\": -27874919.325736687, \"xmax\": 39586184.5326483, \"ymax\": 11420627.34512336}" - }, - 2780: { - "label": "NAD 1983 HARN StatePlane Georgia East FIPS 1001", - "defaultExtent": "{\"xmin\": -5422450.671615874, \"ymin\": -12929450.11040019, \"xmax\": 5822450.671615874, \"ymax\": 6289887.337389712}" - }, - 2781: { - "label": "NAD 1983 HARN StatePlane Georgia West FIPS 1002", - "defaultExtent": "{\"xmin\": -4922450.671615872, \"ymin\": -12929450.11040019, \"xmax\": 6322450.6716158725, \"ymax\": 6289887.337389712}" - }, - 2782: { - "label": "NAD 1983 HARN StatePlane Hawaii 1 FIPS 5101", - "defaultExtent": "{\"xmin\": -5122825.539147385, \"ymin\": -11693459.598062156, \"xmax\": 6122825.539147409, \"ymax\": 7527159.266991055}" - }, - 2783: { - "label": "NAD 1983 HARN StatePlane Hawaii 2 FIPS 5102", - "defaultExtent": "{\"xmin\": -5122825.539199754, \"ymin\": -11859502.83699039, \"xmax\": 6122825.539095043, \"ymax\": 7361116.028067361}" - }, - 2784: { - "label": "NAD 1983 HARN StatePlane Hawaii 3 FIPS 5103", - "defaultExtent": "{\"xmin\": -5122956.74278342, \"ymin\": -11952040.153067613, \"xmax\": 6122956.742783444, \"ymax\": 7269027.208042317}" - }, - 2785: { - "label": "NAD 1983 HARN StatePlane Hawaii 4 FIPS 5104", - "defaultExtent": "{\"xmin\": -5122956.742783412, \"ymin\": -12025855.146337828, \"xmax\": 6122956.742783444, \"ymax\": 7195212.2147721015}" - }, - 2786: { - "label": "NAD 1983 HARN StatePlane Hawaii 5 FIPS 5105", - "defaultExtent": "{\"xmin\": -5123012.972965518, \"ymin\": -12007520.920163663, \"xmax\": 6123012.972860808, \"ymax\": 7213738.653546542}" - }, - 2787: { - "label": "NAD 1983 HARN StatePlane Idaho East FIPS 1101", - "defaultExtent": "{\"xmin\": -5422717.024861958, \"ymin\": -14224494.619744752, \"xmax\": 5822717.024861958, \"ymax\": 4995753.308761801}" - }, - 2788: { - "label": "NAD 1983 HARN StatePlane Idaho Central FIPS 1102", - "defaultExtent": "{\"xmin\": -5122717.024861958, \"ymin\": -14224494.619744752, \"xmax\": 6122717.024861961, \"ymax\": 4995753.308761801}" - }, - 2789: { - "label": "NAD 1983 HARN StatePlane Idaho West FIPS 1103", - "defaultExtent": "{\"xmin\": -4822638.105381638, \"ymin\": -14224294.967206975, \"xmax\": 6422638.105381638, \"ymax\": 4995683.189235387}" - }, - 2790: { - "label": "NAD 1983 HARN StatePlane Illinois East FIPS 1201", - "defaultExtent": "{\"xmin\": -5322872.397588842, \"ymin\": -13669807.500473078, \"xmax\": 5922872.397588842, \"ymax\": 5550971.541784854}" - }, - 2791: { - "label": "NAD 1983 HARN StatePlane Illinois West FIPS 1202", - "defaultExtent": "{\"xmin\": -4922682.207444172, \"ymin\": -13669345.127777718, \"xmax\": 6322682.2074441705, \"ymax\": 5550783.783641693}" - }, - 2792: { - "label": "NAD 1983 HARN StatePlane Indiana East FIPS 1301", - "defaultExtent": "{\"xmin\": -5522825.539147399, \"ymin\": -13512173.175005069, \"xmax\": 5722825.539147401, \"ymax\": 5708445.690089753}" - }, - 2793: { - "label": "NAD 1983 HARN StatePlane Indiana West FIPS 1302", - "defaultExtent": "{\"xmin\": -4722825.539147401, \"ymin\": -13512173.175005067, \"xmax\": 6522825.539147401, \"ymax\": 5708445.690089753}" - }, - 2794: { - "label": "NAD 1983 HARN StatePlane Iowa North FIPS 1401", - "defaultExtent": "{\"xmin\": -35179672.413309455, \"ymin\": -28619932.387049854, \"xmax\": 38179672.41221074, \"ymax\": 27493755.251850624}" - }, - 2795: { - "label": "NAD 1983 HARN StatePlane Iowa South FIPS 1402", - "defaultExtent": "{\"xmin\": -36344508.92670218, \"ymin\": -29415464.41348134, \"xmax\": 37344508.92730374, \"ymax\": 25047110.383624904}" - }, - 2796: { - "label": "NAD 1983 HARN StatePlane Kansas North FIPS 1501", - "defaultExtent": "{\"xmin\": -36694583.27893349, \"ymin\": -29176343.808520153, \"xmax\": 37494583.27889171, \"ymax\": 22940063.423304893}" - }, - 2797: { - "label": "NAD 1983 HARN StatePlane Kansas South FIPS 1502", - "defaultExtent": "{\"xmin\": -36888610.08409184, \"ymin\": -28552051.03735451, \"xmax\": 37688610.084001794, \"ymax\": 21865414.924582668}" - }, - 2798: { - "label": "NAD 1983 HARN StatePlane Kentucky North FIPS 1601", - "defaultExtent": "{\"xmin\": -36706540.6144563, \"ymin\": -29061234.143652882, \"xmax\": 37706540.61484275, \"ymax\": 22066321.05409854}" - }, - 2799: { - "label": "NAD 1983 HARN StatePlane Kentucky South FIPS 1602", - "defaultExtent": "{\"xmin\": -36881000.62027418, \"ymin\": -28397921.164930366, \"xmax\": 37881000.620047584, \"ymax\": 21253778.418876573}" - }, - 2800: { - "label": "NAD 1983 HARN StatePlane Louisiana North FIPS 1701", - "defaultExtent": "{\"xmin\": -37494730.88922037, \"ymin\": -28088971.837408308, \"xmax\": 39494730.88715185, \"ymax\": 13871961.36705782}" - }, - 2801: { - "label": "NAD 1983 HARN StatePlane Louisiana South FIPS 1702", - "defaultExtent": "{\"xmin\": -38036283.63849772, \"ymin\": -27814605.530320723, \"xmax\": 40036283.638507746, \"ymax\": 11223230.411243448}" - }, - 2802: { - "label": "NAD 1983 HARN StatePlane Maine East FIPS 1801", - "defaultExtent": "{\"xmin\": -5322450.671615874, \"ymin\": -14445971.085374892, \"xmax\": 5922450.671615874, \"ymax\": 4773366.36241501}" - }, - 2803: { - "label": "NAD 1983 HARN StatePlane Maine West FIPS 1802", - "defaultExtent": "{\"xmin\": -4722825.539147399, \"ymin\": -14354355.990839133, \"xmax\": 6522825.539147401, \"ymax\": 4866262.874255687}" - }, - 2804: { - "label": "NAD 1983 HARN StatePlane Maryland FIPS 1900", - "defaultExtent": "{\"xmin\": -36747007.26427332, \"ymin\": -29091384.527313504, \"xmax\": 37547007.26462395, \"ymax\": 22554678.123978678}" - }, - 2805: { - "label": "NAD 1983 HARN StatePlane Massachusetts Mainland FIPS 2001", - "defaultExtent": "{\"xmin\": -36530705.74194933, \"ymin\": -28803004.001248993, \"xmax\": 36930705.741942905, \"ymax\": 26796569.38877064}" - }, - 2806: { - "label": "NAD 1983 HARN StatePlane Massachusetts Island FIPS 2002", - "defaultExtent": "{\"xmin\": -36324363.173723884, \"ymin\": -29532372.723926485, \"xmax\": 37324363.17347703, \"ymax\": 25143058.28571613}" - }, - 2807: { - "label": "NAD 1983 HARN StatePlane Michigan North FIPS 2111", - "defaultExtent": "{\"xmin\": -28338008.16261086, \"ymin\": -30062764.319301587, \"xmax\": 44338008.16271662, \"ymax\": 29682471.10421796}" - }, - 2808: { - "label": "NAD 1983 HARN StatePlane Michigan Central FIPS 2112", - "defaultExtent": "{\"xmin\": -30455190.630660422, \"ymin\": -29873530.398834094, \"xmax\": 42455190.63111069, \"ymax\": 28598773.969079223}" - }, - 2809: { - "label": "NAD 1983 HARN StatePlane Michigan South FIPS 2113", - "defaultExtent": "{\"xmin\": -32655721.616859354, \"ymin\": -29624554.326154392, \"xmax\": 40655721.616422996, \"ymax\": 26723713.97971105}" - }, - 2810: { - "label": "NAD 1983 HARN StatePlane Minnesota North FIPS 2201", - "defaultExtent": "{\"xmin\": -35413952.21883893, \"ymin\": -30179238.744515866, \"xmax\": 37013952.21884459, \"ymax\": 30925833.663218413}" - }, - 2811: { - "label": "NAD 1983 HARN StatePlane Minnesota Central FIPS 2202", - "defaultExtent": "{\"xmin\": -35534345.78057431, \"ymin\": -29988111.83685971, \"xmax\": 37134345.780168205, \"ymax\": 29803284.527532667}" - }, - 2812: { - "label": "NAD 1983 HARN StatePlane Minnesota South FIPS 2203", - "defaultExtent": "{\"xmin\": -35696176.20197969, \"ymin\": -29729049.350341942, \"xmax\": 37296176.20161064, \"ymax\": 28305006.49768952}" - }, - 2813: { - "label": "NAD 1983 HARN StatePlane Mississippi East FIPS 2301", - "defaultExtent": "{\"xmin\": -5322731.822264518, \"ymin\": -12874675.296950985, \"xmax\": 5922731.8222645195, \"ymax\": 6345623.2138176095}" - }, - 2814: { - "label": "NAD 1983 HARN StatePlane Mississippi West FIPS 2302", - "defaultExtent": "{\"xmin\": -4922731.8222645195, \"ymin\": -12874675.296950981, \"xmax\": 6322731.8222645195, \"ymax\": 6345623.2138176095}" - }, - 2815: { - "label": "NAD 1983 HARN StatePlane Missouri East FIPS 2401", - "defaultExtent": "{\"xmin\": -5372638.10538164, \"ymin\": -13576774.369054265, \"xmax\": 5872638.105381638, \"ymax\": 5643203.787388095}" - }, - 2816: { - "label": "NAD 1983 HARN StatePlane Missouri Central FIPS 2402", - "defaultExtent": "{\"xmin\": -5122638.105381638, \"ymin\": -13576774.369054267, \"xmax\": 6122638.105381639, \"ymax\": 5643203.787388095}" - }, - 2817: { - "label": "NAD 1983 HARN StatePlane Missouri West FIPS 2403", - "defaultExtent": "{\"xmin\": -4772682.2074441705, \"ymin\": -13613865.018881941, \"xmax\": 6472682.2074441705, \"ymax\": 5606263.89253747}" - }, - 2818: { - "label": "NAD 1983 HARN StatePlane Montana FIPS 2500", - "defaultExtent": "{\"xmin\": -35665865.835127994, \"ymin\": -30006746.26947549, \"xmax\": 36865865.835221216, \"ymax\": 30370447.115839537}" - }, - 2819: { - "label": "NAD 1983 HARN StatePlane Nebraska FIPS 2600", - "defaultExtent": "{\"xmin\": -36300933.080799475, \"ymin\": -29399402.24687034, \"xmax\": 37300933.080734946, \"ymax\": 25403103.617317706}" - }, - 2820: { - "label": "NAD 1983 HARN StatePlane Nevada East FIPS 2701", - "defaultExtent": "{\"xmin\": -5422450.671615874, \"ymin\": -5456142.367622394, \"xmax\": 5822450.671615875, \"ymax\": 13763195.080167508}" - }, - 2821: { - "label": "NAD 1983 HARN StatePlane Nevada Central FIPS 2702", - "defaultExtent": "{\"xmin\": -5122450.671615874, \"ymin\": -7456142.367622394, \"xmax\": 6122450.671615874, \"ymax\": 11763195.080167508}" - }, - 2822: { - "label": "NAD 1983 HARN StatePlane Nevada West FIPS 2703", - "defaultExtent": "{\"xmin\": -4822450.671615874, \"ymin\": -9456142.367622394, \"xmax\": 6422450.671615874, \"ymax\": 9763195.080167508}" - }, - 2823: { - "label": "NAD 1983 HARN StatePlane New Hampshire FIPS 2800", - "defaultExtent": "{\"xmin\": -5322825.539147401, \"ymin\": -14317328.47673371, \"xmax\": 5922825.539147401, \"ymax\": 4903290.3883611085}" - }, - 2824: { - "label": "NAD 1983 HARN StatePlane New Jersey FIPS 2900", - "defaultExtent": "{\"xmin\": -5472450.671615874, \"ymin\": -13909240.393148925, \"xmax\": 5772450.671615874, \"ymax\": 5310097.054640977}" - }, - 2825: { - "label": "NAD 1983 HARN StatePlane New Mexico East FIPS 3001", - "defaultExtent": "{\"xmin\": -5457501.789915625, \"ymin\": -13040418.509908829, \"xmax\": 5787501.789915627, \"ymax\": 6179093.676604471}" - }, - 2826: { - "label": "NAD 1983 HARN StatePlane New Mexico Central FIPS 3002", - "defaultExtent": "{\"xmin\": -5122450.671615874, \"ymin\": -13040299.949871464, \"xmax\": 6122450.671615874, \"ymax\": 6179037.49791844}" - }, - 2827: { - "label": "NAD 1983 HARN StatePlane New Mexico West FIPS 3003", - "defaultExtent": "{\"xmin\": -4792544.388498756, \"ymin\": -13040517.30993997, \"xmax\": 6452544.388498756, \"ymax\": 6179140.492176165}" - }, - 2828: { - "label": "NAD 1983 HARN StatePlane New York East FIPS 3101", - "defaultExtent": "{\"xmin\": -5472450.671615874, \"ymin\": -13909240.393148925, \"xmax\": 5772450.671615874, \"ymax\": 5310097.054640977}" - }, - 2829: { - "label": "NAD 1983 HARN StatePlane New York Central FIPS 3102", - "defaultExtent": "{\"xmin\": -5372661.534602356, \"ymin\": -14039281.307184162, \"xmax\": 5872661.534602358, \"ymax\": 5180776.937839759}" - }, - 2830: { - "label": "NAD 1983 HARN StatePlane New York West FIPS 3103", - "defaultExtent": "{\"xmin\": -5272661.53460236, \"ymin\": -14039281.307184162, \"xmax\": 5972661.534602358, \"ymax\": 5180776.937839759}" - }, - 2831: { - "label": "NAD 1983 HARN StatePlane New York Long Island FIPS 3104", - "defaultExtent": "{\"xmin\": -36587956.42066342, \"ymin\": -29425420.120449886, \"xmax\": 37187956.42150142, \"ymax\": 24629425.6260428}" - }, - 2832: { - "label": "NAD 1983 HARN StatePlane North Dakota North FIPS 3301", - "defaultExtent": "{\"xmin\": -35595748.115963005, \"ymin\": -30339027.657292105, \"xmax\": 36795748.11641998, \"ymax\": 30974941.604174778}" - }, - 2833: { - "label": "NAD 1983 HARN StatePlane North Dakota South FIPS 3302", - "defaultExtent": "{\"xmin\": -35693627.05966489, \"ymin\": -30171287.465168312, \"xmax\": 36893627.0601383, \"ymax\": 30070892.076617684}" - }, - 2834: { - "label": "NAD 1983 HARN StatePlane Ohio North FIPS 3401", - "defaultExtent": "{\"xmin\": -36260139.32294244, \"ymin\": -29374687.724612944, \"xmax\": 37460139.32264283, \"ymax\": 24932674.77100941}" - }, - 2835: { - "label": "NAD 1983 HARN StatePlane Ohio South FIPS 3402", - "defaultExtent": "{\"xmin\": -36475619.49728193, \"ymin\": -29142750.459979072, \"xmax\": 37675619.497339524, \"ymax\": 23138992.601405952}" - }, - 2836: { - "label": "NAD 1983 HARN StatePlane Oklahoma North FIPS 3501", - "defaultExtent": "{\"xmin\": -36979233.88907343, \"ymin\": -28714973.963273533, \"xmax\": 38179233.8890346, \"ymax\": 19365200.320864283}" - }, - 2837: { - "label": "NAD 1983 HARN StatePlane Oklahoma South FIPS 3502", - "defaultExtent": "{\"xmin\": -37281426.008000575, \"ymin\": -28482182.493828315, \"xmax\": 38481426.007534444, \"ymax\": 17385783.726951864}" - }, - 2838: { - "label": "NAD 1983 HARN StatePlane Oregon North FIPS 3601", - "defaultExtent": "{\"xmin\": -33934395.67833442, \"ymin\": -29916770.9826887, \"xmax\": 38934395.67866903, \"ymax\": 28774826.90963382}" - }, - 2839: { - "label": "NAD 1983 HARN StatePlane Oregon South FIPS 3602", - "defaultExtent": "{\"xmin\": -35126017.07220474, \"ymin\": -29649727.834081486, \"xmax\": 38126017.072228044, \"ymax\": 27002732.65337064}" - }, - 2840: { - "label": "NAD 1983 HARN StatePlane Rhode Island FIPS 3800", - "defaultExtent": "{\"xmin\": -5522977.829082084, \"ymin\": -14160369.134576127, \"xmax\": 5722977.829082084, \"ymax\": 5060770.306298815}" - }, - 2841: { - "label": "NAD 1983 HARN StatePlane South Dakota North FIPS 4001", - "defaultExtent": "{\"xmin\": -35846098.92496543, \"ymin\": -29933703.866771042, \"xmax\": 37046098.92490602, \"ymax\": 28645269.44168758}" - }, - 2842: { - "label": "NAD 1983 HARN StatePlane South Dakota South FIPS 4002", - "defaultExtent": "{\"xmin\": -35980929.411304265, \"ymin\": -29734707.47249241, \"xmax\": 37180929.41117397, \"ymax\": 27393676.96179096}" - }, - 2843: { - "label": "NAD 1983 HARN StatePlane Tennessee FIPS 4100", - "defaultExtent": "{\"xmin\": -37039650.6279049, \"ymin\": -28631019.31672457, \"xmax\": 38239650.62802555, \"ymax\": 18990861.045042165}" - }, - 2844: { - "label": "NAD 1983 HARN StatePlane Texas North FIPS 4201", - "defaultExtent": "{\"xmin\": -37516299.8331, \"ymin\": -27580728.943599287, \"xmax\": 37916299.833128214, \"ymax\": 19461951.497943036}" - }, - 2845: { - "label": "NAD 1983 HARN StatePlane Texas North Central FIPS 4202", - "defaultExtent": "{\"xmin\": -37614616.88807972, \"ymin\": -26250391.134317875, \"xmax\": 38814616.88802452, \"ymax\": 17395582.84290185}" - }, - 2846: { - "label": "NAD 1983 HARN StatePlane Texas Central FIPS 4203", - "defaultExtent": "{\"xmin\": -38040663.03171102, \"ymin\": -24970101.92794974, \"xmax\": 39440663.03170802, \"ymax\": 15602650.666709403}" - }, - 2847: { - "label": "NAD 1983 HARN StatePlane Texas South Central FIPS 4204", - "defaultExtent": "{\"xmin\": -38625948.2389665, \"ymin\": -23722141.01585047, \"xmax\": 39825948.2389665, \"ymax\": 15422945.822918478}" - }, - 2848: { - "label": "NAD 1983 HARN StatePlane Texas South FIPS 4205", - "defaultExtent": "{\"xmin\": -39382898.13859524, \"ymin\": -22428383.748523414, \"xmax\": 39982898.13859524, \"ymax\": 17130472.597137526}" - }, - 2849: { - "label": "NAD 1983 HARN StatePlane Utah North FIPS 4301", - "defaultExtent": "{\"xmin\": -36338834.42915058, \"ymin\": -28453982.376255378, \"xmax\": 37338834.521727204, \"ymax\": 26066690.159262396}" - }, - 2850: { - "label": "NAD 1983 HARN StatePlane Utah Central FIPS 4302", - "defaultExtent": "{\"xmin\": -36514060.18168421, \"ymin\": -27191819.5738922, \"xmax\": 37514060.18232606, \"ymax\": 25642908.167597167}" - }, - 2851: { - "label": "NAD 1983 HARN StatePlane Utah South FIPS 4303", - "defaultExtent": "{\"xmin\": -36809744.07562093, \"ymin\": -25948407.843968417, \"xmax\": 37809744.075334504, \"ymax\": 24295469.49478243}" - }, - 2852: { - "label": "NAD 1983 HARN StatePlane Vermont FIPS 4400", - "defaultExtent": "{\"xmin\": -5122812.1510212775, \"ymin\": -14317294.386720052, \"xmax\": 6122812.151021276, \"ymax\": 4903278.713471021}" - }, - 2853: { - "label": "NAD 1983 HARN StatePlane Virginia North FIPS 4501", - "defaultExtent": "{\"xmin\": -33684162.33987652, \"ymin\": -27083846.657879442, \"xmax\": 40684162.34077641, \"ymax\": 24234815.029329725}" - }, - 2854: { - "label": "NAD 1983 HARN StatePlane Virginia South FIPS 4502", - "defaultExtent": "{\"xmin\": -33875616.80010519, \"ymin\": -27898914.99367497, \"xmax\": 40875616.80001254, \"ymax\": 21796916.219502896}" - }, - 2855: { - "label": "NAD 1983 HARN StatePlane Washington North FIPS 4601", - "defaultExtent": "{\"xmin\": -35693390.40305884, \"ymin\": -30339611.799414955, \"xmax\": 36693390.40324891, \"ymax\": 31002022.19631627}" - }, - 2856: { - "label": "NAD 1983 HARN StatePlane Washington South FIPS 4602", - "defaultExtent": "{\"xmin\": -35813457.80653769, \"ymin\": -30129505.531924177, \"xmax\": 36813457.80730579, \"ymax\": 29888507.91177208}" - }, - 2857: { - "label": "NAD 1983 HARN StatePlane West Virginia North FIPS 4701", - "defaultExtent": "{\"xmin\": -36443027.89488857, \"ymin\": -29205240.099509504, \"xmax\": 37643027.8949125, \"ymax\": 23375051.76188209}" - }, - 2858: { - "label": "NAD 1983 HARN StatePlane West Virginia South FIPS 4702", - "defaultExtent": "{\"xmin\": -36647651.619762786, \"ymin\": -28996711.06985563, \"xmax\": 37847651.61951533, \"ymax\": 21766153.09529358}" - }, - 2859: { - "label": "NAD 1983 HARN StatePlane Wisconsin North FIPS 4801", - "defaultExtent": "{\"xmin\": -35748933.75577011, \"ymin\": -30104004.245000057, \"xmax\": 36948933.75551403, \"ymax\": 29535005.089385632}" - }, - 2860: { - "label": "NAD 1983 HARN StatePlane Wisconsin Central FIPS 4802", - "defaultExtent": "{\"xmin\": -35862028.694118075, \"ymin\": -29930060.701200917, \"xmax\": 37062028.688673995, \"ymax\": 28477287.000578806}" - }, - 2861: { - "label": "NAD 1983 HARN StatePlane Wisconsin South FIPS 4803", - "defaultExtent": "{\"xmin\": -36003344.686841294, \"ymin\": -29693054.532282908, \"xmax\": 37203344.68690827, \"ymax\": 27208063.07319163}" - }, - 2862: { - "label": "NAD 1983 HARN StatePlane Wyoming East FIPS 4901", - "defaultExtent": "{\"xmin\": -5422661.534602354, \"ymin\": -14094797.558167633, \"xmax\": 5822661.534602358, \"ymax\": 5125260.686856288}" - }, - 2863: { - "label": "NAD 1983 HARN StatePlane Wyoming East Central FIPS 4902", - "defaultExtent": "{\"xmin\": -5222661.53460236, \"ymin\": -13994797.558167633, \"xmax\": 6022661.534602358, \"ymax\": 5225260.686856289}" - }, - 2864: { - "label": "NAD 1983 HARN StatePlane Wyoming West Central FIPS 4903", - "defaultExtent": "{\"xmin\": -5022661.534602358, \"ymin\": -14094797.558167633, \"xmax\": 6222661.534602358, \"ymax\": 5125260.686856289}" - }, - 2865: { - "label": "NAD 1983 HARN StatePlane Wyoming West FIPS 4904", - "defaultExtent": "{\"xmin\": -4822661.534602356, \"ymin\": -13994797.558167633, \"xmax\": 6422661.534602358, \"ymax\": 5225260.686856289}" - }, - 2866: { - "label": "NAD 1983 HARN StatePlane Puerto Rico Virgin Islands FIPS 5200", - "defaultExtent": "{\"xmin\": -38021748.15784241, \"ymin\": -26319807.671320274, \"xmax\": 38421748.157935165, \"ymax\": 15157853.89958689}" - }, - 2867: { - "label": "NAD 1983 HARN StatePlane Arizona East FIPS 0201 Feet Intl", - "defaultExtent": "{\"xmin\": -17746360.47118069, \"ymin\": -42783136.31847593, \"xmax\": 19146360.47118069, \"ymax\": 20272432.735952888}" - }, - 2868: { - "label": "NAD 1983 HARN StatePlane Arizona Central FIPS 0202 Feet Intl", - "defaultExtent": "{\"xmin\": -17746360.47118068, \"ymin\": -42783136.31847593, \"xmax\": 19146360.47118069, \"ymax\": 20272432.735952888}" - }, - 2869: { - "label": "NAD 1983 HARN StatePlane Arizona West FIPS 0203 Feet Intl", - "defaultExtent": "{\"xmin\": -17746975.41135708, \"ymin\": -42784562.5656446, \"xmax\": 19146975.41135708, \"ymax\": 20273108.55129229}" - }, - 2870: { - "label": "NAD 1983 HARN StatePlane California I FIPS 0401 Feet", - "defaultExtent": "{\"xmin\": -114458610.55480444, \"ymin\": -94588064.20459928, \"xmax\": 127581943.88890164, \"ymax\": 82685969.32718042}" - }, - 2871: { - "label": "NAD 1983 HARN StatePlane California II FIPS 0402 Feet", - "defaultExtent": "{\"xmin\": -115211412.98768437, \"ymin\": -93821072.13784765, \"xmax\": 128334746.32134637, \"ymax\": 76478294.09990206}" - }, - 2872: { - "label": "NAD 1983 HARN StatePlane California III FIPS 0403 Feet", - "defaultExtent": "{\"xmin\": -115860210.37094994, \"ymin\": -93269129.6599007, \"xmax\": 128983543.70415375, \"ymax\": 71428330.00270241}" - }, - 2873: { - "label": "NAD 1983 HARN StatePlane California IV FIPS 0404 Feet", - "defaultExtent": "{\"xmin\": -116465913.66438816, \"ymin\": -92734900.17158945, \"xmax\": 129589246.99847071, \"ymax\": 67053603.00798039}" - }, - 2874: { - "label": "NAD 1983 HARN StatePlane California V FIPS 0405 Feet", - "defaultExtent": "{\"xmin\": -117608557.49121174, \"ymin\": -91881062.55921307, \"xmax\": 130731890.82417348, \"ymax\": 59380571.79304032}" - }, - 2875: { - "label": "NAD 1983 HARN StatePlane California VI FIPS 0406 Feet", - "defaultExtent": "{\"xmin\": -118608490.04197799, \"ymin\": -91259162.22866274, \"xmax\": 131731823.37510438, \"ymax\": 53304515.12412693}" - }, - 2876: { - "label": "NAD 1983 HARN StatePlane Colorado North FIPS 0501 Feet", - "defaultExtent": "{\"xmin\": -118265167.59051295, \"ymin\": -95179746.55749778, \"xmax\": 124265167.5923714, \"ymax\": 79822140.81045881}" - }, - 2877: { - "label": "NAD 1983 HARN StatePlane Colorado Central FIPS 0502 Feet", - "defaultExtent": "{\"xmin\": -118767524.2862273, \"ymin\": -94525123.55933148, \"xmax\": 124767524.28523397, \"ymax\": 75844078.47557206}" - }, - 2878: { - "label": "NAD 1983 HARN StatePlane Colorado South FIPS 0503 Feet", - "defaultExtent": "{\"xmin\": -119380948.96589889, \"ymin\": -93979378.42345235, \"xmax\": 125380948.96797225, \"ymax\": 71076245.23941058}" - }, - 2879: { - "label": "NAD 1983 HARN StatePlane Connecticut FIPS 0600 Feet", - "defaultExtent": "{\"xmin\": -119755880.50351368, \"ymin\": -96342133.97695734, \"xmax\": 121755880.50251827, \"ymax\": 83602707.3085715}" - }, - 2880: { - "label": "NAD 1983 HARN StatePlane Delaware FIPS 0700 Feet", - "defaultExtent": "{\"xmin\": -17791909.487790633, \"ymin\": -45334747.63504151, \"xmax\": 19104242.821123965, \"ymax\": 17726686.174415406}" - }, - 2881: { - "label": "NAD 1983 HARN StatePlane Florida East FIPS 0901 Feet", - "defaultExtent": "{\"xmin\": -17790916.542256415, \"ymin\": -40361188.817423075, \"xmax\": 19103249.875589747, \"ymax\": 22696850.786125436}" - }, - 2882: { - "label": "NAD 1983 HARN StatePlane Florida West FIPS 0902 Feet", - "defaultExtent": "{\"xmin\": -17790916.542256407, \"ymin\": -40361188.817423075, \"xmax\": 19103249.875589747, \"ymax\": 22696850.786125436}" - }, - 2883: { - "label": "NAD 1983 HARN StatePlane Florida North FIPS 0903 Feet", - "defaultExtent": "{\"xmin\": -125938673.75279626, \"ymin\": -91452964.48785444, \"xmax\": 129875673.75419696, \"ymax\": 37469174.881458886}" - }, - 2884: { - "label": "NAD 1983 HARN StatePlane Georgia East FIPS 1001 Feet", - "defaultExtent": "{\"xmin\": -17790156.91179308, \"ymin\": -42419370.90387128, \"xmax\": 19102490.24512641, \"ymax\": 20636072.039419413}" - }, - 2885: { - "label": "NAD 1983 HARN StatePlane Georgia West FIPS 1002 Feet", - "defaultExtent": "{\"xmin\": -16149740.245126404, \"ymin\": -42419370.90387128, \"xmax\": 20742906.91179307, \"ymax\": 20636072.039419413}" - }, - 2886: { - "label": "NAD 1983 HARN StatePlane Idaho East FIPS 1101 Feet", - "defaultExtent": "{\"xmin\": -17791030.77240127, \"ymin\": -46668196.09827923, \"xmax\": 19103364.105734605, \"ymax\": 16390233.980496006}" - }, - 2887: { - "label": "NAD 1983 HARN StatePlane Idaho Central FIPS 1102 Feet", - "defaultExtent": "{\"xmin\": -16806780.77240127, \"ymin\": -46668196.09827923, \"xmax\": 20087614.105734613, \"ymax\": 16390233.980496006}" - }, - 2888: { - "label": "NAD 1983 HARN StatePlane Idaho West FIPS 1103 Feet", - "defaultExtent": "{\"xmin\": -15822271.850739589, \"ymin\": -46667541.07157821, \"xmax\": 21071605.18407292, \"ymax\": 16390003.930016432}" - }, - 2891: { - "label": "NAD 1983 HARN StatePlane Kentucky North FIPS 1601 Feet", - "defaultExtent": "{\"xmin\": -120428041.99926203, \"ymin\": -95345065.68630116, \"xmax\": 123708875.33386324, \"ymax\": 72395921.65832162}" - }, - 2892: { - "label": "NAD 1983 HARN StatePlane Kentucky South FIPS 1602 Feet", - "defaultExtent": "{\"xmin\": -121000416.20168285, \"ymin\": -93168846.35527569, \"xmax\": 124281249.53427276, \"ymax\": 69730104.69593088}" - }, - 2893: { - "label": "NAD 1983 HARN StatePlane Maryland FIPS 1900 Feet", - "defaultExtent": "{\"xmin\": -120560806.33287005, \"ymin\": -95443984.07002771, \"xmax\": 123185473.00068705, \"ymax\": 73998139.81175338}" - }, - 2894: { - "label": "NAD 1983 HARN StatePlane Massachusetts Mainland FIPS 2001 Feet", - "defaultExtent": "{\"xmin\": -119851157.08837874, \"ymin\": -94497855.62743106, \"xmax\": 121163490.421691, \"ymax\": 87915078.06965832}" - }, - 2895: { - "label": "NAD 1983 HARN StatePlane Massachusetts Island FIPS 2002 Feet", - "defaultExtent": "{\"xmin\": -119174181.5124591, \"ymin\": -96890792.84508213, \"xmax\": 122455014.84498255, \"ymax\": 82490183.72572033}" - }, - 2896: { - "label": "NAD 1983 HARN StatePlane Michigan North FIPS 2111 Feet Intl", - "defaultExtent": "{\"xmin\": -92972467.72510123, \"ymin\": -98631116.53314169, \"xmax\": 145465906.0456582, \"ymax\": 97383435.38129252}" - }, - 2897: { - "label": "NAD 1983 HARN StatePlane Michigan Central FIPS 2112 Feet Intl", - "defaultExtent": "{\"xmin\": -99918604.4313006, \"ymin\": -98010270.3373822, \"xmax\": 139288683.17293534, \"ymax\": 93827998.58621791}" - }, - 2898: { - "label": "NAD 1983 HARN StatePlane Michigan South FIPS 2113 Feet Intl", - "defaultExtent": "{\"xmin\": -107138194.28103462, \"ymin\": -97193419.70523094, \"xmax\": 133384913.43970798, \"ymax\": 87676226.96755593}" - }, - 2899: { - "label": "NAD 1983 HARN StatePlane Mississippi East FIPS 2301 Feet", - "defaultExtent": "{\"xmin\": -17462995.9868795, \"ymin\": -42239663.87008002, \"xmax\": 19431495.98687951, \"ymax\": 20818932.160666604}" - }, - 2900: { - "label": "NAD 1983 HARN StatePlane Mississippi West FIPS 2302 Feet", - "defaultExtent": "{\"xmin\": -16150662.653546175, \"ymin\": -42239663.87008, \"xmax\": 20743829.32021284, \"ymax\": 20818932.160666604}" - }, - 2901: { - "label": "NAD 1983 HARN StatePlane Montana FIPS 2500 Feet Intl", - "defaultExtent": "{\"xmin\": -117013995.52207346, \"ymin\": -98447330.28043139, \"xmax\": 120951003.39639506, \"ymax\": 99640574.5270326}" - }, - 2902: { - "label": "NAD 1983 HARN StatePlane New Mexico East FIPS 3001 Feet", - "defaultExtent": "{\"xmin\": -17905153.78908151, \"ymin\": -42783439.727925874, \"xmax\": 18987828.789081518, \"ymax\": 20272576.503993165}" - }, - 2903: { - "label": "NAD 1983 HARN StatePlane New Mexico Central FIPS 3002 Feet", - "defaultExtent": "{\"xmin\": -16805906.91179308, \"ymin\": -42783050.752203286, \"xmax\": 20086740.24512641, \"ymax\": 20272392.191087414}" - }, - 2904: { - "label": "NAD 1983 HARN StatePlane New Mexico West FIPS 3003 Feet", - "defaultExtent": "{\"xmin\": -15723539.381266333, \"ymin\": -42783763.87436138, \"xmax\": 21169722.714599665, \"ymax\": 20272730.0980813}" - }, - 2905: { - "label": "NAD 1983 HARN StatePlane New York East FIPS 3101 Feet", - "defaultExtent": "{\"xmin\": -17954198.578459747, \"ymin\": -45633899.523189425, \"xmax\": 18938448.578459747, \"ymax\": 17421543.42010127}" - }, - 2906: { - "label": "NAD 1983 HARN StatePlane New York Central FIPS 3102 Feet", - "defaultExtent": "{\"xmin\": -17626807.051441226, \"ymin\": -46060542.08865336, \"xmax\": 19267223.7181079, \"ymax\": 16997265.67022927}" - }, - 2907: { - "label": "NAD 1983 HARN StatePlane New York West FIPS 3103 Feet", - "defaultExtent": "{\"xmin\": -17298723.718107905, \"ymin\": -46060542.08865336, \"xmax\": 19595307.051441234, \"ymax\": 16997265.67022927}" - }, - 2908: { - "label": "NAD 1983 HARN StatePlane New York Long Island FIPS 3104 Feet", - "defaultExtent": "{\"xmin\": -120038987.02345988, \"ymin\": -96539899.17850932, \"xmax\": 122007487.02620924, \"ymax\": 80805040.5747754}" - }, - 2909: { - "label": "NAD 1983 HARN StatePlane North Dakota North FIPS 3301 Feet Intl", - "defaultExtent": "{\"xmin\": -116783950.51168965, \"ymin\": -99537492.31395046, \"xmax\": 120720958.38720465, \"ymax\": 101623824.1606784}" - }, - 2910: { - "label": "NAD 1983 HARN StatePlane North Dakota South FIPS 3302 Feet Intl", - "defaultExtent": "{\"xmin\": -117105075.65506853, \"ymin\": -98987163.59963356, \"xmax\": 121042083.53063746, \"ymax\": 98657782.40360132}" - }, - 2911: { - "label": "NAD 1983 HARN StatePlane Oklahoma North FIPS 3501 Feet", - "defaultExtent": "{\"xmin\": -121322703.18440174, \"ymin\": -94209043.74450657, \"xmax\": 125259703.18427433, \"ymax\": 63533994.71936889}" - }, - 2912: { - "label": "NAD 1983 HARN StatePlane Oklahoma South FIPS 3502 Feet", - "defaultExtent": "{\"xmin\": -122314145.16124853, \"ymin\": -93445293.73183505, \"xmax\": 126251145.15971924, \"ymax\": 57039858.7775079}" - }, - 2913: { - "label": "NAD 1983 HARN StatePlane Oregon North FIPS 3601 Feet Intl", - "defaultExtent": "{\"xmin\": -111333319.15464048, \"ymin\": -98152135.76997603, \"xmax\": 127737518.6308039, \"ymax\": 94405600.09722382}" - }, - 2914: { - "label": "NAD 1983 HARN StatePlane Oregon South FIPS 3602 Feet Intl", - "defaultExtent": "{\"xmin\": -115242838.16340137, \"ymin\": -97276009.95433559, \"xmax\": 125085357.8485172, \"ymax\": 88591642.56355196}" - }, - 2915: { - "label": "NAD 1983 HARN StatePlane Tennessee FIPS 4100 Feet", - "defaultExtent": "{\"xmin\": -121520920.4350513, \"ymin\": -93933602.54162051, \"xmax\": 125457920.43544713, \"ymax\": 62305849.94527583}" - }, - 2916: { - "label": "NAD 1983 HARN StatePlane Texas North FIPS 4201 Feet", - "defaultExtent": "{\"xmin\": -123084727.03576224, \"ymin\": -90487774.87579198, \"xmax\": 124397060.36918813, \"ymax\": 63851419.2061681}" - }, - 2917: { - "label": "NAD 1983 HARN StatePlane Texas North Central FIPS 4202 Feet", - "defaultExtent": "{\"xmin\": -123407288.90697485, \"ymin\": -86123158.24650788, \"xmax\": 127344288.90679376, \"ymax\": 57072008.04375381}" - }, - 2918: { - "label": "NAD 1983 HARN StatePlane Texas Central FIPS 4203 Feet", - "defaultExtent": "{\"xmin\": -124805075.29653856, \"ymin\": -81922742.74194843, \"xmax\": 129398241.96319537, \"ymax\": 51189696.39569576}" - }, - 2919: { - "label": "NAD 1983 HARN StatePlane Texas South Central FIPS 4204 Feet", - "defaultExtent": "{\"xmin\": -126725298.51400925, \"ymin\": -77828390.98283607, \"xmax\": 130662298.51400925, \"ymax\": 50600114.754025035}" - }, - 2920: { - "label": "NAD 1983 HARN StatePlane Texas South FIPS 4205 Feet", - "defaultExtent": "{\"xmin\": -129208724.97637452, \"ymin\": -73583789.01494722, \"xmax\": 131177224.97637452, \"ymax\": 56202225.512442015}" - }, - 2921: { - "label": "NAD 1983 HARN StatePlane Utah North FIPS 4301 Feet Intl", - "defaultExtent": "{\"xmin\": -119221897.73343366, \"ymin\": -93352960.55201896, \"xmax\": 122502737.93217586, \"ymax\": 85520637.00545405}" - }, - 2922: { - "label": "NAD 1983 HARN StatePlane Utah Central FIPS 4302 Feet Intl", - "defaultExtent": "{\"xmin\": -119796785.37297969, \"ymin\": -89212006.47602427, \"xmax\": 123077625.27009863, \"ymax\": 84130276.14041065}" - }, - 2923: { - "label": "NAD 1983 HARN StatePlane Utah South FIPS 4303 Feet Intl", - "defaultExtent": "{\"xmin\": -120766876.88852009, \"ymin\": -85132571.66656305, \"xmax\": 124047716.78259352, \"ymax\": 79709545.58655652}" - }, - 2924: { - "label": "NAD 1983 HARN StatePlane Virginia North FIPS 4501 Feet", - "defaultExtent": "{\"xmin\": -110512122.6100782, \"ymin\": -88857586.91005945, \"xmax\": 133477955.94636394, \"ymax\": 79510388.9753926}" - }, - 2925: { - "label": "NAD 1983 HARN StatePlane Virginia South FIPS 4502 Feet", - "defaultExtent": "{\"xmin\": -111140252.78501177, \"ymin\": -91531690.27508196, \"xmax\": 134106086.11804111, \"ymax\": 71512049.29681908}" - }, - 2926: { - "label": "NAD 1983 HARN StatePlane Washington North FIPS 4601 Feet", - "defaultExtent": "{\"xmin\": -117104065.01403554, \"ymin\": -99539209.71191388, \"xmax\": 120384898.34799246, \"ymax\": 101712467.82241428}" - }, - 2927: { - "label": "NAD 1983 HARN StatePlane Washington South FIPS 4602 Feet", - "defaultExtent": "{\"xmin\": -117497986.15361571, \"ymin\": -98849886.06598788, \"xmax\": 120778819.48946907, \"ymax\": 98059213.04053889}" - }, - 2928: { - "label": "NAD 1983 HARN StatePlane Wisconsin North FIPS 4801 Feet", - "defaultExtent": "{\"xmin\": -117286293.49705575, \"ymin\": -98766220.59380434, \"xmax\": 121223293.49621561, \"ymax\": 96899429.19742602}" - }, - 2929: { - "label": "NAD 1983 HARN StatePlane Wisconsin Central FIPS 4802 Feet", - "defaultExtent": "{\"xmin\": -117657339.14061904, \"ymin\": -98195540.81718999, \"xmax\": 121594339.12275791, \"ymax\": 93429232.43439895}" - }, - 2930: { - "label": "NAD 1983 HARN StatePlane Wisconsin South FIPS 4803 Feet", - "defaultExtent": "{\"xmin\": -118120973.36007847, \"ymin\": -97417963.07799816, \"xmax\": 122057973.36029819, \"ymax\": 89265120.26596287}" - }, - 2931: { - "label": "Beduaram TM 13 NE", - "defaultExtent": "{\"xmin\": -5120944.475688979, \"ymin\": -9606659.335852288, \"xmax\": 6120944.47568898, \"ymax\": 9606659.335852282}" - }, - 2932: { - "label": "QND 1995 Qatar National Grid", - "defaultExtent": "{\"xmin\": -5423199.248179519, \"ymin\": -12015975.72052533, \"xmax\": 5823199.248179519, \"ymax\": 7205694.91098534}" - }, - 2933: { - "label": "Gunung Segara UTM Zone 50S", - "defaultExtent": "{\"xmin\": -5120096.774353864, \"ymin\": 394274.7006001249, \"xmax\": 6120096.774353864, \"ymax\": 19605725.299399868}" - }, - 2935: { - "label": "Pulkovo 1942 CS63 Zone A1", - "defaultExtent": "{\"xmin\": -4323107.467526717, \"ymin\": -9623695.679377396, \"xmax\": 6923107.467526718, \"ymax\": 9597894.552888796}" - }, - 2936: { - "label": "Pulkovo 1942 CS63 Zone A2", - "defaultExtent": "{\"xmin\": -3323107.467526717, \"ymin\": -9623695.679377396, \"xmax\": 7923107.467526716, \"ymax\": 9597894.552888796}" - }, - 2937: { - "label": "Pulkovo 1942 CS63 Zone A3", - "defaultExtent": "{\"xmin\": -2323107.467526717, \"ymin\": -9623695.679377396, \"xmax\": 8923107.467526717, \"ymax\": 9597894.552888796}" - }, - 2938: { - "label": "Pulkovo 1942 CS63 Zone A4", - "defaultExtent": "{\"xmin\": -1323107.467526717, \"ymin\": -9623695.679377396, \"xmax\": 9923107.467526719, \"ymax\": 9597894.552888796}" - }, - 2939: { - "label": "Pulkovo 1942 CS63 Zone K2", - "defaultExtent": "{\"xmin\": -3323107.467526717, \"ymin\": -9625538.61704635, \"xmax\": 7923107.467526717, \"ymax\": 9596051.615219839}" - }, - 2940: { - "label": "Pulkovo 1942 CS63 Zone K3", - "defaultExtent": "{\"xmin\": -2323107.467526717, \"ymin\": -9625538.61704635, \"xmax\": 8923107.467526717, \"ymax\": 9596051.615219839}" - }, - 2941: { - "label": "Pulkovo 1942 CS63 Zone K4", - "defaultExtent": "{\"xmin\": -1323107.467526717, \"ymin\": -9625538.61704635, \"xmax\": 9923107.467526719, \"ymax\": 9596051.615219839}" - }, - 2942: { - "label": "Porto Santo 1936 UTM Zone 28N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 2943: { - "label": "Selvagem Grande 1938 UTM Zone 28N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 2944: { - "label": "NAD 1983 CSRS MTM 2 SCoPQ", - "defaultExtent": "{\"xmin\": -5317650.671615875, \"ymin\": -9609668.723894954, \"xmax\": 5927250.671615874, \"ymax\": 9609668.72389495}" - }, - 2945: { - "label": "NAD 1983 CSRS MTM 3", - "defaultExtent": "{\"xmin\": -5317650.671615874, \"ymin\": -9609668.723894954, \"xmax\": 5927250.671615874, \"ymax\": 9609668.72389495}" - }, - 2946: { - "label": "NAD 1983 CSRS MTM 4", - "defaultExtent": "{\"xmin\": -5317650.671615874, \"ymin\": -9609668.723894954, \"xmax\": 5927250.671615874, \"ymax\": 9609668.72389495}" - }, - 2947: { - "label": "NAD 1983 CSRS MTM 5", - "defaultExtent": "{\"xmin\": -5317650.671615875, \"ymin\": -9609668.723894954, \"xmax\": 5927250.671615874, \"ymax\": 9609668.72389495}" - }, - 2948: { - "label": "NAD 1983 CSRS MTM 6", - "defaultExtent": "{\"xmin\": -5317650.671615874, \"ymin\": -9609668.723894954, \"xmax\": 5927250.671615874, \"ymax\": 9609668.72389495}" - }, - 2949: { - "label": "NAD 1983 CSRS MTM 7", - "defaultExtent": "{\"xmin\": -5317650.671615872, \"ymin\": -9609668.723894954, \"xmax\": 5927250.671615874, \"ymax\": 9609668.72389495}" - }, - 2950: { - "label": "NAD 1983 CSRS MTM 8", - "defaultExtent": "{\"xmin\": -5317650.671615875, \"ymin\": -9609668.723894954, \"xmax\": 5927250.671615874, \"ymax\": 9609668.72389495}" - }, - 2951: { - "label": "NAD 1983 CSRS MTM 9", - "defaultExtent": "{\"xmin\": -5317650.671615874, \"ymin\": -9609668.723894954, \"xmax\": 5927250.671615874, \"ymax\": 9609668.72389495}" - }, - 2952: { - "label": "NAD 1983 CSRS MTM 10", - "defaultExtent": "{\"xmin\": -5317650.671615872, \"ymin\": -9609668.723894954, \"xmax\": 5927250.671615875, \"ymax\": 9609668.72389495}" - }, - 2953: { - "label": "NAD 1983 CSRS New Brunswick Stereographic", - "defaultExtent": "{\"xmin\": -28216609.30251005, \"ymin\": -23044570.09165448, \"xmax\": 33216609.302617967, \"ymax\": 38199039.96517336}" - }, - 2954: { - "label": "NAD 1983 CSRS Prince Edward Island", - "defaultExtent": "{\"xmin\": -30310559.120786555, \"ymin\": -29767213.08570662, \"xmax\": 31110559.12086179, \"ymax\": 31492912.90882549}" - }, - 2955: { - "label": "NAD 1983 CSRS UTM Zone 11N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 2956: { - "label": "NAD 1983 CSRS UTM Zone 12N", - "defaultExtent": "{\"xmin\": -5120763.767723998, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 2957: { - "label": "NAD 1983 CSRS UTM Zone 13N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 2958: { - "label": "NAD 1983 CSRS UTM Zone 17N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 2959: { - "label": "NAD 1983 CSRS UTM Zone 18N", - "defaultExtent": "{\"xmin\": -5120763.767724002, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 2960: { - "label": "NAD 1983 CSRS UTM Zone 19N", - "defaultExtent": "{\"xmin\": -5120763.767724002, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 2961: { - "label": "NAD 1983 CSRS UTM Zone 20N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 2962: { - "label": "NAD 1983 CSRS UTM Zone 21N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 2964: { - "label": "NAD 1927 Alaska Albers Feet", - "defaultExtent": "{\"xmin\": -45076020.76447885, \"ymin\": -29314284.464857526, \"xmax\": 45076020.76615498, \"ymax\": 56711713.488581255}" - }, - 2965: { - "label": "NAD 1983 StatePlane Indiana East FIPS 1301 Feet", - "defaultExtent": "{\"xmin\": -18119470.123019423, \"ymin\": -44331188.15832912, \"xmax\": 18775636.789686095, \"ymax\": 18728458.901569463}" - }, - 2966: { - "label": "NAD 1983 StatePlane Indiana West FIPS 1302 Feet", - "defaultExtent": "{\"xmin\": -15494803.456352763, \"ymin\": -44331188.15832912, \"xmax\": 21400303.456352763, \"ymax\": 18728458.901569463}" - }, - 2967: { - "label": "NAD 1983 HARN StatePlane Indiana East FIPS 1301 Feet", - "defaultExtent": "{\"xmin\": -18119470.123019423, \"ymin\": -44331188.15832912, \"xmax\": 18775636.789686095, \"ymax\": 18728458.901569463}" - }, - 2968: { - "label": "NAD 1983 HARN StatePlane Indiana West FIPS 1302 Feet", - "defaultExtent": "{\"xmin\": -15494803.456352763, \"ymin\": -44331188.15832912, \"xmax\": 21400303.456352763, \"ymax\": 18728458.901569463}" - }, - 2969: { - "label": "Fort Marigot UTM 20N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 2970: { - "label": "Sainte Anne UTM 20N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 2971: { - "label": "CSG 1967 UTM 22N", - "defaultExtent": "{\"xmin\": -5121006.178542034, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 2972: { - "label": "RGFG 1995 UTM 22N", - "defaultExtent": "{\"xmin\": -5120763.767724002, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 2973: { - "label": "Fort Desaix UTM 20N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 2975: { - "label": "RGR 1992 UTM 40S", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": 393214.46504110843, \"xmax\": 6120763.767724001, \"ymax\": 19606785.534958888}" - }, - 2976: { - "label": "Tahiti 1952 UTM 6S", - "defaultExtent": "{\"xmin\": -5121006.178542016, \"ymin\": 392912.9475212451, \"xmax\": 6121006.17854204, \"ymax\": 19607087.052478764}" - }, - 2977: { - "label": "Tahaa 1954 UTM 5S", - "defaultExtent": "{\"xmin\": -5121006.178542009, \"ymin\": 392912.9475212451, \"xmax\": 6121006.17854204, \"ymax\": 19607087.052478764}" - }, - 2978: { - "label": "IGN72 Nuku Hiva UTM 7S", - "defaultExtent": "{\"xmin\": -5121006.178542009, \"ymin\": 392912.9475212451, \"xmax\": 6121006.178542043, \"ymax\": 19607087.052478764}" - }, - 2980: { - "label": "Combani 1950 UTM 38S", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": 392912.94750043936, \"xmax\": 6121006.178542033, \"ymax\": 19607087.052499555}" - }, - 2981: { - "label": "IGN56 Lifou UTM 58S", - "defaultExtent": "{\"xmin\": -5121006.178542012, \"ymin\": 392912.9475212451, \"xmax\": 6121006.17854204, \"ymax\": 19607087.052478764}" - }, - 2984: { - "label": "RGNC 1991 Lambert New Caledonia", - "defaultExtent": "{\"xmin\": -38962573.945438884, \"ymin\": -13493017.242646003, \"xmax\": 39762573.9454389, \"ymax\": 27199374.15407492}" - }, - 2985: { - "label": "Petrels 1972 Terre Adelie Polar Stereographic", - "defaultExtent": "{\"xmin\": -30375492.264700357, \"ymin\": -32974855.75252387, \"xmax\": 30975492.26470009, \"ymax\": 28376128.77687653}" - }, - 2986: { - "label": "Perroud 1950 Terre Adelie Polar Stereographic", - "defaultExtent": "{\"xmin\": -30375492.264700357, \"ymin\": -32974855.75252387, \"xmax\": 30975492.26470009, \"ymax\": 28376128.77687653}" - }, - 2987: { - "label": "Saint Pierre et Miquelon 1950 UTM 21N", - "defaultExtent": "{\"xmin\": -5120880.632721142, \"ymin\": -9606689.106319863, \"xmax\": 6120880.632721142, \"ymax\": 9606689.106319858}" - }, - 2988: { - "label": "MOP78 UTM 1S", - "defaultExtent": "{\"xmin\": -5121006.178542009, \"ymin\": 392912.9475212451, \"xmax\": 6121006.17854204, \"ymax\": 19607087.052478764}" - }, - 2991: { - "label": "NAD 1983 Oregon Statewide Lambert", - "defaultExtent": "{\"xmin\": -36115366.195192955, \"ymin\": -29681657.82664154, \"xmax\": 36915366.19580745, \"ymax\": 28096555.99768769}" - }, - 2992: { - "label": "NAD 1983 Oregon Statewide Lambert Feet Intl", - "defaultExtent": "{\"xmin\": -118488734.23619735, \"ymin\": -97380767.14777409, \"xmax\": 121113406.1542239, \"ymax\": 92180301.82968402}" - }, - 2993: { - "label": "NAD 1983 HARN Oregon Statewide Lambert", - "defaultExtent": "{\"xmin\": -36115366.195192955, \"ymin\": -29681657.82664154, \"xmax\": 36915366.19580745, \"ymax\": 28096555.99768769}" - }, - 2994: { - "label": "NAD 1983 HARN Oregon Statewide Lambert Feet Intl", - "defaultExtent": "{\"xmin\": -118488734.23619735, \"ymin\": -97380767.14777409, \"xmax\": 121113406.1542239, \"ymax\": 92180301.82968402}" - }, - 2995: { - "label": "IGN53 Mare UTM 58S", - "defaultExtent": "{\"xmin\": -5121006.178542012, \"ymin\": 392912.9475212451, \"xmax\": 6121006.17854204, \"ymax\": 19607087.052478764}" - }, - 2996: { - "label": "ST84 Ile des Pins UTM 58S", - "defaultExtent": "{\"xmin\": -5121006.178542012, \"ymin\": 392912.9475212451, \"xmax\": 6121006.17854204, \"ymax\": 19607087.052478764}" - }, - 2997: { - "label": "ST71 Belep UTM 58S", - "defaultExtent": "{\"xmin\": -5121006.178542012, \"ymin\": 392912.9475212451, \"xmax\": 6121006.17854204, \"ymax\": 19607087.052478764}" - }, - 2998: { - "label": "NEA74 Noumea UTM 58S", - "defaultExtent": "{\"xmin\": -5121006.178542012, \"ymin\": 392912.9475212451, \"xmax\": 6121006.17854204, \"ymax\": 19607087.052478764}" - }, - 2999: { - "label": "Grand Comoros UTM 38S", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": 392912.94750043936, \"xmax\": 6121006.178542033, \"ymax\": 19607087.052499555}" - }, - 3000: { - "label": "Gunung Segara NEIEZ", - "defaultExtent": "{\"xmin\": -16075077.227383234, \"ymin\": -19032704.26818891, \"xmax\": 23875077.227383245, \"ymax\": 20832704.268526573}" - }, - 3001: { - "label": "Batavia NEIEZ", - "defaultExtent": "{\"xmin\": -16075077.227383234, \"ymin\": -19032704.26818891, \"xmax\": 23875077.227383245, \"ymax\": 20832704.268526573}" - }, - 3002: { - "label": "Makassar NEIEZ", - "defaultExtent": "{\"xmin\": -16075077.227383234, \"ymin\": -19032704.26818891, \"xmax\": 23875077.227383245, \"ymax\": 20832704.268526573}" - }, - 3003: { - "label": "Monte Mario Italy 1", - "defaultExtent": "{\"xmin\": -4121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 7121006.178542033, \"ymax\": 9607087.052499557}" - }, - 3004: { - "label": "Monte Mario Italy 2", - "defaultExtent": "{\"xmin\": -3101006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 8141006.178542033, \"ymax\": 9607087.052499557}" - }, - 3005: { - "label": "NAD 1983 BC Environment Albers", - "defaultExtent": "{\"xmin\": -13225939.200903945, \"ymin\": -8596682.162582252, \"xmax\": 15225939.201000066, \"ymax\": 17379049.55586912}" - }, - 3006: { - "label": "SWEREF99 TM", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 3007: { - "label": "SWEREF99 12 00", - "defaultExtent": "{\"xmin\": -5473012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 5773012.972913165, \"ymax\": 9610629.786873637}" - }, - 3008: { - "label": "SWEREF99 13 30", - "defaultExtent": "{\"xmin\": -5473012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 5773012.972913165, \"ymax\": 9610629.786873637}" - }, - 3009: { - "label": "SWEREF99 15 00", - "defaultExtent": "{\"xmin\": -5473012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 5773012.972913165, \"ymax\": 9610629.786873637}" - }, - 3010: { - "label": "SWEREF99 16 30", - "defaultExtent": "{\"xmin\": -5473012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 5773012.972913165, \"ymax\": 9610629.786873637}" - }, - 3011: { - "label": "SWEREF99 18 00", - "defaultExtent": "{\"xmin\": -5473012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 5773012.972913165, \"ymax\": 9610629.786873637}" - }, - 3012: { - "label": "SWEREF99 14 15", - "defaultExtent": "{\"xmin\": -5473012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 5773012.972913165, \"ymax\": 9610629.786873637}" - }, - 3013: { - "label": "SWEREF99 15 45", - "defaultExtent": "{\"xmin\": -5473012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 5773012.972913165, \"ymax\": 9610629.786873637}" - }, - 3014: { - "label": "SWEREF99 17 15", - "defaultExtent": "{\"xmin\": -5473012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 5773012.972913165, \"ymax\": 9610629.786873637}" - }, - 3015: { - "label": "SWEREF99 18 45", - "defaultExtent": "{\"xmin\": -5473012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 5773012.972913165, \"ymax\": 9610629.786873637}" - }, - 3016: { - "label": "SWEREF99 20 15", - "defaultExtent": "{\"xmin\": -5473012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 5773012.972913165, \"ymax\": 9610629.786873637}" - }, - 3017: { - "label": "SWEREF99 21 45", - "defaultExtent": "{\"xmin\": -5473012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 5773012.972913165, \"ymax\": 9610629.786873637}" - }, - 3018: { - "label": "SWEREF99 23 15", - "defaultExtent": "{\"xmin\": -5473012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 5773012.972913165, \"ymax\": 9610629.786873637}" - }, - 3019: { - "label": "RT90 75 gon V", - "defaultExtent": "{\"xmin\": -4122345.7126389192, \"ymin\": -9609569.127050694, \"xmax\": 7122345.712638919, \"ymax\": 9609569.127050688}" - }, - 3020: { - "label": "RT90 5 gon V", - "defaultExtent": "{\"xmin\": -4122345.7126389192, \"ymin\": -9609569.127050694, \"xmax\": 7122345.712638919, \"ymax\": 9609569.127050688}" - }, - 3021: { - "label": "RT90 25 gon V", - "defaultExtent": "{\"xmin\": -4122345.7126389192, \"ymin\": -9609569.127050694, \"xmax\": 7122345.712638919, \"ymax\": 9609569.127050688}" - }, - 3022: { - "label": "RT90 0 gon", - "defaultExtent": "{\"xmin\": -4122345.7126389192, \"ymin\": -9609569.127050694, \"xmax\": 7122345.712638919, \"ymax\": 9609569.127050688}" - }, - 3023: { - "label": "RT90 25 gon O", - "defaultExtent": "{\"xmin\": -4122345.7126389192, \"ymin\": -9609569.127050694, \"xmax\": 7122345.712638919, \"ymax\": 9609569.127050688}" - }, - 3024: { - "label": "RT90 5 gon O", - "defaultExtent": "{\"xmin\": -4122345.7126389192, \"ymin\": -9609569.127050694, \"xmax\": 7122345.712638919, \"ymax\": 9609569.127050688}" - }, - 3025: { - "label": "RT38 75 gon V", - "defaultExtent": "{\"xmin\": -4122345.7126389192, \"ymin\": -9609569.127050694, \"xmax\": 7122345.712638919, \"ymax\": 9609569.127050688}" - }, - 3026: { - "label": "RT38 5 gon V", - "defaultExtent": "{\"xmin\": -4122345.7126389192, \"ymin\": -9609569.127050694, \"xmax\": 7122345.712638919, \"ymax\": 9609569.127050688}" - }, - 3027: { - "label": "RT38 25 gon V", - "defaultExtent": "{\"xmin\": -4122345.7126389192, \"ymin\": -9609569.127050694, \"xmax\": 7122345.712638919, \"ymax\": 9609569.127050688}" - }, - 3028: { - "label": "RT38 0 gon", - "defaultExtent": "{\"xmin\": -4122345.7126389192, \"ymin\": -9609569.127050694, \"xmax\": 7122345.712638919, \"ymax\": 9609569.127050688}" - }, - 3029: { - "label": "RT38 25 gon O", - "defaultExtent": "{\"xmin\": -4122345.7126389192, \"ymin\": -9609569.127050694, \"xmax\": 7122345.712638919, \"ymax\": 9609569.127050688}" - }, - 3030: { - "label": "RT38 5 gon O", - "defaultExtent": "{\"xmin\": -4122345.7126389192, \"ymin\": -9609569.127050694, \"xmax\": 7122345.712638919, \"ymax\": 9609569.127050688}" - }, - 3031: { - "label": "WGS 1984 Antarctic Polar Stereographic", - "defaultExtent": "{\"xmin\": -30635955.947272837, \"ymin\": -30635955.947272375, \"xmax\": 30635955.947272837, \"ymax\": 30635955.947272986}" - }, - 3032: { - "label": "WGS 1984 Australian Antarctic Polar Stereographic", - "defaultExtent": "{\"xmin\": -24635955.94727298, \"ymin\": -24635955.947272763, \"xmax\": 36635955.9472725, \"ymax\": 36635955.9472729}" - }, - 3033: { - "label": "WGS 1984 Australian Antarctic Lambert", - "defaultExtent": "{\"xmin\": -28389217.168339014, \"ymin\": -32521610.612492993, \"xmax\": 40389217.167549334, \"ymax\": 35812245.20207211}" - }, - 3034: { - "label": "ETRS 1989 LCC", - "defaultExtent": "{\"xmin\": -31211653.14061199, \"ymin\": -27510234.270025503, \"xmax\": 39211653.14061456, \"ymax\": 34503962.231349826}" - }, - 3035: { - "label": "ETRS 1989 LAEA", - "defaultExtent": "{\"xmin\": -8426404.408394862, \"ymin\": -9526565.972599337, \"xmax\": 17068404.40839246, \"ymax\": 15946565.972567223}" - }, - 3036: { - "label": "Moznet UTM Zone 36S", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": 393214.4649524782, \"xmax\": 6120763.7676994335, \"ymax\": 19606785.535047516}" - }, - 3037: { - "label": "Moznet UTM Zone 37S", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": 393214.4649524782, \"xmax\": 6120763.7676994335, \"ymax\": 19606785.535047516}" - }, - 3038: { - "label": "ETRS 1989 ETRS-TM26", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 3039: { - "label": "ETRS 1989 ETRS-TM27", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 3040: { - "label": "ETRS 1989 ETRS-TM28", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 3041: { - "label": "ETRS 1989 ETRS-TM29", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 3042: { - "label": "ETRS 1989 ETRS-TM30", - "defaultExtent": "{\"xmin\": -5120763.767724002, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 3043: { - "label": "ETRS 1989 ETRS-TM31", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724002, \"ymax\": 9606785.534958888}" - }, - 3044: { - "label": "ETRS 1989 ETRS-TM32", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 3045: { - "label": "ETRS 1989 ETRS-TM33", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 3046: { - "label": "ETRS 1989 ETRS-TM34", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 3047: { - "label": "ETRS 1989 ETRS-TM35", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 3048: { - "label": "ETRS 1989 ETRS-TM36", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767723999, \"ymax\": 9606785.534958888}" - }, - 3049: { - "label": "ETRS 1989 ETRS-TM37", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767723999, \"ymax\": 9606785.534958888}" - }, - 3050: { - "label": "ETRS 1989 ETRS-TM38", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 3051: { - "label": "ETRS 1989 ETRS-TM39", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724002, \"ymax\": 9606785.534958888}" - }, - 3054: { - "label": "Hjorsey 1955 UTM Zone 26N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 3055: { - "label": "Hjorsey 1955 UTM Zone 27N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 3056: { - "label": "Hjorsey 1955 UTM Zone 28N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 3057: { - "label": "ISN 1993 Lambert 1993", - "defaultExtent": "{\"xmin\": -34541329.99311783, \"ymin\": -31559285.719874755, \"xmax\": 35541329.993086554, \"ymax\": 37017181.310167946}" - }, - 3058: { - "label": "Helle 1954 Jan Mayen Grid", - "defaultExtent": "{\"xmin\": -5573255.480734327, \"ymin\": -17410931.42506959, \"xmax\": 5673255.480734327, \"ymax\": 1810931.4250695836}" - }, - 3059: { - "label": "LKS 1992 Latvia TM", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -15606785.534958892, \"xmax\": 6120763.767723999, \"ymax\": 3606785.534958888}" - }, - 3060: { - "label": "IGN72 Grande Terre UTM 58S", - "defaultExtent": "{\"xmin\": -5121006.178542012, \"ymin\": 392912.9475212451, \"xmax\": 6121006.17854204, \"ymax\": 19607087.052478764}" - }, - 3061: { - "label": "Porto Santo 1995 UTM Zone 28N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 3062: { - "label": "Azores Oriental 1995 UTM Zone 26N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 3063: { - "label": "Azores Central 1995 UTM Zone 26N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 3064: { - "label": "IGM 1995 UTM Zone 32N", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699434, \"ymax\": 9606785.535047516}" - }, - 3065: { - "label": "IGM 1995 UTM Zone 33N", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699434, \"ymax\": 9606785.535047516}" - }, - 3066: { - "label": "ED 1950 Jordan TM", - "defaultExtent": "{\"xmin\": -5122130.829638179, \"ymin\": -12609009.238784574, \"xmax\": 6122130.829638179, \"ymax\": 6609009.23878457}" - }, - 3067: { - "label": "EUREF FIN TM35FIN", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 3068: { - "label": "DHDN Soldner Berlin", - "defaultExtent": "{\"xmin\": -4968796.012793112, \"ymin\": -15408792.009781843, \"xmax\": 5048796.012793112, \"ymax\": 3810134.2484092056}" - }, - 3069: { - "label": "NAD 1927 Wisconsin TM", - "defaultExtent": "{\"xmin\": -5120880.632721142, \"ymin\": -14106689.106319863, \"xmax\": 6120880.632721142, \"ymax\": 5106689.106319858}" - }, - 3070: { - "label": "NAD 1983 Wisconsin TM", - "defaultExtent": "{\"xmin\": -5100763.767724001, \"ymin\": -14086785.534958892, \"xmax\": 6140763.767724001, \"ymax\": 5126785.534958888}" - }, - 3071: { - "label": "NAD 1983 HARN Wisconsin TM", - "defaultExtent": "{\"xmin\": -5100763.767724001, \"ymin\": -14086785.534958892, \"xmax\": 6140763.767724001, \"ymax\": 5126785.534958888}" - }, - 3072: { - "label": "NAD 1983 Maine 2000 East Zone", - "defaultExtent": "{\"xmin\": -4922900.5126537075, \"ymin\": -14465644.401938386, \"xmax\": 6322900.5126537075, \"ymax\": 4755230.746617419}" - }, - 3074: { - "label": "NAD 1983 Maine 2000 West Zone", - "defaultExtent": "{\"xmin\": -5322900.5126537075, \"ymin\": -14354547.38863227, \"xmax\": 5922900.5126537075, \"ymax\": 4866327.759923532}" - }, - 3075: { - "label": "NAD 1983 HARN Maine 2000 East Zone", - "defaultExtent": "{\"xmin\": -4922900.5126537075, \"ymin\": -14465644.401938386, \"xmax\": 6322900.5126537075, \"ymax\": 4755230.746617419}" - }, - 3077: { - "label": "NAD 1983 HARN Maine 2000 West Zone", - "defaultExtent": "{\"xmin\": -5322900.5126537075, \"ymin\": -14354547.38863227, \"xmax\": 5922900.5126537075, \"ymax\": 4866327.759923532}" - }, - 3078: { - "label": "NAD 1983 Michigan GeoRef Meters", - "defaultExtent": "{\"xmin\": -28809902.8075835, \"ymin\": -30359666.086749792, \"xmax\": 35544410.36686367, \"ymax\": 20812653.70437237}" - }, - 3079: { - "label": "NAD 1983 HARN Michigan GeoRef Meters", - "defaultExtent": "{\"xmin\": -28809902.8075835, \"ymin\": -30359666.086749792, \"xmax\": 35544410.36686367, \"ymax\": 20812653.70437237}" - }, - 3080: { - "label": "NAD 1927 Texas Statewide Mapping System", - "defaultExtent": "{\"xmin\": -123715561.00212912, \"ymin\": -89185001.24060892, \"xmax\": 129715561.00364459, \"ymax\": 44655308.503838845}" - }, - 3081: { - "label": "NAD 1983 Texas Statewide Mapping System", - "defaultExtent": "{\"xmin\": -37624293.88882151, \"ymin\": -27099598.267774396, \"xmax\": 39624293.88901578, \"ymax\": 13696387.486229919}" - }, - 3082: { - "label": "NAD 1983 Texas Centric Mapping System Lambert", - "defaultExtent": "{\"xmin\": -37101439.53622417, \"ymin\": -21633811.39510804, \"xmax\": 40101439.53614661, \"ymax\": 19288743.702293932}" - }, - 3083: { - "label": "NAD 1983 Texas Centric Mapping System Albers", - "defaultExtent": "{\"xmin\": -17154324.437499855, \"ymin\": -675329.8507281002, \"xmax\": 20154324.43750238, \"ymax\": 19014408.076648667}" - }, - 3084: { - "label": "NAD 1983 HARN Texas Centric Mapping System Lambert", - "defaultExtent": "{\"xmin\": -37101439.53622417, \"ymin\": -21633811.39510804, \"xmax\": 40101439.53614661, \"ymax\": 19288743.702293932}" - }, - 3085: { - "label": "NAD 1983 HARN Texas Centric Mapping System Albers", - "defaultExtent": "{\"xmin\": -17154324.437499855, \"ymin\": -675329.8507281002, \"xmax\": 20154324.43750238, \"ymax\": 19014408.076648667}" - }, - 3086: { - "label": "NAD 1983 Florida GDL Albers", - "defaultExtent": "{\"xmin\": -19533690.484215964, \"ymin\": -7509915.322719345, \"xmax\": 20333690.484215967, \"ymax\": 11731295.795514686}" - }, - 3087: { - "label": "NAD 1983 HARN Florida GDL Albers", - "defaultExtent": "{\"xmin\": -19533690.484215964, \"ymin\": -7509915.322719345, \"xmax\": 20333690.484215967, \"ymax\": 11731295.795514686}" - }, - 3088: { - "label": "NAD 1983 StatePlane Kentucky FIPS 1600", - "defaultExtent": "{\"xmin\": -35794088.47457762, \"ymin\": -27913214.15795621, \"xmax\": 38794088.4749888, \"ymax\": 22449415.817500036}" - }, - 3089: { - "label": "NAD 1983 StatePlane Kentucky FIPS 1600 Feet", - "defaultExtent": "{\"xmin\": -117434438.60367672, \"ymin\": -91578603.44989465, \"xmax\": 127276938.60502575, \"ymax\": 73652791.72791469}" - }, - 3090: { - "label": "NAD 1983 HARN StatePlane Kentucky FIPS 1600", - "defaultExtent": "{\"xmin\": -35794088.47457762, \"ymin\": -27913214.15795621, \"xmax\": 38794088.4749888, \"ymax\": 22449415.817500036}" - }, - 3091: { - "label": "NAD 1983 HARN StatePlane Kentucky FIPS 1600 Feet", - "defaultExtent": "{\"xmin\": -117434438.60367672, \"ymin\": -91578603.44989465, \"xmax\": 127276938.60502575, \"ymax\": 73652791.72791469}" - }, - 3092: { - "label": "Tokyo UTM Zone 51N", - "defaultExtent": "{\"xmin\": -5120096.7743538655, \"ymin\": -9605725.299399875, \"xmax\": 6120096.774353864, \"ymax\": 9605725.29939987}" - }, - 3093: { - "label": "Tokyo UTM Zone 52N", - "defaultExtent": "{\"xmin\": -5120096.774353864, \"ymin\": -9605725.299399875, \"xmax\": 6120096.774353864, \"ymax\": 9605725.29939987}" - }, - 3094: { - "label": "Tokyo UTM Zone 53N", - "defaultExtent": "{\"xmin\": -5120096.774353864, \"ymin\": -9605725.299399871, \"xmax\": 6120094.975174162, \"ymax\": 9605725.29939987}" - }, - 3095: { - "label": "Tokyo UTM Zone 54N", - "defaultExtent": "{\"xmin\": -5120096.774353855, \"ymin\": -9605725.299379075, \"xmax\": 6120096.774353871, \"ymax\": 9605725.299379082}" - }, - 3096: { - "label": "Tokyo UTM Zone 55N", - "defaultExtent": "{\"xmin\": -5120096.774353853, \"ymin\": -9605725.299379075, \"xmax\": 6120096.774353871, \"ymax\": 9605725.299379082}" - }, - 3097: { - "label": "JGD 2000 UTM Zone 51N", - "defaultExtent": "{\"xmin\": -5120763.767724002, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 3098: { - "label": "JGD 2000 UTM Zone 52N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 3099: { - "label": "JGD 2000 UTM Zone 53N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958888, \"xmax\": 6120761.968321789, \"ymax\": 9606785.534958888}" - }, - 3100: { - "label": "JGD 2000 UTM Zone 54N", - "defaultExtent": "{\"xmin\": -5120763.767723992, \"ymin\": -9606785.534938088, \"xmax\": 6120763.767724008, \"ymax\": 9606785.534938097}" - }, - 3101: { - "label": "JGD 2000 UTM Zone 55N", - "defaultExtent": "{\"xmin\": -5120763.767723991, \"ymin\": -9606785.534938088, \"xmax\": 6120763.767724008, \"ymax\": 9606785.534938097}" - }, - 3102: { - "label": "Samoa 1962 Samoa Lambert", - "defaultExtent": "{\"xmin\": -117293513.11027402, \"ymin\": -53093029.58928256, \"xmax\": 118293513.11027405, \"ymax\": 86482568.80391248}" - }, - 3106: { - "label": "Gulshan 303 Bangladesh TM", - "defaultExtent": "{\"xmin\": -5119962.926635592, \"ymin\": -9605642.135990625, \"xmax\": 6119962.926635592, \"ymax\": 9605642.135990622}" - }, - 3107: { - "label": "GDA 1994 South Australia Lambert", - "defaultExtent": "{\"xmin\": -37393288.79638155, \"ymin\": -11839772.68280195, \"xmax\": 39393288.796386346, \"ymax\": 30209751.11382752}" - }, - 3108: { - "label": "ETRS 1989 Guernsey Grid", - "defaultExtent": "{\"xmin\": -5575996.103874247, \"ymin\": -15045819.420314582, \"xmax\": 5669996.103874247, \"ymax\": 4175382.4896539757}" - }, - 3109: { - "label": "ETRS 1989 Jersey Transverse Mercator", - "defaultExtent": "{\"xmin\": -5583012.410611869, \"ymin\": -14995278.593773324, \"xmax\": 5663012.410611867, \"ymax\": 4225979.057847996}" - }, - 3110: { - "label": "AGD 1966 VICGRID", - "defaultExtent": "{\"xmin\": -34932768.34612599, \"ymin\": -15746296.521979012, \"xmax\": 39932768.346816, \"ymax\": 33460107.02656929}" - }, - 3111: { - "label": "GDA 1994 VICGRID94", - "defaultExtent": "{\"xmin\": -34932637.91770011, \"ymin\": -17746224.69548947, \"xmax\": 39932637.91839013, \"ymax\": 31460007.399891436}" - }, - 3112: { - "label": "GDA 1994 Geoscience Australia Lambert", - "defaultExtent": "{\"xmin\": -39261695.7845905, \"ymin\": -14872903.343173979, \"xmax\": 39261695.7845905, \"ymax\": 24259813.648860574}" - }, - 3113: { - "label": "GDA 1994 BCSG02", - "defaultExtent": "{\"xmin\": -5572956.742783425, \"ymin\": -6412122.9176758295, \"xmax\": 5672956.742783444, \"ymax\": 12808944.4434341}" - }, - 3114: { - "label": "MAGNA Colombia Oeste Oeste", - "defaultExtent": "{\"xmin\": -4623012.972913165, \"ymin\": -9118862.252505483, \"xmax\": 6623012.972913165, \"ymax\": 10102397.321241796}" - }, - 3115: { - "label": "MAGNA Colombia Oeste", - "defaultExtent": "{\"xmin\": -4623012.972913167, \"ymin\": -9118862.252505483, \"xmax\": 6623012.972913165, \"ymax\": 10102397.321241796}" - }, - 3116: { - "label": "MAGNA Colombia Bogota", - "defaultExtent": "{\"xmin\": -4623012.972913165, \"ymin\": -9118862.252505483, \"xmax\": 6623012.972913165, \"ymax\": 10102397.321241796}" - }, - 3117: { - "label": "MAGNA Colombia Este", - "defaultExtent": "{\"xmin\": -4623012.972913165, \"ymin\": -9118862.252505483, \"xmax\": 6623012.972913165, \"ymax\": 10102397.321241796}" - }, - 3118: { - "label": "MAGNA Colombia Este Este", - "defaultExtent": "{\"xmin\": -4623012.972913165, \"ymin\": -9118862.252505483, \"xmax\": 6623012.972913165, \"ymax\": 10102397.321241796}" - }, - 3119: { - "label": "Douala 1948 AEF West", - "defaultExtent": "{\"xmin\": -4617632.225253592, \"ymin\": -8601320.493644519, \"xmax\": 6617632.225253592, \"ymax\": 10601320.493644513}" - }, - 3120: { - "label": "Pulkovo 1942 Adj 1958 Poland Zone I", - "defaultExtent": "{\"xmin\": -26048518.80677092, \"ymin\": -25284866.2431974, \"xmax\": 35322518.80674909, \"ymax\": 36132899.17367828}" - }, - 3121: { - "label": "PRS 1992 Philippines Zone I", - "defaultExtent": "{\"xmin\": -5122848.728180778, \"ymin\": -9610052.79298174, \"xmax\": 6122848.728180778, \"ymax\": 9610052.792981734}" - }, - 3122: { - "label": "PRS 1992 Philippines Zone II", - "defaultExtent": "{\"xmin\": -5122848.728180778, \"ymin\": -9610052.79298174, \"xmax\": 6122848.728180778, \"ymax\": 9610052.792981734}" - }, - 3123: { - "label": "PRS 1992 Philippines Zone III", - "defaultExtent": "{\"xmin\": -5122848.728180778, \"ymin\": -9610052.79298174, \"xmax\": 6122848.728180778, \"ymax\": 9610052.792981734}" - }, - 3124: { - "label": "PRS 1992 Philippines Zone IV", - "defaultExtent": "{\"xmin\": -5122848.728180779, \"ymin\": -9610052.79298174, \"xmax\": 6122848.728180778, \"ymax\": 9610052.792981734}" - }, - 3125: { - "label": "PRS 1992 Philippines Zone V", - "defaultExtent": "{\"xmin\": -5122848.728180778, \"ymin\": -9610052.79298174, \"xmax\": 6122848.728180778, \"ymax\": 9610052.792981734}" - }, - 3126: { - "label": "ETRS 1989 ETRS-GK19FIN", - "defaultExtent": "{\"xmin\": -5123012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 6123012.972913165, \"ymax\": 9610629.786873637}" - }, - 3127: { - "label": "ETRS 1989 ETRS-GK20FIN", - "defaultExtent": "{\"xmin\": -5123012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 6123012.972913165, \"ymax\": 9610629.786873637}" - }, - 3128: { - "label": "ETRS 1989 ETRS-GK21FIN", - "defaultExtent": "{\"xmin\": -5123012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 6123012.972913165, \"ymax\": 9610629.786873637}" - }, - 3129: { - "label": "ETRS 1989 ETRS-GK22FIN", - "defaultExtent": "{\"xmin\": -5123012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 6123012.9729131665, \"ymax\": 9610629.786873637}" - }, - 3130: { - "label": "ETRS 1989 ETRS-GK23FIN", - "defaultExtent": "{\"xmin\": -5123012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 6123012.972913162, \"ymax\": 9610629.786873637}" - }, - 3131: { - "label": "ETRS 1989 ETRS-GK24FIN", - "defaultExtent": "{\"xmin\": -5123012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 6123012.972913164, \"ymax\": 9610629.786873637}" - }, - 3132: { - "label": "ETRS 1989 ETRS-GK25FIN", - "defaultExtent": "{\"xmin\": -5123012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 6123012.972913165, \"ymax\": 9610629.786873637}" - }, - 3133: { - "label": "ETRS 1989 ETRS-GK26FIN", - "defaultExtent": "{\"xmin\": -5123012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 6123012.972913165, \"ymax\": 9610629.786873637}" - }, - 3134: { - "label": "ETRS 1989 ETRS-GK27FIN", - "defaultExtent": "{\"xmin\": -5123012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 6123012.972913165, \"ymax\": 9610629.786873637}" - }, - 3135: { - "label": "ETRS 1989 ETRS-GK28FIN", - "defaultExtent": "{\"xmin\": -5123012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 6123012.972913165, \"ymax\": 9610629.786873637}" - }, - 3136: { - "label": "ETRS 1989 ETRS-GK29FIN", - "defaultExtent": "{\"xmin\": -5123012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 6123012.972913165, \"ymax\": 9610629.786873637}" - }, - 3137: { - "label": "ETRS 1989 ETRS-GK30FIN", - "defaultExtent": "{\"xmin\": -5123012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 6123012.972913164, \"ymax\": 9610629.786873637}" - }, - 3138: { - "label": "ETRS 1989 ETRS-GK31FIN", - "defaultExtent": "{\"xmin\": -5123012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 6123012.9729131665, \"ymax\": 9610629.786873637}" - }, - 3141: { - "label": "Fiji 1956 UTM Zone 60S", - "defaultExtent": "{\"xmin\": -5121006.178542016, \"ymin\": 392912.9475212451, \"xmax\": 6121006.17854204, \"ymax\": 19607087.052478764}" - }, - 3142: { - "label": "Fiji 1956 UTM Zone 1S", - "defaultExtent": "{\"xmin\": -5121006.178542009, \"ymin\": 392912.9475212451, \"xmax\": 6121006.17854204, \"ymax\": 19607087.052478764}" - }, - 3146: { - "label": "Pulkovo 1942 3 Degree GK Zone 6", - "defaultExtent": "{\"xmin\": 876892.5324732829, \"ymin\": -9610795.116133098, \"xmax\": 12123107.467526717, \"ymax\": 9610795.116133094}" - }, - 3147: { - "label": "Pulkovo 1942 3 Degree GK CM 18E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 3148: { - "label": "Indian 1960 UTM Zone 48N", - "defaultExtent": "{\"xmin\": -5119962.926635592, \"ymin\": -9605642.135990625, \"xmax\": 6119962.926635592, \"ymax\": 9605642.135990622}" - }, - 3149: { - "label": "Indian 1960 UTM Zone 49N", - "defaultExtent": "{\"xmin\": -5119962.926635592, \"ymin\": -9605642.135990623, \"xmax\": 6119962.926635591, \"ymax\": 9605642.135990622}" - }, - 3150: { - "label": "Pulkovo 1995 3 Degree GK Zone 6", - "defaultExtent": "{\"xmin\": 876892.5324732829, \"ymin\": -9610795.116133098, \"xmax\": 12123107.467526717, \"ymax\": 9610795.116133094}" - }, - 3151: { - "label": "Pulkovo 1995 3 Degree GK CM 18E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 3153: { - "label": "NAD 1983 CSRS BC Environment Albers", - "defaultExtent": "{\"xmin\": -13225939.200903945, \"ymin\": -8596682.162582252, \"xmax\": 15225939.201000066, \"ymax\": 17379049.55586912}" - }, - 3154: { - "label": "NAD 1983 CSRS UTM Zone 7N", - "defaultExtent": "{\"xmin\": -5120763.767723977, \"ymin\": -9606785.534938088, \"xmax\": 6120763.767724011, \"ymax\": 9606785.534938097}" - }, - 3155: { - "label": "NAD 1983 CSRS UTM Zone 8N", - "defaultExtent": "{\"xmin\": -5120761.968321789, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 3156: { - "label": "NAD 1983 CSRS UTM Zone 9N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 3157: { - "label": "NAD 1983 CSRS UTM Zone 10N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724002, \"ymax\": 9606785.534958888}" - }, - 3158: { - "label": "NAD 1983 CSRS UTM Zone 14N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 3159: { - "label": "NAD 1983 CSRS UTM Zone 15N", - "defaultExtent": "{\"xmin\": -5120763.767723998, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 3160: { - "label": "NAD 1983 CSRS UTM Zone 16N", - "defaultExtent": "{\"xmin\": -5120763.767723998, \"ymin\": -9606785.534958893, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 3161: { - "label": "NAD 1983 Ontario MNR Lambert", - "defaultExtent": "{\"xmin\": -35121174.026474886, \"ymin\": -18032568.97884448, \"xmax\": 36981174.026392445, \"ymax\": 43947114.69870345}" - }, - 3162: { - "label": "NAD 1983 CSRS Ontario MNR Lambert", - "defaultExtent": "{\"xmin\": -35121174.026474886, \"ymin\": -18032568.97884448, \"xmax\": 36981174.026392445, \"ymax\": 43947114.69870345}" - }, - 3163: { - "label": "RGNC 1991 93 Lambert New Caledonia", - "defaultExtent": "{\"xmin\": -38961501.25217785, \"ymin\": -13492464.023404727, \"xmax\": 39761501.252177864, \"ymax\": 27198867.957699224}" - }, - 3164: { - "label": "ST87 Ouvea UTM 58S", - "defaultExtent": "{\"xmin\": -5120763.767699414, \"ymin\": 393214.46497328207, \"xmax\": 6120763.767699442, \"ymax\": 19606785.53502673}" - }, - 3165: { - "label": "NEA74 Noumea Lambert", - "defaultExtent": "{\"xmin\": -39531907.62538149, \"ymin\": -13534444.148914037, \"xmax\": 39531908.945381485, \"ymax\": 26989487.76028048}" - }, - 3166: { - "label": "NEA74 Noumea Lambert 2", - "defaultExtent": "{\"xmin\": -39531905.75677799, \"ymin\": -13534437.257669017, \"xmax\": 39531922.382778, \"ymax\": 26989487.918472856}" - }, - 3167: { - "label": "Kertau RSO RSO Malaya ChSears1922trunc", - "defaultExtent": "{\"xmin\": -1524042.2214750561, \"ymin\": -1428379.9426094699, \"xmax\": 1604361.2673167882, \"ymax\": 1428146.9164298812}" - }, - 3168: { - "label": "Kertau RSO RSO Malaya", - "defaultExtent": "{\"xmin\": -30658785.503110956, \"ymin\": -28734370.780768998, \"xmax\": 32274544.150461994, \"ymax\": 28729683.049973108}" - }, - 3169: { - "label": "RGNC 1991-93 UTM Zone 57S", - "defaultExtent": "{\"xmin\": -5120763.767723984, \"ymin\": 393214.4650619123, \"xmax\": 6120763.767724008, \"ymax\": 19606785.534938097}" - }, - 3170: { - "label": "RGNC 1991-93 UTM Zone 58S", - "defaultExtent": "{\"xmin\": -5120763.76772398, \"ymin\": 393214.4650619123, \"xmax\": 6120763.767724008, \"ymax\": 19606785.534938097}" - }, - 3171: { - "label": "RGNC 1991-93 UTM Zone 59S", - "defaultExtent": "{\"xmin\": -5120763.76772398, \"ymin\": 393214.4650619123, \"xmax\": 6120763.767724008, \"ymax\": 19606785.534938097}" - }, - 3172: { - "label": "IGN53 Mare UTM Zone 59S", - "defaultExtent": "{\"xmin\": -5121006.178542012, \"ymin\": 392912.9475212451, \"xmax\": 6121006.17854204, \"ymax\": 19607087.052478764}" - }, - 3174: { - "label": "NAD 1983 Great Lakes Basin Albers", - "defaultExtent": "{\"xmin\": -14291621.530452624, \"ymin\": -8028271.097067971, \"xmax\": 16291621.530397214, \"ymax\": 16742130.630291097}" - }, - 3175: { - "label": "NAD 1983 Great Lakes and St Lawrence Albers", - "defaultExtent": "{\"xmin\": -14291621.530410435, \"ymin\": -8028271.0958755985, \"xmax\": 16291621.530399034, \"ymax\": 16742130.630291097}" - }, - 3176: { - "label": "Indian 1960 TM 106NE", - "defaultExtent": "{\"xmin\": -5119962.926635592, \"ymin\": -9605642.135990625, \"xmax\": 6119962.926635592, \"ymax\": 9605642.135990622}" - }, - 3177: { - "label": "LGD2006 Libya TM", - "defaultExtent": "{\"xmin\": -4603574.086551757, \"ymin\": -9577293.165081846, \"xmax\": 6603574.086551757, \"ymax\": 9577293.165081842}" - }, - 3178: { - "label": "Greenland 1996 UTM Zone 18N", - "defaultExtent": "{\"xmin\": -5120763.767724002, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 3179: { - "label": "Greenland 1996 UTM Zone 19N", - "defaultExtent": "{\"xmin\": -5120763.767724002, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 3180: { - "label": "Greenland 1996 UTM Zone 20N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 3181: { - "label": "Greenland 1996 UTM Zone 21N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 3182: { - "label": "Greenland 1996 UTM Zone 22N", - "defaultExtent": "{\"xmin\": -5120763.767724002, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 3183: { - "label": "Greenland 1996 UTM Zone 23N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 3184: { - "label": "Greenland 1996 UTM Zone 24N", - "defaultExtent": "{\"xmin\": -5120763.767723999, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 3185: { - "label": "Greenland 1996 UTM Zone 25N", - "defaultExtent": "{\"xmin\": -5120763.767723999, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 3186: { - "label": "Greenland 1996 UTM Zone 26N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 3187: { - "label": "Greenland 1996 UTM Zone 27N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 3188: { - "label": "Greenland 1996 UTM Zone 28N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 3189: { - "label": "Greenland 1996 UTM Zone 29N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 3190: { - "label": "LGD2006 Libya TM Zone 5", - "defaultExtent": "{\"xmin\": -5422974.317960289, \"ymin\": -9610450.878498334, \"xmax\": 5822974.317960289, \"ymax\": 9610450.878498329}" - }, - 3191: { - "label": "LGD2006 Libya TM Zone 6", - "defaultExtent": "{\"xmin\": -5422974.317960288, \"ymin\": -9610450.878498334, \"xmax\": 5822974.317960289, \"ymax\": 9610450.878498329}" - }, - 3192: { - "label": "LGD2006 Libya TM Zone 7", - "defaultExtent": "{\"xmin\": -5422974.317960289, \"ymin\": -9610450.878498334, \"xmax\": 5822974.31796029, \"ymax\": 9610450.878498329}" - }, - 3193: { - "label": "LGD2006 Libya TM Zone 8", - "defaultExtent": "{\"xmin\": -5422974.317960289, \"ymin\": -9610450.878498334, \"xmax\": 5822974.317960289, \"ymax\": 9610450.878498329}" - }, - 3194: { - "label": "LGD2006 Libya TM Zone 9", - "defaultExtent": "{\"xmin\": -5422974.317960289, \"ymin\": -9610450.878498334, \"xmax\": 5822974.317960289, \"ymax\": 9610450.878498329}" - }, - 3195: { - "label": "LGD2006 Libya TM Zone 10", - "defaultExtent": "{\"xmin\": -5422974.317960289, \"ymin\": -9610450.878498334, \"xmax\": 5822974.317960289, \"ymax\": 9610450.878498329}" - }, - 3196: { - "label": "LGD2006 Libya TM Zone 11", - "defaultExtent": "{\"xmin\": -5422974.317960289, \"ymin\": -9610450.878498334, \"xmax\": 5822974.317960289, \"ymax\": 9610450.878498329}" - }, - 3197: { - "label": "LGD2006 Libya TM Zone 12", - "defaultExtent": "{\"xmin\": -5422974.317960289, \"ymin\": -9610450.878498334, \"xmax\": 5822974.3179602865, \"ymax\": 9610450.878498329}" - }, - 3198: { - "label": "LGD2006 Libya TM Zone 13", - "defaultExtent": "{\"xmin\": -5422974.317960289, \"ymin\": -9610450.878498334, \"xmax\": 5822974.317960289, \"ymax\": 9610450.878498329}" - }, - 3199: { - "label": "LGD2006 UTM Zone 32N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 3200: { - "label": "FD 1958 Iraq", - "defaultExtent": "{\"xmin\": -36802027.2143887, \"ymin\": -27126297.07362132, \"xmax\": 39802027.21438334, \"ymax\": 15653699.898002904}" - }, - 3201: { - "label": "LGD2006 UTM Zone 33N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 3202: { - "label": "LGD2006 UTM Zone 34N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 3203: { - "label": "LGD2006 UTM Zone 35N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 3294: { - "label": "WGS 1984 USGS Transantarctic Mountains", - "defaultExtent": "{\"xmin\": -33493972.021237314, \"ymin\": -34775298.52348779, \"xmax\": 33493972.021028128, \"ymax\": 32134386.293330166}" - }, - 3295: { - "label": "Guam 1963 Yap Islands", - "defaultExtent": "{\"xmin\": -19901970.79825199, \"ymin\": -19849570.380519096, \"xmax\": 19981970.798326857, \"ymax\": 19969575.03205823}" - }, - 3296: { - "label": "RGPF UTM Zone 5S", - "defaultExtent": "{\"xmin\": -5120763.767723977, \"ymin\": 393214.4650619123, \"xmax\": 6120763.767724008, \"ymax\": 19606785.534938097}" - }, - 3297: { - "label": "RGPF UTM Zone 6S", - "defaultExtent": "{\"xmin\": -5120763.767723984, \"ymin\": 393214.4650619123, \"xmax\": 6120763.767724008, \"ymax\": 19606785.534938097}" - }, - 3298: { - "label": "RGPF UTM Zone 7S", - "defaultExtent": "{\"xmin\": -5120763.767723977, \"ymin\": 393214.4650619123, \"xmax\": 6120763.767724011, \"ymax\": 19606785.534938097}" - }, - 3299: { - "label": "RGPF UTM Zone 8S", - "defaultExtent": "{\"xmin\": -5120761.968321789, \"ymin\": 393214.46504110843, \"xmax\": 6120763.767724001, \"ymax\": 19606785.534958888}" - }, - 3300: { - "label": "Estonian Coordinate System of 1992", - "defaultExtent": "{\"xmin\": -34998942.280954696, \"ymin\": -25103736.80244174, \"xmax\": 35998942.28107235, \"ymax\": 42233689.83946544}" - }, - 3301: { - "label": "Estonia 1997 Estonia National Grid", - "defaultExtent": "{\"xmin\": -34998942.280954525, \"ymin\": -25103736.802441552, \"xmax\": 35998942.28107218, \"ymax\": 42233689.839465134}" - }, - 3302: { - "label": "IGN63 Hiva Oa UTM Zone 7S", - "defaultExtent": "{\"xmin\": -5121006.178542009, \"ymin\": 392912.9475212451, \"xmax\": 6121006.178542043, \"ymax\": 19607087.052478764}" - }, - 3303: { - "label": "Fatu Iva 1972 UTM Zone 7S", - "defaultExtent": "{\"xmin\": -5121006.178542009, \"ymin\": 392912.9475212451, \"xmax\": 6121006.178542043, \"ymax\": 19607087.052478764}" - }, - 3304: { - "label": "Tahiti 1979 UTM Zone 6S", - "defaultExtent": "{\"xmin\": -5121006.178542016, \"ymin\": 392912.9475212451, \"xmax\": 6121006.17854204, \"ymax\": 19607087.052478764}" - }, - 3305: { - "label": "Moorea 1987 UTM Zone 6S", - "defaultExtent": "{\"xmin\": -5121006.178542016, \"ymin\": 392912.9475212451, \"xmax\": 6121006.17854204, \"ymax\": 19607087.052478764}" - }, - 3306: { - "label": "Maupiti 1983 UTM Zone 5S", - "defaultExtent": "{\"xmin\": -5121006.178542009, \"ymin\": 392912.9475212451, \"xmax\": 6121006.17854204, \"ymax\": 19607087.052478764}" - }, - 3307: { - "label": "Nakhl-e Ghanem UTM Zone 39N", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699435, \"ymax\": 9606785.535047516}" - }, - 3308: { - "label": "GDA 1994 NSW Lambert", - "defaultExtent": "{\"xmin\": -28840896.09231879, \"ymin\": -11011188.261534095, \"xmax\": 47440896.092392296, \"ymax\": 32915189.085661195}" - }, - 3309: { - "label": "NAD 1927 California Teale Albers", - "defaultExtent": "{\"xmin\": -16894578.192938533, \"ymin\": -8581855.074074313, \"xmax\": 16894578.19288322, \"ymax\": 13751594.5734712}" - }, - 3310: { - "label": "NAD 1983 California Teale Albers", - "defaultExtent": "{\"xmin\": -16894575.05116589, \"ymin\": -8581876.335913707, \"xmax\": 16894575.05107798, \"ymax\": 13751563.003248025}" - }, - 3311: { - "label": "NAD 1983 HARN California Teale Albers", - "defaultExtent": "{\"xmin\": -16894575.05116589, \"ymin\": -8581876.335913707, \"xmax\": 16894575.05107798, \"ymax\": 13751563.003248025}" - }, - 3312: { - "label": "CSG 1967 UTM Zone 21N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 3313: { - "label": "RGFG 1995 UTM Zone 21N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 3315: { - "label": "Katanga 1955 Katanga TM", - "defaultExtent": "{\"xmin\": -5622005.258698076, \"ymin\": -8613622.66048565, \"xmax\": 5622005.258698076, \"ymax\": 10603599.76548193}" - }, - 3316: { - "label": "Kasai 1953 Congo TM Zone 22", - "defaultExtent": "{\"xmin\": -5122631.403066001, \"ymin\": 390457.65992064774, \"xmax\": 6122631.403066002, \"ymax\": 19609542.340079345}" - }, - 3317: { - "label": "Kasai 1953 Congo TM Zone 24", - "defaultExtent": "{\"xmin\": -5122631.403066001, \"ymin\": 390457.65992064774, \"xmax\": 6122631.403066, \"ymax\": 19609542.340079345}" - }, - 3318: { - "label": "IGC 1962 Congo TM Zone 12", - "defaultExtent": "{\"xmin\": -5122631.403066001, \"ymin\": 390457.65992064774, \"xmax\": 6122631.403066001, \"ymax\": 19609542.340079345}" - }, - 3319: { - "label": "IGC 1962 Congo TM Zone 14", - "defaultExtent": "{\"xmin\": -5122631.403066001, \"ymin\": 390457.65992064774, \"xmax\": 6122631.403066, \"ymax\": 19609542.340079345}" - }, - 3320: { - "label": "IGC 1962 Congo TM Zone 16", - "defaultExtent": "{\"xmin\": -5122631.403066001, \"ymin\": 390457.65992064774, \"xmax\": 6122631.403066001, \"ymax\": 19609542.340079345}" - }, - 3321: { - "label": "IGC 1962 Congo TM Zone 18", - "defaultExtent": "{\"xmin\": -5122631.403066001, \"ymin\": 390457.65992064774, \"xmax\": 6122631.403066001, \"ymax\": 19609542.340079345}" - }, - 3322: { - "label": "IGC 1962 Congo TM Zone 20", - "defaultExtent": "{\"xmin\": -5122631.403066001, \"ymin\": 390457.65992064774, \"xmax\": 6122631.403066001, \"ymax\": 19609542.340079345}" - }, - 3323: { - "label": "IGC 1962 Congo TM Zone 22", - "defaultExtent": "{\"xmin\": -5122631.403066001, \"ymin\": 390457.65992064774, \"xmax\": 6122631.403066002, \"ymax\": 19609542.340079345}" - }, - 3324: { - "label": "IGC 1962 Congo TM Zone 24", - "defaultExtent": "{\"xmin\": -5122631.403066001, \"ymin\": 390457.65992064774, \"xmax\": 6122631.403066, \"ymax\": 19609542.340079345}" - }, - 3325: { - "label": "IGC 1962 Congo TM Zone 26", - "defaultExtent": "{\"xmin\": -5122631.403066001, \"ymin\": 390457.65992064774, \"xmax\": 6122631.403066001, \"ymax\": 19609542.340079345}" - }, - 3326: { - "label": "IGC 1962 Congo TM Zone 28", - "defaultExtent": "{\"xmin\": -5122631.403066001, \"ymin\": 390457.65992064774, \"xmax\": 6122631.403066001, \"ymax\": 19609542.340079345}" - }, - 3327: { - "label": "IGC 1962 Congo TM Zone 30", - "defaultExtent": "{\"xmin\": -5122631.403066001, \"ymin\": 390457.65992064774, \"xmax\": 6122631.403066, \"ymax\": 19609542.340079345}" - }, - 3328: { - "label": "Pulkovo 1942 Adj 1958 GUGiK-80", - "defaultExtent": "{\"xmin\": -30174683.930515345, \"ymin\": -30246970.36392684, \"xmax\": 31174683.92934916, \"ymax\": 31153475.575240657}" - }, - 3329: { - "label": "Pulkovo 1942 Adj 1958 3 Degree GK Zone 5", - "defaultExtent": "{\"xmin\": -123107.46752671711, \"ymin\": -9610795.116133098, \"xmax\": 11123107.467526717, \"ymax\": 9610795.116133094}" - }, - 3330: { - "label": "Pulkovo 1942 Adj 1958 3 Degree GK Zone 6", - "defaultExtent": "{\"xmin\": 876892.5324732829, \"ymin\": -9610795.116133098, \"xmax\": 12123107.467526717, \"ymax\": 9610795.116133094}" - }, - 3331: { - "label": "Pulkovo 1942 Adj 1958 3 Degree GK Zone 7", - "defaultExtent": "{\"xmin\": 1876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 13123107.467526717, \"ymax\": 9610795.116133094}" - }, - 3332: { - "label": "Pulkovo 1942 Adj 1958 3 Degree GK Zone 8", - "defaultExtent": "{\"xmin\": 2876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 14123107.467526715, \"ymax\": 9610795.116133094}" - }, - 3333: { - "label": "Pulkovo 1942 Adj 1958 GK Zone 3", - "defaultExtent": "{\"xmin\": -2123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 9123107.467526717, \"ymax\": 9610795.116133094}" - }, - 3334: { - "label": "Pulkovo 1942 Adj 1958 GK Zone 4", - "defaultExtent": "{\"xmin\": -1123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 10123107.467526717, \"ymax\": 9610795.116133094}" - }, - 3335: { - "label": "Pulkovo 1942 Adj 1958 GK Zone 5", - "defaultExtent": "{\"xmin\": -123107.46752671711, \"ymin\": -9610795.116133098, \"xmax\": 11123107.467526717, \"ymax\": 9610795.116133094}" - }, - 3336: { - "label": "Kerguelen Island 1949 UTM 42S", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": 392912.94750043936, \"xmax\": 6121006.178542035, \"ymax\": 19607087.052499555}" - }, - 3337: { - "label": "Le Pouce 1934 Mauritius Grid", - "defaultExtent": "{\"xmin\": -37992237.679318376, \"ymin\": -13239194.600293517, \"xmax\": 39992237.679373585, \"ymax\": 27757411.5403885}" - }, - 3338: { - "label": "NAD 1983 Alaska Albers", - "defaultExtent": "{\"xmin\": -13739219.699563079, \"ymin\": -8935188.356798925, \"xmax\": 13739219.70003071, \"ymax\": 17285625.557825744}" - }, - 3339: { - "label": "IGCB 1955 Congo TM Zone 12", - "defaultExtent": "{\"xmin\": -5122631.403066001, \"ymin\": 390457.65992064774, \"xmax\": 6122631.403066001, \"ymax\": 19609542.340079345}" - }, - 3340: { - "label": "IGCB 1955 Congo TM Zone 14", - "defaultExtent": "{\"xmin\": -5122631.403066001, \"ymin\": 390457.65992064774, \"xmax\": 6122631.403066, \"ymax\": 19609542.340079345}" - }, - 3341: { - "label": "IGCB 1955 Congo TM Zone 16", - "defaultExtent": "{\"xmin\": -5122631.403066001, \"ymin\": 390457.65992064774, \"xmax\": 6122631.403066001, \"ymax\": 19609542.340079345}" - }, - 3342: { - "label": "IGCB 1955 UTM Zone 33S", - "defaultExtent": "{\"xmin\": -5120944.444949269, \"ymin\": 393340.8109377753, \"xmax\": 6120944.444949269, \"ymax\": 19606659.189062223}" - }, - 3343: { - "label": "Mauritania 1999 UTM Zone 28N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 3344: { - "label": "Mauritania 1999 UTM Zone 29N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 3345: { - "label": "Mauritania 1999 UTM Zone 30N", - "defaultExtent": "{\"xmin\": -5120763.767724002, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 3346: { - "label": "LKS 1994 Lithuania TM", - "defaultExtent": "{\"xmin\": -5121888.370318582, \"ymin\": -9608707.660916269, \"xmax\": 6121888.370318582, \"ymax\": 9608707.660916263}" - }, - 3347: { - "label": "NAD 1983 Statistics Canada Lambert", - "defaultExtent": "{\"xmin\": -28455646.926296383, \"ymin\": -28572483.636137813, \"xmax\": 40855646.92757759, \"ymax\": 39069120.23910857}" - }, - 3348: { - "label": "NAD 1983 CSRS Statistics Canada Lambert", - "defaultExtent": "{\"xmin\": -28455646.926296383, \"ymin\": -28572483.636137813, \"xmax\": 40855646.92757759, \"ymax\": 39069120.23910857}" - }, - 3350: { - "label": "Pulkovo 1942 CS63 Zone C0", - "defaultExtent": "{\"xmin\": -5373107.467526717, \"ymin\": -9621852.74173036, \"xmax\": 5873107.467526717, \"ymax\": 9599737.490535831}" - }, - 3351: { - "label": "Pulkovo 1942 CS63 Zone C1", - "defaultExtent": "{\"xmin\": -4373107.467526717, \"ymin\": -9621852.74173036, \"xmax\": 6873107.467526717, \"ymax\": 9599737.490535831}" - }, - 3352: { - "label": "Pulkovo 1942 CS63 Zone C2", - "defaultExtent": "{\"xmin\": -3373107.467526717, \"ymin\": -9621852.74173036, \"xmax\": 7873107.467526717, \"ymax\": 9599737.490535831}" - }, - 3353: { - "label": "Mhast Onshore UTM Zone 32S", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": 392912.94750043936, \"xmax\": 6121006.178542033, \"ymax\": 19607087.052499555}" - }, - 3354: { - "label": "Mhast Offshore UTM Zone 32S", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": 392912.94750043936, \"xmax\": 6121006.178542033, \"ymax\": 19607087.052499555}" - }, - 3355: { - "label": "Egypt Gulf of Suez S-650 TL Red Belt", - "defaultExtent": "{\"xmin\": -5008067.795197411, \"ymin\": -12120876.291873828, \"xmax\": 6238067.795197411, \"ymax\": 7100578.327608526}" - }, - 3356: { - "label": "Grand Cayman 1959 UTM Zone 17N", - "defaultExtent": "{\"xmin\": -5120880.632721142, \"ymin\": -9606689.106319863, \"xmax\": 6120880.632721142, \"ymax\": 9606689.106319858}" - }, - 3357: { - "label": "Little Cayman 1961 UTM Zone 17N", - "defaultExtent": "{\"xmin\": -5120880.632721142, \"ymin\": -9606689.106319863, \"xmax\": 6120880.632721142, \"ymax\": 9606689.106319858}" - }, - 3358: { - "label": "NAD 1983 HARN StatePlane North Carolina FIPS 3200", - "defaultExtent": "{\"xmin\": -37137389.955812365, \"ymin\": -28547205.58121489, \"xmax\": 38356592.39440943, \"ymax\": 18261684.963585444}" - }, - 3360: { - "label": "NAD 1983 HARN StatePlane South Carolina FIPS 3900", - "defaultExtent": "{\"xmin\": -37462128.94764636, \"ymin\": -28285530.15549066, \"xmax\": 38681328.949165195, \"ymax\": 16261049.643896274}" - }, - 3361: { - "label": "NAD 1983 HARN StatePlane South Carolina FIPS 3900 Feet Intl", - "defaultExtent": "{\"xmin\": -122907247.20356415, \"ymin\": -92800295.78573051, \"xmax\": 126907247.20854722, \"ymax\": 53349900.40648384}" - }, - 3362: { - "label": "NAD 1983 HARN StatePlane Pennsylvania North FIPS 3701", - "defaultExtent": "{\"xmin\": -36219260.373335704, \"ymin\": -29439912.0075843, \"xmax\": 37419260.373972096, \"ymax\": 25273022.556772325}" - }, - 3363: { - "label": "NAD 1983 HARN StatePlane Pennsylvania North FIPS 3701 Feet", - "defaultExtent": "{\"xmin\": -118829356.74151887, \"ymin\": -96587444.64488281, \"xmax\": 122766356.74360676, \"ymax\": 82916574.83834386}" - }, - 3364: { - "label": "NAD 1983 HARN StatePlane Pennsylvania South FIPS 3702", - "defaultExtent": "{\"xmin\": -36336434.103694856, \"ymin\": -29321240.345738437, \"xmax\": 37536434.10343623, \"ymax\": 24259081.311989907}" - }, - 3365: { - "label": "NAD 1983 HARN StatePlane Pennsylvania South FIPS 3702 Feet", - "defaultExtent": "{\"xmin\": -119213784.2218722, \"ymin\": -96198102.70097685, \"xmax\": 123150784.2210237, \"ymax\": 79590002.60442021}" - }, - 3367: { - "label": "IGN Astro 1960 UTM Zone 28N", - "defaultExtent": "{\"xmin\": -5120944.444949269, \"ymin\": -9606659.189062225, \"xmax\": 6120944.444949269, \"ymax\": 9606659.189062221}" - }, - 3368: { - "label": "IGN Astro 1960 UTM Zone 29N", - "defaultExtent": "{\"xmin\": -5120944.444949269, \"ymin\": -9606659.189062225, \"xmax\": 6120944.444949269, \"ymax\": 9606659.189062221}" - }, - 3369: { - "label": "IGN Astro 1960 UTM Zone 30N", - "defaultExtent": "{\"xmin\": -5120944.444949271, \"ymin\": -9606659.189062225, \"xmax\": 6120944.444949269, \"ymax\": 9606659.189062221}" - }, - 3370: { - "label": "NAD 1927 UTM Zone 59N", - "defaultExtent": "{\"xmin\": -5120880.632721122, \"ymin\": -9606689.106299058, \"xmax\": 6120880.632721149, \"ymax\": 9606689.106299067}" - }, - 3371: { - "label": "NAD 1927 UTM Zone 60N", - "defaultExtent": "{\"xmin\": -5120880.632721126, \"ymin\": -9606689.106299058, \"xmax\": 6120880.632721149, \"ymax\": 9606689.106299067}" - }, - 3372: { - "label": "NAD 1983 UTM Zone 59N", - "defaultExtent": "{\"xmin\": -5120763.76772398, \"ymin\": -9606785.534938088, \"xmax\": 6120763.767724008, \"ymax\": 9606785.534938097}" - }, - 3373: { - "label": "NAD 1983 UTM Zone 60N", - "defaultExtent": "{\"xmin\": -5120763.767723984, \"ymin\": -9606785.534938088, \"xmax\": 6120763.767724008, \"ymax\": 9606785.534938097}" - }, - 3374: { - "label": "FD 1954 UTM Zone 29N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 3375: { - "label": "GDM 2000 MRSO Peninsular Malaysia", - "defaultExtent": "{\"xmin\": -30662431.34520472, \"ymin\": -28736564.771662325, \"xmax\": 32278271.87926401, \"ymax\": 28731797.405474924}" - }, - 3376: { - "label": "GDM 2000 BRSO East Malaysia", - "defaultExtent": "{\"xmin\": -28973723.118105106, \"ymin\": -31202236.19634591, \"xmax\": 28970903.097957358, \"ymax\": 31198902.354118135}" - }, - 3377: { - "label": "GDM 2000 State Cassini Johor", - "defaultExtent": "{\"xmin\": -5024187.647697311, \"ymin\": -9836369.733354071, \"xmax\": 4994566.523697309, \"ymax\": 9384677.817842167}" - }, - 3378: { - "label": "GDM 2000 State Cassini Negeri Sembilan and Melaka", - "defaultExtent": "{\"xmin\": -5005703.300697311, \"ymin\": -9911365.170900682, \"xmax\": 5013050.870697312, \"ymax\": 9309682.380295552}" - }, - 3379: { - "label": "GDM 2000 State Cassini Pahang", - "defaultExtent": "{\"xmin\": -5016745.313697311, \"ymin\": -10020841.30883058, \"xmax\": 5002008.857697312, \"ymax\": 9200206.242365655}" - }, - 3380: { - "label": "GDM 2000 State Cassini Selangor", - "defaultExtent": "{\"xmin\": -5044213.246697311, \"ymin\": -9961492.762379225, \"xmax\": 4974540.924697309, \"ymax\": 9259554.788817009}" - }, - 3381: { - "label": "GDM 2000 State Cassini Terengganu", - "defaultExtent": "{\"xmin\": -4989782.840697311, \"ymin\": -10157414.885717198, \"xmax\": 5028971.330697312, \"ymax\": 9063632.665479036}" - }, - 3382: { - "label": "GDM 2000 State Cassini Pulau Pinang and Seberang Perai", - "defaultExtent": "{\"xmin\": -5009400.499697311, \"ymin\": -10209959.803278921, \"xmax\": 5009353.671697311, \"ymax\": 9011087.747917313}" - }, - 3383: { - "label": "GDM 2000 State Cassini Perlis", - "defaultExtent": "{\"xmin\": -5009377.085697311, \"ymin\": -10270087.015760256, \"xmax\": 5009377.085697309, \"ymax\": 8950960.535435982}" - }, - 3384: { - "label": "GDM 2000 State Cassini Perak", - "defaultExtent": "{\"xmin\": -5009378.854697311, \"ymin\": -10014369.287722353, \"xmax\": 5009375.316697309, \"ymax\": 9206678.263473885}" - }, - 3385: { - "label": "GDM 2000 State Cassini Kelantan", - "defaultExtent": "{\"xmin\": -4996149.234697311, \"ymin\": -10262217.540246436, \"xmax\": 5022604.936697312, \"ymax\": 8958830.010949796}" - }, - 3386: { - "label": "KKJ Finland Zone 0", - "defaultExtent": "{\"xmin\": -5123255.480734327, \"ymin\": -9610931.42506959, \"xmax\": 6123255.480734327, \"ymax\": 9610931.425069584}" - }, - 3387: { - "label": "KKJ Finland Zone 5", - "defaultExtent": "{\"xmin\": -123255.48073432688, \"ymin\": -9610931.42506959, \"xmax\": 11123255.480734326, \"ymax\": 9610931.425069584}" - }, - 3388: { - "label": "Pulkovo 1942 Caspian Sea Mercator", - "defaultExtent": "{\"xmin\": -14913385.448542837, \"ymin\": -14881659.319812339, \"xmax\": 14913385.448542839, \"ymax\": 14881659.32006445}" - }, - 3389: { - "label": "Pulkovo 1942 3 Degree GK Zone 60", - "defaultExtent": "{\"xmin\": 54876892.5324733, \"ymin\": -9610795.116112284, \"xmax\": 66123107.46752673, \"ymax\": 9610795.116112294}" - }, - 3390: { - "label": "Pulkovo 1995 3 Degree GK Zone 60", - "defaultExtent": "{\"xmin\": 54876892.5324733, \"ymin\": -9610795.116112284, \"xmax\": 66123107.46752673, \"ymax\": 9610795.116112294}" - }, - 3391: { - "label": "Karbala 1979 Polservice UTM Zone 37N", - "defaultExtent": "{\"xmin\": -5120944.444949269, \"ymin\": -9606659.189062225, \"xmax\": 6120944.444949269, \"ymax\": 9606659.189062221}" - }, - 3392: { - "label": "Karbala 1979 Polservice UTM Zone 38N", - "defaultExtent": "{\"xmin\": -5120944.444949269, \"ymin\": -9606659.189062225, \"xmax\": 6120944.444949269, \"ymax\": 9606659.189062221}" - }, - 3393: { - "label": "Karbala 1979 Polservice UTM Zone 39N", - "defaultExtent": "{\"xmin\": -5120944.444949269, \"ymin\": -9606659.189062225, \"xmax\": 6120944.444949271, \"ymax\": 9606659.189062221}" - }, - 3394: { - "label": "Nahrwan 1934 Iraq Zone", - "defaultExtent": "{\"xmin\": -36802027.21553916, \"ymin\": -27126297.074471127, \"xmax\": 39802027.2155338, \"ymax\": 15653699.898438057}" - }, - 3395: { - "label": "WGS 1984 World Mercator", - "defaultExtent": "{\"xmin\": -20037507.0671618, \"ymin\": -19994873.9742325, \"xmax\": 20037507.0671618, \"ymax\": 19994873.97423248}" - }, - 3396: { - "label": "PD/83 GK Zone 3", - "defaultExtent": "{\"xmin\": -2122345.7126389192, \"ymin\": -9609569.127050694, \"xmax\": 9122345.712638918, \"ymax\": 9609569.127050688}" - }, - 3397: { - "label": "PD/83 GK Zone 4", - "defaultExtent": "{\"xmin\": -1122345.7126389192, \"ymin\": -9609569.127050694, \"xmax\": 10122345.712638918, \"ymax\": 9609569.127050688}" - }, - 3398: { - "label": "RD/83 GK Zone 4", - "defaultExtent": "{\"xmin\": -1122345.7126389192, \"ymin\": -9609569.127050694, \"xmax\": 10122345.712638918, \"ymax\": 9609569.127050688}" - }, - 3399: { - "label": "RD/83 GK Zone 5", - "defaultExtent": "{\"xmin\": -122345.71263891924, \"ymin\": -9609569.127050694, \"xmax\": 11122345.712638918, \"ymax\": 9609569.127050688}" - }, - 3400: { - "label": "NAD 1983 10TM AEP Forest", - "defaultExtent": "{\"xmin\": -5118514.562534834, \"ymin\": -9602941.283044143, \"xmax\": 6118514.562534834, \"ymax\": 9602941.283044137}" - }, - 3401: { - "label": "NAD 1983 10TM AEP Resource", - "defaultExtent": "{\"xmin\": -5618514.562534834, \"ymin\": -9602941.283044143, \"xmax\": 5618514.562534834, \"ymax\": 9602941.283044137}" - }, - 3402: { - "label": "NAD 1983 CSRS 10TM AEP Forest", - "defaultExtent": "{\"xmin\": -5118514.562534834, \"ymin\": -9602941.283044143, \"xmax\": 6118514.562534834, \"ymax\": 9602941.283044137}" - }, - 3403: { - "label": "NAD 1983 CSRS 10TM AEP Resource", - "defaultExtent": "{\"xmin\": -5618514.562534834, \"ymin\": -9602941.283044143, \"xmax\": 5618514.562534834, \"ymax\": 9602941.283044137}" - }, - 3404: { - "label": "NAD 1983 HARN StatePlane North Carolina FIPS 3200 Feet", - "defaultExtent": "{\"xmin\": -121841586.88002771, \"ymin\": -93658623.64436917, \"xmax\": 125841586.88065827, \"ymax\": 59913544.75136323}" - }, - 3405: { - "label": "VN 2000 UTM Zone 48N", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699434, \"ymax\": 9606785.535047516}" - }, - 3406: { - "label": "VN 2000 UTM Zone 49N", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699433, \"ymax\": 9606785.535047516}" - }, - 3407: { - "label": "Hong Kong 1963 Grid System", - "defaultExtent": "{\"xmin\": -16303481.365815863, \"ymin\": -39566167.00032639, \"xmax\": 16567549.205815865, \"ymax\": 23495515.13006197}" - }, - 3408: { - "label": "NSIDC EASE Grid North", - "defaultExtent": "{\"xmin\": -12730574.729933135, \"ymin\": -12730574.729933197, \"xmax\": 12730574.729933135, \"ymax\": 12730574.729932941}" - }, - 3409: { - "label": "NSIDC EASE Grid South", - "defaultExtent": "{\"xmin\": -12730574.729933135, \"ymin\": -12730574.729932941, \"xmax\": 12730574.729933135, \"ymax\": 12730574.729933197}" - }, - 3410: { - "label": "NSIDC EASE Grid Global", - "defaultExtent": "{\"xmin\": -17334192.840157773, \"ymin\": -7329434.575954823, \"xmax\": 17334192.840157773, \"ymax\": 7329434.575954823}" - }, - 3411: { - "label": "NSIDC Sea Ice Polar Stereographic North", - "defaultExtent": "{\"xmin\": -30645853.441110253, \"ymin\": -30645853.44096722, \"xmax\": 30645853.4411116, \"ymax\": 30645853.44098543}" - }, - 3412: { - "label": "NSIDC Sea Ice Polar Stereographic South", - "defaultExtent": "{\"xmin\": -30645853.441111576, \"ymin\": -30645853.441111114, \"xmax\": 30645853.441111576, \"ymax\": 30645853.441111725}" - }, - 3413: { - "label": "WGS 1984 NSIDC Sea Ice Polar Stereographic North", - "defaultExtent": "{\"xmin\": -30645181.3109844, \"ymin\": -30645181.310841367, \"xmax\": 30645181.310985744, \"ymax\": 30645181.310859576}" - }, - 3414: { - "label": "SVY21 Singapore TM", - "defaultExtent": "{\"xmin\": -5595011.330888589, \"ymin\": -9723003.679677427, \"xmax\": 5651014.614888589, \"ymax\": 9498255.894247178}" - }, - 3415: { - "label": "WGS 1972 BE South China Sea Lambert", - "defaultExtent": "{\"xmin\": -38691613.83071663, \"ymin\": -26316013.446239777, \"xmax\": 39691613.83071664, \"ymax\": 14442648.761399018}" - }, - 3416: { - "label": "ETRS 1989 Austria Lambert", - "defaultExtent": "{\"xmin\": -35833358.007659346, \"ymin\": -29980886.783406164, \"xmax\": 36633358.0077081, \"ymax\": 30836212.940290082}" - }, - 3417: { - "label": "NAD 1983 StatePlane Iowa North FIPS 1401 Feet", - "defaultExtent": "{\"xmin\": -115418641.90933275, \"ymin\": -93897228.17317939, \"xmax\": 125261141.90572806, \"ymax\": 90202428.6887799}" - }, - 3418: { - "label": "NAD 1983 StatePlane Iowa South FIPS 1402 Feet", - "defaultExtent": "{\"xmin\": -119240276.37035538, \"ymin\": -96507236.16323002, \"xmax\": 122521109.70566234, \"ymax\": 82175394.65027604}" - }, - 3419: { - "label": "NAD 1983 StatePlane Kansas North FIPS 1501 Feet", - "defaultExtent": "{\"xmin\": -120388811.97430094, \"ymin\": -95722721.31178652, \"xmax\": 123013478.64083055, \"ymax\": 75262524.74795946}" - }, - 3420: { - "label": "NAD 1983 StatePlane Kansas South FIPS 1502 Feet", - "defaultExtent": "{\"xmin\": -121025381.58422464, \"ymin\": -93674520.77838725, \"xmax\": 123650048.25059587, \"ymax\": 71736782.13173495}" - }, - 3421: { - "label": "NAD 1983 StatePlane Nevada East FIPS 2701 Feet", - "defaultExtent": "{\"xmin\": -17790156.91179308, \"ymin\": -17900693.751107804, \"xmax\": 19102490.245126415, \"ymax\": 45154749.19218288}" - }, - 3422: { - "label": "NAD 1983 StatePlane Nevada Central FIPS 2702 Feet", - "defaultExtent": "{\"xmin\": -16805906.91179308, \"ymin\": -24462360.417774465, \"xmax\": 20086740.24512641, \"ymax\": 38593082.525516234}" - }, - 3423: { - "label": "NAD 1983 StatePlane Nevada West FIPS 2703 Feet", - "defaultExtent": "{\"xmin\": -15821656.91179308, \"ymin\": -31024027.084441133, \"xmax\": 21070990.24512641, \"ymax\": 32031415.858849563}" - }, - 3424: { - "label": "NAD 1983 StatePlane New Jersey FIPS 2900 Feet", - "defaultExtent": "{\"xmin\": -17954198.578459747, \"ymin\": -45633899.523189425, \"xmax\": 18938448.578459747, \"ymax\": 17421543.42010127}" - }, - 3425: { - "label": "NAD 1983 HARN StatePlane Iowa North FIPS 1401 Feet", - "defaultExtent": "{\"xmin\": -115418641.90933275, \"ymin\": -93897228.17317939, \"xmax\": 125261141.90572806, \"ymax\": 90202428.6887799}" - }, - 3426: { - "label": "NAD 1983 HARN StatePlane Iowa South FIPS 1402 Feet", - "defaultExtent": "{\"xmin\": -119240276.37035538, \"ymin\": -96507236.16323002, \"xmax\": 122521109.70566234, \"ymax\": 82175394.65027604}" - }, - 3427: { - "label": "NAD 1983 HARN StatePlane Kansas North FIPS 1501 Feet", - "defaultExtent": "{\"xmin\": -120388811.97430094, \"ymin\": -95722721.31178652, \"xmax\": 123013478.64083055, \"ymax\": 75262524.74795946}" - }, - 3428: { - "label": "NAD 1983 HARN StatePlane Kansas South FIPS 1502 Feet", - "defaultExtent": "{\"xmin\": -121025381.58422464, \"ymin\": -93674520.77838725, \"xmax\": 123650048.25059587, \"ymax\": 71736782.13173495}" - }, - 3429: { - "label": "NAD 1983 HARN StatePlane Nevada East FIPS 2701 Feet", - "defaultExtent": "{\"xmin\": -17790156.91179308, \"ymin\": -17900693.751107804, \"xmax\": 19102490.245126415, \"ymax\": 45154749.19218288}" - }, - 3430: { - "label": "NAD 1983 HARN StatePlane Nevada Central FIPS 2702 Feet", - "defaultExtent": "{\"xmin\": -16805906.91179308, \"ymin\": -24462360.417774465, \"xmax\": 20086740.24512641, \"ymax\": 38593082.525516234}" - }, - 3431: { - "label": "NAD 1983 HARN StatePlane Nevada West FIPS 2703 Feet", - "defaultExtent": "{\"xmin\": -15821656.91179308, \"ymin\": -31024027.084441133, \"xmax\": 21070990.24512641, \"ymax\": 32031415.858849563}" - }, - 3432: { - "label": "NAD 1983 HARN StatePlane New Jersey FIPS 2900 Feet", - "defaultExtent": "{\"xmin\": -17954198.578459747, \"ymin\": -45633899.523189425, \"xmax\": 18938448.578459747, \"ymax\": 17421543.42010127}" - }, - 3433: { - "label": "NAD 1983 StatePlane Arkansas North FIPS 0301 Feet", - "defaultExtent": "{\"xmin\": -122327940.41552109, \"ymin\": -93908065.50320448, \"xmax\": 124952607.08203807, \"ymax\": 61194226.51415184}" - }, - 3434: { - "label": "NAD 1983 StatePlane Arkansas South FIPS 0302 Feet", - "defaultExtent": "{\"xmin\": -123346161.29662618, \"ymin\": -91835121.20609988, \"xmax\": 125970827.96286376, \"ymax\": 56063031.79601851}" - }, - 3435: { - "label": "NAD 1983 StatePlane Illinois East FIPS 1201 Feet", - "defaultExtent": "{\"xmin\": -17463457.191089388, \"ymin\": -44848360.107802086, \"xmax\": 19431957.191089388, \"ymax\": 18211812.466672473}" - }, - 3436: { - "label": "NAD 1983 StatePlane Illinois West FIPS 1202 Feet", - "defaultExtent": "{\"xmin\": -16150499.875589753, \"ymin\": -44846843.140050724, \"xmax\": 20743666.542256415, \"ymax\": 18211196.463497788}" - }, - 3437: { - "label": "NAD 1983 StatePlane New Hampshire FIPS 2800 Feet", - "defaultExtent": "{\"xmin\": -17463303.456352763, \"ymin\": -46972768.51075051, \"xmax\": 19431803.456352763, \"ymax\": 16086878.549148068}" - }, - 3438: { - "label": "NAD 1983 StatePlane Rhode Island FIPS 3800 Feet", - "defaultExtent": "{\"xmin\": -18119969.76091347, \"ymin\": -46457811.069021836, \"xmax\": 18776136.427580133, \"ymax\": 16603543.913248692}" - }, - 3439: { - "label": "PDO 1993 UTM Zone 39N", - "defaultExtent": "{\"xmin\": -5120944.444949269, \"ymin\": -9606659.189062225, \"xmax\": 6120944.444949271, \"ymax\": 9606659.189062221}" - }, - 3440: { - "label": "PDO 1993 UTM Zone 40N", - "defaultExtent": "{\"xmin\": -5120944.444949269, \"ymin\": -9606659.189062225, \"xmax\": 6120944.444949269, \"ymax\": 9606659.189062221}" - }, - 3441: { - "label": "NAD 1983 HARN StatePlane Arkansas North FIPS 0301 Feet", - "defaultExtent": "{\"xmin\": -122327940.41552109, \"ymin\": -93908065.50320448, \"xmax\": 124952607.08203807, \"ymax\": 61194226.51415184}" - }, - 3442: { - "label": "NAD 1983 HARN StatePlane Arkansas South FIPS 0302 Feet", - "defaultExtent": "{\"xmin\": -123346161.29662618, \"ymin\": -91835121.20609988, \"xmax\": 125970827.96286376, \"ymax\": 56063031.79601851}" - }, - 3443: { - "label": "NAD 1983 HARN StatePlane Illinois East FIPS 1201 Feet", - "defaultExtent": "{\"xmin\": -17463457.191089388, \"ymin\": -44848360.107802086, \"xmax\": 19431957.191089388, \"ymax\": 18211812.466672473}" - }, - 3444: { - "label": "NAD 1983 HARN StatePlane Illinois West FIPS 1202 Feet", - "defaultExtent": "{\"xmin\": -16150499.875589753, \"ymin\": -44846843.140050724, \"xmax\": 20743666.542256415, \"ymax\": 18211196.463497788}" - }, - 3445: { - "label": "NAD 1983 HARN StatePlane New Hampshire FIPS 2800 Feet", - "defaultExtent": "{\"xmin\": -17463303.456352763, \"ymin\": -46972768.51075051, \"xmax\": 19431803.456352763, \"ymax\": 16086878.549148068}" - }, - 3446: { - "label": "NAD 1983 HARN StatePlane Rhode Island FIPS 3800 Feet", - "defaultExtent": "{\"xmin\": -18119969.76091347, \"ymin\": -46457811.069021836, \"xmax\": 18776136.427580133, \"ymax\": 16603543.913248692}" - }, - 3447: { - "label": "Belge Lambert 2005", - "defaultExtent": "{\"xmin\": -35871906.01739936, \"ymin\": -30621335.020402987, \"xmax\": 36172562.00247804, \"ymax\": 32544110.907976475}" - }, - 3448: { - "label": "JAD 2001 Jamaica Grid", - "defaultExtent": "{\"xmin\": -37363378.80231665, \"ymin\": -25892795.936673872, \"xmax\": 38863378.80231667, \"ymax\": 15644208.473575054}" - }, - 3449: { - "label": "JAD 2001 UTM Zone 17N", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699434, \"ymax\": 9606785.535047516}" - }, - 3450: { - "label": "JAD 2001 UTM Zone 18N", - "defaultExtent": "{\"xmin\": -5120763.767699436, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699434, \"ymax\": 9606785.535047516}" - }, - 3451: { - "label": "NAD 1983 StatePlane Louisiana North FIPS 1701 Feet", - "defaultExtent": "{\"xmin\": -123013962.92571716, \"ymin\": -92155235.10323042, \"xmax\": 129575629.58559735, \"ymax\": 45511593.25175553}" - }, - 3452: { - "label": "NAD 1983 StatePlane Louisiana South FIPS 1702 Feet", - "defaultExtent": "{\"xmin\": -124790707.23730458, \"ymin\": -91255084.9773939, \"xmax\": 131352373.90400414, \"ymax\": 36821548.440887876}" - }, - 3453: { - "label": "NAD 1983 StatePlane Louisiana Offshore FIPS 1703 Feet", - "defaultExtent": "{\"xmin\": -126912141.64299116, \"ymin\": -89927367.64357348, \"xmax\": 133473808.30975792, \"ymax\": 39858646.88325691}" - }, - 3455: { - "label": "NAD 1983 StatePlane South Dakota South FIPS 4002 Feet", - "defaultExtent": "{\"xmin\": -118047432.57692073, \"ymin\": -97554619.43266883, \"xmax\": 121984432.57649325, \"ymax\": 89874088.49880916}" - }, - 3456: { - "label": "NAD 1983 HARN StatePlane Louisiana North FIPS 1701 Feet", - "defaultExtent": "{\"xmin\": -123013962.92571716, \"ymin\": -92155235.10323042, \"xmax\": 129575629.58559735, \"ymax\": 45511593.25175553}" - }, - 3457: { - "label": "NAD 1983 HARN StatePlane Louisiana South FIPS 1702 Feet", - "defaultExtent": "{\"xmin\": -124790707.23730458, \"ymin\": -91255084.9773939, \"xmax\": 131352373.90400414, \"ymax\": 36821548.440887876}" - }, - 3458: { - "label": "NAD 1983 HARN StatePlane South Dakota North FIPS 4001 Feet", - "defaultExtent": "{\"xmin\": -117605076.22299072, \"ymin\": -98207493.43623132, \"xmax\": 121542076.22279583, \"ymax\": 93980354.82660332}" - }, - 3459: { - "label": "NAD 1983 HARN StatePlane South Dakota South FIPS 4002 Feet", - "defaultExtent": "{\"xmin\": -118047432.57692073, \"ymin\": -97554619.43266883, \"xmax\": 121984432.57649325, \"ymax\": 89874088.49880916}" - }, - 3460: { - "label": "Fiji 1986 Fiji Map Grid", - "defaultExtent": "{\"xmin\": -3622167.7113288334, \"ymin\": -3729160.7120363945, \"xmax\": 7622167.711328861, \"ymax\": 15489209.983284945}" - }, - 3461: { - "label": "Dabola 1981 UTM Zone 28N", - "defaultExtent": "{\"xmin\": -5120944.475688979, \"ymin\": -9606659.335852288, \"xmax\": 6120944.475688979, \"ymax\": 9606659.335852282}" - }, - 3462: { - "label": "Dabola 1981 UTM Zone 29N", - "defaultExtent": "{\"xmin\": -5120944.475688979, \"ymin\": -9606659.335852288, \"xmax\": 6120944.475688979, \"ymax\": 9606659.335852282}" - }, - 3463: { - "label": "NAD 1983 Maine 2000 Central Zone", - "defaultExtent": "{\"xmin\": -5122900.5126537075, \"ymin\": -14428609.897370517, \"xmax\": 6122900.5126537075, \"ymax\": 4792265.251185287}" - }, - 3464: { - "label": "NAD 1983 HARN Maine 2000 Central Zone", - "defaultExtent": "{\"xmin\": -5122900.5126537075, \"ymin\": -14428609.897370517, \"xmax\": 6122900.5126537075, \"ymax\": 4792265.251185287}" - }, - 3465: { - "label": "NAD 1983 NSRS2007 StatePlane Alabama East FIPS 0101", - "defaultExtent": "{\"xmin\": -5422788.052394249, \"ymin\": -12985652.072866369, \"xmax\": 5822788.052394249, \"ymax\": 6234838.650497956}" - }, - 3466: { - "label": "NAD 1983 NSRS2007 StatePlane Alabama West FIPS 0102", - "defaultExtent": "{\"xmin\": -5022638.105381638, \"ymin\": -12929881.135173015, \"xmax\": 6222638.105381638, \"ymax\": 6290097.0212693475}" - }, - 3467: { - "label": "NAD 1983 NSRS2007 Alaska Albers", - "defaultExtent": "{\"xmin\": -13739219.699563079, \"ymin\": -8935188.356798925, \"xmax\": 13739219.70003071, \"ymax\": 17285625.557825744}" - }, - 3468: { - "label": "NAD 1983 NSRS2007 StatePlane Alaska 1 FIPS 5001", - "defaultExtent": "{\"xmin\": -25224974.639177933, \"ymin\": -35282627.68932256, \"xmax\": 37636719.54767623, \"ymax\": 23274307.150670152}" - }, - 3469: { - "label": "NAD 1983 NSRS2007 StatePlane Alaska 2 FIPS 5002", - "defaultExtent": "{\"xmin\": -5122450.67161585, \"ymin\": -15594986.160549043, \"xmax\": 6122450.671615882, \"ymax\": 3624351.287199251}" - }, - 3470: { - "label": "NAD 1983 NSRS2007 StatePlane Alaska 3 FIPS 5003", - "defaultExtent": "{\"xmin\": -5122450.67161585, \"ymin\": -15594986.160549043, \"xmax\": 6122450.671615885, \"ymax\": 3624351.287199251}" - }, - 3471: { - "label": "NAD 1983 NSRS2007 StatePlane Alaska 4 FIPS 5004", - "defaultExtent": "{\"xmin\": -5122450.67161585, \"ymin\": -15594986.160549043, \"xmax\": 6122450.671615885, \"ymax\": 3624351.287199251}" - }, - 3472: { - "label": "NAD 1983 NSRS2007 StatePlane Alaska 5 FIPS 5005", - "defaultExtent": "{\"xmin\": -5122450.67161585, \"ymin\": -15594986.160549043, \"xmax\": 6122450.671615885, \"ymax\": 3624351.287199251}" - }, - 3473: { - "label": "NAD 1983 NSRS2007 StatePlane Alaska 6 FIPS 5006", - "defaultExtent": "{\"xmin\": -5122450.671615858, \"ymin\": -15594986.160549043, \"xmax\": 6122450.671615882, \"ymax\": 3624351.287199251}" - }, - 3474: { - "label": "NAD 1983 NSRS2007 StatePlane Alaska 7 FIPS 5007", - "defaultExtent": "{\"xmin\": -5122450.67161585, \"ymin\": -15594986.160549043, \"xmax\": 6122450.671615882, \"ymax\": 3624351.287199251}" - }, - 3475: { - "label": "NAD 1983 NSRS2007 StatePlane Alaska 8 FIPS 5008", - "defaultExtent": "{\"xmin\": -5122450.67161585, \"ymin\": -15594986.160549043, \"xmax\": 6122450.671615882, \"ymax\": 3624351.287199251}" - }, - 3476: { - "label": "NAD 1983 NSRS2007 StatePlane Alaska 9 FIPS 5009", - "defaultExtent": "{\"xmin\": -5122450.67161585, \"ymin\": -15594986.160549043, \"xmax\": 6122450.671615886, \"ymax\": 3624351.287199251}" - }, - 3477: { - "label": "NAD 1983 NSRS2007 StatePlane Alaska 10 FIPS 5010", - "defaultExtent": "{\"xmin\": -34866236.36030873, \"ymin\": -30817495.97745897, \"xmax\": 36866236.36020292, \"ymax\": 33859948.69122673}" - }, - 3478: { - "label": "NAD 1983 NSRS2007 StatePlane Arizona Central FIPS 0202", - "defaultExtent": "{\"xmin\": -5409090.671615872, \"ymin\": -13040299.949871464, \"xmax\": 5835810.671615874, \"ymax\": 6179037.49791844}" - }, - 3479: { - "label": "NAD 1983 NSRS2007 StatePlane Arizona Central FIPS 0202 Ft Intl", - "defaultExtent": "{\"xmin\": -17746360.47118068, \"ymin\": -42783136.31847593, \"xmax\": 19146360.47118069, \"ymax\": 20272432.735952888}" - }, - 3480: { - "label": "NAD 1983 NSRS2007 StatePlane Arizona East FIPS 0201", - "defaultExtent": "{\"xmin\": -5409090.671615874, \"ymin\": -13040299.949871464, \"xmax\": 5835810.671615874, \"ymax\": 6179037.49791844}" - }, - 3481: { - "label": "NAD 1983 NSRS2007 StatePlane Arizona East FIPS 0201 Ft Intl", - "defaultExtent": "{\"xmin\": -17746360.47118069, \"ymin\": -42783136.31847593, \"xmax\": 19146360.47118069, \"ymax\": 20272432.735952888}" - }, - 3482: { - "label": "NAD 1983 NSRS2007 StatePlane Arizona West FIPS 0203", - "defaultExtent": "{\"xmin\": -5409278.105381638, \"ymin\": -13040734.670008475, \"xmax\": 5835998.105381638, \"ymax\": 6179243.48643389}" - }, - 3483: { - "label": "NAD 1983 NSRS2007 StatePlane Arizona West FIPS 0203 Ft Intl", - "defaultExtent": "{\"xmin\": -17746975.41135708, \"ymin\": -42784562.5656446, \"xmax\": 19146975.41135708, \"ymax\": 20273108.55129229}" - }, - 3484: { - "label": "NAD 1983 NSRS2007 StatePlane Arkansas North FIPS 0301", - "defaultExtent": "{\"xmin\": -37285630.80991245, \"ymin\": -28623235.611847952, \"xmax\": 38085630.80986683, \"ymax\": 18652037.545588575}" - }, - 3485: { - "label": "NAD 1983 NSRS2007 StatePlane Arkansas North FIPS 0301 Ft US", - "defaultExtent": "{\"xmin\": -122327940.41552109, \"ymin\": -93908065.50320448, \"xmax\": 124952607.08203807, \"ymax\": 61194226.51415184}" - }, - 3486: { - "label": "NAD 1983 NSRS2007 StatePlane Arkansas South FIPS 0302", - "defaultExtent": "{\"xmin\": -37595985.155181974, \"ymin\": -27991400.9264211, \"xmax\": 38395985.15505119, \"ymax\": 17088046.267518982}" - }, - 3487: { - "label": "NAD 1983 NSRS2007 StatePlane Arkansas South FIPS 0302 Ft US", - "defaultExtent": "{\"xmin\": -123346161.29662618, \"ymin\": -91835121.20609988, \"xmax\": 125970827.96286376, \"ymax\": 56063031.79601851}" - }, - 3488: { - "label": "NAD 1983 NSRS2007 California Teale Albers", - "defaultExtent": "{\"xmin\": -16894575.05116589, \"ymin\": -8581876.335913707, \"xmax\": 16894575.05107798, \"ymax\": 13751563.003248025}" - }, - 3489: { - "label": "NAD 1983 NSRS2007 StatePlane California I FIPS 0401", - "defaultExtent": "{\"xmin\": -34887054.27121294, \"ymin\": -28830499.630561125, \"xmax\": 38887054.271445766, \"ymax\": 25202733.856392305}" - }, - 3490: { - "label": "NAD 1983 NSRS2007 StatePlane California I FIPS 0401 Ft US", - "defaultExtent": "{\"xmin\": -114458610.55480444, \"ymin\": -94588064.20459928, \"xmax\": 127581943.88890164, \"ymax\": 82685969.32718042}" - }, - 3491: { - "label": "NAD 1983 NSRS2007 StatePlane California II FIPS 0402", - "defaultExtent": "{\"xmin\": -35116508.911664024, \"ymin\": -28596719.981055927, \"xmax\": 39116508.911764205, \"ymax\": 23310630.66291148}" - }, - 3492: { - "label": "NAD 1983 NSRS2007 StatePlane California II FIPS 0402 Ft US", - "defaultExtent": "{\"xmin\": -115211412.98768437, \"ymin\": -93821072.13784765, \"xmax\": 128334746.32134637, \"ymax\": 76478294.09990206}" - }, - 3493: { - "label": "NAD 1983 NSRS2007 StatePlane California III FIPS 0403", - "defaultExtent": "{\"xmin\": -35314262.749591045, \"ymin\": -28428487.57731289, \"xmax\": 39314262.749551564, \"ymax\": 21771398.527620755}" - }, - 3494: { - "label": "NAD 1983 NSRS2007 StatePlane California III FIPS 0403 Ft US", - "defaultExtent": "{\"xmin\": -115860210.37094994, \"ymin\": -93269129.6599007, \"xmax\": 128983543.70415375, \"ymax\": 71428330.00270241}" - }, - 3495: { - "label": "NAD 1983 NSRS2007 StatePlane California IV FIPS 0404", - "defaultExtent": "{\"xmin\": -35498881.48266848, \"ymin\": -28265654.103608675, \"xmax\": 39498881.48289684, \"ymax\": 20437979.07279057}" - }, - 3496: { - "label": "NAD 1983 NSRS2007 StatePlane California IV FIPS 0404 Ft US", - "defaultExtent": "{\"xmin\": -116465913.66438816, \"ymin\": -92734900.17158945, \"xmax\": 129589246.99847071, \"ymax\": 67053603.00798039}" - }, - 3497: { - "label": "NAD 1983 NSRS2007 StatePlane California V FIPS 0405", - "defaultExtent": "{\"xmin\": -35847160.01764138, \"ymin\": -28005403.878855906, \"xmax\": 39847160.01752812, \"ymax\": 18099234.480987653}" - }, - 3498: { - "label": "NAD 1983 NSRS2007 StatePlane California V FIPS 0405 Ft US", - "defaultExtent": "{\"xmin\": -117608557.49121174, \"ymin\": -91881062.55921307, \"xmax\": 130731890.82417348, \"ymax\": 59380571.79304032}" - }, - 3499: { - "label": "NAD 1983 NSRS2007 StatePlane California VI FIPS 0406", - "defaultExtent": "{\"xmin\": -36151940.068675034, \"ymin\": -27815848.278992966, \"xmax\": 40151940.06861196, \"ymax\": 16247248.704331301}" - }, - 3500: { - "label": "NAD 1983 NSRS2007 StatePlane California VI FIPS 0406 Ft US", - "defaultExtent": "{\"xmin\": -118608490.04197799, \"ymin\": -91259162.22866274, \"xmax\": 131731823.37510438, \"ymax\": 53304515.12412693}" - }, - 3501: { - "label": "NAD 1983 NSRS2007 StatePlane Colorado Central FIPS 0502", - "defaultExtent": "{\"xmin\": -36200413.80326969, \"ymin\": -28811315.283514805, \"xmax\": 38029217.46057424, \"ymax\": 23117321.353997074}" - }, - 3502: { - "label": "NAD 1983 NSRS2007 StatePlane Colorado Central FIPS 0502 Ft US", - "defaultExtent": "{\"xmin\": -118767524.2862273, \"ymin\": -94525123.55933148, \"xmax\": 124767524.28523397, \"ymax\": 75844078.47557206}" - }, - 3503: { - "label": "NAD 1983 NSRS2007 StatePlane Colorado North FIPS 0501", - "defaultExtent": "{\"xmin\": -36047295.1761787, \"ymin\": -29010844.772414874, \"xmax\": 37876098.83435248, \"ymax\": 24329837.178702205}" - }, - 3504: { - "label": "NAD 1983 NSRS2007 StatePlane Colorado North FIPS 0501 Ft US", - "defaultExtent": "{\"xmin\": -118265167.59051295, \"ymin\": -95179746.55749778, \"xmax\": 124265167.5923714, \"ymax\": 79822140.81045881}" - }, - 3505: { - "label": "NAD 1983 NSRS2007 StatePlane Colorado South FIPS 0503", - "defaultExtent": "{\"xmin\": -36387386.019578025, \"ymin\": -28644971.833411947, \"xmax\": 38216189.6778173, \"ymax\": 21664082.8771381}" - }, - 3506: { - "label": "NAD 1983 NSRS2007 StatePlane Colorado South FIPS 0503 Ft US", - "defaultExtent": "{\"xmin\": -119380948.96589889, \"ymin\": -93979378.42345235, \"xmax\": 125380948.96797225, \"ymax\": 71076245.23941058}" - }, - 3507: { - "label": "NAD 1983 NSRS2007 StatePlane Connecticut FIPS 0600", - "defaultExtent": "{\"xmin\": -36501665.38080174, \"ymin\": -29365141.16645893, \"xmax\": 37111266.59970077, \"ymax\": 25482156.151964903}" - }, - 3508: { - "label": "NAD 1983 NSRS2007 StatePlane Connecticut FIPS 0600 Ft US", - "defaultExtent": "{\"xmin\": -119755880.50351368, \"ymin\": -96342133.97695734, \"xmax\": 121755880.50251827, \"ymax\": 83602707.3085715}" - }, - 3509: { - "label": "NAD 1983 NSRS2007 StatePlane Delaware FIPS 0700", - "defaultExtent": "{\"xmin\": -5422984.8578483015, \"ymin\": -13818058.715278085, \"xmax\": 5822984.857848301, \"ymax\": 5403104.752171321}" - }, - 3510: { - "label": "NAD 1983 NSRS2007 StatePlane Delaware FIPS 0700 Ft US", - "defaultExtent": "{\"xmin\": -17791909.487790633, \"ymin\": -45334747.63504151, \"xmax\": 19104242.821123965, \"ymax\": 17726686.174415406}" - }, - 3511: { - "label": "NAD 1983 NSRS2007 StatePlane Florida East FIPS 0901", - "defaultExtent": "{\"xmin\": -5422682.2074441705, \"ymin\": -12302114.955780467, \"xmax\": 5822682.2074441705, \"ymax\": 6918013.955638945}" - }, - 3512: { - "label": "NAD 1983 NSRS2007 StatePlane Florida East FIPS 0901 Ft US", - "defaultExtent": "{\"xmin\": -17790916.542256415, \"ymin\": -40361188.817423075, \"xmax\": 19103249.875589747, \"ymax\": 22696850.786125436}" - }, - 3513: { - "label": "NAD 1983 NSRS2007 Florida GDL Albers", - "defaultExtent": "{\"xmin\": -19533690.484215964, \"ymin\": -7509915.322719345, \"xmax\": 20333690.484215967, \"ymax\": 11731295.795514686}" - }, - 3514: { - "label": "NAD 1983 NSRS2007 StatePlane Florida North FIPS 0903", - "defaultExtent": "{\"xmin\": -38386184.53222137, \"ymin\": -27874919.325736687, \"xmax\": 39586184.5326483, \"ymax\": 11420627.34512336}" - }, - 3515: { - "label": "NAD 1983 NSRS2007 StatePlane Florida North FIPS 0903 Ft US", - "defaultExtent": "{\"xmin\": -125938673.75279626, \"ymin\": -91452964.48785444, \"xmax\": 129875673.75419696, \"ymax\": 37469174.881458886}" - }, - 3516: { - "label": "NAD 1983 NSRS2007 StatePlane Florida West FIPS 0902", - "defaultExtent": "{\"xmin\": -5422682.207444169, \"ymin\": -12302114.955780467, \"xmax\": 5822682.2074441705, \"ymax\": 6918013.955638945}" - }, - 3517: { - "label": "NAD 1983 NSRS2007 StatePlane Florida West FIPS 0902 Ft US", - "defaultExtent": "{\"xmin\": -17790916.542256407, \"ymin\": -40361188.817423075, \"xmax\": 19103249.875589747, \"ymax\": 22696850.786125436}" - }, - 3518: { - "label": "NAD 1983 NSRS2007 StatePlane Georgia East FIPS 1001", - "defaultExtent": "{\"xmin\": -5422450.671615874, \"ymin\": -12929450.11040019, \"xmax\": 5822450.671615874, \"ymax\": 6289887.337389712}" - }, - 3519: { - "label": "NAD 1983 NSRS2007 StatePlane Georgia East FIPS 1001 Ft US", - "defaultExtent": "{\"xmin\": -17790156.91179308, \"ymin\": -42419370.90387128, \"xmax\": 19102490.24512641, \"ymax\": 20636072.039419413}" - }, - 3520: { - "label": "NAD 1983 NSRS2007 StatePlane Georgia West FIPS 1002", - "defaultExtent": "{\"xmin\": -4922450.671615872, \"ymin\": -12929450.11040019, \"xmax\": 6322450.6716158725, \"ymax\": 6289887.337389712}" - }, - 3521: { - "label": "NAD 1983 NSRS2007 StatePlane Georgia West FIPS 1002 Ft US", - "defaultExtent": "{\"xmin\": -16149740.245126404, \"ymin\": -42419370.90387128, \"xmax\": 20742906.91179307, \"ymax\": 20636072.039419413}" - }, - 3522: { - "label": "NAD 1983 NSRS2007 StatePlane Idaho Central FIPS 1102", - "defaultExtent": "{\"xmin\": -5122717.024861958, \"ymin\": -14224494.619744752, \"xmax\": 6122717.024861961, \"ymax\": 4995753.308761801}" - }, - 3523: { - "label": "NAD 1983 NSRS2007 StatePlane Idaho Central FIPS 1102 Ft US", - "defaultExtent": "{\"xmin\": -16806780.77240127, \"ymin\": -46668196.09827923, \"xmax\": 20087614.105734613, \"ymax\": 16390233.980496006}" - }, - 3524: { - "label": "NAD 1983 NSRS2007 StatePlane Idaho East FIPS 1101", - "defaultExtent": "{\"xmin\": -5422717.024861958, \"ymin\": -14224494.619744752, \"xmax\": 5822717.024861958, \"ymax\": 4995753.308761801}" - }, - 3525: { - "label": "NAD 1983 NSRS2007 StatePlane Idaho East FIPS 1101 Ft US", - "defaultExtent": "{\"xmin\": -17791030.77240127, \"ymin\": -46668196.09827923, \"xmax\": 19103364.105734605, \"ymax\": 16390233.980496006}" - }, - 3526: { - "label": "NAD 1983 NSRS2007 StatePlane Idaho West FIPS 1103", - "defaultExtent": "{\"xmin\": -4822638.105381638, \"ymin\": -14224294.967206975, \"xmax\": 6422638.105381638, \"ymax\": 4995683.189235387}" - }, - 3527: { - "label": "NAD 1983 NSRS2007 StatePlane Idaho West FIPS 1103 Ft US", - "defaultExtent": "{\"xmin\": -15822271.850739589, \"ymin\": -46667541.07157821, \"xmax\": 21071605.18407292, \"ymax\": 16390003.930016432}" - }, - 3528: { - "label": "NAD 1983 NSRS2007 StatePlane Illinois East FIPS 1201", - "defaultExtent": "{\"xmin\": -5322872.397588842, \"ymin\": -13669807.500473078, \"xmax\": 5922872.397588842, \"ymax\": 5550971.541784854}" - }, - 3529: { - "label": "NAD 1983 NSRS2007 StatePlane Illinois East FIPS 1201 Ft US", - "defaultExtent": "{\"xmin\": -17463457.191089388, \"ymin\": -44848360.107802086, \"xmax\": 19431957.191089388, \"ymax\": 18211812.466672473}" - }, - 3530: { - "label": "NAD 1983 NSRS2007 StatePlane Illinois West FIPS 1202", - "defaultExtent": "{\"xmin\": -4922682.207444172, \"ymin\": -13669345.127777718, \"xmax\": 6322682.2074441705, \"ymax\": 5550783.783641693}" - }, - 3531: { - "label": "NAD 1983 NSRS2007 StatePlane Illinois West FIPS 1202 Ft US", - "defaultExtent": "{\"xmin\": -16150499.875589753, \"ymin\": -44846843.140050724, \"xmax\": 20743666.542256415, \"ymax\": 18211196.463497788}" - }, - 3532: { - "label": "NAD 1983 NSRS2007 StatePlane Indiana East FIPS 1301", - "defaultExtent": "{\"xmin\": -5522825.539147399, \"ymin\": -13512173.175005069, \"xmax\": 5722825.539147401, \"ymax\": 5708445.690089753}" - }, - 3533: { - "label": "NAD 1983 NSRS2007 StatePlane Indiana East FIPS 1301 Ft US", - "defaultExtent": "{\"xmin\": -18119470.123019423, \"ymin\": -44331188.15832912, \"xmax\": 18775636.789686095, \"ymax\": 18728458.901569463}" - }, - 3534: { - "label": "NAD 1983 NSRS2007 StatePlane Indiana West FIPS 1302", - "defaultExtent": "{\"xmin\": -4722825.539147401, \"ymin\": -13512173.175005067, \"xmax\": 6522825.539147401, \"ymax\": 5708445.690089753}" - }, - 3535: { - "label": "NAD 1983 NSRS2007 StatePlane Indiana West FIPS 1302 Ft US", - "defaultExtent": "{\"xmin\": -15494803.456352763, \"ymin\": -44331188.15832912, \"xmax\": 21400303.456352763, \"ymax\": 18728458.901569463}" - }, - 3536: { - "label": "NAD 1983 NSRS2007 StatePlane Iowa North FIPS 1401", - "defaultExtent": "{\"xmin\": -35179672.413309455, \"ymin\": -28619932.387049854, \"xmax\": 38179672.41221074, \"ymax\": 27493755.251850624}" - }, - 3537: { - "label": "NAD 1983 NSRS2007 StatePlane Iowa North FIPS 1401 Ft US", - "defaultExtent": "{\"xmin\": -115418641.90933275, \"ymin\": -93897228.17317939, \"xmax\": 125261141.90572806, \"ymax\": 90202428.6887799}" - }, - 3538: { - "label": "NAD 1983 NSRS2007 StatePlane Iowa South FIPS 1402", - "defaultExtent": "{\"xmin\": -36344508.92670218, \"ymin\": -29415464.41348134, \"xmax\": 37344508.92730374, \"ymax\": 25047110.383624904}" - }, - 3539: { - "label": "NAD 1983 NSRS2007 StatePlane Iowa South FIPS 1402 Ft US", - "defaultExtent": "{\"xmin\": -119240276.37035538, \"ymin\": -96507236.16323002, \"xmax\": 122521109.70566234, \"ymax\": 82175394.65027604}" - }, - 3540: { - "label": "NAD 1983 NSRS2007 StatePlane Kansas North FIPS 1501", - "defaultExtent": "{\"xmin\": -36694583.27893349, \"ymin\": -29176343.808520153, \"xmax\": 37494583.27889171, \"ymax\": 22940063.423304893}" - }, - 3541: { - "label": "NAD 1983 NSRS2007 StatePlane Kansas North FIPS 1501 Ft US", - "defaultExtent": "{\"xmin\": -120388811.97430094, \"ymin\": -95722721.31178652, \"xmax\": 123013478.64083055, \"ymax\": 75262524.74795946}" - }, - 3542: { - "label": "NAD 1983 NSRS2007 StatePlane Kansas South FIPS 1502", - "defaultExtent": "{\"xmin\": -36888610.08409184, \"ymin\": -28552051.03735451, \"xmax\": 37688610.084001794, \"ymax\": 21865414.924582668}" - }, - 3543: { - "label": "NAD 1983 NSRS2007 StatePlane Kansas South FIPS 1502 Ft US", - "defaultExtent": "{\"xmin\": -121025381.58422464, \"ymin\": -93674520.77838725, \"xmax\": 123650048.25059587, \"ymax\": 71736782.13173495}" - }, - 3544: { - "label": "NAD 1983 NSRS2007 StatePlane Kentucky North FIPS 1601", - "defaultExtent": "{\"xmin\": -36706540.6144563, \"ymin\": -29061234.143652882, \"xmax\": 37706540.61484275, \"ymax\": 22066321.05409854}" - }, - 3545: { - "label": "NAD 1983 NSRS2007 StatePlane Kentucky North FIPS 1601 Ft US", - "defaultExtent": "{\"xmin\": -120428041.99926203, \"ymin\": -95345065.68630116, \"xmax\": 123708875.33386324, \"ymax\": 72395921.65832162}" - }, - 3546: { - "label": "NAD 1983 NSRS2007 StatePlane Kentucky FIPS 1600", - "defaultExtent": "{\"xmin\": -35794088.47457762, \"ymin\": -27913214.15795621, \"xmax\": 38794088.4749888, \"ymax\": 22449415.817500036}" - }, - 3547: { - "label": "NAD 1983 NSRS2007 StatePlane Kentucky FIPS 1600 Ft US", - "defaultExtent": "{\"xmin\": -117434438.60367672, \"ymin\": -91578603.44989465, \"xmax\": 127276938.60502575, \"ymax\": 73652791.72791469}" - }, - 3548: { - "label": "NAD 1983 NSRS2007 StatePlane Kentucky South FIPS 1602", - "defaultExtent": "{\"xmin\": -36881000.62027418, \"ymin\": -28397921.164930366, \"xmax\": 37881000.620047584, \"ymax\": 21253778.418876573}" - }, - 3549: { - "label": "NAD 1983 NSRS2007 StatePlane Kentucky South FIPS 1602 Ft US", - "defaultExtent": "{\"xmin\": -121000416.20168228, \"ymin\": -93168846.35527492, \"xmax\": 124281249.53427221, \"ymax\": 69730104.69592905}" - }, - 3550: { - "label": "NAD 1983 NSRS2007 StatePlane Louisiana North FIPS 1701", - "defaultExtent": "{\"xmin\": -37494730.88922037, \"ymin\": -28088971.837408308, \"xmax\": 39494730.88715185, \"ymax\": 13871961.36705782}" - }, - 3551: { - "label": "NAD 1983 NSRS2007 StatePlane Louisiana North FIPS 1701 Ft US", - "defaultExtent": "{\"xmin\": -123013962.92571716, \"ymin\": -92155235.10323042, \"xmax\": 129575629.58559735, \"ymax\": 45511593.25175553}" - }, - 3552: { - "label": "NAD 1983 NSRS2007 StatePlane Louisiana South FIPS 1702", - "defaultExtent": "{\"xmin\": -38036283.63849772, \"ymin\": -27814605.530320723, \"xmax\": 40036283.638507746, \"ymax\": 11223230.411243448}" - }, - 3553: { - "label": "NAD 1983 NSRS2007 StatePlane Louisiana South FIPS 1702 Ft US", - "defaultExtent": "{\"xmin\": -124790707.23730458, \"ymin\": -91255084.9773939, \"xmax\": 131352373.90400414, \"ymax\": 36821548.440887876}" - }, - 3554: { - "label": "NAD 1983 NSRS2007 Maine 2000 Central Zone", - "defaultExtent": "{\"xmin\": -5122900.5126537075, \"ymin\": -14428609.897370517, \"xmax\": 6122900.5126537075, \"ymax\": 4792265.251185287}" - }, - 3555: { - "label": "NAD 1983 NSRS2007 Maine 2000 East Zone", - "defaultExtent": "{\"xmin\": -4922900.5126537075, \"ymin\": -14465644.401938386, \"xmax\": 6322900.5126537075, \"ymax\": 4755230.746617417}" - }, - 3556: { - "label": "NAD 1983 NSRS2007 Maine 2000 West Zone", - "defaultExtent": "{\"xmin\": -5322900.5126537075, \"ymin\": -14354547.388632273, \"xmax\": 5922900.5126537075, \"ymax\": 4866327.759923531}" - }, - 3557: { - "label": "NAD 1983 NSRS2007 StatePlane Maine East FIPS 1801", - "defaultExtent": "{\"xmin\": -5322450.671615874, \"ymin\": -14445971.085374892, \"xmax\": 5922450.671615874, \"ymax\": 4773366.36241501}" - }, - 3558: { - "label": "NAD 1983 NSRS2007 StatePlane Maine West FIPS 1802", - "defaultExtent": "{\"xmin\": -4722825.539147399, \"ymin\": -14354355.990839133, \"xmax\": 6522825.539147401, \"ymax\": 4866262.874255687}" - }, - 3559: { - "label": "NAD 1983 NSRS2007 StatePlane Maryland FIPS 1900", - "defaultExtent": "{\"xmin\": -36747007.26427332, \"ymin\": -29091384.527313504, \"xmax\": 37547007.26462395, \"ymax\": 22554678.123978678}" - }, - 3560: { - "label": "NAD 1983 StatePlane Utah North FIPS 4301 Feet", - "defaultExtent": "{\"xmin\": -119221659.28963818, \"ymin\": -93352773.84609784, \"xmax\": 122502492.92669998, \"ymax\": 85520465.96418004}" - }, - 3561: { - "label": "Old Hawaiian StatePlane Hawaii 1 FIPS 5101", - "defaultExtent": "{\"xmin\": -17947937.011572435, \"ymin\": -38363565.692405395, \"xmax\": 18947937.011572514, \"ymax\": 24695448.40267545}" - }, - 3562: { - "label": "Old Hawaiian StatePlane Hawaii 2 FIPS 5102", - "defaultExtent": "{\"xmin\": -17947937.011744253, \"ymin\": -38908297.90237463, \"xmax\": 18947937.011400703, \"ymax\": 24150716.19272111}" - }, - 3563: { - "label": "Old Hawaiian StatePlane Hawaii 3 FIPS 5103", - "defaultExtent": "{\"xmin\": -17948367.47778491, \"ymin\": -39211882.29142871, \"xmax\": 18948367.47778499, \"ymax\": 23848603.229695223}" - }, - 3564: { - "label": "Old Hawaiian StatePlane Hawaii 4 FIPS 5104", - "defaultExtent": "{\"xmin\": -17948367.477784883, \"ymin\": -39454045.134916164, \"xmax\": 18948367.47778499, \"ymax\": 23606440.386207767}" - }, - 3565: { - "label": "Old Hawaiian StatePlane Hawaii 5 FIPS 5105", - "defaultExtent": "{\"xmin\": -17948551.963476367, \"ymin\": -39393896.52843084, \"xmax\": 18948551.963132814, \"ymax\": 23667219.603869304}" - }, - 3566: { - "label": "NAD 1983 StatePlane Utah Central FIPS 4302 Feet", - "defaultExtent": "{\"xmin\": -119796545.77940893, \"ymin\": -89211828.05201131, \"xmax\": 123077379.11484808, \"ymax\": 84130107.87985836}" - }, - 3567: { - "label": "NAD 1983 StatePlane Utah South FIPS 4303 Feet", - "defaultExtent": "{\"xmin\": -120766635.35476631, \"ymin\": -85132401.4014197, \"xmax\": 124047468.68715994, \"ymax\": 79709386.16746534}" - }, - 3568: { - "label": "NAD 1983 HARN StatePlane Utah North FIPS 4301 Feet", - "defaultExtent": "{\"xmin\": -119221659.28963818, \"ymin\": -93352773.84609784, \"xmax\": 122502492.92669998, \"ymax\": 85520465.96418004}" - }, - 3569: { - "label": "NAD 1983 HARN StatePlane Utah Central FIPS 4302 Feet", - "defaultExtent": "{\"xmin\": -119796545.77940893, \"ymin\": -89211828.05201131, \"xmax\": 123077379.11484808, \"ymax\": 84130107.87985836}" - }, - 3570: { - "label": "NAD 1983 HARN StatePlane Utah South FIPS 4303 Feet", - "defaultExtent": "{\"xmin\": -120766635.35476631, \"ymin\": -85132401.4014197, \"xmax\": 124047468.68715994, \"ymax\": 79709386.16746534}" - }, - 3571: { - "label": "WGS 1984 North Pole LAEA Bering Sea", - "defaultExtent": "{\"xmin\": -12730027.198090494, \"ymin\": -12730027.1980903, \"xmax\": 12730027.198090494, \"ymax\": 12730027.198090555}" - }, - 3572: { - "label": "WGS 1984 North Pole LAEA Alaska", - "defaultExtent": "{\"xmin\": -12730027.19787046, \"ymin\": -12730027.198074762, \"xmax\": 12730027.197997602, \"ymax\": 12730027.198064448}" - }, - 3573: { - "label": "WGS 1984 North Pole LAEA Canada", - "defaultExtent": "{\"xmin\": -12730027.197103972, \"ymin\": -12730027.19794325, \"xmax\": 12730027.197072018, \"ymax\": 12730027.197979283}" - }, - 3574: { - "label": "WGS 1984 North Pole LAEA Atlantic", - "defaultExtent": "{\"xmin\": -12730027.198085813, \"ymin\": -12730027.198087694, \"xmax\": 12730027.198083362, \"ymax\": 12730027.197360521}" - }, - 3575: { - "label": "WGS 1984 North Pole LAEA Europe", - "defaultExtent": "{\"xmin\": -12730027.197953643, \"ymin\": -12730027.198081324, \"xmax\": 12730027.197965195, \"ymax\": 12730027.198086863}" - }, - 3576: { - "label": "WGS 1984 North Pole LAEA Russia", - "defaultExtent": "{\"xmin\": -12730027.198090555, \"ymin\": -12730027.198090494, \"xmax\": 12730027.1980903, \"ymax\": 12730027.198090494}" - }, - 3577: { - "label": "GDA 1994 Australia Albers", - "defaultExtent": "{\"xmin\": -20204331.447122287, \"ymin\": -14220219.798081264, \"xmax\": 20204331.44712229, \"ymax\": 5019748.834878035}" - }, - 3578: { - "label": "NAD 1983 Yukon Albers", - "defaultExtent": "{\"xmin\": -12907460.665778939, \"ymin\": -9252393.584543366, \"xmax\": 13907460.665092671, \"ymax\": 16953579.60047859}" - }, - 3579: { - "label": "NAD 1983 CSRS Yukon Albers", - "defaultExtent": "{\"xmin\": -12907460.665778939, \"ymin\": -9252393.584543366, \"xmax\": 13907460.665092671, \"ymax\": 16953579.60047859}" - }, - 3580: { - "label": "NAD 1983 Northwest Territories Lambert", - "defaultExtent": "{\"xmin\": -34916800.79924788, \"ymin\": -23288094.65465815, \"xmax\": 34916800.80346145, \"ymax\": 45287537.77704118}" - }, - 3581: { - "label": "NAD 1983 CSRS Northwest Territories Lambert", - "defaultExtent": "{\"xmin\": -34916800.79924788, \"ymin\": -23288094.65465815, \"xmax\": 34916800.80346145, \"ymax\": 45287537.77704118}" - }, - 3582: { - "label": "NAD 1983 NSRS2007 StatePlane Maryland FIPS 1900 Ft US", - "defaultExtent": "{\"xmin\": -120560806.33287005, \"ymin\": -95443984.07002771, \"xmax\": 123185473.00068705, \"ymax\": 73998139.81175338}" - }, - 3583: { - "label": "NAD 1983 NSRS2007 StatePlane Massachusetts Island FIPS 2002", - "defaultExtent": "{\"xmin\": -36324363.173723884, \"ymin\": -29532372.723926485, \"xmax\": 37324363.17347703, \"ymax\": 25143058.28571613}" - }, - 3584: { - "label": "NAD 1983 NSRS2007 StatePlane Massachusetts Isl FIPS 2002 FtUS", - "defaultExtent": "{\"xmin\": -119174181.5124591, \"ymin\": -96890792.84508213, \"xmax\": 122455014.84498255, \"ymax\": 82490183.72572033}" - }, - 3585: { - "label": "NAD 1983 NSRS2007 StatePlane Massachusetts Mainland FIPS 2001", - "defaultExtent": "{\"xmin\": -36530705.74194933, \"ymin\": -28803004.001248993, \"xmax\": 36930705.741942905, \"ymax\": 26796569.38877064}" - }, - 3586: { - "label": "NAD 1983 NSRS2007 StatePlane Massachusetts Mnld FIPS 2001 FtUS", - "defaultExtent": "{\"xmin\": -119851157.08837874, \"ymin\": -94497855.62743106, \"xmax\": 121163490.421691, \"ymax\": 87915078.06965832}" - }, - 3587: { - "label": "NAD 1983 NSRS2007 StatePlane Michigan Central FIPS 2112", - "defaultExtent": "{\"xmin\": -30455190.630660422, \"ymin\": -29873530.398834094, \"xmax\": 42455190.63111069, \"ymax\": 28598773.969079223}" - }, - 3588: { - "label": "NAD 1983 NSRS2007 StatePlane Michigan Central FIPS 2112 Ft Intl", - "defaultExtent": "{\"xmin\": -99918604.4313006, \"ymin\": -98010270.3373822, \"xmax\": 139288683.17293534, \"ymax\": 93827998.58621791}" - }, - 3589: { - "label": "NAD 1983 NSRS2007 StatePlane Michigan North FIPS 2111", - "defaultExtent": "{\"xmin\": -28338008.16261086, \"ymin\": -30062764.319301587, \"xmax\": 44338008.16271662, \"ymax\": 29682471.10421796}" - }, - 3590: { - "label": "NAD 1983 NSRS2007 StatePlane Michigan North FIPS 2111 Ft Intl", - "defaultExtent": "{\"xmin\": -92972467.72510123, \"ymin\": -98631116.53314169, \"xmax\": 145465906.0456582, \"ymax\": 97383435.38129252}" - }, - 3591: { - "label": "NAD 1983 NSRS2007 Michigan GeoRef Meters", - "defaultExtent": "{\"xmin\": -28809902.8075835, \"ymin\": -30359666.086749792, \"xmax\": 35544410.36686367, \"ymax\": 20812653.70437237}" - }, - 3592: { - "label": "NAD 1983 NSRS2007 StatePlane Michigan South FIPS 2113", - "defaultExtent": "{\"xmin\": -32655721.616859354, \"ymin\": -29624554.326154392, \"xmax\": 40655721.616422996, \"ymax\": 26723713.97971105}" - }, - 3593: { - "label": "NAD 1983 NSRS2007 StatePlane Michigan South FIPS 2113 Ft Intl", - "defaultExtent": "{\"xmin\": -107138194.28103462, \"ymin\": -97193419.70523094, \"xmax\": 133384913.43970798, \"ymax\": 87676226.96755593}" - }, - 3594: { - "label": "NAD 1983 NSRS2007 StatePlane Minnesota Central FIPS 2202", - "defaultExtent": "{\"xmin\": -35534345.78057431, \"ymin\": -29988111.83685971, \"xmax\": 37134345.780168205, \"ymax\": 29803284.527532667}" - }, - 3595: { - "label": "NAD 1983 NSRS2007 StatePlane Minnesota North FIPS 2201", - "defaultExtent": "{\"xmin\": -35413952.21883893, \"ymin\": -30179238.744515866, \"xmax\": 37013952.21884459, \"ymax\": 30925833.663218413}" - }, - 3596: { - "label": "NAD 1983 NSRS2007 StatePlane Minnesota South FIPS 2203", - "defaultExtent": "{\"xmin\": -35696176.20197969, \"ymin\": -29729049.350341942, \"xmax\": 37296176.20161064, \"ymax\": 28305006.49768952}" - }, - 3597: { - "label": "NAD 1983 NSRS2007 StatePlane Mississippi East FIPS 2301", - "defaultExtent": "{\"xmin\": -5322731.822264518, \"ymin\": -12874675.296950985, \"xmax\": 5922731.8222645195, \"ymax\": 6345623.2138176095}" - }, - 3598: { - "label": "NAD 1983 NSRS2007 StatePlane Mississippi East FIPS 2301 Ft US", - "defaultExtent": "{\"xmin\": -17462995.9868795, \"ymin\": -42239663.87008002, \"xmax\": 19431495.98687951, \"ymax\": 20818932.160666604}" - }, - 3599: { - "label": "NAD 1983 NSRS2007 StatePlane Mississippi West FIPS 2302", - "defaultExtent": "{\"xmin\": -4922731.8222645195, \"ymin\": -12874675.296950981, \"xmax\": 6322731.8222645195, \"ymax\": 6345623.2138176095}" - }, - 3600: { - "label": "NAD 1983 NSRS2007 StatePlane Mississippi West FIPS 2302 Ft US", - "defaultExtent": "{\"xmin\": -16150662.653546175, \"ymin\": -42239663.87008, \"xmax\": 20743829.32021284, \"ymax\": 20818932.160666604}" - }, - 3601: { - "label": "NAD 1983 NSRS2007 StatePlane Missouri Central FIPS 2402", - "defaultExtent": "{\"xmin\": -5122638.105381638, \"ymin\": -13576774.369054267, \"xmax\": 6122638.105381639, \"ymax\": 5643203.787388095}" - }, - 3602: { - "label": "NAD 1983 NSRS2007 StatePlane Missouri East FIPS 2401", - "defaultExtent": "{\"xmin\": -5372638.10538164, \"ymin\": -13576774.369054265, \"xmax\": 5872638.105381638, \"ymax\": 5643203.787388095}" - }, - 3603: { - "label": "NAD 1983 NSRS2007 StatePlane Missouri West FIPS 2403", - "defaultExtent": "{\"xmin\": -4772682.2074441705, \"ymin\": -13613865.018881941, \"xmax\": 6472682.2074441705, \"ymax\": 5606263.89253747}" - }, - 3604: { - "label": "NAD 1983 NSRS2007 StatePlane Montana FIPS 2500", - "defaultExtent": "{\"xmin\": -35665865.835127994, \"ymin\": -30006746.26947549, \"xmax\": 36865865.835221216, \"ymax\": 30370447.115839537}" - }, - 3605: { - "label": "NAD 1983 NSRS2007 StatePlane Montana FIPS 2500 Ft Intl", - "defaultExtent": "{\"xmin\": -117013995.52207346, \"ymin\": -98447330.28043139, \"xmax\": 120951003.39639506, \"ymax\": 99640574.5270326}" - }, - 3606: { - "label": "NAD 1983 NSRS2007 StatePlane Nebraska FIPS 2600", - "defaultExtent": "{\"xmin\": -36300933.080799475, \"ymin\": -29399402.24687034, \"xmax\": 37300933.080734946, \"ymax\": 25403103.617317706}" - }, - 3607: { - "label": "NAD 1983 NSRS2007 StatePlane Nevada Central FIPS 2702", - "defaultExtent": "{\"xmin\": -5122450.671615874, \"ymin\": -7456142.367622394, \"xmax\": 6122450.671615874, \"ymax\": 11763195.080167508}" - }, - 3608: { - "label": "NAD 1983 NSRS2007 StatePlane Nevada Central FIPS 2702 Ft US", - "defaultExtent": "{\"xmin\": -16805906.91179308, \"ymin\": -24462360.417774465, \"xmax\": 20086740.24512641, \"ymax\": 38593082.525516234}" - }, - 3609: { - "label": "NAD 1983 NSRS2007 StatePlane Nevada East FIPS 2701", - "defaultExtent": "{\"xmin\": -5422450.671615874, \"ymin\": -5456142.367622394, \"xmax\": 5822450.671615875, \"ymax\": 13763195.080167508}" - }, - 3610: { - "label": "NAD 1983 NSRS2007 StatePlane Nevada East FIPS 2701 Ft US", - "defaultExtent": "{\"xmin\": -17790156.91179308, \"ymin\": -17900693.751107804, \"xmax\": 19102490.245126415, \"ymax\": 45154749.19218288}" - }, - 3611: { - "label": "NAD 1983 NSRS2007 StatePlane Nevada West FIPS 2703", - "defaultExtent": "{\"xmin\": -4822450.671615874, \"ymin\": -9456142.367622394, \"xmax\": 6422450.671615874, \"ymax\": 9763195.080167508}" - }, - 3612: { - "label": "NAD 1983 NSRS2007 StatePlane Nevada West FIPS 2703 Ft US", - "defaultExtent": "{\"xmin\": -15821656.91179308, \"ymin\": -31024027.084441133, \"xmax\": 21070990.24512641, \"ymax\": 32031415.858849563}" - }, - 3613: { - "label": "NAD 1983 NSRS2007 StatePlane New Hampshire FIPS 2800", - "defaultExtent": "{\"xmin\": -5322825.539147401, \"ymin\": -14317328.47673371, \"xmax\": 5922825.539147401, \"ymax\": 4903290.3883611085}" - }, - 3614: { - "label": "NAD 1983 NSRS2007 StatePlane New Hampshire FIPS 2800 Ft US", - "defaultExtent": "{\"xmin\": -17463303.456352763, \"ymin\": -46972768.51075051, \"xmax\": 19431803.456352763, \"ymax\": 16086878.549148068}" - }, - 3615: { - "label": "NAD 1983 NSRS2007 StatePlane New Jersey FIPS 2900", - "defaultExtent": "{\"xmin\": -5472450.671615874, \"ymin\": -13909240.393148925, \"xmax\": 5772450.671615874, \"ymax\": 5310097.054640977}" - }, - 3616: { - "label": "NAD 1983 NSRS2007 StatePlane New Jersey FIPS 2900 Ft US", - "defaultExtent": "{\"xmin\": -17954198.578459747, \"ymin\": -45633899.523189425, \"xmax\": 18938448.578459747, \"ymax\": 17421543.42010127}" - }, - 3617: { - "label": "NAD 1983 NSRS2007 StatePlane New Mexico Central FIPS 3002", - "defaultExtent": "{\"xmin\": -5122450.671615874, \"ymin\": -13040299.949871464, \"xmax\": 6122450.671615874, \"ymax\": 6179037.49791844}" - }, - 3618: { - "label": "NAD 1983 NSRS2007 StatePlane New Mexico Central FIPS 3002 Ft US", - "defaultExtent": "{\"xmin\": -16805906.91179308, \"ymin\": -42783050.752203286, \"xmax\": 20086740.24512641, \"ymax\": 20272392.191087414}" - }, - 3619: { - "label": "NAD 1983 NSRS2007 StatePlane New Mexico East FIPS 3001", - "defaultExtent": "{\"xmin\": -5457501.789915625, \"ymin\": -13040418.509908829, \"xmax\": 5787501.789915627, \"ymax\": 6179093.676604471}" - }, - 3620: { - "label": "NAD 1983 NSRS2007 StatePlane New Mexico East FIPS 3001 Ft US", - "defaultExtent": "{\"xmin\": -17905153.78908151, \"ymin\": -42783439.727925874, \"xmax\": 18987828.789081518, \"ymax\": 20272576.503993165}" - }, - 3621: { - "label": "NAD 1983 NSRS2007 StatePlane New Mexico West FIPS 3003", - "defaultExtent": "{\"xmin\": -4792544.388498756, \"ymin\": -13040517.30993997, \"xmax\": 6452544.388498756, \"ymax\": 6179140.492176165}" - }, - 3622: { - "label": "NAD 1983 NSRS2007 StatePlane New Mexico West FIPS 3003 Ft US", - "defaultExtent": "{\"xmin\": -15723539.381266333, \"ymin\": -42783763.87436138, \"xmax\": 21169722.714599665, \"ymax\": 20272730.0980813}" - }, - 3623: { - "label": "NAD 1983 NSRS2007 StatePlane New York Central FIPS 3102", - "defaultExtent": "{\"xmin\": -5372661.534602356, \"ymin\": -14039281.307184162, \"xmax\": 5872661.534602358, \"ymax\": 5180776.937839759}" - }, - 3624: { - "label": "NAD 1983 NSRS2007 StatePlane New York Central FIPS 3102 Ft US", - "defaultExtent": "{\"xmin\": -17626807.051441226, \"ymin\": -46060542.08865336, \"xmax\": 19267223.7181079, \"ymax\": 16997265.67022927}" - }, - 3625: { - "label": "NAD 1983 NSRS2007 StatePlane New York East FIPS 3101", - "defaultExtent": "{\"xmin\": -5472450.671615874, \"ymin\": -13909240.393148925, \"xmax\": 5772450.671615874, \"ymax\": 5310097.054640977}" - }, - 3626: { - "label": "NAD 1983 NSRS2007 StatePlane New York East FIPS 3101 Ft US", - "defaultExtent": "{\"xmin\": -17954198.578459747, \"ymin\": -45633899.523189425, \"xmax\": 18938448.578459747, \"ymax\": 17421543.42010127}" - }, - 3627: { - "label": "NAD 1983 NSRS2007 StatePlane New York Long Island FIPS 3104", - "defaultExtent": "{\"xmin\": -36587956.42066342, \"ymin\": -29425420.120449886, \"xmax\": 37187956.42150142, \"ymax\": 24629425.6260428}" - }, - 3628: { - "label": "NAD 1983 NSRS2007 StatePlane New York Long Isl FIPS 3104 Ft US", - "defaultExtent": "{\"xmin\": -120038987.02345988, \"ymin\": -96539899.17850932, \"xmax\": 122007487.02620924, \"ymax\": 80805040.5747754}" - }, - 3629: { - "label": "NAD 1983 NSRS2007 StatePlane New York West FIPS 3103", - "defaultExtent": "{\"xmin\": -5272661.53460236, \"ymin\": -14039281.307184162, \"xmax\": 5972661.534602358, \"ymax\": 5180776.937839759}" - }, - 3630: { - "label": "NAD 1983 NSRS2007 StatePlane New York West FIPS 3103 Ft US", - "defaultExtent": "{\"xmin\": -17298723.718107905, \"ymin\": -46060542.08865336, \"xmax\": 19595307.051441234, \"ymax\": 16997265.67022927}" - }, - 3631: { - "label": "NAD 1983 NSRS2007 StatePlane North Carolina FIPS 3200", - "defaultExtent": "{\"xmin\": -37137389.955812365, \"ymin\": -28547205.58121489, \"xmax\": 38356592.39440943, \"ymax\": 18261684.963585444}" - }, - 3632: { - "label": "NAD 1983 NSRS2007 StatePlane North Carolina FIPS 3200 Ft US", - "defaultExtent": "{\"xmin\": -121841586.88002771, \"ymin\": -93658623.64436917, \"xmax\": 125841586.88065827, \"ymax\": 59913544.75136323}" - }, - 3633: { - "label": "NAD 1983 NSRS2007 StatePlane North Dakota North FIPS 3301", - "defaultExtent": "{\"xmin\": -35595748.115963005, \"ymin\": -30339027.657292105, \"xmax\": 36795748.11641998, \"ymax\": 30974941.604174778}" - }, - 3634: { - "label": "NAD 1983 NSRS2007 StatePlane North Dakota North FIPS 3301 FtI", - "defaultExtent": "{\"xmin\": -116783950.51168965, \"ymin\": -99537492.31395046, \"xmax\": 120720958.38720465, \"ymax\": 101623824.1606784}" - }, - 3635: { - "label": "NAD 1983 NSRS2007 StatePlane North Dakota South FIPS 3302", - "defaultExtent": "{\"xmin\": -35693627.05966489, \"ymin\": -30171287.465168312, \"xmax\": 36893627.0601383, \"ymax\": 30070892.076617684}" - }, - 3636: { - "label": "NAD 1983 NSRS2007 StatePlane North Dakota South FIPS 3302 FtI", - "defaultExtent": "{\"xmin\": -117105075.65506853, \"ymin\": -98987163.59963356, \"xmax\": 121042083.53063746, \"ymax\": 98657782.40360132}" - }, - 3637: { - "label": "NAD 1983 NSRS2007 StatePlane Ohio North FIPS 3401", - "defaultExtent": "{\"xmin\": -36260139.32294244, \"ymin\": -29374687.724612944, \"xmax\": 37460139.32264283, \"ymax\": 24932674.77100941}" - }, - 3638: { - "label": "NAD 1983 NSRS2007 StatePlane Ohio South FIPS 3402", - "defaultExtent": "{\"xmin\": -36475619.49728193, \"ymin\": -29142750.459979072, \"xmax\": 37675619.497339524, \"ymax\": 23138992.601405952}" - }, - 3639: { - "label": "NAD 1983 NSRS2007 StatePlane Oklahoma North FIPS 3501", - "defaultExtent": "{\"xmin\": -36979233.88907343, \"ymin\": -28714973.963273533, \"xmax\": 38179233.8890346, \"ymax\": 19365200.320864283}" - }, - 3640: { - "label": "NAD 1983 NSRS2007 StatePlane Oklahoma North FIPS 3501 Ft US", - "defaultExtent": "{\"xmin\": -121322703.18440174, \"ymin\": -94209043.74450657, \"xmax\": 125259703.18427433, \"ymax\": 63533994.71936889}" - }, - 3641: { - "label": "NAD 1983 NSRS2007 StatePlane Oklahoma South FIPS 3502", - "defaultExtent": "{\"xmin\": -37281426.008000575, \"ymin\": -28482182.493828315, \"xmax\": 38481426.007534444, \"ymax\": 17385783.726951864}" - }, - 3642: { - "label": "NAD 1983 NSRS2007 StatePlane Oklahoma South FIPS 3502 Ft US", - "defaultExtent": "{\"xmin\": -122314145.16124853, \"ymin\": -93445293.73183505, \"xmax\": 126251145.15971924, \"ymax\": 57039858.7775079}" - }, - 3643: { - "label": "NAD 1983 NSRS2007 Oregon Statewide Lambert", - "defaultExtent": "{\"xmin\": -36115366.195192955, \"ymin\": -29681657.82664154, \"xmax\": 36915366.19580745, \"ymax\": 28096555.99768769}" - }, - 3644: { - "label": "NAD 1983 NSRS2007 Oregon Statewide Lambert Ft Intl", - "defaultExtent": "{\"xmin\": -118488734.23619735, \"ymin\": -97380767.14777409, \"xmax\": 121113406.1542239, \"ymax\": 92180301.82968402}" - }, - 3645: { - "label": "NAD 1983 NSRS2007 StatePlane Oregon North FIPS 3601", - "defaultExtent": "{\"xmin\": -33934395.67833442, \"ymin\": -29916770.9826887, \"xmax\": 38934395.67866903, \"ymax\": 28774826.90963382}" - }, - 3646: { - "label": "NAD 1983 NSRS2007 StatePlane Oregon North FIPS 3601 Ft Intl", - "defaultExtent": "{\"xmin\": -111333319.15464048, \"ymin\": -98152135.76997603, \"xmax\": 127737518.6308039, \"ymax\": 94405600.09722382}" - }, - 3647: { - "label": "NAD 1983 NSRS2007 StatePlane Oregon South FIPS 3602", - "defaultExtent": "{\"xmin\": -35126017.07220474, \"ymin\": -29649727.834081486, \"xmax\": 38126017.072228044, \"ymax\": 27002732.65337064}" - }, - 3648: { - "label": "NAD 1983 NSRS2007 StatePlane Oregon South FIPS 3602 Ft Intl", - "defaultExtent": "{\"xmin\": -115242838.16340137, \"ymin\": -97276009.95433559, \"xmax\": 125085357.8485172, \"ymax\": 88591642.56355196}" - }, - 3649: { - "label": "NAD 1983 NSRS2007 StatePlane Pennsylvania North FIPS 3701", - "defaultExtent": "{\"xmin\": -36219260.373335704, \"ymin\": -29439912.0075843, \"xmax\": 37419260.373972096, \"ymax\": 25273022.556772325}" - }, - 3650: { - "label": "NAD 1983 NSRS2007 StatePlane Pennsylvania North FIPS 3701 Ft US", - "defaultExtent": "{\"xmin\": -118829356.74151887, \"ymin\": -96587444.64488281, \"xmax\": 122766356.74360676, \"ymax\": 82916574.83834386}" - }, - 3651: { - "label": "NAD 1983 NSRS2007 StatePlane Pennsylvania South FIPS 3702", - "defaultExtent": "{\"xmin\": -36336434.103694856, \"ymin\": -29321240.345738437, \"xmax\": 37536434.10343623, \"ymax\": 24259081.311989907}" - }, - 3652: { - "label": "NAD 1983 NSRS2007 StatePlane Pennsylvania South FIPS 3702 Ft US", - "defaultExtent": "{\"xmin\": -119213784.2218722, \"ymin\": -96198102.70097685, \"xmax\": 123150784.2210237, \"ymax\": 79590002.60442021}" - }, - 3653: { - "label": "NAD 1983 NSRS2007 StatePlane Rhode Island FIPS 3800", - "defaultExtent": "{\"xmin\": -5522977.829082084, \"ymin\": -14160369.134576127, \"xmax\": 5722977.829082084, \"ymax\": 5060770.306298815}" - }, - 3654: { - "label": "NAD 1983 NSRS2007 StatePlane Rhode Island FIPS 3800 Ft US", - "defaultExtent": "{\"xmin\": -18119969.76091347, \"ymin\": -46457811.069021836, \"xmax\": 18776136.427580133, \"ymax\": 16603543.913248692}" - }, - 3655: { - "label": "NAD 1983 NSRS2007 StatePlane South Carolina FIPS 3900", - "defaultExtent": "{\"xmin\": -37462128.94764636, \"ymin\": -28285530.15549066, \"xmax\": 38681328.949165195, \"ymax\": 16261049.643896274}" - }, - 3656: { - "label": "NAD 1983 NSRS2007 StatePlane South Carolina FIPS 3900 Ft Intl", - "defaultExtent": "{\"xmin\": -122907247.20356415, \"ymin\": -92800295.78573051, \"xmax\": 126907247.20854722, \"ymax\": 53349900.40648384}" - }, - 3657: { - "label": "NAD 1983 NSRS2007 StatePlane South Dakota North FIPS 4001", - "defaultExtent": "{\"xmin\": -35846098.92496543, \"ymin\": -29933703.866771042, \"xmax\": 37046098.92490602, \"ymax\": 28645269.44168758}" - }, - 3658: { - "label": "NAD 1983 NSRS2007 StatePlane South Dakota North FIPS 4001 Ft US", - "defaultExtent": "{\"xmin\": -117605076.22299072, \"ymin\": -98207493.43623132, \"xmax\": 121542076.22279583, \"ymax\": 93980354.82660332}" - }, - 3659: { - "label": "NAD 1983 NSRS2007 StatePlane South Dakota South FIPS 4002", - "defaultExtent": "{\"xmin\": -35980929.411304265, \"ymin\": -29734707.47249241, \"xmax\": 37180929.41117397, \"ymax\": 27393676.96179096}" - }, - 3660: { - "label": "NAD 1983 NSRS2007 StatePlane South Dakota South FIPS 4002 Ft US", - "defaultExtent": "{\"xmin\": -118047432.57692073, \"ymin\": -97554619.43266883, \"xmax\": 121984432.57649325, \"ymax\": 89874088.49880916}" - }, - 3661: { - "label": "NAD 1983 NSRS2007 StatePlane Tennessee FIPS 4100", - "defaultExtent": "{\"xmin\": -37039650.6279049, \"ymin\": -28631019.31672457, \"xmax\": 38239650.62802555, \"ymax\": 18990861.045042165}" - }, - 3662: { - "label": "NAD 1983 NSRS2007 StatePlane Tennessee FIPS 4100 Ft US", - "defaultExtent": "{\"xmin\": -121520920.4350513, \"ymin\": -93933602.54162051, \"xmax\": 125457920.43544713, \"ymax\": 62305849.94527583}" - }, - 3663: { - "label": "NAD 1983 NSRS2007 StatePlane Texas Central FIPS 4203", - "defaultExtent": "{\"xmin\": -38040663.03171102, \"ymin\": -24970101.92794974, \"xmax\": 39440663.03170802, \"ymax\": 15602650.666709403}" - }, - 3664: { - "label": "NAD 1983 NSRS2007 StatePlane Texas Central FIPS 4203 Ft US", - "defaultExtent": "{\"xmin\": -124805075.29653856, \"ymin\": -81922742.74194843, \"xmax\": 129398241.96319537, \"ymax\": 51189696.39569576}" - }, - 3665: { - "label": "NAD 1983 NSRS2007 Texas Centric Mapping System Albers", - "defaultExtent": "{\"xmin\": -17154324.437499855, \"ymin\": -675329.8507281002, \"xmax\": 20154324.43750238, \"ymax\": 19014408.076648667}" - }, - 3666: { - "label": "NAD 1983 NSRS2007 Texas Centric Mapping System Lambert", - "defaultExtent": "{\"xmin\": -37101439.53622417, \"ymin\": -21633811.39510804, \"xmax\": 40101439.53614661, \"ymax\": 19288743.702293932}" - }, - 3667: { - "label": "NAD 1983 NSRS2007 StatePlane Texas North FIPS 4201", - "defaultExtent": "{\"xmin\": -37516299.8331, \"ymin\": -27580728.943599287, \"xmax\": 37916299.833128214, \"ymax\": 19461951.497943036}" - }, - 3668: { - "label": "NAD 1983 NSRS2007 StatePlane Texas North FIPS 4201 Ft US", - "defaultExtent": "{\"xmin\": -123084727.03576224, \"ymin\": -90487774.87579198, \"xmax\": 124397060.36918813, \"ymax\": 63851419.2061681}" - }, - 3669: { - "label": "NAD 1983 NSRS2007 StatePlane Texas North Central FIPS 4202", - "defaultExtent": "{\"xmin\": -37614616.88807972, \"ymin\": -26250391.134317875, \"xmax\": 38814616.88802452, \"ymax\": 17395582.84290185}" - }, - 3670: { - "label": "NAD 1983 NSRS2007 StatePlane Texas North Central FIPS 4202 FtUS", - "defaultExtent": "{\"xmin\": -123407288.90697485, \"ymin\": -86123158.24650788, \"xmax\": 127344288.90679376, \"ymax\": 57072008.04375381}" - }, - 3671: { - "label": "NAD 1983 NSRS2007 StatePlane Texas South FIPS 4205", - "defaultExtent": "{\"xmin\": -39382898.13859524, \"ymin\": -22428383.748523414, \"xmax\": 39982898.13859524, \"ymax\": 17130472.597137526}" - }, - 3672: { - "label": "NAD 1983 NSRS2007 StatePlane Texas South FIPS 4205 Ft US", - "defaultExtent": "{\"xmin\": -129208724.97637452, \"ymin\": -73583789.01494722, \"xmax\": 131177224.97637452, \"ymax\": 56202225.512442015}" - }, - 3673: { - "label": "NAD 1983 NSRS2007 StatePlane Texas South Central FIPS 4204", - "defaultExtent": "{\"xmin\": -38625948.2389665, \"ymin\": -23722141.01585047, \"xmax\": 39825948.2389665, \"ymax\": 15422945.822918478}" - }, - 3674: { - "label": "NAD 1983 NSRS2007 StatePlane Texas South Central FIPS 4204 FtUS", - "defaultExtent": "{\"xmin\": -126725298.51400925, \"ymin\": -77828390.98283607, \"xmax\": 130662298.51400925, \"ymax\": 50600114.754025035}" - }, - 3675: { - "label": "NAD 1983 NSRS2007 StatePlane Utah Central FIPS 4302", - "defaultExtent": "{\"xmin\": -36514060.18168421, \"ymin\": -27191819.5738922, \"xmax\": 37514060.18232606, \"ymax\": 25642908.167597167}" - }, - 3676: { - "label": "NAD 1983 NSRS2007 StatePlane Utah Central FIPS 4302 Ft Intl", - "defaultExtent": "{\"xmin\": -119796785.37297969, \"ymin\": -89212006.47602427, \"xmax\": 123077625.27009863, \"ymax\": 84130276.14041065}" - }, - 3677: { - "label": "NAD 1983 NSRS2007 StatePlane Utah Central FIPS 4302 Ft US", - "defaultExtent": "{\"xmin\": -119796545.77940908, \"ymin\": -89211828.0520115, \"xmax\": 123077379.11484823, \"ymax\": 84130107.87985882}" - }, - 3678: { - "label": "NAD 1983 NSRS2007 StatePlane Utah North FIPS 4301", - "defaultExtent": "{\"xmin\": -36338834.42915058, \"ymin\": -28453982.376255378, \"xmax\": 37338834.521727204, \"ymax\": 26066690.159262396}" - }, - 3679: { - "label": "NAD 1983 NSRS2007 StatePlane Utah North FIPS 4301 Ft Intl", - "defaultExtent": "{\"xmin\": -119221897.73343366, \"ymin\": -93352960.55201896, \"xmax\": 122502737.93217586, \"ymax\": 85520637.00545405}" - }, - 3680: { - "label": "NAD 1983 NSRS2007 StatePlane Utah North FIPS 4301 Ft US", - "defaultExtent": "{\"xmin\": -119221659.28963818, \"ymin\": -93352773.84609784, \"xmax\": 122502492.92669998, \"ymax\": 85520465.96418004}" - }, - 3681: { - "label": "NAD 1983 NSRS2007 StatePlane Utah South FIPS 4303", - "defaultExtent": "{\"xmin\": -36809744.07562093, \"ymin\": -25948407.843968417, \"xmax\": 37809744.075334504, \"ymax\": 24295469.49478243}" - }, - 3682: { - "label": "NAD 1983 NSRS2007 StatePlane Utah South FIPS 4303 Ft Intl", - "defaultExtent": "{\"xmin\": -120766876.88852009, \"ymin\": -85132571.66656305, \"xmax\": 124047716.78259352, \"ymax\": 79709545.58655652}" - }, - 3683: { - "label": "NAD 1983 NSRS2007 StatePlane Utah South FIPS 4303 Ft US", - "defaultExtent": "{\"xmin\": -120766635.35476631, \"ymin\": -85132401.4014197, \"xmax\": 124047468.68715994, \"ymax\": 79709386.16746534}" - }, - 3684: { - "label": "NAD 1983 NSRS2007 StatePlane Vermont FIPS 4400", - "defaultExtent": "{\"xmin\": -5122812.1510212775, \"ymin\": -14317294.386720052, \"xmax\": 6122812.151021276, \"ymax\": 4903278.713471021}" - }, - 3685: { - "label": "NAD 1983 NSRS2007 StatePlane Virginia North FIPS 4501", - "defaultExtent": "{\"xmin\": -33684162.33987652, \"ymin\": -27083846.657879442, \"xmax\": 40684162.34077641, \"ymax\": 24234815.029329725}" - }, - 3686: { - "label": "NAD 1983 NSRS2007 StatePlane Virginia North FIPS 4501 Ft US", - "defaultExtent": "{\"xmin\": -110512122.6100782, \"ymin\": -88857586.91005945, \"xmax\": 133477955.94636394, \"ymax\": 79510388.9753926}" - }, - 3687: { - "label": "NAD 1983 NSRS2007 StatePlane Virginia South FIPS 4502", - "defaultExtent": "{\"xmin\": -33875616.80010519, \"ymin\": -27898914.99367497, \"xmax\": 40875616.80001254, \"ymax\": 21796916.219502896}" - }, - 3688: { - "label": "NAD 1983 NSRS2007 StatePlane Virginia South FIPS 4502 Ft US", - "defaultExtent": "{\"xmin\": -111140252.78501177, \"ymin\": -91531690.27508196, \"xmax\": 134106086.11804111, \"ymax\": 71512049.29681908}" - }, - 3689: { - "label": "NAD 1983 NSRS2007 StatePlane Washington North FIPS 4601", - "defaultExtent": "{\"xmin\": -35693390.40305884, \"ymin\": -30339611.799414955, \"xmax\": 36693390.40324891, \"ymax\": 31002022.19631627}" - }, - 3690: { - "label": "NAD 1983 NSRS2007 StatePlane Washington North FIPS 4601 Ft US", - "defaultExtent": "{\"xmin\": -117104065.01403554, \"ymin\": -99539209.71191388, \"xmax\": 120384898.34799246, \"ymax\": 101712467.82241428}" - }, - 3691: { - "label": "NAD 1983 NSRS2007 StatePlane Washington South FIPS 4602", - "defaultExtent": "{\"xmin\": -35813457.80653769, \"ymin\": -30129505.531924177, \"xmax\": 36813457.80730579, \"ymax\": 29888507.91177208}" - }, - 3692: { - "label": "NAD 1983 NSRS2007 StatePlane Washington South FIPS 4602 Ft US", - "defaultExtent": "{\"xmin\": -117497986.15361571, \"ymin\": -98849886.06598788, \"xmax\": 120778819.48946907, \"ymax\": 98059213.04053889}" - }, - 3693: { - "label": "NAD 1983 NSRS2007 StatePlane West Virginia North FIPS 4701", - "defaultExtent": "{\"xmin\": -36443027.89488857, \"ymin\": -29205240.099509504, \"xmax\": 37643027.8949125, \"ymax\": 23375051.76188209}" - }, - 3694: { - "label": "NAD 1983 NSRS2007 StatePlane West Virginia South FIPS 4702", - "defaultExtent": "{\"xmin\": -36647651.619762786, \"ymin\": -28996711.06985563, \"xmax\": 37847651.61951533, \"ymax\": 21766153.09529358}" - }, - 3695: { - "label": "NAD 1983 NSRS2007 StatePlane Wisconsin Central FIPS 4802", - "defaultExtent": "{\"xmin\": -35862028.694118075, \"ymin\": -29930060.701200917, \"xmax\": 37062028.688673995, \"ymax\": 28477287.000578806}" - }, - 3696: { - "label": "NAD 1983 NSRS2007 StatePlane Wisconsin Central FIPS 4802 Ft US", - "defaultExtent": "{\"xmin\": -117657339.14061904, \"ymin\": -98195540.81718999, \"xmax\": 121594339.12275791, \"ymax\": 93429232.43439895}" - }, - 3697: { - "label": "NAD 1983 NSRS2007 StatePlane Wisconsin North FIPS 4801", - "defaultExtent": "{\"xmin\": -35748933.755770005, \"ymin\": -30104004.24499993, \"xmax\": 36948933.75551393, \"ymax\": 29535005.089385338}" - }, - 3698: { - "label": "NAD 1983 NSRS2007 StatePlane Wisconsin North FIPS 4801 Ft US", - "defaultExtent": "{\"xmin\": -117286293.49705541, \"ymin\": -98766220.59380393, \"xmax\": 121223293.49621527, \"ymax\": 96899429.19742505}" - }, - 3699: { - "label": "NAD 1983 NSRS2007 StatePlane Wisconsin South FIPS 4803", - "defaultExtent": "{\"xmin\": -36003344.686841294, \"ymin\": -29693054.532282908, \"xmax\": 37203344.68690827, \"ymax\": 27208063.07319163}" - }, - 3700: { - "label": "NAD 1983 NSRS2007 StatePlane Wisconsin South FIPS 4803 Ft US", - "defaultExtent": "{\"xmin\": -118120973.36007847, \"ymin\": -97417963.07799816, \"xmax\": 122057973.36029819, \"ymax\": 89265120.26596287}" - }, - 3701: { - "label": "NAD 1983 NSRS2007 Wisconsin TM", - "defaultExtent": "{\"xmin\": -5100763.767724001, \"ymin\": -14086785.534958892, \"xmax\": 6140763.767724001, \"ymax\": 5126785.534958888}" - }, - 3702: { - "label": "NAD 1983 NSRS2007 StatePlane Wyoming East FIPS 4901", - "defaultExtent": "{\"xmin\": -5422661.534602354, \"ymin\": -14094797.558167633, \"xmax\": 5822661.534602358, \"ymax\": 5125260.686856288}" - }, - 3703: { - "label": "NAD 1983 NSRS2007 StatePlane Wyoming East Central FIPS 4902", - "defaultExtent": "{\"xmin\": -5222661.53460236, \"ymin\": -13994797.558167633, \"xmax\": 6022661.534602358, \"ymax\": 5225260.686856289}" - }, - 3704: { - "label": "NAD 1983 NSRS2007 StatePlane Wyoming West Central FIPS 4903", - "defaultExtent": "{\"xmin\": -5022661.534602358, \"ymin\": -14094797.558167633, \"xmax\": 6222661.534602358, \"ymax\": 5125260.686856289}" - }, - 3705: { - "label": "NAD 1983 NSRS2007 StatePlane Wyoming West FIPS 4904", - "defaultExtent": "{\"xmin\": -4822661.534602356, \"ymin\": -13994797.558167633, \"xmax\": 6422661.534602358, \"ymax\": 5225260.686856289}" - }, - 3706: { - "label": "NAD 1983 NSRS2007 UTM Zone 59N", - "defaultExtent": "{\"xmin\": -5120763.76772398, \"ymin\": -9606785.534938088, \"xmax\": 6120763.767724008, \"ymax\": 9606785.534938097}" - }, - 3707: { - "label": "NAD 1983 NSRS2007 UTM Zone 60N", - "defaultExtent": "{\"xmin\": -5120763.767723984, \"ymin\": -9606785.534938088, \"xmax\": 6120763.767724008, \"ymax\": 9606785.534938097}" - }, - 3708: { - "label": "NAD 1983 NSRS2007 UTM Zone 1N", - "defaultExtent": "{\"xmin\": -5120763.767723977, \"ymin\": -9606785.534938088, \"xmax\": 6120763.767724008, \"ymax\": 9606785.534938097}" - }, - 3709: { - "label": "NAD 1983 NSRS2007 UTM Zone 2N", - "defaultExtent": "{\"xmin\": -5120763.767723977, \"ymin\": -9606785.534938088, \"xmax\": 6120763.767724008, \"ymax\": 9606785.534938097}" - }, - 3710: { - "label": "NAD 1983 NSRS2007 UTM Zone 3N", - "defaultExtent": "{\"xmin\": -5120763.767723984, \"ymin\": -9606785.534938088, \"xmax\": 6120763.767724008, \"ymax\": 9606785.534938097}" - }, - 3711: { - "label": "NAD 1983 NSRS2007 UTM Zone 4N", - "defaultExtent": "{\"xmin\": -5120763.767723977, \"ymin\": -9606785.534938088, \"xmax\": 6120763.767724011, \"ymax\": 9606785.534938097}" - }, - 3712: { - "label": "NAD 1983 NSRS2007 UTM Zone 5N", - "defaultExtent": "{\"xmin\": -5120763.767723977, \"ymin\": -9606785.534938088, \"xmax\": 6120763.767724008, \"ymax\": 9606785.534938097}" - }, - 3713: { - "label": "NAD 1983 NSRS2007 UTM Zone 6N", - "defaultExtent": "{\"xmin\": -5120763.767723984, \"ymin\": -9606785.534938088, \"xmax\": 6120763.767724008, \"ymax\": 9606785.534938097}" - }, - 3714: { - "label": "NAD 1983 NSRS2007 UTM Zone 7N", - "defaultExtent": "{\"xmin\": -5120763.767723977, \"ymin\": -9606785.534938088, \"xmax\": 6120763.767724011, \"ymax\": 9606785.534938097}" - }, - 3715: { - "label": "NAD 1983 NSRS2007 UTM Zone 8N", - "defaultExtent": "{\"xmin\": -5120761.968321789, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 3716: { - "label": "NAD 1983 NSRS2007 UTM Zone 9N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 3717: { - "label": "NAD 1983 NSRS2007 UTM Zone 10N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724002, \"ymax\": 9606785.534958888}" - }, - 3718: { - "label": "NAD 1983 NSRS2007 UTM Zone 11N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 3719: { - "label": "NAD 1983 NSRS2007 UTM Zone 12N", - "defaultExtent": "{\"xmin\": -5120763.767723998, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 3720: { - "label": "NAD 1983 NSRS2007 UTM Zone 13N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 3721: { - "label": "NAD 1983 NSRS2007 UTM Zone 14N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 3722: { - "label": "NAD 1983 NSRS2007 UTM Zone 15N", - "defaultExtent": "{\"xmin\": -5120763.767723998, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 3723: { - "label": "NAD 1983 NSRS2007 UTM Zone 16N", - "defaultExtent": "{\"xmin\": -5120763.767723998, \"ymin\": -9606785.534958893, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 3724: { - "label": "NAD 1983 NSRS2007 UTM Zone 17N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 3725: { - "label": "NAD 1983 NSRS2007 UTM Zone 18N", - "defaultExtent": "{\"xmin\": -5120763.767724002, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 3726: { - "label": "NAD 1983 NSRS2007 UTM Zone 19N", - "defaultExtent": "{\"xmin\": -5120763.767724002, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 3727: { - "label": "Reunion 1947 TM Reunion", - "defaultExtent": "{\"xmin\": -5463255.480734327, \"ymin\": -7224907.713616237, \"xmax\": 5783255.480734327, \"ymax\": 11996955.136522936}" - }, - 3728: { - "label": "NAD 1983 NSRS2007 StatePlane Ohio North FIPS 3401 Ft US", - "defaultExtent": "{\"xmin\": -118963473.76202032, \"ymin\": -96373454.64316761, \"xmax\": 122900473.76103735, \"ymax\": 81799950.4778867}" - }, - 3729: { - "label": "NAD 1983 NSRS2007 StatePlane Ohio South FIPS 3402 Ft US", - "defaultExtent": "{\"xmin\": -119670428.30066578, \"ymin\": -95612507.13411467, \"xmax\": 123607428.30085474, \"ymax\": 75915178.22644602}" - }, - 3730: { - "label": "NAD 1983 NSRS2007 StatePlane Wyoming East FIPS 4901 Ft US", - "defaultExtent": "{\"xmin\": -17790848.718107887, \"ymin\": -46242681.65542164, \"xmax\": 19103182.051441234, \"ymax\": 16815126.103461005}" - }, - 3731: { - "label": "NAD 1983 NSRS2007 StatePlane Wyoming E Central FIPS 4902 Ft US", - "defaultExtent": "{\"xmin\": -17134682.05144124, \"ymin\": -45914598.3220883, \"xmax\": 19759348.7181079, \"ymax\": 17143209.43679434}" - }, - 3732: { - "label": "NAD 1983 NSRS2007 StatePlane Wyoming W Central FIPS 4903 Ft US", - "defaultExtent": "{\"xmin\": -16478515.384774568, \"ymin\": -46242681.65542164, \"xmax\": 20415515.384774566, \"ymax\": 16815126.10346101}" - }, - 3733: { - "label": "NAD 1983 NSRS2007 StatePlane Wyoming West FIPS 4904 Ft US", - "defaultExtent": "{\"xmin\": -15822348.718107894, \"ymin\": -45914598.3220883, \"xmax\": 21071682.051441234, \"ymax\": 17143209.43679434}" - }, - 3734: { - "label": "NAD 1983 StatePlane Ohio North FIPS 3401 Feet", - "defaultExtent": "{\"xmin\": -118963473.76202032, \"ymin\": -96373454.64316761, \"xmax\": 122900473.76103735, \"ymax\": 81799950.4778867}" - }, - 3735: { - "label": "NAD 1983 StatePlane Ohio South FIPS 3402 Feet", - "defaultExtent": "{\"xmin\": -119670428.30066578, \"ymin\": -95612507.13411467, \"xmax\": 123607428.30085474, \"ymax\": 75915178.22644602}" - }, - 3736: { - "label": "NAD 1983 StatePlane Wyoming East FIPS 4901 Feet", - "defaultExtent": "{\"xmin\": -17790848.718107887, \"ymin\": -46242681.65542164, \"xmax\": 19103182.051441234, \"ymax\": 16815126.103461005}" - }, - 3737: { - "label": "NAD 1983 StatePlane Wyoming East Central FIPS 4902 Feet", - "defaultExtent": "{\"xmin\": -17134682.05144124, \"ymin\": -45914598.3220883, \"xmax\": 19759348.7181079, \"ymax\": 17143209.43679434}" - }, - 3738: { - "label": "NAD 1983 StatePlane Wyoming West Central FIPS 4903 Feet", - "defaultExtent": "{\"xmin\": -16478515.384774568, \"ymin\": -46242681.65542164, \"xmax\": 20415515.384774566, \"ymax\": 16815126.10346101}" - }, - 3739: { - "label": "NAD 1983 StatePlane Wyoming West FIPS 4904 Feet", - "defaultExtent": "{\"xmin\": -15822348.718107894, \"ymin\": -45914598.3220883, \"xmax\": 21071682.051441234, \"ymax\": 17143209.43679434}" - }, - 3740: { - "label": "NAD 1983 HARN UTM Zone 10N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724002, \"ymax\": 9606785.534958888}" - }, - 3741: { - "label": "NAD 1983 HARN UTM Zone 11N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 3742: { - "label": "NAD 1983 HARN UTM Zone 12N", - "defaultExtent": "{\"xmin\": -5120763.767723998, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 3743: { - "label": "NAD 1983 HARN UTM Zone 13N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 3744: { - "label": "NAD 1983 HARN UTM Zone 14N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 3745: { - "label": "NAD 1983 HARN UTM Zone 15N", - "defaultExtent": "{\"xmin\": -5120763.767723998, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 3746: { - "label": "NAD 1983 HARN UTM Zone 16N", - "defaultExtent": "{\"xmin\": -5120763.767723998, \"ymin\": -9606785.534958893, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 3747: { - "label": "NAD 1983 HARN UTM Zone 17N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 3748: { - "label": "NAD 1983 HARN UTM Zone 18N", - "defaultExtent": "{\"xmin\": -5120763.767724002, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 3749: { - "label": "NAD 1983 HARN UTM Zone 19N", - "defaultExtent": "{\"xmin\": -5120763.767724002, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 3750: { - "label": "NAD 1983 HARN UTM Zone 4N", - "defaultExtent": "{\"xmin\": -5120763.767723977, \"ymin\": -9606785.534938088, \"xmax\": 6120763.767724011, \"ymax\": 9606785.534938097}" - }, - 3751: { - "label": "NAD 1983 HARN UTM Zone 5N", - "defaultExtent": "{\"xmin\": -5120763.767723977, \"ymin\": -9606785.534938088, \"xmax\": 6120763.767724008, \"ymax\": 9606785.534938097}" - }, - 3753: { - "label": "NAD 1983 HARN StatePlane Ohio North FIPS 3401 Feet", - "defaultExtent": "{\"xmin\": -118963473.76202032, \"ymin\": -96373454.64316761, \"xmax\": 122900473.76103735, \"ymax\": 81799950.4778867}" - }, - 3754: { - "label": "NAD 1983 HARN StatePlane Ohio South FIPS 3402 Feet", - "defaultExtent": "{\"xmin\": -119670428.30066578, \"ymin\": -95612507.13411467, \"xmax\": 123607428.30085474, \"ymax\": 75915178.22644602}" - }, - 3755: { - "label": "NAD 1983 HARN StatePlane Wyoming East FIPS 4901 Feet", - "defaultExtent": "{\"xmin\": -17790848.718107887, \"ymin\": -46242681.65542164, \"xmax\": 19103182.051441234, \"ymax\": 16815126.103461005}" - }, - 3756: { - "label": "NAD 1983 HARN StatePlane Wyoming East Central FIPS 4902 Feet", - "defaultExtent": "{\"xmin\": -17134682.05144124, \"ymin\": -45914598.3220883, \"xmax\": 19759348.7181079, \"ymax\": 17143209.43679434}" - }, - 3757: { - "label": "NAD 1983 HARN StatePlane Wyoming West Central FIPS 4903 Feet", - "defaultExtent": "{\"xmin\": -16478515.384774568, \"ymin\": -46242681.65542164, \"xmax\": 20415515.384774566, \"ymax\": 16815126.10346101}" - }, - 3758: { - "label": "NAD 1983 HARN StatePlane Wyoming West FIPS 4904 Feet", - "defaultExtent": "{\"xmin\": -15822348.718107894, \"ymin\": -45914598.3220883, \"xmax\": 21071682.051441234, \"ymax\": 17143209.43679434}" - }, - 3759: { - "label": "NAD 1983 StatePlane Hawaii 3 FIPS 5103 Feet", - "defaultExtent": "{\"xmin\": -16807567.2469486, \"ymin\": -39212651.73552266, \"xmax\": 20088400.580282014, \"ymax\": 23848466.765052166}" - }, - 3760: { - "label": "NAD 1983 HARN StatePlane Hawaii 3 FIPS 5103 Feet", - "defaultExtent": "{\"xmin\": -16807567.2469486, \"ymin\": -39212651.73552266, \"xmax\": 20088400.580282014, \"ymax\": 23848466.765052166}" - }, - 3761: { - "label": "NAD 1983 CSRS UTM Zone 22N", - "defaultExtent": "{\"xmin\": -5120763.767724002, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 3762: { - "label": "WGS 1984 South Georgia Lambert", - "defaultExtent": "{\"xmin\": -35771540.893250376, \"ymin\": -34275884.13005282, \"xmax\": 35771540.89683657, \"ymax\": 31260595.35478853}" - }, - 3763: { - "label": "ETRS 1989 Portugal TM06", - "defaultExtent": "{\"xmin\": -5623012.972913165, \"ymin\": -14003325.059731668, \"xmax\": 5623012.9729131665, \"ymax\": 5217934.514015612}" - }, - 3764: { - "label": "NZGD 2000 Chatham Island Circuit", - "defaultExtent": "{\"xmin\": -5223012.97291314, \"ymin\": -3936807.417256669, \"xmax\": 6023012.972913178, \"ymax\": 15284452.156448998}" - }, - 3765: { - "label": "HTRS96 Croatia TM", - "defaultExtent": "{\"xmin\": -5122450.671615874, \"ymin\": -9609668.723894954, \"xmax\": 6122450.671615874, \"ymax\": 9609668.72389495}" - }, - 3766: { - "label": "HTRS96 Croatia LCC", - "defaultExtent": "{\"xmin\": -36489938.021725655, \"ymin\": -24578612.035197884, \"xmax\": 36489938.02156101, \"ymax\": 33450511.434904896}" - }, - 3767: { - "label": "HTRS96 UTM Zone 33N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 3768: { - "label": "HTRS96 UTM Zone 34N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 3769: { - "label": "Bermuda 1957 UTM Zone 20N", - "defaultExtent": "{\"xmin\": -5120880.632721142, \"ymin\": -9606689.106319863, \"xmax\": 6120880.632721142, \"ymax\": 9606689.106319858}" - }, - 3770: { - "label": "Bermuda 2000 National Grid", - "defaultExtent": "{\"xmin\": -5073012.972888589, \"ymin\": -13052482.2212188, \"xmax\": 6173012.972888589, \"ymax\": 6168777.3527058065}" - }, - 3771: { - "label": "NAD 1927 3TM 111", - "defaultExtent": "{\"xmin\": -5622567.571686542, \"ymin\": -9609572.266315758, \"xmax\": 5622567.571686544, \"ymax\": 9609572.266315753}" - }, - 3772: { - "label": "NAD 1927 3TM 114", - "defaultExtent": "{\"xmin\": -5622567.571686544, \"ymin\": -9609572.266315758, \"xmax\": 5622567.571686546, \"ymax\": 9609572.266315753}" - }, - 3773: { - "label": "NAD 1927 3TM 117", - "defaultExtent": "{\"xmin\": -5622567.571686544, \"ymin\": -9609572.266315758, \"xmax\": 5622567.571686544, \"ymax\": 9609572.266315753}" - }, - 3775: { - "label": "NAD 1983 3TM 111", - "defaultExtent": "{\"xmin\": -5622450.671615872, \"ymin\": -9609668.723894954, \"xmax\": 5622450.671615874, \"ymax\": 9609668.72389495}" - }, - 3776: { - "label": "NAD 1983 3TM 114", - "defaultExtent": "{\"xmin\": -5622450.671615874, \"ymin\": -9609668.723894954, \"xmax\": 5622450.671615875, \"ymax\": 9609668.72389495}" - }, - 3777: { - "label": "NAD 1983 3TM 117", - "defaultExtent": "{\"xmin\": -5622450.671615874, \"ymin\": -9609668.723894954, \"xmax\": 5622450.671615874, \"ymax\": 9609668.72389495}" - }, - 3779: { - "label": "NAD 1983 CSRS 3TM 111", - "defaultExtent": "{\"xmin\": -5622450.671615872, \"ymin\": -9609668.723894954, \"xmax\": 5622450.671615874, \"ymax\": 9609668.72389495}" - }, - 3780: { - "label": "NAD 1983 CSRS 3TM 114", - "defaultExtent": "{\"xmin\": -5622450.671615874, \"ymin\": -9609668.723894954, \"xmax\": 5622450.671615875, \"ymax\": 9609668.72389495}" - }, - 3781: { - "label": "NAD 1983 CSRS 3TM 117", - "defaultExtent": "{\"xmin\": -5622450.671615874, \"ymin\": -9609668.723894954, \"xmax\": 5622450.671615874, \"ymax\": 9609668.72389495}" - }, - 3783: { - "label": "Pitcairn 2006 Pitcairn TM 2006", - "defaultExtent": "{\"xmin\": -5608812.972888589, \"ymin\": -6821481.812222607, \"xmax\": 5637212.972888589, \"ymax\": 12399777.761702001}" - }, - 3784: { - "label": "Pitcairn 1967 UTM Zone 9S", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": 392912.94750043936, \"xmax\": 6121006.178542033, \"ymax\": 19607087.052499555}" - }, - 3788: { - "label": "NZGD 2000 Auckland Islands TM 2000", - "defaultExtent": "{\"xmin\": -2123012.972913149, \"ymin\": 389370.2131471727, \"xmax\": 9123012.972913172, \"ymax\": 19610629.786852837}" - }, - 3789: { - "label": "NZGD 2000 Campbell Island TM 2000", - "defaultExtent": "{\"xmin\": -2123012.972913145, \"ymin\": 389370.2131471727, \"xmax\": 9123012.972913172, \"ymax\": 19610629.786852837}" - }, - 3790: { - "label": "NZGD 2000 Antipodes Islands TM 2000", - "defaultExtent": "{\"xmin\": -2123012.972913149, \"ymin\": 389370.2131471727, \"xmax\": 9123012.972913172, \"ymax\": 19610629.786852837}" - }, - 3791: { - "label": "NZGD 2000 Raoul Island TM 2000", - "defaultExtent": "{\"xmin\": -2123012.972913149, \"ymin\": 389370.2131471727, \"xmax\": 9123012.972913172, \"ymax\": 19610629.786852837}" - }, - 3793: { - "label": "NZGD 2000 Chatham Islands TM 2000", - "defaultExtent": "{\"xmin\": -2123012.9729131404, \"ymin\": 389370.2131471727, \"xmax\": 9123012.972913178, \"ymax\": 19610629.786852837}" - }, - 3794: { - "label": "Slovenia 1996 Slovene National Grid", - "defaultExtent": "{\"xmin\": -5122450.671615874, \"ymin\": -14609668.723894954, \"xmax\": 6122450.671615874, \"ymax\": 4609668.72389495}" - }, - 3797: { - "label": "NAD 1927 MTQ Lambert", - "defaultExtent": "{\"xmin\": -35385822.53427844, \"ymin\": -29992083.781057406, \"xmax\": 36985822.53421808, \"ymax\": 31236581.701621097}" - }, - 3798: { - "label": "NAD 1983 MTQ Lambert", - "defaultExtent": "{\"xmin\": -35387995.95542935, \"ymin\": -29994435.378044788, \"xmax\": 36987995.9553804, \"ymax\": 31237906.01002912}" - }, - 3799: { - "label": "NAD 1983 CSRS MTQ Lambert", - "defaultExtent": "{\"xmin\": -35387995.95542935, \"ymin\": -29994435.378044788, \"xmax\": 36987995.9553804, \"ymax\": 31237906.01002912}" - }, - 3800: { - "label": "NAD 1927 3TM 120", - "defaultExtent": "{\"xmin\": -5622567.571686544, \"ymin\": -9609572.266315758, \"xmax\": 5622567.571686544, \"ymax\": 9609572.266315753}" - }, - 3801: { - "label": "NAD 1983 3TM 120", - "defaultExtent": "{\"xmin\": -5622450.671615874, \"ymin\": -9609668.723894954, \"xmax\": 5622450.671615874, \"ymax\": 9609668.72389495}" - }, - 3802: { - "label": "NAD 1983 CSRS 3TM 120", - "defaultExtent": "{\"xmin\": -5622450.671615874, \"ymin\": -9609668.723894954, \"xmax\": 5622450.671615874, \"ymax\": 9609668.72389495}" - }, - 3812: { - "label": "Belge Lambert 2008", - "defaultExtent": "{\"xmin\": -35372906.01739936, \"ymin\": -30122335.020402987, \"xmax\": 36671562.00247804, \"ymax\": 33043110.907976475}" - }, - 3814: { - "label": "NAD 1983 Mississippi TM", - "defaultExtent": "{\"xmin\": -5122076.741253177, \"ymin\": -11905728.699493717, \"xmax\": 6122076.741253175, \"ymax\": 7312330.534534532}" - }, - 3815: { - "label": "NAD 1983 HARN Mississippi TM", - "defaultExtent": "{\"xmin\": -5122076.741253177, \"ymin\": -11905728.699493717, \"xmax\": 6122076.741253175, \"ymax\": 7312330.534534532}" - }, - 3816: { - "label": "NAD 1983 NSRS2007 Mississippi TM", - "defaultExtent": "{\"xmin\": -5122076.741253177, \"ymin\": -11905728.699493717, \"xmax\": 6122076.741253175, \"ymax\": 7312330.534534532}" - }, - 3819: { - "label": "GCS HD1909", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 3821: { - "label": "GCS TWD 1967", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 3824: { - "label": "GCS TWD 1997", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 3825: { - "label": "TWD 1997 TM Penghu", - "defaultExtent": "{\"xmin\": -5372450.671615874, \"ymin\": -9609668.723894954, \"xmax\": 5872450.671615874, \"ymax\": 9609668.72389495}" - }, - 3826: { - "label": "TWD 1997 TM Taiwan", - "defaultExtent": "{\"xmin\": -5372450.671615874, \"ymin\": -9609668.723894954, \"xmax\": 5872450.671615874, \"ymax\": 9609668.72389495}" - }, - 3827: { - "label": "TWD 1967 TM Penghu", - "defaultExtent": "{\"xmin\": -5372471.067951179, \"ymin\": -9609702.939063312, \"xmax\": 5872471.067951179, \"ymax\": 9609702.939063307}" - }, - 3828: { - "label": "TWD 1967 TM Taiwan", - "defaultExtent": "{\"xmin\": -5372471.067951179, \"ymin\": -9609702.939063312, \"xmax\": 5872471.067951179, \"ymax\": 9609702.939063307}" - }, - 3829: { - "label": "Hu Tzu Shan UTM Zone 51N", - "defaultExtent": "{\"xmin\": -5121006.178542035, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 3832: { - "label": "WGS 1984 PDC Mercator", - "defaultExtent": "{\"xmin\": -20037507.06717919, \"ymin\": -19994873.97389375, \"xmax\": 20037507.067179203, \"ymax\": 19994873.97423248}" - }, - 3833: { - "label": "Pulkovo 1942 Adj 1958 GK Zone 2", - "defaultExtent": "{\"xmin\": -3123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 8123107.467526717, \"ymax\": 9610795.116133094}" - }, - 3834: { - "label": "Pulkovo 1942 Adj 1983 GK Zone 2", - "defaultExtent": "{\"xmin\": -3123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 8123107.467526717, \"ymax\": 9610795.116133094}" - }, - 3835: { - "label": "Pulkovo 1942 Adj 1983 GK Zone 3", - "defaultExtent": "{\"xmin\": -2123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 9123107.467526717, \"ymax\": 9610795.116133094}" - }, - 3836: { - "label": "Pulkovo 1942 Adj 1983 GK Zone 4", - "defaultExtent": "{\"xmin\": -1123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 10123107.467526717, \"ymax\": 9610795.116133094}" - }, - 3837: { - "label": "Pulkovo 1942 Adj 1958 3 Degree GK Zone 3", - "defaultExtent": "{\"xmin\": -2123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 9123107.467526717, \"ymax\": 9610795.116133094}" - }, - 3838: { - "label": "Pulkovo 1942 Adj 1958 3 Degree GK Zone 4", - "defaultExtent": "{\"xmin\": -1123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 10123107.467526717, \"ymax\": 9610795.116133094}" - }, - 3839: { - "label": "Pulkovo 1942 Adj 1958 3 Degree GK Zone 9", - "defaultExtent": "{\"xmin\": 3876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 15123107.467526717, \"ymax\": 9610795.116133094}" - }, - 3840: { - "label": "Pulkovo 1942 Adj 1958 3 Degree GK Zone 10", - "defaultExtent": "{\"xmin\": 4876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 16123107.467526715, \"ymax\": 9610795.116133094}" - }, - 3841: { - "label": "Pulkovo 1942 Adj 1983 3 Degree GK Zone 6", - "defaultExtent": "{\"xmin\": 876892.5324732829, \"ymin\": -9610795.116133098, \"xmax\": 12123107.467526717, \"ymax\": 9610795.116133094}" - }, - 3844: { - "label": "Pulkovo 1942 Adj 58 Stereo 70", - "defaultExtent": "{\"xmin\": -30221780.112340685, \"ymin\": -30036352.66697563, \"xmax\": 31221780.10821221, \"ymax\": 31204134.735311333}" - }, - 3845: { - "label": "SWEREF99 RT90 7.5 gon V emulation", - "defaultExtent": "{\"xmin\": -4123021.569991002, \"ymin\": -9611354.732652362, \"xmax\": 7123071.8519910015, \"ymax\": 9610020.168652358}" - }, - 3846: { - "label": "SWEREF99 RT90 5 gon V emulation", - "defaultExtent": "{\"xmin\": -4123000.891388408, \"ymin\": -9611352.658526406, \"xmax\": 7123090.2813884085, \"ymax\": 9610018.398526398}" - }, - 3847: { - "label": "SWEREF99 RT90 2.5 gon V emulation", - "defaultExtent": "{\"xmin\": -4122980.245365465, \"ymin\": -9611351.415813295, \"xmax\": 7123108.7933654655, \"ymax\": 9610015.993813291}" - }, - 3848: { - "label": "SWEREF99 RT90 0 gon emulation", - "defaultExtent": "{\"xmin\": -4122959.8161832187, \"ymin\": -9611350.52827449, \"xmax\": 7123126.858183218, \"ymax\": 9610012.840274487}" - }, - 3849: { - "label": "SWEREF99 RT90 2.5 gon O emulation", - "defaultExtent": "{\"xmin\": -4122939.4475806244, \"ymin\": -9611350.468148533, \"xmax\": 7123144.977580625, \"ymax\": 9610009.056148529}" - }, - 3850: { - "label": "SWEREF99 RT90 5 gon O emulation", - "defaultExtent": "{\"xmin\": -4122918.679676733, \"ymin\": -9611349.435959598, \"xmax\": 7123162.371676733, \"ymax\": 9610004.321959592}" - }, - 3851: { - "label": "NZGD 2000 NZ Continental Shelf 2000", - "defaultExtent": "{\"xmin\": -33815688.62250177, \"ymin\": -17707159.95540201, \"xmax\": 39815688.62250275, \"ymax\": 36486181.81613456}" - }, - 3852: { - "label": "RSRGD2000 DGLC2000", - "defaultExtent": "{\"xmin\": -32993972.019919436, \"ymin\": -33415712.795667734, \"xmax\": 33993972.01989764, \"ymax\": 33493972.016104672}" - }, - 3854: { - "label": "SWEREF99 County ST74", - "defaultExtent": "{\"xmin\": -5522802.4546290785, \"ymin\": -16111202.431062495, \"xmax\": 5723167.935829078, \"ymax\": 3109962.18966249}" - }, - 3857: { - "label": "WGS 1984 Web Mercator Auxiliary Sphere", - "defaultExtent": "{\"xmin\": -20037507.0671618, \"ymin\": -20037507.0671618, \"xmax\": 20037507.0671618, \"ymax\": 20037507.0671618}" - }, - 3873: { - "label": "ETRS 1989 GK19FIN", - "defaultExtent": "{\"xmin\": 13876987.027086835, \"ymin\": -9610629.786873642, \"xmax\": 25123012.972913165, \"ymax\": 9610629.786873637}" - }, - 3874: { - "label": "ETRS 1989 GK20FIN", - "defaultExtent": "{\"xmin\": 14876987.027086835, \"ymin\": -9610629.786873642, \"xmax\": 26123012.972913165, \"ymax\": 9610629.786873637}" - }, - 3875: { - "label": "ETRS 1989 GK21FIN", - "defaultExtent": "{\"xmin\": 15876987.027086835, \"ymin\": -9610629.786873642, \"xmax\": 27123012.972913165, \"ymax\": 9610629.786873637}" - }, - 3876: { - "label": "ETRS 1989 GK22FIN", - "defaultExtent": "{\"xmin\": 16876987.027086835, \"ymin\": -9610629.786873642, \"xmax\": 28123012.97291317, \"ymax\": 9610629.786873637}" - }, - 3877: { - "label": "ETRS 1989 GK23FIN", - "defaultExtent": "{\"xmin\": 17876987.027086835, \"ymin\": -9610629.786873642, \"xmax\": 29123012.97291316, \"ymax\": 9610629.786873637}" - }, - 3878: { - "label": "ETRS 1989 GK24FIN", - "defaultExtent": "{\"xmin\": 18876987.027086835, \"ymin\": -9610629.786873642, \"xmax\": 30123012.972913165, \"ymax\": 9610629.786873637}" - }, - 3879: { - "label": "ETRS 1989 GK25FIN", - "defaultExtent": "{\"xmin\": 19876987.027086835, \"ymin\": -9610629.786873642, \"xmax\": 31123012.972913165, \"ymax\": 9610629.786873637}" - }, - 3880: { - "label": "ETRS 1989 GK26FIN", - "defaultExtent": "{\"xmin\": 20876987.027086835, \"ymin\": -9610629.786873642, \"xmax\": 32123012.972913165, \"ymax\": 9610629.786873637}" - }, - 3881: { - "label": "ETRS 1989 GK27FIN", - "defaultExtent": "{\"xmin\": 21876987.027086835, \"ymin\": -9610629.786873642, \"xmax\": 33123012.972913165, \"ymax\": 9610629.786873637}" - }, - 3882: { - "label": "ETRS 1989 GK28FIN", - "defaultExtent": "{\"xmin\": 22876987.027086835, \"ymin\": -9610629.786873642, \"xmax\": 34123012.97291316, \"ymax\": 9610629.786873637}" - }, - 3883: { - "label": "ETRS 1989 GK29FIN", - "defaultExtent": "{\"xmin\": 23876987.027086835, \"ymin\": -9610629.786873642, \"xmax\": 35123012.97291316, \"ymax\": 9610629.786873637}" - }, - 3884: { - "label": "ETRS 1989 GK30FIN", - "defaultExtent": "{\"xmin\": 24876987.027086835, \"ymin\": -9610629.786873642, \"xmax\": 36123012.97291316, \"ymax\": 9610629.786873637}" - }, - 3885: { - "label": "ETRS 1989 GK31FIN", - "defaultExtent": "{\"xmin\": 25876987.027086835, \"ymin\": -9610629.786873642, \"xmax\": 37123012.97291317, \"ymax\": 9610629.786873637}" - }, - 3889: { - "label": "GCS IGRS", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 3890: { - "label": "IGRS UTM Zone 37N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767723999, \"ymax\": 9606785.534958888}" - }, - 3891: { - "label": "IGRS UTM Zone 38N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 3892: { - "label": "IGRS UTM Zone 39N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724002, \"ymax\": 9606785.534958888}" - }, - 3893: { - "label": "ED 1950 Iraq National Grid", - "defaultExtent": "{\"xmin\": -4819881.527445886, \"ymin\": -12815464.346068703, \"xmax\": 6419881.527445884, \"ymax\": 6394865.386360388}" - }, - 3906: { - "label": "GCS MGI 1901", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 3907: { - "label": "MGI 1901 Balkans 5", - "defaultExtent": "{\"xmin\": -121783.47806765512, \"ymin\": -9608608.17013799, \"xmax\": 11121783.478067655, \"ymax\": 9608608.170137983}" - }, - 3908: { - "label": "MGI 1901 Balkans 6", - "defaultExtent": "{\"xmin\": 878216.5219323449, \"ymin\": -9608608.17013799, \"xmax\": 12121783.478067655, \"ymax\": 9608608.170137983}" - }, - 3909: { - "label": "MGI 1901 Balkans 7", - "defaultExtent": "{\"xmin\": 1878216.521932345, \"ymin\": -9608608.17013799, \"xmax\": 13121783.478067655, \"ymax\": 9608608.170137983}" - }, - 3910: { - "label": "MGI 1901 Balkans 8", - "defaultExtent": "{\"xmin\": 2878216.521932345, \"ymin\": -9608608.17013799, \"xmax\": 14121783.478067655, \"ymax\": 9608608.170137983}" - }, - 3911: { - "label": "MGI 1901 Slovenia Grid", - "defaultExtent": "{\"xmin\": -5121783.478067655, \"ymin\": -9608608.17013799, \"xmax\": 6121783.478067655, \"ymax\": 9608608.170137983}" - }, - 3912: { - "label": "MGI 1901 Slovene National Grid", - "defaultExtent": "{\"xmin\": -5121783.478067655, \"ymin\": -14608608.17013799, \"xmax\": 6121783.478067655, \"ymax\": 4608608.170137983}" - }, - 3920: { - "label": "Puerto Rico UTM Zone 20N", - "defaultExtent": "{\"xmin\": -5120880.632721142, \"ymin\": -9606689.106319863, \"xmax\": 6120880.632721142, \"ymax\": 9606689.106319858}" - }, - 3942: { - "label": "RGF 1993 CC42", - "defaultExtent": "{\"xmin\": -35051448.18907783, \"ymin\": -28457980.686106548, \"xmax\": 38451448.18895528, \"ymax\": 26916933.26982878}" - }, - 3943: { - "label": "RGF 1993 CC43", - "defaultExtent": "{\"xmin\": -34943779.29521661, \"ymin\": -27594174.63047944, \"xmax\": 38343779.29558745, \"ymax\": 28880082.19110097}" - }, - 3944: { - "label": "RGF 1993 CC44", - "defaultExtent": "{\"xmin\": -34843552.01319313, \"ymin\": -26728860.3200193, \"xmax\": 38243552.013392776, \"ymax\": 30797212.13740722}" - }, - 3945: { - "label": "RGF 1993 CC45", - "defaultExtent": "{\"xmin\": -34749950.904950865, \"ymin\": -25861843.033431847, \"xmax\": 38149950.905173525, \"ymax\": 32667699.001975343}" - }, - 3946: { - "label": "RGF 1993 CC46", - "defaultExtent": "{\"xmin\": -34662214.54416548, \"ymin\": -24992928.906756792, \"xmax\": 38062214.544329, \"ymax\": 34491103.94133879}" - }, - 3947: { - "label": "RGF 1993 CC47", - "defaultExtent": "{\"xmin\": -34579629.40122977, \"ymin\": -24121924.49784196, \"xmax\": 37979629.40116371, \"ymax\": 36267168.403163895}" - }, - 3948: { - "label": "RGF 1993 CC48", - "defaultExtent": "{\"xmin\": -34501524.472083144, \"ymin\": -23248636.385692276, \"xmax\": 37901524.471872576, \"ymax\": 37995808.18064996}" - }, - 3949: { - "label": "RGF 1993 CC49", - "defaultExtent": "{\"xmin\": -34427266.54431524, \"ymin\": -22372870.79910636, \"xmax\": 37827266.54419748, \"ymax\": 39677106.57761696}" - }, - 3950: { - "label": "RGF 1993 CC50", - "defaultExtent": "{\"xmin\": -34356256.0096544, \"ymin\": -21494433.27071369, \"xmax\": 37756256.00955687, \"ymax\": 41311306.77140893}" - }, - 3968: { - "label": "NAD 1983 Virginia Lambert", - "defaultExtent": "{\"xmin\": -37232654.40323075, \"ymin\": -28884490.203028552, \"xmax\": 37232654.40269785, \"ymax\": 21961257.357331395}" - }, - 3969: { - "label": "NAD 1983 HARN Virginia Lambert", - "defaultExtent": "{\"xmin\": -37232654.40323075, \"ymin\": -28884490.203028552, \"xmax\": 37232654.40269785, \"ymax\": 21961257.357331395}" - }, - 3970: { - "label": "NAD 1983 NSRS2007 Virginia Lambert", - "defaultExtent": "{\"xmin\": -37232654.40323075, \"ymin\": -28884490.203028552, \"xmax\": 37232654.40269785, \"ymax\": 21961257.357331395}" - }, - 3973: { - "label": "WGS 1984 EASE Grid North", - "defaultExtent": "{\"xmin\": -12730027.198090494, \"ymin\": -12730027.198090555, \"xmax\": 12730027.198090494, \"ymax\": 12730027.1980903}" - }, - 3974: { - "label": "WGS 1984 EASE Grid South", - "defaultExtent": "{\"xmin\": -12730027.198090494, \"ymin\": -12730027.1980903, \"xmax\": 12730027.198090494, \"ymax\": 12730027.198090555}" - }, - 3975: { - "label": "WGS 1984 EASE Grid Global", - "defaultExtent": "{\"xmin\": -17367529.33951001, \"ymin\": -7314614.058496474, \"xmax\": 17367529.33951001, \"ymax\": 7314614.058496474}" - }, - 3976: { - "label": "WGS 1984 NSIDC Sea Ice Polar Stereographic South", - "defaultExtent": "{\"xmin\": -30645181.31098572, \"ymin\": -30645181.31098526, \"xmax\": 30645181.31098572, \"ymax\": 30645181.31098587}" - }, - 3978: { - "label": "NAD 1983 Canada Atlas Lambert", - "defaultExtent": "{\"xmin\": -34655646.927964896, \"ymin\": -30001471.663722225, \"xmax\": 34655646.92812155, \"ymax\": 37640132.21150307}" - }, - 3979: { - "label": "NAD 1983 CSRS Canada Atlas Lambert", - "defaultExtent": "{\"xmin\": -34655646.927964896, \"ymin\": -30001471.663722225, \"xmax\": 34655646.92812155, \"ymax\": 37640132.21150307}" - }, - 3986: { - "label": "Katanga 1955 Katanga Gauss Zone A", - "defaultExtent": "{\"xmin\": -5423129.884675011, \"ymin\": -8115345.729631577, \"xmax\": 5823129.88467501, \"ymax\": 11105720.909663863}" - }, - 3987: { - "label": "Katanga 1955 Katanga Gauss Zone B", - "defaultExtent": "{\"xmin\": -5423129.884675011, \"ymin\": -8115345.729631577, \"xmax\": 5823129.884675011, \"ymax\": 11105720.909663863}" - }, - 3988: { - "label": "Katanga 1955 Katanga Gauss Zone C", - "defaultExtent": "{\"xmin\": -5423129.884675011, \"ymin\": -8115345.729631577, \"xmax\": 5823129.884675011, \"ymax\": 11105720.909663863}" - }, - 3989: { - "label": "Katanga 1955 Katanga Gauss Zone D", - "defaultExtent": "{\"xmin\": -5423129.884675011, \"ymin\": -8115345.729631577, \"xmax\": 5823129.88467501, \"ymax\": 11105720.909663863}" - }, - 3991: { - "label": "Puerto Rico StatePlane Puerto Rico FIPS 5201", - "defaultExtent": "{\"xmin\": -124897210.51208878, \"ymin\": -87003780.852594, \"xmax\": 125897210.51239304, \"ymax\": 49074694.809181586}" - }, - 3992: { - "label": "Puerto Rico StatePlane Virgin Islands St Croix FIPS 5202", - "defaultExtent": "{\"xmin\": -124897210.51208878, \"ymin\": -86903780.852594, \"xmax\": 125897210.51239304, \"ymax\": 49174694.809181586}" - }, - 3994: { - "label": "WGS 1984 Mercator 41", - "defaultExtent": "{\"xmin\": -15144332.356427835, \"ymin\": -15112110.29746947, \"xmax\": 15144332.356427845, \"ymax\": 15112110.297725484}" - }, - 3995: { - "label": "WGS 1984 Arctic Polar Stereographic", - "defaultExtent": "{\"xmin\": -30635955.947272837, \"ymin\": -30635955.947272986, \"xmax\": 30635955.947272837, \"ymax\": 30635955.947272375}" - }, - 3996: { - "label": "WGS 1984 IBCAO Polar Stereographic", - "defaultExtent": "{\"xmin\": -30603405.547592234, \"ymin\": -30603405.547592383, \"xmax\": 30603405.547592234, \"ymax\": 30603405.547591772}" - }, - 3997: { - "label": "WGS 1984 Dubai Local TM", - "defaultExtent": "{\"xmin\": -5123012.972888589, \"ymin\": -9610629.786962306, \"xmax\": 6123012.97288859, \"ymax\": 9610629.7869623}" - }, - 4001: { - "label": "GCS Airy 1830", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4002: { - "label": "GCS Airy Modified", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4003: { - "label": "GCS Australian", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4004: { - "label": "GCS Bessel 1841", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4005: { - "label": "GCS Bessel Modified", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4006: { - "label": "GCS Bessel Namibia", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4007: { - "label": "GCS Clarke 1858", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4008: { - "label": "GCS Clarke 1866", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4009: { - "label": "GCS Clarke 1866 Michigan", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4010: { - "label": "GCS Clarke 1880 Benoit", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4011: { - "label": "GCS Clarke 1880 IGN", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4012: { - "label": "GCS Clarke 1880 RGS", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4013: { - "label": "GCS Clarke 1880 Arc", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4014: { - "label": "GCS Clarke 1880 SGA", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4015: { - "label": "GCS Everest Adj 1937", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4016: { - "label": "GCS Everest def 1967", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4018: { - "label": "GCS Everest Modified", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4019: { - "label": "GCS GRS 1980", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4020: { - "label": "GCS Helmert 1906", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4021: { - "label": "GCS Indonesian", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4022: { - "label": "GCS International 1924", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4023: { - "label": "GCS MOLDREF99", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4024: { - "label": "GCS Krasovsky 1940", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4025: { - "label": "GCS NWL 9D", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4026: { - "label": "MOLDREF99 Moldova TM", - "defaultExtent": "{\"xmin\": -5422675.5921347905, \"ymin\": -14610053.14908643, \"xmax\": 5822675.5921347905, \"ymax\": 4610053.149086425}" - }, - 4027: { - "label": "GCS Plessis 1817", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4028: { - "label": "GCS Struve 1860", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4029: { - "label": "GCS War Office", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4031: { - "label": "GCS GEM 10C", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4032: { - "label": "GCS OSU 86F", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4033: { - "label": "GCS OSU 91A", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4034: { - "label": "GCS Clarke 1880", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4035: { - "label": "GCS Sphere", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4036: { - "label": "GCS GRS 1967", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4037: { - "label": "WGS 1984 TMzn35N", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699434, \"ymax\": 9606785.535047516}" - }, - 4038: { - "label": "WGS 1984 TMzn36N", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": -9606785.535047522, \"xmax\": 6120763.7676994335, \"ymax\": 9606785.535047516}" - }, - 4042: { - "label": "GCS Everest 1830", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4044: { - "label": "GCS Everest def 1962", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4045: { - "label": "GCS Everest def 1975", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4046: { - "label": "GCS RGRDC 2005", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4047: { - "label": "GCS Sphere GRS 1980 Authalic", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4048: { - "label": "RGRDC 2005 Congo TM Zone 12", - "defaultExtent": "{\"xmin\": -5122450.671615874, \"ymin\": 390331.2761050463, \"xmax\": 6122450.671615874, \"ymax\": 19609668.72389495}" - }, - 4049: { - "label": "RGRDC 2005 Congo TM Zone 14", - "defaultExtent": "{\"xmin\": -5122450.671615874, \"ymin\": 390331.2761050463, \"xmax\": 6122450.6716158725, \"ymax\": 19609668.72389495}" - }, - 4050: { - "label": "RGRDC 2005 Congo TM Zone 16", - "defaultExtent": "{\"xmin\": -5122450.671615874, \"ymin\": 390331.2761050463, \"xmax\": 6122450.671615874, \"ymax\": 19609668.72389495}" - }, - 4051: { - "label": "RGRDC 2005 Congo TM Zone 18", - "defaultExtent": "{\"xmin\": -5122450.671615874, \"ymin\": 390331.2761050463, \"xmax\": 6122450.671615874, \"ymax\": 19609668.72389495}" - }, - 4052: { - "label": "GCS Sphere Clarke 1866 Authalic", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4053: { - "label": "GCS Sphere International 1924 Authalic", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4054: { - "label": "GCS Hughes 1980", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4056: { - "label": "RGRDC 2005 Congo TM Zone 20", - "defaultExtent": "{\"xmin\": -5122450.671615874, \"ymin\": 390331.2761050463, \"xmax\": 6122450.671615874, \"ymax\": 19609668.72389495}" - }, - 4057: { - "label": "RGRDC 2005 Congo TM Zone 22", - "defaultExtent": "{\"xmin\": -5122450.671615874, \"ymin\": 390331.2761050463, \"xmax\": 6122450.671615875, \"ymax\": 19609668.72389495}" - }, - 4058: { - "label": "RGRDC 2005 Congo TM Zone 24", - "defaultExtent": "{\"xmin\": -5122450.671615874, \"ymin\": 390331.2761050463, \"xmax\": 6122450.6716158725, \"ymax\": 19609668.72389495}" - }, - 4059: { - "label": "RGRDC 2005 Congo TM Zone 26", - "defaultExtent": "{\"xmin\": -5122450.671615874, \"ymin\": 390331.2761050463, \"xmax\": 6122450.671615874, \"ymax\": 19609668.72389495}" - }, - 4060: { - "label": "RGRDC 2005 Congo TM Zone 28", - "defaultExtent": "{\"xmin\": -5122450.671615874, \"ymin\": 390331.2761050463, \"xmax\": 6122450.671615874, \"ymax\": 19609668.72389495}" - }, - 4061: { - "label": "RGRDC 2005 UTM Zone 33S", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": 393214.46504110843, \"xmax\": 6120763.767724001, \"ymax\": 19606785.534958888}" - }, - 4062: { - "label": "RGRDC 2005 UTM Zone 34S", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": 393214.46504110843, \"xmax\": 6120763.767724001, \"ymax\": 19606785.534958888}" - }, - 4063: { - "label": "RGRDC 2005 UTM Zone 35S", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": 393214.46504110843, \"xmax\": 6120763.767724001, \"ymax\": 19606785.534958888}" - }, - 4071: { - "label": "Chua UTM Zone 23S", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": 392912.94750043936, \"xmax\": 6121006.178542033, \"ymax\": 19607087.052499555}" - }, - 4075: { - "label": "GCS SREF98", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4081: { - "label": "GCS REGCAN95", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4082: { - "label": "REGCAN95 UTM Zone 27N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 4083: { - "label": "REGCAN95 UTM Zone 28N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 4093: { - "label": "ETRS 1989 DKTM1", - "defaultExtent": "{\"xmin\": -5422900.5126537075, \"ymin\": -14610437.574277904, \"xmax\": 5822900.5126537075, \"ymax\": 4610437.574277898}" - }, - 4094: { - "label": "ETRS 1989 DKTM2", - "defaultExtent": "{\"xmin\": -5222900.5126537075, \"ymin\": -14610437.574277904, \"xmax\": 6022900.5126537075, \"ymax\": 4610437.574277898}" - }, - 4095: { - "label": "ETRS 1989 DKTM3", - "defaultExtent": "{\"xmin\": -5022900.5126537075, \"ymin\": -14610437.574277904, \"xmax\": 6222900.5126537075, \"ymax\": 4610437.574277898}" - }, - 4096: { - "label": "ETRS 1989 DKTM4", - "defaultExtent": "{\"xmin\": -4823012.972913165, \"ymin\": -14610629.786873642, \"xmax\": 6423012.972913165, \"ymax\": 4610629.786873637}" - }, - 4120: { - "label": "GCS Greek", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4121: { - "label": "GCS GGRS 1987", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4122: { - "label": "GCS ATS 1977", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4123: { - "label": "GCS KKJ", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4124: { - "label": "GCS RT 1990", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4125: { - "label": "GCS Samboja", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4127: { - "label": "GCS Tete", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4128: { - "label": "GCS Madzansua", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4129: { - "label": "GCS Observatario", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4130: { - "label": "GCS Moznet", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4131: { - "label": "GCS Indian 1960", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4132: { - "label": "GCS FD 1958", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4133: { - "label": "GCS Estonia 1992", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4134: { - "label": "GCS PDO 1993", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4135: { - "label": "GCS Old Hawaiian", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4136: { - "label": "GCS St Lawrence Island", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4137: { - "label": "GCS St Paul Island", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4138: { - "label": "GCS St George Island", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4139: { - "label": "GCS Puerto Rico", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4141: { - "label": "GCS Israel", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4142: { - "label": "GCS Locodjo 1965", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4143: { - "label": "GCS Abidjan 1987", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4144: { - "label": "GCS Kalianpur 1937", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4145: { - "label": "GCS Kalianpur 1962", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4146: { - "label": "GCS Kalianpur 1975", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4147: { - "label": "GCS Hanoi 1972", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4148: { - "label": "GCS Hartebeesthoek 1994", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4149: { - "label": "GCS CH1903", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4150: { - "label": "GCS CH1903+", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4151: { - "label": "GCS Swiss TRF 1995", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4152: { - "label": "GCS North American 1983 HARN", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4153: { - "label": "GCS Rassadiran", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4154: { - "label": "GCS European 1950 ED77", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4155: { - "label": "GCS Dabola 1981", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4156: { - "label": "GCS S JTSK", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4157: { - "label": "GCS Mount Dillon", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4158: { - "label": "GCS Naparima 1955", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4159: { - "label": "GCS European Libyan Datum 1979", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4160: { - "label": "GCS Chos Malal 1914", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4161: { - "label": "GCS Pampa del Castillo", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4162: { - "label": "GCS Korean Datum 1985", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4163: { - "label": "GCS Yemen NGN 1996", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4164: { - "label": "GCS South Yemen", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4165: { - "label": "GCS Bissau", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4166: { - "label": "GCS Korean Datum 1995", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4167: { - "label": "GCS NZGD 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4168: { - "label": "GCS Accra", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4169: { - "label": "GCS American Samoa 1962", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4170: { - "label": "GCS SIRGAS", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4171: { - "label": "GCS RGF 1993", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4172: { - "label": "GCS POSGAR", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4173: { - "label": "GCS IRENET95", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4174: { - "label": "GCS Sierra Leone 1924", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4175: { - "label": "GCS Sierra Leone 1968", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4176: { - "label": "GCS Australian Antarctic 1998", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4178: { - "label": "GCS Pulkovo 1942 Adj 1983", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4179: { - "label": "GCS Pulkovo 1942 Adj 1958", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4180: { - "label": "GCS Estonia 1997", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4181: { - "label": "GCS Luxembourg 1930", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4182: { - "label": "GCS Azores Occidental 1939", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4183: { - "label": "GCS Azores Central 1948", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4184: { - "label": "GCS Azores Oriental 1940", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4185: { - "label": "GCS Madeira 1936", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4188: { - "label": "GCS OSNI 1952", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4189: { - "label": "GCS REGVEN", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4190: { - "label": "GCS POSGAR 1998", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4191: { - "label": "GCS Albanian 1987", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4192: { - "label": "GCS Douala 1948", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4193: { - "label": "GCS Manoca 1962", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4194: { - "label": "GCS Qornoq 1927", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4195: { - "label": "GCS Scoresbysund 1952", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4196: { - "label": "GCS Ammassalik 1958", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4197: { - "label": "GCS Garoua", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4198: { - "label": "GCS Kousseri", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4199: { - "label": "GCS Egypt 1930", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4200: { - "label": "GCS Pulkovo 1995", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4201: { - "label": "GCS Adindan", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4202: { - "label": "GCS Australian 1966", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4203: { - "label": "GCS Australian 1984", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4204: { - "label": "GCS Ain el Abd 1970", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4205: { - "label": "GCS Afgooye", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4206: { - "label": "GCS Agadez", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4207: { - "label": "GCS Lisbon", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4208: { - "label": "GCS Aratu", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4209: { - "label": "GCS Arc 1950", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4210: { - "label": "GCS Arc 1960", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4211: { - "label": "GCS Batavia", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4212: { - "label": "GCS Barbados 1938", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4213: { - "label": "GCS Beduaram", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4214: { - "label": "GCS Beijing 1954", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4215: { - "label": "GCS Belge 1950", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4216: { - "label": "GCS Bermuda 1957", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4217: { - "label": "NAD 1983 BLM Zone 59N", - "defaultExtent": "{\"xmin\": -16800372.461274423, \"ymin\": -31518262.20920937, \"xmax\": 20081205.794607848, \"ymax\": 31518262.2092094}" - }, - 4218: { - "label": "GCS Bogota", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4219: { - "label": "GCS Bukit Rimpah", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4220: { - "label": "GCS Camacupa", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4221: { - "label": "GCS Campo Inchauspe", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4222: { - "label": "GCS Cape", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4223: { - "label": "GCS Carthage", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4224: { - "label": "GCS Chua", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4225: { - "label": "GCS Corrego Alegre", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4226: { - "label": "GCS Cote d Ivoire", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4227: { - "label": "GCS Deir ez Zor", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4228: { - "label": "GCS Douala", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4229: { - "label": "GCS Egypt 1907", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4230: { - "label": "GCS European 1950", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4231: { - "label": "GCS European 1987", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4232: { - "label": "GCS Fahud", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4235: { - "label": "GCS Guyane Francaise", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4236: { - "label": "GCS Hu Tzu Shan", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4237: { - "label": "GCS Hungarian 1972", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4238: { - "label": "GCS Indonesian 1974", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4239: { - "label": "GCS Indian 1954", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4240: { - "label": "GCS Indian 1975", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4241: { - "label": "GCS Jamaica 1875", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4242: { - "label": "GCS Jamaica 1969", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4243: { - "label": "GCS Kalianpur 1880", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4244: { - "label": "GCS Kandawala", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4245: { - "label": "GCS Kertau", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4246: { - "label": "GCS Kuwait Oil Company", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4247: { - "label": "GCS La Canoa", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4248: { - "label": "GCS Provisional S American 1956", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4249: { - "label": "GCS Lake", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4250: { - "label": "GCS Leigon", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4251: { - "label": "GCS Liberia 1964", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4252: { - "label": "GCS Lome", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4253: { - "label": "GCS Luzon 1911", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4254: { - "label": "GCS Hito XVIII 1963", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4255: { - "label": "GCS Herat North", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4256: { - "label": "GCS Mahe 1971", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4257: { - "label": "GCS Makassar", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4258: { - "label": "GCS ETRS 1989", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4259: { - "label": "GCS Malongo 1987", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4260: { - "label": "GCS Manoca", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4261: { - "label": "GCS Merchich", - "defaultExtent": "{\"xmin\": -199.99998726760407, \"ymin\": -94.50125310140274, \"xmax\": 199.99998726760407, \"ymax\": 94.50125310140272}" - }, - 4262: { - "label": "GCS Massawa", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4263: { - "label": "GCS Minna", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4265: { - "label": "GCS Monte Mario", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4266: { - "label": "GCS Mporaloko", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4267: { - "label": "GCS North American 1927", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4269: { - "label": "GCS North American 1983", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4270: { - "label": "GCS Nahrwan 1967", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4271: { - "label": "GCS Naparima 1972", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4272: { - "label": "GCS New Zealand 1949", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4273: { - "label": "GCS NGO 1948", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4274: { - "label": "GCS Datum 73", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4275: { - "label": "GCS NTF", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4276: { - "label": "GCS NSWC 9Z 2", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4277: { - "label": "GCS OSGB 1936", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4278: { - "label": "GCS OSGB 1970 SN", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4279: { - "label": "GCS OS SN 1980", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4280: { - "label": "GCS Padang 1884", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4281: { - "label": "GCS Palestine 1923", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4282: { - "label": "GCS Pointe Noire", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4283: { - "label": "GCS GDA 1994", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4284: { - "label": "GCS Pulkovo 1942", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4285: { - "label": "GCS Qatar 1974", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4286: { - "label": "GCS Qatar 1948", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4288: { - "label": "GCS Loma Quintana", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4289: { - "label": "GCS Amersfoort", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4292: { - "label": "GCS Sapper Hill 1943", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4293: { - "label": "GCS Schwarzeck", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4294: { - "label": "GCS Segora", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4295: { - "label": "GCS Serindung", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4296: { - "label": "GCS Sudan", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4297: { - "label": "GCS Tananarive 1925", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4298: { - "label": "GCS Timbalai 1948", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4299: { - "label": "GCS TM65", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4300: { - "label": "GCS TM75", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4301: { - "label": "GCS Tokyo", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4302: { - "label": "GCS Trinidad 1903", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4303: { - "label": "GCS Trucial Coast 1948", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4304: { - "label": "GCS Voirol 1875", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4305: { - "label": "GCS Voirol Unifie 1960", - "defaultExtent": "{\"xmin\": -199.99998726760407, \"ymin\": -94.50125310140274, \"xmax\": 199.99998726760407, \"ymax\": 94.50125310140272}" - }, - 4306: { - "label": "GCS Bern 1938", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4307: { - "label": "GCS Nord Sahara 1959", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4308: { - "label": "GCS RT38", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4309: { - "label": "GCS Yacare", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4310: { - "label": "GCS Yoff", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4311: { - "label": "GCS Zanderij", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4312: { - "label": "GCS MGI", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4313: { - "label": "GCS Belge 1972", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4314: { - "label": "GCS Deutsches Hauptdreiecksnetz", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4315: { - "label": "GCS Conakry 1905", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4316: { - "label": "GCS Dealul Piscului 1933", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4317: { - "label": "GCS Dealul Piscului 1970", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4318: { - "label": "GCS NGN", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4319: { - "label": "GCS KUDAMS", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4322: { - "label": "GCS WGS 1972", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4324: { - "label": "GCS WGS 1972 BE", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4326: { - "label": "GCS WGS 1984", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4399: { - "label": "NAD 1927 BLM Zone 59N", - "defaultExtent": "{\"xmin\": -16800755.875852548, \"ymin\": -31517945.842916153, \"xmax\": 20081589.20918597, \"ymax\": 31517945.842916183}" - }, - 4400: { - "label": "NAD 1927 BLM Zone 60N", - "defaultExtent": "{\"xmin\": -16800755.87585256, \"ymin\": -31517945.842916153, \"xmax\": 20081589.20918597, \"ymax\": 31517945.842916183}" - }, - 4401: { - "label": "NAD 1927 BLM Zone 1N", - "defaultExtent": "{\"xmin\": -16800755.875852533, \"ymin\": -31517945.842916153, \"xmax\": 20081589.20918597, \"ymax\": 31517945.842916183}" - }, - 4402: { - "label": "NAD 1927 BLM Zone 2N", - "defaultExtent": "{\"xmin\": -16800755.875852533, \"ymin\": -31517945.842916153, \"xmax\": 20081589.20918597, \"ymax\": 31517945.842916183}" - }, - 4403: { - "label": "NAD 1927 BLM Zone 3N", - "defaultExtent": "{\"xmin\": -16800755.87585256, \"ymin\": -31517945.842916153, \"xmax\": 20081589.20918597, \"ymax\": 31517945.842916183}" - }, - 4404: { - "label": "NAD 1927 BLM Zone 4N", - "defaultExtent": "{\"xmin\": -16800755.875852533, \"ymin\": -31517945.842916153, \"xmax\": 20081589.209185977, \"ymax\": 31517945.84291619}" - }, - 4405: { - "label": "NAD 1927 BLM Zone 5N", - "defaultExtent": "{\"xmin\": -16800755.875852533, \"ymin\": -31517945.842916153, \"xmax\": 20081589.20918597, \"ymax\": 31517945.842916183}" - }, - 4406: { - "label": "NAD 1927 BLM Zone 6N", - "defaultExtent": "{\"xmin\": -16800755.87585256, \"ymin\": -31517945.842916153, \"xmax\": 20081589.20918597, \"ymax\": 31517945.842916183}" - }, - 4407: { - "label": "NAD 1927 BLM Zone 7N", - "defaultExtent": "{\"xmin\": -16800755.875852533, \"ymin\": -31517945.842916153, \"xmax\": 20081589.209185977, \"ymax\": 31517945.84291619}" - }, - 4408: { - "label": "NAD 1927 BLM Zone 8N", - "defaultExtent": "{\"xmin\": -16800749.972081684, \"ymin\": -31517945.842984416, \"xmax\": 20081589.209185943, \"ymax\": 31517945.842984397}" - }, - 4409: { - "label": "NAD 1927 BLM Zone 9N", - "defaultExtent": "{\"xmin\": -16800755.87585261, \"ymin\": -31517945.842984416, \"xmax\": 20081589.209185943, \"ymax\": 31517945.842984397}" - }, - 4410: { - "label": "NAD 1927 BLM Zone 10N", - "defaultExtent": "{\"xmin\": -16800755.87585261, \"ymin\": -31517945.842984416, \"xmax\": 20081589.20918595, \"ymax\": 31517945.842984397}" - }, - 4411: { - "label": "NAD 1927 BLM Zone 11N", - "defaultExtent": "{\"xmin\": -16800755.87585261, \"ymin\": -31517945.842984416, \"xmax\": 20081589.209185943, \"ymax\": 31517945.842984397}" - }, - 4412: { - "label": "NAD 1927 BLM Zone 12N", - "defaultExtent": "{\"xmin\": -16800755.875852603, \"ymin\": -31517945.842984416, \"xmax\": 20081589.209185943, \"ymax\": 31517945.842984397}" - }, - 4413: { - "label": "NAD 1927 BLM Zone 13N", - "defaultExtent": "{\"xmin\": -16800755.87585261, \"ymin\": -31517945.842984416, \"xmax\": 20081589.209185943, \"ymax\": 31517945.842984397}" - }, - 4414: { - "label": "NAD 1983 HARN Guam Map Grid", - "defaultExtent": "{\"xmin\": -5523012.972913157, \"ymin\": -10903656.911824899, \"xmax\": 5723012.972913173, \"ymax\": 8317602.661880766}" - }, - 4415: { - "label": "Katanga 1955 Katanga Lambert", - "defaultExtent": "{\"xmin\": -30848249.553901322, \"ymin\": -17472589.687912326, \"xmax\": 31848249.55390133, \"ymax\": 26686341.409581177}" - }, - 4417: { - "label": "Pulkovo 1942 Adj 1983 3 Degree GK Zone 7", - "defaultExtent": "{\"xmin\": 1876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 13123107.467526717, \"ymax\": 9610795.116133094}" - }, - 4418: { - "label": "NAD 1927 BLM Zone 18N", - "defaultExtent": "{\"xmin\": -16800755.87585262, \"ymin\": -31517945.842984416, \"xmax\": 20081589.209185943, \"ymax\": 31517945.842984397}" - }, - 4419: { - "label": "NAD 1927 BLM Zone 19N", - "defaultExtent": "{\"xmin\": -16800755.87585262, \"ymin\": -31517945.842984416, \"xmax\": 20081589.209185943, \"ymax\": 31517945.842984397}" - }, - 4420: { - "label": "NAD 1983 BLM Zone 60N", - "defaultExtent": "{\"xmin\": -16800372.461274434, \"ymin\": -31518262.20920937, \"xmax\": 20081205.794607848, \"ymax\": 31518262.2092094}" - }, - 4421: { - "label": "NAD 1983 BLM Zone 1N", - "defaultExtent": "{\"xmin\": -16800372.46127441, \"ymin\": -31518262.20920937, \"xmax\": 20081205.794607848, \"ymax\": 31518262.2092094}" - }, - 4422: { - "label": "NAD 1983 BLM Zone 2N", - "defaultExtent": "{\"xmin\": -16800372.46127441, \"ymin\": -31518262.20920937, \"xmax\": 20081205.794607848, \"ymax\": 31518262.2092094}" - }, - 4423: { - "label": "NAD 1983 BLM Zone 3N", - "defaultExtent": "{\"xmin\": -16800372.461274434, \"ymin\": -31518262.20920937, \"xmax\": 20081205.794607848, \"ymax\": 31518262.2092094}" - }, - 4424: { - "label": "NAD 1983 BLM Zone 4N", - "defaultExtent": "{\"xmin\": -16800372.46127441, \"ymin\": -31518262.20920937, \"xmax\": 20081205.794607855, \"ymax\": 31518262.2092094}" - }, - 4425: { - "label": "NAD 1983 BLM Zone 5N", - "defaultExtent": "{\"xmin\": -16800372.46127441, \"ymin\": -31518262.20920937, \"xmax\": 20081205.794607848, \"ymax\": 31518262.2092094}" - }, - 4426: { - "label": "NAD 1983 BLM Zone 6N", - "defaultExtent": "{\"xmin\": -16800372.461274434, \"ymin\": -31518262.20920937, \"xmax\": 20081205.794607848, \"ymax\": 31518262.2092094}" - }, - 4427: { - "label": "NAD 1983 BLM Zone 7N", - "defaultExtent": "{\"xmin\": -16800372.46127441, \"ymin\": -31518262.20920937, \"xmax\": 20081205.794607855, \"ymax\": 31518262.2092094}" - }, - 4428: { - "label": "NAD 1983 BLM Zone 8N", - "defaultExtent": "{\"xmin\": -16800366.557735734, \"ymin\": -31518262.209277626, \"xmax\": 20081205.79460782, \"ymax\": 31518262.209277615}" - }, - 4429: { - "label": "NAD 1983 BLM Zone 9N", - "defaultExtent": "{\"xmin\": -16800372.46127449, \"ymin\": -31518262.209277626, \"xmax\": 20081205.79460782, \"ymax\": 31518262.209277615}" - }, - 4430: { - "label": "NAD 1983 BLM Zone 10N", - "defaultExtent": "{\"xmin\": -16800372.46127449, \"ymin\": -31518262.209277626, \"xmax\": 20081205.794607826, \"ymax\": 31518262.209277615}" - }, - 4431: { - "label": "NAD 1983 BLM Zone 11N", - "defaultExtent": "{\"xmin\": -16800372.46127449, \"ymin\": -31518262.209277626, \"xmax\": 20081205.79460782, \"ymax\": 31518262.209277615}" - }, - 4432: { - "label": "NAD 1983 BLM Zone 12N", - "defaultExtent": "{\"xmin\": -16800372.461274482, \"ymin\": -31518262.209277626, \"xmax\": 20081205.79460782, \"ymax\": 31518262.209277615}" - }, - 4433: { - "label": "NAD 1983 BLM Zone 13N", - "defaultExtent": "{\"xmin\": -16800372.46127449, \"ymin\": -31518262.209277626, \"xmax\": 20081205.79460782, \"ymax\": 31518262.209277615}" - }, - 4434: { - "label": "Pulkovo 1942 Adj 1983 3 Degree GK Zone 8", - "defaultExtent": "{\"xmin\": 2876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 14123107.467526715, \"ymax\": 9610795.116133094}" - }, - 4437: { - "label": "NAD 1983 NSRS2007 StatePlane Puerto Rico Virgin Isls FIPS 5200", - "defaultExtent": "{\"xmin\": -38021748.15784241, \"ymin\": -26319807.671320274, \"xmax\": 38421748.157935165, \"ymax\": 15157853.89958689}" - }, - 4438: { - "label": "NAD 1983 BLM Zone 18N", - "defaultExtent": "{\"xmin\": -16800372.461274493, \"ymin\": -31518262.209277626, \"xmax\": 20081205.79460782, \"ymax\": 31518262.209277615}" - }, - 4439: { - "label": "NAD 1983 BLM Zone 19N", - "defaultExtent": "{\"xmin\": -16800372.461274493, \"ymin\": -31518262.209277626, \"xmax\": 20081205.79460782, \"ymax\": 31518262.209277615}" - }, - 4455: { - "label": "NAD 1927 StatePlane Pennsylvania South FIPS 3702", - "defaultExtent": "{\"xmin\": -119176225.37941834, \"ymin\": -96191398.44151953, \"xmax\": 123176225.37856601, \"ymax\": 79587918.36984852}" - }, - 4456: { - "label": "NAD 1927 StatePlane New York Long Island FIPS 3104", - "defaultExtent": "{\"xmin\": -119017117.37849772, \"ymin\": -96554571.94067073, \"xmax\": 123017117.38124721, \"ymax\": 80781400.2761189}" - }, - 4457: { - "label": "NAD 1983 StatePlane South Dakota North FIPS 4001 Feet", - "defaultExtent": "{\"xmin\": -117605076.22299072, \"ymin\": -98207493.43623132, \"xmax\": 121542076.22279583, \"ymax\": 93980354.82660332}" - }, - 4462: { - "label": "WGS 1984 Australian Centre for Remote Sensing Lambert", - "defaultExtent": "{\"xmin\": -39261695.78527637, \"ymin\": -11812132.301104598, \"xmax\": 39261695.78527637, \"ymax\": 27320584.691629503}" - }, - 4463: { - "label": "GCS RGSPM 2006", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4467: { - "label": "RGSPM 2006 UTM Zone 21N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 4470: { - "label": "GCS RGM 2004", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4471: { - "label": "RGM 2004 UTM Zone 38S", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": 393214.46504110843, \"xmax\": 6120763.767724001, \"ymax\": 19606785.534958888}" - }, - 4475: { - "label": "GCS Cadastre 1997", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4483: { - "label": "GCS Mexican Datum of 1993", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4484: { - "label": "Mexican Datum 1993 UTM Zone 11N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 4485: { - "label": "Mexican Datum 1993 UTM Zone 12N", - "defaultExtent": "{\"xmin\": -5120763.767723998, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 4486: { - "label": "Mexican Datum 1993 UTM Zone 13N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 4487: { - "label": "Mexican Datum 1993 UTM Zone 14N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 4488: { - "label": "Mexican Datum 1993 UTM Zone 15N", - "defaultExtent": "{\"xmin\": -5120763.767723998, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 4489: { - "label": "Mexican Datum 1993 UTM Zone 16N", - "defaultExtent": "{\"xmin\": -5120763.767723998, \"ymin\": -9606785.534958893, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 4490: { - "label": "GCS China Geodetic Coordinate System 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4491: { - "label": "CGCS2000 GK Zone 13", - "defaultExtent": "{\"xmin\": 7876987.027086835, \"ymin\": -9610629.786873642, \"xmax\": 19123012.97291317, \"ymax\": 9610629.786873637}" - }, - 4492: { - "label": "CGCS2000 GK Zone 14", - "defaultExtent": "{\"xmin\": 8876987.027086835, \"ymin\": -9610629.786873642, \"xmax\": 20123012.972913165, \"ymax\": 9610629.786873637}" - }, - 4493: { - "label": "CGCS2000 GK Zone 15", - "defaultExtent": "{\"xmin\": 9876987.027086835, \"ymin\": -9610629.786873642, \"xmax\": 21123012.97291316, \"ymax\": 9610629.786873637}" - }, - 4494: { - "label": "CGCS2000 GK Zone 16", - "defaultExtent": "{\"xmin\": 10876987.027086835, \"ymin\": -9610629.786873642, \"xmax\": 22123012.97291316, \"ymax\": 9610629.786873637}" - }, - 4495: { - "label": "CGCS2000 GK Zone 17", - "defaultExtent": "{\"xmin\": 11876987.027086835, \"ymin\": -9610629.786873642, \"xmax\": 23123012.972913165, \"ymax\": 9610629.786873637}" - }, - 4496: { - "label": "CGCS2000 GK Zone 18", - "defaultExtent": "{\"xmin\": 12876987.027086835, \"ymin\": -9610629.786873642, \"xmax\": 24123012.972913165, \"ymax\": 9610629.786873637}" - }, - 4497: { - "label": "CGCS2000 GK Zone 19", - "defaultExtent": "{\"xmin\": 13876987.027086835, \"ymin\": -9610629.786873642, \"xmax\": 25123012.97291316, \"ymax\": 9610629.786873637}" - }, - 4498: { - "label": "CGCS2000 GK Zone 20", - "defaultExtent": "{\"xmin\": 14876987.027086835, \"ymin\": -9610629.786873642, \"xmax\": 26123012.972913165, \"ymax\": 9610629.786873637}" - }, - 4499: { - "label": "CGCS2000 GK Zone 21", - "defaultExtent": "{\"xmin\": 15876987.027086832, \"ymin\": -9610629.786873642, \"xmax\": 27123012.972913165, \"ymax\": 9610629.786873637}" - }, - 4500: { - "label": "CGCS2000 GK Zone 22", - "defaultExtent": "{\"xmin\": 16876987.027086835, \"ymin\": -9610629.786873642, \"xmax\": 28123012.972913165, \"ymax\": 9610629.786873637}" - }, - 4501: { - "label": "CGCS2000 GK Zone 23", - "defaultExtent": "{\"xmin\": 17876987.027086835, \"ymin\": -9610629.786873639, \"xmax\": 29123011.172790904, \"ymax\": 9610629.786873637}" - }, - 4502: { - "label": "CGCS2000 GK CM 75E", - "defaultExtent": "{\"xmin\": -5123012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 6123012.972913167, \"ymax\": 9610629.786873637}" - }, - 4503: { - "label": "CGCS2000 GK CM 81E", - "defaultExtent": "{\"xmin\": -5123012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 6123012.972913165, \"ymax\": 9610629.786873637}" - }, - 4504: { - "label": "CGCS2000 GK CM 87E", - "defaultExtent": "{\"xmin\": -5123012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 6123012.972913163, \"ymax\": 9610629.786873637}" - }, - 4505: { - "label": "CGCS2000 GK CM 93E", - "defaultExtent": "{\"xmin\": -5123012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 6123012.972913163, \"ymax\": 9610629.786873637}" - }, - 4506: { - "label": "CGCS2000 GK CM 99E", - "defaultExtent": "{\"xmin\": -5123012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 6123012.972913165, \"ymax\": 9610629.786873637}" - }, - 4507: { - "label": "CGCS2000 GK CM 105E", - "defaultExtent": "{\"xmin\": -5123012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 6123012.972913165, \"ymax\": 9610629.786873637}" - }, - 4508: { - "label": "CGCS2000 GK CM 111E", - "defaultExtent": "{\"xmin\": -5123012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 6123012.972913163, \"ymax\": 9610629.786873637}" - }, - 4509: { - "label": "CGCS2000 GK CM 117E", - "defaultExtent": "{\"xmin\": -5123012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 6123012.972913165, \"ymax\": 9610629.786873637}" - }, - 4510: { - "label": "CGCS2000 GK CM 123E", - "defaultExtent": "{\"xmin\": -5123012.972913167, \"ymin\": -9610629.786873642, \"xmax\": 6123012.972913165, \"ymax\": 9610629.786873637}" - }, - 4511: { - "label": "CGCS2000 GK CM 129E", - "defaultExtent": "{\"xmin\": -5123012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 6123012.972913165, \"ymax\": 9610629.786873637}" - }, - 4512: { - "label": "CGCS2000 GK CM 135E", - "defaultExtent": "{\"xmin\": -5123012.972913165, \"ymin\": -9610629.786873639, \"xmax\": 6123011.1727909045, \"ymax\": 9610629.786873637}" - }, - 4513: { - "label": "CGCS2000 3 Degree GK Zone 25", - "defaultExtent": "{\"xmin\": 19876987.027086835, \"ymin\": -9610629.786873642, \"xmax\": 31123012.97291317, \"ymax\": 9610629.786873637}" - }, - 4514: { - "label": "CGCS2000 3 Degree GK Zone 26", - "defaultExtent": "{\"xmin\": 20876987.027086835, \"ymin\": -9610629.786873642, \"xmax\": 32123012.97291316, \"ymax\": 9610629.786873637}" - }, - 4515: { - "label": "CGCS2000 3 Degree GK Zone 27", - "defaultExtent": "{\"xmin\": 21876987.027086835, \"ymin\": -9610629.786873642, \"xmax\": 33123012.972913165, \"ymax\": 9610629.786873637}" - }, - 4516: { - "label": "CGCS2000 3 Degree GK Zone 28", - "defaultExtent": "{\"xmin\": 22876987.02708683, \"ymin\": -9610629.786873642, \"xmax\": 34123012.97291316, \"ymax\": 9610629.786873637}" - }, - 4517: { - "label": "CGCS2000 3 Degree GK Zone 29", - "defaultExtent": "{\"xmin\": 23876987.027086835, \"ymin\": -9610629.786873642, \"xmax\": 35123012.97291316, \"ymax\": 9610629.786873637}" - }, - 4518: { - "label": "CGCS2000 3 Degree GK Zone 30", - "defaultExtent": "{\"xmin\": 24876987.027086835, \"ymin\": -9610629.786873642, \"xmax\": 36123012.97291316, \"ymax\": 9610629.786873637}" - }, - 4519: { - "label": "CGCS2000 3 Degree GK Zone 31", - "defaultExtent": "{\"xmin\": 25876987.027086835, \"ymin\": -9610629.786873642, \"xmax\": 37123012.97291316, \"ymax\": 9610629.786873637}" - }, - 4520: { - "label": "CGCS2000 3 Degree GK Zone 32", - "defaultExtent": "{\"xmin\": 26876987.027086835, \"ymin\": -9610629.786873642, \"xmax\": 38123012.97291316, \"ymax\": 9610629.786873637}" - }, - 4521: { - "label": "CGCS2000 3 Degree GK Zone 33", - "defaultExtent": "{\"xmin\": 27876987.027086835, \"ymin\": -9610629.786873642, \"xmax\": 39123012.97291316, \"ymax\": 9610629.786873637}" - }, - 4522: { - "label": "CGCS2000 3 Degree GK Zone 34", - "defaultExtent": "{\"xmin\": 28876987.027086835, \"ymin\": -9610629.786873642, \"xmax\": 40123012.97291316, \"ymax\": 9610629.786873637}" - }, - 4523: { - "label": "CGCS2000 3 Degree GK Zone 35", - "defaultExtent": "{\"xmin\": 29876987.027086835, \"ymin\": -9610629.786873642, \"xmax\": 41123012.97291316, \"ymax\": 9610629.786873637}" - }, - 4524: { - "label": "CGCS2000 3 Degree GK Zone 36", - "defaultExtent": "{\"xmin\": 30876987.027086835, \"ymin\": -9610629.786873642, \"xmax\": 42123012.97291316, \"ymax\": 9610629.786873637}" - }, - 4525: { - "label": "CGCS2000 3 Degree GK Zone 37", - "defaultExtent": "{\"xmin\": 31876987.027086835, \"ymin\": -9610629.786873642, \"xmax\": 43123012.97291316, \"ymax\": 9610629.786873637}" - }, - 4526: { - "label": "CGCS2000 3 Degree GK Zone 38", - "defaultExtent": "{\"xmin\": 32876987.02708683, \"ymin\": -9610629.786873642, \"xmax\": 44123012.97291316, \"ymax\": 9610629.786873637}" - }, - 4527: { - "label": "CGCS2000 3 Degree GK Zone 39", - "defaultExtent": "{\"xmin\": 33876987.02708684, \"ymin\": -9610629.786873642, \"xmax\": 45123012.97291316, \"ymax\": 9610629.786873637}" - }, - 4528: { - "label": "CGCS2000 3 Degree GK Zone 40", - "defaultExtent": "{\"xmin\": 34876987.02708684, \"ymin\": -9610629.786873642, \"xmax\": 46123012.97291316, \"ymax\": 9610629.786873637}" - }, - 4529: { - "label": "CGCS2000 3 Degree GK Zone 41", - "defaultExtent": "{\"xmin\": 35876987.02708683, \"ymin\": -9610629.786873642, \"xmax\": 47123012.97291316, \"ymax\": 9610629.786873637}" - }, - 4530: { - "label": "CGCS2000 3 Degree GK Zone 42", - "defaultExtent": "{\"xmin\": 36876987.02708684, \"ymin\": -9610629.786873642, \"xmax\": 48123012.97291316, \"ymax\": 9610629.786873637}" - }, - 4531: { - "label": "CGCS2000 3 Degree GK Zone 43", - "defaultExtent": "{\"xmin\": 37876987.02708684, \"ymin\": -9610629.786873642, \"xmax\": 49123012.97291316, \"ymax\": 9610629.786873637}" - }, - 4532: { - "label": "CGCS2000 3 Degree GK Zone 44", - "defaultExtent": "{\"xmin\": 38876987.02708683, \"ymin\": -9610629.786873642, \"xmax\": 50123012.97291316, \"ymax\": 9610629.786873637}" - }, - 4533: { - "label": "CGCS2000 3 Degree GK Zone 45", - "defaultExtent": "{\"xmin\": 39876987.02708684, \"ymin\": -9610629.786873639, \"xmax\": 51123011.17279091, \"ymax\": 9610629.786873637}" - }, - 4534: { - "label": "CGCS2000 3 Degree GK CM 75E", - "defaultExtent": "{\"xmin\": -5123012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 6123012.972913167, \"ymax\": 9610629.786873637}" - }, - 4535: { - "label": "CGCS2000 3 Degree GK CM 78E", - "defaultExtent": "{\"xmin\": -5123012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 6123012.972913163, \"ymax\": 9610629.786873637}" - }, - 4536: { - "label": "CGCS2000 3 Degree GK CM 81E", - "defaultExtent": "{\"xmin\": -5123012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 6123012.972913165, \"ymax\": 9610629.786873637}" - }, - 4537: { - "label": "CGCS2000 3 Degree GK CM 84E", - "defaultExtent": "{\"xmin\": -5123012.9729131665, \"ymin\": -9610629.786873642, \"xmax\": 6123012.972913163, \"ymax\": 9610629.786873637}" - }, - 4538: { - "label": "CGCS2000 3 Degree GK CM 87E", - "defaultExtent": "{\"xmin\": -5123012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 6123012.972913163, \"ymax\": 9610629.786873637}" - }, - 4539: { - "label": "CGCS2000 3 Degree GK CM 90E", - "defaultExtent": "{\"xmin\": -5123012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 6123012.972913165, \"ymax\": 9610629.786873637}" - }, - 4540: { - "label": "CGCS2000 3 Degree GK CM 93E", - "defaultExtent": "{\"xmin\": -5123012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 6123012.972913163, \"ymax\": 9610629.786873637}" - }, - 4541: { - "label": "CGCS2000 3 Degree GK CM 96E", - "defaultExtent": "{\"xmin\": -5123012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 6123012.972913165, \"ymax\": 9610629.786873637}" - }, - 4542: { - "label": "CGCS2000 3 Degree GK CM 99E", - "defaultExtent": "{\"xmin\": -5123012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 6123012.972913165, \"ymax\": 9610629.786873637}" - }, - 4543: { - "label": "CGCS2000 3 Degree GK CM 102E", - "defaultExtent": "{\"xmin\": -5123012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 6123012.972913163, \"ymax\": 9610629.786873637}" - }, - 4544: { - "label": "CGCS2000 3 Degree GK CM 105E", - "defaultExtent": "{\"xmin\": -5123012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 6123012.972913165, \"ymax\": 9610629.786873637}" - }, - 4545: { - "label": "CGCS2000 3 Degree GK CM 108E", - "defaultExtent": "{\"xmin\": -5123012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 6123012.972913165, \"ymax\": 9610629.786873637}" - }, - 4546: { - "label": "CGCS2000 3 Degree GK CM 111E", - "defaultExtent": "{\"xmin\": -5123012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 6123012.972913163, \"ymax\": 9610629.786873637}" - }, - 4547: { - "label": "CGCS2000 3 Degree GK CM 114E", - "defaultExtent": "{\"xmin\": -5123012.972913167, \"ymin\": -9610629.786873642, \"xmax\": 6123012.972913165, \"ymax\": 9610629.786873637}" - }, - 4548: { - "label": "CGCS2000 3 Degree GK CM 117E", - "defaultExtent": "{\"xmin\": -5123012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 6123012.972913165, \"ymax\": 9610629.786873637}" - }, - 4549: { - "label": "CGCS2000 3 Degree GK CM 120E", - "defaultExtent": "{\"xmin\": -5123012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 6123012.972913165, \"ymax\": 9610629.786873637}" - }, - 4550: { - "label": "CGCS2000 3 Degree GK CM 123E", - "defaultExtent": "{\"xmin\": -5123012.972913167, \"ymin\": -9610629.786873642, \"xmax\": 6123012.972913165, \"ymax\": 9610629.786873637}" - }, - 4551: { - "label": "CGCS2000 3 Degree GK CM 126E", - "defaultExtent": "{\"xmin\": -5123012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 6123012.972913165, \"ymax\": 9610629.786873637}" - }, - 4552: { - "label": "CGCS2000 3 Degree GK CM 129E", - "defaultExtent": "{\"xmin\": -5123012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 6123012.972913165, \"ymax\": 9610629.786873637}" - }, - 4553: { - "label": "CGCS2000 3 Degree GK CM 132E", - "defaultExtent": "{\"xmin\": -5123012.972913167, \"ymin\": -9610629.786873642, \"xmax\": 6123012.972913165, \"ymax\": 9610629.786873637}" - }, - 4554: { - "label": "CGCS2000 3 Degree GK CM 135E", - "defaultExtent": "{\"xmin\": -5123012.972913165, \"ymin\": -9610629.786873639, \"xmax\": 6123011.1727909045, \"ymax\": 9610629.786873637}" - }, - 4555: { - "label": "GCS New Beijing", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4558: { - "label": "GCS RRAF 1991", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4559: { - "label": "RRAF 1991 UTM 20N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 4600: { - "label": "GCS Anguilla 1957", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4601: { - "label": "GCS Antigua 1943", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4602: { - "label": "GCS Dominica 1945", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4603: { - "label": "GCS Grenada 1953", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4604: { - "label": "GCS Montserrat 1958", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4605: { - "label": "GCS St Kitts 1955", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4606: { - "label": "GCS St Lucia 1955", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4607: { - "label": "GCS St Vincent 1945", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4608: { - "label": "GCS NAD 1927 Definition 1976", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4609: { - "label": "GCS NAD 1927 CGQ77", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4610: { - "label": "GCS Xian 1980", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4611: { - "label": "GCS Hong Kong 1980", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4612: { - "label": "GCS JGD 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4613: { - "label": "GCS Gunung Segara", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4614: { - "label": "GCS QND 1995", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4615: { - "label": "GCS Porto Santo 1936", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4616: { - "label": "GCS Selvagem Grande 1938", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4617: { - "label": "GCS North American 1983 CSRS", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4618: { - "label": "GCS South American 1969", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4619: { - "label": "GCS SWEREF99", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4620: { - "label": "GCS Point 58", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4621: { - "label": "GCS Fort Marigot", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4622: { - "label": "GCS Sainte Anne", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4623: { - "label": "GCS CSG 1967", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4624: { - "label": "GCS RGFG 1995", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4625: { - "label": "GCS Fort Desaix", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4626: { - "label": "GCS Reunion 1947", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4627: { - "label": "GCS RGR 1992", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4628: { - "label": "GCS Tahiti 1952", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4629: { - "label": "GCS Tahaa 1954", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4630: { - "label": "GCS IGN72 Nuku Hiva", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4632: { - "label": "GCS Combani 1950", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4633: { - "label": "GCS IGN56 Lifou", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4636: { - "label": "GCS Petrels 1972", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4637: { - "label": "GCS Pointe Geologie Perroud 1950", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4638: { - "label": "GCS Saint Pierre et Miquelon 1950", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4639: { - "label": "GCS MOP78", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4641: { - "label": "GCS IGN53 Mare", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4642: { - "label": "GCS ST84 Ile des Pins", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4643: { - "label": "GCS ST71 Belep", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4644: { - "label": "GCS NEA74 Noumea", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4645: { - "label": "GCS RGNC 1991", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4646: { - "label": "GCS Grand Comoros", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4647: { - "label": "ETRS 1989 UTM Zone N32", - "defaultExtent": "{\"xmin\": 26879236.232276, \"ymin\": -9606785.534958892, \"xmax\": 38120763.767724, \"ymax\": 9606785.534958888}" - }, - 4657: { - "label": "GCS Reykjavik 1900", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4658: { - "label": "GCS Hjorsey 1955", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4659: { - "label": "GCS ISN 1993", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4660: { - "label": "GCS Helle 1954", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4661: { - "label": "GCS LKS 1992", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4662: { - "label": "GCS IGN72 Grande Terre", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4663: { - "label": "GCS Porto Santo 1995", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4664: { - "label": "GCS Azores Oriental 1995", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4665: { - "label": "GCS Azores Central 1995", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4666: { - "label": "GCS Lisbon 1890", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4667: { - "label": "GCS IKBD 1992", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4668: { - "label": "GCS European 1979", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4669: { - "label": "GCS LKS 1994", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4670: { - "label": "GCS IGM 1995", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4671: { - "label": "GCS Voirol 1879", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4672: { - "label": "GCS Chatham Island 1971", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4673: { - "label": "GCS Chatham Islands 1979", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4674: { - "label": "GCS SIRGAS 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4675: { - "label": "GCS Guam 1963", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4676: { - "label": "GCS Vientiane 1982", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4677: { - "label": "GCS Lao 1993", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4678: { - "label": "GCS Lao 1997", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4679: { - "label": "GCS Jouik 1961", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4680: { - "label": "GCS Nouakchott 1965", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4682: { - "label": "GCS Gulshan 303", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4683: { - "label": "GCS PRS 1992", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4684: { - "label": "GCS Gan 1970", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4686: { - "label": "GCS MAGNA", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4687: { - "label": "GCS RGPF", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4688: { - "label": "GCS Fatu Iva 1972", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4689: { - "label": "GCS IGN63 Hiva Oa", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4690: { - "label": "GCS Tahiti 1979", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4691: { - "label": "GCS Moorea 1987", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4692: { - "label": "GCS Maupiti 1983", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4693: { - "label": "GCS Nakhl-e Ghanem", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4694: { - "label": "GCS POSGAR 1994", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4695: { - "label": "GCS Katanga 1955", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4696: { - "label": "GCS Kasai 1953", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4697: { - "label": "GCS IGC 1962 6th Parallel South", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4698: { - "label": "GCS Kerguelen Island 1949", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4699: { - "label": "GCS Le Pouce 1934", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4700: { - "label": "GCS IGN Astro 1960", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4701: { - "label": "GCS IGCB 1955", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4702: { - "label": "GCS Mauritania 1999", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4703: { - "label": "GCS Mhast 1951", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4704: { - "label": "GCS Mhast Onshore", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4705: { - "label": "GCS Mhast Offshore", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4706: { - "label": "GCS Egypt Gulf of Suez S-650 TL", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4707: { - "label": "GCS Tern Island 1961", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4708: { - "label": "GCS Anna 1 1965", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4709: { - "label": "GCS Beacon E 1945", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4710: { - "label": "GCS DOS 71 4", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4711: { - "label": "GCS Astro 1952", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4712: { - "label": "GCS Ascension Island 1958", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4713: { - "label": "GCS Ayabelle", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4714: { - "label": "GCS Bellevue IGN", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4715: { - "label": "GCS Camp Area", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4716: { - "label": "GCS Canton 1966", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4717: { - "label": "GCS Cape Canaveral", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4718: { - "label": "GCS Solomon 1968", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4719: { - "label": "GCS Easter Island 1967", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4720: { - "label": "GCS Fiji 1986", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4721: { - "label": "GCS Fiji 1956", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4722: { - "label": "GCS ISTS 061 1968", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4723: { - "label": "GCS Grand Cayman 1959", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4724: { - "label": "GCS ISTS 073 1969", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4725: { - "label": "GCS Johnston Island 1961", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4726: { - "label": "GCS Little Cayman 1961", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4727: { - "label": "GCS Midway 1961", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4728: { - "label": "GCS Pico de Las Nieves", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4729: { - "label": "GCS Pitcairn 1967", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4730: { - "label": "GCS Santo DOS 1965", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4731: { - "label": "GCS Viti Levu 1916", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4732: { - "label": "GCS Wake Eniwetok 1960", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4733: { - "label": "GCS Wake Island 1952", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4734: { - "label": "GCS Tristan 1968", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4735: { - "label": "GCS Kusaie 1951", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4736: { - "label": "GCS Deception Island", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4737: { - "label": "GCS Korea 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4738: { - "label": "GCS Hong Kong 1963", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4739: { - "label": "GCS Hong Kong 1963 67", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4740: { - "label": "GCS PZ 1990", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4741: { - "label": "GCS FD 1954", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4742: { - "label": "GCS GDM 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4743: { - "label": "GCS Karbala 1979 Polservice", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4744: { - "label": "GCS Nahrwan 1934", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4745: { - "label": "GCS RD/83", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4746: { - "label": "GCS PD/83", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4747: { - "label": "GCS Greenland 1996", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4748: { - "label": "GCS Vanua Levu 1915", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4749: { - "label": "GCS RGNC 1991-93", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4750: { - "label": "GCS ST87 Ouvea", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4751: { - "label": "GCS Kertau RSO", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4752: { - "label": "GCS Viti Levu 1912", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4753: { - "label": "GCS fk89", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4754: { - "label": "GCS LGD2006", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4755: { - "label": "GCS DGN 1995", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4756: { - "label": "GCS VN 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4757: { - "label": "GCS SVY21", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4758: { - "label": "GCS JAD 2001", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4759: { - "label": "GCS NAD 1983 NSRS2007", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4760: { - "label": "GCS WGS 1966", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4761: { - "label": "GCS HTRS96", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4762: { - "label": "GCS Bermuda 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4763: { - "label": "GCS Pitcairn 2006", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4764: { - "label": "GCS RSRGD2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4765: { - "label": "GCS Slovenia 1996", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4801: { - "label": "GCS Bern 1898 Bern", - "defaultExtent": "{\"xmin\": -180.0, \"ymin\": -85.05112779126247, \"xmax\": 180.0, \"ymax\": 85.05112779126246}" - }, - 4802: { - "label": "GCS Bogota Bogota", - "defaultExtent": "{\"xmin\": -180.0, \"ymin\": -85.05112779126247, \"xmax\": 180.0, \"ymax\": 85.05112779126246}" - }, - 4803: { - "label": "GCS Lisbon Lisbon", - "defaultExtent": "{\"xmin\": -180.0, \"ymin\": -85.05112779126247, \"xmax\": 180.0, \"ymax\": 85.05112779126246}" - }, - 4804: { - "label": "GCS Makassar Jakarta", - "defaultExtent": "{\"xmin\": -180.0, \"ymin\": -85.05112779126247, \"xmax\": 180.0, \"ymax\": 85.05112779126246}" - }, - 4805: { - "label": "GCS MGI Ferro", - "defaultExtent": "{\"xmin\": -180.0, \"ymin\": -85.05112779126247, \"xmax\": 180.0, \"ymax\": 85.05112779126246}" - }, - 4806: { - "label": "GCS Monte Mario Rome", - "defaultExtent": "{\"xmin\": -180.0, \"ymin\": -85.05112779126247, \"xmax\": 180.0, \"ymax\": 85.05112779126246}" - }, - 4807: { - "label": "GCS NTF Paris", - "defaultExtent": "{\"xmin\": -199.99999999999997, \"ymin\": -94.50125310140274, \"xmax\": 199.99999999999997, \"ymax\": 94.50125310140272}" - }, - 4808: { - "label": "GCS Padang 1884 Jakarta", - "defaultExtent": "{\"xmin\": -180.0, \"ymin\": -85.05112779126247, \"xmax\": 180.0, \"ymax\": 85.05112779126246}" - }, - 4809: { - "label": "GCS Belge 1950 Brussels", - "defaultExtent": "{\"xmin\": -180.0, \"ymin\": -85.05112779126247, \"xmax\": 180.0, \"ymax\": 85.05112779126246}" - }, - 4810: { - "label": "GCS Tananarive 1925 Paris", - "defaultExtent": "{\"xmin\": -199.99999999999997, \"ymin\": -94.50125310140274, \"xmax\": 199.99999999999997, \"ymax\": 94.50125310140272}" - }, - 4811: { - "label": "GCS Voirol 1875 Paris", - "defaultExtent": "{\"xmin\": -199.99999999999997, \"ymin\": -94.50125310140274, \"xmax\": 199.99999999999997, \"ymax\": 94.50125310140272}" - }, - 4812: { - "label": "GCS Voirol Unifie 1960 Paris", - "defaultExtent": "{\"xmin\": -199.99999999999997, \"ymin\": -94.50125310140274, \"xmax\": 199.99999999999997, \"ymax\": 94.50125310140272}" - }, - 4813: { - "label": "GCS Batavia Jakarta", - "defaultExtent": "{\"xmin\": -180.0, \"ymin\": -85.05112779126247, \"xmax\": 180.0, \"ymax\": 85.05112779126246}" - }, - 4814: { - "label": "GCS RT38 Stockholm", - "defaultExtent": "{\"xmin\": -180.0, \"ymin\": -85.05112779126247, \"xmax\": 180.0, \"ymax\": 85.05112779126246}" - }, - 4815: { - "label": "GCS Greek Athens", - "defaultExtent": "{\"xmin\": -180.0, \"ymin\": -85.05112779126247, \"xmax\": 180.0, \"ymax\": 85.05112779126246}" - }, - 4816: { - "label": "GCS Carthage Paris", - "defaultExtent": "{\"xmin\": -199.99999999999997, \"ymin\": -94.50125310140274, \"xmax\": 199.99999999999997, \"ymax\": 94.50125310140272}" - }, - 4817: { - "label": "GCS NGO 1948 Oslo", - "defaultExtent": "{\"xmin\": -180.0, \"ymin\": -85.05112779126247, \"xmax\": 180.0, \"ymax\": 85.05112779126246}" - }, - 4818: { - "label": "GCS S JTSK Ferro", - "defaultExtent": "{\"xmin\": -180.0, \"ymin\": -85.05112779126247, \"xmax\": 180.0, \"ymax\": 85.05112779126246}" - }, - 4819: { - "label": "GCS Nord Sahara 1959 Paris", - "defaultExtent": "{\"xmin\": -199.99999999999997, \"ymin\": -94.50125310140274, \"xmax\": 199.99999999999997, \"ymax\": 94.50125310140272}" - }, - 4820: { - "label": "GCS Gunung Segara Jakarta", - "defaultExtent": "{\"xmin\": -180.0, \"ymin\": -85.05112779126247, \"xmax\": 180.0, \"ymax\": 85.05112779126246}" - }, - 4821: { - "label": "GCS Voirol 1879 Paris", - "defaultExtent": "{\"xmin\": -199.99999999999997, \"ymin\": -94.50125310140274, \"xmax\": 199.99999999999997, \"ymax\": 94.50125310140272}" - }, - 4823: { - "label": "GCS Sao Tome", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4824: { - "label": "GCS Principe", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 4826: { - "label": "WGS 1984 Cape Verde Grid", - "defaultExtent": "{\"xmin\": -36773068.97441834, \"ymin\": -26234408.80997573, \"xmax\": 37096244.634418376, \"ymax\": 15868310.313928578}" - }, - 4839: { - "label": "ETRS 1989 LCC Germany N-E", - "defaultExtent": "{\"xmin\": -35955599.04675246, \"ymin\": -30798883.9161205, \"xmax\": 35955599.04564843, \"ymax\": 32804981.19303063}" - }, - 4901: { - "label": "GCS ATF Paris", - "defaultExtent": "{\"xmin\": -199.99999999999997, \"ymin\": -94.50125310140274, \"xmax\": 199.99999999999997, \"ymax\": 94.50125310140272}" - }, - 4902: { - "label": "GCS Nord de Guerre Paris", - "defaultExtent": "{\"xmin\": -199.99999999999997, \"ymin\": -94.50125310140274, \"xmax\": 199.99999999999997, \"ymax\": 94.50125310140272}" - }, - 4903: { - "label": "GCS Madrid 1870 Madrid", - "defaultExtent": "{\"xmin\": -180.0, \"ymin\": -85.05112779126247, \"xmax\": 180.0, \"ymax\": 85.05112779126246}" - }, - 4904: { - "label": "GCS Lisbon 1890 Lisbon", - "defaultExtent": "{\"xmin\": -180.0, \"ymin\": -85.05112779126247, \"xmax\": 180.0, \"ymax\": 85.05112779126246}" - }, - 5013: { - "label": "GCS PTRA08", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 5014: { - "label": "PTRA08 UTM Zone 25N", - "defaultExtent": "{\"xmin\": -5120763.767723999, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 5015: { - "label": "PTRA08 UTM Zone 26N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 5016: { - "label": "PTRA08 UTM Zone 28N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 5018: { - "label": "Lisbon Portuguese Grid New", - "defaultExtent": "{\"xmin\": -5623255.480734327, \"ymin\": -14003524.858224163, \"xmax\": 5623255.480734327, \"ymax\": 5218337.99191501}" - }, - 5048: { - "label": "ETRS 1989 TM35FIN NE", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 5069: { - "label": "NAD 1927 Contiguous USA Albers", - "defaultExtent": "{\"xmin\": -16885981.886121172, \"ymin\": -6956902.328335352, \"xmax\": 16885981.88647263, \"ymax\": 15293402.692694161}" - }, - 5070: { - "label": "NAD 1983 Contiguous USA Albers", - "defaultExtent": "{\"xmin\": -16885989.18210479, \"ymin\": -6957052.177887028, \"xmax\": 16885989.182114024, \"ymax\": 15293225.658442125}" - }, - 5071: { - "label": "NAD 1983 HARN Contiguous USA Albers", - "defaultExtent": "{\"xmin\": -16885989.18210479, \"ymin\": -6957052.177887028, \"xmax\": 16885989.182114024, \"ymax\": 15293225.658442125}" - }, - 5072: { - "label": "NAD 1983 NSRS2007 Contiguous USA Albers", - "defaultExtent": "{\"xmin\": -16885989.18210479, \"ymin\": -6957052.177887028, \"xmax\": 16885989.182114024, \"ymax\": 15293225.658442125}" - }, - 5105: { - "label": "ETRS 1989 NTM Zone 5", - "defaultExtent": "{\"xmin\": -5523012.972913165, \"ymin\": -15041912.458752153, \"xmax\": 5723012.972913165, \"ymax\": 4179347.1149951257}" - }, - 5106: { - "label": "ETRS 1989 NTM Zone 6", - "defaultExtent": "{\"xmin\": -5523012.972913164, \"ymin\": -15041912.458752153, \"xmax\": 5723012.972913165, \"ymax\": 4179347.1149951257}" - }, - 5107: { - "label": "ETRS 1989 NTM Zone 7", - "defaultExtent": "{\"xmin\": -5523012.972913165, \"ymin\": -15041912.458752153, \"xmax\": 5723012.9729131665, \"ymax\": 4179347.1149951257}" - }, - 5108: { - "label": "ETRS 1989 NTM Zone 8", - "defaultExtent": "{\"xmin\": -5523012.972913165, \"ymin\": -15041912.458752153, \"xmax\": 5723012.972913165, \"ymax\": 4179347.1149951257}" - }, - 5109: { - "label": "ETRS 1989 NTM Zone 9", - "defaultExtent": "{\"xmin\": -5523012.972913165, \"ymin\": -15041912.458752153, \"xmax\": 5723012.972913165, \"ymax\": 4179347.1149951257}" - }, - 5110: { - "label": "ETRS 1989 NTM Zone 10", - "defaultExtent": "{\"xmin\": -5523012.972913165, \"ymin\": -15041912.458752153, \"xmax\": 5723012.972913165, \"ymax\": 4179347.1149951257}" - }, - 5111: { - "label": "ETRS 1989 NTM Zone 11", - "defaultExtent": "{\"xmin\": -5523012.972913165, \"ymin\": -15041912.458752153, \"xmax\": 5723012.972913165, \"ymax\": 4179347.1149951257}" - }, - 5112: { - "label": "ETRS 1989 NTM Zone 12", - "defaultExtent": "{\"xmin\": -5523012.972913165, \"ymin\": -15041912.458752153, \"xmax\": 5723012.972913165, \"ymax\": 4179347.1149951257}" - }, - 5113: { - "label": "ETRS 1989 NTM Zone 13", - "defaultExtent": "{\"xmin\": -5523012.972913165, \"ymin\": -15041912.458752153, \"xmax\": 5723012.972913165, \"ymax\": 4179347.1149951257}" - }, - 5114: { - "label": "ETRS 1989 NTM Zone 14", - "defaultExtent": "{\"xmin\": -5523012.972913165, \"ymin\": -15041912.458752153, \"xmax\": 5723012.972913165, \"ymax\": 4179347.1149951257}" - }, - 5115: { - "label": "ETRS 1989 NTM Zone 15", - "defaultExtent": "{\"xmin\": -5523012.972913165, \"ymin\": -15041912.458752153, \"xmax\": 5723012.972913165, \"ymax\": 4179347.1149951257}" - }, - 5116: { - "label": "ETRS 1989 NTM Zone 16", - "defaultExtent": "{\"xmin\": -5523012.972913165, \"ymin\": -15041912.458752153, \"xmax\": 5723012.972913165, \"ymax\": 4179347.1149951257}" - }, - 5117: { - "label": "ETRS 1989 NTM Zone 17", - "defaultExtent": "{\"xmin\": -5523012.972913165, \"ymin\": -15041912.458752153, \"xmax\": 5723012.9729131665, \"ymax\": 4179347.1149951257}" - }, - 5118: { - "label": "ETRS 1989 NTM Zone 18", - "defaultExtent": "{\"xmin\": -5523012.972913165, \"ymin\": -15041912.458752153, \"xmax\": 5723012.972913164, \"ymax\": 4179347.1149951257}" - }, - 5119: { - "label": "ETRS 1989 NTM Zone 19", - "defaultExtent": "{\"xmin\": -5523012.972913165, \"ymin\": -15041912.458752153, \"xmax\": 5723012.972913165, \"ymax\": 4179347.1149951257}" - }, - 5120: { - "label": "ETRS 1989 NTM Zone 20", - "defaultExtent": "{\"xmin\": -5523012.972913165, \"ymin\": -15041912.458752153, \"xmax\": 5723012.972913165, \"ymax\": 4179347.1149951257}" - }, - 5121: { - "label": "ETRS 1989 NTM Zone 21", - "defaultExtent": "{\"xmin\": -5523012.972913165, \"ymin\": -15041912.458752153, \"xmax\": 5723012.972913165, \"ymax\": 4179347.1149951257}" - }, - 5122: { - "label": "ETRS 1989 NTM Zone 22", - "defaultExtent": "{\"xmin\": -5523012.972913165, \"ymin\": -15041912.458752153, \"xmax\": 5723012.972913165, \"ymax\": 4179347.1149951257}" - }, - 5123: { - "label": "ETRS 1989 NTM Zone 23", - "defaultExtent": "{\"xmin\": -5523012.972913165, \"ymin\": -15041912.458752153, \"xmax\": 5723012.972913165, \"ymax\": 4179347.1149951257}" - }, - 5124: { - "label": "ETRS 1989 NTM Zone 24", - "defaultExtent": "{\"xmin\": -5523012.972913165, \"ymin\": -15041912.458752153, \"xmax\": 5723012.972913165, \"ymax\": 4179347.1149951257}" - }, - 5125: { - "label": "ETRS 1989 NTM Zone 25", - "defaultExtent": "{\"xmin\": -5523012.972913165, \"ymin\": -15041912.458752153, \"xmax\": 5723012.972913165, \"ymax\": 4179347.1149951257}" - }, - 5126: { - "label": "ETRS 1989 NTM Zone 26", - "defaultExtent": "{\"xmin\": -5523012.972913165, \"ymin\": -15041912.458752153, \"xmax\": 5723012.9729131665, \"ymax\": 4179347.1149951257}" - }, - 5127: { - "label": "ETRS 1989 NTM Zone 27", - "defaultExtent": "{\"xmin\": -5523012.972913165, \"ymin\": -15041912.458752152, \"xmax\": 5723012.972913162, \"ymax\": 4179347.1149951257}" - }, - 5128: { - "label": "ETRS 1989 NTM Zone 28", - "defaultExtent": "{\"xmin\": -5523012.972913165, \"ymin\": -15041912.458752153, \"xmax\": 5723012.972913164, \"ymax\": 4179347.1149951257}" - }, - 5129: { - "label": "ETRS 1989 NTM Zone 29", - "defaultExtent": "{\"xmin\": -5523012.972913165, \"ymin\": -15041912.458752153, \"xmax\": 5723012.972913164, \"ymax\": 4179347.1149951257}" - }, - 5130: { - "label": "ETRS 1989 NTM Zone 30", - "defaultExtent": "{\"xmin\": -5523012.972913165, \"ymin\": -15041912.458752153, \"xmax\": 5723012.972913165, \"ymax\": 4179347.1149951257}" - }, - 5167: { - "label": "Korean 1985 Korea East Sea Belt", - "defaultExtent": "{\"xmin\": -5422345.712638921, \"ymin\": -13316646.83479561, \"xmax\": 5822345.712638919, \"ymax\": 5902491.419305773}" - }, - 5168: { - "label": "Korean 1985 Korea Central Belt Jeju", - "defaultExtent": "{\"xmin\": -5422345.712638919, \"ymin\": -13266646.83479561, \"xmax\": 5822345.712638919, \"ymax\": 5952491.419305773}" - }, - 5173: { - "label": "Korean 1985 Modified Korea West Belt", - "defaultExtent": "{\"xmin\": -5422345.712638919, \"ymin\": -13316646.83479561, \"xmax\": 5822345.712638919, \"ymax\": 5902491.419305773}" - }, - 5174: { - "label": "Korean 1985 Modified Korea Central Belt", - "defaultExtent": "{\"xmin\": -5422345.712638919, \"ymin\": -13316646.83479561, \"xmax\": 5822345.712638919, \"ymax\": 5902491.419305773}" - }, - 5175: { - "label": "Korean 1985 Modified Korea Central Belt Jeju", - "defaultExtent": "{\"xmin\": -5422345.712638919, \"ymin\": -13266646.83479561, \"xmax\": 5822345.712638919, \"ymax\": 5952491.419305773}" - }, - 5176: { - "label": "Korean 1985 Modified Korea East Belt", - "defaultExtent": "{\"xmin\": -5422345.712638919, \"ymin\": -13316646.83479561, \"xmax\": 5822345.712638919, \"ymax\": 5902491.419305773}" - }, - 5177: { - "label": "Korean 1985 Modified Korea East Sea Belt", - "defaultExtent": "{\"xmin\": -5422345.712638921, \"ymin\": -13316646.83479561, \"xmax\": 5822345.712638919, \"ymax\": 5902491.419305773}" - }, - 5178: { - "label": "Korean 1985 Korea Unified Coordinate System", - "defaultExtent": "{\"xmin\": -4620096.7743538655, \"ymin\": -11811120.176061692, \"xmax\": 6620096.774353864, \"ymax\": 7400330.422738052}" - }, - 5179: { - "label": "Korea 2000 Korea Unified Coordinate System", - "defaultExtent": "{\"xmin\": -4620763.767724002, \"ymin\": -11812600.55479475, \"xmax\": 6620763.767724001, \"ymax\": 7400970.515123028}" - }, - 5180: { - "label": "Korea 2000 Korea West Belt", - "defaultExtent": "{\"xmin\": -5423012.972913165, \"ymin\": -13318127.805917118, \"xmax\": 5823012.972913165, \"ymax\": 5903131.7678301595}" - }, - 5181: { - "label": "Korea 2000 Korea Central Belt", - "defaultExtent": "{\"xmin\": -5423012.972913165, \"ymin\": -13318127.805917118, \"xmax\": 5823012.972913165, \"ymax\": 5903131.7678301595}" - }, - 5182: { - "label": "Korea 2000 Korea Central Belt Jeju", - "defaultExtent": "{\"xmin\": -5423012.972913165, \"ymin\": -13268127.805917118, \"xmax\": 5823012.972913165, \"ymax\": 5953131.7678301595}" - }, - 5183: { - "label": "Korea 2000 Korea East Belt", - "defaultExtent": "{\"xmin\": -5423012.972913165, \"ymin\": -13318127.805917118, \"xmax\": 5823012.972913165, \"ymax\": 5903131.7678301595}" - }, - 5184: { - "label": "Korea 2000 Korea East Sea Belt", - "defaultExtent": "{\"xmin\": -5423012.972913167, \"ymin\": -13318127.805917118, \"xmax\": 5823012.972913165, \"ymax\": 5903131.7678301595}" - }, - 5185: { - "label": "Korea 2000 Korea West Belt 2010", - "defaultExtent": "{\"xmin\": -5423012.972913165, \"ymin\": -13218127.805917118, \"xmax\": 5823012.972913165, \"ymax\": 6003131.7678301595}" - }, - 5186: { - "label": "Korea 2000 Korea Central Belt 2010", - "defaultExtent": "{\"xmin\": -5423012.972913165, \"ymin\": -13218127.805917118, \"xmax\": 5823012.972913165, \"ymax\": 6003131.7678301595}" - }, - 5187: { - "label": "Korea 2000 Korea East Belt 2010", - "defaultExtent": "{\"xmin\": -5423012.972913165, \"ymin\": -13218127.805917118, \"xmax\": 5823012.972913165, \"ymax\": 6003131.7678301595}" - }, - 5188: { - "label": "Korea 2000 Korea East Sea Belt 2010", - "defaultExtent": "{\"xmin\": -5423012.972913167, \"ymin\": -13218127.805917118, \"xmax\": 5823012.972913165, \"ymax\": 6003131.7678301595}" - }, - 5221: { - "label": "S-JTSK Ferro Krovak East North", - "defaultExtent": "{\"xmin\": -33699687.5149513, \"ymin\": -33699674.50237148, \"xmax\": 33699687.51498498, \"ymax\": 33632762.769879624}" - }, - 5223: { - "label": "WGS 1984 UTM Gabon TM", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": -9106785.535047522, \"xmax\": 6120763.767699434, \"ymax\": 10106785.535047516}" - }, - 5228: { - "label": "GCS S JTSK/05", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 5229: { - "label": "GCS S JTSK/05 Ferro", - "defaultExtent": "{\"xmin\": -180.0, \"ymin\": -85.05112779126247, \"xmax\": 180.0, \"ymax\": 85.05112779126246}" - }, - 5233: { - "label": "GCS SLD99", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 5234: { - "label": "Kandawala Sri Lanka Grid", - "defaultExtent": "{\"xmin\": -5421783.633828565, \"ymin\": -10182746.011475747, \"xmax\": 5821783.633828564, \"ymax\": 9034762.166947024}" - }, - 5235: { - "label": "SLD99 Sri Lanka Grid 1999", - "defaultExtent": "{\"xmin\": -5121783.633828565, \"ymin\": -9882745.043956919, \"xmax\": 6121783.633828564, \"ymax\": 9334763.13446585}" - }, - 5243: { - "label": "ETRS 1989 LCC Germany E-N", - "defaultExtent": "{\"xmin\": -35955599.04675246, \"ymin\": -30798883.9161205, \"xmax\": 35955599.04564843, \"ymax\": 32804981.19303063}" - }, - 5246: { - "label": "GCS GDBD2009", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 5247: { - "label": "GDBD2009 GEORSO", - "defaultExtent": "{\"xmin\": -28973723.118105106, \"ymin\": -31202236.19634591, \"xmax\": 28970903.097957358, \"ymax\": 31198902.354118135}" - }, - 5252: { - "label": "GCS TUREF", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 5253: { - "label": "TUREF TM27", - "defaultExtent": "{\"xmin\": -5123012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 6123012.972913165, \"ymax\": 9610629.786873637}" - }, - 5254: { - "label": "TUREF TM30", - "defaultExtent": "{\"xmin\": -5123012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 6123012.972913164, \"ymax\": 9610629.786873637}" - }, - 5255: { - "label": "TUREF TM33", - "defaultExtent": "{\"xmin\": -5123012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 6123012.972913164, \"ymax\": 9610629.786873637}" - }, - 5256: { - "label": "TUREF TM36", - "defaultExtent": "{\"xmin\": -5123012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 6123012.972913165, \"ymax\": 9610629.786873637}" - }, - 5257: { - "label": "TUREF TM39", - "defaultExtent": "{\"xmin\": -5123012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 6123012.972913164, \"ymax\": 9610629.786873637}" - }, - 5258: { - "label": "TUREF TM42", - "defaultExtent": "{\"xmin\": -5123012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 6123012.972913164, \"ymax\": 9610629.786873637}" - }, - 5259: { - "label": "TUREF TM45", - "defaultExtent": "{\"xmin\": -5123012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 6123012.972913165, \"ymax\": 9610629.786873637}" - }, - 5264: { - "label": "GCS DRUKREF 03", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 5266: { - "label": "DRUKREF 03 Bhutan National Grid", - "defaultExtent": "{\"xmin\": -5373012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 5873012.972913165, \"ymax\": 9610629.786873637}" - }, - 5269: { - "label": "TUREF 3 Degree GK Zone 9", - "defaultExtent": "{\"xmin\": 3876987.0270868354, \"ymin\": -9610629.786873642, \"xmax\": 15123012.972913165, \"ymax\": 9610629.786873637}" - }, - 5270: { - "label": "TUREF 3 Degree GK Zone 10", - "defaultExtent": "{\"xmin\": 4876987.027086835, \"ymin\": -9610629.786873642, \"xmax\": 16123012.972913165, \"ymax\": 9610629.786873637}" - }, - 5271: { - "label": "TUREF 3 Degree GK Zone 11", - "defaultExtent": "{\"xmin\": 5876987.027086835, \"ymin\": -9610629.786873642, \"xmax\": 17123012.972913165, \"ymax\": 9610629.786873637}" - }, - 5272: { - "label": "TUREF 3 Degree GK Zone 12", - "defaultExtent": "{\"xmin\": 6876987.027086835, \"ymin\": -9610629.786873642, \"xmax\": 18123012.972913165, \"ymax\": 9610629.786873637}" - }, - 5273: { - "label": "TUREF 3 Degree GK Zone 13", - "defaultExtent": "{\"xmin\": 7876987.027086835, \"ymin\": -9610629.786873642, \"xmax\": 19123012.972913165, \"ymax\": 9610629.786873637}" - }, - 5274: { - "label": "TUREF 3 Degree GK Zone 14", - "defaultExtent": "{\"xmin\": 8876987.027086835, \"ymin\": -9610629.786873642, \"xmax\": 20123012.972913165, \"ymax\": 9610629.786873637}" - }, - 5275: { - "label": "TUREF 3 Degree GK Zone 15", - "defaultExtent": "{\"xmin\": 9876987.027086835, \"ymin\": -9610629.786873642, \"xmax\": 21123012.972913165, \"ymax\": 9610629.786873637}" - }, - 5292: { - "label": "DRUKREF 03 Bumthang TM", - "defaultExtent": "{\"xmin\": -5373012.972913165, \"ymin\": -12110629.786873642, \"xmax\": 5873012.972913165, \"ymax\": 7110629.786873637}" - }, - 5293: { - "label": "DRUKREF 03 Chhukha TM", - "defaultExtent": "{\"xmin\": -5373012.972913165, \"ymin\": -12110629.786873642, \"xmax\": 5873012.972913165, \"ymax\": 7110629.786873637}" - }, - 5294: { - "label": "DRUKREF 03 Dagana TM", - "defaultExtent": "{\"xmin\": -5373012.972913165, \"ymin\": -12110629.786873642, \"xmax\": 5873012.972913167, \"ymax\": 7110629.786873637}" - }, - 5295: { - "label": "DRUKREF 03 Gasa TM", - "defaultExtent": "{\"xmin\": -5373012.972913165, \"ymin\": -12110629.786873642, \"xmax\": 5873012.972913163, \"ymax\": 7110629.786873637}" - }, - 5296: { - "label": "DRUKREF 03 Ha TM", - "defaultExtent": "{\"xmin\": -5373012.972913164, \"ymin\": -12110629.786873642, \"xmax\": 5873012.972913163, \"ymax\": 7110629.786873637}" - }, - 5297: { - "label": "DRUKREF 03 Lhuentse TM", - "defaultExtent": "{\"xmin\": -5373012.972913165, \"ymin\": -12110629.786873642, \"xmax\": 5873012.972913163, \"ymax\": 7110629.786873637}" - }, - 5298: { - "label": "DRUKREF 03 Mongar TM", - "defaultExtent": "{\"xmin\": -5373012.972913165, \"ymin\": -12110629.786873642, \"xmax\": 5873012.972913163, \"ymax\": 7110629.786873637}" - }, - 5299: { - "label": "DRUKREF 03 Paro TM", - "defaultExtent": "{\"xmin\": -5373012.972913165, \"ymin\": -12110629.786873642, \"xmax\": 5873012.972913163, \"ymax\": 7110629.786873637}" - }, - 5300: { - "label": "DRUKREF 03 Pemagatshel TM", - "defaultExtent": "{\"xmin\": -5373012.972913165, \"ymin\": -12110629.786873642, \"xmax\": 5873012.972913165, \"ymax\": 7110629.786873637}" - }, - 5301: { - "label": "DRUKREF 03 Punakha TM", - "defaultExtent": "{\"xmin\": -5373012.972913165, \"ymin\": -12110629.786873642, \"xmax\": 5873012.972913167, \"ymax\": 7110629.786873637}" - }, - 5302: { - "label": "DRUKREF 03 Samdrup Jongkhar TM", - "defaultExtent": "{\"xmin\": -5373012.972913165, \"ymin\": -12110629.786873642, \"xmax\": 5873012.972913163, \"ymax\": 7110629.786873637}" - }, - 5303: { - "label": "DRUKREF 03 Samtse TM", - "defaultExtent": "{\"xmin\": -5373012.972913165, \"ymin\": -12110629.786873642, \"xmax\": 5873012.972913163, \"ymax\": 7110629.786873637}" - }, - 5304: { - "label": "DRUKREF 03 Sarpang TM", - "defaultExtent": "{\"xmin\": -5373012.972913165, \"ymin\": -12110629.786873642, \"xmax\": 5873012.972913167, \"ymax\": 7110629.786873637}" - }, - 5305: { - "label": "DRUKREF 03 Thimphu TM", - "defaultExtent": "{\"xmin\": -5373012.972913165, \"ymin\": -12110629.786873642, \"xmax\": 5873012.972913165, \"ymax\": 7110629.786873637}" - }, - 5306: { - "label": "DRUKREF 03 Trashigang TM", - "defaultExtent": "{\"xmin\": -5373012.972913165, \"ymin\": -12110629.786873642, \"xmax\": 5873012.972913163, \"ymax\": 7110629.786873637}" - }, - 5307: { - "label": "DRUKREF 03 Trongsa TM", - "defaultExtent": "{\"xmin\": -5373012.972913165, \"ymin\": -12110629.786873639, \"xmax\": 5873012.972913167, \"ymax\": 7110629.786873637}" - }, - 5308: { - "label": "DRUKREF 03 Tsirang TM", - "defaultExtent": "{\"xmin\": -5373012.972913165, \"ymin\": -12110629.786873642, \"xmax\": 5873012.972913167, \"ymax\": 7110629.786873637}" - }, - 5309: { - "label": "DRUKREF 03 Wangdue Phodrang TM", - "defaultExtent": "{\"xmin\": -5373012.972913165, \"ymin\": -12110629.786873642, \"xmax\": 5873012.972913165, \"ymax\": 7110629.786873637}" - }, - 5310: { - "label": "DRUKREF 03 Yangtse TM", - "defaultExtent": "{\"xmin\": -5373012.972913165, \"ymin\": -12110629.786873642, \"xmax\": 5873012.972913163, \"ymax\": 7110629.786873637}" - }, - 5311: { - "label": "DRUKREF 03 Zhemgang TM", - "defaultExtent": "{\"xmin\": -5373012.972913165, \"ymin\": -12110629.786873642, \"xmax\": 5873012.972913163, \"ymax\": 7110629.786873637}" - }, - 5316: { - "label": "ETRS 1989 FAROE TM", - "defaultExtent": "{\"xmin\": -5422996.103874247, \"ymin\": -15610600.954984281, \"xmax\": 5822996.103874247, \"ymax\": 3610600.9549842756}" - }, - 5320: { - "label": "NAD 1983 Teranet Ontario Lambert", - "defaultExtent": "{\"xmin\": -34997789.93144692, \"ymin\": -24440137.28648223, \"xmax\": 36997789.93150204, \"ymax\": 37906076.03688118}" - }, - 5321: { - "label": "NAD 1983 CSRS Teranet Ontario Lambert", - "defaultExtent": "{\"xmin\": -34997789.93144692, \"ymin\": -24440137.28648223, \"xmax\": 36997789.93150204, \"ymax\": 37906076.03688118}" - }, - 5324: { - "label": "GCS ISN 2004", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 5325: { - "label": "ISN 2004 Lambert 2004", - "defaultExtent": "{\"xmin\": -33341329.99311783, \"ymin\": -31759285.719874755, \"xmax\": 36741329.993086554, \"ymax\": 36817181.310167946}" - }, - 5329: { - "label": "Gunung Segara Jakarta NEIEZ", - "defaultExtent": "{\"xmin\": -16075077.227333918, \"ymin\": -19032704.26818891, \"xmax\": 23875077.22732159, \"ymax\": 20832704.268526573}" - }, - 5330: { - "label": "Batavia Jakarta NEIEZ", - "defaultExtent": "{\"xmin\": -16075077.227333918, \"ymin\": -19032704.26818891, \"xmax\": 23875077.22732159, \"ymax\": 20832704.268526573}" - }, - 5331: { - "label": "Makassar Jakarta NEIEZ", - "defaultExtent": "{\"xmin\": -16075077.227333918, \"ymin\": -19032704.26818891, \"xmax\": 23875077.22732159, \"ymax\": 20832704.268526573}" - }, - 5337: { - "label": "Aratu UTM Zone 25S", - "defaultExtent": "{\"xmin\": -5121006.178542031, \"ymin\": 392912.94750043936, \"xmax\": 6121006.178542033, \"ymax\": 19607087.052499555}" - }, - 5340: { - "label": "GCS POSGAR 2007", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 5343: { - "label": "POSGAR 2007 Argentina Zone 1", - "defaultExtent": "{\"xmin\": -4123012.9729131646, \"ymin\": 391335.94235681987, \"xmax\": 7123012.972913165, \"ymax\": 19612595.516104095}" - }, - 5344: { - "label": "POSGAR 2007 Argentina Zone 2", - "defaultExtent": "{\"xmin\": -3123012.9729131674, \"ymin\": 391335.94235681987, \"xmax\": 8123012.972913165, \"ymax\": 19612595.516104095}" - }, - 5345: { - "label": "POSGAR 2007 Argentina Zone 3", - "defaultExtent": "{\"xmin\": -2123012.9729131646, \"ymin\": 391335.94235681987, \"xmax\": 9123012.972913165, \"ymax\": 19612595.516104095}" - }, - 5346: { - "label": "POSGAR 2007 Argentina Zone 4", - "defaultExtent": "{\"xmin\": -1123012.9729131646, \"ymin\": 391335.94235681987, \"xmax\": 10123012.972913165, \"ymax\": 19612595.516104095}" - }, - 5347: { - "label": "POSGAR 2007 Argentina Zone 5", - "defaultExtent": "{\"xmin\": -123012.97291316744, \"ymin\": 391335.94235681987, \"xmax\": 11123012.972913165, \"ymax\": 19612595.516104095}" - }, - 5348: { - "label": "POSGAR 2007 Argentina Zone 6", - "defaultExtent": "{\"xmin\": 876987.0270868354, \"ymin\": 391335.94235681987, \"xmax\": 12123012.972913165, \"ymax\": 19612595.516104095}" - }, - 5349: { - "label": "POSGAR 2007 Argentina Zone 7", - "defaultExtent": "{\"xmin\": 1876987.0270868354, \"ymin\": 391335.94235681987, \"xmax\": 13123012.972913165, \"ymax\": 19612595.516104095}" - }, - 5354: { - "label": "GCS MARGEN", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 5355: { - "label": "MARGEN UTM Zone 20S", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": 393214.46504110843, \"xmax\": 6120763.767724001, \"ymax\": 19606785.534958888}" - }, - 5356: { - "label": "MARGEN UTM Zone 19S", - "defaultExtent": "{\"xmin\": -5120763.767724002, \"ymin\": 393214.46504110843, \"xmax\": 6120763.767724001, \"ymax\": 19606785.534958888}" - }, - 5357: { - "label": "MARGEN UTM Zone 21S", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": 393214.46504110843, \"xmax\": 6120763.767724001, \"ymax\": 19606785.534958888}" - }, - 5360: { - "label": "GCS SIRGAS-Chile", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 5361: { - "label": "SIRGAS-Chile UTM Zone 19S", - "defaultExtent": "{\"xmin\": -5120763.767724002, \"ymin\": 393214.46504110843, \"xmax\": 6120763.767724001, \"ymax\": 19606785.534958888}" - }, - 5362: { - "label": "SIRGAS-Chile UTM Zone 18S", - "defaultExtent": "{\"xmin\": -5120763.767724002, \"ymin\": 393214.46504110843, \"xmax\": 6120763.767724001, \"ymax\": 19606785.534958888}" - }, - 5365: { - "label": "GCS CR05", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 5367: { - "label": "CRTM05", - "defaultExtent": "{\"xmin\": -5122450.671591299, \"ymin\": -9609668.72398361, \"xmax\": 6122450.671591301, \"ymax\": 9609668.723983606}" - }, - 5371: { - "label": "GCS MARCARIO SOLIS", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 5373: { - "label": "GCS Peru96", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 5381: { - "label": "GCS SIRGAS-ROU98", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 5382: { - "label": "SIRGAS-ROU98 UTM Zone 21S", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": 393214.4649524782, \"xmax\": 6120763.767699434, \"ymax\": 19606785.535047516}" - }, - 5383: { - "label": "SIRGAS-ROU98 UTM Zone 22S", - "defaultExtent": "{\"xmin\": -5120763.767699435, \"ymin\": 393214.4649524782, \"xmax\": 6120763.767699434, \"ymax\": 19606785.535047516}" - }, - 5387: { - "label": "Peru96 UTM Zone 18S", - "defaultExtent": "{\"xmin\": -5120763.767724002, \"ymin\": 393214.46504110843, \"xmax\": 6120763.767724001, \"ymax\": 19606785.534958888}" - }, - 5389: { - "label": "Peru96 UTM Zone 19S", - "defaultExtent": "{\"xmin\": -5120763.767724002, \"ymin\": 393214.46504110843, \"xmax\": 6120763.767724001, \"ymax\": 19606785.534958888}" - }, - 5393: { - "label": "GCS SIRGAS ES2007.8", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 5396: { - "label": "SIRGAS 2000 UTM Zone 26S", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": 393214.46504110843, \"xmax\": 6120763.767724001, \"ymax\": 19606785.534958888}" - }, - 5451: { - "label": "GCS Ocotepeque 1935", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 5456: { - "label": "Ocotepeque 1935 Costa Rica Norte", - "defaultExtent": "{\"xmin\": -32289134.658735197, \"ymin\": -25894564.584026325, \"xmax\": 33289134.658843182, \"ymax\": 17805501.48398734}" - }, - 5457: { - "label": "Ocotepeque 1935 Costa Rica Sur", - "defaultExtent": "{\"xmin\": -30872278.49460389, \"ymin\": -25879689.661487438, \"xmax\": 31872278.49449722, \"ymax\": 18317381.469369195}" - }, - 5459: { - "label": "Ocotepeque 1935 Guatemala Sur", - "defaultExtent": "{\"xmin\": -35836017.190327846, \"ymin\": -25973070.886990257, \"xmax\": 36836017.19043182, \"ymax\": 16386283.78267812}" - }, - 5460: { - "label": "Ocotepeque 1935 El Salvador Lambert", - "defaultExtent": "{\"xmin\": -35053153.79999666, \"ymin\": -25943236.059445225, \"xmax\": 36053153.799996674, \"ymax\": 16737214.455401175}" - }, - 5461: { - "label": "Ocotepeque 1935 Nicaragua Norte", - "defaultExtent": "{\"xmin\": -35112086.05867421, \"ymin\": -25881546.058173984, \"xmax\": 36112086.05867423, \"ymax\": 16772036.673037328}" - }, - 5462: { - "label": "Ocotepeque 1935 Nicaragua Sur", - "defaultExtent": "{\"xmin\": -33417381.09111642, \"ymin\": -25881214.485479973, \"xmax\": 34417381.09111644, \"ymax\": 17413040.921334285}" - }, - 5463: { - "label": "SAD 1969 UTM Zone 17N", - "defaultExtent": "{\"xmin\": -5120784.157939793, \"ymin\": -9606819.739861675, \"xmax\": 6120784.157939793, \"ymax\": 9606819.739861669}" - }, - 5464: { - "label": "GCS Sibun Gorge 1922", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 5467: { - "label": "GCS Panama-Colon 1911", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 5469: { - "label": "Panama-Colon 1911 Panama Lambert", - "defaultExtent": "{\"xmin\": -30275386.213755667, \"ymin\": -25944798.2930315, \"xmax\": 31275386.213755682, \"ymax\": 18458011.14489087}" - }, - 5472: { - "label": "Panama-Colon 1911 Panama Polyconic", - "defaultExtent": "{\"xmin\": -20913719.236073203, \"ymin\": -16689969.116570786, \"xmax\": 22913719.23607322, \"ymax\": 16880612.75564451}" - }, - 5479: { - "label": "RSRGD2000 MSLC2000", - "defaultExtent": "{\"xmin\": -26493972.019650053, \"ymin\": -29775298.522151746, \"xmax\": 40493972.019862235, \"ymax\": 37134386.29341378}" - }, - 5480: { - "label": "RSRGD2000 BCLC2000", - "defaultExtent": "{\"xmin\": -29027764.90731831, \"ymin\": -32580392.260082953, \"xmax\": 39027764.907747045, \"ymax\": 35253677.81570643}" - }, - 5481: { - "label": "RSRGD2000 PCLC2000", - "defaultExtent": "{\"xmin\": -31406754.55338628, \"ymin\": -35095164.146852605, \"xmax\": 37406754.553577326, \"ymax\": 33266508.578531854}" - }, - 5482: { - "label": "RSRGD2000 RSPS2000", - "defaultExtent": "{\"xmin\": -25567784.1080401, \"ymin\": -29567784.10804025, \"xmax\": 35567784.1080401, \"ymax\": 31567784.10803964}" - }, - 5489: { - "label": "GCS RGAF09", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 5490: { - "label": "RGAF09 UTM Zone 20N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 5513: { - "label": "S-JTSK Krovak", - "defaultExtent": "{\"xmin\": -33632762.769879624, \"ymin\": -33699687.51498494, \"xmax\": 33699674.50237148, \"ymax\": 33699687.51495131}" - }, - 5514: { - "label": "S-JTSK Krovak East North", - "defaultExtent": "{\"xmin\": -33699687.51495131, \"ymin\": -33699674.50237148, \"xmax\": 33699687.51498494, \"ymax\": 33632762.769879624}" - }, - 5518: { - "label": "Chatham Island 1971 Map Grid", - "defaultExtent": "{\"xmin\": -5273255.480734303, \"ymin\": -4087019.8285775147, \"xmax\": 5973255.480734338, \"ymax\": 15134843.021520047}" - }, - 5519: { - "label": "Chatham Islands 1979 Map Grid", - "defaultExtent": "{\"xmin\": -5273255.480734303, \"ymin\": -4087019.8285775147, \"xmax\": 5973255.480734338, \"ymax\": 15134843.021520047}" - }, - 5520: { - "label": "DHDN 3 Degree Gauss Zone 1", - "defaultExtent": "{\"xmin\": -4122345.7126389192, \"ymin\": -9609569.127050694, \"xmax\": 7122345.71263892, \"ymax\": 9609569.127050688}" - }, - 5523: { - "label": "WGS 1984 UTM Gabon TM 2011", - "defaultExtent": "{\"xmin\": -4120763.7676994344, \"ymin\": -4106785.535047522, \"xmax\": 7120763.767699434, \"ymax\": 15106785.535047516}" - }, - 5524: { - "label": "GCS Corrego Alegre 1961", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 5527: { - "label": "GCS SAD 1969 96", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 5530: { - "label": "SAD 1969 96 Brazil Polyconic", - "defaultExtent": "{\"xmin\": -15037579.32380563, \"ymin\": -5348308.772921104, \"xmax\": 25037579.32380564, \"ymax\": 25348308.772921093}" - }, - 5531: { - "label": "SAD 1969 96 UTM Zone 21S", - "defaultExtent": "{\"xmin\": -5120784.157939793, \"ymin\": 393180.2601383254, \"xmax\": 6120784.157939793, \"ymax\": 19606819.739861667}" - }, - 5533: { - "label": "SAD 1969 96 UTM Zone 23S", - "defaultExtent": "{\"xmin\": -5120784.157939793, \"ymin\": 393180.2601383254, \"xmax\": 6120784.157939793, \"ymax\": 19606819.739861667}" - }, - 5534: { - "label": "SAD 1969 96 UTM Zone 24S", - "defaultExtent": "{\"xmin\": -5120784.157939792, \"ymin\": 393180.2601383254, \"xmax\": 6120784.157939793, \"ymax\": 19606819.739861667}" - }, - 5535: { - "label": "SAD 1969 96 UTM Zone 25S", - "defaultExtent": "{\"xmin\": -5120784.157939792, \"ymin\": 393180.2601383254, \"xmax\": 6120784.157939793, \"ymax\": 19606819.739861667}" - }, - 5536: { - "label": "Corrego Alegre 1961 UTM Zone 21S", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": 392912.94750043936, \"xmax\": 6121006.178542033, \"ymax\": 19607087.052499555}" - }, - 5537: { - "label": "Corrego Alegre 1961 UTM Zone 22S", - "defaultExtent": "{\"xmin\": -5121006.178542034, \"ymin\": 392912.94750043936, \"xmax\": 6121006.178542033, \"ymax\": 19607087.052499555}" - }, - 5538: { - "label": "Corrego Alegre 1961 UTM Zone 23S", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": 392912.94750043936, \"xmax\": 6121006.178542033, \"ymax\": 19607087.052499555}" - }, - 5539: { - "label": "Corrego Alegre 1961 UTM Zone 24S", - "defaultExtent": "{\"xmin\": -5121006.178542031, \"ymin\": 392912.94750043936, \"xmax\": 6121006.178542033, \"ymax\": 19607087.052499555}" - }, - 5546: { - "label": "GCS PNG94", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 5550: { - "label": "PNG94 PNGMG94 Zone 54", - "defaultExtent": "{\"xmin\": -5120763.767723992, \"ymin\": 393214.4650619123, \"xmax\": 6120763.767724008, \"ymax\": 19606785.534938097}" - }, - 5551: { - "label": "PNG94 PNGMG94 Zone 55", - "defaultExtent": "{\"xmin\": -5120763.767723991, \"ymin\": 393214.4650619123, \"xmax\": 6120763.767724008, \"ymax\": 19606785.534938097}" - }, - 5552: { - "label": "PNG94 PNGMG94 Zone 56", - "defaultExtent": "{\"xmin\": -5120763.767723991, \"ymin\": 393214.4650619123, \"xmax\": 6120763.767724008, \"ymax\": 19606785.534938097}" - }, - 5559: { - "label": "Ocotepeque 1935 Guatemala Norte", - "defaultExtent": "{\"xmin\": -37005128.9335971, \"ymin\": -26145561.98950497, \"xmax\": 38005128.933695495, \"ymax\": 15693865.652280116}" - }, - 5561: { - "label": "GCS Ukraine 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 5562: { - "label": "Ukraine 2000 GK Zone 4", - "defaultExtent": "{\"xmin\": -1123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 10123107.467526717, \"ymax\": 9610795.116133094}" - }, - 5563: { - "label": "Ukraine 2000 GK Zone 5", - "defaultExtent": "{\"xmin\": -123107.46752671711, \"ymin\": -9610795.116133098, \"xmax\": 11123107.467526717, \"ymax\": 9610795.116133094}" - }, - 5564: { - "label": "Ukraine 2000 GK Zone 6", - "defaultExtent": "{\"xmin\": 876892.5324732829, \"ymin\": -9610795.116133098, \"xmax\": 12123107.467526715, \"ymax\": 9610795.116133094}" - }, - 5565: { - "label": "Ukraine 2000 GK Zone 7", - "defaultExtent": "{\"xmin\": 1876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 13123107.467526715, \"ymax\": 9610795.116133094}" - }, - 5566: { - "label": "Ukraine 2000 GK CM 21E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 5567: { - "label": "Ukraine 2000 GK CM 27E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 5568: { - "label": "Ukraine 2000 GK CM 33E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526716, \"ymax\": 9610795.116133094}" - }, - 5569: { - "label": "Ukraine 2000 GK CM 39E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526716, \"ymax\": 9610795.116133094}" - }, - 5570: { - "label": "Ukraine 2000 3 Degree GK Zone 7", - "defaultExtent": "{\"xmin\": 1876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 13123107.467526717, \"ymax\": 9610795.116133094}" - }, - 5571: { - "label": "Ukraine 2000 3 Degree GK Zone 8", - "defaultExtent": "{\"xmin\": 2876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 14123107.467526715, \"ymax\": 9610795.116133094}" - }, - 5572: { - "label": "Ukraine 2000 3 Degree GK Zone 9", - "defaultExtent": "{\"xmin\": 3876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 15123107.467526717, \"ymax\": 9610795.116133094}" - }, - 5573: { - "label": "Ukraine 2000 3 Degree GK Zone 10", - "defaultExtent": "{\"xmin\": 4876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 16123107.467526715, \"ymax\": 9610795.116133094}" - }, - 5574: { - "label": "Ukraine 2000 3 Degree GK Zone 11", - "defaultExtent": "{\"xmin\": 5876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 17123107.467526715, \"ymax\": 9610795.116133094}" - }, - 5575: { - "label": "Ukraine 2000 3 Degree GK Zone 12", - "defaultExtent": "{\"xmin\": 6876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 18123107.46752672, \"ymax\": 9610795.116133094}" - }, - 5576: { - "label": "Ukraine 2000 3 Degree GK Zone 13", - "defaultExtent": "{\"xmin\": 7876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 19123107.467526715, \"ymax\": 9610795.116133094}" - }, - 5577: { - "label": "Ukraine 2000 3 Degree GK CM 21E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 5578: { - "label": "Ukraine 2000 3 Degree GK CM 24E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526716, \"ymax\": 9610795.116133094}" - }, - 5579: { - "label": "Ukraine 2000 3 Degree GK CM 27E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 5580: { - "label": "Ukraine 2000 3 Degree GK CM 30E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526716, \"ymax\": 9610795.116133094}" - }, - 5581: { - "label": "Ukraine 2000 3 Degree GK CM 33E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526716, \"ymax\": 9610795.116133094}" - }, - 5582: { - "label": "Ukraine 2000 3 Degree GK CM 36E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 5583: { - "label": "Ukraine 2000 3 Degree GK CM 39E", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526716, \"ymax\": 9610795.116133094}" - }, - 5588: { - "label": "NAD 1927 New Brunswick Stereographic", - "defaultExtent": "{\"xmin\": -99774461.27984962, \"ymin\": -99211550.14882007, \"xmax\": 101774461.28028953, \"ymax\": 101716192.28562436}" - }, - 5589: { - "label": "Sibun Gorge 1922 Colony Grid", - "defaultExtent": "{\"xmin\": -18231788.063587736, \"ymin\": -37276603.43043709, \"xmax\": 18666306.58358772, \"ymax\": 25785774.365790125}" - }, - 5593: { - "label": "GCS FEH2010", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 5596: { - "label": "FEH2010 Fehmarnbelt TM", - "defaultExtent": "{\"xmin\": -4623012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 6623012.972913165, \"ymax\": 9610629.786873637}" - }, - 5623: { - "label": "NAD 1927 StatePlane Michigan East Old FIPS 2101", - "defaultExtent": "{\"xmin\": -17947497.75954462, \"ymin\": -46606243.24123219, \"xmax\": 18947497.759544615, \"ymax\": 16451269.396136547}" - }, - 5624: { - "label": "NAD 1927 StatePlane Michigan Central Old FIPS 2102", - "defaultExtent": "{\"xmin\": -17946874.822049316, \"ymin\": -46604669.43556983, \"xmax\": 18946874.822049316, \"ymax\": 16450713.867539348}" - }, - 5625: { - "label": "NAD 1927 StatePlane Michigan West Old FIPS 2103", - "defaultExtent": "{\"xmin\": -17946874.822049312, \"ymin\": -46604669.43556983, \"xmax\": 18946874.822049312, \"ymax\": 16450713.867539348}" - }, - 5627: { - "label": "ED 1950 TM 6 NE", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 5629: { - "label": "Moznet UTM Zone 38S", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": 393214.4649524782, \"xmax\": 6120763.767699434, \"ymax\": 19606785.535047516}" - }, - 5631: { - "label": "Pulkovo 1942 Adj 1958 GK Zone 2 E-N", - "defaultExtent": "{\"xmin\": -3123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 8123107.467526717, \"ymax\": 9610795.116133094}" - }, - 5632: { - "label": "PTRA08 LCC Europe", - "defaultExtent": "{\"xmin\": -31211653.14061199, \"ymin\": -27510234.270025503, \"xmax\": 39211653.14061456, \"ymax\": 34503962.231349826}" - }, - 5633: { - "label": "PTRA08 LAEA Europe", - "defaultExtent": "{\"xmin\": -8426404.408394862, \"ymin\": -9526565.972599337, \"xmax\": 17068404.40839246, \"ymax\": 15946565.972567223}" - }, - 5634: { - "label": "REGCAN95 LCC Europe", - "defaultExtent": "{\"xmin\": -31211653.14061199, \"ymin\": -27510234.270025503, \"xmax\": 39211653.14061456, \"ymax\": 34503962.231349826}" - }, - 5635: { - "label": "REGCAN95 LAEA Europe", - "defaultExtent": "{\"xmin\": -8426404.408394862, \"ymin\": -9526565.972599337, \"xmax\": 17068404.40839246, \"ymax\": 15946565.972567223}" - }, - 5636: { - "label": "TUREF LAEA Europe", - "defaultExtent": "{\"xmin\": -8426404.408394862, \"ymin\": -9526565.972599337, \"xmax\": 17068404.40839246, \"ymax\": 15946565.972567223}" - }, - 5637: { - "label": "TUREF LCC Europe", - "defaultExtent": "{\"xmin\": -31211653.14061199, \"ymin\": -27510234.270025503, \"xmax\": 39211653.14061456, \"ymax\": 34503962.231349826}" - }, - 5638: { - "label": "ISN 2004 LAEA Europe", - "defaultExtent": "{\"xmin\": -8426404.408394862, \"ymin\": -9526565.972599337, \"xmax\": 17068404.40839246, \"ymax\": 15946565.972567223}" - }, - 5639: { - "label": "ISN 2004 LCC Europe", - "defaultExtent": "{\"xmin\": -31211653.14061199, \"ymin\": -27510234.270025503, \"xmax\": 39211653.14061456, \"ymax\": 34503962.231349826}" - }, - 5641: { - "label": "SIRGAS 2000 Brazil Mercator", - "defaultExtent": "{\"xmin\": -15025382.398780778, \"ymin\": -9982775.102513395, \"xmax\": 25025382.398780804, \"ymax\": 29982775.102851924}" - }, - 5643: { - "label": "ED 1950 Southern Permian Basin Lambert", - "defaultExtent": "{\"xmin\": -35010183.2714132, \"ymin\": -30483098.902449787, \"xmax\": 36640183.27174568, \"ymax\": 34580137.939522475}" - }, - 5644: { - "label": "RGR 1992 UTM 39S", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": 393214.46504110843, \"xmax\": 6120763.767724002, \"ymax\": 19606785.534958888}" - }, - 5646: { - "label": "NAD 1983 StatePlane Vermont FIPS 4400 Feet", - "defaultExtent": "{\"xmin\": -16807092.86547564, \"ymin\": -46972656.66709737, \"xmax\": 20087926.198808964, \"ymax\": 16086840.245779505}" - }, - 5649: { - "label": "ETRS 1989 UTM Zone 31N zE-N", - "defaultExtent": "{\"xmin\": 25879236.232276, \"ymin\": -9606785.534958892, \"xmax\": 37120763.767724, \"ymax\": 9606785.534958888}" - }, - 5650: { - "label": "ETRS 1989 UTM Zone 33N zE-N", - "defaultExtent": "{\"xmin\": 27879236.232276, \"ymin\": -9606785.534958892, \"xmax\": 39120763.767724, \"ymax\": 9606785.534958888}" - }, - 5651: { - "label": "ETRS 1989 UTM Zone 31N N-zE", - "defaultExtent": "{\"xmin\": 25879236.232276, \"ymin\": -9606785.534958892, \"xmax\": 37120763.767724, \"ymax\": 9606785.534958888}" - }, - 5652: { - "label": "ETRS 1989 UTM Zone 32N N-zE", - "defaultExtent": "{\"xmin\": 26879236.232276, \"ymin\": -9606785.534958892, \"xmax\": 38120763.767724, \"ymax\": 9606785.534958888}" - }, - 5653: { - "label": "ETRS 1989 UTM Zone 33N N-zE", - "defaultExtent": "{\"xmin\": 27879236.232276, \"ymin\": -9606785.534958892, \"xmax\": 39120763.767724, \"ymax\": 9606785.534958888}" - }, - 5654: { - "label": "NAD 1983 HARN StatePlane Vermont FIPS 4400 Ft US", - "defaultExtent": "{\"xmin\": -16807092.86547564, \"ymin\": -46972656.66709737, \"xmax\": 20087926.198808964, \"ymax\": 16086840.245779505}" - }, - 5655: { - "label": "NAD 1983 NSRS2007 StatePlane Vermont FIPS 4400 Ft US", - "defaultExtent": "{\"xmin\": -16807092.86547564, \"ymin\": -46972656.66709737, \"xmax\": 20087926.198808964, \"ymax\": 16086840.245779505}" - }, - 5659: { - "label": "Monte Mario TM Emilia-Romagna", - "defaultExtent": "{\"xmin\": -5120953.178542033, \"ymin\": -13606907.05249956, \"xmax\": 6121059.178542033, \"ymax\": 5607267.052499557}" - }, - 5663: { - "label": "Pulkovo 1942 Adj 1958 GK Zone 3 E-N", - "defaultExtent": "{\"xmin\": -2123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 9123107.467526717, \"ymax\": 9610795.116133094}" - }, - 5664: { - "label": "Pulkovo 1942 Adj 1983 GK Zone 2 E-N", - "defaultExtent": "{\"xmin\": -3123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 8123107.467526717, \"ymax\": 9610795.116133094}" - }, - 5665: { - "label": "Pulkovo 1942 Adj 1983 GK Zone 3 E-N", - "defaultExtent": "{\"xmin\": -2123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 9123107.467526717, \"ymax\": 9610795.116133094}" - }, - 5666: { - "label": "PD/83 3 Degree GK Zone 3 E-N", - "defaultExtent": "{\"xmin\": -2122345.7126389192, \"ymin\": -9609569.127050694, \"xmax\": 9122345.712638918, \"ymax\": 9609569.127050688}" - }, - 5667: { - "label": "PD/83 3 Degree GK Zone 4 E-N", - "defaultExtent": "{\"xmin\": -1122345.7126389192, \"ymin\": -9609569.127050694, \"xmax\": 10122345.712638918, \"ymax\": 9609569.127050688}" - }, - 5668: { - "label": "RD/83 3 Degree GK Zone 4 E-N", - "defaultExtent": "{\"xmin\": -1122345.7126389192, \"ymin\": -9609569.127050694, \"xmax\": 10122345.712638918, \"ymax\": 9609569.127050688}" - }, - 5669: { - "label": "RD/83 3 Degree GK Zone 5 E-N", - "defaultExtent": "{\"xmin\": -122345.71263891924, \"ymin\": -9609569.127050694, \"xmax\": 11122345.712638918, \"ymax\": 9609569.127050688}" - }, - 5670: { - "label": "Pulkovo 1942 Adj 1958 3 Degree GK Zone 3 E-N", - "defaultExtent": "{\"xmin\": -2123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 9123107.467526717, \"ymax\": 9610795.116133094}" - }, - 5671: { - "label": "Pulkovo 1942 Adj 1958 3 Degree GK Zone 4 E-N", - "defaultExtent": "{\"xmin\": -1123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 10123107.467526717, \"ymax\": 9610795.116133094}" - }, - 5672: { - "label": "Pulkovo 1942 Adj 1958 3 Degree GK Zone 5 E-N", - "defaultExtent": "{\"xmin\": -123107.46752671711, \"ymin\": -9610795.116133098, \"xmax\": 11123107.467526717, \"ymax\": 9610795.116133094}" - }, - 5673: { - "label": "Pulkovo 1942 Adj 1983 3 Degree GK Zone 3 E-N", - "defaultExtent": "{\"xmin\": -2123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 9123107.467526717, \"ymax\": 9610795.116133094}" - }, - 5674: { - "label": "Pulkovo 1942 Adj 1983 3 Degree GK Zone 4 E-N", - "defaultExtent": "{\"xmin\": -1123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 10123107.467526717, \"ymax\": 9610795.116133094}" - }, - 5675: { - "label": "Pulkovo 1942 Adj 1983 3 Degree GK Zone 5 E-N", - "defaultExtent": "{\"xmin\": -123107.46752671711, \"ymin\": -9610795.116133098, \"xmax\": 11123107.467526717, \"ymax\": 9610795.116133094}" - }, - 5676: { - "label": "DHDN 3 Degree GK Zone 2 E-N", - "defaultExtent": "{\"xmin\": -3122345.7126389192, \"ymin\": -9609569.127050694, \"xmax\": 8122345.712638919, \"ymax\": 9609569.127050688}" - }, - 5677: { - "label": "DHDN 3 Degree GK Zone 3 E-N", - "defaultExtent": "{\"xmin\": -2122345.7126389192, \"ymin\": -9609569.127050694, \"xmax\": 9122345.712638918, \"ymax\": 9609569.127050688}" - }, - 5678: { - "label": "DHDN 3 Degree GK Zone 4 E-N", - "defaultExtent": "{\"xmin\": -1122345.7126389192, \"ymin\": -9609569.127050694, \"xmax\": 10122345.712638918, \"ymax\": 9609569.127050688}" - }, - 5679: { - "label": "DHDN 3 Degree GK Zone 5 E-N", - "defaultExtent": "{\"xmin\": -122345.71263891924, \"ymin\": -9609569.127050694, \"xmax\": 11122345.712638918, \"ymax\": 9609569.127050688}" - }, - 5680: { - "label": "DHDN 3 Degree GK Zone 1 E-N", - "defaultExtent": "{\"xmin\": -4122345.7126389192, \"ymin\": -9609569.127050694, \"xmax\": 7122345.71263892, \"ymax\": 9609569.127050688}" - }, - 5681: { - "label": "GCS DB REF", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 5682: { - "label": "DB REF 3-Degree GK Zone 2 (E-N)", - "defaultExtent": "{\"xmin\": -3122345.7126389192, \"ymin\": -9609569.127050694, \"xmax\": 8122345.712638919, \"ymax\": 9609569.127050688}" - }, - 5683: { - "label": "DB REF 3-Degree GK Zone 3 (E-N)", - "defaultExtent": "{\"xmin\": -2122345.7126389192, \"ymin\": -9609569.127050694, \"xmax\": 9122345.712638918, \"ymax\": 9609569.127050688}" - }, - 5684: { - "label": "DB REF 3-Degree GK Zone 4 (E-N)", - "defaultExtent": "{\"xmin\": -1122345.7126389192, \"ymin\": -9609569.127050694, \"xmax\": 10122345.712638918, \"ymax\": 9609569.127050688}" - }, - 5685: { - "label": "DB REF 3-Degree GK Zone 5 (E-N)", - "defaultExtent": "{\"xmin\": -122345.71263891924, \"ymin\": -9609569.127050694, \"xmax\": 11122345.712638918, \"ymax\": 9609569.127050688}" - }, - 5700: { - "label": "NZGD 2000 UTM Zone 1S", - "defaultExtent": "{\"xmin\": -5120763.767723977, \"ymin\": 393214.4650619123, \"xmax\": 6120763.767724008, \"ymax\": 19606785.534938097}" - }, - 5825: { - "label": "AGD 1966 ACT Standard Grid", - "defaultExtent": "{\"xmin\": -5423516.952088407, \"ymin\": -5101297.028661731, \"xmax\": 5823516.952228073, \"ymax\": 14121684.016439361}" - }, - 5836: { - "label": "Yemen NGN 1996 UTM Zone 37N", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": -9606785.535047522, \"xmax\": 6120763.7676994335, \"ymax\": 9606785.535047516}" - }, - 5837: { - "label": "Yemen NGN 1996 UTM Zone 40N", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699434, \"ymax\": 9606785.535047516}" - }, - 5839: { - "label": "Peru96 UTM Zone 17S", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": 393214.46504110843, \"xmax\": 6120763.767724001, \"ymax\": 19606785.534958888}" - }, - 5842: { - "label": "WGS 1984 TM 12 SE", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": 393214.4649524782, \"xmax\": 6120763.767699434, \"ymax\": 19606785.535047516}" - }, - 5844: { - "label": "RGRDC 2005 Congo TM Zone 30", - "defaultExtent": "{\"xmin\": -5122450.671615874, \"ymin\": 390331.2761050463, \"xmax\": 6122450.6716158725, \"ymax\": 19609668.72389495}" - }, - 5858: { - "label": "SAD 1969 96 UTM Zone 22S", - "defaultExtent": "{\"xmin\": -5120784.157939794, \"ymin\": 393180.2601383254, \"xmax\": 6120784.157939793, \"ymax\": 19606819.739861667}" - }, - 5875: { - "label": "SAD 1969 96 UTM Zone 18S", - "defaultExtent": "{\"xmin\": -5120784.157939795, \"ymin\": 393180.2601383254, \"xmax\": 6120784.157939793, \"ymax\": 19606819.739861667}" - }, - 5876: { - "label": "SAD 1969 96 UTM Zone 19S", - "defaultExtent": "{\"xmin\": -5120784.157939795, \"ymin\": 393180.2601383254, \"xmax\": 6120784.157939793, \"ymax\": 19606819.739861667}" - }, - 5877: { - "label": "SAD 1969 96 UTM Zone 20S", - "defaultExtent": "{\"xmin\": -5120784.157939793, \"ymin\": 393180.2601383254, \"xmax\": 6120784.157939793, \"ymax\": 19606819.739861667}" - }, - 5879: { - "label": "Cadastre 1997 UTM Zone 38S", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": 392912.94750043936, \"xmax\": 6121006.178542033, \"ymax\": 19607087.052499555}" - }, - 5880: { - "label": "SIRGAS 2000 Brazil Polyconic", - "defaultExtent": "{\"xmin\": -15037507.067179196, \"ymin\": -5348253.618430104, \"xmax\": 25037507.06717921, \"ymax\": 25348253.618430093}" - }, - 5886: { - "label": "GCS TGD2005", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 5887: { - "label": "TGD2005 Tonga Map Grid", - "defaultExtent": "{\"xmin\": -4120763.7677239766, \"ymin\": -4606785.534938088, \"xmax\": 7120763.767724008, \"ymax\": 14606785.534938097}" - }, - 5890: { - "label": "JAXA Snow Depth Polar Stereographic North", - "defaultExtent": "{\"xmin\": -30645853.441111725, \"ymin\": -30645853.441111576, \"xmax\": 30645853.441111114, \"ymax\": 30645853.441111576}" - }, - 20002: { - "label": "Pulkovo 1995 GK Zone 2", - "defaultExtent": "{\"xmin\": -3123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 8123107.467526717, \"ymax\": 9610795.116133094}" - }, - 20003: { - "label": "Pulkovo 1995 GK Zone 3", - "defaultExtent": "{\"xmin\": -2123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 9123107.467526717, \"ymax\": 9610795.116133094}" - }, - 20004: { - "label": "Pulkovo 1995 GK Zone 4", - "defaultExtent": "{\"xmin\": -1123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 10123107.467526717, \"ymax\": 9610795.116133094}" - }, - 20005: { - "label": "Pulkovo 1995 GK Zone 5", - "defaultExtent": "{\"xmin\": -123107.46752671711, \"ymin\": -9610795.116133098, \"xmax\": 11123107.467526717, \"ymax\": 9610795.116133094}" - }, - 20006: { - "label": "Pulkovo 1995 GK Zone 6", - "defaultExtent": "{\"xmin\": 876892.5324732829, \"ymin\": -9610795.116133098, \"xmax\": 12123107.467526715, \"ymax\": 9610795.116133094}" - }, - 20007: { - "label": "Pulkovo 1995 GK Zone 7", - "defaultExtent": "{\"xmin\": 1876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 13123107.467526715, \"ymax\": 9610795.116133094}" - }, - 20008: { - "label": "Pulkovo 1995 GK Zone 8", - "defaultExtent": "{\"xmin\": 2876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 14123107.467526717, \"ymax\": 9610795.116133094}" - }, - 20009: { - "label": "Pulkovo 1995 GK Zone 9", - "defaultExtent": "{\"xmin\": 3876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 15123107.467526719, \"ymax\": 9610795.116133094}" - }, - 20010: { - "label": "Pulkovo 1995 GK Zone 10", - "defaultExtent": "{\"xmin\": 4876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 16123107.467526717, \"ymax\": 9610795.116133094}" - }, - 20011: { - "label": "Pulkovo 1995 GK Zone 11", - "defaultExtent": "{\"xmin\": 5876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 17123107.46752672, \"ymax\": 9610795.116133094}" - }, - 20012: { - "label": "Pulkovo 1995 GK Zone 12", - "defaultExtent": "{\"xmin\": 6876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 18123107.46752672, \"ymax\": 9610795.116133094}" - }, - 20013: { - "label": "Pulkovo 1995 GK Zone 13", - "defaultExtent": "{\"xmin\": 7876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 19123107.46752672, \"ymax\": 9610795.116133094}" - }, - 20014: { - "label": "Pulkovo 1995 GK Zone 14", - "defaultExtent": "{\"xmin\": 8876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 20123107.46752672, \"ymax\": 9610795.116133094}" - }, - 20015: { - "label": "Pulkovo 1995 GK Zone 15", - "defaultExtent": "{\"xmin\": 9876892.532473283, \"ymin\": -9610795.116133101, \"xmax\": 21123107.467526715, \"ymax\": 9610795.116133094}" - }, - 20016: { - "label": "Pulkovo 1995 GK Zone 16", - "defaultExtent": "{\"xmin\": 10876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 22123107.467526715, \"ymax\": 9610795.116133094}" - }, - 20017: { - "label": "Pulkovo 1995 GK Zone 17", - "defaultExtent": "{\"xmin\": 11876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 23123107.46752672, \"ymax\": 9610795.116133094}" - }, - 20018: { - "label": "Pulkovo 1995 GK Zone 18", - "defaultExtent": "{\"xmin\": 12876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 24123107.46752672, \"ymax\": 9610795.116133094}" - }, - 20019: { - "label": "Pulkovo 1995 GK Zone 19", - "defaultExtent": "{\"xmin\": 13876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 25123107.467526715, \"ymax\": 9610795.116133094}" - }, - 20020: { - "label": "Pulkovo 1995 GK Zone 20", - "defaultExtent": "{\"xmin\": 14876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 26123107.46752672, \"ymax\": 9610795.116133094}" - }, - 20021: { - "label": "Pulkovo 1995 GK Zone 21", - "defaultExtent": "{\"xmin\": 15876892.532473281, \"ymin\": -9610795.116133098, \"xmax\": 27123107.46752672, \"ymax\": 9610795.116133096}" - }, - 20022: { - "label": "Pulkovo 1995 GK Zone 22", - "defaultExtent": "{\"xmin\": 16876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 28123107.46752672, \"ymax\": 9610795.116133094}" - }, - 20023: { - "label": "Pulkovo 1995 GK Zone 23", - "defaultExtent": "{\"xmin\": 17876892.53247328, \"ymin\": -9610795.116133096, \"xmax\": 29123105.667374637, \"ymax\": 9610795.116133094}" - }, - 20024: { - "label": "Pulkovo 1995 GK Zone 24", - "defaultExtent": "{\"xmin\": 18876892.53247329, \"ymin\": -9610795.116112284, \"xmax\": 30123107.467526726, \"ymax\": 9610795.116112294}" - }, - 20025: { - "label": "Pulkovo 1995 GK Zone 25", - "defaultExtent": "{\"xmin\": 19876892.532473292, \"ymin\": -9610795.116112284, \"xmax\": 31123107.467526726, \"ymax\": 9610795.116112294}" - }, - 20026: { - "label": "Pulkovo 1995 GK Zone 26", - "defaultExtent": "{\"xmin\": 20876892.532473292, \"ymin\": -9610795.116112284, \"xmax\": 32123107.467526726, \"ymax\": 9610795.116112294}" - }, - 20027: { - "label": "Pulkovo 1995 GK Zone 27", - "defaultExtent": "{\"xmin\": 21876892.5324733, \"ymin\": -9610795.116112284, \"xmax\": 33123107.467526726, \"ymax\": 9610795.116112294}" - }, - 20028: { - "label": "Pulkovo 1995 GK Zone 28", - "defaultExtent": "{\"xmin\": 22876892.532473303, \"ymin\": -9610795.116112284, \"xmax\": 34123107.46752673, \"ymax\": 9610795.116112294}" - }, - 20029: { - "label": "Pulkovo 1995 GK Zone 29", - "defaultExtent": "{\"xmin\": 23876892.532473303, \"ymin\": -9610795.116112284, \"xmax\": 35123107.46752673, \"ymax\": 9610795.116112294}" - }, - 20030: { - "label": "Pulkovo 1995 GK Zone 30", - "defaultExtent": "{\"xmin\": 24876892.5324733, \"ymin\": -9610795.116112284, \"xmax\": 36123107.46752673, \"ymax\": 9610795.116112294}" - }, - 20031: { - "label": "Pulkovo 1995 GK Zone 31", - "defaultExtent": "{\"xmin\": 25876892.532473307, \"ymin\": -9610795.116112284, \"xmax\": 37123107.46752673, \"ymax\": 9610795.116112294}" - }, - 20032: { - "label": "Pulkovo 1995 GK Zone 32", - "defaultExtent": "{\"xmin\": 26876892.532473307, \"ymin\": -9610795.116112284, \"xmax\": 38123107.46752673, \"ymax\": 9610795.116112294}" - }, - 20062: { - "label": "Pulkovo 1995 GK Zone 2N", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 20063: { - "label": "Pulkovo 1995 GK Zone 3N", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 20064: { - "label": "Pulkovo 1995 GK Zone 4N", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 20065: { - "label": "Pulkovo 1995 GK Zone 5N", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 20066: { - "label": "Pulkovo 1995 GK Zone 6N", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526716, \"ymax\": 9610795.116133094}" - }, - 20067: { - "label": "Pulkovo 1995 GK Zone 7N", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526716, \"ymax\": 9610795.116133094}" - }, - 20068: { - "label": "Pulkovo 1995 GK Zone 8N", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 20069: { - "label": "Pulkovo 1995 GK Zone 9N", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526718, \"ymax\": 9610795.116133094}" - }, - 20070: { - "label": "Pulkovo 1995 GK Zone 10N", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 20071: { - "label": "Pulkovo 1995 GK Zone 11N", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 20072: { - "label": "Pulkovo 1995 GK Zone 12N", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.46752672, \"ymax\": 9610795.116133094}" - }, - 20073: { - "label": "Pulkovo 1995 GK Zone 13N", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.46752672, \"ymax\": 9610795.116133094}" - }, - 20074: { - "label": "Pulkovo 1995 GK Zone 14N", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 20075: { - "label": "Pulkovo 1995 GK Zone 15N", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133101, \"xmax\": 6123107.467526715, \"ymax\": 9610795.116133094}" - }, - 20076: { - "label": "Pulkovo 1995 GK Zone 16N", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526715, \"ymax\": 9610795.116133094}" - }, - 20077: { - "label": "Pulkovo 1995 GK Zone 17N", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 20078: { - "label": "Pulkovo 1995 GK Zone 18N", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 20079: { - "label": "Pulkovo 1995 GK Zone 19N", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526715, \"ymax\": 9610795.116133094}" - }, - 20080: { - "label": "Pulkovo 1995 GK Zone 20N", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 20081: { - "label": "Pulkovo 1995 GK Zone 21N", - "defaultExtent": "{\"xmin\": -5123107.46752672, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133096}" - }, - 20082: { - "label": "Pulkovo 1995 GK Zone 22N", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 20083: { - "label": "Pulkovo 1995 GK Zone 23N", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133096, \"xmax\": 6123105.667374637, \"ymax\": 9610795.116133094}" - }, - 20084: { - "label": "Pulkovo 1995 GK Zone 24N", - "defaultExtent": "{\"xmin\": -5123107.46752671, \"ymin\": -9610795.116112284, \"xmax\": 6123107.4675267255, \"ymax\": 9610795.116112294}" - }, - 20085: { - "label": "Pulkovo 1995 GK Zone 25N", - "defaultExtent": "{\"xmin\": -5123107.467526707, \"ymin\": -9610795.116112284, \"xmax\": 6123107.4675267255, \"ymax\": 9610795.116112294}" - }, - 20086: { - "label": "Pulkovo 1995 GK Zone 26N", - "defaultExtent": "{\"xmin\": -5123107.467526707, \"ymin\": -9610795.116112284, \"xmax\": 6123107.4675267255, \"ymax\": 9610795.116112294}" - }, - 20087: { - "label": "Pulkovo 1995 GK Zone 27N", - "defaultExtent": "{\"xmin\": -5123107.467526701, \"ymin\": -9610795.116112284, \"xmax\": 6123107.4675267255, \"ymax\": 9610795.116112294}" - }, - 20088: { - "label": "Pulkovo 1995 GK Zone 28N", - "defaultExtent": "{\"xmin\": -5123107.467526697, \"ymin\": -9610795.116112284, \"xmax\": 6123107.4675267255, \"ymax\": 9610795.116112294}" - }, - 20089: { - "label": "Pulkovo 1995 GK Zone 29N", - "defaultExtent": "{\"xmin\": -5123107.467526697, \"ymin\": -9610795.116112284, \"xmax\": 6123107.4675267255, \"ymax\": 9610795.116112294}" - }, - 20090: { - "label": "Pulkovo 1995 GK Zone 30N", - "defaultExtent": "{\"xmin\": -5123107.467526701, \"ymin\": -9610795.116112284, \"xmax\": 6123107.4675267255, \"ymax\": 9610795.116112294}" - }, - 20091: { - "label": "Pulkovo 1995 GK Zone 31N", - "defaultExtent": "{\"xmin\": -5123107.467526693, \"ymin\": -9610795.116112284, \"xmax\": 6123107.4675267255, \"ymax\": 9610795.116112294}" - }, - 20092: { - "label": "Pulkovo 1995 GK Zone 32N", - "defaultExtent": "{\"xmin\": -5123107.467526693, \"ymin\": -9610795.116112284, \"xmax\": 6123107.4675267255, \"ymax\": 9610795.116112294}" - }, - 20135: { - "label": "Adindan UTM Zone 35N", - "defaultExtent": "{\"xmin\": -5120944.444949269, \"ymin\": -9606659.189062225, \"xmax\": 6120944.444949269, \"ymax\": 9606659.189062221}" - }, - 20136: { - "label": "Adindan UTM Zone 36N", - "defaultExtent": "{\"xmin\": -5120944.444949269, \"ymin\": -9606659.189062225, \"xmax\": 6120944.444949269, \"ymax\": 9606659.189062221}" - }, - 20137: { - "label": "Adindan UTM Zone 37N", - "defaultExtent": "{\"xmin\": -5120944.444949269, \"ymin\": -9606659.189062225, \"xmax\": 6120944.444949269, \"ymax\": 9606659.189062221}" - }, - 20138: { - "label": "Adindan UTM Zone 38N", - "defaultExtent": "{\"xmin\": -5120944.444949269, \"ymin\": -9606659.189062225, \"xmax\": 6120944.444949269, \"ymax\": 9606659.189062221}" - }, - 20248: { - "label": "AGD 1966 AMG Zone 48", - "defaultExtent": "{\"xmin\": -5120784.157939793, \"ymin\": 393180.2601383254, \"xmax\": 6120784.157939793, \"ymax\": 19606819.739861667}" - }, - 20249: { - "label": "AGD 1966 AMG Zone 49", - "defaultExtent": "{\"xmin\": -5120784.157939793, \"ymin\": 393180.2601383254, \"xmax\": 6120784.157939791, \"ymax\": 19606819.739861667}" - }, - 20250: { - "label": "AGD 1966 AMG Zone 50", - "defaultExtent": "{\"xmin\": -5120784.157939793, \"ymin\": 393180.2601383254, \"xmax\": 6120784.157939793, \"ymax\": 19606819.739861667}" - }, - 20251: { - "label": "AGD 1966 AMG Zone 51", - "defaultExtent": "{\"xmin\": -5120784.157939795, \"ymin\": 393180.2601383254, \"xmax\": 6120784.157939793, \"ymax\": 19606819.739861667}" - }, - 20252: { - "label": "AGD 1966 AMG Zone 52", - "defaultExtent": "{\"xmin\": -5120784.157939793, \"ymin\": 393180.2601383254, \"xmax\": 6120784.157939793, \"ymax\": 19606819.739861667}" - }, - 20253: { - "label": "AGD 1966 AMG Zone 53", - "defaultExtent": "{\"xmin\": -5120784.157939793, \"ymin\": 393180.260138331, \"xmax\": 6120782.358530981, \"ymax\": 19606819.739861667}" - }, - 20254: { - "label": "AGD 1966 AMG Zone 54", - "defaultExtent": "{\"xmin\": -5120784.157939785, \"ymin\": 393180.26015913114, \"xmax\": 6120784.1579398, \"ymax\": 19606819.73984088}" - }, - 20255: { - "label": "AGD 1966 AMG Zone 55", - "defaultExtent": "{\"xmin\": -5120784.157939782, \"ymin\": 393180.26015913114, \"xmax\": 6120784.1579398, \"ymax\": 19606819.73984088}" - }, - 20256: { - "label": "AGD 1966 AMG Zone 56", - "defaultExtent": "{\"xmin\": -5120784.157939782, \"ymin\": 393180.26015913114, \"xmax\": 6120784.1579398, \"ymax\": 19606819.73984088}" - }, - 20257: { - "label": "AGD 1966 AMG Zone 57", - "defaultExtent": "{\"xmin\": -5120784.157939777, \"ymin\": 393180.26015913114, \"xmax\": 6120784.1579398, \"ymax\": 19606819.73984088}" - }, - 20258: { - "label": "AGD 1966 AMG Zone 58", - "defaultExtent": "{\"xmin\": -5120784.157939773, \"ymin\": 393180.26015913114, \"xmax\": 6120784.1579398, \"ymax\": 19606819.73984088}" - }, - 20348: { - "label": "AGD 1984 AMG Zone 48", - "defaultExtent": "{\"xmin\": -5120784.157939793, \"ymin\": 393180.2601383254, \"xmax\": 6120784.157939793, \"ymax\": 19606819.739861667}" - }, - 20349: { - "label": "AGD 1984 AMG Zone 49", - "defaultExtent": "{\"xmin\": -5120784.157939793, \"ymin\": 393180.2601383254, \"xmax\": 6120784.157939791, \"ymax\": 19606819.739861667}" - }, - 20350: { - "label": "AGD 1984 AMG Zone 50", - "defaultExtent": "{\"xmin\": -5120784.157939793, \"ymin\": 393180.2601383254, \"xmax\": 6120784.157939793, \"ymax\": 19606819.739861667}" - }, - 20351: { - "label": "AGD 1984 AMG Zone 51", - "defaultExtent": "{\"xmin\": -5120784.157939795, \"ymin\": 393180.2601383254, \"xmax\": 6120784.157939793, \"ymax\": 19606819.739861667}" - }, - 20352: { - "label": "AGD 1984 AMG Zone 52", - "defaultExtent": "{\"xmin\": -5120784.157939793, \"ymin\": 393180.2601383254, \"xmax\": 6120784.157939793, \"ymax\": 19606819.739861667}" - }, - 20353: { - "label": "AGD 1984 AMG Zone 53", - "defaultExtent": "{\"xmin\": -5120784.157939793, \"ymin\": 393180.260138331, \"xmax\": 6120782.358530981, \"ymax\": 19606819.739861667}" - }, - 20354: { - "label": "AGD 1984 AMG Zone 54", - "defaultExtent": "{\"xmin\": -5120784.157939785, \"ymin\": 393180.26015913114, \"xmax\": 6120784.1579398, \"ymax\": 19606819.73984088}" - }, - 20355: { - "label": "AGD 1984 AMG Zone 55", - "defaultExtent": "{\"xmin\": -5120784.157939782, \"ymin\": 393180.26015913114, \"xmax\": 6120784.1579398, \"ymax\": 19606819.73984088}" - }, - 20356: { - "label": "AGD 1984 AMG Zone 56", - "defaultExtent": "{\"xmin\": -5120784.157939782, \"ymin\": 393180.26015913114, \"xmax\": 6120784.1579398, \"ymax\": 19606819.73984088}" - }, - 20357: { - "label": "AGD 1984 AMG Zone 57", - "defaultExtent": "{\"xmin\": -5120784.157939777, \"ymin\": 393180.26015913114, \"xmax\": 6120784.1579398, \"ymax\": 19606819.73984088}" - }, - 20358: { - "label": "AGD 1984 AMG Zone 58", - "defaultExtent": "{\"xmin\": -5120784.157939773, \"ymin\": 393180.26015913114, \"xmax\": 6120784.1579398, \"ymax\": 19606819.73984088}" - }, - 20436: { - "label": "Ain el Abd UTM Zone 36N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542031, \"ymax\": 9607087.052499557}" - }, - 20437: { - "label": "Ain el Abd UTM Zone 37N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542031, \"ymax\": 9607087.052499557}" - }, - 20438: { - "label": "Ain el Abd UTM Zone 38N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 20439: { - "label": "Ain el Abd UTM Zone 39N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542034, \"ymax\": 9607087.052499557}" - }, - 20440: { - "label": "Ain el Abd UTM Zone 40N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 20499: { - "label": "Bahrain State Grid", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542034, \"ymax\": 9607087.052499557}" - }, - 20538: { - "label": "Afgooye UTM Zone 38N", - "defaultExtent": "{\"xmin\": -5120858.224539707, \"ymin\": -9606950.798086647, \"xmax\": 6120858.224539707, \"ymax\": 9606950.798086641}" - }, - 20539: { - "label": "Afgooye UTM Zone 39N", - "defaultExtent": "{\"xmin\": -5120858.224539707, \"ymin\": -9606950.798086647, \"xmax\": 6120858.224539707, \"ymax\": 9606950.798086641}" - }, - 20790: { - "label": "Portuguese National Grid", - "defaultExtent": "{\"xmin\": -5423255.480734327, \"ymin\": -13703524.858224163, \"xmax\": 5823255.480734327, \"ymax\": 5518337.99191501}" - }, - 20791: { - "label": "Lisbon Lisbon Portuguese Grid", - "defaultExtent": "{\"xmin\": -5623255.480734327, \"ymin\": -14003524.858224163, \"xmax\": 5623255.480734327, \"ymax\": 5218337.99191501}" - }, - 20822: { - "label": "Aratu UTM Zone 22S", - "defaultExtent": "{\"xmin\": -5121006.178542034, \"ymin\": 392912.94750043936, \"xmax\": 6121006.178542033, \"ymax\": 19607087.052499555}" - }, - 20823: { - "label": "Aratu UTM Zone 23S", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": 392912.94750043936, \"xmax\": 6121006.178542033, \"ymax\": 19607087.052499555}" - }, - 20824: { - "label": "Aratu UTM Zone 24S", - "defaultExtent": "{\"xmin\": -5121006.178542031, \"ymin\": 392912.94750043936, \"xmax\": 6121006.178542033, \"ymax\": 19607087.052499555}" - }, - 20934: { - "label": "Arc 1950 UTM Zone 34S", - "defaultExtent": "{\"xmin\": -5120944.422247933, \"ymin\": 393340.7290551327, \"xmax\": 6120944.422247933, \"ymax\": 19606659.270944864}" - }, - 20935: { - "label": "Arc 1950 UTM Zone 35S", - "defaultExtent": "{\"xmin\": -5120944.422247933, \"ymin\": 393340.7290551327, \"xmax\": 6120944.422247933, \"ymax\": 19606659.270944864}" - }, - 20936: { - "label": "Arc 1950 UTM Zone 36S", - "defaultExtent": "{\"xmin\": -5120944.422247933, \"ymin\": 393340.7290551327, \"xmax\": 6120944.422247931, \"ymax\": 19606659.270944864}" - }, - 21035: { - "label": "Arc 1960 UTM Zone 35S", - "defaultExtent": "{\"xmin\": -5120944.444949269, \"ymin\": 393340.8109377753, \"xmax\": 6120944.444949269, \"ymax\": 19606659.189062223}" - }, - 21036: { - "label": "Arc 1960 UTM Zone 36S", - "defaultExtent": "{\"xmin\": -5120944.444949269, \"ymin\": 393340.8109377753, \"xmax\": 6120944.444949269, \"ymax\": 19606659.189062223}" - }, - 21037: { - "label": "Arc 1960 UTM Zone 37S", - "defaultExtent": "{\"xmin\": -5120944.444949269, \"ymin\": 393340.8109377753, \"xmax\": 6120944.444949269, \"ymax\": 19606659.189062223}" - }, - 21095: { - "label": "Arc 1960 UTM Zone 35N", - "defaultExtent": "{\"xmin\": -5120944.444949269, \"ymin\": -9606659.189062225, \"xmax\": 6120944.444949269, \"ymax\": 9606659.189062221}" - }, - 21096: { - "label": "Arc 1960 UTM Zone 36N", - "defaultExtent": "{\"xmin\": -5120944.444949269, \"ymin\": -9606659.189062225, \"xmax\": 6120944.444949269, \"ymax\": 9606659.189062221}" - }, - 21097: { - "label": "Arc 1960 UTM Zone 37N", - "defaultExtent": "{\"xmin\": -5120944.444949269, \"ymin\": -9606659.189062225, \"xmax\": 6120944.444949269, \"ymax\": 9606659.189062221}" - }, - 21148: { - "label": "Batavia UTM Zone 48S", - "defaultExtent": "{\"xmin\": -5120096.774353864, \"ymin\": 394274.7006001249, \"xmax\": 6120096.774353864, \"ymax\": 19605725.299399868}" - }, - 21149: { - "label": "Batavia UTM Zone 49S", - "defaultExtent": "{\"xmin\": -5120096.774353864, \"ymin\": 394274.7006001249, \"xmax\": 6120096.774353862, \"ymax\": 19605725.299399868}" - }, - 21150: { - "label": "Batavia UTM Zone 50S", - "defaultExtent": "{\"xmin\": -5120096.774353864, \"ymin\": 394274.7006001249, \"xmax\": 6120096.774353864, \"ymax\": 19605725.299399868}" - }, - 21291: { - "label": "Barbados 1938 British West Indies Grid", - "defaultExtent": "{\"xmin\": -5220382.125577026, \"ymin\": -9605698.138723183, \"xmax\": 6020382.125577026, \"ymax\": 9605698.13872318}" - }, - 21292: { - "label": "Barbados 1938 Barbados Grid", - "defaultExtent": "{\"xmin\": -5593185.849967033, \"ymin\": -10992582.504261198, \"xmax\": 5653185.849967033, \"ymax\": 8228397.367166089}" - }, - 21413: { - "label": "Beijing 1954 GK Zone 13", - "defaultExtent": "{\"xmin\": 7876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 19123107.46752672, \"ymax\": 9610795.116133094}" - }, - 21414: { - "label": "Beijing 1954 GK Zone 14", - "defaultExtent": "{\"xmin\": 8876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 20123107.46752672, \"ymax\": 9610795.116133094}" - }, - 21415: { - "label": "Beijing 1954 GK Zone 15", - "defaultExtent": "{\"xmin\": 9876892.532473283, \"ymin\": -9610795.116133101, \"xmax\": 21123107.467526715, \"ymax\": 9610795.116133094}" - }, - 21416: { - "label": "Beijing 1954 GK Zone 16", - "defaultExtent": "{\"xmin\": 10876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 22123107.467526715, \"ymax\": 9610795.116133094}" - }, - 21417: { - "label": "Beijing 1954 GK Zone 17", - "defaultExtent": "{\"xmin\": 11876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 23123107.46752672, \"ymax\": 9610795.116133094}" - }, - 21418: { - "label": "Beijing 1954 GK Zone 18", - "defaultExtent": "{\"xmin\": 12876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 24123107.46752672, \"ymax\": 9610795.116133094}" - }, - 21419: { - "label": "Beijing 1954 GK Zone 19", - "defaultExtent": "{\"xmin\": 13876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 25123107.467526715, \"ymax\": 9610795.116133094}" - }, - 21420: { - "label": "Beijing 1954 GK Zone 20", - "defaultExtent": "{\"xmin\": 14876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 26123107.46752672, \"ymax\": 9610795.116133094}" - }, - 21421: { - "label": "Beijing 1954 GK Zone 21", - "defaultExtent": "{\"xmin\": 15876892.532473281, \"ymin\": -9610795.116133098, \"xmax\": 27123107.46752672, \"ymax\": 9610795.116133096}" - }, - 21422: { - "label": "Beijing 1954 GK Zone 22", - "defaultExtent": "{\"xmin\": 16876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 28123107.46752672, \"ymax\": 9610795.116133094}" - }, - 21423: { - "label": "Beijing 1954 GK Zone 23", - "defaultExtent": "{\"xmin\": 17876892.53247328, \"ymin\": -9610795.116133096, \"xmax\": 29123105.667374637, \"ymax\": 9610795.116133094}" - }, - 21473: { - "label": "Beijing 1954 GK Zone 13N", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.46752672, \"ymax\": 9610795.116133094}" - }, - 21474: { - "label": "Beijing 1954 GK Zone 14N", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 21475: { - "label": "Beijing 1954 GK Zone 15N", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133101, \"xmax\": 6123107.467526715, \"ymax\": 9610795.116133094}" - }, - 21476: { - "label": "Beijing 1954 GK Zone 16N", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526715, \"ymax\": 9610795.116133094}" - }, - 21477: { - "label": "Beijing 1954 GK Zone 17N", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 21478: { - "label": "Beijing 1954 GK Zone 18N", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 21479: { - "label": "Beijing 1954 GK Zone 19N", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526715, \"ymax\": 9610795.116133094}" - }, - 21480: { - "label": "Beijing 1954 GK Zone 20N", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 21481: { - "label": "Beijing 1954 GK Zone 21N", - "defaultExtent": "{\"xmin\": -5123107.46752672, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133096}" - }, - 21482: { - "label": "Beijing 1954 GK Zone 22N", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 21483: { - "label": "Beijing 1954 GK Zone 23N", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133096, \"xmax\": 6123105.667374637, \"ymax\": 9610795.116133094}" - }, - 21500: { - "label": "Belge Lambert 1950", - "defaultExtent": "{\"xmin\": -35872636.625857346, \"ymin\": -30622636.623816065, \"xmax\": 36172636.6258614, \"ymax\": 32543515.34114731}" - }, - 21780: { - "label": "Bern 1898 Bern LV03C", - "defaultExtent": "{\"xmin\": -29986227.448577397, \"ymin\": -33267738.605040614, \"xmax\": 9889449.048149815, \"ymax\": 30615241.658078846}" - }, - 21781: { - "label": "CH1903 LV03", - "defaultExtent": "{\"xmin\": -29386227.448577397, \"ymin\": -33067738.605040614, \"xmax\": 10489449.048149817, \"ymax\": 30815241.658078846}" - }, - 21782: { - "label": "CH1903 LV03C-G", - "defaultExtent": "{\"xmin\": -29986227.448577397, \"ymin\": -33267738.605040614, \"xmax\": 9889449.048149817, \"ymax\": 30615241.658078846}" - }, - 21817: { - "label": "Bogota UTM Zone 17N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 21818: { - "label": "Bogota UTM Zone 18N", - "defaultExtent": "{\"xmin\": -5121006.178542035, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 21896: { - "label": "Colombia West Zone", - "defaultExtent": "{\"xmin\": -4623255.480734324, \"ymin\": -9119484.269387636, \"xmax\": 6623255.480734327, \"ymax\": 10102378.580751536}" - }, - 21897: { - "label": "Colombia Bogota Zone", - "defaultExtent": "{\"xmin\": -4623255.480734329, \"ymin\": -9119484.269387636, \"xmax\": 6623255.480734327, \"ymax\": 10102378.580751536}" - }, - 21898: { - "label": "Colombia East Central Zone", - "defaultExtent": "{\"xmin\": -4623255.480734327, \"ymin\": -9119484.269387636, \"xmax\": 6623255.480734327, \"ymax\": 10102378.580751536}" - }, - 21899: { - "label": "Colombia East Zone", - "defaultExtent": "{\"xmin\": -4623255.480734327, \"ymin\": -9119484.269387636, \"xmax\": 6623255.480734327, \"ymax\": 10102378.580751536}" - }, - 22032: { - "label": "Camacupa UTM Zone 32S", - "defaultExtent": "{\"xmin\": -5120944.444949269, \"ymin\": 393340.8109377753, \"xmax\": 6120944.444949269, \"ymax\": 19606659.189062223}" - }, - 22033: { - "label": "Camacupa UTM Zone 33S", - "defaultExtent": "{\"xmin\": -5120944.444949269, \"ymin\": 393340.8109377753, \"xmax\": 6120944.444949269, \"ymax\": 19606659.189062223}" - }, - 22091: { - "label": "Camacupa TM 11 30 SE", - "defaultExtent": "{\"xmin\": -5120944.444949269, \"ymin\": 393340.8109377753, \"xmax\": 6120944.444949269, \"ymax\": 19606659.189062223}" - }, - 22092: { - "label": "Camacupa TM 12 SE", - "defaultExtent": "{\"xmin\": -5120944.444949269, \"ymin\": 393340.8109377753, \"xmax\": 6120944.444949269, \"ymax\": 19606659.189062223}" - }, - 22171: { - "label": "POSGAR 1998 Argentina Zone 1", - "defaultExtent": "{\"xmin\": -4123012.9729131646, \"ymin\": 391335.94235681987, \"xmax\": 7123012.972913165, \"ymax\": 19612595.516104095}" - }, - 22172: { - "label": "POSGAR 1998 Argentina Zone 2", - "defaultExtent": "{\"xmin\": -3123012.9729131674, \"ymin\": 391335.94235681987, \"xmax\": 8123012.972913165, \"ymax\": 19612595.516104095}" - }, - 22173: { - "label": "POSGAR 1998 Argentina Zone 3", - "defaultExtent": "{\"xmin\": -2123012.9729131646, \"ymin\": 391335.94235681987, \"xmax\": 9123012.972913165, \"ymax\": 19612595.516104095}" - }, - 22174: { - "label": "POSGAR 1998 Argentina Zone 4", - "defaultExtent": "{\"xmin\": -1123012.9729131646, \"ymin\": 391335.94235681987, \"xmax\": 10123012.972913165, \"ymax\": 19612595.516104095}" - }, - 22175: { - "label": "POSGAR 1998 Argentina Zone 5", - "defaultExtent": "{\"xmin\": -123012.97291316744, \"ymin\": 391335.94235681987, \"xmax\": 11123012.972913165, \"ymax\": 19612595.516104095}" - }, - 22176: { - "label": "POSGAR 1998 Argentina Zone 6", - "defaultExtent": "{\"xmin\": 876987.0270868354, \"ymin\": 391335.94235681987, \"xmax\": 12123012.972913165, \"ymax\": 19612595.516104095}" - }, - 22177: { - "label": "POSGAR 1998 Argentina Zone 7", - "defaultExtent": "{\"xmin\": 1876987.0270868354, \"ymin\": 391335.94235681987, \"xmax\": 13123012.972913165, \"ymax\": 19612595.516104095}" - }, - 22181: { - "label": "POSGAR 1994 Argentina Zone 1", - "defaultExtent": "{\"xmin\": -4123012.9729131646, \"ymin\": 391335.94235681987, \"xmax\": 7123012.972913165, \"ymax\": 19612595.516104095}" - }, - 22182: { - "label": "POSGAR 1994 Argentina Zone 2", - "defaultExtent": "{\"xmin\": -3123012.9729131674, \"ymin\": 391335.94235681987, \"xmax\": 8123012.972913165, \"ymax\": 19612595.516104095}" - }, - 22183: { - "label": "POSGAR 1994 Argentina Zone 3", - "defaultExtent": "{\"xmin\": -2123012.9729131646, \"ymin\": 391335.94235681987, \"xmax\": 9123012.972913165, \"ymax\": 19612595.516104095}" - }, - 22184: { - "label": "POSGAR 1994 Argentina Zone 4", - "defaultExtent": "{\"xmin\": -1123012.9729131646, \"ymin\": 391335.94235681987, \"xmax\": 10123012.972913165, \"ymax\": 19612595.516104095}" - }, - 22185: { - "label": "POSGAR 1994 Argentina Zone 5", - "defaultExtent": "{\"xmin\": -123012.97291316744, \"ymin\": 391335.94235681987, \"xmax\": 11123012.972913165, \"ymax\": 19612595.516104095}" - }, - 22186: { - "label": "POSGAR 1994 Argentina Zone 6", - "defaultExtent": "{\"xmin\": 876987.0270868354, \"ymin\": 391335.94235681987, \"xmax\": 12123012.972913165, \"ymax\": 19612595.516104095}" - }, - 22187: { - "label": "POSGAR 1994 Argentina Zone 7", - "defaultExtent": "{\"xmin\": 1876987.0270868354, \"ymin\": 391335.94235681987, \"xmax\": 13123012.972913165, \"ymax\": 19612595.516104095}" - }, - 22191: { - "label": "Argentina Zone 1", - "defaultExtent": "{\"xmin\": -4123255.480734327, \"ymin\": 391356.8739198543, \"xmax\": 7123255.480734327, \"ymax\": 19613219.724059027}" - }, - 22192: { - "label": "Argentina Zone 2", - "defaultExtent": "{\"xmin\": -3123255.4807343287, \"ymin\": 391356.8739198543, \"xmax\": 8123255.480734327, \"ymax\": 19613219.724059027}" - }, - 22193: { - "label": "Argentina Zone 3", - "defaultExtent": "{\"xmin\": -2123255.480734327, \"ymin\": 391356.8739198543, \"xmax\": 9123255.480734326, \"ymax\": 19613219.724059027}" - }, - 22194: { - "label": "Argentina Zone 4", - "defaultExtent": "{\"xmin\": -1123255.4807343269, \"ymin\": 391356.8739198543, \"xmax\": 10123255.480734326, \"ymax\": 19613219.724059027}" - }, - 22195: { - "label": "Argentina Zone 5", - "defaultExtent": "{\"xmin\": -123255.48073432874, \"ymin\": 391356.8739198543, \"xmax\": 11123255.480734326, \"ymax\": 19613219.724059027}" - }, - 22196: { - "label": "Argentina Zone 6", - "defaultExtent": "{\"xmin\": 876744.5192656731, \"ymin\": 391356.8739198543, \"xmax\": 12123255.480734326, \"ymax\": 19613219.724059027}" - }, - 22197: { - "label": "Argentina Zone 7", - "defaultExtent": "{\"xmin\": 1876744.5192656731, \"ymin\": 391356.8739198543, \"xmax\": 13123255.480734326, \"ymax\": 19613219.724059027}" - }, - 22234: { - "label": "Cape UTM Zone 34S", - "defaultExtent": "{\"xmin\": -5120944.422247933, \"ymin\": 393340.7290551327, \"xmax\": 6120944.422247933, \"ymax\": 19606659.270944864}" - }, - 22235: { - "label": "Cape UTM Zone 35S", - "defaultExtent": "{\"xmin\": -5120944.422247933, \"ymin\": 393340.7290551327, \"xmax\": 6120944.422247933, \"ymax\": 19606659.270944864}" - }, - 22236: { - "label": "Cape UTM Zone 36S", - "defaultExtent": "{\"xmin\": -5120944.422247933, \"ymin\": 393340.7290551327, \"xmax\": 6120944.422247931, \"ymax\": 19606659.270944864}" - }, - 22332: { - "label": "Carthage UTM Zone 32N", - "defaultExtent": "{\"xmin\": -5120944.475688979, \"ymin\": -9606659.335852288, \"xmax\": 6120944.475688979, \"ymax\": 9606659.335852282}" - }, - 22391: { - "label": "Nord Tunisie", - "defaultExtent": "{\"xmin\": -37094490.67079683, \"ymin\": -28508539.12928014, \"xmax\": 38094490.67077288, \"ymax\": 19323033.928321306}" - }, - 22392: { - "label": "Sud Tunisie", - "defaultExtent": "{\"xmin\": -37644652.57137002, \"ymin\": -28128361.974525623, \"xmax\": 38644652.571328, \"ymax\": 15867737.975734113}" - }, - 22521: { - "label": "Corrego Alegre UTM Zone 21S", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": 392912.94750043936, \"xmax\": 6121006.178542033, \"ymax\": 19607087.052499555}" - }, - 22522: { - "label": "Corrego Alegre UTM Zone 22S", - "defaultExtent": "{\"xmin\": -5121006.178542034, \"ymin\": 392912.94750043936, \"xmax\": 6121006.178542033, \"ymax\": 19607087.052499555}" - }, - 22523: { - "label": "Corrego Alegre UTM Zone 23S", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": 392912.94750043936, \"xmax\": 6121006.178542033, \"ymax\": 19607087.052499555}" - }, - 22524: { - "label": "Corrego Alegre UTM Zone 24S", - "defaultExtent": "{\"xmin\": -5121006.178542031, \"ymin\": 392912.94750043936, \"xmax\": 6121006.178542033, \"ymax\": 19607087.052499555}" - }, - 22525: { - "label": "Corrego Alegre UTM Zone 25S", - "defaultExtent": "{\"xmin\": -5121006.178542031, \"ymin\": 392912.94750043936, \"xmax\": 6121006.178542033, \"ymax\": 19607087.052499555}" - }, - 22700: { - "label": "Deir ez Zor Levant Zone", - "defaultExtent": "{\"xmin\": -30828939.444367345, \"ymin\": -30749687.190949254, \"xmax\": 30828943.722626586, \"ymax\": 30785446.594431575}" - }, - 22770: { - "label": "Deir ez Zor Syria Lambert", - "defaultExtent": "{\"xmin\": -37553502.79690192, \"ymin\": -28318238.39171624, \"xmax\": 38153502.79689231, \"ymax\": 17625756.002751935}" - }, - 22780: { - "label": "Deir ez Zor Levant Stereographic", - "defaultExtent": "{\"xmin\": -30828939.444367345, \"ymin\": -30749687.190949254, \"xmax\": 30828943.722626586, \"ymax\": 30785446.594431575}" - }, - 22832: { - "label": "Douala UTM Zone 32N", - "defaultExtent": "{\"xmin\": -5120944.475688979, \"ymin\": -9606659.335852288, \"xmax\": 6120944.475688979, \"ymax\": 9606659.335852282}" - }, - 22991: { - "label": "Egypt Blue Belt", - "defaultExtent": "{\"xmin\": -5323067.795197411, \"ymin\": -11830876.291873828, \"xmax\": 5923067.795197411, \"ymax\": 7390578.327608526}" - }, - 22992: { - "label": "Egypt Red Belt", - "defaultExtent": "{\"xmin\": -5008067.795197411, \"ymin\": -12120876.291873828, \"xmax\": 6238067.795197411, \"ymax\": 7100578.327608526}" - }, - 22993: { - "label": "Egypt Purple Belt", - "defaultExtent": "{\"xmin\": -4923067.795197411, \"ymin\": -12730876.291873828, \"xmax\": 6323067.795197411, \"ymax\": 6490578.327608526}" - }, - 22994: { - "label": "Egypt Extended Purple Belt", - "defaultExtent": "{\"xmin\": -4923067.795197411, \"ymin\": -11730876.291873828, \"xmax\": 6323067.795197411, \"ymax\": 7490578.327608526}" - }, - 23028: { - "label": "ED 1950 UTM Zone 28N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 23029: { - "label": "ED 1950 UTM Zone 29N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 23030: { - "label": "ED 1950 UTM Zone 30N", - "defaultExtent": "{\"xmin\": -5121006.178542034, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 23031: { - "label": "ED 1950 UTM Zone 31N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542034, \"ymax\": 9607087.052499557}" - }, - 23032: { - "label": "ED 1950 UTM Zone 32N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 23033: { - "label": "ED 1950 UTM Zone 33N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 23034: { - "label": "ED 1950 UTM Zone 34N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 23035: { - "label": "ED 1950 UTM Zone 35N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 23036: { - "label": "ED 1950 UTM Zone 36N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542031, \"ymax\": 9607087.052499557}" - }, - 23037: { - "label": "ED 1950 UTM Zone 37N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542031, \"ymax\": 9607087.052499557}" - }, - 23038: { - "label": "ED 1950 UTM Zone 38N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 23090: { - "label": "ED 1950 TM 0 N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 23095: { - "label": "ED 1950 TM 5 NE", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 23239: { - "label": "Fahud UTM Zone 39N", - "defaultExtent": "{\"xmin\": -5120944.444949269, \"ymin\": -9606659.189062225, \"xmax\": 6120944.444949271, \"ymax\": 9606659.189062221}" - }, - 23240: { - "label": "Fahud UTM Zone 40N", - "defaultExtent": "{\"xmin\": -5120944.444949269, \"ymin\": -9606659.189062225, \"xmax\": 6120944.444949269, \"ymax\": 9606659.189062221}" - }, - 23700: { - "label": "Hungarian 1972 Egyseges Orszagos Vetuleti", - "defaultExtent": "{\"xmin\": -29338680.42037876, \"ymin\": -33101332.658409927, \"xmax\": 10539599.50213619, \"ymax\": 30826534.15607932}" - }, - 23830: { - "label": "DGN 1995 Indonesia TM-3 Zone 46.2", - "defaultExtent": "{\"xmin\": -5422450.6715913005, \"ymin\": -8109668.72398361, \"xmax\": 5822450.6715913005, \"ymax\": 11109668.723983606}" - }, - 23831: { - "label": "DGN 1995 Indonesia TM-3 Zone 47.1", - "defaultExtent": "{\"xmin\": -5422450.6715913005, \"ymin\": -8109668.72398361, \"xmax\": 5822450.671591299, \"ymax\": 11109668.723983606}" - }, - 23832: { - "label": "DGN 1995 Indonesia TM-3 Zone 47.2", - "defaultExtent": "{\"xmin\": -5422450.6715913005, \"ymin\": -8109668.72398361, \"xmax\": 5822450.6715913005, \"ymax\": 11109668.723983606}" - }, - 23833: { - "label": "DGN 1995 Indonesia TM-3 Zone 48.1", - "defaultExtent": "{\"xmin\": -5422450.6715913005, \"ymin\": -8109668.72398361, \"xmax\": 5822450.6715913005, \"ymax\": 11109668.723983606}" - }, - 23834: { - "label": "DGN 1995 Indonesia TM-3 Zone 48.2", - "defaultExtent": "{\"xmin\": -5422450.6715913005, \"ymin\": -8109668.72398361, \"xmax\": 5822450.671591299, \"ymax\": 11109668.723983606}" - }, - 23835: { - "label": "DGN 1995 Indonesia TM-3 Zone 49.1", - "defaultExtent": "{\"xmin\": -5422450.671591303, \"ymin\": -8109668.72398361, \"xmax\": 5822450.6715913005, \"ymax\": 11109668.723983606}" - }, - 23836: { - "label": "DGN 1995 Indonesia TM-3 Zone 49.2", - "defaultExtent": "{\"xmin\": -5422450.6715913005, \"ymin\": -8109668.72398361, \"xmax\": 5822450.6715913005, \"ymax\": 11109668.723983606}" - }, - 23837: { - "label": "DGN 1995 Indonesia TM-3 Zone 50.1", - "defaultExtent": "{\"xmin\": -5422450.6715913005, \"ymin\": -8109668.72398361, \"xmax\": 5822450.6715913005, \"ymax\": 11109668.723983606}" - }, - 23838: { - "label": "DGN 1995 Indonesia TM-3 Zone 50.2", - "defaultExtent": "{\"xmin\": -5422450.671591303, \"ymin\": -8109668.72398361, \"xmax\": 5822450.6715913005, \"ymax\": 11109668.723983606}" - }, - 23839: { - "label": "DGN 1995 Indonesia TM-3 Zone 51.1", - "defaultExtent": "{\"xmin\": -5422450.6715913005, \"ymin\": -8109668.72398361, \"xmax\": 5822450.6715913005, \"ymax\": 11109668.723983606}" - }, - 23840: { - "label": "DGN 1995 Indonesia TM-3 Zone 51.2", - "defaultExtent": "{\"xmin\": -5422450.6715913005, \"ymin\": -8109668.72398361, \"xmax\": 5822450.6715913005, \"ymax\": 11109668.723983606}" - }, - 23841: { - "label": "DGN 1995 Indonesia TM-3 Zone 52.1", - "defaultExtent": "{\"xmin\": -5422450.671591303, \"ymin\": -8109668.72398361, \"xmax\": 5822450.6715913005, \"ymax\": 11109668.723983606}" - }, - 23842: { - "label": "DGN 1995 Indonesia TM-3 Zone 52.2", - "defaultExtent": "{\"xmin\": -5422450.6715913005, \"ymin\": -8109668.72398361, \"xmax\": 5822450.6715913005, \"ymax\": 11109668.723983606}" - }, - 23843: { - "label": "DGN 1995 Indonesia TM-3 Zone 53.1", - "defaultExtent": "{\"xmin\": -5422450.6715913005, \"ymin\": -8109668.72398361, \"xmax\": 5822450.6715913005, \"ymax\": 11109668.723983606}" - }, - 23844: { - "label": "DGN 1995 Indonesia TM-3 Zone 53.2", - "defaultExtent": "{\"xmin\": -5422450.671591293, \"ymin\": -8109668.723962801, \"xmax\": 5822450.671591309, \"ymax\": 11109668.72396281}" - }, - 23845: { - "label": "DGN 1995 Indonesia TM-3 Zone 54.1", - "defaultExtent": "{\"xmin\": -5422450.67159129, \"ymin\": -8109668.723962801, \"xmax\": 5822450.671591309, \"ymax\": 11109668.72396281}" - }, - 23846: { - "label": "Indonesian 1974 UTM Zone 46N", - "defaultExtent": "{\"xmin\": -5120784.20835166, \"ymin\": -9606819.557986394, \"xmax\": 6120784.208351658, \"ymax\": 9606819.557986388}" - }, - 23847: { - "label": "Indonesian 1974 UTM Zone 47N", - "defaultExtent": "{\"xmin\": -5120784.20835166, \"ymin\": -9606819.557986394, \"xmax\": 6120784.20835166, \"ymax\": 9606819.557986388}" - }, - 23848: { - "label": "Indonesian 1974 UTM Zone 48N", - "defaultExtent": "{\"xmin\": -5120784.20835166, \"ymin\": -9606819.557986394, \"xmax\": 6120784.20835166, \"ymax\": 9606819.557986388}" - }, - 23849: { - "label": "Indonesian 1974 UTM Zone 49N", - "defaultExtent": "{\"xmin\": -5120784.20835166, \"ymin\": -9606819.557986394, \"xmax\": 6120784.208351658, \"ymax\": 9606819.557986388}" - }, - 23850: { - "label": "Indonesian 1974 UTM Zone 50N", - "defaultExtent": "{\"xmin\": -5120784.20835166, \"ymin\": -9606819.557986394, \"xmax\": 6120784.20835166, \"ymax\": 9606819.557986388}" - }, - 23851: { - "label": "Indonesian 1974 UTM Zone 51N", - "defaultExtent": "{\"xmin\": -5120784.208351661, \"ymin\": -9606819.557986394, \"xmax\": 6120784.20835166, \"ymax\": 9606819.557986388}" - }, - 23852: { - "label": "Indonesian 1974 UTM Zone 52N", - "defaultExtent": "{\"xmin\": -5120784.20835166, \"ymin\": -9606819.557986394, \"xmax\": 6120784.20835166, \"ymax\": 9606819.557986388}" - }, - 23853: { - "label": "Indonesian 1974 UTM Zone 53N", - "defaultExtent": "{\"xmin\": -5120784.20835166, \"ymin\": -9606819.55798639, \"xmax\": 6120782.408942802, \"ymax\": 9606819.557986388}" - }, - 23866: { - "label": "DGN 1995 UTM Zone 46N", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699433, \"ymax\": 9606785.535047516}" - }, - 23867: { - "label": "DGN 1995 UTM Zone 47N", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699434, \"ymax\": 9606785.535047516}" - }, - 23868: { - "label": "DGN 1995 UTM Zone 48N", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699434, \"ymax\": 9606785.535047516}" - }, - 23869: { - "label": "DGN 1995 UTM Zone 49N", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699433, \"ymax\": 9606785.535047516}" - }, - 23870: { - "label": "DGN 1995 UTM Zone 50N", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699434, \"ymax\": 9606785.535047516}" - }, - 23871: { - "label": "DGN 1995 UTM Zone 51N", - "defaultExtent": "{\"xmin\": -5120763.767699436, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699434, \"ymax\": 9606785.535047516}" - }, - 23872: { - "label": "DGN 1995 UTM Zone 52N", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699434, \"ymax\": 9606785.535047516}" - }, - 23877: { - "label": "DGN 1995 UTM Zone 47S", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": 393214.4649524782, \"xmax\": 6120763.767699434, \"ymax\": 19606785.535047516}" - }, - 23878: { - "label": "DGN 1995 UTM Zone 48S", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": 393214.4649524782, \"xmax\": 6120763.767699434, \"ymax\": 19606785.535047516}" - }, - 23879: { - "label": "DGN 1995 UTM Zone 49S", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": 393214.4649524782, \"xmax\": 6120763.767699433, \"ymax\": 19606785.535047516}" - }, - 23880: { - "label": "DGN 1995 UTM Zone 50S", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": 393214.4649524782, \"xmax\": 6120763.767699434, \"ymax\": 19606785.535047516}" - }, - 23881: { - "label": "DGN 1995 UTM Zone 51S", - "defaultExtent": "{\"xmin\": -5120763.767699436, \"ymin\": 393214.4649524782, \"xmax\": 6120763.767699434, \"ymax\": 19606785.535047516}" - }, - 23882: { - "label": "DGN 1995 UTM Zone 52S", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": 393214.4649524782, \"xmax\": 6120763.767699434, \"ymax\": 19606785.535047516}" - }, - 23883: { - "label": "DGN 1995 UTM Zone 53S", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": 393214.46495248005, \"xmax\": 6120761.968297224, \"ymax\": 19606785.535047516}" - }, - 23884: { - "label": "DGN 1995 UTM Zone 54S", - "defaultExtent": "{\"xmin\": -5120763.767699427, \"ymin\": 393214.46497328207, \"xmax\": 6120763.767699442, \"ymax\": 19606785.53502673}" - }, - 23886: { - "label": "Indonesian 1974 UTM Zone 46S", - "defaultExtent": "{\"xmin\": -5120784.20835166, \"ymin\": 393180.4420136064, \"xmax\": 6120784.208351658, \"ymax\": 19606819.557986386}" - }, - 23887: { - "label": "Indonesian 1974 UTM Zone 47S", - "defaultExtent": "{\"xmin\": -5120784.20835166, \"ymin\": 393180.4420136064, \"xmax\": 6120784.20835166, \"ymax\": 19606819.557986386}" - }, - 23888: { - "label": "Indonesian 1974 UTM Zone 48S", - "defaultExtent": "{\"xmin\": -5120784.20835166, \"ymin\": 393180.4420136064, \"xmax\": 6120784.20835166, \"ymax\": 19606819.557986386}" - }, - 23889: { - "label": "Indonesian 1974 UTM Zone 49S", - "defaultExtent": "{\"xmin\": -5120784.20835166, \"ymin\": 393180.4420136064, \"xmax\": 6120784.208351658, \"ymax\": 19606819.557986386}" - }, - 23890: { - "label": "Indonesian 1974 UTM Zone 50S", - "defaultExtent": "{\"xmin\": -5120784.20835166, \"ymin\": 393180.4420136064, \"xmax\": 6120784.20835166, \"ymax\": 19606819.557986386}" - }, - 23891: { - "label": "Indonesian 1974 UTM Zone 51S", - "defaultExtent": "{\"xmin\": -5120784.208351661, \"ymin\": 393180.4420136064, \"xmax\": 6120784.20835166, \"ymax\": 19606819.557986386}" - }, - 23892: { - "label": "Indonesian 1974 UTM Zone 52S", - "defaultExtent": "{\"xmin\": -5120784.20835166, \"ymin\": 393180.4420136064, \"xmax\": 6120784.20835166, \"ymax\": 19606819.557986386}" - }, - 23893: { - "label": "Indonesian 1974 UTM Zone 53S", - "defaultExtent": "{\"xmin\": -5120784.20835166, \"ymin\": 393180.44201361015, \"xmax\": 6120782.408942802, \"ymax\": 19606819.557986386}" - }, - 23894: { - "label": "Indonesian 1974 UTM Zone 54S", - "defaultExtent": "{\"xmin\": -5120784.208351651, \"ymin\": 393180.4420344103, \"xmax\": 6120784.208351667, \"ymax\": 19606819.5579656}" - }, - 23946: { - "label": "Indian 1954 UTM Zone 46N", - "defaultExtent": "{\"xmin\": -5119962.926635592, \"ymin\": -9605642.135990623, \"xmax\": 6119962.926635591, \"ymax\": 9605642.135990622}" - }, - 23947: { - "label": "Indian 1954 UTM Zone 47N", - "defaultExtent": "{\"xmin\": -5119962.926635592, \"ymin\": -9605642.135990625, \"xmax\": 6119962.926635592, \"ymax\": 9605642.135990622}" - }, - 23948: { - "label": "Indian 1954 UTM Zone 48N", - "defaultExtent": "{\"xmin\": -5119962.926635592, \"ymin\": -9605642.135990625, \"xmax\": 6119962.926635592, \"ymax\": 9605642.135990622}" - }, - 24047: { - "label": "Indian 1975 UTM Zone 47N", - "defaultExtent": "{\"xmin\": -5119962.926635592, \"ymin\": -9605642.135990625, \"xmax\": 6119962.926635592, \"ymax\": 9605642.135990622}" - }, - 24048: { - "label": "Indian 1975 UTM Zone 48N", - "defaultExtent": "{\"xmin\": -5119962.926635592, \"ymin\": -9605642.135990625, \"xmax\": 6119962.926635592, \"ymax\": 9605642.135990622}" - }, - 24100: { - "label": "Jamaica 1875 Old Grid", - "defaultExtent": "{\"xmin\": -124492390.19104493, \"ymin\": -86678795.59083289, \"xmax\": 125592390.19104502, \"ymax\": 49594804.98786084}" - }, - 24200: { - "label": "Jamaica Grid", - "defaultExtent": "{\"xmin\": -37862792.48065939, \"ymin\": -26391802.193117533, \"xmax\": 38362792.48065941, \"ymax\": 15144351.14700006}" - }, - 24305: { - "label": "Kalianpur 1937 UTM Zone 45N", - "defaultExtent": "{\"xmin\": -5119962.926635592, \"ymin\": -9605642.135990627, \"xmax\": 6119962.926635591, \"ymax\": 9605642.135990622}" - }, - 24306: { - "label": "Kalianpur 1937 UTM Zone 46N", - "defaultExtent": "{\"xmin\": -5119962.926635592, \"ymin\": -9605642.135990623, \"xmax\": 6119962.926635591, \"ymax\": 9605642.135990622}" - }, - 24311: { - "label": "Kalianpur 1962 UTM Zone 41N", - "defaultExtent": "{\"xmin\": -5119984.867530668, \"ymin\": -9605679.639613787, \"xmax\": 6119984.867530668, \"ymax\": 9605679.639613781}" - }, - 24312: { - "label": "Kalianpur 1962 UTM Zone 42N", - "defaultExtent": "{\"xmin\": -5119984.867530668, \"ymin\": -9605679.639613787, \"xmax\": 6119984.86753067, \"ymax\": 9605679.639613781}" - }, - 24313: { - "label": "Kalianpur 1962 UTM Zone 43N", - "defaultExtent": "{\"xmin\": -5119984.867530668, \"ymin\": -9605679.639613787, \"xmax\": 6119984.86753067, \"ymax\": 9605679.639613781}" - }, - 24342: { - "label": "Kalianpur 1975 UTM Zone 42N", - "defaultExtent": "{\"xmin\": -5119983.023959557, \"ymin\": -9605676.488581548, \"xmax\": 6119983.023959558, \"ymax\": 9605676.488581544}" - }, - 24343: { - "label": "Kalianpur 1975 UTM Zone 43N", - "defaultExtent": "{\"xmin\": -5119983.023959557, \"ymin\": -9605676.488581548, \"xmax\": 6119983.023959558, \"ymax\": 9605676.488581544}" - }, - 24344: { - "label": "Kalianpur 1975 UTM Zone 44N", - "defaultExtent": "{\"xmin\": -5119983.023959557, \"ymin\": -9605676.488581548, \"xmax\": 6119983.023959557, \"ymax\": 9605676.488581544}" - }, - 24345: { - "label": "Kalianpur 1975 UTM Zone 45N", - "defaultExtent": "{\"xmin\": -5119983.023959557, \"ymin\": -9605676.48858155, \"xmax\": 6119983.023959554, \"ymax\": 9605676.488581544}" - }, - 24346: { - "label": "Kalianpur 1975 UTM Zone 46N", - "defaultExtent": "{\"xmin\": -5119983.023959557, \"ymin\": -9605676.488581548, \"xmax\": 6119983.023959554, \"ymax\": 9605676.488581544}" - }, - 24347: { - "label": "Kalianpur 1975 UTM Zone 47N", - "defaultExtent": "{\"xmin\": -5119983.023959557, \"ymin\": -9605676.488581548, \"xmax\": 6119983.023959557, \"ymax\": 9605676.488581544}" - }, - 24370: { - "label": "Kalianpur 1880 India Zone 0", - "defaultExtent": "{\"xmin\": -38109847.63727261, \"ymin\": -29416482.13203338, \"xmax\": 42820847.6370281, \"ymax\": 27825762.16612823}" - }, - 24371: { - "label": "Kalianpur 1880 India Zone I", - "defaultExtent": "{\"xmin\": -38886020.48878113, \"ymin\": -29941339.88895156, \"xmax\": 44886020.48874949, \"ymax\": 16841662.473849643}" - }, - 24372: { - "label": "Kalianpur 1880 India Zone IIa", - "defaultExtent": "{\"xmin\": -40442542.90867567, \"ymin\": -28978479.73122572, \"xmax\": 46442542.90867567, \"ymax\": 14437311.603604672}" - }, - 24373: { - "label": "Kalianpur 1880 India Zone III", - "defaultExtent": "{\"xmin\": -39106955.88289048, \"ymin\": -28092919.31137778, \"xmax\": 45106955.882890485, \"ymax\": 16999243.692953374}" - }, - 24374: { - "label": "Kalianpur 1880 India Zone IV", - "defaultExtent": "{\"xmin\": -34293457.895204745, \"ymin\": -27590763.85899765, \"xmax\": 40293457.89520477, \"ymax\": 19607918.879957758}" - }, - 24375: { - "label": "Kalianpur 1937 India Zone IIb", - "defaultExtent": "{\"xmin\": -36980468.35850501, \"ymin\": -26497783.66249764, \"xmax\": 42466839.738505006, \"ymax\": 13201408.87479647}" - }, - 24376: { - "label": "Kalianpur 1962 India Zone I", - "defaultExtent": "{\"xmin\": -35557330.51672997, \"ymin\": -27378325.30262816, \"xmax\": 41043723.316701025, \"ymax\": 15399995.968590083}" - }, - 24377: { - "label": "Kalianpur 1962 India Zone IIa", - "defaultExtent": "{\"xmin\": -36980612.74827305, \"ymin\": -26497887.12671756, \"xmax\": 42467005.54827305, \"ymax\": 13201460.414886404}" - }, - 24378: { - "label": "Kalianpur 1975 India Zone I", - "defaultExtent": "{\"xmin\": -35557318.85268457, \"ymin\": -27378316.32152686, \"xmax\": 41043709.85265563, \"ymax\": 15399990.91675727}" - }, - 24379: { - "label": "Kalianpur 1975 India Zone IIa", - "defaultExtent": "{\"xmin\": -36980600.61733636, \"ymin\": -26497878.43443384, \"xmax\": 42466991.61733636, \"ymax\": 13201456.084257785}" - }, - 24380: { - "label": "Kalianpur 1975 India Zone IIb", - "defaultExtent": "{\"xmin\": -36980600.61733636, \"ymin\": -26497878.43476283, \"xmax\": 42466991.61733636, \"ymax\": 13201456.084257785}" - }, - 24381: { - "label": "Kalianpur 1975 India Zone III", - "defaultExtent": "{\"xmin\": -35759341.83971704, \"ymin\": -25688123.311606362, \"xmax\": 41245732.83971705, \"ymax\": 15544082.94645011}" - }, - 24382: { - "label": "Kalianpur 1880 India Zone IIb", - "defaultExtent": "{\"xmin\": -40442542.90867567, \"ymin\": -28978479.73158551, \"xmax\": 46442542.90867567, \"ymax\": 14437311.603604672}" - }, - 24383: { - "label": "Kalianpur 1975 India Zone IV", - "defaultExtent": "{\"xmin\": -31357886.492563233, \"ymin\": -25228953.11632692, \"xmax\": 36844277.49256325, \"ymax\": 17929451.62741229}" - }, - 24500: { - "label": "Kertau Singapore Grid", - "defaultExtent": "{\"xmin\": -4978722.898507285, \"ymin\": -9721792.04711103, \"xmax\": 5038722.898507285, \"ymax\": 9497051.35728986}" - }, - 24547: { - "label": "Kertau UTM Zone 47N", - "defaultExtent": "{\"xmin\": -5119987.353071579, \"ymin\": -9605683.885661539, \"xmax\": 6119987.353071579, \"ymax\": 9605683.885661533}" - }, - 24548: { - "label": "Kertau UTM Zone 48N", - "defaultExtent": "{\"xmin\": -5119987.353071579, \"ymin\": -9605683.885661539, \"xmax\": 6119987.353071579, \"ymax\": 9605683.885661533}" - }, - 24571: { - "label": "Kertau RSO Malaya Chains", - "defaultExtent": "{\"xmin\": -1524042.221399555, \"ymin\": -1428379.942673967, \"xmax\": 1604361.267241544, \"ymax\": 1428146.9164940245}" - }, - 24600: { - "label": "KOC Lambert", - "defaultExtent": "{\"xmin\": -36802027.214273654, \"ymin\": -27126297.07353634, \"xmax\": 39802027.2142683, \"ymax\": 15653699.897959389}" - }, - 24718: { - "label": "La Canoa UTM Zone 18N", - "defaultExtent": "{\"xmin\": -5121006.178542035, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 24719: { - "label": "La Canoa UTM Zone 19N", - "defaultExtent": "{\"xmin\": -5121006.178542035, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 24720: { - "label": "La Canoa UTM Zone 20N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 24721: { - "label": "La Canoa UTM Zone 21N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 24817: { - "label": "PSAD 1956 UTM Zone 17N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 24818: { - "label": "PSAD 1956 UTM Zone 18N", - "defaultExtent": "{\"xmin\": -5121006.178542035, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 24819: { - "label": "PSAD 1956 UTM Zone 19N", - "defaultExtent": "{\"xmin\": -5121006.178542035, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 24820: { - "label": "PSAD 1956 UTM Zone 20N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 24821: { - "label": "PSAD 1956 UTM Zone 21N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 24877: { - "label": "PSAD 1956 UTM Zone 17S", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": 392912.94750043936, \"xmax\": 6121006.178542033, \"ymax\": 19607087.052499555}" - }, - 24878: { - "label": "PSAD 1956 UTM Zone 18S", - "defaultExtent": "{\"xmin\": -5121006.178542035, \"ymin\": 392912.94750043936, \"xmax\": 6121006.178542033, \"ymax\": 19607087.052499555}" - }, - 24879: { - "label": "PSAD 1956 UTM Zone 19S", - "defaultExtent": "{\"xmin\": -5121006.178542035, \"ymin\": 392912.94750043936, \"xmax\": 6121006.178542033, \"ymax\": 19607087.052499555}" - }, - 24880: { - "label": "PSAD 1956 UTM Zone 20S", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": 392912.94750043936, \"xmax\": 6121006.178542033, \"ymax\": 19607087.052499555}" - }, - 24881: { - "label": "PSAD 1956 UTM Zone 21S", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": 392912.94750043936, \"xmax\": 6121006.178542033, \"ymax\": 19607087.052499555}" - }, - 24882: { - "label": "PSAD 1956 UTM Zone 22S", - "defaultExtent": "{\"xmin\": -5121006.178542034, \"ymin\": 392912.94750043936, \"xmax\": 6121006.178542033, \"ymax\": 19607087.052499555}" - }, - 24891: { - "label": "Peru West Zone", - "defaultExtent": "{\"xmin\": -5400299.97716304, \"ymin\": -7519099.059758197, \"xmax\": 5844299.97716304, \"ymax\": 11699497.61144548}" - }, - 24892: { - "label": "Peru Central Zone", - "defaultExtent": "{\"xmin\": -4899487.562166905, \"ymin\": -7514652.712371882, \"xmax\": 6339487.562166905, \"ymax\": 11694330.336345926}" - }, - 24893: { - "label": "Peru East Zone", - "defaultExtent": "{\"xmin\": -4296612.100797941, \"ymin\": -7516259.215730811, \"xmax\": 6944612.100797943, \"ymax\": 11696567.821119765}" - }, - 25000: { - "label": "Ghana Metre Grid", - "defaultExtent": "{\"xmin\": -5347468.414007636, \"ymin\": -10123949.065301735, \"xmax\": 5896107.434007635, \"ymax\": 9092252.463839838}" - }, - 25231: { - "label": "Lome UTM Zone 31N", - "defaultExtent": "{\"xmin\": -5120944.475688979, \"ymin\": -9606659.335852288, \"xmax\": 6120944.47568898, \"ymax\": 9606659.335852282}" - }, - 25391: { - "label": "Philippines Zone I", - "defaultExtent": "{\"xmin\": -5122848.728180778, \"ymin\": -9610052.79298174, \"xmax\": 6122848.728180778, \"ymax\": 9610052.792981734}" - }, - 25392: { - "label": "Philippines Zone II", - "defaultExtent": "{\"xmin\": -5122848.728180778, \"ymin\": -9610052.79298174, \"xmax\": 6122848.728180778, \"ymax\": 9610052.792981734}" - }, - 25393: { - "label": "Philippines Zone III", - "defaultExtent": "{\"xmin\": -5122848.728180778, \"ymin\": -9610052.79298174, \"xmax\": 6122848.728180778, \"ymax\": 9610052.792981734}" - }, - 25394: { - "label": "Philippines Zone IV", - "defaultExtent": "{\"xmin\": -5122848.728180779, \"ymin\": -9610052.79298174, \"xmax\": 6122848.728180778, \"ymax\": 9610052.792981734}" - }, - 25395: { - "label": "Philippines Zone V", - "defaultExtent": "{\"xmin\": -5122848.728180778, \"ymin\": -9610052.79298174, \"xmax\": 6122848.728180778, \"ymax\": 9610052.792981734}" - }, - 25828: { - "label": "ETRS 1989 UTM Zone 28N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 25829: { - "label": "ETRS 1989 UTM Zone 29N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 25830: { - "label": "ETRS 1989 UTM Zone 30N", - "defaultExtent": "{\"xmin\": -5120763.767724002, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 25831: { - "label": "ETRS 1989 UTM Zone 31N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724002, \"ymax\": 9606785.534958888}" - }, - 25832: { - "label": "ETRS 1989 UTM Zone 32N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 25833: { - "label": "ETRS 1989 UTM Zone 33N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 25834: { - "label": "ETRS 1989 UTM Zone 34N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 25835: { - "label": "ETRS 1989 UTM Zone 35N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 25836: { - "label": "ETRS 1989 UTM Zone 36N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767723999, \"ymax\": 9606785.534958888}" - }, - 25837: { - "label": "ETRS 1989 UTM Zone 37N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767723999, \"ymax\": 9606785.534958888}" - }, - 25838: { - "label": "ETRS 1989 UTM Zone 38N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 25884: { - "label": "ETRS 1989 TM Baltic 1993", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767723999, \"ymax\": 9606785.534958888}" - }, - 25932: { - "label": "Malongo 1987 UTM Zone 32S", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": 392912.94750043936, \"xmax\": 6121006.178542033, \"ymax\": 19607087.052499555}" - }, - 26191: { - "label": "Nord Maroc", - "defaultExtent": "{\"xmin\": -37644652.57125489, \"ymin\": -28128361.975257386, \"xmax\": 38644652.57137232, \"ymax\": 15867737.975734152}" - }, - 26192: { - "label": "Sud Maroc", - "defaultExtent": "{\"xmin\": -38611651.14957893, \"ymin\": -27628323.40364072, \"xmax\": 39611651.14957893, \"ymax\": 11443183.253599452}" - }, - 26193: { - "label": "Sahara", - "defaultExtent": "{\"xmin\": -38552575.06885357, \"ymin\": -27047880.437310666, \"xmax\": 40952575.068853594, \"ymax\": 12666917.02148565}" - }, - 26194: { - "label": "Merchich Sahara Nord", - "defaultExtent": "{\"xmin\": -38553223.454191625, \"ymin\": -27048328.126629043, \"xmax\": 40953223.45419165, \"ymax\": 12667117.101332707}" - }, - 26195: { - "label": "Merchich Sahara Sud", - "defaultExtent": "{\"xmin\": -38056375.877048224, \"ymin\": -26603714.105037093, \"xmax\": 41056375.877048254, \"ymax\": 13851537.125899928}" - }, - 26237: { - "label": "Massawa UTM Zone 37N", - "defaultExtent": "{\"xmin\": -5120096.774353864, \"ymin\": -9605725.299399875, \"xmax\": 6120096.774353863, \"ymax\": 9605725.29939987}" - }, - 26331: { - "label": "Minna UTM Zone 31N", - "defaultExtent": "{\"xmin\": -5120944.444949269, \"ymin\": -9606659.189062225, \"xmax\": 6120944.444949271, \"ymax\": 9606659.189062221}" - }, - 26332: { - "label": "Minna UTM Zone 32N", - "defaultExtent": "{\"xmin\": -5120944.444949269, \"ymin\": -9606659.189062225, \"xmax\": 6120944.444949269, \"ymax\": 9606659.189062221}" - }, - 26391: { - "label": "Nigeria West Belt", - "defaultExtent": "{\"xmin\": -5391049.664007636, \"ymin\": -10050253.809660502, \"xmax\": 5852526.184007635, \"ymax\": 9165947.71948107}" - }, - 26392: { - "label": "Nigeria Mid Belt", - "defaultExtent": "{\"xmin\": -4951233.944007635, \"ymin\": -10050253.809660502, \"xmax\": 6292341.904007636, \"ymax\": 9165947.71948107}" - }, - 26393: { - "label": "Nigeria East Belt", - "defaultExtent": "{\"xmin\": -4511418.224007635, \"ymin\": -10050253.809660502, \"xmax\": 6732157.624007636, \"ymax\": 9165947.71948107}" - }, - 26591: { - "label": "Monte Mario Rome Italy 1", - "defaultExtent": "{\"xmin\": -4121006.178542034, \"ymin\": -9607087.05249956, \"xmax\": 7121006.178542033, \"ymax\": 9607087.052499557}" - }, - 26592: { - "label": "Monte Mario Rome Italy 2", - "defaultExtent": "{\"xmin\": -3101006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 8141006.178542031, \"ymax\": 9607087.052499557}" - }, - 26632: { - "label": "Mporaloko UTM Zone 32N", - "defaultExtent": "{\"xmin\": -5120944.475688979, \"ymin\": -9606659.335852288, \"xmax\": 6120944.475688979, \"ymax\": 9606659.335852282}" - }, - 26692: { - "label": "Mporaloko UTM Zone 32S", - "defaultExtent": "{\"xmin\": -5120944.475688979, \"ymin\": 393340.6641477123, \"xmax\": 6120944.475688979, \"ymax\": 19606659.33585228}" - }, - 26701: { - "label": "NAD 1927 UTM Zone 1N", - "defaultExtent": "{\"xmin\": -5120880.632721118, \"ymin\": -9606689.106299058, \"xmax\": 6120880.632721149, \"ymax\": 9606689.106299067}" - }, - 26702: { - "label": "NAD 1927 UTM Zone 2N", - "defaultExtent": "{\"xmin\": -5120880.632721118, \"ymin\": -9606689.106299058, \"xmax\": 6120880.632721149, \"ymax\": 9606689.106299067}" - }, - 26703: { - "label": "NAD 1927 UTM Zone 3N", - "defaultExtent": "{\"xmin\": -5120880.632721126, \"ymin\": -9606689.106299058, \"xmax\": 6120880.632721149, \"ymax\": 9606689.106299067}" - }, - 26704: { - "label": "NAD 1927 UTM Zone 4N", - "defaultExtent": "{\"xmin\": -5120880.632721118, \"ymin\": -9606689.106299058, \"xmax\": 6120880.632721152, \"ymax\": 9606689.106299069}" - }, - 26705: { - "label": "NAD 1927 UTM Zone 5N", - "defaultExtent": "{\"xmin\": -5120880.632721118, \"ymin\": -9606689.106299058, \"xmax\": 6120880.632721149, \"ymax\": 9606689.106299067}" - }, - 26706: { - "label": "NAD 1927 UTM Zone 6N", - "defaultExtent": "{\"xmin\": -5120880.632721126, \"ymin\": -9606689.106299058, \"xmax\": 6120880.632721149, \"ymax\": 9606689.106299067}" - }, - 26707: { - "label": "NAD 1927 UTM Zone 7N", - "defaultExtent": "{\"xmin\": -5120880.632721118, \"ymin\": -9606689.106299058, \"xmax\": 6120880.632721152, \"ymax\": 9606689.106299069}" - }, - 26708: { - "label": "NAD 1927 UTM Zone 8N", - "defaultExtent": "{\"xmin\": -5120878.8332481645, \"ymin\": -9606689.106319863, \"xmax\": 6120880.632721142, \"ymax\": 9606689.106319858}" - }, - 26709: { - "label": "NAD 1927 UTM Zone 9N", - "defaultExtent": "{\"xmin\": -5120880.632721142, \"ymin\": -9606689.106319863, \"xmax\": 6120880.632721142, \"ymax\": 9606689.106319858}" - }, - 26710: { - "label": "NAD 1927 UTM Zone 10N", - "defaultExtent": "{\"xmin\": -5120880.632721142, \"ymin\": -9606689.106319863, \"xmax\": 6120880.632721144, \"ymax\": 9606689.106319858}" - }, - 26711: { - "label": "NAD 1927 UTM Zone 11N", - "defaultExtent": "{\"xmin\": -5120880.632721142, \"ymin\": -9606689.106319863, \"xmax\": 6120880.632721142, \"ymax\": 9606689.106319858}" - }, - 26712: { - "label": "NAD 1927 UTM Zone 12N", - "defaultExtent": "{\"xmin\": -5120880.63272114, \"ymin\": -9606689.106319863, \"xmax\": 6120880.632721142, \"ymax\": 9606689.106319858}" - }, - 26713: { - "label": "NAD 1927 UTM Zone 13N", - "defaultExtent": "{\"xmin\": -5120880.632721142, \"ymin\": -9606689.106319863, \"xmax\": 6120880.632721142, \"ymax\": 9606689.106319858}" - }, - 26714: { - "label": "NAD 1927 UTM Zone 14N", - "defaultExtent": "{\"xmin\": -5120880.632721142, \"ymin\": -9606689.106319863, \"xmax\": 6120880.632721142, \"ymax\": 9606689.106319858}" - }, - 26715: { - "label": "NAD 1927 UTM Zone 15N", - "defaultExtent": "{\"xmin\": -5120880.63272114, \"ymin\": -9606689.106319863, \"xmax\": 6120880.632721142, \"ymax\": 9606689.106319858}" - }, - 26716: { - "label": "NAD 1927 UTM Zone 16N", - "defaultExtent": "{\"xmin\": -5120880.63272114, \"ymin\": -9606689.106319865, \"xmax\": 6120880.632721142, \"ymax\": 9606689.106319858}" - }, - 26717: { - "label": "NAD 1927 UTM Zone 17N", - "defaultExtent": "{\"xmin\": -5120880.632721142, \"ymin\": -9606689.106319863, \"xmax\": 6120880.632721142, \"ymax\": 9606689.106319858}" - }, - 26718: { - "label": "NAD 1927 UTM Zone 18N", - "defaultExtent": "{\"xmin\": -5120880.632721144, \"ymin\": -9606689.106319863, \"xmax\": 6120880.632721142, \"ymax\": 9606689.106319858}" - }, - 26719: { - "label": "NAD 1927 UTM Zone 19N", - "defaultExtent": "{\"xmin\": -5120880.632721144, \"ymin\": -9606689.106319863, \"xmax\": 6120880.632721142, \"ymax\": 9606689.106319858}" - }, - 26720: { - "label": "NAD 1927 UTM Zone 20N", - "defaultExtent": "{\"xmin\": -5120880.632721142, \"ymin\": -9606689.106319863, \"xmax\": 6120880.632721142, \"ymax\": 9606689.106319858}" - }, - 26721: { - "label": "NAD 1927 UTM Zone 21N", - "defaultExtent": "{\"xmin\": -5120880.632721142, \"ymin\": -9606689.106319863, \"xmax\": 6120880.632721142, \"ymax\": 9606689.106319858}" - }, - 26722: { - "label": "NAD 1927 UTM Zone 22N", - "defaultExtent": "{\"xmin\": -5120880.632721143, \"ymin\": -9606689.106319863, \"xmax\": 6120880.632721142, \"ymax\": 9606689.106319858}" - }, - 26729: { - "label": "NAD 1927 StatePlane Alabama East FIPS 0101", - "defaultExtent": "{\"xmin\": -17947814.02122606, \"ymin\": -42602846.376129285, \"xmax\": 18947814.021226063, \"ymax\": 20455747.3116472}" - }, - 26730: { - "label": "NAD 1927 StatePlane Alabama West FIPS 0102", - "defaultExtent": "{\"xmin\": -17947322.059840377, \"ymin\": -42419877.71797121, \"xmax\": 18947322.05984038, \"ymax\": 20637034.340041734}" - }, - 26731: { - "label": "NAD 1927 StatePlane Alaska 1 FIPS 5001", - "defaultExtent": "{\"xmin\": -82718602.97859299, \"ymin\": -115815627.38941209, \"xmax\": 123526235.64173481, \"ymax\": 76337874.21712899}" - }, - 26732: { - "label": "NAD 1927 StatePlane Alaska 2 FIPS 5002", - "defaultExtent": "{\"xmin\": -17946707.10810819, \"ymin\": -51163523.62319098, \"xmax\": 18946707.108108293, \"ymax\": 11891286.397481056}" - }, - 26733: { - "label": "NAD 1927 StatePlane Alaska 3 FIPS 5003", - "defaultExtent": "{\"xmin\": -17946707.10810819, \"ymin\": -51163523.62319098, \"xmax\": 18946707.108108304, \"ymax\": 11891286.397481058}" - }, - 26734: { - "label": "NAD 1927 StatePlane Alaska 4 FIPS 5004", - "defaultExtent": "{\"xmin\": -17946707.10810819, \"ymin\": -51163523.62319098, \"xmax\": 18946707.108108304, \"ymax\": 11891286.397481058}" - }, - 26735: { - "label": "NAD 1927 StatePlane Alaska 5 FIPS 5005", - "defaultExtent": "{\"xmin\": -17946707.10810819, \"ymin\": -51163523.62319098, \"xmax\": 18946707.108108304, \"ymax\": 11891286.397481058}" - }, - 26736: { - "label": "NAD 1927 StatePlane Alaska 6 FIPS 5006", - "defaultExtent": "{\"xmin\": -17946707.10810821, \"ymin\": -51163523.62319098, \"xmax\": 18946707.108108293, \"ymax\": 11891286.397481056}" - }, - 26737: { - "label": "NAD 1927 StatePlane Alaska 7 FIPS 5007", - "defaultExtent": "{\"xmin\": -17746707.10810819, \"ymin\": -51163523.62319098, \"xmax\": 19146707.108108293, \"ymax\": 11891286.397481056}" - }, - 26738: { - "label": "NAD 1927 StatePlane Alaska 8 FIPS 5008", - "defaultExtent": "{\"xmin\": -17946707.10810819, \"ymin\": -51163523.62319098, \"xmax\": 18946707.108108293, \"ymax\": 11891286.397481056}" - }, - 26739: { - "label": "NAD 1927 StatePlane Alaska 9 FIPS 5009", - "defaultExtent": "{\"xmin\": -17846707.10810819, \"ymin\": -51163523.62319098, \"xmax\": 19046707.108108304, \"ymax\": 11891286.397481058}" - }, - 26740: { - "label": "NAD 1927 StatePlane Alaska 10 FIPS 5010", - "defaultExtent": "{\"xmin\": -114663408.23615177, \"ymin\": -101098779.46385796, \"xmax\": 120663408.2359527, \"ymax\": 111083188.395923}" - }, - 26741: { - "label": "NAD 1927 StatePlane California I FIPS 0401", - "defaultExtent": "{\"xmin\": -119014161.19801664, \"ymin\": -96221724.5862003, \"xmax\": 123014161.19877665, \"ymax\": 81043351.34327818}" - }, - 26742: { - "label": "NAD 1927 StatePlane California II FIPS 0402", - "defaultExtent": "{\"xmin\": -119767229.9862941, \"ymin\": -95454987.43345004, \"xmax\": 123767229.98662727, \"ymax\": 74836199.19409256}" - }, - 26743: { - "label": "NAD 1927 StatePlane California III FIPS 0403", - "defaultExtent": "{\"xmin\": -120416233.91698655, \"ymin\": -94903241.79638703, \"xmax\": 124416233.9168697, \"ymax\": 69786627.00141874}" - }, - 26744: { - "label": "NAD 1927 StatePlane California IV FIPS 0404", - "defaultExtent": "{\"xmin\": -121022113.66363545, \"ymin\": -94369182.06726794, \"xmax\": 125022113.66437428, \"ymax\": 65412221.83117404}" - }, - 26745: { - "label": "NAD 1927 StatePlane California V FIPS 0405", - "defaultExtent": "{\"xmin\": -122165055.95208943, \"ymin\": -93515630.47231127, \"xmax\": 126165055.95170596, \"ymax\": 57739709.21687016}" - }, - 26746: { - "label": "NAD 1927 StatePlane California VI FIPS 0406", - "defaultExtent": "{\"xmin\": -123165216.38555336, \"ymin\": -92893947.46844144, \"xmax\": 127165216.3853469, \"ymax\": 51664024.803820245}" - }, - 26748: { - "label": "NAD 1927 StatePlane Arizona East FIPS 0201", - "defaultExtent": "{\"xmin\": -17946707.108108267, \"ymin\": -42782130.69343315, \"xmax\": 18946707.10810827, \"ymax\": 20272679.32737539}" - }, - 26749: { - "label": "NAD 1927 StatePlane Arizona Central FIPS 0202", - "defaultExtent": "{\"xmin\": -17946707.10810826, \"ymin\": -42782130.69343315, \"xmax\": 18946707.10810827, \"ymax\": 20272679.32737539}" - }, - 26750: { - "label": "NAD 1927 StatePlane Arizona West FIPS 0203", - "defaultExtent": "{\"xmin\": -17947322.059840377, \"ymin\": -42783556.907077625, \"xmax\": 18947322.05984038, \"ymax\": 20273355.150935326}" - }, - 26751: { - "label": "NAD 1927 StatePlane Arkansas North FIPS 0301", - "defaultExtent": "{\"xmin\": -121634972.25662488, \"ymin\": -93902088.86465213, \"xmax\": 125634972.25648788, \"ymax\": 61193553.546192385}" - }, - 26752: { - "label": "NAD 1927 StatePlane Arkansas South FIPS 0302", - "defaultExtent": "{\"xmin\": -122653441.6415299, \"ymin\": -93141717.57390502, \"xmax\": 126653441.64111774, \"ymax\": 54750441.63299126}" - }, - 26753: { - "label": "NAD 1927 StatePlane Colorado North FIPS 0501", - "defaultExtent": "{\"xmin\": -119259139.09913105, \"ymin\": -96173069.96672912, \"xmax\": 123259139.10037813, \"ymax\": 78820118.03444816}" - }, - 26754: { - "label": "NAD 1927 StatePlane Colorado Central FIPS 0502", - "defaultExtent": "{\"xmin\": -119761671.81461431, \"ymin\": -95518618.25712237, \"xmax\": 123761671.81300737, \"ymax\": 74842396.23313609}" - }, - 26755: { - "label": "NAD 1927 StatePlane Colorado South FIPS 0503", - "defaultExtent": "{\"xmin\": -120375292.65779, \"ymin\": -94973060.47377765, \"xmax\": 124375292.65924278, \"ymax\": 70074935.25809057}" - }, - 26756: { - "label": "NAD 1927 StatePlane Connecticut FIPS 0600", - "defaultExtent": "{\"xmin\": -120149658.52822366, \"ymin\": -96835271.06915647, \"xmax\": 121349658.52723564, \"ymax\": 83100298.72301814}" - }, - 26757: { - "label": "NAD 1927 StatePlane Delaware FIPS 0700", - "defaultExtent": "{\"xmin\": -17948459.720544785, \"ymin\": -45333756.08758747, \"xmax\": 18948459.72054478, \"ymax\": 17727044.73925364}" - }, - 26758: { - "label": "NAD 1927 StatePlane Florida East FIPS 0901", - "defaultExtent": "{\"xmin\": -17947466.754365575, \"ymin\": -40360365.10894577, \"xmax\": 18947466.75436558, \"ymax\": 22697041.546056464}" - }, - 26759: { - "label": "NAD 1927 StatePlane Florida West FIPS 0902", - "defaultExtent": "{\"xmin\": -17947466.754365575, \"ymin\": -40360365.10894577, \"xmax\": 18947466.75436558, \"ymax\": 22697041.546056464}" - }, - 26760: { - "label": "NAD 1927 StatePlane Florida North FIPS 0903", - "defaultExtent": "{\"xmin\": -125902751.43338963, \"ymin\": -91447827.24905713, \"xmax\": 129902751.43478346, \"ymax\": 37469855.48626335}" - }, - 26766: { - "label": "NAD 1927 StatePlane Georgia East FIPS 1001", - "defaultExtent": "{\"xmin\": -17946707.108108267, \"ymin\": -42418463.6277746, \"xmax\": 18946707.10810827, \"ymax\": 20636346.393033933}" - }, - 26767: { - "label": "NAD 1927 StatePlane Georgia West FIPS 1002", - "defaultExtent": "{\"xmin\": -17946707.10810826, \"ymin\": -42418463.6277746, \"xmax\": 18946707.108108263, \"ymax\": 20636346.393033933}" - }, - 26768: { - "label": "NAD 1927 StatePlane Idaho East FIPS 1101", - "defaultExtent": "{\"xmin\": -17947580.986885473, \"ymin\": -46667180.48973383, \"xmax\": 18947580.986885477, \"ymax\": 16390616.636575714}" - }, - 26769: { - "label": "NAD 1927 StatePlane Idaho Central FIPS 1102", - "defaultExtent": "{\"xmin\": -17947580.986885473, \"ymin\": -46667180.48973383, \"xmax\": 18947580.986885484, \"ymax\": 16390616.636575714}" - }, - 26770: { - "label": "NAD 1927 StatePlane Idaho West FIPS 1103", - "defaultExtent": "{\"xmin\": -17947322.059840377, \"ymin\": -46666525.4772877, \"xmax\": 18947322.05984038, \"ymax\": 16390386.580725245}" - }, - 26771: { - "label": "NAD 1927 StatePlane Illinois East FIPS 1201", - "defaultExtent": "{\"xmin\": -17948090.749505512, \"ymin\": -44847379.65879033, \"xmax\": 18948090.749505516, \"ymax\": 18212159.945728146}" - }, - 26772: { - "label": "NAD 1927 StatePlane Illinois West FIPS 1202", - "defaultExtent": "{\"xmin\": -17947466.754365586, \"ymin\": -44845862.72420204, \"xmax\": 18947466.75436558, \"ymax\": 18211543.930800196}" - }, - 26773: { - "label": "NAD 1927 StatePlane Indiana East FIPS 1301", - "defaultExtent": "{\"xmin\": -17947937.01157248, \"ymin\": -45150408.98400517, \"xmax\": 18947937.011572488, \"ymax\": 17908605.11121221}" - }, - 26774: { - "label": "NAD 1927 StatePlane Indiana West FIPS 1302", - "defaultExtent": "{\"xmin\": -17947937.011572484, \"ymin\": -45150408.98400516, \"xmax\": 18947937.011572488, \"ymax\": 17908605.11121221}" - }, - 26775: { - "label": "NAD 1927 StatePlane Iowa North FIPS 1401", - "defaultExtent": "{\"xmin\": -118333502.57651529, \"ymin\": -97171041.55161494, \"xmax\": 122333502.5729386, \"ymax\": 86918841.35498421}" - }, - 26776: { - "label": "NAD 1927 StatePlane Iowa South FIPS 1402", - "defaultExtent": "{\"xmin\": -118874521.30769835, \"ymin\": -96500424.41611646, \"xmax\": 122874521.30967711, \"ymax\": 82173084.15305658}" - }, - 26777: { - "label": "NAD 1927 StatePlane Kansas North FIPS 1501", - "defaultExtent": "{\"xmin\": -119695269.53713773, \"ymin\": -95716190.91308247, \"xmax\": 123695269.53698695, \"ymax\": 75260800.49601673}" - }, - 26778: { - "label": "NAD 1927 StatePlane Kansas South FIPS 1502", - "defaultExtent": "{\"xmin\": -120332045.72371072, \"ymin\": -94980524.54409848, \"xmax\": 124332045.72341768, \"ymax\": 70423114.00071497}" - }, - 26779: { - "label": "NAD 1927 StatePlane Kentucky North FIPS 1601", - "defaultExtent": "{\"xmin\": -120062703.7023781, \"ymin\": -95338651.40901324, \"xmax\": 124062703.70364052, \"ymax\": 72394428.2375196}" - }, - 26780: { - "label": "NAD 1927 StatePlane Kentucky South FIPS 1602", - "defaultExtent": "{\"xmin\": -120635254.74397653, \"ymin\": -94803018.5820804, \"xmax\": 124635254.74324231, \"ymax\": 68088524.02933425}" - }, - 26781: { - "label": "NAD 1927 StatePlane Louisiana North FIPS 1701", - "defaultExtent": "{\"xmin\": -124290086.85547726, \"ymin\": -92210456.82032353, \"xmax\": 128290086.84870632, \"ymax\": 45451239.36146749}" - }, - 26782: { - "label": "NAD 1927 StatePlane Louisiana South FIPS 1702", - "defaultExtent": "{\"xmin\": -126067146.03656963, \"ymin\": -91310592.24826083, \"xmax\": 130067146.03660229, \"ymax\": 36761647.58005939}" - }, - 26783: { - "label": "NAD 1927 StatePlane Maine East FIPS 1801", - "defaultExtent": "{\"xmin\": -17946707.108108267, \"ymin\": -47454546.16391042, \"xmax\": 18946707.10810827, \"ymax\": 15600263.856898125}" - }, - 26784: { - "label": "NAD 1927 StatePlane Maine West FIPS 1802", - "defaultExtent": "{\"xmin\": -17947937.01157248, \"ymin\": -47093228.29778956, \"xmax\": 18947937.011572488, \"ymax\": 15965785.797427805}" - }, - 26785: { - "label": "NAD 1927 StatePlane Maryland FIPS 1900", - "defaultExtent": "{\"xmin\": -121067321.70539671, \"ymin\": -95498209.53403324, \"xmax\": 122667321.70654403, \"ymax\": 73935826.21847837}" - }, - 26786: { - "label": "NAD 1927 StatePlane Massachusetts Mainland FIPS 2001", - "defaultExtent": "{\"xmin\": -119901002.95793372, \"ymin\": -96951526.29182304, \"xmax\": 121101002.95791638, \"ymax\": 85451839.98682223}" - }, - 26787: { - "label": "NAD 1927 StatePlane Massachusetts Island FIPS 2002", - "defaultExtent": "{\"xmin\": -120608398.44453123, \"ymin\": -96883949.27725329, \"xmax\": 121008398.44372128, \"ymax\": 82487822.17927846}" - }, - 26788: { - "label": "NAD 1927 StatePlane Michigan North FIPS 2111", - "defaultExtent": "{\"xmin\": -117212044.6531035, \"ymin\": -98623411.04421233, \"xmax\": 121212044.6534562, \"ymax\": 97379398.91109686}" - }, - 26789: { - "label": "NAD 1927 StatePlane Michigan Central FIPS 2112", - "defaultExtent": "{\"xmin\": -117596687.79972321, \"ymin\": -98002744.2857531, \"xmax\": 121596687.79976003, \"ymax\": 93824368.48230912}" - }, - 26790: { - "label": "NAD 1927 StatePlane Michigan South FIPS 2113", - "defaultExtent": "{\"xmin\": -118254892.67043082, \"ymin\": -97186176.67095052, \"xmax\": 122254892.67002904, \"ymax\": 87673231.30508684}" - }, - 26791: { - "label": "NAD 1927 StatePlane Minnesota North FIPS 2201", - "defaultExtent": "{\"xmin\": -116804828.01736961, \"ymin\": -99333428.72268657, \"xmax\": 120804828.01738884, \"ymax\": 101130127.59970385}" - }, - 26792: { - "label": "NAD 1927 StatePlane Minnesota Central FIPS 2202", - "defaultExtent": "{\"xmin\": -117200021.91529629, \"ymin\": -98706564.78947504, \"xmax\": 121200021.91397186, \"ymax\": 97447669.77359036}" - }, - 26793: { - "label": "NAD 1927 StatePlane Minnesota South FIPS 2203", - "defaultExtent": "{\"xmin\": -117731217.17018642, \"ymin\": -97856868.41956697, \"xmax\": 121731217.16896476, \"ymax\": 92532616.12174733}" - }, - 26794: { - "label": "NAD 1927 StatePlane Mississippi East FIPS 2301", - "defaultExtent": "{\"xmin\": -17947814.021226056, \"ymin\": -42299791.83906175, \"xmax\": 18947814.021226063, \"ymax\": 20758801.848714728}" - }, - 26795: { - "label": "NAD 1927 StatePlane Mississippi West FIPS 2302", - "defaultExtent": "{\"xmin\": -17947466.754365575, \"ymin\": -42602044.408118784, \"xmax\": 18947466.75436558, \"ymax\": 20455362.24688345}" - }, - 26796: { - "label": "NAD 1927 StatePlane Missouri East FIPS 2401", - "defaultExtent": "{\"xmin\": -17947322.05984038, \"ymin\": -44542161.03973149, \"xmax\": 18947322.05984038, \"ymax\": 18514751.018281452}" - }, - 26797: { - "label": "NAD 1927 StatePlane Missouri Central FIPS 2402", - "defaultExtent": "{\"xmin\": -17947322.059840377, \"ymin\": -44542161.039731495, \"xmax\": 18947322.05984038, \"ymax\": 18514751.018281452}" - }, - 26798: { - "label": "NAD 1927 StatePlane Missouri West FIPS 2403", - "defaultExtent": "{\"xmin\": -17947466.754365575, \"ymin\": -44663846.200506315, \"xmax\": 18947466.75436558, \"ymax\": 18393560.454495914}" - }, - 26799: { - "label": "NAD 1927 StatePlane California VII FIPS 0407", - "defaultExtent": "{\"xmin\": -120398448.3968101, \"ymin\": -89529745.57199034, \"xmax\": 128771833.55944854, \"ymax\": 58878103.48717785}" - }, - 26847: { - "label": "NAD 1983 StatePlane Maine East FIPS 1801 Feet", - "defaultExtent": "{\"xmin\": -17462073.578459747, \"ymin\": -47394823.46926745, \"xmax\": 19430573.578459747, \"ymax\": 15660619.474023243}" - }, - 26848: { - "label": "NAD 1983 StatePlane Maine West FIPS 1802 Feet", - "defaultExtent": "{\"xmin\": -15494803.456352757, \"ymin\": -47094249.613278046, \"xmax\": 21400303.456352763, \"ymax\": 15965397.446620531}" - }, - 26849: { - "label": "NAD 1983 StatePlane Minnesota North FIPS 2201 Feet", - "defaultExtent": "{\"xmin\": -116187274.9046407, \"ymin\": -99013052.44763246, \"xmax\": 121436608.23799261, \"ymax\": 101462505.94340906}" - }, - 26850: { - "label": "NAD 1983 StatePlane Minnesota Central FIPS 2202 Feet", - "defaultExtent": "{\"xmin\": -116582266.11510086, \"ymin\": -98385996.91809723, \"xmax\": 121831599.44710183, \"ymax\": 97779609.32074675}" - }, - 26851: { - "label": "NAD 1983 StatePlane Minnesota South FIPS 2203 Feet", - "defaultExtent": "{\"xmin\": -117113204.75599502, \"ymin\": -97536056.0769135, \"xmax\": 122362538.08811755, \"ymax\": 92864008.81783636}" - }, - 26852: { - "label": "NAD 1983 StatePlane Nebraska FIPS 2600 Feet", - "defaultExtent": "{\"xmin\": -119097311.2825896, \"ymin\": -96454538.8716071, \"xmax\": 122378144.61571121, \"ymax\": 83343349.1178165}" - }, - 26853: { - "label": "NAD 1983 StatePlane West Virginia North FIPS 4701 Feet", - "defaultExtent": "{\"xmin\": -119563500.68514691, \"ymin\": -95817525.22647409, \"xmax\": 123500500.68522543, \"ymax\": 76689648.9887748}" - }, - 26854: { - "label": "NAD 1983 StatePlane West Virginia South FIPS 4702 Feet", - "defaultExtent": "{\"xmin\": -120234837.02250506, \"ymin\": -95133376.235018, \"xmax\": 124171837.0216932, \"ymax\": 71411120.61347568}" - }, - 26855: { - "label": "NAD 1983 HARN StatePlane Maine East FIPS 1801 Feet", - "defaultExtent": "{\"xmin\": -17462073.578459747, \"ymin\": -47394823.46926745, \"xmax\": 19430573.578459747, \"ymax\": 15660619.474023243}" - }, - 26856: { - "label": "NAD 1983 HARN StatePlane Maine West FIPS 1802 Feet", - "defaultExtent": "{\"xmin\": -15494803.456352757, \"ymin\": -47094249.613278046, \"xmax\": 21400303.456352763, \"ymax\": 15965397.446620531}" - }, - 26857: { - "label": "NAD 1983 HARN StatePlane Minnesota North FIPS 2201 Feet", - "defaultExtent": "{\"xmin\": -116187274.9046407, \"ymin\": -99013052.44763246, \"xmax\": 121436608.23799261, \"ymax\": 101462505.94340906}" - }, - 26858: { - "label": "NAD 1983 HARN StatePlane Minnesota Central FIPS 2202 Feet", - "defaultExtent": "{\"xmin\": -116582266.11510086, \"ymin\": -98385996.91809723, \"xmax\": 121831599.44710183, \"ymax\": 97779609.32074675}" - }, - 26859: { - "label": "NAD 1983 HARN StatePlane Minnesota South FIPS 2203 Feet", - "defaultExtent": "{\"xmin\": -117113204.75599502, \"ymin\": -97536056.0769135, \"xmax\": 122362538.08811755, \"ymax\": 92864008.81783636}" - }, - 26860: { - "label": "NAD 1983 HARN StatePlane Nebraska FIPS 2600 Feet", - "defaultExtent": "{\"xmin\": -119097311.2825896, \"ymin\": -96454538.8716071, \"xmax\": 122378144.61571121, \"ymax\": 83343349.1178165}" - }, - 26861: { - "label": "NAD 1983 HARN StatePlane West Virginia North FIPS 4701 Feet", - "defaultExtent": "{\"xmin\": -119563500.68514691, \"ymin\": -95817525.22647409, \"xmax\": 123500500.68522543, \"ymax\": 76689648.9887748}" - }, - 26862: { - "label": "NAD 1983 HARN StatePlane West Virginia South FIPS 4702 Feet", - "defaultExtent": "{\"xmin\": -120234837.02250506, \"ymin\": -95133376.235018, \"xmax\": 124171837.0216932, \"ymax\": 71411120.61347568}" - }, - 26863: { - "label": "NAD 1983 NSRS2007 StatePlane Maine East FIPS 1801 Ft US", - "defaultExtent": "{\"xmin\": -17462073.578459747, \"ymin\": -47394823.46926745, \"xmax\": 19430573.578459747, \"ymax\": 15660619.474023243}" - }, - 26864: { - "label": "NAD 1983 NSRS2007 StatePlane Maine West FIPS 1802 Ft US", - "defaultExtent": "{\"xmin\": -15494803.456352757, \"ymin\": -47094249.613278046, \"xmax\": 21400303.456352763, \"ymax\": 15965397.446620531}" - }, - 26865: { - "label": "NAD 1983 NSRS2007 StatePlane Minnesota North FIPS 2201 Ft US", - "defaultExtent": "{\"xmin\": -116187274.9046407, \"ymin\": -99013052.44763246, \"xmax\": 121436608.23799261, \"ymax\": 101462505.94340906}" - }, - 26866: { - "label": "NAD 1983 NSRS2007 StatePlane Minnesota Central FIPS 2202 Ft US", - "defaultExtent": "{\"xmin\": -116582266.11510086, \"ymin\": -98385996.91809723, \"xmax\": 121831599.44710183, \"ymax\": 97779609.32074675}" - }, - 26867: { - "label": "NAD 1983 NSRS2007 StatePlane Minnesota South FIPS 2203 Ft US", - "defaultExtent": "{\"xmin\": -117113204.75599502, \"ymin\": -97536056.0769135, \"xmax\": 122362538.08811755, \"ymax\": 92864008.81783636}" - }, - 26868: { - "label": "NAD 1983 NSRS2007 StatePlane Nebraska FIPS 2600 Ft US", - "defaultExtent": "{\"xmin\": -119097311.2825896, \"ymin\": -96454538.8716071, \"xmax\": 122378144.61571121, \"ymax\": 83343349.1178165}" - }, - 26869: { - "label": "NAD 1983 NSRS2007 StatePlane West Virginia North FIPS 4701 FtUS", - "defaultExtent": "{\"xmin\": -119563500.68514691, \"ymin\": -95817525.22647409, \"xmax\": 123500500.68522543, \"ymax\": 76689648.9887748}" - }, - 26870: { - "label": "NAD 1983 NSRS2007 StatePlane West Virginia South FIPS 4702 FtUS", - "defaultExtent": "{\"xmin\": -120234837.02250506, \"ymin\": -95133376.235018, \"xmax\": 124171837.0216932, \"ymax\": 71411120.61347568}" - }, - 26891: { - "label": "NAD 1983 CSRS MTM 11", - "defaultExtent": "{\"xmin\": -5317650.671615875, \"ymin\": -9609668.723894954, \"xmax\": 5927250.671615874, \"ymax\": 9609668.72389495}" - }, - 26892: { - "label": "NAD 1983 CSRS MTM 12", - "defaultExtent": "{\"xmin\": -5317650.671615874, \"ymin\": -9609668.723894954, \"xmax\": 5927250.671615874, \"ymax\": 9609668.72389495}" - }, - 26893: { - "label": "NAD 1983 CSRS MTM 13", - "defaultExtent": "{\"xmin\": -5317650.671615872, \"ymin\": -9609668.723894954, \"xmax\": 5927250.671615875, \"ymax\": 9609668.72389495}" - }, - 26894: { - "label": "NAD 1983 CSRS MTM 14", - "defaultExtent": "{\"xmin\": -5317650.671615872, \"ymin\": -9609668.723894956, \"xmax\": 5927250.671615874, \"ymax\": 9609668.72389495}" - }, - 26895: { - "label": "NAD 1983 CSRS MTM 15", - "defaultExtent": "{\"xmin\": -5317650.671615874, \"ymin\": -9609668.723894954, \"xmax\": 5927250.671615874, \"ymax\": 9609668.72389495}" - }, - 26896: { - "label": "NAD 1983 CSRS MTM 16", - "defaultExtent": "{\"xmin\": -5317650.671615872, \"ymin\": -9609668.723894954, \"xmax\": 5927250.671615874, \"ymax\": 9609668.72389495}" - }, - 26897: { - "label": "NAD 1983 CSRS MTM 17", - "defaultExtent": "{\"xmin\": -5317650.671615874, \"ymin\": -9609668.723894954, \"xmax\": 5927250.671615874, \"ymax\": 9609668.72389495}" - }, - 26898: { - "label": "NAD 1983 CSRS MTM 1", - "defaultExtent": "{\"xmin\": -5317650.671615874, \"ymin\": -9609668.723894954, \"xmax\": 5927250.671615874, \"ymax\": 9609668.72389495}" - }, - 26899: { - "label": "NAD 1983 CSRS MTM 2", - "defaultExtent": "{\"xmin\": -5317650.671615874, \"ymin\": -9609668.723894954, \"xmax\": 5927250.671615874, \"ymax\": 9609668.72389495}" - }, - 26901: { - "label": "NAD 1983 UTM Zone 1N", - "defaultExtent": "{\"xmin\": -5120763.767723977, \"ymin\": -9606785.534938088, \"xmax\": 6120763.767724008, \"ymax\": 9606785.534938097}" - }, - 26902: { - "label": "NAD 1983 UTM Zone 2N", - "defaultExtent": "{\"xmin\": -5120763.767723977, \"ymin\": -9606785.534938088, \"xmax\": 6120763.767724008, \"ymax\": 9606785.534938097}" - }, - 26903: { - "label": "NAD 1983 UTM Zone 3N", - "defaultExtent": "{\"xmin\": -5120763.767723984, \"ymin\": -9606785.534938088, \"xmax\": 6120763.767724008, \"ymax\": 9606785.534938097}" - }, - 26904: { - "label": "NAD 1983 UTM Zone 4N", - "defaultExtent": "{\"xmin\": -5120763.767723977, \"ymin\": -9606785.534938088, \"xmax\": 6120763.767724011, \"ymax\": 9606785.534938097}" - }, - 26905: { - "label": "NAD 1983 UTM Zone 5N", - "defaultExtent": "{\"xmin\": -5120763.767723977, \"ymin\": -9606785.534938088, \"xmax\": 6120763.767724008, \"ymax\": 9606785.534938097}" - }, - 26906: { - "label": "NAD 1983 UTM Zone 6N", - "defaultExtent": "{\"xmin\": -5120763.767723984, \"ymin\": -9606785.534938088, \"xmax\": 6120763.767724008, \"ymax\": 9606785.534938097}" - }, - 26907: { - "label": "NAD 1983 UTM Zone 7N", - "defaultExtent": "{\"xmin\": -5120763.767723977, \"ymin\": -9606785.534938088, \"xmax\": 6120763.767724011, \"ymax\": 9606785.534938097}" - }, - 26908: { - "label": "NAD 1983 UTM Zone 8N", - "defaultExtent": "{\"xmin\": -5120761.968321789, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 26909: { - "label": "NAD 1983 UTM Zone 9N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 26910: { - "label": "NAD 1983 UTM Zone 10N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724002, \"ymax\": 9606785.534958888}" - }, - 26911: { - "label": "NAD 1983 UTM Zone 11N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 26912: { - "label": "NAD 1983 UTM Zone 12N", - "defaultExtent": "{\"xmin\": -5120763.767723998, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 26913: { - "label": "NAD 1983 UTM Zone 13N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 26914: { - "label": "NAD 1983 UTM Zone 14N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 26915: { - "label": "NAD 1983 UTM Zone 15N", - "defaultExtent": "{\"xmin\": -5120763.767723998, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 26916: { - "label": "NAD 1983 UTM Zone 16N", - "defaultExtent": "{\"xmin\": -5120763.767723998, \"ymin\": -9606785.534958893, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 26917: { - "label": "NAD 1983 UTM Zone 17N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 26918: { - "label": "NAD 1983 UTM Zone 18N", - "defaultExtent": "{\"xmin\": -5120763.767724002, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 26919: { - "label": "NAD 1983 UTM Zone 19N", - "defaultExtent": "{\"xmin\": -5120763.767724002, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 26920: { - "label": "NAD 1983 UTM Zone 20N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 26921: { - "label": "NAD 1983 UTM Zone 21N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 26922: { - "label": "NAD 1983 UTM Zone 22N", - "defaultExtent": "{\"xmin\": -5120763.767724002, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 26923: { - "label": "NAD 1983 UTM Zone 23N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 26929: { - "label": "NAD 1983 StatePlane Alabama East FIPS 0101", - "defaultExtent": "{\"xmin\": -5422788.052394249, \"ymin\": -12985652.072866369, \"xmax\": 5822788.052394249, \"ymax\": 6234838.650497956}" - }, - 26930: { - "label": "NAD 1983 StatePlane Alabama West FIPS 0102", - "defaultExtent": "{\"xmin\": -5022638.105381638, \"ymin\": -12929881.135173015, \"xmax\": 6222638.105381638, \"ymax\": 6290097.0212693475}" - }, - 26931: { - "label": "NAD 1983 StatePlane Alaska 1 FIPS 5001", - "defaultExtent": "{\"xmin\": -25224974.639177933, \"ymin\": -35282627.68932256, \"xmax\": 37636719.54767623, \"ymax\": 23274307.150670152}" - }, - 26932: { - "label": "NAD 1983 StatePlane Alaska 2 FIPS 5002", - "defaultExtent": "{\"xmin\": -5122450.67161585, \"ymin\": -15594986.160549043, \"xmax\": 6122450.671615882, \"ymax\": 3624351.287199251}" - }, - 26933: { - "label": "NAD 1983 StatePlane Alaska 3 FIPS 5003", - "defaultExtent": "{\"xmin\": -5122450.67161585, \"ymin\": -15594986.160549043, \"xmax\": 6122450.671615885, \"ymax\": 3624351.287199251}" - }, - 26934: { - "label": "NAD 1983 StatePlane Alaska 4 FIPS 5004", - "defaultExtent": "{\"xmin\": -5122450.67161585, \"ymin\": -15594986.160549043, \"xmax\": 6122450.671615885, \"ymax\": 3624351.287199251}" - }, - 26935: { - "label": "NAD 1983 StatePlane Alaska 5 FIPS 5005", - "defaultExtent": "{\"xmin\": -5122450.67161585, \"ymin\": -15594986.160549043, \"xmax\": 6122450.671615885, \"ymax\": 3624351.287199251}" - }, - 26936: { - "label": "NAD 1983 StatePlane Alaska 6 FIPS 5006", - "defaultExtent": "{\"xmin\": -5122450.671615858, \"ymin\": -15594986.160549043, \"xmax\": 6122450.671615882, \"ymax\": 3624351.287199251}" - }, - 26937: { - "label": "NAD 1983 StatePlane Alaska 7 FIPS 5007", - "defaultExtent": "{\"xmin\": -5122450.67161585, \"ymin\": -15594986.160549043, \"xmax\": 6122450.671615882, \"ymax\": 3624351.287199251}" - }, - 26938: { - "label": "NAD 1983 StatePlane Alaska 8 FIPS 5008", - "defaultExtent": "{\"xmin\": -5122450.67161585, \"ymin\": -15594986.160549043, \"xmax\": 6122450.671615882, \"ymax\": 3624351.287199251}" - }, - 26939: { - "label": "NAD 1983 StatePlane Alaska 9 FIPS 5009", - "defaultExtent": "{\"xmin\": -5122450.67161585, \"ymin\": -15594986.160549043, \"xmax\": 6122450.671615886, \"ymax\": 3624351.287199251}" - }, - 26940: { - "label": "NAD 1983 StatePlane Alaska 10 FIPS 5010", - "defaultExtent": "{\"xmin\": -34866236.36030873, \"ymin\": -30817495.97745897, \"xmax\": 36866236.36020292, \"ymax\": 33859948.69122673}" - }, - 26941: { - "label": "NAD 1983 StatePlane California I FIPS 0401", - "defaultExtent": "{\"xmin\": -34887054.27121294, \"ymin\": -28830499.630561125, \"xmax\": 38887054.271445766, \"ymax\": 25202733.856392305}" - }, - 26942: { - "label": "NAD 1983 StatePlane California II FIPS 0402", - "defaultExtent": "{\"xmin\": -35116508.911664024, \"ymin\": -28596719.981055927, \"xmax\": 39116508.911764205, \"ymax\": 23310630.66291148}" - }, - 26943: { - "label": "NAD 1983 StatePlane California III FIPS 0403", - "defaultExtent": "{\"xmin\": -35314262.749591045, \"ymin\": -28428487.57731289, \"xmax\": 39314262.749551564, \"ymax\": 21771398.527620755}" - }, - 26944: { - "label": "NAD 1983 StatePlane California IV FIPS 0404", - "defaultExtent": "{\"xmin\": -35498881.48266848, \"ymin\": -28265654.103608675, \"xmax\": 39498881.48289684, \"ymax\": 20437979.07279057}" - }, - 26945: { - "label": "NAD 1983 StatePlane California V FIPS 0405", - "defaultExtent": "{\"xmin\": -35847160.01764138, \"ymin\": -28005403.878855906, \"xmax\": 39847160.01752812, \"ymax\": 18099234.480987653}" - }, - 26946: { - "label": "NAD 1983 StatePlane California VI FIPS 0406", - "defaultExtent": "{\"xmin\": -36151940.068675034, \"ymin\": -27815848.278992966, \"xmax\": 40151940.06861196, \"ymax\": 16247248.704331301}" - }, - 26948: { - "label": "NAD 1983 StatePlane Arizona East FIPS 0201", - "defaultExtent": "{\"xmin\": -5409090.671615874, \"ymin\": -13040299.949871464, \"xmax\": 5835810.671615874, \"ymax\": 6179037.49791844}" - }, - 26949: { - "label": "NAD 1983 StatePlane Arizona Central FIPS 0202", - "defaultExtent": "{\"xmin\": -5409090.671615872, \"ymin\": -13040299.949871464, \"xmax\": 5835810.671615874, \"ymax\": 6179037.49791844}" - }, - 26950: { - "label": "NAD 1983 StatePlane Arizona West FIPS 0203", - "defaultExtent": "{\"xmin\": -5409278.105381638, \"ymin\": -13040734.670008475, \"xmax\": 5835998.105381638, \"ymax\": 6179243.48643389}" - }, - 26951: { - "label": "NAD 1983 StatePlane Arkansas North FIPS 0301", - "defaultExtent": "{\"xmin\": -37285630.80991245, \"ymin\": -28623235.611847952, \"xmax\": 38085630.80986683, \"ymax\": 18652037.545588575}" - }, - 26952: { - "label": "NAD 1983 StatePlane Arkansas South FIPS 0302", - "defaultExtent": "{\"xmin\": -37595985.155181974, \"ymin\": -27991400.9264211, \"xmax\": 38395985.15505119, \"ymax\": 17088046.267518982}" - }, - 26953: { - "label": "NAD 1983 StatePlane Colorado North FIPS 0501", - "defaultExtent": "{\"xmin\": -36047295.1761787, \"ymin\": -29010844.772414874, \"xmax\": 37876098.83435248, \"ymax\": 24329837.178702205}" - }, - 26954: { - "label": "NAD 1983 StatePlane Colorado Central FIPS 0502", - "defaultExtent": "{\"xmin\": -36200413.80326969, \"ymin\": -28811315.283514805, \"xmax\": 38029217.46057424, \"ymax\": 23117321.353997074}" - }, - 26955: { - "label": "NAD 1983 StatePlane Colorado South FIPS 0503", - "defaultExtent": "{\"xmin\": -36387386.019578025, \"ymin\": -28644971.833411947, \"xmax\": 38216189.6778173, \"ymax\": 21664082.8771381}" - }, - 26956: { - "label": "NAD 1983 StatePlane Connecticut FIPS 0600", - "defaultExtent": "{\"xmin\": -36501665.38080174, \"ymin\": -29365141.16645893, \"xmax\": 37111266.59970077, \"ymax\": 25482156.151964903}" - }, - 26957: { - "label": "NAD 1983 StatePlane Delaware FIPS 0700", - "defaultExtent": "{\"xmin\": -5422984.8578483015, \"ymin\": -13818058.715278085, \"xmax\": 5822984.857848301, \"ymax\": 5403104.752171321}" - }, - 26958: { - "label": "NAD 1983 StatePlane Florida East FIPS 0901", - "defaultExtent": "{\"xmin\": -5422682.2074441705, \"ymin\": -12302114.955780467, \"xmax\": 5822682.2074441705, \"ymax\": 6918013.955638945}" - }, - 26959: { - "label": "NAD 1983 StatePlane Florida West FIPS 0902", - "defaultExtent": "{\"xmin\": -5422682.207444169, \"ymin\": -12302114.955780467, \"xmax\": 5822682.2074441705, \"ymax\": 6918013.955638945}" - }, - 26960: { - "label": "NAD 1983 StatePlane Florida North FIPS 0903", - "defaultExtent": "{\"xmin\": -38386184.53222137, \"ymin\": -27874919.325736687, \"xmax\": 39586184.5326483, \"ymax\": 11420627.34512336}" - }, - 26961: { - "label": "NAD 1983 StatePlane Hawaii 1 FIPS 5101", - "defaultExtent": "{\"xmin\": -5122825.539147385, \"ymin\": -11693459.598062156, \"xmax\": 6122825.539147409, \"ymax\": 7527159.266991055}" - }, - 26962: { - "label": "NAD 1983 StatePlane Hawaii 2 FIPS 5102", - "defaultExtent": "{\"xmin\": -5122825.539199754, \"ymin\": -11859502.83699039, \"xmax\": 6122825.539095043, \"ymax\": 7361116.028067361}" - }, - 26963: { - "label": "NAD 1983 StatePlane Hawaii 3 FIPS 5103", - "defaultExtent": "{\"xmin\": -5122956.74278342, \"ymin\": -11952040.153067613, \"xmax\": 6122956.742783444, \"ymax\": 7269027.208042317}" - }, - 26964: { - "label": "NAD 1983 StatePlane Hawaii 4 FIPS 5104", - "defaultExtent": "{\"xmin\": -5122956.742783412, \"ymin\": -12025855.146337828, \"xmax\": 6122956.742783444, \"ymax\": 7195212.2147721015}" - }, - 26965: { - "label": "NAD 1983 StatePlane Hawaii 5 FIPS 5105", - "defaultExtent": "{\"xmin\": -5123012.972965518, \"ymin\": -12007520.920163663, \"xmax\": 6123012.972860808, \"ymax\": 7213738.653546542}" - }, - 26966: { - "label": "NAD 1983 StatePlane Georgia East FIPS 1001", - "defaultExtent": "{\"xmin\": -5422450.671615874, \"ymin\": -12929450.11040019, \"xmax\": 5822450.671615874, \"ymax\": 6289887.337389712}" - }, - 26967: { - "label": "NAD 1983 StatePlane Georgia West FIPS 1002", - "defaultExtent": "{\"xmin\": -4922450.671615872, \"ymin\": -12929450.11040019, \"xmax\": 6322450.6716158725, \"ymax\": 6289887.337389712}" - }, - 26968: { - "label": "NAD 1983 StatePlane Idaho East FIPS 1101", - "defaultExtent": "{\"xmin\": -5422717.024861958, \"ymin\": -14224494.619744752, \"xmax\": 5822717.024861958, \"ymax\": 4995753.308761801}" - }, - 26969: { - "label": "NAD 1983 StatePlane Idaho Central FIPS 1102", - "defaultExtent": "{\"xmin\": -5122717.024861958, \"ymin\": -14224494.619744752, \"xmax\": 6122717.024861961, \"ymax\": 4995753.308761801}" - }, - 26970: { - "label": "NAD 1983 StatePlane Idaho West FIPS 1103", - "defaultExtent": "{\"xmin\": -4822638.105381638, \"ymin\": -14224294.967206975, \"xmax\": 6422638.105381638, \"ymax\": 4995683.189235387}" - }, - 26971: { - "label": "NAD 1983 StatePlane Illinois East FIPS 1201", - "defaultExtent": "{\"xmin\": -5322872.397588842, \"ymin\": -13669807.500473078, \"xmax\": 5922872.397588842, \"ymax\": 5550971.541784854}" - }, - 26972: { - "label": "NAD 1983 StatePlane Illinois West FIPS 1202", - "defaultExtent": "{\"xmin\": -4922682.207444172, \"ymin\": -13669345.127777718, \"xmax\": 6322682.2074441705, \"ymax\": 5550783.783641693}" - }, - 26973: { - "label": "NAD 1983 StatePlane Indiana East FIPS 1301", - "defaultExtent": "{\"xmin\": -5522825.539147399, \"ymin\": -13512173.175005069, \"xmax\": 5722825.539147401, \"ymax\": 5708445.690089753}" - }, - 26974: { - "label": "NAD 1983 StatePlane Indiana West FIPS 1302", - "defaultExtent": "{\"xmin\": -4722825.539147401, \"ymin\": -13512173.175005067, \"xmax\": 6522825.539147401, \"ymax\": 5708445.690089753}" - }, - 26975: { - "label": "NAD 1983 StatePlane Iowa North FIPS 1401", - "defaultExtent": "{\"xmin\": -35179672.413309455, \"ymin\": -28619932.387049854, \"xmax\": 38179672.41221074, \"ymax\": 27493755.251850624}" - }, - 26976: { - "label": "NAD 1983 StatePlane Iowa South FIPS 1402", - "defaultExtent": "{\"xmin\": -36344508.92670218, \"ymin\": -29415464.41348134, \"xmax\": 37344508.92730374, \"ymax\": 25047110.383624904}" - }, - 26977: { - "label": "NAD 1983 StatePlane Kansas North FIPS 1501", - "defaultExtent": "{\"xmin\": -36694583.27893349, \"ymin\": -29176343.808520153, \"xmax\": 37494583.27889171, \"ymax\": 22940063.423304893}" - }, - 26978: { - "label": "NAD 1983 StatePlane Kansas South FIPS 1502", - "defaultExtent": "{\"xmin\": -36888610.08409184, \"ymin\": -28552051.03735451, \"xmax\": 37688610.084001794, \"ymax\": 21865414.924582668}" - }, - 26980: { - "label": "NAD 1983 StatePlane Kentucky South FIPS 1602", - "defaultExtent": "{\"xmin\": -36881000.62027418, \"ymin\": -28397921.164930366, \"xmax\": 37881000.620047584, \"ymax\": 21253778.418876573}" - }, - 26981: { - "label": "NAD 1983 StatePlane Louisiana North FIPS 1701", - "defaultExtent": "{\"xmin\": -37494730.88922037, \"ymin\": -28088971.837408308, \"xmax\": 39494730.88715185, \"ymax\": 13871961.36705782}" - }, - 26982: { - "label": "NAD 1983 StatePlane Louisiana South FIPS 1702", - "defaultExtent": "{\"xmin\": -38036283.63849772, \"ymin\": -27814605.530320723, \"xmax\": 40036283.638507746, \"ymax\": 11223230.411243448}" - }, - 26983: { - "label": "NAD 1983 StatePlane Maine East FIPS 1801", - "defaultExtent": "{\"xmin\": -5322450.671615874, \"ymin\": -14445971.085374892, \"xmax\": 5922450.671615874, \"ymax\": 4773366.36241501}" - }, - 26984: { - "label": "NAD 1983 StatePlane Maine West FIPS 1802", - "defaultExtent": "{\"xmin\": -4722825.539147399, \"ymin\": -14354355.990839133, \"xmax\": 6522825.539147401, \"ymax\": 4866262.874255687}" - }, - 26985: { - "label": "NAD 1983 StatePlane Maryland FIPS 1900", - "defaultExtent": "{\"xmin\": -36747007.26427332, \"ymin\": -29091384.527313504, \"xmax\": 37547007.26462395, \"ymax\": 22554678.123978678}" - }, - 26986: { - "label": "NAD 1983 StatePlane Massachusetts Mainland FIPS 2001", - "defaultExtent": "{\"xmin\": -36530705.74194933, \"ymin\": -28803004.001248993, \"xmax\": 36930705.741942905, \"ymax\": 26796569.38877064}" - }, - 26987: { - "label": "NAD 1983 StatePlane Massachusetts Island FIPS 2002", - "defaultExtent": "{\"xmin\": -36324363.173723884, \"ymin\": -29532372.723926485, \"xmax\": 37324363.17347703, \"ymax\": 25143058.28571613}" - }, - 26988: { - "label": "NAD 1983 StatePlane Michigan North FIPS 2111", - "defaultExtent": "{\"xmin\": -28338008.16261086, \"ymin\": -30062764.319301587, \"xmax\": 44338008.16271662, \"ymax\": 29682471.10421796}" - }, - 26989: { - "label": "NAD 1983 StatePlane Michigan Central FIPS 2112", - "defaultExtent": "{\"xmin\": -30455190.630660422, \"ymin\": -29873530.398834094, \"xmax\": 42455190.63111069, \"ymax\": 28598773.969079223}" - }, - 26990: { - "label": "NAD 1983 StatePlane Michigan South FIPS 2113", - "defaultExtent": "{\"xmin\": -32655721.616859354, \"ymin\": -29624554.326154392, \"xmax\": 40655721.616422996, \"ymax\": 26723713.97971105}" - }, - 26991: { - "label": "NAD 1983 StatePlane Minnesota North FIPS 2201", - "defaultExtent": "{\"xmin\": -35413952.21883893, \"ymin\": -30179238.744515866, \"xmax\": 37013952.21884459, \"ymax\": 30925833.663218413}" - }, - 26992: { - "label": "NAD 1983 StatePlane Minnesota Central FIPS 2202", - "defaultExtent": "{\"xmin\": -35534345.78057431, \"ymin\": -29988111.83685971, \"xmax\": 37134345.780168205, \"ymax\": 29803284.527532667}" - }, - 26993: { - "label": "NAD 1983 StatePlane Minnesota South FIPS 2203", - "defaultExtent": "{\"xmin\": -35696176.20197969, \"ymin\": -29729049.350341942, \"xmax\": 37296176.20161064, \"ymax\": 28305006.49768952}" - }, - 26994: { - "label": "NAD 1983 StatePlane Mississippi East FIPS 2301", - "defaultExtent": "{\"xmin\": -5322731.822264518, \"ymin\": -12874675.296950985, \"xmax\": 5922731.8222645195, \"ymax\": 6345623.2138176095}" - }, - 26995: { - "label": "NAD 1983 StatePlane Mississippi West FIPS 2302", - "defaultExtent": "{\"xmin\": -4922731.8222645195, \"ymin\": -12874675.296950981, \"xmax\": 6322731.8222645195, \"ymax\": 6345623.2138176095}" - }, - 26996: { - "label": "NAD 1983 StatePlane Missouri East FIPS 2401", - "defaultExtent": "{\"xmin\": -5372638.10538164, \"ymin\": -13576774.369054265, \"xmax\": 5872638.105381638, \"ymax\": 5643203.787388095}" - }, - 26997: { - "label": "NAD 1983 StatePlane Missouri Central FIPS 2402", - "defaultExtent": "{\"xmin\": -5122638.105381638, \"ymin\": -13576774.369054267, \"xmax\": 6122638.105381639, \"ymax\": 5643203.787388095}" - }, - 26998: { - "label": "NAD 1983 StatePlane Missouri West FIPS 2403", - "defaultExtent": "{\"xmin\": -4772682.2074441705, \"ymin\": -13613865.018881941, \"xmax\": 6472682.2074441705, \"ymax\": 5606263.89253747}" - }, - 27037: { - "label": "Nahrwan 1967 UTM Zone 37N", - "defaultExtent": "{\"xmin\": -5120944.444949269, \"ymin\": -9606659.189062225, \"xmax\": 6120944.444949269, \"ymax\": 9606659.189062221}" - }, - 27038: { - "label": "Nahrwan 1967 UTM Zone 38N", - "defaultExtent": "{\"xmin\": -5120944.444949269, \"ymin\": -9606659.189062225, \"xmax\": 6120944.444949269, \"ymax\": 9606659.189062221}" - }, - 27039: { - "label": "Nahrwan 1967 UTM Zone 39N", - "defaultExtent": "{\"xmin\": -5120944.444949269, \"ymin\": -9606659.189062225, \"xmax\": 6120944.444949271, \"ymax\": 9606659.189062221}" - }, - 27040: { - "label": "Nahrwan 1967 UTM Zone 40N", - "defaultExtent": "{\"xmin\": -5120944.444949269, \"ymin\": -9606659.189062225, \"xmax\": 6120944.444949269, \"ymax\": 9606659.189062221}" - }, - 27120: { - "label": "Naparima 1972 UTM Zone 20N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 27200: { - "label": "GD 1949 New Zealand Map Grid", - "defaultExtent": "{\"xmin\": 213149.55963138444, \"ymin\": 3626091.1378841167, \"xmax\": 4795922.296095829, \"ymax\": 8236548.883408386}" - }, - 27205: { - "label": "NZGD 1949 Mount Eden Circuit", - "defaultExtent": "{\"xmin\": -5322693.155203688, \"ymin\": -4827133.347574054, \"xmax\": 5922693.155168811, \"ymax\": 14392807.316240007}" - }, - 27206: { - "label": "NZGD 1949 Bay of Plenty Circuit", - "defaultExtent": "{\"xmin\": -5323255.480734314, \"ymin\": -4729864.237265218, \"xmax\": 5923255.480734334, \"ymax\": 14491998.612832341}" - }, - 27207: { - "label": "NZGD 1949 Poverty Bay Circuit", - "defaultExtent": "{\"xmin\": -5323255.480699398, \"ymin\": -4634018.238454568, \"xmax\": 5923255.480769247, \"ymax\": 14587844.611646019}" - }, - 27208: { - "label": "NZGD 1949 Hawkes Bay Circuit", - "defaultExtent": "{\"xmin\": -5323255.480699402, \"ymin\": -4520085.330210702, \"xmax\": 5923255.480769238, \"ymax\": 14701777.519889887}" - }, - 27209: { - "label": "NZGD 1949 Taranaki Circuit", - "defaultExtent": "{\"xmin\": -5323255.4807343185, \"ymin\": -4577282.761903421, \"xmax\": 5923255.480734327, \"ymax\": 14644580.088194137}" - }, - 27210: { - "label": "NZGD 1949 Tuhirangi Circuit", - "defaultExtent": "{\"xmin\": -5323255.480664502, \"ymin\": -4535458.386387415, \"xmax\": 5923255.480804151, \"ymax\": 14686404.4637162}" - }, - 27211: { - "label": "NZGD 1949 Wanganui Circuit", - "defaultExtent": "{\"xmin\": -5323255.480751771, \"ymin\": -4454460.62476714, \"xmax\": 5923255.480716875, \"ymax\": 14767402.225331932}" - }, - 27212: { - "label": "NZGD 1949 Wairarapa Circuit", - "defaultExtent": "{\"xmin\": -5323255.48068195, \"ymin\": -4378549.083736181, \"xmax\": 5923255.480786699, \"ymax\": 14843313.76636592}" - }, - 27213: { - "label": "NZGD 1949 Wellington Circuit", - "defaultExtent": "{\"xmin\": -5323255.480751774, \"ymin\": -4336814.422840218, \"xmax\": 5923255.480716875, \"ymax\": 14885048.427258855}" - }, - 27214: { - "label": "NZGD 1949 Collingwood Circuit", - "defaultExtent": "{\"xmin\": -5323255.48073431, \"ymin\": -4401956.261592133, \"xmax\": 5923255.480734334, \"ymax\": 14819906.588505425}" - }, - 27215: { - "label": "NZGD 1949 Nelson Circuit", - "defaultExtent": "{\"xmin\": -5323255.480664491, \"ymin\": -4339788.118527217, \"xmax\": 5923255.480804159, \"ymax\": 14882074.731576398}" - }, - 27216: { - "label": "NZGD 1949 Karamea Circuit", - "defaultExtent": "{\"xmin\": -5323255.480804139, \"ymin\": -4338081.440657268, \"xmax\": 5923255.48066451, \"ymax\": 14883781.409446346}" - }, - 27217: { - "label": "NZGD 1949 Buller Circuit", - "defaultExtent": "{\"xmin\": -5323255.480664506, \"ymin\": -4280227.16093481, \"xmax\": 5923255.480804143, \"ymax\": 14941635.689168803}" - }, - 27218: { - "label": "NZGD 1949 Grey Circuit", - "defaultExtent": "{\"xmin\": -5323255.480664502, \"ymin\": -4222145.418822426, \"xmax\": 5923255.480804151, \"ymax\": 14999717.431281189}" - }, - 27219: { - "label": "NZGD 1949 Amuri Circuit", - "defaultExtent": "{\"xmin\": -5323255.480716858, \"ymin\": -4182662.7666393854, \"xmax\": 5923255.480751779, \"ymax\": 15039200.083459686}" - }, - 27220: { - "label": "NZGD 1949 Marlborough Circuit", - "defaultExtent": "{\"xmin\": -5323255.480751783, \"ymin\": -4309806.987473777, \"xmax\": 5923255.480716875, \"ymax\": 14912055.862625295}" - }, - 27221: { - "label": "NZGD 1949 Hokitika Circuit", - "defaultExtent": "{\"xmin\": -5323255.480734314, \"ymin\": -4160754.784088606, \"xmax\": 5923255.480734334, \"ymax\": 15061108.066008955}" - }, - 27222: { - "label": "NZGD 1949 Okarito Circuit", - "defaultExtent": "{\"xmin\": -5323255.480786678, \"ymin\": -4135890.833027742, \"xmax\": 5923255.480681962, \"ymax\": 15085972.01707436}" - }, - 27223: { - "label": "NZGD 1949 Jacksons Bay Circuit", - "defaultExtent": "{\"xmin\": -5323255.48073431, \"ymin\": -4039486.272011509, \"xmax\": 5923255.480734327, \"ymax\": 15182376.57808605}" - }, - 27224: { - "label": "NZGD 1949 Mount Pleasant Circuit", - "defaultExtent": "{\"xmin\": -5323255.480786687, \"ymin\": -4082504.7908786433, \"xmax\": 5923255.48068197, \"ymax\": 15139358.059223458}" - }, - 27225: { - "label": "NZGD 1949 Gawler Circuit", - "defaultExtent": "{\"xmin\": -5323255.480769223, \"ymin\": -4064941.309198696, \"xmax\": 5923255.480699414, \"ymax\": 15156921.54090189}" - }, - 27226: { - "label": "NZGD 1949 Timaru Circuit", - "defaultExtent": "{\"xmin\": -5323255.480786695, \"ymin\": -3992325.232060508, \"xmax\": 5923255.480681954, \"ymax\": 15229537.618041592}" - }, - 27227: { - "label": "NZGD 1949 Lindis Peak Circuit", - "defaultExtent": "{\"xmin\": -5323255.480786687, \"ymin\": -3955314.687237148, \"xmax\": 5923255.480681962, \"ymax\": 15266548.162864953}" - }, - 27228: { - "label": "NZGD 1949 Mount Nicholas Circuit", - "defaultExtent": "{\"xmin\": -5323255.480804131, \"ymin\": -3911123.9393289126, \"xmax\": 5923255.48066451, \"ymax\": 15310738.910774702}" - }, - 27229: { - "label": "NZGD 1949 Mount York Circuit", - "defaultExtent": "{\"xmin\": -5323255.480699398, \"ymin\": -3863241.263819569, \"xmax\": 5923255.480769238, \"ymax\": 15358621.58628102}" - }, - 27230: { - "label": "NZGD 1949 Observation Point Circuit", - "defaultExtent": "{\"xmin\": -5323255.48068195, \"ymin\": -3835179.4535308955, \"xmax\": 5923255.480786699, \"ymax\": 15386683.396571206}" - }, - 27231: { - "label": "NZGD 1949 North Taieri Circuit", - "defaultExtent": "{\"xmin\": -5323030.550532537, \"ymin\": -3829961.2088529244, \"xmax\": 5923030.5504976455, \"ymax\": 15391132.766732141}" - }, - 27232: { - "label": "NZGD 1949 Bluff Circuit", - "defaultExtent": "{\"xmin\": -5323252.820734314, \"ymin\": -3748051.958841514, \"xmax\": 5923258.1407343345, \"ymax\": 15473810.891256046}" - }, - 27258: { - "label": "NZGD 1949 UTM Zone 58S", - "defaultExtent": "{\"xmin\": -5121006.178542012, \"ymin\": 392912.9475212451, \"xmax\": 6121006.17854204, \"ymax\": 19607087.052478764}" - }, - 27259: { - "label": "NZGD 1949 UTM Zone 59S", - "defaultExtent": "{\"xmin\": -5121006.178542012, \"ymin\": 392912.9475212451, \"xmax\": 6121006.17854204, \"ymax\": 19607087.052478764}" - }, - 27260: { - "label": "NZGD 1949 UTM Zone 60S", - "defaultExtent": "{\"xmin\": -5121006.178542016, \"ymin\": 392912.9475212451, \"xmax\": 6121006.17854204, \"ymax\": 19607087.052478764}" - }, - 27291: { - "label": "New Zealand North Island", - "defaultExtent": "{\"xmin\": -5849677.6359740365, \"ymin\": -5387799.437729462, \"xmax\": 6449677.635974067, \"ymax\": 15633521.840664426}" - }, - 27292: { - "label": "New Zealand South Island", - "defaultExtent": "{\"xmin\": -5649677.635974037, \"ymin\": -4680476.860916989, \"xmax\": 6649677.635974067, \"ymax\": 16340844.417476902}" - }, - 27391: { - "label": "NGO 1948 Oslo Norway Zone 1", - "defaultExtent": "{\"xmin\": -5622429.344341379, \"ymin\": -16040419.987911409, \"xmax\": 5622429.344341379, \"ymax\": 3179004.1485127923}" - }, - 27392: { - "label": "NGO 1948 Oslo Norway Zone 2", - "defaultExtent": "{\"xmin\": -5622429.344341379, \"ymin\": -16040419.987911409, \"xmax\": 5622429.344341379, \"ymax\": 3179004.1485127923}" - }, - 27393: { - "label": "NGO 1948 Oslo Norway Zone 3", - "defaultExtent": "{\"xmin\": -5622429.344341379, \"ymin\": -16040419.987911409, \"xmax\": 5622429.344341379, \"ymax\": 3179004.1485127923}" - }, - 27394: { - "label": "NGO 1948 Oslo Norway Zone 4", - "defaultExtent": "{\"xmin\": -5622429.344341379, \"ymin\": -16040419.987911409, \"xmax\": 5622429.344341379, \"ymax\": 3179004.1485127923}" - }, - 27395: { - "label": "NGO 1948 Oslo Norway Zone 5", - "defaultExtent": "{\"xmin\": -5622429.34434138, \"ymin\": -16040419.987911409, \"xmax\": 5622429.344341379, \"ymax\": 3179004.1485127923}" - }, - 27396: { - "label": "NGO 1948 Oslo Norway Zone 6", - "defaultExtent": "{\"xmin\": -5622429.344341379, \"ymin\": -16040419.987911409, \"xmax\": 5622429.344341379, \"ymax\": 3179004.1485127923}" - }, - 27397: { - "label": "NGO 1948 Oslo Norway Zone 7", - "defaultExtent": "{\"xmin\": -5622429.344341379, \"ymin\": -16040419.987911409, \"xmax\": 5622429.34434138, \"ymax\": 3179004.1485127923}" - }, - 27398: { - "label": "NGO 1948 Oslo Norway Zone 8", - "defaultExtent": "{\"xmin\": -5622429.344341379, \"ymin\": -16040419.987911409, \"xmax\": 5622429.344341379, \"ymax\": 3179004.1485127923}" - }, - 27429: { - "label": "Datum 73 UTM Zone 29N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 27493: { - "label": "Datum 73 Modified Portuguese Grid", - "defaultExtent": "{\"xmin\": -5623074.882734327, \"ymin\": -14003611.848224163, \"xmax\": 5623436.078734327, \"ymax\": 5218251.00191501}" - }, - 27500: { - "label": "Nord de Guerre", - "defaultExtent": "{\"xmin\": -35574647.97144063, \"ymin\": -30321046.440423455, \"xmax\": 36574647.97144702, \"ymax\": 32082358.213482283}" - }, - 27561: { - "label": "NTF Paris Lambert Nord France", - "defaultExtent": "{\"xmin\": -35485896.991476916, \"ymin\": -30428280.311745316, \"xmax\": 36685896.9914344, \"ymax\": 31994583.358255908}" - }, - 27562: { - "label": "NTF Paris Lambert Centre France", - "defaultExtent": "{\"xmin\": -35690513.61572029, \"ymin\": -30090817.847528145, \"xmax\": 36890513.61568137, \"ymax\": 30110710.055974342}" - }, - 27563: { - "label": "NTF Paris Lambert Sud France", - "defaultExtent": "{\"xmin\": -35928901.73456378, \"ymin\": -29736996.661565173, \"xmax\": 37128901.73917267, \"ymax\": 27881827.25755266}" - }, - 27564: { - "label": "NTF Paris Lambert Corse", - "defaultExtent": "{\"xmin\": -36730543.38940593, \"ymin\": -29491616.205146596, \"xmax\": 36731012.105471194, \"ymax\": 26062431.501326453}" - }, - 27571: { - "label": "NTF Paris Lambert Zone I", - "defaultExtent": "{\"xmin\": -35485896.991476916, \"ymin\": -29428280.311745316, \"xmax\": 36685896.9914344, \"ymax\": 32994583.358255908}" - }, - 27572: { - "label": "NTF Paris Lambert Zone II", - "defaultExtent": "{\"xmin\": -35690513.61572029, \"ymin\": -28090817.847528145, \"xmax\": 36890513.61568137, \"ymax\": 32110710.055974342}" - }, - 27573: { - "label": "NTF Paris Lambert Zone III", - "defaultExtent": "{\"xmin\": -35928901.73456378, \"ymin\": -26736996.661565173, \"xmax\": 37128901.73917267, \"ymax\": 30881827.25755266}" - }, - 27574: { - "label": "NTF Paris Lambert Zone IV", - "defaultExtent": "{\"xmin\": -36730543.38940593, \"ymin\": -25491616.205146596, \"xmax\": 36731012.105471194, \"ymax\": 30062431.501326453}" - }, - 27581: { - "label": "NTF Paris France I", - "defaultExtent": "{\"xmin\": -35485896.991476916, \"ymin\": -29428280.311745316, \"xmax\": 36685896.9914344, \"ymax\": 32994583.358255908}" - }, - 27582: { - "label": "NTF Paris France II", - "defaultExtent": "{\"xmin\": -35690513.61572029, \"ymin\": -28090817.847528145, \"xmax\": 36890513.61568137, \"ymax\": 32110710.055974342}" - }, - 27583: { - "label": "NTF Paris France III", - "defaultExtent": "{\"xmin\": -35928901.73456378, \"ymin\": -26736996.661565173, \"xmax\": 37128901.73917267, \"ymax\": 30881827.25755266}" - }, - 27584: { - "label": "NTF Paris France IV", - "defaultExtent": "{\"xmin\": -36730543.38940593, \"ymin\": -25491616.205146596, \"xmax\": 36731012.105471194, \"ymax\": 30062431.501326453}" - }, - 27591: { - "label": "NTF Paris Nord France", - "defaultExtent": "{\"xmin\": -35485896.991476916, \"ymin\": -30428280.311745316, \"xmax\": 36685896.9914344, \"ymax\": 31994583.358255908}" - }, - 27592: { - "label": "NTF Paris Centre France", - "defaultExtent": "{\"xmin\": -35690513.61572029, \"ymin\": -30090817.847528145, \"xmax\": 36890513.61568137, \"ymax\": 30110710.055974342}" - }, - 27593: { - "label": "NTF Paris Sud France", - "defaultExtent": "{\"xmin\": -35928901.73456378, \"ymin\": -29736996.661565173, \"xmax\": 37128901.73917267, \"ymax\": 27881827.25755266}" - }, - 27594: { - "label": "NTF Paris Corse", - "defaultExtent": "{\"xmin\": -36730543.38940593, \"ymin\": -29491616.205146596, \"xmax\": 36731012.105471194, \"ymax\": 26062431.501326453}" - }, - 27700: { - "label": "British National Grid", - "defaultExtent": "{\"xmin\": -5220247.551446327, \"ymin\": -15133062.096372003, \"xmax\": 6020247.551446325, \"ymax\": 4078934.4667145205}" - }, - 28191: { - "label": "Palestine 1923 Palestine Grid", - "defaultExtent": "{\"xmin\": -4839254.170277095, \"ymin\": -12995735.045918768, \"xmax\": 5179757.280277094, \"ymax\": 6225215.491011514}" - }, - 28192: { - "label": "Palestine 1923 Palestine Belt", - "defaultExtent": "{\"xmin\": -5452987.674987869, \"ymin\": -11995841.065498242, \"xmax\": 5793490.784987868, \"ymax\": 7225321.510590988}" - }, - 28193: { - "label": "Palestine 1923 Israel CS Grid", - "defaultExtent": "{\"xmin\": -4839254.170277095, \"ymin\": -11995735.045918768, \"xmax\": 5179757.280277094, \"ymax\": 7225215.491011514}" - }, - 28232: { - "label": "Pointe Noire UTM Zone 32S", - "defaultExtent": "{\"xmin\": -5120944.475688979, \"ymin\": 393340.6641477123, \"xmax\": 6120944.475688979, \"ymax\": 19606659.33585228}" - }, - 28348: { - "label": "GDA 1994 MGA Zone 48", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": 393214.46504110843, \"xmax\": 6120763.767724001, \"ymax\": 19606785.534958888}" - }, - 28349: { - "label": "GDA 1994 MGA Zone 49", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": 393214.46504110843, \"xmax\": 6120763.767723998, \"ymax\": 19606785.534958888}" - }, - 28350: { - "label": "GDA 1994 MGA Zone 50", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": 393214.46504110843, \"xmax\": 6120763.767724001, \"ymax\": 19606785.534958888}" - }, - 28351: { - "label": "GDA 1994 MGA Zone 51", - "defaultExtent": "{\"xmin\": -5120763.767724002, \"ymin\": 393214.46504110843, \"xmax\": 6120763.767724001, \"ymax\": 19606785.534958888}" - }, - 28352: { - "label": "GDA 1994 MGA Zone 52", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": 393214.46504110843, \"xmax\": 6120763.767724001, \"ymax\": 19606785.534958888}" - }, - 28353: { - "label": "GDA 1994 MGA Zone 53", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": 393214.46504111215, \"xmax\": 6120761.968321789, \"ymax\": 19606785.534958888}" - }, - 28354: { - "label": "GDA 1994 MGA Zone 54", - "defaultExtent": "{\"xmin\": -5120763.767723992, \"ymin\": 393214.4650619123, \"xmax\": 6120763.767724008, \"ymax\": 19606785.534938097}" - }, - 28355: { - "label": "GDA 1994 MGA Zone 55", - "defaultExtent": "{\"xmin\": -5120763.767723991, \"ymin\": 393214.4650619123, \"xmax\": 6120763.767724008, \"ymax\": 19606785.534938097}" - }, - 28356: { - "label": "GDA 1994 MGA Zone 56", - "defaultExtent": "{\"xmin\": -5120763.767723991, \"ymin\": 393214.4650619123, \"xmax\": 6120763.767724008, \"ymax\": 19606785.534938097}" - }, - 28357: { - "label": "GDA 1994 MGA Zone 57", - "defaultExtent": "{\"xmin\": -5120763.767723984, \"ymin\": 393214.4650619123, \"xmax\": 6120763.767724008, \"ymax\": 19606785.534938097}" - }, - 28358: { - "label": "GDA 1994 MGA Zone 58", - "defaultExtent": "{\"xmin\": -5120763.76772398, \"ymin\": 393214.4650619123, \"xmax\": 6120763.767724008, \"ymax\": 19606785.534938097}" - }, - 28402: { - "label": "Pulkovo 1942 GK Zone 2", - "defaultExtent": "{\"xmin\": -3123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 8123107.467526717, \"ymax\": 9610795.116133094}" - }, - 28403: { - "label": "Pulkovo 1942 GK Zone 3", - "defaultExtent": "{\"xmin\": -2123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 9123107.467526717, \"ymax\": 9610795.116133094}" - }, - 28404: { - "label": "Pulkovo 1942 GK Zone 4", - "defaultExtent": "{\"xmin\": -1123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 10123107.467526717, \"ymax\": 9610795.116133094}" - }, - 28405: { - "label": "Pulkovo 1942 GK Zone 5", - "defaultExtent": "{\"xmin\": -123107.46752671711, \"ymin\": -9610795.116133098, \"xmax\": 11123107.467526717, \"ymax\": 9610795.116133094}" - }, - 28406: { - "label": "Pulkovo 1942 GK Zone 6", - "defaultExtent": "{\"xmin\": 876892.5324732829, \"ymin\": -9610795.116133098, \"xmax\": 12123107.467526715, \"ymax\": 9610795.116133094}" - }, - 28407: { - "label": "Pulkovo 1942 GK Zone 7", - "defaultExtent": "{\"xmin\": 1876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 13123107.467526715, \"ymax\": 9610795.116133094}" - }, - 28408: { - "label": "Pulkovo 1942 GK Zone 8", - "defaultExtent": "{\"xmin\": 2876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 14123107.467526717, \"ymax\": 9610795.116133094}" - }, - 28409: { - "label": "Pulkovo 1942 GK Zone 9", - "defaultExtent": "{\"xmin\": 3876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 15123107.467526719, \"ymax\": 9610795.116133094}" - }, - 28410: { - "label": "Pulkovo 1942 GK Zone 10", - "defaultExtent": "{\"xmin\": 4876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 16123107.467526717, \"ymax\": 9610795.116133094}" - }, - 28411: { - "label": "Pulkovo 1942 GK Zone 11", - "defaultExtent": "{\"xmin\": 5876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 17123107.46752672, \"ymax\": 9610795.116133094}" - }, - 28412: { - "label": "Pulkovo 1942 GK Zone 12", - "defaultExtent": "{\"xmin\": 6876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 18123107.46752672, \"ymax\": 9610795.116133094}" - }, - 28413: { - "label": "Pulkovo 1942 GK Zone 13", - "defaultExtent": "{\"xmin\": 7876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 19123107.46752672, \"ymax\": 9610795.116133094}" - }, - 28414: { - "label": "Pulkovo 1942 GK Zone 14", - "defaultExtent": "{\"xmin\": 8876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 20123107.46752672, \"ymax\": 9610795.116133094}" - }, - 28415: { - "label": "Pulkovo 1942 GK Zone 15", - "defaultExtent": "{\"xmin\": 9876892.532473283, \"ymin\": -9610795.116133101, \"xmax\": 21123107.467526715, \"ymax\": 9610795.116133094}" - }, - 28416: { - "label": "Pulkovo 1942 GK Zone 16", - "defaultExtent": "{\"xmin\": 10876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 22123107.467526715, \"ymax\": 9610795.116133094}" - }, - 28417: { - "label": "Pulkovo 1942 GK Zone 17", - "defaultExtent": "{\"xmin\": 11876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 23123107.46752672, \"ymax\": 9610795.116133094}" - }, - 28418: { - "label": "Pulkovo 1942 GK Zone 18", - "defaultExtent": "{\"xmin\": 12876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 24123107.46752672, \"ymax\": 9610795.116133094}" - }, - 28419: { - "label": "Pulkovo 1942 GK Zone 19", - "defaultExtent": "{\"xmin\": 13876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 25123107.467526715, \"ymax\": 9610795.116133094}" - }, - 28420: { - "label": "Pulkovo 1942 GK Zone 20", - "defaultExtent": "{\"xmin\": 14876892.532473283, \"ymin\": -9610795.116133098, \"xmax\": 26123107.46752672, \"ymax\": 9610795.116133094}" - }, - 28421: { - "label": "Pulkovo 1942 GK Zone 21", - "defaultExtent": "{\"xmin\": 15876892.532473281, \"ymin\": -9610795.116133098, \"xmax\": 27123107.46752672, \"ymax\": 9610795.116133096}" - }, - 28422: { - "label": "Pulkovo 1942 GK Zone 22", - "defaultExtent": "{\"xmin\": 16876892.53247328, \"ymin\": -9610795.116133098, \"xmax\": 28123107.46752672, \"ymax\": 9610795.116133094}" - }, - 28423: { - "label": "Pulkovo 1942 GK Zone 23", - "defaultExtent": "{\"xmin\": 17876892.53247328, \"ymin\": -9610795.116133096, \"xmax\": 29123105.667374637, \"ymax\": 9610795.116133094}" - }, - 28424: { - "label": "Pulkovo 1942 GK Zone 24", - "defaultExtent": "{\"xmin\": 18876892.53247329, \"ymin\": -9610795.116112284, \"xmax\": 30123107.467526726, \"ymax\": 9610795.116112294}" - }, - 28425: { - "label": "Pulkovo 1942 GK Zone 25", - "defaultExtent": "{\"xmin\": 19876892.532473292, \"ymin\": -9610795.116112284, \"xmax\": 31123107.467526726, \"ymax\": 9610795.116112294}" - }, - 28426: { - "label": "Pulkovo 1942 GK Zone 26", - "defaultExtent": "{\"xmin\": 20876892.532473292, \"ymin\": -9610795.116112284, \"xmax\": 32123107.467526726, \"ymax\": 9610795.116112294}" - }, - 28427: { - "label": "Pulkovo 1942 GK Zone 27", - "defaultExtent": "{\"xmin\": 21876892.5324733, \"ymin\": -9610795.116112284, \"xmax\": 33123107.467526726, \"ymax\": 9610795.116112294}" - }, - 28428: { - "label": "Pulkovo 1942 GK Zone 28", - "defaultExtent": "{\"xmin\": 22876892.532473303, \"ymin\": -9610795.116112284, \"xmax\": 34123107.46752673, \"ymax\": 9610795.116112294}" - }, - 28429: { - "label": "Pulkovo 1942 GK Zone 29", - "defaultExtent": "{\"xmin\": 23876892.532473303, \"ymin\": -9610795.116112284, \"xmax\": 35123107.46752673, \"ymax\": 9610795.116112294}" - }, - 28430: { - "label": "Pulkovo 1942 GK Zone 30", - "defaultExtent": "{\"xmin\": 24876892.5324733, \"ymin\": -9610795.116112284, \"xmax\": 36123107.46752673, \"ymax\": 9610795.116112294}" - }, - 28431: { - "label": "Pulkovo 1942 GK Zone 31", - "defaultExtent": "{\"xmin\": 25876892.532473307, \"ymin\": -9610795.116112284, \"xmax\": 37123107.46752673, \"ymax\": 9610795.116112294}" - }, - 28432: { - "label": "Pulkovo 1942 GK Zone 32", - "defaultExtent": "{\"xmin\": 26876892.532473307, \"ymin\": -9610795.116112284, \"xmax\": 38123107.46752673, \"ymax\": 9610795.116112294}" - }, - 28462: { - "label": "Pulkovo 1942 GK Zone 2N", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 28463: { - "label": "Pulkovo 1942 GK Zone 3N", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 28464: { - "label": "Pulkovo 1942 GK Zone 4N", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 28465: { - "label": "Pulkovo 1942 GK Zone 5N", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 28466: { - "label": "Pulkovo 1942 GK Zone 6N", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526716, \"ymax\": 9610795.116133094}" - }, - 28467: { - "label": "Pulkovo 1942 GK Zone 7N", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526716, \"ymax\": 9610795.116133094}" - }, - 28468: { - "label": "Pulkovo 1942 GK Zone 8N", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 28469: { - "label": "Pulkovo 1942 GK Zone 9N", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526718, \"ymax\": 9610795.116133094}" - }, - 28470: { - "label": "Pulkovo 1942 GK Zone 10N", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 28471: { - "label": "Pulkovo 1942 GK Zone 11N", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 28472: { - "label": "Pulkovo 1942 GK Zone 12N", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.46752672, \"ymax\": 9610795.116133094}" - }, - 28473: { - "label": "Pulkovo 1942 GK Zone 13N", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.46752672, \"ymax\": 9610795.116133094}" - }, - 28474: { - "label": "Pulkovo 1942 GK Zone 14N", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 28475: { - "label": "Pulkovo 1942 GK Zone 15N", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133101, \"xmax\": 6123107.467526715, \"ymax\": 9610795.116133094}" - }, - 28476: { - "label": "Pulkovo 1942 GK Zone 16N", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526715, \"ymax\": 9610795.116133094}" - }, - 28477: { - "label": "Pulkovo 1942 GK Zone 17N", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 28478: { - "label": "Pulkovo 1942 GK Zone 18N", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 28479: { - "label": "Pulkovo 1942 GK Zone 19N", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526715, \"ymax\": 9610795.116133094}" - }, - 28480: { - "label": "Pulkovo 1942 GK Zone 20N", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 28481: { - "label": "Pulkovo 1942 GK Zone 21N", - "defaultExtent": "{\"xmin\": -5123107.46752672, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133096}" - }, - 28482: { - "label": "Pulkovo 1942 GK Zone 22N", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133098, \"xmax\": 6123107.467526717, \"ymax\": 9610795.116133094}" - }, - 28483: { - "label": "Pulkovo 1942 GK Zone 23N", - "defaultExtent": "{\"xmin\": -5123107.467526717, \"ymin\": -9610795.116133096, \"xmax\": 6123105.667374637, \"ymax\": 9610795.116133094}" - }, - 28484: { - "label": "Pulkovo 1942 GK Zone 24N", - "defaultExtent": "{\"xmin\": -5123107.46752671, \"ymin\": -9610795.116112284, \"xmax\": 6123107.4675267255, \"ymax\": 9610795.116112294}" - }, - 28485: { - "label": "Pulkovo 1942 GK Zone 25N", - "defaultExtent": "{\"xmin\": -5123107.467526707, \"ymin\": -9610795.116112284, \"xmax\": 6123107.4675267255, \"ymax\": 9610795.116112294}" - }, - 28486: { - "label": "Pulkovo 1942 GK Zone 26N", - "defaultExtent": "{\"xmin\": -5123107.467526707, \"ymin\": -9610795.116112284, \"xmax\": 6123107.4675267255, \"ymax\": 9610795.116112294}" - }, - 28487: { - "label": "Pulkovo 1942 GK Zone 27N", - "defaultExtent": "{\"xmin\": -5123107.467526701, \"ymin\": -9610795.116112284, \"xmax\": 6123107.4675267255, \"ymax\": 9610795.116112294}" - }, - 28488: { - "label": "Pulkovo 1942 GK Zone 28N", - "defaultExtent": "{\"xmin\": -5123107.467526697, \"ymin\": -9610795.116112284, \"xmax\": 6123107.4675267255, \"ymax\": 9610795.116112294}" - }, - 28489: { - "label": "Pulkovo 1942 GK Zone 29N", - "defaultExtent": "{\"xmin\": -5123107.467526697, \"ymin\": -9610795.116112284, \"xmax\": 6123107.4675267255, \"ymax\": 9610795.116112294}" - }, - 28490: { - "label": "Pulkovo 1942 GK Zone 30N", - "defaultExtent": "{\"xmin\": -5123107.467526701, \"ymin\": -9610795.116112284, \"xmax\": 6123107.4675267255, \"ymax\": 9610795.116112294}" - }, - 28491: { - "label": "Pulkovo 1942 GK Zone 31N", - "defaultExtent": "{\"xmin\": -5123107.467526693, \"ymin\": -9610795.116112284, \"xmax\": 6123107.4675267255, \"ymax\": 9610795.116112294}" - }, - 28492: { - "label": "Pulkovo 1942 GK Zone 32N", - "defaultExtent": "{\"xmin\": -5123107.467526693, \"ymin\": -9610795.116112284, \"xmax\": 6123107.4675267255, \"ymax\": 9610795.116112294}" - }, - 28600: { - "label": "Qatar National Grid", - "defaultExtent": "{\"xmin\": -5423199.248179519, \"ymin\": -12015975.72052533, \"xmax\": 5823199.248179519, \"ymax\": 7205694.91098534}" - }, - 28991: { - "label": "RD Old", - "defaultExtent": "{\"xmin\": -30670379.567908015, \"ymin\": -30742357.635665424, \"xmax\": 30670379.567907993, \"ymax\": 30649300.87968486}" - }, - 28992: { - "label": "RD New", - "defaultExtent": "{\"xmin\": -30515379.567908015, \"ymin\": -30279357.635665424, \"xmax\": 30825379.567907993, \"ymax\": 31112300.87968486}" - }, - 29101: { - "label": "SAD 1969 Brazil Polyconic", - "defaultExtent": "{\"xmin\": -15037579.32380563, \"ymin\": -5348308.772921104, \"xmax\": 25037579.32380564, \"ymax\": 25348308.772921093}" - }, - 29168: { - "label": "SAD 1969 UTM Zone 18N", - "defaultExtent": "{\"xmin\": -5120784.157939795, \"ymin\": -9606819.739861675, \"xmax\": 6120784.157939793, \"ymax\": 9606819.739861669}" - }, - 29169: { - "label": "SAD 1969 UTM Zone 19N", - "defaultExtent": "{\"xmin\": -5120784.157939795, \"ymin\": -9606819.739861675, \"xmax\": 6120784.157939793, \"ymax\": 9606819.739861669}" - }, - 29170: { - "label": "SAD 1969 UTM Zone 20N", - "defaultExtent": "{\"xmin\": -5120784.157939793, \"ymin\": -9606819.739861675, \"xmax\": 6120784.157939793, \"ymax\": 9606819.739861669}" - }, - 29171: { - "label": "SAD 1969 UTM Zone 21N", - "defaultExtent": "{\"xmin\": -5120784.157939793, \"ymin\": -9606819.739861675, \"xmax\": 6120784.157939793, \"ymax\": 9606819.739861669}" - }, - 29172: { - "label": "SAD 1969 UTM Zone 22N", - "defaultExtent": "{\"xmin\": -5120784.157939794, \"ymin\": -9606819.739861675, \"xmax\": 6120784.157939793, \"ymax\": 9606819.739861669}" - }, - 29187: { - "label": "SAD 1969 UTM Zone 17S", - "defaultExtent": "{\"xmin\": -5120784.157939793, \"ymin\": 393180.2601383254, \"xmax\": 6120784.157939793, \"ymax\": 19606819.739861667}" - }, - 29188: { - "label": "SAD 1969 UTM Zone 18S", - "defaultExtent": "{\"xmin\": -5120784.157939795, \"ymin\": 393180.2601383254, \"xmax\": 6120784.157939793, \"ymax\": 19606819.739861667}" - }, - 29189: { - "label": "SAD 1969 UTM Zone 19S", - "defaultExtent": "{\"xmin\": -5120784.157939795, \"ymin\": 393180.2601383254, \"xmax\": 6120784.157939793, \"ymax\": 19606819.739861667}" - }, - 29190: { - "label": "SAD 1969 UTM Zone 20S", - "defaultExtent": "{\"xmin\": -5120784.157939793, \"ymin\": 393180.2601383254, \"xmax\": 6120784.157939793, \"ymax\": 19606819.739861667}" - }, - 29191: { - "label": "SAD 1969 UTM Zone 21S", - "defaultExtent": "{\"xmin\": -5120784.157939793, \"ymin\": 393180.2601383254, \"xmax\": 6120784.157939793, \"ymax\": 19606819.739861667}" - }, - 29192: { - "label": "SAD 1969 UTM Zone 22S", - "defaultExtent": "{\"xmin\": -5120784.157939794, \"ymin\": 393180.2601383254, \"xmax\": 6120784.157939793, \"ymax\": 19606819.739861667}" - }, - 29193: { - "label": "SAD 1969 UTM Zone 23S", - "defaultExtent": "{\"xmin\": -5120784.157939793, \"ymin\": 393180.2601383254, \"xmax\": 6120784.157939793, \"ymax\": 19606819.739861667}" - }, - 29194: { - "label": "SAD 1969 UTM Zone 24S", - "defaultExtent": "{\"xmin\": -5120784.157939792, \"ymin\": 393180.2601383254, \"xmax\": 6120784.157939793, \"ymax\": 19606819.739861667}" - }, - 29195: { - "label": "SAD 1969 UTM Zone 25S", - "defaultExtent": "{\"xmin\": -5120784.157939792, \"ymin\": 393180.2601383254, \"xmax\": 6120784.157939793, \"ymax\": 19606819.739861667}" - }, - 29220: { - "label": "Sapper Hill 1943 UTM Zone 20S", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": 392912.94750043936, \"xmax\": 6121006.178542033, \"ymax\": 19607087.052499555}" - }, - 29221: { - "label": "Sapper Hill 1943 UTM Zone 21S", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": 392912.94750043936, \"xmax\": 6121006.178542033, \"ymax\": 19607087.052499555}" - }, - 29333: { - "label": "Schwarzeck UTM Zone 33S", - "defaultExtent": "{\"xmin\": -5120173.1879996555, \"ymin\": 394144.096356092, \"xmax\": 6120173.1879996555, \"ymax\": 19605855.903643902}" - }, - 29635: { - "label": "Sudan UTM Zone 35N", - "defaultExtent": "{\"xmin\": -5120944.475688979, \"ymin\": -9606659.335852288, \"xmax\": 6120944.475688979, \"ymax\": 9606659.335852282}" - }, - 29636: { - "label": "Sudan UTM Zone 36N", - "defaultExtent": "{\"xmin\": -5120944.475688979, \"ymin\": -9606659.335852288, \"xmax\": 6120944.475688978, \"ymax\": 9606659.335852282}" - }, - 29701: { - "label": "Tananarive 1925 Paris Laborde Grid", - "defaultExtent": "{\"xmin\": -7929529.190219831, \"ymin\": -6100528.54577323, \"xmax\": 8729530.41438141, \"ymax\": 7700528.545773233}" - }, - 29738: { - "label": "Tananarive 1925 UTM Zone 38S", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": 392912.94750043936, \"xmax\": 6121006.178542033, \"ymax\": 19607087.052499555}" - }, - 29739: { - "label": "Tananarive 1925 UTM Zone 39S", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": 392912.94750043936, \"xmax\": 6121006.178542034, \"ymax\": 19607087.052499555}" - }, - 29849: { - "label": "Timbalai 1948 UTM Zone 49N", - "defaultExtent": "{\"xmin\": -5119982.500038063, \"ymin\": -9605675.590855356, \"xmax\": 6119982.50003806, \"ymax\": 9605675.59085535}" - }, - 29850: { - "label": "Timbalai 1948 UTM Zone 50N", - "defaultExtent": "{\"xmin\": -5119982.500038063, \"ymin\": -9605675.590855356, \"xmax\": 6119982.500038063, \"ymax\": 9605675.59085535}" - }, - 29871: { - "label": "Timbalai 1948 RSO Borneo Chains", - "defaultExtent": "{\"xmin\": -1440070.610298661, \"ymin\": -1550982.4565430125, \"xmax\": 1439930.7175863436, \"ymax\": 1550820.6398233336}" - }, - 29872: { - "label": "Timbalai 1948 RSO Borneo Feet", - "defaultExtent": "{\"xmin\": -95044660.27971154, \"ymin\": -102364842.13183792, \"xmax\": 95035427.36069588, \"ymax\": 102354162.22834003}" - }, - 29873: { - "label": "Timbalai 1948 RSO Borneo Meters", - "defaultExtent": "{\"xmin\": -28969562.225829132, \"ymin\": -31200749.785922885, \"xmax\": 28966748.036992356, \"ymax\": 31197494.556981973}" - }, - 29901: { - "label": "OSNI 1952 Irish National Grid", - "defaultExtent": "{\"xmin\": -5422489.397085395, \"ymin\": -15289652.882936455, \"xmax\": 5822489.397085395, \"ymax\": 3930007.1025026413}" - }, - 29902: { - "label": "TM65 Irish Grid", - "defaultExtent": "{\"xmin\": -5422489.397003066, \"ymin\": -15289652.88270891, \"xmax\": 5822489.397003066, \"ymax\": 3930007.102448756}" - }, - 29903: { - "label": "TM75 Irish Grid", - "defaultExtent": "{\"xmin\": -5422489.397003066, \"ymin\": -15289652.88270891, \"xmax\": 5822489.397003066, \"ymax\": 3930007.102448756}" - }, - 30161: { - "label": "Japan Zone 1", - "defaultExtent": "{\"xmin\": -5621783.478067655, \"ymin\": -13260629.46981559, \"xmax\": 5621783.478067655, \"ymax\": 5956586.870460385}" - }, - 30162: { - "label": "Japan Zone 2", - "defaultExtent": "{\"xmin\": -5621783.478067657, \"ymin\": -13260629.46981559, \"xmax\": 5621783.478067655, \"ymax\": 5956586.870460385}" - }, - 30163: { - "label": "Japan Zone 3", - "defaultExtent": "{\"xmin\": -5621783.478067655, \"ymin\": -13593355.708836392, \"xmax\": 5621783.478067659, \"ymax\": 5623860.6314395815}" - }, - 30164: { - "label": "Japan Zone 4", - "defaultExtent": "{\"xmin\": -5621783.478067655, \"ymin\": -13260629.46981559, \"xmax\": 5621783.478067655, \"ymax\": 5956586.870460385}" - }, - 30165: { - "label": "Japan Zone 5", - "defaultExtent": "{\"xmin\": -5621783.478067655, \"ymin\": -13593355.708836392, \"xmax\": 5621783.478067655, \"ymax\": 5623860.6314395815}" - }, - 30166: { - "label": "Japan Zone 6", - "defaultExtent": "{\"xmin\": -5621783.478067648, \"ymin\": -13593355.708815586, \"xmax\": 5621783.478067655, \"ymax\": 5623860.631418788}" - }, - 30167: { - "label": "Japan Zone 7", - "defaultExtent": "{\"xmin\": -5621783.4780152915, \"ymin\": -13593355.708817856, \"xmax\": 5621783.478120013, \"ymax\": 5623860.631421058}" - }, - 30168: { - "label": "Japan Zone 8", - "defaultExtent": "{\"xmin\": -5621783.478067648, \"ymin\": -13593355.708815586, \"xmax\": 5621783.4780676635, \"ymax\": 5623860.631418788}" - }, - 30169: { - "label": "Japan Zone 9", - "defaultExtent": "{\"xmin\": -5621783.478120003, \"ymin\": -13593355.708817856, \"xmax\": 5621783.478015297, \"ymax\": 5623860.631421058}" - }, - 30170: { - "label": "Japan Zone 10", - "defaultExtent": "{\"xmin\": -5621783.478120001, \"ymin\": -14037250.051471382, \"xmax\": 5621783.4780153055, \"ymax\": 5179966.288767532}" - }, - 30171: { - "label": "Japan Zone 11", - "defaultExtent": "{\"xmin\": -5621783.478067648, \"ymin\": -14481450.389769148, \"xmax\": 5621783.4780676635, \"ymax\": 4735765.950465225}" - }, - 30172: { - "label": "Japan Zone 12", - "defaultExtent": "{\"xmin\": -5621783.478067648, \"ymin\": -14481450.389769148, \"xmax\": 5621783.4780676635, \"ymax\": 4735765.950465225}" - }, - 30173: { - "label": "Japan Zone 13", - "defaultExtent": "{\"xmin\": -5621783.478067648, \"ymin\": -14481450.389769148, \"xmax\": 5621783.4780676635, \"ymax\": 4735765.950465225}" - }, - 30174: { - "label": "Japan Zone 14", - "defaultExtent": "{\"xmin\": -5621783.478067645, \"ymin\": -12484873.629557598, \"xmax\": 5621783.4780676635, \"ymax\": 6732342.710676774}" - }, - 30175: { - "label": "Japan Zone 15", - "defaultExtent": "{\"xmin\": -5621783.478067657, \"ymin\": -12484873.629578406, \"xmax\": 5621783.478067655, \"ymax\": 6732342.710697568}" - }, - 30176: { - "label": "Japan Zone 16", - "defaultExtent": "{\"xmin\": -5621783.478067655, \"ymin\": -12484873.629578406, \"xmax\": 5621783.478067655, \"ymax\": 6732342.710697568}" - }, - 30177: { - "label": "Japan Zone 17", - "defaultExtent": "{\"xmin\": -5621783.478067657, \"ymin\": -12484873.629578406, \"xmax\": 5621783.478067655, \"ymax\": 6732342.710697568}" - }, - 30178: { - "label": "Japan Zone 18", - "defaultExtent": "{\"xmin\": -5621783.478067648, \"ymin\": -11820538.505245166, \"xmax\": 5621783.478067655, \"ymax\": 7396677.834989205}" - }, - 30179: { - "label": "Japan Zone 19", - "defaultExtent": "{\"xmin\": -5621783.478067648, \"ymin\": -12484873.629557598, \"xmax\": 5621783.478067655, \"ymax\": 6732342.710676774}" - }, - 30200: { - "label": "Trinidad 1903 Trinidad Grid", - "defaultExtent": "{\"xmin\": -24472295.887599796, \"ymin\": -53188692.73089061, \"xmax\": 25332295.887599796, \"ymax\": 42359310.49697054}" - }, - 30339: { - "label": "TC 1948 UTM Zone 39N", - "defaultExtent": "{\"xmin\": -5120818.568079332, \"ymin\": -9606883.018817283, \"xmax\": 6120818.568079333, \"ymax\": 9606883.018817278}" - }, - 30340: { - "label": "TC 1948 UTM Zone 40N", - "defaultExtent": "{\"xmin\": -5120818.568079332, \"ymin\": -9606883.018817283, \"xmax\": 6120818.568079332, \"ymax\": 9606883.018817278}" - }, - 30491: { - "label": "Nord Algerie Ancienne", - "defaultExtent": "{\"xmin\": -37094490.67083504, \"ymin\": -28508539.130123466, \"xmax\": 38094490.67078953, \"ymax\": 19323033.9283213}" - }, - 30492: { - "label": "Sud Algerie Ancienne", - "defaultExtent": "{\"xmin\": -37644652.570998244, \"ymin\": -28128361.975272175, \"xmax\": 38644652.571257345, \"ymax\": 15867737.975734103}" - }, - 30493: { - "label": "Voirol 1879 Nord Algerie Ancienne", - "defaultExtent": "{\"xmin\": -37094490.67083504, \"ymin\": -28508539.130123466, \"xmax\": 38094490.67078953, \"ymax\": 19323033.9283213}" - }, - 30494: { - "label": "Voirol 1879 Sud Algerie Ancienne", - "defaultExtent": "{\"xmin\": -37644652.570998244, \"ymin\": -28128361.975272175, \"xmax\": 38644652.571257345, \"ymax\": 15867737.975734103}" - }, - 30591: { - "label": "Nord Algerie", - "defaultExtent": "{\"xmin\": -37094354.695977226, \"ymin\": -28508448.19506885, \"xmax\": 38094624.69593172, \"ymax\": 19323123.623061687}" - }, - 30592: { - "label": "Sud Algerie", - "defaultExtent": "{\"xmin\": -37644516.631470844, \"ymin\": -28128271.08484508, \"xmax\": 38644786.63172995, \"ymax\": 15867827.782508897}" - }, - 30729: { - "label": "Nord Sahara 1959 UTM Zone 29N", - "defaultExtent": "{\"xmin\": -5120944.444949269, \"ymin\": -9606659.189062225, \"xmax\": 6120944.444949269, \"ymax\": 9606659.189062221}" - }, - 30730: { - "label": "Nord Sahara 1959 UTM Zone 30N", - "defaultExtent": "{\"xmin\": -5120944.444949271, \"ymin\": -9606659.189062225, \"xmax\": 6120944.444949269, \"ymax\": 9606659.189062221}" - }, - 30731: { - "label": "Nord Sahara 1959 UTM Zone 31N", - "defaultExtent": "{\"xmin\": -5120944.444949269, \"ymin\": -9606659.189062225, \"xmax\": 6120944.444949271, \"ymax\": 9606659.189062221}" - }, - 30732: { - "label": "Nord Sahara 1959 UTM Zone 32N", - "defaultExtent": "{\"xmin\": -5120944.444949269, \"ymin\": -9606659.189062225, \"xmax\": 6120944.444949269, \"ymax\": 9606659.189062221}" - }, - 30791: { - "label": "Nord Sahara 1959 Voirol Unifie Nord", - "defaultExtent": "{\"xmin\": -37094354.69597727, \"ymin\": -28508448.195068896, \"xmax\": 38094624.69593176, \"ymax\": 19323123.623061676}" - }, - 30792: { - "label": "Nord Sahara 1959 Voirol Unifie Sud", - "defaultExtent": "{\"xmin\": -37644516.63147091, \"ymin\": -28128271.084845144, \"xmax\": 38644786.63173002, \"ymax\": 15867827.782508884}" - }, - 31028: { - "label": "Yoff 1972 UTM Zone 28N", - "defaultExtent": "{\"xmin\": -5120944.475688979, \"ymin\": -9606659.335852288, \"xmax\": 6120944.475688979, \"ymax\": 9606659.335852282}" - }, - 31121: { - "label": "Zanderij 1972 UTM Zone 21N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 31154: { - "label": "Zanderij TM 54 NW", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 31170: { - "label": "Zanderij Suriname Old TM", - "defaultExtent": "{\"xmin\": -5121006.178542031, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 31171: { - "label": "Zanderij Suriname TM", - "defaultExtent": "{\"xmin\": -5122693.155186252, \"ymin\": -9609970.331927082, \"xmax\": 6122693.155186254, \"ymax\": 9609970.331927076}" - }, - 31251: { - "label": "MGI Ferro Austria GK West", - "defaultExtent": "{\"xmin\": -5622345.712638919, \"ymin\": -14609569.127050694, \"xmax\": 5622345.712638919, \"ymax\": 4609569.1270506885}" - }, - 31252: { - "label": "MGI Ferro Austria GK Central", - "defaultExtent": "{\"xmin\": -5622345.712638919, \"ymin\": -14609569.127050694, \"xmax\": 5622345.71263892, \"ymax\": 4609569.1270506885}" - }, - 31253: { - "label": "MGI Ferro Austria GK East", - "defaultExtent": "{\"xmin\": -5622345.712638919, \"ymin\": -14609569.127050694, \"xmax\": 5622345.712638918, \"ymax\": 4609569.1270506885}" - }, - 31254: { - "label": "MGI Austria GK West", - "defaultExtent": "{\"xmin\": -5622345.712638919, \"ymin\": -14609569.127050694, \"xmax\": 5622345.712638919, \"ymax\": 4609569.1270506885}" - }, - 31255: { - "label": "MGI Austria GK Central", - "defaultExtent": "{\"xmin\": -5622345.712638919, \"ymin\": -14609569.127050694, \"xmax\": 5622345.712638919, \"ymax\": 4609569.1270506885}" - }, - 31256: { - "label": "MGI Austria GK East", - "defaultExtent": "{\"xmin\": -5622345.712638919, \"ymin\": -14609569.127050694, \"xmax\": 5622345.712638918, \"ymax\": 4609569.1270506885}" - }, - 31257: { - "label": "MGI Austria GK M28", - "defaultExtent": "{\"xmin\": -5472345.712638919, \"ymin\": -14609569.127050694, \"xmax\": 5772345.712638919, \"ymax\": 4609569.1270506885}" - }, - 31258: { - "label": "MGI Austria GK M31", - "defaultExtent": "{\"xmin\": -5172345.712638919, \"ymin\": -14609569.127050694, \"xmax\": 6072345.71263892, \"ymax\": 4609569.1270506885}" - }, - 31259: { - "label": "MGI Austria GK M34", - "defaultExtent": "{\"xmin\": -4872345.712638919, \"ymin\": -14609569.127050694, \"xmax\": 6372345.712638919, \"ymax\": 4609569.1270506885}" - }, - 31265: { - "label": "MGI 3 Degree Gauss Zone 5", - "defaultExtent": "{\"xmin\": -122345.71263891924, \"ymin\": -9609569.127050694, \"xmax\": 11122345.712638918, \"ymax\": 9609569.127050688}" - }, - 31266: { - "label": "MGI 3 Degree Gauss Zone 6", - "defaultExtent": "{\"xmin\": 877654.2873610808, \"ymin\": -9609569.127050694, \"xmax\": 12122345.712638918, \"ymax\": 9609569.127050688}" - }, - 31267: { - "label": "MGI 3 Degree Gauss Zone 7", - "defaultExtent": "{\"xmin\": 1877654.2873610808, \"ymin\": -9609569.127050694, \"xmax\": 13122345.712638918, \"ymax\": 9609569.127050688}" - }, - 31268: { - "label": "MGI 3 Degree Gauss Zone 8", - "defaultExtent": "{\"xmin\": 2877654.2873610808, \"ymin\": -9609569.127050694, \"xmax\": 14122345.712638918, \"ymax\": 9609569.127050688}" - }, - 31275: { - "label": "MGI Balkans 5", - "defaultExtent": "{\"xmin\": -121783.47806765512, \"ymin\": -9608608.17013799, \"xmax\": 11121783.478067655, \"ymax\": 9608608.170137983}" - }, - 31276: { - "label": "MGI Balkans 6", - "defaultExtent": "{\"xmin\": 878216.5219323449, \"ymin\": -9608608.17013799, \"xmax\": 12121783.478067655, \"ymax\": 9608608.170137983}" - }, - 31277: { - "label": "MGI Balkans 7", - "defaultExtent": "{\"xmin\": 1878216.521932345, \"ymin\": -9608608.17013799, \"xmax\": 13121783.478067655, \"ymax\": 9608608.170137983}" - }, - 31279: { - "label": "MGI Balkans 8", - "defaultExtent": "{\"xmin\": 2878216.521932345, \"ymin\": -9608608.17013799, \"xmax\": 14121783.478067655, \"ymax\": 9608608.170137983}" - }, - 31281: { - "label": "Austria West Zone", - "defaultExtent": "{\"xmin\": -5622345.712638919, \"ymin\": -9609569.127050694, \"xmax\": 5622345.712638919, \"ymax\": 9609569.127050688}" - }, - 31282: { - "label": "Austria Central Zone", - "defaultExtent": "{\"xmin\": -5622345.712638919, \"ymin\": -9609569.127050694, \"xmax\": 5622345.71263892, \"ymax\": 9609569.127050688}" - }, - 31283: { - "label": "Austria East Zone", - "defaultExtent": "{\"xmin\": -5622345.712638919, \"ymin\": -9609569.127050694, \"xmax\": 5622345.712638918, \"ymax\": 9609569.127050688}" - }, - 31284: { - "label": "MGI M28", - "defaultExtent": "{\"xmin\": -5472345.712638919, \"ymin\": -9609569.127050694, \"xmax\": 5772345.712638919, \"ymax\": 9609569.127050688}" - }, - 31285: { - "label": "MGI M31", - "defaultExtent": "{\"xmin\": -5172345.712638919, \"ymin\": -9609569.127050694, \"xmax\": 6072345.71263892, \"ymax\": 9609569.127050688}" - }, - 31286: { - "label": "MGI M34", - "defaultExtent": "{\"xmin\": -4872345.712638919, \"ymin\": -9609569.127050694, \"xmax\": 6372345.712638919, \"ymax\": 9609569.127050688}" - }, - 31287: { - "label": "MGI Austria Lambert", - "defaultExtent": "{\"xmin\": -35829841.356007785, \"ymin\": -29978080.932357267, \"xmax\": 36629841.3560589, \"ymax\": 30833115.889975503}" - }, - 31288: { - "label": "MGI Ferro M28", - "defaultExtent": "{\"xmin\": -5472345.712638919, \"ymin\": -9609569.127050694, \"xmax\": 5772345.712638919, \"ymax\": 9609569.127050688}" - }, - 31289: { - "label": "MGI Ferro M31", - "defaultExtent": "{\"xmin\": -5172345.712638919, \"ymin\": -9609569.127050694, \"xmax\": 6072345.71263892, \"ymax\": 9609569.127050688}" - }, - 31290: { - "label": "MGI Ferro M34", - "defaultExtent": "{\"xmin\": -4872345.712638919, \"ymin\": -9609569.127050694, \"xmax\": 6372345.712638918, \"ymax\": 9609569.127050688}" - }, - 31370: { - "label": "Belge Lambert 1972", - "defaultExtent": "{\"xmin\": -35872636.57412841, \"ymin\": -30622548.149173222, \"xmax\": 36172636.5995491, \"ymax\": 32543604.218167774}" - }, - 31466: { - "label": "DHDN 3 Degree Gauss Zone 2", - "defaultExtent": "{\"xmin\": -3122345.7126389192, \"ymin\": -9609569.127050694, \"xmax\": 8122345.712638919, \"ymax\": 9609569.127050688}" - }, - 31467: { - "label": "DHDN 3 Degree Gauss Zone 3", - "defaultExtent": "{\"xmin\": -2122345.7126389192, \"ymin\": -9609569.127050694, \"xmax\": 9122345.712638918, \"ymax\": 9609569.127050688}" - }, - 31468: { - "label": "DHDN 3 Degree Gauss Zone 4", - "defaultExtent": "{\"xmin\": -1122345.7126389192, \"ymin\": -9609569.127050694, \"xmax\": 10122345.712638918, \"ymax\": 9609569.127050688}" - }, - 31469: { - "label": "DHDN 3 Degree Gauss Zone 5", - "defaultExtent": "{\"xmin\": -122345.71263891924, \"ymin\": -9609569.127050694, \"xmax\": 11122345.712638918, \"ymax\": 9609569.127050688}" - }, - 31491: { - "label": "Germany Zone 1", - "defaultExtent": "{\"xmin\": -4122345.7126389192, \"ymin\": -9609569.127050694, \"xmax\": 7122345.71263892, \"ymax\": 9609569.127050688}" - }, - 31492: { - "label": "Germany Zone 2", - "defaultExtent": "{\"xmin\": -3122345.7126389192, \"ymin\": -9609569.127050694, \"xmax\": 8122345.712638919, \"ymax\": 9609569.127050688}" - }, - 31493: { - "label": "Germany Zone 3", - "defaultExtent": "{\"xmin\": -2122345.7126389192, \"ymin\": -9609569.127050694, \"xmax\": 9122345.712638918, \"ymax\": 9609569.127050688}" - }, - 31494: { - "label": "Germany Zone 4", - "defaultExtent": "{\"xmin\": -1122345.7126389192, \"ymin\": -9609569.127050694, \"xmax\": 10122345.712638918, \"ymax\": 9609569.127050688}" - }, - 31495: { - "label": "Germany Zone 5", - "defaultExtent": "{\"xmin\": -122345.71263891924, \"ymin\": -9609569.127050694, \"xmax\": 11122345.712638918, \"ymax\": 9609569.127050688}" - }, - 31528: { - "label": "Conakry 1905 UTM Zone 28N", - "defaultExtent": "{\"xmin\": -5120944.475688979, \"ymin\": -9606659.335852288, \"xmax\": 6120944.475688979, \"ymax\": 9606659.335852282}" - }, - 31529: { - "label": "Conakry 1905 UTM Zone 29N", - "defaultExtent": "{\"xmin\": -5120944.475688979, \"ymin\": -9606659.335852288, \"xmax\": 6120944.475688979, \"ymax\": 9606659.335852282}" - }, - 31600: { - "label": "Stereo 33", - "defaultExtent": "{\"xmin\": -30223247.475245144, \"ymin\": -30035948.876277775, \"xmax\": 31223247.47487916, \"ymax\": 31205487.319453847}" - }, - 31700: { - "label": "Stereo 70", - "defaultExtent": "{\"xmin\": -30221780.112340685, \"ymin\": -30036352.66697563, \"xmax\": 31221780.10821221, \"ymax\": 31204134.735311333}" - }, - 31838: { - "label": "NGN UTM Zone 38N", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699434, \"ymax\": 9606785.535047516}" - }, - 31839: { - "label": "NGN UTM Zone 39N", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699435, \"ymax\": 9606785.535047516}" - }, - 31901: { - "label": "KUDAMS KTM", - "defaultExtent": "{\"xmin\": -5123012.972913165, \"ymin\": -9610629.786873642, \"xmax\": 6123012.972913165, \"ymax\": 9610629.786873637}" - }, - 31965: { - "label": "SIRGAS 2000 UTM Zone 11N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 31966: { - "label": "SIRGAS 2000 UTM Zone 12N", - "defaultExtent": "{\"xmin\": -5120763.767723998, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 31967: { - "label": "SIRGAS 2000 UTM Zone 13N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 31968: { - "label": "SIRGAS 2000 UTM Zone 14N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 31969: { - "label": "SIRGAS 2000 UTM Zone 15N", - "defaultExtent": "{\"xmin\": -5120763.767723998, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 31970: { - "label": "SIRGAS 2000 UTM Zone 16N", - "defaultExtent": "{\"xmin\": -5120763.767723998, \"ymin\": -9606785.534958893, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 31971: { - "label": "SIRGAS 2000 UTM Zone 17N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 31972: { - "label": "SIRGAS 2000 UTM Zone 18N", - "defaultExtent": "{\"xmin\": -5120763.767724002, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 31973: { - "label": "SIRGAS 2000 UTM Zone 19N", - "defaultExtent": "{\"xmin\": -5120763.767724002, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 31974: { - "label": "SIRGAS 2000 UTM Zone 20N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 31975: { - "label": "SIRGAS 2000 UTM Zone 21N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 31976: { - "label": "SIRGAS 2000 UTM Zone 22N", - "defaultExtent": "{\"xmin\": -5120763.767724002, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 31977: { - "label": "SIRGAS 2000 UTM Zone 17S", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": 393214.46504110843, \"xmax\": 6120763.767724001, \"ymax\": 19606785.534958888}" - }, - 31978: { - "label": "SIRGAS 2000 UTM Zone 18S", - "defaultExtent": "{\"xmin\": -5120763.767724002, \"ymin\": 393214.46504110843, \"xmax\": 6120763.767724001, \"ymax\": 19606785.534958888}" - }, - 31979: { - "label": "SIRGAS 2000 UTM Zone 19S", - "defaultExtent": "{\"xmin\": -5120763.767724002, \"ymin\": 393214.46504110843, \"xmax\": 6120763.767724001, \"ymax\": 19606785.534958888}" - }, - 31980: { - "label": "SIRGAS 2000 UTM Zone 20S", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": 393214.46504110843, \"xmax\": 6120763.767724001, \"ymax\": 19606785.534958888}" - }, - 31981: { - "label": "SIRGAS 2000 UTM Zone 21S", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": 393214.46504110843, \"xmax\": 6120763.767724001, \"ymax\": 19606785.534958888}" - }, - 31982: { - "label": "SIRGAS 2000 UTM Zone 22S", - "defaultExtent": "{\"xmin\": -5120763.767724002, \"ymin\": 393214.46504110843, \"xmax\": 6120763.767724001, \"ymax\": 19606785.534958888}" - }, - 31983: { - "label": "SIRGAS 2000 UTM Zone 23S", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": 393214.46504110843, \"xmax\": 6120763.767724001, \"ymax\": 19606785.534958888}" - }, - 31984: { - "label": "SIRGAS 2000 UTM Zone 24S", - "defaultExtent": "{\"xmin\": -5120763.767723999, \"ymin\": 393214.46504110843, \"xmax\": 6120763.767724001, \"ymax\": 19606785.534958888}" - }, - 31985: { - "label": "SIRGAS 2000 UTM Zone 25S", - "defaultExtent": "{\"xmin\": -5120763.767723999, \"ymin\": 393214.46504110843, \"xmax\": 6120763.767724001, \"ymax\": 19606785.534958888}" - }, - 31986: { - "label": "SIRGAS UTM Zone 17N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 31987: { - "label": "SIRGAS UTM Zone 18N", - "defaultExtent": "{\"xmin\": -5120763.767724002, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 31988: { - "label": "SIRGAS UTM Zone 19N", - "defaultExtent": "{\"xmin\": -5120763.767724002, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 31989: { - "label": "SIRGAS UTM Zone 20N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 31990: { - "label": "SIRGAS UTM Zone 21N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 31991: { - "label": "SIRGAS UTM Zone 22N", - "defaultExtent": "{\"xmin\": -5120763.767724002, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 31992: { - "label": "SIRGAS UTM Zone 17S", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": 393214.46504110843, \"xmax\": 6120763.767724001, \"ymax\": 19606785.534958888}" - }, - 31993: { - "label": "SIRGAS UTM Zone 18S", - "defaultExtent": "{\"xmin\": -5120763.767724002, \"ymin\": 393214.46504110843, \"xmax\": 6120763.767724001, \"ymax\": 19606785.534958888}" - }, - 31994: { - "label": "SIRGAS UTM Zone 19S", - "defaultExtent": "{\"xmin\": -5120763.767724002, \"ymin\": 393214.46504110843, \"xmax\": 6120763.767724001, \"ymax\": 19606785.534958888}" - }, - 31995: { - "label": "SIRGAS UTM Zone 20S", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": 393214.46504110843, \"xmax\": 6120763.767724001, \"ymax\": 19606785.534958888}" - }, - 31996: { - "label": "SIRGAS UTM Zone 21S", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": 393214.46504110843, \"xmax\": 6120763.767724001, \"ymax\": 19606785.534958888}" - }, - 31997: { - "label": "SIRGAS UTM Zone 22S", - "defaultExtent": "{\"xmin\": -5120763.767724002, \"ymin\": 393214.46504110843, \"xmax\": 6120763.767724001, \"ymax\": 19606785.534958888}" - }, - 31998: { - "label": "SIRGAS UTM Zone 23S", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": 393214.46504110843, \"xmax\": 6120763.767724001, \"ymax\": 19606785.534958888}" - }, - 31999: { - "label": "SIRGAS UTM Zone 24S", - "defaultExtent": "{\"xmin\": -5120763.767723999, \"ymin\": 393214.46504110843, \"xmax\": 6120763.767724001, \"ymax\": 19606785.534958888}" - }, - 32000: { - "label": "SIRGAS UTM Zone 25S", - "defaultExtent": "{\"xmin\": -5120763.767723999, \"ymin\": 393214.46504110843, \"xmax\": 6120763.767724001, \"ymax\": 19606785.534958888}" - }, - 32001: { - "label": "NAD 1927 StatePlane Montana North FIPS 2501", - "defaultExtent": "{\"xmin\": -116698587.84914257, \"ymin\": -99540714.50048013, \"xmax\": 120698587.84907758, \"ymax\": 102149657.6264272}" - }, - 32002: { - "label": "NAD 1927 StatePlane Montana Central FIPS 2502", - "defaultExtent": "{\"xmin\": -116977362.12206852, \"ymin\": -99057555.59796317, \"xmax\": 120977362.12224735, \"ymax\": 99536879.00554872}" - }, - 32003: { - "label": "NAD 1927 StatePlane Montana South FIPS 2503", - "defaultExtent": "{\"xmin\": -117394673.2530558, \"ymin\": -98297851.73348154, \"xmax\": 121394673.25307614, \"ymax\": 95718532.76168253}" - }, - 32005: { - "label": "NAD 1927 StatePlane Nebraska North FIPS 2601", - "defaultExtent": "{\"xmin\": -118453075.97019011, \"ymin\": -97084099.0188445, \"xmax\": 122453075.97058392, \"ymax\": 85804929.24645765}" - }, - 32006: { - "label": "NAD 1927 StatePlane Nebraska South FIPS 2602", - "defaultExtent": "{\"xmin\": -118950479.07402991, \"ymin\": -96359697.27755822, \"xmax\": 122950479.07360175, \"ymax\": 81548246.19470257}" - }, - 32007: { - "label": "NAD 1927 StatePlane Nevada East FIPS 2701", - "defaultExtent": "{\"xmin\": -17946707.108108267, \"ymin\": -44146398.07922226, \"xmax\": 18946707.108108275, \"ymax\": 18908411.941586282}" - }, - 32008: { - "label": "NAD 1927 StatePlane Nevada Central FIPS 2702", - "defaultExtent": "{\"xmin\": -17946707.108108267, \"ymin\": -44146398.07922226, \"xmax\": 18946707.10810827, \"ymax\": 18908411.941586282}" - }, - 32009: { - "label": "NAD 1927 StatePlane Nevada West FIPS 2703", - "defaultExtent": "{\"xmin\": -17946707.108108267, \"ymin\": -44146398.07922226, \"xmax\": 18946707.10810827, \"ymax\": 18908411.941586282}" - }, - 32010: { - "label": "NAD 1927 StatePlane New Hampshire FIPS 2800", - "defaultExtent": "{\"xmin\": -17947937.011572484, \"ymin\": -46971748.72174005, \"xmax\": 18947937.011572488, \"ymax\": 16087265.373477316}" - }, - 32011: { - "label": "NAD 1927 StatePlane New Jersey FIPS 2900", - "defaultExtent": "{\"xmin\": -16448090.74950552, \"ymin\": -45636324.57738811, \"xmax\": 20448090.749505512, \"ymax\": 17423215.02713036}" - }, - 32012: { - "label": "NAD 1927 StatePlane New Mexico East FIPS 3001", - "defaultExtent": "{\"xmin\": -17946874.822217017, \"ymin\": -42782519.66079074, \"xmax\": 18946874.822217025, \"ymax\": 20272863.642891735}" - }, - 32013: { - "label": "NAD 1927 StatePlane New Mexico Central FIPS 3002", - "defaultExtent": "{\"xmin\": -17946707.108108267, \"ymin\": -42782130.69343315, \"xmax\": 18946707.10810827, \"ymax\": 20272679.32737539}" - }, - 32014: { - "label": "NAD 1927 StatePlane New Mexico West FIPS 3003", - "defaultExtent": "{\"xmin\": -17947014.583974324, \"ymin\": -42782843.80025538, \"xmax\": 18947014.583974328, \"ymax\": 20273017.239155356}" - }, - 32015: { - "label": "NAD 1927 StatePlane New York East FIPS 3101", - "defaultExtent": "{\"xmin\": -17947937.011572484, \"ymin\": -46060879.769489884, \"xmax\": 18947937.011572488, \"ymax\": 16998134.32572749}" - }, - 32016: { - "label": "NAD 1927 StatePlane New York Central FIPS 3102", - "defaultExtent": "{\"xmin\": -17947398.928806886, \"ymin\": -46059536.282380365, \"xmax\": 18947398.92880689, \"ymax\": 16997638.53028314}" - }, - 32017: { - "label": "NAD 1927 StatePlane New York West FIPS 3103", - "defaultExtent": "{\"xmin\": -17947398.928806897, \"ymin\": -46059536.282380365, \"xmax\": 18947398.92880689, \"ymax\": 16997638.53028314}" - }, - 32019: { - "label": "NAD 1927 StatePlane North Carolina FIPS 3200", - "defaultExtent": "{\"xmin\": -121836339.258004, \"ymin\": -93652701.46732512, \"xmax\": 125836339.25862262, \"ymax\": 59912961.363206044}" - }, - 32020: { - "label": "NAD 1927 StatePlane North Dakota North FIPS 3301", - "defaultExtent": "{\"xmin\": -116745069.91367564, \"ymin\": -99529554.17423095, \"xmax\": 120745069.9151863, \"ymax\": 101619253.80293016}" - }, - 32021: { - "label": "NAD 1927 StatePlane North Dakota South FIPS 3302", - "defaultExtent": "{\"xmin\": -117066362.07152306, \"ymin\": -98979384.856835, \"xmax\": 121066362.07307407, \"ymax\": 98653581.72041585}" - }, - 32022: { - "label": "NAD 1927 StatePlane Ohio North FIPS 3401", - "defaultExtent": "{\"xmin\": -118925822.1436901, \"ymin\": -96366663.48565821, \"xmax\": 122925822.14271761, \"ymax\": 81797678.99640897}" - }, - 32023: { - "label": "NAD 1927 StatePlane Ohio South FIPS 3402", - "defaultExtent": "{\"xmin\": -119633032.2978528, \"ymin\": -95605960.98736395, \"xmax\": 123633032.29803409, \"ymax\": 75913411.04150413}" - }, - 32024: { - "label": "NAD 1927 StatePlane Oklahoma North FIPS 3501", - "defaultExtent": "{\"xmin\": -121285808.93332501, \"ymin\": -94202977.24420936, \"xmax\": 125285808.93319671, \"ymax\": 63533160.40821104}" - }, - 32025: { - "label": "NAD 1927 StatePlane Oklahoma South FIPS 3502", - "defaultExtent": "{\"xmin\": -122277503.52713825, \"ymin\": -93439470.4321531, \"xmax\": 126277503.52559131, \"ymax\": 57039457.37229436}" - }, - 32026: { - "label": "NAD 1927 StatePlane Oregon North FIPS 3601", - "defaultExtent": "{\"xmin\": -117528431.49835028, \"ymin\": -98144578.95049556, \"xmax\": 121528431.49947406, \"ymax\": 94401902.13854277}" - }, - 32027: { - "label": "NAD 1927 StatePlane Oregon South FIPS 3602", - "defaultExtent": "{\"xmin\": -118157395.78176126, \"ymin\": -97268728.00678141, \"xmax\": 122157395.78180157, \"ymax\": 88588558.84440745}" - }, - 32028: { - "label": "NAD 1927 StatePlane Pennsylvania North FIPS 3701", - "defaultExtent": "{\"xmin\": -118791652.48156999, \"ymin\": -96580602.07204467, \"xmax\": 122791652.48364748, \"ymax\": 82914198.49534205}" - }, - 32030: { - "label": "NAD 1927 StatePlane Rhode Island FIPS 3800", - "defaultExtent": "{\"xmin\": -17948436.659854826, \"ymin\": -46456798.61830759, \"xmax\": 18948436.65985483, \"ymax\": 16603923.382138362}" - }, - 32031: { - "label": "NAD 1927 StatePlane South Carolina North FIPS 3901", - "defaultExtent": "{\"xmin\": -122425206.99291877, \"ymin\": -93297482.48964359, \"xmax\": 126425206.99324301, \"ymax\": 56167143.68788802}" - }, - 32033: { - "label": "NAD 1927 StatePlane South Carolina South FIPS 3902", - "defaultExtent": "{\"xmin\": -123415932.38123429, \"ymin\": -92739044.13944179, \"xmax\": 127415932.403407, \"ymax\": 50212205.694680326}" - }, - 32034: { - "label": "NAD 1927 StatePlane South Dakota North FIPS 4001", - "defaultExtent": "{\"xmin\": -117566843.86309166, \"ymin\": -98200146.94796717, \"xmax\": 121566843.86289462, \"ymax\": 93976881.19036278}" - }, - 32035: { - "label": "NAD 1927 StatePlane South Dakota South FIPS 4002", - "defaultExtent": "{\"xmin\": -118009405.2449922, \"ymin\": -97547468.45995413, \"xmax\": 122009405.24456261, \"ymax\": 89871046.79721011}" - }, - 32037: { - "label": "NAD 1927 StatePlane Texas North FIPS 4201", - "defaultExtent": "{\"xmin\": -121735619.05154426, \"ymin\": -93762659.12071413, \"xmax\": 125735619.05161719, \"ymax\": 60569957.3005796}" - }, - 32038: { - "label": "NAD 1927 StatePlane Texas North Central FIPS 4202", - "defaultExtent": "{\"xmin\": -123370895.43990469, \"ymin\": -92679241.07921445, \"xmax\": 127370895.4408924, \"ymax\": 50510338.14810767}" - }, - 32039: { - "label": "NAD 1927 StatePlane Texas Central FIPS 4203", - "defaultExtent": "{\"xmin\": -125097099.81398714, \"ymin\": -91759978.00208937, \"xmax\": 129097099.813969, \"ymax\": 41347688.51074191}" - }, - 32040: { - "label": "NAD 1927 StatePlane Texas South Central FIPS 4204", - "defaultExtent": "{\"xmin\": -126689517.26641087, \"ymin\": -90946723.77449241, \"xmax\": 130689517.26641086, \"ymax\": 37477486.00733462}" - }, - 32041: { - "label": "NAD 1927 StatePlane Texas South FIPS 4205", - "defaultExtent": "{\"xmin\": -128189121.38630803, \"ymin\": -89983319.60432447, \"xmax\": 132189121.38630804, \"ymax\": 39798734.959908515}" - }, - 32042: { - "label": "NAD 1927 StatePlane Utah North FIPS 4301", - "defaultExtent": "{\"xmin\": -118855896.63940258, \"ymin\": -96626786.3636115, \"xmax\": 122855896.94320486, \"ymax\": 82237308.72813217}" - }, - 32043: { - "label": "NAD 1927 StatePlane Utah Central FIPS 4302", - "defaultExtent": "{\"xmin\": -119430998.0146647, \"ymin\": -95766883.86220527, \"xmax\": 123430998.01679629, \"ymax\": 77566539.61972874}" - }, - 32044: { - "label": "NAD 1927 StatePlane Utah South FIPS 4303", - "defaultExtent": "{\"xmin\": -120401403.44709013, \"ymin\": -94968590.42270006, \"xmax\": 124401403.44615462, \"ymax\": 69865591.05793928}" - }, - 32045: { - "label": "NAD 1927 StatePlane Vermont FIPS 4400", - "defaultExtent": "{\"xmin\": -17947893.08644877, \"ymin\": -46971636.88051506, \"xmax\": 18947893.08644877, \"ymax\": 16087227.06918771}" - }, - 32046: { - "label": "NAD 1927 StatePlane Virginia North FIPS 4501", - "defaultExtent": "{\"xmin\": -119989261.24272962, \"ymin\": -95412817.07990089, \"xmax\": 123989261.24571212, \"ymax\": 72947185.11349829}" - }, - 32047: { - "label": "NAD 1927 StatePlane Virginia South FIPS 4502", - "defaultExtent": "{\"xmin\": -120617586.10312341, \"ymin\": -94806274.45888251, \"xmax\": 124617586.10281095, \"ymax\": 68230042.07269102}" - }, - 32048: { - "label": "NAD 1927 StatePlane Washington North FIPS 4601", - "defaultExtent": "{\"xmin\": -116737330.18238823, \"ymin\": -99531466.4822629, \"xmax\": 120737330.18301605, \"ymax\": 101708090.99456866}" - }, - 32049: { - "label": "NAD 1927 StatePlane Washington South FIPS 4602", - "defaultExtent": "{\"xmin\": -117131457.75562024, \"ymin\": -98842337.99626632, \"xmax\": 121131457.75816643, \"ymax\": 98055283.30501087}" - }, - 32050: { - "label": "NAD 1927 StatePlane West Virginia North FIPS 4701", - "defaultExtent": "{\"xmin\": -119526067.6113447, \"ymin\": -95810941.53593539, \"xmax\": 123526067.61141573, \"ymax\": 76687811.82409953}" - }, - 32051: { - "label": "NAD 1927 StatePlane West Virginia South FIPS 4702", - "defaultExtent": "{\"xmin\": -120197626.44139844, \"ymin\": -95127006.39232102, \"xmax\": 124197626.44059001, \"ymax\": 71409708.82075965}" - }, - 32052: { - "label": "NAD 1927 StatePlane Wisconsin North FIPS 4801", - "defaultExtent": "{\"xmin\": -117247905.33946048, \"ymin\": -98758725.64485882, \"xmax\": 121247905.3386298, \"ymax\": 96895623.04143758}" - }, - 32053: { - "label": "NAD 1927 StatePlane Wisconsin Central FIPS 4802", - "defaultExtent": "{\"xmin\": -117619131.47377805, \"ymin\": -98188217.12730597, \"xmax\": 121619131.45598258, \"ymax\": 93425811.9598517}" - }, - 32054: { - "label": "NAD 1927 StatePlane Wisconsin South FIPS 4803", - "defaultExtent": "{\"xmin\": -118082977.13506563, \"ymin\": -97410842.31901717, \"xmax\": 122082977.13531266, \"ymax\": 89262143.1951746}" - }, - 32055: { - "label": "NAD 1927 StatePlane Wyoming East FIPS 4901", - "defaultExtent": "{\"xmin\": -17947466.754365563, \"ymin\": -46302558.63750783, \"xmax\": 18947466.75436558, \"ymax\": 16754848.01749439}" - }, - 32056: { - "label": "NAD 1927 StatePlane Wyoming East Central FIPS 4902", - "defaultExtent": "{\"xmin\": -17947466.754365586, \"ymin\": -46302558.63750783, \"xmax\": 18947466.75436558, \"ymax\": 16754848.01749439}" - }, - 32057: { - "label": "NAD 1927 StatePlane Wyoming West Central FIPS 4903", - "defaultExtent": "{\"xmin\": -17947466.754365575, \"ymin\": -46302558.63750783, \"xmax\": 18947466.75436558, \"ymax\": 16754848.01749439}" - }, - 32058: { - "label": "NAD 1927 StatePlane Wyoming West FIPS 4904", - "defaultExtent": "{\"xmin\": -17947466.754365575, \"ymin\": -46302558.63750783, \"xmax\": 18947466.75436558, \"ymax\": 16754848.01749439}" - }, - 32059: { - "label": "NAD 1927 StatePlane Puerto Rico FIPS 5201", - "defaultExtent": "{\"xmin\": -124897210.51208878, \"ymin\": -87003780.852594, \"xmax\": 125897210.51239304, \"ymax\": 49074694.809181586}" - }, - 32060: { - "label": "NAD 1927 StatePlane Virgin Islands St Croix FIPS 5202", - "defaultExtent": "{\"xmin\": -124897210.51208878, \"ymin\": -86903780.852594, \"xmax\": 125897210.51239304, \"ymax\": 49174694.809181586}" - }, - 32061: { - "label": "NAD 1927 Guatemala Norte", - "defaultExtent": "{\"xmin\": -37005128.9335971, \"ymin\": -26145561.98950497, \"xmax\": 38005128.933695495, \"ymax\": 15693865.652280116}" - }, - 32062: { - "label": "NAD 1927 Guatemala Sur", - "defaultExtent": "{\"xmin\": -35836017.190327846, \"ymin\": -25973070.886990257, \"xmax\": 36836017.19043182, \"ymax\": 16386283.78267812}" - }, - 32064: { - "label": "NAD 1927 BLM Zone 14N", - "defaultExtent": "{\"xmin\": -16800755.87585261, \"ymin\": -31517945.842984416, \"xmax\": 20081589.209185943, \"ymax\": 31517945.842984397}" - }, - 32065: { - "label": "NAD 1927 BLM Zone 15N", - "defaultExtent": "{\"xmin\": -16800755.875852603, \"ymin\": -31517945.842984416, \"xmax\": 20081589.209185943, \"ymax\": 31517945.842984397}" - }, - 32066: { - "label": "NAD 1927 BLM Zone 16N", - "defaultExtent": "{\"xmin\": -16800755.875852603, \"ymin\": -31517945.84298442, \"xmax\": 20081589.209185943, \"ymax\": 31517945.842984397}" - }, - 32067: { - "label": "NAD 1927 BLM Zone 17N", - "defaultExtent": "{\"xmin\": -16800755.87585261, \"ymin\": -31517945.842984416, \"xmax\": 20081589.209185943, \"ymax\": 31517945.842984397}" - }, - 32081: { - "label": "NAD 1927 MTM 1", - "defaultExtent": "{\"xmin\": -5317767.571686544, \"ymin\": -9609572.266315758, \"xmax\": 5927367.571686544, \"ymax\": 9609572.266315753}" - }, - 32082: { - "label": "NAD 1927 MTM 2", - "defaultExtent": "{\"xmin\": -5317767.571686544, \"ymin\": -9609572.266315758, \"xmax\": 5927367.571686544, \"ymax\": 9609572.266315753}" - }, - 32083: { - "label": "NAD 1927 MTM 3", - "defaultExtent": "{\"xmin\": -5317767.571686544, \"ymin\": -9609572.266315758, \"xmax\": 5927367.571686544, \"ymax\": 9609572.266315753}" - }, - 32084: { - "label": "NAD 1927 MTM 4", - "defaultExtent": "{\"xmin\": -5317767.571686544, \"ymin\": -9609572.266315758, \"xmax\": 5927367.571686544, \"ymax\": 9609572.266315753}" - }, - 32085: { - "label": "NAD 1927 MTM 5", - "defaultExtent": "{\"xmin\": -5317767.571686546, \"ymin\": -9609572.266315758, \"xmax\": 5927367.571686544, \"ymax\": 9609572.266315753}" - }, - 32086: { - "label": "NAD 1927 MTM 6", - "defaultExtent": "{\"xmin\": -5317767.571686544, \"ymin\": -9609572.266315758, \"xmax\": 5927367.571686544, \"ymax\": 9609572.266315753}" - }, - 32098: { - "label": "NAD 1927 Quebec Lambert", - "defaultExtent": "{\"xmin\": -35680010.172839805, \"ymin\": -29914856.728651848, \"xmax\": 35681054.02616269, \"ymax\": 34676682.98203933}" - }, - 32099: { - "label": "NAD 1927 StatePlane Louisiana Offshore FIPS 1703", - "defaultExtent": "{\"xmin\": -128189121.38625799, \"ymin\": -89983319.60373336, \"xmax\": 132189121.38635808, \"ymax\": 39798734.9599408}" - }, - 32100: { - "label": "NAD 1983 StatePlane Montana FIPS 2500", - "defaultExtent": "{\"xmin\": -35665865.835127994, \"ymin\": -30006746.26947549, \"xmax\": 36865865.835221216, \"ymax\": 30370447.115839537}" - }, - 32104: { - "label": "NAD 1983 StatePlane Nebraska FIPS 2600", - "defaultExtent": "{\"xmin\": -36300933.080799475, \"ymin\": -29399402.24687034, \"xmax\": 37300933.080734946, \"ymax\": 25403103.617317706}" - }, - 32107: { - "label": "NAD 1983 StatePlane Nevada East FIPS 2701", - "defaultExtent": "{\"xmin\": -5422450.671615874, \"ymin\": -5456142.367622394, \"xmax\": 5822450.671615875, \"ymax\": 13763195.080167508}" - }, - 32108: { - "label": "NAD 1983 StatePlane Nevada Central FIPS 2702", - "defaultExtent": "{\"xmin\": -5122450.671615874, \"ymin\": -7456142.367622394, \"xmax\": 6122450.671615874, \"ymax\": 11763195.080167508}" - }, - 32109: { - "label": "NAD 1983 StatePlane Nevada West FIPS 2703", - "defaultExtent": "{\"xmin\": -4822450.671615874, \"ymin\": -9456142.367622394, \"xmax\": 6422450.671615874, \"ymax\": 9763195.080167508}" - }, - 32110: { - "label": "NAD 1983 StatePlane New Hampshire FIPS 2800", - "defaultExtent": "{\"xmin\": -5322825.539147401, \"ymin\": -14317328.47673371, \"xmax\": 5922825.539147401, \"ymax\": 4903290.3883611085}" - }, - 32111: { - "label": "NAD 1983 StatePlane New Jersey FIPS 2900", - "defaultExtent": "{\"xmin\": -5472450.671615874, \"ymin\": -13909240.393148925, \"xmax\": 5772450.671615874, \"ymax\": 5310097.054640977}" - }, - 32112: { - "label": "NAD 1983 StatePlane New Mexico East FIPS 3001", - "defaultExtent": "{\"xmin\": -5457501.789915625, \"ymin\": -13040418.509908829, \"xmax\": 5787501.789915627, \"ymax\": 6179093.676604471}" - }, - 32113: { - "label": "NAD 1983 StatePlane New Mexico Central FIPS 3002", - "defaultExtent": "{\"xmin\": -5122450.671615874, \"ymin\": -13040299.949871464, \"xmax\": 6122450.671615874, \"ymax\": 6179037.49791844}" - }, - 32114: { - "label": "NAD 1983 StatePlane New Mexico West FIPS 3003", - "defaultExtent": "{\"xmin\": -4792544.388498756, \"ymin\": -13040517.30993997, \"xmax\": 6452544.388498756, \"ymax\": 6179140.492176165}" - }, - 32115: { - "label": "NAD 1983 StatePlane New York East FIPS 3101", - "defaultExtent": "{\"xmin\": -5472450.671615874, \"ymin\": -13909240.393148925, \"xmax\": 5772450.671615874, \"ymax\": 5310097.054640977}" - }, - 32116: { - "label": "NAD 1983 StatePlane New York Central FIPS 3102", - "defaultExtent": "{\"xmin\": -5372661.534602356, \"ymin\": -14039281.307184162, \"xmax\": 5872661.534602358, \"ymax\": 5180776.937839759}" - }, - 32117: { - "label": "NAD 1983 StatePlane New York West FIPS 3103", - "defaultExtent": "{\"xmin\": -5272661.53460236, \"ymin\": -14039281.307184162, \"xmax\": 5972661.534602358, \"ymax\": 5180776.937839759}" - }, - 32118: { - "label": "NAD 1983 StatePlane New York Long Island FIPS 3104", - "defaultExtent": "{\"xmin\": -36587956.42066342, \"ymin\": -29425420.120449886, \"xmax\": 37187956.42150142, \"ymax\": 24629425.6260428}" - }, - 32119: { - "label": "NAD 1983 StatePlane North Carolina FIPS 3200", - "defaultExtent": "{\"xmin\": -37137389.9550148, \"ymin\": -28547205.58121489, \"xmax\": 38356592.395206995, \"ymax\": 18261684.963585444}" - }, - 32120: { - "label": "NAD 1983 StatePlane North Dakota North FIPS 3301", - "defaultExtent": "{\"xmin\": -35595748.115963005, \"ymin\": -30339027.657292105, \"xmax\": 36795748.11641998, \"ymax\": 30974941.604174778}" - }, - 32121: { - "label": "NAD 1983 StatePlane North Dakota South FIPS 3302", - "defaultExtent": "{\"xmin\": -35693627.05966489, \"ymin\": -30171287.465168312, \"xmax\": 36893627.0601383, \"ymax\": 30070892.076617684}" - }, - 32122: { - "label": "NAD 1983 StatePlane Ohio North FIPS 3401", - "defaultExtent": "{\"xmin\": -36260139.32294244, \"ymin\": -29374687.724612944, \"xmax\": 37460139.32264283, \"ymax\": 24932674.77100941}" - }, - 32123: { - "label": "NAD 1983 StatePlane Ohio South FIPS 3402", - "defaultExtent": "{\"xmin\": -36475619.49728193, \"ymin\": -29142750.459979072, \"xmax\": 37675619.497339524, \"ymax\": 23138992.601405952}" - }, - 32124: { - "label": "NAD 1983 StatePlane Oklahoma North FIPS 3501", - "defaultExtent": "{\"xmin\": -36979233.88907343, \"ymin\": -28714973.963273533, \"xmax\": 38179233.8890346, \"ymax\": 19365200.320864283}" - }, - 32125: { - "label": "NAD 1983 StatePlane Oklahoma South FIPS 3502", - "defaultExtent": "{\"xmin\": -37281426.008000575, \"ymin\": -28482182.493828315, \"xmax\": 38481426.007534444, \"ymax\": 17385783.726951864}" - }, - 32126: { - "label": "NAD 1983 StatePlane Oregon North FIPS 3601", - "defaultExtent": "{\"xmin\": -33934395.67833442, \"ymin\": -29916770.9826887, \"xmax\": 38934395.67866903, \"ymax\": 28774826.90963382}" - }, - 32127: { - "label": "NAD 1983 StatePlane Oregon South FIPS 3602", - "defaultExtent": "{\"xmin\": -35126017.07220474, \"ymin\": -29649727.834081486, \"xmax\": 38126017.072228044, \"ymax\": 27002732.65337064}" - }, - 32128: { - "label": "NAD 1983 StatePlane Pennsylvania North FIPS 3701", - "defaultExtent": "{\"xmin\": -36219260.373335704, \"ymin\": -29439912.0075843, \"xmax\": 37419260.373972096, \"ymax\": 25273022.556772325}" - }, - 32129: { - "label": "NAD 1983 StatePlane Pennsylvania South FIPS 3702", - "defaultExtent": "{\"xmin\": -36336434.103694856, \"ymin\": -29321240.345738437, \"xmax\": 37536434.10343623, \"ymax\": 24259081.311989907}" - }, - 32130: { - "label": "NAD 1983 StatePlane Rhode Island FIPS 3800", - "defaultExtent": "{\"xmin\": -5522977.829082084, \"ymin\": -14160369.134576127, \"xmax\": 5722977.829082084, \"ymax\": 5060770.306298815}" - }, - 32133: { - "label": "NAD 1983 StatePlane South Carolina FIPS 3900", - "defaultExtent": "{\"xmin\": -37462128.94764636, \"ymin\": -28285530.15549066, \"xmax\": 38681328.949165195, \"ymax\": 16261049.643896274}" - }, - 32134: { - "label": "NAD 1983 StatePlane South Dakota North FIPS 4001", - "defaultExtent": "{\"xmin\": -35846098.92496543, \"ymin\": -29933703.866771042, \"xmax\": 37046098.92490602, \"ymax\": 28645269.44168758}" - }, - 32135: { - "label": "NAD 1983 StatePlane South Dakota South FIPS 4002", - "defaultExtent": "{\"xmin\": -35980929.411304265, \"ymin\": -29734707.47249241, \"xmax\": 37180929.41117397, \"ymax\": 27393676.96179096}" - }, - 32136: { - "label": "NAD 1983 StatePlane Tennessee FIPS 4100", - "defaultExtent": "{\"xmin\": -37039650.6279049, \"ymin\": -28631019.31672457, \"xmax\": 38239650.62802555, \"ymax\": 18990861.045042165}" - }, - 32137: { - "label": "NAD 1983 StatePlane Texas North FIPS 4201", - "defaultExtent": "{\"xmin\": -37516299.8331, \"ymin\": -27580728.943599287, \"xmax\": 37916299.833128214, \"ymax\": 19461951.497943036}" - }, - 32138: { - "label": "NAD 1983 StatePlane Texas North Central FIPS 4202", - "defaultExtent": "{\"xmin\": -37614616.88807972, \"ymin\": -26250391.134317875, \"xmax\": 38814616.88802452, \"ymax\": 17395582.84290185}" - }, - 32139: { - "label": "NAD 1983 StatePlane Texas Central FIPS 4203", - "defaultExtent": "{\"xmin\": -38040663.03171102, \"ymin\": -24970101.92794974, \"xmax\": 39440663.03170802, \"ymax\": 15602650.666709403}" - }, - 32140: { - "label": "NAD 1983 StatePlane Texas South Central FIPS 4204", - "defaultExtent": "{\"xmin\": -38625948.2389665, \"ymin\": -23722141.01585047, \"xmax\": 39825948.2389665, \"ymax\": 15422945.822918478}" - }, - 32141: { - "label": "NAD 1983 StatePlane Texas South FIPS 4205", - "defaultExtent": "{\"xmin\": -39382898.13859524, \"ymin\": -22428383.748523414, \"xmax\": 39982898.13859524, \"ymax\": 17130472.597137526}" - }, - 32142: { - "label": "NAD 1983 StatePlane Utah North FIPS 4301", - "defaultExtent": "{\"xmin\": -36338834.42915058, \"ymin\": -28453982.376255378, \"xmax\": 37338834.521727204, \"ymax\": 26066690.159262396}" - }, - 32143: { - "label": "NAD 1983 StatePlane Utah Central FIPS 4302", - "defaultExtent": "{\"xmin\": -36514060.18168421, \"ymin\": -27191819.5738922, \"xmax\": 37514060.18232606, \"ymax\": 25642908.167597167}" - }, - 32144: { - "label": "NAD 1983 StatePlane Utah South FIPS 4303", - "defaultExtent": "{\"xmin\": -36809744.07562093, \"ymin\": -25948407.843968417, \"xmax\": 37809744.075334504, \"ymax\": 24295469.49478243}" - }, - 32145: { - "label": "NAD 1983 StatePlane Vermont FIPS 4400", - "defaultExtent": "{\"xmin\": -5122812.1510212775, \"ymin\": -14317294.386720052, \"xmax\": 6122812.151021276, \"ymax\": 4903278.713471021}" - }, - 32146: { - "label": "NAD 1983 StatePlane Virginia North FIPS 4501", - "defaultExtent": "{\"xmin\": -33684162.33987652, \"ymin\": -27083846.657879442, \"xmax\": 40684162.34077641, \"ymax\": 24234815.029329725}" - }, - 32147: { - "label": "NAD 1983 StatePlane Virginia South FIPS 4502", - "defaultExtent": "{\"xmin\": -33875616.80010519, \"ymin\": -27898914.99367497, \"xmax\": 40875616.80001254, \"ymax\": 21796916.219502896}" - }, - 32148: { - "label": "NAD 1983 StatePlane Washington North FIPS 4601", - "defaultExtent": "{\"xmin\": -35693390.40305884, \"ymin\": -30339611.799414955, \"xmax\": 36693390.40324891, \"ymax\": 31002022.19631627}" - }, - 32149: { - "label": "NAD 1983 StatePlane Washington South FIPS 4602", - "defaultExtent": "{\"xmin\": -35813457.80653769, \"ymin\": -30129505.531924177, \"xmax\": 36813457.80730579, \"ymax\": 29888507.91177208}" - }, - 32150: { - "label": "NAD 1983 StatePlane West Virginia North FIPS 4701", - "defaultExtent": "{\"xmin\": -36443027.89488857, \"ymin\": -29205240.099509504, \"xmax\": 37643027.8949125, \"ymax\": 23375051.76188209}" - }, - 32151: { - "label": "NAD 1983 StatePlane West Virginia South FIPS 4702", - "defaultExtent": "{\"xmin\": -36647651.619762786, \"ymin\": -28996711.06985563, \"xmax\": 37847651.61951533, \"ymax\": 21766153.09529358}" - }, - 32152: { - "label": "NAD 1983 StatePlane Wisconsin North FIPS 4801", - "defaultExtent": "{\"xmin\": -35748933.755770005, \"ymin\": -30104004.24499993, \"xmax\": 36948933.75551393, \"ymax\": 29535005.089385338}" - }, - 32153: { - "label": "NAD 1983 StatePlane Wisconsin Central FIPS 4802", - "defaultExtent": "{\"xmin\": -35862028.694118075, \"ymin\": -29930060.701200917, \"xmax\": 37062028.688673995, \"ymax\": 28477287.000578806}" - }, - 32154: { - "label": "NAD 1983 StatePlane Wisconsin South FIPS 4803", - "defaultExtent": "{\"xmin\": -36003344.686841294, \"ymin\": -29693054.532282908, \"xmax\": 37203344.68690827, \"ymax\": 27208063.07319163}" - }, - 32155: { - "label": "NAD 1983 StatePlane Wyoming East FIPS 4901", - "defaultExtent": "{\"xmin\": -5422661.534602354, \"ymin\": -14094797.558167633, \"xmax\": 5822661.534602358, \"ymax\": 5125260.686856288}" - }, - 32156: { - "label": "NAD 1983 StatePlane Wyoming East Central FIPS 4902", - "defaultExtent": "{\"xmin\": -5222661.53460236, \"ymin\": -13994797.558167633, \"xmax\": 6022661.534602358, \"ymax\": 5225260.686856289}" - }, - 32157: { - "label": "NAD 1983 StatePlane Wyoming West Central FIPS 4903", - "defaultExtent": "{\"xmin\": -5022661.534602358, \"ymin\": -14094797.558167633, \"xmax\": 6222661.534602358, \"ymax\": 5125260.686856289}" - }, - 32158: { - "label": "NAD 1983 StatePlane Wyoming West FIPS 4904", - "defaultExtent": "{\"xmin\": -4822661.534602356, \"ymin\": -13994797.558167633, \"xmax\": 6422661.534602358, \"ymax\": 5225260.686856289}" - }, - 32161: { - "label": "NAD 1983 StatePlane Puerto Rico Virgin Islands FIPS 5200", - "defaultExtent": "{\"xmin\": -38021748.15784241, \"ymin\": -26319807.671320274, \"xmax\": 38421748.157935165, \"ymax\": 15157853.89958689}" - }, - 32164: { - "label": "NAD 1983 BLM Zone 14N ftUS", - "defaultExtent": "{\"xmin\": -16800372.46127449, \"ymin\": -31518262.209277626, \"xmax\": 20081205.79460782, \"ymax\": 31518262.209277615}" - }, - 32165: { - "label": "NAD 1983 BLM Zone 15N ftUS", - "defaultExtent": "{\"xmin\": -16800372.461274482, \"ymin\": -31518262.209277626, \"xmax\": 20081205.79460782, \"ymax\": 31518262.209277615}" - }, - 32166: { - "label": "NAD 1983 BLM Zone 16N ftUS", - "defaultExtent": "{\"xmin\": -16800372.461274482, \"ymin\": -31518262.209277634, \"xmax\": 20081205.79460782, \"ymax\": 31518262.209277615}" - }, - 32167: { - "label": "NAD 1983 BLM Zone 17N ftUS", - "defaultExtent": "{\"xmin\": -16800372.46127449, \"ymin\": -31518262.209277626, \"xmax\": 20081205.79460782, \"ymax\": 31518262.209277615}" - }, - 32180: { - "label": "NAD 1983 MTM 2 SCoPQ", - "defaultExtent": "{\"xmin\": -5317650.671615875, \"ymin\": -9609668.723894954, \"xmax\": 5927250.671615874, \"ymax\": 9609668.72389495}" - }, - 32181: { - "label": "NAD 1983 MTM 1", - "defaultExtent": "{\"xmin\": -5317650.671615874, \"ymin\": -9609668.723894954, \"xmax\": 5927250.671615874, \"ymax\": 9609668.72389495}" - }, - 32182: { - "label": "NAD 1983 MTM 2", - "defaultExtent": "{\"xmin\": -5317650.671615874, \"ymin\": -9609668.723894954, \"xmax\": 5927250.671615874, \"ymax\": 9609668.72389495}" - }, - 32183: { - "label": "NAD 1983 MTM 3", - "defaultExtent": "{\"xmin\": -5317650.671615874, \"ymin\": -9609668.723894954, \"xmax\": 5927250.671615874, \"ymax\": 9609668.72389495}" - }, - 32184: { - "label": "NAD 1983 MTM 4", - "defaultExtent": "{\"xmin\": -5317650.671615874, \"ymin\": -9609668.723894954, \"xmax\": 5927250.671615874, \"ymax\": 9609668.72389495}" - }, - 32185: { - "label": "NAD 1983 MTM 5", - "defaultExtent": "{\"xmin\": -5317650.671615875, \"ymin\": -9609668.723894954, \"xmax\": 5927250.671615874, \"ymax\": 9609668.72389495}" - }, - 32186: { - "label": "NAD 1983 MTM 6", - "defaultExtent": "{\"xmin\": -5317650.671615874, \"ymin\": -9609668.723894954, \"xmax\": 5927250.671615874, \"ymax\": 9609668.72389495}" - }, - 32187: { - "label": "NAD 1983 MTM 7", - "defaultExtent": "{\"xmin\": -5317650.671615872, \"ymin\": -9609668.723894954, \"xmax\": 5927250.671615874, \"ymax\": 9609668.72389495}" - }, - 32188: { - "label": "NAD 1983 MTM 8", - "defaultExtent": "{\"xmin\": -5317650.671615875, \"ymin\": -9609668.723894954, \"xmax\": 5927250.671615874, \"ymax\": 9609668.72389495}" - }, - 32189: { - "label": "NAD 1983 MTM 9", - "defaultExtent": "{\"xmin\": -5317650.671615874, \"ymin\": -9609668.723894954, \"xmax\": 5927250.671615874, \"ymax\": 9609668.72389495}" - }, - 32190: { - "label": "NAD 1983 MTM 10", - "defaultExtent": "{\"xmin\": -5317650.671615872, \"ymin\": -9609668.723894954, \"xmax\": 5927250.671615875, \"ymax\": 9609668.72389495}" - }, - 32191: { - "label": "NAD 1983 MTM 11", - "defaultExtent": "{\"xmin\": -5317650.671615875, \"ymin\": -9609668.723894954, \"xmax\": 5927250.671615874, \"ymax\": 9609668.72389495}" - }, - 32192: { - "label": "NAD 1983 MTM 12", - "defaultExtent": "{\"xmin\": -5317650.671615874, \"ymin\": -9609668.723894954, \"xmax\": 5927250.671615874, \"ymax\": 9609668.72389495}" - }, - 32193: { - "label": "NAD 1983 MTM 13", - "defaultExtent": "{\"xmin\": -5317650.671615872, \"ymin\": -9609668.723894954, \"xmax\": 5927250.671615875, \"ymax\": 9609668.72389495}" - }, - 32194: { - "label": "NAD 1983 MTM 14", - "defaultExtent": "{\"xmin\": -5317650.671615872, \"ymin\": -9609668.723894956, \"xmax\": 5927250.671615874, \"ymax\": 9609668.72389495}" - }, - 32195: { - "label": "NAD 1983 MTM 15", - "defaultExtent": "{\"xmin\": -5317650.671615874, \"ymin\": -9609668.723894954, \"xmax\": 5927250.671615874, \"ymax\": 9609668.72389495}" - }, - 32196: { - "label": "NAD 1983 MTM 16", - "defaultExtent": "{\"xmin\": -5317650.671615872, \"ymin\": -9609668.723894954, \"xmax\": 5927250.671615874, \"ymax\": 9609668.72389495}" - }, - 32197: { - "label": "NAD 1983 MTM 17", - "defaultExtent": "{\"xmin\": -5317650.671615874, \"ymin\": -9609668.723894954, \"xmax\": 5927250.671615874, \"ymax\": 9609668.72389495}" - }, - 32198: { - "label": "NAD 1983 Quebec Lambert", - "defaultExtent": "{\"xmin\": -35682354.79077794, \"ymin\": -29917365.243313543, \"xmax\": 35683398.59813096, \"ymax\": 34678404.71962829}" - }, - 32199: { - "label": "NAD 1983 StatePlane Louisiana Offshore FIPS 1703", - "defaultExtent": "{\"xmin\": -38682898.13857999, \"ymin\": -27409916.477594156, \"xmax\": 40682898.1386105, \"ymax\": 12148939.867896445}" - }, - 32201: { - "label": "WGS 1972 UTM Zone 1N", - "defaultExtent": "{\"xmin\": -5120761.958538079, \"ymin\": -9606782.69092524, \"xmax\": 6120761.958538111, \"ymax\": 9606782.690925248}" - }, - 32202: { - "label": "WGS 1972 UTM Zone 2N", - "defaultExtent": "{\"xmin\": -5120761.958538079, \"ymin\": -9606782.69092524, \"xmax\": 6120761.958538111, \"ymax\": 9606782.690925248}" - }, - 32203: { - "label": "WGS 1972 UTM Zone 3N", - "defaultExtent": "{\"xmin\": -5120761.958538087, \"ymin\": -9606782.69092524, \"xmax\": 6120761.958538111, \"ymax\": 9606782.690925248}" - }, - 32204: { - "label": "WGS 1972 UTM Zone 4N", - "defaultExtent": "{\"xmin\": -5120761.958538079, \"ymin\": -9606782.69092524, \"xmax\": 6120761.958538113, \"ymax\": 9606782.690925248}" - }, - 32205: { - "label": "WGS 1972 UTM Zone 5N", - "defaultExtent": "{\"xmin\": -5120761.958538079, \"ymin\": -9606782.69092524, \"xmax\": 6120761.958538111, \"ymax\": 9606782.690925248}" - }, - 32206: { - "label": "WGS 1972 UTM Zone 6N", - "defaultExtent": "{\"xmin\": -5120761.958538087, \"ymin\": -9606782.69092524, \"xmax\": 6120761.958538111, \"ymax\": 9606782.690925248}" - }, - 32207: { - "label": "WGS 1972 UTM Zone 7N", - "defaultExtent": "{\"xmin\": -5120761.958538079, \"ymin\": -9606782.69092524, \"xmax\": 6120761.958538113, \"ymax\": 9606782.690925248}" - }, - 32208: { - "label": "WGS 1972 UTM Zone 8N", - "defaultExtent": "{\"xmin\": -5120760.159136499, \"ymin\": -9606782.690946043, \"xmax\": 6120761.958538103, \"ymax\": 9606782.690946037}" - }, - 32209: { - "label": "WGS 1972 UTM Zone 9N", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": -9606782.690946043, \"xmax\": 6120761.958538103, \"ymax\": 9606782.690946037}" - }, - 32210: { - "label": "WGS 1972 UTM Zone 10N", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": -9606782.690946043, \"xmax\": 6120761.958538105, \"ymax\": 9606782.690946037}" - }, - 32211: { - "label": "WGS 1972 UTM Zone 11N", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": -9606782.690946043, \"xmax\": 6120761.958538103, \"ymax\": 9606782.690946037}" - }, - 32212: { - "label": "WGS 1972 UTM Zone 12N", - "defaultExtent": "{\"xmin\": -5120761.958538101, \"ymin\": -9606782.690946043, \"xmax\": 6120761.958538103, \"ymax\": 9606782.690946037}" - }, - 32213: { - "label": "WGS 1972 UTM Zone 13N", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": -9606782.690946043, \"xmax\": 6120761.958538103, \"ymax\": 9606782.690946037}" - }, - 32214: { - "label": "WGS 1972 UTM Zone 14N", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": -9606782.690946043, \"xmax\": 6120761.958538103, \"ymax\": 9606782.690946037}" - }, - 32215: { - "label": "WGS 1972 UTM Zone 15N", - "defaultExtent": "{\"xmin\": -5120761.958538101, \"ymin\": -9606782.690946043, \"xmax\": 6120761.958538103, \"ymax\": 9606782.690946037}" - }, - 32216: { - "label": "WGS 1972 UTM Zone 16N", - "defaultExtent": "{\"xmin\": -5120761.958538101, \"ymin\": -9606782.690946044, \"xmax\": 6120761.958538103, \"ymax\": 9606782.690946037}" - }, - 32217: { - "label": "WGS 1972 UTM Zone 17N", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": -9606782.690946043, \"xmax\": 6120761.958538103, \"ymax\": 9606782.690946037}" - }, - 32218: { - "label": "WGS 1972 UTM Zone 18N", - "defaultExtent": "{\"xmin\": -5120761.958538105, \"ymin\": -9606782.690946043, \"xmax\": 6120761.958538103, \"ymax\": 9606782.690946037}" - }, - 32219: { - "label": "WGS 1972 UTM Zone 19N", - "defaultExtent": "{\"xmin\": -5120761.958538105, \"ymin\": -9606782.690946043, \"xmax\": 6120761.958538103, \"ymax\": 9606782.690946037}" - }, - 32220: { - "label": "WGS 1972 UTM Zone 20N", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": -9606782.690946043, \"xmax\": 6120761.958538103, \"ymax\": 9606782.690946037}" - }, - 32221: { - "label": "WGS 1972 UTM Zone 21N", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": -9606782.690946043, \"xmax\": 6120761.958538103, \"ymax\": 9606782.690946037}" - }, - 32222: { - "label": "WGS 1972 UTM Zone 22N", - "defaultExtent": "{\"xmin\": -5120761.958538104, \"ymin\": -9606782.690946043, \"xmax\": 6120761.958538103, \"ymax\": 9606782.690946037}" - }, - 32223: { - "label": "WGS 1972 UTM Zone 23N", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": -9606782.690946043, \"xmax\": 6120761.958538103, \"ymax\": 9606782.690946037}" - }, - 32224: { - "label": "WGS 1972 UTM Zone 24N", - "defaultExtent": "{\"xmin\": -5120761.958538102, \"ymin\": -9606782.690946043, \"xmax\": 6120761.958538103, \"ymax\": 9606782.690946037}" - }, - 32225: { - "label": "WGS 1972 UTM Zone 25N", - "defaultExtent": "{\"xmin\": -5120761.958538102, \"ymin\": -9606782.690946043, \"xmax\": 6120761.958538103, \"ymax\": 9606782.690946037}" - }, - 32226: { - "label": "WGS 1972 UTM Zone 26N", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": -9606782.690946043, \"xmax\": 6120761.958538103, \"ymax\": 9606782.690946037}" - }, - 32227: { - "label": "WGS 1972 UTM Zone 27N", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": -9606782.690946043, \"xmax\": 6120761.958538103, \"ymax\": 9606782.690946037}" - }, - 32228: { - "label": "WGS 1972 UTM Zone 28N", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": -9606782.690946043, \"xmax\": 6120761.958538103, \"ymax\": 9606782.690946037}" - }, - 32229: { - "label": "WGS 1972 UTM Zone 29N", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": -9606782.690946043, \"xmax\": 6120761.958538103, \"ymax\": 9606782.690946037}" - }, - 32230: { - "label": "WGS 1972 UTM Zone 30N", - "defaultExtent": "{\"xmin\": -5120761.958538104, \"ymin\": -9606782.690946043, \"xmax\": 6120761.958538103, \"ymax\": 9606782.690946037}" - }, - 32231: { - "label": "WGS 1972 UTM Zone 31N", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": -9606782.690946043, \"xmax\": 6120761.958538104, \"ymax\": 9606782.690946037}" - }, - 32232: { - "label": "WGS 1972 UTM Zone 32N", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": -9606782.690946043, \"xmax\": 6120761.958538103, \"ymax\": 9606782.690946037}" - }, - 32233: { - "label": "WGS 1972 UTM Zone 33N", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": -9606782.690946043, \"xmax\": 6120761.958538103, \"ymax\": 9606782.690946037}" - }, - 32234: { - "label": "WGS 1972 UTM Zone 34N", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": -9606782.690946043, \"xmax\": 6120761.958538103, \"ymax\": 9606782.690946037}" - }, - 32235: { - "label": "WGS 1972 UTM Zone 35N", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": -9606782.690946043, \"xmax\": 6120761.958538103, \"ymax\": 9606782.690946037}" - }, - 32236: { - "label": "WGS 1972 UTM Zone 36N", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": -9606782.690946043, \"xmax\": 6120761.958538102, \"ymax\": 9606782.690946037}" - }, - 32237: { - "label": "WGS 1972 UTM Zone 37N", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": -9606782.690946043, \"xmax\": 6120761.958538102, \"ymax\": 9606782.690946037}" - }, - 32238: { - "label": "WGS 1972 UTM Zone 38N", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": -9606782.690946043, \"xmax\": 6120761.958538103, \"ymax\": 9606782.690946037}" - }, - 32239: { - "label": "WGS 1972 UTM Zone 39N", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": -9606782.690946043, \"xmax\": 6120761.958538104, \"ymax\": 9606782.690946037}" - }, - 32240: { - "label": "WGS 1972 UTM Zone 40N", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": -9606782.690946043, \"xmax\": 6120761.958538103, \"ymax\": 9606782.690946037}" - }, - 32241: { - "label": "WGS 1972 UTM Zone 41N", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": -9606782.690946043, \"xmax\": 6120761.958538103, \"ymax\": 9606782.690946037}" - }, - 32242: { - "label": "WGS 1972 UTM Zone 42N", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": -9606782.690946043, \"xmax\": 6120761.958538105, \"ymax\": 9606782.690946037}" - }, - 32243: { - "label": "WGS 1972 UTM Zone 43N", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": -9606782.690946043, \"xmax\": 6120761.958538105, \"ymax\": 9606782.690946037}" - }, - 32244: { - "label": "WGS 1972 UTM Zone 44N", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": -9606782.690946043, \"xmax\": 6120761.958538103, \"ymax\": 9606782.690946037}" - }, - 32245: { - "label": "WGS 1972 UTM Zone 45N", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": -9606782.690946044, \"xmax\": 6120761.958538101, \"ymax\": 9606782.690946037}" - }, - 32246: { - "label": "WGS 1972 UTM Zone 46N", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": -9606782.690946043, \"xmax\": 6120761.958538101, \"ymax\": 9606782.690946037}" - }, - 32247: { - "label": "WGS 1972 UTM Zone 47N", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": -9606782.690946043, \"xmax\": 6120761.958538103, \"ymax\": 9606782.690946037}" - }, - 32248: { - "label": "WGS 1972 UTM Zone 48N", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": -9606782.690946043, \"xmax\": 6120761.958538103, \"ymax\": 9606782.690946037}" - }, - 32249: { - "label": "WGS 1972 UTM Zone 49N", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": -9606782.690946043, \"xmax\": 6120761.958538101, \"ymax\": 9606782.690946037}" - }, - 32250: { - "label": "WGS 1972 UTM Zone 50N", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": -9606782.690946043, \"xmax\": 6120761.958538103, \"ymax\": 9606782.690946037}" - }, - 32251: { - "label": "WGS 1972 UTM Zone 51N", - "defaultExtent": "{\"xmin\": -5120761.958538105, \"ymin\": -9606782.690946043, \"xmax\": 6120761.958538103, \"ymax\": 9606782.690946037}" - }, - 32252: { - "label": "WGS 1972 UTM Zone 52N", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": -9606782.690946043, \"xmax\": 6120761.958538103, \"ymax\": 9606782.690946037}" - }, - 32253: { - "label": "WGS 1972 UTM Zone 53N", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": -9606782.69094604, \"xmax\": 6120760.159136499, \"ymax\": 9606782.690946037}" - }, - 32254: { - "label": "WGS 1972 UTM Zone 54N", - "defaultExtent": "{\"xmin\": -5120761.958538095, \"ymin\": -9606782.69092524, \"xmax\": 6120761.958538111, \"ymax\": 9606782.690925248}" - }, - 32255: { - "label": "WGS 1972 UTM Zone 55N", - "defaultExtent": "{\"xmin\": -5120761.958538093, \"ymin\": -9606782.69092524, \"xmax\": 6120761.958538111, \"ymax\": 9606782.690925248}" - }, - 32256: { - "label": "WGS 1972 UTM Zone 56N", - "defaultExtent": "{\"xmin\": -5120761.958538093, \"ymin\": -9606782.69092524, \"xmax\": 6120761.958538111, \"ymax\": 9606782.690925248}" - }, - 32257: { - "label": "WGS 1972 UTM Zone 57N", - "defaultExtent": "{\"xmin\": -5120761.958538087, \"ymin\": -9606782.69092524, \"xmax\": 6120761.958538111, \"ymax\": 9606782.690925248}" - }, - 32258: { - "label": "WGS 1972 UTM Zone 58N", - "defaultExtent": "{\"xmin\": -5120761.958538083, \"ymin\": -9606782.69092524, \"xmax\": 6120761.958538111, \"ymax\": 9606782.690925248}" - }, - 32259: { - "label": "WGS 1972 UTM Zone 59N", - "defaultExtent": "{\"xmin\": -5120761.958538083, \"ymin\": -9606782.69092524, \"xmax\": 6120761.958538111, \"ymax\": 9606782.690925248}" - }, - 32260: { - "label": "WGS 1972 UTM Zone 60N", - "defaultExtent": "{\"xmin\": -5120761.958538087, \"ymin\": -9606782.69092524, \"xmax\": 6120761.958538111, \"ymax\": 9606782.690925248}" - }, - 32301: { - "label": "WGS 1972 UTM Zone 1S", - "defaultExtent": "{\"xmin\": -5120761.958538079, \"ymin\": 393217.3090747595, \"xmax\": 6120761.958538111, \"ymax\": 19606782.690925248}" - }, - 32302: { - "label": "WGS 1972 UTM Zone 2S", - "defaultExtent": "{\"xmin\": -5120761.958538079, \"ymin\": 393217.3090747595, \"xmax\": 6120761.958538111, \"ymax\": 19606782.690925248}" - }, - 32303: { - "label": "WGS 1972 UTM Zone 3S", - "defaultExtent": "{\"xmin\": -5120761.958538087, \"ymin\": 393217.3090747595, \"xmax\": 6120761.958538111, \"ymax\": 19606782.690925248}" - }, - 32304: { - "label": "WGS 1972 UTM Zone 4S", - "defaultExtent": "{\"xmin\": -5120761.958538079, \"ymin\": 393217.3090747595, \"xmax\": 6120761.958538113, \"ymax\": 19606782.690925248}" - }, - 32305: { - "label": "WGS 1972 UTM Zone 5S", - "defaultExtent": "{\"xmin\": -5120761.958538079, \"ymin\": 393217.3090747595, \"xmax\": 6120761.958538111, \"ymax\": 19606782.690925248}" - }, - 32306: { - "label": "WGS 1972 UTM Zone 6S", - "defaultExtent": "{\"xmin\": -5120761.958538087, \"ymin\": 393217.3090747595, \"xmax\": 6120761.958538111, \"ymax\": 19606782.690925248}" - }, - 32307: { - "label": "WGS 1972 UTM Zone 7S", - "defaultExtent": "{\"xmin\": -5120761.958538079, \"ymin\": 393217.3090747595, \"xmax\": 6120761.958538113, \"ymax\": 19606782.690925248}" - }, - 32308: { - "label": "WGS 1972 UTM Zone 8S", - "defaultExtent": "{\"xmin\": -5120760.159136499, \"ymin\": 393217.30905395746, \"xmax\": 6120761.958538103, \"ymax\": 19606782.690946035}" - }, - 32309: { - "label": "WGS 1972 UTM Zone 9S", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": 393217.30905395746, \"xmax\": 6120761.958538103, \"ymax\": 19606782.690946035}" - }, - 32310: { - "label": "WGS 1972 UTM Zone 10S", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": 393217.30905395746, \"xmax\": 6120761.958538105, \"ymax\": 19606782.690946035}" - }, - 32311: { - "label": "WGS 1972 UTM Zone 11S", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": 393217.30905395746, \"xmax\": 6120761.958538103, \"ymax\": 19606782.690946035}" - }, - 32312: { - "label": "WGS 1972 UTM Zone 12S", - "defaultExtent": "{\"xmin\": -5120761.958538101, \"ymin\": 393217.30905395746, \"xmax\": 6120761.958538103, \"ymax\": 19606782.690946035}" - }, - 32313: { - "label": "WGS 1972 UTM Zone 13S", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": 393217.30905395746, \"xmax\": 6120761.958538103, \"ymax\": 19606782.690946035}" - }, - 32314: { - "label": "WGS 1972 UTM Zone 14S", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": 393217.30905395746, \"xmax\": 6120761.958538103, \"ymax\": 19606782.690946035}" - }, - 32315: { - "label": "WGS 1972 UTM Zone 15S", - "defaultExtent": "{\"xmin\": -5120761.958538101, \"ymin\": 393217.30905395746, \"xmax\": 6120761.958538103, \"ymax\": 19606782.690946035}" - }, - 32316: { - "label": "WGS 1972 UTM Zone 16S", - "defaultExtent": "{\"xmin\": -5120761.958538101, \"ymin\": 393217.3090539556, \"xmax\": 6120761.958538103, \"ymax\": 19606782.690946035}" - }, - 32317: { - "label": "WGS 1972 UTM Zone 17S", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": 393217.30905395746, \"xmax\": 6120761.958538103, \"ymax\": 19606782.690946035}" - }, - 32318: { - "label": "WGS 1972 UTM Zone 18S", - "defaultExtent": "{\"xmin\": -5120761.958538105, \"ymin\": 393217.30905395746, \"xmax\": 6120761.958538103, \"ymax\": 19606782.690946035}" - }, - 32319: { - "label": "WGS 1972 UTM Zone 19S", - "defaultExtent": "{\"xmin\": -5120761.958538105, \"ymin\": 393217.30905395746, \"xmax\": 6120761.958538103, \"ymax\": 19606782.690946035}" - }, - 32320: { - "label": "WGS 1972 UTM Zone 20S", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": 393217.30905395746, \"xmax\": 6120761.958538103, \"ymax\": 19606782.690946035}" - }, - 32321: { - "label": "WGS 1972 UTM Zone 21S", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": 393217.30905395746, \"xmax\": 6120761.958538103, \"ymax\": 19606782.690946035}" - }, - 32322: { - "label": "WGS 1972 UTM Zone 22S", - "defaultExtent": "{\"xmin\": -5120761.958538104, \"ymin\": 393217.30905395746, \"xmax\": 6120761.958538103, \"ymax\": 19606782.690946035}" - }, - 32323: { - "label": "WGS 1972 UTM Zone 23S", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": 393217.30905395746, \"xmax\": 6120761.958538103, \"ymax\": 19606782.690946035}" - }, - 32324: { - "label": "WGS 1972 UTM Zone 24S", - "defaultExtent": "{\"xmin\": -5120761.958538102, \"ymin\": 393217.30905395746, \"xmax\": 6120761.958538103, \"ymax\": 19606782.690946035}" - }, - 32325: { - "label": "WGS 1972 UTM Zone 25S", - "defaultExtent": "{\"xmin\": -5120761.958538102, \"ymin\": 393217.30905395746, \"xmax\": 6120761.958538103, \"ymax\": 19606782.690946035}" - }, - 32326: { - "label": "WGS 1972 UTM Zone 26S", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": 393217.30905395746, \"xmax\": 6120761.958538103, \"ymax\": 19606782.690946035}" - }, - 32327: { - "label": "WGS 1972 UTM Zone 27S", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": 393217.30905395746, \"xmax\": 6120761.958538103, \"ymax\": 19606782.690946035}" - }, - 32328: { - "label": "WGS 1972 UTM Zone 28S", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": 393217.30905395746, \"xmax\": 6120761.958538103, \"ymax\": 19606782.690946035}" - }, - 32329: { - "label": "WGS 1972 UTM Zone 29S", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": 393217.30905395746, \"xmax\": 6120761.958538103, \"ymax\": 19606782.690946035}" - }, - 32330: { - "label": "WGS 1972 UTM Zone 30S", - "defaultExtent": "{\"xmin\": -5120761.958538104, \"ymin\": 393217.30905395746, \"xmax\": 6120761.958538103, \"ymax\": 19606782.690946035}" - }, - 32331: { - "label": "WGS 1972 UTM Zone 31S", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": 393217.30905395746, \"xmax\": 6120761.958538104, \"ymax\": 19606782.690946035}" - }, - 32332: { - "label": "WGS 1972 UTM Zone 32S", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": 393217.30905395746, \"xmax\": 6120761.958538103, \"ymax\": 19606782.690946035}" - }, - 32333: { - "label": "WGS 1972 UTM Zone 33S", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": 393217.30905395746, \"xmax\": 6120761.958538103, \"ymax\": 19606782.690946035}" - }, - 32334: { - "label": "WGS 1972 UTM Zone 34S", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": 393217.30905395746, \"xmax\": 6120761.958538103, \"ymax\": 19606782.690946035}" - }, - 32335: { - "label": "WGS 1972 UTM Zone 35S", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": 393217.30905395746, \"xmax\": 6120761.958538103, \"ymax\": 19606782.690946035}" - }, - 32336: { - "label": "WGS 1972 UTM Zone 36S", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": 393217.30905395746, \"xmax\": 6120761.958538102, \"ymax\": 19606782.690946035}" - }, - 32337: { - "label": "WGS 1972 UTM Zone 37S", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": 393217.30905395746, \"xmax\": 6120761.958538102, \"ymax\": 19606782.690946035}" - }, - 32338: { - "label": "WGS 1972 UTM Zone 38S", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": 393217.30905395746, \"xmax\": 6120761.958538103, \"ymax\": 19606782.690946035}" - }, - 32339: { - "label": "WGS 1972 UTM Zone 39S", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": 393217.30905395746, \"xmax\": 6120761.958538104, \"ymax\": 19606782.690946035}" - }, - 32340: { - "label": "WGS 1972 UTM Zone 40S", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": 393217.30905395746, \"xmax\": 6120761.958538103, \"ymax\": 19606782.690946035}" - }, - 32341: { - "label": "WGS 1972 UTM Zone 41S", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": 393217.30905395746, \"xmax\": 6120761.958538103, \"ymax\": 19606782.690946035}" - }, - 32342: { - "label": "WGS 1972 UTM Zone 42S", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": 393217.30905395746, \"xmax\": 6120761.958538105, \"ymax\": 19606782.690946035}" - }, - 32343: { - "label": "WGS 1972 UTM Zone 43S", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": 393217.30905395746, \"xmax\": 6120761.958538105, \"ymax\": 19606782.690946035}" - }, - 32344: { - "label": "WGS 1972 UTM Zone 44S", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": 393217.30905395746, \"xmax\": 6120761.958538103, \"ymax\": 19606782.690946035}" - }, - 32345: { - "label": "WGS 1972 UTM Zone 45S", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": 393217.3090539556, \"xmax\": 6120761.958538101, \"ymax\": 19606782.690946035}" - }, - 32346: { - "label": "WGS 1972 UTM Zone 46S", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": 393217.30905395746, \"xmax\": 6120761.958538101, \"ymax\": 19606782.690946035}" - }, - 32347: { - "label": "WGS 1972 UTM Zone 47S", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": 393217.30905395746, \"xmax\": 6120761.958538103, \"ymax\": 19606782.690946035}" - }, - 32348: { - "label": "WGS 1972 UTM Zone 48S", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": 393217.30905395746, \"xmax\": 6120761.958538103, \"ymax\": 19606782.690946035}" - }, - 32349: { - "label": "WGS 1972 UTM Zone 49S", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": 393217.30905395746, \"xmax\": 6120761.958538101, \"ymax\": 19606782.690946035}" - }, - 32350: { - "label": "WGS 1972 UTM Zone 50S", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": 393217.30905395746, \"xmax\": 6120761.958538103, \"ymax\": 19606782.690946035}" - }, - 32351: { - "label": "WGS 1972 UTM Zone 51S", - "defaultExtent": "{\"xmin\": -5120761.958538105, \"ymin\": 393217.30905395746, \"xmax\": 6120761.958538103, \"ymax\": 19606782.690946035}" - }, - 32352: { - "label": "WGS 1972 UTM Zone 52S", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": 393217.30905395746, \"xmax\": 6120761.958538103, \"ymax\": 19606782.690946035}" - }, - 32353: { - "label": "WGS 1972 UTM Zone 53S", - "defaultExtent": "{\"xmin\": -5120761.958538103, \"ymin\": 393217.3090539593, \"xmax\": 6120760.159136499, \"ymax\": 19606782.690946035}" - }, - 32354: { - "label": "WGS 1972 UTM Zone 54S", - "defaultExtent": "{\"xmin\": -5120761.958538095, \"ymin\": 393217.3090747595, \"xmax\": 6120761.958538111, \"ymax\": 19606782.690925248}" - }, - 32355: { - "label": "WGS 1972 UTM Zone 55S", - "defaultExtent": "{\"xmin\": -5120761.958538093, \"ymin\": 393217.3090747595, \"xmax\": 6120761.958538111, \"ymax\": 19606782.690925248}" - }, - 32356: { - "label": "WGS 1972 UTM Zone 56S", - "defaultExtent": "{\"xmin\": -5120761.958538093, \"ymin\": 393217.3090747595, \"xmax\": 6120761.958538111, \"ymax\": 19606782.690925248}" - }, - 32357: { - "label": "WGS 1972 UTM Zone 57S", - "defaultExtent": "{\"xmin\": -5120761.958538087, \"ymin\": 393217.3090747595, \"xmax\": 6120761.958538111, \"ymax\": 19606782.690925248}" - }, - 32358: { - "label": "WGS 1972 UTM Zone 58S", - "defaultExtent": "{\"xmin\": -5120761.958538083, \"ymin\": 393217.3090747595, \"xmax\": 6120761.958538111, \"ymax\": 19606782.690925248}" - }, - 32359: { - "label": "WGS 1972 UTM Zone 59S", - "defaultExtent": "{\"xmin\": -5120761.958538083, \"ymin\": 393217.3090747595, \"xmax\": 6120761.958538111, \"ymax\": 19606782.690925248}" - }, - 32360: { - "label": "WGS 1972 UTM Zone 60S", - "defaultExtent": "{\"xmin\": -5120761.958538087, \"ymin\": 393217.3090747595, \"xmax\": 6120761.958538111, \"ymax\": 19606782.690925248}" - }, - 32601: { - "label": "WGS 1984 UTM Zone 1N", - "defaultExtent": "{\"xmin\": -5120763.76769941, \"ymin\": -9606785.535026718, \"xmax\": 6120763.767699442, \"ymax\": 9606785.535026727}" - }, - 32602: { - "label": "WGS 1984 UTM Zone 2N", - "defaultExtent": "{\"xmin\": -5120763.76769941, \"ymin\": -9606785.535026718, \"xmax\": 6120763.767699442, \"ymax\": 9606785.535026727}" - }, - 32603: { - "label": "WGS 1984 UTM Zone 3N", - "defaultExtent": "{\"xmin\": -5120763.767699419, \"ymin\": -9606785.535026718, \"xmax\": 6120763.767699442, \"ymax\": 9606785.535026727}" - }, - 32604: { - "label": "WGS 1984 UTM Zone 4N", - "defaultExtent": "{\"xmin\": -5120763.76769941, \"ymin\": -9606785.535026718, \"xmax\": 6120763.767699445, \"ymax\": 9606785.535026727}" - }, - 32605: { - "label": "WGS 1984 UTM Zone 5N", - "defaultExtent": "{\"xmin\": -5120763.76769941, \"ymin\": -9606785.535026718, \"xmax\": 6120763.767699442, \"ymax\": 9606785.535026727}" - }, - 32606: { - "label": "WGS 1984 UTM Zone 6N", - "defaultExtent": "{\"xmin\": -5120763.767699419, \"ymin\": -9606785.535026718, \"xmax\": 6120763.767699442, \"ymax\": 9606785.535026727}" - }, - 32607: { - "label": "WGS 1984 UTM Zone 7N", - "defaultExtent": "{\"xmin\": -5120763.76769941, \"ymin\": -9606785.535026718, \"xmax\": 6120763.767699445, \"ymax\": 9606785.535026727}" - }, - 32608: { - "label": "WGS 1984 UTM Zone 8N", - "defaultExtent": "{\"xmin\": -5120761.968297224, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699434, \"ymax\": 9606785.535047516}" - }, - 32609: { - "label": "WGS 1984 UTM Zone 9N", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699434, \"ymax\": 9606785.535047516}" - }, - 32610: { - "label": "WGS 1984 UTM Zone 10N", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699436, \"ymax\": 9606785.535047516}" - }, - 32611: { - "label": "WGS 1984 UTM Zone 11N", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699434, \"ymax\": 9606785.535047516}" - }, - 32612: { - "label": "WGS 1984 UTM Zone 12N", - "defaultExtent": "{\"xmin\": -5120763.767699433, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699434, \"ymax\": 9606785.535047516}" - }, - 32613: { - "label": "WGS 1984 UTM Zone 13N", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699434, \"ymax\": 9606785.535047516}" - }, - 32614: { - "label": "WGS 1984 UTM Zone 14N", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699434, \"ymax\": 9606785.535047516}" - }, - 32615: { - "label": "WGS 1984 UTM Zone 15N", - "defaultExtent": "{\"xmin\": -5120763.767699433, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699434, \"ymax\": 9606785.535047516}" - }, - 32616: { - "label": "WGS 1984 UTM Zone 16N", - "defaultExtent": "{\"xmin\": -5120763.767699433, \"ymin\": -9606785.535047526, \"xmax\": 6120763.767699434, \"ymax\": 9606785.535047516}" - }, - 32617: { - "label": "WGS 1984 UTM Zone 17N", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699434, \"ymax\": 9606785.535047516}" - }, - 32618: { - "label": "WGS 1984 UTM Zone 18N", - "defaultExtent": "{\"xmin\": -5120763.767699436, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699434, \"ymax\": 9606785.535047516}" - }, - 32619: { - "label": "WGS 1984 UTM Zone 19N", - "defaultExtent": "{\"xmin\": -5120763.767699436, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699434, \"ymax\": 9606785.535047516}" - }, - 32620: { - "label": "WGS 1984 UTM Zone 20N", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699434, \"ymax\": 9606785.535047516}" - }, - 32621: { - "label": "WGS 1984 UTM Zone 21N", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699434, \"ymax\": 9606785.535047516}" - }, - 32622: { - "label": "WGS 1984 UTM Zone 22N", - "defaultExtent": "{\"xmin\": -5120763.767699435, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699434, \"ymax\": 9606785.535047516}" - }, - 32623: { - "label": "WGS 1984 UTM Zone 23N", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699434, \"ymax\": 9606785.535047516}" - }, - 32624: { - "label": "WGS 1984 UTM Zone 24N", - "defaultExtent": "{\"xmin\": -5120763.7676994335, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699434, \"ymax\": 9606785.535047516}" - }, - 32625: { - "label": "WGS 1984 UTM Zone 25N", - "defaultExtent": "{\"xmin\": -5120763.7676994335, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699434, \"ymax\": 9606785.535047516}" - }, - 32626: { - "label": "WGS 1984 UTM Zone 26N", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699434, \"ymax\": 9606785.535047516}" - }, - 32627: { - "label": "WGS 1984 UTM Zone 27N", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699434, \"ymax\": 9606785.535047516}" - }, - 32628: { - "label": "WGS 1984 UTM Zone 28N", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699434, \"ymax\": 9606785.535047516}" - }, - 32629: { - "label": "WGS 1984 UTM Zone 29N", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699434, \"ymax\": 9606785.535047516}" - }, - 32630: { - "label": "WGS 1984 UTM Zone 30N", - "defaultExtent": "{\"xmin\": -5120763.767699435, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699434, \"ymax\": 9606785.535047516}" - }, - 32631: { - "label": "WGS 1984 UTM Zone 31N", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699435, \"ymax\": 9606785.535047516}" - }, - 32632: { - "label": "WGS 1984 UTM Zone 32N", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699434, \"ymax\": 9606785.535047516}" - }, - 32633: { - "label": "WGS 1984 UTM Zone 33N", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699434, \"ymax\": 9606785.535047516}" - }, - 32634: { - "label": "WGS 1984 UTM Zone 34N", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699434, \"ymax\": 9606785.535047516}" - }, - 32635: { - "label": "WGS 1984 UTM Zone 35N", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699434, \"ymax\": 9606785.535047516}" - }, - 32636: { - "label": "WGS 1984 UTM Zone 36N", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": -9606785.535047522, \"xmax\": 6120763.7676994335, \"ymax\": 9606785.535047516}" - }, - 32637: { - "label": "WGS 1984 UTM Zone 37N", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": -9606785.535047522, \"xmax\": 6120763.7676994335, \"ymax\": 9606785.535047516}" - }, - 32638: { - "label": "WGS 1984 UTM Zone 38N", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699434, \"ymax\": 9606785.535047516}" - }, - 32639: { - "label": "WGS 1984 UTM Zone 39N", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699435, \"ymax\": 9606785.535047516}" - }, - 32640: { - "label": "WGS 1984 UTM Zone 40N", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699434, \"ymax\": 9606785.535047516}" - }, - 32641: { - "label": "WGS 1984 UTM Zone 41N", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699434, \"ymax\": 9606785.535047516}" - }, - 32642: { - "label": "WGS 1984 UTM Zone 42N", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699436, \"ymax\": 9606785.535047516}" - }, - 32643: { - "label": "WGS 1984 UTM Zone 43N", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699436, \"ymax\": 9606785.535047516}" - }, - 32644: { - "label": "WGS 1984 UTM Zone 44N", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699434, \"ymax\": 9606785.535047516}" - }, - 32645: { - "label": "WGS 1984 UTM Zone 45N", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": -9606785.535047526, \"xmax\": 6120763.767699433, \"ymax\": 9606785.535047516}" - }, - 32646: { - "label": "WGS 1984 UTM Zone 46N", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699433, \"ymax\": 9606785.535047516}" - }, - 32647: { - "label": "WGS 1984 UTM Zone 47N", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699434, \"ymax\": 9606785.535047516}" - }, - 32648: { - "label": "WGS 1984 UTM Zone 48N", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699434, \"ymax\": 9606785.535047516}" - }, - 32649: { - "label": "WGS 1984 UTM Zone 49N", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699433, \"ymax\": 9606785.535047516}" - }, - 32650: { - "label": "WGS 1984 UTM Zone 50N", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699434, \"ymax\": 9606785.535047516}" - }, - 32651: { - "label": "WGS 1984 UTM Zone 51N", - "defaultExtent": "{\"xmin\": -5120763.767699436, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699434, \"ymax\": 9606785.535047516}" - }, - 32652: { - "label": "WGS 1984 UTM Zone 52N", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699434, \"ymax\": 9606785.535047516}" - }, - 32653: { - "label": "WGS 1984 UTM Zone 53N", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": -9606785.53504752, \"xmax\": 6120761.968297224, \"ymax\": 9606785.535047516}" - }, - 32654: { - "label": "WGS 1984 UTM Zone 54N", - "defaultExtent": "{\"xmin\": -5120763.767699427, \"ymin\": -9606785.535026718, \"xmax\": 6120763.767699442, \"ymax\": 9606785.535026727}" - }, - 32655: { - "label": "WGS 1984 UTM Zone 55N", - "defaultExtent": "{\"xmin\": -5120763.767699424, \"ymin\": -9606785.535026718, \"xmax\": 6120763.767699442, \"ymax\": 9606785.535026727}" - }, - 32656: { - "label": "WGS 1984 UTM Zone 56N", - "defaultExtent": "{\"xmin\": -5120763.767699424, \"ymin\": -9606785.535026718, \"xmax\": 6120763.767699442, \"ymax\": 9606785.535026727}" - }, - 32657: { - "label": "WGS 1984 UTM Zone 57N", - "defaultExtent": "{\"xmin\": -5120763.767699419, \"ymin\": -9606785.535026718, \"xmax\": 6120763.767699442, \"ymax\": 9606785.535026727}" - }, - 32658: { - "label": "WGS 1984 UTM Zone 58N", - "defaultExtent": "{\"xmin\": -5120763.767699414, \"ymin\": -9606785.535026718, \"xmax\": 6120763.767699442, \"ymax\": 9606785.535026727}" - }, - 32659: { - "label": "WGS 1984 UTM Zone 59N", - "defaultExtent": "{\"xmin\": -5120763.767699414, \"ymin\": -9606785.535026718, \"xmax\": 6120763.767699442, \"ymax\": 9606785.535026727}" - }, - 32660: { - "label": "WGS 1984 UTM Zone 60N", - "defaultExtent": "{\"xmin\": -5120763.767699419, \"ymin\": -9606785.535026718, \"xmax\": 6120763.767699442, \"ymax\": 9606785.535026727}" - }, - 32661: { - "label": "UPS North", - "defaultExtent": "{\"xmin\": -28567784.109254938, \"ymin\": -28567784.109255087, \"xmax\": 32567784.109254938, \"ymax\": 32567784.109254476}" - }, - 32662: { - "label": "WGS 1984 Plate Carree", - "defaultExtent": "{\"xmin\": -20037507.0671618, \"ymin\": -9467848.237116976, \"xmax\": 20037507.0671618, \"ymax\": 9467848.237116976}" - }, - 32664: { - "label": "WGS 1984 BLM Zone 14N ftUS", - "defaultExtent": "{\"xmin\": -16800372.461193893, \"ymin\": -31518262.209568407, \"xmax\": 20081205.794527225, \"ymax\": 31518262.20956839}" - }, - 32665: { - "label": "WGS 1984 BLM Zone 15N ftUS", - "defaultExtent": "{\"xmin\": -16800372.461193886, \"ymin\": -31518262.209568407, \"xmax\": 20081205.794527225, \"ymax\": 31518262.20956839}" - }, - 32666: { - "label": "WGS 1984 BLM Zone 16N ftUS", - "defaultExtent": "{\"xmin\": -16800372.461193886, \"ymin\": -31518262.20956842, \"xmax\": 20081205.794527225, \"ymax\": 31518262.20956839}" - }, - 32667: { - "label": "WGS 1984 BLM Zone 17N ftUS", - "defaultExtent": "{\"xmin\": -16800372.461193893, \"ymin\": -31518262.209568407, \"xmax\": 20081205.794527225, \"ymax\": 31518262.20956839}" - }, - 32701: { - "label": "WGS 1984 UTM Zone 1S", - "defaultExtent": "{\"xmin\": -5120763.76769941, \"ymin\": 393214.46497328207, \"xmax\": 6120763.767699442, \"ymax\": 19606785.53502673}" - }, - 32702: { - "label": "WGS 1984 UTM Zone 2S", - "defaultExtent": "{\"xmin\": -5120763.76769941, \"ymin\": 393214.46497328207, \"xmax\": 6120763.767699442, \"ymax\": 19606785.53502673}" - }, - 32703: { - "label": "WGS 1984 UTM Zone 3S", - "defaultExtent": "{\"xmin\": -5120763.767699419, \"ymin\": 393214.46497328207, \"xmax\": 6120763.767699442, \"ymax\": 19606785.53502673}" - }, - 32704: { - "label": "WGS 1984 UTM Zone 4S", - "defaultExtent": "{\"xmin\": -5120763.76769941, \"ymin\": 393214.46497328207, \"xmax\": 6120763.767699445, \"ymax\": 19606785.53502673}" - }, - 32705: { - "label": "WGS 1984 UTM Zone 5S", - "defaultExtent": "{\"xmin\": -5120763.76769941, \"ymin\": 393214.46497328207, \"xmax\": 6120763.767699442, \"ymax\": 19606785.53502673}" - }, - 32706: { - "label": "WGS 1984 UTM Zone 6S", - "defaultExtent": "{\"xmin\": -5120763.767699419, \"ymin\": 393214.46497328207, \"xmax\": 6120763.767699442, \"ymax\": 19606785.53502673}" - }, - 32707: { - "label": "WGS 1984 UTM Zone 7S", - "defaultExtent": "{\"xmin\": -5120763.76769941, \"ymin\": 393214.46497328207, \"xmax\": 6120763.767699445, \"ymax\": 19606785.53502673}" - }, - 32708: { - "label": "WGS 1984 UTM Zone 8S", - "defaultExtent": "{\"xmin\": -5120761.968297224, \"ymin\": 393214.4649524782, \"xmax\": 6120763.767699434, \"ymax\": 19606785.535047516}" - }, - 32709: { - "label": "WGS 1984 UTM Zone 9S", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": 393214.4649524782, \"xmax\": 6120763.767699434, \"ymax\": 19606785.535047516}" - }, - 32710: { - "label": "WGS 1984 UTM Zone 10S", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": 393214.4649524782, \"xmax\": 6120763.767699436, \"ymax\": 19606785.535047516}" - }, - 32711: { - "label": "WGS 1984 UTM Zone 11S", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": 393214.4649524782, \"xmax\": 6120763.767699434, \"ymax\": 19606785.535047516}" - }, - 32712: { - "label": "WGS 1984 UTM Zone 12S", - "defaultExtent": "{\"xmin\": -5120763.767699433, \"ymin\": 393214.4649524782, \"xmax\": 6120763.767699434, \"ymax\": 19606785.535047516}" - }, - 32713: { - "label": "WGS 1984 UTM Zone 13S", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": 393214.4649524782, \"xmax\": 6120763.767699434, \"ymax\": 19606785.535047516}" - }, - 32714: { - "label": "WGS 1984 UTM Zone 14S", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": 393214.4649524782, \"xmax\": 6120763.767699434, \"ymax\": 19606785.535047516}" - }, - 32715: { - "label": "WGS 1984 UTM Zone 15S", - "defaultExtent": "{\"xmin\": -5120763.767699433, \"ymin\": 393214.4649524782, \"xmax\": 6120763.767699434, \"ymax\": 19606785.535047516}" - }, - 32716: { - "label": "WGS 1984 UTM Zone 16S", - "defaultExtent": "{\"xmin\": -5120763.767699433, \"ymin\": 393214.46495247446, \"xmax\": 6120763.767699434, \"ymax\": 19606785.535047516}" - }, - 32717: { - "label": "WGS 1984 UTM Zone 17S", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": 393214.4649524782, \"xmax\": 6120763.767699434, \"ymax\": 19606785.535047516}" - }, - 32718: { - "label": "WGS 1984 UTM Zone 18S", - "defaultExtent": "{\"xmin\": -5120763.767699436, \"ymin\": 393214.4649524782, \"xmax\": 6120763.767699434, \"ymax\": 19606785.535047516}" - }, - 32719: { - "label": "WGS 1984 UTM Zone 19S", - "defaultExtent": "{\"xmin\": -5120763.767699436, \"ymin\": 393214.4649524782, \"xmax\": 6120763.767699434, \"ymax\": 19606785.535047516}" - }, - 32720: { - "label": "WGS 1984 UTM Zone 20S", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": 393214.4649524782, \"xmax\": 6120763.767699434, \"ymax\": 19606785.535047516}" - }, - 32721: { - "label": "WGS 1984 UTM Zone 21S", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": 393214.4649524782, \"xmax\": 6120763.767699434, \"ymax\": 19606785.535047516}" - }, - 32722: { - "label": "WGS 1984 UTM Zone 22S", - "defaultExtent": "{\"xmin\": -5120763.767699435, \"ymin\": 393214.4649524782, \"xmax\": 6120763.767699434, \"ymax\": 19606785.535047516}" - }, - 32723: { - "label": "WGS 1984 UTM Zone 23S", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": 393214.4649524782, \"xmax\": 6120763.767699434, \"ymax\": 19606785.535047516}" - }, - 32724: { - "label": "WGS 1984 UTM Zone 24S", - "defaultExtent": "{\"xmin\": -5120763.7676994335, \"ymin\": 393214.4649524782, \"xmax\": 6120763.767699434, \"ymax\": 19606785.535047516}" - }, - 32725: { - "label": "WGS 1984 UTM Zone 25S", - "defaultExtent": "{\"xmin\": -5120763.7676994335, \"ymin\": 393214.4649524782, \"xmax\": 6120763.767699434, \"ymax\": 19606785.535047516}" - }, - 32726: { - "label": "WGS 1984 UTM Zone 26S", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": 393214.4649524782, \"xmax\": 6120763.767699434, \"ymax\": 19606785.535047516}" - }, - 32727: { - "label": "WGS 1984 UTM Zone 27S", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": 393214.4649524782, \"xmax\": 6120763.767699434, \"ymax\": 19606785.535047516}" - }, - 32728: { - "label": "WGS 1984 UTM Zone 28S", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": 393214.4649524782, \"xmax\": 6120763.767699434, \"ymax\": 19606785.535047516}" - }, - 32729: { - "label": "WGS 1984 UTM Zone 29S", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": 393214.4649524782, \"xmax\": 6120763.767699434, \"ymax\": 19606785.535047516}" - }, - 32730: { - "label": "WGS 1984 UTM Zone 30S", - "defaultExtent": "{\"xmin\": -5120763.767699435, \"ymin\": 393214.4649524782, \"xmax\": 6120763.767699434, \"ymax\": 19606785.535047516}" - }, - 32731: { - "label": "WGS 1984 UTM Zone 31S", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": 393214.4649524782, \"xmax\": 6120763.767699435, \"ymax\": 19606785.535047516}" - }, - 32732: { - "label": "WGS 1984 UTM Zone 32S", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": 393214.4649524782, \"xmax\": 6120763.767699434, \"ymax\": 19606785.535047516}" - }, - 32733: { - "label": "WGS 1984 UTM Zone 33S", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": 393214.4649524782, \"xmax\": 6120763.767699434, \"ymax\": 19606785.535047516}" - }, - 32734: { - "label": "WGS 1984 UTM Zone 34S", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": 393214.4649524782, \"xmax\": 6120763.767699434, \"ymax\": 19606785.535047516}" - }, - 32735: { - "label": "WGS 1984 UTM Zone 35S", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": 393214.4649524782, \"xmax\": 6120763.767699434, \"ymax\": 19606785.535047516}" - }, - 32736: { - "label": "WGS 1984 UTM Zone 36S", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": 393214.4649524782, \"xmax\": 6120763.7676994335, \"ymax\": 19606785.535047516}" - }, - 32737: { - "label": "WGS 1984 UTM Zone 37S", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": 393214.4649524782, \"xmax\": 6120763.7676994335, \"ymax\": 19606785.535047516}" - }, - 32738: { - "label": "WGS 1984 UTM Zone 38S", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": 393214.4649524782, \"xmax\": 6120763.767699434, \"ymax\": 19606785.535047516}" - }, - 32739: { - "label": "WGS 1984 UTM Zone 39S", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": 393214.4649524782, \"xmax\": 6120763.767699435, \"ymax\": 19606785.535047516}" - }, - 32740: { - "label": "WGS 1984 UTM Zone 40S", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": 393214.4649524782, \"xmax\": 6120763.767699434, \"ymax\": 19606785.535047516}" - }, - 32741: { - "label": "WGS 1984 UTM Zone 41S", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": 393214.4649524782, \"xmax\": 6120763.767699434, \"ymax\": 19606785.535047516}" - }, - 32742: { - "label": "WGS 1984 UTM Zone 42S", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": 393214.4649524782, \"xmax\": 6120763.767699436, \"ymax\": 19606785.535047516}" - }, - 32743: { - "label": "WGS 1984 UTM Zone 43S", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": 393214.4649524782, \"xmax\": 6120763.767699436, \"ymax\": 19606785.535047516}" - }, - 32744: { - "label": "WGS 1984 UTM Zone 44S", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": 393214.4649524782, \"xmax\": 6120763.767699434, \"ymax\": 19606785.535047516}" - }, - 32745: { - "label": "WGS 1984 UTM Zone 45S", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": 393214.46495247446, \"xmax\": 6120763.767699433, \"ymax\": 19606785.535047516}" - }, - 32746: { - "label": "WGS 1984 UTM Zone 46S", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": 393214.4649524782, \"xmax\": 6120763.767699433, \"ymax\": 19606785.535047516}" - }, - 32747: { - "label": "WGS 1984 UTM Zone 47S", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": 393214.4649524782, \"xmax\": 6120763.767699434, \"ymax\": 19606785.535047516}" - }, - 32748: { - "label": "WGS 1984 UTM Zone 48S", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": 393214.4649524782, \"xmax\": 6120763.767699434, \"ymax\": 19606785.535047516}" - }, - 32749: { - "label": "WGS 1984 UTM Zone 49S", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": 393214.4649524782, \"xmax\": 6120763.767699433, \"ymax\": 19606785.535047516}" - }, - 32750: { - "label": "WGS 1984 UTM Zone 50S", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": 393214.4649524782, \"xmax\": 6120763.767699434, \"ymax\": 19606785.535047516}" - }, - 32751: { - "label": "WGS 1984 UTM Zone 51S", - "defaultExtent": "{\"xmin\": -5120763.767699436, \"ymin\": 393214.4649524782, \"xmax\": 6120763.767699434, \"ymax\": 19606785.535047516}" - }, - 32752: { - "label": "WGS 1984 UTM Zone 52S", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": 393214.4649524782, \"xmax\": 6120763.767699434, \"ymax\": 19606785.535047516}" - }, - 32753: { - "label": "WGS 1984 UTM Zone 53S", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": 393214.46495248005, \"xmax\": 6120761.968297224, \"ymax\": 19606785.535047516}" - }, - 32754: { - "label": "WGS 1984 UTM Zone 54S", - "defaultExtent": "{\"xmin\": -5120763.767699427, \"ymin\": 393214.46497328207, \"xmax\": 6120763.767699442, \"ymax\": 19606785.53502673}" - }, - 32755: { - "label": "WGS 1984 UTM Zone 55S", - "defaultExtent": "{\"xmin\": -5120763.767699424, \"ymin\": 393214.46497328207, \"xmax\": 6120763.767699442, \"ymax\": 19606785.53502673}" - }, - 32756: { - "label": "WGS 1984 UTM Zone 56S", - "defaultExtent": "{\"xmin\": -5120763.767699424, \"ymin\": 393214.46497328207, \"xmax\": 6120763.767699442, \"ymax\": 19606785.53502673}" - }, - 32757: { - "label": "WGS 1984 UTM Zone 57S", - "defaultExtent": "{\"xmin\": -5120763.767699419, \"ymin\": 393214.46497328207, \"xmax\": 6120763.767699442, \"ymax\": 19606785.53502673}" - }, - 32758: { - "label": "WGS 1984 UTM Zone 58S", - "defaultExtent": "{\"xmin\": -5120763.767699414, \"ymin\": 393214.46497328207, \"xmax\": 6120763.767699442, \"ymax\": 19606785.53502673}" - }, - 32759: { - "label": "WGS 1984 UTM Zone 59S", - "defaultExtent": "{\"xmin\": -5120763.767699414, \"ymin\": 393214.46497328207, \"xmax\": 6120763.767699442, \"ymax\": 19606785.53502673}" - }, - 32760: { - "label": "WGS 1984 UTM Zone 60S", - "defaultExtent": "{\"xmin\": -5120763.767699419, \"ymin\": 393214.46497328207, \"xmax\": 6120763.767699442, \"ymax\": 19606785.53502673}" - }, - 32761: { - "label": "UPS South", - "defaultExtent": "{\"xmin\": -28567784.109254938, \"ymin\": -28567784.109254476, \"xmax\": 32567784.109254938, \"ymax\": 32567784.109255087}" - }, - 32766: { - "label": "WGS 1984 TM 36 SE", - "defaultExtent": "{\"xmin\": -5120763.767699434, \"ymin\": 393214.4649524782, \"xmax\": 6120763.767699434, \"ymax\": 19606785.535047516}" - }, - 37002: { - "label": "GCS Fischer 1960", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 37003: { - "label": "GCS Fischer 1968", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 37004: { - "label": "GCS Fischer Modified", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 37005: { - "label": "GCS Hough 1960", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 37006: { - "label": "GCS Everest Modified 1969", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 37007: { - "label": "GCS Walbeck", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 37008: { - "label": "GCS Sphere ARC INFO", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 37202: { - "label": "GCS Everest Bangladesh", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 37203: { - "label": "GCS Everest India Nepal", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 37206: { - "label": "GCS Oman", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 37207: { - "label": "GCS South Asia Singapore", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 37218: { - "label": "GCS DOS 1968", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 37221: { - "label": "GCS GUX 1", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 37225: { - "label": "GCS Carthage Grad", - "defaultExtent": "{\"xmin\": -199.99998726760407, \"ymin\": -94.50125310140274, \"xmax\": 199.99998726760407, \"ymax\": 94.50125310140272}" - }, - 37240: { - "label": "GCS Fort Thomas 1955", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 37241: { - "label": "GCS Graciosa Base SW 1948", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 37243: { - "label": "GCS LC5 1961", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 37245: { - "label": "GCS Observatorio Meteorologico 1939", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 37249: { - "label": "GCS Sao Braz", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 37257: { - "label": "GCS S42 Hungary", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 37260: { - "label": "GCS Alaskan Islands", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 53001: { - "label": "Sphere Plate Carree", - "defaultExtent": "{\"xmin\": -20015085.52182053, \"ymin\": -9457253.91578642, \"xmax\": 20015085.52182053, \"ymax\": 9457253.915786419}" - }, - 53002: { - "label": "Sphere Equidistant Cylindrical", - "defaultExtent": "{\"xmin\": -10007542.760910267, \"ymin\": -9457253.91578642, \"xmax\": 10007542.760910267, \"ymax\": 9457253.915786419}" - }, - 53003: { - "label": "Sphere Miller Cylindrical", - "defaultExtent": "{\"xmin\": -20015085.52182053, \"ymin\": -13059323.931620779, \"xmax\": 20015085.52182053, \"ymax\": 13059323.931620777}" - }, - 53004: { - "label": "Sphere Mercator", - "defaultExtent": "{\"xmin\": -20015085.52182053, \"ymin\": -20015085.52182054, \"xmax\": 20015085.52182053, \"ymax\": 20015085.52182053}" - }, - 53008: { - "label": "Sphere Sinusoidal", - "defaultExtent": "{\"xmin\": -20015085.52182053, \"ymin\": -9457253.91578642, \"xmax\": 20015085.52182053, \"ymax\": 9457253.915786419}" - }, - 53009: { - "label": "Sphere Mollweide", - "defaultExtent": "{\"xmin\": -18019908.064574886, \"ymin\": -8817760.011608297, \"xmax\": 18019908.064574886, \"ymax\": 8817760.011608297}" - }, - 53010: { - "label": "Sphere Eckert VI", - "defaultExtent": "{\"xmin\": -17653816.684564028, \"ymin\": -8773309.81986786, \"xmax\": 17653816.684564028, \"ymax\": 8773309.819867859}" - }, - 53011: { - "label": "Sphere Eckert V", - "defaultExtent": "{\"xmin\": -17653816.684564028, \"ymin\": -8341539.524607676, \"xmax\": 17653816.684564028, \"ymax\": 8341539.524607674}" - }, - 53012: { - "label": "Sphere Eckert IV", - "defaultExtent": "{\"xmin\": -16902267.379799496, \"ymin\": -8398767.689061321, \"xmax\": 16902267.379799496, \"ymax\": 8398767.689061321}" - }, - 53013: { - "label": "Sphere Eckert III", - "defaultExtent": "{\"xmin\": -16902267.379799496, \"ymin\": -7986427.746661876, \"xmax\": 16902267.379799496, \"ymax\": 7986427.746661875}" - }, - 53014: { - "label": "Sphere Eckert II", - "defaultExtent": "{\"xmin\": -18440253.197219778, \"ymin\": -9168712.620473467, \"xmax\": 18440253.197219778, \"ymax\": 9168712.620473467}" - }, - 53015: { - "label": "Sphere Eckert I", - "defaultExtent": "{\"xmin\": -18440253.197219778, \"ymin\": -8713135.727917563, \"xmax\": 18440253.197219778, \"ymax\": 8713135.727917563}" - }, - 53016: { - "label": "Sphere Gall Stereographic", - "defaultExtent": "{\"xmin\": -14152802.698507983, \"ymin\": -9974927.813310318, \"xmax\": 14152802.698507983, \"ymax\": 9974927.813310318}" - }, - 53017: { - "label": "Sphere Behrmann", - "defaultExtent": "{\"xmin\": -17333572.520814694, \"ymin\": -7329172.285689381, \"xmax\": 17333572.520814694, \"ymax\": 7329172.285689381}" - }, - 53018: { - "label": "Sphere Winkel I", - "defaultExtent": "{\"xmin\": -16378542.355319794, \"ymin\": -9457253.91578642, \"xmax\": 16378542.355319794, \"ymax\": 9457253.915786419}" - }, - 53019: { - "label": "Sphere Winkel II", - "defaultExtent": "{\"xmin\": -16378542.355319794, \"ymin\": -9457253.91578642, \"xmax\": 16378542.355319794, \"ymax\": 9457253.915786419}" - }, - 53021: { - "label": "Sphere Polyconic", - "defaultExtent": "{\"xmin\": -20015085.52182053, \"ymin\": -15339031.283145145, \"xmax\": 20015085.52182053, \"ymax\": 15339031.283145145}" - }, - 53022: { - "label": "Sphere Quartic Authalic", - "defaultExtent": "{\"xmin\": -20015085.52182053, \"ymin\": -8612561.101447491, \"xmax\": 20015085.52182053, \"ymax\": 8612561.10144749}" - }, - 53023: { - "label": "Sphere Loximuthal", - "defaultExtent": "{\"xmin\": -18726421.152636945, \"ymin\": -13905050.98156877, \"xmax\": 18726421.152519614, \"ymax\": 5009456.85000407}" - }, - 53024: { - "label": "Sphere Bonne", - "defaultExtent": "{\"xmin\": -13065030.319372226, \"ymin\": -16128949.514459943, \"xmax\": 13065030.319408117, \"ymax\": 9241317.068450488}" - }, - 53025: { - "label": "Sphere Hotine", - "defaultExtent": "{\"xmin\": -31607974.70959702, \"ymin\": -28658396.44017119, \"xmax\": 31607974.709598377, \"ymax\": 28658396.44017125}" - }, - 53026: { - "label": "Sphere Stereographic", - "defaultExtent": "{\"xmin\": -30761930.653895795, \"ymin\": -30761909.23073867, \"xmax\": 30761930.653895836, \"ymax\": 30761909.230738714}" - }, - 53027: { - "label": "Sphere Equidistant Conic", - "defaultExtent": "{\"xmin\": -19807248.07907297, \"ymin\": -9457253.91578642, \"xmax\": 19807248.079399634, \"ymax\": 28428547.38191376}" - }, - 53028: { - "label": "Sphere Cassini", - "defaultExtent": "{\"xmin\": -10007542.12431961, \"ymin\": -20015085.521820575, \"xmax\": 10007542.12431961, \"ymax\": 20015085.521820575}" - }, - 53029: { - "label": "Sphere Van der Grinten I", - "defaultExtent": "{\"xmin\": -20015085.52182053, \"ymin\": -26860673.200414088, \"xmax\": 20015085.52182053, \"ymax\": 26860673.200414117}" - }, - 53030: { - "label": "Sphere Robinson", - "defaultExtent": "{\"xmin\": -16986803.082369078, \"ymin\": -8412455.349807823, \"xmax\": 16986803.082369078, \"ymax\": 8412455.349807823}" - }, - 53031: { - "label": "Sphere Two Point Equidistant", - "defaultExtent": "{\"xmin\": -15816128.209995987, \"ymin\": -15248693.547984902, \"xmax\": 15816128.20938673, \"ymax\": 15248693.547917407}" - }, - 53032: { - "label": "Sphere Azimuthal Equidistant", - "defaultExtent": "{\"xmin\": -19987288.064410545, \"ymin\": -19987288.046113648, \"xmax\": 19987288.064410545, \"ymax\": 19987288.046113648}" - }, - 53034: { - "label": "Sphere Cylindrical Equal Area", - "defaultExtent": "{\"xmin\": -20015085.52182053, \"ymin\": -6347249.388119862, \"xmax\": 20015085.52182053, \"ymax\": 6347249.388119862}" - }, - 53042: { - "label": "Sphere Winkel Tripel NGS", - "defaultExtent": "{\"xmin\": -16377569.284296881, \"ymin\": -9713744.942570297, \"xmax\": 16377569.284296881, \"ymax\": 9713744.942570295}" - }, - 53043: { - "label": "Sphere Aitoff", - "defaultExtent": "{\"xmin\": -20015085.521820527, \"ymin\": -9970235.969354173, \"xmax\": 20015085.521820527, \"ymax\": 9970235.969354173}" - }, - 53044: { - "label": "Sphere Hammer Aitoff", - "defaultExtent": "{\"xmin\": -18019908.310762465, \"ymin\": -8976365.136807995, \"xmax\": 18019908.31076246, \"ymax\": 8976365.136807995}" - }, - 53045: { - "label": "Sphere Flat Polar Quartic", - "defaultExtent": "{\"xmin\": -18761723.699732393, \"ymin\": -8371558.795841706, \"xmax\": 18761723.699732393, \"ymax\": 8371558.795841706}" - }, - 53046: { - "label": "Sphere Craster Parabolic", - "defaultExtent": "{\"xmin\": -19558842.123826552, \"ymin\": -9287754.690513363, \"xmax\": 19558842.123826552, \"ymax\": 9287754.690513363}" - }, - 53048: { - "label": "Sphere Times", - "defaultExtent": "{\"xmin\": -14860101.713976452, \"ymin\": -9974927.813310318, \"xmax\": 14860101.713976452, \"ymax\": 9974927.813310318}" - }, - 53049: { - "label": "Sphere Vertical Perspective", - "defaultExtent": "{\"xmin\": -5476620.907256751, \"ymin\": -5458258.080209536, \"xmax\": 5476620.907256751, \"ymax\": 5458258.0802095365}" - }, - 54001: { - "label": "World Plate Carree", - "defaultExtent": "{\"xmin\": -20037507.0671618, \"ymin\": -9467848.237116976, \"xmax\": 20037507.0671618, \"ymax\": 9467848.237116976}" - }, - 54002: { - "label": "World Equidistant Cylindrical", - "defaultExtent": "{\"xmin\": -10018753.533580903, \"ymin\": -9467848.237116976, \"xmax\": 10018753.533580903, \"ymax\": 9467848.237116976}" - }, - 54003: { - "label": "World Miller Cylindrical", - "defaultExtent": "{\"xmin\": -20037507.0671618, \"ymin\": -13073953.408139376, \"xmax\": 20037507.0671618, \"ymax\": 13073953.408139372}" - }, - 54004: { - "label": "World Mercator", - "defaultExtent": "{\"xmin\": -20037507.0671618, \"ymin\": -19994873.9742325, \"xmax\": 20037507.0671618, \"ymax\": 19994873.97423248}" - }, - 54008: { - "label": "World Sinusoidal", - "defaultExtent": "{\"xmin\": -20037507.0671618, \"ymin\": -9449220.373095416, \"xmax\": 20037507.0671618, \"ymax\": 9449220.373095414}" - }, - 54009: { - "label": "World Mollweide", - "defaultExtent": "{\"xmin\": -18040094.547679093, \"ymin\": -8827637.951210065, \"xmax\": 18040094.547679093, \"ymax\": 8827637.951210065}" - }, - 54010: { - "label": "World Eckert VI", - "defaultExtent": "{\"xmin\": -17673593.060278628, \"ymin\": -8783137.964928979, \"xmax\": 17673593.060278628, \"ymax\": 8783137.964928979}" - }, - 54011: { - "label": "World Eckert V", - "defaultExtent": "{\"xmin\": -17673593.060278628, \"ymin\": -8350883.986636733, \"xmax\": 17673593.060278628, \"ymax\": 8350883.986636733}" - }, - 54012: { - "label": "World Eckert IV", - "defaultExtent": "{\"xmin\": -16921201.84570589, \"ymin\": -8408176.25992882, \"xmax\": 16921201.84570589, \"ymax\": 8408176.25992882}" - }, - 54013: { - "label": "World Eckert III", - "defaultExtent": "{\"xmin\": -16921201.84570589, \"ymin\": -7995374.401006238, \"xmax\": 16921201.84570589, \"ymax\": 7995374.401006237}" - }, - 54014: { - "label": "World Eckert II", - "defaultExtent": "{\"xmin\": -18460910.564519815, \"ymin\": -9178983.708524374, \"xmax\": 18460910.564519815, \"ymax\": 9178983.708524374}" - }, - 54015: { - "label": "World Eckert I", - "defaultExtent": "{\"xmin\": -18460910.564519815, \"ymin\": -8722896.4640171, \"xmax\": 18460910.564519815, \"ymax\": 8722896.464017099}" - }, - 54016: { - "label": "World Gall Stereographic", - "defaultExtent": "{\"xmin\": -14168657.125263477, \"ymin\": -9986102.049663106, \"xmax\": 14168657.125263477, \"ymax\": 9986102.049663104}" - }, - 54017: { - "label": "World Behrmann", - "defaultExtent": "{\"xmin\": -17367529.339510005, \"ymin\": -7314614.0584964715, \"xmax\": 17367529.339510005, \"ymax\": 7314614.05849647}" - }, - 54018: { - "label": "World Winkel I", - "defaultExtent": "{\"xmin\": -16396890.127536071, \"ymin\": -9467848.237116976, \"xmax\": 16396890.127536071, \"ymax\": 9467848.237116976}" - }, - 54019: { - "label": "World Winkel II", - "defaultExtent": "{\"xmin\": -16396890.127536071, \"ymin\": -9467848.237116976, \"xmax\": 16396890.127536071, \"ymax\": 9467848.237116976}" - }, - 54021: { - "label": "World Polyconic", - "defaultExtent": "{\"xmin\": -20037507.0671618, \"ymin\": -15348253.618163748, \"xmax\": 20037507.0671618, \"ymax\": 15348253.618163746}" - }, - 54022: { - "label": "World Quartic Authalic", - "defaultExtent": "{\"xmin\": -20037507.0671618, \"ymin\": -8622209.170601632, \"xmax\": 20037507.0671618, \"ymax\": 8622209.17060163}" - }, - 54023: { - "label": "World Loximuthal", - "defaultExtent": "{\"xmin\": -18747399.09452462, \"ymin\": -13920627.86884792, \"xmax\": 18747399.09440715, \"ymax\": 5015068.605386032}" - }, - 54024: { - "label": "World Bonne", - "defaultExtent": "{\"xmin\": -13065442.687278617, \"ymin\": -16103293.192585927, \"xmax\": 13065442.683167296, \"ymax\": 9267343.134162731}" - }, - 54025: { - "label": "World Hotine", - "defaultExtent": "{\"xmin\": -31949756.30168484, \"ymin\": -29307276.41369623, \"xmax\": 30830976.589559093, \"ymax\": 28425371.26572872}" - }, - 54026: { - "label": "World Stereographic", - "defaultExtent": "{\"xmin\": -30796391.45276573, \"ymin\": -30943151.038973816, \"xmax\": 30796391.45276576, \"ymax\": 30943151.03897386}" - }, - 54027: { - "label": "World Equidistant Conic", - "defaultExtent": "{\"xmin\": -19794991.579967946, \"ymin\": -9449220.373095417, \"xmax\": 19794991.580294408, \"ymax\": 28413137.62304946}" - }, - 54028: { - "label": "World Cassini", - "defaultExtent": "{\"xmin\": -5009377.085697311, \"ymin\": -9610523.775686787, \"xmax\": 5009377.085697311, \"ymax\": 9610523.775686782}" - }, - 54029: { - "label": "World Van der Grinten I", - "defaultExtent": "{\"xmin\": -20037507.0671618, \"ymin\": -26890763.394203346, \"xmax\": 20037507.0671618, \"ymax\": 26890763.394203376}" - }, - 54030: { - "label": "World Robinson", - "defaultExtent": "{\"xmin\": -16986822.228633102, \"ymin\": -8412464.831703294, \"xmax\": 16986822.228633102, \"ymax\": 8412464.831703294}" - }, - 54031: { - "label": "World Two Point Equidistant", - "defaultExtent": "{\"xmin\": -15833846.059320392, \"ymin\": -15265775.627072442, \"xmax\": 15833846.059351534, \"ymax\": 15265775.627004951}" - }, - 54032: { - "label": "World Azimuthal Equidistant", - "defaultExtent": "{\"xmin\": -19942496.49842423, \"ymin\": -19909555.59169106, \"xmax\": 19942496.498424232, \"ymax\": 19909555.591691058}" - }, - 54034: { - "label": "World Cylindrical Equal Area", - "defaultExtent": "{\"xmin\": -20037507.0671618, \"ymin\": -6339949.068630518, \"xmax\": 20037507.0671618, \"ymax\": 6339949.068630518}" - }, - 54042: { - "label": "World Winkel Tripel NGS", - "defaultExtent": "{\"xmin\": -16395915.96644757, \"ymin\": -9724626.593434388, \"xmax\": 16395915.96644757, \"ymax\": 9724626.593434388}" - }, - 54043: { - "label": "World Aitoff", - "defaultExtent": "{\"xmin\": -20037507.0671618, \"ymin\": -9981404.9497518, \"xmax\": 20037507.0671618, \"ymax\": 9981404.9497518}" - }, - 54044: { - "label": "World Hammer Aitoff", - "defaultExtent": "{\"xmin\": -18040094.794142455, \"ymin\": -8986420.751033299, \"xmax\": 18040094.79414245, \"ymax\": 8986420.751033299}" - }, - 54045: { - "label": "World Flat Polar Quartic", - "defaultExtent": "{\"xmin\": -18782741.18867369, \"ymin\": -8380936.886428102, \"xmax\": 18782741.18867369, \"ymax\": 8380936.886428102}" - }, - 54046: { - "label": "World Craster Parabolic", - "defaultExtent": "{\"xmin\": -19580752.57057553, \"ymin\": -9298159.1333365, \"xmax\": 19580752.57057553, \"ymax\": 9298159.1333365}" - }, - 54048: { - "label": "World Times", - "defaultExtent": "{\"xmin\": -14851809.019456536, \"ymin\": -9969361.29493742, \"xmax\": 14851809.019456536, \"ymax\": 9969361.294937419}" - }, - 54049: { - "label": "World Vertical Perspective", - "defaultExtent": "{\"xmin\": -5476620.907256751, \"ymin\": -5458258.080209536, \"xmax\": 5476620.907256751, \"ymax\": 5458258.0802095365}" - }, - 54050: { - "label": "World Fuller", - "defaultExtent": "{\"xmin\": -19419088.091734163, \"ymin\": -9173176.08504318, \"xmax\": 19419227.951385565, \"ymax\": 9173178.40623313}" - }, - 54051: { - "label": "World Cube", - "defaultExtent": "{\"xmin\": -20037507.06716184, \"ymin\": -15028129.981464531, \"xmax\": 20037507.067161806, \"ymax\": 15028129.981464528}" - }, - 54052: { - "label": "World Goode Homolosine Land", - "defaultExtent": "{\"xmin\": -20037507.067161817, \"ymin\": -8490849.819570258, \"xmax\": 20037507.067161832, \"ymax\": 8490849.819570262}" - }, - 54053: { - "label": "World Goode Homolosine Ocean", - "defaultExtent": "{\"xmin\": -20037507.06716183, \"ymin\": -8490849.819570258, \"xmax\": 20037507.067161843, \"ymax\": 8490849.819570262}" - }, - 65061: { - "label": "NAD 1927 StatePlane Guam FIPS 5400", - "defaultExtent": "{\"xmin\": -65576394.7447369, \"ymin\": -55079355.38072197, \"xmax\": 65904478.07802971, \"ymax\": 45631285.24988944}" - }, - 65062: { - "label": "American Samoa 1962 StatePlane American Samoa FIPS 5300", - "defaultExtent": "{\"xmin\": -117293513.11027402, \"ymin\": -53093029.58928256, \"xmax\": 118293513.11027405, \"ymax\": 86482568.80391248}" - }, - 65161: { - "label": "NAD 1983 StatePlane Guam FIPS 5400", - "defaultExtent": "{\"xmin\": -19987507.06712972, \"ymin\": -16788234.566776842, \"xmax\": 20087507.067117363, \"ymax\": 13908272.67000892}" - }, - 102001: { - "label": "Canada Albers Equal Area Conic", - "defaultExtent": "{\"xmin\": -13812694.698045112, \"ymin\": -7900603.2749695955, \"xmax\": 13812694.698289607, \"ymax\": 18276417.983055193}" - }, - 102002: { - "label": "Canada Lambert Conformal Conic", - "defaultExtent": "{\"xmin\": -35105358.78978467, \"ymin\": -29255312.28897947, \"xmax\": 35105358.7894367, \"ymax\": 38095200.83674246}" - }, - 102003: { - "label": "USA Contiguous Albers Equal Area Conic", - "defaultExtent": "{\"xmin\": -16885989.18210479, \"ymin\": -8563838.438464364, \"xmax\": 16885989.182114024, \"ymax\": 13686439.397864789}" - }, - 102004: { - "label": "USA Contiguous Lambert Conformal Conic", - "defaultExtent": "{\"xmin\": -36966076.137843065, \"ymin\": -29136955.126161516, \"xmax\": 36966076.137771465, \"ymax\": 22562989.008630853}" - }, - 102005: { - "label": "USA Contiguous Equidistant Conic", - "defaultExtent": "{\"xmin\": -21625506.28937472, \"ymin\": -13767724.35749375, \"xmax\": 21625506.289508644, \"ymax\": 16333851.935436562}" - }, - 102007: { - "label": "Hawaii Albers Equal Area Conic", - "defaultExtent": "{\"xmin\": -22474547.310762066, \"ymin\": -7089152.161929131, \"xmax\": 22474547.31076208, \"ymax\": 10866607.20129883}" - }, - 102008: { - "label": "North America Albers Equal Area Conic", - "defaultExtent": "{\"xmin\": -16672791.608757256, \"ymin\": -9052922.649932012, \"xmax\": 16672791.608551979, \"ymax\": 12990432.966953669}" - }, - 102009: { - "label": "North America Lambert Conformal Conic", - "defaultExtent": "{\"xmin\": -35214156.09379879, \"ymin\": -28218350.330740742, \"xmax\": 35214156.09364807, \"ymax\": 23671795.223477058}" - }, - 102010: { - "label": "North America Equidistant Conic", - "defaultExtent": "{\"xmin\": -21177234.342682857, \"ymin\": -13878749.403041797, \"xmax\": 21177234.342571862, \"ymax\": 15715255.966487303}" - }, - 102011: { - "label": "Africa Sinusoidal", - "defaultExtent": "{\"xmin\": -20037507.067179196, \"ymin\": -9449220.373066094, \"xmax\": 20037507.0671792, \"ymax\": 9449220.373095414}" - }, - 102012: { - "label": "Asia Lambert Conformal Conic", - "defaultExtent": "{\"xmin\": -35330910.924436264, \"ymin\": -24043540.25995127, \"xmax\": 35330910.92445279, \"ymax\": 34596272.74453714}" - }, - 102013: { - "label": "Europe Albers Equal Area Conic", - "defaultExtent": "{\"xmin\": -14477055.518816711, \"ymin\": -7092431.705086381, \"xmax\": 14477055.519347163, \"ymax\": 18612782.92583162}" - }, - 102014: { - "label": "Europe Lambert Conformal Conic", - "defaultExtent": "{\"xmin\": -35565531.27154592, \"ymin\": -28224965.756986216, \"xmax\": 35565531.27161981, \"ymax\": 35922733.930690125}" - }, - 102015: { - "label": "South America Lambert Conformal Conic", - "defaultExtent": "{\"xmin\": -37987067.8675607, \"ymin\": -11452652.132666977, \"xmax\": 37987067.86756071, \"ymax\": 26929172.644898146}" - }, - 102016: { - "label": "North Pole Azimuthal Equidistant", - "defaultExtent": "{\"xmin\": -19451186.10240804, \"ymin\": -19451186.102408137, \"xmax\": 19451186.10240804, \"ymax\": 19451186.10240775}" - }, - 102017: { - "label": "North Pole Lambert Azimuthal Equal Area", - "defaultExtent": "{\"xmin\": -12730027.198090494, \"ymin\": -12730027.198090555, \"xmax\": 12730027.198090494, \"ymax\": 12730027.1980903}" - }, - 102018: { - "label": "North Pole Stereographic", - "defaultExtent": "{\"xmin\": -30548236.162056506, \"ymin\": -30548236.162056655, \"xmax\": 30548236.162056506, \"ymax\": 30548236.162056044}" - }, - 102019: { - "label": "South Pole Azimuthal Equidistant", - "defaultExtent": "{\"xmin\": -19451186.10240804, \"ymin\": -19451186.10240775, \"xmax\": 19451186.10240804, \"ymax\": 19451186.102408137}" - }, - 102020: { - "label": "South Pole Lambert Azimuthal Equal Area", - "defaultExtent": "{\"xmin\": -12730027.198090494, \"ymin\": -12730027.1980903, \"xmax\": 12730027.198090494, \"ymax\": 12730027.198090555}" - }, - 102021: { - "label": "South Pole Stereographic", - "defaultExtent": "{\"xmin\": -30548236.162056506, \"ymin\": -30548236.162056044, \"xmax\": 30548236.162056506, \"ymax\": 30548236.162056655}" - }, - 102022: { - "label": "Africa Albers Equal Area Conic", - "defaultExtent": "{\"xmin\": -19154691.61469431, \"ymin\": -7600359.261139035, \"xmax\": 19154691.614694316, \"ymax\": 6715765.002699643}" - }, - 102023: { - "label": "Africa Equidistant Conic", - "defaultExtent": "{\"xmin\": -19397354.086091947, \"ymin\": -10168303.948541671, \"xmax\": 19397354.08609195, \"ymax\": 9449220.373031884}" - }, - 102024: { - "label": "Africa Lambert Conformal Conic", - "defaultExtent": "{\"xmin\": -20272245.004779223, \"ymin\": -18579536.6072298, \"xmax\": 20272245.00477923, \"ymax\": 19424389.878113717}" - }, - 102025: { - "label": "Asia North Albers Equal Area Conic", - "defaultExtent": "{\"xmin\": -16919064.062903296, \"ymin\": -8076837.888782006, \"xmax\": 16919064.062807526, \"ymax\": 13209737.706274569}" - }, - 102026: { - "label": "Asia North Equidistant Conic", - "defaultExtent": "{\"xmin\": -20999031.064210214, \"ymin\": -12769333.770620752, \"xmax\": 20999031.064452473, \"ymax\": 16144905.51044096}" - }, - 102027: { - "label": "Asia North Lambert Conformal Conic", - "defaultExtent": "{\"xmin\": -34230685.21050296, \"ymin\": -26567508.511737812, \"xmax\": 34230685.213656075, \"ymax\": 24721328.203485206}" - }, - 102028: { - "label": "Asia South Albers Equal Area Conic", - "defaultExtent": "{\"xmin\": -21650741.919035915, \"ymin\": -10254000.398505997, \"xmax\": 21650741.919035923, \"ymax\": 7710980.656983204}" - }, - 102029: { - "label": "Asia South Equidistant Conic", - "defaultExtent": "{\"xmin\": -23814583.026564386, \"ymin\": -11990899.725638261, \"xmax\": 23814583.02656439, \"ymax\": 11108209.962482706}" - }, - 102030: { - "label": "Asia South Lambert Conformal Conic", - "defaultExtent": "{\"xmin\": -32918293.283446793, \"ymin\": -15593655.196803633, \"xmax\": 32918293.283446804, \"ymax\": 25141240.811437}" - }, - 102031: { - "label": "Europe Equidistant Conic", - "defaultExtent": "{\"xmin\": -20128124.80470717, \"ymin\": -12769675.077997588, \"xmax\": 20128124.80484239, \"ymax\": 23254146.146718156}" - }, - 102032: { - "label": "South America Equidistant Conic", - "defaultExtent": "{\"xmin\": -24716253.246634334, \"ymin\": -10785983.957753524, \"xmax\": 24716253.246634346, \"ymax\": 12991118.70970978}" - }, - 102033: { - "label": "South America Albers Equal Area Conic", - "defaultExtent": "{\"xmin\": -21043143.044818323, \"ymin\": -10210148.40188038, \"xmax\": 21043143.04481833, \"ymax\": 8994000.200345553}" - }, - 102034: { - "label": "North Pole Gnomonic", - "defaultExtent": "{\"xmin\": -23803531.341634825, \"ymin\": -23803531.34163494, \"xmax\": 23803531.341634825, \"ymax\": 23803531.341634464}" - }, - 102035: { - "label": "North Pole Orthographic", - "defaultExtent": "{\"xmin\": -6378136.988519322, \"ymin\": -6378136.988519353, \"xmax\": 6378136.988519322, \"ymax\": 6378136.988519225}" - }, - 102036: { - "label": "South Pole Gnomonic", - "defaultExtent": "{\"xmin\": -23803531.341634825, \"ymin\": -23803531.341634464, \"xmax\": 23803531.341634825, \"ymax\": 23803531.34163494}" - }, - 102037: { - "label": "South Pole Orthographic", - "defaultExtent": "{\"xmin\": -6378136.988519322, \"ymin\": -6378136.988519225, \"xmax\": 6378136.988519322, \"ymax\": 6378136.988519353}" - }, - 102038: { - "label": "The World From Space", - "defaultExtent": "{\"xmin\": -6370996.988532205, \"ymin\": -6370996.988532206, \"xmax\": 6370996.988532205, \"ymax\": 6370996.988532204}" - }, - 102039: { - "label": "USA Contiguous Albers Equal Area Conic USGS version", - "defaultExtent": "{\"xmin\": -16885989.18210479, \"ymin\": -6957052.177887028, \"xmax\": 16885989.182114024, \"ymax\": 15293225.658442125}" - }, - 102041: { - "label": "COB NAD83 2007", - "defaultExtent": "{\"xmin\": -117104064.78403555, \"ymin\": -99539209.47191389, \"xmax\": 120384898.57799245, \"ymax\": 101712468.06241427}" - }, - 102042: { - "label": "NAD 1983 USFS R9 Albers", - "defaultExtent": "{\"xmin\": -15763640.106893884, \"ymin\": -7992789.79531165, \"xmax\": 15763640.106962565, \"ymax\": 16080185.692886524}" - }, - 102043: { - "label": "NAD 1983 CORS96 UTM Zone 20N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 102044: { - "label": "NAD 1983 NSRS2007 UTM Zone 20N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 102045: { - "label": "NAD 1983 2011 UTM Zone 20N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 102046: { - "label": "NAD 1983 2011 UTM Zone 59N", - "defaultExtent": "{\"xmin\": -5120763.76772398, \"ymin\": -9606785.534938088, \"xmax\": 6120763.767724008, \"ymax\": 9606785.534938097}" - }, - 102047: { - "label": "NAD 1983 2011 UTM Zone 60N", - "defaultExtent": "{\"xmin\": -5120763.767723984, \"ymin\": -9606785.534938088, \"xmax\": 6120763.767724008, \"ymax\": 9606785.534938097}" - }, - 102048: { - "label": "NAD 1983 2011 UTM Zone 1N", - "defaultExtent": "{\"xmin\": -5120763.767723977, \"ymin\": -9606785.534938088, \"xmax\": 6120763.767724008, \"ymax\": 9606785.534938097}" - }, - 102049: { - "label": "NAD 1983 2011 UTM Zone 2N", - "defaultExtent": "{\"xmin\": -5120763.767723977, \"ymin\": -9606785.534938088, \"xmax\": 6120763.767724008, \"ymax\": 9606785.534938097}" - }, - 102050: { - "label": "NAD 1983 2011 UTM Zone 3N", - "defaultExtent": "{\"xmin\": -5120763.767723984, \"ymin\": -9606785.534938088, \"xmax\": 6120763.767724008, \"ymax\": 9606785.534938097}" - }, - 102051: { - "label": "NAD 1983 2011 UTM Zone 4N", - "defaultExtent": "{\"xmin\": -5120763.767723977, \"ymin\": -9606785.534938088, \"xmax\": 6120763.767724011, \"ymax\": 9606785.534938097}" - }, - 102052: { - "label": "NAD 1983 2011 UTM Zone 5N", - "defaultExtent": "{\"xmin\": -5120763.767723977, \"ymin\": -9606785.534938088, \"xmax\": 6120763.767724008, \"ymax\": 9606785.534938097}" - }, - 102053: { - "label": "NAD 1983 2011 UTM Zone 6N", - "defaultExtent": "{\"xmin\": -5120763.767723984, \"ymin\": -9606785.534938088, \"xmax\": 6120763.767724008, \"ymax\": 9606785.534938097}" - }, - 102054: { - "label": "NAD 1983 2011 UTM Zone 7N", - "defaultExtent": "{\"xmin\": -5120763.767723977, \"ymin\": -9606785.534938088, \"xmax\": 6120763.767724011, \"ymax\": 9606785.534938097}" - }, - 102055: { - "label": "NAD 1983 2011 UTM Zone 8N", - "defaultExtent": "{\"xmin\": -5120761.968321789, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 102056: { - "label": "NAD 1983 2011 UTM Zone 9N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 102057: { - "label": "NAD 1983 2011 UTM Zone 10N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724002, \"ymax\": 9606785.534958888}" - }, - 102058: { - "label": "NAD 1983 2011 UTM Zone 11N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 102059: { - "label": "NAD 1983 2011 UTM Zone 12N", - "defaultExtent": "{\"xmin\": -5120763.767723998, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 102060: { - "label": "D48 Slovenia TM", - "defaultExtent": "{\"xmin\": -5121783.478067655, \"ymin\": -14608608.17013799, \"xmax\": 6121783.478067655, \"ymax\": 4608608.170137983}" - }, - 102061: { - "label": "Everest Modified 1969 RSO Malaya Meters", - "defaultExtent": "{\"xmin\": -30658785.502040155, \"ymin\": -28734370.782477967, \"xmax\": 32274544.149394643, \"ymax\": 28729683.051673792}" - }, - 102062: { - "label": "Kertau RSO Malaya Meters", - "defaultExtent": "{\"xmin\": -30658825.880139273, \"ymin\": -28734408.6261018, \"xmax\": 32274586.65549905, \"ymax\": 28729720.889124535}" - }, - 102063: { - "label": "Kandawala Ceylon Belt Meters", - "defaultExtent": "{\"xmin\": -5461278.250880137, \"ymin\": -10222603.242468296, \"xmax\": 5783145.371840134, \"ymax\": 8996368.618257241}" - }, - 102064: { - "label": "Kandawala Ceylon Belt Indian Yards 1937", - "defaultExtent": "{\"xmin\": -5972557.677143763, \"ymin\": -11179633.16854605, \"xmax\": 6324557.677143761, \"ymax\": 9838599.681077996}" - }, - 102068: { - "label": "EMEP 50 Kilometer Grid", - "defaultExtent": "{\"xmin\": -611.5452373442346, \"ymin\": -509.54523734423975, \"xmax\": 627.5452373442389, \"ymax\": 729.5452373442317}" - }, - 102069: { - "label": "EMEP 150 Kilometer Grid", - "defaultExtent": "{\"xmin\": -203.51507911474485, \"ymin\": -169.51507911474658, \"xmax\": 209.5150791147463, \"ymax\": 243.5150791147439}" - }, - 102070: { - "label": "Guernsey Grid", - "defaultExtent": "{\"xmin\": -5575996.103849671, \"ymin\": -15045819.42052619, \"xmax\": 5669996.103849671, \"ymax\": 4175382.489619698}" - }, - 102071: { - "label": "AGD 1966 ACT Grid AGC Zone", - "defaultExtent": "{\"xmin\": -5423516.952210597, \"ymin\": -5101297.028649784, \"xmax\": 5823516.952105881, \"ymax\": 14121684.016449794}" - }, - 102072: { - "label": "AGD 1966 ISG 54 2", - "defaultExtent": "{\"xmin\": -5322695.989286023, \"ymin\": -4610087.365602719, \"xmax\": 5922695.989286039, \"ymax\": 14610087.365602728}" - }, - 102073: { - "label": "AGD 1966 ISG 54 3", - "defaultExtent": "{\"xmin\": -5322695.989286023, \"ymin\": -4610087.365602719, \"xmax\": 5922695.989286039, \"ymax\": 14610087.365602728}" - }, - 102074: { - "label": "AGD 1966 ISG 55 1", - "defaultExtent": "{\"xmin\": -5322695.989286023, \"ymin\": -4610087.365602719, \"xmax\": 5922695.989286031, \"ymax\": 14610087.365602728}" - }, - 102075: { - "label": "AGD 1966 ISG 55 2", - "defaultExtent": "{\"xmin\": -5322695.98928602, \"ymin\": -4610087.365602719, \"xmax\": 5922695.989286039, \"ymax\": 14610087.365602728}" - }, - 102076: { - "label": "AGD 1966 ISG 55 3", - "defaultExtent": "{\"xmin\": -5322695.98928602, \"ymin\": -4610087.365602719, \"xmax\": 5922695.989286039, \"ymax\": 14610087.365602728}" - }, - 102077: { - "label": "AGD 1966 ISG 56 1", - "defaultExtent": "{\"xmin\": -5322695.98928602, \"ymin\": -4610087.365602719, \"xmax\": 5922695.989286039, \"ymax\": 14610087.365602728}" - }, - 102078: { - "label": "AGD 1966 ISG 56 2", - "defaultExtent": "{\"xmin\": -5322695.98928602, \"ymin\": -4610087.365602719, \"xmax\": 5922695.989286039, \"ymax\": 14610087.365602728}" - }, - 102079: { - "label": "AGD 1966 ISG 56 3", - "defaultExtent": "{\"xmin\": -5322695.989286023, \"ymin\": -4610087.365602719, \"xmax\": 5922695.989286039, \"ymax\": 14610087.365602728}" - }, - 102093: { - "label": "Roma 1940 Gauss Boaga Est", - "defaultExtent": "{\"xmin\": -3101006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 8141006.178542033, \"ymax\": 9607087.052499557}" - }, - 102094: { - "label": "Roma 1940 Gauss Boaga Ovest", - "defaultExtent": "{\"xmin\": -4121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 7121006.178542033, \"ymax\": 9607087.052499557}" - }, - 102096: { - "label": "Bab South Palau Azimuthal Equidistant", - "defaultExtent": "{\"xmin\": -19891967.654243514, \"ymin\": -19759201.63784392, \"xmax\": 19991967.654087085, \"ymax\": 20059205.27538667}" - }, - 102097: { - "label": "ETRS 1989 UTM Zone 26N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 102098: { - "label": "ETRS 1989 UTM Zone 27N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 102099: { - "label": "ETRS 1989 UTM Zone 39N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724002, \"ymax\": 9606785.534958888}" - }, - 102100: { - "label": "WGS 1984 Web Mercator Auxiliary Sphere", - "defaultExtent": "{\"xmin\": -20037507.0671618, \"ymin\": -20037507.0671618, \"xmax\": 20037507.0671618, \"ymax\": 20037507.0671618}" - }, - 102101: { - "label": "NGO 1948 Norway Zone 1", - "defaultExtent": "{\"xmin\": -5622429.344341379, \"ymin\": -16040419.987911409, \"xmax\": 5622429.344341379, \"ymax\": 3179004.1485127923}" - }, - 102102: { - "label": "NGO 1948 Norway Zone 2", - "defaultExtent": "{\"xmin\": -5622429.344341379, \"ymin\": -16040419.987911409, \"xmax\": 5622429.344341379, \"ymax\": 3179004.1485127923}" - }, - 102103: { - "label": "NGO 1948 Norway Zone 3", - "defaultExtent": "{\"xmin\": -5622429.344341379, \"ymin\": -16040419.987911409, \"xmax\": 5622429.344341379, \"ymax\": 3179004.1485127923}" - }, - 102104: { - "label": "NGO 1948 Norway Zone 4", - "defaultExtent": "{\"xmin\": -5622429.344341379, \"ymin\": -16040419.987911409, \"xmax\": 5622429.34434138, \"ymax\": 3179004.1485127923}" - }, - 102105: { - "label": "NGO 1948 Norway Zone 5", - "defaultExtent": "{\"xmin\": -5622429.344341379, \"ymin\": -16040419.987911409, \"xmax\": 5622429.344341379, \"ymax\": 3179004.1485127923}" - }, - 102106: { - "label": "NGO 1948 Norway Zone 6", - "defaultExtent": "{\"xmin\": -5622429.344341379, \"ymin\": -16040419.987911409, \"xmax\": 5622429.344341379, \"ymax\": 3179004.1485127923}" - }, - 102107: { - "label": "NGO 1948 Norway Zone 7", - "defaultExtent": "{\"xmin\": -5622429.344341379, \"ymin\": -16040419.987911409, \"xmax\": 5622429.344341379, \"ymax\": 3179004.1485127923}" - }, - 102108: { - "label": "NGO 1948 Norway Zone 8", - "defaultExtent": "{\"xmin\": -5622429.344341379, \"ymin\": -16040419.987911409, \"xmax\": 5622429.344341379, \"ymax\": 3179004.1485127923}" - }, - 102109: { - "label": "ETRS 1989 Slovenia TM", - "defaultExtent": "{\"xmin\": -5122450.671615874, \"ymin\": -14609668.723894954, \"xmax\": 6122450.671615874, \"ymax\": 4609668.72389495}" - }, - 102114: { - "label": "Old Hawaiian UTM Zone 4N", - "defaultExtent": "{\"xmin\": -5120880.632721118, \"ymin\": -9606689.106299058, \"xmax\": 6120880.632721152, \"ymax\": 9606689.106299069}" - }, - 102115: { - "label": "Old Hawaiian UTM Zone 5N", - "defaultExtent": "{\"xmin\": -5120880.632721118, \"ymin\": -9606689.106299058, \"xmax\": 6120880.632721149, \"ymax\": 9606689.106299067}" - }, - 102116: { - "label": "American Samoa 1962 UTM Zone 2S", - "defaultExtent": "{\"xmin\": -5120880.632721118, \"ymin\": 393310.8937009424, \"xmax\": 6120880.632721149, \"ymax\": 19606689.106299065}" - }, - 102117: { - "label": "NAD 1927 Alaska Albers Meters", - "defaultExtent": "{\"xmin\": -13739198.60741037, \"ymin\": -8935011.774912124, \"xmax\": 13739198.607921256, \"ymax\": 17285764.842849255}" - }, - 102118: { - "label": "NAD 1927 Georgia Statewide Albers", - "defaultExtent": "{\"xmin\": -55400092.23912577, \"ymin\": -22824437.055987064, \"xmax\": 55400092.238679215, \"ymax\": 50175105.334280744}" - }, - 102120: { - "label": "NAD 1927 Michigan GeoRef Feet US", - "defaultExtent": "{\"xmin\": -94633081.6736707, \"ymin\": -99627036.6508441, \"xmax\": 116645604.47027147, \"ymax\": 68272774.6456541}" - }, - 102121: { - "label": "NAD 1983 Michigan GeoRef Feet US", - "defaultExtent": "{\"xmin\": -94520489.46134017, \"ymin\": -99605004.48628494, \"xmax\": 116615286.34515853, \"ymax\": 68282848.0284211}" - }, - 102122: { - "label": "NAD 1927 Michigan GeoRef Meters", - "defaultExtent": "{\"xmin\": -28844220.982545808, \"ymin\": -30366381.503938258, \"xmax\": 35553651.349880055, \"ymax\": 20809583.331164066}" - }, - 102132: { - "label": "NGO 1948 UTM Zone 32N", - "defaultExtent": "{\"xmin\": -5120180.372603643, \"ymin\": -9605868.183384819, \"xmax\": 6120180.372603643, \"ymax\": 9605868.183384812}" - }, - 102133: { - "label": "NGO 1948 UTM Zone 33N", - "defaultExtent": "{\"xmin\": -5120180.372603643, \"ymin\": -9605868.183384819, \"xmax\": 6120180.372603643, \"ymax\": 9605868.183384812}" - }, - 102134: { - "label": "NGO 1948 UTM Zone 34N", - "defaultExtent": "{\"xmin\": -5120180.372603643, \"ymin\": -9605868.183384819, \"xmax\": 6120180.372603643, \"ymax\": 9605868.183384812}" - }, - 102135: { - "label": "NGO 1948 UTM Zone 35N", - "defaultExtent": "{\"xmin\": -5120180.372603643, \"ymin\": -9605868.183384819, \"xmax\": 6120180.372603643, \"ymax\": 9605868.183384812}" - }, - 102136: { - "label": "NGO 1948 Baerum Kommune", - "defaultExtent": "{\"xmin\": -5602430.024341378, \"ymin\": -16243397.777911408, \"xmax\": 5642428.664341379, \"ymax\": 2976026.3585127923}" - }, - 102137: { - "label": "NGO 1948 Bergenhalvoen", - "defaultExtent": "{\"xmin\": -5522429.344341379, \"ymin\": -16240419.987911409, \"xmax\": 5722429.344341379, \"ymax\": 2979004.1485127923}" - }, - 102138: { - "label": "NGO 1948 Oslo Kommune", - "defaultExtent": "{\"xmin\": -5622429.344341379, \"ymin\": -16253399.167911408, \"xmax\": 5622429.344341379, \"ymax\": 2966024.968512792}" - }, - 102141: { - "label": "Hong Kong 1980 UTM Zone 49N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542031, \"ymax\": 9607087.052499557}" - }, - 102142: { - "label": "Hong Kong 1980 UTM Zone 50N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 102143: { - "label": "QND 1995 UTM 39N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542034, \"ymax\": 9607087.052499557}" - }, - 102144: { - "label": "Merchich Degree UTM Zone 28N", - "defaultExtent": "{\"xmin\": -5120944.475688979, \"ymin\": -9606659.335852288, \"xmax\": 6120944.475688979, \"ymax\": 9606659.335852282}" - }, - 102150: { - "label": "JGD 2000 UTM Zone 56N", - "defaultExtent": "{\"xmin\": -5120763.767723991, \"ymin\": -9606785.534938088, \"xmax\": 6120763.767724008, \"ymax\": 9606785.534938097}" - }, - 102156: { - "label": "Tokyo UTM Zone 56N", - "defaultExtent": "{\"xmin\": -5120096.774353853, \"ymin\": -9605725.299379075, \"xmax\": 6120096.774353871, \"ymax\": 9605725.299379082}" - }, - 102157: { - "label": "ETRS 1989 Kosovo Grid", - "defaultExtent": "{\"xmin\": 1877549.3283841256, \"ymin\": -9609668.723894954, \"xmax\": 13122450.671615874, \"ymax\": 9609668.72389495}" - }, - 102158: { - "label": "Jordan JTM", - "defaultExtent": "{\"xmin\": -5122130.829638179, \"ymin\": -12609009.238784574, \"xmax\": 6122130.829638179, \"ymax\": 6609009.23878457}" - }, - 102159: { - "label": "Observatorio Meteorologico 1965 Macau Grid", - "defaultExtent": "{\"xmin\": -5603255.480734324, \"ymin\": -12048282.799066143, \"xmax\": 5643255.480734329, \"ymax\": 7173580.05107303}" - }, - 102160: { - "label": "Datum 73 Hayford Gauss IGeoE", - "defaultExtent": "{\"xmin\": -5423074.882734327, \"ymin\": -13703611.848224163, \"xmax\": 5823436.078734327, \"ymax\": 5518251.00191501}" - }, - 102161: { - "label": "Datum 73 Hayford Gauss IPCC", - "defaultExtent": "{\"xmin\": -5623074.882734327, \"ymin\": -14003611.848224163, \"xmax\": 5623436.078734327, \"ymax\": 5218251.00191501}" - }, - 102162: { - "label": "Graciosa Base SW 1948 UTM Zone 26N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 102163: { - "label": "Lisboa Bessel Bonne", - "defaultExtent": "{\"xmin\": -13972436.907840354, \"ymin\": -13840258.366571773, \"xmax\": 13972436.907660162, \"ymax\": 11187068.203647485}" - }, - 102164: { - "label": "Lisboa Hayford Gauss IGeoE", - "defaultExtent": "{\"xmin\": -5423255.480734327, \"ymin\": -13703524.858224163, \"xmax\": 5823255.480734327, \"ymax\": 5518337.99191501}" - }, - 102165: { - "label": "Lisboa Hayford Gauss IPCC", - "defaultExtent": "{\"xmin\": -5623255.480734327, \"ymin\": -14003524.858224163, \"xmax\": 5623255.480734327, \"ymax\": 5218337.99191501}" - }, - 102166: { - "label": "Observatorio Meteorologico 1939 UTM Zone 25N", - "defaultExtent": "{\"xmin\": -5121006.178542031, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 102168: { - "label": "Sao Braz UTM Zone 26N", - "defaultExtent": "{\"xmin\": -5121006.178542033, \"ymin\": -9607087.05249956, \"xmax\": 6121006.178542033, \"ymax\": 9607087.052499557}" - }, - 102173: { - "label": "ETRS 1989 UWPP 1992", - "defaultExtent": "{\"xmin\": -5119076.863832125, \"ymin\": -14903902.34602283, \"xmax\": 6119076.863832125, \"ymax\": 4303902.346022826}" - }, - 102174: { - "label": "ETRS 1989 UWPP 2000 PAS 5", - "defaultExtent": "{\"xmin\": -122580.0009142505, \"ymin\": -9609889.768380051, \"xmax\": 11122580.00091425, \"ymax\": 9609889.768380046}" - }, - 102175: { - "label": "ETRS 1989 UWPP 2000 PAS 6", - "defaultExtent": "{\"xmin\": 877419.9990857495, \"ymin\": -9609889.768380051, \"xmax\": 12122580.00091425, \"ymax\": 9609889.768380046}" - }, - 102176: { - "label": "ETRS 1989 UWPP 2000 PAS 7", - "defaultExtent": "{\"xmin\": 1877419.9990857495, \"ymin\": -9609889.768380051, \"xmax\": 13122580.00091425, \"ymax\": 9609889.768380046}" - }, - 102177: { - "label": "ETRS 1989 UWPP 2000 PAS 8", - "defaultExtent": "{\"xmin\": 2877419.9990857495, \"ymin\": -9609889.768380051, \"xmax\": 14122580.00091425, \"ymax\": 9609889.768380046}" - }, - 102178: { - "label": "NAD 1927 10TM AEP Forest", - "defaultExtent": "{\"xmin\": -5118631.380767271, \"ymin\": -9602844.892992005, \"xmax\": 6118631.380767271, \"ymax\": 9602844.892992}" - }, - 102179: { - "label": "NAD 1927 10TM AEP Resource", - "defaultExtent": "{\"xmin\": -5618631.380767271, \"ymin\": -9602844.892992005, \"xmax\": 5618631.380767271, \"ymax\": 9602844.892992}" - }, - 102191: { - "label": "Nord Maroc Degree", - "defaultExtent": "{\"xmin\": -37644652.57125495, \"ymin\": -28128361.97525744, \"xmax\": 38644652.57137238, \"ymax\": 15867737.975734096}" - }, - 102192: { - "label": "Sud Maroc Degree", - "defaultExtent": "{\"xmin\": -38611651.149578966, \"ymin\": -27628323.40364075, \"xmax\": 39611651.149578966, \"ymax\": 11443183.253599452}" - }, - 102193: { - "label": "Sahara Degree", - "defaultExtent": "{\"xmin\": -38552575.06885365, \"ymin\": -27047880.437310733, \"xmax\": 40952575.068853654, \"ymax\": 12666917.021485645}" - }, - 102194: { - "label": "UWPP 1992", - "defaultExtent": "{\"xmin\": -5119076.863807566, \"ymin\": -14903902.346111434, \"xmax\": 6119076.863807566, \"ymax\": 4303902.346111428}" - }, - 102195: { - "label": "UWPP 2000 PAS 5", - "defaultExtent": "{\"xmin\": -122580.00088967662, \"ymin\": -9609889.768468712, \"xmax\": 11122580.000889678, \"ymax\": 9609889.768468706}" - }, - 102196: { - "label": "UWPP 2000 PAS 6", - "defaultExtent": "{\"xmin\": 877419.9991103234, \"ymin\": -9609889.768468712, \"xmax\": 12122580.000889678, \"ymax\": 9609889.768468706}" - }, - 102197: { - "label": "UWPP 2000 PAS 7", - "defaultExtent": "{\"xmin\": 1877419.9991103234, \"ymin\": -9609889.768468712, \"xmax\": 13122580.000889678, \"ymax\": 9609889.768468706}" - }, - 102198: { - "label": "UWPP 2000 PAS 8", - "defaultExtent": "{\"xmin\": 2877419.9991103234, \"ymin\": -9609889.768468712, \"xmax\": 14122580.000889676, \"ymax\": 9609889.768468706}" - }, - 102204: { - "label": "Ain el Abd 1970 Aramco Lambert 2", - "defaultExtent": "{\"xmin\": -38714529.1057336, \"ymin\": -24167073.755729213, \"xmax\": 40714529.1057336, \"ymax\": 15936530.81391371}" - }, - 102212: { - "label": "NAD 1983 WyLAM", - "defaultExtent": "{\"xmin\": -36129055.70850331, \"ymin\": -29362180.251424327, \"xmax\": 37129055.70829792, \"ymax\": 27101076.274321638}" - }, - 102213: { - "label": "NAD 1983 UTM Zone 58N", - "defaultExtent": "{\"xmin\": -5120763.76772398, \"ymin\": -9606785.534938088, \"xmax\": 6120763.767724008, \"ymax\": 9606785.534938097}" - }, - 102215: { - "label": "WGS 1984 Canada Atlas LCC", - "defaultExtent": "{\"xmin\": -34655646.92927752, \"ymin\": -31416395.64225548, \"xmax\": 34655646.92943417, \"ymax\": 36225208.23552443}" - }, - 102216: { - "label": "GDA 1994 Perth Coastal Grid 1994", - "defaultExtent": "{\"xmin\": -5573007.687280972, \"ymin\": -5810620.752881642, \"xmax\": 5673007.687280972, \"ymax\": 13410620.752881639}" - }, - 102217: { - "label": "NAD 1983 NSRS2007 Wisconsin TM US Ft", - "defaultExtent": "{\"xmin\": -16734755.794607824, \"ymin\": -46216395.54261096, \"xmax\": 20146822.46127449, \"ymax\": 16820128.875944283}" - }, - 102218: { - "label": "NAD 1983 USFS R6 Albers", - "defaultExtent": "{\"xmin\": -14696772.28667844, \"ymin\": -7747811.135773793, \"xmax\": 15896772.287395695, \"ymax\": 17022025.32318843}" - }, - 102219: { - "label": "NAD 1983 Wisconsin TM US Ft", - "defaultExtent": "{\"xmin\": -16734755.794607824, \"ymin\": -46216395.54261096, \"xmax\": 20146822.46127449, \"ymax\": 16820128.875944283}" - }, - 102220: { - "label": "NAD 1983 HARN Wisconsin TM US Ft", - "defaultExtent": "{\"xmin\": -16734755.794607824, \"ymin\": -46216395.54261096, \"xmax\": 20146822.46127449, \"ymax\": 16820128.875944283}" - }, - 102221: { - "label": "Ocotepeque 1935 Costa Rica Lambert Norte", - "defaultExtent": "{\"xmin\": -32289354.838139847, \"ymin\": -25894684.195865467, \"xmax\": 33289354.838247836, \"ymax\": 17805469.002091587}" - }, - 102222: { - "label": "Ocotepeque 1935 Costa Rica Lambert Sur", - "defaultExtent": "{\"xmin\": -30872473.62711328, \"ymin\": -25879795.201281738, \"xmax\": 31872473.627006613, \"ymax\": 18317355.63253177}" - }, - 102223: { - "label": "WGS 1984 Costa Rica TM 90", - "defaultExtent": "{\"xmin\": -5120763.767699433, \"ymin\": -9606785.535047522, \"xmax\": 6120763.767699435, \"ymax\": 9606785.535047516}" - }, - 102224: { - "label": "MONREF 1997 UTM Zone 46N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767723998, \"ymax\": 9606785.534958888}" - }, - 102225: { - "label": "MONREF 1997 UTM Zone 47N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 102226: { - "label": "MONREF 1997 UTM Zone 48N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 102227: { - "label": "MONREF 1997 UTM Zone 49N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767723998, \"ymax\": 9606785.534958888}" - }, - 102228: { - "label": "MONREF 1997 UTM Zone 50N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 102231: { - "label": "Colombia West West Zone", - "defaultExtent": "{\"xmin\": -4623255.480734327, \"ymin\": -9119484.269387636, \"xmax\": 6623255.480734327, \"ymax\": 10102378.580751536}" - }, - 102232: { - "label": "Bogota Ciudad Bogota", - "defaultExtent": "{\"xmin\": -5533168.709167723, \"ymin\": -10023533.2666936, \"xmax\": 5717838.46716772, \"ymax\": 9206014.244564943}" - }, - 102233: { - "label": "MAGNA Ciudad Bogota", - "defaultExtent": "{\"xmin\": -5532926.192861325, \"ymin\": -10022911.009680243, \"xmax\": 5717595.950861325, \"ymax\": 9206033.28641041}" - }, - 102237: { - "label": "Pohnpei Az Eq 1971", - "defaultExtent": "{\"xmin\": -19861844.54633803, \"ymin\": -19828399.419898856, \"xmax\": 20022090.186338037, \"ymax\": 19989897.35429427}" - }, - 102238: { - "label": "Saipan Az Eq 1969", - "defaultExtent": "{\"xmin\": -19892001.273059137, \"ymin\": -19860946.938133743, \"xmax\": 19992001.2749969, \"ymax\": 19960953.910620507}" - }, - 102239: { - "label": "Guam Geodetic Triangulation Network 1963", - "defaultExtent": "{\"xmin\": -19891987.28215754, \"ymin\": -19860466.667187892, \"xmax\": 19991987.283963747, \"ymax\": 19960472.988106012}" - }, - 102240: { - "label": "Guam Geodetic Network 1993", - "defaultExtent": "{\"xmin\": -5523012.972913157, \"ymin\": -10903656.911824899, \"xmax\": 5723012.972913173, \"ymax\": 8317602.661880766}" - }, - 102247: { - "label": "NAD 1983 CORS96 Alaska Albers", - "defaultExtent": "{\"xmin\": -13739219.699563079, \"ymin\": -8935188.356798925, \"xmax\": 13739219.70003071, \"ymax\": 17285625.557825744}" - }, - 102299: { - "label": "Berghaus Star AAG", - "defaultExtent": "{\"xmin\": -18581937.60944319, \"ymin\": -15895685.9825394, \"xmax\": 18581937.60944319, \"ymax\": 19451186.101466488}" - }, - 102306: { - "label": "Nepal Nagarkot TM", - "defaultExtent": "{\"xmin\": -5121649.590179002, \"ymin\": -9608524.981769733, \"xmax\": 6121649.590178999, \"ymax\": 9608524.98176973}" - }, - 102319: { - "label": "CGRS 1993 LTM", - "defaultExtent": "{\"xmin\": -5422731.822239945, \"ymin\": -13110149.255472958, \"xmax\": 5822731.822239944, \"ymax\": 6110149.255472954}" - }, - 102328: { - "label": "ETRS 1989 UTM Zone 32N 7stellen", - "defaultExtent": "{\"xmin\": -3120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 8120763.767724001, \"ymax\": 9606785.534958888}" - }, - 102329: { - "label": "ETRS 1989 UTM Zone 32N 8stellen", - "defaultExtent": "{\"xmin\": 26879236.232276, \"ymin\": -9606785.534958892, \"xmax\": 38120763.767724, \"ymax\": 9606785.534958888}" - }, - 102359: { - "label": "ETRS 1989 UTM Zone 33N 7stellen", - "defaultExtent": "{\"xmin\": -2120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 9120763.767724, \"ymax\": 9606785.534958888}" - }, - 102360: { - "label": "ETRS 1989 UTM Zone 33N 8stellen", - "defaultExtent": "{\"xmin\": 27879236.232276, \"ymin\": -9606785.534958892, \"xmax\": 39120763.767724, \"ymax\": 9606785.534958888}" - }, - 102364: { - "label": "NAD 1983 CORS96 UTM Zone 59N", - "defaultExtent": "{\"xmin\": -5120763.76772398, \"ymin\": -9606785.534938088, \"xmax\": 6120763.767724008, \"ymax\": 9606785.534938097}" - }, - 102365: { - "label": "NAD 1983 CORS96 UTM Zone 60N", - "defaultExtent": "{\"xmin\": -5120763.767723984, \"ymin\": -9606785.534938088, \"xmax\": 6120763.767724008, \"ymax\": 9606785.534938097}" - }, - 102366: { - "label": "NAD 1983 CORS96 StatePlane Alaska 1 FIPS 5001", - "defaultExtent": "{\"xmin\": -25224974.639177933, \"ymin\": -35282627.68932256, \"xmax\": 37636719.54767623, \"ymax\": 23274307.150670152}" - }, - 102367: { - "label": "NAD 1983 CORS96 StatePlane Alaska 2 FIPS 5002", - "defaultExtent": "{\"xmin\": -5122450.67161585, \"ymin\": -15594986.160549043, \"xmax\": 6122450.671615882, \"ymax\": 3624351.287199251}" - }, - 102368: { - "label": "NAD 1983 CORS96 StatePlane Alaska 3 FIPS 5003", - "defaultExtent": "{\"xmin\": -5122450.67161585, \"ymin\": -15594986.160549043, \"xmax\": 6122450.671615885, \"ymax\": 3624351.287199251}" - }, - 102369: { - "label": "NAD 1983 CORS96 StatePlane Alaska 4 FIPS 5004", - "defaultExtent": "{\"xmin\": -5122450.67161585, \"ymin\": -15594986.160549043, \"xmax\": 6122450.671615885, \"ymax\": 3624351.287199251}" - }, - 102370: { - "label": "NAD 1983 CORS96 StatePlane Alaska 5 FIPS 5005", - "defaultExtent": "{\"xmin\": -5122450.67161585, \"ymin\": -15594986.160549043, \"xmax\": 6122450.671615885, \"ymax\": 3624351.287199251}" - }, - 102371: { - "label": "NAD 1983 CORS96 StatePlane Alaska 6 FIPS 5006", - "defaultExtent": "{\"xmin\": -5122450.671615858, \"ymin\": -15594986.160549043, \"xmax\": 6122450.671615882, \"ymax\": 3624351.287199251}" - }, - 102372: { - "label": "NAD 1983 CORS96 StatePlane Alaska 7 FIPS 5007", - "defaultExtent": "{\"xmin\": -5122450.67161585, \"ymin\": -15594986.160549043, \"xmax\": 6122450.671615882, \"ymax\": 3624351.287199251}" - }, - 102373: { - "label": "NAD 1983 CORS96 StatePlane Alaska 8 FIPS 5008", - "defaultExtent": "{\"xmin\": -5122450.67161585, \"ymin\": -15594986.160549043, \"xmax\": 6122450.671615882, \"ymax\": 3624351.287199251}" - }, - 102374: { - "label": "NAD 1983 CORS96 StatePlane Alaska 9 FIPS 5009", - "defaultExtent": "{\"xmin\": -5122450.67161585, \"ymin\": -15594986.160549043, \"xmax\": 6122450.671615886, \"ymax\": 3624351.287199251}" - }, - 102375: { - "label": "NAD 1983 CORS96 StatePlane Alaska 10 FIPS 5010", - "defaultExtent": "{\"xmin\": -34866236.36030873, \"ymin\": -30817495.97745897, \"xmax\": 36866236.36020292, \"ymax\": 33859948.69122673}" - }, - 102376: { - "label": "NAD 1983 CORS96 StatePlane Oregon North FIPS 3601", - "defaultExtent": "{\"xmin\": -33934395.67833442, \"ymin\": -29916770.9826887, \"xmax\": 38934395.67866903, \"ymax\": 28774826.90963382}" - }, - 102377: { - "label": "NAD 1983 CORS96 StatePlane Oregon South FIPS 3602", - "defaultExtent": "{\"xmin\": -35126017.07220474, \"ymin\": -29649727.834081486, \"xmax\": 38126017.072228044, \"ymax\": 27002732.65337064}" - }, - 102378: { - "label": "NAD 1983 CORS96 StatePlane Oregon North FIPS 3601 Ft Intl", - "defaultExtent": "{\"xmin\": -111333319.15464048, \"ymin\": -98152135.76997603, \"xmax\": 127737518.6308039, \"ymax\": 94405600.09722382}" - }, - 102379: { - "label": "NAD 1983 CORS96 StatePlane Oregon South FIPS 3602 Ft Intl", - "defaultExtent": "{\"xmin\": -115242838.16340137, \"ymin\": -97276009.95433559, \"xmax\": 125085357.8485172, \"ymax\": 88591642.56355196}" - }, - 102380: { - "label": "NAD 1983 CORS96 Oregon Statewide Lambert", - "defaultExtent": "{\"xmin\": -36115366.195192955, \"ymin\": -29681657.82664154, \"xmax\": 36915366.19580745, \"ymax\": 28096555.99768769}" - }, - 102381: { - "label": "NAD 1983 CORS96 Oregon Statewide Lambert Ft Intl", - "defaultExtent": "{\"xmin\": -118488734.23619735, \"ymin\": -97380767.14777409, \"xmax\": 121113406.1542239, \"ymax\": 92180301.82968402}" - }, - 102382: { - "label": "NAD 1983 2011 UTM Zone 13N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 102383: { - "label": "NAD 1983 2011 UTM Zone 14N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 102384: { - "label": "NAD 1983 2011 UTM Zone 15N", - "defaultExtent": "{\"xmin\": -5120763.767723998, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 102385: { - "label": "NAD 1983 2011 UTM Zone 16N", - "defaultExtent": "{\"xmin\": -5120763.767723998, \"ymin\": -9606785.534958893, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 102386: { - "label": "NAD 1983 2011 UTM Zone 17N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 102387: { - "label": "NAD 1983 2011 UTM Zone 18N", - "defaultExtent": "{\"xmin\": -5120763.767724002, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 102388: { - "label": "NAD 1983 2011 UTM Zone 19N", - "defaultExtent": "{\"xmin\": -5120763.767724002, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 102389: { - "label": "NAD 1983 Fargo Ground Coordinate System", - "defaultExtent": "{\"xmin\": -100235394.51936483, \"ymin\": -82178529.15795694, \"xmax\": 113167737.30149743, \"ymax\": 48605352.35735963}" - }, - 102390: { - "label": "NAD 1983 HARN Fargo Ground Coordinate System", - "defaultExtent": "{\"xmin\": -100235394.51936483, \"ymin\": -82178529.15795694, \"xmax\": 113167737.30149743, \"ymax\": 48605352.35735963}" - }, - 102391: { - "label": "NAD 1983 2011 Fargo Ground Coordinate System", - "defaultExtent": "{\"xmin\": -100235394.51936483, \"ymin\": -82178529.15795694, \"xmax\": 113167737.30149743, \"ymax\": 48605352.35735963}" - }, - 102401: { - "label": "NAD 1983 CORS96 UTM Zone 1N", - "defaultExtent": "{\"xmin\": -5120763.767723977, \"ymin\": -9606785.534938088, \"xmax\": 6120763.767724008, \"ymax\": 9606785.534938097}" - }, - 102402: { - "label": "NAD 1983 CORS96 UTM Zone 2N", - "defaultExtent": "{\"xmin\": -5120763.767723977, \"ymin\": -9606785.534938088, \"xmax\": 6120763.767724008, \"ymax\": 9606785.534938097}" - }, - 102403: { - "label": "NAD 1983 CORS96 UTM Zone 3N", - "defaultExtent": "{\"xmin\": -5120763.767723984, \"ymin\": -9606785.534938088, \"xmax\": 6120763.767724008, \"ymax\": 9606785.534938097}" - }, - 102404: { - "label": "NAD 1983 CORS96 UTM Zone 4N", - "defaultExtent": "{\"xmin\": -5120763.767723977, \"ymin\": -9606785.534938088, \"xmax\": 6120763.767724011, \"ymax\": 9606785.534938097}" - }, - 102405: { - "label": "NAD 1983 CORS96 UTM Zone 5N", - "defaultExtent": "{\"xmin\": -5120763.767723977, \"ymin\": -9606785.534938088, \"xmax\": 6120763.767724008, \"ymax\": 9606785.534938097}" - }, - 102406: { - "label": "NAD 1983 CORS96 UTM Zone 6N", - "defaultExtent": "{\"xmin\": -5120763.767723984, \"ymin\": -9606785.534938088, \"xmax\": 6120763.767724008, \"ymax\": 9606785.534938097}" - }, - 102407: { - "label": "NAD 1983 CORS96 UTM Zone 7N", - "defaultExtent": "{\"xmin\": -5120763.767723977, \"ymin\": -9606785.534938088, \"xmax\": 6120763.767724011, \"ymax\": 9606785.534938097}" - }, - 102408: { - "label": "NAD 1983 CORS96 UTM Zone 8N", - "defaultExtent": "{\"xmin\": -5120761.968321789, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 102409: { - "label": "NAD 1983 CORS96 UTM Zone 9N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 102410: { - "label": "NAD 1983 CORS96 UTM Zone 10N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724002, \"ymax\": 9606785.534958888}" - }, - 102411: { - "label": "NAD 1983 CORS96 UTM Zone 11N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 102412: { - "label": "NAD 1983 CORS96 UTM Zone 12N", - "defaultExtent": "{\"xmin\": -5120763.767723998, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 102413: { - "label": "NAD 1983 CORS96 UTM Zone 13N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 102414: { - "label": "NAD 1983 CORS96 UTM Zone 14N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 102415: { - "label": "NAD 1983 CORS96 UTM Zone 15N", - "defaultExtent": "{\"xmin\": -5120763.767723998, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 102416: { - "label": "NAD 1983 CORS96 UTM Zone 16N", - "defaultExtent": "{\"xmin\": -5120763.767723998, \"ymin\": -9606785.534958893, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 102417: { - "label": "NAD 1983 CORS96 UTM Zone 17N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 102418: { - "label": "NAD 1983 CORS96 UTM Zone 18N", - "defaultExtent": "{\"xmin\": -5120763.767724002, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 102419: { - "label": "NAD 1983 CORS96 UTM Zone 19N", - "defaultExtent": "{\"xmin\": -5120763.767724002, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 102421: { - "label": "WGS 1984 ARC System Zone 01", - "defaultExtent": "{\"xmin\": -18451731.755464125, \"ymin\": -9467848.237116976, \"xmax\": 18451731.755464125, \"ymax\": 9467848.237116976}" - }, - 102422: { - "label": "WGS 1984 ARC System Zone 02", - "defaultExtent": "{\"xmin\": -15093363.999496877, \"ymin\": -9467848.237116976, \"xmax\": 15093363.999496877, \"ymax\": 9467848.237116976}" - }, - 102423: { - "label": "WGS 1984 ARC System Zone 03", - "defaultExtent": "{\"xmin\": -12256631.820519533, \"ymin\": -9467848.237116976, \"xmax\": 12256631.820519533, \"ymax\": 9467848.237116976}" - }, - 102424: { - "label": "WGS 1984 ARC System Zone 04", - "defaultExtent": "{\"xmin\": -9920529.006921647, \"ymin\": -9467848.237116976, \"xmax\": 9920529.006921647, \"ymax\": 9467848.237116976}" - }, - 102425: { - "label": "WGS 1984 ARC System Zone 05", - "defaultExtent": "{\"xmin\": -8119876.167358154, \"ymin\": -9467848.237116976, \"xmax\": 8119876.167358154, \"ymax\": 9467848.237116976}" - }, - 102426: { - "label": "WGS 1984 ARC System Zone 06", - "defaultExtent": "{\"xmin\": -6817410.319238347, \"ymin\": -9467848.237116976, \"xmax\": 6817410.319238347, \"ymax\": 9467848.237116976}" - }, - 102427: { - "label": "WGS 1984 ARC System Zone 07", - "defaultExtent": "{\"xmin\": -5478594.618995053, \"ymin\": -9467848.237116976, \"xmax\": 5478594.618995053, \"ymax\": 9467848.237116976}" - }, - 102428: { - "label": "WGS 1984 ARC System Zone 08", - "defaultExtent": "{\"xmin\": -4106889.16086334, \"ymin\": -9467848.237116976, \"xmax\": 4106889.16086334, \"ymax\": 9467848.237116976}" - }, - 102429: { - "label": "WGS 1984 ARC System Zone 09", - "defaultExtent": "{\"xmin\": -19451186.10240804, \"ymin\": -19451186.102408137, \"xmax\": 19451186.10240804, \"ymax\": 19451186.10240775}" - }, - 102430: { - "label": "WGS 1984 ARC System Zone 10", - "defaultExtent": "{\"xmin\": -18451731.755464125, \"ymin\": -9467848.237116976, \"xmax\": 18451731.755464125, \"ymax\": 9467848.237116976}" - }, - 102431: { - "label": "WGS 1984 ARC System Zone 11", - "defaultExtent": "{\"xmin\": -15093363.999496877, \"ymin\": -9467848.237116976, \"xmax\": 15093363.999496877, \"ymax\": 9467848.237116976}" - }, - 102432: { - "label": "WGS 1984 ARC System Zone 12", - "defaultExtent": "{\"xmin\": -12256631.820519533, \"ymin\": -9467848.237116976, \"xmax\": 12256631.820519533, \"ymax\": 9467848.237116976}" - }, - 102433: { - "label": "WGS 1984 ARC System Zone 13", - "defaultExtent": "{\"xmin\": -9920529.006921647, \"ymin\": -9467848.237116976, \"xmax\": 9920529.006921647, \"ymax\": 9467848.237116976}" - }, - 102434: { - "label": "WGS 1984 ARC System Zone 14", - "defaultExtent": "{\"xmin\": -8119876.167358154, \"ymin\": -9467848.237116976, \"xmax\": 8119876.167358154, \"ymax\": 9467848.237116976}" - }, - 102435: { - "label": "WGS 1984 ARC System Zone 15", - "defaultExtent": "{\"xmin\": -6817410.319238347, \"ymin\": -9467848.237116976, \"xmax\": 6817410.319238347, \"ymax\": 9467848.237116976}" - }, - 102436: { - "label": "WGS 1984 ARC System Zone 16", - "defaultExtent": "{\"xmin\": -5478594.618995053, \"ymin\": -9467848.237116976, \"xmax\": 5478594.618995053, \"ymax\": 9467848.237116976}" - }, - 102437: { - "label": "WGS 1984 ARC System Zone 17", - "defaultExtent": "{\"xmin\": -4106889.16086334, \"ymin\": -9467848.237116976, \"xmax\": 4106889.16086334, \"ymax\": 9467848.237116976}" - }, - 102438: { - "label": "WGS 1984 ARC System Zone 18", - "defaultExtent": "{\"xmin\": -19451186.10240804, \"ymin\": -19451186.10240775, \"xmax\": 19451186.10240804, \"ymax\": 19451186.102408137}" - }, - 102440: { - "label": "LKS 1992 Latvia TM 0", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767723999, \"ymax\": 9606785.534958888}" - }, - 102450: { - "label": "NGO 1948 Oslo Baerum Kommune", - "defaultExtent": "{\"xmin\": -5602430.024341378, \"ymin\": -16243397.777911408, \"xmax\": 5642428.664341379, \"ymax\": 2976026.3585127923}" - }, - 102451: { - "label": "NGO 1948 Oslo Bergenhalvoen", - "defaultExtent": "{\"xmin\": -5522429.344341379, \"ymin\": -16240419.987911409, \"xmax\": 5722429.344341379, \"ymax\": 2979004.1485127923}" - }, - 102452: { - "label": "NGO 1948 Oslo Oslo Kommune", - "defaultExtent": "{\"xmin\": -5622429.344341379, \"ymin\": -16253399.167911408, \"xmax\": 5622429.344341379, \"ymax\": 2966024.968512792}" - }, - 102461: { - "label": "NAD 1983 HARN StatePlane Hawaii 1 FIPS 5101 Feet", - "defaultExtent": "{\"xmin\": -16807136.789686047, \"ymin\": -38364292.03130892, \"xmax\": 20087970.123019453, \"ymax\": 24695355.02845315}" - }, - 102462: { - "label": "NAD 1983 HARN StatePlane Hawaii 2 FIPS 5102 Feet", - "defaultExtent": "{\"xmin\": -16807136.789857857, \"ymin\": -38909052.224359296, \"xmax\": 20087970.12284765, \"ymax\": 24150594.83541766}" - }, - 102464: { - "label": "NAD 1983 HARN StatePlane Hawaii 4 FIPS 5104 Feet", - "defaultExtent": "{\"xmin\": -16807567.246948577, \"ymin\": -39454826.42594335, \"xmax\": 20088400.580282014, \"ymax\": 23606292.074631467}" - }, - 102465: { - "label": "NAD 1983 HARN StatePlane Hawaii 5 FIPS 5105 Feet", - "defaultExtent": "{\"xmin\": -16807751.72880437, \"ymin\": -39394674.88557028, \"xmax\": 20088585.06179416, \"ymax\": 23667074.23251061}" - }, - 102470: { - "label": "Cape Lo15", - "defaultExtent": "{\"xmin\": -5623193.699727823, \"ymin\": -9610503.472333794, \"xmax\": 5623193.699727823, \"ymax\": 9610503.4723338}" - }, - 102471: { - "label": "Cape Lo17", - "defaultExtent": "{\"xmin\": -5623193.699727823, \"ymin\": -9610503.472333794, \"xmax\": 5623193.699727823, \"ymax\": 9610503.4723338}" - }, - 102472: { - "label": "Cape Lo19", - "defaultExtent": "{\"xmin\": -5623193.699727823, \"ymin\": -9610503.472333794, \"xmax\": 5623193.699727823, \"ymax\": 9610503.4723338}" - }, - 102473: { - "label": "Cape Lo21", - "defaultExtent": "{\"xmin\": -5623193.699727823, \"ymin\": -9610503.472333794, \"xmax\": 5623193.699727823, \"ymax\": 9610503.4723338}" - }, - 102474: { - "label": "Cape Lo23", - "defaultExtent": "{\"xmin\": -5623193.69972782, \"ymin\": -9610503.472333794, \"xmax\": 5623193.699727823, \"ymax\": 9610503.4723338}" - }, - 102475: { - "label": "Cape Lo25", - "defaultExtent": "{\"xmin\": -5623193.699727823, \"ymin\": -9610503.472333794, \"xmax\": 5623193.699727823, \"ymax\": 9610503.4723338}" - }, - 102476: { - "label": "Cape Lo27", - "defaultExtent": "{\"xmin\": -5623193.699727823, \"ymin\": -9610503.472333794, \"xmax\": 5623193.699727823, \"ymax\": 9610503.4723338}" - }, - 102477: { - "label": "Cape Lo29", - "defaultExtent": "{\"xmin\": -5623193.699727823, \"ymin\": -9610503.472333794, \"xmax\": 5623193.699727823, \"ymax\": 9610503.4723338}" - }, - 102478: { - "label": "Cape Lo31", - "defaultExtent": "{\"xmin\": -5623193.699727825, \"ymin\": -9610503.472333794, \"xmax\": 5623193.699727823, \"ymax\": 9610503.4723338}" - }, - 102479: { - "label": "Cape Lo33", - "defaultExtent": "{\"xmin\": -5623193.699727822, \"ymin\": -9610503.472333794, \"xmax\": 5623193.699727823, \"ymax\": 9610503.4723338}" - }, - 102480: { - "label": "Hartebeesthoek94 Lo15", - "defaultExtent": "{\"xmin\": -5623012.972888589, \"ymin\": -9610629.7869623, \"xmax\": 5623012.972888589, \"ymax\": 9610629.786962306}" - }, - 102481: { - "label": "Hartebeesthoek94 Lo17", - "defaultExtent": "{\"xmin\": -5623012.972888589, \"ymin\": -9610629.7869623, \"xmax\": 5623012.972888589, \"ymax\": 9610629.786962306}" - }, - 102482: { - "label": "Hartebeesthoek94 Lo19", - "defaultExtent": "{\"xmin\": -5623012.972888589, \"ymin\": -9610629.7869623, \"xmax\": 5623012.972888589, \"ymax\": 9610629.786962306}" - }, - 102483: { - "label": "Hartebeesthoek94 Lo21", - "defaultExtent": "{\"xmin\": -5623012.972888589, \"ymin\": -9610629.7869623, \"xmax\": 5623012.972888589, \"ymax\": 9610629.786962306}" - }, - 102484: { - "label": "Hartebeesthoek94 Lo23", - "defaultExtent": "{\"xmin\": -5623012.972888586, \"ymin\": -9610629.7869623, \"xmax\": 5623012.972888589, \"ymax\": 9610629.786962306}" - }, - 102485: { - "label": "Hartebeesthoek94 Lo25", - "defaultExtent": "{\"xmin\": -5623012.972888589, \"ymin\": -9610629.7869623, \"xmax\": 5623012.972888589, \"ymax\": 9610629.786962306}" - }, - 102486: { - "label": "Hartebeesthoek94 Lo27", - "defaultExtent": "{\"xmin\": -5623012.972888589, \"ymin\": -9610629.7869623, \"xmax\": 5623012.972888589, \"ymax\": 9610629.786962306}" - }, - 102487: { - "label": "Hartebeesthoek94 Lo29", - "defaultExtent": "{\"xmin\": -5623012.972888589, \"ymin\": -9610629.7869623, \"xmax\": 5623012.972888589, \"ymax\": 9610629.786962306}" - }, - 102488: { - "label": "Hartebeesthoek94 Lo31", - "defaultExtent": "{\"xmin\": -5623012.97288859, \"ymin\": -9610629.7869623, \"xmax\": 5623012.972888589, \"ymax\": 9610629.786962306}" - }, - 102489: { - "label": "Hartebeesthoek94 Lo33", - "defaultExtent": "{\"xmin\": -5623012.972888588, \"ymin\": -9610629.7869623, \"xmax\": 5623012.972888589, \"ymax\": 9610629.786962306}" - }, - 102491: { - "label": "Nord Algerie Ancienne Degree", - "defaultExtent": "{\"xmin\": -37094490.67083504, \"ymin\": -28508539.130123466, \"xmax\": 38094490.67078953, \"ymax\": 19323033.9283213}" - }, - 102492: { - "label": "Sud Algerie Ancienne Degree", - "defaultExtent": "{\"xmin\": -37644652.570998244, \"ymin\": -28128361.97527217, \"xmax\": 38644652.571257345, \"ymax\": 15867737.975734096}" - }, - 102500: { - "label": "OCRS Baker NAD 1983 CORS96 TM Feet Intl", - "defaultExtent": "{\"xmin\": -18319923.408756007, \"ymin\": -47711079.79111914, \"xmax\": 18582390.600357056, \"ymax\": 15360885.350872582}" - }, - 102501: { - "label": "OCRS Bend-Burns NAD 1983 CORS96 LCC Feet Intl", - "defaultExtent": "{\"xmin\": -119638728.38533331, \"ymin\": -97873161.4050427, \"xmax\": 120426129.95942643, \"ymax\": 89771410.74817415}" - }, - 102502: { - "label": "OCRS Bend-Klamath Falls NAD 1983 CORS96 TM Feet Intl", - "defaultExtent": "{\"xmin\": -18189427.74116715, \"ymin\": -46710452.26979232, \"xmax\": 18714362.124369252, \"ymax\": 16364035.347209075}" - }, - 102503: { - "label": "OCRS Bend-Redmond-Prineville NAD 1983 CORS96 LCC Feet Intl", - "defaultExtent": "{\"xmin\": -119446142.89505278, \"ymin\": -98073895.54285371, \"xmax\": 119971077.27853593, \"ymax\": 92901549.22119384}" - }, - 102504: { - "label": "OCRS Canyonville-Grants Pass NAD 1983 CORS96 TM Feet Intl", - "defaultExtent": "{\"xmin\": -18318263.07027975, \"ymin\": -46977716.48073008, \"xmax\": 18580730.261880796, \"ymax\": 16088573.09248987}" - }, - 102505: { - "label": "OCRS Columbia River East NAD 1983 CORS96 LCC Feet Intl", - "defaultExtent": "{\"xmin\": -118908952.32841167, \"ymin\": -98823123.67372929, \"xmax\": 119893204.29886703, \"ymax\": 95316369.30990608}" - }, - 102506: { - "label": "OCRS Columbia River West NAD 1983 CORS96 OM Feet Intl", - "defaultExtent": "{\"xmin\": -61024704.34177867, \"ymin\": -119681127.84266053, \"xmax\": 109250959.08341469, \"ymax\": 94689924.24128178}" - }, - 102507: { - "label": "OCRS Cottage Grove-Canyonville NAD 1983 CORS96 TM Feet Intl", - "defaultExtent": "{\"xmin\": -18284587.605680913, \"ymin\": -47096996.87176883, \"xmax\": 18612671.595182218, \"ymax\": 15966328.793314748}" - }, - 102508: { - "label": "OCRS Dufur-Madras NAD 1983 CORS96 TM Feet Intl", - "defaultExtent": "{\"xmin\": -18187767.4026909, \"ymin\": -47708694.618757166, \"xmax\": 18712701.785892997, \"ymax\": 15360117.429472463}" - }, - 102509: { - "label": "OCRS Eugene NAD 1983 CORS96 TM Feet Intl", - "defaultExtent": "{\"xmin\": -18284440.02003858, \"ymin\": -47430746.57526374, \"xmax\": 18612524.00953989, \"ymax\": 15632074.5948179}" - }, - 102510: { - "label": "OCRS Grants Pass-Ashland NAD 1983 CORS96 TM Feet Intl", - "defaultExtent": "{\"xmin\": -18284956.569786742, \"ymin\": -46703120.19520088, \"xmax\": 18613040.55928805, \"ymax\": 16361466.70738753}" - }, - 102511: { - "label": "OCRS Gresham-Warm Springs NAD 1983 CORS96 TM Feet Intl", - "defaultExtent": "{\"xmin\": -18416319.303024314, \"ymin\": -47888136.29737491, \"xmax\": 18481936.10092457, \"ymax\": 15176892.038340196}" - }, - 102512: { - "label": "OCRS La Grande NAD 1983 CORS96 TM Feet Intl", - "defaultExtent": "{\"xmin\": -18319369.962597255, \"ymin\": -47891967.156735726, \"xmax\": 18581837.154198304, \"ymax\": 15178106.12899873}" - }, - 102513: { - "label": "OCRS Ontario NAD 1983 CORS96 TM Feet Intl", - "defaultExtent": "{\"xmin\": -18187582.920637976, \"ymin\": -47252505.1711826, \"xmax\": 18712517.30384008, \"ymax\": 15815676.258294597}" - }, - 102514: { - "label": "OCRS Oregon Coast NAD 1983 CORS96 OM Feet Intl", - "defaultExtent": "{\"xmin\": -106076238.07579784, \"ymin\": -83317173.51742797, \"xmax\": 108582448.7197009, \"ymax\": 52420717.27563217}" - }, - 102515: { - "label": "OCRS Pendleton-La Grande NAD 1983 CORS96 TM Feet Intl", - "defaultExtent": "{\"xmin\": -18353008.530785512, \"ymin\": -47924511.352364, \"xmax\": 18549858.9244863, \"ymax\": 15148399.717756351}" - }, - 102516: { - "label": "OCRS Pendleton NAD 1983 CORS96 TM Feet Intl", - "defaultExtent": "{\"xmin\": -18252185.0672472, \"ymin\": -47979054.36642713, \"xmax\": 18645885.854648773, \"ymax\": 15085658.659911765}" - }, - 102517: { - "label": "OCRS Portland NAD 1983 CORS96 LCC Feet Intl", - "defaultExtent": "{\"xmin\": -119120009.16551045, \"ymin\": -98685329.17476103, \"xmax\": 119776177.1444463, \"ymax\": 94933290.90002361}" - }, - 102518: { - "label": "OCRS Salem NAD 1983 CORS96 TM Feet Intl", - "defaultExtent": "{\"xmin\": -18284347.779012118, \"ymin\": -47643162.30400496, \"xmax\": 18612431.76851343, \"ymax\": 15419343.556700477}" - }, - 102519: { - "label": "OCRS Santiam Pass NAD 1983 CORS96 TM Feet Intl", - "defaultExtent": "{\"xmin\": -18451064.76353007, \"ymin\": -47558917.6609738, \"xmax\": 18451064.76353007, \"ymax\": 15512732.1716417}" - }, - 102530: { - "label": "OCRS Baker NAD 1983 CORS96 TM Meters", - "defaultExtent": "{\"xmin\": -5583912.654988831, \"ymin\": -14542337.120333115, \"xmax\": 5663912.654988831, \"ymax\": 4681997.854945963}" - }, - 102531: { - "label": "OCRS Bend-Burns NAD 1983 CORS96 LCC Meters", - "defaultExtent": "{\"xmin\": -36465884.411849596, \"ymin\": -29831739.596257016, \"xmax\": 36705884.41163318, \"ymax\": 27362325.99604348}" - }, - 102532: { - "label": "OCRS Bend-Klamath Falls NAD 1983 CORS96 TM Meters", - "defaultExtent": "{\"xmin\": -5544137.575507748, \"ymin\": -14237345.851832699, \"xmax\": 5704137.575507748, \"ymax\": 4987757.973829326}" - }, - 102533: { - "label": "OCRS Bend-Redmond-Prineville NAD 1983 CORS96 LCC Meters", - "defaultExtent": "{\"xmin\": -36407184.35441209, \"ymin\": -29892923.361461814, \"xmax\": 36567184.35449775, \"ymax\": 28316392.202619884}" - }, - 102534: { - "label": "OCRS Canyonville-Grants Pass NAD 1983 CORS96 TM Meters", - "defaultExtent": "{\"xmin\": -5583406.583821269, \"ymin\": -14318807.983326528, \"xmax\": 5663406.583821267, \"ymax\": 4903797.078590913}" - }, - 102535: { - "label": "OCRS Columbia River East NAD 1983 CORS96 LCC Meters", - "defaultExtent": "{\"xmin\": -36243448.66969988, \"ymin\": -30121288.095752686, \"xmax\": 36543448.67029467, \"ymax\": 29052429.365659375}" - }, - 102536: { - "label": "OCRS Columbia River West NAD 1983 CORS96 OM Meters", - "defaultExtent": "{\"xmin\": -18600329.88337414, \"ymin\": -36478807.76644293, \"xmax\": 33299692.3286248, \"ymax\": 28861488.90874269}" - }, - 102537: { - "label": "OCRS Cottage Grove-Canyonville NAD 1983 CORS96 TM Meters", - "defaultExtent": "{\"xmin\": -5573142.302211543, \"ymin\": -14355164.64651514, \"xmax\": 5673142.302211541, \"ymax\": 4866537.016202335}" - }, - 102538: { - "label": "OCRS Dufur-Madras NAD 1983 CORS96 TM Meters", - "defaultExtent": "{\"xmin\": -5543631.504340186, \"ymin\": -14541610.119797185, \"xmax\": 5703631.504340186, \"ymax\": 4681763.792503207}" - }, - 102539: { - "label": "OCRS Eugene NAD 1983 CORS96 TM Meters", - "defaultExtent": "{\"xmin\": -5573097.31810776, \"ymin\": -14456891.55614039, \"xmax\": 5673097.31810776, \"ymax\": 4764656.336500496}" - }, - 102540: { - "label": "OCRS Grants Pass-Ashland NAD 1983 CORS96 TM Meters", - "defaultExtent": "{\"xmin\": -5573254.762471, \"ymin\": -14235111.03549723, \"xmax\": 5673254.762470998, \"ymax\": 4986975.052411719}" - }, - 102541: { - "label": "OCRS Gresham-Warm Springs NAD 1983 CORS96 TM Meters", - "defaultExtent": "{\"xmin\": -5613294.123561812, \"ymin\": -14596303.943439875, \"xmax\": 5633294.12356181, \"ymax\": 4625916.693286092}" - }, - 102542: { - "label": "OCRS La Grande NAD 1983 CORS96 TM Meters", - "defaultExtent": "{\"xmin\": -5583743.964599644, \"ymin\": -14597471.58937305, \"xmax\": 5663743.964599644, \"ymax\": 4626286.748118813}" - }, - 102543: { - "label": "OCRS Ontario NAD 1983 CORS96 TM Meters", - "defaultExtent": "{\"xmin\": -5543575.274210456, \"ymin\": -14402563.576176459, \"xmax\": 5703575.274210456, \"ymax\": 4820618.123528194}" - }, - 102544: { - "label": "OCRS Oregon Coast NAD 1983 CORS96 OM Meters", - "defaultExtent": "{\"xmin\": -32332037.365503184, \"ymin\": -25395074.488112047, \"xmax\": 33095930.369764816, \"ymax\": 15977834.625612691}" - }, - 102545: { - "label": "OCRS Pendleton-La Grande NAD 1983 CORS96 TM Meters", - "defaultExtent": "{\"xmin\": -5593997.000183425, \"ymin\": -14607391.06020055, \"xmax\": 5653997.000183425, \"ymax\": 4617232.233972136}" - }, - 102546: { - "label": "OCRS Pendleton NAD 1983 CORS96 TM Meters", - "defaultExtent": "{\"xmin\": -5563266.008496947, \"ymin\": -14624015.770886991, \"xmax\": 5683266.008496947, \"ymax\": 4598108.759541106}" - }, - 102547: { - "label": "OCRS Portland NAD 1983 CORS96 LCC Meters", - "defaultExtent": "{\"xmin\": -36307778.79364759, \"ymin\": -30079288.33246716, \"xmax\": 36507778.79330929, \"ymax\": 28935667.066327196}" - }, - 102548: { - "label": "OCRS Salem NAD 1983 CORS96 TM Meters", - "defaultExtent": "{\"xmin\": -5573069.203042894, \"ymin\": -14521635.870260712, \"xmax\": 5673069.203042894, \"ymax\": 4699815.916082306}" - }, - 102549: { - "label": "OCRS Santiam Pass NAD 1983 CORS96 TM Meters", - "defaultExtent": "{\"xmin\": -5623884.539923966, \"ymin\": -14495958.103064816, \"xmax\": 5623884.539923966, \"ymax\": 4728280.76591639}" - }, - 102570: { - "label": "WGS 1984 Complex UTM Zone 20N", - "defaultExtent": "{\"xmin\": -15407901.093871329, \"ymin\": -9901788.062290225, \"xmax\": 16407901.093871314, \"ymax\": 9901788.062290225}" - }, - 102571: { - "label": "WGS 1984 Complex UTM Zone 21N", - "defaultExtent": "{\"xmin\": -15407901.093871329, \"ymin\": -9901788.062290225, \"xmax\": 16407901.093871314, \"ymax\": 9901788.062290225}" - }, - 102572: { - "label": "WGS 1984 Complex UTM Zone 22N", - "defaultExtent": "{\"xmin\": -15407901.093871297, \"ymin\": -9901788.062290225, \"xmax\": 16407901.093871314, \"ymax\": 9901788.062290225}" - }, - 102573: { - "label": "WGS 1984 Complex UTM Zone 23N", - "defaultExtent": "{\"xmin\": -15407901.093871329, \"ymin\": -9901788.062290225, \"xmax\": 16407901.093871314, \"ymax\": 9901788.062290225}" - }, - 102574: { - "label": "WGS 1984 Complex UTM Zone 24N", - "defaultExtent": "{\"xmin\": -15407901.093871329, \"ymin\": -9901788.062290225, \"xmax\": 16407901.093871314, \"ymax\": 9901788.062290225}" - }, - 102575: { - "label": "WGS 1984 Complex UTM Zone 25N", - "defaultExtent": "{\"xmin\": -15407901.093871297, \"ymin\": -9901788.062290225, \"xmax\": 16407901.093871314, \"ymax\": 9901788.062290225}" - }, - 102576: { - "label": "WGS 1984 Complex UTM Zone 26N", - "defaultExtent": "{\"xmin\": -15407901.093871329, \"ymin\": -9901788.062290225, \"xmax\": 16407901.093871314, \"ymax\": 9901788.062290225}" - }, - 102577: { - "label": "WGS 1984 Complex UTM Zone 27N", - "defaultExtent": "{\"xmin\": -15407901.093871329, \"ymin\": -9901788.062290225, \"xmax\": 16407901.093871314, \"ymax\": 9901788.062290225}" - }, - 102578: { - "label": "WGS 1984 Complex UTM Zone 28N", - "defaultExtent": "{\"xmin\": -15407901.093871297, \"ymin\": -9901788.062290225, \"xmax\": 16407901.093871314, \"ymax\": 9901788.062290225}" - }, - 102579: { - "label": "WGS 1984 Complex UTM Zone 29N", - "defaultExtent": "{\"xmin\": -15407901.093871329, \"ymin\": -9901788.062290225, \"xmax\": 16407901.093871314, \"ymax\": 9901788.062290225}" - }, - 102580: { - "label": "WGS 1984 Complex UTM Zone 30N", - "defaultExtent": "{\"xmin\": -15407901.093871329, \"ymin\": -9901788.062290225, \"xmax\": 16407901.093871295, \"ymax\": 9901788.062290225}" - }, - 102581: { - "label": "NTF France I degrees", - "defaultExtent": "{\"xmin\": -35485896.991476975, \"ymin\": -29428280.31174537, \"xmax\": 36685896.99143446, \"ymax\": 32994583.358365063}" - }, - 102582: { - "label": "NTF France II degrees", - "defaultExtent": "{\"xmin\": -35690513.61572032, \"ymin\": -28090817.847528167, \"xmax\": 36890513.615681395, \"ymax\": 32110710.05609012}" - }, - 102583: { - "label": "NTF France III degrees", - "defaultExtent": "{\"xmin\": -35928901.73456383, \"ymin\": -26736996.66156521, \"xmax\": 37128901.73917271, \"ymax\": 30881827.25767343}" - }, - 102584: { - "label": "NTF France IV degrees", - "defaultExtent": "{\"xmin\": -36730543.38940598, \"ymin\": -25491616.205146648, \"xmax\": 36731012.105471246, \"ymax\": 30062431.501449645}" - }, - 102585: { - "label": "NTF Lambert Zone I", - "defaultExtent": "{\"xmin\": -35485896.991476975, \"ymin\": -29428280.31174537, \"xmax\": 36685896.99143446, \"ymax\": 32994583.358365063}" - }, - 102586: { - "label": "NTF Lambert Zone II", - "defaultExtent": "{\"xmin\": -35690513.61572032, \"ymin\": -28090817.847528167, \"xmax\": 36890513.615681395, \"ymax\": 32110710.05609012}" - }, - 102587: { - "label": "NTF Lambert Zone III", - "defaultExtent": "{\"xmin\": -35928901.73456383, \"ymin\": -26736996.66156521, \"xmax\": 37128901.73917271, \"ymax\": 30881827.25767343}" - }, - 102588: { - "label": "NTF Lambert Zone IV", - "defaultExtent": "{\"xmin\": -36730543.38940598, \"ymin\": -25491616.205146648, \"xmax\": 36731012.105471246, \"ymax\": 30062431.501449645}" - }, - 102589: { - "label": "Panhandle Energy Albers", - "defaultExtent": "{\"xmin\": -56502695.41768322, \"ymin\": -23675443.51439447, \"xmax\": 56502695.41776468, \"ymax\": 47835140.66649554}" - }, - 102590: { - "label": "Tananarive 1925 Laborde Grid", - "defaultExtent": "{\"xmin\": -7929529.190219833, \"ymin\": -6100528.54577323, \"xmax\": 8729530.414381389, \"ymax\": 7700528.545773239}" - }, - 102591: { - "label": "Nord Algerie Degree", - "defaultExtent": "{\"xmin\": -37094354.69597727, \"ymin\": -28508448.195068896, \"xmax\": 38094624.69593176, \"ymax\": 19323123.623061676}" - }, - 102592: { - "label": "Sud Algerie Degree", - "defaultExtent": "{\"xmin\": -37644516.63147091, \"ymin\": -28128271.084845144, \"xmax\": 38644786.63173002, \"ymax\": 15867827.782508884}" - }, - 102593: { - "label": "JGD 2011 UTM Zone 51N", - "defaultExtent": "{\"xmin\": -5120763.767724002, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 102594: { - "label": "JGD 2011 UTM Zone 52N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 102595: { - "label": "JGD 2011 UTM Zone 53N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958888, \"xmax\": 6120761.968321789, \"ymax\": 9606785.534958888}" - }, - 102596: { - "label": "JGD 2011 UTM Zone 54N", - "defaultExtent": "{\"xmin\": -5120763.767723992, \"ymin\": -9606785.534938088, \"xmax\": 6120763.767724008, \"ymax\": 9606785.534938097}" - }, - 102597: { - "label": "JGD 2011 UTM Zone 55N", - "defaultExtent": "{\"xmin\": -5120763.767723991, \"ymin\": -9606785.534938088, \"xmax\": 6120763.767724008, \"ymax\": 9606785.534938097}" - }, - 102598: { - "label": "JGD 2011 UTM Zone 56N", - "defaultExtent": "{\"xmin\": -5120763.767723991, \"ymin\": -9606785.534938088, \"xmax\": 6120763.767724008, \"ymax\": 9606785.534938097}" - }, - 102599: { - "label": "WGS 1984 California Teale Albers FtUS", - "defaultExtent": "{\"xmin\": -55428284.98062813, \"ymin\": -19032372.612179775, \"xmax\": 55428284.98033971, \"ymax\": 54239919.62005681}" - }, - 102600: { - "label": "NAD 1983 California Teale Albers FtUS", - "defaultExtent": "{\"xmin\": -55428284.98036675, \"ymin\": -19032372.612076882, \"xmax\": 55428284.98007833, \"ymax\": 54239919.61982289}" - }, - 102604: { - "label": "NAD 1983 Georgia Statewide Lambert", - "defaultExtent": "{\"xmin\": -125510187.83967526, \"ymin\": -80511630.22611117, \"xmax\": 125510187.83785972, \"ymax\": 61706317.12487821}" - }, - 102605: { - "label": "NAD 1983 Idaho TM", - "defaultExtent": "{\"xmin\": -3120763.767724001, \"ymin\": -13056561.759661576, \"xmax\": 8120763.767724002, \"ymax\": 6157009.310256204}" - }, - 102610: { - "label": "JGD 2011 Japan Zone 1", - "defaultExtent": "{\"xmin\": -5622450.671615874, \"ymin\": -13262051.49216574, \"xmax\": 5622450.671615874, \"ymax\": 5957285.955624162}" - }, - 102611: { - "label": "JGD 2011 Japan Zone 2", - "defaultExtent": "{\"xmin\": -5622450.671615875, \"ymin\": -13262051.49216574, \"xmax\": 5622450.671615874, \"ymax\": 5957285.955624163}" - }, - 102612: { - "label": "JGD 2011 Japan Zone 3", - "defaultExtent": "{\"xmin\": -5622450.671615874, \"ymin\": -13594812.839924177, \"xmax\": 5622450.671615878, \"ymax\": 5624524.607865727}" - }, - 102613: { - "label": "JGD 2011 Japan Zone 4", - "defaultExtent": "{\"xmin\": -5622450.671615874, \"ymin\": -13262051.49216574, \"xmax\": 5622450.671615874, \"ymax\": 5957285.955624162}" - }, - 102614: { - "label": "JGD 2011 Japan Zone 5", - "defaultExtent": "{\"xmin\": -5622450.671615874, \"ymin\": -13594812.839924177, \"xmax\": 5622450.671615874, \"ymax\": 5624524.607865727}" - }, - 102615: { - "label": "JGD 2011 Japan Zone 6", - "defaultExtent": "{\"xmin\": -5622450.671615865, \"ymin\": -13594812.839903364, \"xmax\": 5622450.671615874, \"ymax\": 5624524.60784493}" - }, - 102616: { - "label": "JGD 2011 Japan Zone 7", - "defaultExtent": "{\"xmin\": -5622450.671563503, \"ymin\": -13594812.839905635, \"xmax\": 5622450.671668238, \"ymax\": 5624524.607847202}" - }, - 102617: { - "label": "JGD 2011 Japan Zone 8", - "defaultExtent": "{\"xmin\": -5622450.671615865, \"ymin\": -13594812.839903364, \"xmax\": 5622450.671615882, \"ymax\": 5624524.607844931}" - }, - 102618: { - "label": "JGD 2011 Japan Zone 9", - "defaultExtent": "{\"xmin\": -5622450.671668228, \"ymin\": -13594812.839905635, \"xmax\": 5622450.67156351, \"ymax\": 5624524.607847202}" - }, - 102619: { - "label": "JGD 2011 Japan Zone 10", - "defaultExtent": "{\"xmin\": -5622450.671668227, \"ymin\": -14038754.801209979, \"xmax\": 5622450.671563517, \"ymax\": 5180582.6465428565}" - }, - 102620: { - "label": "JGD 2011 Japan Zone 11", - "defaultExtent": "{\"xmin\": -5622450.671615865, \"ymin\": -14483003.711233342, \"xmax\": 5622450.671615882, \"ymax\": 4736333.736514953}" - }, - 102621: { - "label": "JGD 2011 Japan Zone 12", - "defaultExtent": "{\"xmin\": -5622450.671615865, \"ymin\": -14483003.711233342, \"xmax\": 5622450.671615882, \"ymax\": 4736333.736514953}" - }, - 102622: { - "label": "JGD 2011 Japan Zone 13", - "defaultExtent": "{\"xmin\": -5622450.671615865, \"ymin\": -14483003.711233342, \"xmax\": 5622450.671615882, \"ymax\": 4736333.736514953}" - }, - 102623: { - "label": "JGD 2011 Japan Zone 14", - "defaultExtent": "{\"xmin\": -5622450.671615864, \"ymin\": -12486215.612935264, \"xmax\": 5622450.671615882, \"ymax\": 6733121.834813031}" - }, - 102624: { - "label": "JGD 2011 Japan Zone 15", - "defaultExtent": "{\"xmin\": -5622450.671615875, \"ymin\": -12486215.612956075, \"xmax\": 5622450.671615874, \"ymax\": 6733121.834833829}" - }, - 102625: { - "label": "JGD 2011 Japan Zone 16", - "defaultExtent": "{\"xmin\": -5622450.671615874, \"ymin\": -12486215.612956075, \"xmax\": 5622450.671615874, \"ymax\": 6733121.834833828}" - }, - 102626: { - "label": "JGD 2011 Japan Zone 17", - "defaultExtent": "{\"xmin\": -5622450.671615875, \"ymin\": -12486215.612956075, \"xmax\": 5622450.671615874, \"ymax\": 6733121.834833829}" - }, - 102627: { - "label": "JGD 2011 Japan Zone 18", - "defaultExtent": "{\"xmin\": -5622450.671615865, \"ymin\": -11821813.741351712, \"xmax\": 5622450.671615874, \"ymax\": 7397523.70639658}" - }, - 102628: { - "label": "JGD 2011 Japan Zone 19", - "defaultExtent": "{\"xmin\": -5622450.671615865, \"ymin\": -12486215.612935264, \"xmax\": 5622450.671615874, \"ymax\": 6733121.83481303}" - }, - 102629: { - "label": "NAD 1983 StatePlane Alabama East FIPS 0101 Feet", - "defaultExtent": "{\"xmin\": -17791263.801896796, \"ymin\": -42603760.17572907, \"xmax\": 19103597.135230128, \"ymax\": 20455466.47250871}" - }, - 102630: { - "label": "NAD 1983 StatePlane Alabama West FIPS 0102 Feet", - "defaultExtent": "{\"xmin\": -16478438.517406255, \"ymin\": -42420785.024313465, \"xmax\": 20415438.517406255, \"ymax\": 20636759.977281183}" - }, - 102631: { - "label": "NAD 1983 StatePlane Alaska 1 FIPS 5001 Feet", - "defaultExtent": "{\"xmin\": -82758937.62870042, \"ymin\": -115756421.01071909, \"xmax\": 123479804.0493344, \"ymax\": 76359122.71015747}" - }, - 102632: { - "label": "NAD 1983 StatePlane Alaska 2 FIPS 5002 Feet", - "defaultExtent": "{\"xmin\": -16805906.911793, \"ymin\": -51164550.42840131, \"xmax\": 20086740.245126437, \"ymax\": 11890892.514752874}" - }, - 102633: { - "label": "NAD 1983 StatePlane Alaska 3 FIPS 5003 Feet", - "defaultExtent": "{\"xmin\": -16805906.911793, \"ymin\": -51164550.42840131, \"xmax\": 20086740.245126445, \"ymax\": 11890892.514752874}" - }, - 102634: { - "label": "NAD 1983 StatePlane Alaska 4 FIPS 5004 Feet", - "defaultExtent": "{\"xmin\": -16805906.911793, \"ymin\": -51164550.42840131, \"xmax\": 20086740.245126445, \"ymax\": 11890892.514752874}" - }, - 102635: { - "label": "NAD 1983 StatePlane Alaska 5 FIPS 5005 Feet", - "defaultExtent": "{\"xmin\": -16805906.911793, \"ymin\": -51164550.42840131, \"xmax\": 20086740.245126445, \"ymax\": 11890892.514752874}" - }, - 102636: { - "label": "NAD 1983 StatePlane Alaska 6 FIPS 5006 Feet", - "defaultExtent": "{\"xmin\": -16805906.911793023, \"ymin\": -51164550.42840131, \"xmax\": 20086740.245126437, \"ymax\": 11890892.514752874}" - }, - 102637: { - "label": "NAD 1983 StatePlane Alaska 7 FIPS 5007 Feet", - "defaultExtent": "{\"xmin\": -16805906.911793, \"ymin\": -51164550.42840131, \"xmax\": 20086740.245126437, \"ymax\": 11890892.514752874}" - }, - 102638: { - "label": "NAD 1983 StatePlane Alaska 8 FIPS 5008 Feet", - "defaultExtent": "{\"xmin\": -16805906.911793, \"ymin\": -51164550.42840131, \"xmax\": 20086740.245126437, \"ymax\": 11890892.514752874}" - }, - 102639: { - "label": "NAD 1983 StatePlane Alaska 9 FIPS 5009 Feet", - "defaultExtent": "{\"xmin\": -16805906.911793, \"ymin\": -51164550.42840131, \"xmax\": 20086740.24512645, \"ymax\": 11890892.514752874}" - }, - 102640: { - "label": "NAD 1983 StatePlane Alaska 10 FIPS 5010 Feet", - "defaultExtent": "{\"xmin\": -114390310.45877954, \"ymin\": -101107068.05271329, \"xmax\": 120951977.12509908, \"ymax\": 111088848.33113301}" - }, - 102648: { - "label": "NAD 1983 StatePlane Arizona East FIPS 0201 Feet", - "defaultExtent": "{\"xmin\": -17746324.978459746, \"ymin\": -42783050.752203286, \"xmax\": 19146322.178459745, \"ymax\": 20272392.191087414}" - }, - 102649: { - "label": "NAD 1983 StatePlane Arizona Central FIPS 0202 Feet", - "defaultExtent": "{\"xmin\": -17746324.97845974, \"ymin\": -42783050.752203286, \"xmax\": 19146322.178459745, \"ymax\": 20272392.191087414}" - }, - 102650: { - "label": "NAD 1983 StatePlane Arizona West FIPS 0203 Feet", - "defaultExtent": "{\"xmin\": -17746939.917406254, \"ymin\": -42784476.99651947, \"xmax\": 19146937.117406253, \"ymax\": 20273068.005075183}" - }, - 102661: { - "label": "NAD 1983 StatePlane Hawaii 1 FIPS 5101 Feet", - "defaultExtent": "{\"xmin\": -16807136.789686047, \"ymin\": -38364292.03130892, \"xmax\": 20087970.123019453, \"ymax\": 24695355.02845315}" - }, - 102662: { - "label": "NAD 1983 StatePlane Hawaii 2 FIPS 5102 Feet", - "defaultExtent": "{\"xmin\": -16807136.789857857, \"ymin\": -38909052.224359296, \"xmax\": 20087970.12284765, \"ymax\": 24150594.83541766}" - }, - 102664: { - "label": "NAD 1983 StatePlane Hawaii 4 FIPS 5104 Feet", - "defaultExtent": "{\"xmin\": -16807567.246948577, \"ymin\": -39454826.42594335, \"xmax\": 20088400.580282014, \"ymax\": 23606292.074631467}" - }, - 102665: { - "label": "NAD 1983 StatePlane Hawaii 5 FIPS 5105 Feet", - "defaultExtent": "{\"xmin\": -16807751.72880437, \"ymin\": -39394674.88557028, \"xmax\": 20088585.06179416, \"ymax\": 23667074.23251061}" - }, - 102688: { - "label": "NAD 1983 StatePlane Michigan North FIPS 2111 Feet", - "defaultExtent": "{\"xmin\": -92972281.78016578, \"ymin\": -98630919.27090861, \"xmax\": 145465615.1138461, \"ymax\": 97383240.61442176}" - }, - 102689: { - "label": "NAD 1983 StatePlane Michigan Central FIPS 2112 Feet", - "defaultExtent": "{\"xmin\": -99918404.59409173, \"ymin\": -98010074.31684151, \"xmax\": 139288404.59556898, \"ymax\": 93827810.93022074}" - }, - 102690: { - "label": "NAD 1983 StatePlane Michigan South FIPS 2113 Feet", - "defaultExtent": "{\"xmin\": -107137980.00464605, \"ymin\": -97193225.31839152, \"xmax\": 133384646.66988109, \"ymax\": 87676051.615102}" - }, - 102696: { - "label": "NAD 1983 StatePlane Missouri East FIPS 2401 Feet", - "defaultExtent": "{\"xmin\": -17626730.184072927, \"ymin\": -44543133.909138866, \"xmax\": 19267146.850739587, \"ymax\": 18514411.09245577}" - }, - 102697: { - "label": "NAD 1983 StatePlane Missouri Central FIPS 2402 Feet", - "defaultExtent": "{\"xmin\": -16806521.850739587, \"ymin\": -44543133.909138866, \"xmax\": 20087355.184072923, \"ymax\": 18514411.09245577}" - }, - 102698: { - "label": "NAD 1983 StatePlane Missouri West FIPS 2403 Feet", - "defaultExtent": "{\"xmin\": -15658374.875589747, \"ymin\": -44664822.1494485, \"xmax\": 21235791.542256415, \"ymax\": 18393217.454100013}" - }, - 102699: { - "label": "NAD 1927 StatePlane California V Ventura", - "defaultExtent": "{\"xmin\": -123757055.95208941, \"ymin\": -93781630.47231127, \"xmax\": 124573055.95170596, \"ymax\": 57473709.21687016}" - }, - 102700: { - "label": "NAD 1983 StatePlane Montana FIPS 2500 Feet", - "defaultExtent": "{\"xmin\": -117013761.4940824, \"ymin\": -98447133.38577083, \"xmax\": 120950761.49438825, \"ymax\": 99640375.24588354}" - }, - 102701: { - "label": "NAD 1983 PACP00 UTM Zone 4N", - "defaultExtent": "{\"xmin\": -5120763.767723977, \"ymin\": -9606785.534938088, \"xmax\": 6120763.767724011, \"ymax\": 9606785.534938097}" - }, - 102702: { - "label": "NAD 1983 PACP00 UTM Zone 5N", - "defaultExtent": "{\"xmin\": -5120763.767723977, \"ymin\": -9606785.534938088, \"xmax\": 6120763.767724008, \"ymax\": 9606785.534938097}" - }, - 102703: { - "label": "NAD 1983 PACP00 UTM Zone 2S", - "defaultExtent": "{\"xmin\": -5120763.767723977, \"ymin\": 393214.4650619123, \"xmax\": 6120763.767724008, \"ymax\": 19606785.534938097}" - }, - 102705: { - "label": "NAD 1983 Nebraska Lancaster County FtUS", - "defaultExtent": "{\"xmin\": -18285134.275349516, \"ymin\": -46157015.28243282, \"xmax\": 18613217.608682845, \"ymax\": 16908177.9531978}" - }, - 102720: { - "label": "NAD 1983 StatePlane North Dakota North FIPS 3301 Feet", - "defaultExtent": "{\"xmin\": -116783716.9437886, \"ymin\": -99537293.23896584, \"xmax\": 120720716.94528787, \"ymax\": 101623620.91303007}" - }, - 102721: { - "label": "NAD 1983 StatePlane North Dakota South FIPS 3302 Feet", - "defaultExtent": "{\"xmin\": -117104841.44491722, \"ymin\": -98986965.62530635, \"xmax\": 121041841.4464704, \"ymax\": 98657585.0880365}" - }, - 102726: { - "label": "NAD 1983 StatePlane Oregon North FIPS 3601 Feet", - "defaultExtent": "{\"xmin\": -111333096.48800217, \"ymin\": -98151939.4657045, \"xmax\": 127737263.15576662, \"ymax\": 94405411.2860236}" - }, - 102727: { - "label": "NAD 1983 StatePlane Oregon South FIPS 3602 Feet", - "defaultExtent": "{\"xmin\": -115242607.67772503, \"ymin\": -97275815.40231566, \"xmax\": 125085107.67780149, \"ymax\": 88591465.38026683}" - }, - 102733: { - "label": "NAD 1983 StatePlane South Carolina FIPS 3900 Feet", - "defaultExtent": "{\"xmin\": -122907001.38906974, \"ymin\": -92800110.18513893, \"xmax\": 126906993.39405279, \"ymax\": 53349793.70668302}" - }, - 102761: { - "label": "NAD 1983 StatePlane Puerto Rico Virgin Islands FIPS 5200 Feet", - "defaultExtent": "{\"xmin\": -124743018.74785464, \"ymin\": -86350902.33498992, \"xmax\": 126055352.08149227, \"ymax\": 49730392.33556131}" - }, - 102766: { - "label": "NAD 1983 StatePlane Guam FIPS 5400 Feet", - "defaultExtent": "{\"xmin\": -65575679.43607475, \"ymin\": -55079399.57450036, \"xmax\": 65903762.76936754, \"ymax\": 45630724.58485424}" - }, - 102767: { - "label": "MAGNA Leticia Amazonas 1994", - "defaultExtent": "{\"xmin\": -530640.759427674, \"ymin\": -525407.5881809443, \"xmax\": 582597.1934276781, \"ymax\": 580410.319181199}" - }, - 102768: { - "label": "MAGNA Medellin Antioquia 2010", - "defaultExtent": "{\"xmin\": 278619.27133829927, \"ymin\": 627748.3437575639, \"xmax\": 1392138.0226617036, \"ymax\": 1733885.3813615476}" - }, - 102769: { - "label": "MAGNA Arauca 2007", - "defaultExtent": "{\"xmin\": 478618.2405101749, \"ymin\": 722561.9829805599, \"xmax\": 1591908.6454898291, \"ymax\": 1828491.2571489657}" - }, - 102770: { - "label": "MAGNA Barranquilla Atlantico 1997", - "defaultExtent": "{\"xmin\": 360565.63343764376, \"ymin\": 1146760.420523594, \"xmax\": 1473963.1785623562, \"ymax\": 2252919.4466337264}" - }, - 102771: { - "label": "MAGNA Bogota DC 2005", - "defaultExtent": "{\"xmin\": -464502.1310944298, \"ymin\": -443809.922734017, \"xmax\": 649171.8890944439, \"ymax\": 662451.8210553918}" - }, - 102772: { - "label": "MAGNA Cartagena Bolivar 2005", - "defaultExtent": "{\"xmin\": 286300.05642953597, \"ymin\": 1088834.8491586703, \"xmax\": 1399662.7635704642, \"ymax\": 2194939.3308413364}" - }, - 102773: { - "label": "MAGNA Tunja Boyaca 1997", - "defaultExtent": "{\"xmin\": 523649.30864790396, \"ymin\": 550604.6485462558, \"xmax\": 1637380.5113521016, \"ymax\": 1656939.3663969974}" - }, - 102774: { - "label": "MAGNA Manizales Caldas 2011", - "defaultExtent": "{\"xmin\": 616926.3640827972, \"ymin\": 499293.1519963335, \"xmax\": 1730527.71591721, \"ymax\": 1605489.0797760834}" - }, - 102775: { - "label": "MAGNA Florencia Caqueta 2007", - "defaultExtent": "{\"xmin\": 605674.6713480324, \"ymin\": 118166.71419331233, \"xmax\": 1718926.0246519733, \"ymax\": 1223970.7165109143}" - }, - 102776: { - "label": "MAGNA Yopal Casanare 2006", - "defaultExtent": "{\"xmin\": 294538.268809058, \"ymin\": 531008.2378955558, \"xmax\": 1407830.0851909434, \"ymax\": 1636900.031847112}" - }, - 102777: { - "label": "MAGNA Popayan Cauca 2006", - "defaultExtent": "{\"xmin\": 495676.5375559849, \"ymin\": 210333.12635948742, \"xmax\": 1609184.5124440163, \"ymax\": 1316399.9582608652}" - }, - 102778: { - "label": "MAGNA Valledupar Cesar 2011", - "defaultExtent": "{\"xmin\": 534280.0412713197, \"ymin\": 1094137.5012267285, \"xmax\": 1647679.2787286844, \"ymax\": 2200280.3533243784}" - }, - 102779: { - "label": "MAGNA Quibdo Choco 2011", - "defaultExtent": "{\"xmin\": 490647.1290853135, \"ymin\": 568513.212310637, \"xmax\": 1603900.104914682, \"ymax\": 1674372.9670257722}" - }, - 102780: { - "label": "MAGNA Monteria Cordoba 2006", - "defaultExtent": "{\"xmin\": 575156.4072742331, \"ymin\": 909129.2573849697, \"xmax\": 1688473.4607257736, \"ymax\": 2015132.9802696037}" - }, - 102781: { - "label": "MAGNA Inirida Guainia 2008", - "defaultExtent": "{\"xmin\": 462560.3621877193, \"ymin\": -61113.40202248772, \"xmax\": 1575795.011812285, \"ymax\": 1044696.0530412509}" - }, - 102782: { - "label": "MAGNA San Jose del Guaviare 2011", - "defaultExtent": "{\"xmin\": 603257.9111087656, \"ymin\": 222481.70710024703, \"xmax\": 1716495.3288912387, \"ymax\": 1328278.9756368184}" - }, - 102783: { - "label": "MAGNA Neiva Huila 2006", - "defaultExtent": "{\"xmin\": 307835.2145463566, \"ymin\": 264276.2933122504, \"xmax\": 1421118.631453642, \"ymax\": 1370123.3573205834}" - }, - 102784: { - "label": "MAGNA Riohacha La Guajira 2006", - "defaultExtent": "{\"xmin\": 571453.4829661569, \"ymin\": 1214793.8707471988, \"xmax\": 1684855.9770338514, \"ymax\": 2320981.957073168}" - }, - 102785: { - "label": "MAGNA Santa Marta Magdalena 2007", - "defaultExtent": "{\"xmin\": 427194.74714757595, \"ymin\": 1179449.3665335174, \"xmax\": 1540590.0708524268, \"ymax\": 2285617.6686208635}" - }, - 102786: { - "label": "MAGNA Villavicencio Meta 2011", - "defaultExtent": "{\"xmin\": 494030.60341372725, \"ymin\": 398014.312562775, \"xmax\": 1607326.9105862812, \"ymax\": 1503889.930721254}" - }, - 102787: { - "label": "MAGNA Pasto Narino 2008", - "defaultExtent": "{\"xmin\": 423650.3354591882, \"ymin\": 71460.73000908922, \"xmax\": 1537289.0545408144, \"ymax\": 1177649.9258928085}" - }, - 102788: { - "label": "MAGNA Cucuta Norte de Santander 2011", - "defaultExtent": "{\"xmin\": 286132.7379711848, \"ymin\": 811401.708206024, \"xmax\": 1399478.074028818, \"ymax\": 1917407.4253970657}" - }, - 102789: { - "label": "MAGNA Mocoa Putumayo 2011", - "defaultExtent": "{\"xmin\": 490811.74666559394, \"ymin\": 64897.72040268162, \"xmax\": 1604123.0293344103, \"ymax\": 1170759.225606537}" - }, - 102790: { - "label": "MAGNA Armenia Quindio 2006", - "defaultExtent": "{\"xmin\": 599082.9649670713, \"ymin\": 440053.1289550166, \"xmax\": 1712566.36703293, \"ymax\": 1546121.7833564046}" - }, - 102791: { - "label": "MAGNA Pereira Risaralda 2007", - "defaultExtent": "{\"xmin\": 596745.6506538078, \"ymin\": 471153.87395250704, \"xmax\": 1710238.373346188, \"ymax\": 1577236.6168879503}" - }, - 102792: { - "label": "MAGNA San Andres 2007", - "defaultExtent": "{\"xmin\": 263719.66511218704, \"ymin\": 1324224.7718553264, \"xmax\": 1377158.9308878225, \"ymax\": 2430490.883950619}" - }, - 102793: { - "label": "MAGNA Bucaramanga Santander 2008", - "defaultExtent": "{\"xmin\": 540523.6785723618, \"ymin\": 721605.3219550159, \"xmax\": 1653958.9314276436, \"ymax\": 1827679.2166517763}" - }, - 102794: { - "label": "MAGNA Sucre 2006", - "defaultExtent": "{\"xmin\": 372384.1329905855, \"ymin\": 913122.2629141132, \"xmax\": 1485703.08100942, \"ymax\": 2019129.0526234158}" - }, - 102795: { - "label": "MAGNA Ibague Tolima 2007", - "defaultExtent": "{\"xmin\": 320925.703120515, \"ymin\": 427541.00489503075, \"xmax\": 1434342.9568795017, \"ymax\": 1533541.6781957427}" - }, - 102796: { - "label": "MAGNA Cali Valle del Cauca 2009", - "defaultExtent": "{\"xmin\": 505206.2512282488, \"ymin\": 319385.97077513393, \"xmax\": 1618594.1087717665, \"ymax\": 1425343.2800708634}" - }, - 102797: { - "label": "MAGNA Mitu Vaupes 2011", - "defaultExtent": "{\"xmin\": 537103.8940996355, \"ymin\": 77108.37973804015, \"xmax\": 1650330.901900373, \"ymax\": 1182886.0916956426}" - }, - 102798: { - "label": "MAGNA Puerto Carreno Vichada 2011", - "defaultExtent": "{\"xmin\": 507203.0675935035, \"ymin\": 622317.2404212123, \"xmax\": 1620466.338406505, \"ymax\": 1728197.7207354018}" - }, - 102962: { - "label": "NAD 1983 2011 California Teale Albers", - "defaultExtent": "{\"xmin\": -16894575.05116589, \"ymin\": -8581876.335913707, \"xmax\": 16894575.05107798, \"ymax\": 13751563.003248025}" - }, - 102963: { - "label": "NAD 1983 2011 Mississippi TM", - "defaultExtent": "{\"xmin\": -5122076.741253177, \"ymin\": -11905728.699493717, \"xmax\": 6122076.741253175, \"ymax\": 7312330.534534532}" - }, - 102965: { - "label": "NAD 1983 2011 Contiguous USA Albers", - "defaultExtent": "{\"xmin\": -16885989.18210479, \"ymin\": -6957052.177887028, \"xmax\": 16885989.182114024, \"ymax\": 15293225.658442125}" - }, - 102966: { - "label": "NAD 1983 2011 Alaska Albers", - "defaultExtent": "{\"xmin\": -13739219.699563079, \"ymin\": -8935188.356798925, \"xmax\": 13739219.70003071, \"ymax\": 17285625.557825744}" - }, - 102967: { - "label": "NAD 1983 2011 Florida GDL Albers", - "defaultExtent": "{\"xmin\": -19533690.484215964, \"ymin\": -7509915.322719345, \"xmax\": 20333690.484215967, \"ymax\": 11731295.795514686}" - }, - 102968: { - "label": "NAD 1983 2011 Michigan GeoRef Meters", - "defaultExtent": "{\"xmin\": -28809902.8075835, \"ymin\": -30359666.086749792, \"xmax\": 35544410.36686367, \"ymax\": 20812653.70437237}" - }, - 102969: { - "label": "NAD 1983 2011 Oregon Statewide Lambert", - "defaultExtent": "{\"xmin\": -36115366.195192955, \"ymin\": -29681657.82664154, \"xmax\": 36915366.19580745, \"ymax\": 28096555.99768769}" - }, - 102970: { - "label": "NAD 1983 2011 Oregon Statewide Lambert Ft Intl", - "defaultExtent": "{\"xmin\": -118488734.23619735, \"ymin\": -97380767.14777409, \"xmax\": 121113406.1542239, \"ymax\": 92180301.82968402}" - }, - 102971: { - "label": "NAD 1983 2011 Texas Centric Mapping System Albers", - "defaultExtent": "{\"xmin\": -17154324.437499855, \"ymin\": -675329.8507281002, \"xmax\": 20154324.43750238, \"ymax\": 19014408.076648667}" - }, - 102972: { - "label": "NAD 1983 2011 Texas Centric Mapping System Lambert", - "defaultExtent": "{\"xmin\": -37101439.53622417, \"ymin\": -21633811.39510804, \"xmax\": 40101439.53614661, \"ymax\": 19288743.702293932}" - }, - 102973: { - "label": "NAD 1983 2011 Wisconsin TM", - "defaultExtent": "{\"xmin\": -5100763.767724001, \"ymin\": -14086785.534958892, \"xmax\": 6140763.767724001, \"ymax\": 5126785.534958888}" - }, - 102974: { - "label": "NAD 1983 2011 Wisconsin TM US Ft", - "defaultExtent": "{\"xmin\": -16734755.794607824, \"ymin\": -46216395.54261096, \"xmax\": 20146822.46127449, \"ymax\": 16820128.875944283}" - }, - 102975: { - "label": "NAD 1983 2011 StatePlane Alabama East FIPS 0101", - "defaultExtent": "{\"xmin\": -5422788.052394249, \"ymin\": -12985652.072866369, \"xmax\": 5822788.052394249, \"ymax\": 6234838.650497956}" - }, - 102976: { - "label": "NAD 1983 2011 StatePlane Alabama West FIPS 0102", - "defaultExtent": "{\"xmin\": -5022638.105381638, \"ymin\": -12929881.135173015, \"xmax\": 6222638.105381638, \"ymax\": 6290097.0212693475}" - }, - 102977: { - "label": "NAD 1983 2011 StatePlane Alaska 1 FIPS 5001", - "defaultExtent": "{\"xmin\": -25224974.639177933, \"ymin\": -35282627.68932256, \"xmax\": 37636719.54767623, \"ymax\": 23274307.150670152}" - }, - 102978: { - "label": "NAD 1983 2011 StatePlane Alaska 2 FIPS 5002", - "defaultExtent": "{\"xmin\": -5122450.67161585, \"ymin\": -15594986.160549043, \"xmax\": 6122450.671615882, \"ymax\": 3624351.287199251}" - }, - 102979: { - "label": "NAD 1983 2011 StatePlane Alaska 3 FIPS 5003", - "defaultExtent": "{\"xmin\": -5122450.67161585, \"ymin\": -15594986.160549043, \"xmax\": 6122450.671615885, \"ymax\": 3624351.287199251}" - }, - 102980: { - "label": "NAD 1983 2011 StatePlane Alaska 4 FIPS 5004", - "defaultExtent": "{\"xmin\": -5122450.67161585, \"ymin\": -15594986.160549043, \"xmax\": 6122450.671615885, \"ymax\": 3624351.287199251}" - }, - 102981: { - "label": "NAD 1983 2011 StatePlane Alaska 5 FIPS 5005", - "defaultExtent": "{\"xmin\": -5122450.67161585, \"ymin\": -15594986.160549043, \"xmax\": 6122450.671615885, \"ymax\": 3624351.287199251}" - }, - 102982: { - "label": "NAD 1983 2011 StatePlane Alaska 6 FIPS 5006", - "defaultExtent": "{\"xmin\": -5122450.671615858, \"ymin\": -15594986.160549043, \"xmax\": 6122450.671615882, \"ymax\": 3624351.287199251}" - }, - 102983: { - "label": "NAD 1983 2011 StatePlane Alaska 7 FIPS 5007", - "defaultExtent": "{\"xmin\": -5122450.67161585, \"ymin\": -15594986.160549043, \"xmax\": 6122450.671615882, \"ymax\": 3624351.287199251}" - }, - 102984: { - "label": "NAD 1983 2011 StatePlane Alaska 8 FIPS 5008", - "defaultExtent": "{\"xmin\": -5122450.67161585, \"ymin\": -15594986.160549043, \"xmax\": 6122450.671615882, \"ymax\": 3624351.287199251}" - }, - 102985: { - "label": "NAD 1983 2011 StatePlane Alaska 9 FIPS 5009", - "defaultExtent": "{\"xmin\": -5122450.67161585, \"ymin\": -15594986.160549043, \"xmax\": 6122450.671615886, \"ymax\": 3624351.287199251}" - }, - 102986: { - "label": "NAD 1983 2011 StatePlane Alaska 10 FIPS 5010", - "defaultExtent": "{\"xmin\": -34866236.36030873, \"ymin\": -30817495.97745897, \"xmax\": 36866236.36020292, \"ymax\": 33859948.69122673}" - }, - 102987: { - "label": "NAD 1983 2011 StatePlane Arizona East FIPS 0201", - "defaultExtent": "{\"xmin\": -5409090.671615874, \"ymin\": -13040299.949871464, \"xmax\": 5835810.671615874, \"ymax\": 6179037.49791844}" - }, - 102988: { - "label": "NAD 1983 2011 StatePlane Arizona Central FIPS 0202", - "defaultExtent": "{\"xmin\": -5409090.671615872, \"ymin\": -13040299.949871464, \"xmax\": 5835810.671615874, \"ymax\": 6179037.49791844}" - }, - 102989: { - "label": "NAD 1983 2011 StatePlane Arizona West FIPS 0203", - "defaultExtent": "{\"xmin\": -5409278.105381638, \"ymin\": -13040734.670008475, \"xmax\": 5835998.105381638, \"ymax\": 6179243.48643389}" - }, - 102990: { - "label": "NAD 1983 2011 StatePlane Arizona East FIPS 0201 Ft Intl", - "defaultExtent": "{\"xmin\": -17746360.47118069, \"ymin\": -42783136.31847593, \"xmax\": 19146360.47118069, \"ymax\": 20272432.735952888}" - }, - 102991: { - "label": "NAD 1983 2011 StatePlane Arizona Central FIPS 0202 Ft Intl", - "defaultExtent": "{\"xmin\": -17746360.47118068, \"ymin\": -42783136.31847593, \"xmax\": 19146360.47118069, \"ymax\": 20272432.735952888}" - }, - 102992: { - "label": "NAD 1983 2011 StatePlane Arizona West FIPS 0203 Ft Intl", - "defaultExtent": "{\"xmin\": -17746975.41135708, \"ymin\": -42784562.5656446, \"xmax\": 19146975.41135708, \"ymax\": 20273108.55129229}" - }, - 102993: { - "label": "NAD 1983 2011 StatePlane Arkansas North FIPS 0301", - "defaultExtent": "{\"xmin\": -37285630.80991245, \"ymin\": -28623235.611847952, \"xmax\": 38085630.80986683, \"ymax\": 18652037.545588575}" - }, - 102994: { - "label": "NAD 1983 2011 StatePlane Arkansas South FIPS 0302", - "defaultExtent": "{\"xmin\": -37595985.155181974, \"ymin\": -27991400.9264211, \"xmax\": 38395985.15505119, \"ymax\": 17088046.267518982}" - }, - 102995: { - "label": "NAD 1983 2011 StatePlane Arkansas North FIPS 0301 Ft US", - "defaultExtent": "{\"xmin\": -122327940.41552109, \"ymin\": -93908065.50320448, \"xmax\": 124952607.08203807, \"ymax\": 61194226.51415184}" - }, - 102996: { - "label": "NAD 1983 2011 StatePlane Arkansas South FIPS 0302 Ft US", - "defaultExtent": "{\"xmin\": -123346161.29662618, \"ymin\": -91835121.20609988, \"xmax\": 125970827.96286376, \"ymax\": 56063031.79601851}" - }, - 102997: { - "label": "NAD 1983 2011 StatePlane California I FIPS 0401", - "defaultExtent": "{\"xmin\": -34887054.27121294, \"ymin\": -28830499.630561125, \"xmax\": 38887054.271445766, \"ymax\": 25202733.856392305}" - }, - 102998: { - "label": "NAD 1983 2011 StatePlane California II FIPS 0402", - "defaultExtent": "{\"xmin\": -35116508.911664024, \"ymin\": -28596719.981055927, \"xmax\": 39116508.911764205, \"ymax\": 23310630.66291148}" - }, - 102999: { - "label": "NAD 1983 2011 StatePlane California III FIPS 0403", - "defaultExtent": "{\"xmin\": -35314262.749591045, \"ymin\": -28428487.57731289, \"xmax\": 39314262.749551564, \"ymax\": 21771398.527620755}" - }, - 103000: { - "label": "NAD 1983 2011 StatePlane California IV FIPS 0404", - "defaultExtent": "{\"xmin\": -35498881.48266848, \"ymin\": -28265654.103608675, \"xmax\": 39498881.48289684, \"ymax\": 20437979.07279057}" - }, - 103001: { - "label": "NAD 1983 2011 StatePlane California V FIPS 0405", - "defaultExtent": "{\"xmin\": -35847160.01764138, \"ymin\": -28005403.878855906, \"xmax\": 39847160.01752812, \"ymax\": 18099234.480987653}" - }, - 103002: { - "label": "NAD 1983 2011 StatePlane California VI FIPS 0406", - "defaultExtent": "{\"xmin\": -36151940.068675034, \"ymin\": -27815848.278992966, \"xmax\": 40151940.06861196, \"ymax\": 16247248.704331301}" - }, - 103003: { - "label": "NAD 1983 2011 StatePlane California I FIPS 0401 Ft US", - "defaultExtent": "{\"xmin\": -114458610.55480444, \"ymin\": -94588064.20459928, \"xmax\": 127581943.88890164, \"ymax\": 82685969.32718042}" - }, - 103004: { - "label": "NAD 1983 2011 StatePlane California II FIPS 0402 Ft US", - "defaultExtent": "{\"xmin\": -115211412.98768437, \"ymin\": -93821072.13784765, \"xmax\": 128334746.32134637, \"ymax\": 76478294.09990206}" - }, - 103005: { - "label": "NAD 1983 2011 StatePlane California III FIPS 0403 Ft US", - "defaultExtent": "{\"xmin\": -115860210.37094994, \"ymin\": -93269129.6599007, \"xmax\": 128983543.70415375, \"ymax\": 71428330.00270241}" - }, - 103006: { - "label": "NAD 1983 2011 StatePlane California IV FIPS 0404 Ft US", - "defaultExtent": "{\"xmin\": -116465913.66438816, \"ymin\": -92734900.17158945, \"xmax\": 129589246.99847071, \"ymax\": 67053603.00798039}" - }, - 103007: { - "label": "NAD 1983 2011 StatePlane California V FIPS 0405 Ft US", - "defaultExtent": "{\"xmin\": -117608557.49121174, \"ymin\": -91881062.55921307, \"xmax\": 130731890.82417348, \"ymax\": 59380571.79304032}" - }, - 103008: { - "label": "NAD 1983 2011 StatePlane California VI FIPS 0406 Ft US", - "defaultExtent": "{\"xmin\": -118608490.04197799, \"ymin\": -91259162.22866274, \"xmax\": 131731823.37510438, \"ymax\": 53304515.12412693}" - }, - 103009: { - "label": "NAD 1983 2011 StatePlane Colorado North FIPS 0501", - "defaultExtent": "{\"xmin\": -36047295.1761787, \"ymin\": -29010844.772414874, \"xmax\": 37876098.83435248, \"ymax\": 24329837.178702205}" - }, - 103010: { - "label": "NAD 1983 2011 StatePlane Colorado Central FIPS 0502", - "defaultExtent": "{\"xmin\": -36200413.80326969, \"ymin\": -28811315.283514805, \"xmax\": 38029217.46057424, \"ymax\": 23117321.353997074}" - }, - 103011: { - "label": "NAD 1983 2011 StatePlane Colorado South FIPS 0503", - "defaultExtent": "{\"xmin\": -36387386.019578025, \"ymin\": -28644971.833411947, \"xmax\": 38216189.6778173, \"ymax\": 21664082.8771381}" - }, - 103012: { - "label": "NAD 1983 2011 StatePlane Colorado North FIPS 0501 Ft US", - "defaultExtent": "{\"xmin\": -118265167.59051295, \"ymin\": -95179746.55749778, \"xmax\": 124265167.5923714, \"ymax\": 79822140.81045881}" - }, - 103013: { - "label": "NAD 1983 2011 StatePlane Colorado Central FIPS 0502 Ft US", - "defaultExtent": "{\"xmin\": -118767524.2862273, \"ymin\": -94525123.55933148, \"xmax\": 124767524.28523397, \"ymax\": 75844078.47557206}" - }, - 103014: { - "label": "NAD 1983 2011 StatePlane Colorado South FIPS 0503 Ft US", - "defaultExtent": "{\"xmin\": -119380948.96589889, \"ymin\": -93979378.42345235, \"xmax\": 125380948.96797225, \"ymax\": 71076245.23941058}" - }, - 103015: { - "label": "NAD 1983 2011 StatePlane Connecticut FIPS 0600", - "defaultExtent": "{\"xmin\": -36501665.38080174, \"ymin\": -29365141.16645893, \"xmax\": 37111266.59970077, \"ymax\": 25482156.151964903}" - }, - 103016: { - "label": "NAD 1983 2011 StatePlane Connecticut FIPS 0600 Ft US", - "defaultExtent": "{\"xmin\": -119755880.50351368, \"ymin\": -96342133.97695734, \"xmax\": 121755880.50251827, \"ymax\": 83602707.3085715}" - }, - 103017: { - "label": "NAD 1983 2011 StatePlane Delaware FIPS 0700", - "defaultExtent": "{\"xmin\": -5422984.8578483015, \"ymin\": -13818058.715278085, \"xmax\": 5822984.857848301, \"ymax\": 5403104.752171321}" - }, - 103018: { - "label": "NAD 1983 2011 StatePlane Delaware FIPS 0700 Ft US", - "defaultExtent": "{\"xmin\": -17791909.487790633, \"ymin\": -45334747.63504151, \"xmax\": 19104242.821123965, \"ymax\": 17726686.174415406}" - }, - 103019: { - "label": "NAD 1983 2011 StatePlane Florida East FIPS 0901", - "defaultExtent": "{\"xmin\": -5422682.2074441705, \"ymin\": -12302114.955780467, \"xmax\": 5822682.2074441705, \"ymax\": 6918013.955638945}" - }, - 103020: { - "label": "NAD 1983 2011 StatePlane Florida West FIPS 0902", - "defaultExtent": "{\"xmin\": -5422682.207444169, \"ymin\": -12302114.955780467, \"xmax\": 5822682.2074441705, \"ymax\": 6918013.955638945}" - }, - 103021: { - "label": "NAD 1983 2011 StatePlane Florida North FIPS 0903", - "defaultExtent": "{\"xmin\": -38386184.53222137, \"ymin\": -27874919.325736687, \"xmax\": 39586184.5326483, \"ymax\": 11420627.34512336}" - }, - 103022: { - "label": "NAD 1983 2011 StatePlane Florida East FIPS 0901 Ft US", - "defaultExtent": "{\"xmin\": -17790916.542256415, \"ymin\": -40361188.817423075, \"xmax\": 19103249.875589747, \"ymax\": 22696850.786125436}" - }, - 103023: { - "label": "NAD 1983 2011 StatePlane Florida West FIPS 0902 Ft US", - "defaultExtent": "{\"xmin\": -17790916.542256407, \"ymin\": -40361188.817423075, \"xmax\": 19103249.875589747, \"ymax\": 22696850.786125436}" - }, - 103024: { - "label": "NAD 1983 2011 StatePlane Florida North FIPS 0903 Ft US", - "defaultExtent": "{\"xmin\": -125938673.75279626, \"ymin\": -91452964.48785444, \"xmax\": 129875673.75419696, \"ymax\": 37469174.881458886}" - }, - 103025: { - "label": "NAD 1983 2011 StatePlane Georgia East FIPS 1001", - "defaultExtent": "{\"xmin\": -5422450.671615874, \"ymin\": -12929450.11040019, \"xmax\": 5822450.671615874, \"ymax\": 6289887.337389712}" - }, - 103026: { - "label": "NAD 1983 2011 StatePlane Georgia West FIPS 1002", - "defaultExtent": "{\"xmin\": -4922450.671615872, \"ymin\": -12929450.11040019, \"xmax\": 6322450.6716158725, \"ymax\": 6289887.337389712}" - }, - 103027: { - "label": "NAD 1983 2011 StatePlane Georgia East FIPS 1001 Ft US", - "defaultExtent": "{\"xmin\": -17790156.91179308, \"ymin\": -42419370.90387128, \"xmax\": 19102490.24512641, \"ymax\": 20636072.039419413}" - }, - 103028: { - "label": "NAD 1983 2011 StatePlane Georgia West FIPS 1002 Ft US", - "defaultExtent": "{\"xmin\": -16149740.245126404, \"ymin\": -42419370.90387128, \"xmax\": 20742906.91179307, \"ymax\": 20636072.039419413}" - }, - 103029: { - "label": "NAD 1983 2011 StatePlane Idaho East FIPS 1101", - "defaultExtent": "{\"xmin\": -5422717.024861958, \"ymin\": -14224494.619744752, \"xmax\": 5822717.024861958, \"ymax\": 4995753.308761801}" - }, - 103030: { - "label": "NAD 1983 2011 StatePlane Idaho Central FIPS 1102", - "defaultExtent": "{\"xmin\": -5122717.024861958, \"ymin\": -14224494.619744752, \"xmax\": 6122717.024861961, \"ymax\": 4995753.308761801}" - }, - 103031: { - "label": "NAD 1983 2011 StatePlane Idaho West FIPS 1103", - "defaultExtent": "{\"xmin\": -4822638.105381638, \"ymin\": -14224294.967206975, \"xmax\": 6422638.105381638, \"ymax\": 4995683.189235387}" - }, - 103032: { - "label": "NAD 1983 2011 StatePlane Idaho East FIPS 1101 Ft US", - "defaultExtent": "{\"xmin\": -17791030.77240127, \"ymin\": -46668196.09827923, \"xmax\": 19103364.105734605, \"ymax\": 16390233.980496006}" - }, - 103033: { - "label": "NAD 1983 2011 StatePlane Idaho Central FIPS 1102 Ft US", - "defaultExtent": "{\"xmin\": -16806780.77240127, \"ymin\": -46668196.09827923, \"xmax\": 20087614.105734613, \"ymax\": 16390233.980496006}" - }, - 103034: { - "label": "NAD 1983 2011 StatePlane Idaho West FIPS 1103 Ft US", - "defaultExtent": "{\"xmin\": -15822271.850739589, \"ymin\": -46667541.07157821, \"xmax\": 21071605.18407292, \"ymax\": 16390003.930016432}" - }, - 103035: { - "label": "NAD 1983 2011 StatePlane Illinois East FIPS 1201", - "defaultExtent": "{\"xmin\": -5322872.397588842, \"ymin\": -13669807.500473078, \"xmax\": 5922872.397588842, \"ymax\": 5550971.541784854}" - }, - 103036: { - "label": "NAD 1983 2011 StatePlane Illinois West FIPS 1202", - "defaultExtent": "{\"xmin\": -4922682.207444172, \"ymin\": -13669345.127777718, \"xmax\": 6322682.2074441705, \"ymax\": 5550783.783641693}" - }, - 103037: { - "label": "NAD 1983 2011 StatePlane Illinois East FIPS 1201 Ft US", - "defaultExtent": "{\"xmin\": -17463457.191089388, \"ymin\": -44848360.107802086, \"xmax\": 19431957.191089388, \"ymax\": 18211812.466672473}" - }, - 103038: { - "label": "NAD 1983 2011 StatePlane Illinois West FIPS 1202 Ft US", - "defaultExtent": "{\"xmin\": -16150499.875589753, \"ymin\": -44846843.140050724, \"xmax\": 20743666.542256415, \"ymax\": 18211196.463497788}" - }, - 103039: { - "label": "NAD 1983 2011 StatePlane Indiana East FIPS 1301", - "defaultExtent": "{\"xmin\": -5522825.539147399, \"ymin\": -13512173.175005069, \"xmax\": 5722825.539147401, \"ymax\": 5708445.690089753}" - }, - 103040: { - "label": "NAD 1983 2011 StatePlane Indiana West FIPS 1302", - "defaultExtent": "{\"xmin\": -4722825.539147401, \"ymin\": -13512173.175005067, \"xmax\": 6522825.539147401, \"ymax\": 5708445.690089753}" - }, - 103041: { - "label": "NAD 1983 2011 StatePlane Indiana East FIPS 1301 Ft US", - "defaultExtent": "{\"xmin\": -18119470.123019423, \"ymin\": -44331188.15832912, \"xmax\": 18775636.789686095, \"ymax\": 18728458.901569463}" - }, - 103042: { - "label": "NAD 1983 2011 StatePlane Indiana West FIPS 1302 Ft US", - "defaultExtent": "{\"xmin\": -15494803.456352763, \"ymin\": -44331188.15832912, \"xmax\": 21400303.456352763, \"ymax\": 18728458.901569463}" - }, - 103043: { - "label": "NAD 1983 2011 StatePlane Iowa North FIPS 1401", - "defaultExtent": "{\"xmin\": -35179672.413309455, \"ymin\": -28619932.387049854, \"xmax\": 38179672.41221074, \"ymax\": 27493755.251850624}" - }, - 103044: { - "label": "NAD 1983 2011 StatePlane Iowa South FIPS 1402", - "defaultExtent": "{\"xmin\": -36344508.92670218, \"ymin\": -29415464.41348134, \"xmax\": 37344508.92730374, \"ymax\": 25047110.383624904}" - }, - 103045: { - "label": "NAD 1983 2011 StatePlane Iowa North FIPS 1401 Ft US", - "defaultExtent": "{\"xmin\": -115418641.90933275, \"ymin\": -93897228.17317939, \"xmax\": 125261141.90572806, \"ymax\": 90202428.6887799}" - }, - 103046: { - "label": "NAD 1983 2011 StatePlane Iowa South FIPS 1402 Ft US", - "defaultExtent": "{\"xmin\": -119240276.37035538, \"ymin\": -96507236.16323002, \"xmax\": 122521109.70566234, \"ymax\": 82175394.65027604}" - }, - 103047: { - "label": "NAD 1983 2011 StatePlane Kansas North FIPS 1501", - "defaultExtent": "{\"xmin\": -36694583.27893349, \"ymin\": -29176343.808520153, \"xmax\": 37494583.27889171, \"ymax\": 22940063.423304893}" - }, - 103048: { - "label": "NAD 1983 2011 StatePlane Kansas South FIPS 1502", - "defaultExtent": "{\"xmin\": -36888610.08409184, \"ymin\": -28552051.03735451, \"xmax\": 37688610.084001794, \"ymax\": 21865414.924582668}" - }, - 103049: { - "label": "NAD 1983 2011 StatePlane Kansas North FIPS 1501 Ft US", - "defaultExtent": "{\"xmin\": -120388811.97430094, \"ymin\": -95722721.31178652, \"xmax\": 123013478.64083055, \"ymax\": 75262524.74795946}" - }, - 103050: { - "label": "NAD 1983 2011 StatePlane Kansas South FIPS 1502 Ft US", - "defaultExtent": "{\"xmin\": -121025381.58422464, \"ymin\": -93674520.77838725, \"xmax\": 123650048.25059587, \"ymax\": 71736782.13173495}" - }, - 103051: { - "label": "NAD 1983 2011 StatePlane Kentucky North FIPS 1601", - "defaultExtent": "{\"xmin\": -36706540.6144563, \"ymin\": -29061234.143652882, \"xmax\": 37706540.61484275, \"ymax\": 22066321.05409854}" - }, - 103052: { - "label": "NAD 1983 2011 StatePlane Kentucky North FIPS 1601 Ft US", - "defaultExtent": "{\"xmin\": -120428041.99926203, \"ymin\": -95345065.68630116, \"xmax\": 123708875.33386324, \"ymax\": 72395921.65832162}" - }, - 103053: { - "label": "NAD 1983 2011 StatePlane Kentucky FIPS 1600", - "defaultExtent": "{\"xmin\": -35794088.47457762, \"ymin\": -27913214.15795621, \"xmax\": 38794088.4749888, \"ymax\": 22449415.817500036}" - }, - 103054: { - "label": "NAD 1983 2011 StatePlane Kentucky FIPS 1600 Ft US", - "defaultExtent": "{\"xmin\": -117434438.60367672, \"ymin\": -91578603.44989465, \"xmax\": 127276938.60502575, \"ymax\": 73652791.72791469}" - }, - 103055: { - "label": "NAD 1983 2011 StatePlane Kentucky South FIPS 1602", - "defaultExtent": "{\"xmin\": -36881000.62027418, \"ymin\": -28397921.164930366, \"xmax\": 37881000.620047584, \"ymax\": 21253778.418876573}" - }, - 103056: { - "label": "NAD 1983 2011 StatePlane Kentucky South FIPS 1602 Ft US", - "defaultExtent": "{\"xmin\": -121000416.20168228, \"ymin\": -93168846.35527492, \"xmax\": 124281249.53427221, \"ymax\": 69730104.69592905}" - }, - 103057: { - "label": "NAD 1983 2011 StatePlane Louisiana North FIPS 1701", - "defaultExtent": "{\"xmin\": -37494730.88922037, \"ymin\": -28088971.837408308, \"xmax\": 39494730.88715185, \"ymax\": 13871961.36705782}" - }, - 103058: { - "label": "NAD 1983 2011 StatePlane Louisiana South FIPS 1702", - "defaultExtent": "{\"xmin\": -38036283.63849772, \"ymin\": -27814605.530320723, \"xmax\": 40036283.638507746, \"ymax\": 11223230.411243448}" - }, - 103059: { - "label": "NAD 1983 2011 StatePlane Louisiana North FIPS 1701 Ft US", - "defaultExtent": "{\"xmin\": -123013962.92571716, \"ymin\": -92155235.10323042, \"xmax\": 129575629.58559735, \"ymax\": 45511593.25175553}" - }, - 103060: { - "label": "NAD 1983 2011 StatePlane Louisiana South FIPS 1702 Ft US", - "defaultExtent": "{\"xmin\": -124790707.23730458, \"ymin\": -91255084.9773939, \"xmax\": 131352373.90400414, \"ymax\": 36821548.440887876}" - }, - 103061: { - "label": "NAD 1983 2011 StatePlane Maine East FIPS 1801", - "defaultExtent": "{\"xmin\": -5322450.671615874, \"ymin\": -14445971.085374892, \"xmax\": 5922450.671615874, \"ymax\": 4773366.36241501}" - }, - 103062: { - "label": "NAD 1983 2011 StatePlane Maine West FIPS 1802", - "defaultExtent": "{\"xmin\": -4722825.539147399, \"ymin\": -14354355.990839133, \"xmax\": 6522825.539147401, \"ymax\": 4866262.874255687}" - }, - 103063: { - "label": "NAD 1983 2011 StatePlane Maine East FIPS 1801 Ft US", - "defaultExtent": "{\"xmin\": -17462073.578459747, \"ymin\": -47394823.46926745, \"xmax\": 19430573.578459747, \"ymax\": 15660619.474023243}" - }, - 103064: { - "label": "NAD 1983 2011 StatePlane Maine West FIPS 1802 Ft US", - "defaultExtent": "{\"xmin\": -15494803.456352757, \"ymin\": -47094249.613278046, \"xmax\": 21400303.456352763, \"ymax\": 15965397.446620531}" - }, - 103065: { - "label": "NAD 1983 2011 Maine 2000 East Zone", - "defaultExtent": "{\"xmin\": -4922900.5126537075, \"ymin\": -14465644.401938386, \"xmax\": 6322900.5126537075, \"ymax\": 4755230.746617417}" - }, - 103066: { - "label": "NAD 1983 2011 Maine 2000 Central Zone", - "defaultExtent": "{\"xmin\": -5122900.5126537075, \"ymin\": -14428609.897370517, \"xmax\": 6122900.5126537075, \"ymax\": 4792265.251185287}" - }, - 103067: { - "label": "NAD 1983 2011 Maine 2000 West Zone", - "defaultExtent": "{\"xmin\": -5322900.5126537075, \"ymin\": -14354547.388632273, \"xmax\": 5922900.5126537075, \"ymax\": 4866327.759923531}" - }, - 103068: { - "label": "NAD 1983 2011 StatePlane Maryland FIPS 1900", - "defaultExtent": "{\"xmin\": -36747007.26427332, \"ymin\": -29091384.527313504, \"xmax\": 37547007.26462395, \"ymax\": 22554678.123978678}" - }, - 103069: { - "label": "NAD 1983 2011 StatePlane Maryland FIPS 1900 Ft US", - "defaultExtent": "{\"xmin\": -120560806.33287005, \"ymin\": -95443984.07002771, \"xmax\": 123185473.00068705, \"ymax\": 73998139.81175338}" - }, - 103070: { - "label": "NAD 1983 2011 StatePlane Massachusetts Mainland FIPS 2001", - "defaultExtent": "{\"xmin\": -36530705.74194933, \"ymin\": -28803004.001248993, \"xmax\": 36930705.741942905, \"ymax\": 26796569.38877064}" - }, - 103071: { - "label": "NAD 1983 2011 StatePlane Massachusetts Island FIPS 2002", - "defaultExtent": "{\"xmin\": -36324363.173723884, \"ymin\": -29532372.723926485, \"xmax\": 37324363.17347703, \"ymax\": 25143058.28571613}" - }, - 103072: { - "label": "NAD 1983 2011 StatePlane Massachusetts Mnld FIPS 2001 FtUS", - "defaultExtent": "{\"xmin\": -119851157.08837874, \"ymin\": -94497855.62743106, \"xmax\": 121163490.421691, \"ymax\": 87915078.06965832}" - }, - 103073: { - "label": "NAD 1983 2011 StatePlane Massachusetts Isl FIPS 2002 FtUS", - "defaultExtent": "{\"xmin\": -119174181.5124591, \"ymin\": -96890792.84508213, \"xmax\": 122455014.84498255, \"ymax\": 82490183.72572033}" - }, - 103074: { - "label": "NAD 1983 2011 StatePlane Michigan North FIPS 2111", - "defaultExtent": "{\"xmin\": -28338008.16261086, \"ymin\": -30062764.319301587, \"xmax\": 44338008.16271662, \"ymax\": 29682471.10421796}" - }, - 103075: { - "label": "NAD 1983 2011 StatePlane Michigan Central FIPS 2112", - "defaultExtent": "{\"xmin\": -30455190.630660422, \"ymin\": -29873530.398834094, \"xmax\": 42455190.63111069, \"ymax\": 28598773.969079223}" - }, - 103076: { - "label": "NAD 1983 2011 StatePlane Michigan South FIPS 2113", - "defaultExtent": "{\"xmin\": -32655721.616859354, \"ymin\": -29624554.326154392, \"xmax\": 40655721.616422996, \"ymax\": 26723713.97971105}" - }, - 103077: { - "label": "NAD 1983 2011 StatePlane Michigan North FIPS 2111 Ft Intl", - "defaultExtent": "{\"xmin\": -92972467.72510123, \"ymin\": -98631116.53314169, \"xmax\": 145465906.0456582, \"ymax\": 97383435.38129252}" - }, - 103078: { - "label": "NAD 1983 2011 StatePlane Michigan Central FIPS 2112 Ft Intl", - "defaultExtent": "{\"xmin\": -99918604.4313006, \"ymin\": -98010270.3373822, \"xmax\": 139288683.17293534, \"ymax\": 93827998.58621791}" - }, - 103079: { - "label": "NAD 1983 2011 StatePlane Michigan South FIPS 2113 Ft Intl", - "defaultExtent": "{\"xmin\": -107138194.28103462, \"ymin\": -97193419.70523094, \"xmax\": 133384913.43970798, \"ymax\": 87676226.96755593}" - }, - 103080: { - "label": "NAD 1983 2011 StatePlane Minnesota North FIPS 2201", - "defaultExtent": "{\"xmin\": -35413952.21883893, \"ymin\": -30179238.744515866, \"xmax\": 37013952.21884459, \"ymax\": 30925833.663218413}" - }, - 103081: { - "label": "NAD 1983 2011 StatePlane Minnesota Central FIPS 2202", - "defaultExtent": "{\"xmin\": -35534345.78057431, \"ymin\": -29988111.83685971, \"xmax\": 37134345.780168205, \"ymax\": 29803284.527532667}" - }, - 103082: { - "label": "NAD 1983 2011 StatePlane Minnesota South FIPS 2203", - "defaultExtent": "{\"xmin\": -35696176.20197969, \"ymin\": -29729049.350341942, \"xmax\": 37296176.20161064, \"ymax\": 28305006.49768952}" - }, - 103083: { - "label": "NAD 1983 2011 StatePlane Minnesota North FIPS 2201 Ft US", - "defaultExtent": "{\"xmin\": -116187274.9046407, \"ymin\": -99013052.44763246, \"xmax\": 121436608.23799261, \"ymax\": 101462505.94340906}" - }, - 103084: { - "label": "NAD 1983 2011 StatePlane Minnesota Central FIPS 2202 Ft US", - "defaultExtent": "{\"xmin\": -116582266.11510086, \"ymin\": -98385996.91809723, \"xmax\": 121831599.44710183, \"ymax\": 97779609.32074675}" - }, - 103085: { - "label": "NAD 1983 2011 StatePlane Minnesota South FIPS 2203 Ft US", - "defaultExtent": "{\"xmin\": -117113204.75599502, \"ymin\": -97536056.0769135, \"xmax\": 122362538.08811755, \"ymax\": 92864008.81783636}" - }, - 103086: { - "label": "NAD 1983 2011 StatePlane Mississippi East FIPS 2301", - "defaultExtent": "{\"xmin\": -5322731.822264518, \"ymin\": -12874675.296950985, \"xmax\": 5922731.8222645195, \"ymax\": 6345623.2138176095}" - }, - 103087: { - "label": "NAD 1983 2011 StatePlane Mississippi West FIPS 2302", - "defaultExtent": "{\"xmin\": -4922731.8222645195, \"ymin\": -12874675.296950981, \"xmax\": 6322731.8222645195, \"ymax\": 6345623.2138176095}" - }, - 103088: { - "label": "NAD 1983 2011 StatePlane Mississippi East FIPS 2301 Ft US", - "defaultExtent": "{\"xmin\": -17462995.9868795, \"ymin\": -42239663.87008002, \"xmax\": 19431495.98687951, \"ymax\": 20818932.160666604}" - }, - 103089: { - "label": "NAD 1983 2011 StatePlane Mississippi West FIPS 2302 Ft US", - "defaultExtent": "{\"xmin\": -16150662.653546175, \"ymin\": -42239663.87008, \"xmax\": 20743829.32021284, \"ymax\": 20818932.160666604}" - }, - 103090: { - "label": "NAD 1983 2011 StatePlane Missouri East FIPS 2401", - "defaultExtent": "{\"xmin\": -5372638.10538164, \"ymin\": -13576774.369054265, \"xmax\": 5872638.105381638, \"ymax\": 5643203.787388095}" - }, - 103091: { - "label": "NAD 1983 2011 StatePlane Missouri Central FIPS 2402", - "defaultExtent": "{\"xmin\": -5122638.105381638, \"ymin\": -13576774.369054267, \"xmax\": 6122638.105381639, \"ymax\": 5643203.787388095}" - }, - 103092: { - "label": "NAD 1983 2011 StatePlane Missouri West FIPS 2403", - "defaultExtent": "{\"xmin\": -4772682.2074441705, \"ymin\": -13613865.018881941, \"xmax\": 6472682.2074441705, \"ymax\": 5606263.89253747}" - }, - 103093: { - "label": "NAD 1983 2011 StatePlane Montana FIPS 2500", - "defaultExtent": "{\"xmin\": -35665865.835127994, \"ymin\": -30006746.26947549, \"xmax\": 36865865.835221216, \"ymax\": 30370447.115839537}" - }, - 103094: { - "label": "NAD 1983 2011 StatePlane Montana FIPS 2500 Ft Intl", - "defaultExtent": "{\"xmin\": -117013995.52207346, \"ymin\": -98447330.28043139, \"xmax\": 120951003.39639506, \"ymax\": 99640574.5270326}" - }, - 103095: { - "label": "NAD 1983 2011 StatePlane Nebraska FIPS 2600", - "defaultExtent": "{\"xmin\": -36300933.080799475, \"ymin\": -29399402.24687034, \"xmax\": 37300933.080734946, \"ymax\": 25403103.617317706}" - }, - 103096: { - "label": "NAD 1983 2011 StatePlane Nebraska FIPS 2600 Ft US", - "defaultExtent": "{\"xmin\": -119097311.2825896, \"ymin\": -96454538.8716071, \"xmax\": 122378144.61571121, \"ymax\": 83343349.1178165}" - }, - 103097: { - "label": "NAD 1983 2011 StatePlane Nevada East FIPS 2701", - "defaultExtent": "{\"xmin\": -5422450.671615874, \"ymin\": -5456142.367622394, \"xmax\": 5822450.671615875, \"ymax\": 13763195.080167508}" - }, - 103098: { - "label": "NAD 1983 2011 StatePlane Nevada Central FIPS 2702", - "defaultExtent": "{\"xmin\": -5122450.671615874, \"ymin\": -7456142.367622394, \"xmax\": 6122450.671615874, \"ymax\": 11763195.080167508}" - }, - 103099: { - "label": "NAD 1983 2011 StatePlane Nevada West FIPS 2703", - "defaultExtent": "{\"xmin\": -4822450.671615874, \"ymin\": -9456142.367622394, \"xmax\": 6422450.671615874, \"ymax\": 9763195.080167508}" - }, - 103100: { - "label": "NAD 1983 2011 StatePlane Nevada East FIPS 2701 Ft US", - "defaultExtent": "{\"xmin\": -17790156.91179308, \"ymin\": -17900693.751107804, \"xmax\": 19102490.245126415, \"ymax\": 45154749.19218288}" - }, - 103101: { - "label": "NAD 1983 2011 StatePlane Nevada Central FIPS 2702 Ft US", - "defaultExtent": "{\"xmin\": -16805906.91179308, \"ymin\": -24462360.417774465, \"xmax\": 20086740.24512641, \"ymax\": 38593082.525516234}" - }, - 103102: { - "label": "NAD 1983 2011 StatePlane Nevada West FIPS 2703 Ft US", - "defaultExtent": "{\"xmin\": -15821656.91179308, \"ymin\": -31024027.084441133, \"xmax\": 21070990.24512641, \"ymax\": 32031415.858849563}" - }, - 103103: { - "label": "NAD 1983 2011 StatePlane New Hampshire FIPS 2800", - "defaultExtent": "{\"xmin\": -5322825.539147401, \"ymin\": -14317328.47673371, \"xmax\": 5922825.539147401, \"ymax\": 4903290.3883611085}" - }, - 103104: { - "label": "NAD 1983 2011 StatePlane New Hampshire FIPS 2800 Ft US", - "defaultExtent": "{\"xmin\": -17463303.456352763, \"ymin\": -46972768.51075051, \"xmax\": 19431803.456352763, \"ymax\": 16086878.549148068}" - }, - 103105: { - "label": "NAD 1983 2011 StatePlane New Jersey FIPS 2900", - "defaultExtent": "{\"xmin\": -5472450.671615874, \"ymin\": -13909240.393148925, \"xmax\": 5772450.671615874, \"ymax\": 5310097.054640977}" - }, - 103106: { - "label": "NAD 1983 2011 StatePlane New Jersey FIPS 2900 Ft US", - "defaultExtent": "{\"xmin\": -17954198.578459747, \"ymin\": -45633899.523189425, \"xmax\": 18938448.578459747, \"ymax\": 17421543.42010127}" - }, - 103107: { - "label": "NAD 1983 2011 StatePlane New Mexico East FIPS 3001", - "defaultExtent": "{\"xmin\": -5457501.789915625, \"ymin\": -13040418.509908829, \"xmax\": 5787501.789915627, \"ymax\": 6179093.676604471}" - }, - 103108: { - "label": "NAD 1983 2011 StatePlane New Mexico Central FIPS 3002", - "defaultExtent": "{\"xmin\": -5122450.671615874, \"ymin\": -13040299.949871464, \"xmax\": 6122450.671615874, \"ymax\": 6179037.49791844}" - }, - 103109: { - "label": "NAD 1983 2011 StatePlane New Mexico West FIPS 3003", - "defaultExtent": "{\"xmin\": -4792544.388498756, \"ymin\": -13040517.30993997, \"xmax\": 6452544.388498756, \"ymax\": 6179140.492176165}" - }, - 103110: { - "label": "NAD 1983 2011 StatePlane New Mexico East FIPS 3001 Ft US", - "defaultExtent": "{\"xmin\": -17905153.78908151, \"ymin\": -42783439.727925874, \"xmax\": 18987828.789081518, \"ymax\": 20272576.503993165}" - }, - 103111: { - "label": "NAD 1983 2011 StatePlane New Mexico Central FIPS 3002 Ft US", - "defaultExtent": "{\"xmin\": -16805906.91179308, \"ymin\": -42783050.752203286, \"xmax\": 20086740.24512641, \"ymax\": 20272392.191087414}" - }, - 103112: { - "label": "NAD 1983 2011 StatePlane New Mexico West FIPS 3003 Ft US", - "defaultExtent": "{\"xmin\": -15723539.381266333, \"ymin\": -42783763.87436138, \"xmax\": 21169722.714599665, \"ymax\": 20272730.0980813}" - }, - 103113: { - "label": "NAD 1983 2011 StatePlane New York East FIPS 3101", - "defaultExtent": "{\"xmin\": -5472450.671615874, \"ymin\": -13909240.393148925, \"xmax\": 5772450.671615874, \"ymax\": 5310097.054640977}" - }, - 103114: { - "label": "NAD 1983 2011 StatePlane New York Central FIPS 3102", - "defaultExtent": "{\"xmin\": -5372661.534602356, \"ymin\": -14039281.307184162, \"xmax\": 5872661.534602358, \"ymax\": 5180776.937839759}" - }, - 103115: { - "label": "NAD 1983 2011 StatePlane New York West FIPS 3103", - "defaultExtent": "{\"xmin\": -5272661.53460236, \"ymin\": -14039281.307184162, \"xmax\": 5972661.534602358, \"ymax\": 5180776.937839759}" - }, - 103116: { - "label": "NAD 1983 2011 StatePlane New York Long Island FIPS 3104", - "defaultExtent": "{\"xmin\": -36587956.42066342, \"ymin\": -29425420.120449886, \"xmax\": 37187956.42150142, \"ymax\": 24629425.6260428}" - }, - 103117: { - "label": "NAD 1983 2011 StatePlane New York East FIPS 3101 Ft US", - "defaultExtent": "{\"xmin\": -17954198.578459747, \"ymin\": -45633899.523189425, \"xmax\": 18938448.578459747, \"ymax\": 17421543.42010127}" - }, - 103118: { - "label": "NAD 1983 2011 StatePlane New York Central FIPS 3102 Ft US", - "defaultExtent": "{\"xmin\": -17626807.051441226, \"ymin\": -46060542.08865336, \"xmax\": 19267223.7181079, \"ymax\": 16997265.67022927}" - }, - 103119: { - "label": "NAD 1983 2011 StatePlane New York West FIPS 3103 Ft US", - "defaultExtent": "{\"xmin\": -17298723.718107905, \"ymin\": -46060542.08865336, \"xmax\": 19595307.051441234, \"ymax\": 16997265.67022927}" - }, - 103120: { - "label": "NAD 1983 2011 StatePlane New York Long Isl FIPS 3104 Ft US", - "defaultExtent": "{\"xmin\": -120038987.02345988, \"ymin\": -96539899.17850932, \"xmax\": 122007487.02620924, \"ymax\": 80805040.5747754}" - }, - 103121: { - "label": "NAD 1983 2011 StatePlane North Carolina FIPS 3200", - "defaultExtent": "{\"xmin\": -37137389.955812365, \"ymin\": -28547205.58121489, \"xmax\": 38356592.39440943, \"ymax\": 18261684.963585444}" - }, - 103122: { - "label": "NAD 1983 2011 StatePlane North Carolina FIPS 3200 Ft US", - "defaultExtent": "{\"xmin\": -121841586.88002771, \"ymin\": -93658623.64436917, \"xmax\": 125841586.88065827, \"ymax\": 59913544.75136323}" - }, - 103123: { - "label": "NAD 1983 2011 StatePlane North Dakota North FIPS 3301", - "defaultExtent": "{\"xmin\": -35595748.115963005, \"ymin\": -30339027.657292105, \"xmax\": 36795748.11641998, \"ymax\": 30974941.604174778}" - }, - 103124: { - "label": "NAD 1983 2011 StatePlane North Dakota South FIPS 3302", - "defaultExtent": "{\"xmin\": -35693627.05966489, \"ymin\": -30171287.465168312, \"xmax\": 36893627.0601383, \"ymax\": 30070892.076617684}" - }, - 103125: { - "label": "NAD 1983 2011 StatePlane North Dakota North FIPS 3301 FtI", - "defaultExtent": "{\"xmin\": -116783950.51168965, \"ymin\": -99537492.31395046, \"xmax\": 120720958.38720465, \"ymax\": 101623824.1606784}" - }, - 103126: { - "label": "NAD 1983 2011 StatePlane North Dakota South FIPS 3302 FtI", - "defaultExtent": "{\"xmin\": -117105075.65506853, \"ymin\": -98987163.59963356, \"xmax\": 121042083.53063746, \"ymax\": 98657782.40360132}" - }, - 103127: { - "label": "NAD 1983 2011 StatePlane Ohio North FIPS 3401", - "defaultExtent": "{\"xmin\": -36260139.32294244, \"ymin\": -29374687.724612944, \"xmax\": 37460139.32264283, \"ymax\": 24932674.77100941}" - }, - 103128: { - "label": "NAD 1983 2011 StatePlane Ohio South FIPS 3402", - "defaultExtent": "{\"xmin\": -36475619.49728193, \"ymin\": -29142750.459979072, \"xmax\": 37675619.497339524, \"ymax\": 23138992.601405952}" - }, - 103129: { - "label": "NAD 1983 2011 StatePlane Ohio North FIPS 3401 Ft US", - "defaultExtent": "{\"xmin\": -118963473.76202032, \"ymin\": -96373454.64316761, \"xmax\": 122900473.76103735, \"ymax\": 81799950.4778867}" - }, - 103130: { - "label": "NAD 1983 2011 StatePlane Ohio South FIPS 3402 Ft US", - "defaultExtent": "{\"xmin\": -119670428.30066578, \"ymin\": -95612507.13411467, \"xmax\": 123607428.30085474, \"ymax\": 75915178.22644602}" - }, - 103131: { - "label": "NAD 1983 2011 StatePlane Oklahoma North FIPS 3501", - "defaultExtent": "{\"xmin\": -36979233.88907343, \"ymin\": -28714973.963273533, \"xmax\": 38179233.8890346, \"ymax\": 19365200.320864283}" - }, - 103132: { - "label": "NAD 1983 2011 StatePlane Oklahoma South FIPS 3502", - "defaultExtent": "{\"xmin\": -37281426.008000575, \"ymin\": -28482182.493828315, \"xmax\": 38481426.007534444, \"ymax\": 17385783.726951864}" - }, - 103133: { - "label": "NAD 1983 2011 StatePlane Oklahoma North FIPS 3501 Ft US", - "defaultExtent": "{\"xmin\": -121322703.18440174, \"ymin\": -94209043.74450657, \"xmax\": 125259703.18427433, \"ymax\": 63533994.71936889}" - }, - 103134: { - "label": "NAD 1983 2011 StatePlane Oklahoma South FIPS 3502 Ft US", - "defaultExtent": "{\"xmin\": -122314145.16124853, \"ymin\": -93445293.73183505, \"xmax\": 126251145.15971924, \"ymax\": 57039858.7775079}" - }, - 103135: { - "label": "NAD 1983 2011 StatePlane Oregon North FIPS 3601", - "defaultExtent": "{\"xmin\": -33934395.67833442, \"ymin\": -29916770.9826887, \"xmax\": 38934395.67866903, \"ymax\": 28774826.90963382}" - }, - 103136: { - "label": "NAD 1983 2011 StatePlane Oregon South FIPS 3602", - "defaultExtent": "{\"xmin\": -35126017.07220474, \"ymin\": -29649727.834081486, \"xmax\": 38126017.072228044, \"ymax\": 27002732.65337064}" - }, - 103137: { - "label": "NAD 1983 2011 StatePlane Oregon North FIPS 3601 Ft Intl", - "defaultExtent": "{\"xmin\": -111333319.15464048, \"ymin\": -98152135.76997603, \"xmax\": 127737518.6308039, \"ymax\": 94405600.09722382}" - }, - 103138: { - "label": "NAD 1983 2011 StatePlane Oregon South FIPS 3602 Ft Intl", - "defaultExtent": "{\"xmin\": -115242838.16340137, \"ymin\": -97276009.95433559, \"xmax\": 125085357.8485172, \"ymax\": 88591642.56355196}" - }, - 103139: { - "label": "NAD 1983 2011 StatePlane Pennsylvania North FIPS 3701", - "defaultExtent": "{\"xmin\": -36219260.373335704, \"ymin\": -29439912.0075843, \"xmax\": 37419260.373972096, \"ymax\": 25273022.556772325}" - }, - 103140: { - "label": "NAD 1983 2011 StatePlane Pennsylvania North FIPS 3701 Ft US", - "defaultExtent": "{\"xmin\": -118829356.74151887, \"ymin\": -96587444.64488281, \"xmax\": 122766356.74360676, \"ymax\": 82916574.83834386}" - }, - 103141: { - "label": "NAD 1983 2011 StatePlane Pennsylvania South FIPS 3702", - "defaultExtent": "{\"xmin\": -36336434.103694856, \"ymin\": -29321240.345738437, \"xmax\": 37536434.10343623, \"ymax\": 24259081.311989907}" - }, - 103142: { - "label": "NAD 1983 2011 StatePlane Pennsylvania South FIPS 3702 Ft US", - "defaultExtent": "{\"xmin\": -119213784.2218722, \"ymin\": -96198102.70097685, \"xmax\": 123150784.2210237, \"ymax\": 79590002.60442021}" - }, - 103143: { - "label": "NAD 1983 2011 StatePlane Rhode Island FIPS 3800", - "defaultExtent": "{\"xmin\": -5522977.829082084, \"ymin\": -14160369.134576127, \"xmax\": 5722977.829082084, \"ymax\": 5060770.306298815}" - }, - 103144: { - "label": "NAD 1983 2011 StatePlane Rhode Island FIPS 3800 Ft US", - "defaultExtent": "{\"xmin\": -18119969.76091347, \"ymin\": -46457811.069021836, \"xmax\": 18776136.427580133, \"ymax\": 16603543.913248692}" - }, - 103145: { - "label": "NAD 1983 2011 StatePlane South Carolina FIPS 3900", - "defaultExtent": "{\"xmin\": -37462128.94764636, \"ymin\": -28285530.15549066, \"xmax\": 38681328.949165195, \"ymax\": 16261049.643896274}" - }, - 103146: { - "label": "NAD 1983 2011 StatePlane South Carolina FIPS 3900 Ft Intl", - "defaultExtent": "{\"xmin\": -122907247.20356415, \"ymin\": -92800295.78573051, \"xmax\": 126907247.20854722, \"ymax\": 53349900.40648384}" - }, - 103147: { - "label": "NAD 1983 2011 StatePlane South Dakota North FIPS 4001", - "defaultExtent": "{\"xmin\": -35846098.92496543, \"ymin\": -29933703.866771042, \"xmax\": 37046098.92490602, \"ymax\": 28645269.44168758}" - }, - 103148: { - "label": "NAD 1983 2011 StatePlane South Dakota South FIPS 4002", - "defaultExtent": "{\"xmin\": -35980929.411304265, \"ymin\": -29734707.47249241, \"xmax\": 37180929.41117397, \"ymax\": 27393676.96179096}" - }, - 103149: { - "label": "NAD 1983 2011 StatePlane South Dakota North FIPS 4001 Ft US", - "defaultExtent": "{\"xmin\": -117605076.22299072, \"ymin\": -98207493.43623132, \"xmax\": 121542076.22279583, \"ymax\": 93980354.82660332}" - }, - 103150: { - "label": "NAD 1983 2011 StatePlane South Dakota South FIPS 4002 Ft US", - "defaultExtent": "{\"xmin\": -118047432.57692073, \"ymin\": -97554619.43266883, \"xmax\": 121984432.57649325, \"ymax\": 89874088.49880916}" - }, - 103151: { - "label": "NAD 1983 2011 StatePlane Tennessee FIPS 4100", - "defaultExtent": "{\"xmin\": -37039650.6279049, \"ymin\": -28631019.31672457, \"xmax\": 38239650.62802555, \"ymax\": 18990861.045042165}" - }, - 103152: { - "label": "NAD 1983 2011 StatePlane Tennessee FIPS 4100 Ft US", - "defaultExtent": "{\"xmin\": -121520920.4350513, \"ymin\": -93933602.54162051, \"xmax\": 125457920.43544713, \"ymax\": 62305849.94527583}" - }, - 103153: { - "label": "NAD 1983 2011 StatePlane Texas North FIPS 4201", - "defaultExtent": "{\"xmin\": -37516299.8331, \"ymin\": -27580728.943599287, \"xmax\": 37916299.833128214, \"ymax\": 19461951.497943036}" - }, - 103154: { - "label": "NAD 1983 2011 StatePlane Texas North Central FIPS 4202", - "defaultExtent": "{\"xmin\": -37614616.88807972, \"ymin\": -26250391.134317875, \"xmax\": 38814616.88802452, \"ymax\": 17395582.84290185}" - }, - 103155: { - "label": "NAD 1983 2011 StatePlane Texas Central FIPS 4203", - "defaultExtent": "{\"xmin\": -38040663.03171102, \"ymin\": -24970101.92794974, \"xmax\": 39440663.03170802, \"ymax\": 15602650.666709403}" - }, - 103156: { - "label": "NAD 1983 2011 StatePlane Texas South Central FIPS 4204", - "defaultExtent": "{\"xmin\": -38625948.2389665, \"ymin\": -23722141.01585047, \"xmax\": 39825948.2389665, \"ymax\": 15422945.822918478}" - }, - 103157: { - "label": "NAD 1983 2011 StatePlane Texas South FIPS 4205", - "defaultExtent": "{\"xmin\": -39382898.13859524, \"ymin\": -22428383.748523414, \"xmax\": 39982898.13859524, \"ymax\": 17130472.597137526}" - }, - 103158: { - "label": "NAD 1983 2011 StatePlane Texas North FIPS 4201 Ft US", - "defaultExtent": "{\"xmin\": -123084727.03576224, \"ymin\": -90487774.87579198, \"xmax\": 124397060.36918813, \"ymax\": 63851419.2061681}" - }, - 103159: { - "label": "NAD 1983 2011 StatePlane Texas North Central FIPS 4202 FtUS", - "defaultExtent": "{\"xmin\": -123407288.90697485, \"ymin\": -86123158.24650788, \"xmax\": 127344288.90679376, \"ymax\": 57072008.04375381}" - }, - 103160: { - "label": "NAD 1983 2011 StatePlane Texas Central FIPS 4203 Ft US", - "defaultExtent": "{\"xmin\": -124805075.29653856, \"ymin\": -81922742.74194843, \"xmax\": 129398241.96319537, \"ymax\": 51189696.39569576}" - }, - 103161: { - "label": "NAD 1983 2011 StatePlane Texas South Central FIPS 4204 FtUS", - "defaultExtent": "{\"xmin\": -126725298.51400925, \"ymin\": -77828390.98283607, \"xmax\": 130662298.51400925, \"ymax\": 50600114.754025035}" - }, - 103162: { - "label": "NAD 1983 2011 StatePlane Texas South FIPS 4205 Ft US", - "defaultExtent": "{\"xmin\": -129208724.97637452, \"ymin\": -73583789.01494722, \"xmax\": 131177224.97637452, \"ymax\": 56202225.512442015}" - }, - 103163: { - "label": "NAD 1983 2011 StatePlane Utah North FIPS 4301", - "defaultExtent": "{\"xmin\": -36338834.42915058, \"ymin\": -28453982.376255378, \"xmax\": 37338834.521727204, \"ymax\": 26066690.159262396}" - }, - 103164: { - "label": "NAD 1983 2011 StatePlane Utah Central FIPS 4302", - "defaultExtent": "{\"xmin\": -36514060.18168421, \"ymin\": -27191819.5738922, \"xmax\": 37514060.18232606, \"ymax\": 25642908.167597167}" - }, - 103165: { - "label": "NAD 1983 2011 StatePlane Utah South FIPS 4303", - "defaultExtent": "{\"xmin\": -36809744.07562093, \"ymin\": -25948407.843968417, \"xmax\": 37809744.075334504, \"ymax\": 24295469.49478243}" - }, - 103166: { - "label": "NAD 1983 2011 StatePlane Utah North FIPS 4301 Ft Intl", - "defaultExtent": "{\"xmin\": -119221897.73343366, \"ymin\": -93352960.55201896, \"xmax\": 122502737.93217586, \"ymax\": 85520637.00545405}" - }, - 103167: { - "label": "NAD 1983 2011 StatePlane Utah Central FIPS 4302 Ft Intl", - "defaultExtent": "{\"xmin\": -119796785.37297969, \"ymin\": -89212006.47602427, \"xmax\": 123077625.27009863, \"ymax\": 84130276.14041065}" - }, - 103168: { - "label": "NAD 1983 2011 StatePlane Utah South FIPS 4303 Ft Intl", - "defaultExtent": "{\"xmin\": -120766876.88852009, \"ymin\": -85132571.66656305, \"xmax\": 124047716.78259352, \"ymax\": 79709545.58655652}" - }, - 103169: { - "label": "NAD 1983 2011 StatePlane Utah North FIPS 4301 Ft US", - "defaultExtent": "{\"xmin\": -119221659.28963818, \"ymin\": -93352773.84609784, \"xmax\": 122502492.92669998, \"ymax\": 85520465.96418004}" - }, - 103170: { - "label": "NAD 1983 2011 StatePlane Utah Central FIPS 4302 Ft US", - "defaultExtent": "{\"xmin\": -119796545.77940908, \"ymin\": -89211828.0520115, \"xmax\": 123077379.11484823, \"ymax\": 84130107.87985882}" - }, - 103171: { - "label": "NAD 1983 2011 StatePlane Utah South FIPS 4303 Ft US", - "defaultExtent": "{\"xmin\": -120766635.35476631, \"ymin\": -85132401.4014197, \"xmax\": 124047468.68715994, \"ymax\": 79709386.16746534}" - }, - 103172: { - "label": "NAD 1983 2011 StatePlane Vermont FIPS 4400", - "defaultExtent": "{\"xmin\": -5122812.1510212775, \"ymin\": -14317294.386720052, \"xmax\": 6122812.151021276, \"ymax\": 4903278.713471021}" - }, - 103173: { - "label": "NAD 1983 2011 StatePlane Vermont FIPS 4400 Ft US", - "defaultExtent": "{\"xmin\": -16807092.86547564, \"ymin\": -46972656.66709737, \"xmax\": 20087926.198808964, \"ymax\": 16086840.245779505}" - }, - 103174: { - "label": "NAD 1983 2011 StatePlane Virginia North FIPS 4501", - "defaultExtent": "{\"xmin\": -33684162.33987652, \"ymin\": -27083846.657879442, \"xmax\": 40684162.34077641, \"ymax\": 24234815.029329725}" - }, - 103175: { - "label": "NAD 1983 2011 StatePlane Virginia South FIPS 4502", - "defaultExtent": "{\"xmin\": -33875616.80010519, \"ymin\": -27898914.99367497, \"xmax\": 40875616.80001254, \"ymax\": 21796916.219502896}" - }, - 103176: { - "label": "NAD 1983 2011 StatePlane Virginia North FIPS 4501 Ft US", - "defaultExtent": "{\"xmin\": -110512122.6100782, \"ymin\": -88857586.91005945, \"xmax\": 133477955.94636394, \"ymax\": 79510388.9753926}" - }, - 103177: { - "label": "NAD 1983 2011 StatePlane Virginia South FIPS 4502 Ft US", - "defaultExtent": "{\"xmin\": -111140252.78501177, \"ymin\": -91531690.27508196, \"xmax\": 134106086.11804111, \"ymax\": 71512049.29681908}" - }, - 103178: { - "label": "NAD 1983 2011 StatePlane Washington North FIPS 4601", - "defaultExtent": "{\"xmin\": -35693390.40305884, \"ymin\": -30339611.799414955, \"xmax\": 36693390.40324891, \"ymax\": 31002022.19631627}" - }, - 103179: { - "label": "NAD 1983 2011 StatePlane Washington South FIPS 4602", - "defaultExtent": "{\"xmin\": -35813457.80653769, \"ymin\": -30129505.531924177, \"xmax\": 36813457.80730579, \"ymax\": 29888507.91177208}" - }, - 103180: { - "label": "NAD 1983 2011 StatePlane Washington North FIPS 4601 Ft US", - "defaultExtent": "{\"xmin\": -117104065.01403554, \"ymin\": -99539209.71191388, \"xmax\": 120384898.34799246, \"ymax\": 101712467.82241428}" - }, - 103181: { - "label": "NAD 1983 2011 StatePlane Washington South FIPS 4602 Ft US", - "defaultExtent": "{\"xmin\": -117497986.15361571, \"ymin\": -98849886.06598788, \"xmax\": 120778819.48946907, \"ymax\": 98059213.04053889}" - }, - 103182: { - "label": "NAD 1983 2011 StatePlane West Virginia North FIPS 4701", - "defaultExtent": "{\"xmin\": -36443027.89488857, \"ymin\": -29205240.099509504, \"xmax\": 37643027.8949125, \"ymax\": 23375051.76188209}" - }, - 103183: { - "label": "NAD 1983 2011 StatePlane West Virginia South FIPS 4702", - "defaultExtent": "{\"xmin\": -36647651.619762786, \"ymin\": -28996711.06985563, \"xmax\": 37847651.61951533, \"ymax\": 21766153.09529358}" - }, - 103184: { - "label": "NAD 1983 2011 StatePlane West Virginia North FIPS 4701 FtUS", - "defaultExtent": "{\"xmin\": -119563500.68514691, \"ymin\": -95817525.22647409, \"xmax\": 123500500.68522543, \"ymax\": 76689648.9887748}" - }, - 103185: { - "label": "NAD 1983 2011 StatePlane West Virginia South FIPS 4702 FtUS", - "defaultExtent": "{\"xmin\": -120234837.02250506, \"ymin\": -95133376.235018, \"xmax\": 124171837.0216932, \"ymax\": 71411120.61347568}" - }, - 103186: { - "label": "NAD 1983 2011 StatePlane Wisconsin North FIPS 4801", - "defaultExtent": "{\"xmin\": -35748933.755770005, \"ymin\": -30104004.24499993, \"xmax\": 36948933.75551393, \"ymax\": 29535005.089385338}" - }, - 103187: { - "label": "NAD 1983 2011 StatePlane Wisconsin Central FIPS 4802", - "defaultExtent": "{\"xmin\": -35862028.694118075, \"ymin\": -29930060.701200917, \"xmax\": 37062028.688673995, \"ymax\": 28477287.000578806}" - }, - 103188: { - "label": "NAD 1983 2011 StatePlane Wisconsin South FIPS 4803", - "defaultExtent": "{\"xmin\": -36003344.686841294, \"ymin\": -29693054.532282908, \"xmax\": 37203344.68690827, \"ymax\": 27208063.07319163}" - }, - 103189: { - "label": "NAD 1983 2011 StatePlane Wisconsin North FIPS 4801 Ft US", - "defaultExtent": "{\"xmin\": -117286293.49705541, \"ymin\": -98766220.59380393, \"xmax\": 121223293.49621527, \"ymax\": 96899429.19742505}" - }, - 103190: { - "label": "NAD 1983 2011 StatePlane Wisconsin Central FIPS 4802 Ft US", - "defaultExtent": "{\"xmin\": -117657339.14061904, \"ymin\": -98195540.81718999, \"xmax\": 121594339.12275791, \"ymax\": 93429232.43439895}" - }, - 103191: { - "label": "NAD 1983 2011 StatePlane Wisconsin South FIPS 4803 Ft US", - "defaultExtent": "{\"xmin\": -118120973.36007847, \"ymin\": -97417963.07799816, \"xmax\": 122057973.36029819, \"ymax\": 89265120.26596287}" - }, - 103192: { - "label": "NAD 1983 2011 StatePlane Wyoming East FIPS 4901", - "defaultExtent": "{\"xmin\": -5422661.534602354, \"ymin\": -14094797.558167633, \"xmax\": 5822661.534602358, \"ymax\": 5125260.686856288}" - }, - 103193: { - "label": "NAD 1983 2011 StatePlane Wyoming East Central FIPS 4902", - "defaultExtent": "{\"xmin\": -5222661.53460236, \"ymin\": -13994797.558167633, \"xmax\": 6022661.534602358, \"ymax\": 5225260.686856289}" - }, - 103194: { - "label": "NAD 1983 2011 StatePlane Wyoming West Central FIPS 4903", - "defaultExtent": "{\"xmin\": -5022661.534602358, \"ymin\": -14094797.558167633, \"xmax\": 6222661.534602358, \"ymax\": 5125260.686856289}" - }, - 103195: { - "label": "NAD 1983 2011 StatePlane Wyoming West FIPS 4904", - "defaultExtent": "{\"xmin\": -4822661.534602356, \"ymin\": -13994797.558167633, \"xmax\": 6422661.534602358, \"ymax\": 5225260.686856289}" - }, - 103196: { - "label": "NAD 1983 2011 StatePlane Wyoming East FIPS 4901 Ft US", - "defaultExtent": "{\"xmin\": -17790848.718107887, \"ymin\": -46242681.65542164, \"xmax\": 19103182.051441234, \"ymax\": 16815126.103461005}" - }, - 103197: { - "label": "NAD 1983 2011 StatePlane Wyoming E Central FIPS 4902 Ft US", - "defaultExtent": "{\"xmin\": -17134682.05144124, \"ymin\": -45914598.3220883, \"xmax\": 19759348.7181079, \"ymax\": 17143209.43679434}" - }, - 103198: { - "label": "NAD 1983 2011 StatePlane Wyoming W Central FIPS 4903 Ft US", - "defaultExtent": "{\"xmin\": -16478515.384774568, \"ymin\": -46242681.65542164, \"xmax\": 20415515.384774566, \"ymax\": 16815126.10346101}" - }, - 103199: { - "label": "NAD 1983 2011 StatePlane Wyoming West FIPS 4904 Ft US", - "defaultExtent": "{\"xmin\": -15822348.718107894, \"ymin\": -45914598.3220883, \"xmax\": 21071682.051441234, \"ymax\": 17143209.43679434}" - }, - 103200: { - "label": "NAD 1983 2011 StatePlane Puerto Rico Virgin Isls FIPS 5200", - "defaultExtent": "{\"xmin\": -38021748.15784241, \"ymin\": -26319807.671320274, \"xmax\": 38421748.157935165, \"ymax\": 15157853.89958689}" - }, - 103220: { - "label": "NAD 1983 CORS96 StatePlane Alabama East FIPS 0101", - "defaultExtent": "{\"xmin\": -5422788.052394249, \"ymin\": -12985652.072866369, \"xmax\": 5822788.052394249, \"ymax\": 6234838.650497956}" - }, - 103221: { - "label": "NAD 1983 CORS96 StatePlane Alabama West FIPS 0102", - "defaultExtent": "{\"xmin\": -5022638.105381638, \"ymin\": -12929881.135173015, \"xmax\": 6222638.105381638, \"ymax\": 6290097.0212693475}" - }, - 103222: { - "label": "NAD 1983 CORS96 StatePlane Arizona East FIPS 0201", - "defaultExtent": "{\"xmin\": -5409090.671615874, \"ymin\": -13040299.949871464, \"xmax\": 5835810.671615874, \"ymax\": 6179037.49791844}" - }, - 103223: { - "label": "NAD 1983 CORS96 StatePlane Arizona Central FIPS 0202", - "defaultExtent": "{\"xmin\": -5409090.671615872, \"ymin\": -13040299.949871464, \"xmax\": 5835810.671615874, \"ymax\": 6179037.49791844}" - }, - 103224: { - "label": "NAD 1983 CORS96 StatePlane Arizona West FIPS 0203", - "defaultExtent": "{\"xmin\": -5409278.105381638, \"ymin\": -13040734.670008475, \"xmax\": 5835998.105381638, \"ymax\": 6179243.48643389}" - }, - 103225: { - "label": "NAD 1983 CORS96 StatePlane Arizona East FIPS 0201 Ft Intl", - "defaultExtent": "{\"xmin\": -17746360.47118069, \"ymin\": -42783136.31847593, \"xmax\": 19146360.47118069, \"ymax\": 20272432.735952888}" - }, - 103226: { - "label": "NAD 1983 CORS96 StatePlane Arizona Central FIPS 0202 Ft Intl", - "defaultExtent": "{\"xmin\": -17746360.47118068, \"ymin\": -42783136.31847593, \"xmax\": 19146360.47118069, \"ymax\": 20272432.735952888}" - }, - 103227: { - "label": "NAD 1983 CORS96 StatePlane Arizona West FIPS 0203 Ft Intl", - "defaultExtent": "{\"xmin\": -17746975.41135708, \"ymin\": -42784562.5656446, \"xmax\": 19146975.41135708, \"ymax\": 20273108.55129229}" - }, - 103228: { - "label": "NAD 1983 CORS96 StatePlane Arkansas North FIPS 0301", - "defaultExtent": "{\"xmin\": -37285630.80991245, \"ymin\": -28623235.611847952, \"xmax\": 38085630.80986683, \"ymax\": 18652037.545588575}" - }, - 103229: { - "label": "NAD 1983 CORS96 StatePlane Arkansas South FIPS 0302", - "defaultExtent": "{\"xmin\": -37595985.155181974, \"ymin\": -27991400.9264211, \"xmax\": 38395985.15505119, \"ymax\": 17088046.267518982}" - }, - 103230: { - "label": "NAD 1983 CORS96 StatePlane Arkansas North FIPS 0301 Ft US", - "defaultExtent": "{\"xmin\": -122327940.41552109, \"ymin\": -93908065.50320448, \"xmax\": 124952607.08203807, \"ymax\": 61194226.51415184}" - }, - 103231: { - "label": "NAD 1983 CORS96 StatePlane Arkansas South FIPS 0302 Ft US", - "defaultExtent": "{\"xmin\": -123346161.29662618, \"ymin\": -91835121.20609988, \"xmax\": 125970827.96286376, \"ymax\": 56063031.79601851}" - }, - 103232: { - "label": "NAD 1983 CORS96 StatePlane California I FIPS 0401", - "defaultExtent": "{\"xmin\": -34887054.27121294, \"ymin\": -28830499.630561125, \"xmax\": 38887054.271445766, \"ymax\": 25202733.856392305}" - }, - 103233: { - "label": "NAD 1983 CORS96 StatePlane California II FIPS 0402", - "defaultExtent": "{\"xmin\": -35116508.911664024, \"ymin\": -28596719.981055927, \"xmax\": 39116508.911764205, \"ymax\": 23310630.66291148}" - }, - 103234: { - "label": "NAD 1983 CORS96 StatePlane California III FIPS 0403", - "defaultExtent": "{\"xmin\": -35314262.749591045, \"ymin\": -28428487.57731289, \"xmax\": 39314262.749551564, \"ymax\": 21771398.527620755}" - }, - 103235: { - "label": "NAD 1983 CORS96 StatePlane California IV FIPS 0404", - "defaultExtent": "{\"xmin\": -35498881.48266848, \"ymin\": -28265654.103608675, \"xmax\": 39498881.48289684, \"ymax\": 20437979.07279057}" - }, - 103236: { - "label": "NAD 1983 CORS96 StatePlane California V FIPS 0405", - "defaultExtent": "{\"xmin\": -35847160.01764138, \"ymin\": -28005403.878855906, \"xmax\": 39847160.01752812, \"ymax\": 18099234.480987653}" - }, - 103237: { - "label": "NAD 1983 CORS96 StatePlane California VI FIPS 0406", - "defaultExtent": "{\"xmin\": -36151940.068675034, \"ymin\": -27815848.278992966, \"xmax\": 40151940.06861196, \"ymax\": 16247248.704331301}" - }, - 103238: { - "label": "NAD 1983 CORS96 StatePlane California I FIPS 0401 Ft US", - "defaultExtent": "{\"xmin\": -114458610.55480444, \"ymin\": -94588064.20459928, \"xmax\": 127581943.88890164, \"ymax\": 82685969.32718042}" - }, - 103239: { - "label": "NAD 1983 CORS96 StatePlane California II FIPS 0402 Ft US", - "defaultExtent": "{\"xmin\": -115211412.98768437, \"ymin\": -93821072.13784765, \"xmax\": 128334746.32134637, \"ymax\": 76478294.09990206}" - }, - 103240: { - "label": "NAD 1983 CORS96 StatePlane California III FIPS 0403 Ft US", - "defaultExtent": "{\"xmin\": -115860210.37094994, \"ymin\": -93269129.6599007, \"xmax\": 128983543.70415375, \"ymax\": 71428330.00270241}" - }, - 103241: { - "label": "NAD 1983 CORS96 StatePlane California IV FIPS 0404 Ft US", - "defaultExtent": "{\"xmin\": -116465913.66438816, \"ymin\": -92734900.17158945, \"xmax\": 129589246.99847071, \"ymax\": 67053603.00798039}" - }, - 103242: { - "label": "NAD 1983 CORS96 StatePlane California V FIPS 0405 Ft US", - "defaultExtent": "{\"xmin\": -117608557.49121174, \"ymin\": -91881062.55921307, \"xmax\": 130731890.82417348, \"ymax\": 59380571.79304032}" - }, - 103243: { - "label": "NAD 1983 CORS96 StatePlane California VI FIPS 0406 Ft US", - "defaultExtent": "{\"xmin\": -118608490.04197799, \"ymin\": -91259162.22866274, \"xmax\": 131731823.37510438, \"ymax\": 53304515.12412693}" - }, - 103244: { - "label": "NAD 1983 CORS96 StatePlane Colorado North FIPS 0501", - "defaultExtent": "{\"xmin\": -36047295.1761787, \"ymin\": -29010844.772414874, \"xmax\": 37876098.83435248, \"ymax\": 24329837.178702205}" - }, - 103245: { - "label": "NAD 1983 CORS96 StatePlane Colorado Central FIPS 0502", - "defaultExtent": "{\"xmin\": -36200413.80326969, \"ymin\": -28811315.283514805, \"xmax\": 38029217.46057424, \"ymax\": 23117321.353997074}" - }, - 103246: { - "label": "NAD 1983 CORS96 StatePlane Colorado South FIPS 0503", - "defaultExtent": "{\"xmin\": -36387386.019578025, \"ymin\": -28644971.833411947, \"xmax\": 38216189.6778173, \"ymax\": 21664082.8771381}" - }, - 103247: { - "label": "NAD 1983 CORS96 StatePlane Colorado North FIPS 0501 Ft US", - "defaultExtent": "{\"xmin\": -118265167.59051295, \"ymin\": -95179746.55749778, \"xmax\": 124265167.5923714, \"ymax\": 79822140.81045881}" - }, - 103248: { - "label": "NAD 1983 CORS96 StatePlane Colorado Central FIPS 0502 Ft US", - "defaultExtent": "{\"xmin\": -118767524.2862273, \"ymin\": -94525123.55933148, \"xmax\": 124767524.28523397, \"ymax\": 75844078.47557206}" - }, - 103249: { - "label": "NAD 1983 CORS96 StatePlane Colorado South FIPS 0503 Ft US", - "defaultExtent": "{\"xmin\": -119380948.96589889, \"ymin\": -93979378.42345235, \"xmax\": 125380948.96797225, \"ymax\": 71076245.23941058}" - }, - 103250: { - "label": "NAD 1983 CORS96 StatePlane Connecticut FIPS 0600", - "defaultExtent": "{\"xmin\": -36501665.38080174, \"ymin\": -29365141.16645893, \"xmax\": 37111266.59970077, \"ymax\": 25482156.151964903}" - }, - 103251: { - "label": "NAD 1983 CORS96 StatePlane Connecticut FIPS 0600 Ft US", - "defaultExtent": "{\"xmin\": -119755880.50351368, \"ymin\": -96342133.97695734, \"xmax\": 121755880.50251827, \"ymax\": 83602707.3085715}" - }, - 103252: { - "label": "NAD 1983 CORS96 StatePlane Delaware FIPS 0700", - "defaultExtent": "{\"xmin\": -5422984.8578483015, \"ymin\": -13818058.715278085, \"xmax\": 5822984.857848301, \"ymax\": 5403104.752171321}" - }, - 103253: { - "label": "NAD 1983 CORS96 StatePlane Delaware FIPS 0700 Ft US", - "defaultExtent": "{\"xmin\": -17791909.487790633, \"ymin\": -45334747.63504151, \"xmax\": 19104242.821123965, \"ymax\": 17726686.174415406}" - }, - 103254: { - "label": "NAD 1983 CORS96 StatePlane Florida East FIPS 0901", - "defaultExtent": "{\"xmin\": -5422682.2074441705, \"ymin\": -12302114.955780467, \"xmax\": 5822682.2074441705, \"ymax\": 6918013.955638945}" - }, - 103255: { - "label": "NAD 1983 CORS96 StatePlane Florida West FIPS 0902", - "defaultExtent": "{\"xmin\": -5422682.207444169, \"ymin\": -12302114.955780467, \"xmax\": 5822682.2074441705, \"ymax\": 6918013.955638945}" - }, - 103256: { - "label": "NAD 1983 CORS96 StatePlane Florida North FIPS 0903", - "defaultExtent": "{\"xmin\": -38386184.53222137, \"ymin\": -27874919.325736687, \"xmax\": 39586184.5326483, \"ymax\": 11420627.34512336}" - }, - 103257: { - "label": "NAD 1983 CORS96 StatePlane Florida East FIPS 0901 Ft US", - "defaultExtent": "{\"xmin\": -17790916.542256415, \"ymin\": -40361188.817423075, \"xmax\": 19103249.875589747, \"ymax\": 22696850.786125436}" - }, - 103258: { - "label": "NAD 1983 CORS96 StatePlane Florida West FIPS 0902 Ft US", - "defaultExtent": "{\"xmin\": -17790916.542256407, \"ymin\": -40361188.817423075, \"xmax\": 19103249.875589747, \"ymax\": 22696850.786125436}" - }, - 103259: { - "label": "NAD 1983 CORS96 StatePlane Florida North FIPS 0903 Ft US", - "defaultExtent": "{\"xmin\": -125938673.75279626, \"ymin\": -91452964.48785444, \"xmax\": 129875673.75419696, \"ymax\": 37469174.881458886}" - }, - 103260: { - "label": "NAD 1983 CORS96 StatePlane Georgia East FIPS 1001", - "defaultExtent": "{\"xmin\": -5422450.671615874, \"ymin\": -12929450.11040019, \"xmax\": 5822450.671615874, \"ymax\": 6289887.337389712}" - }, - 103261: { - "label": "NAD 1983 CORS96 StatePlane Georgia West FIPS 1002", - "defaultExtent": "{\"xmin\": -4922450.671615872, \"ymin\": -12929450.11040019, \"xmax\": 6322450.6716158725, \"ymax\": 6289887.337389712}" - }, - 103262: { - "label": "NAD 1983 CORS96 StatePlane Georgia East FIPS 1001 Ft US", - "defaultExtent": "{\"xmin\": -17790156.91179308, \"ymin\": -42419370.90387128, \"xmax\": 19102490.24512641, \"ymax\": 20636072.039419413}" - }, - 103263: { - "label": "NAD 1983 CORS96 StatePlane Georgia West FIPS 1002 Ft US", - "defaultExtent": "{\"xmin\": -16149740.245126404, \"ymin\": -42419370.90387128, \"xmax\": 20742906.91179307, \"ymax\": 20636072.039419413}" - }, - 103264: { - "label": "NAD 1983 CORS96 StatePlane Idaho East FIPS 1101", - "defaultExtent": "{\"xmin\": -5422717.024861958, \"ymin\": -14224494.619744752, \"xmax\": 5822717.024861958, \"ymax\": 4995753.308761801}" - }, - 103265: { - "label": "NAD 1983 CORS96 StatePlane Idaho Central FIPS 1102", - "defaultExtent": "{\"xmin\": -5122717.024861958, \"ymin\": -14224494.619744752, \"xmax\": 6122717.024861961, \"ymax\": 4995753.308761801}" - }, - 103266: { - "label": "NAD 1983 CORS96 StatePlane Idaho West FIPS 1103", - "defaultExtent": "{\"xmin\": -4822638.105381638, \"ymin\": -14224294.967206975, \"xmax\": 6422638.105381638, \"ymax\": 4995683.189235387}" - }, - 103267: { - "label": "NAD 1983 CORS96 StatePlane Idaho East FIPS 1101 Ft US", - "defaultExtent": "{\"xmin\": -17791030.77240127, \"ymin\": -46668196.09827923, \"xmax\": 19103364.105734605, \"ymax\": 16390233.980496006}" - }, - 103268: { - "label": "NAD 1983 CORS96 StatePlane Idaho Central FIPS 1102 Ft US", - "defaultExtent": "{\"xmin\": -16806780.77240127, \"ymin\": -46668196.09827923, \"xmax\": 20087614.105734613, \"ymax\": 16390233.980496006}" - }, - 103269: { - "label": "NAD 1983 CORS96 StatePlane Idaho West FIPS 1103 Ft US", - "defaultExtent": "{\"xmin\": -15822271.850739589, \"ymin\": -46667541.07157821, \"xmax\": 21071605.18407292, \"ymax\": 16390003.930016432}" - }, - 103270: { - "label": "NAD 1983 CORS96 StatePlane Illinois East FIPS 1201", - "defaultExtent": "{\"xmin\": -5322872.397588842, \"ymin\": -13669807.500473078, \"xmax\": 5922872.397588842, \"ymax\": 5550971.541784854}" - }, - 103271: { - "label": "NAD 1983 CORS96 StatePlane Illinois West FIPS 1202", - "defaultExtent": "{\"xmin\": -4922682.207444172, \"ymin\": -13669345.127777718, \"xmax\": 6322682.2074441705, \"ymax\": 5550783.783641693}" - }, - 103272: { - "label": "NAD 1983 CORS96 StatePlane Illinois East FIPS 1201 Ft US", - "defaultExtent": "{\"xmin\": -17463457.191089388, \"ymin\": -44848360.107802086, \"xmax\": 19431957.191089388, \"ymax\": 18211812.466672473}" - }, - 103273: { - "label": "NAD 1983 CORS96 StatePlane Illinois West FIPS 1202 Ft US", - "defaultExtent": "{\"xmin\": -16150499.875589753, \"ymin\": -44846843.140050724, \"xmax\": 20743666.542256415, \"ymax\": 18211196.463497788}" - }, - 103274: { - "label": "NAD 1983 CORS96 StatePlane Indiana East FIPS 1301", - "defaultExtent": "{\"xmin\": -5522825.539147399, \"ymin\": -13512173.175005069, \"xmax\": 5722825.539147401, \"ymax\": 5708445.690089753}" - }, - 103275: { - "label": "NAD 1983 CORS96 StatePlane Indiana West FIPS 1302", - "defaultExtent": "{\"xmin\": -4722825.539147401, \"ymin\": -13512173.175005067, \"xmax\": 6522825.539147401, \"ymax\": 5708445.690089753}" - }, - 103276: { - "label": "NAD 1983 CORS96 StatePlane Indiana East FIPS 1301 Ft US", - "defaultExtent": "{\"xmin\": -18119470.123019423, \"ymin\": -44331188.15832912, \"xmax\": 18775636.789686095, \"ymax\": 18728458.901569463}" - }, - 103277: { - "label": "NAD 1983 CORS96 StatePlane Indiana West FIPS 1302 Ft US", - "defaultExtent": "{\"xmin\": -15494803.456352763, \"ymin\": -44331188.15832912, \"xmax\": 21400303.456352763, \"ymax\": 18728458.901569463}" - }, - 103278: { - "label": "NAD 1983 CORS96 StatePlane Iowa North FIPS 1401", - "defaultExtent": "{\"xmin\": -35179672.413309455, \"ymin\": -28619932.387049854, \"xmax\": 38179672.41221074, \"ymax\": 27493755.251850624}" - }, - 103279: { - "label": "NAD 1983 CORS96 StatePlane Iowa South FIPS 1402", - "defaultExtent": "{\"xmin\": -36344508.92670218, \"ymin\": -29415464.41348134, \"xmax\": 37344508.92730374, \"ymax\": 25047110.383624904}" - }, - 103280: { - "label": "NAD 1983 CORS96 StatePlane Iowa North FIPS 1401 Ft US", - "defaultExtent": "{\"xmin\": -115418641.90933275, \"ymin\": -93897228.17317939, \"xmax\": 125261141.90572806, \"ymax\": 90202428.6887799}" - }, - 103281: { - "label": "NAD 1983 CORS96 StatePlane Iowa South FIPS 1402 Ft US", - "defaultExtent": "{\"xmin\": -119240276.37035538, \"ymin\": -96507236.16323002, \"xmax\": 122521109.70566234, \"ymax\": 82175394.65027604}" - }, - 103282: { - "label": "NAD 1983 CORS96 StatePlane Kansas North FIPS 1501", - "defaultExtent": "{\"xmin\": -36694583.27893349, \"ymin\": -29176343.808520153, \"xmax\": 37494583.27889171, \"ymax\": 22940063.423304893}" - }, - 103283: { - "label": "NAD 1983 CORS96 StatePlane Kansas South FIPS 1502", - "defaultExtent": "{\"xmin\": -36888610.08409184, \"ymin\": -28552051.03735451, \"xmax\": 37688610.084001794, \"ymax\": 21865414.924582668}" - }, - 103284: { - "label": "NAD 1983 CORS96 StatePlane Kansas North FIPS 1501 Ft US", - "defaultExtent": "{\"xmin\": -120388811.97430094, \"ymin\": -95722721.31178652, \"xmax\": 123013478.64083055, \"ymax\": 75262524.74795946}" - }, - 103285: { - "label": "NAD 1983 CORS96 StatePlane Kansas South FIPS 1502 Ft US", - "defaultExtent": "{\"xmin\": -121025381.58422464, \"ymin\": -93674520.77838725, \"xmax\": 123650048.25059587, \"ymax\": 71736782.13173495}" - }, - 103286: { - "label": "NAD 1983 CORS96 StatePlane Kentucky North FIPS 1601", - "defaultExtent": "{\"xmin\": -36706540.6144563, \"ymin\": -29061234.143652882, \"xmax\": 37706540.61484275, \"ymax\": 22066321.05409854}" - }, - 103287: { - "label": "NAD 1983 CORS96 StatePlane Kentucky North FIPS 1601 Ft US", - "defaultExtent": "{\"xmin\": -120428041.99926203, \"ymin\": -95345065.68630116, \"xmax\": 123708875.33386324, \"ymax\": 72395921.65832162}" - }, - 103288: { - "label": "NAD 1983 CORS96 StatePlane Kentucky FIPS 1600", - "defaultExtent": "{\"xmin\": -35794088.47457762, \"ymin\": -27913214.15795621, \"xmax\": 38794088.4749888, \"ymax\": 22449415.817500036}" - }, - 103289: { - "label": "NAD 1983 CORS96 StatePlane Kentucky FIPS 1600 Ft US", - "defaultExtent": "{\"xmin\": -117434438.60367672, \"ymin\": -91578603.44989465, \"xmax\": 127276938.60502575, \"ymax\": 73652791.72791469}" - }, - 103290: { - "label": "NAD 1983 CORS96 StatePlane Kentucky South FIPS 1602", - "defaultExtent": "{\"xmin\": -36881000.62027418, \"ymin\": -28397921.164930366, \"xmax\": 37881000.620047584, \"ymax\": 21253778.418876573}" - }, - 103291: { - "label": "NAD 1983 CORS96 StatePlane Kentucky South FIPS 1602 Ft US", - "defaultExtent": "{\"xmin\": -121000416.20168285, \"ymin\": -93168846.35527569, \"xmax\": 124281249.53427276, \"ymax\": 69730104.69593088}" - }, - 103292: { - "label": "NAD 1983 CORS96 StatePlane Louisiana North FIPS 1701", - "defaultExtent": "{\"xmin\": -37494730.88922037, \"ymin\": -28088971.837408308, \"xmax\": 39494730.88715185, \"ymax\": 13871961.36705782}" - }, - 103293: { - "label": "NAD 1983 CORS96 StatePlane Louisiana South FIPS 1702", - "defaultExtent": "{\"xmin\": -38036283.63849772, \"ymin\": -27814605.530320723, \"xmax\": 40036283.638507746, \"ymax\": 11223230.411243448}" - }, - 103294: { - "label": "NAD 1983 CORS96 StatePlane Louisiana North FIPS 1701 Ft US", - "defaultExtent": "{\"xmin\": -123013962.92571716, \"ymin\": -92155235.10323042, \"xmax\": 129575629.58559735, \"ymax\": 45511593.25175553}" - }, - 103295: { - "label": "NAD 1983 CORS96 StatePlane Louisiana South FIPS 1702 Ft US", - "defaultExtent": "{\"xmin\": -124790707.23730458, \"ymin\": -91255084.9773939, \"xmax\": 131352373.90400414, \"ymax\": 36821548.440887876}" - }, - 103296: { - "label": "NAD 1983 CORS96 StatePlane Maine East FIPS 1801", - "defaultExtent": "{\"xmin\": -5322450.671615874, \"ymin\": -14445971.085374892, \"xmax\": 5922450.671615874, \"ymax\": 4773366.36241501}" - }, - 103297: { - "label": "NAD 1983 CORS96 StatePlane Maine West FIPS 1802", - "defaultExtent": "{\"xmin\": -4722825.539147399, \"ymin\": -14354355.990839133, \"xmax\": 6522825.539147401, \"ymax\": 4866262.874255687}" - }, - 103298: { - "label": "NAD 1983 CORS96 StatePlane Maine East FIPS 1801 Ft US", - "defaultExtent": "{\"xmin\": -17462073.578459747, \"ymin\": -47394823.46926745, \"xmax\": 19430573.578459747, \"ymax\": 15660619.474023243}" - }, - 103299: { - "label": "NAD 1983 CORS96 StatePlane Maine West FIPS 1802 Ft US", - "defaultExtent": "{\"xmin\": -15494803.456352757, \"ymin\": -47094249.613278046, \"xmax\": 21400303.456352763, \"ymax\": 15965397.446620531}" - }, - 103300: { - "label": "NAD 1983 HARN WISCRS Adams County Meters", - "defaultExtent": "{\"xmin\": -5475999.678942545, \"ymin\": -14414611.505394408, \"xmax\": 5770437.067342545, \"ymax\": 4807350.192133208}" - }, - 103301: { - "label": "NAD 1983 HARN WISCRS Ashland County Meters", - "defaultExtent": "{\"xmin\": -5450469.75000711, \"ymin\": -14674777.785483457, \"xmax\": 5796113.64220711, \"ymax\": 4547434.5534247495}" - }, - 103302: { - "label": "NAD 1983 HARN WISCRS Barron County Meters", - "defaultExtent": "{\"xmin\": -5530136.625274009, \"ymin\": -14611102.942501582, \"xmax\": 5716436.62527401, \"ymax\": 4611092.062674738}" - }, - 103303: { - "label": "NAD 1983 HARN WISCRS Bayfield County Meters", - "defaultExtent": "{\"xmin\": -36081251.241297, \"ymin\": -30133581.32651064, \"xmax\": 36538452.15609454, \"ymax\": 29965938.687049944}" - }, - 103304: { - "label": "NAD 1983 HARN WISCRS Brown County Meters", - "defaultExtent": "{\"xmin\": -5591525.433172623, \"ymin\": -14369037.137790259, \"xmax\": 5654725.433172623, \"ymax\": 4852606.861148495}" - }, - 103305: { - "label": "NAD 1983 HARN WISCRS Buffalo County Meters", - "defaultExtent": "{\"xmin\": -5447967.85927914, \"ymin\": -14427382.960586451, \"xmax\": 5798488.55967914, \"ymax\": 4794612.360690542}" - }, - 103306: { - "label": "NAD 1983 HARN WISCRS Burnett County Meters", - "defaultExtent": "{\"xmin\": -36310538.10665075, \"ymin\": -30123043.63136973, \"xmax\": 36438554.362796165, \"ymax\": 29270746.307380076}" - }, - 103307: { - "label": "NAD 1983 HARN WISCRS Calumet County Meters", - "defaultExtent": "{\"xmin\": -5378419.221733628, \"ymin\": -14342593.750644261, \"xmax\": 5867929.00033363, \"ymax\": 4879216.644816498}" - }, - 103308: { - "label": "NAD 1983 HARN WISCRS Chippewa County Meters", - "defaultExtent": "{\"xmin\": -36395668.53544931, \"ymin\": -30017602.653797057, \"xmax\": 36515759.97594681, \"ymax\": 28494412.238921527}" - }, - 103309: { - "label": "NAD 1983 HARN WISCRS Clark County Meters", - "defaultExtent": "{\"xmin\": -5423324.121200717, \"ymin\": -14440677.389416281, \"xmax\": 5823222.519000715, \"ymax\": 4781472.134415638}" - }, - 103310: { - "label": "NAD 1983 HARN WISCRS Columbia County Meters", - "defaultExtent": "{\"xmin\": -36431052.23074588, \"ymin\": -29747767.569199674, \"xmax\": 36769380.90670627, \"ymax\": 27222776.11113262}" - }, - 103311: { - "label": "NAD 1983 HARN WISCRS Crawford County Meters", - "defaultExtent": "{\"xmin\": -36513149.4747256, \"ymin\": -29770208.140488, \"xmax\": 36740530.729211755, \"ymax\": 26922090.079280972}" - }, - 103312: { - "label": "NAD 1983 HARN WISCRS Dane County Meters", - "defaultExtent": "{\"xmin\": -36393204.27436673, \"ymin\": -29659768.8323352, \"xmax\": 36887590.863248736, \"ymax\": 26893133.08936168}" - }, - 103313: { - "label": "NAD 1983 HARN WISCRS Dodge County Meters", - "defaultExtent": "{\"xmin\": -5359860.037903967, \"ymin\": -14204139.390344951, \"xmax\": 5886555.49050397, \"ymax\": 5017786.042432225}" - }, - 103314: { - "label": "NAD 1983 HARN WISCRS Door County Meters", - "defaultExtent": "{\"xmin\": -5464317.298614733, \"ymin\": -14529171.060603872, \"xmax\": 5781919.533814734, \"ymax\": 4692448.9521250585}" - }, - 103315: { - "label": "NAD 1983 HARN WISCRS Douglas County Meters", - "defaultExtent": "{\"xmin\": -5564098.375654565, \"ymin\": -14694314.511741694, \"xmax\": 5682361.012254565, \"ymax\": 4527685.88394782}" - }, - 103316: { - "label": "NAD 1983 HARN WISCRS Dunn County Meters", - "defaultExtent": "{\"xmin\": -5571427.594630674, \"ymin\": -14530420.80724789, \"xmax\": 5675059.802630675, \"ymax\": 4691627.460910719}" - }, - 103317: { - "label": "NAD 1983 HARN WISCRS EauClaire County Meters", - "defaultExtent": "{\"xmin\": -36345086.33363224, \"ymin\": -29955927.898352273, \"xmax\": 36585269.2140608, \"ymax\": 28452089.92831839}" - }, - 103318: { - "label": "NAD 1983 HARN WISCRS Florence County Meters", - "defaultExtent": "{\"xmin\": -5489820.748347894, \"ymin\": -14645159.050198944, \"xmax\": 5756826.084947893, \"ymax\": 4577161.719678768}" - }, - 103319: { - "label": "NAD 1983 HARN WISCRS Fond du Lac County Meters", - "defaultExtent": "{\"xmin\": -5378419.221733628, \"ymin\": -14342593.750644261, \"xmax\": 5867929.00033363, \"ymax\": 4879216.644816498}" - }, - 103320: { - "label": "NAD 1983 HARN WISCRS Forest County Meters", - "defaultExtent": "{\"xmin\": -5347546.850635446, \"ymin\": -14486044.282272523, \"xmax\": 5899235.957235447, \"ymax\": 4736508.889932576}" - }, - 103321: { - "label": "NAD 1983 HARN WISCRS Grant County Meters", - "defaultExtent": "{\"xmin\": -5380892.986126109, \"ymin\": -14197356.310155826, \"xmax\": 5865525.954326105, \"ymax\": 5024574.954351508}" - }, - 103322: { - "label": "NAD 1983 HARN WISCRS Green County Meters", - "defaultExtent": "{\"xmin\": -36515676.124067806, \"ymin\": -29701939.08160884, \"xmax\": 36855833.60474197, \"ymax\": 26383293.24414638}" - }, - 103323: { - "label": "NAD 1983 HARN WISCRS GreenLake County Meters", - "defaultExtent": "{\"xmin\": -36415114.46822533, \"ymin\": -29826466.5944898, \"xmax\": 36716867.07221894, \"ymax\": 27504152.23151386}" - }, - 103324: { - "label": "NAD 1983 HARN WISCRS Iowa County Meters", - "defaultExtent": "{\"xmin\": -5510154.033895843, \"ymin\": -14322691.309755355, \"xmax\": 5736316.086095845, \"ymax\": 4899327.428782176}" - }, - 103325: { - "label": "NAD 1983 HARN WISCRS Iron County Meters", - "defaultExtent": "{\"xmin\": -5402413.29502353, \"ymin\": -14644724.699395286, \"xmax\": 5844374.17882353, \"ymax\": 4577836.447710403}" - }, - 103326: { - "label": "NAD 1983 HARN WISCRS Jackson County Meters", - "defaultExtent": "{\"xmin\": -5596211.465271109, \"ymin\": -14488113.71194331, \"xmax\": 5650211.465271109, \"ymax\": 4733824.372266921}" - }, - 103327: { - "label": "NAD 1983 HARN WISCRS Jefferson County Meters", - "defaultExtent": "{\"xmin\": -5359860.037903967, \"ymin\": -14204139.390344951, \"xmax\": 5886555.49050397, \"ymax\": 5017786.042432225}" - }, - 103328: { - "label": "NAD 1983 HARN WISCRS Juneau County Meters", - "defaultExtent": "{\"xmin\": -5475999.678942545, \"ymin\": -14414611.505394408, \"xmax\": 5770437.067342545, \"ymax\": 4807350.192133208}" - }, - 103329: { - "label": "NAD 1983 HARN WISCRS Kenosha County Meters", - "defaultExtent": "{\"xmin\": -5437231.163384002, \"ymin\": -14286705.371294055, \"xmax\": 5809087.908984002, \"ymax\": 4935055.202661887}" - }, - 103330: { - "label": "NAD 1983 HARN WISCRS Kewaunee County Meters", - "defaultExtent": "{\"xmin\": -5543286.623575542, \"ymin\": -14403311.695436863, \"xmax\": 5703002.146375546, \"ymax\": 4818397.0868351525}" - }, - 103331: { - "label": "NAD 1983 HARN WISCRS LaCrosse County Meters", - "defaultExtent": "{\"xmin\": -5492738.241093779, \"ymin\": -14423928.347661158, \"xmax\": 5753647.560693778, \"ymax\": 4797946.277560591}" - }, - 103332: { - "label": "NAD 1983 HARN WISCRS Lafayette County Meters", - "defaultExtent": "{\"xmin\": -36515676.124067806, \"ymin\": -29701939.08160884, \"xmax\": 36855833.60474197, \"ymax\": 26383293.24414638}" - }, - 103333: { - "label": "NAD 1983 HARN WISCRS Langlade County Meters", - "defaultExtent": "{\"xmin\": -36242238.396148115, \"ymin\": -29980394.16545243, \"xmax\": 36639088.790145956, \"ymax\": 28705135.80603704}" - }, - 103334: { - "label": "NAD 1983 HARN WISCRS Lincoln County Meters", - "defaultExtent": "{\"xmin\": -5507220.760777146, \"ymin\": -14579160.473767418, \"xmax\": 5739478.825377146, \"ymax\": 4643250.459194705}" - }, - 103335: { - "label": "NAD 1983 HARN WISCRS Manitowoc County Meters", - "defaultExtent": "{\"xmin\": -5543286.623575542, \"ymin\": -14403311.695436863, \"xmax\": 5703002.146375546, \"ymax\": 4818397.0868351525}" - }, - 103336: { - "label": "NAD 1983 HARN WISCRS Marathon County Meters", - "defaultExtent": "{\"xmin\": -36388553.48290458, \"ymin\": -29996899.815266132, \"xmax\": 36537905.78152275, \"ymax\": 28440367.306292333}" - }, - 103337: { - "label": "NAD 1983 HARN WISCRS Marinette County Meters", - "defaultExtent": "{\"xmin\": -5384486.224196605, \"ymin\": -14561651.623620447, \"xmax\": 5861803.982996605, \"ymax\": 4660059.615128549}" - }, - 103338: { - "label": "NAD 1983 HARN WISCRS Marquette County Meters", - "defaultExtent": "{\"xmin\": -36415114.46822533, \"ymin\": -29826466.5944898, \"xmax\": 36716867.07221894, \"ymax\": 27504152.23151386}" - }, - 103339: { - "label": "NAD 1983 HARN WISCRS Menominee County Meters", - "defaultExtent": "{\"xmin\": -5517755.794471132, \"ymin\": -14564615.555991324, \"xmax\": 5728677.8186711315, \"ymax\": 4657340.786493374}" - }, - 103340: { - "label": "NAD 1983 HARN WISCRS Milwaukee County Meters", - "defaultExtent": "{\"xmin\": -5437231.163384002, \"ymin\": -14286705.371294055, \"xmax\": 5809087.908984002, \"ymax\": 4935055.202661887}" - }, - 103341: { - "label": "NAD 1983 HARN WISCRS Monroe County Meters", - "defaultExtent": "{\"xmin\": -36342979.86209494, \"ymin\": -29809858.90668843, \"xmax\": 36752022.279882535, \"ymax\": 27720626.304527137}" - }, - 103342: { - "label": "NAD 1983 HARN WISCRS Oconto County Meters", - "defaultExtent": "{\"xmin\": -5440265.797059154, \"ymin\": -14528934.082760144, \"xmax\": 5806026.532259153, \"ymax\": 4692780.783040531}" - }, - 103343: { - "label": "NAD 1983 HARN WISCRS Oneida County Meters", - "defaultExtent": "{\"xmin\": -36322295.619874515, \"ymin\": -30100439.439129062, \"xmax\": 36462503.899986826, \"ymax\": 29112378.812691625}" - }, - 103344: { - "label": "NAD 1983 HARN WISCRS Outagamie County Meters", - "defaultExtent": "{\"xmin\": -5378419.221733628, \"ymin\": -14342593.750644261, \"xmax\": 5867929.00033363, \"ymax\": 4879216.644816498}" - }, - 103345: { - "label": "NAD 1983 HARN WISCRS Ozaukee County Meters", - "defaultExtent": "{\"xmin\": -5437231.163384002, \"ymin\": -14286705.371294055, \"xmax\": 5809087.908984002, \"ymax\": 4935055.202661887}" - }, - 103346: { - "label": "NAD 1983 HARN WISCRS Pepin County Meters", - "defaultExtent": "{\"xmin\": -36319318.617179334, \"ymin\": -29930327.65606463, \"xmax\": 36654599.28777631, \"ymax\": 28243714.761941265}" - }, - 103347: { - "label": "NAD 1983 HARN WISCRS Pierce County Meters", - "defaultExtent": "{\"xmin\": -36319318.617179334, \"ymin\": -29930327.65606463, \"xmax\": 36654599.28777631, \"ymax\": 28243714.761941265}" - }, - 103348: { - "label": "NAD 1983 HARN WISCRS Polk County Meters", - "defaultExtent": "{\"xmin\": -5481524.644468694, \"ymin\": -14558545.550023401, \"xmax\": 5764989.209068694, \"ymax\": 4663547.936148363}" - }, - 103349: { - "label": "NAD 1983 HARN WISCRS Portage County Meters", - "defaultExtent": "{\"xmin\": -36451199.32252974, \"ymin\": -29937291.925023705, \"xmax\": 36563975.54808082, \"ymax\": 28017136.733906623}" - }, - 103350: { - "label": "NAD 1983 HARN WISCRS Price County Meters", - "defaultExtent": "{\"xmin\": -5395387.363370028, \"ymin\": -14547129.035942728, \"xmax\": 5851369.072570027, \"ymax\": 4675379.062408666}" - }, - 103351: { - "label": "NAD 1983 HARN WISCRS Racine County Meters", - "defaultExtent": "{\"xmin\": -5437231.163384002, \"ymin\": -14286705.371294055, \"xmax\": 5809087.908984002, \"ymax\": 4935055.202661887}" - }, - 103352: { - "label": "NAD 1983 HARN WISCRS Richland County Meters", - "defaultExtent": "{\"xmin\": -36412086.88968959, \"ymin\": -29706247.40617448, \"xmax\": 36816862.09918255, \"ymax\": 27116204.804725777}" - }, - 103353: { - "label": "NAD 1983 HARN WISCRS Rock County Meters", - "defaultExtent": "{\"xmin\": -5476898.3507260615, \"ymin\": -14256576.82531332, \"xmax\": 5769506.935926056, \"ymax\": 4965331.102662762}" - }, - 103354: { - "label": "NAD 1983 HARN WISCRS Rusk County Meters", - "defaultExtent": "{\"xmin\": -5372745.75956139, \"ymin\": -14476219.438163122, \"xmax\": 5873837.96216139, \"ymax\": 4745993.463927987}" - }, - 103355: { - "label": "NAD 1983 HARN WISCRS Sauk County Meters", - "defaultExtent": "{\"xmin\": -5437599.62777458, \"ymin\": -14353828.196161816, \"xmax\": 5808846.770974581, \"ymax\": 4868149.998972896}" - }, - 103356: { - "label": "NAD 1983 HARN WISCRS Sawyer County Meters", - "defaultExtent": "{\"xmin\": -36158404.20143948, \"ymin\": -30062508.006979614, \"xmax\": 36591830.668709375, \"ymax\": 29333702.25991753}" - }, - 103357: { - "label": "NAD 1983 HARN WISCRS Shawano County Meters", - "defaultExtent": "{\"xmin\": -5360760.393742168, \"ymin\": -14488930.263323259, \"xmax\": 5885627.044342167, \"ymax\": 4732947.158591758}" - }, - 103358: { - "label": "NAD 1983 HARN WISCRS Sheboygan County Meters", - "defaultExtent": "{\"xmin\": -5543286.623575542, \"ymin\": -14403311.695436863, \"xmax\": 5703002.146375546, \"ymax\": 4818397.0868351525}" - }, - 103359: { - "label": "NAD 1983 HARN WISCRS St Croix County Meters", - "defaultExtent": "{\"xmin\": -5457720.931035374, \"ymin\": -14489017.719341857, \"xmax\": 5788734.3914353745, \"ymax\": 4732975.7278623255}" - }, - 103360: { - "label": "NAD 1983 HARN WISCRS Taylor County Meters", - "defaultExtent": "{\"xmin\": -36251294.81385132, \"ymin\": -29980945.73129668, \"xmax\": 36625589.962651275, \"ymax\": 28727312.942050293}" - }, - 103361: { - "label": "NAD 1983 HARN WISCRS Trempealeau County Meters", - "defaultExtent": "{\"xmin\": -5366269.352399585, \"ymin\": -14391768.49206774, \"xmax\": 5880163.179999585, \"ymax\": 4830186.0032539135}" - }, - 103362: { - "label": "NAD 1983 HARN WISCRS Vernon County Meters", - "defaultExtent": "{\"xmin\": -36366665.158676155, \"ymin\": -29827126.31658915, \"xmax\": 36811674.04840423, \"ymax\": 27261976.202238657}" - }, - 103363: { - "label": "NAD 1983 HARN WISCRS Vilas County Meters", - "defaultExtent": "{\"xmin\": -36226135.57553386, \"ymin\": -30156500.970487516, \"xmax\": 36494969.711734675, \"ymax\": 29406028.7723625}" - }, - 103364: { - "label": "NAD 1983 HARN WISCRS Walworth County Meters", - "defaultExtent": "{\"xmin\": -36449709.867616914, \"ymin\": -29640949.45660499, \"xmax\": 36914835.59787832, \"ymax\": 26478994.101529367}" - }, - 103365: { - "label": "NAD 1983 HARN WISCRS Washburn County Meters", - "defaultExtent": "{\"xmin\": -36135451.21028559, \"ymin\": -30002546.018926416, \"xmax\": 36603624.94664866, \"ymax\": 29450128.315419946}" - }, - 103366: { - "label": "NAD 1983 HARN WISCRS Washington County Meters", - "defaultExtent": "{\"xmin\": -5503131.719638091, \"ymin\": -14364783.236183045, \"xmax\": 5743314.602638092, \"ymax\": 4857194.8282471}" - }, - 103367: { - "label": "NAD 1983 HARN WISCRS Waukesha County Meters", - "defaultExtent": "{\"xmin\": -5414419.21181396, \"ymin\": -14326015.797195243, \"xmax\": 5831996.047813959, \"ymax\": 4895909.176193831}" - }, - 103368: { - "label": "NAD 1983 HARN WISCRS Waupaca County Meters", - "defaultExtent": "{\"xmin\": -5438186.611029501, \"ymin\": -14420522.31087551, \"xmax\": 5808214.552829499, \"ymax\": 4801378.570586814}" - }, - 103369: { - "label": "NAD 1983 HARN WISCRS Waushara County Meters", - "defaultExtent": "{\"xmin\": -36416273.198916286, \"ymin\": -29901818.731134113, \"xmax\": 36656456.07900824, \"ymax\": 27745151.03787159}" - }, - 103370: { - "label": "NAD 1983 HARN WISCRS Winnebago County Meters", - "defaultExtent": "{\"xmin\": -5378419.221733628, \"ymin\": -14342593.750644261, \"xmax\": 5867929.00033363, \"ymax\": 4879216.644816498}" - }, - 103371: { - "label": "NAD 1983 HARN WISCRS Wood County Meters", - "defaultExtent": "{\"xmin\": -36304297.611852065, \"ymin\": -29845567.70777809, \"xmax\": 36721264.83892116, \"ymax\": 28054274.082976468}" - }, - 103372: { - "label": "NAD 1983 CORS96 Maine 2000 East Zone", - "defaultExtent": "{\"xmin\": -4922900.5126537075, \"ymin\": -14465644.401938386, \"xmax\": 6322900.5126537075, \"ymax\": 4755230.746617417}" - }, - 103373: { - "label": "NAD 1983 CORS96 Maine 2000 Central Zone", - "defaultExtent": "{\"xmin\": -5122900.5126537075, \"ymin\": -14428609.897370517, \"xmax\": 6122900.5126537075, \"ymax\": 4792265.251185287}" - }, - 103374: { - "label": "NAD 1983 CORS96 Maine 2000 West Zone", - "defaultExtent": "{\"xmin\": -5322900.5126537075, \"ymin\": -14354547.388632273, \"xmax\": 5922900.5126537075, \"ymax\": 4866327.759923531}" - }, - 103375: { - "label": "NAD 1983 CORS96 StatePlane Maryland FIPS 1900", - "defaultExtent": "{\"xmin\": -36747007.26427332, \"ymin\": -29091384.527313504, \"xmax\": 37547007.26462395, \"ymax\": 22554678.123978678}" - }, - 103376: { - "label": "NAD 1983 CORS96 StatePlane Maryland FIPS 1900 Ft US", - "defaultExtent": "{\"xmin\": -120560806.33287005, \"ymin\": -95443984.07002771, \"xmax\": 123185473.00068705, \"ymax\": 73998139.81175338}" - }, - 103377: { - "label": "NAD 1983 CORS96 StatePlane Massachusetts Mainland FIPS 2001", - "defaultExtent": "{\"xmin\": -36530705.74194933, \"ymin\": -28803004.001248993, \"xmax\": 36930705.741942905, \"ymax\": 26796569.38877064}" - }, - 103378: { - "label": "NAD 1983 CORS96 StatePlane Massachusetts Island FIPS 2002", - "defaultExtent": "{\"xmin\": -36324363.173723884, \"ymin\": -29532372.723926485, \"xmax\": 37324363.17347703, \"ymax\": 25143058.28571613}" - }, - 103379: { - "label": "NAD 1983 CORS96 StatePlane Massachusetts Mnld FIPS 2001 FtUS", - "defaultExtent": "{\"xmin\": -119851157.08837874, \"ymin\": -94497855.62743106, \"xmax\": 121163490.421691, \"ymax\": 87915078.06965832}" - }, - 103380: { - "label": "NAD 1983 CORS96 StatePlane Massachusetts Isl FIPS 2002 FtUS", - "defaultExtent": "{\"xmin\": -119174181.5124591, \"ymin\": -96890792.84508213, \"xmax\": 122455014.84498255, \"ymax\": 82490183.72572033}" - }, - 103381: { - "label": "NAD 1983 CORS96 StatePlane Michigan North FIPS 2111", - "defaultExtent": "{\"xmin\": -28338008.16261086, \"ymin\": -30062764.319301587, \"xmax\": 44338008.16271662, \"ymax\": 29682471.10421796}" - }, - 103382: { - "label": "NAD 1983 CORS96 StatePlane Michigan Central FIPS 2112", - "defaultExtent": "{\"xmin\": -30455190.630660422, \"ymin\": -29873530.398834094, \"xmax\": 42455190.63111069, \"ymax\": 28598773.969079223}" - }, - 103383: { - "label": "NAD 1983 CORS96 StatePlane Michigan South FIPS 2113", - "defaultExtent": "{\"xmin\": -32655721.616859354, \"ymin\": -29624554.326154392, \"xmax\": 40655721.616422996, \"ymax\": 26723713.97971105}" - }, - 103384: { - "label": "NAD 1983 CORS96 StatePlane Michigan North FIPS 2111 Ft Intl", - "defaultExtent": "{\"xmin\": -92972467.72510123, \"ymin\": -98631116.53314169, \"xmax\": 145465906.0456582, \"ymax\": 97383435.38129252}" - }, - 103385: { - "label": "NAD 1983 CORS96 StatePlane Michigan Central FIPS 2112 Ft Intl", - "defaultExtent": "{\"xmin\": -99918604.4313006, \"ymin\": -98010270.3373822, \"xmax\": 139288683.17293534, \"ymax\": 93827998.58621791}" - }, - 103386: { - "label": "NAD 1983 CORS96 StatePlane Michigan South FIPS 2113 Ft Intl", - "defaultExtent": "{\"xmin\": -107138194.28103462, \"ymin\": -97193419.70523094, \"xmax\": 133384913.43970798, \"ymax\": 87676226.96755593}" - }, - 103387: { - "label": "NAD 1983 CORS96 StatePlane Minnesota North FIPS 2201", - "defaultExtent": "{\"xmin\": -35413952.21883893, \"ymin\": -30179238.744515866, \"xmax\": 37013952.21884459, \"ymax\": 30925833.663218413}" - }, - 103388: { - "label": "NAD 1983 CORS96 StatePlane Minnesota Central FIPS 2202", - "defaultExtent": "{\"xmin\": -35534345.78057431, \"ymin\": -29988111.83685971, \"xmax\": 37134345.780168205, \"ymax\": 29803284.527532667}" - }, - 103389: { - "label": "NAD 1983 CORS96 StatePlane Minnesota South FIPS 2203", - "defaultExtent": "{\"xmin\": -35696176.20197969, \"ymin\": -29729049.350341942, \"xmax\": 37296176.20161064, \"ymax\": 28305006.49768952}" - }, - 103390: { - "label": "NAD 1983 CORS96 StatePlane Minnesota North FIPS 2201 Ft US", - "defaultExtent": "{\"xmin\": -116187274.9046407, \"ymin\": -99013052.44763246, \"xmax\": 121436608.23799261, \"ymax\": 101462505.94340906}" - }, - 103391: { - "label": "NAD 1983 CORS96 StatePlane Minnesota Central FIPS 2202 Ft US", - "defaultExtent": "{\"xmin\": -116582266.11510086, \"ymin\": -98385996.91809723, \"xmax\": 121831599.44710183, \"ymax\": 97779609.32074675}" - }, - 103392: { - "label": "NAD 1983 CORS96 StatePlane Minnesota South FIPS 2203 Ft US", - "defaultExtent": "{\"xmin\": -117113204.75599502, \"ymin\": -97536056.0769135, \"xmax\": 122362538.08811755, \"ymax\": 92864008.81783636}" - }, - 103393: { - "label": "NAD 1983 CORS96 StatePlane Mississippi East FIPS 2301", - "defaultExtent": "{\"xmin\": -5322731.822264518, \"ymin\": -12874675.296950985, \"xmax\": 5922731.8222645195, \"ymax\": 6345623.2138176095}" - }, - 103394: { - "label": "NAD 1983 CORS96 StatePlane Mississippi West FIPS 2302", - "defaultExtent": "{\"xmin\": -4922731.8222645195, \"ymin\": -12874675.296950981, \"xmax\": 6322731.8222645195, \"ymax\": 6345623.2138176095}" - }, - 103395: { - "label": "NAD 1983 CORS96 StatePlane Mississippi East FIPS 2301 Ft US", - "defaultExtent": "{\"xmin\": -17462995.9868795, \"ymin\": -42239663.87008002, \"xmax\": 19431495.98687951, \"ymax\": 20818932.160666604}" - }, - 103396: { - "label": "NAD 1983 CORS96 StatePlane Mississippi West FIPS 2302 Ft US", - "defaultExtent": "{\"xmin\": -16150662.653546175, \"ymin\": -42239663.87008, \"xmax\": 20743829.32021284, \"ymax\": 20818932.160666604}" - }, - 103397: { - "label": "NAD 1983 CORS96 StatePlane Missouri East FIPS 2401", - "defaultExtent": "{\"xmin\": -5372638.10538164, \"ymin\": -13576774.369054265, \"xmax\": 5872638.105381638, \"ymax\": 5643203.787388095}" - }, - 103398: { - "label": "NAD 1983 CORS96 StatePlane Missouri Central FIPS 2402", - "defaultExtent": "{\"xmin\": -5122638.105381638, \"ymin\": -13576774.369054267, \"xmax\": 6122638.105381639, \"ymax\": 5643203.787388095}" - }, - 103399: { - "label": "NAD 1983 CORS96 StatePlane Missouri West FIPS 2403", - "defaultExtent": "{\"xmin\": -4772682.2074441705, \"ymin\": -13613865.018881941, \"xmax\": 6472682.2074441705, \"ymax\": 5606263.89253747}" - }, - 103400: { - "label": "NAD 1983 HARN WISCRS Adams County Feet", - "defaultExtent": "{\"xmin\": -17965842.2802185, \"ymin\": -47291937.91408723, \"xmax\": 18931842.278218497, \"ymax\": 15772114.755217947}" - }, - 103401: { - "label": "NAD 1983 HARN WISCRS Ashland County Feet", - "defaultExtent": "{\"xmin\": -17882082.83864474, \"ymin\": -48145500.11745106, \"xmax\": 19016082.840644743, \"ymax\": 14919374.864450281}" - }, - 103402: { - "label": "NAD 1983 HARN WISCRS Barron County Feet", - "defaultExtent": "{\"xmin\": -18143456.578086477, \"ymin\": -47936593.570038356, \"xmax\": 18754675.82808648, \"ymax\": 15128224.542777618}" - }, - 103403: { - "label": "NAD 1983 HARN WISCRS Bayfield County Feet", - "defaultExtent": "{\"xmin\": -118376571.78080314, \"ymin\": -98863258.06916606, \"xmax\": 119876571.78213891, \"ymax\": 98313250.50865726}" - }, - 103404: { - "label": "NAD 1983 HARN WISCRS Brown County Feet", - "defaultExtent": "{\"xmin\": -18344863.025667176, \"ymin\": -47142416.0099002, \"xmax\": 18552211.691667177, \"ymax\": 15920594.343284687}" - }, - 103405: { - "label": "NAD 1983 HARN WISCRS Buffalo County Feet", - "defaultExtent": "{\"xmin\": -17873874.551599476, \"ymin\": -47333838.92960537, \"xmax\": 19023874.549599476, \"ymax\": 15730324.05361755}" - }, - 103406: { - "label": "NAD 1983 HARN WISCRS Burnett County Feet", - "defaultExtent": "{\"xmin\": -119128823.77120432, \"ymin\": -98828685.64760976, \"xmax\": 119548823.77230607, \"ymax\": 96032440.17643854}" - }, - 103407: { - "label": "NAD 1983 HARN WISCRS Calumet County Feet", - "defaultExtent": "{\"xmin\": -17645697.06361616, \"ymin\": -47055659.66364812, \"xmax\": 19251697.061616164, \"ymax\": 16007896.608792711}" - }, - 103408: { - "label": "NAD 1983 HARN WISCRS Chippewa County Feet", - "defaultExtent": "{\"xmin\": -119408122.51975326, \"ymin\": -98482751.37368266, \"xmax\": 119802122.52138546, \"ymax\": 93485417.48684487}" - }, - 103409: { - "label": "NAD 1983 HARN WISCRS Clark County Feet", - "defaultExtent": "{\"xmin\": -17793022.554030433, \"ymin\": -47377455.735325076, \"xmax\": 19105022.548030425, \"ymax\": 15687213.160780136}" - }, - 103410: { - "label": "NAD 1983 HARN WISCRS Columbia County Feet", - "defaultExtent": "{\"xmin\": -119524210.52728851, \"ymin\": -97597467.43291242, \"xmax\": 120634210.52450241, \"ymax\": 89313391.29164442}" - }, - 103411: { - "label": "NAD 1983 HARN WISCRS Crawford County Feet", - "defaultExtent": "{\"xmin\": -119793557.90172371, \"ymin\": -97671091.20711245, \"xmax\": 120539557.90069404, \"ymax\": 88326890.53557956}" - }, - 103412: { - "label": "NAD 1983 HARN WISCRS Dane County Feet", - "defaultExtent": "{\"xmin\": -119400037.6901955, \"ymin\": -97308758.24396572, \"xmax\": 121022037.69046454, \"ymax\": 88231887.4774681}" - }, - 103413: { - "label": "NAD 1983 HARN WISCRS Dodge County Feet", - "defaultExtent": "{\"xmin\": -17584807.474059183, \"ymin\": -46601413.98309106, \"xmax\": 19312807.472059187, \"ymax\": 16462519.707612056}" - }, - 103414: { - "label": "NAD 1983 HARN WISCRS Door County Feet", - "defaultExtent": "{\"xmin\": -17927514.337197833, \"ymin\": -47667788.72087711, \"xmax\": 18969514.337197836, \"ymax\": 15395142.937551044}" - }, - 103415: { - "label": "NAD 1983 HARN WISCRS Douglas County Feet", - "defaultExtent": "{\"xmin\": -18254879.420915935, \"ymin\": -48209596.86105728, \"xmax\": 18642879.42091593, \"ymax\": 14854582.77046739}" - }, - 103416: { - "label": "NAD 1983 HARN WISCRS Dunn County Feet", - "defaultExtent": "{\"xmin\": -18278925.366924137, \"ymin\": -47671888.93162161, \"xmax\": 18618925.368924133, \"ymax\": 15392447.761495417}" - }, - 103417: { - "label": "NAD 1983 HARN WISCRS EauClaire County Feet", - "defaultExtent": "{\"xmin\": -119242170.74631459, \"ymin\": -98280406.77983932, \"xmax\": 120030170.74640828, \"ymax\": 93346565.03982931}" - }, - 103418: { - "label": "NAD 1983 HARN WISCRS Florence County Feet", - "defaultExtent": "{\"xmin\": -18011186.905452296, \"ymin\": -48048325.98353028, \"xmax\": 18887186.913452297, \"ymax\": 15016904.742310172}" - }, - 103419: { - "label": "NAD 1983 HARN WISCRS Fond du Lac County Feet", - "defaultExtent": "{\"xmin\": -17645697.06361616, \"ymin\": -47055659.66364812, \"xmax\": 19251697.061616164, \"ymax\": 16007896.608792711}" - }, - 103420: { - "label": "NAD 1983 HARN WISCRS Forest County Feet", - "defaultExtent": "{\"xmin\": -17544409.95941154, \"ymin\": -47526296.948931515, \"xmax\": 19354409.969411545, \"ymax\": 15539696.250211371}" - }, - 103421: { - "label": "NAD 1983 HARN WISCRS Grant County Feet", - "defaultExtent": "{\"xmin\": -17653813.07223349, \"ymin\": -46579159.8273779, \"xmax\": 19243813.06823348, \"ymax\": 16484792.996259904}" - }, - 103422: { - "label": "NAD 1983 HARN WISCRS Green County Feet", - "defaultExtent": "{\"xmin\": -119801847.41751337, \"ymin\": -97447111.80310658, \"xmax\": 120917847.41775666, \"ymax\": 86559187.91897532}" - }, - 103423: { - "label": "NAD 1983 HARN WISCRS GreenLake County Feet", - "defaultExtent": "{\"xmin\": -119471921.38465808, \"ymin\": -97855665.81554914, \"xmax\": 120461921.38594946, \"ymax\": 90236539.44581546}" - }, - 103424: { - "label": "NAD 1983 HARN WISCRS Iowa County Feet", - "defaultExtent": "{\"xmin\": -18077897.026003025, \"ymin\": -46990363.071852766, \"xmax\": 18819897.026003033, \"ymax\": 16073876.739499103}" - }, - 103425: { - "label": "NAD 1983 HARN WISCRS Iron County Feet", - "defaultExtent": "{\"xmin\": -17724417.61855661, \"ymin\": -48046900.951153114, \"xmax\": 19174417.61855661, \"ymax\": 15019118.412309462}" - }, - 103426: { - "label": "NAD 1983 HARN WISCRS Jackson County Feet", - "defaultExtent": "{\"xmin\": -18360237.115643628, \"ymin\": -47533086.40360067, \"xmax\": 18537402.115643628, \"ymax\": 15530888.794345723}" - }, - 103427: { - "label": "NAD 1983 HARN WISCRS Jefferson County Feet", - "defaultExtent": "{\"xmin\": -17584807.474059183, \"ymin\": -46601413.98309106, \"xmax\": 19312807.472059187, \"ymax\": 16462519.707612056}" - }, - 103428: { - "label": "NAD 1983 HARN WISCRS Juneau County Feet", - "defaultExtent": "{\"xmin\": -17965842.2802185, \"ymin\": -47291937.91408723, \"xmax\": 18931842.278218497, \"ymax\": 15772114.755217947}" - }, - 103429: { - "label": "NAD 1983 HARN WISCRS Kenosha County Feet", - "defaultExtent": "{\"xmin\": -17838649.241963677, \"ymin\": -46872299.205606654, \"xmax\": 19058649.247963678, \"ymax\": 16191093.610780451}" - }, - 103430: { - "label": "NAD 1983 HARN WISCRS Kewaunee County Feet", - "defaultExtent": "{\"xmin\": -18186599.53037392, \"ymin\": -47254865.1207161, \"xmax\": 18710599.542373937, \"ymax\": 15808357.775787996}" - }, - 103431: { - "label": "NAD 1983 HARN WISCRS LaCrosse County Feet", - "defaultExtent": "{\"xmin\": -18020758.713015668, \"ymin\": -47322504.92044506, \"xmax\": 18876758.70501567, \"ymax\": 15741262.07913662}" - }, - 103432: { - "label": "NAD 1983 HARN WISCRS Lafayette County Feet", - "defaultExtent": "{\"xmin\": -119801847.41751337, \"ymin\": -97447111.80310658, \"xmax\": 120917847.41775666, \"ymax\": 86559187.91897532}" - }, - 103433: { - "label": "NAD 1983 HARN WISCRS Langlade County Feet", - "defaultExtent": "{\"xmin\": -118904743.80518673, \"ymin\": -98360676.52455291, \"xmax\": 120206743.8051797, \"ymax\": 94176766.39024208}" - }, - 103434: { - "label": "NAD 1983 HARN WISCRS Lincoln County Feet", - "defaultExtent": "{\"xmin\": -18068273.4461206, \"ymin\": -47831795.65438076, \"xmax\": 18830273.4461206, \"ymax\": 15233730.881512458}" - }, - 103435: { - "label": "NAD 1983 HARN WISCRS Manitowoc County Feet", - "defaultExtent": "{\"xmin\": -18186599.53037392, \"ymin\": -47254865.1207161, \"xmax\": 18710599.542373937, \"ymax\": 15808357.775787996}" - }, - 103436: { - "label": "NAD 1983 HARN WISCRS Marathon County Feet", - "defaultExtent": "{\"xmin\": -119384779.21832453, \"ymin\": -98414828.8104067, \"xmax\": 119874779.21838412, \"ymax\": 93308105.07090634}" - }, - 103437: { - "label": "NAD 1983 HARN WISCRS Marinette County Feet", - "defaultExtent": "{\"xmin\": -17665601.88704986, \"ymin\": -47774352.03566007, \"xmax\": 19231601.90104986, \"ymax\": 15288878.92013558}" - }, - 103438: { - "label": "NAD 1983 HARN WISCRS Marquette County Feet", - "defaultExtent": "{\"xmin\": -119471921.38465808, \"ymin\": -97855665.81554914, \"xmax\": 120461921.38594946, \"ymax\": 90236539.44581546}" - }, - 103439: { - "label": "NAD 1983 HARN WISCRS Menominee County Feet", - "defaultExtent": "{\"xmin\": -18102837.135558788, \"ymin\": -47784076.202795945, \"xmax\": 18794837.143558785, \"ymax\": 15279958.897505928}" - }, - 103440: { - "label": "NAD 1983 HARN WISCRS Milwaukee County Feet", - "defaultExtent": "{\"xmin\": -17838649.241963677, \"ymin\": -46872299.205606654, \"xmax\": 19058649.247963678, \"ymax\": 16191093.610780451}" - }, - 103441: { - "label": "NAD 1983 HARN WISCRS Monroe County Feet", - "defaultExtent": "{\"xmin\": -119235259.76408397, \"ymin\": -97801178.76275669, \"xmax\": 120577259.7633871, \"ymax\": 90946754.8010397}" - }, - 103442: { - "label": "NAD 1983 HARN WISCRS Oconto County Feet", - "defaultExtent": "{\"xmin\": -17848605.369219236, \"ymin\": -47667011.23634899, \"xmax\": 19048605.381219238, \"ymax\": 15396231.619198725}" - }, - 103443: { - "label": "NAD 1983 HARN WISCRS Oneida County Feet", - "defaultExtent": "{\"xmin\": -119167398.21251638, \"ymin\": -98754525.05939275, \"xmax\": 119627398.21222867, \"ymax\": 95512862.82178892}" - }, - 103444: { - "label": "NAD 1983 HARN WISCRS Outagamie County Feet", - "defaultExtent": "{\"xmin\": -17645697.06361616, \"ymin\": -47055659.66364812, \"xmax\": 19251697.061616164, \"ymax\": 16007896.608792711}" - }, - 103445: { - "label": "NAD 1983 HARN WISCRS Ozaukee County Feet", - "defaultExtent": "{\"xmin\": -17838649.241963677, \"ymin\": -46872299.205606654, \"xmax\": 19058649.247963678, \"ymax\": 16191093.610780451}" - }, - 103446: { - "label": "NAD 1983 HARN WISCRS Pepin County Feet", - "defaultExtent": "{\"xmin\": -119157631.16358735, \"ymin\": -98196416.65117303, \"xmax\": 120257631.16416274, \"ymax\": 92662920.84856795}" - }, - 103447: { - "label": "NAD 1983 HARN WISCRS Pierce County Feet", - "defaultExtent": "{\"xmin\": -119157631.16358735, \"ymin\": -98196416.65117303, \"xmax\": 120257631.16416274, \"ymax\": 92662920.84856795}" - }, - 103448: { - "label": "NAD 1983 HARN WISCRS Polk County Feet", - "defaultExtent": "{\"xmin\": -17983968.77124029, \"ymin\": -47764161.52572535, \"xmax\": 18913968.763240285, \"ymax\": 15300323.520156503}" - }, - 103449: { - "label": "NAD 1983 HARN WISCRS Portage County Feet", - "defaultExtent": "{\"xmin\": -119590309.77741098, \"ymin\": -98219265.25717676, \"xmax\": 119960309.77725047, \"ymax\": 91919556.10133047}" - }, - 103450: { - "label": "NAD 1983 HARN WISCRS Price County Feet", - "defaultExtent": "{\"xmin\": -17701366.708456665, \"ymin\": -47726705.84518318, \"xmax\": 19197366.69845666, \"ymax\": 15339139.474158013}" - }, - 103451: { - "label": "NAD 1983 HARN WISCRS Racine County Feet", - "defaultExtent": "{\"xmin\": -17838649.241963677, \"ymin\": -46872299.205606654, \"xmax\": 19058649.247963678, \"ymax\": 16191093.610780451}" - }, - 103452: { - "label": "NAD 1983 HARN WISCRS Richland County Feet", - "defaultExtent": "{\"xmin\": -119461988.40400456, \"ymin\": -97461246.69792917, \"xmax\": 120789988.40365341, \"ymax\": 88963748.59733273}" - }, - 103453: { - "label": "NAD 1983 HARN WISCRS Rock County Feet", - "defaultExtent": "{\"xmin\": -17968790.672312252, \"ymin\": -46773452.46802511, \"xmax\": 18928790.67231223, \"ymax\": 16290423.792343078}" - }, - 103454: { - "label": "NAD 1983 HARN WISCRS Rusk County Feet", - "defaultExtent": "{\"xmin\": -17627083.379176073, \"ymin\": -47494063.273145, \"xmax\": 19271083.381176077, \"ymax\": 15570813.55646557}" - }, - 103455: { - "label": "NAD 1983 HARN WISCRS Sauk County Feet", - "defaultExtent": "{\"xmin\": -17839858.112281434, \"ymin\": -47092518.0066398, \"xmax\": 19057858.114281435, \"ymax\": 15971588.788564658}" - }, - 103456: { - "label": "NAD 1983 HARN WISCRS Sawyer County Feet", - "defaultExtent": "{\"xmin\": -118629697.78379199, \"ymin\": -98630078.35266952, \"xmax\": 120051697.78602134, \"ymax\": 96238988.16464217}" - }, - 103457: { - "label": "NAD 1983 HARN WISCRS Shawano County Feet", - "defaultExtent": "{\"xmin\": -17587761.392224178, \"ymin\": -47535765.37274905, \"xmax\": 19309761.394224174, \"ymax\": 15528010.802317124}" - }, - 103458: { - "label": "NAD 1983 HARN WISCRS Sheboygan County Feet", - "defaultExtent": "{\"xmin\": -18186599.53037392, \"ymin\": -47254865.1207161, \"xmax\": 18710599.542373937, \"ymax\": 15808357.775787996}" - }, - 103459: { - "label": "NAD 1983 HARN WISCRS St Croix County Feet", - "defaultExtent": "{\"xmin\": -17905872.754903056, \"ymin\": -47536052.30066665, \"xmax\": 18991872.748903055, \"ymax\": 15528104.53403573}" - }, - 103460: { - "label": "NAD 1983 HARN WISCRS Taylor County Feet", - "defaultExtent": "{\"xmin\": -118934456.40212119, \"ymin\": -98362486.12027201, \"xmax\": 120162456.40212104, \"ymax\": 94249525.87720048}" - }, - 103461: { - "label": "NAD 1983 HARN WISCRS Trempealeau County Feet", - "defaultExtent": "{\"xmin\": -17605835.3666898, \"ymin\": -47216993.79484365, \"xmax\": 19291835.366689805, \"ymax\": 15847035.24522413}" - }, - 103462: { - "label": "NAD 1983 HARN WISCRS Vernon County Feet", - "defaultExtent": "{\"xmin\": -119312967.2750556, \"ymin\": -97857830.25651571, \"xmax\": 120772967.27350727, \"ymax\": 89442000.2573385}" - }, - 103463: { - "label": "NAD 1983 HARN WISCRS Vilas County Feet", - "defaultExtent": "{\"xmin\": -118851913.13428006, \"ymin\": -98938453.60044144, \"xmax\": 119733913.12903343, \"ymax\": 96476279.39755896}" - }, - 103464: { - "label": "NAD 1983 HARN WISCRS Walworth County Feet", - "defaultExtent": "{\"xmin\": -119585423.12392205, \"ymin\": -97247015.00886886, \"xmax\": 121111423.12412354, \"ymax\": 86873166.4814436}" - }, - 103465: { - "label": "NAD 1983 HARN WISCRS Washburn County Feet", - "defaultExtent": "{\"xmin\": -118554392.84583145, \"ymin\": -98433353.0632899, \"xmax\": 120090392.84571029, \"ymax\": 96620962.64864476}" - }, - 103466: { - "label": "NAD 1983 HARN WISCRS Washington County Feet", - "defaultExtent": "{\"xmin\": -18054857.98383388, \"ymin\": -47128459.667219706, \"xmax\": 18842857.991833888, \"ymax\": 15935646.699164862}" - }, - 103467: { - "label": "NAD 1983 HARN WISCRS Waukesha County Feet", - "defaultExtent": "{\"xmin\": -17763807.031147964, \"ymin\": -47001270.16145289, \"xmax\": 19133807.033147965, \"ymax\": 16062662.022074426}" - }, - 103468: { - "label": "NAD 1983 HARN WISCRS Waupaca County Feet", - "defaultExtent": "{\"xmin\": -17841783.906213704, \"ymin\": -47311330.28156323, \"xmax\": 19055783.912213694, \"ymax\": 15752522.860367736}" - }, - 103469: { - "label": "NAD 1983 HARN WISCRS Waushara County Feet", - "defaultExtent": "{\"xmin\": -119475722.986834, \"ymin\": -98102883.62006406, \"xmax\": 120263722.98582333, \"ymax\": 91027216.36374879}" - }, - 103470: { - "label": "NAD 1983 HARN WISCRS Winnebago County Feet", - "defaultExtent": "{\"xmin\": -17645697.06361616, \"ymin\": -47055659.66364812, \"xmax\": 19251697.061616164, \"ymax\": 16007896.608792711}" - }, - 103471: { - "label": "NAD 1983 HARN WISCRS Wood County Feet", - "defaultExtent": "{\"xmin\": -119108349.7483097, \"ymin\": -97918333.38818361, \"xmax\": 120476349.72560209, \"ymax\": 92041397.55365027}" - }, - 103472: { - "label": "NAD 1983 CORS96 StatePlane Montana FIPS 2500", - "defaultExtent": "{\"xmin\": -35665865.835127994, \"ymin\": -30006746.26947549, \"xmax\": 36865865.835221216, \"ymax\": 30370447.115839537}" - }, - 103473: { - "label": "NAD 1983 CORS96 StatePlane Montana FIPS 2500 Ft Intl", - "defaultExtent": "{\"xmin\": -117013995.52207346, \"ymin\": -98447330.28043139, \"xmax\": 120951003.39639506, \"ymax\": 99640574.5270326}" - }, - 103474: { - "label": "NAD 1983 CORS96 StatePlane Nebraska FIPS 2600", - "defaultExtent": "{\"xmin\": -36300933.080799475, \"ymin\": -29399402.24687034, \"xmax\": 37300933.080734946, \"ymax\": 25403103.617317706}" - }, - 103475: { - "label": "NAD 1983 CORS96 StatePlane Nebraska FIPS 2600 Ft US", - "defaultExtent": "{\"xmin\": -119097311.2825896, \"ymin\": -96454538.8716071, \"xmax\": 122378144.61571121, \"ymax\": 83343349.1178165}" - }, - 103476: { - "label": "NAD 1983 CORS96 StatePlane Nevada East FIPS 2701", - "defaultExtent": "{\"xmin\": -5422450.671615874, \"ymin\": -5456142.367622394, \"xmax\": 5822450.671615875, \"ymax\": 13763195.080167508}" - }, - 103477: { - "label": "NAD 1983 CORS96 StatePlane Nevada Central FIPS 2702", - "defaultExtent": "{\"xmin\": -5122450.671615874, \"ymin\": -7456142.367622394, \"xmax\": 6122450.671615874, \"ymax\": 11763195.080167508}" - }, - 103478: { - "label": "NAD 1983 CORS96 StatePlane Nevada West FIPS 2703", - "defaultExtent": "{\"xmin\": -4822450.671615874, \"ymin\": -9456142.367622394, \"xmax\": 6422450.671615874, \"ymax\": 9763195.080167508}" - }, - 103479: { - "label": "NAD 1983 CORS96 StatePlane Nevada East FIPS 2701 Ft US", - "defaultExtent": "{\"xmin\": -17790156.91179308, \"ymin\": -17900693.751107804, \"xmax\": 19102490.245126415, \"ymax\": 45154749.19218288}" - }, - 103480: { - "label": "NAD 1983 CORS96 StatePlane Nevada Central FIPS 2702 Ft US", - "defaultExtent": "{\"xmin\": -16805906.91179308, \"ymin\": -24462360.417774465, \"xmax\": 20086740.24512641, \"ymax\": 38593082.525516234}" - }, - 103481: { - "label": "NAD 1983 CORS96 StatePlane Nevada West FIPS 2703 Ft US", - "defaultExtent": "{\"xmin\": -15821656.91179308, \"ymin\": -31024027.084441133, \"xmax\": 21070990.24512641, \"ymax\": 32031415.858849563}" - }, - 103482: { - "label": "NAD 1983 CORS96 StatePlane New Hampshire FIPS 2800", - "defaultExtent": "{\"xmin\": -5322825.539147401, \"ymin\": -14317328.47673371, \"xmax\": 5922825.539147401, \"ymax\": 4903290.3883611085}" - }, - 103483: { - "label": "NAD 1983 CORS96 StatePlane New Hampshire FIPS 2800 Ft US", - "defaultExtent": "{\"xmin\": -17463303.456352763, \"ymin\": -46972768.51075051, \"xmax\": 19431803.456352763, \"ymax\": 16086878.549148068}" - }, - 103484: { - "label": "NAD 1983 CORS96 StatePlane New Jersey FIPS 2900", - "defaultExtent": "{\"xmin\": -5472450.671615874, \"ymin\": -13909240.393148925, \"xmax\": 5772450.671615874, \"ymax\": 5310097.054640977}" - }, - 103485: { - "label": "NAD 1983 CORS96 StatePlane New Jersey FIPS 2900 Ft US", - "defaultExtent": "{\"xmin\": -17954198.578459747, \"ymin\": -45633899.523189425, \"xmax\": 18938448.578459747, \"ymax\": 17421543.42010127}" - }, - 103486: { - "label": "NAD 1983 CORS96 StatePlane New Mexico East FIPS 3001", - "defaultExtent": "{\"xmin\": -5457501.789915625, \"ymin\": -13040418.509908829, \"xmax\": 5787501.789915627, \"ymax\": 6179093.676604471}" - }, - 103487: { - "label": "NAD 1983 CORS96 StatePlane New Mexico Central FIPS 3002", - "defaultExtent": "{\"xmin\": -5122450.671615874, \"ymin\": -13040299.949871464, \"xmax\": 6122450.671615874, \"ymax\": 6179037.49791844}" - }, - 103488: { - "label": "NAD 1983 CORS96 StatePlane New Mexico West FIPS 3003", - "defaultExtent": "{\"xmin\": -4792544.388498756, \"ymin\": -13040517.30993997, \"xmax\": 6452544.388498756, \"ymax\": 6179140.492176165}" - }, - 103489: { - "label": "NAD 1983 CORS96 StatePlane New Mexico East FIPS 3001 Ft US", - "defaultExtent": "{\"xmin\": -17905153.78908151, \"ymin\": -42783439.727925874, \"xmax\": 18987828.789081518, \"ymax\": 20272576.503993165}" - }, - 103490: { - "label": "NAD 1983 CORS96 StatePlane New Mexico Central FIPS 3002 Ft US", - "defaultExtent": "{\"xmin\": -16805906.91179308, \"ymin\": -42783050.752203286, \"xmax\": 20086740.24512641, \"ymax\": 20272392.191087414}" - }, - 103491: { - "label": "NAD 1983 CORS96 StatePlane New Mexico West FIPS 3003 Ft US", - "defaultExtent": "{\"xmin\": -15723539.381266333, \"ymin\": -42783763.87436138, \"xmax\": 21169722.714599665, \"ymax\": 20272730.0980813}" - }, - 103492: { - "label": "NAD 1983 CORS96 StatePlane New York East FIPS 3101", - "defaultExtent": "{\"xmin\": -5472450.671615874, \"ymin\": -13909240.393148925, \"xmax\": 5772450.671615874, \"ymax\": 5310097.054640977}" - }, - 103493: { - "label": "NAD 1983 CORS96 StatePlane New York Central FIPS 3102", - "defaultExtent": "{\"xmin\": -5372661.534602356, \"ymin\": -14039281.307184162, \"xmax\": 5872661.534602358, \"ymax\": 5180776.937839759}" - }, - 103494: { - "label": "NAD 1983 CORS96 StatePlane New York West FIPS 3103", - "defaultExtent": "{\"xmin\": -5272661.53460236, \"ymin\": -14039281.307184162, \"xmax\": 5972661.534602358, \"ymax\": 5180776.937839759}" - }, - 103495: { - "label": "NAD 1983 CORS96 StatePlane New York Long Island FIPS 3104", - "defaultExtent": "{\"xmin\": -36587956.42066342, \"ymin\": -29425420.120449886, \"xmax\": 37187956.42150142, \"ymax\": 24629425.6260428}" - }, - 103496: { - "label": "NAD 1983 CORS96 StatePlane New York East FIPS 3101 Ft US", - "defaultExtent": "{\"xmin\": -17954198.578459747, \"ymin\": -45633899.523189425, \"xmax\": 18938448.578459747, \"ymax\": 17421543.42010127}" - }, - 103497: { - "label": "NAD 1983 CORS96 StatePlane New York Central FIPS 3102 Ft US", - "defaultExtent": "{\"xmin\": -17626807.051441226, \"ymin\": -46060542.08865336, \"xmax\": 19267223.7181079, \"ymax\": 16997265.67022927}" - }, - 103498: { - "label": "NAD 1983 CORS96 StatePlane New York West FIPS 3103 Ft US", - "defaultExtent": "{\"xmin\": -17298723.718107905, \"ymin\": -46060542.08865336, \"xmax\": 19595307.051441234, \"ymax\": 16997265.67022927}" - }, - 103499: { - "label": "NAD 1983 CORS96 StatePlane New York Long Isl FIPS 3104 Ft US", - "defaultExtent": "{\"xmin\": -120038987.02345988, \"ymin\": -96539899.17850932, \"xmax\": 122007487.02620924, \"ymax\": 80805040.5747754}" - }, - 103500: { - "label": "NAD 1983 CORS96 StatePlane North Carolina FIPS 3200", - "defaultExtent": "{\"xmin\": -37137389.955812365, \"ymin\": -28547205.58121489, \"xmax\": 38356592.39440943, \"ymax\": 18261684.963585444}" - }, - 103501: { - "label": "NAD 1983 CORS96 StatePlane North Carolina FIPS 3200 Ft US", - "defaultExtent": "{\"xmin\": -121841586.88002771, \"ymin\": -93658623.64436917, \"xmax\": 125841586.88065827, \"ymax\": 59913544.75136323}" - }, - 103502: { - "label": "NAD 1983 CORS96 StatePlane North Dakota North FIPS 3301", - "defaultExtent": "{\"xmin\": -35595748.115963005, \"ymin\": -30339027.657292105, \"xmax\": 36795748.11641998, \"ymax\": 30974941.604174778}" - }, - 103503: { - "label": "NAD 1983 CORS96 StatePlane North Dakota South FIPS 3302", - "defaultExtent": "{\"xmin\": -35693627.05966489, \"ymin\": -30171287.465168312, \"xmax\": 36893627.0601383, \"ymax\": 30070892.076617684}" - }, - 103504: { - "label": "NAD 1983 CORS96 StatePlane North Dakota North FIPS 3301 FtI", - "defaultExtent": "{\"xmin\": -116783950.51168965, \"ymin\": -99537492.31395046, \"xmax\": 120720958.38720465, \"ymax\": 101623824.1606784}" - }, - 103505: { - "label": "NAD 1983 CORS96 StatePlane North Dakota South FIPS 3302 FtI", - "defaultExtent": "{\"xmin\": -117105075.65506853, \"ymin\": -98987163.59963356, \"xmax\": 121042083.53063746, \"ymax\": 98657782.40360132}" - }, - 103506: { - "label": "NAD 1983 CORS96 StatePlane Ohio North FIPS 3401", - "defaultExtent": "{\"xmin\": -36260139.32294244, \"ymin\": -29374687.724612944, \"xmax\": 37460139.32264283, \"ymax\": 24932674.77100941}" - }, - 103507: { - "label": "NAD 1983 CORS96 StatePlane Ohio South FIPS 3402", - "defaultExtent": "{\"xmin\": -36475619.49728193, \"ymin\": -29142750.459979072, \"xmax\": 37675619.497339524, \"ymax\": 23138992.601405952}" - }, - 103508: { - "label": "NAD 1983 CORS96 StatePlane Ohio North FIPS 3401 Ft US", - "defaultExtent": "{\"xmin\": -118963473.76202032, \"ymin\": -96373454.64316761, \"xmax\": 122900473.76103735, \"ymax\": 81799950.4778867}" - }, - 103509: { - "label": "NAD 1983 CORS96 StatePlane Ohio South FIPS 3402 Ft US", - "defaultExtent": "{\"xmin\": -119670428.30066578, \"ymin\": -95612507.13411467, \"xmax\": 123607428.30085474, \"ymax\": 75915178.22644602}" - }, - 103510: { - "label": "NAD 1983 CORS96 StatePlane Oklahoma North FIPS 3501", - "defaultExtent": "{\"xmin\": -36979233.88907343, \"ymin\": -28714973.963273533, \"xmax\": 38179233.8890346, \"ymax\": 19365200.320864283}" - }, - 103511: { - "label": "NAD 1983 CORS96 StatePlane Oklahoma South FIPS 3502", - "defaultExtent": "{\"xmin\": -37281426.008000575, \"ymin\": -28482182.493828315, \"xmax\": 38481426.007534444, \"ymax\": 17385783.726951864}" - }, - 103512: { - "label": "NAD 1983 CORS96 StatePlane Oklahoma North FIPS 3501 Ft US", - "defaultExtent": "{\"xmin\": -121322703.18440174, \"ymin\": -94209043.74450657, \"xmax\": 125259703.18427433, \"ymax\": 63533994.71936889}" - }, - 103513: { - "label": "NAD 1983 CORS96 StatePlane Oklahoma South FIPS 3502 Ft US", - "defaultExtent": "{\"xmin\": -122314145.16124853, \"ymin\": -93445293.73183505, \"xmax\": 126251145.15971924, \"ymax\": 57039858.7775079}" - }, - 103514: { - "label": "NAD 1983 CORS96 StatePlane Pennsylvania North FIPS 3701", - "defaultExtent": "{\"xmin\": -36219260.373335704, \"ymin\": -29439912.0075843, \"xmax\": 37419260.373972096, \"ymax\": 25273022.556772325}" - }, - 103515: { - "label": "NAD 1983 CORS96 StatePlane Pennsylvania North FIPS 3701 Ft US", - "defaultExtent": "{\"xmin\": -118829356.74151887, \"ymin\": -96587444.64488281, \"xmax\": 122766356.74360676, \"ymax\": 82916574.83834386}" - }, - 103516: { - "label": "NAD 1983 CORS96 StatePlane Pennsylvania South FIPS 3702", - "defaultExtent": "{\"xmin\": -36336434.103694856, \"ymin\": -29321240.345738437, \"xmax\": 37536434.10343623, \"ymax\": 24259081.311989907}" - }, - 103517: { - "label": "NAD 1983 CORS96 StatePlane Pennsylvania South FIPS 3702 Ft US", - "defaultExtent": "{\"xmin\": -119213784.2218722, \"ymin\": -96198102.70097685, \"xmax\": 123150784.2210237, \"ymax\": 79590002.60442021}" - }, - 103518: { - "label": "NAD 1983 CORS96 StatePlane Rhode Island FIPS 3800", - "defaultExtent": "{\"xmin\": -5522977.829082084, \"ymin\": -14160369.134576127, \"xmax\": 5722977.829082084, \"ymax\": 5060770.306298815}" - }, - 103519: { - "label": "NAD 1983 CORS96 StatePlane Rhode Island FIPS 3800 Ft US", - "defaultExtent": "{\"xmin\": -18119969.76091347, \"ymin\": -46457811.069021836, \"xmax\": 18776136.427580133, \"ymax\": 16603543.913248692}" - }, - 103520: { - "label": "NAD 1983 CORS96 StatePlane South Carolina FIPS 3900", - "defaultExtent": "{\"xmin\": -37462128.94764636, \"ymin\": -28285530.15549066, \"xmax\": 38681328.949165195, \"ymax\": 16261049.643896274}" - }, - 103521: { - "label": "NAD 1983 CORS96 StatePlane South Carolina FIPS 3900 Ft Intl", - "defaultExtent": "{\"xmin\": -122907247.20356415, \"ymin\": -92800295.78573051, \"xmax\": 126907247.20854722, \"ymax\": 53349900.40648384}" - }, - 103522: { - "label": "NAD 1983 CORS96 StatePlane South Dakota North FIPS 4001", - "defaultExtent": "{\"xmin\": -35846098.92496543, \"ymin\": -29933703.866771042, \"xmax\": 37046098.92490602, \"ymax\": 28645269.44168758}" - }, - 103523: { - "label": "NAD 1983 CORS96 StatePlane South Dakota South FIPS 4002", - "defaultExtent": "{\"xmin\": -35980929.411304265, \"ymin\": -29734707.47249241, \"xmax\": 37180929.41117397, \"ymax\": 27393676.96179096}" - }, - 103524: { - "label": "NAD 1983 CORS96 StatePlane South Dakota North FIPS 4001 Ft US", - "defaultExtent": "{\"xmin\": -117605076.22299072, \"ymin\": -98207493.43623132, \"xmax\": 121542076.22279583, \"ymax\": 93980354.82660332}" - }, - 103525: { - "label": "NAD 1983 CORS96 StatePlane South Dakota South FIPS 4002 Ft US", - "defaultExtent": "{\"xmin\": -118047432.57692073, \"ymin\": -97554619.43266883, \"xmax\": 121984432.57649325, \"ymax\": 89874088.49880916}" - }, - 103526: { - "label": "NAD 1983 CORS96 StatePlane Tennessee FIPS 4100", - "defaultExtent": "{\"xmin\": -37039650.6279049, \"ymin\": -28631019.31672457, \"xmax\": 38239650.62802555, \"ymax\": 18990861.045042165}" - }, - 103527: { - "label": "NAD 1983 CORS96 StatePlane Tennessee FIPS 4100 Ft US", - "defaultExtent": "{\"xmin\": -121520920.4350513, \"ymin\": -93933602.54162051, \"xmax\": 125457920.43544713, \"ymax\": 62305849.94527583}" - }, - 103539: { - "label": "NAD 1983 CORS96 StatePlane Texas North FIPS 4201", - "defaultExtent": "{\"xmin\": -37516299.8331, \"ymin\": -27580728.943599287, \"xmax\": 37916299.833128214, \"ymax\": 19461951.497943036}" - }, - 103540: { - "label": "NAD 1983 CORS96 StatePlane Texas North Central FIPS 4202", - "defaultExtent": "{\"xmin\": -37614616.88807972, \"ymin\": -26250391.134317875, \"xmax\": 38814616.88802452, \"ymax\": 17395582.84290185}" - }, - 103541: { - "label": "NAD 1983 CORS96 StatePlane Texas Central FIPS 4203", - "defaultExtent": "{\"xmin\": -38040663.03171102, \"ymin\": -24970101.92794974, \"xmax\": 39440663.03170802, \"ymax\": 15602650.666709403}" - }, - 103542: { - "label": "NAD 1983 CORS96 StatePlane Texas South Central FIPS 4204", - "defaultExtent": "{\"xmin\": -38625948.2389665, \"ymin\": -23722141.01585047, \"xmax\": 39825948.2389665, \"ymax\": 15422945.822918478}" - }, - 103543: { - "label": "NAD 1983 CORS96 StatePlane Texas South FIPS 4205", - "defaultExtent": "{\"xmin\": -39382898.13859524, \"ymin\": -22428383.748523414, \"xmax\": 39982898.13859524, \"ymax\": 17130472.597137526}" - }, - 103544: { - "label": "NAD 1983 CORS96 StatePlane Texas North FIPS 4201 Ft US", - "defaultExtent": "{\"xmin\": -123084727.03576224, \"ymin\": -90487774.87579198, \"xmax\": 124397060.36918813, \"ymax\": 63851419.2061681}" - }, - 103545: { - "label": "NAD 1983 CORS96 StatePlane Texas North Central FIPS 4202 FtUS", - "defaultExtent": "{\"xmin\": -123407288.90697485, \"ymin\": -86123158.24650788, \"xmax\": 127344288.90679376, \"ymax\": 57072008.04375381}" - }, - 103546: { - "label": "NAD 1983 CORS96 StatePlane Texas Central FIPS 4203 Ft US", - "defaultExtent": "{\"xmin\": -124805075.29653856, \"ymin\": -81922742.74194843, \"xmax\": 129398241.96319537, \"ymax\": 51189696.39569576}" - }, - 103547: { - "label": "NAD 1983 CORS96 StatePlane Texas South Central FIPS 4204 FtUS", - "defaultExtent": "{\"xmin\": -126725298.51400925, \"ymin\": -77828390.98283607, \"xmax\": 130662298.51400925, \"ymax\": 50600114.754025035}" - }, - 103548: { - "label": "NAD 1983 CORS96 StatePlane Texas South FIPS 4205 Ft US", - "defaultExtent": "{\"xmin\": -129208724.97637452, \"ymin\": -73583789.01494722, \"xmax\": 131177224.97637452, \"ymax\": 56202225.512442015}" - }, - 103549: { - "label": "NAD 1983 CORS96 StatePlane Utah North FIPS 4301", - "defaultExtent": "{\"xmin\": -36338834.42915058, \"ymin\": -28453982.376255378, \"xmax\": 37338834.521727204, \"ymax\": 26066690.159262396}" - }, - 103550: { - "label": "NAD 1983 CORS96 StatePlane Utah Central FIPS 4302", - "defaultExtent": "{\"xmin\": -36514060.18168421, \"ymin\": -27191819.5738922, \"xmax\": 37514060.18232606, \"ymax\": 25642908.167597167}" - }, - 103551: { - "label": "NAD 1983 CORS96 StatePlane Utah South FIPS 4303", - "defaultExtent": "{\"xmin\": -36809744.07562093, \"ymin\": -25948407.843968417, \"xmax\": 37809744.075334504, \"ymax\": 24295469.49478243}" - }, - 103552: { - "label": "NAD 1983 CORS96 StatePlane Utah North FIPS 4301 Ft Intl", - "defaultExtent": "{\"xmin\": -119221897.73343366, \"ymin\": -93352960.55201896, \"xmax\": 122502737.93217586, \"ymax\": 85520637.00545405}" - }, - 103553: { - "label": "NAD 1983 CORS96 StatePlane Utah Central FIPS 4302 Ft Intl", - "defaultExtent": "{\"xmin\": -119796785.37297969, \"ymin\": -89212006.47602427, \"xmax\": 123077625.27009863, \"ymax\": 84130276.14041065}" - }, - 103554: { - "label": "NAD 1983 CORS96 StatePlane Utah South FIPS 4303 Ft Intl", - "defaultExtent": "{\"xmin\": -120766876.88852009, \"ymin\": -85132571.66656305, \"xmax\": 124047716.78259352, \"ymax\": 79709545.58655652}" - }, - 103555: { - "label": "NAD 1983 CORS96 StatePlane Utah North FIPS 4301 Ft US", - "defaultExtent": "{\"xmin\": -119221659.28963818, \"ymin\": -93352773.84609784, \"xmax\": 122502492.92669998, \"ymax\": 85520465.96418004}" - }, - 103556: { - "label": "NAD 1983 CORS96 StatePlane Utah Central FIPS 4302 Ft US", - "defaultExtent": "{\"xmin\": -119796545.77940893, \"ymin\": -89211828.05201131, \"xmax\": 123077379.11484808, \"ymax\": 84130107.87985836}" - }, - 103557: { - "label": "NAD 1983 CORS96 StatePlane Utah South FIPS 4303 Ft US", - "defaultExtent": "{\"xmin\": -120766635.35476631, \"ymin\": -85132401.4014197, \"xmax\": 124047468.68715994, \"ymax\": 79709386.16746534}" - }, - 103558: { - "label": "NAD 1983 CORS96 StatePlane Vermont FIPS 4400", - "defaultExtent": "{\"xmin\": -5122812.1510212775, \"ymin\": -14317294.386720052, \"xmax\": 6122812.151021276, \"ymax\": 4903278.713471021}" - }, - 103559: { - "label": "NAD 1983 CORS96 StatePlane Virginia North FIPS 4501", - "defaultExtent": "{\"xmin\": -33684162.33987652, \"ymin\": -27083846.657879442, \"xmax\": 40684162.34077641, \"ymax\": 24234815.029329725}" - }, - 103560: { - "label": "NAD 1983 CORS96 StatePlane Virginia South FIPS 4502", - "defaultExtent": "{\"xmin\": -33875616.800105184, \"ymin\": -27898914.993674964, \"xmax\": 40875616.80001253, \"ymax\": 21796916.219502874}" - }, - 103561: { - "label": "NAD 1983 CORS96 StatePlane Virginia North FIPS 4501 Ft US", - "defaultExtent": "{\"xmin\": -110512122.6100782, \"ymin\": -88857586.91005945, \"xmax\": 133477955.94636394, \"ymax\": 79510388.9753926}" - }, - 103562: { - "label": "NAD 1983 CORS96 StatePlane Virginia South FIPS 4502 Ft US", - "defaultExtent": "{\"xmin\": -111140252.78501177, \"ymin\": -91531690.27508196, \"xmax\": 134106086.11804111, \"ymax\": 71512049.29681908}" - }, - 103563: { - "label": "NAD 1983 CORS96 StatePlane Washington North FIPS 4601", - "defaultExtent": "{\"xmin\": -35693390.40305884, \"ymin\": -30339611.799414955, \"xmax\": 36693390.40324891, \"ymax\": 31002022.19631627}" - }, - 103564: { - "label": "NAD 1983 CORS96 StatePlane Washington South FIPS 4602", - "defaultExtent": "{\"xmin\": -35813457.80653769, \"ymin\": -30129505.531924177, \"xmax\": 36813457.80730579, \"ymax\": 29888507.91177208}" - }, - 103565: { - "label": "NAD 1983 CORS96 StatePlane Washington North FIPS 4601 Ft US", - "defaultExtent": "{\"xmin\": -117104065.01403554, \"ymin\": -99539209.71191388, \"xmax\": 120384898.34799246, \"ymax\": 101712467.82241428}" - }, - 103566: { - "label": "NAD 1983 CORS96 StatePlane Washington South FIPS 4602 Ft US", - "defaultExtent": "{\"xmin\": -117497986.15361571, \"ymin\": -98849886.06598788, \"xmax\": 120778819.48946907, \"ymax\": 98059213.04053889}" - }, - 103567: { - "label": "NAD 1983 CORS96 StatePlane West Virginia North FIPS 4701", - "defaultExtent": "{\"xmin\": -36443027.89488857, \"ymin\": -29205240.099509504, \"xmax\": 37643027.8949125, \"ymax\": 23375051.76188209}" - }, - 103568: { - "label": "NAD 1983 CORS96 StatePlane West Virginia South FIPS 4702", - "defaultExtent": "{\"xmin\": -36647651.619762786, \"ymin\": -28996711.06985563, \"xmax\": 37847651.61951533, \"ymax\": 21766153.09529358}" - }, - 103569: { - "label": "NAD 1983 CORS96 StatePlane West Virginia North FIPS 4701 FtUS", - "defaultExtent": "{\"xmin\": -119563500.68514691, \"ymin\": -95817525.22647409, \"xmax\": 123500500.68522543, \"ymax\": 76689648.9887748}" - }, - 103570: { - "label": "NAD 1983 CORS96 StatePlane West Virginia South FIPS 4702 FtUS", - "defaultExtent": "{\"xmin\": -120234837.02250506, \"ymin\": -95133376.235018, \"xmax\": 124171837.0216932, \"ymax\": 71411120.61347568}" - }, - 103571: { - "label": "NAD 1983 CORS96 StatePlane Wisconsin North FIPS 4801", - "defaultExtent": "{\"xmin\": -35748933.755770005, \"ymin\": -30104004.24499993, \"xmax\": 36948933.75551393, \"ymax\": 29535005.089385338}" - }, - 103572: { - "label": "NAD 1983 CORS96 StatePlane Wisconsin Central FIPS 4802", - "defaultExtent": "{\"xmin\": -35862028.694118075, \"ymin\": -29930060.701200917, \"xmax\": 37062028.688673995, \"ymax\": 28477287.000578806}" - }, - 103573: { - "label": "NAD 1983 CORS96 StatePlane Wisconsin South FIPS 4803", - "defaultExtent": "{\"xmin\": -36003344.686841294, \"ymin\": -29693054.532282908, \"xmax\": 37203344.68690827, \"ymax\": 27208063.07319163}" - }, - 103574: { - "label": "NAD 1983 CORS96 StatePlane Wisconsin North FIPS 4801 Ft US", - "defaultExtent": "{\"xmin\": -117286293.49705541, \"ymin\": -98766220.59380393, \"xmax\": 121223293.49621527, \"ymax\": 96899429.19742505}" - }, - 103575: { - "label": "NAD 1983 CORS96 StatePlane Wisconsin Central FIPS 4802 Ft US", - "defaultExtent": "{\"xmin\": -117657339.14061904, \"ymin\": -98195540.81718999, \"xmax\": 121594339.12275791, \"ymax\": 93429232.43439895}" - }, - 103576: { - "label": "NAD 1983 CORS96 StatePlane Wisconsin South FIPS 4803 Ft US", - "defaultExtent": "{\"xmin\": -118120973.36007847, \"ymin\": -97417963.07799816, \"xmax\": 122057973.36029819, \"ymax\": 89265120.26596287}" - }, - 103577: { - "label": "NAD 1983 CORS96 StatePlane Wyoming East FIPS 4901", - "defaultExtent": "{\"xmin\": -5422661.534602354, \"ymin\": -14094797.558167633, \"xmax\": 5822661.534602358, \"ymax\": 5125260.686856288}" - }, - 103578: { - "label": "NAD 1983 CORS96 StatePlane Wyoming East Central FIPS 4902", - "defaultExtent": "{\"xmin\": -5222661.53460236, \"ymin\": -13994797.558167633, \"xmax\": 6022661.534602358, \"ymax\": 5225260.686856289}" - }, - 103579: { - "label": "NAD 1983 CORS96 StatePlane Wyoming West Central FIPS 4903", - "defaultExtent": "{\"xmin\": -5022661.534602358, \"ymin\": -14094797.558167633, \"xmax\": 6222661.534602358, \"ymax\": 5125260.686856289}" - }, - 103580: { - "label": "NAD 1983 CORS96 StatePlane Wyoming West FIPS 4904", - "defaultExtent": "{\"xmin\": -4822661.534602356, \"ymin\": -13994797.558167633, \"xmax\": 6422661.534602358, \"ymax\": 5225260.686856289}" - }, - 103581: { - "label": "NAD 1983 CORS96 StatePlane Wyoming East FIPS 4901 Ft US", - "defaultExtent": "{\"xmin\": -17790848.718107887, \"ymin\": -46242681.65542164, \"xmax\": 19103182.051441234, \"ymax\": 16815126.103461005}" - }, - 103582: { - "label": "NAD 1983 CORS96 StatePlane Wyoming E Central FIPS 4902 Ft US", - "defaultExtent": "{\"xmin\": -17134682.05144124, \"ymin\": -45914598.3220883, \"xmax\": 19759348.7181079, \"ymax\": 17143209.43679434}" - }, - 103583: { - "label": "NAD 1983 CORS96 StatePlane Wyoming W Central FIPS 4903 Ft US", - "defaultExtent": "{\"xmin\": -16478515.384774568, \"ymin\": -46242681.65542164, \"xmax\": 20415515.384774566, \"ymax\": 16815126.10346101}" - }, - 103585: { - "label": "NAD 1983 CORS96 StatePlane Wyoming West FIPS 4904 Ft US", - "defaultExtent": "{\"xmin\": -15822348.718107894, \"ymin\": -45914598.3220883, \"xmax\": 21071682.051441234, \"ymax\": 17143209.43679434}" - }, - 103600: { - "label": "NAD 1983 HARN Adj MN Aitkin Meters", - "defaultExtent": "{\"xmin\": -5470936.269452939, \"ymin\": -14694240.864815671, \"xmax\": 5775754.908823729, \"ymax\": 4528155.697736931}" - }, - 103601: { - "label": "NAD 1983 HARN Adj MN Clay Meters", - "defaultExtent": "{\"xmin\": -5470860.584582501, \"ymin\": -14746933.128109692, \"xmax\": 5775675.007095687, \"ymax\": 4475197.51202641}" - }, - 103602: { - "label": "NAD 1983 HARN Adj MN Clearwater Meters", - "defaultExtent": "{\"xmin\": -5471009.318500131, \"ymin\": -14805331.262532959, \"xmax\": 5775832.027871024, \"ymax\": 4417321.961344965}" - }, - 103603: { - "label": "NAD 1983 HARN Adj MN Hubbard Meters", - "defaultExtent": "{\"xmin\": -5471004.11047687, \"ymin\": -14766620.923108619, \"xmax\": 5775826.529677583, \"ymax\": 4456014.002130191}" - }, - 103604: { - "label": "NAD 1983 HARN Adj MN Lake Meters", - "defaultExtent": "{\"xmin\": -5471027.584657007, \"ymin\": -14795930.274144243, \"xmax\": 5775851.311744942, \"ymax\": 4426787.128750549}" - }, - 103605: { - "label": "NAD 1983 HARN Adj MN Mille Lacs Meters", - "defaultExtent": "{\"xmin\": -5470908.8806610275, \"ymin\": -14627999.478303129, \"xmax\": 5775725.994038116, \"ymax\": 4594300.852417561}" - }, - 103606: { - "label": "NAD 1983 HARN Adj MN Washington Meters", - "defaultExtent": "{\"xmin\": -5470830.599809822, \"ymin\": -14537427.843066948, \"xmax\": 5775643.351691661, \"ymax\": 4684597.444134499}" - }, - 103607: { - "label": "NAD 1983 HARN Adj MN Wilkin Meters", - "defaultExtent": "{\"xmin\": -5470880.1869037, \"ymin\": -14679361.7367338, \"xmax\": 5775695.701579647, \"ymax\": 4542837.777096498}" - }, - 103608: { - "label": "NAD 1983 HARN Adj MN Anoka Meters", - "defaultExtent": "{\"xmin\": -36281907.992264986, \"ymin\": -30042636.32986305, \"xmax\": 36586708.60198872, \"ymax\": 28702292.8298637}" - }, - 103609: { - "label": "NAD 1983 HARN Adj MN Becker Meters", - "defaultExtent": "{\"xmin\": -36137310.882117555, \"ymin\": -30262595.502409987, \"xmax\": 36442111.491873555, \"ymax\": 30073824.98057687}" - }, - 103610: { - "label": "NAD 1983 HARN Adj MN Beltrami North Meters", - "defaultExtent": "{\"xmin\": -36031270.61480777, \"ymin\": -30427676.898529366, \"xmax\": 36336071.2245787, \"ymax\": 31062299.557786025}" - }, - 103611: { - "label": "NAD 1983 HARN Adj MN Beltrami South Meters", - "defaultExtent": "{\"xmin\": -36075849.778838575, \"ymin\": -30351937.68484662, \"xmax\": 36380650.388457425, \"ymax\": 30653893.898646977}" - }, - 103612: { - "label": "NAD 1983 HARN Adj MN Benton Meters", - "defaultExtent": "{\"xmin\": -36241287.052047364, \"ymin\": -30110587.75718067, \"xmax\": 36546087.661635615, \"ymax\": 29081668.979615368}" - }, - 103613: { - "label": "NAD 1983 HARN Adj MN Big Stone Meters", - "defaultExtent": "{\"xmin\": -36268119.59696432, \"ymin\": -30059092.07828809, \"xmax\": 36572920.20611363, \"ymax\": 28839040.102899063}" - }, - 103614: { - "label": "NAD 1983 HARN Adj MN Blue Earth Meters", - "defaultExtent": "{\"xmin\": -36380402.321450874, \"ymin\": -29887619.166320622, \"xmax\": 36685202.93148015, \"ymax\": 27796176.336456735}" - }, - 103615: { - "label": "NAD 1983 HARN Adj MN Brown Meters", - "defaultExtent": "{\"xmin\": -36364795.86503159, \"ymin\": -29920445.036637343, \"xmax\": 36669596.47474432, \"ymax\": 27933130.06777621}" - }, - 103616: { - "label": "NAD 1983 HARN Adj MN Carlton Meters", - "defaultExtent": "{\"xmin\": -36163695.16848134, \"ymin\": -30222826.845407184, \"xmax\": 36468495.7780358, \"ymax\": 29815060.763124797}" - }, - 103617: { - "label": "NAD 1983 HARN Adj MN Carver Meters", - "defaultExtent": "{\"xmin\": -36320339.9002166, \"ymin\": -29989733.368232775, \"xmax\": 36625140.510065764, \"ymax\": 28339014.449302025}" - }, - 103618: { - "label": "NAD 1983 HARN Adj MN Cass North Meters", - "defaultExtent": "{\"xmin\": -36122434.19871162, \"ymin\": -30275049.321280457, \"xmax\": 36427234.80816271, \"ymax\": 30222294.66162719}" - }, - 103619: { - "label": "NAD 1983 HARN Adj MN Cass South Meters", - "defaultExtent": "{\"xmin\": -36172307.227806486, \"ymin\": -30192393.3966534, \"xmax\": 36477107.83731556, \"ymax\": 29755966.505945567}" - }, - 103620: { - "label": "NAD 1983 HARN Adj MN Chippewa Meters", - "defaultExtent": "{\"xmin\": -36300174.94410266, \"ymin\": -30007342.48782266, \"xmax\": 36604975.553108975, \"ymax\": 28543395.528014384}" - }, - 103621: { - "label": "NAD 1983 HARN Adj MN Chisago Meters", - "defaultExtent": "{\"xmin\": -36256757.43821172, \"ymin\": -30077335.01658816, \"xmax\": 36561558.047927424, \"ymax\": 28939946.958324686}" - }, - 103622: { - "label": "NAD 1983 HARN Adj MN Cook North Meters", - "defaultExtent": "{\"xmin\": -36050381.29263075, \"ymin\": -30409851.258445274, \"xmax\": 36355181.902246356, \"ymax\": 30882894.2250116}" - }, - 103623: { - "label": "NAD 1983 HARN Adj MN Cook South Meters", - "defaultExtent": "{\"xmin\": -36078467.573609486, \"ymin\": -30355055.807567857, \"xmax\": 36383268.18246887, \"ymax\": 30630705.484151132}" - }, - 103624: { - "label": "NAD 1983 HARN Adj MN Cottonwood Meters", - "defaultExtent": "{\"xmin\": -36392388.202979594, \"ymin\": -29885589.69635948, \"xmax\": 36697188.82233767, \"ymax\": 27679908.107997127}" - }, - 103625: { - "label": "NAD 1983 HARN Adj MN Crow Wing Meters", - "defaultExtent": "{\"xmin\": -36172307.227806486, \"ymin\": -30192393.3966534, \"xmax\": 36477107.83731556, \"ymax\": 29755966.505945567}" - }, - 103626: { - "label": "NAD 1983 HARN Adj MN Dakota Meters", - "defaultExtent": "{\"xmin\": -36327248.1438133, \"ymin\": -29969504.382223852, \"xmax\": 36632048.75315058, \"ymax\": 28285006.372834925}" - }, - 103627: { - "label": "NAD 1983 HARN Adj MN Dodge Meters", - "defaultExtent": "{\"xmin\": -36394622.40862702, \"ymin\": -29883296.816058256, \"xmax\": 36699423.01834897, \"ymax\": 27656234.242033698}" - }, - 103628: { - "label": "NAD 1983 HARN Adj MN Douglas Meters", - "defaultExtent": "{\"xmin\": -36220610.22836014, \"ymin\": -30137569.401472375, \"xmax\": 36525410.838295005, \"ymax\": 29281993.341730095}" - }, - 103629: { - "label": "NAD 1983 HARN Adj MN Faribault Meters", - "defaultExtent": "{\"xmin\": -36426662.883764334, \"ymin\": -29838912.50570827, \"xmax\": 36731463.49343531, \"ymax\": 27364507.88003543}" - }, - 103630: { - "label": "NAD 1983 HARN Adj MN Fillmore Meters", - "defaultExtent": "{\"xmin\": -36427155.91729554, \"ymin\": -29838448.622796066, \"xmax\": 36731956.52771778, \"ymax\": 27355765.090940922}" - }, - 103631: { - "label": "NAD 1983 HARN Adj MN Freeborn Meters", - "defaultExtent": "{\"xmin\": -36426662.883764334, \"ymin\": -29838912.50570827, \"xmax\": 36731463.49343531, \"ymax\": 27364507.88003543}" - }, - 103632: { - "label": "NAD 1983 HARN Adj MN Goodhue Meters", - "defaultExtent": "{\"xmin\": -36349042.78532624, \"ymin\": -29933716.670718234, \"xmax\": 36653843.39459011, \"ymax\": 28087895.929493822}" - }, - 103633: { - "label": "NAD 1983 HARN Adj MN Grant Meters", - "defaultExtent": "{\"xmin\": -36220610.22836014, \"ymin\": -30137569.401472375, \"xmax\": 36525410.838295005, \"ymax\": 29281993.341730095}" - }, - 103634: { - "label": "NAD 1983 HARN Adj MN Hennepin Meters", - "defaultExtent": "{\"xmin\": -36300672.766145684, \"ymin\": -30011206.786407955, \"xmax\": 36605473.37570663, \"ymax\": 28530905.194218926}" - }, - 103635: { - "label": "NAD 1983 HARN Adj MN Houston Meters", - "defaultExtent": "{\"xmin\": -36426178.70089946, \"ymin\": -29838517.13622042, \"xmax\": 36730979.31052503, \"ymax\": 27364146.070271533}" - }, - 103636: { - "label": "NAD 1983 HARN Adj MN Isanti Meters", - "defaultExtent": "{\"xmin\": -36256757.43821172, \"ymin\": -30077335.01658816, \"xmax\": 36561558.047927424, \"ymax\": 28939946.958324686}" - }, - 103637: { - "label": "NAD 1983 HARN Adj MN Itasca North Meters", - "defaultExtent": "{\"xmin\": -36077415.980458334, \"ymin\": -30361633.734876364, \"xmax\": 36382216.59055435, \"ymax\": 30630486.597343463}" - }, - 103638: { - "label": "NAD 1983 HARN Adj MN Itasca South Meters", - "defaultExtent": "{\"xmin\": -36111927.03383071, \"ymin\": -30302054.667932987, \"xmax\": 36416727.64438293, \"ymax\": 30311559.69037669}" - }, - 103639: { - "label": "NAD 1983 HARN Adj MN Jackson Meters", - "defaultExtent": "{\"xmin\": -36426662.883764334, \"ymin\": -29838912.50570827, \"xmax\": 36731463.49343531, \"ymax\": 27364507.88003543}" - }, - 103640: { - "label": "NAD 1983 HARN Adj MN Kanabec Meters", - "defaultExtent": "{\"xmin\": -36207378.30873227, \"ymin\": -30136834.52075254, \"xmax\": 36512178.91832771, \"ymax\": 29421616.091759343}" - }, - 103641: { - "label": "NAD 1983 HARN Adj MN Kandiyohi Meters", - "defaultExtent": "{\"xmin\": -36288283.192413166, \"ymin\": -30025615.788637865, \"xmax\": 36593083.80191191, \"ymax\": 28655328.099215075}" - }, - 103642: { - "label": "NAD 1983 HARN Adj MN Kittson Meters", - "defaultExtent": "{\"xmin\": -35995728.48300656, \"ymin\": -30491824.200847685, \"xmax\": 36300529.09258714, \"ymax\": 31379588.79462292}" - }, - 103643: { - "label": "NAD 1983 HARN Adj MN Koochiching Meters", - "defaultExtent": "{\"xmin\": -36029880.77674174, \"ymin\": -30408453.007271778, \"xmax\": 36334681.38630188, \"ymax\": 31095079.21751333}" - }, - 103644: { - "label": "NAD 1983 HARN Adj MN Lac Qui Parle Meters", - "defaultExtent": "{\"xmin\": -36300174.94410266, \"ymin\": -30007342.48782266, \"xmax\": 36604975.553108975, \"ymax\": 28543395.528014384}" - }, - 103645: { - "label": "NAD 1983 HARN Adj MN Lake of the Woods North Meters", - "defaultExtent": "{\"xmin\": -35960242.137462355, \"ymin\": -30565110.324345, \"xmax\": 36265042.74750051, \"ymax\": 31690081.92238179}" - }, - 103646: { - "label": "NAD 1983 HARN Adj MN Lake of the Woods South Meters", - "defaultExtent": "{\"xmin\": -36003273.70652108, \"ymin\": -30470981.617989667, \"xmax\": 36308074.315827735, \"ymax\": 31321340.29668578}" - }, - 103647: { - "label": "NAD 1983 HARN Adj MN Le Sueur Meters", - "defaultExtent": "{\"xmin\": -36349042.78532624, \"ymin\": -29933716.670718234, \"xmax\": 36653843.39459011, \"ymax\": 28087895.929493822}" - }, - 103648: { - "label": "NAD 1983 HARN Adj MN Lincoln Meters", - "defaultExtent": "{\"xmin\": -36353392.89297958, \"ymin\": -29934202.499203388, \"xmax\": 36658193.50266458, \"ymax\": 28055826.348120984}" - }, - 103649: { - "label": "NAD 1983 HARN Adj MN Lyon Meters", - "defaultExtent": "{\"xmin\": -36356047.52559507, \"ymin\": -29932952.671299923, \"xmax\": 36660848.13501646, \"ymax\": 28022752.679916188}" - }, - 103650: { - "label": "NAD 1983 HARN Adj MN McLeod Meters", - "defaultExtent": "{\"xmin\": -36326449.383269794, \"ymin\": -29967897.078986958, \"xmax\": 36631249.9933381, \"ymax\": 28294828.27852361}" - }, - 103651: { - "label": "NAD 1983 HARN Adj MN Mahnomen Meters", - "defaultExtent": "{\"xmin\": -36106118.36888571, \"ymin\": -30317277.29654278, \"xmax\": 36410918.9783231, \"ymax\": 30361447.389576524}" - }, - 103652: { - "label": "NAD 1983 HARN Adj MN Marshall Meters", - "defaultExtent": "{\"xmin\": -36025972.74755119, \"ymin\": -30445330.616710704, \"xmax\": 36330773.35713201, \"ymax\": 31098369.95282041}" - }, - 103653: { - "label": "NAD 1983 HARN Adj MN Martin Meters", - "defaultExtent": "{\"xmin\": -36426662.883764334, \"ymin\": -29838912.50570827, \"xmax\": 36731463.49343531, \"ymax\": 27364507.88003543}" - }, - 103654: { - "label": "NAD 1983 HARN Adj MN Meeker Meters", - "defaultExtent": "{\"xmin\": -36288283.192413166, \"ymin\": -30025615.788637865, \"xmax\": 36593083.80191191, \"ymax\": 28655328.099215075}" - }, - 103655: { - "label": "NAD 1983 HARN Adj MN Morrison Meters", - "defaultExtent": "{\"xmin\": -36209059.39656949, \"ymin\": -30141609.91132307, \"xmax\": 36513860.00661566, \"ymax\": 29401761.039886825}" - }, - 103656: { - "label": "NAD 1983 HARN Adj MN Mower Meters", - "defaultExtent": "{\"xmin\": -36426662.883764334, \"ymin\": -29838912.50570827, \"xmax\": 36731463.49343531, \"ymax\": 27364507.88003543}" - }, - 103657: { - "label": "NAD 1983 HARN Adj MN Murray Meters", - "defaultExtent": "{\"xmin\": -36392177.448650606, \"ymin\": -29886263.746716507, \"xmax\": 36696978.058079705, \"ymax\": 27688713.147757873}" - }, - 103658: { - "label": "NAD 1983 HARN Adj MN Nicollet Meters", - "defaultExtent": "{\"xmin\": -36380402.321450874, \"ymin\": -29887619.166320622, \"xmax\": 36685202.93148015, \"ymax\": 27796176.336456735}" - }, - 103659: { - "label": "NAD 1983 HARN Adj MN Nobles Meters", - "defaultExtent": "{\"xmin\": -36427257.18482345, \"ymin\": -29839397.79442032, \"xmax\": 36732057.79436213, \"ymax\": 27364951.976707555}" - }, - 103660: { - "label": "NAD 1983 HARN Adj MN Norman Meters", - "defaultExtent": "{\"xmin\": -36105447.84667774, \"ymin\": -30316592.54809305, \"xmax\": 36410248.4565592, \"ymax\": 30361010.017725226}" - }, - 103661: { - "label": "NAD 1983 HARN Adj MN Olmsted Meters", - "defaultExtent": "{\"xmin\": -36394622.40862702, \"ymin\": -29883296.816058256, \"xmax\": 36699423.01834897, \"ymax\": 27656234.242033698}" - }, - 103662: { - "label": "NAD 1983 HARN Adj MN Ottertail Meters", - "defaultExtent": "{\"xmin\": -36179085.579024345, \"ymin\": -30185240.77335803, \"xmax\": 36483886.189329244, \"ymax\": 29687316.521142438}" - }, - 103663: { - "label": "NAD 1983 HARN Adj MN Pennington Meters", - "defaultExtent": "{\"xmin\": -36064961.39796336, \"ymin\": -30363010.620713692, \"xmax\": 36369762.010973744, \"ymax\": 30754051.413374513}" - }, - 103664: { - "label": "NAD 1983 HARN Adj MN Pine Meters", - "defaultExtent": "{\"xmin\": -36207378.30873227, \"ymin\": -30136834.52075254, \"xmax\": 36512178.91832771, \"ymax\": 29421616.091759343}" - }, - 103665: { - "label": "NAD 1983 HARN Adj MN Pipestone Meters", - "defaultExtent": "{\"xmin\": -36394889.898567334, \"ymin\": -29886063.89919955, \"xmax\": 36699690.509086944, \"ymax\": 27663725.527368467}" - }, - 103666: { - "label": "NAD 1983 HARN Adj MN Polk Meters", - "defaultExtent": "{\"xmin\": -36064961.39796336, \"ymin\": -30363010.620713692, \"xmax\": 36369762.010973744, \"ymax\": 30754051.413374513}" - }, - 103667: { - "label": "NAD 1983 HARN Adj MN Pope Meters", - "defaultExtent": "{\"xmin\": -36255075.69880782, \"ymin\": -30076743.65820794, \"xmax\": 36559876.308659345, \"ymax\": 28965224.360692557}" - }, - 103668: { - "label": "NAD 1983 HARN Adj MN Ramsey Meters", - "defaultExtent": "{\"xmin\": -36300672.766145684, \"ymin\": -30011206.786407955, \"xmax\": 36605473.37570663, \"ymax\": 28530905.194218926}" - }, - 103669: { - "label": "NAD 1983 HARN Adj MN Red Lake Meters", - "defaultExtent": "{\"xmin\": -36064961.39796336, \"ymin\": -30363010.620713692, \"xmax\": 36369762.010973744, \"ymax\": 30754051.413374513}" - }, - 103670: { - "label": "NAD 1983 HARN Adj MN Redwood Meters", - "defaultExtent": "{\"xmin\": -36355377.019666664, \"ymin\": -29932306.71278772, \"xmax\": 36660177.62921008, \"ymax\": 28022316.59303027}" - }, - 103671: { - "label": "NAD 1983 HARN Adj MN Renville Meters", - "defaultExtent": "{\"xmin\": -36326449.383269794, \"ymin\": -29967897.078986958, \"xmax\": 36631249.9933381, \"ymax\": 28294828.27852361}" - }, - 103672: { - "label": "NAD 1983 HARN Adj MN Rice Meters", - "defaultExtent": "{\"xmin\": -36349042.78532624, \"ymin\": -29933716.670718234, \"xmax\": 36653843.39459011, \"ymax\": 28087895.929493822}" - }, - 103673: { - "label": "NAD 1983 HARN Adj MN Rock Meters", - "defaultExtent": "{\"xmin\": -36427257.18482345, \"ymin\": -29839397.79442032, \"xmax\": 36732057.79436213, \"ymax\": 27364951.976707555}" - }, - 103674: { - "label": "NAD 1983 HARN Adj MN Roseau Meters", - "defaultExtent": "{\"xmin\": -35995728.48300656, \"ymin\": -30491824.200847685, \"xmax\": 36300529.09258714, \"ymax\": 31379588.79462292}" - }, - 103675: { - "label": "NAD 1983 HARN Adj MN St Louis North Meters", - "defaultExtent": "{\"xmin\": -36033813.259916075, \"ymin\": -30406524.54556076, \"xmax\": 36338613.86956285, \"ymax\": 31056432.495938446}" - }, - 103676: { - "label": "NAD 1983 HARN Adj MN St Louis Central Meters", - "defaultExtent": "{\"xmin\": -36089130.318250924, \"ymin\": -30331622.941872314, \"xmax\": 36393930.9330231, \"ymax\": 30533254.40167971}" - }, - 103677: { - "label": "NAD 1983 HARN Adj MN St Louis South Meters", - "defaultExtent": "{\"xmin\": -36135005.152364075, \"ymin\": -30255241.32284548, \"xmax\": 36439805.76197388, \"ymax\": 30102794.057315893}" - }, - 103678: { - "label": "NAD 1983 HARN Adj MN Scott Meters", - "defaultExtent": "{\"xmin\": -36327248.1438133, \"ymin\": -29969504.382223852, \"xmax\": 36632048.75315058, \"ymax\": 28285006.372834925}" - }, - 103679: { - "label": "NAD 1983 HARN Adj MN Sherburne Meters", - "defaultExtent": "{\"xmin\": -36278971.7539162, \"ymin\": -30036943.05605229, \"xmax\": 36583772.363628514, \"ymax\": 28740385.568357468}" - }, - 103680: { - "label": "NAD 1983 HARN Adj MN Sibley Meters", - "defaultExtent": "{\"xmin\": -36326449.383269794, \"ymin\": -29967897.078986958, \"xmax\": 36631249.9933381, \"ymax\": 28294828.27852361}" - }, - 103681: { - "label": "NAD 1983 HARN Adj MN Stearns Meters", - "defaultExtent": "{\"xmin\": -36255075.69880782, \"ymin\": -30076743.65820794, \"xmax\": 36559876.308659345, \"ymax\": 28965224.360692557}" - }, - 103682: { - "label": "NAD 1983 HARN Adj MN Steele Meters", - "defaultExtent": "{\"xmin\": -36394622.40862702, \"ymin\": -29883296.816058256, \"xmax\": 36699423.01834897, \"ymax\": 27656234.242033698}" - }, - 103683: { - "label": "NAD 1983 HARN Adj MN Stevens Meters", - "defaultExtent": "{\"xmin\": -36255075.69880782, \"ymin\": -30076743.65820794, \"xmax\": 36559876.308659345, \"ymax\": 28965224.360692557}" - }, - 103684: { - "label": "NAD 1983 HARN Adj MN Swift Meters", - "defaultExtent": "{\"xmin\": -36268119.59696432, \"ymin\": -30059092.07828809, \"xmax\": 36572920.20611363, \"ymax\": 28839040.102899063}" - }, - 103685: { - "label": "NAD 1983 HARN Adj MN Todd Meters", - "defaultExtent": "{\"xmin\": -36207907.608796746, \"ymin\": -30142077.224054728, \"xmax\": 36512708.21846511, \"ymax\": 29417164.378704578}" - }, - 103686: { - "label": "NAD 1983 HARN Adj MN Traverse Meters", - "defaultExtent": "{\"xmin\": -36230976.48923904, \"ymin\": -30115612.76500722, \"xmax\": 36535777.099350095, \"ymax\": 29186314.158722144}" - }, - 103687: { - "label": "NAD 1983 HARN Adj MN Wabasha Meters", - "defaultExtent": "{\"xmin\": -36367934.50497694, \"ymin\": -29919558.73133523, \"xmax\": 36672735.11465185, \"ymax\": 27900185.944928937}" - }, - 103688: { - "label": "NAD 1983 HARN Adj MN Wadena Meters", - "defaultExtent": "{\"xmin\": -36172307.227806486, \"ymin\": -30192393.3966534, \"xmax\": 36477107.83731556, \"ymax\": 29755966.505945567}" - }, - 103689: { - "label": "NAD 1983 HARN Adj MN Waseca Meters", - "defaultExtent": "{\"xmin\": -36394622.40862702, \"ymin\": -29883296.816058256, \"xmax\": 36699423.01834897, \"ymax\": 27656234.242033698}" - }, - 103690: { - "label": "NAD 1983 HARN Adj MN Watonwan Meters", - "defaultExtent": "{\"xmin\": -36392388.202979594, \"ymin\": -29885589.69635948, \"xmax\": 36697188.82233767, \"ymax\": 27679908.107997127}" - }, - 103691: { - "label": "NAD 1983 HARN Adj MN Winona Meters", - "defaultExtent": "{\"xmin\": -36393665.76817786, \"ymin\": -29884843.376851805, \"xmax\": 36698466.37783435, \"ymax\": 27663004.447958555}" - }, - 103692: { - "label": "NAD 1983 HARN Adj MN Wright Meters", - "defaultExtent": "{\"xmin\": -36278971.7539162, \"ymin\": -30036943.05605229, \"xmax\": 36583772.363628514, \"ymax\": 28740385.568357468}" - }, - 103693: { - "label": "NAD 1983 HARN Adj MN Yellow Medicine Meters", - "defaultExtent": "{\"xmin\": -36319516.37699879, \"ymin\": -29979777.345454894, \"xmax\": 36624316.986553684, \"ymax\": 28366609.967843406}" - }, - 103694: { - "label": "NAD 1983 HARN Adj MN St Louis CS96 Meters", - "defaultExtent": "{\"xmin\": -4173270.2504405025, \"ymin\": -13775942.160374394, \"xmax\": 7073270.2504405035, \"ymax\": 5446200.096852486}" - }, - 103695: { - "label": "NAD 1983 HARN Adj MN St Louis CS96 Feet", - "defaultExtent": "{\"xmin\": -13691804.14665388, \"ymin\": -45196570.23782865, \"xmax\": 23206220.813319884, \"ymax\": 17868074.81775653}" - }, - 103700: { - "label": "NAD 1983 HARN Adj MN Aitkin Feet", - "defaultExtent": "{\"xmin\": -17949230.077363513, \"ymin\": -48209355.23731607, \"xmax\": 18949289.230032515, \"ymax\": 14856124.15165858}" - }, - 103701: { - "label": "NAD 1983 HARN Adj MN Clay Feet", - "defaultExtent": "{\"xmin\": -17948981.767917752, \"ymin\": -48382229.771139875, \"xmax\": 18949027.085779764, \"ymax\": 14682377.170706643}" - }, - 103702: { - "label": "NAD 1983 HARN Adj MN Clearwater Feet", - "defaultExtent": "{\"xmin\": -17949469.73911251, \"ymin\": -48573824.31716021, \"xmax\": 18949542.244773515, \"ymax\": 14492497.134845937}" - }, - 103703: { - "label": "NAD 1983 HARN Adj MN Hubbard Feet", - "defaultExtent": "{\"xmin\": -17949452.652456194, \"ymin\": -48446822.145232186, \"xmax\": 18949524.2061172, \"ymax\": 14619439.2719888}" - }, - 103704: { - "label": "NAD 1983 HARN Adj MN Lake Feet", - "defaultExtent": "{\"xmin\": -17949529.66732886, \"ymin\": -48542981.241088234, \"xmax\": 18949605.511949863, \"ymax\": 14523550.771575756}" - }, - 103705: { - "label": "NAD 1983 HARN Adj MN Mille Lacs Feet", - "defaultExtent": "{\"xmin\": -17949140.21930205, \"ymin\": -47992028.28839951, \"xmax\": 18949194.365440052, \"ymax\": 15073135.37997328}" - }, - 103706: { - "label": "NAD 1983 HARN Adj MN Washington Feet", - "defaultExtent": "{\"xmin\": -17948883.392876055, \"ymin\": -47694877.848462135, \"xmax\": 18948923.22967506, \"ymax\": 15369383.4479646}" - }, - 103707: { - "label": "NAD 1983 HARN Adj MN Wilkin Feet", - "defaultExtent": "{\"xmin\": -17949046.079866555, \"ymin\": -48160539.29793414, \"xmax\": 18949094.980932556, \"ymax\": 14904293.607024092}" - }, - 103708: { - "label": "NAD 1983 HARN Adj MN Anoka Feet", - "defaultExtent": "{\"xmin\": -119034893.13795602, \"ymin\": -98564882.69222568, \"xmax\": 120034893.13835797, \"ymax\": 94167439.05931115}" - }, - 103709: { - "label": "NAD 1983 HARN Adj MN Becker Feet", - "defaultExtent": "{\"xmin\": -118560494.11908066, \"ymin\": -99286532.07749009, \"xmax\": 119560494.11958848, \"ymax\": 98667207.45710927}" - }, - 103710: { - "label": "NAD 1983 HARN Adj MN Beltrami North Feet", - "defaultExtent": "{\"xmin\": -118212593.67541514, \"ymin\": -99828136.62459175, \"xmax\": 119212593.67597194, \"ymax\": 101910227.79916964}" - }, - 103711: { - "label": "NAD 1983 HARN Adj MN Beltrami South Feet", - "defaultExtent": "{\"xmin\": -118358850.48273954, \"ymin\": -99579648.88770095, \"xmax\": 119358850.48279738, \"ymax\": 100570316.89914428}" - }, - 103712: { - "label": "NAD 1983 HARN Adj MN Benton Feet", - "defaultExtent": "{\"xmin\": -118901622.60325871, \"ymin\": -98787820.0000169, \"xmax\": 119901622.60321617, \"ymax\": 95412108.97728807}" - }, - 103713: { - "label": "NAD 1983 HARN Adj MN Big Stone Feet", - "defaultExtent": "{\"xmin\": -118989655.71104044, \"ymin\": -98618871.2601835, \"xmax\": 119989655.70955779, \"ymax\": 94616084.07092799}" - }, - 103714: { - "label": "NAD 1983 HARN Adj MN Blue Earth Feet", - "defaultExtent": "{\"xmin\": -119358036.6162934, \"ymin\": -98056297.2148369, \"xmax\": 120358036.61769776, \"ymax\": 91194621.86385846}" - }, - 103715: { - "label": "NAD 1983 HARN Adj MN Brown Feet", - "defaultExtent": "{\"xmin\": -119306834.4338578, \"ymin\": -98163993.42436767, \"xmax\": 120306834.43422364, \"ymax\": 91643944.23069577}" - }, - 103716: { - "label": "NAD 1983 HARN Adj MN Carlton Feet", - "defaultExtent": "{\"xmin\": -118647056.56525919, \"ymin\": -99156057.74197339, \"xmax\": 119647056.56510577, \"ymax\": 97818245.18701859}" - }, - 103717: { - "label": "NAD 1983 HARN Adj MN Carver Feet", - "defaultExtent": "{\"xmin\": -119160981.82262729, \"ymin\": -98391316.89227702, \"xmax\": 120160981.82344075, \"ymax\": 92975583.23908505}" - }, - 103718: { - "label": "NAD 1983 HARN Adj MN Cass North Feet", - "defaultExtent": "{\"xmin\": -118511686.20027302, \"ymin\": -99327390.98156762, \"xmax\": 119511686.19978048, \"ymax\": 99154311.73568852}" - }, - 103719: { - "label": "NAD 1983 HARN Adj MN Cass South Feet", - "defaultExtent": "{\"xmin\": -118675311.29656176, \"ymin\": -99056210.66885369, \"xmax\": 119675311.29625945, \"ymax\": 97624366.7782564}" - }, - 103720: { - "label": "NAD 1983 HARN Adj MN Chippewa Feet", - "defaultExtent": "{\"xmin\": -119094823.96244346, \"ymin\": -98449089.47879817, \"xmax\": 120094823.96049169, \"ymax\": 93646123.49482718}" - }, - 103721: { - "label": "NAD 1983 HARN Adj MN Chisago Feet", - "defaultExtent": "{\"xmin\": -118952378.36186627, \"ymin\": -98678723.30025631, \"xmax\": 119952378.36224188, \"ymax\": 94947142.64577022}" - }, - 103722: { - "label": "NAD 1983 HARN Adj MN Cook North Feet", - "defaultExtent": "{\"xmin\": -118275292.62423936, \"ymin\": -99769653.67041586, \"xmax\": 119275292.62428658, \"ymax\": 101321628.80322553}" - }, - 103723: { - "label": "NAD 1983 HARN Adj MN Cook South Feet", - "defaultExtent": "{\"xmin\": -118367439.03108378, \"ymin\": -99589878.9286622, \"xmax\": 119367439.02864993, \"ymax\": 100494239.57591917}" - }, - 103724: { - "label": "NAD 1983 HARN Adj MN Cottonwood Feet", - "defaultExtent": "{\"xmin\": -119397360.2959422, \"ymin\": -98049638.86213939, \"xmax\": 120397360.32795283, \"ymax\": 90813165.18432057}" - }, - 103725: { - "label": "NAD 1983 HARN Adj MN Crow Wing Feet", - "defaultExtent": "{\"xmin\": -118675311.29656176, \"ymin\": -99056210.66885369, \"xmax\": 119675311.29625945, \"ymax\": 97624366.7782564}" - }, - 103726: { - "label": "NAD 1983 HARN Adj MN Dakota Feet", - "defaultExtent": "{\"xmin\": -119183646.61849411, \"ymin\": -98324948.96067941, \"xmax\": 120183646.61762819, \"ymax\": 92798391.74154256}" - }, - 103727: { - "label": "NAD 1983 HARN Adj MN Dodge Feet", - "defaultExtent": "{\"xmin\": -119404690.35230379, \"ymin\": -98042116.30401778, \"xmax\": 120404690.35269989, \"ymax\": 90735495.17573887}" - }, - 103728: { - "label": "NAD 1983 HARN Adj MN Douglas Feet", - "defaultExtent": "{\"xmin\": -118833785.3908782, \"ymin\": -98876342.27799727, \"xmax\": 119833785.39197285, \"ymax\": 96069339.82199281}" - }, - 103729: { - "label": "NAD 1983 HARN Adj MN Faribault Feet", - "defaultExtent": "{\"xmin\": -119509809.81115013, \"ymin\": -97896498.77914454, \"xmax\": 120509809.81137899, \"ymax\": 89778389.6030829}" - }, - 103730: { - "label": "NAD 1983 HARN Adj MN Fillmore Feet", - "defaultExtent": "{\"xmin\": -119511427.37199377, \"ymin\": -97894976.85662341, \"xmax\": 120511427.37468739, \"ymax\": 89749705.96919534}" - }, - 103731: { - "label": "NAD 1983 HARN Adj MN Freeborn Feet", - "defaultExtent": "{\"xmin\": -119509809.81115013, \"ymin\": -97896498.77914454, \"xmax\": 120509809.81137899, \"ymax\": 89778389.6030829}" - }, - 103732: { - "label": "NAD 1983 HARN Adj MN Goodhue Feet", - "defaultExtent": "{\"xmin\": -119255151.20485783, \"ymin\": -98207535.44384806, \"xmax\": 120255151.20375104, \"ymax\": 92151705.22868097}" - }, - 103733: { - "label": "NAD 1983 HARN Adj MN Grant Feet", - "defaultExtent": "{\"xmin\": -118833785.3908782, \"ymin\": -98876342.27799727, \"xmax\": 119833785.39197285, \"ymax\": 96069339.82199281}" - }, - 103734: { - "label": "NAD 1983 HARN Adj MN Hennepin Feet", - "defaultExtent": "{\"xmin\": -119096457.23359628, \"ymin\": -98461767.59840675, \"xmax\": 120096457.23346415, \"ymax\": 93605144.79136658}" - }, - 103735: { - "label": "NAD 1983 HARN Adj MN Houston Feet", - "defaultExtent": "{\"xmin\": -119508221.28786762, \"ymin\": -97895201.63774982, \"xmax\": 120508221.28794752, \"ymax\": 89777202.56554918}" - }, - 103736: { - "label": "NAD 1983 HARN Adj MN Isanti Feet", - "defaultExtent": "{\"xmin\": -118952378.36186627, \"ymin\": -98678723.30025631, \"xmax\": 119952378.36224188, \"ymax\": 94947142.64577022}" - }, - 103737: { - "label": "NAD 1983 HARN Adj MN Itasca North Feet", - "defaultExtent": "{\"xmin\": -118363988.92922036, \"ymin\": -99611460.0118402, \"xmax\": 119363988.93084371, \"ymax\": 100493521.44478433}" - }, - 103738: { - "label": "NAD 1983 HARN Adj MN Itasca South Feet", - "defaultExtent": "{\"xmin\": -118477213.9434929, \"ymin\": -99415991.02304347, \"xmax\": 119477213.94661298, \"ymax\": 99447175.41751085}" - }, - 103739: { - "label": "NAD 1983 HARN Adj MN Jackson Feet", - "defaultExtent": "{\"xmin\": -119509809.81115013, \"ymin\": -97896498.77914454, \"xmax\": 120509809.81137899, \"ymax\": 89778389.6030829}" - }, - 103740: { - "label": "NAD 1983 HARN Adj MN Kanabec Feet", - "defaultExtent": "{\"xmin\": -118790373.66789912, \"ymin\": -98873931.25683562, \"xmax\": 119790373.66788015, \"ymax\": 96527418.79438043}" - }, - 103741: { - "label": "NAD 1983 HARN Adj MN Kandiyohi Feet", - "defaultExtent": "{\"xmin\": -119055809.10710885, \"ymin\": -98509041.13322271, \"xmax\": 120055809.10677265, \"ymax\": 94013355.60550812}" - }, - 103742: { - "label": "NAD 1983 HARN Adj MN Kittson Feet", - "defaultExtent": "{\"xmin\": -118095985.864664, \"ymin\": -100038593.2322811, \"xmax\": 119095985.8645963, \"ymax\": 102951200.90369202}" - }, - 103743: { - "label": "NAD 1983 HARN Adj MN Koochiching Feet", - "defaultExtent": "{\"xmin\": -118208033.84836018, \"ymin\": -99765066.24135748, \"xmax\": 119208033.84822541, \"ymax\": 102017772.3994583}" - }, - 103744: { - "label": "NAD 1983 HARN Adj MN Lac Qui Parle Feet", - "defaultExtent": "{\"xmin\": -119094823.96244346, \"ymin\": -98449089.47879817, \"xmax\": 120094823.96049169, \"ymax\": 93646123.49482718}" - }, - 103745: { - "label": "NAD 1983 HARN Adj MN Lake of the Woods North Feet", - "defaultExtent": "{\"xmin\": -117979561.0793244, \"ymin\": -100279032.78912188, \"xmax\": 118979561.0807579, \"ymax\": 103969877.10701424}" - }, - 103746: { - "label": "NAD 1983 HARN Adj MN Lake of the Woods South Feet", - "defaultExtent": "{\"xmin\": -118120740.4854779, \"ymin\": -99970212.19168775, \"xmax\": 119120740.48451148, \"ymax\": 102760097.29004325}" - }, - 103747: { - "label": "NAD 1983 HARN Adj MN Le Sueur Feet", - "defaultExtent": "{\"xmin\": -119255151.20485783, \"ymin\": -98207535.44384806, \"xmax\": 120255151.20375104, \"ymax\": 92151705.22868097}" - }, - 103748: { - "label": "NAD 1983 HARN Adj MN Lincoln Feet", - "defaultExtent": "{\"xmin\": -119269423.18305048, \"ymin\": -98209129.36613643, \"xmax\": 120269423.18332537, \"ymax\": 92046490.27712691}" - }, - 103749: { - "label": "NAD 1983 HARN Adj MN Lyon Feet", - "defaultExtent": "{\"xmin\": -119278132.59022313, \"ymin\": -98205028.88908982, \"xmax\": 120278132.58963317, \"ymax\": 91937981.08402501}" - }, - 103750: { - "label": "NAD 1983 HARN Adj MN McLeod Feet", - "defaultExtent": "{\"xmin\": -119181026.01827763, \"ymin\": -98319675.66664304, \"xmax\": 120181026.01981007, \"ymax\": 92830615.77712286}" - }, - 103751: { - "label": "NAD 1983 HARN Adj MN Mahnomen Feet", - "defaultExtent": "{\"xmin\": -118458156.68191919, \"ymin\": -99465933.93040742, \"xmax\": 119458156.6813817, \"ymax\": 99610848.64396897}" - }, - 103752: { - "label": "NAD 1983 HARN Adj MN Marshall Feet", - "defaultExtent": "{\"xmin\": -118195212.25592418, \"ymin\": -99886055.53165835, \"xmax\": 119195212.25585726, \"ymax\": 102028568.75354494}" - }, - 103753: { - "label": "NAD 1983 HARN Adj MN Martin Feet", - "defaultExtent": "{\"xmin\": -119509809.81115013, \"ymin\": -97896498.77914454, \"xmax\": 120509809.81137899, \"ymax\": 89778389.6030829}" - }, - 103754: { - "label": "NAD 1983 HARN Adj MN Meeker Feet", - "defaultExtent": "{\"xmin\": -119055809.10710885, \"ymin\": -98509041.13322271, \"xmax\": 120055809.10677265, \"ymax\": 94013355.60550812}" - }, - 103755: { - "label": "NAD 1983 HARN Adj MN Morrison Feet", - "defaultExtent": "{\"xmin\": -118795889.03691173, \"ymin\": -98889598.51739909, \"xmax\": 119795889.03837153, \"ymax\": 96462277.67836201}" - }, - 103756: { - "label": "NAD 1983 HARN Adj MN Mower Feet", - "defaultExtent": "{\"xmin\": -119509809.81115013, \"ymin\": -97896498.77914454, \"xmax\": 120509809.81137899, \"ymax\": 89778389.6030829}" - }, - 103757: { - "label": "NAD 1983 HARN Adj MN Murray Feet", - "defaultExtent": "{\"xmin\": -119396668.84611452, \"ymin\": -98051850.30901906, \"xmax\": 120396668.84554982, \"ymax\": 90842053.05226894}" - }, - 103758: { - "label": "NAD 1983 HARN Adj MN Nicollet Feet", - "defaultExtent": "{\"xmin\": -119358036.6162934, \"ymin\": -98056297.2148369, \"xmax\": 120358036.61769776, \"ymax\": 91194621.86385846}" - }, - 103759: { - "label": "NAD 1983 HARN Adj MN Nobles Feet", - "defaultExtent": "{\"xmin\": -119511759.61387493, \"ymin\": -97898090.93052733, \"xmax\": 120511759.61366974, \"ymax\": 89779846.61024803}" - }, - 103760: { - "label": "NAD 1983 HARN Adj MN Norman Feet", - "defaultExtent": "{\"xmin\": -118455956.81030855, \"ymin\": -99463687.3848686, \"xmax\": 119455956.81122798, \"ymax\": 99609413.69982016}" - }, - 103761: { - "label": "NAD 1983 HARN Adj MN Olmsted Feet", - "defaultExtent": "{\"xmin\": -119404690.35230379, \"ymin\": -98042116.30401778, \"xmax\": 120404690.35269989, \"ymax\": 90735495.17573887}" - }, - 103762: { - "label": "NAD 1983 HARN Adj MN Ottertail Feet", - "defaultExtent": "{\"xmin\": -118697549.93718235, \"ymin\": -99032744.10392545, \"xmax\": 119697549.93949102, \"ymax\": 97399137.61978146}" - }, - 103763: { - "label": "NAD 1983 HARN Adj MN Pennington Feet", - "defaultExtent": "{\"xmin\": -118323127.51981811, \"ymin\": -99615977.34479149, \"xmax\": 119323127.53100301, \"ymax\": 100898917.0120462}" - }, - 103764: { - "label": "NAD 1983 HARN Adj MN Pine Feet", - "defaultExtent": "{\"xmin\": -118790373.66789912, \"ymin\": -98873931.25683562, \"xmax\": 119790373.66788015, \"ymax\": 96527418.79438043}" - }, - 103765: { - "label": "NAD 1983 HARN Adj MN Pipestone Feet", - "defaultExtent": "{\"xmin\": -119405567.9422163, \"ymin\": -98051194.64262384, \"xmax\": 120405567.94542691, \"ymax\": 90760072.8343747}" - }, - 103766: { - "label": "NAD 1983 HARN Adj MN Polk Feet", - "defaultExtent": "{\"xmin\": -118323127.51981811, \"ymin\": -99615977.34479149, \"xmax\": 119323127.53100301, \"ymax\": 100898917.0120462}" - }, - 103767: { - "label": "NAD 1983 HARN Adj MN Pope Feet", - "defaultExtent": "{\"xmin\": -118946860.85517198, \"ymin\": -98676783.15197055, \"xmax\": 119946860.85599318, \"ymax\": 95030073.59003882}" - }, - 103768: { - "label": "NAD 1983 HARN Adj MN Ramsey Feet", - "defaultExtent": "{\"xmin\": -119096457.23359628, \"ymin\": -98461767.59840675, \"xmax\": 120096457.23346415, \"ymax\": 93605144.79136658}" - }, - 103769: { - "label": "NAD 1983 HARN Adj MN Red Lake Feet", - "defaultExtent": "{\"xmin\": -118323127.51981811, \"ymin\": -99615977.34479149, \"xmax\": 119323127.53100301, \"ymax\": 100898917.0120462}" - }, - 103770: { - "label": "NAD 1983 HARN Adj MN Redwood Feet", - "defaultExtent": "{\"xmin\": -119275932.77202304, \"ymin\": -98202909.60687104, \"xmax\": 120275932.77183338, \"ymax\": 91936550.35563347}" - }, - 103771: { - "label": "NAD 1983 HARN Adj MN Renville Feet", - "defaultExtent": "{\"xmin\": -119181026.01827763, \"ymin\": -98319675.66664304, \"xmax\": 120181026.01981007, \"ymax\": 92830615.77712286}" - }, - 103772: { - "label": "NAD 1983 HARN Adj MN Rice Feet", - "defaultExtent": "{\"xmin\": -119255151.20485783, \"ymin\": -98207535.44384806, \"xmax\": 120255151.20375104, \"ymax\": 92151705.22868097}" - }, - 103773: { - "label": "NAD 1983 HARN Adj MN Rock Feet", - "defaultExtent": "{\"xmin\": -119511759.61387493, \"ymin\": -97898090.93052733, \"xmax\": 120511759.61366974, \"ymax\": 89779846.61024803}" - }, - 103774: { - "label": "NAD 1983 HARN Adj MN Roseau Feet", - "defaultExtent": "{\"xmin\": -118095985.864664, \"ymin\": -100038593.2322811, \"xmax\": 119095985.8645963, \"ymax\": 102951200.90369202}" - }, - 103775: { - "label": "NAD 1983 HARN Adj MN St Louis North Feet", - "defaultExtent": "{\"xmin\": -118220935.67024131, \"ymin\": -99758739.2798939, \"xmax\": 119220935.67039077, \"ymax\": 101890978.94709137}" - }, - 103776: { - "label": "NAD 1983 HARN Adj MN St Louis Central Feet", - "defaultExtent": "{\"xmin\": -118402421.71912822, \"ymin\": -99512999.60179274, \"xmax\": 119402421.73609328, \"ymax\": 100174518.8161775}" - }, - 103777: { - "label": "NAD 1983 HARN Adj MN St Louis South Feet", - "defaultExtent": "{\"xmin\": -118552929.40404779, \"ymin\": -99262404.24003553, \"xmax\": 119552929.40407595, \"ymax\": 98762250.16971055}" - }, - 103778: { - "label": "NAD 1983 HARN Adj MN Scott Feet", - "defaultExtent": "{\"xmin\": -119183646.61849411, \"ymin\": -98324948.96067941, \"xmax\": 120183646.61762819, \"ymax\": 92798391.74154256}" - }, - 103779: { - "label": "NAD 1983 HARN Adj MN Sherburne Feet", - "defaultExtent": "{\"xmin\": -119025259.8293067, \"ymin\": -98546204.00973155, \"xmax\": 120025259.8296712, \"ymax\": 94292414.98551945}" - }, - 103780: { - "label": "NAD 1983 HARN Adj MN Sibley Feet", - "defaultExtent": "{\"xmin\": -119181026.01827763, \"ymin\": -98319675.66664304, \"xmax\": 120181026.01981007, \"ymax\": 92830615.77712286}" - }, - 103781: { - "label": "NAD 1983 HARN Adj MN Stearns Feet", - "defaultExtent": "{\"xmin\": -118946860.85517198, \"ymin\": -98676783.15197055, \"xmax\": 119946860.85599318, \"ymax\": 95030073.59003882}" - }, - 103782: { - "label": "NAD 1983 HARN Adj MN Steele Feet", - "defaultExtent": "{\"xmin\": -119404690.35230379, \"ymin\": -98042116.30401778, \"xmax\": 120404690.35269989, \"ymax\": 90735495.17573887}" - }, - 103783: { - "label": "NAD 1983 HARN Adj MN Stevens Feet", - "defaultExtent": "{\"xmin\": -118946860.85517198, \"ymin\": -98676783.15197055, \"xmax\": 119946860.85599318, \"ymax\": 95030073.59003882}" - }, - 103784: { - "label": "NAD 1983 HARN Adj MN Swift Feet", - "defaultExtent": "{\"xmin\": -118989655.71104044, \"ymin\": -98618871.2601835, \"xmax\": 119989655.70955779, \"ymax\": 94616084.07092799}" - }, - 103785: { - "label": "NAD 1983 HARN Adj MN Todd Feet", - "defaultExtent": "{\"xmin\": -118792110.21319397, \"ymin\": -98891131.69258621, \"xmax\": 119792110.21341427, \"ymax\": 96512813.46579993}" - }, - 103786: { - "label": "NAD 1983 HARN Adj MN Traverse Feet", - "defaultExtent": "{\"xmin\": -118867795.36511172, \"ymin\": -98804306.2131945, \"xmax\": 119867795.36678442, \"ymax\": 95755432.36907423}" - }, - 103787: { - "label": "NAD 1983 HARN Adj MN Wabasha Feet", - "defaultExtent": "{\"xmin\": -119317131.78841184, \"ymin\": -98161085.60438898, \"xmax\": 120317131.7886536, \"ymax\": 91535860.054321}" - }, - 103788: { - "label": "NAD 1983 HARN Adj MN Wadena Feet", - "defaultExtent": "{\"xmin\": -118675311.29656176, \"ymin\": -99056210.66885369, \"xmax\": 119675311.29625945, \"ymax\": 97624366.7782564}" - }, - 103789: { - "label": "NAD 1983 HARN Adj MN Waseca Feet", - "defaultExtent": "{\"xmin\": -119404690.35230379, \"ymin\": -98042116.30401778, \"xmax\": 120404690.35269989, \"ymax\": 90735495.17573887}" - }, - 103790: { - "label": "NAD 1983 HARN Adj MN Watonwan Feet", - "defaultExtent": "{\"xmin\": -119397360.2959422, \"ymin\": -98049638.86213939, \"xmax\": 120397360.32795283, \"ymax\": 90813165.18432057}" - }, - 103791: { - "label": "NAD 1983 HARN Adj MN Winona Feet", - "defaultExtent": "{\"xmin\": -119401551.77443019, \"ymin\": -98047190.31222129, \"xmax\": 120401551.77461152, \"ymax\": 90757707.09301068}" - }, - 103792: { - "label": "NAD 1983 HARN Adj MN Wright Feet", - "defaultExtent": "{\"xmin\": -119025259.8293067, \"ymin\": -98546204.00973155, \"xmax\": 120025259.8296712, \"ymax\": 94292414.98551945}" - }, - 103793: { - "label": "NAD 1983 HARN Adj MN Yellow Medicine Feet", - "defaultExtent": "{\"xmin\": -119158279.98020351, \"ymin\": -98358652.84087992, \"xmax\": 120158279.98005153, \"ymax\": 93066119.53616624}" - }, - 103794: { - "label": "Mexican Datum 1993 UTM Zone 11N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 103795: { - "label": "Mexican Datum 1993 UTM Zone 12N", - "defaultExtent": "{\"xmin\": -5120763.767723998, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 103796: { - "label": "Mexican Datum 1993 UTM Zone 13N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 103797: { - "label": "Mexican Datum 1993 UTM Zone 14N", - "defaultExtent": "{\"xmin\": -5120763.767724001, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 103798: { - "label": "Mexican Datum 1993 UTM Zone 15N", - "defaultExtent": "{\"xmin\": -5120763.767723998, \"ymin\": -9606785.534958892, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 103799: { - "label": "Mexican Datum 1993 UTM Zone 16N", - "defaultExtent": "{\"xmin\": -5120763.767723998, \"ymin\": -9606785.534958893, \"xmax\": 6120763.767724001, \"ymax\": 9606785.534958888}" - }, - 103800: { - "label": "NAD 1983 HARN Adj WI Adams Meters", - "defaultExtent": "{\"xmin\": -5475999.410262476, \"ymin\": -14414612.885543382, \"xmax\": 5770436.799137254, \"ymax\": 4807349.894394769}" - }, - 103801: { - "label": "NAD 1983 HARN Adj WI Ashland Meters", - "defaultExtent": "{\"xmin\": -5450469.162039174, \"ymin\": -14674779.177975766, \"xmax\": 5796113.053326957, \"ymax\": 4547433.949055457}" - }, - 103802: { - "label": "NAD 1983 HARN Adj WI Barron Meters", - "defaultExtent": "{\"xmin\": -5530136.374881932, \"ymin\": -14611105.221563691, \"xmax\": 5716436.374881933, \"ymax\": 4611091.735685171}" - }, - 103803: { - "label": "NAD 1983 HARN Adj WI Brown Meters", - "defaultExtent": "{\"xmin\": -5591525.4331827955, \"ymin\": -14369037.147950165, \"xmax\": 5654725.433162477, \"ymax\": 4852606.850988488}" - }, - 103804: { - "label": "NAD 1983 HARN Adj WI Buffalo Meters", - "defaultExtent": "{\"xmin\": -5447967.534879768, \"ymin\": -14427384.240610559, \"xmax\": 5798488.235921171, \"ymax\": 4794612.012351203}" - }, - 103805: { - "label": "NAD 1983 HARN Adj WI Calumet Meters", - "defaultExtent": "{\"xmin\": -5378418.880737565, \"ymin\": -14342594.674965445, \"xmax\": 5867928.659757128, \"ymax\": 4879216.294969296}" - }, - 103806: { - "label": "NAD 1983 HARN Adj WI Clark Meters", - "defaultExtent": "{\"xmin\": -5423323.699901097, \"ymin\": -14440679.199321408, \"xmax\": 5823222.099697897, \"ymax\": 4781471.6746257525}" - }, - 103807: { - "label": "NAD 1983 HARN Adj WI Dodge Meters", - "defaultExtent": "{\"xmin\": -5359859.607199068, \"ymin\": -14204140.356135327, \"xmax\": 5886555.0605899785, \"ymax\": 5017785.610249701}" - }, - 103808: { - "label": "NAD 1983 HARN Adj WI Door Meters", - "defaultExtent": "{\"xmin\": -5464317.081708734, \"ymin\": -14529172.037900815, \"xmax\": 5781919.316913205, \"ymax\": 4692448.712219847}" - }, - 103809: { - "label": "NAD 1983 HARN Adj WI Douglas Meters", - "defaultExtent": "{\"xmin\": -5564098.345045476, \"ymin\": -14694316.866274096, \"xmax\": 5682360.981570748, \"ymax\": 4527685.7478256235}" - }, - 103810: { - "label": "NAD 1983 HARN Adj WI Dunn Meters", - "defaultExtent": "{\"xmin\": -5571428.747964608, \"ymin\": -14530426.185137529, \"xmax\": 5675060.955229022, \"ymax\": 4691628.331448201}" - }, - 103811: { - "label": "NAD 1983 HARN Adj WI Florence Meters", - "defaultExtent": "{\"xmin\": -5489817.854766746, \"ymin\": -14645154.953898828, \"xmax\": 5756823.188777412, \"ymax\": 4577159.212492893}" - }, - 103812: { - "label": "NAD 1983 HARN Adj WI Fond du Lac Meters", - "defaultExtent": "{\"xmin\": -5378418.880737565, \"ymin\": -14342594.674965445, \"xmax\": 5867928.659757128, \"ymax\": 4879216.294969296}" - }, - 103813: { - "label": "NAD 1983 HARN Adj WI Forest Meters", - "defaultExtent": "{\"xmin\": -5347546.279381521, \"ymin\": -14486046.75840343, \"xmax\": 5899235.382759729, \"ymax\": 4736508.254833599}" - }, - 103814: { - "label": "NAD 1983 HARN Adj WI Grant Meters", - "defaultExtent": "{\"xmin\": -5380892.6725563295, \"ymin\": -14197357.59177862, \"xmax\": 5865525.641822264, \"ymax\": 5024574.624514807}" - }, - 103815: { - "label": "NAD 1983 HARN Adj WI Iowa Meters", - "defaultExtent": "{\"xmin\": -5510153.81570139, \"ymin\": -14322693.085832743, \"xmax\": 5736315.868025497, \"ymax\": 4899327.172648529}" - }, - 103816: { - "label": "NAD 1983 HARN Adj WI Iron Meters", - "defaultExtent": "{\"xmin\": -5402466.3650840465, \"ymin\": -14644867.436289616, \"xmax\": 5844427.249005815, \"ymax\": 4577879.4519625725}" - }, - 103817: { - "label": "NAD 1983 HARN Adj WI Jefferson Meters", - "defaultExtent": "{\"xmin\": -5359859.607199068, \"ymin\": -14204140.356135327, \"xmax\": 5886555.0605899785, \"ymax\": 5017785.610249701}" - }, - 103818: { - "label": "NAD 1983 HARN Adj WI Juneau Meters", - "defaultExtent": "{\"xmin\": -5475999.410262476, \"ymin\": -14414612.885543382, \"xmax\": 5770436.799137254, \"ymax\": 4807349.894394769}" - }, - 103819: { - "label": "NAD 1983 HARN Adj WI Kenosha Meters", - "defaultExtent": "{\"xmin\": -5437230.757494789, \"ymin\": -14286705.869827928, \"xmax\": 5809087.501208276, \"ymax\": 4935054.807171696}" - }, - 103820: { - "label": "NAD 1983 HARN Adj WI Kewaunee Meters", - "defaultExtent": "{\"xmin\": -5543286.332267026, \"ymin\": -14403312.229863148, \"xmax\": 5703001.851698071, \"ymax\": 4818396.795166587}" - }, - 103821: { - "label": "NAD 1983 HARN Adj WI LaCrosse Meters", - "defaultExtent": "{\"xmin\": -5492737.996544647, \"ymin\": -14423929.818253938, \"xmax\": 5753647.318363291, \"ymax\": 4797946.000163396}" - }, - 103822: { - "label": "NAD 1983 HARN Adj WI Lincoln Meters", - "defaultExtent": "{\"xmin\": -5507220.460708464, \"ymin\": -14579163.13618532, \"xmax\": 5739478.525224593, \"ymax\": 4643250.071153988}" - }, - 103823: { - "label": "NAD 1983 HARN Adj WI Manitowoc Meters", - "defaultExtent": "{\"xmin\": -5543286.332267026, \"ymin\": -14403312.229863148, \"xmax\": 5703001.851698071, \"ymax\": 4818396.795166587}" - }, - 103824: { - "label": "NAD 1983 HARN Adj WI Marinette Meters", - "defaultExtent": "{\"xmin\": -5384485.922887569, \"ymin\": -14561652.91896406, \"xmax\": 5861803.677523078, \"ymax\": 4660059.280781435}" - }, - 103825: { - "label": "NAD 1983 HARN Adj WI Menominee Meters", - "defaultExtent": "{\"xmin\": -5517755.692811122, \"ymin\": -14564617.636299467, \"xmax\": 5728677.7146551665, \"ymax\": 4657340.6081987005}" - }, - 103826: { - "label": "NAD 1983 HARN Adj WI Milwaukee Meters", - "defaultExtent": "{\"xmin\": -5437230.757494789, \"ymin\": -14286705.869827928, \"xmax\": 5809087.501208276, \"ymax\": 4935054.807171696}" - }, - 104020: { - "label": "GCS JGD 2011", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104101: { - "label": "GCS Estonia 1937", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104102: { - "label": "GCS Hermannskogel", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104103: { - "label": "GCS Sierra Leone 1960", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104105: { - "label": "GCS Datum Lisboa Bessel", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104106: { - "label": "GCS Datum Lisboa Hayford", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104109: { - "label": "GCS Pohnpei", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104112: { - "label": "GCS Bab South", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104113: { - "label": "GCS Majuro", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104115: { - "label": "GCS ITRF 1988", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104116: { - "label": "GCS ITRF 1989", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104117: { - "label": "GCS ITRF 1990", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104118: { - "label": "GCS ITRF 1991", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104119: { - "label": "GCS ITRF 1992", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104120: { - "label": "GCS ITRF 1993", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104121: { - "label": "GCS ITRF 1994", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104122: { - "label": "GCS ITRF 1996", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104123: { - "label": "GCS ITRF 1997", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104124: { - "label": "GCS ITRF 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104126: { - "label": "GCS Observatorio Meteorologico 1965", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104127: { - "label": "GCS Roma 1940", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104128: { - "label": "GCS Sphere EMEP", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104129: { - "label": "GCS EUREF FIN", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104130: { - "label": "GCS Jordan", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104131: { - "label": "GCS D48", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104134: { - "label": "GCS MONREF 1997", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104135: { - "label": "GCS MSK 1942", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104138: { - "label": "GCS Old Hawaiian Intl 1924", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104139: { - "label": "GCS Voirol 1875 Grad", - "defaultExtent": "{\"xmin\": -199.99998726760407, \"ymin\": -94.50125310140274, \"xmax\": 199.99998726760407, \"ymax\": 94.50125310140272}" - }, - 104140: { - "label": "GCS Voirol 1879 Grad", - "defaultExtent": "{\"xmin\": -199.99998726760407, \"ymin\": -94.50125310140274, \"xmax\": 199.99998726760407, \"ymax\": 94.50125310140272}" - }, - 104141: { - "label": "GCS CGRS 1993", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104145: { - "label": "GCS NAD 1983 2011", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104223: { - "label": "GCS NAD 1983 CORS96", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104256: { - "label": "GCS Nepal Nagarkot", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104257: { - "label": "GCS ITRF 2008", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104258: { - "label": "GCS ETRF 1989", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104259: { - "label": "GCS NAD 1983 PACP00", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104260: { - "label": "GCS NAD 1983 MARP00", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104261: { - "label": "GCS Merchich Degree", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104286: { - "label": "GCS NAD 1983 MA11", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104287: { - "label": "GCS NAD 1983 PA11", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104305: { - "label": "GCS Voirol Unifie 1960 Degree", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104700: { - "label": "GCS NAD 1983 HARN Adj MN Anoka", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104701: { - "label": "GCS NAD 1983 HARN Adj MN Becker", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104702: { - "label": "GCS NAD 1983 HARN Adj MN Beltrami North", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104703: { - "label": "GCS NAD 1983 HARN Adj MN Beltrami South", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104704: { - "label": "GCS NAD 1983 HARN Adj MN Benton", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104705: { - "label": "GCS NAD 1983 HARN Adj MN Big Stone", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104706: { - "label": "GCS NAD 1983 HARN Adj MN Blue Earth", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104707: { - "label": "GCS NAD 1983 HARN Adj MN Brown", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104708: { - "label": "GCS NAD 1983 HARN Adj MN Carlton", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104709: { - "label": "GCS NAD 1983 HARN Adj MN Carver", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104710: { - "label": "GCS NAD 1983 HARN Adj MN Cass North", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104711: { - "label": "GCS NAD 1983 HARN Adj MN Cass South", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104712: { - "label": "GCS NAD 1983 HARN Adj MN Chippewa", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104713: { - "label": "GCS NAD 1983 HARN Adj MN Chisago", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104714: { - "label": "GCS NAD 1983 HARN Adj MN Cook North", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104715: { - "label": "GCS NAD 1983 HARN Adj MN Cook South", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104716: { - "label": "GCS NAD 1983 HARN Adj MN Cottonwood", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104717: { - "label": "GCS NAD 1983 HARN Adj MN Crow Wing", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104718: { - "label": "GCS NAD 1983 HARN Adj MN Dakota", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104719: { - "label": "GCS NAD 1983 HARN Adj MN Dodge", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104720: { - "label": "GCS NAD 1983 HARN Adj MN Douglas", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104721: { - "label": "GCS NAD 1983 HARN Adj MN Faribault", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104722: { - "label": "GCS NAD 1983 HARN Adj MN Fillmore", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104723: { - "label": "GCS NAD 1983 HARN Adj MN Freeborn", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104724: { - "label": "GCS NAD 1983 HARN Adj MN Goodhue", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104725: { - "label": "GCS NAD 1983 HARN Adj MN Grant", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104726: { - "label": "GCS NAD 1983 HARN Adj MN Hennepin", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104727: { - "label": "GCS NAD 1983 HARN Adj MN Houston", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104728: { - "label": "GCS NAD 1983 HARN Adj MN Isanti", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104729: { - "label": "GCS NAD 1983 HARN Adj MN Itasca North", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104730: { - "label": "GCS NAD 1983 HARN Adj MN Itasca South", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104731: { - "label": "GCS NAD 1983 HARN Adj MN Jackson", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104732: { - "label": "GCS NAD 1983 HARN Adj MN Kanabec", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104733: { - "label": "GCS NAD 1983 HARN Adj MN Kandiyohi", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104734: { - "label": "GCS NAD 1983 HARN Adj MN Kittson", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104735: { - "label": "GCS NAD 1983 HARN Adj MN Koochiching", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104736: { - "label": "GCS NAD 1983 HARN Adj MN Lac Qui Parle", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104737: { - "label": "GCS NAD 1983 HARN Adj MN Lake of the Woods North", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104738: { - "label": "GCS NAD 1983 HARN Adj MN Lake of the Woods South", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104739: { - "label": "GCS NAD 1983 HARN Adj MN Le Sueur", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104740: { - "label": "GCS NAD 1983 HARN Adj MN Lincoln", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104741: { - "label": "GCS NAD 1983 HARN Adj MN Lyon", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104742: { - "label": "GCS NAD 1983 HARN Adj MN McLeod", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104743: { - "label": "GCS NAD 1983 HARN Adj MN Mahnomen", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104744: { - "label": "GCS NAD 1983 HARN Adj MN Marshall", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104745: { - "label": "GCS NAD 1983 HARN Adj MN Martin", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104746: { - "label": "GCS NAD 1983 HARN Adj MN Meeker", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104747: { - "label": "GCS NAD 1983 HARN Adj MN Morrison", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104748: { - "label": "GCS NAD 1983 HARN Adj MN Mower", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104749: { - "label": "GCS NAD 1983 HARN Adj MN Murray", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104750: { - "label": "GCS NAD 1983 HARN Adj MN Nicollet", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104751: { - "label": "GCS NAD 1983 HARN Adj MN Nobles", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104752: { - "label": "GCS NAD 1983 HARN Adj MN Norman", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104753: { - "label": "GCS NAD 1983 HARN Adj MN Olmsted", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104754: { - "label": "GCS NAD 1983 HARN Adj MN Ottertail", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104755: { - "label": "GCS NAD 1983 HARN Adj MN Pennington", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104756: { - "label": "GCS NAD 1983 HARN Adj MN Pine", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104757: { - "label": "GCS NAD 1983 HARN Adj MN Pipestone", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104758: { - "label": "GCS NAD 1983 HARN Adj MN Polk", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104759: { - "label": "GCS NAD 1983 HARN Adj MN Pope", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104760: { - "label": "GCS NAD 1983 HARN Adj MN Ramsey", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104761: { - "label": "GCS NAD 1983 HARN Adj MN Red Lake", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104762: { - "label": "GCS NAD 1983 HARN Adj MN Redwood", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104763: { - "label": "GCS NAD 1983 HARN Adj MN Renville", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104764: { - "label": "GCS NAD 1983 HARN Adj MN Rice", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104765: { - "label": "GCS NAD 1983 HARN Adj MN Rock", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104766: { - "label": "GCS NAD 1983 HARN Adj MN Roseau", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104767: { - "label": "GCS NAD 1983 HARN Adj MN St Louis North", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104768: { - "label": "GCS NAD 1983 HARN Adj MN St Louis Central", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104769: { - "label": "GCS NAD 1983 HARN Adj MN St Louis South", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104770: { - "label": "GCS NAD 1983 HARN Adj MN Scott", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104771: { - "label": "GCS NAD 1983 HARN Adj MN Sherburne", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104772: { - "label": "GCS NAD 1983 HARN Adj MN Sibley", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104773: { - "label": "GCS NAD 1983 HARN Adj MN Stearns", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104774: { - "label": "GCS NAD 1983 HARN Adj MN Steele", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104775: { - "label": "GCS NAD 1983 HARN Adj MN Stevens", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104776: { - "label": "GCS NAD 1983 HARN Adj MN Swift", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104777: { - "label": "GCS NAD 1983 HARN Adj MN Todd", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104778: { - "label": "GCS NAD 1983 HARN Adj MN Traverse", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104779: { - "label": "GCS NAD 1983 HARN Adj MN Wabasha", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104780: { - "label": "GCS NAD 1983 HARN Adj MN Wadena", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104781: { - "label": "GCS NAD 1983 HARN Adj MN Waseca", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104782: { - "label": "GCS NAD 1983 HARN Adj MN Watonwan", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104783: { - "label": "GCS NAD 1983 HARN Adj MN Winona", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104784: { - "label": "GCS NAD 1983 HARN Adj MN Wright", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104785: { - "label": "GCS NAD 1983 HARN Adj MN Yellow Medicine", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104786: { - "label": "GCS NAD 1983 HARN Adj MN St Louis", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104896: { - "label": "GCS ITRF 2005", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104900: { - "label": "GCS Mercury 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104901: { - "label": "GCS Venus 1985", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104902: { - "label": "GCS Venus 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104903: { - "label": "GCS Moon 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104904: { - "label": "GCS Mars 1979", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104905: { - "label": "GCS Mars 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104906: { - "label": "GCS Deimos 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104907: { - "label": "GCS Phobos 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104908: { - "label": "GCS Jupiter 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104909: { - "label": "GCS Adrastea 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104910: { - "label": "GCS Amalthea 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104911: { - "label": "GCS Ananke 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104912: { - "label": "GCS Callisto 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104913: { - "label": "GCS Carme 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104914: { - "label": "GCS Elara 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104915: { - "label": "GCS Europa 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104916: { - "label": "GCS Ganymede 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104917: { - "label": "GCS Himalia 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104918: { - "label": "GCS Io 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104919: { - "label": "GCS Leda 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104920: { - "label": "GCS Lysithea 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104921: { - "label": "GCS Metis 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104922: { - "label": "GCS Pasiphae 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104923: { - "label": "GCS Sinope 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104924: { - "label": "GCS Thebe 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104925: { - "label": "GCS Saturn 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104926: { - "label": "GCS Atlas 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104927: { - "label": "GCS Calypso 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104928: { - "label": "GCS Dione 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104929: { - "label": "GCS Enceladus 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104930: { - "label": "GCS Epimetheus 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104931: { - "label": "GCS Helene 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104932: { - "label": "GCS Hyperion 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104933: { - "label": "GCS Iapetus 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104934: { - "label": "GCS Janus 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104935: { - "label": "GCS Mimas 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104936: { - "label": "GCS Pan 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104937: { - "label": "GCS Pandora 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104938: { - "label": "GCS Phoebe 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104939: { - "label": "GCS Prometheus 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104940: { - "label": "GCS Rhea 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104941: { - "label": "GCS Telesto 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104942: { - "label": "GCS Tethys 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104943: { - "label": "GCS Titan 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104944: { - "label": "GCS Uranus 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104945: { - "label": "GCS Ariel 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104946: { - "label": "GCS Belinda 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104947: { - "label": "GCS Bianca 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104948: { - "label": "GCS Cordelia 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104949: { - "label": "GCS Cressida 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104950: { - "label": "GCS Desdemona 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104951: { - "label": "GCS Juliet 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104952: { - "label": "GCS Miranda 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104953: { - "label": "GCS Oberon 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104954: { - "label": "GCS Ophelia 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104955: { - "label": "GCS Portia 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104956: { - "label": "GCS Puck 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104957: { - "label": "GCS Rosalind 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104958: { - "label": "GCS Titania 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104959: { - "label": "GCS Umbriel 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104960: { - "label": "GCS Neptune 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104961: { - "label": "GCS Despina 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104962: { - "label": "GCS Galatea 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104963: { - "label": "GCS Larissa 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104964: { - "label": "GCS Naiad 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104965: { - "label": "GCS Nereid 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104966: { - "label": "GCS Proteus 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104967: { - "label": "GCS Thalassa 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104968: { - "label": "GCS Triton 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104969: { - "label": "GCS Pluto 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104970: { - "label": "GCS Charon 2000", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104990: { - "label": "GCS HD1909", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104991: { - "label": "GCS IGRS", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - }, - 104992: { - "label": "GCS MGI 1901", - "defaultExtent": "{\"xmin\": -179.9999885408437, \"ymin\": -85.05112779126247, \"xmax\": 179.9999885408437, \"ymax\": 85.05112779126246}" - } -}; diff --git a/src/components/solution-spatial-ref/test/solution-spatial-ref.e2e.ts b/src/components/solution-spatial-ref/test/solution-spatial-ref.e2e.ts index d95f6bbdd..edf45ed2f 100644 --- a/src/components/solution-spatial-ref/test/solution-spatial-ref.e2e.ts +++ b/src/components/solution-spatial-ref/test/solution-spatial-ref.e2e.ts @@ -14,22 +14,22 @@ * limitations under the License. */ -// import { newE2EPage } from '@stencil/core/testing'; +import { E2EPage, newE2EPage } from '@stencil/core/testing'; describe('solution-spatial-ref', () => { - it('renders', async () => { - //TEST commented out for now. - // need to work out how we pass translations - // e2e tests don't seem to support a similar apporach to the unit tests where we can use template to load JSX - // could flatten the translations further so it would contain no sub groups - // could set default translations for each file - // and could still have a test to compare the default with the actual as a way to verify - expect("a").toEqual("a"); - // const page = await newE2EPage(); - // await page.setContent(''); + let page: E2EPage; + beforeEach(async () => { + page = await newE2EPage(); + }); - // const element = await page.find('solution-spatial-ref'); - // expect(element).toHaveClass('hydrated'); + it('renders', async () => { + await page.setContent(''); + + const solution_spatial_ref = await page.find('solution-spatial-ref'); + expect(solution_spatial_ref).toHaveClass('hydrated'); + expect(await solution_spatial_ref.getProperty('defaultWkid')).toBe(102100); + expect(await solution_spatial_ref.getProperty('value')).toBe('102100'); }); + }); \ No newline at end of file diff --git a/src/components/solution-spatial-ref/test/solution-spatial-ref.spec.tsx b/src/components/solution-spatial-ref/test/solution-spatial-ref.spec.tsx index dcb1ae5a8..9f41d8c8b 100644 --- a/src/components/solution-spatial-ref/test/solution-spatial-ref.spec.tsx +++ b/src/components/solution-spatial-ref/test/solution-spatial-ref.spec.tsx @@ -14,13 +14,19 @@ * limitations under the License. */ +import * as locale from '../../../utils/locale'; +import state from "../../../utils/solution-store"; +import { h } from '@stencil/core'; import { newSpecPage } from '@stencil/core/testing'; import { SolutionSpatialRef } from '../solution-spatial-ref'; -import { h } from '@stencil/core'; -import state from "../../../utils/solution-store"; -xdescribe('solution-spatial-ref', () => { +describe('solution-spatial-ref', () => { + beforeEach(() => { + jest.spyOn(locale, 'getLocaleComponentStrings').mockImplementation( + () => Promise.resolve([{"spatialReferencePlaceholder": "Search for spatial reference using name or WKID"}, "en"]) + ); + state._testAccess("_emptyTheStore"); state.setStoreInfo("spatialReferenceInfo", { enabled: true, @@ -31,6 +37,11 @@ xdescribe('solution-spatial-ref', () => { spatialReference: undefined }); }); + + afterEach(() => { + jest.clearAllMocks(); + }); + it('renders', async () => { const page = await newSpecPage({ components: [SolutionSpatialRef], @@ -40,175 +51,35 @@ xdescribe('solution-spatial-ref', () => { ) }); expect(page.root).toEqualHtml(` - - -
- Select the spatial reference of the feature layers deployed with the solution. - - -
- -
- -
- WGS 1984 Web Mercator Auxiliary Sphere (102100) -
-
-
-
+ +
+
+
-
- - - + +
+ + + +
+ + + +
`); }); - it('creates description for known WKID', async () => { - await newSpecPage({ - components: [SolutionSpatialRef], - template: () => ( - - ) - }); - const component = document.querySelector('solution-spatial-ref'); - component.wkidToDisplay(4326) - .then( - result => expect(result).toEqual('GCS WGS 1984 (4326)') - ); - }); - - it('creates description for unknown WKID', async () => { - await newSpecPage({ - components: [SolutionSpatialRef], - template: () => ( - - ) - }); - const component = document.querySelector('solution-spatial-ref'); - component.wkidToDisplay(0) - .then( - result => expect(result).toEqual('WKID 0') - ); - }); - - it('creates description for default component value', async () => { - await newSpecPage({ - components: [SolutionSpatialRef], - template: () => ( - - ) - }); - const component = document.querySelector('solution-spatial-ref'); - component.createSpatialRefDisplay(null) - .then( - result => { - expect(result.display).toEqual('WGS 1984 Web Mercator Auxiliary Sphere (102100)'); - expect(result.usingWkid).toBeTruthy(); - expect(result.wkid).toEqual(102100); - expect(result.wkt).toEqual(''); - } - ); - }); - - it('creates description for WKID component value', async () => { - await newSpecPage({ - components: [SolutionSpatialRef], - template: () => ( - - ) - }); - const component = document.querySelector('solution-spatial-ref'); - component.createSpatialRefDisplay("4151") - .then( - result => { - expect(result.display).toEqual('GCS Swiss TRF 1995 (4151)'); - expect(result.usingWkid).toBeTruthy(); - expect(result.wkid).toEqual(4151); - expect(result.wkt).toEqual(''); - } - ); - }); - - it('creates description for WKT component value', async () => { - await newSpecPage({ - components: [SolutionSpatialRef], - template: () => ( - - ) - }); - const component = document.querySelector('solution-spatial-ref'); - component.createSpatialRefDisplay('PROJCS["Germany_Zone_5",GEOGCS["GCS_Deutsches_Hauptdreiecksnetz",DATUM["D_Deutsches_Hauptdreiecksnetz",SPHEROID["Bessel_1841",6377397.155,299.1528128]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",5500000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",15.0],PARAMETER["Scale_Factor",1.0],PARAMETER["Latitude_Of_Origin",0.0],UNIT["Meter",1.0]]') - .then( - result => { - expect(result.display).toEqual('PROJCS["Germany_Zone_5",GEOGCS["GCS_Deutsches_Hauptdreiecksnetz",DATUM["D_Deutsches_Hauptdreiecksnetz",SPHEROID["Bessel_1841",6377397.155,299.1528128]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",5500000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",15.0],PARAMETER["Scale_Factor",1.0],PARAMETER["Latitude_Of_Origin",0.0],UNIT["Meter",1.0]]'); - expect(result.usingWkid).toBeFalsy(); - expect(result.wkid).toEqual(0); - expect(result.wkt).toEqual('PROJCS["Germany_Zone_5",GEOGCS["GCS_Deutsches_Hauptdreiecksnetz",DATUM["D_Deutsches_Hauptdreiecksnetz",SPHEROID["Bessel_1841",6377397.155,299.1528128]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",5500000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",15.0],PARAMETER["Scale_Factor",1.0],PARAMETER["Latitude_Of_Origin",0.0],UNIT["Meter",1.0]]'); - } - ); - }); - - it('sets default component value', async () => { - await newSpecPage({ - components: [SolutionSpatialRef], - template: () => ( - - ) - }); - const component = document.querySelector('solution-spatial-ref'); - component.getSpatialRef() - .then( - result => { - expect(result.display).toEqual('WGS 1984 Web Mercator Auxiliary Sphere (102100)'); - expect(result.usingWkid).toBeTruthy(); - expect(result.wkid).toEqual(102100); - expect(result.wkt).toEqual(''); - } - ); - }); - - it('sets WKID component value', async () => { - await newSpecPage({ - components: [SolutionSpatialRef], - template: () => ( - - ) - }); - const component = document.querySelector('solution-spatial-ref'); - component.getSpatialRef() - .then( - result => { - expect(result.display).toEqual('GCS Swiss TRF 1995 (4151)'); - expect(result.usingWkid).toBeTruthy(); - expect(result.wkid).toEqual(4151); - expect(result.wkt).toEqual(''); - } - ); - }); - - it('sets WKT component value', async () => { - const v: string = `PROJCS["Germany_Zone_5",GEOGCS["GCS_Deutsches_Hauptdreiecksnetz",DATUM["D_Deutsches_Hauptdreiecksnetz",SPHEROID["Bessel_1841",6377397.155,299.1528128]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",5500000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",15.0],PARAMETER["Scale_Factor",1.0],PARAMETER["Latitude_Of_Origin",0.0],UNIT["Meter",1.0]]`; - await newSpecPage({ - components: [SolutionSpatialRef], - template: () => ( - - ) - }); - const component = document.querySelector('solution-spatial-ref'); - component.getSpatialRef() - .then( - result => { - expect(result.display).toEqual('PROJCS["Germany_Zone_5",GEOGCS["GCS_Deutsches_Hauptdreiecksnetz",DATUM["D_Deutsches_Hauptdreiecksnetz",SPHEROID["Bessel_1841",6377397.155,299.1528128]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",5500000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",15.0],PARAMETER["Scale_Factor",1.0],PARAMETER["Latitude_Of_Origin",0.0],UNIT["Meter",1.0]]'); - expect(result.usingWkid).toBeFalsy(); - expect(result.wkid).toEqual(0); - expect(result.wkt).toEqual('PROJCS["Germany_Zone_5",GEOGCS["GCS_Deutsches_Hauptdreiecksnetz",DATUM["D_Deutsches_Hauptdreiecksnetz",SPHEROID["Bessel_1841",6377397.155,299.1528128]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",5500000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",15.0],PARAMETER["Scale_Factor",1.0],PARAMETER["Latitude_Of_Origin",0.0],UNIT["Meter",1.0]]'); - } - ); - }); -}); \ No newline at end of file +}); diff --git a/src/components/spatial-ref/readme.md b/src/components/spatial-ref/readme.md index 1080e5802..b4ab2ad97 100644 --- a/src/components/spatial-ref/readme.md +++ b/src/components/spatial-ref/readme.md @@ -7,10 +7,11 @@ ## Properties -| Property | Attribute | Description | Type | Default | -| ------------- | -------------- | ------------------------------------------------------------------------------- | -------- | ----------------------------- | -| `defaultWkid` | `default-wkid` | The wkid that will be used as the default when no user selection has been made. | `number` | `102100` | -| `value` | `value` | Contains the public value for this component, which is a wkid or a wkt. | `string` | `this.defaultWkid.toString()` | +| Property | Attribute | Description | Type | Default | +| ------------- | -------------- | ------------------------------------------------------------------------------- | --------- | ----------------------------- | +| `defaultWkid` | `default-wkid` | The wkid that will be used as the default when no user selection has been made. | `number` | `102100` | +| `disabled` | `disabled` | When true, all are disabled to prevent interaction. | `boolean` | `false` | +| `value` | `value` | Contains the public value for this component, which is a wkid or a wkt. | `string` | `this.defaultWkid.toString()` | ## Events @@ -58,6 +59,10 @@ Description, or "WKID <wkid>" if a description doesn't exist for the WKID ## Dependencies +### Used by + + - [solution-spatial-ref](../solution-spatial-ref) + ### Depends on - calcite-input @@ -74,6 +79,7 @@ graph TD; calcite-input --> calcite-icon calcite-tree-item --> calcite-icon calcite-tree-item --> calcite-checkbox + solution-spatial-ref --> spatial-ref style spatial-ref fill:#f9f,stroke:#333,stroke-width:4px ``` diff --git a/src/components/spatial-ref/spatial-ref.tsx b/src/components/spatial-ref/spatial-ref.tsx index 8bfb44ab3..97689debb 100644 --- a/src/components/spatial-ref/spatial-ref.tsx +++ b/src/components/spatial-ref/spatial-ref.tsx @@ -48,6 +48,11 @@ export class SpatialRef { */ @Prop({ mutable: true, reflect: true }) defaultWkid = 102100; + /** + * When true, all are disabled to prevent interaction. + */ + @Prop({ mutable: true, reflect: true }) disabled = false; + /** * Contains the public value for this component, which is a wkid or a wkt. */ @@ -88,6 +93,7 @@ export class SpatialRef {
this._searchInputKeyDown(evt)} placeholder={this._translations.spatialReferencePlaceholder} diff --git a/src/demos/solution-spatial-ref.html b/src/demos/solution-spatial-ref.html index 212ab5888..f26f4c88b 100644 --- a/src/demos/solution-spatial-ref.html +++ b/src/demos/solution-spatial-ref.html @@ -19,44 +19,37 @@ | See the License for the specific language governing permissions and | limitations under the License. --> - - -

Demo Solution Spatial Reference

- +
+ + From f0ace7b54162312facadeca2b4c4ebc230c4a6d6 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Tue, 17 Oct 2023 11:33:32 -0600 Subject: [PATCH 361/406] don't show the zoom tools over the map --- src/components/crowdsource-manager/crowdsource-manager.tsx | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/components/crowdsource-manager/crowdsource-manager.tsx b/src/components/crowdsource-manager/crowdsource-manager.tsx index 5350a6011..b3736ac27 100644 --- a/src/components/crowdsource-manager/crowdsource-manager.tsx +++ b/src/components/crowdsource-manager/crowdsource-manager.tsx @@ -653,6 +653,9 @@ export class CrowdsourceManager { protected _setMapView(): void { this._mapInfo = this._getMapInfo(this._mapChange.id); this._mapView = this._mapChange.mapView; + if (!this.enableZoom && this._mapView?.ui?.components.indexOf("zoom") > -1) { + this._mapView.ui.components = this._mapView.ui.components.filter(c => c !== "zoom"); + } this._mapView.popupEnabled = false; } From ba758ca488e92ee3db4faf8bc2759dec7462cfde Mon Sep 17 00:00:00 2001 From: John Hauck Date: Tue, 17 Oct 2023 11:52:56 -0600 Subject: [PATCH 362/406] don't enable tools when we have no records --- src/components/layer-table/layer-table.tsx | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/components/layer-table/layer-table.tsx b/src/components/layer-table/layer-table.tsx index 0f28e7f75..3af1cd92b 100644 --- a/src/components/layer-table/layer-table.tsx +++ b/src/components/layer-table/layer-table.tsx @@ -578,6 +578,7 @@ export class LayerTable { */ protected _initToolInfos(): void { const featuresSelected = this._selectedIndexes.length > 0; + const featuresEmpty = this._allIds.length === 0; this._toolInfos = [this.enableZoom ? { icon: "zoom-to-object", label: this._translations.zoom, @@ -615,13 +616,13 @@ export class LayerTable { icon: "list-check-all", func: () => this._selectAll(), label: this._translations.selectAll, - disabled: false, + disabled: featuresEmpty, isOverflow: false }, { icon: "compare", func: () => this._switchSelected(), label: this._translations.switchSelected, - disabled: false, + disabled: featuresEmpty, isOverflow: false }, { icon: "refresh", @@ -634,7 +635,7 @@ export class LayerTable { icon: "export", func: () => void this._exportToCSV(), label: this._translations.exportCSV, - disabled: false, + disabled: featuresEmpty, isOverflow: false } : undefined]; From e362c24165b7c7b586c56c26cc4381470aeb11a9 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Tue, 17 Oct 2023 13:35:40 -0600 Subject: [PATCH 363/406] update version --- CHANGELOG.md | 5 ++++- package-lock.json | 4 ++-- package.json | 2 +- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 048d6e9a6..52317b8c1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,8 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm ## [Unreleased] +## [0.6.34] - Oct 17th 2023 + ## [0.6.33] - Oct 13th 2023 ## [0.6.32] - Oct 12th 2023 @@ -280,4 +282,5 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm [0.6.31]: https://github.com/Esri/solution.js/compare/v0.6.30...v0.6.31 "v0.6.31" [0.6.32]: https://github.com/Esri/solution.js/compare/v0.6.31...v0.6.32 "v0.6.32" [0.6.33]: https://github.com/Esri/solution.js/compare/v0.6.32...v0.6.33 "v0.6.33" -[Unreleased]: https://github.com/Esri/solution.js/compare/v0.6.33...HEAD "Unreleased Changes" +[0.6.34]: https://github.com/Esri/solution.js/compare/v0.6.33...v0.6.34 "v0.6.34" +[Unreleased]: https://github.com/Esri/solution.js/compare/v0.6.34...HEAD "Unreleased Changes" diff --git a/package-lock.json b/package-lock.json index 5e4c8034f..f5eae0510 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@esri/solutions-components", - "version": "0.6.33", + "version": "0.6.34", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@esri/solutions-components", - "version": "0.6.33", + "version": "0.6.34", "license": "Apache-2.0", "dependencies": { "@esri/arcgis-rest-auth": "^3.4.2", diff --git a/package.json b/package.json index 3e3674999..a2c6db5da 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@esri/solutions-components", - "version": "0.6.33", + "version": "0.6.34", "description": "Web Components for Esri's Solutions Applications", "main": "dist/index.cjs.js", "module": "dist/index.js", From e90561d5c7dd9076770e98b476e30127d85a0dc6 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Thu, 19 Oct 2023 11:27:23 -0600 Subject: [PATCH 364/406] support config time changes for tools --- .../crowdsource-manager.tsx | 31 ++++++++-- src/components/layer-table/layer-table.tsx | 58 +++++++++++++++++-- src/components/map-card/map-card.tsx | 39 ++++++++++--- 3 files changed, 111 insertions(+), 17 deletions(-) diff --git a/src/components/crowdsource-manager/crowdsource-manager.tsx b/src/components/crowdsource-manager/crowdsource-manager.tsx index b3736ac27..b71b0a2fb 100644 --- a/src/components/crowdsource-manager/crowdsource-manager.tsx +++ b/src/components/crowdsource-manager/crowdsource-manager.tsx @@ -14,7 +14,7 @@ * limitations under the License. */ -import { Component, Element, Host, h, Listen, Prop, State, VNode } from "@stencil/core"; +import { Component, Element, Host, h, Listen, Prop, State, VNode, Watch } from "@stencil/core"; import CrowdsourceManager_T9n from "../../assets/t9n/crowdsource-manager/resources.json"; import { getLocaleComponentStrings } from "../../utils/locale"; import { ELayoutMode, IBasemapConfig, IMapChange, IMapInfo, ISearchConfiguration } from "../../utils/interfaces"; @@ -193,6 +193,14 @@ export class CrowdsourceManager { // //-------------------------------------------------------------------------- + /** + * When true the map zoom tools will be available + */ + @Watch("enableZoom") + enableZoomWatchHandler(): void { + this._initMapZoom(); + } + //-------------------------------------------------------------------------- // // Methods (public) @@ -653,12 +661,27 @@ export class CrowdsourceManager { protected _setMapView(): void { this._mapInfo = this._getMapInfo(this._mapChange.id); this._mapView = this._mapChange.mapView; - if (!this.enableZoom && this._mapView?.ui?.components.indexOf("zoom") > -1) { - this._mapView.ui.components = this._mapView.ui.components.filter(c => c !== "zoom"); - } + this._initMapZoom(); this._mapView.popupEnabled = false; } + /** + * Add/remove zoom tools based on enableZoom prop + * + * @protected + */ + protected _initMapZoom(): void { + if (!this.enableZoom) { + this._mapView.ui.remove("zoom"); + } else if (this.enableZoom) { + this._mapView.ui.add({ + component: "zoom", + position: "top-left", + index: 0 + }); + } + } + /** * Fetches the component's translations * diff --git a/src/components/layer-table/layer-table.tsx b/src/components/layer-table/layer-table.tsx index 3af1cd92b..98f1e6595 100644 --- a/src/components/layer-table/layer-table.tsx +++ b/src/components/layer-table/layer-table.tsx @@ -231,6 +231,36 @@ export class LayerTable { // //-------------------------------------------------------------------------- + /** + * Reset the toolInfos when zoom tool is enabled/disabled + */ + @Watch("enableZoom") + enableZoomWatchHandler(): void { + if (this._toolInfos?.length > 0) { + this._initToolInfos(); + } + } + + /** + * Reset the toolInfos when export csv is enabled/disabled + */ + @Watch("enableCSV") + enableCSVWatchHandler(): void { + if (this._toolInfos?.length > 0) { + this._initToolInfos(); + } + } + + /** + * Update the table when enableInlineEdit is enabled/disabled + */ + @Watch("enableInlineEdit") + enableInlineEditWatchHandler(): void { + if (this._table) { + this._table.editingEnabled = this._editEnabled && this.enableInlineEdit; + } + } + /** * watch for changes to the list of controls that will currently fit in the display */ @@ -555,7 +585,7 @@ export class LayerTable { * @returns void */ _validateEnabledActions(): void { - const featuresSelected = this._selectedIndexes.length > 0; + const featuresSelected = this._featuresSelected(); const selectionDependant = [ "zoom-to-object", "trash", @@ -577,8 +607,8 @@ export class LayerTable { * @returns void */ protected _initToolInfos(): void { - const featuresSelected = this._selectedIndexes.length > 0; - const featuresEmpty = this._allIds.length === 0; + const featuresSelected = this._featuresSelected(); + const featuresEmpty = this._featuresEmpty(); this._toolInfos = [this.enableZoom ? { icon: "zoom-to-object", label: this._translations.zoom, @@ -642,6 +672,24 @@ export class LayerTable { this._defaultVisibleToolSizeInfos = undefined; } + /** + * Returns true when one ore more features are selected + * + * @returns boolean + */ + protected _featuresSelected(): boolean { + return this._selectedIndexes.length > 0; + } + + /** + * Return true when we have no features + * + * @returns boolean + */ + protected _featuresEmpty(): boolean { + return this._allIds.length === 0; + } + /** * Add/Remove tools from the action bar and dropdown based on available size * @@ -996,7 +1044,7 @@ export class LayerTable { // https://github.com/Esri/solutions-components/issues/365 this._selectedIndexes = this._table.highlightIds.toArray().reverse(); if (this._showOnlySelected) { - if (this._selectedIndexes.length > 0) { + if (this._featuresSelected()) { this._table.filterBySelection(); } else { this._toggleShowSelected(); @@ -1304,7 +1352,7 @@ export class LayerTable { evt: CustomEvent ): Promise { const id: string = evt.detail[0]; - if (id !== this._layer?.id || this._allIds.length === 0) { + if (id !== this._layer?.id || this._featuresEmpty()) { this._fetchingData = true; const layer = await getLayerOrTable(this.mapView, id); await layer.when(() => { diff --git a/src/components/map-card/map-card.tsx b/src/components/map-card/map-card.tsx index 291d3bf05..92185b49d 100644 --- a/src/components/map-card/map-card.tsx +++ b/src/components/map-card/map-card.tsx @@ -14,7 +14,7 @@ * limitations under the License. */ -import { Component, Element, Event, EventEmitter, Host, h, Listen, Prop, State } from "@stencil/core"; +import { Component, Element, Event, EventEmitter, Host, h, Listen, Prop, State, Watch } from "@stencil/core"; import { loadModules } from "../../utils/loadModules"; import { IBasemapConfig, IMapChange, IMapInfo, ISearchConfiguration } from "../../utils/interfaces"; @@ -132,6 +132,11 @@ export class MapCard { */ protected WebMap: typeof import("esri/WebMap"); + /** + * esri/widgets/Home: https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Home.html + */ + protected _homeWidget: __esri.Home; + /** * string: the id of map currently displayed */ @@ -153,6 +158,14 @@ export class MapCard { // //-------------------------------------------------------------------------- + /** + * Add/remove home widget + */ + @Watch("enableHome") + enableHomeWatchHandler(): void { + this._initHome(); + } + //-------------------------------------------------------------------------- // // Methods (public) @@ -283,14 +296,8 @@ export class MapCard { this.beforeMapChanged.emit(); await this.mapView.when(() => { - if (this.enableHome) { - const home = new this.Home({ - view: this.mapView - }); - this.mapView.ui.add(home, { position: "top-left", index: 3 }); - } + this._initHome(); this.mapView.ui.add(this._mapTools, { position: "top-right", index: 0}); - this.mapChanged.emit({ id: id, mapView: this.mapView @@ -299,4 +306,20 @@ export class MapCard { } } + /** + * Add/remove the home widget base on enableHome prop + * + * @protected + */ + protected _initHome(): void { + if (this.enableHome) { + this._homeWidget = new this.Home({ + view: this.mapView + }); + this.mapView.ui.add(this._homeWidget, { position: "top-left", index: 3 }); + } else if (this._homeWidget){ + this.mapView.ui.remove(this._homeWidget); + } + } + } From db43dcd414a0a7a65c8785b5a7ce9d44ef333c9c Mon Sep 17 00:00:00 2001 From: John Hauck Date: Thu, 19 Oct 2023 11:44:14 -0600 Subject: [PATCH 365/406] prevent edit of related feature geometry --- src/components/edit-card/edit-card.tsx | 18 ++++++++++++------ src/utils/mapViewUtils.ts | 20 ++++++++++++++++++++ 2 files changed, 32 insertions(+), 6 deletions(-) diff --git a/src/components/edit-card/edit-card.tsx b/src/components/edit-card/edit-card.tsx index cf9f56a69..c871ef5de 100644 --- a/src/components/edit-card/edit-card.tsx +++ b/src/components/edit-card/edit-card.tsx @@ -18,6 +18,7 @@ import { Component, Element, Event, EventEmitter, Host, h, Listen, Prop, State, import { loadModules } from "../../utils/loadModules"; import EditCard_T9n from "../../assets/t9n/edit-card/resources.json" import { getLocaleComponentStrings } from "../../utils/locale"; +import { getAllLayers } from "../../utils/mapViewUtils"; @Component({ tag: 'edit-card', @@ -164,7 +165,7 @@ export class EditCard { async openWatchHandler(v: boolean): Promise { if (v && this.graphics?.length > 0 && this.graphicIndex > -1) { this._editorLoading = true; - this._initEditorWidget(); + await this._initEditorWidget(); if (this.graphicIndex > -1 && this.graphics.length > 0 && this.open && !this._shouldClose) { await this._startUpdate(); } @@ -305,19 +306,24 @@ export class EditCard { * * @returns void */ - protected _initEditorWidget(): void { + protected async _initEditorWidget(): Promise { if (this.mapView && this.graphics && this.graphics.length > 0 && this.graphics[0]) { if (this._editor) { this._editor.destroy() } const container = document.createElement("div"); + const layers = await getAllLayers(this.mapView) + const layerInfos = layers.map(layer => { + return { + layer, + geometryUpdatesEnabled: false, + addEnabled: false + } as __esri.LayerInfo + }); this._editor = new this.Editor({ allowedWorkflows: "update", view: this.mapView, - layerInfos: [{ - layer: this._layer, - geometryUpdatesEnabled: false - }], + layerInfos, visibleElements: { snappingControls: false, sketchTooltipControls: false diff --git a/src/utils/mapViewUtils.ts b/src/utils/mapViewUtils.ts index 09f90c3ac..896049466 100644 --- a/src/utils/mapViewUtils.ts +++ b/src/utils/mapViewUtils.ts @@ -155,6 +155,26 @@ export async function getLayerOrTable( return layers.length > 0 ? layers[0] : undefined; } +/** + * Gets all of the layers from the current map when the map and their layerView is ready + * + * @param mapView the map view to fetch the layer names from + * + * @returns Promise resolving with an array of all layers + * + */ +export async function getAllLayers( + mapView: __esri.MapView +): Promise<__esri.Layer[]> { + const layers = mapView.map.allLayers.toArray(); + let layerViewPromises; + await mapView.when(() => { + layerViewPromises = layers.map(l => mapView.whenLayerView(l)); + }); + await Promise.allSettled(layerViewPromises); + return layers; +} + /** * Highlight features by OID * From 4e2977299802573f6558d55541690b8da39d0f5c Mon Sep 17 00:00:00 2001 From: John Hauck Date: Thu, 19 Oct 2023 12:38:43 -0600 Subject: [PATCH 366/406] prevent add related record --- src/components/edit-card/edit-card.tsx | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/src/components/edit-card/edit-card.tsx b/src/components/edit-card/edit-card.tsx index c871ef5de..9ed0d2f2b 100644 --- a/src/components/edit-card/edit-card.tsx +++ b/src/components/edit-card/edit-card.tsx @@ -87,6 +87,11 @@ export class EditCard { */ protected _activeWorkflowHandle: __esri.WatchHandle; + /** + * esri/core/Accessor: https://developers.arcgis.com/javascript/latest/api-reference/esri-core-Accessor.html#WatchHandle + */ + protected _addRelatedRecordHandle: __esri.WatchHandle; + /** * esri/core/Accessor: https://developers.arcgis.com/javascript/latest/api-reference/esri-core-Accessor.html#WatchHandle */ @@ -335,6 +340,7 @@ export class EditCard { this._editHandle.remove(); this._attachmentHandle.remove(); this._activeWorkflowHandle.remove(); + this._addRelatedRecordHandle.remove(); } this._attachmentHandle = this.reactiveUtils.when( @@ -366,6 +372,16 @@ export class EditCard { } ); + // Temp workaround until a new prop is added at 4.29 + this._addRelatedRecordHandle = this.reactiveUtils.when( + () => !!(this._editor.viewModel.featureFormViewModel as any).relatedRecordCallbacks, + () => { + (this._editor.viewModel.featureFormViewModel as any).relatedRecordCallbacks.addRelatedRecord = null; + }, { + once: true + } + ); + // had issues with destroy before adding like this this._editContainer.appendChild(container); } From c01bccc1b57c6660095d3518c3cce417972dd3b3 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Thu, 19 Oct 2023 13:13:12 -0600 Subject: [PATCH 367/406] update version --- CHANGELOG.md | 5 ++++- package-lock.json | 4 ++-- package.json | 2 +- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 52317b8c1..f82b2065c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,8 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm ## [Unreleased] +## [0.6.35] - Oct 19th 2023 + ## [0.6.34] - Oct 17th 2023 ## [0.6.33] - Oct 13th 2023 @@ -283,4 +285,5 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm [0.6.32]: https://github.com/Esri/solution.js/compare/v0.6.31...v0.6.32 "v0.6.32" [0.6.33]: https://github.com/Esri/solution.js/compare/v0.6.32...v0.6.33 "v0.6.33" [0.6.34]: https://github.com/Esri/solution.js/compare/v0.6.33...v0.6.34 "v0.6.34" -[Unreleased]: https://github.com/Esri/solution.js/compare/v0.6.34...HEAD "Unreleased Changes" +[0.6.35]: https://github.com/Esri/solution.js/compare/v0.6.34...v0.6.35 "v0.6.35" +[Unreleased]: https://github.com/Esri/solution.js/compare/v0.6.35...HEAD "Unreleased Changes" diff --git a/package-lock.json b/package-lock.json index f5eae0510..26fac7a68 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@esri/solutions-components", - "version": "0.6.34", + "version": "0.6.35", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@esri/solutions-components", - "version": "0.6.34", + "version": "0.6.35", "license": "Apache-2.0", "dependencies": { "@esri/arcgis-rest-auth": "^3.4.2", diff --git a/package.json b/package.json index a2c6db5da..c2a1562a3 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@esri/solutions-components", - "version": "0.6.34", + "version": "0.6.35", "description": "Web Components for Esri's Solutions Applications", "main": "dist/index.cjs.js", "module": "dist/index.js", From 460295d52c675c8f893cb4f9974926b4265d82c1 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 19 Oct 2023 19:14:18 +0000 Subject: [PATCH 368/406] Bump @babel/traverse from 7.22.10 to 7.23.2 Bumps [@babel/traverse](https://github.com/babel/babel/tree/HEAD/packages/babel-traverse) from 7.22.10 to 7.23.2. - [Release notes](https://github.com/babel/babel/releases) - [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md) - [Commits](https://github.com/babel/babel/commits/v7.23.2/packages/babel-traverse) --- updated-dependencies: - dependency-name: "@babel/traverse" dependency-type: indirect ... Signed-off-by: dependabot[bot] --- package-lock.json | 180 +++++++++++++++++++++++----------------------- 1 file changed, 90 insertions(+), 90 deletions(-) diff --git a/package-lock.json b/package-lock.json index 26fac7a68..1a987fc96 100644 --- a/package-lock.json +++ b/package-lock.json @@ -90,12 +90,12 @@ } }, "node_modules/@babel/code-frame": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.10.tgz", - "integrity": "sha512-/KKIMG4UEL35WmI9OlvMhurwtytjvXoFcGNrOvyG9zIzA8YmPjVtIZUf7b05+TPO7G7/GEmLHDaoCgACHl9hhA==", + "version": "7.22.13", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.13.tgz", + "integrity": "sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w==", "dev": true, "dependencies": { - "@babel/highlight": "^7.22.10", + "@babel/highlight": "^7.22.13", "chalk": "^2.4.2" }, "engines": { @@ -258,12 +258,12 @@ } }, "node_modules/@babel/generator": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.22.10.tgz", - "integrity": "sha512-79KIf7YiWjjdZ81JnLujDRApWtl7BxTqWD88+FFdQEIOG8LJ0etDOM7CXuIgGJa55sGOwZVwuEsaLEm0PJ5/+A==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.0.tgz", + "integrity": "sha512-lN85QRR+5IbYrMWM6Y4pE/noaQtg4pNiqeNGX60eqOfo6gtEj6uw/JagelB8vVztSd7R6M5n1+PQkDbHbBRU4g==", "dev": true, "dependencies": { - "@babel/types": "^7.22.10", + "@babel/types": "^7.23.0", "@jridgewell/gen-mapping": "^0.3.2", "@jridgewell/trace-mapping": "^0.3.17", "jsesc": "^2.5.1" @@ -427,22 +427,22 @@ } }, "node_modules/@babel/helper-environment-visitor": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.5.tgz", - "integrity": "sha512-XGmhECfVA/5sAt+H+xpSg0mfrHq6FzNr9Oxh7PSEBBRUb/mL7Kz3NICXb194rCqAEdxkhPT1a88teizAFyvk8Q==", + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz", + "integrity": "sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-function-name": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.22.5.tgz", - "integrity": "sha512-wtHSq6jMRE3uF2otvfuD3DIvVhOsSNshQl0Qrd7qC9oQJzHvOL4qQXlQn2916+CXGywIjpGuIkoyZRRxHPiNQQ==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz", + "integrity": "sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==", "dev": true, "dependencies": { - "@babel/template": "^7.22.5", - "@babel/types": "^7.22.5" + "@babel/template": "^7.22.15", + "@babel/types": "^7.23.0" }, "engines": { "node": ">=6.9.0" @@ -604,9 +604,9 @@ } }, "node_modules/@babel/helper-validator-identifier": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.5.tgz", - "integrity": "sha512-aJXu+6lErq8ltp+JhkJUfk1MTGyuA4v7f3pA+BJ5HLfNC6nAQ0Cpi9uOquUj8Hehg0aUiHzWQbOVJGao6ztBAQ==", + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz", + "integrity": "sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==", "dev": true, "engines": { "node": ">=6.9.0" @@ -650,12 +650,12 @@ } }, "node_modules/@babel/highlight": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.10.tgz", - "integrity": "sha512-78aUtVcT7MUscr0K5mIEnkwxPE0MaxkR5RxRwuHaQ+JuU5AmTPhY+do2mdzVTnIJJpyBglql2pehuBIWHug+WQ==", + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.20.tgz", + "integrity": "sha512-dkdMCN3py0+ksCgYmGG8jKeGA/8Tk+gJwSYYlFGxG5lmhfKNoAy004YpLxpS1W2J8m/EK2Ew+yOs9pVRwO89mg==", "dev": true, "dependencies": { - "@babel/helper-validator-identifier": "^7.22.5", + "@babel/helper-validator-identifier": "^7.22.20", "chalk": "^2.4.2", "js-tokens": "^4.0.0" }, @@ -735,9 +735,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.22.10.tgz", - "integrity": "sha512-lNbdGsQb9ekfsnjFGhEiF4hfFqGgfOP3H3d27re3n+CGhNuTSUEQdfWk556sTLNTloczcdM5TYF2LhzmDQKyvQ==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.0.tgz", + "integrity": "sha512-vvPKKdMemU85V9WE/l5wZEmImpCtLqbnTvqDS2U1fJ96KrxoW7KrXhNsNCblQlg8Ck4b85yxdTyelsMUgFUXiw==", "dev": true, "bin": { "parser": "bin/babel-parser.js" @@ -2025,33 +2025,33 @@ "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==" }, "node_modules/@babel/template": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.5.tgz", - "integrity": "sha512-X7yV7eiwAxdj9k94NEylvbVHLiVG1nvzCV2EAowhxLTwODV1jl9UzZ48leOC0sH7OnuHrIkllaBgneUykIcZaw==", + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.15.tgz", + "integrity": "sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.22.5", - "@babel/parser": "^7.22.5", - "@babel/types": "^7.22.5" + "@babel/code-frame": "^7.22.13", + "@babel/parser": "^7.22.15", + "@babel/types": "^7.22.15" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/traverse": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.22.10.tgz", - "integrity": "sha512-Q/urqV4pRByiNNpb/f5OSv28ZlGJiFiiTh+GAHktbIrkPhPbl90+uW6SmpoLyZqutrg9AEaEf3Q/ZBRHBXgxig==", + "version": "7.23.2", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.2.tgz", + "integrity": "sha512-azpe59SQ48qG6nu2CzcMLbxUudtN+dOM9kDbUqGq3HXUJRlo7i8fvPoxQUzYgLZ4cMVmuZgm8vvBpNeRhd6XSw==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.22.10", - "@babel/generator": "^7.22.10", - "@babel/helper-environment-visitor": "^7.22.5", - "@babel/helper-function-name": "^7.22.5", + "@babel/code-frame": "^7.22.13", + "@babel/generator": "^7.23.0", + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-function-name": "^7.23.0", "@babel/helper-hoist-variables": "^7.22.5", "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/parser": "^7.22.10", - "@babel/types": "^7.22.10", + "@babel/parser": "^7.23.0", + "@babel/types": "^7.23.0", "debug": "^4.1.0", "globals": "^11.1.0" }, @@ -2069,13 +2069,13 @@ } }, "node_modules/@babel/types": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.22.10.tgz", - "integrity": "sha512-obaoigiLrlDZ7TUQln/8m4mSqIW2QFeOrCQc9r+xsaHGNoplVNYlRVpsfE8Vj35GEm2ZH4ZhrNYogs/3fj85kg==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.0.tgz", + "integrity": "sha512-0oIyUfKoI3mSqMvsxBdclDwxXKXAUA8v/apZbc+iSyARYou1o8ZGDxbUYyLFoW2arqS2jDGqJuZvv1d/io1axg==", "dev": true, "dependencies": { "@babel/helper-string-parser": "^7.22.5", - "@babel/helper-validator-identifier": "^7.22.5", + "@babel/helper-validator-identifier": "^7.22.20", "to-fast-properties": "^2.0.0" }, "engines": { @@ -14045,12 +14045,12 @@ } }, "@babel/code-frame": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.10.tgz", - "integrity": "sha512-/KKIMG4UEL35WmI9OlvMhurwtytjvXoFcGNrOvyG9zIzA8YmPjVtIZUf7b05+TPO7G7/GEmLHDaoCgACHl9hhA==", + "version": "7.22.13", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.13.tgz", + "integrity": "sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w==", "dev": true, "requires": { - "@babel/highlight": "^7.22.10", + "@babel/highlight": "^7.22.13", "chalk": "^2.4.2" }, "dependencies": { @@ -14175,12 +14175,12 @@ } }, "@babel/generator": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.22.10.tgz", - "integrity": "sha512-79KIf7YiWjjdZ81JnLujDRApWtl7BxTqWD88+FFdQEIOG8LJ0etDOM7CXuIgGJa55sGOwZVwuEsaLEm0PJ5/+A==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.0.tgz", + "integrity": "sha512-lN85QRR+5IbYrMWM6Y4pE/noaQtg4pNiqeNGX60eqOfo6gtEj6uw/JagelB8vVztSd7R6M5n1+PQkDbHbBRU4g==", "dev": true, "requires": { - "@babel/types": "^7.22.10", + "@babel/types": "^7.23.0", "@jridgewell/gen-mapping": "^0.3.2", "@jridgewell/trace-mapping": "^0.3.17", "jsesc": "^2.5.1" @@ -14309,19 +14309,19 @@ } }, "@babel/helper-environment-visitor": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.5.tgz", - "integrity": "sha512-XGmhECfVA/5sAt+H+xpSg0mfrHq6FzNr9Oxh7PSEBBRUb/mL7Kz3NICXb194rCqAEdxkhPT1a88teizAFyvk8Q==", + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz", + "integrity": "sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==", "dev": true }, "@babel/helper-function-name": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.22.5.tgz", - "integrity": "sha512-wtHSq6jMRE3uF2otvfuD3DIvVhOsSNshQl0Qrd7qC9oQJzHvOL4qQXlQn2916+CXGywIjpGuIkoyZRRxHPiNQQ==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz", + "integrity": "sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==", "dev": true, "requires": { - "@babel/template": "^7.22.5", - "@babel/types": "^7.22.5" + "@babel/template": "^7.22.15", + "@babel/types": "^7.23.0" } }, "@babel/helper-hoist-variables": { @@ -14435,9 +14435,9 @@ "dev": true }, "@babel/helper-validator-identifier": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.5.tgz", - "integrity": "sha512-aJXu+6lErq8ltp+JhkJUfk1MTGyuA4v7f3pA+BJ5HLfNC6nAQ0Cpi9uOquUj8Hehg0aUiHzWQbOVJGao6ztBAQ==", + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz", + "integrity": "sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==", "dev": true }, "@babel/helper-validator-option": { @@ -14469,12 +14469,12 @@ } }, "@babel/highlight": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.10.tgz", - "integrity": "sha512-78aUtVcT7MUscr0K5mIEnkwxPE0MaxkR5RxRwuHaQ+JuU5AmTPhY+do2mdzVTnIJJpyBglql2pehuBIWHug+WQ==", + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.20.tgz", + "integrity": "sha512-dkdMCN3py0+ksCgYmGG8jKeGA/8Tk+gJwSYYlFGxG5lmhfKNoAy004YpLxpS1W2J8m/EK2Ew+yOs9pVRwO89mg==", "dev": true, "requires": { - "@babel/helper-validator-identifier": "^7.22.5", + "@babel/helper-validator-identifier": "^7.22.20", "chalk": "^2.4.2", "js-tokens": "^4.0.0" }, @@ -14538,9 +14538,9 @@ } }, "@babel/parser": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.22.10.tgz", - "integrity": "sha512-lNbdGsQb9ekfsnjFGhEiF4hfFqGgfOP3H3d27re3n+CGhNuTSUEQdfWk556sTLNTloczcdM5TYF2LhzmDQKyvQ==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.0.tgz", + "integrity": "sha512-vvPKKdMemU85V9WE/l5wZEmImpCtLqbnTvqDS2U1fJ96KrxoW7KrXhNsNCblQlg8Ck4b85yxdTyelsMUgFUXiw==", "dev": true }, "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { @@ -15406,30 +15406,30 @@ } }, "@babel/template": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.5.tgz", - "integrity": "sha512-X7yV7eiwAxdj9k94NEylvbVHLiVG1nvzCV2EAowhxLTwODV1jl9UzZ48leOC0sH7OnuHrIkllaBgneUykIcZaw==", + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.15.tgz", + "integrity": "sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==", "dev": true, "requires": { - "@babel/code-frame": "^7.22.5", - "@babel/parser": "^7.22.5", - "@babel/types": "^7.22.5" + "@babel/code-frame": "^7.22.13", + "@babel/parser": "^7.22.15", + "@babel/types": "^7.22.15" } }, "@babel/traverse": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.22.10.tgz", - "integrity": "sha512-Q/urqV4pRByiNNpb/f5OSv28ZlGJiFiiTh+GAHktbIrkPhPbl90+uW6SmpoLyZqutrg9AEaEf3Q/ZBRHBXgxig==", + "version": "7.23.2", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.2.tgz", + "integrity": "sha512-azpe59SQ48qG6nu2CzcMLbxUudtN+dOM9kDbUqGq3HXUJRlo7i8fvPoxQUzYgLZ4cMVmuZgm8vvBpNeRhd6XSw==", "dev": true, "requires": { - "@babel/code-frame": "^7.22.10", - "@babel/generator": "^7.22.10", - "@babel/helper-environment-visitor": "^7.22.5", - "@babel/helper-function-name": "^7.22.5", + "@babel/code-frame": "^7.22.13", + "@babel/generator": "^7.23.0", + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-function-name": "^7.23.0", "@babel/helper-hoist-variables": "^7.22.5", "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/parser": "^7.22.10", - "@babel/types": "^7.22.10", + "@babel/parser": "^7.23.0", + "@babel/types": "^7.23.0", "debug": "^4.1.0", "globals": "^11.1.0" }, @@ -15443,13 +15443,13 @@ } }, "@babel/types": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.22.10.tgz", - "integrity": "sha512-obaoigiLrlDZ7TUQln/8m4mSqIW2QFeOrCQc9r+xsaHGNoplVNYlRVpsfE8Vj35GEm2ZH4ZhrNYogs/3fj85kg==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.0.tgz", + "integrity": "sha512-0oIyUfKoI3mSqMvsxBdclDwxXKXAUA8v/apZbc+iSyARYou1o8ZGDxbUYyLFoW2arqS2jDGqJuZvv1d/io1axg==", "dev": true, "requires": { "@babel/helper-string-parser": "^7.22.5", - "@babel/helper-validator-identifier": "^7.22.5", + "@babel/helper-validator-identifier": "^7.22.20", "to-fast-properties": "^2.0.0" } }, From 9971e409a8763a5f8e66c436afdd79d7c921f9ee Mon Sep 17 00:00:00 2001 From: Mike Tschudi Date: Fri, 20 Oct 2023 07:48:31 -0700 Subject: [PATCH 369/406] Dependabot updates --- package-lock.json | 1081 +++++++++++++++++++++++---------------------- package.json | 9 +- 2 files changed, 552 insertions(+), 538 deletions(-) diff --git a/package-lock.json b/package-lock.json index 1a987fc96..f1d002509 100644 --- a/package-lock.json +++ b/package-lock.json @@ -28,9 +28,10 @@ "pdf-lib": "^1.17.1" }, "devDependencies": { - "@babel/core": "^7.22.10", - "@babel/preset-env": "^7.22.10", - "@babel/preset-typescript": "^7.22.5", + "@babel/core": "^7.23.2", + "@babel/preset-env": "^7.23.2", + "@babel/preset-typescript": "^7.23.2", + "@babel/types": "^7.23.0", "@esri/eslint-plugin-calcite-components": "^0.2.2", "@esri/solution-common": "3.0.1", "@stencil/postcss": "^2.1.0", @@ -43,7 +44,7 @@ "@typescript-eslint/eslint-plugin": "^5.4.0", "@typescript-eslint/parser": "^5.39.0", "autoprefixer": "10.4.4", - "babel-jest": "^29.6.2", + "babel-jest": "^29.7.0", "dotenv": "^10.0.0", "eslint": "^8.47.0", "eslint-config-prettier": "8.3.0", @@ -174,34 +175,34 @@ } }, "node_modules/@babel/compat-data": { - "version": "7.22.9", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.22.9.tgz", - "integrity": "sha512-5UamI7xkUcJ3i9qVDS+KFDEK8/7oJ55/sJMB1Ge7IEapr7KfdfV/HErR+koZwOfd+SgtFKOKRhRakdg++DcJpQ==", + "version": "7.23.2", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.23.2.tgz", + "integrity": "sha512-0S9TQMmDHlqAZ2ITT95irXKfxN9bncq8ZCoJhun3nHL/lLUxd2NKBJYoNGWH7S0hz6fRQwWlAWn/ILM0C70KZQ==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.22.10.tgz", - "integrity": "sha512-fTmqbbUBAwCcre6zPzNngvsI0aNrPZe77AeqvDxWM9Nm+04RrJ3CAmGHA9f7lJQY6ZMhRztNemy4uslDxTX4Qw==", + "version": "7.23.2", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.23.2.tgz", + "integrity": "sha512-n7s51eWdaWZ3vGT2tD4T7J6eJs3QoBXydv7vkUM06Bf1cbVD2Kc2UrkzhiQwobfV7NwOnQXYL7UBJ5VPU+RGoQ==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.22.10", - "@babel/generator": "^7.22.10", - "@babel/helper-compilation-targets": "^7.22.10", - "@babel/helper-module-transforms": "^7.22.9", - "@babel/helpers": "^7.22.10", - "@babel/parser": "^7.22.10", - "@babel/template": "^7.22.5", - "@babel/traverse": "^7.22.10", - "@babel/types": "^7.22.10", - "convert-source-map": "^1.7.0", + "@babel/code-frame": "^7.22.13", + "@babel/generator": "^7.23.0", + "@babel/helper-compilation-targets": "^7.22.15", + "@babel/helper-module-transforms": "^7.23.0", + "@babel/helpers": "^7.23.2", + "@babel/parser": "^7.23.0", + "@babel/template": "^7.22.15", + "@babel/traverse": "^7.23.2", + "@babel/types": "^7.23.0", + "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", - "json5": "^2.2.2", + "json5": "^2.2.3", "semver": "^6.3.1" }, "engines": { @@ -212,6 +213,12 @@ "url": "https://opencollective.com/babel" } }, + "node_modules/@babel/core/node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true + }, "node_modules/@babel/core/node_modules/semver": { "version": "6.3.1", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", @@ -311,13 +318,13 @@ } }, "node_modules/@babel/helper-compilation-targets": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.10.tgz", - "integrity": "sha512-JMSwHD4J7SLod0idLq5PKgI+6g/hLD/iuWBq08ZX49xE14VpVEojJ5rHWptpirV2j020MvypRLAXAO50igCJ5Q==", + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.15.tgz", + "integrity": "sha512-y6EEzULok0Qvz8yyLkCvVX+02ic+By2UdOhylwUOvOn9dvYc9mKICJuuU1n1XBI02YWsNsnrY1kc6DVbjcXbtw==", "dev": true, "dependencies": { "@babel/compat-data": "^7.22.9", - "@babel/helper-validator-option": "^7.22.5", + "@babel/helper-validator-option": "^7.22.15", "browserslist": "^4.21.9", "lru-cache": "^5.1.1", "semver": "^6.3.1" @@ -336,15 +343,15 @@ } }, "node_modules/@babel/helper-create-class-features-plugin": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.22.10.tgz", - "integrity": "sha512-5IBb77txKYQPpOEdUdIhBx8VrZyDCQ+H82H0+5dX1TmuscP5vJKEE3cKurjtIw/vFwzbVH48VweE78kVDBrqjA==", + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.22.15.tgz", + "integrity": "sha512-jKkwA59IXcvSaiK2UN45kKwSC9o+KuoXsBDvHvU/7BecYIp8GQ2UwrVvFgJASUT+hBnwJx6MhvMCuMzwZZ7jlg==", "dev": true, "dependencies": { "@babel/helper-annotate-as-pure": "^7.22.5", "@babel/helper-environment-visitor": "^7.22.5", "@babel/helper-function-name": "^7.22.5", - "@babel/helper-member-expression-to-functions": "^7.22.5", + "@babel/helper-member-expression-to-functions": "^7.22.15", "@babel/helper-optimise-call-expression": "^7.22.5", "@babel/helper-replace-supers": "^7.22.9", "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", @@ -394,9 +401,9 @@ } }, "node_modules/@babel/helper-define-polyfill-provider": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.4.2.tgz", - "integrity": "sha512-k0qnnOqHn5dK9pZpfD5XXZ9SojAITdCKRn2Lp6rnDGzIbaP0rHyMPk/4wsSxVBVz4RfN0q6VpXWP2pDGIoQ7hw==", + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.4.3.tgz", + "integrity": "sha512-WBrLmuPP47n7PNwsZ57pqam6G/RGo1vw/87b0Blc53tZNGZ4x7YvZ6HgQe2vo1W/FR20OgjeZuGXzudPiXHFug==", "dev": true, "dependencies": { "@babel/helper-compilation-targets": "^7.22.6", @@ -410,9 +417,9 @@ } }, "node_modules/@babel/helper-define-polyfill-provider/node_modules/resolve": { - "version": "1.22.4", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.4.tgz", - "integrity": "sha512-PXNdCiPqDqeUou+w1C2eTQbNfxKSuMxqTCuvlmmMsk1NWHL5fRrhY6Pl0qEYYc6+QqGClco1Qj8XnjPego4wfg==", + "version": "1.22.8", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", + "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", "dev": true, "dependencies": { "is-core-module": "^2.13.0", @@ -461,40 +468,40 @@ } }, "node_modules/@babel/helper-member-expression-to-functions": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.22.5.tgz", - "integrity": "sha512-aBiH1NKMG0H2cGZqspNvsaBe6wNGjbJjuLy29aU+eDZjSbbN53BaxlpB02xm9v34pLTZ1nIQPFYn2qMZoa5BQQ==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.23.0.tgz", + "integrity": "sha512-6gfrPwh7OuT6gZyJZvd6WbTfrqAo7vm4xCzAXOusKqq/vWdKXphTpj5klHKNmRUU6/QRGlBsyU9mAIPaWHlqJA==", "dev": true, "dependencies": { - "@babel/types": "^7.22.5" + "@babel/types": "^7.23.0" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-module-imports": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.5.tgz", - "integrity": "sha512-8Dl6+HD/cKifutF5qGd/8ZJi84QeAKh+CEe1sBzz8UayBBGg1dAIJrdHOcOM5b2MpzWL2yuotJTtGjETq0qjXg==", + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.15.tgz", + "integrity": "sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==", "dev": true, "dependencies": { - "@babel/types": "^7.22.5" + "@babel/types": "^7.22.15" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-module-transforms": { - "version": "7.22.9", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.22.9.tgz", - "integrity": "sha512-t+WA2Xn5K+rTeGtC8jCsdAH52bjggG5TKRuRrAGNM/mjIbO4GxvlLMFOEz9wXY5I2XQ60PMFsAG2WIcG82dQMQ==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.23.0.tgz", + "integrity": "sha512-WhDWw1tdrlT0gMgUJSlX0IQvoO1eN279zrAUbVB+KpV2c3Tylz8+GnKOLllCS6Z/iZQEyVYxhZVUdPTqs2YYPw==", "dev": true, "dependencies": { - "@babel/helper-environment-visitor": "^7.22.5", - "@babel/helper-module-imports": "^7.22.5", + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-module-imports": "^7.22.15", "@babel/helper-simple-access": "^7.22.5", "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/helper-validator-identifier": "^7.22.5" + "@babel/helper-validator-identifier": "^7.22.20" }, "engines": { "node": ">=6.9.0" @@ -525,14 +532,14 @@ } }, "node_modules/@babel/helper-remap-async-to-generator": { - "version": "7.22.9", - "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.22.9.tgz", - "integrity": "sha512-8WWC4oR4Px+tr+Fp0X3RHDVfINGpF3ad1HIbrc8A77epiR6eMMc6jsgozkzT2uDiOOdoS9cLIQ+XD2XvI2WSmQ==", + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.22.20.tgz", + "integrity": "sha512-pBGyV4uBqOns+0UvhsTO8qgl8hO89PmiDYv+/COyp1aeMcmfrfruz+/nCMFiYyFF/Knn0yfrC85ZzNFjembFTw==", "dev": true, "dependencies": { "@babel/helper-annotate-as-pure": "^7.22.5", - "@babel/helper-environment-visitor": "^7.22.5", - "@babel/helper-wrap-function": "^7.22.9" + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-wrap-function": "^7.22.20" }, "engines": { "node": ">=6.9.0" @@ -613,37 +620,37 @@ } }, "node_modules/@babel/helper-validator-option": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.22.5.tgz", - "integrity": "sha512-R3oB6xlIVKUnxNUxbmgq7pKjxpru24zlimpE8WK47fACIlM0II/Hm1RS8IaOI7NgCr6LNS+jl5l75m20npAziw==", + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.22.15.tgz", + "integrity": "sha512-bMn7RmyFjY/mdECUbgn9eoSY4vqvacUnS9i9vGAGttgFWesO6B4CYWA7XlpbWgBt71iv/hfbPlynohStqnu5hA==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-wrap-function": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.22.10.tgz", - "integrity": "sha512-OnMhjWjuGYtdoO3FmsEFWvBStBAe2QOgwOLsLNDjN+aaiMD8InJk1/O3HSD8lkqTjCgg5YI34Tz15KNNA3p+nQ==", + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.22.20.tgz", + "integrity": "sha512-pms/UwkOpnQe/PDAEdV/d7dVCoBbB+R4FvYoHGZz+4VPcg7RtYy2KP7S2lbuWM6FCSgob5wshfGESbC/hzNXZw==", "dev": true, "dependencies": { "@babel/helper-function-name": "^7.22.5", - "@babel/template": "^7.22.5", - "@babel/types": "^7.22.10" + "@babel/template": "^7.22.15", + "@babel/types": "^7.22.19" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helpers": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.22.10.tgz", - "integrity": "sha512-a41J4NW8HyZa1I1vAndrraTlPZ/eZoga2ZgS7fEr0tZJGVU4xqdE80CEm0CcNjha5EZ8fTBYLKHF0kqDUuAwQw==", + "version": "7.23.2", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.23.2.tgz", + "integrity": "sha512-lzchcp8SjTSVe/fPmLwtWVBFC7+Tbn8LGHDVfDp9JGxpAY5opSaEFgt8UQvrnECWOTdji2mOWMz1rOhkHscmGQ==", "dev": true, "dependencies": { - "@babel/template": "^7.22.5", - "@babel/traverse": "^7.22.10", - "@babel/types": "^7.22.10" + "@babel/template": "^7.22.15", + "@babel/traverse": "^7.23.2", + "@babel/types": "^7.23.0" }, "engines": { "node": ">=6.9.0" @@ -747,9 +754,9 @@ } }, "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.22.5.tgz", - "integrity": "sha512-NP1M5Rf+u2Gw9qfSO4ihjcTGW5zXTi36ITLd4/EoAcEhIZ0yjMqmftDNl3QC19CX7olhrjpyU454g/2W7X0jvQ==", + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.22.15.tgz", + "integrity": "sha512-FB9iYlz7rURmRJyXRKEnalYPPdn87H5no108cyuQQyMwlpJ2SJtpIUBI27kdTin956pz+LPypkPVPUTlxOmrsg==", "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.22.5" @@ -762,14 +769,14 @@ } }, "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.22.5.tgz", - "integrity": "sha512-31Bb65aZaUwqCbWMnZPduIZxCBngHFlzyN6Dq6KAJjtx+lx6ohKHubc61OomYi7XwVD4Ol0XCVz4h+pYFR048g==", + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.22.15.tgz", + "integrity": "sha512-Hyph9LseGvAeeXzikV88bczhsrLrIZqDPxO+sSmAunMPaGrBGhfMWzCPYTtiW9t+HzSE2wtV8e5cc5P6r1xMDQ==", "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.22.5", "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", - "@babel/plugin-transform-optional-chaining": "^7.22.5" + "@babel/plugin-transform-optional-chaining": "^7.22.15" }, "engines": { "node": ">=6.9.0" @@ -1083,14 +1090,14 @@ } }, "node_modules/@babel/plugin-transform-async-generator-functions": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.22.10.tgz", - "integrity": "sha512-eueE8lvKVzq5wIObKK/7dvoeKJ+xc6TvRn6aysIjS6pSCeLy7S/eVi7pEQknZqyqvzaNKdDtem8nUNTBgDVR2g==", + "version": "7.23.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.23.2.tgz", + "integrity": "sha512-BBYVGxbDVHfoeXbOwcagAkOQAm9NxoTdMGfTqghu1GrvadSaw6iW3Je6IcL5PNOw8VwjxqBECXy50/iCQSY/lQ==", "dev": true, "dependencies": { - "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-environment-visitor": "^7.22.20", "@babel/helper-plugin-utils": "^7.22.5", - "@babel/helper-remap-async-to-generator": "^7.22.9", + "@babel/helper-remap-async-to-generator": "^7.22.20", "@babel/plugin-syntax-async-generators": "^7.8.4" }, "engines": { @@ -1133,9 +1140,9 @@ } }, "node_modules/@babel/plugin-transform-block-scoping": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.22.10.tgz", - "integrity": "sha512-1+kVpGAOOI1Albt6Vse7c8pHzcZQdQKW+wJH+g8mCaszOdDVwRXa/slHPqIw+oJAJANTKDMuM2cBdV0Dg618Vg==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.23.0.tgz", + "integrity": "sha512-cOsrbmIOXmf+5YbL99/S49Y3j46k/T16b9ml8bm9lP6N9US5iQ2yBK7gpui1pg0V/WMcXdkfKbTb7HXq9u+v4g==", "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.22.5" @@ -1164,12 +1171,12 @@ } }, "node_modules/@babel/plugin-transform-class-static-block": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.22.5.tgz", - "integrity": "sha512-SPToJ5eYZLxlnp1UzdARpOGeC2GbHvr9d/UV0EukuVx8atktg194oe+C5BqQ8jRTkgLRVOPYeXRSBg1IlMoVRA==", + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.22.11.tgz", + "integrity": "sha512-GMM8gGmqI7guS/llMFk1bJDkKfn3v3C4KHK9Yg1ey5qcHcOlKb0QvcMrgzvxo+T03/4szNh5lghY+fEC98Kq9g==", "dev": true, "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.22.5", + "@babel/helper-create-class-features-plugin": "^7.22.11", "@babel/helper-plugin-utils": "^7.22.5", "@babel/plugin-syntax-class-static-block": "^7.14.5" }, @@ -1181,18 +1188,18 @@ } }, "node_modules/@babel/plugin-transform-classes": { - "version": "7.22.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.22.6.tgz", - "integrity": "sha512-58EgM6nuPNG6Py4Z3zSuu0xWu2VfodiMi72Jt5Kj2FECmaYk1RrTXA45z6KBFsu9tRgwQDwIiY4FXTt+YsSFAQ==", + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.22.15.tgz", + "integrity": "sha512-VbbC3PGjBdE0wAWDdHM9G8Gm977pnYI0XpqMd6LrKISj8/DJXEsWqgRuTYaNE9Bv0JGhTZUzHDlMk18IpOuoqw==", "dev": true, "dependencies": { "@babel/helper-annotate-as-pure": "^7.22.5", - "@babel/helper-compilation-targets": "^7.22.6", + "@babel/helper-compilation-targets": "^7.22.15", "@babel/helper-environment-visitor": "^7.22.5", "@babel/helper-function-name": "^7.22.5", "@babel/helper-optimise-call-expression": "^7.22.5", "@babel/helper-plugin-utils": "^7.22.5", - "@babel/helper-replace-supers": "^7.22.5", + "@babel/helper-replace-supers": "^7.22.9", "@babel/helper-split-export-declaration": "^7.22.6", "globals": "^11.1.0" }, @@ -1229,9 +1236,9 @@ } }, "node_modules/@babel/plugin-transform-destructuring": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.22.10.tgz", - "integrity": "sha512-dPJrL0VOyxqLM9sritNbMSGx/teueHF/htMKrPT7DNxccXxRDPYqlgPFFdr8u+F+qUZOkZoXue/6rL5O5GduEw==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.23.0.tgz", + "integrity": "sha512-vaMdgNXFkYrB+8lbgniSYWHsgqK5gjaMNcc84bMIOMRLH0L9AqYq3hwMdvnyqj1OPqea8UtjPEuS/DCenah1wg==", "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.22.5" @@ -1275,9 +1282,9 @@ } }, "node_modules/@babel/plugin-transform-dynamic-import": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.22.5.tgz", - "integrity": "sha512-0MC3ppTB1AMxd8fXjSrbPa7LT9hrImt+/fcj+Pg5YMD7UQyWp/02+JWpdnCymmsXwIx5Z+sYn1bwCn4ZJNvhqQ==", + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.22.11.tgz", + "integrity": "sha512-g/21plo58sfteWjaO0ZNVb+uEOkJNjAaHhbejrnBmu011l/eNDScmkbjCC3l4FKb10ViaGU4aOkFznSu2zRHgA==", "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.22.5", @@ -1307,9 +1314,9 @@ } }, "node_modules/@babel/plugin-transform-export-namespace-from": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.22.5.tgz", - "integrity": "sha512-X4hhm7FRnPgd4nDA4b/5V280xCx6oL7Oob5+9qVS5C13Zq4bh1qq7LU0GgRU6b5dBWBvhGaXYVB4AcN6+ol6vg==", + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.22.11.tgz", + "integrity": "sha512-xa7aad7q7OiT8oNZ1mU7NrISjlSkVdMbNxn9IuLZyL9AJEhs1Apba3I+u5riX1dIkdptP5EKDG5XDPByWxtehw==", "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.22.5", @@ -1323,9 +1330,9 @@ } }, "node_modules/@babel/plugin-transform-for-of": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.22.5.tgz", - "integrity": "sha512-3kxQjX1dU9uudwSshyLeEipvrLjBCVthCgeTp6CzE/9JYrlAIaeekVxRpCWsDDfYTfRZRoCeZatCQvwo+wvK8A==", + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.22.15.tgz", + "integrity": "sha512-me6VGeHsx30+xh9fbDLLPi0J1HzmeIIyenoOQHuw2D4m2SAU3NrspX5XxJLBpqn5yrLzrlw2Iy3RA//Bx27iOA==", "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.22.5" @@ -1355,9 +1362,9 @@ } }, "node_modules/@babel/plugin-transform-json-strings": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.22.5.tgz", - "integrity": "sha512-DuCRB7fu8MyTLbEQd1ew3R85nx/88yMoqo2uPSjevMj3yoN7CDM8jkgrY0wmVxfJZyJ/B9fE1iq7EQppWQmR5A==", + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.22.11.tgz", + "integrity": "sha512-CxT5tCqpA9/jXFlme9xIBCc5RPtdDq3JpkkhgHQqtDdiTnTI0jtZ0QzXhr5DILeYifDPp2wvY2ad+7+hLMW5Pw==", "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.22.5", @@ -1386,9 +1393,9 @@ } }, "node_modules/@babel/plugin-transform-logical-assignment-operators": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.22.5.tgz", - "integrity": "sha512-MQQOUW1KL8X0cDWfbwYP+TbVbZm16QmQXJQ+vndPtH/BoO0lOKpVoEDMI7+PskYxH+IiE0tS8xZye0qr1lGzSA==", + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.22.11.tgz", + "integrity": "sha512-qQwRTP4+6xFCDV5k7gZBF3C31K34ut0tbEcTKxlX/0KXxm9GLcO14p570aWxFvVzx6QAfPgq7gaeIHXJC8LswQ==", "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.22.5", @@ -1417,12 +1424,12 @@ } }, "node_modules/@babel/plugin-transform-modules-amd": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.22.5.tgz", - "integrity": "sha512-R+PTfLTcYEmb1+kK7FNkhQ1gP4KgjpSO6HfH9+f8/yfp2Nt3ggBjiVpRwmwTlfqZLafYKJACy36yDXlEmI9HjQ==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.23.0.tgz", + "integrity": "sha512-xWT5gefv2HGSm4QHtgc1sYPbseOyf+FFDo2JbpE25GWl5BqTGO9IMwTYJRoIdjsF85GE+VegHxSCUt5EvoYTAw==", "dev": true, "dependencies": { - "@babel/helper-module-transforms": "^7.22.5", + "@babel/helper-module-transforms": "^7.23.0", "@babel/helper-plugin-utils": "^7.22.5" }, "engines": { @@ -1433,12 +1440,12 @@ } }, "node_modules/@babel/plugin-transform-modules-commonjs": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.22.5.tgz", - "integrity": "sha512-B4pzOXj+ONRmuaQTg05b3y/4DuFz3WcCNAXPLb2Q0GT0TrGKGxNKV4jwsXts+StaM0LQczZbOpj8o1DLPDJIiA==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.23.0.tgz", + "integrity": "sha512-32Xzss14/UVc7k9g775yMIvkVK8xwKE0DPdP5JTapr3+Z9w4tzeOuLNY6BXDQR6BdnzIlXnCGAzsk/ICHBLVWQ==", "dev": true, "dependencies": { - "@babel/helper-module-transforms": "^7.22.5", + "@babel/helper-module-transforms": "^7.23.0", "@babel/helper-plugin-utils": "^7.22.5", "@babel/helper-simple-access": "^7.22.5" }, @@ -1450,15 +1457,15 @@ } }, "node_modules/@babel/plugin-transform-modules-systemjs": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.22.5.tgz", - "integrity": "sha512-emtEpoaTMsOs6Tzz+nbmcePl6AKVtS1yC4YNAeMun9U8YCsgadPNxnOPQ8GhHFB2qdx+LZu9LgoC0Lthuu05DQ==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.23.0.tgz", + "integrity": "sha512-qBej6ctXZD2f+DhlOC9yO47yEYgUh5CZNz/aBoH4j/3NOlRfJXJbY7xDQCqQVf9KbrqGzIWER1f23doHGrIHFg==", "dev": true, "dependencies": { "@babel/helper-hoist-variables": "^7.22.5", - "@babel/helper-module-transforms": "^7.22.5", + "@babel/helper-module-transforms": "^7.23.0", "@babel/helper-plugin-utils": "^7.22.5", - "@babel/helper-validator-identifier": "^7.22.5" + "@babel/helper-validator-identifier": "^7.22.20" }, "engines": { "node": ">=6.9.0" @@ -1515,9 +1522,9 @@ } }, "node_modules/@babel/plugin-transform-nullish-coalescing-operator": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.22.5.tgz", - "integrity": "sha512-6CF8g6z1dNYZ/VXok5uYkkBBICHZPiGEl7oDnAx2Mt1hlHVHOSIKWJaXHjQJA5VB43KZnXZDIexMchY4y2PGdA==", + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.22.11.tgz", + "integrity": "sha512-YZWOw4HxXrotb5xsjMJUDlLgcDXSfO9eCmdl1bgW4+/lAGdkjaEvOnQ4p5WKKdUgSzO39dgPl0pTnfxm0OAXcg==", "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.22.5", @@ -1531,9 +1538,9 @@ } }, "node_modules/@babel/plugin-transform-numeric-separator": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.22.5.tgz", - "integrity": "sha512-NbslED1/6M+sXiwwtcAB/nieypGw02Ejf4KtDeMkCEpP6gWFMX1wI9WKYua+4oBneCCEmulOkRpwywypVZzs/g==", + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.22.11.tgz", + "integrity": "sha512-3dzU4QGPsILdJbASKhF/V2TVP+gJya1PsueQCxIPCEcerqF21oEcrob4mzjsp2Py/1nLfF5m+xYNMDpmA8vffg==", "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.22.5", @@ -1547,16 +1554,16 @@ } }, "node_modules/@babel/plugin-transform-object-rest-spread": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.22.5.tgz", - "integrity": "sha512-Kk3lyDmEslH9DnvCDA1s1kkd3YWQITiBOHngOtDL9Pt6BZjzqb6hiOlb8VfjiiQJ2unmegBqZu0rx5RxJb5vmQ==", + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.22.15.tgz", + "integrity": "sha512-fEB+I1+gAmfAyxZcX1+ZUwLeAuuf8VIg67CTznZE0MqVFumWkh8xWtn58I4dxdVf080wn7gzWoF8vndOViJe9Q==", "dev": true, "dependencies": { - "@babel/compat-data": "^7.22.5", - "@babel/helper-compilation-targets": "^7.22.5", + "@babel/compat-data": "^7.22.9", + "@babel/helper-compilation-targets": "^7.22.15", "@babel/helper-plugin-utils": "^7.22.5", "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-transform-parameters": "^7.22.5" + "@babel/plugin-transform-parameters": "^7.22.15" }, "engines": { "node": ">=6.9.0" @@ -1582,9 +1589,9 @@ } }, "node_modules/@babel/plugin-transform-optional-catch-binding": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.22.5.tgz", - "integrity": "sha512-pH8orJahy+hzZje5b8e2QIlBWQvGpelS76C63Z+jhZKsmzfNaPQ+LaW6dcJ9bxTpo1mtXbgHwy765Ro3jftmUg==", + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.22.11.tgz", + "integrity": "sha512-rli0WxesXUeCJnMYhzAglEjLWVDF6ahb45HuprcmQuLidBJFWjNnOzssk2kuc6e33FlLaiZhG/kUIzUMWdBKaQ==", "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.22.5", @@ -1598,9 +1605,9 @@ } }, "node_modules/@babel/plugin-transform-optional-chaining": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.22.10.tgz", - "integrity": "sha512-MMkQqZAZ+MGj+jGTG3OTuhKeBpNcO+0oCEbrGNEaOmiEn+1MzRyQlYsruGiU8RTK3zV6XwrVJTmwiDOyYK6J9g==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.23.0.tgz", + "integrity": "sha512-sBBGXbLJjxTzLBF5rFWaikMnOGOk/BmK6vVByIdEggZ7Vn6CvWXZyRkkLFK6WE0IF8jSliyOkUN6SScFgzCM0g==", "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.22.5", @@ -1615,9 +1622,9 @@ } }, "node_modules/@babel/plugin-transform-parameters": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.22.5.tgz", - "integrity": "sha512-AVkFUBurORBREOmHRKo06FjHYgjrabpdqRSwq6+C7R5iTCZOsM4QbcB27St0a4U6fffyAOqh3s/qEfybAhfivg==", + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.22.15.tgz", + "integrity": "sha512-hjk7qKIqhyzhhUvRT683TYQOFa/4cQKwQy7ALvTpODswN40MljzNDa0YldevS6tGbxwaEKVn502JmY0dP7qEtQ==", "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.22.5" @@ -1646,13 +1653,13 @@ } }, "node_modules/@babel/plugin-transform-private-property-in-object": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.22.5.tgz", - "integrity": "sha512-/9xnaTTJcVoBtSSmrVyhtSvO3kbqS2ODoh2juEU72c3aYonNF0OMGiaz2gjukyKM2wBBYJP38S4JiE0Wfb5VMQ==", + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.22.11.tgz", + "integrity": "sha512-sSCbqZDBKHetvjSwpyWzhuHkmW5RummxJBVbYLkGkaiTOWGxml7SXt0iWa03bzxFIx7wOj3g/ILRd0RcJKBeSQ==", "dev": true, "dependencies": { "@babel/helper-annotate-as-pure": "^7.22.5", - "@babel/helper-create-class-features-plugin": "^7.22.5", + "@babel/helper-create-class-features-plugin": "^7.22.11", "@babel/helper-plugin-utils": "^7.22.5", "@babel/plugin-syntax-private-property-in-object": "^7.14.5" }, @@ -1786,13 +1793,13 @@ } }, "node_modules/@babel/plugin-transform-typescript": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.22.10.tgz", - "integrity": "sha512-7++c8I/ymsDo4QQBAgbraXLzIM6jmfao11KgIBEYZRReWzNWH9NtNgJcyrZiXsOPh523FQm6LfpLyy/U5fn46A==", + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.22.15.tgz", + "integrity": "sha512-1uirS0TnijxvQLnlv5wQBwOX3E1wCFX7ITv+9pBV2wKEk4K+M5tqDaoNXnTH8tjEIYHLO98MwiTWO04Ggz4XuA==", "dev": true, "dependencies": { "@babel/helper-annotate-as-pure": "^7.22.5", - "@babel/helper-create-class-features-plugin": "^7.22.10", + "@babel/helper-create-class-features-plugin": "^7.22.15", "@babel/helper-plugin-utils": "^7.22.5", "@babel/plugin-syntax-typescript": "^7.22.5" }, @@ -1867,17 +1874,17 @@ } }, "node_modules/@babel/preset-env": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.22.10.tgz", - "integrity": "sha512-riHpLb1drNkpLlocmSyEg4oYJIQFeXAK/d7rI6mbD0XsvoTOOweXDmQPG/ErxsEhWk3rl3Q/3F6RFQlVFS8m0A==", + "version": "7.23.2", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.23.2.tgz", + "integrity": "sha512-BW3gsuDD+rvHL2VO2SjAUNTBe5YrjsTiDyqamPDWY723na3/yPQ65X5oQkFVJZ0o50/2d+svm1rkPoJeR1KxVQ==", "dev": true, "dependencies": { - "@babel/compat-data": "^7.22.9", - "@babel/helper-compilation-targets": "^7.22.10", + "@babel/compat-data": "^7.23.2", + "@babel/helper-compilation-targets": "^7.22.15", "@babel/helper-plugin-utils": "^7.22.5", - "@babel/helper-validator-option": "^7.22.5", - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.22.5", - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.22.5", + "@babel/helper-validator-option": "^7.22.15", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.22.15", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.22.15", "@babel/plugin-proposal-private-property-in-object": "7.21.0-placeholder-for-preset-env.2", "@babel/plugin-syntax-async-generators": "^7.8.4", "@babel/plugin-syntax-class-properties": "^7.12.13", @@ -1898,41 +1905,41 @@ "@babel/plugin-syntax-top-level-await": "^7.14.5", "@babel/plugin-syntax-unicode-sets-regex": "^7.18.6", "@babel/plugin-transform-arrow-functions": "^7.22.5", - "@babel/plugin-transform-async-generator-functions": "^7.22.10", + "@babel/plugin-transform-async-generator-functions": "^7.23.2", "@babel/plugin-transform-async-to-generator": "^7.22.5", "@babel/plugin-transform-block-scoped-functions": "^7.22.5", - "@babel/plugin-transform-block-scoping": "^7.22.10", + "@babel/plugin-transform-block-scoping": "^7.23.0", "@babel/plugin-transform-class-properties": "^7.22.5", - "@babel/plugin-transform-class-static-block": "^7.22.5", - "@babel/plugin-transform-classes": "^7.22.6", + "@babel/plugin-transform-class-static-block": "^7.22.11", + "@babel/plugin-transform-classes": "^7.22.15", "@babel/plugin-transform-computed-properties": "^7.22.5", - "@babel/plugin-transform-destructuring": "^7.22.10", + "@babel/plugin-transform-destructuring": "^7.23.0", "@babel/plugin-transform-dotall-regex": "^7.22.5", "@babel/plugin-transform-duplicate-keys": "^7.22.5", - "@babel/plugin-transform-dynamic-import": "^7.22.5", + "@babel/plugin-transform-dynamic-import": "^7.22.11", "@babel/plugin-transform-exponentiation-operator": "^7.22.5", - "@babel/plugin-transform-export-namespace-from": "^7.22.5", - "@babel/plugin-transform-for-of": "^7.22.5", + "@babel/plugin-transform-export-namespace-from": "^7.22.11", + "@babel/plugin-transform-for-of": "^7.22.15", "@babel/plugin-transform-function-name": "^7.22.5", - "@babel/plugin-transform-json-strings": "^7.22.5", + "@babel/plugin-transform-json-strings": "^7.22.11", "@babel/plugin-transform-literals": "^7.22.5", - "@babel/plugin-transform-logical-assignment-operators": "^7.22.5", + "@babel/plugin-transform-logical-assignment-operators": "^7.22.11", "@babel/plugin-transform-member-expression-literals": "^7.22.5", - "@babel/plugin-transform-modules-amd": "^7.22.5", - "@babel/plugin-transform-modules-commonjs": "^7.22.5", - "@babel/plugin-transform-modules-systemjs": "^7.22.5", + "@babel/plugin-transform-modules-amd": "^7.23.0", + "@babel/plugin-transform-modules-commonjs": "^7.23.0", + "@babel/plugin-transform-modules-systemjs": "^7.23.0", "@babel/plugin-transform-modules-umd": "^7.22.5", "@babel/plugin-transform-named-capturing-groups-regex": "^7.22.5", "@babel/plugin-transform-new-target": "^7.22.5", - "@babel/plugin-transform-nullish-coalescing-operator": "^7.22.5", - "@babel/plugin-transform-numeric-separator": "^7.22.5", - "@babel/plugin-transform-object-rest-spread": "^7.22.5", + "@babel/plugin-transform-nullish-coalescing-operator": "^7.22.11", + "@babel/plugin-transform-numeric-separator": "^7.22.11", + "@babel/plugin-transform-object-rest-spread": "^7.22.15", "@babel/plugin-transform-object-super": "^7.22.5", - "@babel/plugin-transform-optional-catch-binding": "^7.22.5", - "@babel/plugin-transform-optional-chaining": "^7.22.10", - "@babel/plugin-transform-parameters": "^7.22.5", + "@babel/plugin-transform-optional-catch-binding": "^7.22.11", + "@babel/plugin-transform-optional-chaining": "^7.23.0", + "@babel/plugin-transform-parameters": "^7.22.15", "@babel/plugin-transform-private-methods": "^7.22.5", - "@babel/plugin-transform-private-property-in-object": "^7.22.5", + "@babel/plugin-transform-private-property-in-object": "^7.22.11", "@babel/plugin-transform-property-literals": "^7.22.5", "@babel/plugin-transform-regenerator": "^7.22.10", "@babel/plugin-transform-reserved-words": "^7.22.5", @@ -1946,10 +1953,10 @@ "@babel/plugin-transform-unicode-regex": "^7.22.5", "@babel/plugin-transform-unicode-sets-regex": "^7.22.5", "@babel/preset-modules": "0.1.6-no-external-plugins", - "@babel/types": "^7.22.10", - "babel-plugin-polyfill-corejs2": "^0.4.5", - "babel-plugin-polyfill-corejs3": "^0.8.3", - "babel-plugin-polyfill-regenerator": "^0.5.2", + "@babel/types": "^7.23.0", + "babel-plugin-polyfill-corejs2": "^0.4.6", + "babel-plugin-polyfill-corejs3": "^0.8.5", + "babel-plugin-polyfill-regenerator": "^0.5.3", "core-js-compat": "^3.31.0", "semver": "^6.3.1" }, @@ -1984,16 +1991,16 @@ } }, "node_modules/@babel/preset-typescript": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.22.5.tgz", - "integrity": "sha512-YbPaal9LxztSGhmndR46FmAbkJ/1fAsw293tSU+I5E5h+cnJ3d4GTwyUgGYmOXJYdGA+uNePle4qbaRzj2NISQ==", + "version": "7.23.2", + "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.23.2.tgz", + "integrity": "sha512-u4UJc1XsS1GhIGteM8rnGiIvf9rJpiVgMEeCnwlLA7WJPC+jcXWJAGxYmeqs5hOZD8BbAfnV5ezBOxQbb4OUxA==", "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.22.5", - "@babel/helper-validator-option": "^7.22.5", + "@babel/helper-validator-option": "^7.22.15", "@babel/plugin-syntax-jsx": "^7.22.5", - "@babel/plugin-transform-modules-commonjs": "^7.22.5", - "@babel/plugin-transform-typescript": "^7.22.5" + "@babel/plugin-transform-modules-commonjs": "^7.23.0", + "@babel/plugin-transform-typescript": "^7.22.15" }, "engines": { "node": ">=6.9.0" @@ -3182,9 +3189,9 @@ } }, "node_modules/@jest/schemas": { - "version": "29.6.0", - "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.0.tgz", - "integrity": "sha512-rxLjXyJBTL4LQeJW3aKo0M/+GkCOXsO+8i9Iu7eDb6KwtP65ayoDsitrdPBtujxQ88k4wI2FNYfa6TOGwSn6cQ==", + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz", + "integrity": "sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==", "dev": true, "dependencies": { "@sinclair/typebox": "^0.27.8" @@ -3369,22 +3376,22 @@ } }, "node_modules/@jest/transform": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-29.6.2.tgz", - "integrity": "sha512-ZqCqEISr58Ce3U+buNFJYUktLJZOggfyvR+bZMaiV1e8B1SIvJbwZMrYz3gx/KAPn9EXmOmN+uB08yLCjWkQQg==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-29.7.0.tgz", + "integrity": "sha512-ok/BTPFzFKVMwO5eOHRrvnBVHdRy9IrsrW1GpMaQ9MCnilNLXQKmAX8s1YXDFaai9xJpac2ySzV0YeRRECr2Vw==", "dev": true, "dependencies": { "@babel/core": "^7.11.6", - "@jest/types": "^29.6.1", + "@jest/types": "^29.6.3", "@jridgewell/trace-mapping": "^0.3.18", "babel-plugin-istanbul": "^6.1.1", "chalk": "^4.0.0", "convert-source-map": "^2.0.0", "fast-json-stable-stringify": "^2.1.0", "graceful-fs": "^4.2.9", - "jest-haste-map": "^29.6.2", - "jest-regex-util": "^29.4.3", - "jest-util": "^29.6.2", + "jest-haste-map": "^29.7.0", + "jest-regex-util": "^29.6.3", + "jest-util": "^29.7.0", "micromatch": "^4.0.4", "pirates": "^4.0.4", "slash": "^3.0.0", @@ -3414,12 +3421,12 @@ } }, "node_modules/@jest/types": { - "version": "29.6.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.6.1.tgz", - "integrity": "sha512-tPKQNMPuXgvdOn2/Lg9HNfUvjYVGolt04Hp03f5hAk878uwOLikN+JzeLY0HcVgKgFl9Hs3EIqpu3WX27XNhnw==", + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.6.3.tgz", + "integrity": "sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==", "dev": true, "dependencies": { - "@jest/schemas": "^29.6.0", + "@jest/schemas": "^29.6.3", "@types/istanbul-lib-coverage": "^2.0.0", "@types/istanbul-reports": "^3.0.0", "@types/node": "*", @@ -4045,9 +4052,9 @@ "dev": true }, "node_modules/@types/yargs": { - "version": "17.0.24", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.24.tgz", - "integrity": "sha512-6i0aC7jV6QzQB8ne1joVZ0eSFIstHsCrobmOtghM11yGlH0j43FKL2UhWdELkyps0zuf7qVTUVCCR+tgSlyLLw==", + "version": "17.0.29", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.29.tgz", + "integrity": "sha512-nacjqA3ee9zRF/++a3FUY1suHTFKZeHba2n8WeDw9cCVdmzmHpIxyzOJBcpHvvEmS8E9KqWlSnWHUkOrkhWcvA==", "dev": true, "dependencies": { "@types/yargs-parser": "*" @@ -4634,15 +4641,15 @@ "dev": true }, "node_modules/babel-jest": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-29.6.2.tgz", - "integrity": "sha512-BYCzImLos6J3BH/+HvUCHG1dTf2MzmAB4jaVxHV+29RZLjR29XuYTmsf2sdDwkrb+FczkGo3kOhE7ga6sI0P4A==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-29.7.0.tgz", + "integrity": "sha512-BrvGY3xZSwEcCzKvKsCi2GgHqDqsYkOP4/by5xCgIwGXQxIEh+8ew3gmrE1y7XRR6LHZIj6yLYnUi/mm2KXKBg==", "dev": true, "dependencies": { - "@jest/transform": "^29.6.2", + "@jest/transform": "^29.7.0", "@types/babel__core": "^7.1.14", "babel-plugin-istanbul": "^6.1.1", - "babel-preset-jest": "^29.5.0", + "babel-preset-jest": "^29.6.3", "chalk": "^4.0.0", "graceful-fs": "^4.2.9", "slash": "^3.0.0" @@ -4671,9 +4678,9 @@ } }, "node_modules/babel-plugin-jest-hoist": { - "version": "29.5.0", - "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.5.0.tgz", - "integrity": "sha512-zSuuuAlTMT4mzLj2nPnUm6fsE6270vdOfnpbJ+RmruU75UhLFvL0N2NgI7xpeS7NaB6hGqmd5pVpGTDYvi4Q3w==", + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.6.3.tgz", + "integrity": "sha512-ESAc/RJvGTFEzRwOTT4+lNDk/GNHMkKbNzsvT0qKRfDyyYTskxB5rnU2njIDYVxXCBHHEI1c0YwHob3WaYujOg==", "dev": true, "dependencies": { "@babel/template": "^7.3.3", @@ -4686,13 +4693,13 @@ } }, "node_modules/babel-plugin-polyfill-corejs2": { - "version": "0.4.5", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.5.tgz", - "integrity": "sha512-19hwUH5FKl49JEsvyTcoHakh6BE0wgXLLptIyKZ3PijHc/Ci521wygORCUCCred+E/twuqRyAkE02BAWPmsHOg==", + "version": "0.4.6", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.6.tgz", + "integrity": "sha512-jhHiWVZIlnPbEUKSSNb9YoWcQGdlTLq7z1GHL4AjFxaoOUMuuEVJ+Y4pAaQUGOGk93YsVCKPbqbfw3m0SM6H8Q==", "dev": true, "dependencies": { "@babel/compat-data": "^7.22.6", - "@babel/helper-define-polyfill-provider": "^0.4.2", + "@babel/helper-define-polyfill-provider": "^0.4.3", "semver": "^6.3.1" }, "peerDependencies": { @@ -4709,25 +4716,25 @@ } }, "node_modules/babel-plugin-polyfill-corejs3": { - "version": "0.8.3", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.8.3.tgz", - "integrity": "sha512-z41XaniZL26WLrvjy7soabMXrfPWARN25PZoriDEiLMxAp50AUW3t35BGQUMg5xK3UrpVTtagIDklxYa+MhiNA==", + "version": "0.8.5", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.8.5.tgz", + "integrity": "sha512-Q6CdATeAvbScWPNLB8lzSO7fgUVBkQt6zLgNlfyeCr/EQaEQR+bWiBYYPYAFyE528BMjRhL+1QBMOI4jc/c5TA==", "dev": true, "dependencies": { - "@babel/helper-define-polyfill-provider": "^0.4.2", - "core-js-compat": "^3.31.0" + "@babel/helper-define-polyfill-provider": "^0.4.3", + "core-js-compat": "^3.32.2" }, "peerDependencies": { "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" } }, "node_modules/babel-plugin-polyfill-regenerator": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.5.2.tgz", - "integrity": "sha512-tAlOptU0Xj34V1Y2PNTL4Y0FOJMDB6bZmoW39FeCQIhigGLkqu3Fj6uiXpxIf6Ij274ENdYx64y6Au+ZKlb1IA==", + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.5.3.tgz", + "integrity": "sha512-8sHeDOmXC8csczMrYEOf0UTNa4yE2SxV5JGeT/LP1n0OYVDUUFPxG9vdk2AlDlIit4t+Kf0xCtpgXPBwnn/9pw==", "dev": true, "dependencies": { - "@babel/helper-define-polyfill-provider": "^0.4.2" + "@babel/helper-define-polyfill-provider": "^0.4.3" }, "peerDependencies": { "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" @@ -4757,12 +4764,12 @@ } }, "node_modules/babel-preset-jest": { - "version": "29.5.0", - "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-29.5.0.tgz", - "integrity": "sha512-JOMloxOqdiBSxMAzjRaH023/vvcaSaec49zvg+2LmNsktC7ei39LTJGw02J+9uUtTZUq6xbLyJ4dxe9sSmIuAg==", + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-29.6.3.tgz", + "integrity": "sha512-0B3bhxR6snWXJZtR/RliHTDPRgn1sNHOR0yVtq/IiQFyuOVjFS+wuio/R4gSNkyYmKmJB4wGZv2NZanmKmTnNA==", "dev": true, "dependencies": { - "babel-plugin-jest-hoist": "^29.5.0", + "babel-plugin-jest-hoist": "^29.6.3", "babel-preset-current-node-syntax": "^1.0.0" }, "engines": { @@ -4919,9 +4926,9 @@ "dev": true }, "node_modules/browserslist": { - "version": "4.21.10", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.10.tgz", - "integrity": "sha512-bipEBdZfVH5/pwrvqc+Ub0kUPVfGUhlKxbvfD+z1BDnPEO/X98ruXGA1WP5ASpAFKan7Qr6j736IacbZQuAlKQ==", + "version": "4.22.1", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.22.1.tgz", + "integrity": "sha512-FEVc202+2iuClEhZhrWy6ZiAcRLvNMyYcxZ8raemul1DYVOVdFsbqckWLdsixQZCpJlwe77Z3UTalE7jsjnKfQ==", "dev": true, "funding": [ { @@ -4938,10 +4945,10 @@ } ], "dependencies": { - "caniuse-lite": "^1.0.30001517", - "electron-to-chromium": "^1.4.477", + "caniuse-lite": "^1.0.30001541", + "electron-to-chromium": "^1.4.535", "node-releases": "^2.0.13", - "update-browserslist-db": "^1.0.11" + "update-browserslist-db": "^1.0.13" }, "bin": { "browserslist": "cli.js" @@ -5089,9 +5096,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001547", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001547.tgz", - "integrity": "sha512-W7CrtIModMAxobGhz8iXmDfuJiiKg1WADMO/9x7/CLNin5cpSbuBjooyoIUVB5eyCc36QuTVlkVa1iB2S5+/eA==", + "version": "1.0.30001551", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001551.tgz", + "integrity": "sha512-vtBAez47BoGMMzlbYhfXrMV1kvRF2WP/lqiMuDu1Sb4EE4LKEgjopFDSRtZfdVnslNRpOqV/woE+Xgrwj6VQlg==", "dev": true, "funding": [ { @@ -5492,12 +5499,12 @@ "dev": true }, "node_modules/core-js-compat": { - "version": "3.32.0", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.32.0.tgz", - "integrity": "sha512-7a9a3D1k4UCVKnLhrgALyFcP7YCsLOQIxPd0dKjf/6GuPcgyiGP70ewWdCGrSK7evyhymi0qO4EqCmSJofDeYw==", + "version": "3.33.1", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.33.1.tgz", + "integrity": "sha512-6pYKNOgD/j/bkC5xS5IIg6bncid3rfrI42oBH1SQJbsmYPKF7rhzcFzYCcxYMmNQQ0rCEB8WqpW7QHndOggaeQ==", "dev": true, "dependencies": { - "browserslist": "^4.21.9" + "browserslist": "^4.22.1" }, "funding": { "type": "opencollective", @@ -5959,9 +5966,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.491", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.491.tgz", - "integrity": "sha512-ZzPqGKghdVzlQJ+qpfE+r6EB321zed7e5JsvHIlMM4zPFF8okXUkF5Of7h7F3l3cltPL0rG7YVmlp5Qro7RQLA==", + "version": "1.4.561", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.561.tgz", + "integrity": "sha512-eS5t4ulWOBfVHdq9SW2dxEaFarj1lPjvJ8PaYMOjY0DecBaj/t4ARziL2IPpDr4atyWwjLFGQ2vo/VCgQFezVQ==", "dev": true }, "node_modules/emittery": { @@ -8931,20 +8938,20 @@ } }, "node_modules/jest-haste-map": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-29.6.2.tgz", - "integrity": "sha512-+51XleTDAAysvU8rT6AnS1ZJ+WHVNqhj1k6nTvN2PYP+HjU3kqlaKQ1Lnw3NYW3bm2r8vq82X0Z1nDDHZMzHVA==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-29.7.0.tgz", + "integrity": "sha512-fP8u2pyfqx0K1rGn1R9pyE0/KTn+G7PxktWidOBTqFPLYX0b9ksaMFkhK5vrS3DVun09pckLdlx90QthlW7AmA==", "dev": true, "dependencies": { - "@jest/types": "^29.6.1", + "@jest/types": "^29.6.3", "@types/graceful-fs": "^4.1.3", "@types/node": "*", "anymatch": "^3.0.3", "fb-watchman": "^2.0.0", "graceful-fs": "^4.2.9", - "jest-regex-util": "^29.4.3", - "jest-util": "^29.6.2", - "jest-worker": "^29.6.2", + "jest-regex-util": "^29.6.3", + "jest-util": "^29.7.0", + "jest-worker": "^29.7.0", "micromatch": "^4.0.4", "walker": "^1.0.8" }, @@ -9154,9 +9161,9 @@ } }, "node_modules/jest-regex-util": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-29.4.3.tgz", - "integrity": "sha512-O4FglZaMmWXbGHSQInfXewIsd1LMn9p3ZXB/6r4FOkyhX2/iP/soMG98jGvk/A3HAN78+5VWcBGO0BJAPRh4kg==", + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-29.6.3.tgz", + "integrity": "sha512-KJJBsRCyyLNWCNBOvZyRDnAIfUiRJ8v+hOBQYGn8gDyF3UegwiP4gwRR3/SDa42g1YbVycTidUF3rKjyLFDWbg==", "dev": true, "engines": { "node": "^14.15.0 || ^16.10.0 || >=18.0.0" @@ -9862,12 +9869,12 @@ } }, "node_modules/jest-util": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.6.2.tgz", - "integrity": "sha512-3eX1qb6L88lJNCFlEADKOkjpXJQyZRiavX1INZ4tRnrBVr2COd3RgcTLyUiEXMNBlDU/cgYq6taUS0fExrWW4w==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.7.0.tgz", + "integrity": "sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==", "dev": true, "dependencies": { - "@jest/types": "^29.6.1", + "@jest/types": "^29.6.3", "@types/node": "*", "chalk": "^4.0.0", "ci-info": "^3.2.0", @@ -9993,13 +10000,13 @@ } }, "node_modules/jest-worker": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.6.2.tgz", - "integrity": "sha512-l3ccBOabTdkng8I/ORCkADz4eSMKejTYv1vB/Z83UiubqhC1oQ5Li6dWCyqOIvSifGjUBxuvxvlm6KGK2DtuAQ==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.7.0.tgz", + "integrity": "sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==", "dev": true, "dependencies": { "@types/node": "*", - "jest-util": "^29.6.2", + "jest-util": "^29.7.0", "merge-stream": "^2.0.0", "supports-color": "^8.0.0" }, @@ -13519,9 +13526,9 @@ } }, "node_modules/update-browserslist-db": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz", - "integrity": "sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==", + "version": "1.0.13", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", + "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", "dev": true, "funding": [ { @@ -14113,34 +14120,40 @@ } }, "@babel/compat-data": { - "version": "7.22.9", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.22.9.tgz", - "integrity": "sha512-5UamI7xkUcJ3i9qVDS+KFDEK8/7oJ55/sJMB1Ge7IEapr7KfdfV/HErR+koZwOfd+SgtFKOKRhRakdg++DcJpQ==", + "version": "7.23.2", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.23.2.tgz", + "integrity": "sha512-0S9TQMmDHlqAZ2ITT95irXKfxN9bncq8ZCoJhun3nHL/lLUxd2NKBJYoNGWH7S0hz6fRQwWlAWn/ILM0C70KZQ==", "dev": true }, "@babel/core": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.22.10.tgz", - "integrity": "sha512-fTmqbbUBAwCcre6zPzNngvsI0aNrPZe77AeqvDxWM9Nm+04RrJ3CAmGHA9f7lJQY6ZMhRztNemy4uslDxTX4Qw==", + "version": "7.23.2", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.23.2.tgz", + "integrity": "sha512-n7s51eWdaWZ3vGT2tD4T7J6eJs3QoBXydv7vkUM06Bf1cbVD2Kc2UrkzhiQwobfV7NwOnQXYL7UBJ5VPU+RGoQ==", "dev": true, "requires": { "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.22.10", - "@babel/generator": "^7.22.10", - "@babel/helper-compilation-targets": "^7.22.10", - "@babel/helper-module-transforms": "^7.22.9", - "@babel/helpers": "^7.22.10", - "@babel/parser": "^7.22.10", - "@babel/template": "^7.22.5", - "@babel/traverse": "^7.22.10", - "@babel/types": "^7.22.10", - "convert-source-map": "^1.7.0", + "@babel/code-frame": "^7.22.13", + "@babel/generator": "^7.23.0", + "@babel/helper-compilation-targets": "^7.22.15", + "@babel/helper-module-transforms": "^7.23.0", + "@babel/helpers": "^7.23.2", + "@babel/parser": "^7.23.0", + "@babel/template": "^7.22.15", + "@babel/traverse": "^7.23.2", + "@babel/types": "^7.23.0", + "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", - "json5": "^2.2.2", + "json5": "^2.2.3", "semver": "^6.3.1" }, "dependencies": { + "convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true + }, "semver": { "version": "6.3.1", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", @@ -14218,13 +14231,13 @@ } }, "@babel/helper-compilation-targets": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.10.tgz", - "integrity": "sha512-JMSwHD4J7SLod0idLq5PKgI+6g/hLD/iuWBq08ZX49xE14VpVEojJ5rHWptpirV2j020MvypRLAXAO50igCJ5Q==", + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.15.tgz", + "integrity": "sha512-y6EEzULok0Qvz8yyLkCvVX+02ic+By2UdOhylwUOvOn9dvYc9mKICJuuU1n1XBI02YWsNsnrY1kc6DVbjcXbtw==", "dev": true, "requires": { "@babel/compat-data": "^7.22.9", - "@babel/helper-validator-option": "^7.22.5", + "@babel/helper-validator-option": "^7.22.15", "browserslist": "^4.21.9", "lru-cache": "^5.1.1", "semver": "^6.3.1" @@ -14239,15 +14252,15 @@ } }, "@babel/helper-create-class-features-plugin": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.22.10.tgz", - "integrity": "sha512-5IBb77txKYQPpOEdUdIhBx8VrZyDCQ+H82H0+5dX1TmuscP5vJKEE3cKurjtIw/vFwzbVH48VweE78kVDBrqjA==", + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.22.15.tgz", + "integrity": "sha512-jKkwA59IXcvSaiK2UN45kKwSC9o+KuoXsBDvHvU/7BecYIp8GQ2UwrVvFgJASUT+hBnwJx6MhvMCuMzwZZ7jlg==", "dev": true, "requires": { "@babel/helper-annotate-as-pure": "^7.22.5", "@babel/helper-environment-visitor": "^7.22.5", "@babel/helper-function-name": "^7.22.5", - "@babel/helper-member-expression-to-functions": "^7.22.5", + "@babel/helper-member-expression-to-functions": "^7.22.15", "@babel/helper-optimise-call-expression": "^7.22.5", "@babel/helper-replace-supers": "^7.22.9", "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", @@ -14283,9 +14296,9 @@ } }, "@babel/helper-define-polyfill-provider": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.4.2.tgz", - "integrity": "sha512-k0qnnOqHn5dK9pZpfD5XXZ9SojAITdCKRn2Lp6rnDGzIbaP0rHyMPk/4wsSxVBVz4RfN0q6VpXWP2pDGIoQ7hw==", + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.4.3.tgz", + "integrity": "sha512-WBrLmuPP47n7PNwsZ57pqam6G/RGo1vw/87b0Blc53tZNGZ4x7YvZ6HgQe2vo1W/FR20OgjeZuGXzudPiXHFug==", "dev": true, "requires": { "@babel/helper-compilation-targets": "^7.22.6", @@ -14296,9 +14309,9 @@ }, "dependencies": { "resolve": { - "version": "1.22.4", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.4.tgz", - "integrity": "sha512-PXNdCiPqDqeUou+w1C2eTQbNfxKSuMxqTCuvlmmMsk1NWHL5fRrhY6Pl0qEYYc6+QqGClco1Qj8XnjPego4wfg==", + "version": "1.22.8", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", + "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", "dev": true, "requires": { "is-core-module": "^2.13.0", @@ -14334,34 +14347,34 @@ } }, "@babel/helper-member-expression-to-functions": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.22.5.tgz", - "integrity": "sha512-aBiH1NKMG0H2cGZqspNvsaBe6wNGjbJjuLy29aU+eDZjSbbN53BaxlpB02xm9v34pLTZ1nIQPFYn2qMZoa5BQQ==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.23.0.tgz", + "integrity": "sha512-6gfrPwh7OuT6gZyJZvd6WbTfrqAo7vm4xCzAXOusKqq/vWdKXphTpj5klHKNmRUU6/QRGlBsyU9mAIPaWHlqJA==", "dev": true, "requires": { - "@babel/types": "^7.22.5" + "@babel/types": "^7.23.0" } }, "@babel/helper-module-imports": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.5.tgz", - "integrity": "sha512-8Dl6+HD/cKifutF5qGd/8ZJi84QeAKh+CEe1sBzz8UayBBGg1dAIJrdHOcOM5b2MpzWL2yuotJTtGjETq0qjXg==", + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.15.tgz", + "integrity": "sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==", "dev": true, "requires": { - "@babel/types": "^7.22.5" + "@babel/types": "^7.22.15" } }, "@babel/helper-module-transforms": { - "version": "7.22.9", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.22.9.tgz", - "integrity": "sha512-t+WA2Xn5K+rTeGtC8jCsdAH52bjggG5TKRuRrAGNM/mjIbO4GxvlLMFOEz9wXY5I2XQ60PMFsAG2WIcG82dQMQ==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.23.0.tgz", + "integrity": "sha512-WhDWw1tdrlT0gMgUJSlX0IQvoO1eN279zrAUbVB+KpV2c3Tylz8+GnKOLllCS6Z/iZQEyVYxhZVUdPTqs2YYPw==", "dev": true, "requires": { - "@babel/helper-environment-visitor": "^7.22.5", - "@babel/helper-module-imports": "^7.22.5", + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-module-imports": "^7.22.15", "@babel/helper-simple-access": "^7.22.5", "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/helper-validator-identifier": "^7.22.5" + "@babel/helper-validator-identifier": "^7.22.20" } }, "@babel/helper-optimise-call-expression": { @@ -14380,14 +14393,14 @@ "dev": true }, "@babel/helper-remap-async-to-generator": { - "version": "7.22.9", - "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.22.9.tgz", - "integrity": "sha512-8WWC4oR4Px+tr+Fp0X3RHDVfINGpF3ad1HIbrc8A77epiR6eMMc6jsgozkzT2uDiOOdoS9cLIQ+XD2XvI2WSmQ==", + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.22.20.tgz", + "integrity": "sha512-pBGyV4uBqOns+0UvhsTO8qgl8hO89PmiDYv+/COyp1aeMcmfrfruz+/nCMFiYyFF/Knn0yfrC85ZzNFjembFTw==", "dev": true, "requires": { "@babel/helper-annotate-as-pure": "^7.22.5", - "@babel/helper-environment-visitor": "^7.22.5", - "@babel/helper-wrap-function": "^7.22.9" + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-wrap-function": "^7.22.20" } }, "@babel/helper-replace-supers": { @@ -14441,31 +14454,31 @@ "dev": true }, "@babel/helper-validator-option": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.22.5.tgz", - "integrity": "sha512-R3oB6xlIVKUnxNUxbmgq7pKjxpru24zlimpE8WK47fACIlM0II/Hm1RS8IaOI7NgCr6LNS+jl5l75m20npAziw==", + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.22.15.tgz", + "integrity": "sha512-bMn7RmyFjY/mdECUbgn9eoSY4vqvacUnS9i9vGAGttgFWesO6B4CYWA7XlpbWgBt71iv/hfbPlynohStqnu5hA==", "dev": true }, "@babel/helper-wrap-function": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.22.10.tgz", - "integrity": "sha512-OnMhjWjuGYtdoO3FmsEFWvBStBAe2QOgwOLsLNDjN+aaiMD8InJk1/O3HSD8lkqTjCgg5YI34Tz15KNNA3p+nQ==", + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.22.20.tgz", + "integrity": "sha512-pms/UwkOpnQe/PDAEdV/d7dVCoBbB+R4FvYoHGZz+4VPcg7RtYy2KP7S2lbuWM6FCSgob5wshfGESbC/hzNXZw==", "dev": true, "requires": { "@babel/helper-function-name": "^7.22.5", - "@babel/template": "^7.22.5", - "@babel/types": "^7.22.10" + "@babel/template": "^7.22.15", + "@babel/types": "^7.22.19" } }, "@babel/helpers": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.22.10.tgz", - "integrity": "sha512-a41J4NW8HyZa1I1vAndrraTlPZ/eZoga2ZgS7fEr0tZJGVU4xqdE80CEm0CcNjha5EZ8fTBYLKHF0kqDUuAwQw==", + "version": "7.23.2", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.23.2.tgz", + "integrity": "sha512-lzchcp8SjTSVe/fPmLwtWVBFC7+Tbn8LGHDVfDp9JGxpAY5opSaEFgt8UQvrnECWOTdji2mOWMz1rOhkHscmGQ==", "dev": true, "requires": { - "@babel/template": "^7.22.5", - "@babel/traverse": "^7.22.10", - "@babel/types": "^7.22.10" + "@babel/template": "^7.22.15", + "@babel/traverse": "^7.23.2", + "@babel/types": "^7.23.0" } }, "@babel/highlight": { @@ -14544,23 +14557,23 @@ "dev": true }, "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.22.5.tgz", - "integrity": "sha512-NP1M5Rf+u2Gw9qfSO4ihjcTGW5zXTi36ITLd4/EoAcEhIZ0yjMqmftDNl3QC19CX7olhrjpyU454g/2W7X0jvQ==", + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.22.15.tgz", + "integrity": "sha512-FB9iYlz7rURmRJyXRKEnalYPPdn87H5no108cyuQQyMwlpJ2SJtpIUBI27kdTin956pz+LPypkPVPUTlxOmrsg==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.22.5" } }, "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.22.5.tgz", - "integrity": "sha512-31Bb65aZaUwqCbWMnZPduIZxCBngHFlzyN6Dq6KAJjtx+lx6ohKHubc61OomYi7XwVD4Ol0XCVz4h+pYFR048g==", + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.22.15.tgz", + "integrity": "sha512-Hyph9LseGvAeeXzikV88bczhsrLrIZqDPxO+sSmAunMPaGrBGhfMWzCPYTtiW9t+HzSE2wtV8e5cc5P6r1xMDQ==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.22.5", "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", - "@babel/plugin-transform-optional-chaining": "^7.22.5" + "@babel/plugin-transform-optional-chaining": "^7.22.15" } }, "@babel/plugin-proposal-private-property-in-object": { @@ -14770,14 +14783,14 @@ } }, "@babel/plugin-transform-async-generator-functions": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.22.10.tgz", - "integrity": "sha512-eueE8lvKVzq5wIObKK/7dvoeKJ+xc6TvRn6aysIjS6pSCeLy7S/eVi7pEQknZqyqvzaNKdDtem8nUNTBgDVR2g==", + "version": "7.23.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.23.2.tgz", + "integrity": "sha512-BBYVGxbDVHfoeXbOwcagAkOQAm9NxoTdMGfTqghu1GrvadSaw6iW3Je6IcL5PNOw8VwjxqBECXy50/iCQSY/lQ==", "dev": true, "requires": { - "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-environment-visitor": "^7.22.20", "@babel/helper-plugin-utils": "^7.22.5", - "@babel/helper-remap-async-to-generator": "^7.22.9", + "@babel/helper-remap-async-to-generator": "^7.22.20", "@babel/plugin-syntax-async-generators": "^7.8.4" } }, @@ -14802,9 +14815,9 @@ } }, "@babel/plugin-transform-block-scoping": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.22.10.tgz", - "integrity": "sha512-1+kVpGAOOI1Albt6Vse7c8pHzcZQdQKW+wJH+g8mCaszOdDVwRXa/slHPqIw+oJAJANTKDMuM2cBdV0Dg618Vg==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.23.0.tgz", + "integrity": "sha512-cOsrbmIOXmf+5YbL99/S49Y3j46k/T16b9ml8bm9lP6N9US5iQ2yBK7gpui1pg0V/WMcXdkfKbTb7HXq9u+v4g==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.22.5" @@ -14821,29 +14834,29 @@ } }, "@babel/plugin-transform-class-static-block": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.22.5.tgz", - "integrity": "sha512-SPToJ5eYZLxlnp1UzdARpOGeC2GbHvr9d/UV0EukuVx8atktg194oe+C5BqQ8jRTkgLRVOPYeXRSBg1IlMoVRA==", + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.22.11.tgz", + "integrity": "sha512-GMM8gGmqI7guS/llMFk1bJDkKfn3v3C4KHK9Yg1ey5qcHcOlKb0QvcMrgzvxo+T03/4szNh5lghY+fEC98Kq9g==", "dev": true, "requires": { - "@babel/helper-create-class-features-plugin": "^7.22.5", + "@babel/helper-create-class-features-plugin": "^7.22.11", "@babel/helper-plugin-utils": "^7.22.5", "@babel/plugin-syntax-class-static-block": "^7.14.5" } }, "@babel/plugin-transform-classes": { - "version": "7.22.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.22.6.tgz", - "integrity": "sha512-58EgM6nuPNG6Py4Z3zSuu0xWu2VfodiMi72Jt5Kj2FECmaYk1RrTXA45z6KBFsu9tRgwQDwIiY4FXTt+YsSFAQ==", + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.22.15.tgz", + "integrity": "sha512-VbbC3PGjBdE0wAWDdHM9G8Gm977pnYI0XpqMd6LrKISj8/DJXEsWqgRuTYaNE9Bv0JGhTZUzHDlMk18IpOuoqw==", "dev": true, "requires": { "@babel/helper-annotate-as-pure": "^7.22.5", - "@babel/helper-compilation-targets": "^7.22.6", + "@babel/helper-compilation-targets": "^7.22.15", "@babel/helper-environment-visitor": "^7.22.5", "@babel/helper-function-name": "^7.22.5", "@babel/helper-optimise-call-expression": "^7.22.5", "@babel/helper-plugin-utils": "^7.22.5", - "@babel/helper-replace-supers": "^7.22.5", + "@babel/helper-replace-supers": "^7.22.9", "@babel/helper-split-export-declaration": "^7.22.6", "globals": "^11.1.0" }, @@ -14867,9 +14880,9 @@ } }, "@babel/plugin-transform-destructuring": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.22.10.tgz", - "integrity": "sha512-dPJrL0VOyxqLM9sritNbMSGx/teueHF/htMKrPT7DNxccXxRDPYqlgPFFdr8u+F+qUZOkZoXue/6rL5O5GduEw==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.23.0.tgz", + "integrity": "sha512-vaMdgNXFkYrB+8lbgniSYWHsgqK5gjaMNcc84bMIOMRLH0L9AqYq3hwMdvnyqj1OPqea8UtjPEuS/DCenah1wg==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.22.5" @@ -14895,9 +14908,9 @@ } }, "@babel/plugin-transform-dynamic-import": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.22.5.tgz", - "integrity": "sha512-0MC3ppTB1AMxd8fXjSrbPa7LT9hrImt+/fcj+Pg5YMD7UQyWp/02+JWpdnCymmsXwIx5Z+sYn1bwCn4ZJNvhqQ==", + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.22.11.tgz", + "integrity": "sha512-g/21plo58sfteWjaO0ZNVb+uEOkJNjAaHhbejrnBmu011l/eNDScmkbjCC3l4FKb10ViaGU4aOkFznSu2zRHgA==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.22.5", @@ -14915,9 +14928,9 @@ } }, "@babel/plugin-transform-export-namespace-from": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.22.5.tgz", - "integrity": "sha512-X4hhm7FRnPgd4nDA4b/5V280xCx6oL7Oob5+9qVS5C13Zq4bh1qq7LU0GgRU6b5dBWBvhGaXYVB4AcN6+ol6vg==", + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.22.11.tgz", + "integrity": "sha512-xa7aad7q7OiT8oNZ1mU7NrISjlSkVdMbNxn9IuLZyL9AJEhs1Apba3I+u5riX1dIkdptP5EKDG5XDPByWxtehw==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.22.5", @@ -14925,9 +14938,9 @@ } }, "@babel/plugin-transform-for-of": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.22.5.tgz", - "integrity": "sha512-3kxQjX1dU9uudwSshyLeEipvrLjBCVthCgeTp6CzE/9JYrlAIaeekVxRpCWsDDfYTfRZRoCeZatCQvwo+wvK8A==", + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.22.15.tgz", + "integrity": "sha512-me6VGeHsx30+xh9fbDLLPi0J1HzmeIIyenoOQHuw2D4m2SAU3NrspX5XxJLBpqn5yrLzrlw2Iy3RA//Bx27iOA==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.22.5" @@ -14945,9 +14958,9 @@ } }, "@babel/plugin-transform-json-strings": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.22.5.tgz", - "integrity": "sha512-DuCRB7fu8MyTLbEQd1ew3R85nx/88yMoqo2uPSjevMj3yoN7CDM8jkgrY0wmVxfJZyJ/B9fE1iq7EQppWQmR5A==", + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.22.11.tgz", + "integrity": "sha512-CxT5tCqpA9/jXFlme9xIBCc5RPtdDq3JpkkhgHQqtDdiTnTI0jtZ0QzXhr5DILeYifDPp2wvY2ad+7+hLMW5Pw==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.22.5", @@ -14964,9 +14977,9 @@ } }, "@babel/plugin-transform-logical-assignment-operators": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.22.5.tgz", - "integrity": "sha512-MQQOUW1KL8X0cDWfbwYP+TbVbZm16QmQXJQ+vndPtH/BoO0lOKpVoEDMI7+PskYxH+IiE0tS8xZye0qr1lGzSA==", + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.22.11.tgz", + "integrity": "sha512-qQwRTP4+6xFCDV5k7gZBF3C31K34ut0tbEcTKxlX/0KXxm9GLcO14p570aWxFvVzx6QAfPgq7gaeIHXJC8LswQ==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.22.5", @@ -14983,36 +14996,36 @@ } }, "@babel/plugin-transform-modules-amd": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.22.5.tgz", - "integrity": "sha512-R+PTfLTcYEmb1+kK7FNkhQ1gP4KgjpSO6HfH9+f8/yfp2Nt3ggBjiVpRwmwTlfqZLafYKJACy36yDXlEmI9HjQ==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.23.0.tgz", + "integrity": "sha512-xWT5gefv2HGSm4QHtgc1sYPbseOyf+FFDo2JbpE25GWl5BqTGO9IMwTYJRoIdjsF85GE+VegHxSCUt5EvoYTAw==", "dev": true, "requires": { - "@babel/helper-module-transforms": "^7.22.5", + "@babel/helper-module-transforms": "^7.23.0", "@babel/helper-plugin-utils": "^7.22.5" } }, "@babel/plugin-transform-modules-commonjs": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.22.5.tgz", - "integrity": "sha512-B4pzOXj+ONRmuaQTg05b3y/4DuFz3WcCNAXPLb2Q0GT0TrGKGxNKV4jwsXts+StaM0LQczZbOpj8o1DLPDJIiA==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.23.0.tgz", + "integrity": "sha512-32Xzss14/UVc7k9g775yMIvkVK8xwKE0DPdP5JTapr3+Z9w4tzeOuLNY6BXDQR6BdnzIlXnCGAzsk/ICHBLVWQ==", "dev": true, "requires": { - "@babel/helper-module-transforms": "^7.22.5", + "@babel/helper-module-transforms": "^7.23.0", "@babel/helper-plugin-utils": "^7.22.5", "@babel/helper-simple-access": "^7.22.5" } }, "@babel/plugin-transform-modules-systemjs": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.22.5.tgz", - "integrity": "sha512-emtEpoaTMsOs6Tzz+nbmcePl6AKVtS1yC4YNAeMun9U8YCsgadPNxnOPQ8GhHFB2qdx+LZu9LgoC0Lthuu05DQ==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.23.0.tgz", + "integrity": "sha512-qBej6ctXZD2f+DhlOC9yO47yEYgUh5CZNz/aBoH4j/3NOlRfJXJbY7xDQCqQVf9KbrqGzIWER1f23doHGrIHFg==", "dev": true, "requires": { "@babel/helper-hoist-variables": "^7.22.5", - "@babel/helper-module-transforms": "^7.22.5", + "@babel/helper-module-transforms": "^7.23.0", "@babel/helper-plugin-utils": "^7.22.5", - "@babel/helper-validator-identifier": "^7.22.5" + "@babel/helper-validator-identifier": "^7.22.20" } }, "@babel/plugin-transform-modules-umd": { @@ -15045,9 +15058,9 @@ } }, "@babel/plugin-transform-nullish-coalescing-operator": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.22.5.tgz", - "integrity": "sha512-6CF8g6z1dNYZ/VXok5uYkkBBICHZPiGEl7oDnAx2Mt1hlHVHOSIKWJaXHjQJA5VB43KZnXZDIexMchY4y2PGdA==", + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.22.11.tgz", + "integrity": "sha512-YZWOw4HxXrotb5xsjMJUDlLgcDXSfO9eCmdl1bgW4+/lAGdkjaEvOnQ4p5WKKdUgSzO39dgPl0pTnfxm0OAXcg==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.22.5", @@ -15055,9 +15068,9 @@ } }, "@babel/plugin-transform-numeric-separator": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.22.5.tgz", - "integrity": "sha512-NbslED1/6M+sXiwwtcAB/nieypGw02Ejf4KtDeMkCEpP6gWFMX1wI9WKYua+4oBneCCEmulOkRpwywypVZzs/g==", + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.22.11.tgz", + "integrity": "sha512-3dzU4QGPsILdJbASKhF/V2TVP+gJya1PsueQCxIPCEcerqF21oEcrob4mzjsp2Py/1nLfF5m+xYNMDpmA8vffg==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.22.5", @@ -15065,16 +15078,16 @@ } }, "@babel/plugin-transform-object-rest-spread": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.22.5.tgz", - "integrity": "sha512-Kk3lyDmEslH9DnvCDA1s1kkd3YWQITiBOHngOtDL9Pt6BZjzqb6hiOlb8VfjiiQJ2unmegBqZu0rx5RxJb5vmQ==", + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.22.15.tgz", + "integrity": "sha512-fEB+I1+gAmfAyxZcX1+ZUwLeAuuf8VIg67CTznZE0MqVFumWkh8xWtn58I4dxdVf080wn7gzWoF8vndOViJe9Q==", "dev": true, "requires": { - "@babel/compat-data": "^7.22.5", - "@babel/helper-compilation-targets": "^7.22.5", + "@babel/compat-data": "^7.22.9", + "@babel/helper-compilation-targets": "^7.22.15", "@babel/helper-plugin-utils": "^7.22.5", "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-transform-parameters": "^7.22.5" + "@babel/plugin-transform-parameters": "^7.22.15" } }, "@babel/plugin-transform-object-super": { @@ -15088,9 +15101,9 @@ } }, "@babel/plugin-transform-optional-catch-binding": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.22.5.tgz", - "integrity": "sha512-pH8orJahy+hzZje5b8e2QIlBWQvGpelS76C63Z+jhZKsmzfNaPQ+LaW6dcJ9bxTpo1mtXbgHwy765Ro3jftmUg==", + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.22.11.tgz", + "integrity": "sha512-rli0WxesXUeCJnMYhzAglEjLWVDF6ahb45HuprcmQuLidBJFWjNnOzssk2kuc6e33FlLaiZhG/kUIzUMWdBKaQ==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.22.5", @@ -15098,9 +15111,9 @@ } }, "@babel/plugin-transform-optional-chaining": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.22.10.tgz", - "integrity": "sha512-MMkQqZAZ+MGj+jGTG3OTuhKeBpNcO+0oCEbrGNEaOmiEn+1MzRyQlYsruGiU8RTK3zV6XwrVJTmwiDOyYK6J9g==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.23.0.tgz", + "integrity": "sha512-sBBGXbLJjxTzLBF5rFWaikMnOGOk/BmK6vVByIdEggZ7Vn6CvWXZyRkkLFK6WE0IF8jSliyOkUN6SScFgzCM0g==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.22.5", @@ -15109,9 +15122,9 @@ } }, "@babel/plugin-transform-parameters": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.22.5.tgz", - "integrity": "sha512-AVkFUBurORBREOmHRKo06FjHYgjrabpdqRSwq6+C7R5iTCZOsM4QbcB27St0a4U6fffyAOqh3s/qEfybAhfivg==", + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.22.15.tgz", + "integrity": "sha512-hjk7qKIqhyzhhUvRT683TYQOFa/4cQKwQy7ALvTpODswN40MljzNDa0YldevS6tGbxwaEKVn502JmY0dP7qEtQ==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.22.5" @@ -15128,13 +15141,13 @@ } }, "@babel/plugin-transform-private-property-in-object": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.22.5.tgz", - "integrity": "sha512-/9xnaTTJcVoBtSSmrVyhtSvO3kbqS2ODoh2juEU72c3aYonNF0OMGiaz2gjukyKM2wBBYJP38S4JiE0Wfb5VMQ==", + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.22.11.tgz", + "integrity": "sha512-sSCbqZDBKHetvjSwpyWzhuHkmW5RummxJBVbYLkGkaiTOWGxml7SXt0iWa03bzxFIx7wOj3g/ILRd0RcJKBeSQ==", "dev": true, "requires": { "@babel/helper-annotate-as-pure": "^7.22.5", - "@babel/helper-create-class-features-plugin": "^7.22.5", + "@babel/helper-create-class-features-plugin": "^7.22.11", "@babel/helper-plugin-utils": "^7.22.5", "@babel/plugin-syntax-private-property-in-object": "^7.14.5" } @@ -15214,13 +15227,13 @@ } }, "@babel/plugin-transform-typescript": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.22.10.tgz", - "integrity": "sha512-7++c8I/ymsDo4QQBAgbraXLzIM6jmfao11KgIBEYZRReWzNWH9NtNgJcyrZiXsOPh523FQm6LfpLyy/U5fn46A==", + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.22.15.tgz", + "integrity": "sha512-1uirS0TnijxvQLnlv5wQBwOX3E1wCFX7ITv+9pBV2wKEk4K+M5tqDaoNXnTH8tjEIYHLO98MwiTWO04Ggz4XuA==", "dev": true, "requires": { "@babel/helper-annotate-as-pure": "^7.22.5", - "@babel/helper-create-class-features-plugin": "^7.22.10", + "@babel/helper-create-class-features-plugin": "^7.22.15", "@babel/helper-plugin-utils": "^7.22.5", "@babel/plugin-syntax-typescript": "^7.22.5" } @@ -15265,17 +15278,17 @@ } }, "@babel/preset-env": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.22.10.tgz", - "integrity": "sha512-riHpLb1drNkpLlocmSyEg4oYJIQFeXAK/d7rI6mbD0XsvoTOOweXDmQPG/ErxsEhWk3rl3Q/3F6RFQlVFS8m0A==", + "version": "7.23.2", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.23.2.tgz", + "integrity": "sha512-BW3gsuDD+rvHL2VO2SjAUNTBe5YrjsTiDyqamPDWY723na3/yPQ65X5oQkFVJZ0o50/2d+svm1rkPoJeR1KxVQ==", "dev": true, "requires": { - "@babel/compat-data": "^7.22.9", - "@babel/helper-compilation-targets": "^7.22.10", + "@babel/compat-data": "^7.23.2", + "@babel/helper-compilation-targets": "^7.22.15", "@babel/helper-plugin-utils": "^7.22.5", - "@babel/helper-validator-option": "^7.22.5", - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.22.5", - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.22.5", + "@babel/helper-validator-option": "^7.22.15", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.22.15", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.22.15", "@babel/plugin-proposal-private-property-in-object": "7.21.0-placeholder-for-preset-env.2", "@babel/plugin-syntax-async-generators": "^7.8.4", "@babel/plugin-syntax-class-properties": "^7.12.13", @@ -15296,41 +15309,41 @@ "@babel/plugin-syntax-top-level-await": "^7.14.5", "@babel/plugin-syntax-unicode-sets-regex": "^7.18.6", "@babel/plugin-transform-arrow-functions": "^7.22.5", - "@babel/plugin-transform-async-generator-functions": "^7.22.10", + "@babel/plugin-transform-async-generator-functions": "^7.23.2", "@babel/plugin-transform-async-to-generator": "^7.22.5", "@babel/plugin-transform-block-scoped-functions": "^7.22.5", - "@babel/plugin-transform-block-scoping": "^7.22.10", + "@babel/plugin-transform-block-scoping": "^7.23.0", "@babel/plugin-transform-class-properties": "^7.22.5", - "@babel/plugin-transform-class-static-block": "^7.22.5", - "@babel/plugin-transform-classes": "^7.22.6", + "@babel/plugin-transform-class-static-block": "^7.22.11", + "@babel/plugin-transform-classes": "^7.22.15", "@babel/plugin-transform-computed-properties": "^7.22.5", - "@babel/plugin-transform-destructuring": "^7.22.10", + "@babel/plugin-transform-destructuring": "^7.23.0", "@babel/plugin-transform-dotall-regex": "^7.22.5", "@babel/plugin-transform-duplicate-keys": "^7.22.5", - "@babel/plugin-transform-dynamic-import": "^7.22.5", + "@babel/plugin-transform-dynamic-import": "^7.22.11", "@babel/plugin-transform-exponentiation-operator": "^7.22.5", - "@babel/plugin-transform-export-namespace-from": "^7.22.5", - "@babel/plugin-transform-for-of": "^7.22.5", + "@babel/plugin-transform-export-namespace-from": "^7.22.11", + "@babel/plugin-transform-for-of": "^7.22.15", "@babel/plugin-transform-function-name": "^7.22.5", - "@babel/plugin-transform-json-strings": "^7.22.5", + "@babel/plugin-transform-json-strings": "^7.22.11", "@babel/plugin-transform-literals": "^7.22.5", - "@babel/plugin-transform-logical-assignment-operators": "^7.22.5", + "@babel/plugin-transform-logical-assignment-operators": "^7.22.11", "@babel/plugin-transform-member-expression-literals": "^7.22.5", - "@babel/plugin-transform-modules-amd": "^7.22.5", - "@babel/plugin-transform-modules-commonjs": "^7.22.5", - "@babel/plugin-transform-modules-systemjs": "^7.22.5", + "@babel/plugin-transform-modules-amd": "^7.23.0", + "@babel/plugin-transform-modules-commonjs": "^7.23.0", + "@babel/plugin-transform-modules-systemjs": "^7.23.0", "@babel/plugin-transform-modules-umd": "^7.22.5", "@babel/plugin-transform-named-capturing-groups-regex": "^7.22.5", "@babel/plugin-transform-new-target": "^7.22.5", - "@babel/plugin-transform-nullish-coalescing-operator": "^7.22.5", - "@babel/plugin-transform-numeric-separator": "^7.22.5", - "@babel/plugin-transform-object-rest-spread": "^7.22.5", + "@babel/plugin-transform-nullish-coalescing-operator": "^7.22.11", + "@babel/plugin-transform-numeric-separator": "^7.22.11", + "@babel/plugin-transform-object-rest-spread": "^7.22.15", "@babel/plugin-transform-object-super": "^7.22.5", - "@babel/plugin-transform-optional-catch-binding": "^7.22.5", - "@babel/plugin-transform-optional-chaining": "^7.22.10", - "@babel/plugin-transform-parameters": "^7.22.5", + "@babel/plugin-transform-optional-catch-binding": "^7.22.11", + "@babel/plugin-transform-optional-chaining": "^7.23.0", + "@babel/plugin-transform-parameters": "^7.22.15", "@babel/plugin-transform-private-methods": "^7.22.5", - "@babel/plugin-transform-private-property-in-object": "^7.22.5", + "@babel/plugin-transform-private-property-in-object": "^7.22.11", "@babel/plugin-transform-property-literals": "^7.22.5", "@babel/plugin-transform-regenerator": "^7.22.10", "@babel/plugin-transform-reserved-words": "^7.22.5", @@ -15344,10 +15357,10 @@ "@babel/plugin-transform-unicode-regex": "^7.22.5", "@babel/plugin-transform-unicode-sets-regex": "^7.22.5", "@babel/preset-modules": "0.1.6-no-external-plugins", - "@babel/types": "^7.22.10", - "babel-plugin-polyfill-corejs2": "^0.4.5", - "babel-plugin-polyfill-corejs3": "^0.8.3", - "babel-plugin-polyfill-regenerator": "^0.5.2", + "@babel/types": "^7.23.0", + "babel-plugin-polyfill-corejs2": "^0.4.6", + "babel-plugin-polyfill-corejs3": "^0.8.5", + "babel-plugin-polyfill-regenerator": "^0.5.3", "core-js-compat": "^3.31.0", "semver": "^6.3.1" }, @@ -15372,16 +15385,16 @@ } }, "@babel/preset-typescript": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.22.5.tgz", - "integrity": "sha512-YbPaal9LxztSGhmndR46FmAbkJ/1fAsw293tSU+I5E5h+cnJ3d4GTwyUgGYmOXJYdGA+uNePle4qbaRzj2NISQ==", + "version": "7.23.2", + "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.23.2.tgz", + "integrity": "sha512-u4UJc1XsS1GhIGteM8rnGiIvf9rJpiVgMEeCnwlLA7WJPC+jcXWJAGxYmeqs5hOZD8BbAfnV5ezBOxQbb4OUxA==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.22.5", - "@babel/helper-validator-option": "^7.22.5", + "@babel/helper-validator-option": "^7.22.15", "@babel/plugin-syntax-jsx": "^7.22.5", - "@babel/plugin-transform-modules-commonjs": "^7.22.5", - "@babel/plugin-transform-typescript": "^7.22.5" + "@babel/plugin-transform-modules-commonjs": "^7.23.0", + "@babel/plugin-transform-typescript": "^7.22.15" } }, "@babel/regjsgen": { @@ -16357,9 +16370,9 @@ } }, "@jest/schemas": { - "version": "29.6.0", - "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.0.tgz", - "integrity": "sha512-rxLjXyJBTL4LQeJW3aKo0M/+GkCOXsO+8i9Iu7eDb6KwtP65ayoDsitrdPBtujxQ88k4wI2FNYfa6TOGwSn6cQ==", + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz", + "integrity": "sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==", "dev": true, "requires": { "@sinclair/typebox": "^0.27.8" @@ -16510,22 +16523,22 @@ } }, "@jest/transform": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-29.6.2.tgz", - "integrity": "sha512-ZqCqEISr58Ce3U+buNFJYUktLJZOggfyvR+bZMaiV1e8B1SIvJbwZMrYz3gx/KAPn9EXmOmN+uB08yLCjWkQQg==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-29.7.0.tgz", + "integrity": "sha512-ok/BTPFzFKVMwO5eOHRrvnBVHdRy9IrsrW1GpMaQ9MCnilNLXQKmAX8s1YXDFaai9xJpac2ySzV0YeRRECr2Vw==", "dev": true, "requires": { "@babel/core": "^7.11.6", - "@jest/types": "^29.6.1", + "@jest/types": "^29.6.3", "@jridgewell/trace-mapping": "^0.3.18", "babel-plugin-istanbul": "^6.1.1", "chalk": "^4.0.0", "convert-source-map": "^2.0.0", "fast-json-stable-stringify": "^2.1.0", "graceful-fs": "^4.2.9", - "jest-haste-map": "^29.6.2", - "jest-regex-util": "^29.4.3", - "jest-util": "^29.6.2", + "jest-haste-map": "^29.7.0", + "jest-regex-util": "^29.6.3", + "jest-util": "^29.7.0", "micromatch": "^4.0.4", "pirates": "^4.0.4", "slash": "^3.0.0", @@ -16551,12 +16564,12 @@ } }, "@jest/types": { - "version": "29.6.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.6.1.tgz", - "integrity": "sha512-tPKQNMPuXgvdOn2/Lg9HNfUvjYVGolt04Hp03f5hAk878uwOLikN+JzeLY0HcVgKgFl9Hs3EIqpu3WX27XNhnw==", + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.6.3.tgz", + "integrity": "sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==", "dev": true, "requires": { - "@jest/schemas": "^29.6.0", + "@jest/schemas": "^29.6.3", "@types/istanbul-lib-coverage": "^2.0.0", "@types/istanbul-reports": "^3.0.0", "@types/node": "*", @@ -17107,9 +17120,9 @@ "dev": true }, "@types/yargs": { - "version": "17.0.24", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.24.tgz", - "integrity": "sha512-6i0aC7jV6QzQB8ne1joVZ0eSFIstHsCrobmOtghM11yGlH0j43FKL2UhWdELkyps0zuf7qVTUVCCR+tgSlyLLw==", + "version": "17.0.29", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.29.tgz", + "integrity": "sha512-nacjqA3ee9zRF/++a3FUY1suHTFKZeHba2n8WeDw9cCVdmzmHpIxyzOJBcpHvvEmS8E9KqWlSnWHUkOrkhWcvA==", "dev": true, "requires": { "@types/yargs-parser": "*" @@ -17497,15 +17510,15 @@ "dev": true }, "babel-jest": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-29.6.2.tgz", - "integrity": "sha512-BYCzImLos6J3BH/+HvUCHG1dTf2MzmAB4jaVxHV+29RZLjR29XuYTmsf2sdDwkrb+FczkGo3kOhE7ga6sI0P4A==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-29.7.0.tgz", + "integrity": "sha512-BrvGY3xZSwEcCzKvKsCi2GgHqDqsYkOP4/by5xCgIwGXQxIEh+8ew3gmrE1y7XRR6LHZIj6yLYnUi/mm2KXKBg==", "dev": true, "requires": { - "@jest/transform": "^29.6.2", + "@jest/transform": "^29.7.0", "@types/babel__core": "^7.1.14", "babel-plugin-istanbul": "^6.1.1", - "babel-preset-jest": "^29.5.0", + "babel-preset-jest": "^29.6.3", "chalk": "^4.0.0", "graceful-fs": "^4.2.9", "slash": "^3.0.0" @@ -17525,9 +17538,9 @@ } }, "babel-plugin-jest-hoist": { - "version": "29.5.0", - "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.5.0.tgz", - "integrity": "sha512-zSuuuAlTMT4mzLj2nPnUm6fsE6270vdOfnpbJ+RmruU75UhLFvL0N2NgI7xpeS7NaB6hGqmd5pVpGTDYvi4Q3w==", + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.6.3.tgz", + "integrity": "sha512-ESAc/RJvGTFEzRwOTT4+lNDk/GNHMkKbNzsvT0qKRfDyyYTskxB5rnU2njIDYVxXCBHHEI1c0YwHob3WaYujOg==", "dev": true, "requires": { "@babel/template": "^7.3.3", @@ -17537,13 +17550,13 @@ } }, "babel-plugin-polyfill-corejs2": { - "version": "0.4.5", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.5.tgz", - "integrity": "sha512-19hwUH5FKl49JEsvyTcoHakh6BE0wgXLLptIyKZ3PijHc/Ci521wygORCUCCred+E/twuqRyAkE02BAWPmsHOg==", + "version": "0.4.6", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.6.tgz", + "integrity": "sha512-jhHiWVZIlnPbEUKSSNb9YoWcQGdlTLq7z1GHL4AjFxaoOUMuuEVJ+Y4pAaQUGOGk93YsVCKPbqbfw3m0SM6H8Q==", "dev": true, "requires": { "@babel/compat-data": "^7.22.6", - "@babel/helper-define-polyfill-provider": "^0.4.2", + "@babel/helper-define-polyfill-provider": "^0.4.3", "semver": "^6.3.1" }, "dependencies": { @@ -17556,22 +17569,22 @@ } }, "babel-plugin-polyfill-corejs3": { - "version": "0.8.3", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.8.3.tgz", - "integrity": "sha512-z41XaniZL26WLrvjy7soabMXrfPWARN25PZoriDEiLMxAp50AUW3t35BGQUMg5xK3UrpVTtagIDklxYa+MhiNA==", + "version": "0.8.5", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.8.5.tgz", + "integrity": "sha512-Q6CdATeAvbScWPNLB8lzSO7fgUVBkQt6zLgNlfyeCr/EQaEQR+bWiBYYPYAFyE528BMjRhL+1QBMOI4jc/c5TA==", "dev": true, "requires": { - "@babel/helper-define-polyfill-provider": "^0.4.2", - "core-js-compat": "^3.31.0" + "@babel/helper-define-polyfill-provider": "^0.4.3", + "core-js-compat": "^3.32.2" } }, "babel-plugin-polyfill-regenerator": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.5.2.tgz", - "integrity": "sha512-tAlOptU0Xj34V1Y2PNTL4Y0FOJMDB6bZmoW39FeCQIhigGLkqu3Fj6uiXpxIf6Ij274ENdYx64y6Au+ZKlb1IA==", + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.5.3.tgz", + "integrity": "sha512-8sHeDOmXC8csczMrYEOf0UTNa4yE2SxV5JGeT/LP1n0OYVDUUFPxG9vdk2AlDlIit4t+Kf0xCtpgXPBwnn/9pw==", "dev": true, "requires": { - "@babel/helper-define-polyfill-provider": "^0.4.2" + "@babel/helper-define-polyfill-provider": "^0.4.3" } }, "babel-preset-current-node-syntax": { @@ -17595,12 +17608,12 @@ } }, "babel-preset-jest": { - "version": "29.5.0", - "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-29.5.0.tgz", - "integrity": "sha512-JOMloxOqdiBSxMAzjRaH023/vvcaSaec49zvg+2LmNsktC7ei39LTJGw02J+9uUtTZUq6xbLyJ4dxe9sSmIuAg==", + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-29.6.3.tgz", + "integrity": "sha512-0B3bhxR6snWXJZtR/RliHTDPRgn1sNHOR0yVtq/IiQFyuOVjFS+wuio/R4gSNkyYmKmJB4wGZv2NZanmKmTnNA==", "dev": true, "requires": { - "babel-plugin-jest-hoist": "^29.5.0", + "babel-plugin-jest-hoist": "^29.6.3", "babel-preset-current-node-syntax": "^1.0.0" } }, @@ -17714,15 +17727,15 @@ "dev": true }, "browserslist": { - "version": "4.21.10", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.10.tgz", - "integrity": "sha512-bipEBdZfVH5/pwrvqc+Ub0kUPVfGUhlKxbvfD+z1BDnPEO/X98ruXGA1WP5ASpAFKan7Qr6j736IacbZQuAlKQ==", + "version": "4.22.1", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.22.1.tgz", + "integrity": "sha512-FEVc202+2iuClEhZhrWy6ZiAcRLvNMyYcxZ8raemul1DYVOVdFsbqckWLdsixQZCpJlwe77Z3UTalE7jsjnKfQ==", "dev": true, "requires": { - "caniuse-lite": "^1.0.30001517", - "electron-to-chromium": "^1.4.477", + "caniuse-lite": "^1.0.30001541", + "electron-to-chromium": "^1.4.535", "node-releases": "^2.0.13", - "update-browserslist-db": "^1.0.11" + "update-browserslist-db": "^1.0.13" } }, "bser": { @@ -17819,9 +17832,9 @@ "dev": true }, "caniuse-lite": { - "version": "1.0.30001547", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001547.tgz", - "integrity": "sha512-W7CrtIModMAxobGhz8iXmDfuJiiKg1WADMO/9x7/CLNin5cpSbuBjooyoIUVB5eyCc36QuTVlkVa1iB2S5+/eA==", + "version": "1.0.30001551", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001551.tgz", + "integrity": "sha512-vtBAez47BoGMMzlbYhfXrMV1kvRF2WP/lqiMuDu1Sb4EE4LKEgjopFDSRtZfdVnslNRpOqV/woE+Xgrwj6VQlg==", "dev": true }, "canvg": { @@ -18115,12 +18128,12 @@ "dev": true }, "core-js-compat": { - "version": "3.32.0", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.32.0.tgz", - "integrity": "sha512-7a9a3D1k4UCVKnLhrgALyFcP7YCsLOQIxPd0dKjf/6GuPcgyiGP70ewWdCGrSK7evyhymi0qO4EqCmSJofDeYw==", + "version": "3.33.1", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.33.1.tgz", + "integrity": "sha512-6pYKNOgD/j/bkC5xS5IIg6bncid3rfrI42oBH1SQJbsmYPKF7rhzcFzYCcxYMmNQQ0rCEB8WqpW7QHndOggaeQ==", "dev": true, "requires": { - "browserslist": "^4.21.9" + "browserslist": "^4.22.1" } }, "core-util-is": { @@ -18483,9 +18496,9 @@ } }, "electron-to-chromium": { - "version": "1.4.491", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.491.tgz", - "integrity": "sha512-ZzPqGKghdVzlQJ+qpfE+r6EB321zed7e5JsvHIlMM4zPFF8okXUkF5Of7h7F3l3cltPL0rG7YVmlp5Qro7RQLA==", + "version": "1.4.561", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.561.tgz", + "integrity": "sha512-eS5t4ulWOBfVHdq9SW2dxEaFarj1lPjvJ8PaYMOjY0DecBaj/t4ARziL2IPpDr4atyWwjLFGQ2vo/VCgQFezVQ==", "dev": true }, "emittery": { @@ -20724,21 +20737,21 @@ "dev": true }, "jest-haste-map": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-29.6.2.tgz", - "integrity": "sha512-+51XleTDAAysvU8rT6AnS1ZJ+WHVNqhj1k6nTvN2PYP+HjU3kqlaKQ1Lnw3NYW3bm2r8vq82X0Z1nDDHZMzHVA==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-29.7.0.tgz", + "integrity": "sha512-fP8u2pyfqx0K1rGn1R9pyE0/KTn+G7PxktWidOBTqFPLYX0b9ksaMFkhK5vrS3DVun09pckLdlx90QthlW7AmA==", "dev": true, "requires": { - "@jest/types": "^29.6.1", + "@jest/types": "^29.6.3", "@types/graceful-fs": "^4.1.3", "@types/node": "*", "anymatch": "^3.0.3", "fb-watchman": "^2.0.0", "fsevents": "^2.3.2", "graceful-fs": "^4.2.9", - "jest-regex-util": "^29.4.3", - "jest-util": "^29.6.2", - "jest-worker": "^29.6.2", + "jest-regex-util": "^29.6.3", + "jest-util": "^29.7.0", + "jest-worker": "^29.7.0", "micromatch": "^4.0.4", "walker": "^1.0.8" } @@ -20911,9 +20924,9 @@ "requires": {} }, "jest-regex-util": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-29.4.3.tgz", - "integrity": "sha512-O4FglZaMmWXbGHSQInfXewIsd1LMn9p3ZXB/6r4FOkyhX2/iP/soMG98jGvk/A3HAN78+5VWcBGO0BJAPRh4kg==", + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-29.6.3.tgz", + "integrity": "sha512-KJJBsRCyyLNWCNBOvZyRDnAIfUiRJ8v+hOBQYGn8gDyF3UegwiP4gwRR3/SDa42g1YbVycTidUF3rKjyLFDWbg==", "dev": true }, "jest-resolve": { @@ -21495,12 +21508,12 @@ } }, "jest-util": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.6.2.tgz", - "integrity": "sha512-3eX1qb6L88lJNCFlEADKOkjpXJQyZRiavX1INZ4tRnrBVr2COd3RgcTLyUiEXMNBlDU/cgYq6taUS0fExrWW4w==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.7.0.tgz", + "integrity": "sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==", "dev": true, "requires": { - "@jest/types": "^29.6.1", + "@jest/types": "^29.6.3", "@types/node": "*", "chalk": "^4.0.0", "ci-info": "^3.2.0", @@ -21606,13 +21619,13 @@ } }, "jest-worker": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.6.2.tgz", - "integrity": "sha512-l3ccBOabTdkng8I/ORCkADz4eSMKejTYv1vB/Z83UiubqhC1oQ5Li6dWCyqOIvSifGjUBxuvxvlm6KGK2DtuAQ==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.7.0.tgz", + "integrity": "sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==", "dev": true, "requires": { "@types/node": "*", - "jest-util": "^29.6.2", + "jest-util": "^29.7.0", "merge-stream": "^2.0.0", "supports-color": "^8.0.0" }, @@ -24281,9 +24294,9 @@ "dev": true }, "update-browserslist-db": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz", - "integrity": "sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==", + "version": "1.0.13", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", + "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", "dev": true, "requires": { "escalade": "^3.1.1", diff --git a/package.json b/package.json index c2a1562a3..39002992f 100644 --- a/package.json +++ b/package.json @@ -30,9 +30,10 @@ "update-browserslist": "npx browserslist@latest --update-db" }, "devDependencies": { - "@babel/core": "^7.22.10", - "@babel/preset-env": "^7.22.10", - "@babel/preset-typescript": "^7.22.5", + "@babel/core": "^7.23.2", + "@babel/preset-env": "^7.23.2", + "@babel/preset-typescript": "^7.23.2", + "@babel/types": "^7.23.0", "@esri/eslint-plugin-calcite-components": "^0.2.2", "@esri/solution-common": "3.0.1", "@stencil/postcss": "^2.1.0", @@ -45,7 +46,7 @@ "@typescript-eslint/eslint-plugin": "^5.4.0", "@typescript-eslint/parser": "^5.39.0", "autoprefixer": "10.4.4", - "babel-jest": "^29.6.2", + "babel-jest": "^29.7.0", "dotenv": "^10.0.0", "eslint": "^8.47.0", "eslint-config-prettier": "8.3.0", From c27166c87b09eef1e83da842882537da0549c3f6 Mon Sep 17 00:00:00 2001 From: Mike Tschudi Date: Fri, 20 Oct 2023 08:04:06 -0700 Subject: [PATCH 370/406] Attempt to fix devext timing issue --- src/components/buffer-tools/buffer-tools.tsx | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/src/components/buffer-tools/buffer-tools.tsx b/src/components/buffer-tools/buffer-tools.tsx index 7a9f12c3e..6ae16fe7f 100644 --- a/src/components/buffer-tools/buffer-tools.tsx +++ b/src/components/buffer-tools/buffer-tools.tsx @@ -155,6 +155,9 @@ export class BufferTools { async getTranslatedUnit( unit: string ): Promise { + if (!this._units) { + await this._defineTranslations(); + } return this._units[unit]; } @@ -191,9 +194,8 @@ export class BufferTools { * @returns Promise when complete */ async componentWillLoad(): Promise { - await this._getTranslations(); + await this._defineTranslations(); await this._initModules(); - this._initTranslatedUnits(); } /** @@ -213,6 +215,18 @@ export class BufferTools { // //-------------------------------------------------------------------------- + /** + * Loads translations and defines unit names using those translations. + * + * @returns Promise resolving when function is done + * + * @protected + */ + protected async _defineTranslations(): Promise { + await this._getTranslations(); + this._initTranslatedUnits(); + } + /** * Load esri javascript api modules * From 6751fedd3a84e789bb10413e82817def023c8d8f Mon Sep 17 00:00:00 2001 From: John Hauck Date: Fri, 20 Oct 2023 14:57:37 -0600 Subject: [PATCH 371/406] update version --- CHANGELOG.md | 5 ++++- package-lock.json | 4 ++-- package.json | 2 +- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index f82b2065c..098d40cf7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,8 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm ## [Unreleased] +## [0.6.36] - Oct 20th 2023 + ## [0.6.35] - Oct 19th 2023 ## [0.6.34] - Oct 17th 2023 @@ -286,4 +288,5 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm [0.6.33]: https://github.com/Esri/solution.js/compare/v0.6.32...v0.6.33 "v0.6.33" [0.6.34]: https://github.com/Esri/solution.js/compare/v0.6.33...v0.6.34 "v0.6.34" [0.6.35]: https://github.com/Esri/solution.js/compare/v0.6.34...v0.6.35 "v0.6.35" -[Unreleased]: https://github.com/Esri/solution.js/compare/v0.6.35...HEAD "Unreleased Changes" +[0.6.36]: https://github.com/Esri/solution.js/compare/v0.6.35...v0.6.36 "v0.6.36" +[Unreleased]: https://github.com/Esri/solution.js/compare/v0.6.36...HEAD "Unreleased Changes" diff --git a/package-lock.json b/package-lock.json index f1d002509..92a4e8910 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@esri/solutions-components", - "version": "0.6.35", + "version": "0.6.36", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@esri/solutions-components", - "version": "0.6.35", + "version": "0.6.36", "license": "Apache-2.0", "dependencies": { "@esri/arcgis-rest-auth": "^3.4.2", diff --git a/package.json b/package.json index 39002992f..1ef7c9e9c 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@esri/solutions-components", - "version": "0.6.35", + "version": "0.6.36", "description": "Web Components for Esri's Solutions Applications", "main": "dist/index.cjs.js", "module": "dist/index.js", From 13baea6480bcd587ec7bbb03ba91682b36944497 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Mon, 23 Oct 2023 11:05:50 -0600 Subject: [PATCH 372/406] related records test --- src/components/edit-card/edit-card.tsx | 24 ++++++++++++------------ src/components/map-card/map-card.tsx | 9 +++++++-- src/demos/crowdsource-manager.html | 3 +++ 3 files changed, 22 insertions(+), 14 deletions(-) diff --git a/src/components/edit-card/edit-card.tsx b/src/components/edit-card/edit-card.tsx index 9ed0d2f2b..37f3892ef 100644 --- a/src/components/edit-card/edit-card.tsx +++ b/src/components/edit-card/edit-card.tsx @@ -320,9 +320,9 @@ export class EditCard { const layers = await getAllLayers(this.mapView) const layerInfos = layers.map(layer => { return { - layer, - geometryUpdatesEnabled: false, - addEnabled: false + layer//, + //geometryUpdatesEnabled: false, + //addEnabled: false } as __esri.LayerInfo }); this._editor = new this.Editor({ @@ -340,7 +340,7 @@ export class EditCard { this._editHandle.remove(); this._attachmentHandle.remove(); this._activeWorkflowHandle.remove(); - this._addRelatedRecordHandle.remove(); + //this._addRelatedRecordHandle.remove(); } this._attachmentHandle = this.reactiveUtils.when( @@ -373,14 +373,14 @@ export class EditCard { ); // Temp workaround until a new prop is added at 4.29 - this._addRelatedRecordHandle = this.reactiveUtils.when( - () => !!(this._editor.viewModel.featureFormViewModel as any).relatedRecordCallbacks, - () => { - (this._editor.viewModel.featureFormViewModel as any).relatedRecordCallbacks.addRelatedRecord = null; - }, { - once: true - } - ); + // this._addRelatedRecordHandle = this.reactiveUtils.when( + // () => !!(this._editor.viewModel.featureFormViewModel as any).relatedRecordCallbacks, + // () => { + // (this._editor.viewModel.featureFormViewModel as any).relatedRecordCallbacks.addRelatedRecord = null; + // }, { + // once: true + // } + // ); // had issues with destroy before adding like this this._editContainer.appendChild(container); diff --git a/src/components/map-card/map-card.tsx b/src/components/map-card/map-card.tsx index 92185b49d..d0ca84ca5 100644 --- a/src/components/map-card/map-card.tsx +++ b/src/components/map-card/map-card.tsx @@ -152,6 +152,8 @@ export class MapCard { */ protected _mapTools: HTMLMapToolsElement; + protected esriConfig: typeof import("esri/config"); + //-------------------------------------------------------------------------- // // Watch handlers @@ -209,6 +211,7 @@ export class MapCard { */ async componentWillLoad(): Promise { await this._initModules(); + this.esriConfig.portalUrl = "https://sg-em-devext.mapsdevext.arcgis.com"; } /** @@ -250,14 +253,16 @@ export class MapCard { * @protected */ protected async _initModules(): Promise { - const [WebMap, MapView, Home] = await loadModules([ + const [WebMap, MapView, Home, esriConfig] = await loadModules([ "esri/WebMap", "esri/views/MapView", - "esri/widgets/Home" + "esri/widgets/Home", + "esri/config" ]); this.WebMap = WebMap; this.MapView = MapView; this.Home = Home; + this.esriConfig = esriConfig; } /** diff --git a/src/demos/crowdsource-manager.html b/src/demos/crowdsource-manager.html index 971183726..04bce3690 100644 --- a/src/demos/crowdsource-manager.html +++ b/src/demos/crowdsource-manager.html @@ -82,6 +82,9 @@ demo.mapInfos = [ ...custom, ...[{ + id: "c2b0f69005564deb8873c04b73e69cc5", + name: "Related records" + }, { id: "ce3dec81bf714d3bb71da9691ab686d1", name: "Popup Configured Map", // filters: {}, From 637fab06c14fa14d5c99bf0b215a4d89b609e08e Mon Sep 17 00:00:00 2001 From: John Hauck Date: Mon, 23 Oct 2023 11:55:09 -0600 Subject: [PATCH 373/406] add related records back --- src/components/edit-card/edit-card.tsx | 17 +---------------- src/components/map-card/map-card.tsx | 9 ++------- src/demos/crowdsource-manager.html | 3 --- 3 files changed, 3 insertions(+), 26 deletions(-) diff --git a/src/components/edit-card/edit-card.tsx b/src/components/edit-card/edit-card.tsx index 37f3892ef..403e9efa8 100644 --- a/src/components/edit-card/edit-card.tsx +++ b/src/components/edit-card/edit-card.tsx @@ -319,11 +319,7 @@ export class EditCard { const container = document.createElement("div"); const layers = await getAllLayers(this.mapView) const layerInfos = layers.map(layer => { - return { - layer//, - //geometryUpdatesEnabled: false, - //addEnabled: false - } as __esri.LayerInfo + return { layer } as __esri.LayerInfo }); this._editor = new this.Editor({ allowedWorkflows: "update", @@ -340,7 +336,6 @@ export class EditCard { this._editHandle.remove(); this._attachmentHandle.remove(); this._activeWorkflowHandle.remove(); - //this._addRelatedRecordHandle.remove(); } this._attachmentHandle = this.reactiveUtils.when( @@ -372,16 +367,6 @@ export class EditCard { } ); - // Temp workaround until a new prop is added at 4.29 - // this._addRelatedRecordHandle = this.reactiveUtils.when( - // () => !!(this._editor.viewModel.featureFormViewModel as any).relatedRecordCallbacks, - // () => { - // (this._editor.viewModel.featureFormViewModel as any).relatedRecordCallbacks.addRelatedRecord = null; - // }, { - // once: true - // } - // ); - // had issues with destroy before adding like this this._editContainer.appendChild(container); } diff --git a/src/components/map-card/map-card.tsx b/src/components/map-card/map-card.tsx index d0ca84ca5..92185b49d 100644 --- a/src/components/map-card/map-card.tsx +++ b/src/components/map-card/map-card.tsx @@ -152,8 +152,6 @@ export class MapCard { */ protected _mapTools: HTMLMapToolsElement; - protected esriConfig: typeof import("esri/config"); - //-------------------------------------------------------------------------- // // Watch handlers @@ -211,7 +209,6 @@ export class MapCard { */ async componentWillLoad(): Promise { await this._initModules(); - this.esriConfig.portalUrl = "https://sg-em-devext.mapsdevext.arcgis.com"; } /** @@ -253,16 +250,14 @@ export class MapCard { * @protected */ protected async _initModules(): Promise { - const [WebMap, MapView, Home, esriConfig] = await loadModules([ + const [WebMap, MapView, Home] = await loadModules([ "esri/WebMap", "esri/views/MapView", - "esri/widgets/Home", - "esri/config" + "esri/widgets/Home" ]); this.WebMap = WebMap; this.MapView = MapView; this.Home = Home; - this.esriConfig = esriConfig; } /** diff --git a/src/demos/crowdsource-manager.html b/src/demos/crowdsource-manager.html index 04bce3690..971183726 100644 --- a/src/demos/crowdsource-manager.html +++ b/src/demos/crowdsource-manager.html @@ -82,9 +82,6 @@ demo.mapInfos = [ ...custom, ...[{ - id: "c2b0f69005564deb8873c04b73e69cc5", - name: "Related records" - }, { id: "ce3dec81bf714d3bb71da9691ab686d1", name: "Popup Configured Map", // filters: {}, From bdc83554ea72ef029b369549285ed6ba35d8494d Mon Sep 17 00:00:00 2001 From: John Hauck Date: Mon, 23 Oct 2023 12:04:23 -0600 Subject: [PATCH 374/406] fix widgets loading issue --- src/components/basemap-gallery/basemap-gallery.tsx | 9 +++++++++ src/components/map-legend/map-legend.tsx | 9 +++++++++ 2 files changed, 18 insertions(+) diff --git a/src/components/basemap-gallery/basemap-gallery.tsx b/src/components/basemap-gallery/basemap-gallery.tsx index d730b7889..841b74f27 100644 --- a/src/components/basemap-gallery/basemap-gallery.tsx +++ b/src/components/basemap-gallery/basemap-gallery.tsx @@ -135,6 +135,15 @@ export class BasemapGallery { ); } + /** + * StencilJS: Called once just after the component is fully loaded and the first render() occurs. + */ + async componentDidLoad(): Promise { + if (this.mapView) { + await this.mapViewWatchHandler(); + } + } + //-------------------------------------------------------------------------- // // Functions (protected) diff --git a/src/components/map-legend/map-legend.tsx b/src/components/map-legend/map-legend.tsx index b90b14fb7..8c5a5c3b1 100644 --- a/src/components/map-legend/map-legend.tsx +++ b/src/components/map-legend/map-legend.tsx @@ -122,6 +122,15 @@ export class MapLegend { ); } + /** + * StencilJS: Called once just after the component is fully loaded and the first render() occurs. + */ + async componentDidLoad(): Promise { + if (this.mapView) { + await this.mapViewWatchHandler(); + } + } + //-------------------------------------------------------------------------- // // Functions (protected) From aa057e75b7b10bd234efe5958a616f8fe643c1bc Mon Sep 17 00:00:00 2001 From: John Hauck Date: Mon, 23 Oct 2023 12:32:05 -0600 Subject: [PATCH 375/406] ensure value is number --- src/components/public-notification/public-notification.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/public-notification/public-notification.tsx b/src/components/public-notification/public-notification.tsx index 8486319a7..4a03ea0f6 100644 --- a/src/components/public-notification/public-notification.tsx +++ b/src/components/public-notification/public-notification.tsx @@ -1045,7 +1045,7 @@ export class PublicNotification {
{ this._downloadTools = el }} /> From 93839d07f64163503339f7a665aa1e89b6b44f6f Mon Sep 17 00:00:00 2001 From: John Hauck Date: Mon, 23 Oct 2023 13:30:52 -0600 Subject: [PATCH 376/406] update version --- CHANGELOG.md | 5 ++++- package-lock.json | 4 ++-- package.json | 2 +- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 098d40cf7..689086c5d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,8 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm ## [Unreleased] +## [0.6.37] - Oct 23rd 2023 + ## [0.6.36] - Oct 20th 2023 ## [0.6.35] - Oct 19th 2023 @@ -289,4 +291,5 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm [0.6.34]: https://github.com/Esri/solution.js/compare/v0.6.33...v0.6.34 "v0.6.34" [0.6.35]: https://github.com/Esri/solution.js/compare/v0.6.34...v0.6.35 "v0.6.35" [0.6.36]: https://github.com/Esri/solution.js/compare/v0.6.35...v0.6.36 "v0.6.36" -[Unreleased]: https://github.com/Esri/solution.js/compare/v0.6.36...HEAD "Unreleased Changes" +[0.6.37]: https://github.com/Esri/solution.js/compare/v0.6.36...v0.6.37 "v0.6.37" +[Unreleased]: https://github.com/Esri/solution.js/compare/v0.6.37...HEAD "Unreleased Changes" diff --git a/package-lock.json b/package-lock.json index 92a4e8910..c8ec43d05 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@esri/solutions-components", - "version": "0.6.36", + "version": "0.6.37", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@esri/solutions-components", - "version": "0.6.36", + "version": "0.6.37", "license": "Apache-2.0", "dependencies": { "@esri/arcgis-rest-auth": "^3.4.2", diff --git a/package.json b/package.json index 1ef7c9e9c..d71b7cb44 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@esri/solutions-components", - "version": "0.6.36", + "version": "0.6.37", "description": "Web Components for Esri's Solutions Applications", "main": "dist/index.cjs.js", "module": "dist/index.js", From 1be5a458ed4513837305f132f3bd90d4f7b8f65a Mon Sep 17 00:00:00 2001 From: Mike Tschudi Date: Mon, 23 Oct 2023 12:32:15 -0700 Subject: [PATCH 377/406] Provide backup path for getting related-record popup format --- src/utils/downloadUtils.ts | 71 +++++++++++++++++++++++++++++++++----- src/utils/queryUtils.ts | 6 ++-- 2 files changed, 66 insertions(+), 11 deletions(-) diff --git a/src/utils/downloadUtils.ts b/src/utils/downloadUtils.ts index dbc57015e..97517e9da 100644 --- a/src/utils/downloadUtils.ts +++ b/src/utils/downloadUtils.ts @@ -21,7 +21,7 @@ import { ILabel, exportPDF } from "./pdfUtils"; import { loadModules } from "./loadModules"; import { queryFeaturesByID } from "./queryUtils"; import { IExportInfo, IExportInfos } from "../utils/interfaces"; -//import * as common from "@esri/solution-common"; +import * as common from "@esri/solution-common"; export { ILabel } from "./pdfUtils"; @@ -584,15 +584,68 @@ export async function _getLabelFormat( if (labelFormatType === "relationship") { const relationshipId = layer.popupTemplate.content[0].relationshipId; - const webmapLayers = webmap.layers.toArray().concat(webmap.tables.toArray()) - .filter((entry: __esri.FeatureLayer) => - entry.type === "feature" - && entry.id !== layer.id - && entry.relationships - && entry.relationships.some(relationship => relationship.id === relationshipId)); + // Get related layer + let webmapLayers = webmap.layers.toArray().concat(webmap.tables.toArray()) as __esri.FeatureLayer[]; + webmapLayers = webmapLayers.filter( + (webmapLayer: __esri.FeatureLayer) => + webmapLayer.type === "feature" + && webmapLayer.id !== layer.id + && webmapLayer.relationships + && webmapLayer.relationships.some(relationship => relationship.id === relationshipId) + ); - labelFormatProps = await _getLabelFormat(webmap, webmapLayers[0] as __esri.FeatureLayer, formatUsingLayerPopup); - labelFormatProps.relationshipId = relationshipId; + if (webmapLayers.length > 0) { + labelFormatProps = await _getLabelFormat(webmap, webmapLayers[0] as __esri.FeatureLayer, formatUsingLayerPopup); + labelFormatProps.relationshipId = relationshipId; + + } else { + // Related layer info is not in webmap; get the label info from the related layer + webmapLayers = webmap.layers.toArray().concat(webmap.tables.toArray()) as __esri.FeatureLayer[]; + + // Keep only feature layers and tables that have the type "feature" and whose layerId doesn't + // match the one we entered this function with and who have a URL that we can query + const relationshipCandidatePromises: Promise[] = []; + webmapLayers = webmapLayers.filter( + (webmapLayer: __esri.FeatureLayer) => { + if (webmapLayer.type === "feature" && webmapLayer.layerId != layer.layerId && webmapLayer.url) { + // Query the feature layer/table for properties missing from the webmap version + const webmapLayerUrl = webmapLayer.url + "/" + webmapLayer.layerId; + relationshipCandidatePromises.push( + common.getJson(webmapLayerUrl/*, authentication*/) + ); + return true; + } else { + return false; + } + } + ) + + // Of the queried feature layers/tables, find the one with the matching relationship id + let relationshipCandidates = await Promise.all(relationshipCandidatePromises); + let labelFormatPropsPromise: Promise; + if ( + !relationshipCandidates.some( + (candidateLayer: any, i: number) => { + if ( + candidateLayer.relationships + && candidateLayer.relationships.some(relationship => relationship.id === relationshipId) + ) { + // Found the matching relationship; get the label format from it + labelFormatPropsPromise = _getLabelFormat(webmap, webmapLayers[i] as __esri.FeatureLayer, formatUsingLayerPopup); + return true; + } else { + return false; + } + } + ) + ) { + // Fallback to all fields + labelFormatProps.labelFormat = _convertPopupFieldsToLabelSpec(layer.popupTemplate.fieldInfos); + } else { + labelFormatProps = await labelFormatPropsPromise; + labelFormatProps.relationshipId = relationshipId; + } + } } else if (labelFormatType === "fields") { labelFormatProps.labelFormat = _convertPopupFieldsToLabelSpec(layer.popupTemplate.fieldInfos); diff --git a/src/utils/queryUtils.ts b/src/utils/queryUtils.ts index 00f1685fc..5517e5685 100644 --- a/src/utils/queryUtils.ts +++ b/src/utils/queryUtils.ts @@ -128,14 +128,16 @@ export async function queryFeaturesByID( returnGeometry: boolean, outSpatialReference?: __esri.SpatialReference ): Promise<__esri.Graphic[]> { - const num = layer.capabilities.query.maxRecordCount; + const num = layer.capabilities?.query.maxRecordCount; const start = 0; const q = layer.createQuery(); q.start = start; - q.num = num; q.returnGeometry = returnGeometry; q.objectIds = ids.slice(start, num); + if (num) { + q.num = num; + } if (outSpatialReference) { q.outSpatialReference = outSpatialReference; } From 34c6505502549a2c443cb0c8d20c974194e705c9 Mon Sep 17 00:00:00 2001 From: Mike Tschudi Date: Mon, 23 Oct 2023 12:36:10 -0700 Subject: [PATCH 378/406] Lint --- src/utils/downloadUtils.ts | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/utils/downloadUtils.ts b/src/utils/downloadUtils.ts index 97517e9da..8b4191c42 100644 --- a/src/utils/downloadUtils.ts +++ b/src/utils/downloadUtils.ts @@ -595,7 +595,7 @@ export async function _getLabelFormat( ); if (webmapLayers.length > 0) { - labelFormatProps = await _getLabelFormat(webmap, webmapLayers[0] as __esri.FeatureLayer, formatUsingLayerPopup); + labelFormatProps = await _getLabelFormat(webmap, webmapLayers[0], formatUsingLayerPopup); labelFormatProps.relationshipId = relationshipId; } else { @@ -609,7 +609,7 @@ export async function _getLabelFormat( (webmapLayer: __esri.FeatureLayer) => { if (webmapLayer.type === "feature" && webmapLayer.layerId != layer.layerId && webmapLayer.url) { // Query the feature layer/table for properties missing from the webmap version - const webmapLayerUrl = webmapLayer.url + "/" + webmapLayer.layerId; + const webmapLayerUrl = webmapLayer.url + "/" + webmapLayer.layerId.toString(); relationshipCandidatePromises.push( common.getJson(webmapLayerUrl/*, authentication*/) ); @@ -621,7 +621,7 @@ export async function _getLabelFormat( ) // Of the queried feature layers/tables, find the one with the matching relationship id - let relationshipCandidates = await Promise.all(relationshipCandidatePromises); + const relationshipCandidates = await Promise.all(relationshipCandidatePromises); let labelFormatPropsPromise: Promise; if ( !relationshipCandidates.some( @@ -631,7 +631,7 @@ export async function _getLabelFormat( && candidateLayer.relationships.some(relationship => relationship.id === relationshipId) ) { // Found the matching relationship; get the label format from it - labelFormatPropsPromise = _getLabelFormat(webmap, webmapLayers[i] as __esri.FeatureLayer, formatUsingLayerPopup); + labelFormatPropsPromise = _getLabelFormat(webmap, webmapLayers[i], formatUsingLayerPopup); return true; } else { return false; From 4a4273ffd20352e68f8c44fc79df3b2b0dc3c7f6 Mon Sep 17 00:00:00 2001 From: Mike Tschudi Date: Mon, 23 Oct 2023 12:36:22 -0700 Subject: [PATCH 379/406] Update package-lock --- package-lock.json | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/package-lock.json b/package-lock.json index c8ec43d05..16cc9e12d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -5096,9 +5096,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001551", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001551.tgz", - "integrity": "sha512-vtBAez47BoGMMzlbYhfXrMV1kvRF2WP/lqiMuDu1Sb4EE4LKEgjopFDSRtZfdVnslNRpOqV/woE+Xgrwj6VQlg==", + "version": "1.0.30001553", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001553.tgz", + "integrity": "sha512-N0ttd6TrFfuqKNi+pMgWJTb9qrdJu4JSpgPFLe/lrD19ugC6fZgF0pUewRowDwzdDnb9V41mFcdlYgl/PyKf4A==", "dev": true, "funding": [ { @@ -17832,9 +17832,9 @@ "dev": true }, "caniuse-lite": { - "version": "1.0.30001551", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001551.tgz", - "integrity": "sha512-vtBAez47BoGMMzlbYhfXrMV1kvRF2WP/lqiMuDu1Sb4EE4LKEgjopFDSRtZfdVnslNRpOqV/woE+Xgrwj6VQlg==", + "version": "1.0.30001553", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001553.tgz", + "integrity": "sha512-N0ttd6TrFfuqKNi+pMgWJTb9qrdJu4JSpgPFLe/lrD19ugC6fZgF0pUewRowDwzdDnb9V41mFcdlYgl/PyKf4A==", "dev": true }, "canvg": { From cab3c98e1d20f40ebe895cf29bb07dd8c2db7276 Mon Sep 17 00:00:00 2001 From: Mike Tschudi Date: Mon, 23 Oct 2023 13:00:56 -0700 Subject: [PATCH 380/406] Insure that defaultNumLabelsPerPage is initilalized --- src/components.d.ts | 4 ++-- src/components/public-notification/public-notification.tsx | 2 +- src/components/public-notification/readme.md | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/components.d.ts b/src/components.d.ts index 360ca654c..444755ae0 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -668,7 +668,7 @@ export namespace Components { /** * number: The default number of labels per page to export */ - "defaultNumLabelsPerPage": any; + "defaultNumLabelsPerPage": number; /** * The effect that will be applied when featureHighlightEnabled is true esri/layers/support/FeatureEffect: https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-FeatureEffect.html */ @@ -1944,7 +1944,7 @@ declare namespace LocalJSX { /** * number: The default number of labels per page to export */ - "defaultNumLabelsPerPage"?: any; + "defaultNumLabelsPerPage"?: number; /** * The effect that will be applied when featureHighlightEnabled is true esri/layers/support/FeatureEffect: https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-FeatureEffect.html */ diff --git a/src/components/public-notification/public-notification.tsx b/src/components/public-notification/public-notification.tsx index 4a03ea0f6..f7e0e25c7 100644 --- a/src/components/public-notification/public-notification.tsx +++ b/src/components/public-notification/public-notification.tsx @@ -81,7 +81,7 @@ export class PublicNotification { /** * number: The default number of labels per page to export */ - @Prop() defaultNumLabelsPerPage; + @Prop() defaultNumLabelsPerPage = 6; /** * The effect that will be applied when featureHighlightEnabled is true diff --git a/src/components/public-notification/readme.md b/src/components/public-notification/readme.md index a46b5c2c8..3b5e35158 100644 --- a/src/components/public-notification/readme.md +++ b/src/components/public-notification/readme.md @@ -16,7 +16,7 @@ | `defaultBufferDistance` | `default-buffer-distance` | number: The default value to show for the buffer distance | `number` | `undefined` | | `defaultBufferUnit` | `default-buffer-unit` | number: The default value to show for the buffer unit ("feet"\|"meters"\|"miles"\|"kilometers") | `"feet" \| "kilometers" \| "meters" \| "miles"` | `undefined` | | `defaultExportTitle` | `default-export-title` | string: The default value to use for the export title | `string` | `""` | -| `defaultNumLabelsPerPage` | `default-num-labels-per-page` | number: The default number of labels per page to export | `any` | `undefined` | +| `defaultNumLabelsPerPage` | `default-num-labels-per-page` | number: The default number of labels per page to export | `number` | `6` | | `featureEffect` | -- | The effect that will be applied when featureHighlightEnabled is true esri/layers/support/FeatureEffect: https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-FeatureEffect.html | `FeatureEffect` | `undefined` | | `featureHighlightEnabled` | `feature-highlight-enabled` | boolean: When enabled features will be highlighted when their notification list item is clicked. | `boolean` | `undefined` | | `mapView` | -- | esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html | `MapView` | `undefined` | From 9e0ab7e72a6dc7e55b0264b3ff0036a7ceb47fc7 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Mon, 23 Oct 2023 14:34:15 -0600 Subject: [PATCH 381/406] update version --- CHANGELOG.md | 5 ++++- package-lock.json | 4 ++-- package.json | 2 +- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 689086c5d..eb61a6dfa 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,8 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm ## [Unreleased] +## [0.6.38] - Oct 23rd 2023 + ## [0.6.37] - Oct 23rd 2023 ## [0.6.36] - Oct 20th 2023 @@ -292,4 +294,5 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm [0.6.35]: https://github.com/Esri/solution.js/compare/v0.6.34...v0.6.35 "v0.6.35" [0.6.36]: https://github.com/Esri/solution.js/compare/v0.6.35...v0.6.36 "v0.6.36" [0.6.37]: https://github.com/Esri/solution.js/compare/v0.6.36...v0.6.37 "v0.6.37" -[Unreleased]: https://github.com/Esri/solution.js/compare/v0.6.37...HEAD "Unreleased Changes" +[0.6.38]: https://github.com/Esri/solution.js/compare/v0.6.37...v0.6.38 "v0.6.38" +[Unreleased]: https://github.com/Esri/solution.js/compare/v0.6.38...HEAD "Unreleased Changes" diff --git a/package-lock.json b/package-lock.json index 16cc9e12d..089e417c9 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@esri/solutions-components", - "version": "0.6.37", + "version": "0.6.38", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@esri/solutions-components", - "version": "0.6.37", + "version": "0.6.38", "license": "Apache-2.0", "dependencies": { "@esri/arcgis-rest-auth": "^3.4.2", diff --git a/package.json b/package.json index d71b7cb44..0da7862ae 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@esri/solutions-components", - "version": "0.6.37", + "version": "0.6.38", "description": "Web Components for Esri's Solutions Applications", "main": "dist/index.cjs.js", "module": "dist/index.js", From 136830ef684a2503b90598bba28a675e25266348 Mon Sep 17 00:00:00 2001 From: John Hauck Date: Tue, 24 Oct 2023 12:40:53 -0600 Subject: [PATCH 382/406] workaround theme issue --- src/components.d.ts | 20 ++++++++++----- .../crowdsource-manager.tsx | 7 +++--- src/components/crowdsource-manager/readme.md | 2 +- src/components/map-card/map-card.tsx | 10 ++++++-- src/components/map-card/readme.md | 25 ++++++++++--------- src/utils/interfaces.ts | 2 ++ 6 files changed, 42 insertions(+), 24 deletions(-) diff --git a/src/components.d.ts b/src/components.d.ts index 444755ae0..1a20b455a 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -5,9 +5,9 @@ * It contains typing information for all components that exist in this project. */ import { HTMLStencilElement, JSXBase } from "@stencil/core/internal"; -import { DistanceUnit, EDrawMode, ELayoutMode, IBasemapConfig, IExportInfos, IInventoryItem, IMapChange, IMapInfo, ISearchConfiguration, ISelectionSet, ISketchGraphicsChange, ISolutionSpatialReferenceInfo, ISpatialRefRepresentation, IValueChange } from "./utils/interfaces"; +import { DistanceUnit, EDrawMode, ELayoutMode, IBasemapConfig, IExportInfos, IInventoryItem, IMapChange, IMapInfo, ISearchConfiguration, ISelectionSet, ISketchGraphicsChange, ISolutionSpatialReferenceInfo, ISpatialRefRepresentation, IValueChange, theme } from "./utils/interfaces"; import { UserSession } from "@esri/solution-common"; -export { DistanceUnit, EDrawMode, ELayoutMode, IBasemapConfig, IExportInfos, IInventoryItem, IMapChange, IMapInfo, ISearchConfiguration, ISelectionSet, ISketchGraphicsChange, ISolutionSpatialReferenceInfo, ISpatialRefRepresentation, IValueChange } from "./utils/interfaces"; +export { DistanceUnit, EDrawMode, ELayoutMode, IBasemapConfig, IExportInfos, IInventoryItem, IMapChange, IMapInfo, ISearchConfiguration, ISelectionSet, ISketchGraphicsChange, ISolutionSpatialReferenceInfo, ISpatialRefRepresentation, IValueChange, theme } from "./utils/interfaces"; export { UserSession } from "@esri/solution-common"; export namespace Components { interface BasemapGallery { @@ -148,9 +148,9 @@ export namespace Components { */ "showNewestFirst": boolean; /** - * "light" | "dark": Calcite theme to be used + * theme: "light" | "dark" theme to be used */ - "theme": "light" | "dark"; + "theme": theme; /** * boolean: When true the selected feature will zoomed to in the map and the row will be scrolled to within the table */ @@ -336,6 +336,10 @@ export namespace Components { * esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html */ "mapView": __esri.MapView; + /** + * theme: "light" | "dark" theme to be used + */ + "theme": theme; } interface MapDrawTools { /** @@ -1420,9 +1424,9 @@ declare namespace LocalJSX { */ "showNewestFirst"?: boolean; /** - * "light" | "dark": Calcite theme to be used + * theme: "light" | "dark" theme to be used */ - "theme"?: "light" | "dark"; + "theme"?: theme; /** * boolean: When true the selected feature will zoomed to in the map and the row will be scrolled to within the table */ @@ -1619,6 +1623,10 @@ declare namespace LocalJSX { * Emitted when a new map is loaded */ "onMapChanged"?: (event: MapCardCustomEvent) => void; + /** + * theme: "light" | "dark" theme to be used + */ + "theme"?: theme; } interface MapDrawTools { /** diff --git a/src/components/crowdsource-manager/crowdsource-manager.tsx b/src/components/crowdsource-manager/crowdsource-manager.tsx index b71b0a2fb..5aafe1a00 100644 --- a/src/components/crowdsource-manager/crowdsource-manager.tsx +++ b/src/components/crowdsource-manager/crowdsource-manager.tsx @@ -17,7 +17,7 @@ import { Component, Element, Host, h, Listen, Prop, State, VNode, Watch } from "@stencil/core"; import CrowdsourceManager_T9n from "../../assets/t9n/crowdsource-manager/resources.json"; import { getLocaleComponentStrings } from "../../utils/locale"; -import { ELayoutMode, IBasemapConfig, IMapChange, IMapInfo, ISearchConfiguration } from "../../utils/interfaces"; +import { ELayoutMode, IBasemapConfig, IMapChange, IMapInfo, ISearchConfiguration, theme } from "../../utils/interfaces"; @Component({ tag: "crowdsource-manager", @@ -124,9 +124,9 @@ export class CrowdsourceManager { @Prop() searchConfiguration: ISearchConfiguration; /** - * "light" | "dark": Calcite theme to be used + * theme: "light" | "dark" theme to be used */ - @Prop() theme: "light" | "dark" = "light"; + @Prop() theme: theme = "light"; /** * boolean: When true the selected feature will zoomed to in the map and the row will be scrolled to within the table @@ -481,6 +481,7 @@ export class CrowdsourceManager { enableSearch={this.enableSearch} hidden={this._expandPopup} mapInfos={this.mapInfos?.filter(mapInfo => mapInfo.visible !== false)} + theme={this.theme} />
); diff --git a/src/components/crowdsource-manager/readme.md b/src/components/crowdsource-manager/readme.md index 0ec8179c3..0d4420480 100644 --- a/src/components/crowdsource-manager/readme.md +++ b/src/components/crowdsource-manager/readme.md @@ -26,7 +26,7 @@ | `onlyShowUpdatableLayers` | `only-show-updatable-layers` | boolean: When true only editable layers that support the update capability will be available | `boolean` | `true` | | `searchConfiguration` | -- | ISearchConfiguration: Configuration details for the Search widget | `ISearchConfiguration` | `undefined` | | `showNewestFirst` | `show-newest-first` | boolean: when true the table will be sorted by objectid in descending order by default | `boolean` | `true` | -| `theme` | `theme` | "light" \| "dark": Calcite theme to be used | `"dark" \| "light"` | `"light"` | +| `theme` | `theme` | theme: "light" \| "dark" theme to be used | `"dark" \| "light"` | `"light"` | | `zoomAndScrollToSelected` | `zoom-and-scroll-to-selected` | boolean: When true the selected feature will zoomed to in the map and the row will be scrolled to within the table | `boolean` | `false` | diff --git a/src/components/map-card/map-card.tsx b/src/components/map-card/map-card.tsx index 92185b49d..8c1f0942a 100644 --- a/src/components/map-card/map-card.tsx +++ b/src/components/map-card/map-card.tsx @@ -16,7 +16,7 @@ import { Component, Element, Event, EventEmitter, Host, h, Listen, Prop, State, Watch } from "@stencil/core"; import { loadModules } from "../../utils/loadModules"; -import { IBasemapConfig, IMapChange, IMapInfo, ISearchConfiguration } from "../../utils/interfaces"; +import { IBasemapConfig, IMapChange, IMapInfo, ISearchConfiguration, theme } from "../../utils/interfaces"; // TODO navigation and accessability isn't right for the map list // tab does not go into the list when it's open @@ -95,6 +95,11 @@ export class MapCard { */ @Prop() mapView: __esri.MapView; + /** + * theme: "light" | "dark" theme to be used + */ + @Prop() theme: theme; + //-------------------------------------------------------------------------- // // State (internal) @@ -216,13 +221,14 @@ export class MapCard { */ render() { const mapClass = this.hidden ? "visibility-hidden" : ""; + const themeClass = this.theme === "dark" ? "calcite-mode-dark" : "calcite-mode-light"; return (
(this._mapDiv = el)}/>