From da2455639ddd3854e4dc49307630ed95fd6d7429 Mon Sep 17 00:00:00 2001 From: Tom Hicks Date: Fri, 6 Jun 2025 11:05:07 +0200 Subject: [PATCH 1/2] Update deps --- docs/Elements.md | 63 + docs/Elements/CircleElementCreate.md | 2 +- docs/Elements/CircleElementRead.md | 2 +- docs/Elements/CircleElementUpdate.md | 2 +- docs/Elements/Element.md | 2 +- docs/Elements/ElementCreate.md | 2 +- docs/Elements/ElementUpdate.md | 2 +- docs/Elements/ElementsController.md | 150 +- docs/Elements/HighlighterElementCreate.md | 2 +- docs/Elements/HighlighterElementRead.md | 2 +- docs/Elements/HighlighterElementUpdate.md | 2 +- docs/Elements/ImageElementCreate.md | 2 +- docs/Elements/ImageElementRead.md | 2 +- docs/Elements/ImageElementUpdate.md | 2 +- docs/Elements/LinkElementRead.md | 2 +- docs/Elements/MarkerElementCreate.md | 2 +- docs/Elements/MarkerElementRead.md | 2 +- docs/Elements/MarkerElementUpdate.md | 2 +- docs/Elements/NoteElementCreate.md | 2 +- docs/Elements/NoteElementRead.md | 2 +- docs/Elements/NoteElementUpdate.md | 2 +- docs/Elements/PathElementCreate.md | 2 +- docs/Elements/PathElementRead.md | 2 +- docs/Elements/PathElementUpdate.md | 2 +- docs/Elements/PlaceElementCreate.md | 2 +- docs/Elements/PlaceElementRead.md | 2 +- docs/Elements/PlaceElementUpdate.md | 2 +- docs/Elements/PolygonElementCreate.md | 2 +- docs/Elements/PolygonElementRead.md | 2 +- docs/Elements/PolygonElementUpdate.md | 2 +- docs/Elements/README.md | 63 - docs/Elements/TextElementCreate.md | 2 +- docs/Elements/TextElementRead.md | 2 +- docs/Elements/TextElementUpdate.md | 2 +- .../README.md => Interactions.md} | 4 +- docs/Interactions/InteractionsController.md | 20 +- docs/Interactions/MapInteractionEvent.md | 10 +- docs/Layers.md | 99 + docs/Layers/AggregationMethod.md | 2 +- docs/Layers/CreateLayersFromGeoJsonParams.md | 12 +- docs/Layers/FeltTiledVectorSource.md | 6 +- docs/Layers/FilterExpression.md | 2 +- docs/Layers/FilterLogicGate.md | 2 +- docs/Layers/FilterTernary.md | 2 +- docs/Layers/Filters.md | 2 +- docs/Layers/GeometryFilter.md | 2 +- docs/Layers/GetLayerCalculationParams.md | 8 +- docs/Layers/GetLayerHistogramParams.md | 18 +- docs/Layers/GetRenderedFeaturesConstraint.md | 2 +- docs/Layers/GridConfig.md | 2 +- docs/Layers/GridType.md | 2 +- docs/Layers/Layer.md | 2 +- docs/Layers/LayerFeature.md | 2 +- docs/Layers/LayerProcessingStatus.md | 2 +- docs/Layers/LayerSchemaAttribute.md | 2 +- docs/Layers/LayerSchemaBooleanAttribute.md | 8 +- docs/Layers/LayerSchemaDateAttribute.md | 6 +- docs/Layers/LayerSchemaDateTimeAttribute.md | 6 +- docs/Layers/LayerSchemaNumericAttribute.md | 6 +- docs/Layers/LayerSchemaTextAttribute.md | 6 +- docs/Layers/LayersController.md | 382 +-- docs/Layers/LegendItemsConstraint.md | 8 +- docs/Layers/MultiAggregationConfig.md | 6 +- docs/Layers/PrecomputedAggregationMethod.md | 2 +- docs/Layers/README.md | 99 - docs/Layers/RasterValue.md | 2 +- docs/Layers/VectorLayer.md | 2 +- docs/{Main/README.md => Main.md} | 12 +- docs/Main/Felt.md | 26 +- docs/Main/FeltController.md | 772 ++--- docs/{Misc/README.md => Misc.md} | 4 +- docs/Misc/MapDetails.md | 8 +- docs/Misc/MiscController.md | 4 +- docs/README.md | 20 +- docs/Selection.md | 21 + docs/Selection/EntityNode.md | 2 +- docs/Selection/FeatureSelection.md | 2 +- docs/Selection/README.md | 21 - docs/Selection/SelectionController.md | 38 +- docs/Shared.md | 25 + docs/Shared/FeltBoundary.md | 2 +- docs/Shared/FeltZoom.md | 2 +- docs/Shared/GeoJsonFeature.md | 4 +- docs/Shared/GeoJsonGeometry.md | 2 +- docs/Shared/GeoJsonProperties.md | 2 +- docs/Shared/LngLatTuple.md | 2 +- docs/Shared/README.md | 25 - docs/Shared/SortDirection.md | 2 +- docs/Tools.md | 52 + docs/Tools/ConfigurableToolType.md | 2 +- docs/Tools/InputToolSettings.md | 2 +- docs/Tools/PlaceFrame.md | 2 +- docs/Tools/PlaceSymbol.md | 2 +- docs/Tools/README.md | 52 - docs/Tools/ToolSettingsChangeEvent.md | 2 +- docs/Tools/ToolSettingsMap.md | 20 +- docs/Tools/ToolType.md | 2 +- docs/Tools/ToolsController.md | 46 +- docs/UI.md | 34 + docs/UI/CreateActionTriggerParams.md | 2 +- docs/UI/CreatePanelElementsParams.md | 12 +- docs/UI/CreatePanelParams.md | 2 +- docs/UI/PlacementForUIElement.md | 2 +- docs/UI/README.md | 34 - docs/UI/UIPanelCreate.md | 8 +- docs/UI/UIPanelElementsCreate.md | 2 +- docs/UI/UISelectElementCreate.md | 16 +- docs/UI/UITextInputElementCreate.md | 30 +- docs/UI/UiController.md | 86 +- docs/UI/UpdatePanelElementsParams.md | 2 +- docs/UI/UpdatePanelParams.md | 12 +- docs/Viewport.md | 16 + docs/Viewport/README.md | 16 - docs/Viewport/SetViewportCenterZoomParams.md | 10 +- docs/Viewport/ViewportController.md | 56 +- package-lock.json | 2931 ++++++----------- package.json | 34 +- typedoc.json | 2 +- 118 files changed, 2401 insertions(+), 3158 deletions(-) create mode 100644 docs/Elements.md delete mode 100644 docs/Elements/README.md rename docs/{Interactions/README.md => Interactions.md} (59%) create mode 100644 docs/Layers.md delete mode 100644 docs/Layers/README.md rename docs/{Main/README.md => Main.md} (67%) rename docs/{Misc/README.md => Misc.md} (51%) create mode 100644 docs/Selection.md delete mode 100644 docs/Selection/README.md create mode 100644 docs/Shared.md delete mode 100644 docs/Shared/README.md create mode 100644 docs/Tools.md delete mode 100644 docs/Tools/README.md create mode 100644 docs/UI.md delete mode 100644 docs/UI/README.md create mode 100644 docs/Viewport.md delete mode 100644 docs/Viewport/README.md diff --git a/docs/Elements.md b/docs/Elements.md new file mode 100644 index 00000000..cbaef18f --- /dev/null +++ b/docs/Elements.md @@ -0,0 +1,63 @@ +*** + +The Felt SDK lets you read, create and update elements on the map. + +Elements that are created via the SDK are only available to the current +session - they are not persisted to the map and not available to other users +of the map. + +> If you want to let your users create elements (as opposed to using the SDK to +> create them programmatically), you can use the [ToolsController](Tools/ToolsController.md) to +> select and configure the drawing tools in Felt. + +# Controller + +* [ElementsController](Elements/ElementsController.md) + +# Interfaces + +* [PlaceElementCreate](Elements/PlaceElementCreate.md) +* [PathElementCreate](Elements/PathElementCreate.md) +* [PolygonElementCreate](Elements/PolygonElementCreate.md) +* [CircleElementCreate](Elements/CircleElementCreate.md) +* [MarkerElementCreate](Elements/MarkerElementCreate.md) +* [HighlighterElementCreate](Elements/HighlighterElementCreate.md) +* [TextElementCreate](Elements/TextElementCreate.md) +* [NoteElementCreate](Elements/NoteElementCreate.md) +* [ImageElementCreate](Elements/ImageElementCreate.md) +* [PlaceElementRead](Elements/PlaceElementRead.md) +* [PathElementRead](Elements/PathElementRead.md) +* [PolygonElementRead](Elements/PolygonElementRead.md) +* [CircleElementRead](Elements/CircleElementRead.md) +* [MarkerElementRead](Elements/MarkerElementRead.md) +* [HighlighterElementRead](Elements/HighlighterElementRead.md) +* [TextElementRead](Elements/TextElementRead.md) +* [NoteElementRead](Elements/NoteElementRead.md) +* [ImageElementRead](Elements/ImageElementRead.md) +* [LinkElementRead](Elements/LinkElementRead.md) +* [PlaceElementUpdate](Elements/PlaceElementUpdate.md) +* [PathElementUpdate](Elements/PathElementUpdate.md) +* [PolygonElementUpdate](Elements/PolygonElementUpdate.md) +* [CircleElementUpdate](Elements/CircleElementUpdate.md) +* [MarkerElementUpdate](Elements/MarkerElementUpdate.md) +* [HighlighterElementUpdate](Elements/HighlighterElementUpdate.md) +* [TextElementUpdate](Elements/TextElementUpdate.md) +* [NoteElementUpdate](Elements/NoteElementUpdate.md) +* [ImageElementUpdate](Elements/ImageElementUpdate.md) + +# Type Aliases + +* [ElementCreate](Elements/ElementCreate.md) +* [ElementUpdate](Elements/ElementUpdate.md) + +# Element Groups + +* [ElementGroup](Elements/ElementGroup.md) +* [GetElementGroupsConstraint](Elements/GetElementGroupsConstraint.md) +* [ElementGroupChangeCallbackParams](Elements/ElementGroupChangeCallbackParams.md) + +# Elements + +* [GetElementsConstraint](Elements/GetElementsConstraint.md) +* [ElementChangeCallbackParams](Elements/ElementChangeCallbackParams.md) +* [Element](Elements/Element.md) diff --git a/docs/Elements/CircleElementCreate.md b/docs/Elements/CircleElementCreate.md index e8f3e468..be927f5c 100644 --- a/docs/Elements/CircleElementCreate.md +++ b/docs/Elements/CircleElementCreate.md @@ -81,7 +81,7 @@ and Markers, so their description will not be shown. ## attributes? -> `optional` **attributes**: `Record`\<`string`, `unknown`> +> `optional` **attributes**: `Record`<`string`, `unknown`> A set of key-value pairs that can be used to store arbitrary data about the element. diff --git a/docs/Elements/CircleElementRead.md b/docs/Elements/CircleElementRead.md index 6db6b7af..68454784 100644 --- a/docs/Elements/CircleElementRead.md +++ b/docs/Elements/CircleElementRead.md @@ -67,7 +67,7 @@ and Markers, so their description will not be shown. ## attributes -> **attributes**: `Record`\<`string`, `unknown`> +> **attributes**: `Record`<`string`, `unknown`> A set of key-value pairs that can be used to store arbitrary data about the element. diff --git a/docs/Elements/CircleElementUpdate.md b/docs/Elements/CircleElementUpdate.md index 2ba82080..00d0c351 100644 --- a/docs/Elements/CircleElementUpdate.md +++ b/docs/Elements/CircleElementUpdate.md @@ -73,7 +73,7 @@ and Markers, so their description will not be shown. ## attributes? -> `optional` **attributes**: `Record`\<`string`, `unknown`> +> `optional` **attributes**: `Record`<`string`, `unknown`> A set of key-value pairs that can be used to store arbitrary data about the element. diff --git a/docs/Elements/Element.md b/docs/Elements/Element.md index f3b52d99..18029688 100644 --- a/docs/Elements/Element.md +++ b/docs/Elements/Element.md @@ -1,3 +1,3 @@ *** -> **Element**: [`PlaceElementRead`](PlaceElementRead.md) | [`PathElementRead`](PathElementRead.md) | [`PolygonElementRead`](PolygonElementRead.md) | [`CircleElementRead`](CircleElementRead.md) | [`MarkerElementRead`](MarkerElementRead.md) | [`HighlighterElementRead`](HighlighterElementRead.md) | [`TextElementRead`](TextElementRead.md) | [`NoteElementRead`](NoteElementRead.md) | [`ImageElementRead`](ImageElementRead.md) | [`LinkElementRead`](LinkElementRead.md) +> **Element** = [`PlaceElementRead`](PlaceElementRead.md) | [`PathElementRead`](PathElementRead.md) | [`PolygonElementRead`](PolygonElementRead.md) | [`CircleElementRead`](CircleElementRead.md) | [`MarkerElementRead`](MarkerElementRead.md) | [`HighlighterElementRead`](HighlighterElementRead.md) | [`TextElementRead`](TextElementRead.md) | [`NoteElementRead`](NoteElementRead.md) | [`ImageElementRead`](ImageElementRead.md) | [`LinkElementRead`](LinkElementRead.md) diff --git a/docs/Elements/ElementCreate.md b/docs/Elements/ElementCreate.md index ee8b9620..4ff7b624 100644 --- a/docs/Elements/ElementCreate.md +++ b/docs/Elements/ElementCreate.md @@ -1,3 +1,3 @@ *** -> **ElementCreate**: [`PlaceElementCreate`](PlaceElementCreate.md) | [`PathElementCreate`](PathElementCreate.md) | [`PolygonElementCreate`](PolygonElementCreate.md) | [`CircleElementCreate`](CircleElementCreate.md) | [`MarkerElementCreate`](MarkerElementCreate.md) | [`HighlighterElementCreate`](HighlighterElementCreate.md) | [`ImageElementCreate`](ImageElementCreate.md) | [`TextElementCreate`](TextElementCreate.md) | [`NoteElementCreate`](NoteElementCreate.md) +> **ElementCreate** = [`PlaceElementCreate`](PlaceElementCreate.md) | [`PathElementCreate`](PathElementCreate.md) | [`PolygonElementCreate`](PolygonElementCreate.md) | [`CircleElementCreate`](CircleElementCreate.md) | [`MarkerElementCreate`](MarkerElementCreate.md) | [`HighlighterElementCreate`](HighlighterElementCreate.md) | [`ImageElementCreate`](ImageElementCreate.md) | [`TextElementCreate`](TextElementCreate.md) | [`NoteElementCreate`](NoteElementCreate.md) diff --git a/docs/Elements/ElementUpdate.md b/docs/Elements/ElementUpdate.md index 181fb0a4..11551550 100644 --- a/docs/Elements/ElementUpdate.md +++ b/docs/Elements/ElementUpdate.md @@ -1,3 +1,3 @@ *** -> **ElementUpdate**: [`PlaceElementUpdate`](PlaceElementUpdate.md) | [`PathElementUpdate`](PathElementUpdate.md) | [`PolygonElementUpdate`](PolygonElementUpdate.md) | [`CircleElementUpdate`](CircleElementUpdate.md) | [`MarkerElementUpdate`](MarkerElementUpdate.md) | [`HighlighterElementUpdate`](HighlighterElementUpdate.md) | [`TextElementUpdate`](TextElementUpdate.md) | [`NoteElementUpdate`](NoteElementUpdate.md) | [`ImageElementUpdate`](ImageElementUpdate.md) +> **ElementUpdate** = [`PlaceElementUpdate`](PlaceElementUpdate.md) | [`PathElementUpdate`](PathElementUpdate.md) | [`PolygonElementUpdate`](PolygonElementUpdate.md) | [`CircleElementUpdate`](CircleElementUpdate.md) | [`MarkerElementUpdate`](MarkerElementUpdate.md) | [`HighlighterElementUpdate`](HighlighterElementUpdate.md) | [`TextElementUpdate`](TextElementUpdate.md) | [`NoteElementUpdate`](NoteElementUpdate.md) | [`ImageElementUpdate`](ImageElementUpdate.md) diff --git a/docs/Elements/ElementsController.md b/docs/Elements/ElementsController.md index c3037c29..a7fce7a7 100644 --- a/docs/Elements/ElementsController.md +++ b/docs/Elements/ElementsController.md @@ -11,19 +11,19 @@ map, and make changes to their visibility. ## getElement() -> **getElement**(`id`: `string`): `Promise`\<`null` | [`Element`](Element.md)> +> **getElement**(`id`: `string`): `Promise`<`null` | [`Element`](Element.md)> Get a single element from the map by its id. ### Parameters -| Parameter | Type | Description | -| --------- | -------- | -------------------------------------- | -| `id` | `string` | The id of the element you want to get. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `id` | `string` | The id of the element you want to get. | ### Returns -`Promise`\<`null` | [`Element`](Element.md)> +`Promise`<`null` | [`Element`](Element.md)> The requested element. @@ -37,7 +37,7 @@ const element = await felt.getElement("element-1"); ## getElementGeometry() -> **getElementGeometry**(`id`: `string`): `Promise`\<`null` | [`GeoJsonGeometry`](../Shared/GeoJsonGeometry.md)> +> **getElementGeometry**(`id`: `string`): `Promise`<`null` | [`GeoJsonGeometry`](../Shared/GeoJsonGeometry.md)> Get the geometry of an element in GeoJSON geometry format. @@ -58,13 +58,13 @@ property of the element, with some differences: ### Parameters -| Parameter | Type | Description | -| --------- | -------- | ------------------------------------------------------ | -| `id` | `string` | The id of the element you want to get the geometry of. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `id` | `string` | The id of the element you want to get the geometry of. | ### Returns -`Promise`\<`null` | [`GeoJsonGeometry`](../Shared/GeoJsonGeometry.md)> +`Promise`<`null` | [`GeoJsonGeometry`](../Shared/GeoJsonGeometry.md)> ### Example @@ -77,20 +77,20 @@ console.log(geometry?.type, geometry?.coordinates); ## getElements() -> **getElements**(`constraint`?: [`GetElementsConstraint`](GetElementsConstraint.md)): `Promise`\<(`null` | [`Element`](Element.md))\[]> +> **getElements**(`constraint?`: [`GetElementsConstraint`](GetElementsConstraint.md)): `Promise`<(`null` | [`Element`](Element.md))\[]> Gets elements from the map, according to the constraints supplied. If no constraints are supplied, all elements will be returned. ### Parameters -| Parameter | Type | Description | -| ------------- | --------------------------------------------------- | --------------------------------------------------------------- | -| `constraint`? | [`GetElementsConstraint`](GetElementsConstraint.md) | The constraints to apply to the elements returned from the map. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `constraint?` | [`GetElementsConstraint`](GetElementsConstraint.md) | The constraints to apply to the elements returned from the map. | ### Returns -`Promise`\<(`null` | [`Element`](Element.md))\[]> +`Promise`<(`null` | [`Element`](Element.md))\[]> All elements on the map. @@ -110,19 +110,19 @@ const elements = await felt.getElements(); ## getElementGroup() -> **getElementGroup**(`id`: `string`): `Promise`\<`null` | [`ElementGroup`](ElementGroup.md)> +> **getElementGroup**(`id`: `string`): `Promise`<`null` | [`ElementGroup`](ElementGroup.md)> Get an element group from the map by its id. ### Parameters -| Parameter | Type | -| --------- | -------- | -| `id` | `string` | +| Parameter | Type | +| ------ | ------ | +| `id` | `string` | ### Returns -`Promise`\<`null` | [`ElementGroup`](ElementGroup.md)> +`Promise`<`null` | [`ElementGroup`](ElementGroup.md)> The requested element group. @@ -136,20 +136,20 @@ const elementGroup = await felt.getElementGroup("element-group-1"); ## getElementGroups() -> **getElementGroups**(`constraint`?: [`GetElementGroupsConstraint`](GetElementGroupsConstraint.md)): `Promise`\<(`null` | [`ElementGroup`](ElementGroup.md))\[]> +> **getElementGroups**(`constraint?`: [`GetElementGroupsConstraint`](GetElementGroupsConstraint.md)): `Promise`<(`null` | [`ElementGroup`](ElementGroup.md))\[]> Gets element groups from the map, according to the filters supplied. If no constraints are supplied, all element groups will be returned in rendering order. ### Parameters -| Parameter | Type | Description | -| ------------- | ------------------------------------------------------------- | --------------------------------------------------------------------- | -| `constraint`? | [`GetElementGroupsConstraint`](GetElementGroupsConstraint.md) | The constraints to apply to the element groups returned from the map. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `constraint?` | [`GetElementGroupsConstraint`](GetElementGroupsConstraint.md) | The constraints to apply to the element groups returned from the map. | ### Returns -`Promise`\<(`null` | [`ElementGroup`](ElementGroup.md))\[]> +`Promise`<(`null` | [`ElementGroup`](ElementGroup.md))\[]> The requested element groups. @@ -163,19 +163,19 @@ const elementGroups = await felt.getElementGroups({ ids: ["element-group-1", "el ## setElementGroupVisibility() -> **setElementGroupVisibility**(`visibility`: [`SetVisibilityRequest`](../Shared/SetVisibilityRequest.md)): `Promise`\<`void`> +> **setElementGroupVisibility**(`visibility`: [`SetVisibilityRequest`](../Shared/SetVisibilityRequest.md)): `Promise`<`void`> Hide or show element groups with the given ids. ### Parameters -| Parameter | Type | -| ------------ | ----------------------------------------------------------- | +| Parameter | Type | +| ------ | ------ | | `visibility` | [`SetVisibilityRequest`](../Shared/SetVisibilityRequest.md) | ### Returns -`Promise`\<`void`> +`Promise`<`void`> ### Example @@ -187,19 +187,19 @@ felt.setElementGroupVisibility({ show: ["element-group-1", "element-group-2"], h ## createElement() -> **createElement**(`element`: [`ElementCreate`](ElementCreate.md)): `Promise`\<[`Element`](Element.md)> +> **createElement**(`element`: [`ElementCreate`](ElementCreate.md)): `Promise`<[`Element`](Element.md)> Create a new element on the map. ### Parameters -| Parameter | Type | -| --------- | ----------------------------------- | +| Parameter | Type | +| ------ | ------ | | `element` | [`ElementCreate`](ElementCreate.md) | ### Returns -`Promise`\<[`Element`](Element.md)> +`Promise`<[`Element`](Element.md)> ### Example @@ -211,19 +211,19 @@ const element = await felt.createElement({ type: "Place", coordinates: [10, 10] ## updateElement() -> **updateElement**(`element`: [`ElementUpdate`](ElementUpdate.md)): `Promise`\<[`Element`](Element.md)> +> **updateElement**(`element`: [`ElementUpdate`](ElementUpdate.md)): `Promise`<[`Element`](Element.md)> Update an element on the map. ### Parameters -| Parameter | Type | -| --------- | ----------------------------------- | +| Parameter | Type | +| ------ | ------ | | `element` | [`ElementUpdate`](ElementUpdate.md) | ### Returns -`Promise`\<[`Element`](Element.md)> +`Promise`<[`Element`](Element.md)> ### Example @@ -246,19 +246,19 @@ await felt.updateElement({ ## deleteElement() -> **deleteElement**(`id`: `string`): `Promise`\<`void`> +> **deleteElement**(`id`: `string`): `Promise`<`void`> Delete an element from the map. ### Parameters -| Parameter | Type | -| --------- | -------- | -| `id` | `string` | +| Parameter | Type | +| ------ | ------ | +| `id` | `string` | ### Returns -`Promise`\<`void`> +`Promise`<`void`> ### Example @@ -270,16 +270,16 @@ await felt.deleteElement("element-1"); ## onElementCreate() -> **onElementCreate**(`args`: \{ `handler`: (`change`: [`ElementChangeCallbackParams`](ElementChangeCallbackParams.md)) => `void`; }): `VoidFunction` +> **onElementCreate**(`args`: { `handler`: (`change`: [`ElementChangeCallbackParams`](ElementChangeCallbackParams.md)) => `void`; }): `VoidFunction` Adds a listener for when an element is created. ### Parameters -| Parameter | Type | Description | -| -------------- | ------------------------------------------------------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `args` | \{ `handler`: (`change`: [`ElementChangeCallbackParams`](ElementChangeCallbackParams.md)) => `void`; } | - | -| `args.handler` | (`change`: [`ElementChangeCallbackParams`](ElementChangeCallbackParams.md)) => `void` | The handler that is called when an element is created. This will fire when elements are created programatically, or when the user starts creating an element with a drawing tool. When the user creates an element with a drawing tool, it can begin in an invalid state, such as if you've just placed a single point in a polygon. You can use the `isBeingCreated` property to determine if the element is still being created by a drawing tool. If you want to know when the element is finished being created, you can use the [\`onElementCreateEnd\`](ElementsController.md#onelementcreateend) listener. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `args` | { `handler`: (`change`: [`ElementChangeCallbackParams`](ElementChangeCallbackParams.md)) => `void`; } | - | +| `args.handler` | (`change`: [`ElementChangeCallbackParams`](ElementChangeCallbackParams.md)) => `void` | The handler that is called when an element is created. This will fire when elements are created programatically, or when the user starts creating an element with a drawing tool. When the user creates an element with a drawing tool, it can begin in an invalid state, such as if you've just placed a single point in a polygon. You can use the `isBeingCreated` property to determine if the element is still being created by a drawing tool. If you want to know when the element is finished being created, you can use the [\`onElementCreateEnd\`](#onelementcreateend) listener. | ### Returns @@ -302,11 +302,11 @@ unsubscribe(); ## onElementCreateEnd() -> **onElementCreateEnd**(`args`: \{ `handler`: (`params`: \{ `element`: [`Element`](Element.md); }) => `void`; }): `VoidFunction` +> **onElementCreateEnd**(`args`: { `handler`: (`params`: { `element`: [`Element`](Element.md); }) => `void`; }): `VoidFunction` Listens for when a new element is finished being created by a drawing tool. -This differs from the [\`onElementCreate\`](ElementsController.md#onelementcreate) listener, which fires whenever an +This differs from the [\`onElementCreate\`](#onelementcreate) listener, which fires whenever an element is first created. This fires when the user finishes creating an element which could be after a series of interactions. @@ -316,10 +316,10 @@ add the marker, type a label, then finally deselect the element. ### Parameters -| Parameter | Type | Description | -| -------------- | ------------------------------------------------------------------------------- | ---------------------------------------------- | -| `args` | \{ `handler`: (`params`: \{ `element`: [`Element`](Element.md); }) => `void`; } | - | -| `args.handler` | (`params`: \{ `element`: [`Element`](Element.md); }) => `void` | The handler to call whenever this event fires. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `args` | { `handler`: (`params`: { `element`: [`Element`](Element.md); }) => `void`; } | - | +| `args.handler` | (`params`: { `element`: [`Element`](Element.md); }) => `void` | The handler to call whenever this event fires. | ### Returns @@ -342,14 +342,14 @@ unsubscribe(); ## onElementChange() -> **onElementChange**(`args`: \{ `options`: \{ `id`: `string`; }; `handler`: (`change`: [`ElementChangeCallbackParams`](ElementChangeCallbackParams.md)) => `void`; }): `VoidFunction` +> **onElementChange**(`args`: { `options`: { `id`: `string`; }; `handler`: (`change`: [`ElementChangeCallbackParams`](ElementChangeCallbackParams.md)) => `void`; }): `VoidFunction` Adds a listener for when an element changes. This will fire when an element is being edited, either on the map by the user or programatically. -Like the [\`onElementCreate\`](ElementsController.md#onelementcreate) listener, this will fire when an element is +Like the [\`onElementCreate\`](#onelementcreate) listener, this will fire when an element is still being created by a drawing tool. You can check the [\`isBeingCreated\`](ElementChangeCallbackParams.md#isbeingcreated) property to determine if the element is @@ -357,12 +357,12 @@ still being created by a drawing tool. ### Parameters -| Parameter | Type | Description | -| ----------------- | --------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------- | -| `args` | \{ `options`: \{ `id`: `string`; }; `handler`: (`change`: [`ElementChangeCallbackParams`](ElementChangeCallbackParams.md)) => `void`; } | - | -| `args.options` | \{ `id`: `string`; } | - | -| `args.options.id` | `string` | The id of the element to listen for changes to. | -| `args.handler` | (`change`: [`ElementChangeCallbackParams`](ElementChangeCallbackParams.md)) => `void` | The handler that is called when the element changes. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `args` | { `options`: { `id`: `string`; }; `handler`: (`change`: [`ElementChangeCallbackParams`](ElementChangeCallbackParams.md)) => `void`; } | - | +| `args.options` | { `id`: `string`; } | - | +| `args.options.id` | `string` | The id of the element to listen for changes to. | +| `args.handler` | (`change`: [`ElementChangeCallbackParams`](ElementChangeCallbackParams.md)) => `void` | The handler that is called when the element changes. | ### Returns @@ -386,18 +386,18 @@ unsubscribe(); ## onElementDelete() -> **onElementDelete**(`args`: \{ `options`: \{ `id`: `string`; }; `handler`: () => `void`; }): `VoidFunction` +> **onElementDelete**(`args`: { `options`: { `id`: `string`; }; `handler`: () => `void`; }): `VoidFunction` Adds a listener for when an element is deleted. ### Parameters -| Parameter | Type | Description | -| ----------------- | -------------------------------------------------------------- | ------------------------------------------------------- | -| `args` | \{ `options`: \{ `id`: `string`; }; `handler`: () => `void`; } | - | -| `args.options` | \{ `id`: `string`; } | - | -| `args.options.id` | `string` | The id of the element to listen for deletions of. | -| `args.handler` | () => `void` | The handler that is called when the element is deleted. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `args` | { `options`: { `id`: `string`; }; `handler`: () => `void`; } | - | +| `args.options` | { `id`: `string`; } | - | +| `args.options.id` | `string` | The id of the element to listen for deletions of. | +| `args.handler` | () => `void` | The handler that is called when the element is deleted. | ### Returns @@ -421,18 +421,18 @@ unsubscribe(); ## onElementGroupChange() -> **onElementGroupChange**(`args`: \{ `options`: \{ `id`: `string`; }; `handler`: (`change`: [`ElementGroupChangeCallbackParams`](ElementGroupChangeCallbackParams.md)) => `void`; }): `VoidFunction` +> **onElementGroupChange**(`args`: { `options`: { `id`: `string`; }; `handler`: (`change`: [`ElementGroupChangeCallbackParams`](ElementGroupChangeCallbackParams.md)) => `void`; }): `VoidFunction` Adds a listener for when an element group changes. ### Parameters -| Parameter | Type | -| ----------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- | -| `args` | \{ `options`: \{ `id`: `string`; }; `handler`: (`change`: [`ElementGroupChangeCallbackParams`](ElementGroupChangeCallbackParams.md)) => `void`; } | -| `args.options` | \{ `id`: `string`; } | -| `args.options.id` | `string` | -| `args.handler` | (`change`: [`ElementGroupChangeCallbackParams`](ElementGroupChangeCallbackParams.md)) => `void` | +| Parameter | Type | +| ------ | ------ | +| `args` | { `options`: { `id`: `string`; }; `handler`: (`change`: [`ElementGroupChangeCallbackParams`](ElementGroupChangeCallbackParams.md)) => `void`; } | +| `args.options` | { `id`: `string`; } | +| `args.options.id` | `string` | +| `args.handler` | (`change`: [`ElementGroupChangeCallbackParams`](ElementGroupChangeCallbackParams.md)) => `void` | ### Returns diff --git a/docs/Elements/HighlighterElementCreate.md b/docs/Elements/HighlighterElementCreate.md index 4ea92bdb..867113d1 100644 --- a/docs/Elements/HighlighterElementCreate.md +++ b/docs/Elements/HighlighterElementCreate.md @@ -76,7 +76,7 @@ and Markers, so their description will not be shown. ## attributes? -> `optional` **attributes**: `Record`\<`string`, `unknown`> +> `optional` **attributes**: `Record`<`string`, `unknown`> A set of key-value pairs that can be used to store arbitrary data about the element. diff --git a/docs/Elements/HighlighterElementRead.md b/docs/Elements/HighlighterElementRead.md index e14fc1ee..afe3a7ab 100644 --- a/docs/Elements/HighlighterElementRead.md +++ b/docs/Elements/HighlighterElementRead.md @@ -67,7 +67,7 @@ and Markers, so their description will not be shown. ## attributes -> **attributes**: `Record`\<`string`, `unknown`> +> **attributes**: `Record`<`string`, `unknown`> A set of key-value pairs that can be used to store arbitrary data about the element. diff --git a/docs/Elements/HighlighterElementUpdate.md b/docs/Elements/HighlighterElementUpdate.md index 43567d67..4f8ac9b1 100644 --- a/docs/Elements/HighlighterElementUpdate.md +++ b/docs/Elements/HighlighterElementUpdate.md @@ -73,7 +73,7 @@ and Markers, so their description will not be shown. ## attributes? -> `optional` **attributes**: `Record`\<`string`, `unknown`> +> `optional` **attributes**: `Record`<`string`, `unknown`> A set of key-value pairs that can be used to store arbitrary data about the element. diff --git a/docs/Elements/ImageElementCreate.md b/docs/Elements/ImageElementCreate.md index 4bf29d29..0769a676 100644 --- a/docs/Elements/ImageElementCreate.md +++ b/docs/Elements/ImageElementCreate.md @@ -57,7 +57,7 @@ and Markers, so their description will not be shown. ## attributes? -> `optional` **attributes**: `Record`\<`string`, `unknown`> +> `optional` **attributes**: `Record`<`string`, `unknown`> A set of key-value pairs that can be used to store arbitrary data about the element. diff --git a/docs/Elements/ImageElementRead.md b/docs/Elements/ImageElementRead.md index c11c82e3..2638694e 100644 --- a/docs/Elements/ImageElementRead.md +++ b/docs/Elements/ImageElementRead.md @@ -45,7 +45,7 @@ and Markers, so their description will not be shown. ## attributes -> **attributes**: `Record`\<`string`, `unknown`> +> **attributes**: `Record`<`string`, `unknown`> A set of key-value pairs that can be used to store arbitrary data about the element. diff --git a/docs/Elements/ImageElementUpdate.md b/docs/Elements/ImageElementUpdate.md index 5378bfca..95083faf 100644 --- a/docs/Elements/ImageElementUpdate.md +++ b/docs/Elements/ImageElementUpdate.md @@ -51,7 +51,7 @@ and Markers, so their description will not be shown. ## attributes? -> `optional` **attributes**: `Record`\<`string`, `unknown`> +> `optional` **attributes**: `Record`<`string`, `unknown`> A set of key-value pairs that can be used to store arbitrary data about the element. diff --git a/docs/Elements/LinkElementRead.md b/docs/Elements/LinkElementRead.md index ed9ca97b..1086fb09 100644 --- a/docs/Elements/LinkElementRead.md +++ b/docs/Elements/LinkElementRead.md @@ -67,7 +67,7 @@ and Markers, so their description will not be shown. ## attributes -> **attributes**: `Record`\<`string`, `unknown`> +> **attributes**: `Record`<`string`, `unknown`> A set of key-value pairs that can be used to store arbitrary data about the element. diff --git a/docs/Elements/MarkerElementCreate.md b/docs/Elements/MarkerElementCreate.md index a5f7dda9..9919d853 100644 --- a/docs/Elements/MarkerElementCreate.md +++ b/docs/Elements/MarkerElementCreate.md @@ -71,7 +71,7 @@ and Markers, so their description will not be shown. ## attributes? -> `optional` **attributes**: `Record`\<`string`, `unknown`> +> `optional` **attributes**: `Record`<`string`, `unknown`> A set of key-value pairs that can be used to store arbitrary data about the element. diff --git a/docs/Elements/MarkerElementRead.md b/docs/Elements/MarkerElementRead.md index 50854e60..9561e7f0 100644 --- a/docs/Elements/MarkerElementRead.md +++ b/docs/Elements/MarkerElementRead.md @@ -67,7 +67,7 @@ and Markers, so their description will not be shown. ## attributes -> **attributes**: `Record`\<`string`, `unknown`> +> **attributes**: `Record`<`string`, `unknown`> A set of key-value pairs that can be used to store arbitrary data about the element. diff --git a/docs/Elements/MarkerElementUpdate.md b/docs/Elements/MarkerElementUpdate.md index 63a2cdbb..a665c835 100644 --- a/docs/Elements/MarkerElementUpdate.md +++ b/docs/Elements/MarkerElementUpdate.md @@ -73,7 +73,7 @@ and Markers, so their description will not be shown. ## attributes? -> `optional` **attributes**: `Record`\<`string`, `unknown`> +> `optional` **attributes**: `Record`<`string`, `unknown`> A set of key-value pairs that can be used to store arbitrary data about the element. diff --git a/docs/Elements/NoteElementCreate.md b/docs/Elements/NoteElementCreate.md index 00206cca..08f8316a 100644 --- a/docs/Elements/NoteElementCreate.md +++ b/docs/Elements/NoteElementCreate.md @@ -59,7 +59,7 @@ and Markers, so their description will not be shown. ## attributes? -> `optional` **attributes**: `Record`\<`string`, `unknown`> +> `optional` **attributes**: `Record`<`string`, `unknown`> A set of key-value pairs that can be used to store arbitrary data about the element. diff --git a/docs/Elements/NoteElementRead.md b/docs/Elements/NoteElementRead.md index ee013eed..dc216d88 100644 --- a/docs/Elements/NoteElementRead.md +++ b/docs/Elements/NoteElementRead.md @@ -55,7 +55,7 @@ and Markers, so their description will not be shown. ## attributes -> **attributes**: `Record`\<`string`, `unknown`> +> **attributes**: `Record`<`string`, `unknown`> A set of key-value pairs that can be used to store arbitrary data about the element. diff --git a/docs/Elements/NoteElementUpdate.md b/docs/Elements/NoteElementUpdate.md index 799079dc..72bafc5b 100644 --- a/docs/Elements/NoteElementUpdate.md +++ b/docs/Elements/NoteElementUpdate.md @@ -61,7 +61,7 @@ and Markers, so their description will not be shown. ## attributes? -> `optional` **attributes**: `Record`\<`string`, `unknown`> +> `optional` **attributes**: `Record`<`string`, `unknown`> A set of key-value pairs that can be used to store arbitrary data about the element. diff --git a/docs/Elements/PathElementCreate.md b/docs/Elements/PathElementCreate.md index fb1c6615..d24d88c1 100644 --- a/docs/Elements/PathElementCreate.md +++ b/docs/Elements/PathElementCreate.md @@ -71,7 +71,7 @@ and Markers, so their description will not be shown. ## attributes? -> `optional` **attributes**: `Record`\<`string`, `unknown`> +> `optional` **attributes**: `Record`<`string`, `unknown`> A set of key-value pairs that can be used to store arbitrary data about the element. diff --git a/docs/Elements/PathElementRead.md b/docs/Elements/PathElementRead.md index 8969cc0e..52f61aa4 100644 --- a/docs/Elements/PathElementRead.md +++ b/docs/Elements/PathElementRead.md @@ -67,7 +67,7 @@ and Markers, so their description will not be shown. ## attributes -> **attributes**: `Record`\<`string`, `unknown`> +> **attributes**: `Record`<`string`, `unknown`> A set of key-value pairs that can be used to store arbitrary data about the element. diff --git a/docs/Elements/PathElementUpdate.md b/docs/Elements/PathElementUpdate.md index 3373b933..06b316dc 100644 --- a/docs/Elements/PathElementUpdate.md +++ b/docs/Elements/PathElementUpdate.md @@ -73,7 +73,7 @@ and Markers, so their description will not be shown. ## attributes? -> `optional` **attributes**: `Record`\<`string`, `unknown`> +> `optional` **attributes**: `Record`<`string`, `unknown`> A set of key-value pairs that can be used to store arbitrary data about the element. diff --git a/docs/Elements/PlaceElementCreate.md b/docs/Elements/PlaceElementCreate.md index 383fe707..e62d9361 100644 --- a/docs/Elements/PlaceElementCreate.md +++ b/docs/Elements/PlaceElementCreate.md @@ -71,7 +71,7 @@ and Markers, so their description will not be shown. ## attributes? -> `optional` **attributes**: `Record`\<`string`, `unknown`> +> `optional` **attributes**: `Record`<`string`, `unknown`> A set of key-value pairs that can be used to store arbitrary data about the element. diff --git a/docs/Elements/PlaceElementRead.md b/docs/Elements/PlaceElementRead.md index ad5a71f2..f552b5fd 100644 --- a/docs/Elements/PlaceElementRead.md +++ b/docs/Elements/PlaceElementRead.md @@ -67,7 +67,7 @@ and Markers, so their description will not be shown. ## attributes -> **attributes**: `Record`\<`string`, `unknown`> +> **attributes**: `Record`<`string`, `unknown`> A set of key-value pairs that can be used to store arbitrary data about the element. diff --git a/docs/Elements/PlaceElementUpdate.md b/docs/Elements/PlaceElementUpdate.md index 26a36a1e..62aa4c1d 100644 --- a/docs/Elements/PlaceElementUpdate.md +++ b/docs/Elements/PlaceElementUpdate.md @@ -73,7 +73,7 @@ and Markers, so their description will not be shown. ## attributes? -> `optional` **attributes**: `Record`\<`string`, `unknown`> +> `optional` **attributes**: `Record`<`string`, `unknown`> A set of key-value pairs that can be used to store arbitrary data about the element. diff --git a/docs/Elements/PolygonElementCreate.md b/docs/Elements/PolygonElementCreate.md index 52d82ba1..0e8e6b44 100644 --- a/docs/Elements/PolygonElementCreate.md +++ b/docs/Elements/PolygonElementCreate.md @@ -71,7 +71,7 @@ and Markers, so their description will not be shown. ## attributes? -> `optional` **attributes**: `Record`\<`string`, `unknown`> +> `optional` **attributes**: `Record`<`string`, `unknown`> A set of key-value pairs that can be used to store arbitrary data about the element. diff --git a/docs/Elements/PolygonElementRead.md b/docs/Elements/PolygonElementRead.md index 460d2443..93a8f043 100644 --- a/docs/Elements/PolygonElementRead.md +++ b/docs/Elements/PolygonElementRead.md @@ -67,7 +67,7 @@ and Markers, so their description will not be shown. ## attributes -> **attributes**: `Record`\<`string`, `unknown`> +> **attributes**: `Record`<`string`, `unknown`> A set of key-value pairs that can be used to store arbitrary data about the element. diff --git a/docs/Elements/PolygonElementUpdate.md b/docs/Elements/PolygonElementUpdate.md index fbd575c8..eb230454 100644 --- a/docs/Elements/PolygonElementUpdate.md +++ b/docs/Elements/PolygonElementUpdate.md @@ -73,7 +73,7 @@ and Markers, so their description will not be shown. ## attributes? -> `optional` **attributes**: `Record`\<`string`, `unknown`> +> `optional` **attributes**: `Record`<`string`, `unknown`> A set of key-value pairs that can be used to store arbitrary data about the element. diff --git a/docs/Elements/README.md b/docs/Elements/README.md deleted file mode 100644 index bfb92593..00000000 --- a/docs/Elements/README.md +++ /dev/null @@ -1,63 +0,0 @@ -*** - -The Felt SDK lets you read, create and update elements on the map. - -Elements that are created via the SDK are only available to the current -session - they are not persisted to the map and not available to other users -of the map. - -> If you want to let your users create elements (as opposed to using the SDK to -> create them programmatically), you can use the [ToolsController](../Tools/ToolsController.md) to -> select and configure the drawing tools in Felt. - -# Controller - -* [ElementsController](ElementsController.md) - -# Interfaces - -* [PlaceElementCreate](PlaceElementCreate.md) -* [PathElementCreate](PathElementCreate.md) -* [PolygonElementCreate](PolygonElementCreate.md) -* [CircleElementCreate](CircleElementCreate.md) -* [MarkerElementCreate](MarkerElementCreate.md) -* [HighlighterElementCreate](HighlighterElementCreate.md) -* [TextElementCreate](TextElementCreate.md) -* [NoteElementCreate](NoteElementCreate.md) -* [ImageElementCreate](ImageElementCreate.md) -* [PlaceElementRead](PlaceElementRead.md) -* [PathElementRead](PathElementRead.md) -* [PolygonElementRead](PolygonElementRead.md) -* [CircleElementRead](CircleElementRead.md) -* [MarkerElementRead](MarkerElementRead.md) -* [HighlighterElementRead](HighlighterElementRead.md) -* [TextElementRead](TextElementRead.md) -* [NoteElementRead](NoteElementRead.md) -* [ImageElementRead](ImageElementRead.md) -* [LinkElementRead](LinkElementRead.md) -* [PlaceElementUpdate](PlaceElementUpdate.md) -* [PathElementUpdate](PathElementUpdate.md) -* [PolygonElementUpdate](PolygonElementUpdate.md) -* [CircleElementUpdate](CircleElementUpdate.md) -* [MarkerElementUpdate](MarkerElementUpdate.md) -* [HighlighterElementUpdate](HighlighterElementUpdate.md) -* [TextElementUpdate](TextElementUpdate.md) -* [NoteElementUpdate](NoteElementUpdate.md) -* [ImageElementUpdate](ImageElementUpdate.md) - -# Type Aliases - -* [ElementCreate](ElementCreate.md) -* [ElementUpdate](ElementUpdate.md) - -# Element Groups - -* [ElementGroup](ElementGroup.md) -* [GetElementGroupsConstraint](GetElementGroupsConstraint.md) -* [ElementGroupChangeCallbackParams](ElementGroupChangeCallbackParams.md) - -# Elements - -* [GetElementsConstraint](GetElementsConstraint.md) -* [ElementChangeCallbackParams](ElementChangeCallbackParams.md) -* [Element](Element.md) diff --git a/docs/Elements/TextElementCreate.md b/docs/Elements/TextElementCreate.md index 5cf5f0f4..cf04278b 100644 --- a/docs/Elements/TextElementCreate.md +++ b/docs/Elements/TextElementCreate.md @@ -59,7 +59,7 @@ and Markers, so their description will not be shown. ## attributes? -> `optional` **attributes**: `Record`\<`string`, `unknown`> +> `optional` **attributes**: `Record`<`string`, `unknown`> A set of key-value pairs that can be used to store arbitrary data about the element. diff --git a/docs/Elements/TextElementRead.md b/docs/Elements/TextElementRead.md index d09200e0..1fe2cea7 100644 --- a/docs/Elements/TextElementRead.md +++ b/docs/Elements/TextElementRead.md @@ -55,7 +55,7 @@ and Markers, so their description will not be shown. ## attributes -> **attributes**: `Record`\<`string`, `unknown`> +> **attributes**: `Record`<`string`, `unknown`> A set of key-value pairs that can be used to store arbitrary data about the element. diff --git a/docs/Elements/TextElementUpdate.md b/docs/Elements/TextElementUpdate.md index 5050cca0..4dded9f5 100644 --- a/docs/Elements/TextElementUpdate.md +++ b/docs/Elements/TextElementUpdate.md @@ -61,7 +61,7 @@ and Markers, so their description will not be shown. ## attributes? -> `optional` **attributes**: `Record`\<`string`, `unknown`> +> `optional` **attributes**: `Record`<`string`, `unknown`> A set of key-value pairs that can be used to store arbitrary data about the element. diff --git a/docs/Interactions/README.md b/docs/Interactions.md similarity index 59% rename from docs/Interactions/README.md rename to docs/Interactions.md index d7a4be62..7bd2f90e 100644 --- a/docs/Interactions/README.md +++ b/docs/Interactions.md @@ -6,8 +6,8 @@ Interactions include clicking and hovering on points and features. # Controller -* [InteractionsController](InteractionsController.md) +* [InteractionsController](Interactions/InteractionsController.md) # Interfaces -* [MapInteractionEvent](MapInteractionEvent.md) +* [MapInteractionEvent](Interactions/MapInteractionEvent.md) diff --git a/docs/Interactions/InteractionsController.md b/docs/Interactions/InteractionsController.md index 473422df..9c4d6657 100644 --- a/docs/Interactions/InteractionsController.md +++ b/docs/Interactions/InteractionsController.md @@ -10,16 +10,16 @@ The Interactions controller allows you to observe interactions with the map ## onPointerClick() -> **onPointerClick**(`params`: \{ `handler`: (`event`: [`MapInteractionEvent`](MapInteractionEvent.md)) => `void`; }): `VoidFunction` +> **onPointerClick**(`params`: { `handler`: (`event`: [`MapInteractionEvent`](MapInteractionEvent.md)) => `void`; }): `VoidFunction` Allows you to be notified the user clicks on the map. ### Parameters -| Parameter | Type | -| ---------------- | ------------------------------------------------------------------------------------- | -| `params` | \{ `handler`: (`event`: [`MapInteractionEvent`](MapInteractionEvent.md)) => `void`; } | -| `params.handler` | (`event`: [`MapInteractionEvent`](MapInteractionEvent.md)) => `void` | +| Parameter | Type | +| ------ | ------ | +| `params` | { `handler`: (`event`: [`MapInteractionEvent`](MapInteractionEvent.md)) => `void`; } | +| `params.handler` | (`event`: [`MapInteractionEvent`](MapInteractionEvent.md)) => `void` | ### Returns @@ -42,16 +42,16 @@ unsubscribe(); ## onPointerMove() -> **onPointerMove**(`params`: \{ `handler`: (`event`: [`MapInteractionEvent`](MapInteractionEvent.md)) => `void`; }): `VoidFunction` +> **onPointerMove**(`params`: { `handler`: (`event`: [`MapInteractionEvent`](MapInteractionEvent.md)) => `void`; }): `VoidFunction` Allows you to be notified the user moves the mouse over the map. ### Parameters -| Parameter | Type | Description | -| ---------------- | ------------------------------------------------------------------------------------- | ----------------------- | -| `params` | \{ `handler`: (`event`: [`MapInteractionEvent`](MapInteractionEvent.md)) => `void`; } | Params for the listener | -| `params.handler` | (`event`: [`MapInteractionEvent`](MapInteractionEvent.md)) => `void` | The handler function | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `params` | { `handler`: (`event`: [`MapInteractionEvent`](MapInteractionEvent.md)) => `void`; } | Params for the listener | +| `params.handler` | (`event`: [`MapInteractionEvent`](MapInteractionEvent.md)) => `void` | The handler function | ### Returns diff --git a/docs/Interactions/MapInteractionEvent.md b/docs/Interactions/MapInteractionEvent.md index e21ad790..90912312 100644 --- a/docs/Interactions/MapInteractionEvent.md +++ b/docs/Interactions/MapInteractionEvent.md @@ -14,14 +14,14 @@ The cursor position in world coordinates. ## point -> **point**: \{ `x`: `number`; `y`: `number`; } +> **point**: { `x`: `number`; `y`: `number`; } The pixel coordinates of the mouse cursor, relative to the map and measured from the top left corner. -| Name | Type | -| ---- | -------- | -| `x` | `number` | -| `y` | `number` | +| Name | Type | +| ------ | ------ | +| `x` | `number` | +| `y` | `number` | *** diff --git a/docs/Layers.md b/docs/Layers.md new file mode 100644 index 00000000..d6feb2b6 --- /dev/null +++ b/docs/Layers.md @@ -0,0 +1,99 @@ +*** + +Layers in a Felt map hold geospatial data, but also configure how the data is rendered +both on the map and in the legend. The data can be vector data such as Points, Lines, or Polygons, +or raster data such as satellite images. + +Each Layer can be grouped under a LayerGroup, and has associated LegendItems that represent +how the layer is rendered in the legend. + +You can control the visibility of layers, layer groups, and legend items using the +[\`setLayerVisibility\`](Layers/LayersController.md#setlayervisibility), [\`setLayerGroupVisibility\`](Layers/LayersController.md#setlayergroupvisibility), and [\`setLegendItemVisibility\`](Layers/LayersController.md#setlegenditemvisibility) methods. + +When a Layer is styled to as categorical data or "classed" numeric data, there will be +a `LegendItem` for each category or class. Each `LegendItem` can be controlled for visibility +independently of the Layer, so you can turn on and off each category or class individually. + +# Controller + +* [LayersController](Layers/LayersController.md) + +# Features + +* [LayerFeature](Layers/LayerFeature.md) +* [RasterValue](Layers/RasterValue.md) + +# Filters + +* [LayerFilters](Layers/LayerFilters.md) +* [LayerBoundaries](Layers/LayerBoundaries.md) +* [FilterLogicGate](Layers/FilterLogicGate.md) +* [FilterExpression](Layers/FilterExpression.md) +* [FilterTernary](Layers/FilterTernary.md) +* [Filters](Layers/Filters.md) +* [GeometryFilter](Layers/GeometryFilter.md) + +# Layer Groups + +* [LayerGroup](Layers/LayerGroup.md) +* [GetLayerGroupsConstraint](Layers/GetLayerGroupsConstraint.md) +* [LayerGroupChangeCallbackParams](Layers/LayerGroupChangeCallbackParams.md) + +# Layer Schema + +* [LayerSchema](Layers/LayerSchema.md) +* [LayerSchemaCommonAttribute](Layers/LayerSchemaCommonAttribute.md) +* [LayerSchemaNumericAttribute](Layers/LayerSchemaNumericAttribute.md) +* [LayerSchemaTextAttribute](Layers/LayerSchemaTextAttribute.md) +* [LayerSchemaBooleanAttribute](Layers/LayerSchemaBooleanAttribute.md) +* [LayerSchemaDateAttribute](Layers/LayerSchemaDateAttribute.md) +* [LayerSchemaDateTimeAttribute](Layers/LayerSchemaDateTimeAttribute.md) +* [LayerSchemaAttribute](Layers/LayerSchemaAttribute.md) + +# Layer sources + +* [RasterLayerSource](Layers/RasterLayerSource.md) +* [RasterBand](Layers/RasterBand.md) +* [GeoJsonUrlVectorSource](Layers/GeoJsonUrlVectorSource.md) +* [GeoJsonDataVectorSource](Layers/GeoJsonDataVectorSource.md) +* [GeoJsonFileVectorSource](Layers/GeoJsonFileVectorSource.md) +* [FeltTiledVectorSource](Layers/FeltTiledVectorSource.md) + +# Layers + +* [LayerCommon](Layers/LayerCommon.md) +* [RasterLayer](Layers/RasterLayer.md) +* [VectorLayer](Layers/VectorLayer.md) +* [UpdateLayerParams](Layers/UpdateLayerParams.md) +* [DataOnlyLayer](Layers/DataOnlyLayer.md) +* [GetLayersConstraint](Layers/GetLayersConstraint.md) +* [LayerChangeCallbackParams](Layers/LayerChangeCallbackParams.md) +* [GetRenderedFeaturesConstraint](Layers/GetRenderedFeaturesConstraint.md) +* [CreateLayersFromGeoJsonParams](Layers/CreateLayersFromGeoJsonParams.md) +* [LayerProcessingStatus](Layers/LayerProcessingStatus.md) +* [Layer](Layers/Layer.md) + +# Legend Items + +* [LegendItem](Layers/LegendItem.md) +* [LegendItemIdentifier](Layers/LegendItemIdentifier.md) +* [LegendItemsConstraint](Layers/LegendItemsConstraint.md) +* [LegendItemChangeCallbackParams](Layers/LegendItemChangeCallbackParams.md) + +# Stats + +* [AggregationConfig](Layers/AggregationConfig.md) +* [MultiAggregationConfig](Layers/MultiAggregationConfig.md) +* [ValueConfiguration](Layers/ValueConfiguration.md) +* [GetLayerCategoriesParams](Layers/GetLayerCategoriesParams.md) +* [GetLayerCategoriesGroup](Layers/GetLayerCategoriesGroup.md) +* [GetLayerHistogramParams](Layers/GetLayerHistogramParams.md) +* [GetLayerHistogramBin](Layers/GetLayerHistogramBin.md) +* [GetLayerCalculationParams](Layers/GetLayerCalculationParams.md) +* [CountGridConfig](Layers/CountGridConfig.md) +* [AggregatedGridConfig](Layers/AggregatedGridConfig.md) +* [GetLayerPrecomputedCalculationParams](Layers/GetLayerPrecomputedCalculationParams.md) +* [AggregationMethod](Layers/AggregationMethod.md) +* [PrecomputedAggregationMethod](Layers/PrecomputedAggregationMethod.md) +* [GridType](Layers/GridType.md) +* [GridConfig](Layers/GridConfig.md) diff --git a/docs/Layers/AggregationMethod.md b/docs/Layers/AggregationMethod.md index 09ba1e61..ef6a1545 100644 --- a/docs/Layers/AggregationMethod.md +++ b/docs/Layers/AggregationMethod.md @@ -1,5 +1,5 @@ *** -> **AggregationMethod**: `"avg"` | `"max"` | `"min"` | `"sum"` | `"median"` +> **AggregationMethod** = `"avg"` | `"max"` | `"min"` | `"sum"` | `"median"` The method to use for the aggregation. diff --git a/docs/Layers/CreateLayersFromGeoJsonParams.md b/docs/Layers/CreateLayersFromGeoJsonParams.md index 43a026a7..e715f5d2 100644 --- a/docs/Layers/CreateLayersFromGeoJsonParams.md +++ b/docs/Layers/CreateLayersFromGeoJsonParams.md @@ -46,7 +46,7 @@ Sets the description of the layer. ## geometryStyles? -> `optional` **geometryStyles**: \{ `Point`: `object`; `Line`: `object`; `Polygon`: `object`; } +> `optional` **geometryStyles**: { `Point?`: `object`; `Line?`: `object`; `Polygon?`: `object`; } The styles to apply to each geometry on the layer. @@ -55,11 +55,11 @@ Each style should be a valid FSL style, as described in [Layer.style](LayerCommo These are optional, and if missing will use a default style determined by Felt, which you can consider to be undefined behaviour. -| Name | Type | -| ---------- | -------- | -| `Point`? | `object` | -| `Line`? | `object` | -| `Polygon`? | `object` | +| Name | Type | +| ------ | ------ | +| `Point?` | `object` | +| `Line?` | `object` | +| `Polygon?` | `object` | ### Example diff --git a/docs/Layers/FeltTiledVectorSource.md b/docs/Layers/FeltTiledVectorSource.md index c1523745..a8a51c78 100644 --- a/docs/Layers/FeltTiledVectorSource.md +++ b/docs/Layers/FeltTiledVectorSource.md @@ -1,11 +1,11 @@ *** -> **FeltTiledVectorSource**: \{ `type`: `"felt"`; `tileTemplateUrl`: `string`; } +> **FeltTiledVectorSource** = { `type`: `"felt"`; `tileTemplateUrl`: `string`; } A tiled vector source is a layer that is populated from data the has been uploaded to Felt, and processed into vector tiles. -# Type declaration +# Properties ## type @@ -14,6 +14,8 @@ to Felt, and processed into vector tiles. Identifies this as a tiled vector source. Typically, these tiles will have been uploaded to and processed by Felt. +*** + ## tileTemplateUrl > **tileTemplateUrl**: `string` diff --git a/docs/Layers/FilterExpression.md b/docs/Layers/FilterExpression.md index 7cc5df17..23f7ed0e 100644 --- a/docs/Layers/FilterExpression.md +++ b/docs/Layers/FilterExpression.md @@ -1,3 +1,3 @@ *** -> **FilterExpression**: \[`null` | `string`, `"in"` | `"ni"`, `null` | (`null` | `string` | `number` | `boolean`)\[]] | \[`null` | `string`, `"lt"` | `"gt"` | `"le"` | `"ge"` | `"eq"` | `"ne"` | `"cn"` | `"nc"` | `"is"` | `"isnt"`, `null` | `string` | `number` | `boolean`] +> **FilterExpression** = \[`null` | `string`, `"in"` | `"ni"`, `null` | (`null` | `string` | `number` | `boolean`)\[]] | \[`null` | `string`, `"lt"` | `"gt"` | `"le"` | `"ge"` | `"eq"` | `"ne"` | `"cn"` | `"nc"` | `"is"` | `"isnt"`, `null` | `string` | `number` | `boolean`] diff --git a/docs/Layers/FilterLogicGate.md b/docs/Layers/FilterLogicGate.md index baab43c7..961cfaf6 100644 --- a/docs/Layers/FilterLogicGate.md +++ b/docs/Layers/FilterLogicGate.md @@ -1,3 +1,3 @@ *** -> **FilterLogicGate**: `"and"` | `"or"` +> **FilterLogicGate** = `"and"` | `"or"` diff --git a/docs/Layers/FilterTernary.md b/docs/Layers/FilterTernary.md index 937b7da2..1a3c2a6d 100644 --- a/docs/Layers/FilterTernary.md +++ b/docs/Layers/FilterTernary.md @@ -1,6 +1,6 @@ *** -> **FilterTernary**: \[[`FilterTernary`](FilterTernary.md) | [`FilterExpression`](FilterExpression.md) | `null` | `boolean`, [`FilterLogicGate`](FilterLogicGate.md), [`FilterTernary`](FilterTernary.md) | [`FilterExpression`](FilterExpression.md) | `null` | `boolean`] +> **FilterTernary** = \[`FilterTernary` | [`FilterExpression`](FilterExpression.md) | `null` | `boolean`, [`FilterLogicGate`](FilterLogicGate.md), `FilterTernary` | [`FilterExpression`](FilterExpression.md) | `null` | `boolean`] A `FilterTernary` is a tree structure for combining expressions with logical operators. diff --git a/docs/Layers/Filters.md b/docs/Layers/Filters.md index d869d1fa..bbd9add1 100644 --- a/docs/Layers/Filters.md +++ b/docs/Layers/Filters.md @@ -1,6 +1,6 @@ *** -> **Filters**: [`FilterTernary`](FilterTernary.md) | [`FilterExpression`](FilterExpression.md) | `null` | `boolean` +> **Filters** = [`FilterTernary`](FilterTernary.md) | [`FilterExpression`](FilterExpression.md) | `null` | `boolean` Filters can be used to change which features in a layer are rendered. Filters can be applied to a layer by the [\`setLayerFilters\`](LayersController.md#setlayerfilters) method on the Felt controller. diff --git a/docs/Layers/GeometryFilter.md b/docs/Layers/GeometryFilter.md index 542eb4a8..77f4585a 100644 --- a/docs/Layers/GeometryFilter.md +++ b/docs/Layers/GeometryFilter.md @@ -1,6 +1,6 @@ *** -> **GeometryFilter**: [`FeltBoundary`](../Shared/FeltBoundary.md) | [`PolygonGeometry`](../Shared/PolygonGeometry.md) | [`MultiPolygonGeometry`](../Shared/MultiPolygonGeometry.md) | [`LngLatTuple`](../Shared/LngLatTuple.md)\[] +> **GeometryFilter** = [`FeltBoundary`](../Shared/FeltBoundary.md) | [`PolygonGeometry`](../Shared/PolygonGeometry.md) | [`MultiPolygonGeometry`](../Shared/MultiPolygonGeometry.md) | [`LngLatTuple`](../Shared/LngLatTuple.md)\[] The common type for filtering data by a spatial boundary. diff --git a/docs/Layers/GetLayerCalculationParams.md b/docs/Layers/GetLayerCalculationParams.md index 38251557..bb148b3e 100644 --- a/docs/Layers/GetLayerCalculationParams.md +++ b/docs/Layers/GetLayerCalculationParams.md @@ -5,9 +5,9 @@ the [LayersController.getAggregates](LayersController.md#getaggregates) method. # Type Parameters -| Type Parameter | -| ---------------------------------------------------------------------- | -| `T` *extends* [`AggregationMethod`](AggregationMethod.md) \| `"count"` | +| Type Parameter | +| ------ | +| `T` *extends* [`AggregationMethod`](AggregationMethod.md) | `"count"` | # Properties @@ -21,7 +21,7 @@ The ID of the layer to calculate an aggregate value for. ## aggregation -> **aggregation**: [`MultiAggregationConfig`](MultiAggregationConfig.md)\<`T`> +> **aggregation**: [`MultiAggregationConfig`](MultiAggregationConfig.md)<`T`> Specifies how to aggregate values within each category or bin. When omitted, features are counted. When specified, the chosen calculation (avg, sum, etc.) diff --git a/docs/Layers/GetLayerHistogramParams.md b/docs/Layers/GetLayerHistogramParams.md index 06906c50..6ba31f82 100644 --- a/docs/Layers/GetLayerHistogramParams.md +++ b/docs/Layers/GetLayerHistogramParams.md @@ -19,13 +19,13 @@ the [LayersController.getHistogramData](LayersController.md#gethistogramdata) me ## steps -> **steps**: `number`\[] | \{ `type`: `"equal-intervals"`; `count`: `number`; } | \{ `type`: `"time-interval"`; `interval`: `"hour"` | `"day"` | `"week"` | `"month"` | `"year"`; } +> **steps**: `number`\[] | { `type`: `"equal-intervals"`; `count`: `number`; } | { `type`: `"time-interval"`; `interval`: `"hour"` | `"day"` | `"week"` | `"month"` | `"year"`; } *** ## values? -> `optional` **values**: \{ `boundary`: \[`number`, `number`]\[] | \[`number`, `number`, `number`, `number`] | \{ `type`: `"Polygon"`; `coordinates`: \[`number`, `number`]\[]\[]; } | \{ `type`: `"MultiPolygon"`; `coordinates`: \[`number`, `number`]\[]\[]\[]; }; `filters`: `null` | `boolean` | \[`null` | `string`, `"in"` | `"ni"`, `null` | (`null` | `string` | `number` | `boolean`)\[]] | \[`null` | `string`, `"lt"` | `"gt"` | `"le"` | `"ge"` | `"eq"` | `"ne"` | `"cn"` | `"nc"` | `"is"` | `"isnt"`, `null` | `string` | `number` | `boolean`] | [`FilterTernary`](FilterTernary.md); `aggregation`: \{ `method`: `"avg"` | `"max"` | `"min"` | `"sum"` | `"median"`; `attribute`: `string`; }; } +> `optional` **values**: { `boundary?`: \[`number`, `number`]\[] | \[`number`, `number`, `number`, `number`] | { `type`: `"Polygon"`; `coordinates`: \[`number`, `number`]\[]\[]; } | { `type`: `"MultiPolygon"`; `coordinates`: \[`number`, `number`]\[]\[]\[]; }; `filters?`: `null` | `boolean` | \[`null` | `string`, `"in"` | `"ni"`, `null` | (`null` | `string` | `number` | `boolean`)\[]] | \[`null` | `string`, `"lt"` | `"gt"` | `"le"` | `"ge"` | `"eq"` | `"ne"` | `"cn"` | `"nc"` | `"is"` | `"isnt"`, `null` | `string` | `number` | `boolean`] | [`FilterTernary`](FilterTernary.md); `aggregation?`: { `method`: `"avg"` | `"max"` | `"min"` | `"sum"` | `"median"`; `attribute`: `string`; }; } Configuration for filtering and aggregating values while preserving the full set of bin ranges in the results. @@ -39,13 +39,13 @@ Unlike top-level filters which affect both what ranges appear AND their values, filters in this configuration only affect the values while keeping all possible ranges in the results. -| Name | Type | Default value | Description | -| ----------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------- | --------------------------------------------------------------------------- | -| `boundary`? | \[`number`, `number`]\[] \| \[`number`, `number`, `number`, `number`] \| \{ `type`: `"Polygon"`; `coordinates`: \[`number`, `number`]\[]\[]; } \| \{ `type`: `"MultiPolygon"`; `coordinates`: \[`number`, `number`]\[]\[]\[]; } | - | - | -| `filters`? | `null` \| `boolean` \| \[`null` \| `string`, `"in"` \| `"ni"`, `null` \| (`null` \| `string` \| `number` \| `boolean`)\[]] \| \[`null` \| `string`, `"lt"` \| `"gt"` \| `"le"` \| `"ge"` \| `"eq"` \| `"ne"` \| `"cn"` \| `"nc"` \| `"is"` \| `"isnt"`, `null` \| `string` \| `number` \| `boolean`] \| [`FilterTernary`](FilterTernary.md) | - | - | -| `aggregation`? | \{ `method`: `"avg"` \| `"max"` \| `"min"` \| `"sum"` \| `"median"`; `attribute`: `string`; } | - | - | -| `aggregation.method` | `"avg"` \| `"max"` \| `"min"` \| `"sum"` \| `"median"` | AggregateMethodSchema | The operation to use on the values from the features in the layer | -| `aggregation.attribute` | `string` | - | The attribute to use for the aggregation. This must be a numeric attribute. | +| Name | Type | Default value | Description | +| ------ | ------ | ------ | ------ | +| `boundary?` | \[`number`, `number`]\[] | \[`number`, `number`, `number`, `number`] | { `type`: `"Polygon"`; `coordinates`: \[`number`, `number`]\[]\[]; } | { `type`: `"MultiPolygon"`; `coordinates`: \[`number`, `number`]\[]\[]\[]; } | - | - | +| `filters?` | `null` | `boolean` | \[`null` | `string`, `"in"` | `"ni"`, `null` | (`null` | `string` | `number` | `boolean`)\[]] | \[`null` | `string`, `"lt"` | `"gt"` | `"le"` | `"ge"` | `"eq"` | `"ne"` | `"cn"` | `"nc"` | `"is"` | `"isnt"`, `null` | `string` | `number` | `boolean`] | [`FilterTernary`](FilterTernary.md) | - | - | +| `aggregation?` | { `method`: `"avg"` | `"max"` | `"min"` | `"sum"` | `"median"`; `attribute`: `string`; } | - | - | +| `aggregation.method` | `"avg"` | `"max"` | `"min"` | `"sum"` | `"median"` | `AggregateMethodSchema` | The operation to use on the values from the features in the layer | +| `aggregation.attribute` | `string` | - | The attribute to use for the aggregation. This must be a numeric attribute. | *** diff --git a/docs/Layers/GetRenderedFeaturesConstraint.md b/docs/Layers/GetRenderedFeaturesConstraint.md index 7cc8b5b1..04aa7f6d 100644 --- a/docs/Layers/GetRenderedFeaturesConstraint.md +++ b/docs/Layers/GetRenderedFeaturesConstraint.md @@ -7,7 +7,7 @@ provided, all rendered features will be returned. ## areaQuery? -> `optional` **areaQuery**: \{ `coordinates`: [`LatLng`](../Shared/LatLng.md); } | \{ `boundary`: \[`number`, `number`, `number`, `number`]; } +> `optional` **areaQuery**: { `coordinates`: [`LatLng`](../Shared/LatLng.md); } | { `boundary`: \[`number`, `number`, `number`, `number`]; } The area to query for rendered features. This can be specific coordinates or a [FeltBoundary](../Shared/FeltBoundary.md). If omitted, the entire viewport will be queried. diff --git a/docs/Layers/GridConfig.md b/docs/Layers/GridConfig.md index bed7715a..34a89743 100644 --- a/docs/Layers/GridConfig.md +++ b/docs/Layers/GridConfig.md @@ -1,5 +1,5 @@ *** -> **GridConfig**: [`CountGridConfig`](CountGridConfig.md) | [`AggregatedGridConfig`](AggregatedGridConfig.md) +> **GridConfig** = [`CountGridConfig`](CountGridConfig.md) | [`AggregatedGridConfig`](AggregatedGridConfig.md) Describes the type of grid to use for precomputed aggregate values. diff --git a/docs/Layers/GridType.md b/docs/Layers/GridType.md index 354934d3..4ab2a719 100644 --- a/docs/Layers/GridType.md +++ b/docs/Layers/GridType.md @@ -1,5 +1,5 @@ *** -> **GridType**: `"h3"` +> **GridType** = `"h3"` The type of grid to use for precomputed aggregate values. diff --git a/docs/Layers/Layer.md b/docs/Layers/Layer.md index 6a0943ca..da749380 100644 --- a/docs/Layers/Layer.md +++ b/docs/Layers/Layer.md @@ -1,3 +1,3 @@ *** -> **Layer**: [`RasterLayer`](RasterLayer.md) | [`VectorLayer`](VectorLayer.md) | [`DataOnlyLayer`](DataOnlyLayer.md) +> **Layer** = [`RasterLayer`](RasterLayer.md) | [`VectorLayer`](VectorLayer.md) | [`DataOnlyLayer`](DataOnlyLayer.md) diff --git a/docs/Layers/LayerFeature.md b/docs/Layers/LayerFeature.md index 50614000..b7f7c68e 100644 --- a/docs/Layers/LayerFeature.md +++ b/docs/Layers/LayerFeature.md @@ -50,7 +50,7 @@ The identifier of the layer that the feature belongs to. ## geometryType -> **geometryType**: `"Polygon"` | `"MultiPolygon"` | `"LineString"` | `"MultiLineString"` | `"Point"` | `"MultiPoint"` | `string` & \{} +> **geometryType**: `string` & { } | `"Polygon"` | `"MultiPolygon"` | `"LineString"` | `"MultiLineString"` | `"Point"` | `"MultiPoint"` The type of geometry of the feature. diff --git a/docs/Layers/LayerProcessingStatus.md b/docs/Layers/LayerProcessingStatus.md index 3b2e1aa8..d404d0c1 100644 --- a/docs/Layers/LayerProcessingStatus.md +++ b/docs/Layers/LayerProcessingStatus.md @@ -1,6 +1,6 @@ *** -> **LayerProcessingStatus**: `"processing"` | `"completed"` | `"failed"` | `"incomplete"` +> **LayerProcessingStatus** = `"processing"` | `"completed"` | `"failed"` | `"incomplete"` This describes the processing status of a layer. diff --git a/docs/Layers/LayerSchemaAttribute.md b/docs/Layers/LayerSchemaAttribute.md index e3490961..a5eb75dd 100644 --- a/docs/Layers/LayerSchemaAttribute.md +++ b/docs/Layers/LayerSchemaAttribute.md @@ -1,6 +1,6 @@ *** -> **LayerSchemaAttribute**: [`LayerSchemaNumericAttribute`](LayerSchemaNumericAttribute.md) | [`LayerSchemaTextAttribute`](LayerSchemaTextAttribute.md) | [`LayerSchemaBooleanAttribute`](LayerSchemaBooleanAttribute.md) | [`LayerSchemaDateAttribute`](LayerSchemaDateAttribute.md) | [`LayerSchemaDateTimeAttribute`](LayerSchemaDateTimeAttribute.md) +> **LayerSchemaAttribute** = [`LayerSchemaNumericAttribute`](LayerSchemaNumericAttribute.md) | [`LayerSchemaTextAttribute`](LayerSchemaTextAttribute.md) | [`LayerSchemaBooleanAttribute`](LayerSchemaBooleanAttribute.md) | [`LayerSchemaDateAttribute`](LayerSchemaDateAttribute.md) | [`LayerSchemaDateTimeAttribute`](LayerSchemaDateTimeAttribute.md) A single attribute from the layer schema. diff --git a/docs/Layers/LayerSchemaBooleanAttribute.md b/docs/Layers/LayerSchemaBooleanAttribute.md index 72ede50a..962662af 100644 --- a/docs/Layers/LayerSchemaBooleanAttribute.md +++ b/docs/Layers/LayerSchemaBooleanAttribute.md @@ -52,11 +52,11 @@ Indicates this is a boolean attribute. ## sampleValues -> **sampleValues**: \{ `value`: `boolean`; `count`: `number`; }\[] +> **sampleValues**: { `value`: `boolean`; `count`: `number`; }\[] A representative sample of boolean values for this attribute and their frequency. -| Name | Type | -| ------- | --------- | +| Name | Type | +| ------ | ------ | | `value` | `boolean` | -| `count` | `number` | +| `count` | `number` | diff --git a/docs/Layers/LayerSchemaDateAttribute.md b/docs/Layers/LayerSchemaDateAttribute.md index afc1c124..fc2a5d1e 100644 --- a/docs/Layers/LayerSchemaDateAttribute.md +++ b/docs/Layers/LayerSchemaDateAttribute.md @@ -68,11 +68,11 @@ The latest date present for this attribute in truncated ISO8601 format (YYYY-MM- ## sampleValues -> **sampleValues**: \{ `value`: `string`; `count`: `number`; }\[] +> **sampleValues**: { `value`: `string`; `count`: `number`; }\[] A representative sample of date values for this attribute and their frequency. -| Name | Type | -| ------- | -------- | +| Name | Type | +| ------ | ------ | | `value` | `string` | | `count` | `number` | diff --git a/docs/Layers/LayerSchemaDateTimeAttribute.md b/docs/Layers/LayerSchemaDateTimeAttribute.md index 4b18cfed..372908d0 100644 --- a/docs/Layers/LayerSchemaDateTimeAttribute.md +++ b/docs/Layers/LayerSchemaDateTimeAttribute.md @@ -68,11 +68,11 @@ The latest datetime present for this attribute in ISO8601 format. ## sampleValues -> **sampleValues**: \{ `value`: `string`; `count`: `number`; }\[] +> **sampleValues**: { `value`: `string`; `count`: `number`; }\[] A representative sample of datetime values for this attribute and their frequency. -| Name | Type | -| ------- | -------- | +| Name | Type | +| ------ | ------ | | `value` | `string` | | `count` | `number` | diff --git a/docs/Layers/LayerSchemaNumericAttribute.md b/docs/Layers/LayerSchemaNumericAttribute.md index fc58f136..70636b2f 100644 --- a/docs/Layers/LayerSchemaNumericAttribute.md +++ b/docs/Layers/LayerSchemaNumericAttribute.md @@ -52,12 +52,12 @@ Indicates this is a numeric attribute. ## sampleValues -> **sampleValues**: \{ `value`: `number`; `count`: `number`; }\[] +> **sampleValues**: { `value`: `number`; `count`: `number`; }\[] A small sample of values for this attribute and their frequency. -| Name | Type | -| ------- | -------- | +| Name | Type | +| ------ | ------ | | `value` | `number` | | `count` | `number` | diff --git a/docs/Layers/LayerSchemaTextAttribute.md b/docs/Layers/LayerSchemaTextAttribute.md index ddd0ea13..01e28fff 100644 --- a/docs/Layers/LayerSchemaTextAttribute.md +++ b/docs/Layers/LayerSchemaTextAttribute.md @@ -52,11 +52,11 @@ Indicates this is a text attribute. ## sampleValues -> **sampleValues**: \{ `value`: `string`; `count`: `number`; }\[] +> **sampleValues**: { `value`: `string`; `count`: `number`; }\[] A small sample of string values for this attribute and their frequency. -| Name | Type | -| ------- | -------- | +| Name | Type | +| ------ | ------ | | `value` | `string` | | `count` | `number` | diff --git a/docs/Layers/LayersController.md b/docs/Layers/LayersController.md index 574ce2ac..3232eaa5 100644 --- a/docs/Layers/LayersController.md +++ b/docs/Layers/LayersController.md @@ -14,19 +14,19 @@ visibility toggled. ## getLayer() -> **getLayer**(`id`: `string`): `Promise`\<`null` | [`Layer`](Layer.md)> +> **getLayer**(`id`: `string`): `Promise`<`null` | [`Layer`](Layer.md)> Get a single layer from the map by its id. ### Parameters -| Parameter | Type | Description | -| --------- | -------- | ------------------------------------ | -| `id` | `string` | The id of the layer you want to get. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `id` | `string` | The id of the layer you want to get. | ### Returns -`Promise`\<`null` | [`Layer`](Layer.md)> +`Promise`<`null` | [`Layer`](Layer.md)> The requested layer. @@ -40,20 +40,20 @@ const layer = await felt.getLayer("layer-1"); ## getLayers() -> **getLayers**(`constraint`?: [`GetLayersConstraint`](GetLayersConstraint.md)): `Promise`\<(`null` | [`Layer`](Layer.md))\[]> +> **getLayers**(`constraint?`: [`GetLayersConstraint`](GetLayersConstraint.md)): `Promise`<(`null` | [`Layer`](Layer.md))\[]> Gets layers from the map, according to the constraints supplied. If no constraints are supplied, all layers will be returned. ### Parameters -| Parameter | Type | Description | -| ------------- | ----------------------------------------------- | ------------------------------------------------------------- | -| `constraint`? | [`GetLayersConstraint`](GetLayersConstraint.md) | The constraints to apply to the layers returned from the map. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `constraint?` | [`GetLayersConstraint`](GetLayersConstraint.md) | The constraints to apply to the layers returned from the map. | ### Returns -`Promise`\<(`null` | [`Layer`](Layer.md))\[]> +`Promise`<(`null` | [`Layer`](Layer.md))\[]> All layers on the map. @@ -73,19 +73,19 @@ const layers = await felt.getLayers(); ## setLayerVisibility() -> **setLayerVisibility**(`visibility`: [`SetVisibilityRequest`](../Shared/SetVisibilityRequest.md)): `Promise`\<`void`> +> **setLayerVisibility**(`visibility`: [`SetVisibilityRequest`](../Shared/SetVisibilityRequest.md)): `Promise`<`void`> Hide or show layers with the given ids. ### Parameters -| Parameter | Type | -| ------------ | ----------------------------------------------------------- | +| Parameter | Type | +| ------ | ------ | | `visibility` | [`SetVisibilityRequest`](../Shared/SetVisibilityRequest.md) | ### Returns -`Promise`\<`void`> +`Promise`<`void`> ### Example @@ -97,7 +97,7 @@ felt.setLayerVisibility({ show: ["layer-1", "layer-2"], hide: ["layer-3"] }); ## setLayerStyle() -> **setLayerStyle**(`params`: \{ `id`: `string`; `style`: `object`; }): `Promise`\<`void`> +> **setLayerStyle**(`params`: { `id`: `string`; `style`: `object`; }): `Promise`<`void`> Set the style for a layer using FSL, the Felt Style Language. @@ -113,15 +113,15 @@ in the rejected promise value. ### Parameters -| Parameter | Type | Description | -| -------------- | --------------------------------------- | ----------------------------------------- | -| `params` | \{ `id`: `string`; `style`: `object`; } | - | -| `params.id` | `string` | The id of the layer to set the style for. | -| `params.style` | `object` | The style to set for the layer. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `params` | { `id`: `string`; `style`: `object`; } | - | +| `params.id` | `string` | The id of the layer to set the style for. | +| `params.style` | `object` | The style to set for the layer. | ### Returns -`Promise`\<`void`> +`Promise`<`void`> ### Example @@ -142,19 +142,19 @@ felt.setLayerStyle({ id: "layer-1", style: { ## setLayerLegendVisibility() -> **setLayerLegendVisibility**(`params`: [`SetVisibilityRequest`](../Shared/SetVisibilityRequest.md)): `Promise`\<`void`> +> **setLayerLegendVisibility**(`params`: [`SetVisibilityRequest`](../Shared/SetVisibilityRequest.md)): `Promise`<`void`> Hide or show layers with the given ids from the legend. ### Parameters -| Parameter | Type | -| --------- | ----------------------------------------------------------- | -| `params` | [`SetVisibilityRequest`](../Shared/SetVisibilityRequest.md) | +| Parameter | Type | +| ------ | ------ | +| `params` | [`SetVisibilityRequest`](../Shared/SetVisibilityRequest.md) | ### Returns -`Promise`\<`void`> +`Promise`<`void`> ### Example @@ -166,19 +166,19 @@ felt.setLayerLegendVisibility({ show: ["layer-1", "layer-2"], hide: ["layer-3"] ## createLayersFromGeoJson() -> **createLayersFromGeoJson**(`params`: [`CreateLayersFromGeoJsonParams`](CreateLayersFromGeoJsonParams.md)): `Promise`\<`null` | \{ `layerGroup`: [`LayerGroup`](LayerGroup.md); `layers`: [`Layer`](Layer.md)\[]; }> +> **createLayersFromGeoJson**(`params`: [`CreateLayersFromGeoJsonParams`](CreateLayersFromGeoJsonParams.md)): `Promise`<`null` | { `layerGroup`: [`LayerGroup`](LayerGroup.md); `layers`: [`Layer`](Layer.md)\[]; }> Adds layers to the map from file or URL sources. ### Parameters -| Parameter | Type | -| --------- | ------------------------------------------------------------------- | -| `params` | [`CreateLayersFromGeoJsonParams`](CreateLayersFromGeoJsonParams.md) | +| Parameter | Type | +| ------ | ------ | +| `params` | [`CreateLayersFromGeoJsonParams`](CreateLayersFromGeoJsonParams.md) | ### Returns -`Promise`\<`null` | \{ `layerGroup`: [`LayerGroup`](LayerGroup.md); `layers`: [`Layer`](Layer.md)\[]; }> +`Promise`<`null` | { `layerGroup`: [`LayerGroup`](LayerGroup.md); `layers`: [`Layer`](Layer.md)\[]; }> The layer groups that were created. @@ -211,7 +211,7 @@ const layerFromUrl = await felt.createLayersFromGeoJson({ ## updateLayer() -> **updateLayer**(`params`: [`UpdateLayerParams`](UpdateLayerParams.md)): `Promise`\<[`Layer`](Layer.md)> +> **updateLayer**(`params`: [`UpdateLayerParams`](UpdateLayerParams.md)): `Promise`<[`Layer`](Layer.md)> Update a layer by passing a subset of the layer's properties. @@ -220,13 +220,13 @@ type to see which properties can be updated. ### Parameters -| Parameter | Type | -| --------- | ------------------------------------------- | -| `params` | [`UpdateLayerParams`](UpdateLayerParams.md) | +| Parameter | Type | +| ------ | ------ | +| `params` | [`UpdateLayerParams`](UpdateLayerParams.md) | ### Returns -`Promise`\<[`Layer`](Layer.md)> +`Promise`<[`Layer`](Layer.md)> ### Example @@ -242,19 +242,19 @@ await felt.updateLayer({ ## deleteLayer() -> **deleteLayer**(`id`: `string`): `Promise`\<`void`> +> **deleteLayer**(`id`: `string`): `Promise`<`void`> Delete a layer from the map by its id. ### Parameters -| Parameter | Type | -| --------- | -------- | -| `id` | `string` | +| Parameter | Type | +| ------ | ------ | +| `id` | `string` | ### Returns -`Promise`\<`void`> +`Promise`<`void`> ### Remarks @@ -270,19 +270,19 @@ await felt.deleteLayer("layer-1"); ## getLayerGroup() -> **getLayerGroup**(`id`: `string`): `Promise`\<`null` | [`LayerGroup`](LayerGroup.md)> +> **getLayerGroup**(`id`: `string`): `Promise`<`null` | [`LayerGroup`](LayerGroup.md)> Get a layer group from the map by its id. ### Parameters -| Parameter | Type | -| --------- | -------- | -| `id` | `string` | +| Parameter | Type | +| ------ | ------ | +| `id` | `string` | ### Returns -`Promise`\<`null` | [`LayerGroup`](LayerGroup.md)> +`Promise`<`null` | [`LayerGroup`](LayerGroup.md)> The requested layer group. @@ -296,20 +296,20 @@ const layerGroup = await felt.getLayerGroup("layer-group-1"); ## getLayerGroups() -> **getLayerGroups**(`constraint`?: [`GetLayerGroupsConstraint`](GetLayerGroupsConstraint.md)): `Promise`\<(`null` | [`LayerGroup`](LayerGroup.md))\[]> +> **getLayerGroups**(`constraint?`: [`GetLayerGroupsConstraint`](GetLayerGroupsConstraint.md)): `Promise`<(`null` | [`LayerGroup`](LayerGroup.md))\[]> Gets layer groups from the map, according to the constraints supplied. If no constraints are supplied, all layer groups will be returned in rendering order. ### Parameters -| Parameter | Type | Description | -| ------------- | --------------------------------------------------------- | ------------------------------------------------------------------- | -| `constraint`? | [`GetLayerGroupsConstraint`](GetLayerGroupsConstraint.md) | The constraints to apply to the layer groups returned from the map. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `constraint?` | [`GetLayerGroupsConstraint`](GetLayerGroupsConstraint.md) | The constraints to apply to the layer groups returned from the map. | ### Returns -`Promise`\<(`null` | [`LayerGroup`](LayerGroup.md))\[]> +`Promise`<(`null` | [`LayerGroup`](LayerGroup.md))\[]> The requested layer groups. @@ -323,19 +323,19 @@ const layerGroups = await felt.getLayerGroups({ ids: ["layer-group-1", "layer-gr ## setLayerGroupVisibility() -> **setLayerGroupVisibility**(`visibility`: [`SetVisibilityRequest`](../Shared/SetVisibilityRequest.md)): `Promise`\<`void`> +> **setLayerGroupVisibility**(`visibility`: [`SetVisibilityRequest`](../Shared/SetVisibilityRequest.md)): `Promise`<`void`> Hide or show layer groups with the given ids. ### Parameters -| Parameter | Type | -| ------------ | ----------------------------------------------------------- | +| Parameter | Type | +| ------ | ------ | | `visibility` | [`SetVisibilityRequest`](../Shared/SetVisibilityRequest.md) | ### Returns -`Promise`\<`void`> +`Promise`<`void`> ### Example @@ -347,19 +347,19 @@ felt.setLayerGroupVisibility({ show: ["layer-group-1", "layer-group-2"], hide: [ ## setLayerGroupLegendVisibility() -> **setLayerGroupLegendVisibility**(`params`: [`SetVisibilityRequest`](../Shared/SetVisibilityRequest.md)): `Promise`\<`void`> +> **setLayerGroupLegendVisibility**(`params`: [`SetVisibilityRequest`](../Shared/SetVisibilityRequest.md)): `Promise`<`void`> Hide or show layer groups with the given ids from the legend. ### Parameters -| Parameter | Type | -| --------- | ----------------------------------------------------------- | -| `params` | [`SetVisibilityRequest`](../Shared/SetVisibilityRequest.md) | +| Parameter | Type | +| ------ | ------ | +| `params` | [`SetVisibilityRequest`](../Shared/SetVisibilityRequest.md) | ### Returns -`Promise`\<`void`> +`Promise`<`void`> ### Example @@ -371,19 +371,19 @@ felt.setLayerGroupLegendVisibility({ show: ["layer-1", "layer-2"], hide: ["layer ## getLegendItem() -> **getLegendItem**(`id`: [`LegendItemIdentifier`](LegendItemIdentifier.md)): `Promise`\<`null` | [`LegendItem`](LegendItem.md)> +> **getLegendItem**(`id`: [`LegendItemIdentifier`](LegendItemIdentifier.md)): `Promise`<`null` | [`LegendItem`](LegendItem.md)> Allows you to get the state of a single legend item. ### Parameters -| Parameter | Type | -| --------- | ------------------------------------------------- | -| `id` | [`LegendItemIdentifier`](LegendItemIdentifier.md) | +| Parameter | Type | +| ------ | ------ | +| `id` | [`LegendItemIdentifier`](LegendItemIdentifier.md) | ### Returns -`Promise`\<`null` | [`LegendItem`](LegendItem.md)> +`Promise`<`null` | [`LegendItem`](LegendItem.md)> ### Example @@ -398,7 +398,7 @@ const legendItem = await felt.getLegendItem({ ## getLegendItems() -> **getLegendItems**(`constraint`?: [`LegendItemsConstraint`](LegendItemsConstraint.md)): `Promise`\<(`null` | [`LegendItem`](LegendItem.md))\[]> +> **getLegendItems**(`constraint?`: [`LegendItemsConstraint`](LegendItemsConstraint.md)): `Promise`<(`null` | [`LegendItem`](LegendItem.md))\[]> Allows you to obtain the state of several legend items, by passing in constraints describing which legend items you want. @@ -407,13 +407,13 @@ If you do not pass any constraints, you will receive all legend items. ### Parameters -| Parameter | Type | -| ------------- | --------------------------------------------------- | -| `constraint`? | [`LegendItemsConstraint`](LegendItemsConstraint.md) | +| Parameter | Type | +| ------ | ------ | +| `constraint?` | [`LegendItemsConstraint`](LegendItemsConstraint.md) | ### Returns -`Promise`\<(`null` | [`LegendItem`](LegendItem.md))\[]> +`Promise`<(`null` | [`LegendItem`](LegendItem.md))\[]> ### Example @@ -425,21 +425,21 @@ const legendItems = await felt.getLegendItems({layerId: "layer-1"}); ## setLegendItemVisibility() -> **setLegendItemVisibility**(`visibility`: \{ `show`: [`LegendItemIdentifier`](LegendItemIdentifier.md)\[]; `hide`: [`LegendItemIdentifier`](LegendItemIdentifier.md)\[]; }): `Promise`\<`void`> +> **setLegendItemVisibility**(`visibility`: { `show?`: [`LegendItemIdentifier`](LegendItemIdentifier.md)\[]; `hide?`: [`LegendItemIdentifier`](LegendItemIdentifier.md)\[]; }): `Promise`<`void`> Hide or show legend items with the given identifiers. ### Parameters -| Parameter | Type | -| ------------------ | -------------------------------------------------------------------------------------------------------------------------------- | -| `visibility` | \{ `show`: [`LegendItemIdentifier`](LegendItemIdentifier.md)\[]; `hide`: [`LegendItemIdentifier`](LegendItemIdentifier.md)\[]; } | -| `visibility.show`? | [`LegendItemIdentifier`](LegendItemIdentifier.md)\[] | -| `visibility.hide`? | [`LegendItemIdentifier`](LegendItemIdentifier.md)\[] | +| Parameter | Type | +| ------ | ------ | +| `visibility` | { `show?`: [`LegendItemIdentifier`](LegendItemIdentifier.md)\[]; `hide?`: [`LegendItemIdentifier`](LegendItemIdentifier.md)\[]; } | +| `visibility.show?` | [`LegendItemIdentifier`](LegendItemIdentifier.md)\[] | +| `visibility.hide?` | [`LegendItemIdentifier`](LegendItemIdentifier.md)\[] | ### Returns -`Promise`\<`void`> +`Promise`<`void`> ### Example @@ -454,19 +454,19 @@ felt.setLegendItemVisibility({ ## getLayerFilters() -> **getLayerFilters**(`layerId`: `string`): `Promise`\<`null` | [`LayerFilters`](LayerFilters.md)> +> **getLayerFilters**(`layerId`: `string`): `Promise`<`null` | [`LayerFilters`](LayerFilters.md)> Get the filters for a layer. ### Parameters -| Parameter | Type | -| --------- | -------- | +| Parameter | Type | +| ------ | ------ | | `layerId` | `string` | ### Returns -`Promise`\<`null` | [`LayerFilters`](LayerFilters.md)> +`Promise`<`null` | [`LayerFilters`](LayerFilters.md)> ### Remarks @@ -484,22 +484,22 @@ console.log(filters.combined, filters.style, filters.ephemeral, filters.componen ## setLayerFilters() -> **setLayerFilters**(`params`: \{ `layerId`: `string`; `filters`: [`Filters`](Filters.md); `note`: `string`; }): `Promise`\<`void`> +> **setLayerFilters**(`params`: { `layerId`: `string`; `filters`: [`Filters`](Filters.md); `note?`: `string`; }): `Promise`<`void`> Sets the **ephemeral** filters for a layer. ### Parameters -| Parameter | Type | Description | -| ---------------- | ------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `params` | \{ `layerId`: `string`; `filters`: [`Filters`](Filters.md); `note`: `string`; } | - | -| `params.layerId` | `string` | The layer that you want to set the filters for. | -| `params.filters` | [`Filters`](Filters.md) | The filters to set for the layer. This will replace any ephemeral filters that are currently set for the layer. | -| `params.note`? | `string` | A note to display on the layer legend when this filter is applied. When the note is shown, a reset button will also be shown, allowing the user to clear the filter. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `params` | { `layerId`: `string`; `filters`: [`Filters`](Filters.md); `note?`: `string`; } | - | +| `params.layerId` | `string` | The layer that you want to set the filters for. | +| `params.filters` | [`Filters`](Filters.md) | The filters to set for the layer. This will replace any ephemeral filters that are currently set for the layer. | +| `params.note?` | `string` | A note to display on the layer legend when this filter is applied. When the note is shown, a reset button will also be shown, allowing the user to clear the filter. | ### Returns -`Promise`\<`void`> +`Promise`<`void`> ### Example @@ -514,19 +514,19 @@ await felt.setLayerFilters({ ## getLayerBoundaries() -> **getLayerBoundaries**(`layerId`: `string`): `Promise`\<`null` | [`LayerBoundaries`](LayerBoundaries.md)> +> **getLayerBoundaries**(`layerId`: `string`): `Promise`<`null` | [`LayerBoundaries`](LayerBoundaries.md)> Get the spatial boundaries that are filtering a layer. ### Parameters -| Parameter | Type | -| --------- | -------- | +| Parameter | Type | +| ------ | ------ | | `layerId` | `string` | ### Returns -`Promise`\<`null` | [`LayerBoundaries`](LayerBoundaries.md)> +`Promise`<`null` | [`LayerBoundaries`](LayerBoundaries.md)> ### Remarks @@ -549,21 +549,21 @@ console.log(boundaries?.ephemeral); ## setLayerBoundary() -> **setLayerBoundary**(`params`: \{ `layerIds`: `string`\[]; `boundary`: `null` | [`GeometryFilter`](GeometryFilter.md); }): `Promise`\<`void`> +> **setLayerBoundary**(`params`: { `layerIds`: `string`\[]; `boundary`: `null` | [`GeometryFilter`](GeometryFilter.md); }): `Promise`<`void`> Set the [\`ephemeral\`](LayerBoundaries.md#ephemeral) boundary for one or more layers. ### Parameters -| Parameter | Type | Description | -| ----------------- | ------------------------------------------------------------------------------------------ | ---------------------------------------------------------------------------------------------- | -| `params` | \{ `layerIds`: `string`\[]; `boundary`: `null` \| [`GeometryFilter`](GeometryFilter.md); } | - | -| `params.layerIds` | `string`\[] | The ids of the layers to set the boundary for. | -| `params.boundary` | `null` \| [`GeometryFilter`](GeometryFilter.md) | The boundary to set for the layer. Passing `null` clears the ephemeral boundary for the layer. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `params` | { `layerIds`: `string`\[]; `boundary`: `null` | [`GeometryFilter`](GeometryFilter.md); } | - | +| `params.layerIds` | `string`\[] | The ids of the layers to set the boundary for. | +| `params.boundary` | `null` | [`GeometryFilter`](GeometryFilter.md) | The boundary to set for the layer. Passing `null` clears the ephemeral boundary for the layer. | ### Returns -`Promise`\<`void`> +`Promise`<`void`> ### Example @@ -578,7 +578,7 @@ await felt.setLayerBoundary({ ## getRenderedFeatures() -> **getRenderedFeatures**(`params`?: [`GetRenderedFeaturesConstraint`](GetRenderedFeaturesConstraint.md)): `Promise`\<[`LayerFeature`](LayerFeature.md)\[]> +> **getRenderedFeatures**(`params?`: [`GetRenderedFeaturesConstraint`](GetRenderedFeaturesConstraint.md)): `Promise`<[`LayerFeature`](LayerFeature.md)\[]> Get the features that are currently **rendered** on the map in the viewport. @@ -589,13 +589,13 @@ features are omitted from what is rendered on the screen. ### Parameters -| Parameter | Type | Description | -| --------- | ------------------------------------------------------------------- | --------------------------------------------------------------- | -| `params`? | [`GetRenderedFeaturesConstraint`](GetRenderedFeaturesConstraint.md) | The constraints to apply to the features returned from the map. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `params?` | [`GetRenderedFeaturesConstraint`](GetRenderedFeaturesConstraint.md) | The constraints to apply to the features returned from the map. | ### Returns -`Promise`\<[`LayerFeature`](LayerFeature.md)\[]> +`Promise`<[`LayerFeature`](LayerFeature.md)\[]> ### Example @@ -607,7 +607,7 @@ const features = await felt.getRenderedFeatures(); ## getFeature() -> **getFeature**(`params`: \{ `id`: `string` | `number`; `layerId`: `string`; }): `Promise`\<`null` | [`LayerFeature`](LayerFeature.md)> +> **getFeature**(`params`: { `id`: `string` | `number`; `layerId`: `string`; }): `Promise`<`null` | [`LayerFeature`](LayerFeature.md)> Get a feature from the map by its ID and layer ID. @@ -619,15 +619,15 @@ but you know the ID of the feature you need. ### Parameters -| Parameter | Type | -| ---------------- | ----------------------------------------------------- | -| `params` | \{ `id`: `string` \| `number`; `layerId`: `string`; } | -| `params.id` | `string` \| `number` | -| `params.layerId` | `string` | +| Parameter | Type | +| ------ | ------ | +| `params` | { `id`: `string` | `number`; `layerId`: `string`; } | +| `params.id` | `string` | `number` | +| `params.layerId` | `string` | ### Returns -`Promise`\<`null` | [`LayerFeature`](LayerFeature.md)> +`Promise`<`null` | [`LayerFeature`](LayerFeature.md)> ### Example @@ -639,25 +639,25 @@ const feature = await felt.getFeature({ layerId: "layer-1", id: 123 }); ## getFeatures() -> **getFeatures**(`params`: \{ `layerId`: `string`; `filters`: [`Filters`](Filters.md); `sorting`: [`SortConfig`](../Shared/SortConfig.md); `boundary`: [`GeometryFilter`](GeometryFilter.md); `search`: `string`; `pagination`: `null` | `string`; }): `Promise`\<\{ `features`: [`LayerFeature`](LayerFeature.md)\[]; `count`: `number`; `previousPage`: `null` | `string`; `nextPage`: `null` | `string`; }> +> **getFeatures**(`params`: { `layerId`: `string`; `filters?`: [`Filters`](Filters.md); `sorting?`: [`SortConfig`](../Shared/SortConfig.md); `boundary?`: [`GeometryFilter`](GeometryFilter.md); `search?`: `string`; `pagination?`: `null` | `string`; }): `Promise`<{ `features`: [`LayerFeature`](LayerFeature.md)\[]; `count`: `number`; `previousPage`: `null` | `string`; `nextPage`: `null` | `string`; }> Get a list of layer features. ### Parameters -| Parameter | Type | Description | -| -------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------ | -| `params` | \{ `layerId`: `string`; `filters`: [`Filters`](Filters.md); `sorting`: [`SortConfig`](../Shared/SortConfig.md); `boundary`: [`GeometryFilter`](GeometryFilter.md); `search`: `string`; `pagination`: `null` \| `string`; } | - | -| `params.layerId` | `string` | The ID of the layer to get features from. | -| `params.filters`? | [`Filters`](Filters.md) | Filters to be applied. These filters will merge with layer's own filters. | -| `params.sorting`? | [`SortConfig`](../Shared/SortConfig.md) | Attribute to sort by. | -| `params.boundary`? | [`GeometryFilter`](GeometryFilter.md) | The spatial boundary to be applied. | -| `params.search`? | `string` | Search term to search by. Search is case-insensitive and looks for matches across all feature properties. | -| `params.pagination`? | `null` \| `string` | Pagination token. It comes from either the `previousPage` or `nextPage` properties of the previous response. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `params` | { `layerId`: `string`; `filters?`: [`Filters`](Filters.md); `sorting?`: [`SortConfig`](../Shared/SortConfig.md); `boundary?`: [`GeometryFilter`](GeometryFilter.md); `search?`: `string`; `pagination?`: `null` | `string`; } | - | +| `params.layerId` | `string` | The ID of the layer to get features from. | +| `params.filters?` | [`Filters`](Filters.md) | Filters to be applied. These filters will merge with layer's own filters. | +| `params.sorting?` | [`SortConfig`](../Shared/SortConfig.md) | Attribute to sort by. | +| `params.boundary?` | [`GeometryFilter`](GeometryFilter.md) | The spatial boundary to be applied. | +| `params.search?` | `string` | Search term to search by. Search is case-insensitive and looks for matches across all feature properties. | +| `params.pagination?` | `null` | `string` | Pagination token. It comes from either the `previousPage` or `nextPage` properties of the previous response. | ### Returns -`Promise`\<\{ `features`: [`LayerFeature`](LayerFeature.md)\[]; `count`: `number`; `previousPage`: `null` | `string`; `nextPage`: `null` | `string`; }> +`Promise`<{ `features`: [`LayerFeature`](LayerFeature.md)\[]; `count`: `number`; `previousPage`: `null` | `string`; `nextPage`: `null` | `string`; }> The response is an object which contains: @@ -698,7 +698,7 @@ if (page1Response.nextPage) { ## getGeoJsonFeature() -> **getGeoJsonFeature**(`params`: \{ `id`: `string` | `number`; `layerId`: `string`; }): `Promise`\<`null` | [`GeoJsonFeature`](../Shared/GeoJsonFeature.md)> +> **getGeoJsonFeature**(`params`: { `id`: `string` | `number`; `layerId`: `string`; }): `Promise`<`null` | [`GeoJsonFeature`](../Shared/GeoJsonFeature.md)> Get a feature in GeoJSON format from the map by its ID and layer ID. @@ -708,15 +708,15 @@ long time to return, and may return a very large object. ### Parameters -| Parameter | Type | -| ---------------- | ----------------------------------------------------- | -| `params` | \{ `id`: `string` \| `number`; `layerId`: `string`; } | -| `params.id` | `string` \| `number` | -| `params.layerId` | `string` | +| Parameter | Type | +| ------ | ------ | +| `params` | { `id`: `string` | `number`; `layerId`: `string`; } | +| `params.id` | `string` | `number` | +| `params.layerId` | `string` | ### Returns -`Promise`\<`null` | [`GeoJsonFeature`](../Shared/GeoJsonFeature.md)> +`Promise`<`null` | [`GeoJsonFeature`](../Shared/GeoJsonFeature.md)> ### Example @@ -728,19 +728,19 @@ const feature = await felt.getGeoJsonFeature({ layerId: "layer-1", id: 123 }); ## getCategoryData() -> **getCategoryData**(`params`: [`GetLayerCategoriesParams`](GetLayerCategoriesParams.md)): `Promise`\<[`GetLayerCategoriesGroup`](GetLayerCategoriesGroup.md)\[]> +> **getCategoryData**(`params`: [`GetLayerCategoriesParams`](GetLayerCategoriesParams.md)): `Promise`<[`GetLayerCategoriesGroup`](GetLayerCategoriesGroup.md)\[]> Gets values from a layer grouped by a given attribute. ### Parameters -| Parameter | Type | -| --------- | --------------------------------------------------------- | -| `params` | [`GetLayerCategoriesParams`](GetLayerCategoriesParams.md) | +| Parameter | Type | +| ------ | ------ | +| `params` | [`GetLayerCategoriesParams`](GetLayerCategoriesParams.md) | ### Returns -`Promise`\<[`GetLayerCategoriesGroup`](GetLayerCategoriesGroup.md)\[]> +`Promise`<[`GetLayerCategoriesGroup`](GetLayerCategoriesGroup.md)\[]> ### Remarks @@ -804,19 +804,19 @@ const newBuildingDensityByNeighborhood = await felt.getCategoryData({ ## getHistogramData() -> **getHistogramData**(`params`: [`GetLayerHistogramParams`](GetLayerHistogramParams.md)): `Promise`\<[`GetLayerHistogramBin`](GetLayerHistogramBin.md)\[]> +> **getHistogramData**(`params`: [`GetLayerHistogramParams`](GetLayerHistogramParams.md)): `Promise`<[`GetLayerHistogramBin`](GetLayerHistogramBin.md)\[]> Gets a histogram of values from a layer for a given attribute. ### Parameters -| Parameter | Type | -| --------- | ------------------------------------------------------- | -| `params` | [`GetLayerHistogramParams`](GetLayerHistogramParams.md) | +| Parameter | Type | +| ------ | ------ | +| `params` | [`GetLayerHistogramParams`](GetLayerHistogramParams.md) | ### Returns -`Promise`\<[`GetLayerHistogramBin`](GetLayerHistogramBin.md)\[]> +`Promise`<[`GetLayerHistogramBin`](GetLayerHistogramBin.md)\[]> ### Remarks @@ -872,25 +872,25 @@ const newBuildingHeights = await felt.getHistogramData({ ## getAggregates() -> **getAggregates**\<`T`>(`params`: [`GetLayerCalculationParams`](GetLayerCalculationParams.md)\<`T`>): `Promise`\<`Record`\<`T`, `null` | `number`>> +> **getAggregates**<`T`>(`params`: [`GetLayerCalculationParams`](GetLayerCalculationParams.md)<`T`>): `Promise`<`Record`<`T`, `null` | `number`>> Calculates a single aggregate value for a layer based on the provided configuration. ### Type Parameters -| Type Parameter | -| --------------------------------------------------------------------------------- | -| `T` *extends* `"avg"` \| `"max"` \| `"min"` \| `"sum"` \| `"median"` \| `"count"` | +| Type Parameter | +| ------ | +| `T` *extends* `"avg"` | `"max"` | `"min"` | `"sum"` | `"median"` | `"count"` | ### Parameters -| Parameter | Type | -| --------- | ----------------------------------------------------------------- | -| `params` | [`GetLayerCalculationParams`](GetLayerCalculationParams.md)\<`T`> | +| Parameter | Type | +| ------ | ------ | +| `params` | [`GetLayerCalculationParams`](GetLayerCalculationParams.md)<`T`> | ### Returns -`Promise`\<`Record`\<`T`, `null` | `number`>> +`Promise`<`Record`<`T`, `null` | `number`>> ### Remarks @@ -935,19 +935,19 @@ const maxNewBuildingHeight = await felt.getAggregates({ ## getPrecomputedAggregates() -> **getPrecomputedAggregates**(`params`: [`GetLayerPrecomputedCalculationParams`](GetLayerPrecomputedCalculationParams.md)): `Promise`\<\{ `avg`: `null` | `number`; `max`: `null` | `number`; `min`: `null` | `number`; `sum`: `null` | `number`; `count`: `null` | `number`; }> +> **getPrecomputedAggregates**(`params`: [`GetLayerPrecomputedCalculationParams`](GetLayerPrecomputedCalculationParams.md)): `Promise`<{ `avg`: `null` | `number`; `max`: `null` | `number`; `min`: `null` | `number`; `sum`: `null` | `number`; `count`: `null` | `number`; }> Calculates aggregates for spatial cells of a layer. ### Parameters -| Parameter | Type | -| --------- | --------------------------------------------------------------------------------- | -| `params` | [`GetLayerPrecomputedCalculationParams`](GetLayerPrecomputedCalculationParams.md) | +| Parameter | Type | +| ------ | ------ | +| `params` | [`GetLayerPrecomputedCalculationParams`](GetLayerPrecomputedCalculationParams.md) | ### Returns -`Promise`\<\{ `avg`: `null` | `number`; `max`: `null` | `number`; `min`: `null` | `number`; `sum`: `null` | `number`; `count`: `null` | `number`; }> +`Promise`<{ `avg`: `null` | `number`; `max`: `null` | `number`; `min`: `null` | `number`; `sum`: `null` | `number`; `count`: `null` | `number`; }> ### Remarks @@ -972,19 +972,19 @@ const aggregates = await felt.getPrecomputedAggregates({ ## getLayerSchema() -> **getLayerSchema**(`layerId`: `string`): `Promise`\<[`LayerSchema`](LayerSchema.md)> +> **getLayerSchema**(`layerId`: `string`): `Promise`<[`LayerSchema`](LayerSchema.md)> Get the schema for a layer. ### Parameters -| Parameter | Type | -| --------- | -------- | +| Parameter | Type | +| ------ | ------ | | `layerId` | `string` | ### Returns -`Promise`\<[`LayerSchema`](LayerSchema.md)> +`Promise`<[`LayerSchema`](LayerSchema.md)> ### Remarks @@ -1005,18 +1005,18 @@ const attributeIds = schema.attributes.map((attr) => attr.id); ## onLayerChange() -> **onLayerChange**(`args`: \{ `options`: \{ `id`: `string`; }; `handler`: (`change`: [`LayerChangeCallbackParams`](LayerChangeCallbackParams.md)) => `void`; }): `VoidFunction` +> **onLayerChange**(`args`: { `options`: { `id`: `string`; }; `handler`: (`change`: [`LayerChangeCallbackParams`](LayerChangeCallbackParams.md)) => `void`; }): `VoidFunction` Adds a listener for when a layer changes. ### Parameters -| Parameter | Type | Description | -| ----------------- | ----------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------- | -| `args` | \{ `options`: \{ `id`: `string`; }; `handler`: (`change`: [`LayerChangeCallbackParams`](LayerChangeCallbackParams.md)) => `void`; } | - | -| `args.options` | \{ `id`: `string`; } | - | -| `args.options.id` | `string` | The id of the layer to listen for changes to. | -| `args.handler` | (`change`: [`LayerChangeCallbackParams`](LayerChangeCallbackParams.md)) => `void` | The handler that is called when the layer changes. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `args` | { `options`: { `id`: `string`; }; `handler`: (`change`: [`LayerChangeCallbackParams`](LayerChangeCallbackParams.md)) => `void`; } | - | +| `args.options` | { `id`: `string`; } | - | +| `args.options.id` | `string` | The id of the layer to listen for changes to. | +| `args.handler` | (`change`: [`LayerChangeCallbackParams`](LayerChangeCallbackParams.md)) => `void` | The handler that is called when the layer changes. | ### Returns @@ -1040,18 +1040,18 @@ unsubscribe(); ## onLayerGroupChange() -> **onLayerGroupChange**(`args`: \{ `options`: \{ `id`: `string`; }; `handler`: (`change`: [`LayerGroupChangeCallbackParams`](LayerGroupChangeCallbackParams.md)) => `void`; }): `VoidFunction` +> **onLayerGroupChange**(`args`: { `options`: { `id`: `string`; }; `handler`: (`change`: [`LayerGroupChangeCallbackParams`](LayerGroupChangeCallbackParams.md)) => `void`; }): `VoidFunction` Adds a listener for when a layer group changes. ### Parameters -| Parameter | Type | -| ----------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | -| `args` | \{ `options`: \{ `id`: `string`; }; `handler`: (`change`: [`LayerGroupChangeCallbackParams`](LayerGroupChangeCallbackParams.md)) => `void`; } | -| `args.options` | \{ `id`: `string`; } | -| `args.options.id` | `string` | -| `args.handler` | (`change`: [`LayerGroupChangeCallbackParams`](LayerGroupChangeCallbackParams.md)) => `void` | +| Parameter | Type | +| ------ | ------ | +| `args` | { `options`: { `id`: `string`; }; `handler`: (`change`: [`LayerGroupChangeCallbackParams`](LayerGroupChangeCallbackParams.md)) => `void`; } | +| `args.options` | { `id`: `string`; } | +| `args.options.id` | `string` | +| `args.handler` | (`change`: [`LayerGroupChangeCallbackParams`](LayerGroupChangeCallbackParams.md)) => `void` | ### Returns @@ -1075,17 +1075,17 @@ unsubscribe(); ## onLegendItemChange() -> **onLegendItemChange**(`args`: \{ `options`: [`LegendItemIdentifier`](LegendItemIdentifier.md); `handler`: (`change`: [`LegendItemChangeCallbackParams`](LegendItemChangeCallbackParams.md)) => `void`; }): `VoidFunction` +> **onLegendItemChange**(`args`: { `options`: [`LegendItemIdentifier`](LegendItemIdentifier.md); `handler`: (`change`: [`LegendItemChangeCallbackParams`](LegendItemChangeCallbackParams.md)) => `void`; }): `VoidFunction` Adds a listener for when a legend item changes. ### Parameters -| Parameter | Type | -| -------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `args` | \{ `options`: [`LegendItemIdentifier`](LegendItemIdentifier.md); `handler`: (`change`: [`LegendItemChangeCallbackParams`](LegendItemChangeCallbackParams.md)) => `void`; } | -| `args.options` | [`LegendItemIdentifier`](LegendItemIdentifier.md) | -| `args.handler` | (`change`: [`LegendItemChangeCallbackParams`](LegendItemChangeCallbackParams.md)) => `void` | +| Parameter | Type | +| ------ | ------ | +| `args` | { `options`: [`LegendItemIdentifier`](LegendItemIdentifier.md); `handler`: (`change`: [`LegendItemChangeCallbackParams`](LegendItemChangeCallbackParams.md)) => `void`; } | +| `args.options` | [`LegendItemIdentifier`](LegendItemIdentifier.md) | +| `args.handler` | (`change`: [`LegendItemChangeCallbackParams`](LegendItemChangeCallbackParams.md)) => `void` | ### Returns @@ -1109,18 +1109,18 @@ unsubscribe(); ## onLayerFiltersChange() -> **onLayerFiltersChange**(`params`: \{ `options`: \{ `layerId`: `string`; }; `handler`: (`change`: [`LayerFilters`](LayerFilters.md)) => `void`; }): `VoidFunction` +> **onLayerFiltersChange**(`params`: { `options`: { `layerId`: `string`; }; `handler`: (`change`: [`LayerFilters`](LayerFilters.md)) => `void`; }): `VoidFunction` Adds a listener for when a layer's filters change. ### Parameters -| Parameter | Type | -| ------------------------ | -------------------------------------------------------------------------------------------------------------- | -| `params` | \{ `options`: \{ `layerId`: `string`; }; `handler`: (`change`: [`LayerFilters`](LayerFilters.md)) => `void`; } | -| `params.options` | \{ `layerId`: `string`; } | -| `params.options.layerId` | `string` | -| `params.handler` | (`change`: [`LayerFilters`](LayerFilters.md)) => `void` | +| Parameter | Type | +| ------ | ------ | +| `params` | { `options`: { `layerId`: `string`; }; `handler`: (`change`: [`LayerFilters`](LayerFilters.md)) => `void`; } | +| `params.options` | { `layerId`: `string`; } | +| `params.options.layerId` | `string` | +| `params.handler` | (`change`: [`LayerFilters`](LayerFilters.md)) => `void` | ### Returns @@ -1157,18 +1157,18 @@ unsubscribe(); ## onLayerBoundariesChange() -> **onLayerBoundariesChange**(`params`: \{ `options`: \{ `layerId`: `string`; }; `handler`: (`boundaries`: `null` | [`LayerBoundaries`](LayerBoundaries.md)) => `void`; }): `VoidFunction` +> **onLayerBoundariesChange**(`params`: { `options`: { `layerId`: `string`; }; `handler`: (`boundaries`: `null` | [`LayerBoundaries`](LayerBoundaries.md)) => `void`; }): `VoidFunction` Adds a listener for when a layer's spatial boundaries change. ### Parameters -| Parameter | Type | Description | -| ------------------------ | ---------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------ | -| `params` | \{ `options`: \{ `layerId`: `string`; }; `handler`: (`boundaries`: `null` \| [`LayerBoundaries`](LayerBoundaries.md)) => `void`; } | - | -| `params.options` | \{ `layerId`: `string`; } | - | -| `params.options.layerId` | `string` | The id of the layer to listen for boundary changes on. | -| `params.handler` | (`boundaries`: `null` \| [`LayerBoundaries`](LayerBoundaries.md)) => `void` | A function that is called when the boundaries change. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `params` | { `options`: { `layerId`: `string`; }; `handler`: (`boundaries`: `null` | [`LayerBoundaries`](LayerBoundaries.md)) => `void`; } | - | +| `params.options` | { `layerId`: `string`; } | - | +| `params.options.layerId` | `string` | The id of the layer to listen for boundary changes on. | +| `params.handler` | (`boundaries`: `null` | [`LayerBoundaries`](LayerBoundaries.md)) => `void` | A function that is called when the boundaries change. | ### Returns diff --git a/docs/Layers/LegendItemsConstraint.md b/docs/Layers/LegendItemsConstraint.md index 62e4ae91..209fcac6 100644 --- a/docs/Layers/LegendItemsConstraint.md +++ b/docs/Layers/LegendItemsConstraint.md @@ -6,13 +6,13 @@ Constraints for legend items. If nothing is passed, all legend items will be ret ## ids? -> `optional` **ids**: \{ `id`: `string`; `layerId`: `string`; }\[] +> `optional` **ids**: { `id`: `string`; `layerId`: `string`; }\[] Array of legend item identifiers to constrain by. -| Name | Type | Description | -| --------- | -------- | ----------------------------------------------- | -| `id` | `string` | The id of the legend item. | +| Name | Type | Description | +| ------ | ------ | ------ | +| `id` | `string` | The id of the legend item. | | `layerId` | `string` | The id of the layer the legend item belongs to. | *** diff --git a/docs/Layers/MultiAggregationConfig.md b/docs/Layers/MultiAggregationConfig.md index b69947f5..b53bcd10 100644 --- a/docs/Layers/MultiAggregationConfig.md +++ b/docs/Layers/MultiAggregationConfig.md @@ -5,9 +5,9 @@ returned at once. # Type Parameters -| Type Parameter | -| ---------------------------------------------------------------------- | -| `T` *extends* [`AggregationMethod`](AggregationMethod.md) \| `"count"` | +| Type Parameter | +| ------ | +| `T` *extends* [`AggregationMethod`](AggregationMethod.md) | `"count"` | # Properties diff --git a/docs/Layers/PrecomputedAggregationMethod.md b/docs/Layers/PrecomputedAggregationMethod.md index d20c7282..b82fc82b 100644 --- a/docs/Layers/PrecomputedAggregationMethod.md +++ b/docs/Layers/PrecomputedAggregationMethod.md @@ -1,5 +1,5 @@ *** -> **PrecomputedAggregationMethod**: `"avg"` | `"max"` | `"min"` | `"sum"` | `"count"` +> **PrecomputedAggregationMethod** = `"avg"` | `"max"` | `"min"` | `"sum"` | `"count"` The method to use for the precomputed aggregation. diff --git a/docs/Layers/README.md b/docs/Layers/README.md deleted file mode 100644 index d98fe053..00000000 --- a/docs/Layers/README.md +++ /dev/null @@ -1,99 +0,0 @@ -*** - -Layers in a Felt map hold geospatial data, but also configure how the data is rendered -both on the map and in the legend. The data can be vector data such as Points, Lines, or Polygons, -or raster data such as satellite images. - -Each Layer can be grouped under a LayerGroup, and has associated LegendItems that represent -how the layer is rendered in the legend. - -You can control the visibility of layers, layer groups, and legend items using the -[\`setLayerVisibility\`](LayersController.md#setlayervisibility), [\`setLayerGroupVisibility\`](LayersController.md#setlayergroupvisibility), and [\`setLegendItemVisibility\`](LayersController.md#setlegenditemvisibility) methods. - -When a Layer is styled to as categorical data or "classed" numeric data, there will be -a `LegendItem` for each category or class. Each `LegendItem` can be controlled for visibility -independently of the Layer, so you can turn on and off each category or class individually. - -# Controller - -* [LayersController](LayersController.md) - -# Features - -* [LayerFeature](LayerFeature.md) -* [RasterValue](RasterValue.md) - -# Filters - -* [LayerFilters](LayerFilters.md) -* [LayerBoundaries](LayerBoundaries.md) -* [FilterLogicGate](FilterLogicGate.md) -* [FilterExpression](FilterExpression.md) -* [FilterTernary](FilterTernary.md) -* [Filters](Filters.md) -* [GeometryFilter](GeometryFilter.md) - -# Layer Groups - -* [LayerGroup](LayerGroup.md) -* [GetLayerGroupsConstraint](GetLayerGroupsConstraint.md) -* [LayerGroupChangeCallbackParams](LayerGroupChangeCallbackParams.md) - -# Layer Schema - -* [LayerSchema](LayerSchema.md) -* [LayerSchemaCommonAttribute](LayerSchemaCommonAttribute.md) -* [LayerSchemaNumericAttribute](LayerSchemaNumericAttribute.md) -* [LayerSchemaTextAttribute](LayerSchemaTextAttribute.md) -* [LayerSchemaBooleanAttribute](LayerSchemaBooleanAttribute.md) -* [LayerSchemaDateAttribute](LayerSchemaDateAttribute.md) -* [LayerSchemaDateTimeAttribute](LayerSchemaDateTimeAttribute.md) -* [LayerSchemaAttribute](LayerSchemaAttribute.md) - -# Layer sources - -* [RasterLayerSource](RasterLayerSource.md) -* [RasterBand](RasterBand.md) -* [GeoJsonUrlVectorSource](GeoJsonUrlVectorSource.md) -* [GeoJsonDataVectorSource](GeoJsonDataVectorSource.md) -* [GeoJsonFileVectorSource](GeoJsonFileVectorSource.md) -* [FeltTiledVectorSource](FeltTiledVectorSource.md) - -# Layers - -* [LayerCommon](LayerCommon.md) -* [RasterLayer](RasterLayer.md) -* [VectorLayer](VectorLayer.md) -* [UpdateLayerParams](UpdateLayerParams.md) -* [DataOnlyLayer](DataOnlyLayer.md) -* [GetLayersConstraint](GetLayersConstraint.md) -* [LayerChangeCallbackParams](LayerChangeCallbackParams.md) -* [GetRenderedFeaturesConstraint](GetRenderedFeaturesConstraint.md) -* [CreateLayersFromGeoJsonParams](CreateLayersFromGeoJsonParams.md) -* [LayerProcessingStatus](LayerProcessingStatus.md) -* [Layer](Layer.md) - -# Legend Items - -* [LegendItem](LegendItem.md) -* [LegendItemIdentifier](LegendItemIdentifier.md) -* [LegendItemsConstraint](LegendItemsConstraint.md) -* [LegendItemChangeCallbackParams](LegendItemChangeCallbackParams.md) - -# Stats - -* [AggregationConfig](AggregationConfig.md) -* [MultiAggregationConfig](MultiAggregationConfig.md) -* [ValueConfiguration](ValueConfiguration.md) -* [GetLayerCategoriesParams](GetLayerCategoriesParams.md) -* [GetLayerCategoriesGroup](GetLayerCategoriesGroup.md) -* [GetLayerHistogramParams](GetLayerHistogramParams.md) -* [GetLayerHistogramBin](GetLayerHistogramBin.md) -* [GetLayerCalculationParams](GetLayerCalculationParams.md) -* [CountGridConfig](CountGridConfig.md) -* [AggregatedGridConfig](AggregatedGridConfig.md) -* [GetLayerPrecomputedCalculationParams](GetLayerPrecomputedCalculationParams.md) -* [AggregationMethod](AggregationMethod.md) -* [PrecomputedAggregationMethod](PrecomputedAggregationMethod.md) -* [GridType](GridType.md) -* [GridConfig](GridConfig.md) diff --git a/docs/Layers/RasterValue.md b/docs/Layers/RasterValue.md index d490b6c0..761f18f9 100644 --- a/docs/Layers/RasterValue.md +++ b/docs/Layers/RasterValue.md @@ -30,6 +30,6 @@ The name of the category that the pixel belongs to. ## color -> **color**: `null` | \{ `r`: `number`; `g`: `number`; `b`: `number`; `a`: `number`; } +> **color**: `null` | { `r`: `number`; `g`: `number`; `b`: `number`; `a`: `number`; } The color of the pixel. Each value is between 0 and 255. diff --git a/docs/Layers/VectorLayer.md b/docs/Layers/VectorLayer.md index 716958ef..ad6959ae 100644 --- a/docs/Layers/VectorLayer.md +++ b/docs/Layers/VectorLayer.md @@ -110,6 +110,6 @@ Identifies the type of geometry in the layer. ## source -> **source**: [`GeoJsonUrlVectorSource`](GeoJsonUrlVectorSource.md) | [`FeltTiledVectorSource`](FeltTiledVectorSource.md) | `Omit`\<[`GeoJsonDataVectorSource`](GeoJsonDataVectorSource.md), `"data"`> +> **source**: [`GeoJsonUrlVectorSource`](GeoJsonUrlVectorSource.md) | [`FeltTiledVectorSource`](FeltTiledVectorSource.md) | `Omit`<[`GeoJsonDataVectorSource`](GeoJsonDataVectorSource.md), `"data"`> The source of the vector layer's data. diff --git a/docs/Main/README.md b/docs/Main.md similarity index 67% rename from docs/Main/README.md rename to docs/Main.md index 63e3fa45..0f65be17 100644 --- a/docs/Main/README.md +++ b/docs/Main.md @@ -1,12 +1,12 @@ *** -Use the [Felt](Felt.md) object to embed a new iframe, or connect to an existing embedded +Use the [Felt](Main/Felt.md) object to embed a new iframe, or connect to an existing embedded iframe. Once you have connected to a Felt map (either by embedding or connecting to an existing -iframe), you can use the [FeltController](FeltController.md) object to control the map. +iframe), you can use the [FeltController](Main/FeltController.md) object to control the map. -To see what you can do with the map, see the documentation for the [FeltController](FeltController.md) +To see what you can do with the map, see the documentation for the [FeltController](Main/FeltController.md) interface and its constituent controllers. # Example @@ -28,9 +28,9 @@ await map.setViewport({ # Controller -* [FeltController](FeltController.md) +* [FeltController](Main/FeltController.md) # Instantiation -* [FeltEmbedOptions](FeltEmbedOptions.md) -* [Felt](Felt.md) +* [FeltEmbedOptions](Main/FeltEmbedOptions.md) +* [Felt](Main/Felt.md) diff --git a/docs/Main/Felt.md b/docs/Main/Felt.md index 8480f627..297aa7a9 100644 --- a/docs/Main/Felt.md +++ b/docs/Main/Felt.md @@ -1,6 +1,6 @@ *** -> `const` **Felt**: \{ `embed`: `Promise`\<[`FeltController`](FeltController.md)>; `connect`: `Promise`\<[`FeltController`](FeltController.md)>; } +> `const` **Felt**: { `embed`: `Promise`<[`FeltController`](FeltController.md)>; `connect`: `Promise`<[`FeltController`](FeltController.md)>; } The Felt SDK is a library for embedding Felt maps into your website, allowing you to control and inspect the map programmatically. @@ -9,33 +9,37 @@ allowing you to control and inspect the map programmatically. ## embed() +> **embed**(`container`: `HTMLElement`, `mapId`: `string`, `options?`: [`FeltEmbedOptions`](FeltEmbedOptions.md)): `Promise`<[`FeltController`](FeltController.md)> + Embeds a Felt map into the provided container, returning a promise that resolves to a [FeltController](FeltController.md) object that you can use to control the map. ### Parameters -| Parameter | Type | Description | -| ----------- | ----------------------------------------- | -------------------------------------------- | -| `container` | `HTMLElement` | The container element to embed the map into. | -| `mapId` | `string` | The ID of the map to embed. | -| `options`? | [`FeltEmbedOptions`](FeltEmbedOptions.md) | The options to configure the map. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `container` | `HTMLElement` | The container element to embed the map into. | +| `mapId` | `string` | The ID of the map to embed. | +| `options?` | [`FeltEmbedOptions`](FeltEmbedOptions.md) | The options to configure the map. | ### Returns -`Promise`\<[`FeltController`](FeltController.md)> +`Promise`<[`FeltController`](FeltController.md)> A promise for a [FeltController](FeltController.md). ## connect() +> **connect**(`feltWindow`: `Pick`<`Window`, `"postMessage"`>): `Promise`<[`FeltController`](FeltController.md)> + Binds to an existing Felt map iframe. ### Parameters -| Parameter | Type | Description | -| ------------ | ---------------------------------- | ------------------------------------------- | -| `feltWindow` | `Pick`\<`Window`, `"postMessage"`> | The iframe element containing the Felt map. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `feltWindow` | `Pick`<`Window`, `"postMessage"`> | The iframe element containing the Felt map. | ### Returns -`Promise`\<[`FeltController`](FeltController.md)> +`Promise`<[`FeltController`](FeltController.md)> diff --git a/docs/Main/FeltController.md b/docs/Main/FeltController.md index a73f82db..9d8bfb8f 100644 --- a/docs/Main/FeltController.md +++ b/docs/Main/FeltController.md @@ -16,19 +16,19 @@ own to make it easier to find related methods and events. ## getElement() -> **getElement**(`id`: `string`): `Promise`\<`null` | [`Element`](../Elements/Element.md)> +> **getElement**(`id`: `string`): `Promise`<`null` | [`Element`](../Elements/Element.md)> Get a single element from the map by its id. ### Parameters -| Parameter | Type | Description | -| --------- | -------- | -------------------------------------- | -| `id` | `string` | The id of the element you want to get. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `id` | `string` | The id of the element you want to get. | ### Returns -`Promise`\<`null` | [`Element`](../Elements/Element.md)> +`Promise`<`null` | [`Element`](../Elements/Element.md)> The requested element. @@ -42,7 +42,7 @@ const element = await felt.getElement("element-1"); ## getElementGeometry() -> **getElementGeometry**(`id`: `string`): `Promise`\<`null` | [`GeoJsonGeometry`](../Shared/GeoJsonGeometry.md)> +> **getElementGeometry**(`id`: `string`): `Promise`<`null` | [`GeoJsonGeometry`](../Shared/GeoJsonGeometry.md)> Get the geometry of an element in GeoJSON geometry format. @@ -63,13 +63,13 @@ property of the element, with some differences: ### Parameters -| Parameter | Type | Description | -| --------- | -------- | ------------------------------------------------------ | -| `id` | `string` | The id of the element you want to get the geometry of. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `id` | `string` | The id of the element you want to get the geometry of. | ### Returns -`Promise`\<`null` | [`GeoJsonGeometry`](../Shared/GeoJsonGeometry.md)> +`Promise`<`null` | [`GeoJsonGeometry`](../Shared/GeoJsonGeometry.md)> ### Example @@ -82,20 +82,20 @@ console.log(geometry?.type, geometry?.coordinates); ## getElements() -> **getElements**(`constraint`?: [`GetElementsConstraint`](../Elements/GetElementsConstraint.md)): `Promise`\<(`null` | [`Element`](../Elements/Element.md))\[]> +> **getElements**(`constraint?`: [`GetElementsConstraint`](../Elements/GetElementsConstraint.md)): `Promise`<(`null` | [`Element`](../Elements/Element.md))\[]> Gets elements from the map, according to the constraints supplied. If no constraints are supplied, all elements will be returned. ### Parameters -| Parameter | Type | Description | -| ------------- | --------------------------------------------------------------- | --------------------------------------------------------------- | -| `constraint`? | [`GetElementsConstraint`](../Elements/GetElementsConstraint.md) | The constraints to apply to the elements returned from the map. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `constraint?` | [`GetElementsConstraint`](../Elements/GetElementsConstraint.md) | The constraints to apply to the elements returned from the map. | ### Returns -`Promise`\<(`null` | [`Element`](../Elements/Element.md))\[]> +`Promise`<(`null` | [`Element`](../Elements/Element.md))\[]> All elements on the map. @@ -115,19 +115,19 @@ const elements = await felt.getElements(); ## getElementGroup() -> **getElementGroup**(`id`: `string`): `Promise`\<`null` | [`ElementGroup`](../Elements/ElementGroup.md)> +> **getElementGroup**(`id`: `string`): `Promise`<`null` | [`ElementGroup`](../Elements/ElementGroup.md)> Get an element group from the map by its id. ### Parameters -| Parameter | Type | -| --------- | -------- | -| `id` | `string` | +| Parameter | Type | +| ------ | ------ | +| `id` | `string` | ### Returns -`Promise`\<`null` | [`ElementGroup`](../Elements/ElementGroup.md)> +`Promise`<`null` | [`ElementGroup`](../Elements/ElementGroup.md)> The requested element group. @@ -141,20 +141,20 @@ const elementGroup = await felt.getElementGroup("element-group-1"); ## getElementGroups() -> **getElementGroups**(`constraint`?: [`GetElementGroupsConstraint`](../Elements/GetElementGroupsConstraint.md)): `Promise`\<(`null` | [`ElementGroup`](../Elements/ElementGroup.md))\[]> +> **getElementGroups**(`constraint?`: [`GetElementGroupsConstraint`](../Elements/GetElementGroupsConstraint.md)): `Promise`<(`null` | [`ElementGroup`](../Elements/ElementGroup.md))\[]> Gets element groups from the map, according to the filters supplied. If no constraints are supplied, all element groups will be returned in rendering order. ### Parameters -| Parameter | Type | Description | -| ------------- | ------------------------------------------------------------------------- | --------------------------------------------------------------------- | -| `constraint`? | [`GetElementGroupsConstraint`](../Elements/GetElementGroupsConstraint.md) | The constraints to apply to the element groups returned from the map. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `constraint?` | [`GetElementGroupsConstraint`](../Elements/GetElementGroupsConstraint.md) | The constraints to apply to the element groups returned from the map. | ### Returns -`Promise`\<(`null` | [`ElementGroup`](../Elements/ElementGroup.md))\[]> +`Promise`<(`null` | [`ElementGroup`](../Elements/ElementGroup.md))\[]> The requested element groups. @@ -168,19 +168,19 @@ const elementGroups = await felt.getElementGroups({ ids: ["element-group-1", "el ## setElementGroupVisibility() -> **setElementGroupVisibility**(`visibility`: [`SetVisibilityRequest`](../Shared/SetVisibilityRequest.md)): `Promise`\<`void`> +> **setElementGroupVisibility**(`visibility`: [`SetVisibilityRequest`](../Shared/SetVisibilityRequest.md)): `Promise`<`void`> Hide or show element groups with the given ids. ### Parameters -| Parameter | Type | -| ------------ | ----------------------------------------------------------- | +| Parameter | Type | +| ------ | ------ | | `visibility` | [`SetVisibilityRequest`](../Shared/SetVisibilityRequest.md) | ### Returns -`Promise`\<`void`> +`Promise`<`void`> ### Example @@ -192,19 +192,19 @@ felt.setElementGroupVisibility({ show: ["element-group-1", "element-group-2"], h ## createElement() -> **createElement**(`element`: [`ElementCreate`](../Elements/ElementCreate.md)): `Promise`\<[`Element`](../Elements/Element.md)> +> **createElement**(`element`: [`ElementCreate`](../Elements/ElementCreate.md)): `Promise`<[`Element`](../Elements/Element.md)> Create a new element on the map. ### Parameters -| Parameter | Type | -| --------- | ----------------------------------------------- | +| Parameter | Type | +| ------ | ------ | | `element` | [`ElementCreate`](../Elements/ElementCreate.md) | ### Returns -`Promise`\<[`Element`](../Elements/Element.md)> +`Promise`<[`Element`](../Elements/Element.md)> ### Example @@ -216,19 +216,19 @@ const element = await felt.createElement({ type: "Place", coordinates: [10, 10] ## updateElement() -> **updateElement**(`element`: [`ElementUpdate`](../Elements/ElementUpdate.md)): `Promise`\<[`Element`](../Elements/Element.md)> +> **updateElement**(`element`: [`ElementUpdate`](../Elements/ElementUpdate.md)): `Promise`<[`Element`](../Elements/Element.md)> Update an element on the map. ### Parameters -| Parameter | Type | -| --------- | ----------------------------------------------- | +| Parameter | Type | +| ------ | ------ | | `element` | [`ElementUpdate`](../Elements/ElementUpdate.md) | ### Returns -`Promise`\<[`Element`](../Elements/Element.md)> +`Promise`<[`Element`](../Elements/Element.md)> ### Example @@ -251,19 +251,19 @@ await felt.updateElement({ ## deleteElement() -> **deleteElement**(`id`: `string`): `Promise`\<`void`> +> **deleteElement**(`id`: `string`): `Promise`<`void`> Delete an element from the map. ### Parameters -| Parameter | Type | -| --------- | -------- | -| `id` | `string` | +| Parameter | Type | +| ------ | ------ | +| `id` | `string` | ### Returns -`Promise`\<`void`> +`Promise`<`void`> ### Example @@ -275,19 +275,19 @@ await felt.deleteElement("element-1"); ## getLayer() -> **getLayer**(`id`: `string`): `Promise`\<`null` | [`Layer`](../Layers/Layer.md)> +> **getLayer**(`id`: `string`): `Promise`<`null` | [`Layer`](../Layers/Layer.md)> Get a single layer from the map by its id. ### Parameters -| Parameter | Type | Description | -| --------- | -------- | ------------------------------------ | -| `id` | `string` | The id of the layer you want to get. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `id` | `string` | The id of the layer you want to get. | ### Returns -`Promise`\<`null` | [`Layer`](../Layers/Layer.md)> +`Promise`<`null` | [`Layer`](../Layers/Layer.md)> The requested layer. @@ -301,20 +301,20 @@ const layer = await felt.getLayer("layer-1"); ## getLayers() -> **getLayers**(`constraint`?: [`GetLayersConstraint`](../Layers/GetLayersConstraint.md)): `Promise`\<(`null` | [`Layer`](../Layers/Layer.md))\[]> +> **getLayers**(`constraint?`: [`GetLayersConstraint`](../Layers/GetLayersConstraint.md)): `Promise`<(`null` | [`Layer`](../Layers/Layer.md))\[]> Gets layers from the map, according to the constraints supplied. If no constraints are supplied, all layers will be returned. ### Parameters -| Parameter | Type | Description | -| ------------- | --------------------------------------------------------- | ------------------------------------------------------------- | -| `constraint`? | [`GetLayersConstraint`](../Layers/GetLayersConstraint.md) | The constraints to apply to the layers returned from the map. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `constraint?` | [`GetLayersConstraint`](../Layers/GetLayersConstraint.md) | The constraints to apply to the layers returned from the map. | ### Returns -`Promise`\<(`null` | [`Layer`](../Layers/Layer.md))\[]> +`Promise`<(`null` | [`Layer`](../Layers/Layer.md))\[]> All layers on the map. @@ -334,19 +334,19 @@ const layers = await felt.getLayers(); ## setLayerVisibility() -> **setLayerVisibility**(`visibility`: [`SetVisibilityRequest`](../Shared/SetVisibilityRequest.md)): `Promise`\<`void`> +> **setLayerVisibility**(`visibility`: [`SetVisibilityRequest`](../Shared/SetVisibilityRequest.md)): `Promise`<`void`> Hide or show layers with the given ids. ### Parameters -| Parameter | Type | -| ------------ | ----------------------------------------------------------- | +| Parameter | Type | +| ------ | ------ | | `visibility` | [`SetVisibilityRequest`](../Shared/SetVisibilityRequest.md) | ### Returns -`Promise`\<`void`> +`Promise`<`void`> ### Example @@ -358,7 +358,7 @@ felt.setLayerVisibility({ show: ["layer-1", "layer-2"], hide: ["layer-3"] }); ## setLayerStyle() -> **setLayerStyle**(`params`: \{ `id`: `string`; `style`: `object`; }): `Promise`\<`void`> +> **setLayerStyle**(`params`: { `id`: `string`; `style`: `object`; }): `Promise`<`void`> Set the style for a layer using FSL, the Felt Style Language. @@ -374,15 +374,15 @@ in the rejected promise value. ### Parameters -| Parameter | Type | Description | -| -------------- | --------------------------------------- | ----------------------------------------- | -| `params` | \{ `id`: `string`; `style`: `object`; } | - | -| `params.id` | `string` | The id of the layer to set the style for. | -| `params.style` | `object` | The style to set for the layer. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `params` | { `id`: `string`; `style`: `object`; } | - | +| `params.id` | `string` | The id of the layer to set the style for. | +| `params.style` | `object` | The style to set for the layer. | ### Returns -`Promise`\<`void`> +`Promise`<`void`> ### Example @@ -403,19 +403,19 @@ felt.setLayerStyle({ id: "layer-1", style: { ## setLayerLegendVisibility() -> **setLayerLegendVisibility**(`params`: [`SetVisibilityRequest`](../Shared/SetVisibilityRequest.md)): `Promise`\<`void`> +> **setLayerLegendVisibility**(`params`: [`SetVisibilityRequest`](../Shared/SetVisibilityRequest.md)): `Promise`<`void`> Hide or show layers with the given ids from the legend. ### Parameters -| Parameter | Type | -| --------- | ----------------------------------------------------------- | -| `params` | [`SetVisibilityRequest`](../Shared/SetVisibilityRequest.md) | +| Parameter | Type | +| ------ | ------ | +| `params` | [`SetVisibilityRequest`](../Shared/SetVisibilityRequest.md) | ### Returns -`Promise`\<`void`> +`Promise`<`void`> ### Example @@ -427,19 +427,19 @@ felt.setLayerLegendVisibility({ show: ["layer-1", "layer-2"], hide: ["layer-3"] ## createLayersFromGeoJson() -> **createLayersFromGeoJson**(`params`: [`CreateLayersFromGeoJsonParams`](../Layers/CreateLayersFromGeoJsonParams.md)): `Promise`\<`null` | \{ `layerGroup`: [`LayerGroup`](../Layers/LayerGroup.md); `layers`: [`Layer`](../Layers/Layer.md)\[]; }> +> **createLayersFromGeoJson**(`params`: [`CreateLayersFromGeoJsonParams`](../Layers/CreateLayersFromGeoJsonParams.md)): `Promise`<`null` | { `layerGroup`: [`LayerGroup`](../Layers/LayerGroup.md); `layers`: [`Layer`](../Layers/Layer.md)\[]; }> Adds layers to the map from file or URL sources. ### Parameters -| Parameter | Type | -| --------- | ----------------------------------------------------------------------------- | -| `params` | [`CreateLayersFromGeoJsonParams`](../Layers/CreateLayersFromGeoJsonParams.md) | +| Parameter | Type | +| ------ | ------ | +| `params` | [`CreateLayersFromGeoJsonParams`](../Layers/CreateLayersFromGeoJsonParams.md) | ### Returns -`Promise`\<`null` | \{ `layerGroup`: [`LayerGroup`](../Layers/LayerGroup.md); `layers`: [`Layer`](../Layers/Layer.md)\[]; }> +`Promise`<`null` | { `layerGroup`: [`LayerGroup`](../Layers/LayerGroup.md); `layers`: [`Layer`](../Layers/Layer.md)\[]; }> The layer groups that were created. @@ -472,7 +472,7 @@ const layerFromUrl = await felt.createLayersFromGeoJson({ ## updateLayer() -> **updateLayer**(`params`: [`UpdateLayerParams`](../Layers/UpdateLayerParams.md)): `Promise`\<[`Layer`](../Layers/Layer.md)> +> **updateLayer**(`params`: [`UpdateLayerParams`](../Layers/UpdateLayerParams.md)): `Promise`<[`Layer`](../Layers/Layer.md)> Update a layer by passing a subset of the layer's properties. @@ -481,13 +481,13 @@ type to see which properties can be updated. ### Parameters -| Parameter | Type | -| --------- | ----------------------------------------------------- | -| `params` | [`UpdateLayerParams`](../Layers/UpdateLayerParams.md) | +| Parameter | Type | +| ------ | ------ | +| `params` | [`UpdateLayerParams`](../Layers/UpdateLayerParams.md) | ### Returns -`Promise`\<[`Layer`](../Layers/Layer.md)> +`Promise`<[`Layer`](../Layers/Layer.md)> ### Example @@ -503,19 +503,19 @@ await felt.updateLayer({ ## deleteLayer() -> **deleteLayer**(`id`: `string`): `Promise`\<`void`> +> **deleteLayer**(`id`: `string`): `Promise`<`void`> Delete a layer from the map by its id. ### Parameters -| Parameter | Type | -| --------- | -------- | -| `id` | `string` | +| Parameter | Type | +| ------ | ------ | +| `id` | `string` | ### Returns -`Promise`\<`void`> +`Promise`<`void`> ### Remarks @@ -531,19 +531,19 @@ await felt.deleteLayer("layer-1"); ## getLayerGroup() -> **getLayerGroup**(`id`: `string`): `Promise`\<`null` | [`LayerGroup`](../Layers/LayerGroup.md)> +> **getLayerGroup**(`id`: `string`): `Promise`<`null` | [`LayerGroup`](../Layers/LayerGroup.md)> Get a layer group from the map by its id. ### Parameters -| Parameter | Type | -| --------- | -------- | -| `id` | `string` | +| Parameter | Type | +| ------ | ------ | +| `id` | `string` | ### Returns -`Promise`\<`null` | [`LayerGroup`](../Layers/LayerGroup.md)> +`Promise`<`null` | [`LayerGroup`](../Layers/LayerGroup.md)> The requested layer group. @@ -557,20 +557,20 @@ const layerGroup = await felt.getLayerGroup("layer-group-1"); ## getLayerGroups() -> **getLayerGroups**(`constraint`?: [`GetLayerGroupsConstraint`](../Layers/GetLayerGroupsConstraint.md)): `Promise`\<(`null` | [`LayerGroup`](../Layers/LayerGroup.md))\[]> +> **getLayerGroups**(`constraint?`: [`GetLayerGroupsConstraint`](../Layers/GetLayerGroupsConstraint.md)): `Promise`<(`null` | [`LayerGroup`](../Layers/LayerGroup.md))\[]> Gets layer groups from the map, according to the constraints supplied. If no constraints are supplied, all layer groups will be returned in rendering order. ### Parameters -| Parameter | Type | Description | -| ------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `constraint`? | [`GetLayerGroupsConstraint`](../Layers/GetLayerGroupsConstraint.md) | The constraints to apply to the layer groups returned from the map. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `constraint?` | [`GetLayerGroupsConstraint`](../Layers/GetLayerGroupsConstraint.md) | The constraints to apply to the layer groups returned from the map. | ### Returns -`Promise`\<(`null` | [`LayerGroup`](../Layers/LayerGroup.md))\[]> +`Promise`<(`null` | [`LayerGroup`](../Layers/LayerGroup.md))\[]> The requested layer groups. @@ -584,19 +584,19 @@ const layerGroups = await felt.getLayerGroups({ ids: ["layer-group-1", "layer-gr ## setLayerGroupVisibility() -> **setLayerGroupVisibility**(`visibility`: [`SetVisibilityRequest`](../Shared/SetVisibilityRequest.md)): `Promise`\<`void`> +> **setLayerGroupVisibility**(`visibility`: [`SetVisibilityRequest`](../Shared/SetVisibilityRequest.md)): `Promise`<`void`> Hide or show layer groups with the given ids. ### Parameters -| Parameter | Type | -| ------------ | ----------------------------------------------------------- | +| Parameter | Type | +| ------ | ------ | | `visibility` | [`SetVisibilityRequest`](../Shared/SetVisibilityRequest.md) | ### Returns -`Promise`\<`void`> +`Promise`<`void`> ### Example @@ -608,19 +608,19 @@ felt.setLayerGroupVisibility({ show: ["layer-group-1", "layer-group-2"], hide: [ ## setLayerGroupLegendVisibility() -> **setLayerGroupLegendVisibility**(`params`: [`SetVisibilityRequest`](../Shared/SetVisibilityRequest.md)): `Promise`\<`void`> +> **setLayerGroupLegendVisibility**(`params`: [`SetVisibilityRequest`](../Shared/SetVisibilityRequest.md)): `Promise`<`void`> Hide or show layer groups with the given ids from the legend. ### Parameters -| Parameter | Type | -| --------- | ----------------------------------------------------------- | -| `params` | [`SetVisibilityRequest`](../Shared/SetVisibilityRequest.md) | +| Parameter | Type | +| ------ | ------ | +| `params` | [`SetVisibilityRequest`](../Shared/SetVisibilityRequest.md) | ### Returns -`Promise`\<`void`> +`Promise`<`void`> ### Example @@ -632,19 +632,19 @@ felt.setLayerGroupLegendVisibility({ show: ["layer-1", "layer-2"], hide: ["layer ## getLegendItem() -> **getLegendItem**(`id`: [`LegendItemIdentifier`](../Layers/LegendItemIdentifier.md)): `Promise`\<`null` | [`LegendItem`](../Layers/LegendItem.md)> +> **getLegendItem**(`id`: [`LegendItemIdentifier`](../Layers/LegendItemIdentifier.md)): `Promise`<`null` | [`LegendItem`](../Layers/LegendItem.md)> Allows you to get the state of a single legend item. ### Parameters -| Parameter | Type | -| --------- | ----------------------------------------------------------- | -| `id` | [`LegendItemIdentifier`](../Layers/LegendItemIdentifier.md) | +| Parameter | Type | +| ------ | ------ | +| `id` | [`LegendItemIdentifier`](../Layers/LegendItemIdentifier.md) | ### Returns -`Promise`\<`null` | [`LegendItem`](../Layers/LegendItem.md)> +`Promise`<`null` | [`LegendItem`](../Layers/LegendItem.md)> ### Example @@ -659,7 +659,7 @@ const legendItem = await felt.getLegendItem({ ## getLegendItems() -> **getLegendItems**(`constraint`?: [`LegendItemsConstraint`](../Layers/LegendItemsConstraint.md)): `Promise`\<(`null` | [`LegendItem`](../Layers/LegendItem.md))\[]> +> **getLegendItems**(`constraint?`: [`LegendItemsConstraint`](../Layers/LegendItemsConstraint.md)): `Promise`<(`null` | [`LegendItem`](../Layers/LegendItem.md))\[]> Allows you to obtain the state of several legend items, by passing in constraints describing which legend items you want. @@ -668,13 +668,13 @@ If you do not pass any constraints, you will receive all legend items. ### Parameters -| Parameter | Type | -| ------------- | ------------------------------------------------------------- | -| `constraint`? | [`LegendItemsConstraint`](../Layers/LegendItemsConstraint.md) | +| Parameter | Type | +| ------ | ------ | +| `constraint?` | [`LegendItemsConstraint`](../Layers/LegendItemsConstraint.md) | ### Returns -`Promise`\<(`null` | [`LegendItem`](../Layers/LegendItem.md))\[]> +`Promise`<(`null` | [`LegendItem`](../Layers/LegendItem.md))\[]> ### Example @@ -686,21 +686,21 @@ const legendItems = await felt.getLegendItems({layerId: "layer-1"}); ## setLegendItemVisibility() -> **setLegendItemVisibility**(`visibility`: \{ `show`: [`LegendItemIdentifier`](../Layers/LegendItemIdentifier.md)\[]; `hide`: [`LegendItemIdentifier`](../Layers/LegendItemIdentifier.md)\[]; }): `Promise`\<`void`> +> **setLegendItemVisibility**(`visibility`: { `show?`: [`LegendItemIdentifier`](../Layers/LegendItemIdentifier.md)\[]; `hide?`: [`LegendItemIdentifier`](../Layers/LegendItemIdentifier.md)\[]; }): `Promise`<`void`> Hide or show legend items with the given identifiers. ### Parameters -| Parameter | Type | -| ------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------- | -| `visibility` | \{ `show`: [`LegendItemIdentifier`](../Layers/LegendItemIdentifier.md)\[]; `hide`: [`LegendItemIdentifier`](../Layers/LegendItemIdentifier.md)\[]; } | -| `visibility.show`? | [`LegendItemIdentifier`](../Layers/LegendItemIdentifier.md)\[] | -| `visibility.hide`? | [`LegendItemIdentifier`](../Layers/LegendItemIdentifier.md)\[] | +| Parameter | Type | +| ------ | ------ | +| `visibility` | { `show?`: [`LegendItemIdentifier`](../Layers/LegendItemIdentifier.md)\[]; `hide?`: [`LegendItemIdentifier`](../Layers/LegendItemIdentifier.md)\[]; } | +| `visibility.show?` | [`LegendItemIdentifier`](../Layers/LegendItemIdentifier.md)\[] | +| `visibility.hide?` | [`LegendItemIdentifier`](../Layers/LegendItemIdentifier.md)\[] | ### Returns -`Promise`\<`void`> +`Promise`<`void`> ### Example @@ -715,19 +715,19 @@ felt.setLegendItemVisibility({ ## getLayerFilters() -> **getLayerFilters**(`layerId`: `string`): `Promise`\<`null` | [`LayerFilters`](../Layers/LayerFilters.md)> +> **getLayerFilters**(`layerId`: `string`): `Promise`<`null` | [`LayerFilters`](../Layers/LayerFilters.md)> Get the filters for a layer. ### Parameters -| Parameter | Type | -| --------- | -------- | +| Parameter | Type | +| ------ | ------ | | `layerId` | `string` | ### Returns -`Promise`\<`null` | [`LayerFilters`](../Layers/LayerFilters.md)> +`Promise`<`null` | [`LayerFilters`](../Layers/LayerFilters.md)> ### Remarks @@ -745,22 +745,22 @@ console.log(filters.combined, filters.style, filters.ephemeral, filters.componen ## setLayerFilters() -> **setLayerFilters**(`params`: \{ `layerId`: `string`; `filters`: [`Filters`](../Layers/Filters.md); `note`: `string`; }): `Promise`\<`void`> +> **setLayerFilters**(`params`: { `layerId`: `string`; `filters`: [`Filters`](../Layers/Filters.md); `note?`: `string`; }): `Promise`<`void`> Sets the **ephemeral** filters for a layer. ### Parameters -| Parameter | Type | Description | -| ---------------- | ----------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `params` | \{ `layerId`: `string`; `filters`: [`Filters`](../Layers/Filters.md); `note`: `string`; } | - | -| `params.layerId` | `string` | The layer that you want to set the filters for. | -| `params.filters` | [`Filters`](../Layers/Filters.md) | The filters to set for the layer. This will replace any ephemeral filters that are currently set for the layer. | -| `params.note`? | `string` | A note to display on the layer legend when this filter is applied. When the note is shown, a reset button will also be shown, allowing the user to clear the filter. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `params` | { `layerId`: `string`; `filters`: [`Filters`](../Layers/Filters.md); `note?`: `string`; } | - | +| `params.layerId` | `string` | The layer that you want to set the filters for. | +| `params.filters` | [`Filters`](../Layers/Filters.md) | The filters to set for the layer. This will replace any ephemeral filters that are currently set for the layer. | +| `params.note?` | `string` | A note to display on the layer legend when this filter is applied. When the note is shown, a reset button will also be shown, allowing the user to clear the filter. | ### Returns -`Promise`\<`void`> +`Promise`<`void`> ### Example @@ -775,19 +775,19 @@ await felt.setLayerFilters({ ## getLayerBoundaries() -> **getLayerBoundaries**(`layerId`: `string`): `Promise`\<`null` | [`LayerBoundaries`](../Layers/LayerBoundaries.md)> +> **getLayerBoundaries**(`layerId`: `string`): `Promise`<`null` | [`LayerBoundaries`](../Layers/LayerBoundaries.md)> Get the spatial boundaries that are filtering a layer. ### Parameters -| Parameter | Type | -| --------- | -------- | +| Parameter | Type | +| ------ | ------ | | `layerId` | `string` | ### Returns -`Promise`\<`null` | [`LayerBoundaries`](../Layers/LayerBoundaries.md)> +`Promise`<`null` | [`LayerBoundaries`](../Layers/LayerBoundaries.md)> ### Remarks @@ -810,21 +810,21 @@ console.log(boundaries?.ephemeral); ## setLayerBoundary() -> **setLayerBoundary**(`params`: \{ `layerIds`: `string`\[]; `boundary`: `null` | [`GeometryFilter`](../Layers/GeometryFilter.md); }): `Promise`\<`void`> +> **setLayerBoundary**(`params`: { `layerIds`: `string`\[]; `boundary`: `null` | [`GeometryFilter`](../Layers/GeometryFilter.md); }): `Promise`<`void`> Set the [\`ephemeral\`](../Layers/LayerBoundaries.md#ephemeral) boundary for one or more layers. ### Parameters -| Parameter | Type | Description | -| ----------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | -| `params` | \{ `layerIds`: `string`\[]; `boundary`: `null` \| [`GeometryFilter`](../Layers/GeometryFilter.md); } | - | -| `params.layerIds` | `string`\[] | The ids of the layers to set the boundary for. | -| `params.boundary` | `null` \| [`GeometryFilter`](../Layers/GeometryFilter.md) | The boundary to set for the layer. Passing `null` clears the ephemeral boundary for the layer. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `params` | { `layerIds`: `string`\[]; `boundary`: `null` | [`GeometryFilter`](../Layers/GeometryFilter.md); } | - | +| `params.layerIds` | `string`\[] | The ids of the layers to set the boundary for. | +| `params.boundary` | `null` | [`GeometryFilter`](../Layers/GeometryFilter.md) | The boundary to set for the layer. Passing `null` clears the ephemeral boundary for the layer. | ### Returns -`Promise`\<`void`> +`Promise`<`void`> ### Example @@ -839,7 +839,7 @@ await felt.setLayerBoundary({ ## getRenderedFeatures() -> **getRenderedFeatures**(`params`?: [`GetRenderedFeaturesConstraint`](../Layers/GetRenderedFeaturesConstraint.md)): `Promise`\<[`LayerFeature`](../Layers/LayerFeature.md)\[]> +> **getRenderedFeatures**(`params?`: [`GetRenderedFeaturesConstraint`](../Layers/GetRenderedFeaturesConstraint.md)): `Promise`<[`LayerFeature`](../Layers/LayerFeature.md)\[]> Get the features that are currently **rendered** on the map in the viewport. @@ -850,13 +850,13 @@ features are omitted from what is rendered on the screen. ### Parameters -| Parameter | Type | Description | -| --------- | ----------------------------------------------------------------------------- | --------------------------------------------------------------- | -| `params`? | [`GetRenderedFeaturesConstraint`](../Layers/GetRenderedFeaturesConstraint.md) | The constraints to apply to the features returned from the map. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `params?` | [`GetRenderedFeaturesConstraint`](../Layers/GetRenderedFeaturesConstraint.md) | The constraints to apply to the features returned from the map. | ### Returns -`Promise`\<[`LayerFeature`](../Layers/LayerFeature.md)\[]> +`Promise`<[`LayerFeature`](../Layers/LayerFeature.md)\[]> ### Example @@ -868,7 +868,7 @@ const features = await felt.getRenderedFeatures(); ## getFeature() -> **getFeature**(`params`: \{ `id`: `string` | `number`; `layerId`: `string`; }): `Promise`\<`null` | [`LayerFeature`](../Layers/LayerFeature.md)> +> **getFeature**(`params`: { `id`: `string` | `number`; `layerId`: `string`; }): `Promise`<`null` | [`LayerFeature`](../Layers/LayerFeature.md)> Get a feature from the map by its ID and layer ID. @@ -880,15 +880,15 @@ but you know the ID of the feature you need. ### Parameters -| Parameter | Type | -| ---------------- | ----------------------------------------------------- | -| `params` | \{ `id`: `string` \| `number`; `layerId`: `string`; } | -| `params.id` | `string` \| `number` | -| `params.layerId` | `string` | +| Parameter | Type | +| ------ | ------ | +| `params` | { `id`: `string` | `number`; `layerId`: `string`; } | +| `params.id` | `string` | `number` | +| `params.layerId` | `string` | ### Returns -`Promise`\<`null` | [`LayerFeature`](../Layers/LayerFeature.md)> +`Promise`<`null` | [`LayerFeature`](../Layers/LayerFeature.md)> ### Example @@ -900,25 +900,25 @@ const feature = await felt.getFeature({ layerId: "layer-1", id: 123 }); ## getFeatures() -> **getFeatures**(`params`: \{ `layerId`: `string`; `filters`: [`Filters`](../Layers/Filters.md); `sorting`: [`SortConfig`](../Shared/SortConfig.md); `boundary`: [`GeometryFilter`](../Layers/GeometryFilter.md); `search`: `string`; `pagination`: `null` | `string`; }): `Promise`\<\{ `features`: [`LayerFeature`](../Layers/LayerFeature.md)\[]; `count`: `number`; `previousPage`: `null` | `string`; `nextPage`: `null` | `string`; }> +> **getFeatures**(`params`: { `layerId`: `string`; `filters?`: [`Filters`](../Layers/Filters.md); `sorting?`: [`SortConfig`](../Shared/SortConfig.md); `boundary?`: [`GeometryFilter`](../Layers/GeometryFilter.md); `search?`: `string`; `pagination?`: `null` | `string`; }): `Promise`<{ `features`: [`LayerFeature`](../Layers/LayerFeature.md)\[]; `count`: `number`; `previousPage`: `null` | `string`; `nextPage`: `null` | `string`; }> Get a list of layer features. ### Parameters -| Parameter | Type | Description | -| -------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------ | -| `params` | \{ `layerId`: `string`; `filters`: [`Filters`](../Layers/Filters.md); `sorting`: [`SortConfig`](../Shared/SortConfig.md); `boundary`: [`GeometryFilter`](../Layers/GeometryFilter.md); `search`: `string`; `pagination`: `null` \| `string`; } | - | -| `params.layerId` | `string` | The ID of the layer to get features from. | -| `params.filters`? | [`Filters`](../Layers/Filters.md) | Filters to be applied. These filters will merge with layer's own filters. | -| `params.sorting`? | [`SortConfig`](../Shared/SortConfig.md) | Attribute to sort by. | -| `params.boundary`? | [`GeometryFilter`](../Layers/GeometryFilter.md) | The spatial boundary to be applied. | -| `params.search`? | `string` | Search term to search by. Search is case-insensitive and looks for matches across all feature properties. | -| `params.pagination`? | `null` \| `string` | Pagination token. It comes from either the `previousPage` or `nextPage` properties of the previous response. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `params` | { `layerId`: `string`; `filters?`: [`Filters`](../Layers/Filters.md); `sorting?`: [`SortConfig`](../Shared/SortConfig.md); `boundary?`: [`GeometryFilter`](../Layers/GeometryFilter.md); `search?`: `string`; `pagination?`: `null` | `string`; } | - | +| `params.layerId` | `string` | The ID of the layer to get features from. | +| `params.filters?` | [`Filters`](../Layers/Filters.md) | Filters to be applied. These filters will merge with layer's own filters. | +| `params.sorting?` | [`SortConfig`](../Shared/SortConfig.md) | Attribute to sort by. | +| `params.boundary?` | [`GeometryFilter`](../Layers/GeometryFilter.md) | The spatial boundary to be applied. | +| `params.search?` | `string` | Search term to search by. Search is case-insensitive and looks for matches across all feature properties. | +| `params.pagination?` | `null` | `string` | Pagination token. It comes from either the `previousPage` or `nextPage` properties of the previous response. | ### Returns -`Promise`\<\{ `features`: [`LayerFeature`](../Layers/LayerFeature.md)\[]; `count`: `number`; `previousPage`: `null` | `string`; `nextPage`: `null` | `string`; }> +`Promise`<{ `features`: [`LayerFeature`](../Layers/LayerFeature.md)\[]; `count`: `number`; `previousPage`: `null` | `string`; `nextPage`: `null` | `string`; }> The response is an object which contains: @@ -959,7 +959,7 @@ if (page1Response.nextPage) { ## getGeoJsonFeature() -> **getGeoJsonFeature**(`params`: \{ `id`: `string` | `number`; `layerId`: `string`; }): `Promise`\<`null` | [`GeoJsonFeature`](../Shared/GeoJsonFeature.md)> +> **getGeoJsonFeature**(`params`: { `id`: `string` | `number`; `layerId`: `string`; }): `Promise`<`null` | [`GeoJsonFeature`](../Shared/GeoJsonFeature.md)> Get a feature in GeoJSON format from the map by its ID and layer ID. @@ -969,15 +969,15 @@ long time to return, and may return a very large object. ### Parameters -| Parameter | Type | -| ---------------- | ----------------------------------------------------- | -| `params` | \{ `id`: `string` \| `number`; `layerId`: `string`; } | -| `params.id` | `string` \| `number` | -| `params.layerId` | `string` | +| Parameter | Type | +| ------ | ------ | +| `params` | { `id`: `string` | `number`; `layerId`: `string`; } | +| `params.id` | `string` | `number` | +| `params.layerId` | `string` | ### Returns -`Promise`\<`null` | [`GeoJsonFeature`](../Shared/GeoJsonFeature.md)> +`Promise`<`null` | [`GeoJsonFeature`](../Shared/GeoJsonFeature.md)> ### Example @@ -989,19 +989,19 @@ const feature = await felt.getGeoJsonFeature({ layerId: "layer-1", id: 123 }); ## getCategoryData() -> **getCategoryData**(`params`: [`GetLayerCategoriesParams`](../Layers/GetLayerCategoriesParams.md)): `Promise`\<[`GetLayerCategoriesGroup`](../Layers/GetLayerCategoriesGroup.md)\[]> +> **getCategoryData**(`params`: [`GetLayerCategoriesParams`](../Layers/GetLayerCategoriesParams.md)): `Promise`<[`GetLayerCategoriesGroup`](../Layers/GetLayerCategoriesGroup.md)\[]> Gets values from a layer grouped by a given attribute. ### Parameters -| Parameter | Type | -| --------- | ------------------------------------------------------------------- | -| `params` | [`GetLayerCategoriesParams`](../Layers/GetLayerCategoriesParams.md) | +| Parameter | Type | +| ------ | ------ | +| `params` | [`GetLayerCategoriesParams`](../Layers/GetLayerCategoriesParams.md) | ### Returns -`Promise`\<[`GetLayerCategoriesGroup`](../Layers/GetLayerCategoriesGroup.md)\[]> +`Promise`<[`GetLayerCategoriesGroup`](../Layers/GetLayerCategoriesGroup.md)\[]> ### Remarks @@ -1065,19 +1065,19 @@ const newBuildingDensityByNeighborhood = await felt.getCategoryData({ ## getHistogramData() -> **getHistogramData**(`params`: [`GetLayerHistogramParams`](../Layers/GetLayerHistogramParams.md)): `Promise`\<[`GetLayerHistogramBin`](../Layers/GetLayerHistogramBin.md)\[]> +> **getHistogramData**(`params`: [`GetLayerHistogramParams`](../Layers/GetLayerHistogramParams.md)): `Promise`<[`GetLayerHistogramBin`](../Layers/GetLayerHistogramBin.md)\[]> Gets a histogram of values from a layer for a given attribute. ### Parameters -| Parameter | Type | -| --------- | ----------------------------------------------------------------- | -| `params` | [`GetLayerHistogramParams`](../Layers/GetLayerHistogramParams.md) | +| Parameter | Type | +| ------ | ------ | +| `params` | [`GetLayerHistogramParams`](../Layers/GetLayerHistogramParams.md) | ### Returns -`Promise`\<[`GetLayerHistogramBin`](../Layers/GetLayerHistogramBin.md)\[]> +`Promise`<[`GetLayerHistogramBin`](../Layers/GetLayerHistogramBin.md)\[]> ### Remarks @@ -1133,25 +1133,25 @@ const newBuildingHeights = await felt.getHistogramData({ ## getAggregates() -> **getAggregates**\<`T`>(`params`: [`GetLayerCalculationParams`](../Layers/GetLayerCalculationParams.md)\<`T`>): `Promise`\<`Record`\<`T`, `null` | `number`>> +> **getAggregates**<`T`>(`params`: [`GetLayerCalculationParams`](../Layers/GetLayerCalculationParams.md)<`T`>): `Promise`<`Record`<`T`, `null` | `number`>> Calculates a single aggregate value for a layer based on the provided configuration. ### Type Parameters -| Type Parameter | -| --------------------------------------------------------------------------------- | -| `T` *extends* `"avg"` \| `"max"` \| `"min"` \| `"sum"` \| `"median"` \| `"count"` | +| Type Parameter | +| ------ | +| `T` *extends* `"avg"` | `"max"` | `"min"` | `"sum"` | `"median"` | `"count"` | ### Parameters -| Parameter | Type | -| --------- | --------------------------------------------------------------------------- | -| `params` | [`GetLayerCalculationParams`](../Layers/GetLayerCalculationParams.md)\<`T`> | +| Parameter | Type | +| ------ | ------ | +| `params` | [`GetLayerCalculationParams`](../Layers/GetLayerCalculationParams.md)<`T`> | ### Returns -`Promise`\<`Record`\<`T`, `null` | `number`>> +`Promise`<`Record`<`T`, `null` | `number`>> ### Remarks @@ -1196,19 +1196,19 @@ const maxNewBuildingHeight = await felt.getAggregates({ ## getPrecomputedAggregates() -> **getPrecomputedAggregates**(`params`: [`GetLayerPrecomputedCalculationParams`](../Layers/GetLayerPrecomputedCalculationParams.md)): `Promise`\<\{ `avg`: `null` | `number`; `max`: `null` | `number`; `min`: `null` | `number`; `sum`: `null` | `number`; `count`: `null` | `number`; }> +> **getPrecomputedAggregates**(`params`: [`GetLayerPrecomputedCalculationParams`](../Layers/GetLayerPrecomputedCalculationParams.md)): `Promise`<{ `avg`: `null` | `number`; `max`: `null` | `number`; `min`: `null` | `number`; `sum`: `null` | `number`; `count`: `null` | `number`; }> Calculates aggregates for spatial cells of a layer. ### Parameters -| Parameter | Type | -| --------- | ------------------------------------------------------------------------------------------- | -| `params` | [`GetLayerPrecomputedCalculationParams`](../Layers/GetLayerPrecomputedCalculationParams.md) | +| Parameter | Type | +| ------ | ------ | +| `params` | [`GetLayerPrecomputedCalculationParams`](../Layers/GetLayerPrecomputedCalculationParams.md) | ### Returns -`Promise`\<\{ `avg`: `null` | `number`; `max`: `null` | `number`; `min`: `null` | `number`; `sum`: `null` | `number`; `count`: `null` | `number`; }> +`Promise`<{ `avg`: `null` | `number`; `max`: `null` | `number`; `min`: `null` | `number`; `sum`: `null` | `number`; `count`: `null` | `number`; }> ### Remarks @@ -1233,19 +1233,19 @@ const aggregates = await felt.getPrecomputedAggregates({ ## getLayerSchema() -> **getLayerSchema**(`layerId`: `string`): `Promise`\<[`LayerSchema`](../Layers/LayerSchema.md)> +> **getLayerSchema**(`layerId`: `string`): `Promise`<[`LayerSchema`](../Layers/LayerSchema.md)> Get the schema for a layer. ### Parameters -| Parameter | Type | -| --------- | -------- | +| Parameter | Type | +| ------ | ------ | | `layerId` | `string` | ### Returns -`Promise`\<[`LayerSchema`](../Layers/LayerSchema.md)> +`Promise`<[`LayerSchema`](../Layers/LayerSchema.md)> ### Remarks @@ -1266,13 +1266,13 @@ const attributeIds = schema.attributes.map((attr) => attr.id); ## getMapDetails() -> **getMapDetails**(): `Promise`\<[`MapDetails`](../Misc/MapDetails.md)> +> **getMapDetails**(): `Promise`<[`MapDetails`](../Misc/MapDetails.md)> Gets the details of the map. ### Returns -`Promise`\<[`MapDetails`](../Misc/MapDetails.md)> +`Promise`<[`MapDetails`](../Misc/MapDetails.md)> ### Example @@ -1289,13 +1289,13 @@ console.log({ ## getSelection() -> **getSelection**(): `Promise`\<[`EntityNode`](../Selection/EntityNode.md)\[]> +> **getSelection**(): `Promise`<[`EntityNode`](../Selection/EntityNode.md)\[]> Gets the current selection as a list of entity identifiers. ### Returns -`Promise`\<[`EntityNode`](../Selection/EntityNode.md)\[]> +`Promise`<[`EntityNode`](../Selection/EntityNode.md)\[]> ### Example @@ -1307,20 +1307,20 @@ const selection = await felt.getSelection(); ## selectFeature() -> **selectFeature**(`params`: [`FeatureSelection`](../Selection/FeatureSelection.md)): `Promise`\<`void`> +> **selectFeature**(`params`: [`FeatureSelection`](../Selection/FeatureSelection.md)): `Promise`<`void`> Selects a feature on a layer. This will show the feature's popup, modal or sidebar (if configured) and highlight the feature. ### Parameters -| Parameter | Type | -| --------- | ------------------------------------------------------ | -| `params` | [`FeatureSelection`](../Selection/FeatureSelection.md) | +| Parameter | Type | +| ------ | ------ | +| `params` | [`FeatureSelection`](../Selection/FeatureSelection.md) | ### Returns -`Promise`\<`void`> +`Promise`<`void`> ### Example @@ -1337,21 +1337,21 @@ felt.selectFeature({ ## clearSelection() -> **clearSelection**(`params`?: \{ `features`: `boolean`; `elements`: `boolean`; }): `Promise`\<`void`> +> **clearSelection**(`params?`: { `features?`: `boolean`; `elements?`: `boolean`; }): `Promise`<`void`> Clears the current selection. This clears the selection of ### Parameters -| Parameter | Type | Description | -| ------------------ | -------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | -| `params`? | \{ `features`: `boolean`; `elements`: `boolean`; } | The parameters to clear the selection. If this is not provided, both features and elements will be cleared. | -| `params.features`? | `boolean` | Whether to clear the features from the selection. | -| `params.elements`? | `boolean` | Whether to clear the elements from the selection. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `params?` | { `features?`: `boolean`; `elements?`: `boolean`; } | The parameters to clear the selection. If this is not provided, both features and elements will be cleared. | +| `params.features?` | `boolean` | Whether to clear the features from the selection. | +| `params.elements?` | `boolean` | Whether to clear the elements from the selection. | ### Returns -`Promise`\<`void`> +`Promise`<`void`> ### Example @@ -1383,9 +1383,9 @@ Sets the tool to use for drawing elements on the map. ### Parameters -| Parameter | Type | Description | -| --------- | -------------------------------------------- | ---------------- | -| `tool` | `null` \| [`ToolType`](../Tools/ToolType.md) | The tool to set. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `tool` | `null` | [`ToolType`](../Tools/ToolType.md) | The tool to set. | ### Returns @@ -1405,13 +1405,13 @@ await felt.setTool(null); ## getTool() -> **getTool**(): `Promise`\<`null` | [`ToolType`](../Tools/ToolType.md)> +> **getTool**(): `Promise`<`null` | [`ToolType`](../Tools/ToolType.md)> Gets the current tool, if any is in use. ### Returns -`Promise`\<`null` | [`ToolType`](../Tools/ToolType.md)> +`Promise`<`null` | [`ToolType`](../Tools/ToolType.md)> The current tool, or `null` if no tool is in use. @@ -1425,16 +1425,16 @@ const tool = await felt.getTool(); // "marker", "polygon", etc. ## onToolChange() -> **onToolChange**(`args`: \{ `handler`: (`tool`: `null` | [`ToolType`](../Tools/ToolType.md)) => `void`; }): `VoidFunction` +> **onToolChange**(`args`: { `handler`: (`tool`: `null` | [`ToolType`](../Tools/ToolType.md)) => `void`; }): `VoidFunction` Listens for changes to the current tool. ### Parameters -| Parameter | Type | Description | -| -------------- | --------------------------------------------------------------------------------- | ------------------------------------------------------------------------ | -| `args` | \{ `handler`: (`tool`: `null` \| [`ToolType`](../Tools/ToolType.md)) => `void`; } | - | -| `args.handler` | (`tool`: `null` \| [`ToolType`](../Tools/ToolType.md)) => `void` | This callback is called with the current tool whenever the tool changes. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `args` | { `handler`: (`tool`: `null` | [`ToolType`](../Tools/ToolType.md)) => `void`; } | - | +| `args.handler` | (`tool`: `null` | [`ToolType`](../Tools/ToolType.md)) => `void` | This callback is called with the current tool whenever the tool changes. | ### Returns @@ -1463,8 +1463,8 @@ Sets the settings for the current tool. ### Parameters -| Parameter | Type | Description | -| ---------- | ---------------------------------------------------- | -------------------- | +| Parameter | Type | Description | +| ------ | ------ | ------ | | `settings` | [`InputToolSettings`](../Tools/InputToolSettings.md) | The settings to set. | ### Returns @@ -1485,25 +1485,25 @@ await felt.setToolSettings({ ## getToolSettings() -> **getToolSettings**\<`T`>(`tool`: `T`): `Promise`\<[`ToolSettingsMap`](../Tools/ToolSettingsMap.md)\[`T`]> +> **getToolSettings**<`T`>(`tool`: `T`): `Promise`<[`ToolSettingsMap`](../Tools/ToolSettingsMap.md)\[`T`]> Gets the settings for the chosen tool ### Type Parameters -| Type Parameter | -| ------------------------------------------------------------------------ | +| Type Parameter | +| ------ | | `T` *extends* [`ConfigurableToolType`](../Tools/ConfigurableToolType.md) | ### Parameters | Parameter | Type | -| --------- | ---- | -| `tool` | `T` | +| ------ | ------ | +| `tool` | `T` | ### Returns -`Promise`\<[`ToolSettingsMap`](../Tools/ToolSettingsMap.md)\[`T`]> +`Promise`<[`ToolSettingsMap`](../Tools/ToolSettingsMap.md)\[`T`]> The settings for the chosen tool. @@ -1517,16 +1517,16 @@ const settings = await felt.getToolSettings("marker"); ## onToolSettingsChange() -> **onToolSettingsChange**(`args`: \{ `handler`: (`settings`: [`ToolSettingsChangeEvent`](../Tools/ToolSettingsChangeEvent.md)) => `void`; }): `VoidFunction` +> **onToolSettingsChange**(`args`: { `handler`: (`settings`: [`ToolSettingsChangeEvent`](../Tools/ToolSettingsChangeEvent.md)) => `void`; }): `VoidFunction` Listens for changes to the settings on all tools. ### Parameters -| Parameter | Type | -| -------------- | --------------------------------------------------------------------------------------------------------- | -| `args` | \{ `handler`: (`settings`: [`ToolSettingsChangeEvent`](../Tools/ToolSettingsChangeEvent.md)) => `void`; } | -| `args.handler` | (`settings`: [`ToolSettingsChangeEvent`](../Tools/ToolSettingsChangeEvent.md)) => `void` | +| Parameter | Type | +| ------ | ------ | +| `args` | { `handler`: (`settings`: [`ToolSettingsChangeEvent`](../Tools/ToolSettingsChangeEvent.md)) => `void`; } | +| `args.handler` | (`settings`: [`ToolSettingsChangeEvent`](../Tools/ToolSettingsChangeEvent.md)) => `void` | ### Returns @@ -1560,9 +1560,9 @@ by clicking on a button. ### Parameters -| Parameter | Type | Description | -| --------- | ----------------------------------------------------------------- | ----------------------------- | -| `args` | [`CreateActionTriggerParams`](../UI/CreateActionTriggerParams.md) | The arguments for the method. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `args` | [`CreateActionTriggerParams`](../UI/CreateActionTriggerParams.md) | The arguments for the method. | ### Returns @@ -1596,9 +1596,9 @@ Action trigger to update is identified by the `id` property. ### Parameters -| Parameter | Type | Description | -| --------- | ----------------------------------------------------------------- | ----------------------------- | -| `args` | [`UpdateActionTriggerParams`](../UI/UpdateActionTriggerParams.md) | The action trigger to update. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `args` | [`UpdateActionTriggerParams`](../UI/UpdateActionTriggerParams.md) | The action trigger to update. | ### Returns @@ -1627,9 +1627,9 @@ Deletes an action trigger. ### Parameters -| Parameter | Type | Description | -| --------- | -------- | --------------------------------------- | -| `id` | `string` | The id of the action trigger to delete. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `id` | `string` | The id of the action trigger to delete. | ### Returns @@ -1670,9 +1670,9 @@ it easier to update or delete them later. ### Parameters -| Parameter | Type | Description | -| --------- | ------------------------------------------------- | ----------------------------- | -| `args` | [`CreatePanelParams`](../UI/CreatePanelParams.md) | The arguments for the method. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `args` | [`CreatePanelParams`](../UI/CreatePanelParams.md) | The arguments for the method. | ### Returns @@ -1722,9 +1722,9 @@ Panel to update is identified by the `id` property. ### Parameters -| Parameter | Type | Description | -| --------- | ------------------------------------------------- | -------------------- | -| `panel` | [`UpdatePanelParams`](../UI/UpdatePanelParams.md) | The panel to update. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `panel` | [`UpdatePanelParams`](../UI/UpdatePanelParams.md) | The panel to update. | ### Returns @@ -1756,9 +1756,9 @@ Deletes a panel. ### Parameters -| Parameter | Type | Description | -| --------- | -------- | ------------------------------ | -| `id` | `string` | The id of the panel to delete. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `id` | `string` | The id of the panel to delete. | ### Returns @@ -1780,9 +1780,9 @@ Creates elements in a panel. ### Parameters -| Parameter | Type | Description | -| --------- | ----------------------------------------------------------------- | ----------------------------- | -| `args` | [`CreatePanelElementsParams`](../UI/CreatePanelElementsParams.md) | The arguments for the method. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `args` | [`CreatePanelElementsParams`](../UI/CreatePanelElementsParams.md) | The arguments for the method. | ### Returns @@ -1813,9 +1813,9 @@ Updates an element in a panel. ### Parameters -| Parameter | Type | Description | -| --------- | ----------------------------------------------------------------- | ----------------------------- | -| `args` | [`UpdatePanelElementsParams`](../UI/UpdatePanelElementsParams.md) | The arguments for the method. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `args` | [`UpdatePanelElementsParams`](../UI/UpdatePanelElementsParams.md) | The arguments for the method. | ### Returns @@ -1842,9 +1842,9 @@ Deletes elements from a panel. ### Parameters -| Parameter | Type | Description | -| --------- | ----------------------------------------------------------------- | ----------------------------- | -| `args` | [`DeletePanelElementsParams`](../UI/DeletePanelElementsParams.md) | The arguments for the method. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `args` | [`DeletePanelElementsParams`](../UI/DeletePanelElementsParams.md) | The arguments for the method. | ### Returns @@ -1869,8 +1869,8 @@ Updates the UI controls on the embedded map. ### Parameters -| Parameter | Type | Description | -| ---------- | ------------------------------------------------- | ----------------------- | +| Parameter | Type | Description | +| ------ | ------ | ------ | | `controls` | [`UiControlsOptions`](../UI/UiControlsOptions.md) | The controls to update. | ### Returns @@ -1911,8 +1911,8 @@ will still be selected when clicked. ### Parameters -| Parameter | Type | -| --------- | --------------------------------------------------------------- | +| Parameter | Type | +| ------ | ------ | | `options` | [`OnMapInteractionsOptions`](../UI/OnMapInteractionsOptions.md) | ### Returns @@ -1933,21 +1933,21 @@ await felt.setOnMapInteractionsUi({ ## showLayerDataTable() -> **showLayerDataTable**(`params`?: \{ `layerId`: `string`; `sorting`: [`SortConfig`](../Shared/SortConfig.md); }): `Promise`\<`void`> +> **showLayerDataTable**(`params?`: { `layerId`: `string`; `sorting?`: [`SortConfig`](../Shared/SortConfig.md); }): `Promise`<`void`> Shows a data table view for the specified layer, optionally sorted by a given attribute. ### Parameters -| Parameter | Type | -| ----------------- | ----------------------------------------------------------------------------- | -| `params`? | \{ `layerId`: `string`; `sorting`: [`SortConfig`](../Shared/SortConfig.md); } | -| `params.layerId`? | `string` | -| `params.sorting`? | [`SortConfig`](../Shared/SortConfig.md) | +| Parameter | Type | +| ------ | ------ | +| `params?` | { `layerId`: `string`; `sorting?`: [`SortConfig`](../Shared/SortConfig.md); } | +| `params.layerId?` | `string` | +| `params.sorting?` | [`SortConfig`](../Shared/SortConfig.md) | ### Returns -`Promise`\<`void`> +`Promise`<`void`> ### Example @@ -1974,13 +1974,13 @@ await felt.showLayerDataTable(); ## hideLayerDataTable() -> **hideLayerDataTable**(): `Promise`\<`void`> +> **hideLayerDataTable**(): `Promise`<`void`> Hides the data table. ### Returns -`Promise`\<`void`> +`Promise`<`void`> ### Example @@ -1992,13 +1992,13 @@ await felt.hideLayerDataTable(); ## getViewport() -> **getViewport**(): `Promise`\<[`ViewportState`](../Viewport/ViewportState.md)> +> **getViewport**(): `Promise`<[`ViewportState`](../Viewport/ViewportState.md)> Gets the current state of the viewport. ### Returns -`Promise`\<[`ViewportState`](../Viewport/ViewportState.md)> +`Promise`<[`ViewportState`](../Viewport/ViewportState.md)> ### Example @@ -2021,8 +2021,8 @@ Moves the map to the specified location. ### Parameters -| Parameter | Type | -| ---------- | --------------------------------------------------------------------------- | +| Parameter | Type | +| ------ | ------ | | `viewport` | [`SetViewportCenterZoomParams`](../Viewport/SetViewportCenterZoomParams.md) | ### Returns @@ -2042,13 +2042,13 @@ felt.setViewport({ ## getViewportConstraints() -> **getViewportConstraints**(): `Promise`\<`null` | [`ViewportConstraints`](../Viewport/ViewportConstraints.md)> +> **getViewportConstraints**(): `Promise`<`null` | [`ViewportConstraints`](../Viewport/ViewportConstraints.md)> Gets the current state of the viewport constraints. ### Returns -`Promise`\<`null` | [`ViewportConstraints`](../Viewport/ViewportConstraints.md)> +`Promise`<`null` | [`ViewportConstraints`](../Viewport/ViewportConstraints.md)> ### Example @@ -2070,15 +2070,15 @@ if (constraints) { ## setViewportConstraints() -> **setViewportConstraints**(`constraints`: `null` | `Partial`\<[`ViewportConstraints`](../Viewport/ViewportConstraints.md)>): `void` +> **setViewportConstraints**(`constraints`: `null` | `Partial`<[`ViewportConstraints`](../Viewport/ViewportConstraints.md)>): `void` Constrains the map viewport so it stays inside certain bounds and/or certain zoom levels. ### Parameters -| Parameter | Type | -| ------------- | --------------------------------------------------------------------------------- | -| `constraints` | `null` \| `Partial`\<[`ViewportConstraints`](../Viewport/ViewportConstraints.md)> | +| Parameter | Type | +| ------ | ------ | +| `constraints` | `null` | `Partial`<[`ViewportConstraints`](../Viewport/ViewportConstraints.md)> | ### Returns @@ -2124,9 +2124,9 @@ Fits the map to the specified bounds. ### Parameters -| Parameter | Type | -| --------- | ------------------------------------------------------------------- | -| `bounds` | [`ViewportFitBoundsParams`](../Viewport/ViewportFitBoundsParams.md) | +| Parameter | Type | +| ------ | ------ | +| `bounds` | [`ViewportFitBoundsParams`](../Viewport/ViewportFitBoundsParams.md) | ### Returns @@ -2146,16 +2146,16 @@ felt.fitViewportToBounds({ bounds: [west, south, east, north] }); ## onElementCreate() -> **onElementCreate**(`args`: \{ `handler`: (`change`: [`ElementChangeCallbackParams`](../Elements/ElementChangeCallbackParams.md)) => `void`; }): `VoidFunction` +> **onElementCreate**(`args`: { `handler`: (`change`: [`ElementChangeCallbackParams`](../Elements/ElementChangeCallbackParams.md)) => `void`; }): `VoidFunction` Adds a listener for when an element is created. ### Parameters -| Parameter | Type | Description | -| -------------- | ------------------------------------------------------------------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `args` | \{ `handler`: (`change`: [`ElementChangeCallbackParams`](../Elements/ElementChangeCallbackParams.md)) => `void`; } | - | -| `args.handler` | (`change`: [`ElementChangeCallbackParams`](../Elements/ElementChangeCallbackParams.md)) => `void` | The handler that is called when an element is created. This will fire when elements are created programatically, or when the user starts creating an element with a drawing tool. When the user creates an element with a drawing tool, it can begin in an invalid state, such as if you've just placed a single point in a polygon. You can use the `isBeingCreated` property to determine if the element is still being created by a drawing tool. If you want to know when the element is finished being created, you can use the [\`onElementCreateEnd\`](../Elements/ElementsController.md#onelementcreateend) listener. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `args` | { `handler`: (`change`: [`ElementChangeCallbackParams`](../Elements/ElementChangeCallbackParams.md)) => `void`; } | - | +| `args.handler` | (`change`: [`ElementChangeCallbackParams`](../Elements/ElementChangeCallbackParams.md)) => `void` | The handler that is called when an element is created. This will fire when elements are created programatically, or when the user starts creating an element with a drawing tool. When the user creates an element with a drawing tool, it can begin in an invalid state, such as if you've just placed a single point in a polygon. You can use the `isBeingCreated` property to determine if the element is still being created by a drawing tool. If you want to know when the element is finished being created, you can use the [\`onElementCreateEnd\`](../Elements/ElementsController.md#onelementcreateend) listener. | ### Returns @@ -2178,7 +2178,7 @@ unsubscribe(); ## onElementCreateEnd() -> **onElementCreateEnd**(`args`: \{ `handler`: (`params`: \{ `element`: [`Element`](../Elements/Element.md); }) => `void`; }): `VoidFunction` +> **onElementCreateEnd**(`args`: { `handler`: (`params`: { `element`: [`Element`](../Elements/Element.md); }) => `void`; }): `VoidFunction` Listens for when a new element is finished being created by a drawing tool. @@ -2192,10 +2192,10 @@ add the marker, type a label, then finally deselect the element. ### Parameters -| Parameter | Type | Description | -| -------------- | ------------------------------------------------------------------------------------------- | ---------------------------------------------- | -| `args` | \{ `handler`: (`params`: \{ `element`: [`Element`](../Elements/Element.md); }) => `void`; } | - | -| `args.handler` | (`params`: \{ `element`: [`Element`](../Elements/Element.md); }) => `void` | The handler to call whenever this event fires. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `args` | { `handler`: (`params`: { `element`: [`Element`](../Elements/Element.md); }) => `void`; } | - | +| `args.handler` | (`params`: { `element`: [`Element`](../Elements/Element.md); }) => `void` | The handler to call whenever this event fires. | ### Returns @@ -2218,7 +2218,7 @@ unsubscribe(); ## onElementChange() -> **onElementChange**(`args`: \{ `options`: \{ `id`: `string`; }; `handler`: (`change`: [`ElementChangeCallbackParams`](../Elements/ElementChangeCallbackParams.md)) => `void`; }): `VoidFunction` +> **onElementChange**(`args`: { `options`: { `id`: `string`; }; `handler`: (`change`: [`ElementChangeCallbackParams`](../Elements/ElementChangeCallbackParams.md)) => `void`; }): `VoidFunction` Adds a listener for when an element changes. @@ -2233,12 +2233,12 @@ still being created by a drawing tool. ### Parameters -| Parameter | Type | Description | -| ----------------- | --------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------- | -| `args` | \{ `options`: \{ `id`: `string`; }; `handler`: (`change`: [`ElementChangeCallbackParams`](../Elements/ElementChangeCallbackParams.md)) => `void`; } | - | -| `args.options` | \{ `id`: `string`; } | - | -| `args.options.id` | `string` | The id of the element to listen for changes to. | -| `args.handler` | (`change`: [`ElementChangeCallbackParams`](../Elements/ElementChangeCallbackParams.md)) => `void` | The handler that is called when the element changes. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `args` | { `options`: { `id`: `string`; }; `handler`: (`change`: [`ElementChangeCallbackParams`](../Elements/ElementChangeCallbackParams.md)) => `void`; } | - | +| `args.options` | { `id`: `string`; } | - | +| `args.options.id` | `string` | The id of the element to listen for changes to. | +| `args.handler` | (`change`: [`ElementChangeCallbackParams`](../Elements/ElementChangeCallbackParams.md)) => `void` | The handler that is called when the element changes. | ### Returns @@ -2262,18 +2262,18 @@ unsubscribe(); ## onElementDelete() -> **onElementDelete**(`args`: \{ `options`: \{ `id`: `string`; }; `handler`: () => `void`; }): `VoidFunction` +> **onElementDelete**(`args`: { `options`: { `id`: `string`; }; `handler`: () => `void`; }): `VoidFunction` Adds a listener for when an element is deleted. ### Parameters -| Parameter | Type | Description | -| ----------------- | -------------------------------------------------------------- | ------------------------------------------------------- | -| `args` | \{ `options`: \{ `id`: `string`; }; `handler`: () => `void`; } | - | -| `args.options` | \{ `id`: `string`; } | - | -| `args.options.id` | `string` | The id of the element to listen for deletions of. | -| `args.handler` | () => `void` | The handler that is called when the element is deleted. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `args` | { `options`: { `id`: `string`; }; `handler`: () => `void`; } | - | +| `args.options` | { `id`: `string`; } | - | +| `args.options.id` | `string` | The id of the element to listen for deletions of. | +| `args.handler` | () => `void` | The handler that is called when the element is deleted. | ### Returns @@ -2297,18 +2297,18 @@ unsubscribe(); ## onElementGroupChange() -> **onElementGroupChange**(`args`: \{ `options`: \{ `id`: `string`; }; `handler`: (`change`: [`ElementGroupChangeCallbackParams`](../Elements/ElementGroupChangeCallbackParams.md)) => `void`; }): `VoidFunction` +> **onElementGroupChange**(`args`: { `options`: { `id`: `string`; }; `handler`: (`change`: [`ElementGroupChangeCallbackParams`](../Elements/ElementGroupChangeCallbackParams.md)) => `void`; }): `VoidFunction` Adds a listener for when an element group changes. ### Parameters -| Parameter | Type | -| ----------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `args` | \{ `options`: \{ `id`: `string`; }; `handler`: (`change`: [`ElementGroupChangeCallbackParams`](../Elements/ElementGroupChangeCallbackParams.md)) => `void`; } | -| `args.options` | \{ `id`: `string`; } | -| `args.options.id` | `string` | -| `args.handler` | (`change`: [`ElementGroupChangeCallbackParams`](../Elements/ElementGroupChangeCallbackParams.md)) => `void` | +| Parameter | Type | +| ------ | ------ | +| `args` | { `options`: { `id`: `string`; }; `handler`: (`change`: [`ElementGroupChangeCallbackParams`](../Elements/ElementGroupChangeCallbackParams.md)) => `void`; } | +| `args.options` | { `id`: `string`; } | +| `args.options.id` | `string` | +| `args.handler` | (`change`: [`ElementGroupChangeCallbackParams`](../Elements/ElementGroupChangeCallbackParams.md)) => `void` | ### Returns @@ -2332,16 +2332,16 @@ unsubscribe(); ## onPointerClick() -> **onPointerClick**(`params`: \{ `handler`: (`event`: [`MapInteractionEvent`](../Interactions/MapInteractionEvent.md)) => `void`; }): `VoidFunction` +> **onPointerClick**(`params`: { `handler`: (`event`: [`MapInteractionEvent`](../Interactions/MapInteractionEvent.md)) => `void`; }): `VoidFunction` Allows you to be notified the user clicks on the map. ### Parameters -| Parameter | Type | -| ---------------- | ----------------------------------------------------------------------------------------------------- | -| `params` | \{ `handler`: (`event`: [`MapInteractionEvent`](../Interactions/MapInteractionEvent.md)) => `void`; } | -| `params.handler` | (`event`: [`MapInteractionEvent`](../Interactions/MapInteractionEvent.md)) => `void` | +| Parameter | Type | +| ------ | ------ | +| `params` | { `handler`: (`event`: [`MapInteractionEvent`](../Interactions/MapInteractionEvent.md)) => `void`; } | +| `params.handler` | (`event`: [`MapInteractionEvent`](../Interactions/MapInteractionEvent.md)) => `void` | ### Returns @@ -2364,16 +2364,16 @@ unsubscribe(); ## onPointerMove() -> **onPointerMove**(`params`: \{ `handler`: (`event`: [`MapInteractionEvent`](../Interactions/MapInteractionEvent.md)) => `void`; }): `VoidFunction` +> **onPointerMove**(`params`: { `handler`: (`event`: [`MapInteractionEvent`](../Interactions/MapInteractionEvent.md)) => `void`; }): `VoidFunction` Allows you to be notified the user moves the mouse over the map. ### Parameters -| Parameter | Type | Description | -| ---------------- | ----------------------------------------------------------------------------------------------------- | ----------------------- | -| `params` | \{ `handler`: (`event`: [`MapInteractionEvent`](../Interactions/MapInteractionEvent.md)) => `void`; } | Params for the listener | -| `params.handler` | (`event`: [`MapInteractionEvent`](../Interactions/MapInteractionEvent.md)) => `void` | The handler function | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `params` | { `handler`: (`event`: [`MapInteractionEvent`](../Interactions/MapInteractionEvent.md)) => `void`; } | Params for the listener | +| `params.handler` | (`event`: [`MapInteractionEvent`](../Interactions/MapInteractionEvent.md)) => `void` | The handler function | ### Returns @@ -2400,18 +2400,18 @@ unsubscribe(); ## onLayerChange() -> **onLayerChange**(`args`: \{ `options`: \{ `id`: `string`; }; `handler`: (`change`: [`LayerChangeCallbackParams`](../Layers/LayerChangeCallbackParams.md)) => `void`; }): `VoidFunction` +> **onLayerChange**(`args`: { `options`: { `id`: `string`; }; `handler`: (`change`: [`LayerChangeCallbackParams`](../Layers/LayerChangeCallbackParams.md)) => `void`; }): `VoidFunction` Adds a listener for when a layer changes. ### Parameters -| Parameter | Type | Description | -| ----------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------- | -| `args` | \{ `options`: \{ `id`: `string`; }; `handler`: (`change`: [`LayerChangeCallbackParams`](../Layers/LayerChangeCallbackParams.md)) => `void`; } | - | -| `args.options` | \{ `id`: `string`; } | - | -| `args.options.id` | `string` | The id of the layer to listen for changes to. | -| `args.handler` | (`change`: [`LayerChangeCallbackParams`](../Layers/LayerChangeCallbackParams.md)) => `void` | The handler that is called when the layer changes. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `args` | { `options`: { `id`: `string`; }; `handler`: (`change`: [`LayerChangeCallbackParams`](../Layers/LayerChangeCallbackParams.md)) => `void`; } | - | +| `args.options` | { `id`: `string`; } | - | +| `args.options.id` | `string` | The id of the layer to listen for changes to. | +| `args.handler` | (`change`: [`LayerChangeCallbackParams`](../Layers/LayerChangeCallbackParams.md)) => `void` | The handler that is called when the layer changes. | ### Returns @@ -2435,18 +2435,18 @@ unsubscribe(); ## onLayerGroupChange() -> **onLayerGroupChange**(`args`: \{ `options`: \{ `id`: `string`; }; `handler`: (`change`: [`LayerGroupChangeCallbackParams`](../Layers/LayerGroupChangeCallbackParams.md)) => `void`; }): `VoidFunction` +> **onLayerGroupChange**(`args`: { `options`: { `id`: `string`; }; `handler`: (`change`: [`LayerGroupChangeCallbackParams`](../Layers/LayerGroupChangeCallbackParams.md)) => `void`; }): `VoidFunction` Adds a listener for when a layer group changes. ### Parameters -| Parameter | Type | -| ----------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `args` | \{ `options`: \{ `id`: `string`; }; `handler`: (`change`: [`LayerGroupChangeCallbackParams`](../Layers/LayerGroupChangeCallbackParams.md)) => `void`; } | -| `args.options` | \{ `id`: `string`; } | -| `args.options.id` | `string` | -| `args.handler` | (`change`: [`LayerGroupChangeCallbackParams`](../Layers/LayerGroupChangeCallbackParams.md)) => `void` | +| Parameter | Type | +| ------ | ------ | +| `args` | { `options`: { `id`: `string`; }; `handler`: (`change`: [`LayerGroupChangeCallbackParams`](../Layers/LayerGroupChangeCallbackParams.md)) => `void`; } | +| `args.options` | { `id`: `string`; } | +| `args.options.id` | `string` | +| `args.handler` | (`change`: [`LayerGroupChangeCallbackParams`](../Layers/LayerGroupChangeCallbackParams.md)) => `void` | ### Returns @@ -2470,17 +2470,17 @@ unsubscribe(); ## onLegendItemChange() -> **onLegendItemChange**(`args`: \{ `options`: [`LegendItemIdentifier`](../Layers/LegendItemIdentifier.md); `handler`: (`change`: [`LegendItemChangeCallbackParams`](../Layers/LegendItemChangeCallbackParams.md)) => `void`; }): `VoidFunction` +> **onLegendItemChange**(`args`: { `options`: [`LegendItemIdentifier`](../Layers/LegendItemIdentifier.md); `handler`: (`change`: [`LegendItemChangeCallbackParams`](../Layers/LegendItemChangeCallbackParams.md)) => `void`; }): `VoidFunction` Adds a listener for when a legend item changes. ### Parameters -| Parameter | Type | -| -------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `args` | \{ `options`: [`LegendItemIdentifier`](../Layers/LegendItemIdentifier.md); `handler`: (`change`: [`LegendItemChangeCallbackParams`](../Layers/LegendItemChangeCallbackParams.md)) => `void`; } | -| `args.options` | [`LegendItemIdentifier`](../Layers/LegendItemIdentifier.md) | -| `args.handler` | (`change`: [`LegendItemChangeCallbackParams`](../Layers/LegendItemChangeCallbackParams.md)) => `void` | +| Parameter | Type | +| ------ | ------ | +| `args` | { `options`: [`LegendItemIdentifier`](../Layers/LegendItemIdentifier.md); `handler`: (`change`: [`LegendItemChangeCallbackParams`](../Layers/LegendItemChangeCallbackParams.md)) => `void`; } | +| `args.options` | [`LegendItemIdentifier`](../Layers/LegendItemIdentifier.md) | +| `args.handler` | (`change`: [`LegendItemChangeCallbackParams`](../Layers/LegendItemChangeCallbackParams.md)) => `void` | ### Returns @@ -2504,18 +2504,18 @@ unsubscribe(); ## onLayerFiltersChange() -> **onLayerFiltersChange**(`params`: \{ `options`: \{ `layerId`: `string`; }; `handler`: (`change`: [`LayerFilters`](../Layers/LayerFilters.md)) => `void`; }): `VoidFunction` +> **onLayerFiltersChange**(`params`: { `options`: { `layerId`: `string`; }; `handler`: (`change`: [`LayerFilters`](../Layers/LayerFilters.md)) => `void`; }): `VoidFunction` Adds a listener for when a layer's filters change. ### Parameters -| Parameter | Type | -| ------------------------ | ------------------------------------------------------------------------------------------------------------------------ | -| `params` | \{ `options`: \{ `layerId`: `string`; }; `handler`: (`change`: [`LayerFilters`](../Layers/LayerFilters.md)) => `void`; } | -| `params.options` | \{ `layerId`: `string`; } | -| `params.options.layerId` | `string` | -| `params.handler` | (`change`: [`LayerFilters`](../Layers/LayerFilters.md)) => `void` | +| Parameter | Type | +| ------ | ------ | +| `params` | { `options`: { `layerId`: `string`; }; `handler`: (`change`: [`LayerFilters`](../Layers/LayerFilters.md)) => `void`; } | +| `params.options` | { `layerId`: `string`; } | +| `params.options.layerId` | `string` | +| `params.handler` | (`change`: [`LayerFilters`](../Layers/LayerFilters.md)) => `void` | ### Returns @@ -2552,18 +2552,18 @@ unsubscribe(); ## onLayerBoundariesChange() -> **onLayerBoundariesChange**(`params`: \{ `options`: \{ `layerId`: `string`; }; `handler`: (`boundaries`: `null` | [`LayerBoundaries`](../Layers/LayerBoundaries.md)) => `void`; }): `VoidFunction` +> **onLayerBoundariesChange**(`params`: { `options`: { `layerId`: `string`; }; `handler`: (`boundaries`: `null` | [`LayerBoundaries`](../Layers/LayerBoundaries.md)) => `void`; }): `VoidFunction` Adds a listener for when a layer's spatial boundaries change. ### Parameters -| Parameter | Type | Description | -| ------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------ | -| `params` | \{ `options`: \{ `layerId`: `string`; }; `handler`: (`boundaries`: `null` \| [`LayerBoundaries`](../Layers/LayerBoundaries.md)) => `void`; } | - | -| `params.options` | \{ `layerId`: `string`; } | - | -| `params.options.layerId` | `string` | The id of the layer to listen for boundary changes on. | -| `params.handler` | (`boundaries`: `null` \| [`LayerBoundaries`](../Layers/LayerBoundaries.md)) => `void` | A function that is called when the boundaries change. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `params` | { `options`: { `layerId`: `string`; }; `handler`: (`boundaries`: `null` | [`LayerBoundaries`](../Layers/LayerBoundaries.md)) => `void`; } | - | +| `params.options` | { `layerId`: `string`; } | - | +| `params.options.layerId` | `string` | The id of the layer to listen for boundary changes on. | +| `params.handler` | (`boundaries`: `null` | [`LayerBoundaries`](../Layers/LayerBoundaries.md)) => `void` | A function that is called when the boundaries change. | ### Returns @@ -2599,16 +2599,16 @@ unsubscribe(); ## onSelectionChange() -> **onSelectionChange**(`params`: \{ `handler`: (`change`: \{ `selection`: [`EntityNode`](../Selection/EntityNode.md)\[]; }) => `void`; }): `VoidFunction` +> **onSelectionChange**(`params`: { `handler`: (`change`: { `selection`: [`EntityNode`](../Selection/EntityNode.md)\[]; }) => `void`; }): `VoidFunction` Adds a listener for when the selection changes. ### Parameters -| Parameter | Type | -| ---------------- | ------------------------------------------------------------------------------------------------------- | -| `params` | \{ `handler`: (`change`: \{ `selection`: [`EntityNode`](../Selection/EntityNode.md)\[]; }) => `void`; } | -| `params.handler` | (`change`: \{ `selection`: [`EntityNode`](../Selection/EntityNode.md)\[]; }) => `void` | +| Parameter | Type | +| ------ | ------ | +| `params` | { `handler`: (`change`: { `selection`: [`EntityNode`](../Selection/EntityNode.md)\[]; }) => `void`; } | +| `params.handler` | (`change`: { `selection`: [`EntityNode`](../Selection/EntityNode.md)\[]; }) => `void` | ### Returns @@ -2631,16 +2631,16 @@ unsubscribe(); ## onViewportMove() -> **onViewportMove**(`args`: \{ `handler`: (`viewport`: [`ViewportState`](../Viewport/ViewportState.md)) => `void`; }): `VoidFunction` +> **onViewportMove**(`args`: { `handler`: (`viewport`: [`ViewportState`](../Viewport/ViewportState.md)) => `void`; }): `VoidFunction` Adds a listener for when the viewport changes. ### Parameters -| Parameter | Type | Description | -| -------------- | ---------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -| `args` | \{ `handler`: (`viewport`: [`ViewportState`](../Viewport/ViewportState.md)) => `void`; } | - | -| `args.handler` | (`viewport`: [`ViewportState`](../Viewport/ViewportState.md)) => `void` | This callback is called with the current viewport state whenever the viewport changes. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `args` | { `handler`: (`viewport`: [`ViewportState`](../Viewport/ViewportState.md)) => `void`; } | - | +| `args.handler` | (`viewport`: [`ViewportState`](../Viewport/ViewportState.md)) => `void` | This callback is called with the current viewport state whenever the viewport changes. | ### Returns @@ -2663,7 +2663,7 @@ unsubscribe(); ## onViewportMoveEnd() -> **onViewportMoveEnd**(`args`: \{ `handler`: (`viewport`: [`ViewportState`](../Viewport/ViewportState.md)) => `void`; }): `VoidFunction` +> **onViewportMoveEnd**(`args`: { `handler`: (`viewport`: [`ViewportState`](../Viewport/ViewportState.md)) => `void`; }): `VoidFunction` Adds a listener for when the viewport move ends, which is when the user stops dragging or zooming the map, animations have finished, or inertial @@ -2671,10 +2671,10 @@ dragging ends. ### Parameters -| Parameter | Type | -| -------------- | ---------------------------------------------------------------------------------------- | -| `args` | \{ `handler`: (`viewport`: [`ViewportState`](../Viewport/ViewportState.md)) => `void`; } | -| `args.handler` | (`viewport`: [`ViewportState`](../Viewport/ViewportState.md)) => `void` | +| Parameter | Type | +| ------ | ------ | +| `args` | { `handler`: (`viewport`: [`ViewportState`](../Viewport/ViewportState.md)) => `void`; } | +| `args.handler` | (`viewport`: [`ViewportState`](../Viewport/ViewportState.md)) => `void` | ### Returns @@ -2697,7 +2697,7 @@ unsubscribe(); ## onMapIdle() -> **onMapIdle**(`args`: \{ `handler`: () => `void`; }): `VoidFunction` +> **onMapIdle**(`args`: { `handler`: () => `void`; }): `VoidFunction` Adds a listener for when the map is idle, which is defined as: @@ -2708,10 +2708,10 @@ Adds a listener for when the map is idle, which is defined as: ### Parameters -| Parameter | Type | -| -------------- | ----------------------------- | -| `args` | \{ `handler`: () => `void`; } | -| `args.handler` | () => `void` | +| Parameter | Type | +| ------ | ------ | +| `args` | { `handler`: () => `void`; } | +| `args.handler` | () => `void` | ### Returns diff --git a/docs/Misc/README.md b/docs/Misc.md similarity index 51% rename from docs/Misc/README.md rename to docs/Misc.md index 1573d564..dd92faca 100644 --- a/docs/Misc/README.md +++ b/docs/Misc.md @@ -4,8 +4,8 @@ The misc module for hard-to-categorize functionality. # Controller -* [MiscController](MiscController.md) +* [MiscController](Misc/MiscController.md) # Types -* [MapDetails](MapDetails.md) +* [MapDetails](Misc/MapDetails.md) diff --git a/docs/Misc/MapDetails.md b/docs/Misc/MapDetails.md index 6300f200..47e58531 100644 --- a/docs/Misc/MapDetails.md +++ b/docs/Misc/MapDetails.md @@ -1,10 +1,10 @@ *** -> **MapDetails**: \{ `id`: `string`; `title`: `string`; `description`: `string` | `null`; } +> **MapDetails** = { `id`: `string`; `title`: `string`; `description`: `string` | `null`; } The details of a map. -# Type declaration +# Properties ## id @@ -12,12 +12,16 @@ The details of a map. The id of the map. +*** + ## title > **title**: `string` The title of the map. +*** + ## description > **description**: `string` | `null` diff --git a/docs/Misc/MiscController.md b/docs/Misc/MiscController.md index 9269bff4..8a30067e 100644 --- a/docs/Misc/MiscController.md +++ b/docs/Misc/MiscController.md @@ -8,13 +8,13 @@ ## getMapDetails() -> **getMapDetails**(): `Promise`\<[`MapDetails`](MapDetails.md)> +> **getMapDetails**(): `Promise`<[`MapDetails`](MapDetails.md)> Gets the details of the map. ### Returns -`Promise`\<[`MapDetails`](MapDetails.md)> +`Promise`<[`MapDetails`](MapDetails.md)> ### Example diff --git a/docs/README.md b/docs/README.md index a614acd4..cbae9593 100644 --- a/docs/README.md +++ b/docs/README.md @@ -27,13 +27,13 @@ const layers = await map.getLayers(); ## Modules -* [Elements](Elements/README.md) -* [Interactions](Interactions/README.md) -* [Layers](Layers/README.md) -* [Main](Main/README.md) -* [Misc](Misc/README.md) -* [Selection](Selection/README.md) -* [Shared](Shared/README.md) -* [Tools](Tools/README.md) -* [UI](UI/README.md) -* [Viewport](Viewport/README.md) +* [Elements](Elements.md) +* [Interactions](Interactions.md) +* [Layers](Layers.md) +* [Main](Main.md) +* [Misc](Misc.md) +* [Selection](Selection.md) +* [Shared](Shared.md) +* [Tools](Tools.md) +* [UI](UI.md) +* [Viewport](Viewport.md) diff --git a/docs/Selection.md b/docs/Selection.md new file mode 100644 index 00000000..502e7cb8 --- /dev/null +++ b/docs/Selection.md @@ -0,0 +1,21 @@ +*** + +# Controller + +* [SelectionController](Selection/SelectionController.md) + +# Interfaces + +* [FeatureSelection](Selection/FeatureSelection.md) + +# Entity Node + +* [EntityNode](Selection/EntityNode.md) + +# Entity Nodes + +* [ElementNode](Selection/ElementNode.md) +* [ElementGroupNode](Selection/ElementGroupNode.md) +* [LayerNode](Selection/LayerNode.md) +* [LayerGroupNode](Selection/LayerGroupNode.md) +* [FeatureNode](Selection/FeatureNode.md) diff --git a/docs/Selection/EntityNode.md b/docs/Selection/EntityNode.md index 99a413e8..a1f680c2 100644 --- a/docs/Selection/EntityNode.md +++ b/docs/Selection/EntityNode.md @@ -1,6 +1,6 @@ *** -> **EntityNode**: [`ElementNode`](ElementNode.md) | [`ElementGroupNode`](ElementGroupNode.md) | [`LayerNode`](LayerNode.md) | [`LayerGroupNode`](LayerGroupNode.md) | [`FeatureNode`](FeatureNode.md) +> **EntityNode** = [`ElementNode`](ElementNode.md) | [`ElementGroupNode`](ElementGroupNode.md) | [`LayerNode`](LayerNode.md) | [`LayerGroupNode`](LayerGroupNode.md) | [`FeatureNode`](FeatureNode.md) A reference to any kind of entity in the map. diff --git a/docs/Selection/FeatureSelection.md b/docs/Selection/FeatureSelection.md index 3866ee1c..b42f63e2 100644 --- a/docs/Selection/FeatureSelection.md +++ b/docs/Selection/FeatureSelection.md @@ -36,7 +36,7 @@ true ## fitViewport? -> `optional` **fitViewport**: `boolean` | \{ `maxZoom`: `number`; } +> `optional` **fitViewport**: `boolean` | { `maxZoom`: `number`; } Whether to center the view on the feature after selecting it. diff --git a/docs/Selection/README.md b/docs/Selection/README.md deleted file mode 100644 index 1a461d97..00000000 --- a/docs/Selection/README.md +++ /dev/null @@ -1,21 +0,0 @@ -*** - -# Controller - -* [SelectionController](SelectionController.md) - -# Interfaces - -* [FeatureSelection](FeatureSelection.md) - -# Entity Node - -* [EntityNode](EntityNode.md) - -# Entity Nodes - -* [ElementNode](ElementNode.md) -* [ElementGroupNode](ElementGroupNode.md) -* [LayerNode](LayerNode.md) -* [LayerGroupNode](LayerGroupNode.md) -* [FeatureNode](FeatureNode.md) diff --git a/docs/Selection/SelectionController.md b/docs/Selection/SelectionController.md index eef88229..957b2236 100644 --- a/docs/Selection/SelectionController.md +++ b/docs/Selection/SelectionController.md @@ -10,13 +10,13 @@ The Selection controller allows you to listen for changes to the selection on th ## getSelection() -> **getSelection**(): `Promise`\<[`EntityNode`](EntityNode.md)\[]> +> **getSelection**(): `Promise`<[`EntityNode`](EntityNode.md)\[]> Gets the current selection as a list of entity identifiers. ### Returns -`Promise`\<[`EntityNode`](EntityNode.md)\[]> +`Promise`<[`EntityNode`](EntityNode.md)\[]> ### Example @@ -28,20 +28,20 @@ const selection = await felt.getSelection(); ## selectFeature() -> **selectFeature**(`params`: [`FeatureSelection`](FeatureSelection.md)): `Promise`\<`void`> +> **selectFeature**(`params`: [`FeatureSelection`](FeatureSelection.md)): `Promise`<`void`> Selects a feature on a layer. This will show the feature's popup, modal or sidebar (if configured) and highlight the feature. ### Parameters -| Parameter | Type | -| --------- | ----------------------------------------- | -| `params` | [`FeatureSelection`](FeatureSelection.md) | +| Parameter | Type | +| ------ | ------ | +| `params` | [`FeatureSelection`](FeatureSelection.md) | ### Returns -`Promise`\<`void`> +`Promise`<`void`> ### Example @@ -58,21 +58,21 @@ felt.selectFeature({ ## clearSelection() -> **clearSelection**(`params`?: \{ `features`: `boolean`; `elements`: `boolean`; }): `Promise`\<`void`> +> **clearSelection**(`params?`: { `features?`: `boolean`; `elements?`: `boolean`; }): `Promise`<`void`> Clears the current selection. This clears the selection of ### Parameters -| Parameter | Type | Description | -| ------------------ | -------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | -| `params`? | \{ `features`: `boolean`; `elements`: `boolean`; } | The parameters to clear the selection. If this is not provided, both features and elements will be cleared. | -| `params.features`? | `boolean` | Whether to clear the features from the selection. | -| `params.elements`? | `boolean` | Whether to clear the elements from the selection. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `params?` | { `features?`: `boolean`; `elements?`: `boolean`; } | The parameters to clear the selection. If this is not provided, both features and elements will be cleared. | +| `params.features?` | `boolean` | Whether to clear the features from the selection. | +| `params.elements?` | `boolean` | Whether to clear the elements from the selection. | ### Returns -`Promise`\<`void`> +`Promise`<`void`> ### Example @@ -98,16 +98,16 @@ felt.clearSelection({ elements: true }); ## onSelectionChange() -> **onSelectionChange**(`params`: \{ `handler`: (`change`: \{ `selection`: [`EntityNode`](EntityNode.md)\[]; }) => `void`; }): `VoidFunction` +> **onSelectionChange**(`params`: { `handler`: (`change`: { `selection`: [`EntityNode`](EntityNode.md)\[]; }) => `void`; }): `VoidFunction` Adds a listener for when the selection changes. ### Parameters -| Parameter | Type | -| ---------------- | ------------------------------------------------------------------------------------------ | -| `params` | \{ `handler`: (`change`: \{ `selection`: [`EntityNode`](EntityNode.md)\[]; }) => `void`; } | -| `params.handler` | (`change`: \{ `selection`: [`EntityNode`](EntityNode.md)\[]; }) => `void` | +| Parameter | Type | +| ------ | ------ | +| `params` | { `handler`: (`change`: { `selection`: [`EntityNode`](EntityNode.md)\[]; }) => `void`; } | +| `params.handler` | (`change`: { `selection`: [`EntityNode`](EntityNode.md)\[]; }) => `void` | ### Returns diff --git a/docs/Shared.md b/docs/Shared.md new file mode 100644 index 00000000..fd6a1faf --- /dev/null +++ b/docs/Shared.md @@ -0,0 +1,25 @@ +*** + +These are generic types that are used across multiple modules. + +# Other + +* [LatLng](Shared/LatLng.md) +* [GeoJsonFeature](Shared/GeoJsonFeature.md) +* [PointGeometry](Shared/PointGeometry.md) +* [MultiPointGeometry](Shared/MultiPointGeometry.md) +* [PolygonGeometry](Shared/PolygonGeometry.md) +* [MultiPolygonGeometry](Shared/MultiPolygonGeometry.md) +* [LineStringGeometry](Shared/LineStringGeometry.md) +* [MultiLineStringGeometry](Shared/MultiLineStringGeometry.md) +* [SortConfig](Shared/SortConfig.md) +* [LngLatTuple](Shared/LngLatTuple.md) +* [GeoJsonProperties](Shared/GeoJsonProperties.md) +* [GeoJsonGeometry](Shared/GeoJsonGeometry.md) +* [FeltZoom](Shared/FeltZoom.md) +* [FeltBoundary](Shared/FeltBoundary.md) +* [SortDirection](Shared/SortDirection.md) + +# Visibility + +* [SetVisibilityRequest](Shared/SetVisibilityRequest.md) diff --git a/docs/Shared/FeltBoundary.md b/docs/Shared/FeltBoundary.md index df2ed6c3..5235ffc2 100644 --- a/docs/Shared/FeltBoundary.md +++ b/docs/Shared/FeltBoundary.md @@ -1,6 +1,6 @@ *** -> **FeltBoundary**: \[`number`, `number`, `number`, `number`] +> **FeltBoundary** = \[`number`, `number`, `number`, `number`] The edges of the map in the form of a bounding box. diff --git a/docs/Shared/FeltZoom.md b/docs/Shared/FeltZoom.md index 575280ec..c572d35e 100644 --- a/docs/Shared/FeltZoom.md +++ b/docs/Shared/FeltZoom.md @@ -1,6 +1,6 @@ *** -> **FeltZoom**: `number` +> **FeltZoom** = `number` The zoom level of the map. diff --git a/docs/Shared/GeoJsonFeature.md b/docs/Shared/GeoJsonFeature.md index 25734c70..b8afeba8 100644 --- a/docs/Shared/GeoJsonFeature.md +++ b/docs/Shared/GeoJsonFeature.md @@ -1,7 +1,7 @@ *** A GeoJSON feature object, compliant with: -[https://datatracker.ietf.org/doc/html/rfc7946#section-3.2](https://datatracker.ietf.org/doc/html/rfc7946#section-3.2) +https://datatracker.ietf.org/doc/html/rfc7946#section-3.2 # Properties @@ -40,4 +40,4 @@ The bounding box of the feature in \[west, south, east, north] order. > `optional` **id**: `string` | `number` A value that uniquely identifies this feature in a -[https://tools.ietf.org/html/rfc7946#section-3.2](https://tools.ietf.org/html/rfc7946#section-3.2). +https://tools.ietf.org/html/rfc7946#section-3.2. diff --git a/docs/Shared/GeoJsonGeometry.md b/docs/Shared/GeoJsonGeometry.md index 95a9a04b..29924928 100644 --- a/docs/Shared/GeoJsonGeometry.md +++ b/docs/Shared/GeoJsonGeometry.md @@ -1,5 +1,5 @@ *** -> **GeoJsonGeometry**: [`PointGeometry`](PointGeometry.md) | [`PolygonGeometry`](PolygonGeometry.md) | [`LineStringGeometry`](LineStringGeometry.md) | [`MultiLineStringGeometry`](MultiLineStringGeometry.md) | [`MultiPolygonGeometry`](MultiPolygonGeometry.md) | [`MultiPointGeometry`](MultiPointGeometry.md) +> **GeoJsonGeometry** = [`PointGeometry`](PointGeometry.md) | [`PolygonGeometry`](PolygonGeometry.md) | [`LineStringGeometry`](LineStringGeometry.md) | [`MultiLineStringGeometry`](MultiLineStringGeometry.md) | [`MultiPolygonGeometry`](MultiPolygonGeometry.md) | [`MultiPointGeometry`](MultiPointGeometry.md) A GeoJSON geometry of any type diff --git a/docs/Shared/GeoJsonProperties.md b/docs/Shared/GeoJsonProperties.md index 7dae171e..41073e23 100644 --- a/docs/Shared/GeoJsonProperties.md +++ b/docs/Shared/GeoJsonProperties.md @@ -1,5 +1,5 @@ *** -> **GeoJsonProperties**: `Record`\<`string`, `unknown`> +> **GeoJsonProperties** = `Record`<`string`, `unknown`> A GeoJSON properties object. diff --git a/docs/Shared/LngLatTuple.md b/docs/Shared/LngLatTuple.md index 05161ec3..8f0d14ff 100644 --- a/docs/Shared/LngLatTuple.md +++ b/docs/Shared/LngLatTuple.md @@ -1,6 +1,6 @@ *** -> **LngLatTuple**: \[`number`, `number`] +> **LngLatTuple** = \[`number`, `number`] A tuple representing a longitude and latitude coordinate. diff --git a/docs/Shared/README.md b/docs/Shared/README.md deleted file mode 100644 index 77bf9ed6..00000000 --- a/docs/Shared/README.md +++ /dev/null @@ -1,25 +0,0 @@ -*** - -These are generic types that are used across multiple modules. - -# Other - -* [LatLng](LatLng.md) -* [GeoJsonFeature](GeoJsonFeature.md) -* [PointGeometry](PointGeometry.md) -* [MultiPointGeometry](MultiPointGeometry.md) -* [PolygonGeometry](PolygonGeometry.md) -* [MultiPolygonGeometry](MultiPolygonGeometry.md) -* [LineStringGeometry](LineStringGeometry.md) -* [MultiLineStringGeometry](MultiLineStringGeometry.md) -* [SortConfig](SortConfig.md) -* [LngLatTuple](LngLatTuple.md) -* [GeoJsonProperties](GeoJsonProperties.md) -* [GeoJsonGeometry](GeoJsonGeometry.md) -* [FeltZoom](FeltZoom.md) -* [FeltBoundary](FeltBoundary.md) -* [SortDirection](SortDirection.md) - -# Visibility - -* [SetVisibilityRequest](SetVisibilityRequest.md) diff --git a/docs/Shared/SortDirection.md b/docs/Shared/SortDirection.md index 5c584599..c23ef49a 100644 --- a/docs/Shared/SortDirection.md +++ b/docs/Shared/SortDirection.md @@ -1,5 +1,5 @@ *** -> **SortDirection**: `"asc"` | `"desc"` +> **SortDirection** = `"asc"` | `"desc"` Specifies the direction to sort data in diff --git a/docs/Tools.md b/docs/Tools.md new file mode 100644 index 00000000..5ab47915 --- /dev/null +++ b/docs/Tools.md @@ -0,0 +1,52 @@ +*** + +The Tools part of the Felt SDK allows you to let users draw elements on the map +by programatically selecting a tool for them. + +You can also set the settings for individual tools, to allow you to change the +styling of the resulting element. + +# Example + +```ts +// Change the settings for the line tool +felt.setToolSettings({ + tool: "line", + strokeWidth: 8, + color: "#448C2A" +}); + +// Start using the line tool +felt.setTool("line"); + +// Put down the tool +felt.setTool(null); +``` + +> To create elements programatically, use the [ElementsController](Elements/ElementsController.md) instead. + +# Controller + +* [ToolsController](Tools/ToolsController.md) + +# Interfaces + +* [PinToolSettings](Tools/PinToolSettings.md) +* [LineToolSettings](Tools/LineToolSettings.md) +* [RouteToolSettings](Tools/RouteToolSettings.md) +* [PolygonToolSettings](Tools/PolygonToolSettings.md) +* [CircleToolSettings](Tools/CircleToolSettings.md) +* [MarkerToolSettings](Tools/MarkerToolSettings.md) +* [HighlighterToolSettings](Tools/HighlighterToolSettings.md) +* [TextToolSettings](Tools/TextToolSettings.md) +* [NoteToolSettings](Tools/NoteToolSettings.md) + +# Type Aliases + +* [ToolType](Tools/ToolType.md) +* [ConfigurableToolType](Tools/ConfigurableToolType.md) +* [InputToolSettings](Tools/InputToolSettings.md) +* [ToolSettingsChangeEvent](Tools/ToolSettingsChangeEvent.md) +* [ToolSettingsMap](Tools/ToolSettingsMap.md) +* [PlaceFrame](Tools/PlaceFrame.md) +* [PlaceSymbol](Tools/PlaceSymbol.md) diff --git a/docs/Tools/ConfigurableToolType.md b/docs/Tools/ConfigurableToolType.md index 2b1baa08..02ab560f 100644 --- a/docs/Tools/ConfigurableToolType.md +++ b/docs/Tools/ConfigurableToolType.md @@ -1,3 +1,3 @@ *** -> **ConfigurableToolType**: `Exclude`\<[`ToolType`](ToolType.md), `"link"`> +> **ConfigurableToolType** = `Exclude`<[`ToolType`](ToolType.md), `"link"`> diff --git a/docs/Tools/InputToolSettings.md b/docs/Tools/InputToolSettings.md index 3076d37f..7ffb4d65 100644 --- a/docs/Tools/InputToolSettings.md +++ b/docs/Tools/InputToolSettings.md @@ -1,5 +1,5 @@ *** -> **InputToolSettings**: \{ `tool`: `"pin"`; } & `Partial`\<[`PinToolSettings`](PinToolSettings.md)> | \{ `tool`: `"line"`; } & `Partial`\<[`LineToolSettings`](LineToolSettings.md)> | \{ `tool`: `"route"`; } & `Partial`\<[`RouteToolSettings`](RouteToolSettings.md)> | \{ `tool`: `"polygon"`; } & `Partial`\<[`PolygonToolSettings`](PolygonToolSettings.md)> | \{ `tool`: `"circle"`; } & `Partial`\<[`CircleToolSettings`](CircleToolSettings.md)> | \{ `tool`: `"marker"`; } & `Partial`\<[`MarkerToolSettings`](MarkerToolSettings.md)> | \{ `tool`: `"highlighter"`; } & `Partial`\<[`HighlighterToolSettings`](HighlighterToolSettings.md)> | \{ `tool`: `"text"`; } & `Partial`\<[`TextToolSettings`](TextToolSettings.md)> | \{ `tool`: `"note"`; } & `Partial`\<[`NoteToolSettings`](NoteToolSettings.md)> +> **InputToolSettings** = { `tool`: `"pin"`; } & `Partial`<[`PinToolSettings`](PinToolSettings.md)> | { `tool`: `"line"`; } & `Partial`<[`LineToolSettings`](LineToolSettings.md)> | { `tool`: `"route"`; } & `Partial`<[`RouteToolSettings`](RouteToolSettings.md)> | { `tool`: `"polygon"`; } & `Partial`<[`PolygonToolSettings`](PolygonToolSettings.md)> | { `tool`: `"circle"`; } & `Partial`<[`CircleToolSettings`](CircleToolSettings.md)> | { `tool`: `"marker"`; } & `Partial`<[`MarkerToolSettings`](MarkerToolSettings.md)> | { `tool`: `"highlighter"`; } & `Partial`<[`HighlighterToolSettings`](HighlighterToolSettings.md)> | { `tool`: `"text"`; } & `Partial`<[`TextToolSettings`](TextToolSettings.md)> | { `tool`: `"note"`; } & `Partial`<[`NoteToolSettings`](NoteToolSettings.md)> The parameters for changing the settings of each tool. diff --git a/docs/Tools/PlaceFrame.md b/docs/Tools/PlaceFrame.md index da671c5d..96934b78 100644 --- a/docs/Tools/PlaceFrame.md +++ b/docs/Tools/PlaceFrame.md @@ -1,3 +1,3 @@ *** -> **PlaceFrame**: `"frame-circle"` | `"frame-square"` | `null` +> **PlaceFrame** = `"frame-circle"` | `"frame-square"` | `null` diff --git a/docs/Tools/PlaceSymbol.md b/docs/Tools/PlaceSymbol.md index 50054e06..2dc17b10 100644 --- a/docs/Tools/PlaceSymbol.md +++ b/docs/Tools/PlaceSymbol.md @@ -1,3 +1,3 @@ *** -> **PlaceSymbol**: `"dot"` | `"square"` | `"diamond"` | `"triangle"` | `"x"` | `"plus"` | `"circle-line"` | `"circle-slash"` | `"star"` | `"heart"` | `"hexagon"` | `"octagon"` | `"pedestrian"` | `"bicycle"` | `"wheelchair"` | `"airport"` | `"car"` | `"bus"` | `"train"` | `"truck"` | `"ferry"` | `"sailboat"` | `"electric-service"` | `"gas-service"` | `"blood-clinic"` | `"badge"` | `"traffic-light"` | `"traffic-cone"` | `"road-sign-caution"` | `"person"` | `"restroom"` | `"house"` | `"work"` | `"letter"` | `"hotel"` | `"factory"` | `"hospital"` | `"religious-facility"` | `"school"` | `"government"` | `"university"` | `"bank"` | `"landmark"` | `"museum"` | `"clothing"` | `"shopping"` | `"store"` | `"bar"` | `"pub"` | `"cafe"` | `"food"` | `"park"` | `"amusement-park"` | `"camping-tent"` | `"cabin"` | `"picnic"` | `"water-refill"` | `"trailhead"` | `"guidepost"` | `"viewpoint"` | `"camera"` | `"us-football"` | `"football"` | `"tennis"` | `"binoculars"` | `"swimming"` | `"zap"` | `"battery-full"` | `"battery-half"` | `"battery-low"` | `"boom"` | `"radar"` | `"wind-turbine"` | `"solar-panel"` | `"antenna"` | `"telephone-pole"` | `"oil-well"` | `"oil-barrel"` | `"railroad-track"` | `"bridge"` | `"lighthouse"` | `"lock-closed"` | `"lock-open"` | `"wifi"` | `"trash"` | `"recycle"` | `"tree"` | `"flower"` | `"leaf"` | `"fire"` | `"mountain"` | `"snowy-mountain"` | `"volcano"` | `"island"` | `"wave"` | `"hot-springs"` | `"water"` | `"lake"` | `"ocean"` | `"animal"` | `"bird"` | `"duck"` | `"dog"` | `"fish"` | `"beach"` | `"wetland"` | `"sun"` | `"moon"` | `"cloud"` | `"partial-sun"` | `"rain"` | `"lightning"` | `"snowflake"` | `"wind"` | `"snow"` | `"fog"` | `"sleet"` | `"hurricane"` | `"warning"` | `"parking"` | `"info"` | `"circle-exclamation"` | `"circle-triangle"` | `"circle-x"` | `"circle-plus"` | `` `:${string}:` `` & \{} +> **PlaceSymbol** = `"dot"` | `"square"` | `"diamond"` | `"triangle"` | `"x"` | `"plus"` | `"circle-line"` | `"circle-slash"` | `"star"` | `"heart"` | `"hexagon"` | `"octagon"` | `"pedestrian"` | `"bicycle"` | `"wheelchair"` | `"airport"` | `"car"` | `"bus"` | `"train"` | `"truck"` | `"ferry"` | `"sailboat"` | `"electric-service"` | `"gas-service"` | `"blood-clinic"` | `"badge"` | `"traffic-light"` | `"traffic-cone"` | `"road-sign-caution"` | `"person"` | `"restroom"` | `"house"` | `"work"` | `"letter"` | `"hotel"` | `"factory"` | `"hospital"` | `"religious-facility"` | `"school"` | `"government"` | `"university"` | `"bank"` | `"landmark"` | `"museum"` | `"clothing"` | `"shopping"` | `"store"` | `"bar"` | `"pub"` | `"cafe"` | `"food"` | `"park"` | `"amusement-park"` | `"camping-tent"` | `"cabin"` | `"picnic"` | `"water-refill"` | `"trailhead"` | `"guidepost"` | `"viewpoint"` | `"camera"` | `"us-football"` | `"football"` | `"tennis"` | `"binoculars"` | `"swimming"` | `"zap"` | `"battery-full"` | `"battery-half"` | `"battery-low"` | `"boom"` | `"radar"` | `"wind-turbine"` | `"solar-panel"` | `"antenna"` | `"telephone-pole"` | `"oil-well"` | `"oil-barrel"` | `"railroad-track"` | `"bridge"` | `"lighthouse"` | `"lock-closed"` | `"lock-open"` | `"wifi"` | `"trash"` | `"recycle"` | `"tree"` | `"flower"` | `"leaf"` | `"fire"` | `"mountain"` | `"snowy-mountain"` | `"volcano"` | `"island"` | `"wave"` | `"hot-springs"` | `"water"` | `"lake"` | `"ocean"` | `"animal"` | `"bird"` | `"duck"` | `"dog"` | `"fish"` | `"beach"` | `"wetland"` | `"sun"` | `"moon"` | `"cloud"` | `"partial-sun"` | `"rain"` | `"lightning"` | `"snowflake"` | `"wind"` | `"snow"` | `"fog"` | `"sleet"` | `"hurricane"` | `"warning"` | `"parking"` | `"info"` | `"circle-exclamation"` | `"circle-triangle"` | `"circle-x"` | `"circle-plus"` | `` `:${string}:` `` & { } diff --git a/docs/Tools/README.md b/docs/Tools/README.md deleted file mode 100644 index edd11c10..00000000 --- a/docs/Tools/README.md +++ /dev/null @@ -1,52 +0,0 @@ -*** - -The Tools part of the Felt SDK allows you to let users draw elements on the map -by programatically selecting a tool for them. - -You can also set the settings for individual tools, to allow you to change the -styling of the resulting element. - -# Example - -```ts -// Change the settings for the line tool -felt.setToolSettings({ - tool: "line", - strokeWidth: 8, - color: "#448C2A" -}); - -// Start using the line tool -felt.setTool("line"); - -// Put down the tool -felt.setTool(null); -``` - -> To create elements programatically, use the [ElementsController](../Elements/ElementsController.md) instead. - -# Controller - -* [ToolsController](ToolsController.md) - -# Interfaces - -* [PinToolSettings](PinToolSettings.md) -* [LineToolSettings](LineToolSettings.md) -* [RouteToolSettings](RouteToolSettings.md) -* [PolygonToolSettings](PolygonToolSettings.md) -* [CircleToolSettings](CircleToolSettings.md) -* [MarkerToolSettings](MarkerToolSettings.md) -* [HighlighterToolSettings](HighlighterToolSettings.md) -* [TextToolSettings](TextToolSettings.md) -* [NoteToolSettings](NoteToolSettings.md) - -# Type Aliases - -* [ToolType](ToolType.md) -* [ConfigurableToolType](ConfigurableToolType.md) -* [InputToolSettings](InputToolSettings.md) -* [ToolSettingsChangeEvent](ToolSettingsChangeEvent.md) -* [ToolSettingsMap](ToolSettingsMap.md) -* [PlaceFrame](PlaceFrame.md) -* [PlaceSymbol](PlaceSymbol.md) diff --git a/docs/Tools/ToolSettingsChangeEvent.md b/docs/Tools/ToolSettingsChangeEvent.md index c10222fa..47090ed4 100644 --- a/docs/Tools/ToolSettingsChangeEvent.md +++ b/docs/Tools/ToolSettingsChangeEvent.md @@ -1,5 +1,5 @@ *** -> **ToolSettingsChangeEvent**: \{ `tool`: `"pin"`; } & [`PinToolSettings`](PinToolSettings.md) | \{ `tool`: `"line"`; } & [`LineToolSettings`](LineToolSettings.md) | \{ `tool`: `"route"`; } & [`RouteToolSettings`](RouteToolSettings.md) | \{ `tool`: `"polygon"`; } & [`PolygonToolSettings`](PolygonToolSettings.md) | \{ `tool`: `"circle"`; } & [`CircleToolSettings`](CircleToolSettings.md) | \{ `tool`: `"marker"`; } & [`MarkerToolSettings`](MarkerToolSettings.md) | \{ `tool`: `"highlighter"`; } & [`HighlighterToolSettings`](HighlighterToolSettings.md) | \{ `tool`: `"text"`; } & [`TextToolSettings`](TextToolSettings.md) | \{ `tool`: `"note"`; } & [`NoteToolSettings`](NoteToolSettings.md) +> **ToolSettingsChangeEvent** = { `tool`: `"pin"`; } & [`PinToolSettings`](PinToolSettings.md) | { `tool`: `"line"`; } & [`LineToolSettings`](LineToolSettings.md) | { `tool`: `"route"`; } & [`RouteToolSettings`](RouteToolSettings.md) | { `tool`: `"polygon"`; } & [`PolygonToolSettings`](PolygonToolSettings.md) | { `tool`: `"circle"`; } & [`CircleToolSettings`](CircleToolSettings.md) | { `tool`: `"marker"`; } & [`MarkerToolSettings`](MarkerToolSettings.md) | { `tool`: `"highlighter"`; } & [`HighlighterToolSettings`](HighlighterToolSettings.md) | { `tool`: `"text"`; } & [`TextToolSettings`](TextToolSettings.md) | { `tool`: `"note"`; } & [`NoteToolSettings`](NoteToolSettings.md) The result of listening for changes to the settings of each tool. diff --git a/docs/Tools/ToolSettingsMap.md b/docs/Tools/ToolSettingsMap.md index d55b706b..8d5518f3 100644 --- a/docs/Tools/ToolSettingsMap.md +++ b/docs/Tools/ToolSettingsMap.md @@ -1,41 +1,57 @@ *** -> **ToolSettingsMap**: \{ `pin`: [`PinToolSettings`](PinToolSettings.md); `line`: [`LineToolSettings`](LineToolSettings.md); `route`: [`RouteToolSettings`](RouteToolSettings.md); `polygon`: [`PolygonToolSettings`](PolygonToolSettings.md); `circle`: [`CircleToolSettings`](CircleToolSettings.md); `marker`: [`MarkerToolSettings`](MarkerToolSettings.md); `highlighter`: [`HighlighterToolSettings`](HighlighterToolSettings.md); `text`: [`TextToolSettings`](TextToolSettings.md); `note`: [`NoteToolSettings`](NoteToolSettings.md); } +> **ToolSettingsMap** = { `pin`: [`PinToolSettings`](PinToolSettings.md); `line`: [`LineToolSettings`](LineToolSettings.md); `route`: [`RouteToolSettings`](RouteToolSettings.md); `polygon`: [`PolygonToolSettings`](PolygonToolSettings.md); `circle`: [`CircleToolSettings`](CircleToolSettings.md); `marker`: [`MarkerToolSettings`](MarkerToolSettings.md); `highlighter`: [`HighlighterToolSettings`](HighlighterToolSettings.md); `text`: [`TextToolSettings`](TextToolSettings.md); `note`: [`NoteToolSettings`](NoteToolSettings.md); } -# Type declaration +# Properties ## pin > **pin**: [`PinToolSettings`](PinToolSettings.md) +*** + ## line > **line**: [`LineToolSettings`](LineToolSettings.md) +*** + ## route > **route**: [`RouteToolSettings`](RouteToolSettings.md) +*** + ## polygon > **polygon**: [`PolygonToolSettings`](PolygonToolSettings.md) +*** + ## circle > **circle**: [`CircleToolSettings`](CircleToolSettings.md) +*** + ## marker > **marker**: [`MarkerToolSettings`](MarkerToolSettings.md) +*** + ## highlighter > **highlighter**: [`HighlighterToolSettings`](HighlighterToolSettings.md) +*** + ## text > **text**: [`TextToolSettings`](TextToolSettings.md) +*** + ## note > **note**: [`NoteToolSettings`](NoteToolSettings.md) diff --git a/docs/Tools/ToolType.md b/docs/Tools/ToolType.md index 1219bcfa..7cdb637f 100644 --- a/docs/Tools/ToolType.md +++ b/docs/Tools/ToolType.md @@ -1,3 +1,3 @@ *** -> **ToolType**: `"circle"` | `"highlighter"` | `"line"` | `"link"` | `"marker"` | `"note"` | `"pin"` | `"polygon"` | `"route"` | `"text"` +> **ToolType** = `"circle"` | `"highlighter"` | `"line"` | `"link"` | `"marker"` | `"note"` | `"pin"` | `"polygon"` | `"route"` | `"text"` diff --git a/docs/Tools/ToolsController.md b/docs/Tools/ToolsController.md index 0a8c2bc7..2ccda207 100644 --- a/docs/Tools/ToolsController.md +++ b/docs/Tools/ToolsController.md @@ -16,9 +16,9 @@ Sets the tool to use for drawing elements on the map. ### Parameters -| Parameter | Type | Description | -| --------- | ----------------------------------- | ---------------- | -| `tool` | `null` \| [`ToolType`](ToolType.md) | The tool to set. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `tool` | `null` | [`ToolType`](ToolType.md) | The tool to set. | ### Returns @@ -38,13 +38,13 @@ await felt.setTool(null); ## getTool() -> **getTool**(): `Promise`\<`null` | [`ToolType`](ToolType.md)> +> **getTool**(): `Promise`<`null` | [`ToolType`](ToolType.md)> Gets the current tool, if any is in use. ### Returns -`Promise`\<`null` | [`ToolType`](ToolType.md)> +`Promise`<`null` | [`ToolType`](ToolType.md)> The current tool, or `null` if no tool is in use. @@ -58,16 +58,16 @@ const tool = await felt.getTool(); // "marker", "polygon", etc. ## onToolChange() -> **onToolChange**(`args`: \{ `handler`: (`tool`: `null` | [`ToolType`](ToolType.md)) => `void`; }): `VoidFunction` +> **onToolChange**(`args`: { `handler`: (`tool`: `null` | [`ToolType`](ToolType.md)) => `void`; }): `VoidFunction` Listens for changes to the current tool. ### Parameters -| Parameter | Type | Description | -| -------------- | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | -| `args` | \{ `handler`: (`tool`: `null` \| [`ToolType`](ToolType.md)) => `void`; } | - | -| `args.handler` | (`tool`: `null` \| [`ToolType`](ToolType.md)) => `void` | This callback is called with the current tool whenever the tool changes. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `args` | { `handler`: (`tool`: `null` | [`ToolType`](ToolType.md)) => `void`; } | - | +| `args.handler` | (`tool`: `null` | [`ToolType`](ToolType.md)) => `void` | This callback is called with the current tool whenever the tool changes. | ### Returns @@ -96,8 +96,8 @@ Sets the settings for the current tool. ### Parameters -| Parameter | Type | Description | -| ---------- | ------------------------------------------- | -------------------- | +| Parameter | Type | Description | +| ------ | ------ | ------ | | `settings` | [`InputToolSettings`](InputToolSettings.md) | The settings to set. | ### Returns @@ -118,25 +118,25 @@ await felt.setToolSettings({ ## getToolSettings() -> **getToolSettings**\<`T`>(`tool`: `T`): `Promise`\<[`ToolSettingsMap`](ToolSettingsMap.md)\[`T`]> +> **getToolSettings**<`T`>(`tool`: `T`): `Promise`<[`ToolSettingsMap`](ToolSettingsMap.md)\[`T`]> Gets the settings for the chosen tool ### Type Parameters -| Type Parameter | -| --------------------------------------------------------------- | +| Type Parameter | +| ------ | | `T` *extends* [`ConfigurableToolType`](ConfigurableToolType.md) | ### Parameters | Parameter | Type | -| --------- | ---- | -| `tool` | `T` | +| ------ | ------ | +| `tool` | `T` | ### Returns -`Promise`\<[`ToolSettingsMap`](ToolSettingsMap.md)\[`T`]> +`Promise`<[`ToolSettingsMap`](ToolSettingsMap.md)\[`T`]> The settings for the chosen tool. @@ -150,16 +150,16 @@ const settings = await felt.getToolSettings("marker"); ## onToolSettingsChange() -> **onToolSettingsChange**(`args`: \{ `handler`: (`settings`: [`ToolSettingsChangeEvent`](ToolSettingsChangeEvent.md)) => `void`; }): `VoidFunction` +> **onToolSettingsChange**(`args`: { `handler`: (`settings`: [`ToolSettingsChangeEvent`](ToolSettingsChangeEvent.md)) => `void`; }): `VoidFunction` Listens for changes to the settings on all tools. ### Parameters -| Parameter | Type | -| -------------- | ------------------------------------------------------------------------------------------------ | -| `args` | \{ `handler`: (`settings`: [`ToolSettingsChangeEvent`](ToolSettingsChangeEvent.md)) => `void`; } | -| `args.handler` | (`settings`: [`ToolSettingsChangeEvent`](ToolSettingsChangeEvent.md)) => `void` | +| Parameter | Type | +| ------ | ------ | +| `args` | { `handler`: (`settings`: [`ToolSettingsChangeEvent`](ToolSettingsChangeEvent.md)) => `void`; } | +| `args.handler` | (`settings`: [`ToolSettingsChangeEvent`](ToolSettingsChangeEvent.md)) => `void` | ### Returns diff --git a/docs/UI.md b/docs/UI.md new file mode 100644 index 00000000..8d91c4a0 --- /dev/null +++ b/docs/UI.md @@ -0,0 +1,34 @@ +*** + +The UI part of the Felt SDK allows you to enable and disable certain +UI features such as the legend and the full screen button. + +# Controller + +* [UiController](UI/UiController.md) + +# Interfaces + +* [CreateActionTriggerParams](UI/CreateActionTriggerParams.md) +* [UpdateActionTriggerParams](UI/UpdateActionTriggerParams.md) +* [CreatePanelParams](UI/CreatePanelParams.md) +* [UpdatePanelParams](UI/UpdatePanelParams.md) +* [CreatePanelElementsParams](UI/CreatePanelElementsParams.md) +* [UpdatePanelElementsParams](UI/UpdatePanelElementsParams.md) +* [DeletePanelElementsParams](UI/DeletePanelElementsParams.md) +* [UiControlsOptions](UI/UiControlsOptions.md) +* [OnMapInteractionsOptions](UI/OnMapInteractionsOptions.md) +* [UIActionTriggerCreate](UI/UIActionTriggerCreate.md) +* [UIButtonElementCreate](UI/UIButtonElementCreate.md) +* [UIButtonGroupElementCreate](UI/UIButtonGroupElementCreate.md) +* [UIDividerElementCreate](UI/UIDividerElementCreate.md) +* [UIFlexibleSpaceElementCreate](UI/UIFlexibleSpaceElementCreate.md) +* [UIPanelCreate](UI/UIPanelCreate.md) +* [UISelectElementCreate](UI/UISelectElementCreate.md) +* [UITextElementCreate](UI/UITextElementCreate.md) +* [UITextInputElementCreate](UI/UITextInputElementCreate.md) + +# Type Aliases + +* [UIPanelElementsCreate](UI/UIPanelElementsCreate.md) +* [PlacementForUIElement](UI/PlacementForUIElement.md) diff --git a/docs/UI/CreateActionTriggerParams.md b/docs/UI/CreateActionTriggerParams.md index 3b90dde5..b42b251d 100644 --- a/docs/UI/CreateActionTriggerParams.md +++ b/docs/UI/CreateActionTriggerParams.md @@ -10,4 +10,4 @@ ## placement? -> `optional` **placement**: \{ `after`: `string`; } | \{ `before`: `string`; } | \{ `at`: `"start"` | `"end"`; } +> `optional` **placement**: { `after`: `string`; } | { `before`: `string`; } | { `at`: `"start"` | `"end"`; } diff --git a/docs/UI/CreatePanelElementsParams.md b/docs/UI/CreatePanelElementsParams.md index 935000c1..55961dd8 100644 --- a/docs/UI/CreatePanelElementsParams.md +++ b/docs/UI/CreatePanelElementsParams.md @@ -10,10 +10,10 @@ ## elements -> **elements**: \{ `element`: [`UIFlexibleSpaceElementCreate`](UIFlexibleSpaceElementCreate.md) | [`UIPanelElementsCreate`](UIPanelElementsCreate.md); `container`: `"footer"` | `"body"` | \{ `id`: `string`; }; `placement`: \{ `after`: `string`; } | \{ `before`: `string`; } | \{ `at`: `"start"` | `"end"`; }; }\[] +> **elements**: { `element`: [`UIFlexibleSpaceElementCreate`](UIFlexibleSpaceElementCreate.md) | [`UIPanelElementsCreate`](UIPanelElementsCreate.md); `container?`: `"footer"` | `"body"` | { `id`: `string`; }; `placement?`: { `after`: `string`; } | { `before`: `string`; } | { `at`: `"start"` | `"end"`; }; }\[] -| Name | Type | Description | -| ------------ | ------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `element` | [`UIFlexibleSpaceElementCreate`](UIFlexibleSpaceElementCreate.md) \| [`UIPanelElementsCreate`](UIPanelElementsCreate.md) | - | -| `container`? | `"footer"` \| `"body"` \| \{ `id`: `string`; } | The section of the panel to add the element to. It can be either one of the top-level sections of the panel (`"body"` or `"footer"`) or a specific container (like `ButtonGroup`) in the panel (`{ id: string }`). | -| `placement`? | \{ `after`: `string`; } \| \{ `before`: `string`; } \| \{ `at`: `"start"` \| `"end"`; } | The placement of the element in the target container (based on the `container` property). | +| Name | Type | Description | +| ------ | ------ | ------ | +| `element` | [`UIFlexibleSpaceElementCreate`](UIFlexibleSpaceElementCreate.md) | [`UIPanelElementsCreate`](UIPanelElementsCreate.md) | - | +| `container?` | `"footer"` | `"body"` | { `id`: `string`; } | The section of the panel to add the element to. It can be either one of the top-level sections of the panel (`"body"` or `"footer"`) or a specific container (like `ButtonGroup`) in the panel (`{ id: string }`). | +| `placement?` | { `after`: `string`; } | { `before`: `string`; } | { `at`: `"start"` | `"end"`; } | The placement of the element in the target container (based on the `container` property). | diff --git a/docs/UI/CreatePanelParams.md b/docs/UI/CreatePanelParams.md index 473da77b..ca9ee223 100644 --- a/docs/UI/CreatePanelParams.md +++ b/docs/UI/CreatePanelParams.md @@ -14,7 +14,7 @@ The panel to add. ## placement? -> `optional` **placement**: \{ `after`: `string`; } | \{ `before`: `string`; } | \{ `at`: `"start"` | `"end"`; } +> `optional` **placement**: { `after`: `string`; } | { `before`: `string`; } | { `at`: `"start"` | `"end"`; } The placement of the panel on the right sidebar stack. diff --git a/docs/UI/PlacementForUIElement.md b/docs/UI/PlacementForUIElement.md index 9e6262b3..c6c453be 100644 --- a/docs/UI/PlacementForUIElement.md +++ b/docs/UI/PlacementForUIElement.md @@ -1,6 +1,6 @@ *** -> **PlacementForUIElement**: \{ `after`: `string`; } | \{ `before`: `string`; } | \{ `at`: `"start"` | `"end"`; } +> **PlacementForUIElement** = { `after`: `string`; } | { `before`: `string`; } | { `at`: `"start"` | `"end"`; } Used in [UiController.createPanel](UiController.md#createpanel) to specify the position of a panel in the stack and in [UiController.createPanelElements](UiController.md#createpanelelements) to specify the position of an element in a panel. diff --git a/docs/UI/README.md b/docs/UI/README.md deleted file mode 100644 index 7a14a5ca..00000000 --- a/docs/UI/README.md +++ /dev/null @@ -1,34 +0,0 @@ -*** - -The UI part of the Felt SDK allows you to enable and disable certain -UI features such as the legend and the full screen button. - -# Controller - -* [UiController](UiController.md) - -# Interfaces - -* [CreateActionTriggerParams](CreateActionTriggerParams.md) -* [UpdateActionTriggerParams](UpdateActionTriggerParams.md) -* [CreatePanelParams](CreatePanelParams.md) -* [UpdatePanelParams](UpdatePanelParams.md) -* [CreatePanelElementsParams](CreatePanelElementsParams.md) -* [UpdatePanelElementsParams](UpdatePanelElementsParams.md) -* [DeletePanelElementsParams](DeletePanelElementsParams.md) -* [UiControlsOptions](UiControlsOptions.md) -* [OnMapInteractionsOptions](OnMapInteractionsOptions.md) -* [UIActionTriggerCreate](UIActionTriggerCreate.md) -* [UIButtonElementCreate](UIButtonElementCreate.md) -* [UIButtonGroupElementCreate](UIButtonGroupElementCreate.md) -* [UIDividerElementCreate](UIDividerElementCreate.md) -* [UIFlexibleSpaceElementCreate](UIFlexibleSpaceElementCreate.md) -* [UIPanelCreate](UIPanelCreate.md) -* [UISelectElementCreate](UISelectElementCreate.md) -* [UITextElementCreate](UITextElementCreate.md) -* [UITextInputElementCreate](UITextInputElementCreate.md) - -# Type Aliases - -* [UIPanelElementsCreate](UIPanelElementsCreate.md) -* [PlacementForUIElement](PlacementForUIElement.md) diff --git a/docs/UI/UIPanelCreate.md b/docs/UI/UIPanelCreate.md index 4ac77527..da5ec489 100644 --- a/docs/UI/UIPanelCreate.md +++ b/docs/UI/UIPanelCreate.md @@ -59,8 +59,8 @@ A function to call when the element is created. ### Parameters -| Parameter | Type | Description | -| --------- | ------------ | -------------------------------------------- | +| Parameter | Type | Description | +| ------ | ------ | ------ | | ...`args` | `unknown`\[] | This function doesn't receive any parameters | ### Returns @@ -77,8 +77,8 @@ A function to call when the element is destroyed. ### Parameters -| Parameter | Type | Description | -| --------- | ------------ | -------------------------------------------- | +| Parameter | Type | Description | +| ------ | ------ | ------ | | ...`args` | `unknown`\[] | This function doesn't receive any parameters | ### Returns diff --git a/docs/UI/UIPanelElementsCreate.md b/docs/UI/UIPanelElementsCreate.md index 24068b5b..480d02f4 100644 --- a/docs/UI/UIPanelElementsCreate.md +++ b/docs/UI/UIPanelElementsCreate.md @@ -1,6 +1,6 @@ *** -> **UIPanelElementsCreate**: [`UITextElementCreate`](UITextElementCreate.md) | [`UIButtonElementCreate`](UIButtonElementCreate.md) | [`UITextInputElementCreate`](UITextInputElementCreate.md) | [`UIDividerElementCreate`](UIDividerElementCreate.md) | [`UIButtonGroupElementCreate`](UIButtonGroupElementCreate.md) | [`UISelectElementCreate`](UISelectElementCreate.md) +> **UIPanelElementsCreate** = [`UITextElementCreate`](UITextElementCreate.md) | [`UIButtonElementCreate`](UIButtonElementCreate.md) | [`UITextInputElementCreate`](UITextInputElementCreate.md) | [`UIDividerElementCreate`](UIDividerElementCreate.md) | [`UIButtonGroupElementCreate`](UIButtonGroupElementCreate.md) | [`UISelectElementCreate`](UISelectElementCreate.md) This is a union of all the possible elements that can be added to a panel. diff --git a/docs/UI/UISelectElementCreate.md b/docs/UI/UISelectElementCreate.md index 31240427..746d68ab 100644 --- a/docs/UI/UISelectElementCreate.md +++ b/docs/UI/UISelectElementCreate.md @@ -16,10 +16,10 @@ This element is used to select a single option from a list of options. ## options -> **options**: \{ `label`: `string`; `value`: `string`; }\[] +> **options**: { `label`: `string`; `value`: `string`; }\[] -| Name | Type | -| ------- | -------- | +| Name | Type | +| ------ | ------ | | `label` | `string` | | `value` | `string` | @@ -27,16 +27,16 @@ This element is used to select a single option from a list of options. ## onChange() -> **onChange**: (`args`: \{ `value`: `string`; }) => `void` +> **onChange**: (`args`: { `value`: `string`; }) => `void` Event handler for when the value of the select changes. ### Parameters -| Parameter | Type | Description | -| ------------ | ----------------------- | ---------------------------- | -| `args` | \{ `value`: `string`; } | | -| `args.value` | `string` | The new value of the select. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `args` | { `value`: `string`; } | | +| `args.value` | `string` | The new value of the select. | ### Returns diff --git a/docs/UI/UITextInputElementCreate.md b/docs/UI/UITextInputElementCreate.md index 97b9c1e6..9930ed88 100644 --- a/docs/UI/UITextInputElementCreate.md +++ b/docs/UI/UITextInputElementCreate.md @@ -28,16 +28,16 @@ The placeholder text to display in the input. ## onChange()? -> `optional` **onChange**: (`args`: \{ `value`: `string`; }) => `void` +> `optional` **onChange**: (`args`: { `value`: `string`; }) => `void` Event handler for when the value of the input changes. ### Parameters -| Parameter | Type | Description | -| ------------ | ----------------------- | --------------------------- | -| `args` | \{ `value`: `string`; } | | -| `args.value` | `string` | The new value of the input. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `args` | { `value`: `string`; } | | +| `args.value` | `string` | The new value of the input. | ### Returns @@ -47,16 +47,16 @@ Event handler for when the value of the input changes. ## onBlur()? -> `optional` **onBlur**: (`args`: \{ `value`: `string`; }) => `void` +> `optional` **onBlur**: (`args`: { `value`: `string`; }) => `void` Event handler for when the input loses focus. ### Parameters -| Parameter | Type | Description | -| ------------ | ----------------------- | ------------------------------------------- | -| `args` | \{ `value`: `string`; } | | -| `args.value` | `string` | The input value when the input loses focus. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `args` | { `value`: `string`; } | | +| `args.value` | `string` | The input value when the input loses focus. | ### Returns @@ -66,16 +66,16 @@ Event handler for when the input loses focus. ## onFocus()? -> `optional` **onFocus**: (`args`: \{ `value`: `string`; }) => `void` +> `optional` **onFocus**: (`args`: { `value`: `string`; }) => `void` Event handler for when the input gains focus. ### Parameters -| Parameter | Type | Description | -| ------------ | ----------------------- | ------------------------------------------- | -| `args` | \{ `value`: `string`; } | | -| `args.value` | `string` | The input value when the input gains focus. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `args` | { `value`: `string`; } | | +| `args.value` | `string` | The input value when the input gains focus. | ### Returns diff --git a/docs/UI/UiController.md b/docs/UI/UiController.md index 21c4f9b1..8f1c9a63 100644 --- a/docs/UI/UiController.md +++ b/docs/UI/UiController.md @@ -24,9 +24,9 @@ by clicking on a button. ### Parameters -| Parameter | Type | Description | -| --------- | ----------------------------------------------------------- | ----------------------------- | -| `args` | [`CreateActionTriggerParams`](CreateActionTriggerParams.md) | The arguments for the method. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `args` | [`CreateActionTriggerParams`](CreateActionTriggerParams.md) | The arguments for the method. | ### Returns @@ -60,9 +60,9 @@ Action trigger to update is identified by the `id` property. ### Parameters -| Parameter | Type | Description | -| --------- | ----------------------------------------------------------- | ----------------------------- | -| `args` | [`UpdateActionTriggerParams`](UpdateActionTriggerParams.md) | The action trigger to update. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `args` | [`UpdateActionTriggerParams`](UpdateActionTriggerParams.md) | The action trigger to update. | ### Returns @@ -91,9 +91,9 @@ Deletes an action trigger. ### Parameters -| Parameter | Type | Description | -| --------- | -------- | --------------------------------------- | -| `id` | `string` | The id of the action trigger to delete. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `id` | `string` | The id of the action trigger to delete. | ### Returns @@ -125,8 +125,8 @@ Panels have two sections: By default, the panel will be added to the end of the stack but you can specify a placement to add it at a specific position in the stack. -Once created, you can add elements to the panel by using the [createPanelElements](UiController.md#createpanelelements) method or -perform partial updates of elements by using the [updatePanelElements](UiController.md#updatepanelelements) method. +Once created, you can add elements to the panel by using the [createPanelElements](#createpanelelements) method or +perform partial updates of elements by using the [updatePanelElements](#updatepanelelements) method. When adding a panel, its id is optional as well as its elements' ids. It is recommended to provide an id for the panel and its elements to make @@ -134,9 +134,9 @@ it easier to update or delete them later. ### Parameters -| Parameter | Type | Description | -| --------- | ------------------------------------------- | ----------------------------- | -| `args` | [`CreatePanelParams`](CreatePanelParams.md) | The arguments for the method. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `args` | [`CreatePanelParams`](CreatePanelParams.md) | The arguments for the method. | ### Returns @@ -186,9 +186,9 @@ Panel to update is identified by the `id` property. ### Parameters -| Parameter | Type | Description | -| --------- | ------------------------------------------- | -------------------- | -| `panel` | [`UpdatePanelParams`](UpdatePanelParams.md) | The panel to update. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `panel` | [`UpdatePanelParams`](UpdatePanelParams.md) | The panel to update. | ### Returns @@ -199,7 +199,7 @@ Panel to update is identified by the `id` property. Properties provided will override the existing properties. Override is done at Panel level, so if you want to update a specific element, you need to provide the entire element. For partial updates of elements, use -[updatePanelElements](UiController.md#updatepanelelements) instead. +[updatePanelElements](#updatepanelelements) instead. ### Example @@ -220,9 +220,9 @@ Deletes a panel. ### Parameters -| Parameter | Type | Description | -| --------- | -------- | ------------------------------ | -| `id` | `string` | The id of the panel to delete. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `id` | `string` | The id of the panel to delete. | ### Returns @@ -244,9 +244,9 @@ Creates elements in a panel. ### Parameters -| Parameter | Type | Description | -| --------- | ----------------------------------------------------------- | ----------------------------- | -| `args` | [`CreatePanelElementsParams`](CreatePanelElementsParams.md) | The arguments for the method. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `args` | [`CreatePanelElementsParams`](CreatePanelElementsParams.md) | The arguments for the method. | ### Returns @@ -277,9 +277,9 @@ Updates an element in a panel. ### Parameters -| Parameter | Type | Description | -| --------- | ----------------------------------------------------------- | ----------------------------- | -| `args` | [`UpdatePanelElementsParams`](UpdatePanelElementsParams.md) | The arguments for the method. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `args` | [`UpdatePanelElementsParams`](UpdatePanelElementsParams.md) | The arguments for the method. | ### Returns @@ -306,9 +306,9 @@ Deletes elements from a panel. ### Parameters -| Parameter | Type | Description | -| --------- | ----------------------------------------------------------- | ----------------------------- | -| `args` | [`DeletePanelElementsParams`](DeletePanelElementsParams.md) | The arguments for the method. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `args` | [`DeletePanelElementsParams`](DeletePanelElementsParams.md) | The arguments for the method. | ### Returns @@ -333,8 +333,8 @@ Updates the UI controls on the embedded map. ### Parameters -| Parameter | Type | Description | -| ---------- | ------------------------------------------- | ----------------------- | +| Parameter | Type | Description | +| ------ | ------ | ------ | | `controls` | [`UiControlsOptions`](UiControlsOptions.md) | The controls to update. | ### Returns @@ -375,8 +375,8 @@ will still be selected when clicked. ### Parameters -| Parameter | Type | -| --------- | --------------------------------------------------------- | +| Parameter | Type | +| ------ | ------ | | `options` | [`OnMapInteractionsOptions`](OnMapInteractionsOptions.md) | ### Returns @@ -397,21 +397,21 @@ await felt.setOnMapInteractionsUi({ ## showLayerDataTable() -> **showLayerDataTable**(`params`?: \{ `layerId`: `string`; `sorting`: [`SortConfig`](../Shared/SortConfig.md); }): `Promise`\<`void`> +> **showLayerDataTable**(`params?`: { `layerId`: `string`; `sorting?`: [`SortConfig`](../Shared/SortConfig.md); }): `Promise`<`void`> Shows a data table view for the specified layer, optionally sorted by a given attribute. ### Parameters -| Parameter | Type | -| ----------------- | ----------------------------------------------------------------------------- | -| `params`? | \{ `layerId`: `string`; `sorting`: [`SortConfig`](../Shared/SortConfig.md); } | -| `params.layerId`? | `string` | -| `params.sorting`? | [`SortConfig`](../Shared/SortConfig.md) | +| Parameter | Type | +| ------ | ------ | +| `params?` | { `layerId`: `string`; `sorting?`: [`SortConfig`](../Shared/SortConfig.md); } | +| `params.layerId?` | `string` | +| `params.sorting?` | [`SortConfig`](../Shared/SortConfig.md) | ### Returns -`Promise`\<`void`> +`Promise`<`void`> ### Example @@ -438,13 +438,13 @@ await felt.showLayerDataTable(); ## hideLayerDataTable() -> **hideLayerDataTable**(): `Promise`\<`void`> +> **hideLayerDataTable**(): `Promise`<`void`> Hides the data table. ### Returns -`Promise`\<`void`> +`Promise`<`void`> ### Example diff --git a/docs/UI/UpdatePanelElementsParams.md b/docs/UI/UpdatePanelElementsParams.md index a1859bb9..fffd1a7e 100644 --- a/docs/UI/UpdatePanelElementsParams.md +++ b/docs/UI/UpdatePanelElementsParams.md @@ -12,6 +12,6 @@ The ID of the panel to update. ## elements -> **elements**: `Record`\<`string`, [`UIFlexibleSpaceElementCreate`](UIFlexibleSpaceElementCreate.md) | [`UIPanelElementsCreate`](UIPanelElementsCreate.md)> +> **elements**: `Record`<`string`, [`UIPanelElementsCreate`](UIPanelElementsCreate.md) | [`UIFlexibleSpaceElementCreate`](UIFlexibleSpaceElementCreate.md)> Dictionary of element IDs to the element to update. diff --git a/docs/UI/UpdatePanelParams.md b/docs/UI/UpdatePanelParams.md index 9e4a3c95..45cd28ef 100644 --- a/docs/UI/UpdatePanelParams.md +++ b/docs/UI/UpdatePanelParams.md @@ -20,8 +20,8 @@ ### Parameters -| Parameter | Type | -| --------- | ------------ | +| Parameter | Type | +| ------ | ------ | | ...`args` | `unknown`\[] | ### Returns @@ -36,8 +36,8 @@ ### Parameters -| Parameter | Type | -| --------- | ------------ | +| Parameter | Type | +| ------ | ------ | | ...`args` | `unknown`\[] | ### Returns @@ -58,8 +58,8 @@ ### Parameters -| Parameter | Type | -| --------- | ------------ | +| Parameter | Type | +| ------ | ------ | | ...`args` | `unknown`\[] | ### Returns diff --git a/docs/Viewport.md b/docs/Viewport.md new file mode 100644 index 00000000..84adc654 --- /dev/null +++ b/docs/Viewport.md @@ -0,0 +1,16 @@ +*** + +The Viewport module allows you to control the viewport of the map, such as setting the +current viewport, getting the current viewport, and being notified when the viewport changes. + +# Controller + +* [ViewportController](Viewport/ViewportController.md) + +# Types + +* [ViewportCenterZoom](Viewport/ViewportCenterZoom.md) +* [ViewportState](Viewport/ViewportState.md) +* [SetViewportCenterZoomParams](Viewport/SetViewportCenterZoomParams.md) +* [ViewportConstraints](Viewport/ViewportConstraints.md) +* [ViewportFitBoundsParams](Viewport/ViewportFitBoundsParams.md) diff --git a/docs/Viewport/README.md b/docs/Viewport/README.md deleted file mode 100644 index 30638a91..00000000 --- a/docs/Viewport/README.md +++ /dev/null @@ -1,16 +0,0 @@ -*** - -The Viewport module allows you to control the viewport of the map, such as setting the -current viewport, getting the current viewport, and being notified when the viewport changes. - -# Controller - -* [ViewportController](ViewportController.md) - -# Types - -* [ViewportCenterZoom](ViewportCenterZoom.md) -* [ViewportState](ViewportState.md) -* [SetViewportCenterZoomParams](SetViewportCenterZoomParams.md) -* [ViewportConstraints](ViewportConstraints.md) -* [ViewportFitBoundsParams](ViewportFitBoundsParams.md) diff --git a/docs/Viewport/SetViewportCenterZoomParams.md b/docs/Viewport/SetViewportCenterZoomParams.md index 30e1141a..da3da952 100644 --- a/docs/Viewport/SetViewportCenterZoomParams.md +++ b/docs/Viewport/SetViewportCenterZoomParams.md @@ -6,12 +6,12 @@ The parameters for the [\`setViewport\`](ViewportController.md#setviewport) meth ## center? -> `optional` **center**: \{ `latitude`: `number`; `longitude`: `number`; } +> `optional` **center**: { `latitude`: `number`; `longitude`: `number`; } -| Name | Type | Default value | -| ----------- | -------- | ------------- | -| `latitude` | `number` | Latitude | -| `longitude` | `number` | Longitude | +| Name | Type | Default value | +| ------ | ------ | ------ | +| `latitude` | `number` | `Latitude` | +| `longitude` | `number` | `Longitude` | *** diff --git a/docs/Viewport/ViewportController.md b/docs/Viewport/ViewportController.md index 7d0dfc0f..fd2bf3a1 100644 --- a/docs/Viewport/ViewportController.md +++ b/docs/Viewport/ViewportController.md @@ -13,13 +13,13 @@ the viewport changes. ## getViewport() -> **getViewport**(): `Promise`\<[`ViewportState`](ViewportState.md)> +> **getViewport**(): `Promise`<[`ViewportState`](ViewportState.md)> Gets the current state of the viewport. ### Returns -`Promise`\<[`ViewportState`](ViewportState.md)> +`Promise`<[`ViewportState`](ViewportState.md)> ### Example @@ -42,8 +42,8 @@ Moves the map to the specified location. ### Parameters -| Parameter | Type | -| ---------- | --------------------------------------------------------------- | +| Parameter | Type | +| ------ | ------ | | `viewport` | [`SetViewportCenterZoomParams`](SetViewportCenterZoomParams.md) | ### Returns @@ -63,13 +63,13 @@ felt.setViewport({ ## getViewportConstraints() -> **getViewportConstraints**(): `Promise`\<`null` | [`ViewportConstraints`](ViewportConstraints.md)> +> **getViewportConstraints**(): `Promise`<`null` | [`ViewportConstraints`](ViewportConstraints.md)> Gets the current state of the viewport constraints. ### Returns -`Promise`\<`null` | [`ViewportConstraints`](ViewportConstraints.md)> +`Promise`<`null` | [`ViewportConstraints`](ViewportConstraints.md)> ### Example @@ -91,15 +91,15 @@ if (constraints) { ## setViewportConstraints() -> **setViewportConstraints**(`constraints`: `null` | `Partial`\<[`ViewportConstraints`](ViewportConstraints.md)>): `void` +> **setViewportConstraints**(`constraints`: `null` | `Partial`<[`ViewportConstraints`](ViewportConstraints.md)>): `void` Constrains the map viewport so it stays inside certain bounds and/or certain zoom levels. ### Parameters -| Parameter | Type | -| ------------- | --------------------------------------------------------------------- | -| `constraints` | `null` \| `Partial`\<[`ViewportConstraints`](ViewportConstraints.md)> | +| Parameter | Type | +| ------ | ------ | +| `constraints` | `null` | `Partial`<[`ViewportConstraints`](ViewportConstraints.md)> | ### Returns @@ -145,9 +145,9 @@ Fits the map to the specified bounds. ### Parameters -| Parameter | Type | -| --------- | ------------------------------------------------------- | -| `bounds` | [`ViewportFitBoundsParams`](ViewportFitBoundsParams.md) | +| Parameter | Type | +| ------ | ------ | +| `bounds` | [`ViewportFitBoundsParams`](ViewportFitBoundsParams.md) | ### Returns @@ -167,16 +167,16 @@ felt.fitViewportToBounds({ bounds: [west, south, east, north] }); ## onViewportMove() -> **onViewportMove**(`args`: \{ `handler`: (`viewport`: [`ViewportState`](ViewportState.md)) => `void`; }): `VoidFunction` +> **onViewportMove**(`args`: { `handler`: (`viewport`: [`ViewportState`](ViewportState.md)) => `void`; }): `VoidFunction` Adds a listener for when the viewport changes. ### Parameters -| Parameter | Type | Description | -| -------------- | ---------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -| `args` | \{ `handler`: (`viewport`: [`ViewportState`](ViewportState.md)) => `void`; } | - | -| `args.handler` | (`viewport`: [`ViewportState`](ViewportState.md)) => `void` | This callback is called with the current viewport state whenever the viewport changes. | +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `args` | { `handler`: (`viewport`: [`ViewportState`](ViewportState.md)) => `void`; } | - | +| `args.handler` | (`viewport`: [`ViewportState`](ViewportState.md)) => `void` | This callback is called with the current viewport state whenever the viewport changes. | ### Returns @@ -199,7 +199,7 @@ unsubscribe(); ## onViewportMoveEnd() -> **onViewportMoveEnd**(`args`: \{ `handler`: (`viewport`: [`ViewportState`](ViewportState.md)) => `void`; }): `VoidFunction` +> **onViewportMoveEnd**(`args`: { `handler`: (`viewport`: [`ViewportState`](ViewportState.md)) => `void`; }): `VoidFunction` Adds a listener for when the viewport move ends, which is when the user stops dragging or zooming the map, animations have finished, or inertial @@ -207,10 +207,10 @@ dragging ends. ### Parameters -| Parameter | Type | -| -------------- | ---------------------------------------------------------------------------- | -| `args` | \{ `handler`: (`viewport`: [`ViewportState`](ViewportState.md)) => `void`; } | -| `args.handler` | (`viewport`: [`ViewportState`](ViewportState.md)) => `void` | +| Parameter | Type | +| ------ | ------ | +| `args` | { `handler`: (`viewport`: [`ViewportState`](ViewportState.md)) => `void`; } | +| `args.handler` | (`viewport`: [`ViewportState`](ViewportState.md)) => `void` | ### Returns @@ -233,7 +233,7 @@ unsubscribe(); ## onMapIdle() -> **onMapIdle**(`args`: \{ `handler`: () => `void`; }): `VoidFunction` +> **onMapIdle**(`args`: { `handler`: () => `void`; }): `VoidFunction` Adds a listener for when the map is idle, which is defined as: @@ -244,10 +244,10 @@ Adds a listener for when the map is idle, which is defined as: ### Parameters -| Parameter | Type | -| -------------- | ----------------------------- | -| `args` | \{ `handler`: () => `void`; } | -| `args.handler` | () => `void` | +| Parameter | Type | +| ------ | ------ | +| `args` | { `handler`: () => `void`; } | +| `args.handler` | () => `void` | ### Returns diff --git a/package-lock.json b/package-lock.json index 931ba28a..5d2c88d0 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,25 +9,25 @@ "version": "1.6.0", "license": "MIT", "devDependencies": { - "@arethetypeswrong/cli": "^0.17.4", - "@changesets/cli": "^2.27.9", - "@microsoft/api-extractor": "^7.47.9", - "@types/node": "^22.7.4", + "@arethetypeswrong/cli": "^0.18.1", + "@changesets/cli": "^2.29.4", + "@microsoft/api-extractor": "^7.52.8", + "@types/node": "^22.15.30", "dtsroll": "^1.4.1", - "happy-dom": "^15.7.4", - "knip": "^5.31.0", + "happy-dom": "^17.6.3", + "knip": "^5.60.2", "patch-package": "^8.0.0", - "prettier": "^3.3.3", + "prettier": "^3.5.3", "prettier-plugin-organize-imports": "^4.1.0", - "tsup": "^8.3.0", - "typedoc": "^0.27.6", - "typedoc-plugin-markdown": "^4.4.1", - "typedoc-plugin-remark": "^1.2.4", - "typedoc-plugin-zod": "^1.3.1", - "typescript": "^5.6.2", - "vite-tsconfig-paths": "^5.0.1", - "vitest": "^2.1.2", - "zod": "^3.23.8" + "tsup": "^8.5.0", + "typedoc": "^0.28.5", + "typedoc-plugin-markdown": "^4.6.4", + "typedoc-plugin-remark": "^2.0.1", + "typedoc-plugin-zod": "^1.4.1", + "typescript": "^5.8.3", + "vite-tsconfig-paths": "^5.1.4", + "vitest": "^3.2.2", + "zod": "^3.25.55" }, "optionalDependencies": { "zod": "^3.23.8" @@ -40,12 +40,12 @@ "dev": true }, "node_modules/@arethetypeswrong/cli": { - "version": "0.17.4", - "resolved": "https://registry.npmjs.org/@arethetypeswrong/cli/-/cli-0.17.4.tgz", - "integrity": "sha512-AeiKxtf67XD/NdOqXgBOE5TZWH3EOCt+0GkbUpekOzngc+Q/cRZ5azjWyMxISxxfp0EItgm5NoSld9p7BAA5xQ==", + "version": "0.18.1", + "resolved": "https://registry.npmjs.org/@arethetypeswrong/cli/-/cli-0.18.1.tgz", + "integrity": "sha512-SS1Z5gRSvbP4tl98KlNygSUp3Yfenktt782MQKEbYm6GFPowztnnvdEUhQGm2uVDIH4YkU6av+n8Lm6OEOigqA==", "dev": true, "dependencies": { - "@arethetypeswrong/core": "0.17.4", + "@arethetypeswrong/core": "0.18.1", "chalk": "^4.1.2", "cli-table3": "^0.6.3", "commander": "^10.0.1", @@ -57,34 +57,28 @@ "attw": "dist/index.js" }, "engines": { - "node": ">=18" + "node": ">=20" } }, "node_modules/@arethetypeswrong/core": { - "version": "0.17.4", - "resolved": "https://registry.npmjs.org/@arethetypeswrong/core/-/core-0.17.4.tgz", - "integrity": "sha512-Izvir8iIoU+X4SKtDAa5kpb+9cpifclzsbA8x/AZY0k0gIfXYQ1fa1B6Epfe6vNA2YfDX8VtrZFgvnXB6aPEoQ==", + "version": "0.18.1", + "resolved": "https://registry.npmjs.org/@arethetypeswrong/core/-/core-0.18.1.tgz", + "integrity": "sha512-uUw47cLgB6zYOpAxFp94NG/J9ev0wcOC+UOmTCFEWtbDEn4vpR0ScoPxD7LCGcPczOd7bDJSJL/gMSz3BknYcw==", "dev": true, "dependencies": { "@andrewbranch/untar.js": "^1.0.3", "@loaderkit/resolve": "^1.0.2", "cjs-module-lexer": "^1.2.3", "fflate": "^0.8.2", - "lru-cache": "^10.4.3", + "lru-cache": "^11.0.1", "semver": "^7.5.4", "typescript": "5.6.1-rc", "validate-npm-package-name": "^5.0.0" }, "engines": { - "node": ">=18" + "node": ">=20" } }, - "node_modules/@arethetypeswrong/core/node_modules/lru-cache": { - "version": "10.4.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", - "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", - "dev": true - }, "node_modules/@arethetypeswrong/core/node_modules/typescript": { "version": "5.6.1-rc", "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.6.1-rc.tgz", @@ -124,34 +118,31 @@ } }, "node_modules/@babel/runtime": { - "version": "7.25.6", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.25.6.tgz", - "integrity": "sha512-VBj9MYyDb9tuLq7yzqjgzt6Q+IBQLrGZfdjOekyEirZPHxXWoTSGUTMrpsfi58Up73d13NfYLv8HT9vmznjzhQ==", + "version": "7.27.6", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.27.6.tgz", + "integrity": "sha512-vbavdySgbTTrmFE+EsiqUTzlOr5bzlnJtUv9PynGCAKvfQqjIXbvFdumPM/GxMDfyuGMJaJAU6TO4zc1Jf1i8Q==", "dev": true, - "dependencies": { - "regenerator-runtime": "^0.14.0" - }, "engines": { "node": ">=6.9.0" } }, "node_modules/@braidai/lang": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@braidai/lang/-/lang-1.1.0.tgz", - "integrity": "sha512-xyJYkiyNQtTyCLeHxZmOs7rnB94D+N1IjKNArQIh8+8lTBOY7TFgwEV+Ow5a1uaBi5j2w9fLbWcJFTWLDItl5g==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@braidai/lang/-/lang-1.1.1.tgz", + "integrity": "sha512-5uM+no3i3DafVgkoW7ayPhEGHNNBZCSj5TrGDQt0ayEKQda5f3lAXlmQg0MR5E0gKgmTzUUEtSWHsEC3h9jUcg==", "dev": true }, "node_modules/@changesets/apply-release-plan": { - "version": "7.0.5", - "resolved": "https://registry.npmjs.org/@changesets/apply-release-plan/-/apply-release-plan-7.0.5.tgz", - "integrity": "sha512-1cWCk+ZshEkSVEZrm2fSj1Gz8sYvxgUL4Q78+1ZZqeqfuevPTPk033/yUZ3df8BKMohkqqHfzj0HOOrG0KtXTw==", + "version": "7.0.12", + "resolved": "https://registry.npmjs.org/@changesets/apply-release-plan/-/apply-release-plan-7.0.12.tgz", + "integrity": "sha512-EaET7As5CeuhTzvXTQCRZeBUcisoYPDDcXvgTE/2jmmypKp0RC7LxKj/yzqeh/1qFTZI7oDGFcL1PHRuQuketQ==", "dev": true, "dependencies": { - "@changesets/config": "^3.0.3", + "@changesets/config": "^3.1.1", "@changesets/get-version-range-type": "^0.4.0", - "@changesets/git": "^3.0.1", - "@changesets/should-skip-package": "^0.1.1", - "@changesets/types": "^6.0.0", + "@changesets/git": "^3.0.4", + "@changesets/should-skip-package": "^0.1.2", + "@changesets/types": "^6.1.0", "@manypkg/get-packages": "^1.1.3", "detect-indent": "^6.0.0", "fs-extra": "^7.0.1", @@ -178,52 +169,52 @@ } }, "node_modules/@changesets/assemble-release-plan": { - "version": "6.0.4", - "resolved": "https://registry.npmjs.org/@changesets/assemble-release-plan/-/assemble-release-plan-6.0.4.tgz", - "integrity": "sha512-nqICnvmrwWj4w2x0fOhVj2QEGdlUuwVAwESrUo5HLzWMI1rE5SWfsr9ln+rDqWB6RQ2ZyaMZHUcU7/IRaUJS+Q==", + "version": "6.0.8", + "resolved": "https://registry.npmjs.org/@changesets/assemble-release-plan/-/assemble-release-plan-6.0.8.tgz", + "integrity": "sha512-y8+8LvZCkKJdbUlpXFuqcavpzJR80PN0OIfn8HZdwK7Sh6MgLXm4hKY5vu6/NDoKp8lAlM4ERZCqRMLxP4m+MQ==", "dev": true, "dependencies": { "@changesets/errors": "^0.2.0", - "@changesets/get-dependents-graph": "^2.1.2", - "@changesets/should-skip-package": "^0.1.1", - "@changesets/types": "^6.0.0", + "@changesets/get-dependents-graph": "^2.1.3", + "@changesets/should-skip-package": "^0.1.2", + "@changesets/types": "^6.1.0", "@manypkg/get-packages": "^1.1.3", "semver": "^7.5.3" } }, "node_modules/@changesets/changelog-git": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/@changesets/changelog-git/-/changelog-git-0.2.0.tgz", - "integrity": "sha512-bHOx97iFI4OClIT35Lok3sJAwM31VbUM++gnMBV16fdbtBhgYu4dxsphBF/0AZZsyAHMrnM0yFcj5gZM1py6uQ==", + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/@changesets/changelog-git/-/changelog-git-0.2.1.tgz", + "integrity": "sha512-x/xEleCFLH28c3bQeQIyeZf8lFXyDFVn1SgcBiR2Tw/r4IAWlk1fzxCEZ6NxQAjF2Nwtczoen3OA2qR+UawQ8Q==", "dev": true, "dependencies": { - "@changesets/types": "^6.0.0" + "@changesets/types": "^6.1.0" } }, "node_modules/@changesets/cli": { - "version": "2.27.9", - "resolved": "https://registry.npmjs.org/@changesets/cli/-/cli-2.27.9.tgz", - "integrity": "sha512-q42a/ZbDnxPpCb5Wkm6tMVIxgeI9C/bexntzTeCFBrQEdpisQqk8kCHllYZMDjYtEc1ZzumbMJAG8H0Z4rdvjg==", + "version": "2.29.4", + "resolved": "https://registry.npmjs.org/@changesets/cli/-/cli-2.29.4.tgz", + "integrity": "sha512-VW30x9oiFp/un/80+5jLeWgEU6Btj8IqOgI+X/zAYu4usVOWXjPIK5jSSlt5jsCU7/6Z7AxEkarxBxGUqkAmNg==", "dev": true, "dependencies": { - "@changesets/apply-release-plan": "^7.0.5", - "@changesets/assemble-release-plan": "^6.0.4", - "@changesets/changelog-git": "^0.2.0", - "@changesets/config": "^3.0.3", + "@changesets/apply-release-plan": "^7.0.12", + "@changesets/assemble-release-plan": "^6.0.8", + "@changesets/changelog-git": "^0.2.1", + "@changesets/config": "^3.1.1", "@changesets/errors": "^0.2.0", - "@changesets/get-dependents-graph": "^2.1.2", - "@changesets/get-release-plan": "^4.0.4", - "@changesets/git": "^3.0.1", + "@changesets/get-dependents-graph": "^2.1.3", + "@changesets/get-release-plan": "^4.0.12", + "@changesets/git": "^3.0.4", "@changesets/logger": "^0.1.1", - "@changesets/pre": "^2.0.1", - "@changesets/read": "^0.6.1", - "@changesets/should-skip-package": "^0.1.1", - "@changesets/types": "^6.0.0", - "@changesets/write": "^0.3.2", + "@changesets/pre": "^2.0.2", + "@changesets/read": "^0.6.5", + "@changesets/should-skip-package": "^0.1.2", + "@changesets/types": "^6.1.0", + "@changesets/write": "^0.4.0", "@manypkg/get-packages": "^1.1.3", "ansi-colors": "^4.1.3", "ci-info": "^3.7.0", - "enquirer": "^2.3.0", + "enquirer": "^2.4.1", "external-editor": "^3.1.0", "fs-extra": "^7.0.1", "mri": "^1.2.0", @@ -232,7 +223,7 @@ "picocolors": "^1.1.0", "resolve-from": "^5.0.0", "semver": "^7.5.3", - "spawndamnit": "^2.0.0", + "spawndamnit": "^3.0.1", "term-size": "^2.1.0" }, "bin": { @@ -240,18 +231,18 @@ } }, "node_modules/@changesets/config": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@changesets/config/-/config-3.0.3.tgz", - "integrity": "sha512-vqgQZMyIcuIpw9nqFIpTSNyc/wgm/Lu1zKN5vECy74u95Qx/Wa9g27HdgO4NkVAaq+BGA8wUc/qvbvVNs93n6A==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@changesets/config/-/config-3.1.1.tgz", + "integrity": "sha512-bd+3Ap2TKXxljCggI0mKPfzCQKeV/TU4yO2h2C6vAihIo8tzseAn2e7klSuiyYYXvgu53zMN1OeYMIQkaQoWnA==", "dev": true, "dependencies": { "@changesets/errors": "^0.2.0", - "@changesets/get-dependents-graph": "^2.1.2", + "@changesets/get-dependents-graph": "^2.1.3", "@changesets/logger": "^0.1.1", - "@changesets/types": "^6.0.0", + "@changesets/types": "^6.1.0", "@manypkg/get-packages": "^1.1.3", "fs-extra": "^7.0.1", - "micromatch": "^4.0.2" + "micromatch": "^4.0.8" } }, "node_modules/@changesets/errors": { @@ -264,28 +255,28 @@ } }, "node_modules/@changesets/get-dependents-graph": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@changesets/get-dependents-graph/-/get-dependents-graph-2.1.2.tgz", - "integrity": "sha512-sgcHRkiBY9i4zWYBwlVyAjEM9sAzs4wYVwJUdnbDLnVG3QwAaia1Mk5P8M7kraTOZN+vBET7n8KyB0YXCbFRLQ==", + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@changesets/get-dependents-graph/-/get-dependents-graph-2.1.3.tgz", + "integrity": "sha512-gphr+v0mv2I3Oxt19VdWRRUxq3sseyUpX9DaHpTUmLj92Y10AGy+XOtV+kbM6L/fDcpx7/ISDFK6T8A/P3lOdQ==", "dev": true, "dependencies": { - "@changesets/types": "^6.0.0", + "@changesets/types": "^6.1.0", "@manypkg/get-packages": "^1.1.3", "picocolors": "^1.1.0", "semver": "^7.5.3" } }, "node_modules/@changesets/get-release-plan": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/@changesets/get-release-plan/-/get-release-plan-4.0.4.tgz", - "integrity": "sha512-SicG/S67JmPTrdcc9Vpu0wSQt7IiuN0dc8iR5VScnnTVPfIaLvKmEGRvIaF0kcn8u5ZqLbormZNTO77bCEvyWw==", + "version": "4.0.12", + "resolved": "https://registry.npmjs.org/@changesets/get-release-plan/-/get-release-plan-4.0.12.tgz", + "integrity": "sha512-KukdEgaafnyGryUwpHG2kZ7xJquOmWWWk5mmoeQaSvZTWH1DC5D/Sw6ClgGFYtQnOMSQhgoEbDxAbpIIayKH1g==", "dev": true, "dependencies": { - "@changesets/assemble-release-plan": "^6.0.4", - "@changesets/config": "^3.0.3", - "@changesets/pre": "^2.0.1", - "@changesets/read": "^0.6.1", - "@changesets/types": "^6.0.0", + "@changesets/assemble-release-plan": "^6.0.8", + "@changesets/config": "^3.1.1", + "@changesets/pre": "^2.0.2", + "@changesets/read": "^0.6.5", + "@changesets/types": "^6.1.0", "@manypkg/get-packages": "^1.1.3" } }, @@ -296,16 +287,16 @@ "dev": true }, "node_modules/@changesets/git": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@changesets/git/-/git-3.0.1.tgz", - "integrity": "sha512-pdgHcYBLCPcLd82aRcuO0kxCDbw/yISlOtkmwmE8Odo1L6hSiZrBOsRl84eYG7DRCab/iHnOkWqExqc4wxk2LQ==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@changesets/git/-/git-3.0.4.tgz", + "integrity": "sha512-BXANzRFkX+XcC1q/d27NKvlJ1yf7PSAgi8JG6dt8EfbHFHi4neau7mufcSca5zRhwOL8j9s6EqsxmT+s+/E6Sw==", "dev": true, "dependencies": { "@changesets/errors": "^0.2.0", "@manypkg/get-packages": "^1.1.3", "is-subdir": "^1.1.1", - "micromatch": "^4.0.2", - "spawndamnit": "^2.0.0" + "micromatch": "^4.0.8", + "spawndamnit": "^3.0.1" } }, "node_modules/@changesets/logger": { @@ -318,67 +309,67 @@ } }, "node_modules/@changesets/parse": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/@changesets/parse/-/parse-0.4.0.tgz", - "integrity": "sha512-TS/9KG2CdGXS27S+QxbZXgr8uPsP4yNJYb4BC2/NeFUj80Rni3TeD2qwWmabymxmrLo7JEsytXH1FbpKTbvivw==", + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/@changesets/parse/-/parse-0.4.1.tgz", + "integrity": "sha512-iwksMs5Bf/wUItfcg+OXrEpravm5rEd9Bf4oyIPL4kVTmJQ7PNDSd6MDYkpSJR1pn7tz/k8Zf2DhTCqX08Ou+Q==", "dev": true, "dependencies": { - "@changesets/types": "^6.0.0", + "@changesets/types": "^6.1.0", "js-yaml": "^3.13.1" } }, "node_modules/@changesets/pre": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@changesets/pre/-/pre-2.0.1.tgz", - "integrity": "sha512-vvBJ/If4jKM4tPz9JdY2kGOgWmCowUYOi5Ycv8dyLnEE8FgpYYUo1mgJZxcdtGGP3aG8rAQulGLyyXGSLkIMTQ==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@changesets/pre/-/pre-2.0.2.tgz", + "integrity": "sha512-HaL/gEyFVvkf9KFg6484wR9s0qjAXlZ8qWPDkTyKF6+zqjBe/I2mygg3MbpZ++hdi0ToqNUF8cjj7fBy0dg8Ug==", "dev": true, "dependencies": { "@changesets/errors": "^0.2.0", - "@changesets/types": "^6.0.0", + "@changesets/types": "^6.1.0", "@manypkg/get-packages": "^1.1.3", "fs-extra": "^7.0.1" } }, "node_modules/@changesets/read": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/@changesets/read/-/read-0.6.1.tgz", - "integrity": "sha512-jYMbyXQk3nwP25nRzQQGa1nKLY0KfoOV7VLgwucI0bUO8t8ZLCr6LZmgjXsiKuRDc+5A6doKPr9w2d+FEJ55zQ==", + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/@changesets/read/-/read-0.6.5.tgz", + "integrity": "sha512-UPzNGhsSjHD3Veb0xO/MwvasGe8eMyNrR/sT9gR8Q3DhOQZirgKhhXv/8hVsI0QpPjR004Z9iFxoJU6in3uGMg==", "dev": true, "dependencies": { - "@changesets/git": "^3.0.1", + "@changesets/git": "^3.0.4", "@changesets/logger": "^0.1.1", - "@changesets/parse": "^0.4.0", - "@changesets/types": "^6.0.0", + "@changesets/parse": "^0.4.1", + "@changesets/types": "^6.1.0", "fs-extra": "^7.0.1", "p-filter": "^2.1.0", "picocolors": "^1.1.0" } }, "node_modules/@changesets/should-skip-package": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@changesets/should-skip-package/-/should-skip-package-0.1.1.tgz", - "integrity": "sha512-H9LjLbF6mMHLtJIc/eHR9Na+MifJ3VxtgP/Y+XLn4BF7tDTEN1HNYtH6QMcjP1uxp9sjaFYmW8xqloaCi/ckTg==", + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/@changesets/should-skip-package/-/should-skip-package-0.1.2.tgz", + "integrity": "sha512-qAK/WrqWLNCP22UDdBTMPH5f41elVDlsNyat180A33dWxuUDyNpg6fPi/FyTZwRriVjg0L8gnjJn2F9XAoF0qw==", "dev": true, "dependencies": { - "@changesets/types": "^6.0.0", + "@changesets/types": "^6.1.0", "@manypkg/get-packages": "^1.1.3" } }, "node_modules/@changesets/types": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/@changesets/types/-/types-6.0.0.tgz", - "integrity": "sha512-b1UkfNulgKoWfqyHtzKS5fOZYSJO+77adgL7DLRDr+/7jhChN+QcHnbjiQVOz/U+Ts3PGNySq7diAItzDgugfQ==", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/@changesets/types/-/types-6.1.0.tgz", + "integrity": "sha512-rKQcJ+o1nKNgeoYRHKOS07tAMNd3YSN0uHaJOZYjBAgxfV7TUE7JE+z4BzZdQwb5hKaYbayKN5KrYV7ODb2rAA==", "dev": true }, "node_modules/@changesets/write": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@changesets/write/-/write-0.3.2.tgz", - "integrity": "sha512-kDxDrPNpUgsjDbWBvUo27PzKX4gqeKOlhibaOXDJA6kuBisGqNHv/HwGJrAu8U/dSf8ZEFIeHIPtvSlZI1kULw==", + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/@changesets/write/-/write-0.4.0.tgz", + "integrity": "sha512-CdTLvIOPiCNuH71pyDu3rA+Q0n65cmAbXnwWH84rKGiFumFzkmHNT8KHTMEchcxN+Kl8I54xGUhJ7l3E7X396Q==", "dev": true, "dependencies": { - "@changesets/types": "^6.0.0", + "@changesets/types": "^6.1.0", "fs-extra": "^7.0.1", - "human-id": "^1.0.2", + "human-id": "^4.1.1", "prettier": "^2.7.1" } }, @@ -407,10 +398,41 @@ "node": ">=0.1.90" } }, + "node_modules/@emnapi/core": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/@emnapi/core/-/core-1.4.3.tgz", + "integrity": "sha512-4m62DuCE07lw01soJwPiBGC0nAww0Q+RY70VZ+n49yDIO13yyinhbWCeNnaob0lakDtWQzSdtNWzJeOJt2ma+g==", + "dev": true, + "optional": true, + "dependencies": { + "@emnapi/wasi-threads": "1.0.2", + "tslib": "^2.4.0" + } + }, + "node_modules/@emnapi/runtime": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.4.3.tgz", + "integrity": "sha512-pBPWdu6MLKROBX05wSNKcNb++m5Er+KQ9QkB+WVM+pW2Kx9hoSrVTnu3BdkI5eBLZoKu/J6mW/B6i6bJB2ytXQ==", + "dev": true, + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@emnapi/wasi-threads": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@emnapi/wasi-threads/-/wasi-threads-1.0.2.tgz", + "integrity": "sha512-5n3nTJblwRi8LlXkJ9eBzu+kZR8Yxcc7ubakyQTFzPMtIhFpUBRbsnc2Dv88IZDIbCDlBiWrknhB4Lsz7mg6BA==", + "dev": true, + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, "node_modules/@esbuild/aix-ppc64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.23.1.tgz", - "integrity": "sha512-6VhYk1diRqrhBAqpJEdjASR/+WVRtfjpqKuNw11cLiaWpAT/Uu+nokB+UJnevzy/P9C/ty6AOe0dwueMrGh/iQ==", + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.25.5.tgz", + "integrity": "sha512-9o3TMmpmftaCMepOdA5k/yDw8SfInyzWWTjYTFCX3kPSDJMROQTb8jg+h9Cnwnmm1vOzvxN7gIfB5V2ewpjtGA==", "cpu": [ "ppc64" ], @@ -424,9 +446,9 @@ } }, "node_modules/@esbuild/android-arm": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.23.1.tgz", - "integrity": "sha512-uz6/tEy2IFm9RYOyvKl88zdzZfwEfKZmnX9Cj1BHjeSGNuGLuMD1kR8y5bteYmwqKm1tj8m4cb/aKEorr6fHWQ==", + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.25.5.tgz", + "integrity": "sha512-AdJKSPeEHgi7/ZhuIPtcQKr5RQdo6OO2IL87JkianiMYMPbCtot9fxPbrMiBADOWWm3T2si9stAiVsGbTQFkbA==", "cpu": [ "arm" ], @@ -440,9 +462,9 @@ } }, "node_modules/@esbuild/android-arm64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.23.1.tgz", - "integrity": "sha512-xw50ipykXcLstLeWH7WRdQuysJqejuAGPd30vd1i5zSyKK3WE+ijzHmLKxdiCMtH1pHz78rOg0BKSYOSB/2Khw==", + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.25.5.tgz", + "integrity": "sha512-VGzGhj4lJO+TVGV1v8ntCZWJktV7SGCs3Pn1GRWI1SBFtRALoomm8k5E9Pmwg3HOAal2VDc2F9+PM/rEY6oIDg==", "cpu": [ "arm64" ], @@ -456,9 +478,9 @@ } }, "node_modules/@esbuild/android-x64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.23.1.tgz", - "integrity": "sha512-nlN9B69St9BwUoB+jkyU090bru8L0NA3yFvAd7k8dNsVH8bi9a8cUAUSEcEEgTp2z3dbEDGJGfP6VUnkQnlReg==", + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.25.5.tgz", + "integrity": "sha512-D2GyJT1kjvO//drbRT3Hib9XPwQeWd9vZoBJn+bu/lVsOZ13cqNdDeqIF/xQ5/VmWvMduP6AmXvylO/PIc2isw==", "cpu": [ "x64" ], @@ -472,9 +494,9 @@ } }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.23.1.tgz", - "integrity": "sha512-YsS2e3Wtgnw7Wq53XXBLcV6JhRsEq8hkfg91ESVadIrzr9wO6jJDMZnCQbHm1Guc5t/CdDiFSSfWP58FNuvT3Q==", + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.25.5.tgz", + "integrity": "sha512-GtaBgammVvdF7aPIgH2jxMDdivezgFu6iKpmT+48+F8Hhg5J/sfnDieg0aeG/jfSvkYQU2/pceFPDKlqZzwnfQ==", "cpu": [ "arm64" ], @@ -488,9 +510,9 @@ } }, "node_modules/@esbuild/darwin-x64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.23.1.tgz", - "integrity": "sha512-aClqdgTDVPSEGgoCS8QDG37Gu8yc9lTHNAQlsztQ6ENetKEO//b8y31MMu2ZaPbn4kVsIABzVLXYLhCGekGDqw==", + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.25.5.tgz", + "integrity": "sha512-1iT4FVL0dJ76/q1wd7XDsXrSW+oLoquptvh4CLR4kITDtqi2e/xwXwdCVH8hVHU43wgJdsq7Gxuzcs6Iq/7bxQ==", "cpu": [ "x64" ], @@ -504,9 +526,9 @@ } }, "node_modules/@esbuild/freebsd-arm64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.23.1.tgz", - "integrity": "sha512-h1k6yS8/pN/NHlMl5+v4XPfikhJulk4G+tKGFIOwURBSFzE8bixw1ebjluLOjfwtLqY0kewfjLSrO6tN2MgIhA==", + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.5.tgz", + "integrity": "sha512-nk4tGP3JThz4La38Uy/gzyXtpkPW8zSAmoUhK9xKKXdBCzKODMc2adkB2+8om9BDYugz+uGV7sLmpTYzvmz6Sw==", "cpu": [ "arm64" ], @@ -520,9 +542,9 @@ } }, "node_modules/@esbuild/freebsd-x64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.23.1.tgz", - "integrity": "sha512-lK1eJeyk1ZX8UklqFd/3A60UuZ/6UVfGT2LuGo3Wp4/z7eRTRYY+0xOu2kpClP+vMTi9wKOfXi2vjUpO1Ro76g==", + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.25.5.tgz", + "integrity": "sha512-PrikaNjiXdR2laW6OIjlbeuCPrPaAl0IwPIaRv+SMV8CiM8i2LqVUHFC1+8eORgWyY7yhQY+2U2fA55mBzReaw==", "cpu": [ "x64" ], @@ -536,9 +558,9 @@ } }, "node_modules/@esbuild/linux-arm": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.23.1.tgz", - "integrity": "sha512-CXXkzgn+dXAPs3WBwE+Kvnrf4WECwBdfjfeYHpMeVxWE0EceB6vhWGShs6wi0IYEqMSIzdOF1XjQ/Mkm5d7ZdQ==", + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.25.5.tgz", + "integrity": "sha512-cPzojwW2okgh7ZlRpcBEtsX7WBuqbLrNXqLU89GxWbNt6uIg78ET82qifUy3W6OVww6ZWobWub5oqZOVtwolfw==", "cpu": [ "arm" ], @@ -552,9 +574,9 @@ } }, "node_modules/@esbuild/linux-arm64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.23.1.tgz", - "integrity": "sha512-/93bf2yxencYDnItMYV/v116zff6UyTjo4EtEQjUBeGiVpMmffDNUyD9UN2zV+V3LRV3/on4xdZ26NKzn6754g==", + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.25.5.tgz", + "integrity": "sha512-Z9kfb1v6ZlGbWj8EJk9T6czVEjjq2ntSYLY2cw6pAZl4oKtfgQuS4HOq41M/BcoLPzrUbNd+R4BXFyH//nHxVg==", "cpu": [ "arm64" ], @@ -568,9 +590,9 @@ } }, "node_modules/@esbuild/linux-ia32": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.23.1.tgz", - "integrity": "sha512-VTN4EuOHwXEkXzX5nTvVY4s7E/Krz7COC8xkftbbKRYAl96vPiUssGkeMELQMOnLOJ8k3BY1+ZY52tttZnHcXQ==", + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.25.5.tgz", + "integrity": "sha512-sQ7l00M8bSv36GLV95BVAdhJ2QsIbCuCjh/uYrWiMQSUuV+LpXwIqhgJDcvMTj+VsQmqAHL2yYaasENvJ7CDKA==", "cpu": [ "ia32" ], @@ -584,9 +606,9 @@ } }, "node_modules/@esbuild/linux-loong64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.23.1.tgz", - "integrity": "sha512-Vx09LzEoBa5zDnieH8LSMRToj7ir/Jeq0Gu6qJ/1GcBq9GkfoEAoXvLiW1U9J1qE/Y/Oyaq33w5p2ZWrNNHNEw==", + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.25.5.tgz", + "integrity": "sha512-0ur7ae16hDUC4OL5iEnDb0tZHDxYmuQyhKhsPBV8f99f6Z9KQM02g33f93rNH5A30agMS46u2HP6qTdEt6Q1kg==", "cpu": [ "loong64" ], @@ -600,9 +622,9 @@ } }, "node_modules/@esbuild/linux-mips64el": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.23.1.tgz", - "integrity": "sha512-nrFzzMQ7W4WRLNUOU5dlWAqa6yVeI0P78WKGUo7lg2HShq/yx+UYkeNSE0SSfSure0SqgnsxPvmAUu/vu0E+3Q==", + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.25.5.tgz", + "integrity": "sha512-kB/66P1OsHO5zLz0i6X0RxlQ+3cu0mkxS3TKFvkb5lin6uwZ/ttOkP3Z8lfR9mJOBk14ZwZ9182SIIWFGNmqmg==", "cpu": [ "mips64el" ], @@ -616,9 +638,9 @@ } }, "node_modules/@esbuild/linux-ppc64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.23.1.tgz", - "integrity": "sha512-dKN8fgVqd0vUIjxuJI6P/9SSSe/mB9rvA98CSH2sJnlZ/OCZWO1DJvxj8jvKTfYUdGfcq2dDxoKaC6bHuTlgcw==", + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.25.5.tgz", + "integrity": "sha512-UZCmJ7r9X2fe2D6jBmkLBMQetXPXIsZjQJCjgwpVDz+YMcS6oFR27alkgGv3Oqkv07bxdvw7fyB71/olceJhkQ==", "cpu": [ "ppc64" ], @@ -632,9 +654,9 @@ } }, "node_modules/@esbuild/linux-riscv64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.23.1.tgz", - "integrity": "sha512-5AV4Pzp80fhHL83JM6LoA6pTQVWgB1HovMBsLQ9OZWLDqVY8MVobBXNSmAJi//Csh6tcY7e7Lny2Hg1tElMjIA==", + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.25.5.tgz", + "integrity": "sha512-kTxwu4mLyeOlsVIFPfQo+fQJAV9mh24xL+y+Bm6ej067sYANjyEw1dNHmvoqxJUCMnkBdKpvOn0Ahql6+4VyeA==", "cpu": [ "riscv64" ], @@ -648,9 +670,9 @@ } }, "node_modules/@esbuild/linux-s390x": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.23.1.tgz", - "integrity": "sha512-9ygs73tuFCe6f6m/Tb+9LtYxWR4c9yg7zjt2cYkjDbDpV/xVn+68cQxMXCjUpYwEkze2RcU/rMnfIXNRFmSoDw==", + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.25.5.tgz", + "integrity": "sha512-K2dSKTKfmdh78uJ3NcWFiqyRrimfdinS5ErLSn3vluHNeHVnBAFWC8a4X5N+7FgVE1EjXS1QDZbpqZBjfrqMTQ==", "cpu": [ "s390x" ], @@ -664,9 +686,9 @@ } }, "node_modules/@esbuild/linux-x64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.23.1.tgz", - "integrity": "sha512-EV6+ovTsEXCPAp58g2dD68LxoP/wK5pRvgy0J/HxPGB009omFPv3Yet0HiaqvrIrgPTBuC6wCH1LTOY91EO5hQ==", + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.25.5.tgz", + "integrity": "sha512-uhj8N2obKTE6pSZ+aMUbqq+1nXxNjZIIjCjGLfsWvVpy7gKCOL6rsY1MhRh9zLtUtAI7vpgLMK6DxjO8Qm9lJw==", "cpu": [ "x64" ], @@ -679,10 +701,26 @@ "node": ">=18" } }, + "node_modules/@esbuild/netbsd-arm64": { + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.5.tgz", + "integrity": "sha512-pwHtMP9viAy1oHPvgxtOv+OkduK5ugofNTVDilIzBLpoWAM16r7b/mxBvfpuQDpRQFMfuVr5aLcn4yveGvBZvw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, "node_modules/@esbuild/netbsd-x64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.23.1.tgz", - "integrity": "sha512-aevEkCNu7KlPRpYLjwmdcuNz6bDFiE7Z8XC4CPqExjTvrHugh28QzUXVOZtiYghciKUacNktqxdpymplil1beA==", + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.25.5.tgz", + "integrity": "sha512-WOb5fKrvVTRMfWFNCroYWWklbnXH0Q5rZppjq0vQIdlsQKuw6mdSihwSo4RV/YdQ5UCKKvBy7/0ZZYLBZKIbwQ==", "cpu": [ "x64" ], @@ -696,9 +734,9 @@ } }, "node_modules/@esbuild/openbsd-arm64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.23.1.tgz", - "integrity": "sha512-3x37szhLexNA4bXhLrCC/LImN/YtWis6WXr1VESlfVtVeoFJBRINPJ3f0a/6LV8zpikqoUg4hyXw0sFBt5Cr+Q==", + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.5.tgz", + "integrity": "sha512-7A208+uQKgTxHd0G0uqZO8UjK2R0DDb4fDmERtARjSHWxqMTye4Erz4zZafx7Di9Cv+lNHYuncAkiGFySoD+Mw==", "cpu": [ "arm64" ], @@ -712,9 +750,9 @@ } }, "node_modules/@esbuild/openbsd-x64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.23.1.tgz", - "integrity": "sha512-aY2gMmKmPhxfU+0EdnN+XNtGbjfQgwZj43k8G3fyrDM/UdZww6xrWxmDkuz2eCZchqVeABjV5BpildOrUbBTqA==", + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.25.5.tgz", + "integrity": "sha512-G4hE405ErTWraiZ8UiSoesH8DaCsMm0Cay4fsFWOOUcz8b8rC6uCvnagr+gnioEjWn0wC+o1/TAHt+It+MpIMg==", "cpu": [ "x64" ], @@ -728,9 +766,9 @@ } }, "node_modules/@esbuild/sunos-x64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.23.1.tgz", - "integrity": "sha512-RBRT2gqEl0IKQABT4XTj78tpk9v7ehp+mazn2HbUeZl1YMdaGAQqhapjGTCe7uw7y0frDi4gS0uHzhvpFuI1sA==", + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.25.5.tgz", + "integrity": "sha512-l+azKShMy7FxzY0Rj4RCt5VD/q8mG/e+mDivgspo+yL8zW7qEwctQ6YqKX34DTEleFAvCIUviCFX1SDZRSyMQA==", "cpu": [ "x64" ], @@ -744,9 +782,9 @@ } }, "node_modules/@esbuild/win32-arm64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.23.1.tgz", - "integrity": "sha512-4O+gPR5rEBe2FpKOVyiJ7wNDPA8nGzDuJ6gN4okSA1gEOYZ67N8JPk58tkWtdtPeLz7lBnY6I5L3jdsr3S+A6A==", + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.25.5.tgz", + "integrity": "sha512-O2S7SNZzdcFG7eFKgvwUEZ2VG9D/sn/eIiz8XRZ1Q/DO5a3s76Xv0mdBzVM5j5R639lXQmPmSo0iRpHqUUrsxw==", "cpu": [ "arm64" ], @@ -760,9 +798,9 @@ } }, "node_modules/@esbuild/win32-ia32": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.23.1.tgz", - "integrity": "sha512-BcaL0Vn6QwCwre3Y717nVHZbAa4UBEigzFm6VdsVdT/MbZ38xoj1X9HPkZhbmaBGUD1W8vxAfffbDe8bA6AKnQ==", + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.25.5.tgz", + "integrity": "sha512-onOJ02pqs9h1iMJ1PQphR+VZv8qBMQ77Klcsqv9CNW2w6yLqoURLcgERAIurY6QE63bbLuqgP9ATqajFLK5AMQ==", "cpu": [ "ia32" ], @@ -776,9 +814,9 @@ } }, "node_modules/@esbuild/win32-x64": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.23.1.tgz", - "integrity": "sha512-BHpFFeslkWrXWyUPnbKm+xYYVYruCinGcftSBaa8zoF9hZO4BcSCFUvHVTtzpIY6YzUnYtuEhZ+C9iEXjxnasg==", + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.25.5.tgz", + "integrity": "sha512-TXv6YnJ8ZMVdX+SXWVBo/0p8LTcrUYngpWjvm91TMjjBQii7Oz11Lw5lbDV5Y0TzuhSJHwiH4hEtC1I42mMS0g==", "cpu": [ "x64" ], @@ -792,14 +830,16 @@ } }, "node_modules/@gerrit0/mini-shiki": { - "version": "1.27.2", - "resolved": "https://registry.npmjs.org/@gerrit0/mini-shiki/-/mini-shiki-1.27.2.tgz", - "integrity": "sha512-GeWyHz8ao2gBiUW4OJnQDxXQnFgZQwwQk05t/CVVgNBN7/rK8XZ7xY6YhLVv9tH3VppWWmr9DCl3MwemB/i+Og==", + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/@gerrit0/mini-shiki/-/mini-shiki-3.5.0.tgz", + "integrity": "sha512-RQ1YHbN0EsRMP62QB61jFxrgpb8VIUE+PhR8CjBarIat6b2UeYHBo2s+IL7Fny6F4FuV4S63ksSNWiImsUKR+A==", "dev": true, "dependencies": { - "@shikijs/engine-oniguruma": "^1.27.2", - "@shikijs/types": "^1.27.2", - "@shikijs/vscode-textmate": "^10.0.1" + "@shikijs/engine-oniguruma": "^3.5.0", + "@shikijs/langs": "^3.5.0", + "@shikijs/themes": "^3.5.0", + "@shikijs/types": "^3.5.0", + "@shikijs/vscode-textmate": "^10.0.2" } }, "node_modules/@isaacs/cliui": { @@ -993,38 +1033,38 @@ } }, "node_modules/@microsoft/api-extractor": { - "version": "7.47.9", - "resolved": "https://registry.npmjs.org/@microsoft/api-extractor/-/api-extractor-7.47.9.tgz", - "integrity": "sha512-TTq30M1rikVsO5wZVToQT/dGyJY7UXJmjiRtkHPLb74Prx3Etw8+bX7Bv7iLuby6ysb7fuu1NFWqma+csym8Jw==", + "version": "7.52.8", + "resolved": "https://registry.npmjs.org/@microsoft/api-extractor/-/api-extractor-7.52.8.tgz", + "integrity": "sha512-cszYIcjiNscDoMB1CIKZ3My61+JOhpERGlGr54i6bocvGLrcL/wo9o+RNXMBrb7XgLtKaizZWUpqRduQuHQLdg==", "dev": true, "dependencies": { - "@microsoft/api-extractor-model": "7.29.8", - "@microsoft/tsdoc": "~0.15.0", - "@microsoft/tsdoc-config": "~0.17.0", - "@rushstack/node-core-library": "5.9.0", + "@microsoft/api-extractor-model": "7.30.6", + "@microsoft/tsdoc": "~0.15.1", + "@microsoft/tsdoc-config": "~0.17.1", + "@rushstack/node-core-library": "5.13.1", "@rushstack/rig-package": "0.5.3", - "@rushstack/terminal": "0.14.2", - "@rushstack/ts-command-line": "4.22.8", + "@rushstack/terminal": "0.15.3", + "@rushstack/ts-command-line": "5.0.1", "lodash": "~4.17.15", "minimatch": "~3.0.3", "resolve": "~1.22.1", "semver": "~7.5.4", "source-map": "~0.6.1", - "typescript": "5.4.2" + "typescript": "5.8.2" }, "bin": { "api-extractor": "bin/api-extractor" } }, "node_modules/@microsoft/api-extractor-model": { - "version": "7.29.8", - "resolved": "https://registry.npmjs.org/@microsoft/api-extractor-model/-/api-extractor-model-7.29.8.tgz", - "integrity": "sha512-t3Z/xcO6TRbMcnKGVMs4uMzv/gd5j0NhMiJIGjD4cJMeFJ1Hf8wnLSx37vxlRlL0GWlGJhnFgxvnaL6JlS+73g==", + "version": "7.30.6", + "resolved": "https://registry.npmjs.org/@microsoft/api-extractor-model/-/api-extractor-model-7.30.6.tgz", + "integrity": "sha512-znmFn69wf/AIrwHya3fxX6uB5etSIn6vg4Q4RB/tb5VDDs1rqREc+AvMC/p19MUN13CZ7+V/8pkYPTj7q8tftg==", "dev": true, "dependencies": { - "@microsoft/tsdoc": "~0.15.0", - "@microsoft/tsdoc-config": "~0.17.0", - "@rushstack/node-core-library": "5.9.0" + "@microsoft/tsdoc": "~0.15.1", + "@microsoft/tsdoc-config": "~0.17.1", + "@rushstack/node-core-library": "5.13.1" } }, "node_modules/@microsoft/api-extractor/node_modules/brace-expansion": { @@ -1086,9 +1126,9 @@ } }, "node_modules/@microsoft/api-extractor/node_modules/typescript": { - "version": "5.4.2", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.4.2.tgz", - "integrity": "sha512-+2/g0Fds1ERlP6JsakQQDXjZdZMM+rqpamFZJEKh4kwTIn3iDkgKtby0CeNd5ATNZ4Ry1ax15TMx0W2V+miizQ==", + "version": "5.8.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.8.2.tgz", + "integrity": "sha512-aJn6wq13/afZp/jT9QZmwEjDqqvSGp1VT5GVg+f/t6/oVyrgXM6BY1h9BRh/O5p3PlUPAe+WuiEZOmb/49RqoQ==", "dev": true, "bin": { "tsc": "bin/tsc", @@ -1098,30 +1138,36 @@ "node": ">=14.17" } }, - "node_modules/@microsoft/api-extractor/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/@microsoft/tsdoc": { - "version": "0.15.0", - "resolved": "https://registry.npmjs.org/@microsoft/tsdoc/-/tsdoc-0.15.0.tgz", - "integrity": "sha512-HZpPoABogPvjeJOdzCOSJsXeL/SMCBgBZMVC3X3d7YYp2gf31MfxhUoYUNwf1ERPJOnQc0wkFn9trqI6ZEdZuA==", + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/@microsoft/tsdoc/-/tsdoc-0.15.1.tgz", + "integrity": "sha512-4aErSrCR/On/e5G2hDP0wjooqDdauzEbIq8hIkIe5pXV0rtWJZvdCEKL0ykZxex+IxIwBp0eGeV48hQN07dXtw==", "dev": true }, "node_modules/@microsoft/tsdoc-config": { - "version": "0.17.0", - "resolved": "https://registry.npmjs.org/@microsoft/tsdoc-config/-/tsdoc-config-0.17.0.tgz", - "integrity": "sha512-v/EYRXnCAIHxOHW+Plb6OWuUoMotxTN0GLatnpOb1xq0KuTNw/WI3pamJx/UbsoJP5k9MCw1QxvvhPcF9pH3Zg==", + "version": "0.17.1", + "resolved": "https://registry.npmjs.org/@microsoft/tsdoc-config/-/tsdoc-config-0.17.1.tgz", + "integrity": "sha512-UtjIFe0C6oYgTnad4q1QP4qXwLhe6tIpNTRStJ2RZEPIkqQPREAwE5spzVxsdn9UaEMUqhh0AqSx3X4nWAKXWw==", "dev": true, "dependencies": { - "@microsoft/tsdoc": "0.15.0", + "@microsoft/tsdoc": "0.15.1", "ajv": "~8.12.0", "jju": "~1.4.0", "resolve": "~1.22.2" } }, + "node_modules/@napi-rs/wasm-runtime": { + "version": "0.2.10", + "resolved": "https://registry.npmjs.org/@napi-rs/wasm-runtime/-/wasm-runtime-0.2.10.tgz", + "integrity": "sha512-bCsCyeZEwVErsGmyPNSzwfwFn4OdxBj0mmv6hOFucB/k81Ojdu68RbZdxYsRQUPc9l6SU5F/cG+bXgWs3oUgsQ==", + "dev": true, + "optional": true, + "dependencies": { + "@emnapi/core": "^1.4.3", + "@emnapi/runtime": "^1.4.3", + "@tybys/wasm-util": "^0.9.0" + } + }, "node_modules/@nodelib/fs.scandir": { "version": "2.1.5", "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", @@ -1157,6 +1203,178 @@ "node": ">= 8" } }, + "node_modules/@oxc-resolver/binding-darwin-arm64": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/@oxc-resolver/binding-darwin-arm64/-/binding-darwin-arm64-11.1.0.tgz", + "integrity": "sha512-n9y3Lb1+BwsOtm3BmXSUPu3iDtTq7Sf0gX4e+izFTfNrj+u6uTKqbmlq8ggV8CRdg1zGUaCvKNvg/9q3C/19gg==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@oxc-resolver/binding-darwin-x64": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/@oxc-resolver/binding-darwin-x64/-/binding-darwin-x64-11.1.0.tgz", + "integrity": "sha512-2aJTPN9/lTmq0xw1YYsy5GDPkTyp92EoYRtw9nVgGErwMvA87duuLnIdoztYk66LGa3g5y4RgOaEapZbK7132A==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@oxc-resolver/binding-freebsd-x64": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/@oxc-resolver/binding-freebsd-x64/-/binding-freebsd-x64-11.1.0.tgz", + "integrity": "sha512-GoPEd9GvEyuS1YyqvAhAlccZeBEyHFkrHPEhS/+UTPcrzDzZ16ckJSmZtwOPhci5FWHK/th4L6NPiOnDLGFrqQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@oxc-resolver/binding-linux-arm-gnueabihf": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/@oxc-resolver/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-11.1.0.tgz", + "integrity": "sha512-mQdQDTbw2/RcJKvMi8RAmDECuEC4waM5jeUBn8Cz1pLVddH8MfYJgKbZJUATBNNaHjw/u+Sq9Q1tcJbm8dhpYQ==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@oxc-resolver/binding-linux-arm64-gnu": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/@oxc-resolver/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-11.1.0.tgz", + "integrity": "sha512-HDFQiPl7cX2DVXFlulWOinjqXa5Rj4ydFY9xJCwWAHGx2LmqwLDD8MI0UrHVUaHhLLWn54vjGtwsJK94dtkCwg==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@oxc-resolver/binding-linux-arm64-musl": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/@oxc-resolver/binding-linux-arm64-musl/-/binding-linux-arm64-musl-11.1.0.tgz", + "integrity": "sha512-0TFcZSVUQPV1r6sFUf7U2fz0mFCaqh5qMlb2zCioZj0C+xUJghC8bz88/qQUc5SA5K4gqg0WEOXzdqz/mXCLLA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@oxc-resolver/binding-linux-riscv64-gnu": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/@oxc-resolver/binding-linux-riscv64-gnu/-/binding-linux-riscv64-gnu-11.1.0.tgz", + "integrity": "sha512-crG0iy5U9ac99Xkt9trWo5YvtCoSpPUrNZMeUVDkIy1qy1znfv66CveOgCm0G5TwooIIWLJrtFUqi0AkazS3fw==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@oxc-resolver/binding-linux-s390x-gnu": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/@oxc-resolver/binding-linux-s390x-gnu/-/binding-linux-s390x-gnu-11.1.0.tgz", + "integrity": "sha512-aPemnsn/FXADFu7/VnSprO8uVb9UhNVdBdrIlAREh3s7LoW1QksKyP8/DlFe0o2E79MRQ3XF1ONOgW5zLcUmzA==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@oxc-resolver/binding-linux-x64-gnu": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/@oxc-resolver/binding-linux-x64-gnu/-/binding-linux-x64-gnu-11.1.0.tgz", + "integrity": "sha512-eMQ0Iue4Bs0jabCIHiEJbZMPoczdx1oBGOiNS/ykCE76Oos/Hb5uD1FB+Vw4agP2cAxzcp8zHO7MpEW450yswg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@oxc-resolver/binding-linux-x64-musl": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/@oxc-resolver/binding-linux-x64-musl/-/binding-linux-x64-musl-11.1.0.tgz", + "integrity": "sha512-5IjxRv0vWiGb102QmwF+ljutUWA1+BZbdW+58lFOVzVVo29L+m5PrEtijY5kK0FMTDvwb/xFXpGq3/vQx+bpSg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@oxc-resolver/binding-wasm32-wasi": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/@oxc-resolver/binding-wasm32-wasi/-/binding-wasm32-wasi-11.1.0.tgz", + "integrity": "sha512-+yz7LYHKW1GK+fJoHh9JibgIWDeBHf5wiu1tgDD92y5eLFEBxP+CjJ2caTZnVRREH74l03twOfcTR9EaLsEidQ==", + "cpu": [ + "wasm32" + ], + "dev": true, + "optional": true, + "dependencies": { + "@napi-rs/wasm-runtime": "^0.2.10" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@oxc-resolver/binding-win32-arm64-msvc": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/@oxc-resolver/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-11.1.0.tgz", + "integrity": "sha512-aTF/1TIq9v86Qy3++YFhKJVKXYSTO54yRRWIXwzpgGvZu41acjN/UsNOG7C2QFy/xdkitrZf1awYgawSqNox3g==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@oxc-resolver/binding-win32-x64-msvc": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/@oxc-resolver/binding-win32-x64-msvc/-/binding-win32-x64-msvc-11.1.0.tgz", + "integrity": "sha512-CxalsPMU4oSoZviLMaw01RhLglyN7jrUUhTDRv4pYGcsRxxt5S7e/wO9P/lm5BYgAAq4TtP5MkGuGuMrm//a0g==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ] + }, "node_modules/@pkgjs/parseargs": { "version": "0.11.0", "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", @@ -1492,15 +1710,15 @@ ] }, "node_modules/@rushstack/node-core-library": { - "version": "5.9.0", - "resolved": "https://registry.npmjs.org/@rushstack/node-core-library/-/node-core-library-5.9.0.tgz", - "integrity": "sha512-MMsshEWkTbXqxqFxD4gcIUWQOCeBChlGczdZbHfqmNZQFLHB3yWxDFSMHFUdu2/OB9NUk7Awn5qRL+rws4HQNg==", + "version": "5.13.1", + "resolved": "https://registry.npmjs.org/@rushstack/node-core-library/-/node-core-library-5.13.1.tgz", + "integrity": "sha512-5yXhzPFGEkVc9Fu92wsNJ9jlvdwz4RNb2bMso+/+TH0nMm1jDDDsOIf4l8GAkPxGuwPw5DH24RliWVfSPhlW/Q==", "dev": true, "dependencies": { "ajv": "~8.13.0", "ajv-draft-04": "~1.0.0", "ajv-formats": "~3.0.1", - "fs-extra": "~7.0.1", + "fs-extra": "~11.3.0", "import-lazy": "~4.0.0", "jju": "~1.4.0", "resolve": "~1.22.1", @@ -1531,6 +1749,32 @@ "url": "https://github.com/sponsors/epoberezkin" } }, + "node_modules/@rushstack/node-core-library/node_modules/fs-extra": { + "version": "11.3.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.3.0.tgz", + "integrity": "sha512-Z4XaCL6dUDHfP/jT25jJKMmtxvuwbkrD1vNSMFlo9lNLY2c5FHYSQgHPRZUjAB26TpDEoW9HCOgplrdbaPV/ew==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=14.14" + } + }, + "node_modules/@rushstack/node-core-library/node_modules/jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "dev": true, + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, "node_modules/@rushstack/node-core-library/node_modules/lru-cache": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", @@ -1558,11 +1802,14 @@ "node": ">=10" } }, - "node_modules/@rushstack/node-core-library/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/@rushstack/node-core-library/node_modules/universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "dev": true, + "engines": { + "node": ">= 10.0.0" + } }, "node_modules/@rushstack/rig-package": { "version": "0.5.3", @@ -1575,12 +1822,12 @@ } }, "node_modules/@rushstack/terminal": { - "version": "0.14.2", - "resolved": "https://registry.npmjs.org/@rushstack/terminal/-/terminal-0.14.2.tgz", - "integrity": "sha512-2fC1wqu1VCExKC0/L+0noVcFQEXEnoBOtCIex1TOjBzEDWcw8KzJjjj7aTP6mLxepG0XIyn9OufeFb6SFsa+sg==", + "version": "0.15.3", + "resolved": "https://registry.npmjs.org/@rushstack/terminal/-/terminal-0.15.3.tgz", + "integrity": "sha512-DGJ0B2Vm69468kZCJkPj3AH5nN+nR9SPmC0rFHtzsS4lBQ7/dgOwtwVxYP7W9JPDMuRBkJ4KHmWKr036eJsj9g==", "dev": true, "dependencies": { - "@rushstack/node-core-library": "5.9.0", + "@rushstack/node-core-library": "5.13.1", "supports-color": "~8.1.1" }, "peerDependencies": { @@ -1608,41 +1855,59 @@ } }, "node_modules/@rushstack/ts-command-line": { - "version": "4.22.8", - "resolved": "https://registry.npmjs.org/@rushstack/ts-command-line/-/ts-command-line-4.22.8.tgz", - "integrity": "sha512-XbFjOoV7qZHJnSuFUHv0pKaFA4ixyCuki+xMjsMfDwfvQjs5MYG0IK5COal3tRnG7KCDe2l/G+9LrzYE/RJhgg==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/@rushstack/ts-command-line/-/ts-command-line-5.0.1.tgz", + "integrity": "sha512-bsbUucn41UXrQK7wgM8CNM/jagBytEyJqXw/umtI8d68vFm1Jwxh1OtLrlW7uGZgjCWiiPH6ooUNa1aVsuVr3Q==", "dev": true, "dependencies": { - "@rushstack/terminal": "0.14.2", + "@rushstack/terminal": "0.15.3", "@types/argparse": "1.0.38", "argparse": "~1.0.9", "string-argv": "~0.3.1" } }, "node_modules/@shikijs/engine-oniguruma": { - "version": "1.29.2", - "resolved": "https://registry.npmjs.org/@shikijs/engine-oniguruma/-/engine-oniguruma-1.29.2.tgz", - "integrity": "sha512-7iiOx3SG8+g1MnlzZVDYiaeHe7Ez2Kf2HrJzdmGwkRisT7r4rak0e655AcM/tF9JG/kg5fMNYlLLKglbN7gBqA==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/@shikijs/engine-oniguruma/-/engine-oniguruma-3.6.0.tgz", + "integrity": "sha512-nmOhIZ9yT3Grd+2plmW/d8+vZ2pcQmo/UnVwXMUXAKTXdi+LK0S08Ancrz5tQQPkxvjBalpMW2aKvwXfelauvA==", + "dev": true, + "dependencies": { + "@shikijs/types": "3.6.0", + "@shikijs/vscode-textmate": "^10.0.2" + } + }, + "node_modules/@shikijs/langs": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/@shikijs/langs/-/langs-3.6.0.tgz", + "integrity": "sha512-IdZkQJaLBu1LCYCwkr30hNuSDfllOT8RWYVZK1tD2J03DkiagYKRxj/pDSl8Didml3xxuyzUjgtioInwEQM/TA==", + "dev": true, + "dependencies": { + "@shikijs/types": "3.6.0" + } + }, + "node_modules/@shikijs/themes": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/@shikijs/themes/-/themes-3.6.0.tgz", + "integrity": "sha512-Fq2j4nWr1DF4drvmhqKq8x5vVQ27VncF8XZMBuHuQMZvUSS3NBgpqfwz/FoGe36+W6PvniZ1yDlg2d4kmYDU6w==", "dev": true, "dependencies": { - "@shikijs/types": "1.29.2", - "@shikijs/vscode-textmate": "^10.0.1" + "@shikijs/types": "3.6.0" } }, "node_modules/@shikijs/types": { - "version": "1.29.2", - "resolved": "https://registry.npmjs.org/@shikijs/types/-/types-1.29.2.tgz", - "integrity": "sha512-VJjK0eIijTZf0QSTODEXCqinjBn0joAHQ+aPSBzrv4O2d/QSbsMw+ZeSRx03kV34Hy7NzUvV/7NqfYGRLrASmw==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/@shikijs/types/-/types-3.6.0.tgz", + "integrity": "sha512-cLWFiToxYu0aAzJqhXTQsFiJRTFDAGl93IrMSBNaGSzs7ixkLfdG6pH11HipuWFGW5vyx4X47W8HDQ7eSrmBUg==", "dev": true, "dependencies": { - "@shikijs/vscode-textmate": "^10.0.1", + "@shikijs/vscode-textmate": "^10.0.2", "@types/hast": "^3.0.4" } }, "node_modules/@shikijs/vscode-textmate": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/@shikijs/vscode-textmate/-/vscode-textmate-10.0.1.tgz", - "integrity": "sha512-fTIQwLF+Qhuws31iw7Ncl1R3HUDtGwIipiJ9iU+UsDUwMhegFcQKQHd51nZjb7CArq0MvON8rbgCGQYWHUKAdg==", + "version": "10.0.2", + "resolved": "https://registry.npmjs.org/@shikijs/vscode-textmate/-/vscode-textmate-10.0.2.tgz", + "integrity": "sha512-83yeghZ2xxin3Nj8z1NMd/NCuca+gsYXswywDy5bHvwlWL8tpTQmzGeUuHd9FC3E/SBEMvzJRwWEOz5gGes9Qg==", "dev": true }, "node_modules/@sindresorhus/is": { @@ -1657,54 +1922,14 @@ "url": "https://github.com/sindresorhus/is?sponsor=1" } }, - "node_modules/@snyk/github-codeowners": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@snyk/github-codeowners/-/github-codeowners-1.1.0.tgz", - "integrity": "sha512-lGFf08pbkEac0NYgVf4hdANpAgApRjNByLXB+WBip3qj1iendOIyAwP2GKkKbQMNVy2r1xxDf0ssfWscoiC+Vw==", + "node_modules/@tybys/wasm-util": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.9.0.tgz", + "integrity": "sha512-6+7nlbMVX/PVDCwaIQ8nTOPveOcFLSt8GcXdx8hD0bt39uWxYT88uXzqTd4fTvqta7oeUJqudepapKNt2DYJFw==", "dev": true, + "optional": true, "dependencies": { - "commander": "^4.1.1", - "ignore": "^5.1.8", - "p-map": "^4.0.0" - }, - "bin": { - "github-codeowners": "dist/cli.js" - }, - "engines": { - "node": ">=8.10" - } - }, - "node_modules/@snyk/github-codeowners/node_modules/commander": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", - "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", - "dev": true, - "engines": { - "node": ">= 6" - } - }, - "node_modules/@snyk/github-codeowners/node_modules/p-map": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", - "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", - "dev": true, - "dependencies": { - "aggregate-error": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@types/acorn": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/@types/acorn/-/acorn-4.0.6.tgz", - "integrity": "sha512-veQTnWP+1D/xbxVrPC3zHnCZRjSrKfhbMUlEA43iMZLu7EsnTtkJklIuwrCPbOi8YkvDQAiW05VQQFvvz9oieQ==", - "dev": true, - "dependencies": { - "@types/estree": "*" + "tslib": "^2.4.0" } }, "node_modules/@types/argparse": { @@ -1713,6 +1938,15 @@ "integrity": "sha512-ebDJ9b0e702Yr7pWgB0jzm+CX4Srzz8RcXtLJDJB+BSccqMa36uyH/zUsSYao5+BD1ytv3k3rPYCq4mAE1hsXA==", "dev": true }, + "node_modules/@types/chai": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/@types/chai/-/chai-5.2.2.tgz", + "integrity": "sha512-8kB30R7Hwqf40JPiKhVzodJs2Qc1ZJ5zuT3uzw5Hq/dhNCl3G3l83jfpdI1e20BP348+fV7VIL/+FxaXkqBmWg==", + "dev": true, + "dependencies": { + "@types/deep-eql": "*" + } + }, "node_modules/@types/debug": { "version": "4.1.12", "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.12.tgz", @@ -1722,21 +1956,18 @@ "@types/ms": "*" } }, + "node_modules/@types/deep-eql": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@types/deep-eql/-/deep-eql-4.0.2.tgz", + "integrity": "sha512-c9h9dVVMigMPc4bwTvC5dxqtqJZwQPePsWjPlpSOnojbor6pGqdk541lfA7AqFQr5pB1BRdq0juY9db81BwyFw==", + "dev": true + }, "node_modules/@types/estree": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.7.tgz", "integrity": "sha512-w28IoSUCJpidD/TGviZwwMJckNESJZXFu7NBZ5YJ4mEUnNraUn9Pm8HSZm/jDF1pDWYKspWE7oVphigUPRakIQ==", "dev": true }, - "node_modules/@types/estree-jsx": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/@types/estree-jsx/-/estree-jsx-1.0.5.tgz", - "integrity": "sha512-52CcUVNFyfb1A2ALocQw/Dd1BQFNmSdkuC3BkZ6iqhdMfQz7JWOFRuJFloOzjk+6WijU56m9oKXFAXc7o3Towg==", - "dev": true, - "dependencies": { - "@types/estree": "*" - } - }, "node_modules/@types/hast": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", @@ -1762,12 +1993,12 @@ "dev": true }, "node_modules/@types/node": { - "version": "22.7.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.7.4.tgz", - "integrity": "sha512-y+NPi1rFzDs1NdQHHToqeiX2TIS79SWEAw9GYhkkx8bD0ChpfqC+n2j5OXOCpzfojBEBt6DnEnnG9MY0zk1XLg==", + "version": "22.15.30", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.15.30.tgz", + "integrity": "sha512-6Q7lr06bEHdlfplU6YRbgG1SFBdlsfNC4/lX+SkhiTs0cpJkOElmWls8PxDFv4yY/xKb8Y6SO0OmSX4wgqTZbA==", "dev": true, "dependencies": { - "undici-types": "~6.19.2" + "undici-types": "~6.21.0" } }, "node_modules/@types/resolve": { @@ -1783,37 +2014,37 @@ "dev": true }, "node_modules/@vitest/expect": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-2.1.2.tgz", - "integrity": "sha512-FEgtlN8mIUSEAAnlvn7mP8vzaWhEaAEvhSXCqrsijM7K6QqjB11qoRZYEd4AKSCDz8p0/+yH5LzhZ47qt+EyPg==", + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-3.2.2.tgz", + "integrity": "sha512-ipHw0z669vEMjzz3xQE8nJX1s0rQIb7oEl4jjl35qWTwm/KIHERIg/p/zORrjAaZKXfsv7IybcNGHwhOOAPMwQ==", "dev": true, "dependencies": { - "@vitest/spy": "2.1.2", - "@vitest/utils": "2.1.2", - "chai": "^5.1.1", - "tinyrainbow": "^1.2.0" + "@types/chai": "^5.2.2", + "@vitest/spy": "3.2.2", + "@vitest/utils": "3.2.2", + "chai": "^5.2.0", + "tinyrainbow": "^2.0.0" }, "funding": { "url": "https://opencollective.com/vitest" } }, "node_modules/@vitest/mocker": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@vitest/mocker/-/mocker-2.1.2.tgz", - "integrity": "sha512-ExElkCGMS13JAJy+812fw1aCv2QO/LBK6CyO4WOPAzLTmve50gydOlWhgdBJPx2ztbADUq3JVI0C5U+bShaeEA==", + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/@vitest/mocker/-/mocker-3.2.2.tgz", + "integrity": "sha512-jKojcaRyIYpDEf+s7/dD3LJt53c0dPfp5zCPXz9H/kcGrSlovU/t1yEaNzM9oFME3dcd4ULwRI/x0Po1Zf+LTw==", "dev": true, "dependencies": { - "@vitest/spy": "^2.1.0-beta.1", + "@vitest/spy": "3.2.2", "estree-walker": "^3.0.3", - "magic-string": "^0.30.11" + "magic-string": "^0.30.17" }, "funding": { "url": "https://opencollective.com/vitest" }, "peerDependencies": { - "@vitest/spy": "2.1.2", - "msw": "^2.3.5", - "vite": "^5.0.0" + "msw": "^2.4.9", + "vite": "^5.0.0 || ^6.0.0 || ^7.0.0-0" }, "peerDependenciesMeta": { "msw": { @@ -1825,65 +2056,65 @@ } }, "node_modules/@vitest/pretty-format": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-2.1.2.tgz", - "integrity": "sha512-FIoglbHrSUlOJPDGIrh2bjX1sNars5HbxlcsFKCtKzu4+5lpsRhOCVcuzp0fEhAGHkPZRIXVNzPcpSlkoZ3LuA==", + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-3.2.2.tgz", + "integrity": "sha512-FY4o4U1UDhO9KMd2Wee5vumwcaHw7Vg4V7yR4Oq6uK34nhEJOmdRYrk3ClburPRUA09lXD/oXWZ8y/Sdma0aUQ==", "dev": true, "dependencies": { - "tinyrainbow": "^1.2.0" + "tinyrainbow": "^2.0.0" }, "funding": { "url": "https://opencollective.com/vitest" } }, "node_modules/@vitest/runner": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-2.1.2.tgz", - "integrity": "sha512-UCsPtvluHO3u7jdoONGjOSil+uON5SSvU9buQh3lP7GgUXHp78guN1wRmZDX4wGK6J10f9NUtP6pO+SFquoMlw==", + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-3.2.2.tgz", + "integrity": "sha512-GYcHcaS3ejGRZYed2GAkvsjBeXIEerDKdX3orQrBJqLRiea4NSS9qvn9Nxmuy1IwIB+EjFOaxXnX79l8HFaBwg==", "dev": true, "dependencies": { - "@vitest/utils": "2.1.2", - "pathe": "^1.1.2" + "@vitest/utils": "3.2.2", + "pathe": "^2.0.3" }, "funding": { "url": "https://opencollective.com/vitest" } }, "node_modules/@vitest/snapshot": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-2.1.2.tgz", - "integrity": "sha512-xtAeNsZ++aRIYIUsek7VHzry/9AcxeULlegBvsdLncLmNCR6tR8SRjn8BbDP4naxtccvzTqZ+L1ltZlRCfBZFA==", + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-3.2.2.tgz", + "integrity": "sha512-aMEI2XFlR1aNECbBs5C5IZopfi5Lb8QJZGGpzS8ZUHML5La5wCbrbhLOVSME68qwpT05ROEEOAZPRXFpxZV2wA==", "dev": true, "dependencies": { - "@vitest/pretty-format": "2.1.2", - "magic-string": "^0.30.11", - "pathe": "^1.1.2" + "@vitest/pretty-format": "3.2.2", + "magic-string": "^0.30.17", + "pathe": "^2.0.3" }, "funding": { "url": "https://opencollective.com/vitest" } }, "node_modules/@vitest/spy": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-2.1.2.tgz", - "integrity": "sha512-GSUi5zoy+abNRJwmFhBDC0yRuVUn8WMlQscvnbbXdKLXX9dE59YbfwXxuJ/mth6eeqIzofU8BB5XDo/Ns/qK2A==", + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-3.2.2.tgz", + "integrity": "sha512-6Utxlx3o7pcTxvp0u8kUiXtRFScMrUg28KjB3R2hon7w4YqOFAEA9QwzPVVS1QNL3smo4xRNOpNZClRVfpMcYg==", "dev": true, "dependencies": { - "tinyspy": "^3.0.0" + "tinyspy": "^4.0.3" }, "funding": { "url": "https://opencollective.com/vitest" } }, "node_modules/@vitest/utils": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-2.1.2.tgz", - "integrity": "sha512-zMO2KdYy6mx56btx9JvAqAZ6EyS3g49krMPPrgOp1yxGZiA93HumGk+bZ5jIZtOg5/VBYl5eBmGRQHqq4FG6uQ==", + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-3.2.2.tgz", + "integrity": "sha512-qJYMllrWpF/OYfWHP32T31QCaLa3BAzT/n/8mNGhPdVcjY+JYazQFO1nsJvXU12Kp1xMpNY4AGuljPTNjQve6A==", "dev": true, "dependencies": { - "@vitest/pretty-format": "2.1.2", - "loupe": "^3.1.1", - "tinyrainbow": "^1.2.0" + "@vitest/pretty-format": "3.2.2", + "loupe": "^3.1.3", + "tinyrainbow": "^2.0.0" }, "funding": { "url": "https://opencollective.com/vitest" @@ -1896,9 +2127,9 @@ "dev": true }, "node_modules/acorn": { - "version": "8.14.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.0.tgz", - "integrity": "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==", + "version": "8.14.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.1.tgz", + "integrity": "sha512-OvQ/2pUDKmgfCg++xsTX1wGxfTaszcHVcTctW4UJB4hibJx2HXxxO5UmVgyjMa+ZDsiaf5wWLXYpRWMmBI0QHg==", "dev": true, "bin": { "acorn": "bin/acorn" @@ -1907,28 +2138,6 @@ "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/aggregate-error": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", - "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", - "dev": true, - "dependencies": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/ajv": { "version": "8.12.0", "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", @@ -2030,19 +2239,6 @@ "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==", "dev": true }, - "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/argparse": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", @@ -2107,18 +2303,6 @@ "node": ">=4" } }, - "node_modules/binary-extensions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", - "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", - "dev": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/brace-expansion": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", @@ -2141,9 +2325,9 @@ } }, "node_modules/bundle-require": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/bundle-require/-/bundle-require-5.0.0.tgz", - "integrity": "sha512-GuziW3fSSmopcx4KRymQEJVbZUfqlCqcq7dvs6TYwKRZiegK/2buMxQTPs6MGlNv50wms1699qYO54R8XfRX4w==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/bundle-require/-/bundle-require-5.1.0.tgz", + "integrity": "sha512-3WrrOuZiyaaZPWiEt4G3+IffISVC9HYlWueJEBWED4ZH4aIAC2PnkdnuRrR94M+w6yGWn4AglWtJtBI8YqvgoA==", "dev": true, "dependencies": { "load-tsconfig": "^0.2.3" @@ -2228,20 +2412,10 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/ccount": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/ccount/-/ccount-2.0.1.tgz", - "integrity": "sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==", - "dev": true, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, "node_modules/chai": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/chai/-/chai-5.1.1.tgz", - "integrity": "sha512-pT1ZgP8rPNqUgieVaEY+ryQr6Q4HXNg8Ei9UnLUrjN4IA7dvQC5JB+/kxVcPNDHyBcc/26CXPkbNzq3qwrOEKA==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/chai/-/chai-5.2.0.tgz", + "integrity": "sha512-mCuXncKXk5iCLhfhwTc0izo0gtEmpz5CtG2y8GiOINBlMVS6v8TMRc5TaLWKS6692m9+dVVfzgeVxR5UxWHTYw==", "dev": true, "dependencies": { "assertion-error": "^2.0.1", @@ -2289,36 +2463,6 @@ "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/character-entities-html4": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/character-entities-html4/-/character-entities-html4-2.1.0.tgz", - "integrity": "sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA==", - "dev": true, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/character-entities-legacy": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-3.0.0.tgz", - "integrity": "sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ==", - "dev": true, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/character-reference-invalid": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/character-reference-invalid/-/character-reference-invalid-2.0.1.tgz", - "integrity": "sha512-iBZ4F4wRbyORVsu0jPV7gXkOsGYjGHPmAyv+HiHG8gi5PtC9KI2j1+v8/tlibRvjoWX027ypmG/n0HtO5t7unw==", - "dev": true, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, "node_modules/chardet": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", @@ -2335,27 +2479,18 @@ } }, "node_modules/chokidar": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", - "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.3.tgz", + "integrity": "sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==", "dev": true, "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" + "readdirp": "^4.0.1" }, "engines": { - "node": ">= 8.10.0" + "node": ">= 14.16.0" }, "funding": { "url": "https://paulmillr.com/funding/" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" } }, "node_modules/ci-info": { @@ -2379,15 +2514,6 @@ "integrity": "sha512-9z8TZaGM1pfswYeXrUpzPrkx8UnWYdhJclsiYMm6x/w5+nN+8Tf/LnAgfLGQCm59qAOxU8WwHEq2vNwF6i4j+Q==", "dev": true }, - "node_modules/clean-stack": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", - "dev": true, - "engines": { - "node": ">=6" - } - }, "node_modules/cleye": { "version": "1.3.4", "resolved": "https://registry.npmjs.org/cleye/-/cleye-1.3.4.tgz", @@ -2465,16 +2591,6 @@ "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } }, - "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, - "optional": true, - "engines": { - "node": ">=0.8" - } - }, "node_modules/color-convert": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", @@ -2508,30 +2624,39 @@ "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", "dev": true }, + "node_modules/confbox": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/confbox/-/confbox-0.1.8.tgz", + "integrity": "sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w==", + "dev": true + }, "node_modules/consola": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/consola/-/consola-3.2.3.tgz", - "integrity": "sha512-I5qxpzLv+sJhTVEoLYNcTW+bThDCPsit0vLNKShZx6rLtpilNpmmeTPaeqJb9ZE9dV3DGaeby6Vuhrw38WjeyQ==", + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/consola/-/consola-3.4.2.tgz", + "integrity": "sha512-5IKcdX0nnYavi6G7TtOhwkYzyjfJlatbjMjuLSfE2kYT5pMDOilZ4OvMhi637CcDICTmz3wARPoyhqyX1Y+XvA==", "dev": true, "engines": { "node": "^14.18.0 || >=16.10.0" } }, "node_modules/cross-spawn": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", - "integrity": "sha512-pTgQJ5KC0d2hcY8eyL1IzlBPYjTkyH72XRZPnLyKus2mBfNjQs3klqbJU2VILqZryAZUt9JOb3h/mWMy23/f5A==", + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", "dev": true, "dependencies": { - "lru-cache": "^4.0.1", - "shebang-command": "^1.2.0", - "which": "^1.2.9" + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" } }, "node_modules/debug": { - "version": "4.3.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz", - "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==", + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.1.tgz", + "integrity": "sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==", "dev": true, "dependencies": { "ms": "^2.1.3" @@ -2576,19 +2701,6 @@ "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, - "optional": true, - "dependencies": { - "clone": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/define-data-property": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", @@ -2700,18 +2812,6 @@ "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", "dev": true }, - "node_modules/easy-table": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/easy-table/-/easy-table-1.2.0.tgz", - "integrity": "sha512-OFzVOv03YpvtcWGe5AayU5G2hgybsg3iqA6drU8UaoZyB9jLGMTrz9+asnLp/E+6qPh88yEI1gvyZFZ41dmgww==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "optionalDependencies": { - "wcwidth": "^1.0.1" - } - }, "node_modules/emoji-regex": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", @@ -2724,19 +2824,6 @@ "integrity": "sha512-5U0rVMU5Y2n2+ykNLQqMoqklN9ICBT/KsvC1Gz6vqHbz2AXXGkG+Pm5rMWk/8Vjrr/mY9985Hi8DYzn1F09Nyw==", "dev": true }, - "node_modules/enhanced-resolve": { - "version": "5.17.1", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.17.1.tgz", - "integrity": "sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg==", - "dev": true, - "dependencies": { - "graceful-fs": "^4.2.4", - "tapable": "^2.2.0" - }, - "engines": { - "node": ">=10.13.0" - } - }, "node_modules/enquirer": { "version": "2.4.1", "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.4.1.tgz", @@ -2792,6 +2879,12 @@ "node": ">= 0.4" } }, + "node_modules/es-module-lexer": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.7.0.tgz", + "integrity": "sha512-jEQoCwk8hyb2AZziIOLhDqpm5+2ww5uIE6lkO/6jcOCusfk6LhMHpXXfBLXTZ7Ydyt0j4VoUQv6uGNYbdW+kBA==", + "dev": true + }, "node_modules/es-object-atoms": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", @@ -2805,9 +2898,9 @@ } }, "node_modules/esbuild": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.23.1.tgz", - "integrity": "sha512-VVNz/9Sa0bs5SELtn3f7qhJCDPCF5oMEl5cO9/SSinpE9hbPVvxbd572HH5AKiP7WD8INO53GgfDDhRjkylHEg==", + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.25.5.tgz", + "integrity": "sha512-P8OtKZRv/5J5hhz0cUAdu/cLuPIKXpQl1R9pZtvmHWQvrAUVd0UNIPT4IB4W3rNOqVO0rlqHmCIbSwxh/c9yUQ==", "dev": true, "hasInstallScript": true, "bin": { @@ -2817,30 +2910,31 @@ "node": ">=18" }, "optionalDependencies": { - "@esbuild/aix-ppc64": "0.23.1", - "@esbuild/android-arm": "0.23.1", - "@esbuild/android-arm64": "0.23.1", - "@esbuild/android-x64": "0.23.1", - "@esbuild/darwin-arm64": "0.23.1", - "@esbuild/darwin-x64": "0.23.1", - "@esbuild/freebsd-arm64": "0.23.1", - "@esbuild/freebsd-x64": "0.23.1", - "@esbuild/linux-arm": "0.23.1", - "@esbuild/linux-arm64": "0.23.1", - "@esbuild/linux-ia32": "0.23.1", - "@esbuild/linux-loong64": "0.23.1", - "@esbuild/linux-mips64el": "0.23.1", - "@esbuild/linux-ppc64": "0.23.1", - "@esbuild/linux-riscv64": "0.23.1", - "@esbuild/linux-s390x": "0.23.1", - "@esbuild/linux-x64": "0.23.1", - "@esbuild/netbsd-x64": "0.23.1", - "@esbuild/openbsd-arm64": "0.23.1", - "@esbuild/openbsd-x64": "0.23.1", - "@esbuild/sunos-x64": "0.23.1", - "@esbuild/win32-arm64": "0.23.1", - "@esbuild/win32-ia32": "0.23.1", - "@esbuild/win32-x64": "0.23.1" + "@esbuild/aix-ppc64": "0.25.5", + "@esbuild/android-arm": "0.25.5", + "@esbuild/android-arm64": "0.25.5", + "@esbuild/android-x64": "0.25.5", + "@esbuild/darwin-arm64": "0.25.5", + "@esbuild/darwin-x64": "0.25.5", + "@esbuild/freebsd-arm64": "0.25.5", + "@esbuild/freebsd-x64": "0.25.5", + "@esbuild/linux-arm": "0.25.5", + "@esbuild/linux-arm64": "0.25.5", + "@esbuild/linux-ia32": "0.25.5", + "@esbuild/linux-loong64": "0.25.5", + "@esbuild/linux-mips64el": "0.25.5", + "@esbuild/linux-ppc64": "0.25.5", + "@esbuild/linux-riscv64": "0.25.5", + "@esbuild/linux-s390x": "0.25.5", + "@esbuild/linux-x64": "0.25.5", + "@esbuild/netbsd-arm64": "0.25.5", + "@esbuild/netbsd-x64": "0.25.5", + "@esbuild/openbsd-arm64": "0.25.5", + "@esbuild/openbsd-x64": "0.25.5", + "@esbuild/sunos-x64": "0.25.5", + "@esbuild/win32-arm64": "0.25.5", + "@esbuild/win32-ia32": "0.25.5", + "@esbuild/win32-x64": "0.25.5" } }, "node_modules/escalade": { @@ -2877,30 +2971,6 @@ "node": ">=4" } }, - "node_modules/estree-util-is-identifier-name": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/estree-util-is-identifier-name/-/estree-util-is-identifier-name-3.0.0.tgz", - "integrity": "sha512-hFtqIDZTIUZ9BXLb8y4pYGyk6+wekIivNVTcmvk8NoOh+VeRn5y6cEHzbURrWbfp1fIqdVipilzj+lfaadNZmg==", - "dev": true, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/estree-util-visit": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/estree-util-visit/-/estree-util-visit-2.0.0.tgz", - "integrity": "sha512-m5KgiH85xAhhW8Wta0vShLcUvOsh3LLPI2YVwcbio1l7E09NTLL1EyMZFM1OyWowoH0skScNbhOPl4kcBgzTww==", - "dev": true, - "dependencies": { - "@types/estree-jsx": "^1.0.0", - "@types/unist": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, "node_modules/estree-walker": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-3.0.3.tgz", @@ -2910,77 +2980,13 @@ "@types/estree": "^1.0.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": { - "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": ">=10" - }, - "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" - } - }, - "node_modules/execa/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/execa/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/execa/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/execa/node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "node_modules/expect-type": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/expect-type/-/expect-type-1.2.1.tgz", + "integrity": "sha512-/kP8CAwxzLVEeFrMm4kMmy4CCDlpipyA7MYLVrdJIkV0fYF0UaigQHRsxHiuY/GEea+bh4KSv3TIlgr+2UL6bw==", "dev": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, "engines": { - "node": ">= 8" + "node": ">=12.0.0" } }, "node_modules/extend": { @@ -3016,25 +3022,25 @@ "dev": true }, "node_modules/fast-glob": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", - "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.3.tgz", + "integrity": "sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==", "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" + "micromatch": "^4.0.8" }, "engines": { "node": ">=8.6.0" } }, "node_modules/fastq": { - "version": "1.17.1", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", - "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==", + "version": "1.19.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.19.1.tgz", + "integrity": "sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==", "dev": true, "dependencies": { "reusify": "^1.0.4" @@ -3053,6 +3059,15 @@ "url": "https://github.com/sponsors/wooorm" } }, + "node_modules/fd-package-json": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/fd-package-json/-/fd-package-json-2.0.0.tgz", + "integrity": "sha512-jKmm9YtsNXN789RS/0mSzOC1NUq9mkVd65vbSSVsKdjGvYXBuE4oWe2QOEoFeRmJg+lPuZxpmrfFclNhoRMneQ==", + "dev": true, + "dependencies": { + "walk-up-path": "^4.0.0" + } + }, "node_modules/fflate": { "version": "0.8.2", "resolved": "https://registry.npmjs.org/fflate/-/fflate-0.8.2.tgz", @@ -3093,6 +3108,17 @@ "micromatch": "^4.0.2" } }, + "node_modules/fix-dts-default-cjs-exports": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/fix-dts-default-cjs-exports/-/fix-dts-default-cjs-exports-1.0.1.tgz", + "integrity": "sha512-pVIECanWFC61Hzl2+oOCtoJ3F17kglZC/6N94eRWycFgBH35hHx0Li604ZIzhseh97mf2p0cv7vVrOZGoqhlEg==", + "dev": true, + "dependencies": { + "magic-string": "^0.30.17", + "mlly": "^1.7.4", + "rollup": "^4.34.8" + } + }, "node_modules/foreground-child": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.0.tgz", @@ -3109,75 +3135,28 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/foreground-child/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/format": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/format/-/format-0.2.2.tgz", + "integrity": "sha512-wzsgA6WOq+09wrU1tsJ09udeR/YZRaeArL9e1wPbFg3GG2yDnC2ldKpxs4xunpFF9DgqCqOIra3bc1HWrJ37Ww==", "dev": true, - "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, "engines": { - "node": ">= 8" + "node": ">=0.4.x" } }, - "node_modules/foreground-child/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/formatly": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/formatly/-/formatly-0.2.4.tgz", + "integrity": "sha512-lIN7GpcvX/l/i24r/L9bnJ0I8Qn01qijWpQpDDvTLL29nKqSaJJu4h20+7VJ6m2CAhQ2/En/GbxDiHCzq/0MyA==", "dev": true, "dependencies": { - "shebang-regex": "^3.0.0" + "fd-package-json": "^2.0.0" + }, + "bin": { + "formatly": "bin/index.mjs" }, "engines": { - "node": ">=8" - } - }, - "node_modules/foreground-child/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/foreground-child/node_modules/signal-exit": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", - "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", - "dev": true, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/foreground-child/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/format": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/format/-/format-0.2.2.tgz", - "integrity": "sha512-wzsgA6WOq+09wrU1tsJ09udeR/YZRaeArL9e1wPbFg3GG2yDnC2ldKpxs4xunpFF9DgqCqOIra3bc1HWrJ37Ww==", - "dev": true, - "engines": { - "node": ">=0.4.x" + "node": ">=18.3.0" } }, "node_modules/fs-extra": { @@ -3232,15 +3211,6 @@ "node": "6.* || 8.* || >= 10.*" } }, - "node_modules/get-func-name": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.2.tgz", - "integrity": "sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==", - "dev": true, - "engines": { - "node": "*" - } - }, "node_modules/get-intrinsic": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", @@ -3278,18 +3248,6 @@ "node": ">= 0.4" } }, - "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" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/glob": { "version": "10.4.5", "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", @@ -3367,17 +3325,16 @@ "dev": true }, "node_modules/happy-dom": { - "version": "15.7.4", - "resolved": "https://registry.npmjs.org/happy-dom/-/happy-dom-15.7.4.tgz", - "integrity": "sha512-r1vadDYGMtsHAAsqhDuk4IpPvr6N8MGKy5ntBo7tSdim+pWDxus2PNqOcOt8LuDZ4t3KJHE+gCuzupcx/GKnyQ==", + "version": "17.6.3", + "resolved": "https://registry.npmjs.org/happy-dom/-/happy-dom-17.6.3.tgz", + "integrity": "sha512-UVIHeVhxmxedbWPCfgS55Jg2rDfwf2BCKeylcPSqazLz5w3Kri7Q4xdBJubsr/+VUzFLh0VjIvh13RaDA2/Xug==", "dev": true, "dependencies": { - "entities": "^4.5.0", "webidl-conversions": "^7.0.0", "whatwg-mimetype": "^3.0.0" }, "engines": { - "node": ">=18.0.0" + "node": ">=20.0.0" } }, "node_modules/happy-dom/node_modules/webidl-conversions": { @@ -3444,18 +3401,12 @@ } }, "node_modules/human-id": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/human-id/-/human-id-1.0.2.tgz", - "integrity": "sha512-UNopramDEhHJD+VR+ehk8rOslwSfByxPIZyJRfV739NDhN5LF1fa1MqnzKm2lGTQRjNrjK19Q5fhkgIfjlVUKw==", - "dev": true - }, - "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==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/human-id/-/human-id-4.1.1.tgz", + "integrity": "sha512-3gKm/gCSUipeLsRYZbbdA1BD83lBoWUkZ7G9VFrhWPAU76KwYo5KR8V28bpoPm/ygy0x5/GCbpRQdY7VLYCoIg==", "dev": true, - "engines": { - "node": ">=10.17.0" + "bin": { + "human-id": "dist/cli.js" } }, "node_modules/iconv-lite": { @@ -3488,15 +3439,6 @@ "node": ">=8" } }, - "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/inflight": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", @@ -3514,42 +3456,6 @@ "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", "dev": true }, - "node_modules/is-alphabetical": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-2.0.1.tgz", - "integrity": "sha512-FWyyY60MeTNyeSRpkM2Iry0G9hpr7/9kD40mD/cGQEuilcZYS4okz8SN2Q6rLCJ8gbCt6fN+rC+6tMGS99LaxQ==", - "dev": true, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/is-alphanumerical": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-2.0.1.tgz", - "integrity": "sha512-hmbYhX/9MUMF5uh7tOXyK/n0ZvWpad5caBA17GsC6vyuCqaWliRG5K1qS9inmUhEMaOBIW7/whAnSwveW/LtZw==", - "dev": true, - "dependencies": { - "is-alphabetical": "^2.0.0", - "is-decimal": "^2.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "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": ">=8" - } - }, "node_modules/is-core-module": { "version": "2.15.1", "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.15.1.tgz", @@ -3565,16 +3471,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-decimal": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-decimal/-/is-decimal-2.0.1.tgz", - "integrity": "sha512-AAB9hiomQs5DXWcRB1rqsxGUstbRroFOPPVAomNk/3XHR5JyEZChOyTWe2oayKnsSsr/kcGqF+z6yuH6HHpN0A==", - "dev": true, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, "node_modules/is-docker": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", @@ -3620,16 +3516,6 @@ "node": ">=0.10.0" } }, - "node_modules/is-hexadecimal": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-hexadecimal/-/is-hexadecimal-2.0.1.tgz", - "integrity": "sha512-DgZQp241c8oO6cA1SbTEWiXeoxV42vlcJxgH+B3hi1AiqqKruZR3ZGF8In3fj4+/y/7rHvlOZLZtgJ/4ttYGZg==", - "dev": true, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, "node_modules/is-module": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-module/-/is-module-1.0.0.tgz", @@ -3657,18 +3543,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "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": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/is-subdir": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/is-subdir/-/is-subdir-1.2.0.tgz", @@ -3730,9 +3604,9 @@ } }, "node_modules/jiti": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/jiti/-/jiti-2.1.2.tgz", - "integrity": "sha512-cYNjJus5X9J4jLzTaI8rYoIq1k6YySiA1lK4wxSnOrBRXkbVyreZfhoboJhsUmwgU82lpPjj1IoU7Ggrau8r3g==", + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/jiti/-/jiti-2.4.2.tgz", + "integrity": "sha512-rg9zJN+G4n2nfJl5MW3BMygZX56zKPNVEYYqq7adpmMh4Jn2QNEwhvQlFy6jPVdcod7txZtKHWnyZiA3a0zP7A==", "dev": true, "bin": { "jiti": "lib/jiti-cli.mjs" @@ -3826,9 +3700,9 @@ } }, "node_modules/knip": { - "version": "5.31.0", - "resolved": "https://registry.npmjs.org/knip/-/knip-5.31.0.tgz", - "integrity": "sha512-4hR+qHx/id7mniCWWUqA4MXwGjYFN75xv3qLmEkl9Hm6eCKAhv0wGP0CyrXKUYxVyDplJQsqQaAlsjuRKYsdPA==", + "version": "5.60.2", + "resolved": "https://registry.npmjs.org/knip/-/knip-5.60.2.tgz", + "integrity": "sha512-TsYqEsoL3802RmhGL5MN7RLI6/03kocMYx/4BpMmwo3dSwEJxmzV7HqRxMVZr6c1llbd25+MqjgA86bv1IwsPA==", "dev": true, "funding": [ { @@ -3845,20 +3719,17 @@ } ], "dependencies": { - "@nodelib/fs.walk": "1.2.8", - "@snyk/github-codeowners": "1.1.0", - "easy-table": "1.2.0", - "enhanced-resolve": "^5.17.1", - "fast-glob": "^3.3.2", - "jiti": "^2.1.0", + "@nodelib/fs.walk": "^1.2.3", + "fast-glob": "^3.3.3", + "formatly": "^0.2.4", + "jiti": "^2.4.2", "js-yaml": "^4.1.0", "minimist": "^1.2.8", - "picocolors": "^1.0.0", + "oxc-resolver": "^11.1.0", + "picocolors": "^1.1.1", "picomatch": "^4.0.1", - "pretty-ms": "^9.0.0", - "smol-toml": "^1.3.0", - "strip-json-comments": "5.0.1", - "summary": "2.1.0", + "smol-toml": "^1.3.4", + "strip-json-comments": "5.0.2", "zod": "^3.22.4", "zod-validation-error": "^3.0.3" }, @@ -3867,7 +3738,7 @@ "knip-bun": "bin/knip-bun.js" }, "engines": { - "node": ">=18.6.0" + "node": ">=18.18.0" }, "peerDependencies": { "@types/node": ">=18", @@ -3905,9 +3776,9 @@ } }, "node_modules/knip/node_modules/strip-json-comments": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-5.0.1.tgz", - "integrity": "sha512-0fk9zBqO67Nq5M/m45qHCJxylV/DhBlIOVExqgOMiCCrzrhU6tCibRXNqE3jwJLftzE9SNuZtYbpzcO+i9FiKw==", + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-5.0.2.tgz", + "integrity": "sha512-4X2FR3UwhNUE9G49aIsJW5hRRR3GXGTBTZRMfv568O60ojM8HcWjV/VxAxCDW3SUND33O6ZY66ZuRcdkj73q2g==", "dev": true, "engines": { "node": ">=14.16" @@ -3993,22 +3864,18 @@ } }, "node_modules/loupe": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/loupe/-/loupe-3.1.1.tgz", - "integrity": "sha512-edNu/8D5MKVfGVFRhFf8aAxiTM6Wumfz5XsaatSxlD3w4R1d/WEKUTydCdPGbl9K7QG/Ca3GnDV2sIKIpXRQcw==", - "dev": true, - "dependencies": { - "get-func-name": "^2.0.1" - } + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/loupe/-/loupe-3.1.3.tgz", + "integrity": "sha512-kkIp7XSkP78ZxJEsSxW3712C6teJVoeHHwgo9zJ380de7IYyJ2ISlxojcH2pC5OFLewESmnRi/+XCDIEEVyoug==", + "dev": true }, "node_modules/lru-cache": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", - "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.1.0.tgz", + "integrity": "sha512-QIXZUBJUx+2zHUdQujWejBkcD9+cs94tLn0+YL8UrCh+D5sCXZ4c7LaEH48pNwRY3MLDgqUFyhlCyjJPf1WP0A==", "dev": true, - "dependencies": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" + "engines": { + "node": "20 || >=22" } }, "node_modules/lunr": { @@ -4018,9 +3885,9 @@ "dev": true }, "node_modules/magic-string": { - "version": "0.30.11", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.11.tgz", - "integrity": "sha512-+Wri9p0QHMy+545hKww7YAu5NyzF8iomPL/RQazugQ9+Ez4Ic3mERMd8ZTX5rfK944j+560ZJi8iAwgak1Ac7A==", + "version": "0.30.17", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.17.tgz", + "integrity": "sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==", "dev": true, "dependencies": { "@jridgewell/sourcemap-codec": "^1.5.0" @@ -4049,16 +3916,6 @@ "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", "dev": true }, - "node_modules/markdown-table": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/markdown-table/-/markdown-table-3.0.3.tgz", - "integrity": "sha512-Z1NL3Tb1M9wH4XESsCDEksWoKTdlUafKc4pt0GRwjUyXaCFZ+dc3g2erqB6zm3szA2IUSi7VnPI+o/9jnxh9hw==", - "dev": true, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, "node_modules/marked": { "version": "9.1.6", "resolved": "https://registry.npmjs.org/marked/-/marked-9.1.6.tgz", @@ -4112,22 +3969,6 @@ "node": ">= 0.4" } }, - "node_modules/mdast-util-find-and-replace": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/mdast-util-find-and-replace/-/mdast-util-find-and-replace-3.0.1.tgz", - "integrity": "sha512-SG21kZHGC3XRTSUhtofZkBzZTJNM5ecCi0SK2IMKmSXR8vO3peL+kb1O0z7Zl83jKtutG4k5Wv/W7V3/YHvzPA==", - "dev": true, - "dependencies": { - "@types/mdast": "^4.0.0", - "escape-string-regexp": "^5.0.0", - "unist-util-is": "^6.0.0", - "unist-util-visit-parents": "^6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, "node_modules/mdast-util-from-markdown": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-2.0.1.tgz", @@ -4170,304 +4011,120 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/mdast-util-gfm": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/mdast-util-gfm/-/mdast-util-gfm-3.0.0.tgz", - "integrity": "sha512-dgQEX5Amaq+DuUqf26jJqSK9qgixgd6rYDHAv4aTBuA92cTknZlKpPfa86Z/s8Dj8xsAQpFfBmPUHWJBWqS4Bw==", + "node_modules/mdast-util-phrasing": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/mdast-util-phrasing/-/mdast-util-phrasing-4.1.0.tgz", + "integrity": "sha512-TqICwyvJJpBwvGAMZjj4J2n0X8QWp21b9l0o7eXyVJ25YNWYbJDVIyD1bZXE6WtV6RmKJVYmQAKWa0zWOABz2w==", "dev": true, "dependencies": { - "mdast-util-from-markdown": "^2.0.0", - "mdast-util-gfm-autolink-literal": "^2.0.0", - "mdast-util-gfm-footnote": "^2.0.0", - "mdast-util-gfm-strikethrough": "^2.0.0", - "mdast-util-gfm-table": "^2.0.0", - "mdast-util-gfm-task-list-item": "^2.0.0", - "mdast-util-to-markdown": "^2.0.0" + "@types/mdast": "^4.0.0", + "unist-util-is": "^6.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "node_modules/mdast-util-gfm-autolink-literal": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/mdast-util-gfm-autolink-literal/-/mdast-util-gfm-autolink-literal-2.0.1.tgz", - "integrity": "sha512-5HVP2MKaP6L+G6YaxPNjuL0BPrq9orG3TsrZ9YXbA3vDw/ACI4MEsnoDpn6ZNm7GnZgtAcONJyPhOP8tNJQavQ==", + "node_modules/mdast-util-to-markdown": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mdast-util-to-markdown/-/mdast-util-to-markdown-2.1.0.tgz", + "integrity": "sha512-SR2VnIEdVNCJbP6y7kVTJgPLifdr8WEU440fQec7qHoHOUz/oJ2jmNRqdDQ3rbiStOXb2mCDGTuwsK5OPUgYlQ==", "dev": true, "dependencies": { "@types/mdast": "^4.0.0", - "ccount": "^2.0.0", - "devlop": "^1.0.0", - "mdast-util-find-and-replace": "^3.0.0", - "micromark-util-character": "^2.0.0" + "@types/unist": "^3.0.0", + "longest-streak": "^3.0.0", + "mdast-util-phrasing": "^4.0.0", + "mdast-util-to-string": "^4.0.0", + "micromark-util-decode-string": "^2.0.0", + "unist-util-visit": "^5.0.0", + "zwitch": "^2.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "node_modules/mdast-util-gfm-footnote": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/mdast-util-gfm-footnote/-/mdast-util-gfm-footnote-2.0.0.tgz", - "integrity": "sha512-5jOT2boTSVkMnQ7LTrd6n/18kqwjmuYqo7JUPe+tRCY6O7dAuTFMtTPauYYrMPpox9hlN0uOx/FL8XvEfG9/mQ==", + "node_modules/mdast-util-to-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-4.0.0.tgz", + "integrity": "sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg==", "dev": true, "dependencies": { - "@types/mdast": "^4.0.0", - "devlop": "^1.1.0", - "mdast-util-from-markdown": "^2.0.0", - "mdast-util-to-markdown": "^2.0.0", - "micromark-util-normalize-identifier": "^2.0.0" + "@types/mdast": "^4.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "node_modules/mdast-util-gfm-strikethrough": { + "node_modules/mdurl": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/mdast-util-gfm-strikethrough/-/mdast-util-gfm-strikethrough-2.0.0.tgz", - "integrity": "sha512-mKKb915TF+OC5ptj5bJ7WFRPdYtuHv0yTRxK2tJvi+BDqbkiG7h7u/9SI89nRAYcmap2xHQL9D+QG/6wSrTtXg==", + "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-2.0.0.tgz", + "integrity": "sha512-Lf+9+2r+Tdp5wXDXC4PcIBjTDtq4UKjCPMQhKIuzpJNW0b96kVqSwW0bT7FhRSfmAiFYgP+SCRvdrDozfh0U5w==", + "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": { - "@types/mdast": "^4.0.0", - "mdast-util-from-markdown": "^2.0.0", - "mdast-util-to-markdown": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "engines": { + "node": ">= 8" } }, - "node_modules/mdast-util-gfm-table": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/mdast-util-gfm-table/-/mdast-util-gfm-table-2.0.0.tgz", - "integrity": "sha512-78UEvebzz/rJIxLvE7ZtDd/vIQ0RHv+3Mh5DR96p7cS7HsBhYIICDBCu8csTNWNO6tBWfqXPWekRuj2FNOGOZg==", + "node_modules/micromark": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/micromark/-/micromark-4.0.0.tgz", + "integrity": "sha512-o/sd0nMof8kYff+TqcDx3VSrgBTcZpSvYcAHIfHhv5VAuNmisCxjhx6YmxS8PFEpb9z5WKWKPdzf0jM23ro3RQ==", "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "dependencies": { - "@types/mdast": "^4.0.0", + "@types/debug": "^4.0.0", + "debug": "^4.0.0", + "decode-named-character-reference": "^1.0.0", "devlop": "^1.0.0", - "markdown-table": "^3.0.0", - "mdast-util-from-markdown": "^2.0.0", - "mdast-util-to-markdown": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "micromark-core-commonmark": "^2.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-chunked": "^2.0.0", + "micromark-util-combine-extensions": "^2.0.0", + "micromark-util-decode-numeric-character-reference": "^2.0.0", + "micromark-util-encode": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0", + "micromark-util-resolve-all": "^2.0.0", + "micromark-util-sanitize-uri": "^2.0.0", + "micromark-util-subtokenize": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" } }, - "node_modules/mdast-util-gfm-task-list-item": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/mdast-util-gfm-task-list-item/-/mdast-util-gfm-task-list-item-2.0.0.tgz", - "integrity": "sha512-IrtvNvjxC1o06taBAVJznEnkiHxLFTzgonUdy8hzFVeDun0uTjxxrRGVaNFqkU1wJR3RBPEfsxmU6jDWPofrTQ==", + "node_modules/micromark-core-commonmark": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-core-commonmark/-/micromark-core-commonmark-2.0.1.tgz", + "integrity": "sha512-CUQyKr1e///ZODyD1U3xit6zXwy1a8q2a1S1HKtIlmgvurrEpaw/Y9y6KSIbF8P59cn/NjzHyO+Q2fAyYLQrAA==", "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "dependencies": { - "@types/mdast": "^4.0.0", - "devlop": "^1.0.0", - "mdast-util-from-markdown": "^2.0.0", - "mdast-util-to-markdown": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-mdx": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/mdast-util-mdx/-/mdast-util-mdx-3.0.0.tgz", - "integrity": "sha512-JfbYLAW7XnYTTbUsmpu0kdBUVe+yKVJZBItEjwyYJiDJuZ9w4eeaqks4HQO+R7objWgS2ymV60GYpI14Ug554w==", - "dev": true, - "dependencies": { - "mdast-util-from-markdown": "^2.0.0", - "mdast-util-mdx-expression": "^2.0.0", - "mdast-util-mdx-jsx": "^3.0.0", - "mdast-util-mdxjs-esm": "^2.0.0", - "mdast-util-to-markdown": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-mdx-expression": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/mdast-util-mdx-expression/-/mdast-util-mdx-expression-2.0.1.tgz", - "integrity": "sha512-J6f+9hUp+ldTZqKRSg7Vw5V6MqjATc+3E4gf3CFNcuZNWD8XdyI6zQ8GqH7f8169MM6P7hMBRDVGnn7oHB9kXQ==", - "dev": true, - "dependencies": { - "@types/estree-jsx": "^1.0.0", - "@types/hast": "^3.0.0", - "@types/mdast": "^4.0.0", - "devlop": "^1.0.0", - "mdast-util-from-markdown": "^2.0.0", - "mdast-util-to-markdown": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-mdx-jsx": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/mdast-util-mdx-jsx/-/mdast-util-mdx-jsx-3.2.0.tgz", - "integrity": "sha512-lj/z8v0r6ZtsN/cGNNtemmmfoLAFZnjMbNyLzBafjzikOM+glrjNHPlf6lQDOTccj9n5b0PPihEBbhneMyGs1Q==", - "dev": true, - "dependencies": { - "@types/estree-jsx": "^1.0.0", - "@types/hast": "^3.0.0", - "@types/mdast": "^4.0.0", - "@types/unist": "^3.0.0", - "ccount": "^2.0.0", - "devlop": "^1.1.0", - "mdast-util-from-markdown": "^2.0.0", - "mdast-util-to-markdown": "^2.0.0", - "parse-entities": "^4.0.0", - "stringify-entities": "^4.0.0", - "unist-util-stringify-position": "^4.0.0", - "vfile-message": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-mdxjs-esm": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/mdast-util-mdxjs-esm/-/mdast-util-mdxjs-esm-2.0.1.tgz", - "integrity": "sha512-EcmOpxsZ96CvlP03NghtH1EsLtr0n9Tm4lPUJUBccV9RwUOneqSycg19n5HGzCf+10LozMRSObtVr3ee1WoHtg==", - "dev": true, - "dependencies": { - "@types/estree-jsx": "^1.0.0", - "@types/hast": "^3.0.0", - "@types/mdast": "^4.0.0", - "devlop": "^1.0.0", - "mdast-util-from-markdown": "^2.0.0", - "mdast-util-to-markdown": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-phrasing": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/mdast-util-phrasing/-/mdast-util-phrasing-4.1.0.tgz", - "integrity": "sha512-TqICwyvJJpBwvGAMZjj4J2n0X8QWp21b9l0o7eXyVJ25YNWYbJDVIyD1bZXE6WtV6RmKJVYmQAKWa0zWOABz2w==", - "dev": true, - "dependencies": { - "@types/mdast": "^4.0.0", - "unist-util-is": "^6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-to-markdown": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mdast-util-to-markdown/-/mdast-util-to-markdown-2.1.0.tgz", - "integrity": "sha512-SR2VnIEdVNCJbP6y7kVTJgPLifdr8WEU440fQec7qHoHOUz/oJ2jmNRqdDQ3rbiStOXb2mCDGTuwsK5OPUgYlQ==", - "dev": true, - "dependencies": { - "@types/mdast": "^4.0.0", - "@types/unist": "^3.0.0", - "longest-streak": "^3.0.0", - "mdast-util-phrasing": "^4.0.0", - "mdast-util-to-string": "^4.0.0", - "micromark-util-decode-string": "^2.0.0", - "unist-util-visit": "^5.0.0", - "zwitch": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-to-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-4.0.0.tgz", - "integrity": "sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg==", - "dev": true, - "dependencies": { - "@types/mdast": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdurl": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-2.0.0.tgz", - "integrity": "sha512-Lf+9+2r+Tdp5wXDXC4PcIBjTDtq4UKjCPMQhKIuzpJNW0b96kVqSwW0bT7FhRSfmAiFYgP+SCRvdrDozfh0U5w==", - "dev": true - }, - "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": ">= 8" - } - }, - "node_modules/micromark": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/micromark/-/micromark-4.0.0.tgz", - "integrity": "sha512-o/sd0nMof8kYff+TqcDx3VSrgBTcZpSvYcAHIfHhv5VAuNmisCxjhx6YmxS8PFEpb9z5WKWKPdzf0jM23ro3RQ==", - "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "dependencies": { - "@types/debug": "^4.0.0", - "debug": "^4.0.0", - "decode-named-character-reference": "^1.0.0", - "devlop": "^1.0.0", - "micromark-core-commonmark": "^2.0.0", - "micromark-factory-space": "^2.0.0", - "micromark-util-character": "^2.0.0", - "micromark-util-chunked": "^2.0.0", - "micromark-util-combine-extensions": "^2.0.0", - "micromark-util-decode-numeric-character-reference": "^2.0.0", - "micromark-util-encode": "^2.0.0", - "micromark-util-normalize-identifier": "^2.0.0", - "micromark-util-resolve-all": "^2.0.0", - "micromark-util-sanitize-uri": "^2.0.0", - "micromark-util-subtokenize": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" - } - }, - "node_modules/micromark-core-commonmark": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-core-commonmark/-/micromark-core-commonmark-2.0.1.tgz", - "integrity": "sha512-CUQyKr1e///ZODyD1U3xit6zXwy1a8q2a1S1HKtIlmgvurrEpaw/Y9y6KSIbF8P59cn/NjzHyO+Q2fAyYLQrAA==", - "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "dependencies": { - "decode-named-character-reference": "^1.0.0", + "decode-named-character-reference": "^1.0.0", "devlop": "^1.0.0", "micromark-factory-destination": "^2.0.0", "micromark-factory-label": "^2.0.0", @@ -4501,230 +4158,6 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/micromark-extension-gfm": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm/-/micromark-extension-gfm-3.0.0.tgz", - "integrity": "sha512-vsKArQsicm7t0z2GugkCKtZehqUm31oeGBV/KVSorWSy8ZlNAv7ytjFhvaryUiCUJYqs+NoE6AFhpQvBTM6Q4w==", - "dev": true, - "dependencies": { - "micromark-extension-gfm-autolink-literal": "^2.0.0", - "micromark-extension-gfm-footnote": "^2.0.0", - "micromark-extension-gfm-strikethrough": "^2.0.0", - "micromark-extension-gfm-table": "^2.0.0", - "micromark-extension-gfm-tagfilter": "^2.0.0", - "micromark-extension-gfm-task-list-item": "^2.0.0", - "micromark-util-combine-extensions": "^2.0.0", - "micromark-util-types": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/micromark-extension-gfm-autolink-literal": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-autolink-literal/-/micromark-extension-gfm-autolink-literal-2.1.0.tgz", - "integrity": "sha512-oOg7knzhicgQ3t4QCjCWgTmfNhvQbDDnJeVu9v81r7NltNCVmhPy1fJRX27pISafdjL+SVc4d3l48Gb6pbRypw==", - "dev": true, - "dependencies": { - "micromark-util-character": "^2.0.0", - "micromark-util-sanitize-uri": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/micromark-extension-gfm-footnote": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-footnote/-/micromark-extension-gfm-footnote-2.1.0.tgz", - "integrity": "sha512-/yPhxI1ntnDNsiHtzLKYnE3vf9JZ6cAisqVDauhp4CEHxlb4uoOTxOCJ+9s51bIB8U1N1FJ1RXOKTIlD5B/gqw==", - "dev": true, - "dependencies": { - "devlop": "^1.0.0", - "micromark-core-commonmark": "^2.0.0", - "micromark-factory-space": "^2.0.0", - "micromark-util-character": "^2.0.0", - "micromark-util-normalize-identifier": "^2.0.0", - "micromark-util-sanitize-uri": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/micromark-extension-gfm-strikethrough": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-strikethrough/-/micromark-extension-gfm-strikethrough-2.1.0.tgz", - "integrity": "sha512-ADVjpOOkjz1hhkZLlBiYA9cR2Anf8F4HqZUO6e5eDcPQd0Txw5fxLzzxnEkSkfnD0wziSGiv7sYhk/ktvbf1uw==", - "dev": true, - "dependencies": { - "devlop": "^1.0.0", - "micromark-util-chunked": "^2.0.0", - "micromark-util-classify-character": "^2.0.0", - "micromark-util-resolve-all": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/micromark-extension-gfm-table": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-table/-/micromark-extension-gfm-table-2.1.0.tgz", - "integrity": "sha512-Ub2ncQv+fwD70/l4ou27b4YzfNaCJOvyX4HxXU15m7mpYY+rjuWzsLIPZHJL253Z643RpbcP1oeIJlQ/SKW67g==", - "dev": true, - "dependencies": { - "devlop": "^1.0.0", - "micromark-factory-space": "^2.0.0", - "micromark-util-character": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/micromark-extension-gfm-tagfilter": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-tagfilter/-/micromark-extension-gfm-tagfilter-2.0.0.tgz", - "integrity": "sha512-xHlTOmuCSotIA8TW1mDIM6X2O1SiX5P9IuDtqGonFhEK0qgRI4yeC6vMxEV2dgyr2TiD+2PQ10o+cOhdVAcwfg==", - "dev": true, - "dependencies": { - "micromark-util-types": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/micromark-extension-gfm-task-list-item": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-task-list-item/-/micromark-extension-gfm-task-list-item-2.1.0.tgz", - "integrity": "sha512-qIBZhqxqI6fjLDYFTBIa4eivDMnP+OZqsNwmQ3xNLE4Cxwc+zfQEfbs6tzAo2Hjq+bh6q5F+Z8/cksrLFYWQQw==", - "dev": true, - "dependencies": { - "devlop": "^1.0.0", - "micromark-factory-space": "^2.0.0", - "micromark-util-character": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/micromark-extension-mdx-expression": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/micromark-extension-mdx-expression/-/micromark-extension-mdx-expression-3.0.0.tgz", - "integrity": "sha512-sI0nwhUDz97xyzqJAbHQhp5TfaxEvZZZ2JDqUo+7NvyIYG6BZ5CPPqj2ogUoPJlmXHBnyZUzISg9+oUmU6tUjQ==", - "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "dependencies": { - "@types/estree": "^1.0.0", - "devlop": "^1.0.0", - "micromark-factory-mdx-expression": "^2.0.0", - "micromark-factory-space": "^2.0.0", - "micromark-util-character": "^2.0.0", - "micromark-util-events-to-acorn": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" - } - }, - "node_modules/micromark-extension-mdx-jsx": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/micromark-extension-mdx-jsx/-/micromark-extension-mdx-jsx-3.0.1.tgz", - "integrity": "sha512-vNuFb9czP8QCtAQcEJn0UJQJZA8Dk6DXKBqx+bg/w0WGuSxDxNr7hErW89tHUY31dUW4NqEOWwmEUNhjTFmHkg==", - "dev": true, - "dependencies": { - "@types/acorn": "^4.0.0", - "@types/estree": "^1.0.0", - "devlop": "^1.0.0", - "estree-util-is-identifier-name": "^3.0.0", - "micromark-factory-mdx-expression": "^2.0.0", - "micromark-factory-space": "^2.0.0", - "micromark-util-character": "^2.0.0", - "micromark-util-events-to-acorn": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0", - "vfile-message": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/micromark-extension-mdx-md": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-extension-mdx-md/-/micromark-extension-mdx-md-2.0.0.tgz", - "integrity": "sha512-EpAiszsB3blw4Rpba7xTOUptcFeBFi+6PY8VnJ2hhimH+vCQDirWgsMpz7w1XcZE7LVrSAUGb9VJpG9ghlYvYQ==", - "dev": true, - "dependencies": { - "micromark-util-types": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/micromark-extension-mdxjs": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/micromark-extension-mdxjs/-/micromark-extension-mdxjs-3.0.0.tgz", - "integrity": "sha512-A873fJfhnJ2siZyUrJ31l34Uqwy4xIFmvPY1oj+Ean5PHcPBYzEsvqvWGaWcfEIr11O5Dlw3p2y0tZWpKHDejQ==", - "dev": true, - "dependencies": { - "acorn": "^8.0.0", - "acorn-jsx": "^5.0.0", - "micromark-extension-mdx-expression": "^3.0.0", - "micromark-extension-mdx-jsx": "^3.0.0", - "micromark-extension-mdx-md": "^2.0.0", - "micromark-extension-mdxjs-esm": "^3.0.0", - "micromark-util-combine-extensions": "^2.0.0", - "micromark-util-types": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/micromark-extension-mdxjs-esm": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/micromark-extension-mdxjs-esm/-/micromark-extension-mdxjs-esm-3.0.0.tgz", - "integrity": "sha512-DJFl4ZqkErRpq/dAPyeWp15tGrcrrJho1hKK5uBS70BCtfrIFg81sqcTVu3Ta+KD1Tk5vAtBNElWxtAa+m8K9A==", - "dev": true, - "dependencies": { - "@types/estree": "^1.0.0", - "devlop": "^1.0.0", - "micromark-core-commonmark": "^2.0.0", - "micromark-util-character": "^2.0.0", - "micromark-util-events-to-acorn": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0", - "unist-util-position-from-estree": "^2.0.0", - "vfile-message": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, "node_modules/micromark-factory-destination": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/micromark-factory-destination/-/micromark-factory-destination-2.0.0.tgz", @@ -4768,33 +4201,6 @@ "micromark-util-types": "^2.0.0" } }, - "node_modules/micromark-factory-mdx-expression": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/micromark-factory-mdx-expression/-/micromark-factory-mdx-expression-2.0.2.tgz", - "integrity": "sha512-5E5I2pFzJyg2CtemqAbcyCktpHXuJbABnsb32wX2U8IQKhhVFBqkcZR5LRm1WVoFqa4kTueZK4abep7wdo9nrw==", - "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "dependencies": { - "@types/estree": "^1.0.0", - "devlop": "^1.0.0", - "micromark-factory-space": "^2.0.0", - "micromark-util-character": "^2.0.0", - "micromark-util-events-to-acorn": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0", - "unist-util-position-from-estree": "^2.0.0", - "vfile-message": "^4.0.0" - } - }, "node_modules/micromark-factory-space": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/micromark-factory-space/-/micromark-factory-space-2.0.0.tgz", @@ -4996,32 +4402,6 @@ } ] }, - "node_modules/micromark-util-events-to-acorn": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/micromark-util-events-to-acorn/-/micromark-util-events-to-acorn-2.0.2.tgz", - "integrity": "sha512-Fk+xmBrOv9QZnEDguL9OI9/NQQp6Hz4FuQ4YmCb/5V7+9eAh1s6AYSvL20kHkD67YIg7EpE54TiSlcsf3vyZgA==", - "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "dependencies": { - "@types/acorn": "^4.0.0", - "@types/estree": "^1.0.0", - "@types/unist": "^3.0.0", - "devlop": "^1.0.0", - "estree-util-visit": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0", - "vfile-message": "^4.0.0" - } - }, "node_modules/micromark-util-html-tag-name": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/micromark-util-html-tag-name/-/micromark-util-html-tag-name-2.0.0.tgz", @@ -5164,15 +4544,6 @@ "node": ">=8.6" } }, - "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/minimatch": { "version": "9.0.5", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", @@ -5206,6 +4577,18 @@ "node": ">=16 || 14 >=14.17" } }, + "node_modules/mlly": { + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/mlly/-/mlly-1.7.4.tgz", + "integrity": "sha512-qmdSIPC4bDJXgZTCR7XosJiNKySV7O215tsPtDN9iEO/7q/76b/ijtgRu/+epFXSJhijtTCCGp3DWS549P3xKw==", + "dev": true, + "dependencies": { + "acorn": "^8.14.0", + "pathe": "^2.0.1", + "pkg-types": "^1.3.0", + "ufo": "^1.5.4" + } + }, "node_modules/mri": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/mri/-/mri-1.2.0.tgz", @@ -5265,27 +4648,6 @@ "node": ">=18" } }, - "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/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": { - "path-key": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/object-assign": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", @@ -5313,21 +4675,6 @@ "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/sindresorhus" - } - }, "node_modules/open": { "version": "7.4.2", "resolved": "https://registry.npmjs.org/open/-/open-7.4.2.tgz", @@ -5359,6 +4706,30 @@ "integrity": "sha512-/jHxFIzoMXdqPzTaCpFzAAWhpkSjZPF4Vsn6jAfNpmbH/ymsmd7Qc6VE9BGn0L6YMj6uwpQLxCECpus4ukKS9Q==", "dev": true }, + "node_modules/oxc-resolver": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/oxc-resolver/-/oxc-resolver-11.1.0.tgz", + "integrity": "sha512-/W/9O6m7lkDJMIXtXvNKXE6THIoNWwstsKpR/R8+yI9e7vC9wu92MDqLBxkgckZ2fTFmKEjozTxVibHBaRUgCA==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/Boshen" + }, + "optionalDependencies": { + "@oxc-resolver/binding-darwin-arm64": "11.1.0", + "@oxc-resolver/binding-darwin-x64": "11.1.0", + "@oxc-resolver/binding-freebsd-x64": "11.1.0", + "@oxc-resolver/binding-linux-arm-gnueabihf": "11.1.0", + "@oxc-resolver/binding-linux-arm64-gnu": "11.1.0", + "@oxc-resolver/binding-linux-arm64-musl": "11.1.0", + "@oxc-resolver/binding-linux-riscv64-gnu": "11.1.0", + "@oxc-resolver/binding-linux-s390x-gnu": "11.1.0", + "@oxc-resolver/binding-linux-x64-gnu": "11.1.0", + "@oxc-resolver/binding-linux-x64-musl": "11.1.0", + "@oxc-resolver/binding-wasm32-wasi": "11.1.0", + "@oxc-resolver/binding-win32-arm64-msvc": "11.1.0", + "@oxc-resolver/binding-win32-x64-msvc": "11.1.0" + } + }, "node_modules/p-filter": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/p-filter/-/p-filter-2.1.0.tgz", @@ -5428,43 +4799,6 @@ "integrity": "sha512-E385OSk9qDcXhcM9LNSe4sdhx8a9mAPrZ4sMLW+tmxl5ZuGtPUcdFu+MPP2jbgiWAZ6Pfe5soGFMd+0Db5Vrog==", "dev": true }, - "node_modules/parse-entities": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/parse-entities/-/parse-entities-4.0.2.tgz", - "integrity": "sha512-GG2AQYWoLgL877gQIKeRPGO1xF9+eG1ujIb5soS5gPvLQ1y2o8FL90w2QWNdf9I361Mpp7726c+lj3U0qK1uGw==", - "dev": true, - "dependencies": { - "@types/unist": "^2.0.0", - "character-entities-legacy": "^3.0.0", - "character-reference-invalid": "^2.0.0", - "decode-named-character-reference": "^1.0.0", - "is-alphanumerical": "^2.0.0", - "is-decimal": "^2.0.0", - "is-hexadecimal": "^2.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/parse-entities/node_modules/@types/unist": { - "version": "2.0.11", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.11.tgz", - "integrity": "sha512-CmBKiL6NNo/OqgmMn95Fk9Whlp2mtvIv+KNpQKN2F4SjvrEesubTRWGYSg+BnWZOnlCaSTU1sMpsBOzgbYhnsA==", - "dev": true - }, - "node_modules/parse-ms": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/parse-ms/-/parse-ms-4.0.0.tgz", - "integrity": "sha512-TXfryirbmq34y8QBwgqCVLi+8oA3oWx2eAnSn62ITyEhEYaWRlVZ2DvMM9eZbMs/RfxPu/PK/aBLyGj4IrqMHw==", - "dev": true, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/parse5": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/parse5/-/parse5-5.1.1.tgz", @@ -5516,20 +4850,6 @@ "npm": ">5" } }, - "node_modules/patch-package/node_modules/cross-spawn": { - "version": "7.0.6", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", - "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", - "dev": true, - "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, - "engines": { - "node": ">= 8" - } - }, "node_modules/patch-package/node_modules/fs-extra": { "version": "9.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", @@ -5557,27 +4877,6 @@ "graceful-fs": "^4.1.6" } }, - "node_modules/patch-package/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/patch-package/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/patch-package/node_modules/slash": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", @@ -5596,21 +4895,6 @@ "node": ">= 10.0.0" } }, - "node_modules/patch-package/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/path-exists": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", @@ -5676,9 +4960,9 @@ } }, "node_modules/pathe": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.2.tgz", - "integrity": "sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/pathe/-/pathe-2.0.3.tgz", + "integrity": "sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==", "dev": true }, "node_modules/pathval": { @@ -5726,6 +5010,17 @@ "node": ">= 6" } }, + "node_modules/pkg-types": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/pkg-types/-/pkg-types-1.3.1.tgz", + "integrity": "sha512-/Jm5M4RvtBFVkKWRu2BLUTNP8/M2a+UwuAX+ae4770q1qVGtfjG+WTCupoZixokjmHiry8uI+dlY8KXYV5HVVQ==", + "dev": true, + "dependencies": { + "confbox": "^0.1.8", + "mlly": "^1.7.4", + "pathe": "^2.0.1" + } + }, "node_modules/postcss": { "version": "8.4.47", "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.47.tgz", @@ -5797,9 +5092,9 @@ } }, "node_modules/prettier": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.3.3.tgz", - "integrity": "sha512-i2tDNA0O5IrMO757lfrdQZCc2jPNDVntV0m/+4whiDfWaTKfMNgR7Qz0NAeGz/nRqF4m5/6CLzbP4/liHt12Ew==", + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.5.3.tgz", + "integrity": "sha512-QQtaxnoDJeAkDvDKWCLiwIXkTgRhwYDEQCghU9Z6q03iyek/rxRh/2lC3HB7P8sWT2xC/y5JDctPLBIGzHKbhw==", "dev": true, "bin": { "prettier": "bin/prettier.cjs" @@ -5827,27 +5122,6 @@ } } }, - "node_modules/pretty-ms": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-9.1.0.tgz", - "integrity": "sha512-o1piW0n3tgKIKCwk2vpM/vOV13zjJzvP37Ioze54YlTHE06m4tjEbzg9WsKkvTuyYln2DHjo5pY4qrZGI0otpw==", - "dev": true, - "dependencies": { - "parse-ms": "^4.0.0" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/pseudomap": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", - "integrity": "sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==", - "dev": true - }, "node_modules/punycode": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", @@ -5902,23 +5176,18 @@ } }, "node_modules/readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.1.2.tgz", + "integrity": "sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==", "dev": true, - "dependencies": { - "picomatch": "^2.2.1" - }, "engines": { - "node": ">=8.10.0" + "node": ">= 14.18.0" + }, + "funding": { + "type": "individual", + "url": "https://paulmillr.com/funding/" } }, - "node_modules/regenerator-runtime": { - "version": "0.14.1", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz", - "integrity": "sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==", - "dev": true - }, "node_modules/remark": { "version": "15.0.1", "resolved": "https://registry.npmjs.org/remark/-/remark-15.0.1.tgz", @@ -5951,38 +5220,6 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/remark-gfm": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/remark-gfm/-/remark-gfm-4.0.0.tgz", - "integrity": "sha512-U92vJgBPkbw4Zfu/IiW2oTZLSL3Zpv+uI7My2eq8JxKgqraFdU8YUGicEJCEgSbeaG+QDFqIcwwfMTOEelPxuA==", - "dev": true, - "dependencies": { - "@types/mdast": "^4.0.0", - "mdast-util-gfm": "^3.0.0", - "micromark-extension-gfm": "^3.0.0", - "remark-parse": "^11.0.0", - "remark-stringify": "^11.0.0", - "unified": "^11.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/remark-mdx": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/remark-mdx/-/remark-mdx-3.1.0.tgz", - "integrity": "sha512-Ngl/H3YXyBV9RcRNdlYsZujAmhsxwzxpDzpDEhFBVAGthS4GDgnctpDjgFl/ULx5UEDzqtW1cyBSNKqYYrqLBA==", - "dev": true, - "dependencies": { - "mdast-util-mdx": "^3.0.0", - "micromark-extension-mdxjs": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, "node_modules/remark-parse": { "version": "11.0.0", "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-11.0.0.tgz", @@ -6059,9 +5296,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==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.1.0.tgz", + "integrity": "sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==", "dev": true, "engines": { "iojs": ">=1.0.0", @@ -6244,24 +5481,24 @@ } }, "node_modules/shebang-command": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", - "integrity": "sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==", + "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": "^1.0.0" + "shebang-regex": "^3.0.0" }, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, "node_modules/shebang-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", - "integrity": "sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==", + "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": ">=0.10.0" + "node": ">=8" } }, "node_modules/siginfo": { @@ -6271,10 +5508,16 @@ "dev": true }, "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 + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "dev": true, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } }, "node_modules/skin-tone": { "version": "2.0.0", @@ -6298,9 +5541,9 @@ } }, "node_modules/smol-toml": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/smol-toml/-/smol-toml-1.3.0.tgz", - "integrity": "sha512-tWpi2TsODPScmi48b/OQZGi2lgUmBCHy6SZrhi/FdnnHiU1GwebbCfuQuxsC3nHaLwtYeJGPrDZDIeodDOc4pA==", + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/smol-toml/-/smol-toml-1.3.4.tgz", + "integrity": "sha512-UOPtVuYkzYGee0Bd2Szz8d2G3RfMfJ2t3qVdZUAozZyAk+a0Sxa+QKix0YCwjL/A1RR0ar44nCxaoN9FxdJGwA==", "dev": true, "engines": { "node": ">= 18" @@ -6331,13 +5574,13 @@ } }, "node_modules/spawndamnit": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/spawndamnit/-/spawndamnit-2.0.0.tgz", - "integrity": "sha512-j4JKEcncSjFlqIwU5L/rp2N5SIPsdxaRsIv678+TZxZ0SRDJTm8JrxJMjE/XuiEZNEir3S8l0Fa3Ke339WI4qA==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spawndamnit/-/spawndamnit-3.0.1.tgz", + "integrity": "sha512-MmnduQUuHCoFckZoWnXsTg7JaiLBJrKFj9UI2MbRPGaJeVpsLcVBu6P/IGZovziM/YBsellCmsprgNA+w0CzVg==", "dev": true, "dependencies": { - "cross-spawn": "^5.1.0", - "signal-exit": "^3.0.2" + "cross-spawn": "^7.0.5", + "signal-exit": "^4.0.1" } }, "node_modules/sprintf-js": { @@ -6353,9 +5596,9 @@ "dev": true }, "node_modules/std-env": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.7.0.tgz", - "integrity": "sha512-JPbdCEQLj1w5GilpiHAx3qJvFndqybBysA3qUOnznweH4QbNYUsW/ea8QzSrnh0vNsezMMw5bcVool8lM0gwzg==", + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.9.0.tgz", + "integrity": "sha512-UGvjygr6F6tpH7o2qyqR6QYpwraIjKSdtzyBdyytFOHmPZY917kwdwLG0RbOjWOnKmnm3PeHjaoLLMie7kPLQw==", "dev": true }, "node_modules/string-argv": { @@ -6396,20 +5639,6 @@ "node": ">=8" } }, - "node_modules/stringify-entities": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/stringify-entities/-/stringify-entities-4.0.4.tgz", - "integrity": "sha512-IwfBptatlO+QCJUo19AqvrPNqlVMpW9YEL2LIVY+Rpv2qsjCGxaDLNRgeGsQWJhfItebuJhsGSLjaBbNSQ+ieg==", - "dev": true, - "dependencies": { - "character-entities-html4": "^2.0.0", - "character-entities-legacy": "^3.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, "node_modules/strip-ansi": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", @@ -6444,15 +5673,6 @@ "node": ">=4" } }, - "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-json-comments": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", @@ -6496,12 +5716,6 @@ "node": ">= 6" } }, - "node_modules/summary": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/summary/-/summary-2.1.0.tgz", - "integrity": "sha512-nMIjMrd5Z2nuB2RZCKJfFMjgS3fygbeyGk9PxPPaJR1RIcyN9yn4A63Isovzm3ZtQuEkLBVgMdPup8UeLH7aQw==", - "dev": true - }, "node_modules/supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", @@ -6542,15 +5756,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/tapable": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", - "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, "node_modules/term-size": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/term-size/-/term-size-2.2.1.tgz", @@ -6600,28 +5805,31 @@ "dev": true }, "node_modules/tinyexec": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/tinyexec/-/tinyexec-0.3.0.tgz", - "integrity": "sha512-tVGE0mVJPGb0chKhqmsoosjsS+qUnJVGJpZgsHYQcGoPlG3B51R3PouqTgEGH2Dc9jjFyOqOpix6ZHNMXp1FZg==", + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/tinyexec/-/tinyexec-0.3.2.tgz", + "integrity": "sha512-KQQR9yN7R5+OSwaK0XQoj22pwHoTlgYqmUscPYoknOoWCWfj/5/ABTMRi69FrKU5ffPVh5QcFikpWJI/P1ocHA==", "dev": true }, "node_modules/tinyglobby": { - "version": "0.2.6", - "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.6.tgz", - "integrity": "sha512-NbBoFBpqfcgd1tCiO8Lkfdk+xrA7mlLR9zgvZcZWQQwU63XAfUePyd6wZBaU93Hqw347lHnwFzttAkemHzzz4g==", + "version": "0.2.14", + "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.14.tgz", + "integrity": "sha512-tX5e7OM1HnYr2+a2C/4V0htOcSQcoSTH9KgJnVvNm5zm/cyEWKJ7j7YutsH9CxMdtOkkLFy2AHrMci9IM8IPZQ==", "dev": true, "dependencies": { - "fdir": "^6.3.0", + "fdir": "^6.4.4", "picomatch": "^4.0.2" }, "engines": { "node": ">=12.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/SuperchupuDev" } }, "node_modules/tinyglobby/node_modules/fdir": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.3.0.tgz", - "integrity": "sha512-QOnuT+BOtivR77wYvCWHfGt9s4Pz1VIMbD463vegT5MLqNXy8rYFT/lPVEqf/bhYeT6qmqrNHhsX+rWwe3rOCQ==", + "version": "6.4.5", + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.4.5.tgz", + "integrity": "sha512-4BG7puHpVsIYxZUbiUE3RqGloLaSSwzYie5jvasC4LWuBWzZawynvYouhjbQKw2JuIGYdm0DzIxl8iVidKlUEw==", "dev": true, "peerDependencies": { "picomatch": "^3 || ^4" @@ -6645,27 +5853,27 @@ } }, "node_modules/tinypool": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/tinypool/-/tinypool-1.0.1.tgz", - "integrity": "sha512-URZYihUbRPcGv95En+sz6MfghfIc2OJ1sv/RmhWZLouPY0/8Vo80viwPvg3dlaS9fuq7fQMEfgRRK7BBZThBEA==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/tinypool/-/tinypool-1.1.0.tgz", + "integrity": "sha512-7CotroY9a8DKsKprEy/a14aCCm8jYVmR7aFy4fpkZM8sdpNJbKkixuNjgM50yCmip2ezc8z4N7k3oe2+rfRJCQ==", "dev": true, "engines": { "node": "^18.0.0 || >=20.0.0" } }, "node_modules/tinyrainbow": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/tinyrainbow/-/tinyrainbow-1.2.0.tgz", - "integrity": "sha512-weEDEq7Z5eTHPDh4xjX789+fHfF+P8boiFB+0vbWzpbnbsEr/GRaohi/uMKxg8RZMXnl1ItAi/IUHWMsjDV7kQ==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/tinyrainbow/-/tinyrainbow-2.0.0.tgz", + "integrity": "sha512-op4nsTR47R6p0vMUUoYl/a+ljLFVtlfaXkLQmqfLR1qHma1h/ysYk4hEXZ880bf2CYgTskvTa/e196Vd5dDQXw==", "dev": true, "engines": { "node": ">=14.0.0" } }, "node_modules/tinyspy": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/tinyspy/-/tinyspy-3.0.2.tgz", - "integrity": "sha512-n1cw8k1k0x4pgA2+9XrOkFydTerNcJ1zWCO5Nn9scWHTD+5tp8dghT2x1uduQePZTZgd3Tupf+x9BxJjeJi77Q==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/tinyspy/-/tinyspy-4.0.3.tgz", + "integrity": "sha512-t2T/WLB2WRgZ9EpE4jgPJ9w+i66UZfDc8wHh0xrwiRNN+UwH98GIJkTeZqX9rg0i0ptwzqW+uYeIF0T4F8LR7A==", "dev": true, "engines": { "node": ">=14.0.0" @@ -6695,19 +5903,6 @@ "node": ">=8.0" } }, - "node_modules/to-vfile": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/to-vfile/-/to-vfile-8.0.0.tgz", - "integrity": "sha512-IcmH1xB5576MJc9qcfEC/m/nQCFt3fzMHz45sSlgJyTWjRbKW1HAkJpuf3DgE57YzIlZcwcBZA5ENQbBo4aLkg==", - "dev": true, - "dependencies": { - "vfile": "^6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, "node_modules/tr46": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/tr46/-/tr46-1.0.1.tgz", @@ -6762,27 +5957,35 @@ } } }, + "node_modules/tslib": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", + "dev": true, + "optional": true + }, "node_modules/tsup": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/tsup/-/tsup-8.3.0.tgz", - "integrity": "sha512-ALscEeyS03IomcuNdFdc0YWGVIkwH1Ws7nfTbAPuoILvEV2hpGQAY72LIOjglGo4ShWpZfpBqP/jpQVCzqYQag==", + "version": "8.5.0", + "resolved": "https://registry.npmjs.org/tsup/-/tsup-8.5.0.tgz", + "integrity": "sha512-VmBp77lWNQq6PfuMqCHD3xWl22vEoWsKajkF8t+yMBawlUS8JzEI+vOVMeuNZIuMML8qXRizFKi9oD5glKQVcQ==", "dev": true, "dependencies": { - "bundle-require": "^5.0.0", + "bundle-require": "^5.1.0", "cac": "^6.7.14", - "chokidar": "^3.6.0", - "consola": "^3.2.3", - "debug": "^4.3.5", - "esbuild": "^0.23.0", - "execa": "^5.1.1", + "chokidar": "^4.0.3", + "consola": "^3.4.0", + "debug": "^4.4.0", + "esbuild": "^0.25.0", + "fix-dts-default-cjs-exports": "^1.0.0", "joycon": "^3.1.1", - "picocolors": "^1.0.1", + "picocolors": "^1.1.1", "postcss-load-config": "^6.0.1", "resolve-from": "^5.0.0", - "rollup": "^4.19.0", + "rollup": "^4.34.8", "source-map": "0.8.0-beta.0", "sucrase": "^3.35.0", - "tinyglobby": "^0.2.1", + "tinyexec": "^0.3.2", + "tinyglobby": "^0.2.11", "tree-kill": "^1.2.2" }, "bin": { @@ -6823,69 +6026,67 @@ } }, "node_modules/typedoc": { - "version": "0.27.6", - "resolved": "https://registry.npmjs.org/typedoc/-/typedoc-0.27.6.tgz", - "integrity": "sha512-oBFRoh2Px6jFx366db0lLlihcalq/JzyCVp7Vaq1yphL/tbgx2e+bkpkCgJPunaPvPwoTOXSwasfklWHm7GfAw==", + "version": "0.28.5", + "resolved": "https://registry.npmjs.org/typedoc/-/typedoc-0.28.5.tgz", + "integrity": "sha512-5PzUddaA9FbaarUzIsEc4wNXCiO4Ot3bJNeMF2qKpYlTmM9TTaSHQ7162w756ERCkXER/+o2purRG6YOAv6EMA==", "dev": true, "dependencies": { - "@gerrit0/mini-shiki": "^1.24.0", + "@gerrit0/mini-shiki": "^3.2.2", "lunr": "^2.3.9", "markdown-it": "^14.1.0", "minimatch": "^9.0.5", - "yaml": "^2.6.1" + "yaml": "^2.7.1" }, "bin": { "typedoc": "bin/typedoc" }, "engines": { - "node": ">= 18" + "node": ">= 18", + "pnpm": ">= 10" }, "peerDependencies": { - "typescript": "5.0.x || 5.1.x || 5.2.x || 5.3.x || 5.4.x || 5.5.x || 5.6.x || 5.7.x" + "typescript": "5.0.x || 5.1.x || 5.2.x || 5.3.x || 5.4.x || 5.5.x || 5.6.x || 5.7.x || 5.8.x" } }, "node_modules/typedoc-plugin-markdown": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/typedoc-plugin-markdown/-/typedoc-plugin-markdown-4.4.1.tgz", - "integrity": "sha512-fx23nSCvewI9IR8lzIYtzDphETcgTDuxKcmHKGD4lo36oexC+B1k4NaCOY58Snqb4OlE8OXDAGVcQXYYuLRCNw==", + "version": "4.6.4", + "resolved": "https://registry.npmjs.org/typedoc-plugin-markdown/-/typedoc-plugin-markdown-4.6.4.tgz", + "integrity": "sha512-AnbToFS1T1H+n40QbO2+i0wE6L+55rWnj7zxnM1r781+2gmhMF2dB6dzFpaylWLQYkbg4D1Y13sYnne/6qZwdw==", "dev": true, "engines": { "node": ">= 18" }, "peerDependencies": { - "typedoc": "0.27.x" + "typedoc": "0.28.x" } }, "node_modules/typedoc-plugin-remark": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/typedoc-plugin-remark/-/typedoc-plugin-remark-1.2.4.tgz", - "integrity": "sha512-+diI9wzIh1mKYUxQmhBPig/eNiaG0aXESDMKcWUdbHMQZZRtAdPf6MII+pIuWf+LAE8CGteiy725p1TXOEfczQ==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/typedoc-plugin-remark/-/typedoc-plugin-remark-2.0.1.tgz", + "integrity": "sha512-ZXIt75P2wo/8W4XC3Gs/JdYl8Of2K6MXOaYOsw14DEfery2T3hrM06MB+CpfQlTv+K+4LlI/24Ylzmv1Yo+bRg==", "dev": true, "dependencies": { "remark": "^15.0.1", "remark-frontmatter": "^5.0.0", - "remark-gfm": "^4.0.0", - "remark-mdx": "^3.1.0", - "to-vfile": "^8.0.0", - "unist-util-visit": "^5.0.0" + "vfile": "^6.0.3" }, "peerDependencies": { - "typedoc-plugin-markdown": ">=4.4.1" + "typedoc-plugin-markdown": ">=4.6.2" } }, "node_modules/typedoc-plugin-zod": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/typedoc-plugin-zod/-/typedoc-plugin-zod-1.3.1.tgz", - "integrity": "sha512-u4NH1Ez168gRNnhUd0x4pZhp85maJ9y050IxSok9XwdzTpUA9NN0ee3ho8ssrzmxsvO2UDbDEiks7xtI0p6UXA==", + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/typedoc-plugin-zod/-/typedoc-plugin-zod-1.4.1.tgz", + "integrity": "sha512-D7+uhPFCyKMcKnUSZip/BldE08Jo/yykvbxlIcY11fI8dKyCe23/igOiZ7rPW2mXD5N9kHEA2he9LkCoU+6HtA==", "dev": true, "peerDependencies": { - "typedoc": "0.23.x || 0.24.x || 0.25.x || 0.26.x || 0.27.x" + "typedoc": "0.23.x || 0.24.x || 0.25.x || 0.26.x || 0.27.x || 0.28.x" } }, "node_modules/typescript": { - "version": "5.6.2", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.6.2.tgz", - "integrity": "sha512-NW8ByodCSNCwZeghjN3o+JX5OFH0Ojg6sadjEKY4huZ52TqbJTJnDo5+Tw98lSy63NZvi4n+ez5m2u5d4PkZyw==", + "version": "5.8.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.8.3.tgz", + "integrity": "sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==", "dev": true, "bin": { "tsc": "bin/tsc", @@ -6901,10 +6102,16 @@ "integrity": "sha512-ARDJmphmdvUk6Glw7y9DQ2bFkKBHwQHLi2lsaH6PPmz/Ka9sFOBsBluozhDltWmnv9u/cF6Rt87znRTPV+yp/A==", "dev": true }, + "node_modules/ufo": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/ufo/-/ufo-1.6.1.tgz", + "integrity": "sha512-9a4/uxlTWJ4+a5i0ooc1rU7C7YOw3wT+UGqdeNNHWnOF9qcMBgLRS+4IYUqbczewFx4mLEig6gawh7X6mFlEkA==", + "dev": true + }, "node_modules/undici-types": { - "version": "6.19.8", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.19.8.tgz", - "integrity": "sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==", + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz", + "integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==", "dev": true }, "node_modules/unicode-emoji-modifier-base": { @@ -6948,19 +6155,6 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/unist-util-position-from-estree": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unist-util-position-from-estree/-/unist-util-position-from-estree-2.0.0.tgz", - "integrity": "sha512-KaFVRjoqLyF6YXCbVLNad/eS4+OfPQQn2yOd7zF/h5T/CSL2v8NpN6a5TPvtbXthAGw5nG+PuTtq+DdIZr+cRQ==", - "dev": true, - "dependencies": { - "@types/unist": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, "node_modules/unist-util-stringify-position": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-4.0.0.tgz", @@ -7118,30 +6312,31 @@ } }, "node_modules/vite-node": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/vite-node/-/vite-node-2.1.2.tgz", - "integrity": "sha512-HPcGNN5g/7I2OtPjLqgOtCRu/qhVvBxTUD3qzitmL0SrG1cWFzxzhMDWussxSbrRYWqnKf8P2jiNhPMSN+ymsQ==", + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/vite-node/-/vite-node-3.2.2.tgz", + "integrity": "sha512-Xj/jovjZvDXOq2FgLXu8NsY4uHUMWtzVmMC2LkCu9HWdr9Qu1Is5sanX3Z4jOFKdohfaWDnEJWp9pRP0vVpAcA==", "dev": true, "dependencies": { "cac": "^6.7.14", - "debug": "^4.3.6", - "pathe": "^1.1.2", - "vite": "^5.0.0" + "debug": "^4.4.1", + "es-module-lexer": "^1.7.0", + "pathe": "^2.0.3", + "vite": "^5.0.0 || ^6.0.0 || ^7.0.0-0" }, "bin": { "vite-node": "vite-node.mjs" }, "engines": { - "node": "^18.0.0 || >=20.0.0" + "node": "^18.0.0 || ^20.0.0 || >=22.0.0" }, "funding": { "url": "https://opencollective.com/vitest" } }, "node_modules/vite-tsconfig-paths": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/vite-tsconfig-paths/-/vite-tsconfig-paths-5.0.1.tgz", - "integrity": "sha512-yqwv+LstU7NwPeNqajZzLEBVpUFU6Dugtb2P84FXuvaoYA+/70l9MHE+GYfYAycVyPSDYZ7mjOFuYBRqlEpTig==", + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/vite-tsconfig-paths/-/vite-tsconfig-paths-5.1.4.tgz", + "integrity": "sha512-cYj0LRuLV2c2sMqhqhGpaO3LretdtMn/BVX4cPLanIZuwwrkVl+lK84E/miEXkCHWXuq65rhNN4rXsBcOB3S4w==", "dev": true, "dependencies": { "debug": "^4.1.1", @@ -7564,45 +6759,50 @@ } }, "node_modules/vitest": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/vitest/-/vitest-2.1.2.tgz", - "integrity": "sha512-veNjLizOMkRrJ6xxb+pvxN6/QAWg95mzcRjtmkepXdN87FNfxAss9RKe2far/G9cQpipfgP2taqg0KiWsquj8A==", - "dev": true, - "dependencies": { - "@vitest/expect": "2.1.2", - "@vitest/mocker": "2.1.2", - "@vitest/pretty-format": "^2.1.2", - "@vitest/runner": "2.1.2", - "@vitest/snapshot": "2.1.2", - "@vitest/spy": "2.1.2", - "@vitest/utils": "2.1.2", - "chai": "^5.1.1", - "debug": "^4.3.6", - "magic-string": "^0.30.11", - "pathe": "^1.1.2", - "std-env": "^3.7.0", + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/vitest/-/vitest-3.2.2.tgz", + "integrity": "sha512-fyNn/Rp016Bt5qvY0OQvIUCwW2vnaEBLxP42PmKbNIoasSYjML+8xyeADOPvBe+Xfl/ubIw4og7Lt9jflRsCNw==", + "dev": true, + "dependencies": { + "@types/chai": "^5.2.2", + "@vitest/expect": "3.2.2", + "@vitest/mocker": "3.2.2", + "@vitest/pretty-format": "^3.2.2", + "@vitest/runner": "3.2.2", + "@vitest/snapshot": "3.2.2", + "@vitest/spy": "3.2.2", + "@vitest/utils": "3.2.2", + "chai": "^5.2.0", + "debug": "^4.4.1", + "expect-type": "^1.2.1", + "magic-string": "^0.30.17", + "pathe": "^2.0.3", + "picomatch": "^4.0.2", + "std-env": "^3.9.0", "tinybench": "^2.9.0", - "tinyexec": "^0.3.0", - "tinypool": "^1.0.0", - "tinyrainbow": "^1.2.0", - "vite": "^5.0.0", - "vite-node": "2.1.2", + "tinyexec": "^0.3.2", + "tinyglobby": "^0.2.14", + "tinypool": "^1.1.0", + "tinyrainbow": "^2.0.0", + "vite": "^5.0.0 || ^6.0.0 || ^7.0.0-0", + "vite-node": "3.2.2", "why-is-node-running": "^2.3.0" }, "bin": { "vitest": "vitest.mjs" }, "engines": { - "node": "^18.0.0 || >=20.0.0" + "node": "^18.0.0 || ^20.0.0 || >=22.0.0" }, "funding": { "url": "https://opencollective.com/vitest" }, "peerDependencies": { "@edge-runtime/vm": "*", - "@types/node": "^18.0.0 || >=20.0.0", - "@vitest/browser": "2.1.2", - "@vitest/ui": "2.1.2", + "@types/debug": "^4.1.12", + "@types/node": "^18.0.0 || ^20.0.0 || >=22.0.0", + "@vitest/browser": "3.2.2", + "@vitest/ui": "3.2.2", "happy-dom": "*", "jsdom": "*" }, @@ -7610,6 +6810,9 @@ "@edge-runtime/vm": { "optional": true }, + "@types/debug": { + "optional": true + }, "@types/node": { "optional": true }, @@ -7627,14 +6830,25 @@ } } }, - "node_modules/wcwidth": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", - "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==", + "node_modules/vitest/node_modules/picomatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz", + "integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==", "dev": true, - "optional": true, - "dependencies": { - "defaults": "^1.0.3" + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/walk-up-path": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/walk-up-path/-/walk-up-path-4.0.0.tgz", + "integrity": "sha512-3hu+tD8YzSLGuFYtPRb48vdhKMi0KQV5sn+uWr8+7dMEq/2G/dtLrdDinkLjqq5TIbIBjYJ4Ax/n3YiaW7QM8A==", + "dev": true, + "engines": { + "node": "20 || >=22" } }, "node_modules/webidl-conversions": { @@ -7664,15 +6878,18 @@ } }, "node_modules/which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "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": { - "which": "bin/which" + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" } }, "node_modules/why-is-node-running": { @@ -7804,21 +7021,21 @@ } }, "node_modules/yallist": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", "dev": true }, "node_modules/yaml": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.7.0.tgz", - "integrity": "sha512-+hSoy/QHluxmC9kCIJyL/uyFmLmc+e5CFR5Wa+bpIhIj85LVb9ZH2nVnqrHoSvKogwODv0ClqZkmiSSaIH5LTA==", + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.8.0.tgz", + "integrity": "sha512-4lLa/EcQCB0cJkyts+FpIRx5G/llPxfP6VQU5KByHEhLxY3IJCH0f0Hy1MHI8sClTvsIb8qwRJ6R/ZdlDJ/leQ==", "dev": true, "bin": { "yaml": "bin.mjs" }, "engines": { - "node": ">= 14" + "node": ">= 14.6" } }, "node_modules/yargs": { @@ -7849,9 +7066,9 @@ } }, "node_modules/zod": { - "version": "3.23.8", - "resolved": "https://registry.npmjs.org/zod/-/zod-3.23.8.tgz", - "integrity": "sha512-XBx9AXhXktjUqnepgTiE5flcKIYWi/rme0Eaj+5Y0lftuGBq+jyRu/md4WnuxqgP1ubdpNCsYEYPxrzVHD8d6g==", + "version": "3.25.55", + "resolved": "https://registry.npmjs.org/zod/-/zod-3.25.55.tgz", + "integrity": "sha512-219huNnkSLQnLsQ3uaRjXsxMrVm5C9W3OOpEVt2k5tvMKuA8nBSu38e0B//a+he9Iq2dvmk2VyYVlHqiHa4YBA==", "dev": true, "funding": { "url": "https://github.com/sponsors/colinhacks" diff --git a/package.json b/package.json index b3d7e697..dd98bb52 100644 --- a/package.json +++ b/package.json @@ -36,32 +36,32 @@ "homepage": "https://developers.felt.com", "type": "module", "devDependencies": { - "@arethetypeswrong/cli": "^0.17.4", - "@changesets/cli": "^2.27.9", - "@microsoft/api-extractor": "^7.47.9", - "@types/node": "^22.7.4", + "@arethetypeswrong/cli": "^0.18.1", + "@changesets/cli": "^2.29.4", + "@microsoft/api-extractor": "^7.52.8", + "@types/node": "^22.15.30", "dtsroll": "^1.4.1", - "happy-dom": "^15.7.4", - "knip": "^5.31.0", + "happy-dom": "^17.6.3", + "knip": "^5.60.2", "patch-package": "^8.0.0", - "prettier": "^3.3.3", + "prettier": "^3.5.3", "prettier-plugin-organize-imports": "^4.1.0", - "tsup": "^8.3.0", - "typedoc": "^0.27.6", - "typedoc-plugin-markdown": "^4.4.1", - "typedoc-plugin-remark": "^1.2.4", - "typedoc-plugin-zod": "^1.3.1", - "typescript": "^5.6.2", - "vite-tsconfig-paths": "^5.0.1", - "vitest": "^2.1.2", - "zod": "^3.23.8" + "tsup": "^8.5.0", + "typedoc": "^0.28.5", + "typedoc-plugin-markdown": "^4.6.4", + "typedoc-plugin-remark": "^2.0.1", + "typedoc-plugin-zod": "^1.4.1", + "typescript": "^5.8.3", + "vite-tsconfig-paths": "^5.1.4", + "vitest": "^3.2.2", + "zod": "^3.25.55" }, "optionalDependencies": { "zod": "^3.23.8" }, "scripts": { "build:compile": "tsup && ./scripts/dtsroll.sh", - "build:docs": "typedoc", + "build:docs": "typedoc --name @feltmaps/js-sdk", "build": "npm run build:compile && npm run build:docs", "changeset": "changeset", "check:api": "npm run build:compile && attw --pack . --profile node16 && api-extractor run", diff --git a/typedoc.json b/typedoc.json index 5e4f7449..e4532da1 100644 --- a/typedoc.json +++ b/typedoc.json @@ -43,7 +43,7 @@ }, "outputFileStrategy": "members", - "flattenOutputFiles": false, + "router": "structure", "theme": "customTheme", "readme": "./src/docs_api_readme_prepend.md", "mergeReadme": true From 06be65e37d01d98e4bf664d074d04dddc783dc4b Mon Sep 17 00:00:00 2001 From: Tom Hicks Date: Fri, 6 Jun 2025 11:23:50 +0200 Subject: [PATCH 2/2] Start to update params docs to be compliant --- api-extractor.json | 10 ++--- src/modules/ui/uiElements/UISelectElement.ts | 13 +++++-- .../ui/uiElements/UITextInputElement.ts | 39 +++++++++++++------ 3 files changed, 41 insertions(+), 21 deletions(-) diff --git a/api-extractor.json b/api-extractor.json index 7146c28f..6362e948 100644 --- a/api-extractor.json +++ b/api-extractor.json @@ -424,12 +424,12 @@ "ae-unresolved-link": { "logLevel": "none" - } + }, - // "ae-extra-release-tag": { - // "logLevel": "warning", - // "addToApiReportFile": true - // }, + "ae-missing-release-tag": { + "logLevel": "none", + "addToApiReportFile": false + } // // . . . }, diff --git a/src/modules/ui/uiElements/UISelectElement.ts b/src/modules/ui/uiElements/UISelectElement.ts index 706661db..fcd1d2b4 100644 --- a/src/modules/ui/uiElements/UISelectElement.ts +++ b/src/modules/ui/uiElements/UISelectElement.ts @@ -46,9 +46,14 @@ export interface UISelectElementCreate > { /** * Event handler for when the value of the select changes. - * - * @param args - * @param args.value - The new value of the select. */ - onChange: (args: { value: string }) => void; + onChange: ( + /**/ + args: { + /** + * The new value of the select. + */ + value: string; + }, + ) => void; } diff --git a/src/modules/ui/uiElements/UITextInputElement.ts b/src/modules/ui/uiElements/UITextInputElement.ts index e44d02d1..5a606a95 100644 --- a/src/modules/ui/uiElements/UITextInputElement.ts +++ b/src/modules/ui/uiElements/UITextInputElement.ts @@ -63,25 +63,40 @@ export interface UITextInputElementCreate > { /** * Event handler for when the value of the input changes. - * - * @param args - * @param args.value - The new value of the input. */ - onChange?: (args: { value: string }) => void; + onChange?: ( + /**/ + args: { + /** + * The new value of the input. + */ + value: string; + }, + ) => void; /** * Event handler for when the input loses focus. - * - * @param args - * @param args.value - The input value when the input loses focus. */ - onBlur?: (args: { value: string }) => void; + onBlur?: ( + /**/ + args: { + /** + * The input value when the input loses focus. + */ + value: string; + }, + ) => void; /** * Event handler for when the input gains focus. - * - * @param args - * @param args.value - The input value when the input gains focus. */ - onFocus?: (args: { value: string }) => void; + onFocus?: ( + /**/ + args: { + /** + * The input value when the input gains focus. + */ + value: string; + }, + ) => void; }