From 506a387c18a6b3b3b537cc70954d43babf7c4b98 Mon Sep 17 00:00:00 2001 From: Jennings Anderson Date: Mon, 9 Feb 2026 11:18:26 -0800 Subject: [PATCH 01/12] Build docs without schema repo dependency This change restructures the docs build to remove the dependency on the schema repository, enabling faster builds and simpler deployment. Key changes: - Add injectable schema references for dynamic content - Reorganize example files and schema definitions - Optimize image assets (convert large GIFs to MP4s, compress PNGs) - Add staging deployment workflow - Update linting and formatting configurations - Fix package-lock.json for cross-platform compatibility --- .gitignore | 5 - .markdownlint.json | 9 + .prettierignore | 6 + .prettierrc | 10 + docs/schema/index.md | 69 + docs/schema/reference/Names/name_rule.md | 16 + docs/schema/reference/Names/name_variant.md | 10 + docs/schema/reference/Names/names.md | 19 + .../reference/Names/perspective_mode.md | 8 + docs/schema/reference/Names/perspectives.md | 10 + docs/schema/reference/Names/side.md | 10 + docs/schema/reference/address.md | 13 + .../reference/addresses/address/address.md | 59 + .../addresses/address/address_level.md | 14 + .../reference/base/bathymetry/bathymetry.md | 48 + .../base/infrastructure/infrastructure.md | 69 + .../infrastructure/infrastructure_class.md | 169 + .../infrastructure/infrastructure_subtype.md | 24 + docs/schema/reference/base/land/land.md | 68 + docs/schema/reference/base/land/land_class.md | 48 + .../reference/base/land/land_subtype.md | 20 + .../reference/base/land_cover/land_cover.md | 47 + .../base/land_cover/land_cover_subtype.md | 16 + .../reference/base/land_use/land_use.md | 68 + .../reference/base/land_use/land_use_class.md | 115 + .../base/land_use/land_use_subtype.md | 30 + .../schema/reference/base/surface_material.md | 30 + docs/schema/reference/base/water/water.md | 69 + .../reference/base/water/water_class.md | 41 + .../reference/base/water/water_subtype.md | 18 + .../reference/buildings/building/building.md | 88 + .../buildings/building/building_class.md | 93 + .../reference/buildings/building/subtype.md | 22 + .../buildings/building_part/building_part.md | 84 + .../reference/buildings/facade_material.md | 17 + .../reference/buildings/roof_material.md | 20 + .../reference/buildings/roof_orientation.md | 10 + docs/schema/reference/buildings/roof_shape.md | 20 + docs/schema/reference/cartographic_hints.md | 12 + .../divisions/capital_of_division_item.md | 10 + .../reference/divisions/division/division.md | 111 + .../reference/divisions/division/norms.md | 9 + .../divisions/division_area/area_class.md | 8 + .../divisions/division_area/division_area.md | 71 + .../division_boundary/boundary_class.md | 8 + .../division_boundary/division_boundary.md | 64 + .../reference/divisions/division_class.md | 11 + .../reference/divisions/hierarchy_item.md | 11 + docs/schema/reference/divisions/place_type.md | 19 + docs/schema/reference/places/place/brand.md | 24 + .../reference/places/place/categories.md | 13 + docs/schema/reference/places/place/place.md | 86 + docs/schema/reference/source_property_item.md | 19 + .../transportation/access_restriction_rule.md | 22 + .../access_restriction_when_clause.md | 21 + .../reference/transportation/access_type.md | 9 + .../transportation/connector/connector.md | 38 + .../transportation/connector_reference.md | 11 + .../transportation/destination_label_type.md | 12 + .../transportation/destination_labels.md | 10 + .../transportation/destination_rule.md | 18 + .../transportation/destination_sign_symbol.md | 27 + .../transportation/destination_when_clause.md | 12 + .../reference/transportation/heading.md | 8 + .../reference/transportation/length_unit.md | 13 + .../reference/transportation/level_rule.md | 11 + .../prohibited_transition_rule.md | 25 + .../prohibited_transition_when_clause.md | 21 + .../transportation/purpose_of_use.md | 12 + .../reference/transportation/rail_class.md | 14 + .../reference/transportation/rail_flag.md | 16 + .../transportation/rail_flag_rule.md | 10 + .../transportation/recognized_status.md | 12 + .../reference/transportation/road_class.md | 23 + .../reference/transportation/road_flag.md | 15 + .../transportation/road_flag_rule.md | 10 + .../reference/transportation/road_surface.md | 13 + .../transportation/route_reference.md | 14 + .../transportation/segment/rail_segment.md | 67 + .../transportation/segment/road_segment.md | 112 + .../transportation/segment/water_segment.md | 63 + .../transportation/sequence_entry.md | 10 + docs/schema/reference/transportation/speed.md | 11 + .../transportation/speed_limit_rule.md | 25 + .../transportation/speed_limit_when_clause.md | 21 + .../reference/transportation/speed_unit.md | 8 + .../reference/transportation/subclass.md | 13 + .../reference/transportation/subclass_rule.md | 10 + .../reference/transportation/surface_rule.md | 11 + .../reference/transportation/travel_mode.md | 19 + .../transportation/vehicle_comparison.md | 11 + .../transportation/vehicle_dimension.md | 11 + .../transportation/vehicle_scope_rule.md | 12 + .../reference/transportation/weight_unit.md | 13 + .../reference/transportation/width_rule.md | 11 + docusaurus.config.js | 86 +- eslint.config.mjs | 42 + fetch_schema.sh | 26 - package-lock.json | 21631 ++++++---------- package.json | 35 +- sidebars.js | 299 +- src/components/SmartTable.jsx | 516 + src/components/shared-libs/generatePath.tsx | 20 - .../shared-libs/generateResolverOptions.tsx | 35 - src/components/shared-libs/remoteResolver.tsx | 18 - .../shared-libs/stringifyObject.tsx | 51 +- .../shared-libs/yamlFileResolver.tsx | 32 - src/css/custom.css | 515 +- src/css/map.css | 51 +- src/theme/MDXComponents.js | 13 + tsconfig.json | 23 + 111 files changed, 12162 insertions(+), 14024 deletions(-) create mode 100644 .markdownlint.json create mode 100644 .prettierignore create mode 100644 .prettierrc create mode 100644 docs/schema/index.md create mode 100644 docs/schema/reference/Names/name_rule.md create mode 100644 docs/schema/reference/Names/name_variant.md create mode 100644 docs/schema/reference/Names/names.md create mode 100644 docs/schema/reference/Names/perspective_mode.md create mode 100644 docs/schema/reference/Names/perspectives.md create mode 100644 docs/schema/reference/Names/side.md create mode 100644 docs/schema/reference/address.md create mode 100644 docs/schema/reference/addresses/address/address.md create mode 100644 docs/schema/reference/addresses/address/address_level.md create mode 100644 docs/schema/reference/base/bathymetry/bathymetry.md create mode 100644 docs/schema/reference/base/infrastructure/infrastructure.md create mode 100644 docs/schema/reference/base/infrastructure/infrastructure_class.md create mode 100644 docs/schema/reference/base/infrastructure/infrastructure_subtype.md create mode 100644 docs/schema/reference/base/land/land.md create mode 100644 docs/schema/reference/base/land/land_class.md create mode 100644 docs/schema/reference/base/land/land_subtype.md create mode 100644 docs/schema/reference/base/land_cover/land_cover.md create mode 100644 docs/schema/reference/base/land_cover/land_cover_subtype.md create mode 100644 docs/schema/reference/base/land_use/land_use.md create mode 100644 docs/schema/reference/base/land_use/land_use_class.md create mode 100644 docs/schema/reference/base/land_use/land_use_subtype.md create mode 100644 docs/schema/reference/base/surface_material.md create mode 100644 docs/schema/reference/base/water/water.md create mode 100644 docs/schema/reference/base/water/water_class.md create mode 100644 docs/schema/reference/base/water/water_subtype.md create mode 100644 docs/schema/reference/buildings/building/building.md create mode 100644 docs/schema/reference/buildings/building/building_class.md create mode 100644 docs/schema/reference/buildings/building/subtype.md create mode 100644 docs/schema/reference/buildings/building_part/building_part.md create mode 100644 docs/schema/reference/buildings/facade_material.md create mode 100644 docs/schema/reference/buildings/roof_material.md create mode 100644 docs/schema/reference/buildings/roof_orientation.md create mode 100644 docs/schema/reference/buildings/roof_shape.md create mode 100644 docs/schema/reference/cartographic_hints.md create mode 100644 docs/schema/reference/divisions/capital_of_division_item.md create mode 100644 docs/schema/reference/divisions/division/division.md create mode 100644 docs/schema/reference/divisions/division/norms.md create mode 100644 docs/schema/reference/divisions/division_area/area_class.md create mode 100644 docs/schema/reference/divisions/division_area/division_area.md create mode 100644 docs/schema/reference/divisions/division_boundary/boundary_class.md create mode 100644 docs/schema/reference/divisions/division_boundary/division_boundary.md create mode 100644 docs/schema/reference/divisions/division_class.md create mode 100644 docs/schema/reference/divisions/hierarchy_item.md create mode 100644 docs/schema/reference/divisions/place_type.md create mode 100644 docs/schema/reference/places/place/brand.md create mode 100644 docs/schema/reference/places/place/categories.md create mode 100644 docs/schema/reference/places/place/place.md create mode 100644 docs/schema/reference/source_property_item.md create mode 100644 docs/schema/reference/transportation/access_restriction_rule.md create mode 100644 docs/schema/reference/transportation/access_restriction_when_clause.md create mode 100644 docs/schema/reference/transportation/access_type.md create mode 100644 docs/schema/reference/transportation/connector/connector.md create mode 100644 docs/schema/reference/transportation/connector_reference.md create mode 100644 docs/schema/reference/transportation/destination_label_type.md create mode 100644 docs/schema/reference/transportation/destination_labels.md create mode 100644 docs/schema/reference/transportation/destination_rule.md create mode 100644 docs/schema/reference/transportation/destination_sign_symbol.md create mode 100644 docs/schema/reference/transportation/destination_when_clause.md create mode 100644 docs/schema/reference/transportation/heading.md create mode 100644 docs/schema/reference/transportation/length_unit.md create mode 100644 docs/schema/reference/transportation/level_rule.md create mode 100644 docs/schema/reference/transportation/prohibited_transition_rule.md create mode 100644 docs/schema/reference/transportation/prohibited_transition_when_clause.md create mode 100644 docs/schema/reference/transportation/purpose_of_use.md create mode 100644 docs/schema/reference/transportation/rail_class.md create mode 100644 docs/schema/reference/transportation/rail_flag.md create mode 100644 docs/schema/reference/transportation/rail_flag_rule.md create mode 100644 docs/schema/reference/transportation/recognized_status.md create mode 100644 docs/schema/reference/transportation/road_class.md create mode 100644 docs/schema/reference/transportation/road_flag.md create mode 100644 docs/schema/reference/transportation/road_flag_rule.md create mode 100644 docs/schema/reference/transportation/road_surface.md create mode 100644 docs/schema/reference/transportation/route_reference.md create mode 100644 docs/schema/reference/transportation/segment/rail_segment.md create mode 100644 docs/schema/reference/transportation/segment/road_segment.md create mode 100644 docs/schema/reference/transportation/segment/water_segment.md create mode 100644 docs/schema/reference/transportation/sequence_entry.md create mode 100644 docs/schema/reference/transportation/speed.md create mode 100644 docs/schema/reference/transportation/speed_limit_rule.md create mode 100644 docs/schema/reference/transportation/speed_limit_when_clause.md create mode 100644 docs/schema/reference/transportation/speed_unit.md create mode 100644 docs/schema/reference/transportation/subclass.md create mode 100644 docs/schema/reference/transportation/subclass_rule.md create mode 100644 docs/schema/reference/transportation/surface_rule.md create mode 100644 docs/schema/reference/transportation/travel_mode.md create mode 100644 docs/schema/reference/transportation/vehicle_comparison.md create mode 100644 docs/schema/reference/transportation/vehicle_dimension.md create mode 100644 docs/schema/reference/transportation/vehicle_scope_rule.md create mode 100644 docs/schema/reference/transportation/weight_unit.md create mode 100644 docs/schema/reference/transportation/width_rule.md create mode 100644 eslint.config.mjs delete mode 100755 fetch_schema.sh create mode 100644 src/components/SmartTable.jsx delete mode 100644 src/components/shared-libs/generatePath.tsx delete mode 100644 src/components/shared-libs/generateResolverOptions.tsx delete mode 100644 src/components/shared-libs/remoteResolver.tsx delete mode 100644 src/components/shared-libs/yamlFileResolver.tsx create mode 100644 src/theme/MDXComponents.js create mode 100644 tsconfig.json diff --git a/.gitignore b/.gitignore index aa4b9c076..e69485b2f 100644 --- a/.gitignore +++ b/.gitignore @@ -1,9 +1,4 @@ .DS_Store .docusaurus node_modules/ -docs/_examples/ -docs/_schema/ -docs/schema/ -docs/schema -static/_schema/ build/ diff --git a/.markdownlint.json b/.markdownlint.json new file mode 100644 index 000000000..00830b6f0 --- /dev/null +++ b/.markdownlint.json @@ -0,0 +1,9 @@ +{ + "default": true, + "MD013": false, + "MD033": false, + "MD041": false, + "MD024": { + "siblings_only": true + } +} diff --git a/.prettierignore b/.prettierignore new file mode 100644 index 000000000..690ec1681 --- /dev/null +++ b/.prettierignore @@ -0,0 +1,6 @@ +build/ +.docusaurus/ +node_modules/ +package-lock.json +*.md +*.mdx diff --git a/.prettierrc b/.prettierrc new file mode 100644 index 000000000..e4f10ea19 --- /dev/null +++ b/.prettierrc @@ -0,0 +1,10 @@ +{ + "semi": true, + "singleQuote": true, + "tabWidth": 2, + "trailingComma": "es5", + "printWidth": 100, + "bracketSpacing": true, + "arrowParens": "always", + "proseWrap": "preserve" +} diff --git a/docs/schema/index.md b/docs/schema/index.md new file mode 100644 index 000000000..8af8f0990 --- /dev/null +++ b/docs/schema/index.md @@ -0,0 +1,69 @@ +--- +title: Overview +slug: /schema + +# This page is available at docs.overturemaps.org/schema +--- +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +### Top-level properties + +In the Overture schema, all features have a unique `id` called a [GERS ID](https://docs.overturemaps.org/gers/), a `geometry` object that follows the OGC geometry specification, and other top-level properties. + +
+**GeoParquet columns for top-level Overture properties** +| column_name | column_type | description | +| --- | --- | --- | +| **id** | *string* | an Overture feature's unique id, part of the Global Entity Reference System (GERS) | +| **geometry** | *binary* | well-known binary (WKB) representation of the feature geometry | +| **bbox** | *struct\* | area defined by two longitudes and two latitudes: latitude is a decimal number between -90.0 and 90.0; longitude is a decimal number between -180.0 and 180.0. | +| **theme** | *string* | one of six Overture data themes | +| **type** | *string* | one of 14 Overture feature types | +| **version** | *int32* | version number of the feature, incremented in each Overture release where the geometry or attributes of this feature changed | +| **sources** | *list\\>\>* | array of source information for the properties of a given feature | +
+ +### Other key schema properties + +Most but not all of the feature types in the Overture schema require data for the `names`, `subtype`, and `class` properties. The `names` property is complex enough to have its own schema. + +### Properties may be specific to a feature type + +Some properties in the Overture schema are only populated with data for specific feature types. For example, the `place` feature type must include data for the `categories` property, as required by the schema. The `division_area` and `address` feature types require the `country` property to be populated with ISO 3166-1 alpha-2 country codes. The `segment` feature type in the transportation theme is the only feature type that includes data for a complex set of properties that describe roads. The reference section of this documentation digs into the details of these complexities. + +## Schema conventions + +### Notations + +#### Snake case + +We use snake case instead of camel case for all property names, string enumeration members, and string-valued enumeration equivalents. We do this because of case sensitivity and transformation issues in different databases and query engines. For example, Athena/Trino downcases everything, so text string splits in camel case property names get lost; in contrast, snake case passes through without issues. + +#### Booleans + +Boolean properties have a prefix verb "is" or "has" in a way that grammatically makes sense, e.g. `has_street_lights=true` and `is_accessible=false`. + +### Measurements + + + +Measurements of real-world objects and features follow [The International System of Units (SI)](https://www.bipm.org/en/publications/si-brochure): heights, widths, lengths, etc. In the Overture schema, these values are provided as scalar numeric value without units such as feet or meters. Overture does this to maximize consistency and predictability. + +Quantities specified in regulatory rules, norms and customs follow local specifications wherever possible. In the schema, these values are provided as two-element arrays where the first element is the scalar numeric value and the second value is the units. Overture uses local units of measurement: feet in the United States and meters in the EU, for example. The exact unit is confirmed in the specification of the property but is not repeated in the data. + +### Regulations and restrictions + +All quantities that relate to posted or ordinance regulations and restrictions are expressed in the same units as used in the regulation. The unit is explicitly included with the property in the data. + +### Opening hours and validity periods + +Opening hours and the time frame during which time dependent properties are applicable are indicated following the [OSM Opening Hours specification](https://wiki.openstreetmap.org/wiki/Key:opening_hours/specification). + + diff --git a/docs/schema/reference/Names/name_rule.md b/docs/schema/reference/Names/name_rule.md new file mode 100644 index 000000000..3aa698c03 --- /dev/null +++ b/docs/schema/reference/Names/name_rule.md @@ -0,0 +1,16 @@ +# NameRule + +Name rule with variant and language specification. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `side` | `string` ([Side](/schema/codegen/Names/name_rule/side/)) (optional) | Examples: `left`, `right` | +| `between` | `list` (optional) | | +| `value` | `string` | | +| `variant` | `string` ([NameVariant](/schema/codegen/Names/name_rule/name_variant/)) | Examples: `common`, `official`, `alternate`, ... | +| `language` | `string` (optional) | | +| `perspectives` | `object` (`[Perspectives](perspectives)`) (optional) | | +| `perspectives.mode` | `string` ([PerspectiveMode](perspective_mode)) | Whether the perspective holder accepts or disputes this name. Examples: `accepted_by`, `disputed_by` | +| `perspectives.countries` | `list` | Countries holding the given mode of perspective. | diff --git a/docs/schema/reference/Names/name_variant.md b/docs/schema/reference/Names/name_variant.md new file mode 100644 index 000000000..22bc60ed5 --- /dev/null +++ b/docs/schema/reference/Names/name_variant.md @@ -0,0 +1,10 @@ +# NameVariant + +An enumeration. + +## Values + +- `common` +- `official` +- `alternate` +- `short` diff --git a/docs/schema/reference/Names/names.md b/docs/schema/reference/Names/names.md new file mode 100644 index 000000000..aa7976deb --- /dev/null +++ b/docs/schema/reference/Names/names.md @@ -0,0 +1,19 @@ +# Names + +Multilingual names container. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `primary` | `string` | The most commonly used name. | +| `common` | `object` (optional) | | +| `rules` | `list` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | +| `rules.side` | `string` ([Side](side)) (optional) | Examples: `left`, `right` | +| `rules.between` | `list` (optional) | | +| `rules.value` | `string` | | +| `rules.variant` | `string` ([NameVariant](name_variant)) | Examples: `common`, `official`, `alternate`, ... | +| `rules.language` | `string` (optional) | | +| `rules.perspectives` | `object` (`[Perspectives](perspectives)`) (optional) | | +| `rules.perspectives.mode` | `string` ([PerspectiveMode](perspective_mode)) | Whether the perspective holder accepts or disputes this name. Examples: `accepted_by`, `disputed_by` | +| `rules.perspectives.countries` | `list` | Countries holding the given mode of perspective. | diff --git a/docs/schema/reference/Names/perspective_mode.md b/docs/schema/reference/Names/perspective_mode.md new file mode 100644 index 000000000..259473873 --- /dev/null +++ b/docs/schema/reference/Names/perspective_mode.md @@ -0,0 +1,8 @@ +# PerspectiveMode + +Perspective mode for disputed names. + +## Values + +- `accepted_by` +- `disputed_by` diff --git a/docs/schema/reference/Names/perspectives.md b/docs/schema/reference/Names/perspectives.md new file mode 100644 index 000000000..3400d6f25 --- /dev/null +++ b/docs/schema/reference/Names/perspectives.md @@ -0,0 +1,10 @@ +# Perspectives + +Political perspectives container. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `mode` | `string` ([PerspectiveMode](/schema/codegen/Names/perspectives/perspective_mode/)) | Whether the perspective holder accepts or disputes this name. Examples: `accepted_by`, `disputed_by` | +| `countries` | `list` | Countries holding the given mode of perspective. | diff --git a/docs/schema/reference/Names/side.md b/docs/schema/reference/Names/side.md new file mode 100644 index 000000000..f4ed25660 --- /dev/null +++ b/docs/schema/reference/Names/side.md @@ -0,0 +1,10 @@ +# Side + +Represents the side on which something appears relative to a facing or heading +direction, e.g. the side of a road relative to the road orientation, or relative to +the direction of travel of a person or vehicle. + +## Values + +- `left` +- `right` diff --git a/docs/schema/reference/address.md b/docs/schema/reference/address.md new file mode 100644 index 000000000..592281287 --- /dev/null +++ b/docs/schema/reference/address.md @@ -0,0 +1,13 @@ +# Address + +Base model that forbids additional properties in JSON Schema. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `freeform` | `string` (optional) | Free-form address that contains street name, house number and other address info | +| `locality` | `string` (optional) | Name of the city or neighborhood where the address is located | +| `postcode` | `string` (optional) | Postal code where the address is located | +| `region` | `string` (optional) | | +| `country` | `string` (optional) | | diff --git a/docs/schema/reference/addresses/address/address.md b/docs/schema/reference/addresses/address/address.md new file mode 100644 index 000000000..a77d75225 --- /dev/null +++ b/docs/schema/reference/addresses/address/address.md @@ -0,0 +1,59 @@ +# Address + +Addresses are geographic points used for locating businesses and individuals. The +rules, fields, and fieldnames of an address can vary extensively between locations. +We use a simplified schema to capture worldwide address points. This initial schema +is largely based on the OpenAddresses (www.openaddresses.io) project. + +The address schema allows up to 5 "admin levels". Rather than have field names that +apply across all countries, we provide an array called "address_levels" containing +the necessary administrative levels for an address. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `id` | `string` | | +| `theme` | `"addresses"` | | +| `type` | `"address"` | | +| `geometry` | `geometry` | Geometry (Point) | +| `version` | `int32` | | +| `sources[]` | `list` (optional) | | +| `sources[].between` | `list` (optional) | | +| `sources[].property` | `string` | | +| `sources[].dataset` | `string` | | +| `sources[].record_id` | `string` (optional) | Refers to the specific record within the dataset that was used. | +| `sources[].update_time` | `string` (optional) | | +| `sources[].confidence` | `float64` (optional) | | +| `address_levels` | `list` (optional) | The administrative levels present in an address. The number of values in this list and their meaning is country-dependent. For example, in the United States we expect two values: the state and the municipality. In other countries there might be only one. Other countries could have three or more. The array is ordered with the highest levels first. Note: when a level is not known - most likely because the data provider has not supplied it and we have not derived it from another source, the array element container must be present, but the "value" field should be omitted | +| `address_levels.value` | `string` (optional) | | +| `country` | `string` (optional) | | +| `number` | `string` (optional) | The house number for this address. This field may not strictly be a number. Values such as "74B", "189 1/2", "208.5" are common as the number part of an address and they are not part of the "unit" of this address. | +| `postal_city` | `string` (optional) | In some countries or regions, a mailing address may need to specify a different city name than the city that actually contains the address coordinates. This optional field can be used to specify the alternate city name to use. Example from US National Address Database: 716 East County Road, Winchester, Indiana has "Ridgeville" as its postal city Another example in Slovenia: Tomaj 71, 6221 Dutovlje, Slovenia | +| `postcode` | `string` (optional) | The postcode for the address | +| `street` | `string` (optional) | The street name associated with this address. The street name can include the street "type" or street suffix, e.g., Main Street. Ideally this is fully spelled out and not abbreviated but we acknowledge that many address datasets abbreviate the street name so it is acceptable. | +| `unit` | `string` (optional) | The suite/unit/apartment/floor number | + +## Examples + +| Column | Value | +|-------:|-------| +| `geometry` | `POINT (-176.5637854 -43.9471955)` | +| `address_levels[0].value` | `Chatham Islands` | +| `address_levels[1].value` | `Chatham Island` | +| `country` | `NZ` | +| `number` | `54` | +| `postal_city` | `null` | +| `postcode` | `null` | +| `street` | `Tikitiki Hill Road` | +| `unit` | `null` | +| `id` | `416ab01c-d836-4c4f-aedc-2f30941ce94d` | +| `sources[0].between` | `null` | +| `sources[0].confidence` | `null` | +| `sources[0].dataset` | `OpenAddresses/LINZ` | +| `sources[0].property` | | +| `sources[0].record_id` | `null` | +| `sources[0].update_time` | `null` | +| `theme` | `addresses` | +| `type` | `address` | +| `version` | `1` | diff --git a/docs/schema/reference/addresses/address/address_level.md b/docs/schema/reference/addresses/address/address_level.md new file mode 100644 index 000000000..5dd5e3581 --- /dev/null +++ b/docs/schema/reference/addresses/address/address_level.md @@ -0,0 +1,14 @@ +# AddressLevel + +An address "admin level". + +We want to avoid the phrase "admin level" and have chosen "address level". These +represent states, regions, districts, cities, neighborhoods, etc. The address schema +defines several numbered levels with per-country rules indicating which parts of a +country's address goes to which numbered level. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `value` | `string` (optional) | | diff --git a/docs/schema/reference/base/bathymetry/bathymetry.md b/docs/schema/reference/base/bathymetry/bathymetry.md new file mode 100644 index 000000000..2051c9827 --- /dev/null +++ b/docs/schema/reference/base/bathymetry/bathymetry.md @@ -0,0 +1,48 @@ +# Bathymetry + +Topographic representation of an underwater area, such as a part of the ocean +floor. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `cartography` | `object` (`[CartographicHints](../../cartographic_hints)`) (optional) | | +| `cartography.prominence` | `integer` (optional) | | +| `cartography.min_zoom` | `integer` (optional) | | +| `cartography.max_zoom` | `integer` (optional) | | +| `cartography.sort_key` | `integer` (optional) | | +| `id` | `string` | | +| `theme` | `"base"` | | +| `type` | `"bathymetry"` | | +| `geometry` | `geometry` | Geometry (Polygon or MultiPolygon) | +| `version` | `int32` | | +| `sources[]` | `list` (optional) | | +| `sources[].between` | `list` (optional) | | +| `sources[].property` | `string` | | +| `sources[].dataset` | `string` | | +| `sources[].record_id` | `string` (optional) | Refers to the specific record within the dataset that was used. | +| `sources[].update_time` | `string` (optional) | | +| `sources[].confidence` | `float64` (optional) | | +| `depth` | `int32` | | + +## Examples + +| Column | Value | +|-------:|-------| +| `geometry` | `MULTIPOLYGON (((-170.71296928 -76.744313428, -170.719841483 -76.757076376, -170.731061124 -76.761566...` | +| `depth` | `500` | +| `cartography.max_zoom` | `null` | +| `cartography.min_zoom` | `null` | +| `cartography.prominence` | `null` | +| `cartography.sort_key` | `12` | +| `id` | `5d40bd6c-db14-5492-b29f-5e25a59032bc` | +| `sources[0].between` | `null` | +| `sources[0].confidence` | `null` | +| `sources[0].dataset` | `ETOPO/GLOBathy` | +| `sources[0].property` | | +| `sources[0].record_id` | `2024-12-09T00:00:00.000Z` | +| `sources[0].update_time` | `null` | +| `theme` | `base` | +| `type` | `bathymetry` | +| `version` | `0` | diff --git a/docs/schema/reference/base/infrastructure/infrastructure.md b/docs/schema/reference/base/infrastructure/infrastructure.md new file mode 100644 index 000000000..76e90976f --- /dev/null +++ b/docs/schema/reference/base/infrastructure/infrastructure.md @@ -0,0 +1,69 @@ +# Infrastructure + +Various features from OpenStreetMap such as bridges, airport runways, aerialways, +or communication towers and lines. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `source_tags` | `record` (optional) | | +| `wikidata` | `string` (optional) | | +| `level` | `int32` (optional) | | +| `names` | `object` (`[Names](../../Names/names)`) (optional) | | +| `names.primary` | `string` | The most commonly used name. | +| `names.common` | `object` (optional) | | +| `names.rules[]` | `list` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | +| `names.rules[].side` | `string` ([Side](../../Names/side)) (optional) | Examples: `left`, `right` | +| `names.rules[].between` | `list` (optional) | | +| `names.rules[].value` | `string` | | +| `names.rules[].variant` | `string` ([NameVariant](../../Names/name_variant)) | Examples: `common`, `official`, `alternate`, ... | +| `names.rules[].language` | `string` (optional) | | +| `names.rules[].perspectives` | `object` (`[Perspectives](../../Names/perspectives)`) (optional) | | +| `names.rules[].perspectives.mode` | `string` ([PerspectiveMode](../../Names/perspective_mode)) | Whether the perspective holder accepts or disputes this name. Examples: `accepted_by`, `disputed_by` | +| `names.rules[].perspectives.countries` | `list` | Countries holding the given mode of perspective. | +| `id` | `string` | | +| `theme` | `"base"` | | +| `type` | `"infrastructure"` | | +| `geometry` | `geometry` | Geometry (Point, LineString, Polygon, or MultiPolygon) | +| `version` | `int32` | | +| `sources[]` | `list` (optional) | | +| `sources[].between` | `list` (optional) | | +| `sources[].property` | `string` | | +| `sources[].dataset` | `string` | | +| `sources[].record_id` | `string` (optional) | Refers to the specific record within the dataset that was used. | +| `sources[].update_time` | `string` (optional) | | +| `sources[].confidence` | `float64` (optional) | | +| `class` | `string` ([InfrastructureClass](infrastructure_class)) | Examples: `aerialway_station`, `airport`, `airport_gate`, ... | +| `subtype` | `string` ([InfrastructureSubtype](infrastructure_subtype)) | Examples: `aerialway`, `airport`, `barrier`, ... | +| `height` | `float64` (optional) | | +| `surface` | `string` ([SurfaceMaterial](../surface_material)) (optional) | Examples: `asphalt`, `cobblestone`, `compacted`, ... | + +## Examples + +| Column | Value | +|-------:|-------| +| `geometry` | `LINESTRING (-176.6518141 -44.0074721, -176.6509243 -44.0063362)` | +| `subtype` | `barrier` | +| `height` | `null` | +| `surface` | `null` | +| `class` | `fence` | +| `id` | `06e4de8d-bdce-314c-8e25-90ce70b8fe57` | +| `level` | `null` | +| `names.common` | `null` | +| `names.primary` | `null` | +| `names.rules` | `null` | +| `source_tags.LINZ:source_version` | `V16` | +| `source_tags.attribution` | `http://wiki.osm.org/wiki/Attribution#LINZ` | +| `source_tags.barrier` | `fence` | +| `source_tags.source_ref` | `http://www.linz.govt.nz/topography/topo-maps/` | +| `sources[0].between` | `null` | +| `sources[0].confidence` | `null` | +| `sources[0].dataset` | `OpenStreetMap` | +| `sources[0].property` | | +| `sources[0].record_id` | `w56754564@1` | +| `sources[0].update_time` | `2010-04-28T12:01:53.000Z` | +| `theme` | `base` | +| `type` | `infrastructure` | +| `version` | `0` | +| `wikidata` | `null` | diff --git a/docs/schema/reference/base/infrastructure/infrastructure_class.md b/docs/schema/reference/base/infrastructure/infrastructure_class.md new file mode 100644 index 000000000..c23fe2f3e --- /dev/null +++ b/docs/schema/reference/base/infrastructure/infrastructure_class.md @@ -0,0 +1,169 @@ +# InfrastructureClass + +Further classification of the infrastructure type. + +## Values + +- `aerialway_station` +- `airport` +- `airport_gate` +- `airstrip` +- `apron` +- `aqueduct` +- `artwork` +- `atm` +- `barrier` +- `bell_tower` +- `bench` +- `bicycle_parking` +- `bicycle_rental` +- `block` +- `boardwalk` +- `bollard` +- `border_control` +- `breakwater` +- `bridge` +- `bridge_support` +- `bump_gate` +- `bus_route` +- `bus_station` +- `bus_stop` +- `bus_trap` +- `cable` +- `cable_barrier` +- `cable_car` +- `cable_distribution` +- `camp_site` +- `cantilever` +- `catenary_mast` +- `cattle_grid` +- `chain` +- `chair_lift` +- `charging_station` +- `city_wall` +- `communication_line` +- `communication_pole` +- `communication_tower` +- `connection` +- `cooling` +- `covered` +- `crossing` +- `cutline` +- `cycle_barrier` +- `dam` +- `defensive` +- `ditch` +- `diving` +- `drag_lift` +- `drain` +- `drinking_water` +- `entrance` +- `fence` +- `ferry_terminal` +- `fire_hydrant` +- `fountain` +- `full-height_turnstile` +- `gasometer` +- `gate` +- `generator` +- `give_way` +- `gondola` +- `goods` +- `guard_rail` +- `hampshire_gate` +- `handrail` +- `hedge` +- `height_restrictor` +- `heliostat` +- `helipad` +- `heliport` +- `hose` +- `information` +- `insulator` +- `international_airport` +- `j-bar` +- `jersey_barrier` +- `kerb` +- `kissing_gate` +- `launchpad` +- `lift_gate` +- `lighting` +- `lightning_protection` +- `magic_carpet` +- `manhole` +- `milestone` +- `military_airport` +- `minaret` +- `minor_line` +- `mixed_lift` +- `mobile_phone_tower` +- `monitoring` +- `motorcycle_parking` +- `motorway_junction` +- `movable` +- `municipal_airport` +- `observation` +- `parking` +- `parking_entrance` +- `parking_space` +- `pedestrian_crossing` +- `picnic_table` +- `pier` +- `pipeline` +- `plant` +- `planter` +- `platform` +- `platter` +- `portal` +- `post_box` +- `power_line` +- `power_pole` +- `power_tower` +- `private_airport` +- `pylon` +- `quay` +- `radar` +- `railway_halt` +- `railway_station` +- `recycling` +- `regional_airport` +- `reservoir_covered` +- `retaining_wall` +- `rope_tow` +- `runway` +- `sally_port` +- `seaplane_airport` +- `sewer` +- `silo` +- `siren` +- `stile` +- `stop` +- `stop_position` +- `stopway` +- `storage_tank` +- `street_cabinet` +- `street_lamp` +- `substation` +- `subway_station` +- `swing_gate` +- `switch` +- `t-bar` +- `taxilane` +- `taxiway` +- `terminal` +- `toilets` +- `toll_booth` +- `traffic_signals` +- `transformer` +- `trestle` +- `utility_pole` +- `vending_machine` +- `viaduct` +- `viewpoint` +- `wall` +- `waste_basket` +- `waste_disposal` +- `watchtower` +- `water_tower` +- `weir` +- `zip_line` diff --git a/docs/schema/reference/base/infrastructure/infrastructure_subtype.md b/docs/schema/reference/base/infrastructure/infrastructure_subtype.md new file mode 100644 index 000000000..739cc179a --- /dev/null +++ b/docs/schema/reference/base/infrastructure/infrastructure_subtype.md @@ -0,0 +1,24 @@ +# InfrastructureSubtype + +Further description of the type of infrastructure. + +## Values + +- `aerialway` +- `airport` +- `barrier` +- `bridge` +- `communication` +- `emergency` +- `manhole` +- `pedestrian` +- `pier` +- `power` +- `quay` +- `recreation` +- `tower` +- `transit` +- `transportation` +- `utility` +- `waste_management` +- `water` diff --git a/docs/schema/reference/base/land/land.md b/docs/schema/reference/base/land/land.md new file mode 100644 index 000000000..edae66be6 --- /dev/null +++ b/docs/schema/reference/base/land/land.md @@ -0,0 +1,68 @@ +# Land + +Physical representations of land surfaces. + +Global land derived from the inverse of OSM Coastlines. Translates `natural` tags from OpenStreetMap. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `source_tags` | `record` (optional) | | +| `wikidata` | `string` (optional) | | +| `level` | `int32` (optional) | | +| `names` | `object` (`[Names](../../Names/names)`) (optional) | | +| `names.primary` | `string` | The most commonly used name. | +| `names.common` | `object` (optional) | | +| `names.rules[]` | `list` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | +| `names.rules[].side` | `string` ([Side](../../Names/side)) (optional) | Examples: `left`, `right` | +| `names.rules[].between` | `list` (optional) | | +| `names.rules[].value` | `string` | | +| `names.rules[].variant` | `string` ([NameVariant](../../Names/name_variant)) | Examples: `common`, `official`, `alternate`, ... | +| `names.rules[].language` | `string` (optional) | | +| `names.rules[].perspectives` | `object` (`[Perspectives](../../Names/perspectives)`) (optional) | | +| `names.rules[].perspectives.mode` | `string` ([PerspectiveMode](../../Names/perspective_mode)) | Whether the perspective holder accepts or disputes this name. Examples: `accepted_by`, `disputed_by` | +| `names.rules[].perspectives.countries` | `list` | Countries holding the given mode of perspective. | +| `id` | `string` | | +| `theme` | `"base"` | | +| `type` | `"land"` | | +| `geometry` | `geometry` | Geometry (Point, LineString, Polygon, or MultiPolygon) | +| `version` | `int32` | | +| `sources[]` | `list` (optional) | | +| `sources[].between` | `list` (optional) | | +| `sources[].property` | `string` | | +| `sources[].dataset` | `string` | | +| `sources[].record_id` | `string` (optional) | Refers to the specific record within the dataset that was used. | +| `sources[].update_time` | `string` (optional) | | +| `sources[].confidence` | `float64` (optional) | | +| `class` | `string` ([LandClass](land_class)) (optional) | Examples: `archipelago`, `bare_rock`, `beach`, ... Default: `` | +| `subtype` | `string` ([LandSubtype](land_subtype)) (optional) | Examples: `crater`, `desert`, `forest`, ... Default: `` | +| `elevation` | `int32` (optional) | | +| `surface` | `string` ([SurfaceMaterial](../surface_material)) (optional) | Examples: `asphalt`, `cobblestone`, `compacted`, ... | + +## Examples + +| Column | Value | +|-------:|-------| +| `geometry` | `POLYGON ((-179.2520554 -84.4448374, -179.2531578 -84.4443064, -179.2566774 -84.4438047, -179.2616581...` | +| `subtype` | `rock` | +| `elevation` | `null` | +| `surface` | `null` | +| `class` | `bare_rock` | +| `id` | `d78b9e8e-7186-3030-8235-820ab8079358` | +| `level` | `null` | +| `names.common` | `null` | +| `names.primary` | `null` | +| `names.rules` | `null` | +| `source_tags.area` | `yes` | +| `source_tags.natural` | `bare_rock` | +| `sources[0].between` | `null` | +| `sources[0].confidence` | `null` | +| `sources[0].dataset` | `OpenStreetMap` | +| `sources[0].property` | | +| `sources[0].record_id` | `w222125249@1` | +| `sources[0].update_time` | `2013-05-19T10:33:24.000Z` | +| `theme` | `base` | +| `type` | `land` | +| `version` | `0` | +| `wikidata` | `null` | diff --git a/docs/schema/reference/base/land/land_class.md b/docs/schema/reference/base/land/land_class.md new file mode 100644 index 000000000..1c40531c3 --- /dev/null +++ b/docs/schema/reference/base/land/land_class.md @@ -0,0 +1,48 @@ +# LandClass + +Further classification of type of landcover. + +## Values + +- `archipelago` +- `bare_rock` +- `beach` +- `cave_entrance` +- `cliff` +- `desert` +- `dune` +- `fell` +- `forest` +- `glacier` +- `grass` +- `grassland` +- `heath` +- `hill` +- `island` +- `islet` +- `land` +- `meadow` +- `meteor_crater` +- `mountain_range` +- `peak` +- `peninsula` +- `plateau` +- `reef` +- `ridge` +- `rock` +- `saddle` +- `sand` +- `scree` +- `scrub` +- `shingle` +- `shrub` +- `shrubbery` +- `stone` +- `tree` +- `tree_row` +- `tundra` +- `valley` +- `volcanic_caldera_rim` +- `volcano` +- `wetland` +- `wood` diff --git a/docs/schema/reference/base/land/land_subtype.md b/docs/schema/reference/base/land/land_subtype.md new file mode 100644 index 000000000..70868e020 --- /dev/null +++ b/docs/schema/reference/base/land/land_subtype.md @@ -0,0 +1,20 @@ +# LandSubtype + +Further description of the type of land cover, such as forest, glacier, grass, or +a physical feature, such as a mountain peak. + +## Values + +- `crater` +- `desert` +- `forest` +- `glacier` +- `grass` +- `land` +- `physical` +- `reef` +- `rock` +- `sand` +- `shrub` +- `tree` +- `wetland` diff --git a/docs/schema/reference/base/land_cover/land_cover.md b/docs/schema/reference/base/land_cover/land_cover.md new file mode 100644 index 000000000..3c2a8b605 --- /dev/null +++ b/docs/schema/reference/base/land_cover/land_cover.md @@ -0,0 +1,47 @@ +# LandCover + +Representation of the Earth's natural surfaces. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `cartography` | `object` (`[CartographicHints](../../cartographic_hints)`) (optional) | | +| `cartography.prominence` | `integer` (optional) | | +| `cartography.min_zoom` | `integer` (optional) | | +| `cartography.max_zoom` | `integer` (optional) | | +| `cartography.sort_key` | `integer` (optional) | | +| `id` | `string` | | +| `theme` | `"base"` | | +| `type` | `"land_cover"` | | +| `geometry` | `geometry` | Geometry (Polygon or MultiPolygon) | +| `version` | `int32` | | +| `sources[]` | `list` (optional) | | +| `sources[].between` | `list` (optional) | | +| `sources[].property` | `string` | | +| `sources[].dataset` | `string` | | +| `sources[].record_id` | `string` (optional) | Refers to the specific record within the dataset that was used. | +| `sources[].update_time` | `string` (optional) | | +| `sources[].confidence` | `float64` (optional) | | +| `subtype` | `string` ([LandCoverSubtype](land_cover_subtype)) | Examples: `barren`, `crop`, `forest`, ... | + +## Examples + +| Column | Value | +|-------:|-------| +| `geometry` | `POLYGON ((-179.99877531181616 65.95172539425603, -179.99740705536922 65.95265577758867, -179.9975172...` | +| `subtype` | `barren` | +| `cartography.max_zoom` | `15` | +| `cartography.min_zoom` | `8` | +| `cartography.prominence` | `null` | +| `cartography.sort_key` | `3` | +| `id` | `c347312d-012b-5e73-8bd3-a10d04b2981d` | +| `sources[0].between` | `null` | +| `sources[0].confidence` | `null` | +| `sources[0].dataset` | `ESA WorldCover` | +| `sources[0].property` | | +| `sources[0].record_id` | `null` | +| `sources[0].update_time` | `2024-11-07T00:00:00.000Z` | +| `theme` | `base` | +| `type` | `land_cover` | +| `version` | `0` | diff --git a/docs/schema/reference/base/land_cover/land_cover_subtype.md b/docs/schema/reference/base/land_cover/land_cover_subtype.md new file mode 100644 index 000000000..39591e1eb --- /dev/null +++ b/docs/schema/reference/base/land_cover/land_cover_subtype.md @@ -0,0 +1,16 @@ +# LandCoverSubtype + +Type of surface represented. + +## Values + +- `barren` +- `crop` +- `forest` +- `grass` +- `mangrove` +- `moss` +- `shrub` +- `snow` +- `urban` +- `wetland` diff --git a/docs/schema/reference/base/land_use/land_use.md b/docs/schema/reference/base/land_use/land_use.md new file mode 100644 index 000000000..13f0d92e8 --- /dev/null +++ b/docs/schema/reference/base/land_use/land_use.md @@ -0,0 +1,68 @@ +# LandUse + +Land use features from OpenStreetMap. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `source_tags` | `record` (optional) | | +| `wikidata` | `string` (optional) | | +| `level` | `int32` (optional) | | +| `names` | `object` (`[Names](../../Names/names)`) (optional) | | +| `names.primary` | `string` | The most commonly used name. | +| `names.common` | `object` (optional) | | +| `names.rules[]` | `list` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | +| `names.rules[].side` | `string` ([Side](../../Names/side)) (optional) | Examples: `left`, `right` | +| `names.rules[].between` | `list` (optional) | | +| `names.rules[].value` | `string` | | +| `names.rules[].variant` | `string` ([NameVariant](../../Names/name_variant)) | Examples: `common`, `official`, `alternate`, ... | +| `names.rules[].language` | `string` (optional) | | +| `names.rules[].perspectives` | `object` (`[Perspectives](../../Names/perspectives)`) (optional) | | +| `names.rules[].perspectives.mode` | `string` ([PerspectiveMode](../../Names/perspective_mode)) | Whether the perspective holder accepts or disputes this name. Examples: `accepted_by`, `disputed_by` | +| `names.rules[].perspectives.countries` | `list` | Countries holding the given mode of perspective. | +| `id` | `string` | | +| `theme` | `"base"` | | +| `type` | `"land_use"` | | +| `geometry` | `geometry` | Classifications of the human use of a section of land. Translates `landuse` from OpenStreetMap tag from OpenStreetMap. | +| `version` | `int32` | | +| `sources[]` | `list` (optional) | | +| `sources[].between` | `list` (optional) | | +| `sources[].property` | `string` | | +| `sources[].dataset` | `string` | | +| `sources[].record_id` | `string` (optional) | Refers to the specific record within the dataset that was used. | +| `sources[].update_time` | `string` (optional) | | +| `sources[].confidence` | `float64` (optional) | | +| `class` | `string` ([LandUseClass](land_use_class)) | Examples: `aboriginal_land`, `airfield`, `allotments`, ... | +| `subtype` | `string` ([LandUseSubtype](land_use_subtype)) | Examples: `agriculture`, `aquaculture`, `campground`, ... | +| `elevation` | `int32` (optional) | | +| `surface` | `string` ([SurfaceMaterial](../surface_material)) (optional) | Examples: `asphalt`, `cobblestone`, `compacted`, ... | + +## Examples + +| Column | Value | +|-------:|-------| +| `geometry` | `POLYGON ((-176.5623454 -43.9567812, -176.5627644 -43.9561272, -176.5626898 -43.9557432, -176.5624297...` | +| `subtype` | `golf` | +| `elevation` | `null` | +| `surface` | `null` | +| `class` | `golf_course` | +| `id` | `1e1f6095-5bd2-3fdb-a422-41351b848e9d` | +| `level` | `null` | +| `names.common` | `null` | +| `names.primary` | `Chatham Islands Golf Club` | +| `names.rules` | `null` | +| `source_tags.LINZ:source_version` | `V16` | +| `source_tags.attribution` | `http://wiki.osm.org/wiki/Attribution#LINZ` | +| `source_tags.leisure` | `golf_course` | +| `source_tags.source_ref` | `http://www.linz.govt.nz/topography/topo-maps/` | +| `sources[0].between` | `null` | +| `sources[0].confidence` | `null` | +| `sources[0].dataset` | `OpenStreetMap` | +| `sources[0].property` | | +| `sources[0].record_id` | `w56117029@3` | +| `sources[0].update_time` | `2010-04-24T22:35:13.000Z` | +| `theme` | `base` | +| `type` | `land_use` | +| `version` | `0` | +| `wikidata` | `null` | diff --git a/docs/schema/reference/base/land_use/land_use_class.md b/docs/schema/reference/base/land_use/land_use_class.md new file mode 100644 index 000000000..ab87ba6d6 --- /dev/null +++ b/docs/schema/reference/base/land_use/land_use_class.md @@ -0,0 +1,115 @@ +# LandUseClass + +Further classification of the land use. + +## Values + +- `aboriginal_land` +- `airfield` +- `allotments` +- `animal_keeping` +- `aquaculture` +- `barracks` +- `base` +- `beach_resort` +- `brownfield` +- `bunker` +- `camp_site` +- `cemetery` +- `clinic` +- `college` +- `commercial` +- `connection` +- `construction` +- `danger_area` +- `doctors` +- `dog_park` +- `downhill` +- `driving_range` +- `driving_school` +- `education` +- `environmental` +- `fairway` +- `farmland` +- `farmyard` +- `fatbike` +- `flowerbed` +- `forest` +- `garages` +- `garden` +- `golf_course` +- `grass` +- `grave_yard` +- `green` +- `greenfield` +- `greenhouse_horticulture` +- `highway` +- `hike` +- `hospital` +- `ice_skate` +- `industrial` +- `institutional` +- `kindergarten` +- `landfill` +- `lateral_water_hazard` +- `logging` +- `marina` +- `meadow` +- `military` +- `military_hospital` +- `military_school` +- `music_school` +- `national_park` +- `natural_monument` +- `nature_reserve` +- `naval_base` +- `nordic` +- `nuclear_explosion_site` +- `obstacle_course` +- `orchard` +- `park` +- `peat_cutting` +- `pedestrian` +- `pitch` +- `plant_nursery` +- `playground` +- `plaza` +- `protected` +- `protected_landscape_seascape` +- `quarry` +- `railway` +- `range` +- `recreation_ground` +- `religious` +- `residential` +- `resort` +- `retail` +- `rough` +- `salt_pond` +- `school` +- `schoolyard` +- `ski_jump` +- `skitour` +- `sled` +- `sleigh` +- `snow_park` +- `species_management_area` +- `stadium` +- `state_park` +- `static_caravan` +- `strict_nature_reserve` +- `tee` +- `theme_park` +- `track` +- `traffic_island` +- `training_area` +- `trench` +- `university` +- `village_green` +- `vineyard` +- `water_hazard` +- `water_park` +- `wilderness_area` +- `winter_sports` +- `works` +- `zoo` diff --git a/docs/schema/reference/base/land_use/land_use_subtype.md b/docs/schema/reference/base/land_use/land_use_subtype.md new file mode 100644 index 000000000..c81cf3665 --- /dev/null +++ b/docs/schema/reference/base/land_use/land_use_subtype.md @@ -0,0 +1,30 @@ +# LandUseSubtype + +Broad type of land. + +## Values + +- `agriculture` +- `aquaculture` +- `campground` +- `cemetery` +- `construction` +- `developed` +- `education` +- `entertainment` +- `golf` +- `grass` +- `horticulture` +- `landfill` +- `managed` +- `medical` +- `military` +- `park` +- `pedestrian` +- `protected` +- `recreation` +- `religious` +- `residential` +- `resource_extraction` +- `transportation` +- `winter_sports` diff --git a/docs/schema/reference/base/surface_material.md b/docs/schema/reference/base/surface_material.md new file mode 100644 index 000000000..a48df12e1 --- /dev/null +++ b/docs/schema/reference/base/surface_material.md @@ -0,0 +1,30 @@ +# SurfaceMaterial + +Surface material enum used by infrastructure and land features. + +## Values + +- `asphalt` +- `cobblestone` +- `compacted` +- `concrete` +- `concrete_plates` +- `dirt` +- `earth` +- `fine_gravel` +- `grass` +- `gravel` +- `ground` +- `paved` +- `paving_stones` +- `pebblestone` +- `recreation_grass` +- `recreation_paved` +- `recreation_sand` +- `rubber` +- `sand` +- `sett` +- `tartan` +- `unpaved` +- `wood` +- `woodchips` diff --git a/docs/schema/reference/base/water/water.md b/docs/schema/reference/base/water/water.md new file mode 100644 index 000000000..61a8c94c4 --- /dev/null +++ b/docs/schema/reference/base/water/water.md @@ -0,0 +1,69 @@ +# Water + +Physical representations of inland and ocean marine surfaces. + +Translates `natural` and `waterway` tags from OpenStreetMap. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `source_tags` | `record` (optional) | | +| `wikidata` | `string` (optional) | | +| `names` | `object` (`[Names](../../Names/names)`) (optional) | | +| `names.primary` | `string` | The most commonly used name. | +| `names.common` | `object` (optional) | | +| `names.rules[]` | `list` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | +| `names.rules[].side` | `string` ([Side](../../Names/side)) (optional) | Examples: `left`, `right` | +| `names.rules[].between` | `list` (optional) | | +| `names.rules[].value` | `string` | | +| `names.rules[].variant` | `string` ([NameVariant](../../Names/name_variant)) | Examples: `common`, `official`, `alternate`, ... | +| `names.rules[].language` | `string` (optional) | | +| `names.rules[].perspectives` | `object` (`[Perspectives](../../Names/perspectives)`) (optional) | | +| `names.rules[].perspectives.mode` | `string` ([PerspectiveMode](../../Names/perspective_mode)) | Whether the perspective holder accepts or disputes this name. Examples: `accepted_by`, `disputed_by` | +| `names.rules[].perspectives.countries` | `list` | Countries holding the given mode of perspective. | +| `level` | `int32` (optional) | | +| `id` | `string` | | +| `theme` | `"base"` | | +| `type` | `"water"` | | +| `geometry` | `geometry` | Geometry (Point, LineString, Polygon, or MultiPolygon) | +| `version` | `int32` | | +| `sources[]` | `list` (optional) | | +| `sources[].between` | `list` (optional) | | +| `sources[].property` | `string` | | +| `sources[].dataset` | `string` | | +| `sources[].record_id` | `string` (optional) | Refers to the specific record within the dataset that was used. | +| `sources[].update_time` | `string` (optional) | | +| `sources[].confidence` | `float64` (optional) | | +| `class` | `string` ([WaterClass](water_class)) (optional) | Examples: `basin`, `bay`, `blowhole`, ... Default: `` | +| `subtype` | `string` ([WaterSubtype](water_subtype)) (optional) | Examples: `canal`, `human_made`, `lake`, ... Default: `` | +| `is_intermittent` | `boolean` (optional) | Is it intermittent water or not | +| `is_salt` | `boolean` (optional) | Is it salt water or not | + +## Examples + +| Column | Value | +|-------:|-------| +| `geometry` | `LINESTRING (-172.3130214 -84.5857393, -172.3172356 -84.5848825, -172.3208447 -84.5839693)` | +| `subtype` | `stream` | +| `is_intermittent` | `true` | +| `is_salt` | `null` | +| `class` | `stream` | +| `id` | `9e3c87a1-4735-3482-bced-0f3a0571c7b1` | +| `level` | `null` | +| `names.common` | `null` | +| `names.primary` | `null` | +| `names.rules` | `null` | +| `source_tags.intermittent` | `yes` | +| `source_tags.source` | `ADD` | +| `source_tags.waterway` | `stream` | +| `sources[0].between` | `null` | +| `sources[0].confidence` | `null` | +| `sources[0].dataset` | `OpenStreetMap` | +| `sources[0].property` | | +| `sources[0].record_id` | `w222125066@1` | +| `sources[0].update_time` | `2013-05-19T10:32:47.000Z` | +| `theme` | `base` | +| `type` | `water` | +| `version` | `0` | +| `wikidata` | `null` | diff --git a/docs/schema/reference/base/water/water_class.md b/docs/schema/reference/base/water/water_class.md new file mode 100644 index 000000000..9af56817c --- /dev/null +++ b/docs/schema/reference/base/water/water_class.md @@ -0,0 +1,41 @@ +# WaterClass + +Further description of the type of water. + +## Values + +- `basin` +- `bay` +- `blowhole` +- `canal` +- `cape` +- `ditch` +- `dock` +- `drain` +- `fairway` +- `fish_pass` +- `fishpond` +- `geyser` +- `hot_spring` +- `lagoon` +- `lake` +- `moat` +- `ocean` +- `oxbow` +- `pond` +- `reflecting_pool` +- `reservoir` +- `river` +- `salt_pond` +- `sea` +- `sewage` +- `shoal` +- `spring` +- `strait` +- `stream` +- `swimming_pool` +- `tidal_channel` +- `wastewater` +- `water` +- `water_storage` +- `waterfall` diff --git a/docs/schema/reference/base/water/water_subtype.md b/docs/schema/reference/base/water/water_subtype.md new file mode 100644 index 000000000..42684c99f --- /dev/null +++ b/docs/schema/reference/base/water/water_subtype.md @@ -0,0 +1,18 @@ +# WaterSubtype + +The type of water body such as an river, ocean or lake. + +## Values + +- `canal` +- `human_made` +- `lake` +- `ocean` +- `physical` +- `pond` +- `reservoir` +- `river` +- `spring` +- `stream` +- `wastewater` +- `water` diff --git a/docs/schema/reference/buildings/building/building.md b/docs/schema/reference/buildings/building/building.md new file mode 100644 index 000000000..d80824c05 --- /dev/null +++ b/docs/schema/reference/buildings/building/building.md @@ -0,0 +1,88 @@ +# Building + +A building is a man-made structure with a roof that exists permanently in one +place. + +Buildings are compatible with GeoJSON Polygon features. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `height` | `float64` (optional) | Height of the building or part in meters. The height is the distance from the lowest point to the highest point. | +| `is_underground` | `boolean` (optional) | Whether the entire building or part is completely below ground. This is useful for rendering which typically omits these buildings or styles them differently because they are not visible above ground. This is different than the level column which is used to indicate z-ordering of elements and negative values may be above ground. | +| `num_floors` | `int32` (optional) | Number of above-ground floors of the building or part. | +| `num_floors_underground` | `int32` (optional) | Number of below-ground floors of the building or part. | +| `min_height` | `float64` (optional) | The height of the bottom part of building in meters. Used if a building or part of building starts above the ground level. | +| `min_floor` | `int32` (optional) | The "start" floor of this building or part. Indicates that the building or part is "floating" and its bottom-most floor is above ground level, usually because it is part of a larger building in which some parts do reach down to ground level. An example is a building that has an entry road or driveway at ground level into an interior courtyard, where part of the building bridges above the entry road. This property may sometimes be populated when min_height is missing and in these cases can be used as a proxy for min_height. | +| `facade_color` | `string` (optional) | The color (name or color triplet) of the facade of a building or building part in hexadecimal | +| `facade_material` | `string` ([FacadeMaterial](../facade_material)) (optional) | The outer surface material of building facade. Examples: `brick`, `cement_block`, `clay`, ... | +| `roof_material` | `string` ([RoofMaterial](../roof_material)) (optional) | The outermost material of the roof. Examples: `concrete`, `copper`, `eternit`, ... | +| `roof_shape` | `string` ([RoofShape](../roof_shape)) (optional) | The shape of the roof Examples: `dome`, `flat`, `gabled`, ... | +| `roof_direction` | `float64` (optional) | Bearing of the roof ridge line in degrees. | +| `roof_orientation` | `string` ([RoofOrientation](../roof_orientation)) (optional) | Orientation of the roof shape relative to the footprint shape. Either "along" or "across". Examples: `across`, `along` | +| `roof_color` | `string` (optional) | The color (name or color triplet) of the roof of a building or building part in hexadecimal | +| `roof_height` | `float64` (optional) | The height of the building roof in meters. This represents the distance from the base of the roof to the highest point of the roof. | +| `level` | `int32` (optional) | | +| `names` | `object` ([Names](../../Names/names)) (optional) | | +| `names.primary` | `string` | The most commonly used name. | +| `names.common` | `object` (optional) | | +| `names.rules[]` | `list` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | +| `names.rules[].side` | `string` ([Side](../../Names/side)) (optional) | Examples: `left`, `right` | +| `names.rules[].between` | `list` (optional) | | +| `names.rules[].value` | `string` | | +| `names.rules[].variant` | `string` ([NameVariant](../../Names/name_variant)) | Examples: `common`, `official`, `alternate`, ... | +| `names.rules[].language` | `string` (optional) | | +| `names.rules[].perspectives` | `object` (`[Perspectives](../../Names/perspectives)`) (optional) | | +| `names.rules[].perspectives.mode` | `string` ([PerspectiveMode](../Names/perspective_mode)) | Whether the perspective holder accepts or disputes this name. Examples: `accepted_by`, `disputed_by` | +| `names.rules[].perspectives.countries` | `list` | Countries holding the given mode of perspective. | +| `id` | `string` | | +| `theme` | `"buildings"` | | +| `type` | `"building"` | | +| `geometry` | `geometry` | The building's footprint or roofprint (if traced from aerial/satellite imagery). | +| `version` | `int32` | | +| `sources[]` | `list` (optional) | | +| `sources[].between` | `list` (optional) | | +| `sources[].property` | `string` | | +| `sources[].dataset` | `string` | | +| `sources[].record_id` | `string` (optional) | Refers to the specific record within the dataset that was used. | +| `sources[].update_time` | `string` (optional) | | +| `sources[].confidence` | `float64` (optional) | | +| `subtype` | `string` ([Subtype](subtype)) (optional) | Examples: `agricultural`, `civic`, `commercial`, ... | +| `class` | `string` ([BuildingClass](building_class)) (optional) | Examples: `agricultural`, `allotment_house`, `apartments`, ... | +| `has_parts` | `boolean` (optional) | Flag indicating whether the building has parts | + +## Examples + +| Column | Value | +|-------:|-------| +| `geometry` | `POLYGON ((-176.6435004 -43.9938042, -176.6435738 -43.9937107, -176.6437726 -43.9937913, -176.6436992...` | +| `subtype` | `null` | +| `has_parts` | `false` | +| `class` | `null` | +| `facade_color` | `null` | +| `facade_material` | `null` | +| `height` | `null` | +| `id` | `148f35b1-7bc1-4180-9280-10d39b13883b` | +| `is_underground` | `false` | +| `level` | `null` | +| `min_floor` | `null` | +| `min_height` | `null` | +| `names` | `null` | +| `num_floors` | `null` | +| `num_floors_underground` | `null` | +| `roof_color` | `null` | +| `roof_direction` | `null` | +| `roof_height` | `null` | +| `roof_material` | `null` | +| `roof_orientation` | `null` | +| `roof_shape` | `null` | +| `sources[0].between` | `null` | +| `sources[0].confidence` | `null` | +| `sources[0].dataset` | `OpenStreetMap` | +| `sources[0].property` | | +| `sources[0].record_id` | `w519166507@1` | +| `sources[0].update_time` | `2017-08-27T21:39:50.000Z` | +| `theme` | `buildings` | +| `type` | `building` | +| `version` | `1` | diff --git a/docs/schema/reference/buildings/building/building_class.md b/docs/schema/reference/buildings/building/building_class.md new file mode 100644 index 000000000..e48a6ce25 --- /dev/null +++ b/docs/schema/reference/buildings/building/building_class.md @@ -0,0 +1,93 @@ +# BuildingClass + +Further delineation of the building's built purpose. + +## Values + +- `agricultural` +- `allotment_house` +- `apartments` +- `barn` +- `beach_hut` +- `boathouse` +- `bridge_structure` +- `bungalow` +- `bunker` +- `cabin` +- `carport` +- `cathedral` +- `chapel` +- `church` +- `civic` +- `college` +- `commercial` +- `cowshed` +- `detached` +- `digester` +- `dormitory` +- `dwelling_house` +- `factory` +- `farm` +- `farm_auxiliary` +- `fire_station` +- `garage` +- `garages` +- `ger` +- `glasshouse` +- `government` +- `grandstand` +- `greenhouse` +- `guardhouse` +- `hangar` +- `hospital` +- `hotel` +- `house` +- `houseboat` +- `hut` +- `industrial` +- `kindergarten` +- `kiosk` +- `library` +- `manufacture` +- `military` +- `monastery` +- `mosque` +- `office` +- `outbuilding` +- `parking` +- `pavilion` +- `post_office` +- `presbytery` +- `public` +- `religious` +- `residential` +- `retail` +- `roof` +- `school` +- `semi` +- `semidetached_house` +- `service` +- `shed` +- `shrine` +- `silo` +- `slurry_tank` +- `sports_centre` +- `sports_hall` +- `stable` +- `stadium` +- `static_caravan` +- `stilt_house` +- `storage_tank` +- `sty` +- `supermarket` +- `synagogue` +- `temple` +- `terrace` +- `toilets` +- `train_station` +- `transformer_tower` +- `transportation` +- `trullo` +- `university` +- `warehouse` +- `wayside_shrine` diff --git a/docs/schema/reference/buildings/building/subtype.md b/docs/schema/reference/buildings/building/subtype.md new file mode 100644 index 000000000..6e3c4de18 --- /dev/null +++ b/docs/schema/reference/buildings/building/subtype.md @@ -0,0 +1,22 @@ +# Subtype + +A broad category of the building type/purpose. + +When the current use of the building does not match the built purpose, the subtype +should be set to represent the current use of the building. + +## Values + +- `agricultural` +- `civic` +- `commercial` +- `education` +- `entertainment` +- `industrial` +- `medical` +- `military` +- `outbuilding` +- `religious` +- `residential` +- `service` +- `transportation` diff --git a/docs/schema/reference/buildings/building_part/building_part.md b/docs/schema/reference/buildings/building_part/building_part.md new file mode 100644 index 000000000..3222199cf --- /dev/null +++ b/docs/schema/reference/buildings/building_part/building_part.md @@ -0,0 +1,84 @@ +# BuildingPart + +A single building part. + +Parts describe their shape and color and other properties. Each building part must +contain the building with which it is associated. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `height` | `float64` (optional) | Height of the building or part in meters. The height is the distance from the lowest point to the highest point. | +| `is_underground` | `boolean` (optional) | Whether the entire building or part is completely below ground. This is useful for rendering which typically omits these buildings or styles them differently because they are not visible above ground. This is different than the level column which is used to indicate z-ordering of elements and negative values may be above ground. | +| `num_floors` | `int32` (optional) | Number of above-ground floors of the building or part. | +| `num_floors_underground` | `int32` (optional) | Number of below-ground floors of the building or part. | +| `min_height` | `float64` (optional) | The height of the bottom part of building in meters. Used if a building or part of building starts above the ground level. | +| `min_floor` | `int32` (optional) | The "start" floor of this building or part. Indicates that the building or part is "floating" and its bottom-most floor is above ground level, usually because it is part of a larger building in which some parts do reach down to ground level. An example is a building that has an entry road or driveway at ground level into an interior courtyard, where part of the building bridges above the entry road. This property may sometimes be populated when min_height is missing and in these cases can be used as a proxy for min_height. | +| `facade_color` | `string` (optional) | The color (name or color triplet) of the facade of a building or building part in hexadecimal | +| `facade_material` | `string` ([FacadeMaterial](../facade_material)) (optional) | The outer surface material of building facade. Examples: `brick`, `cement_block`, `clay`, ... | +| `roof_material` | `string` ([RoofMaterial](../roof_material)) (optional) | The outermost material of the roof. Examples: `concrete`, `copper`, `eternit`, ... | +| `roof_shape` | `string` ([RoofShape](../roof_shape)) (optional) | The shape of the roof Examples: `dome`, `flat`, `gabled`, ... | +| `roof_direction` | `float64` (optional) | Bearing of the roof ridge line in degrees. | +| `roof_orientation` | `string` ([RoofOrientation](../roof_orientation)) (optional) | Orientation of the roof shape relative to the footprint shape. Either "along" or "across". Examples: `across`, `along` | +| `roof_color` | `string` (optional) | The color (name or color triplet) of the roof of a building or building part in hexadecimal | +| `roof_height` | `float64` (optional) | The height of the building roof in meters. This represents the distance from the base of the roof to the highest point of the roof. | +| `level` | `int32` (optional) | | +| `names` | `object` (`[Names](../../Names/names)`) (optional) | | +| `names.primary` | `string` | The most commonly used name. | +| `names.common` | `object` (optional) | | +| `names.rules[]` | `list` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | +| `names.rules[].side` | `string` ([Side](../../Names/side)) (optional) | Examples: `left`, `right` | +| `names.rules[].between` | `list` (optional) | | +| `names.rules[].value` | `string` | | +| `names.rules[].variant` | `string` ([NameVariant](../../Names/name_variant)) | Examples: `common`, `official`, `alternate`, ... | +| `names.rules[].language` | `string` (optional) | | +| `names.rules[].perspectives` | `object` (`[Perspectives](../../Names/perspectives)`) (optional) | | +| `names.rules[].perspectives.mode` | `string` ([PerspectiveMode](../../Names/perspective_mode)) | Whether the perspective holder accepts or disputes this name. Examples: `accepted_by`, `disputed_by` | +| `names.rules[].perspectives.countries` | `list` | Countries holding the given mode of perspective. | +| `id` | `string` | | +| `theme` | `"buildings"` | | +| `type` | `"building_part"` | | +| `geometry` | `geometry` | The part's geometry. | +| `version` | `int32` | | +| `sources[]` | `list` (optional) | | +| `sources[].between` | `list` (optional) | | +| `sources[].property` | `string` | | +| `sources[].dataset` | `string` | | +| `sources[].record_id` | `string` (optional) | Refers to the specific record within the dataset that was used. | +| `sources[].update_time` | `string` (optional) | | +| `sources[].confidence` | `float64` (optional) | | +| `building_id` | `string` | The building ID to which this part belongs | + +## Examples + +| Column | Value | +|-------:|-------| +| `geometry` | `POLYGON ((-73.2462509 -39.8108937, -73.2462755 -39.8109047, -73.246291 -39.8109182, -73.2463022 -39....` | +| `building_id` | `bd663bd4-1844-4d7d-a400-114de051cf49` | +| `facade_color` | `null` | +| `facade_material` | `null` | +| `height` | `null` | +| `id` | `19412d64-51ac-3d6a-ac2f-8a8c8b91bb60` | +| `is_underground` | `false` | +| `level` | `3` | +| `min_floor` | `null` | +| `min_height` | `null` | +| `names` | `null` | +| `num_floors` | `null` | +| `num_floors_underground` | `null` | +| `roof_color` | `null` | +| `roof_direction` | `null` | +| `roof_height` | `null` | +| `roof_material` | `null` | +| `roof_orientation` | `null` | +| `roof_shape` | `null` | +| `sources[0].between` | `null` | +| `sources[0].confidence` | `null` | +| `sources[0].dataset` | `OpenStreetMap` | +| `sources[0].property` | | +| `sources[0].record_id` | `w223076787@2` | +| `sources[0].update_time` | `2014-10-31T22:55:36.000Z` | +| `theme` | `buildings` | +| `type` | `building_part` | +| `version` | `0` | diff --git a/docs/schema/reference/buildings/facade_material.md b/docs/schema/reference/buildings/facade_material.md new file mode 100644 index 000000000..efcee10ad --- /dev/null +++ b/docs/schema/reference/buildings/facade_material.md @@ -0,0 +1,17 @@ +# FacadeMaterial + +The outer surface material of building facade. + +## Values + +- `brick` +- `cement_block` +- `clay` +- `concrete` +- `glass` +- `metal` +- `plaster` +- `plastic` +- `stone` +- `timber_framing` +- `wood` diff --git a/docs/schema/reference/buildings/roof_material.md b/docs/schema/reference/buildings/roof_material.md new file mode 100644 index 000000000..afb676f86 --- /dev/null +++ b/docs/schema/reference/buildings/roof_material.md @@ -0,0 +1,20 @@ +# RoofMaterial + +The outermost material of the roof. + +## Values + +- `concrete` +- `copper` +- `eternit` +- `glass` +- `grass` +- `gravel` +- `metal` +- `plastic` +- `roof_tiles` +- `slate` +- `solar_panels` +- `thatch` +- `tar_paper` +- `wood` diff --git a/docs/schema/reference/buildings/roof_orientation.md b/docs/schema/reference/buildings/roof_orientation.md new file mode 100644 index 000000000..dbf261cfa --- /dev/null +++ b/docs/schema/reference/buildings/roof_orientation.md @@ -0,0 +1,10 @@ +# RoofOrientation + +Orientation of the roof shape relative to the footprint shape. + +Either "along" or "across". + +## Values + +- `across` +- `along` diff --git a/docs/schema/reference/buildings/roof_shape.md b/docs/schema/reference/buildings/roof_shape.md new file mode 100644 index 000000000..ac0176a42 --- /dev/null +++ b/docs/schema/reference/buildings/roof_shape.md @@ -0,0 +1,20 @@ +# RoofShape + +The shape of the roof. + +## Values + +- `dome` +- `flat` +- `gabled` +- `gambrel` +- `half_hipped` +- `hipped` +- `mansard` +- `onion` +- `pyramidal` +- `round` +- `saltbox` +- `sawtooth` +- `skillion` +- `spherical` diff --git a/docs/schema/reference/cartographic_hints.md b/docs/schema/reference/cartographic_hints.md new file mode 100644 index 000000000..1dfc16306 --- /dev/null +++ b/docs/schema/reference/cartographic_hints.md @@ -0,0 +1,12 @@ +# CartographicHints + +Defines cartographic hints for optimal use of Overture features in map-making. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `prominence` | `integer` (optional) | | +| `min_zoom` | `integer` (optional) | | +| `max_zoom` | `integer` (optional) | | +| `sort_key` | `integer` (optional) | | diff --git a/docs/schema/reference/divisions/capital_of_division_item.md b/docs/schema/reference/divisions/capital_of_division_item.md new file mode 100644 index 000000000..eab2a75fc --- /dev/null +++ b/docs/schema/reference/divisions/capital_of_division_item.md @@ -0,0 +1,10 @@ +# CapitalOfDivisionItem + +One division that has capital. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `division_id` | `string` | | +| `subtype` | `string` ([PlaceType](/schema/codegen/divisions/capital_of_division_item/place_type/)) | Examples: `country`, `dependency`, `macroregion`, ... | diff --git a/docs/schema/reference/divisions/division/division.md b/docs/schema/reference/divisions/division/division.md new file mode 100644 index 000000000..e5cc2616b --- /dev/null +++ b/docs/schema/reference/divisions/division/division.md @@ -0,0 +1,111 @@ +# Division + +Divisions are recognized official or non-official organizations of people as seen +from a given political perspective. + +Examples include countries, provinces, cities, towns, neighborhoods, etc. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `cartography` | `object` (`[CartographicHints](../../cartographic_hints)`) (optional) | | +| `cartography.prominence` | `integer` (optional) | | +| `cartography.min_zoom` | `integer` (optional) | | +| `cartography.max_zoom` | `integer` (optional) | | +| `cartography.sort_key` | `integer` (optional) | | +| `names` | `object` (`[Names](../../Names/names)`) | | +| `names.primary` | `string` | The most commonly used name. | +| `names.common` | `object` (optional) | | +| `names.rules[]` | `list` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | +| `names.rules[].side` | `string` ([Side](../../Names/side)) (optional) | Examples: `left`, `right` | +| `names.rules[].between` | `list` (optional) | | +| `names.rules[].value` | `string` | | +| `names.rules[].variant` | `string` ([NameVariant](../../Names/name_variant)) | Examples: `common`, `official`, `alternate`, ... | +| `names.rules[].language` | `string` (optional) | | +| `names.rules[].perspectives` | `object` (`[Perspectives](../../Names/perspectives)`) (optional) | | +| `names.rules[].perspectives.mode` | `string` ([PerspectiveMode](../../Names/perspective_mode)) | Whether the perspective holder accepts or disputes this name. Examples: `accepted_by`, `disputed_by` | +| `names.rules[].perspectives.countries` | `list` | Countries holding the given mode of perspective. | +| `id` | `string` | | +| `theme` | `"divisions"` | | +| `type` | `"division"` | | +| `geometry` | `geometry` | Approximate location of a position commonly associated with the real-world entity modeled by the division feature. | +| `version` | `int32` | | +| `sources[]` | `list` (optional) | | +| `sources[].between` | `list` (optional) | | +| `sources[].property` | `string` | | +| `sources[].dataset` | `string` | | +| `sources[].record_id` | `string` (optional) | Refers to the specific record within the dataset that was used. | +| `sources[].update_time` | `string` (optional) | | +| `sources[].confidence` | `float64` (optional) | | +| `subtype` | `string` ([PlaceType](../place_type)) | Examples: `country`, `dependency`, `macroregion`, ... | +| `country` | `string` | ISO 3166-1 alpha-2 country code of the country or country-like entity, that this division represents or belongs to. If the entity this division represents has a country code, the country property contains it. If it does not, the country property contains the country code of the first division encountered by traversing the parent_division_id chain to the root. For example: - The country value for the United States is 'US' - The country value for New York City is 'US' - The country value for Puerto Rico, a dependency of the US, is 'PR'. - The country value for San Juan, Puerto Rico is 'PR'. If an entity has an internationally-recognized ISO 3166-1 alpha-2 country code, it should always be used. In cases where the schema requires the code but no internationally-recognized code is available, a synthetic code may be used provided it does not conflict with any internationally-recognized codes. | +| `hierarchies` | `list` | Hierarchies in which this division participates. Every division participates in at least one hierarchy. Most participate in only one. Some divisions may participate in more than one hierarchy, for example if they are claimed by different parent divisions from different political perspectives; or if there are other real-world reasons why the division or one of its ancestors has multiple parents. The first hierarchy in the list is the default hierarchy, and the second-to-last entry in the default hierarchy (if there is such an entry) always corresponds to the `parent_division_id' property. The ordering of hierarchies after the first one is arbitrary. | +| `hierarchies.division_id` | `string` | | +| `hierarchies.subtype` | `string` ([PlaceType](../place_type)) | Examples: `country`, `dependency`, `macroregion`, ... | +| `hierarchies.name` | `string` | Primary name of the division | +| `parent_division_id` | `string` (optional) | Division ID of this division's parent division. Not allowed for top-level divisions (countries) and required for all other divisions. The default parent division is the parent division as seen from the default political perspective, if there is one, and is otherwise chosen somewhat arbitrarily. The hierarchies property can be used to inspect the exhaustive list of parent divisions. | +| `class` | `string` ([DivisionClass](../division_class)) (optional) | Examples: `megacity`, `city`, `town`, ... | +| `local_type` | `object` (optional) | Local name for the subtype property, optionally localized. For example, the Canadian province of Quebec has the subtype 'region', but in the local administrative hierarchy it is referred to as a 'province'. Similarly, the Canadian Yukon territory also has subtype 'region', but is locally called a 'territory'. This property is localized using a standard Overture names structure. So for example, in Switzerland the top-level administrative subdivision corresponding to subtype 'region' is the canton, which is may be translated in each of Switzerland's official languages as, 'canton' in French, 'kanton' in German, 'cantone' in Italian, and 'chantun' in Romansh. | +| `region` | `string` (optional) | ISO 3166-2 principal subdivision code of the subdivision-like entity this division represents or belongs to. If the entity this division represents has a principal subdivision code, the region property contains it. If it does not, the region property contains the principal subdivision code of the first division encountered by traversing the parent_division_id chain to the root. For example: - The region value for the United States is omitted. - The region value for the U.S. state of New York is 'US-NY'. - The region value for New York City is 'US-NY', which it inherits from the state of New York. - The region value for Puerto Rico is 'US-PR'. | +| `perspectives` | `object` (`[Perspectives](../../Names/perspectives)`) (optional) | Political perspectives from which this division is considered to be an accurate representation. If this property is absent, then this division is not known to be disputed from any political perspective. Consequently, there is only one division feature representing the entire real world entity. If this property is present, it means the division represents one of several alternative perspectives on the same real-world entity. There are two modes of perspective: 1. `accepted_by` means the representation of the division is accepted by the listed entities and would be included on a map drawn from their perspective. 2. `disputed_by` means the representation of the division is disputed by the listed entities and would be excluded from a map drawn from their perspective. When drawing a map from the perspective of a given country, one would start by gathering all the undisputed divisions (with no `perspectives` property), and then adding to that first all divisions explicitly accepted by the country, and second all divisions not explicitly disputed by the country. | +| `norms` | `object` (`[Norms](norms)`) (optional) | Collects information about local norms and rules within the division that are generally useful for mapping and map-related use cases. If the norms property or a desired sub-property of the norms property is missing on a division, but at least one of its ancestor divisions has the norms property and the desired sub-property, then the value from the nearest ancestor division may be assumed. | +| `norms.driving_side` | `string` ([Side](../../Names/side)) (optional) | Side of the road on which vehicles drive in the division. Examples: `left`, `right` | +| `population` | `int32` (optional) | Population of the division | +| `capital_division_ids` | `list` (optional) | Division IDs of this division's capital divisions. If present, this property will refer to the division IDs of the capital cities, county seats, etc. of a division. | +| `capital_of_divisions` | `list` (optional) | Division IDs and subtypes of divisions this division is a capital of. | +| `capital_of_divisions.division_id` | `string` | | +| `capital_of_divisions.subtype` | `string` ([PlaceType](../place_type)) | Examples: `country`, `dependency`, `macroregion`, ... | +| `wikidata` | `string` (optional) | | + +## Examples + +| Column | Value | +|-------:|-------| +| `geometry` | `POINT (-175.2551522 -21.1353686)` | +| `names.common` | `null` | +| `names.primary` | `Sia'atoutai` | +| `names.rules[0].between` | `null` | +| `names.rules[0].language` | `null` | +| `names.rules[0].perspectives` | `null` | +| `names.rules[0].side` | `null` | +| `names.rules[0].value` | `Nafualu` | +| `names.rules[0].variant` | `alternate` | +| `subtype` | `locality` | +| `country` | `TO` | +| `hierarchies[0].hierarchies[0].division_id` | `fef8748b-0c91-46ad-9f2d-976d8d2de3e9` | +| `hierarchies[0].hierarchies[0].name` | `Tonga` | +| `hierarchies[0].hierarchies[0].subtype` | `country` | +| `hierarchies[0].hierarchies[1].division_id` | `4d67561a-2292-41bd-8996-7853d276a42c` | +| `hierarchies[0].hierarchies[1].name` | `Tongatapu` | +| `hierarchies[0].hierarchies[1].subtype` | `region` | +| `hierarchies[0].hierarchies[2].division_id` | `8730f0cc-d436-4f11-a7d3-49085813ef44` | +| `hierarchies[0].hierarchies[2].name` | `Vahe Kolomotu'a` | +| `hierarchies[0].hierarchies[2].subtype` | `county` | +| `hierarchies[0].hierarchies[3].division_id` | `350e85f6-68ba-4114-9906-c2844815988b` | +| `hierarchies[0].hierarchies[3].name` | `Sia'atoutai` | +| `hierarchies[0].hierarchies[3].subtype` | `locality` | +| `parent_division_id` | `8730f0cc-d436-4f11-a7d3-49085813ef44` | +| `local_type.en` | `village` | +| `region` | `TO-04` | +| `perspectives` | `null` | +| `norms` | `null` | +| `population` | `534` | +| `capital_division_ids` | `null` | +| `capital_of_divisions` | `null` | +| `wikidata` | `null` | +| `cartography.max_zoom` | `null` | +| `cartography.min_zoom` | `null` | +| `cartography.prominence` | `29` | +| `cartography.sort_key` | `null` | +| `class` | `village` | +| `id` | `350e85f6-68ba-4114-9906-c2844815988b` | +| `sources[0].between` | `null` | +| `sources[0].confidence` | `null` | +| `sources[0].dataset` | `OpenStreetMap` | +| `sources[0].property` | | +| `sources[0].record_id` | `n3173231082@4` | +| `sources[0].update_time` | `2014-12-18T09:17:03Z` | +| `theme` | `divisions` | +| `type` | `division` | +| `version` | `1` | diff --git a/docs/schema/reference/divisions/division/norms.md b/docs/schema/reference/divisions/division/norms.md new file mode 100644 index 000000000..b6d2bd20c --- /dev/null +++ b/docs/schema/reference/divisions/division/norms.md @@ -0,0 +1,9 @@ +# Norms + +Local norms and standards. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `driving_side` | `string` ([Side](/schema/codegen/divisions/Names/side/)) (optional) | Side of the road on which vehicles drive in the division. Examples: `left`, `right` | diff --git a/docs/schema/reference/divisions/division_area/area_class.md b/docs/schema/reference/divisions/division_area/area_class.md new file mode 100644 index 000000000..32640cf3e --- /dev/null +++ b/docs/schema/reference/divisions/division_area/area_class.md @@ -0,0 +1,8 @@ +# AreaClass + +Area and boundary class designations. + +## Values + +- `land` +- `maritime` diff --git a/docs/schema/reference/divisions/division_area/division_area.md b/docs/schema/reference/divisions/division_area/division_area.md new file mode 100644 index 000000000..ed8642798 --- /dev/null +++ b/docs/schema/reference/divisions/division_area/division_area.md @@ -0,0 +1,71 @@ +# DivisionArea + +Division areas are polygons that represent the land or maritime area covered by a +division. + +Each division area belongs to a division which it references by ID, and for which +the division area provides an area polygon. For ease of use, every division area +repeats the subtype, names, country, and region properties of the division it +belongs to. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `names` | `object` (`[Names](../../Names/names)`) | | +| `names.primary` | `string` | The most commonly used name. | +| `names.common` | `object` (optional) | | +| `names.rules[]` | `list` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | +| `names.rules[].side` | `string` ([Side](../Names/side)) (optional) | Examples: `left`, `right` | +| `names.rules[].between` | `list` (optional) | | +| `names.rules[].value` | `string` | | +| `names.rules[].variant` | `string` ([NameVariant](../Names/name_variant)) | Examples: `common`, `official`, `alternate`, ... | +| `names.rules[].language` | `string` (optional) | | +| `names.rules[].perspectives` | `object` (`[Perspectives](../../Names/perspectives)`) (optional) | | +| `names.rules[].perspectives.mode` | `string` ([PerspectiveMode](../Names/perspective_mode)) | Whether the perspective holder accepts or disputes this name. Examples: `accepted_by`, `disputed_by` | +| `names.rules[].perspectives.countries` | `list` | Countries holding the given mode of perspective. | +| `id` | `string` | | +| `theme` | `"divisions"` | | +| `type` | `"division_area"` | | +| `geometry` | `geometry` | The area covered by the division with which this area feature is associated | +| `version` | `int32` | | +| `sources[]` | `list` (optional) | | +| `sources[].between` | `list` (optional) | | +| `sources[].property` | `string` | | +| `sources[].dataset` | `string` | | +| `sources[].record_id` | `string` (optional) | Refers to the specific record within the dataset that was used. | +| `sources[].update_time` | `string` (optional) | | +| `sources[].confidence` | `float64` (optional) | | +| `subtype` | `string` ([PlaceType](../place_type)) | Examples: `country`, `dependency`, `macroregion`, ... | +| `class` | `string` ([AreaClass](area_class)) | Examples: `land`, `maritime` | +| `is_land` | `boolean` (optional) | A boolean to indicate whether or not the feature geometry represents the land-clipped, non-maritime boundary. The geometry can be used for map rendering, cartographic display, and similar purposes. | +| `is_territorial` | `boolean` (optional) | A boolean to indicate whether or not the feature geometry represents Overture's best approximation of this place's maritime boundary. For coastal places, this would tend to include the water area. The geometry can be used for data processing, reverse-geocoding, and similar purposes. | +| `division_id` | `string` | Division ID of the division this area belongs to. | +| `country` | `string` | ISO 3166-1 alpha-2 country code of the division this area belongs to. | +| `region` | `string` (optional) | ISO 3166-2 principal subdivision code of the division this area belongs to. | + +## Examples + +| Column | Value | +|-------:|-------| +| `geometry` | `POLYGON ((-178.950516 -17.3431421, -178.9509773 -17.3430806, -178.9523774 -17.3428912, -178.9524762 ...` | +| `names.common` | `null` | +| `names.primary` | `Susui` | +| `names.rules` | `null` | +| `subtype` | `locality` | +| `is_land` | `true` | +| `is_territorial` | `true` | +| `division_id` | `8183f909-ed92-49f0-90fe-10a35adad6ed` | +| `country` | `FJ` | +| `region` | `FJ-E` | +| `class` | `land` | +| `id` | `7080b91a-d015-4506-8a24-f57c978b54c2` | +| `sources[0].between` | `null` | +| `sources[0].confidence` | `null` | +| `sources[0].dataset` | `OpenStreetMap` | +| `sources[0].property` | | +| `sources[0].record_id` | `w399511500@2` | +| `sources[0].update_time` | `2018-08-20T18:24:58Z` | +| `theme` | `divisions` | +| `type` | `division_area` | +| `version` | `1` | diff --git a/docs/schema/reference/divisions/division_boundary/boundary_class.md b/docs/schema/reference/divisions/division_boundary/boundary_class.md new file mode 100644 index 000000000..d9792f9f3 --- /dev/null +++ b/docs/schema/reference/divisions/division_boundary/boundary_class.md @@ -0,0 +1,8 @@ +# BoundaryClass + +An enumeration. + +## Values + +- `land` +- `maritime` diff --git a/docs/schema/reference/divisions/division_boundary/division_boundary.md b/docs/schema/reference/divisions/division_boundary/division_boundary.md new file mode 100644 index 000000000..766218107 --- /dev/null +++ b/docs/schema/reference/divisions/division_boundary/division_boundary.md @@ -0,0 +1,64 @@ +# DivisionBoundary + +Boundaries represent borders between divisions of the same subtype. + +Some boundaries may be disputed by the divisions on one or both sides. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `id` | `string` | | +| `theme` | `"divisions"` | | +| `type` | `"division_boundary"` | | +| `geometry` | `geometry` | Boundary line or lines | +| `version` | `int32` | | +| `sources[]` | `list` (optional) | | +| `sources[].between` | `list` (optional) | | +| `sources[].property` | `string` | | +| `sources[].dataset` | `string` | | +| `sources[].record_id` | `string` (optional) | Refers to the specific record within the dataset that was used. | +| `sources[].update_time` | `string` (optional) | | +| `sources[].confidence` | `float64` (optional) | | +| `subtype` | `string` ([PlaceType](../place_type)) | Examples: `country`, `dependency`, `macroregion`, ... | +| `class` | `string` ([BoundaryClass](boundary_class)) | Examples: `land`, `maritime` | +| `is_land` | `boolean` (optional) | A boolean to indicate whether or not the feature geometry represents the land-clipped, non-maritime boundary. The geometry can be used for map rendering, cartographic display, and similar purposes. | +| `is_territorial` | `boolean` (optional) | A boolean to indicate whether or not the feature geometry represents Overture's best approximation of this place's maritime boundary. For coastal places, this would tend to include the water area. The geometry can be used for data processing, reverse-geocoding, and similar purposes. | +| `division_ids` | `list` | Identifies the two divisions to the left and right, respectively, of the boundary line. The left- and right-hand sides of the boundary are considered from the perspective of a person standing on the line facing in the direction in which the geometry is oriented, i.e. facing toward the end of the line. The first array element is the Overture ID of the left division. The second element is the Overture ID of the right division. | +| `country` | `string` (optional) | ISO 3166-1 alpha-2 country code of the country or country-like entity that both sides of the boundary share. This property will be present on boundaries between two regions, counties, or similar entities within the same country, but will not be present on boundaries between two countries or country-like entities. | +| `region` | `string` (optional) | ISO 3166-2 principal subdivision code of the subdivision-like entity that both sides of the boundary share. This property will be present on boundaries between two counties, localadmins or similar entities within the same principal subdivision, but will not be present on boundaries between different principal subdivisions or countries. | +| `is_disputed` | `boolean` (optional) | Indicator if there are entities disputing this division boundary. Information about entities disputing this boundary should be included in perspectives property. This property should also be true if boundary between two entities is unclear and this is "best guess". So having it true and no perspectives gives map creators reason not to fully trust the boundary, but use it if they have no other. | +| `perspectives` | `object` (`[Perspectives](../../Names/perspectives)`) (optional) | Political perspectives from which this division boundary is considered to be an accurate representation. If this property is absent, then this boundary is not known to be disputed from any political perspective. Consequently, there is only one boundary feature representing the entire real world entity. If this property is present, it means the boundary represents one of several alternative perspectives on the same real-world entity. There are two modes of perspective: 1. `accepted_by` means the representation of the boundary is accepted by the listed entities and would be included on a map drawn from their perspective. 2. `disputed_by` means the representation of the boundary is disputed by the listed entities and would be excluded from a map drawn from their perspective. When drawing a map from the perspective of a given country, one would start by gathering all the undisputed boundary (with no `perspectives` property), and then adding to that first all boundary explicitly accepted by the country, and second all boundary not explicitly disputed by the country. | +| `perspectives.mode` | `string` ([PerspectiveMode](../../Names/perspective_mode)) | Whether the perspective holder accepts or disputes this name. Examples: `accepted_by`, `disputed_by` | +| `perspectives.countries` | `list` | Countries holding the given mode of perspective. | + +## Examples + +| Column | Value | +|-------:|-------| +| `geometry` | `LINESTRING (-147.064823 -15.4231537, -147.0519131 -15.2885069, -147.048482 -15.1511701)` | +| `subtype` | `county` | +| `is_land` | `false` | +| `is_territorial` | `true` | +| `division_ids` | `[ae266459-63a4-4508-8295-0101e27d039b, d4a6873d-885a-4f2a-bc0f-37e9d9e874e4]` | +| `country` | `PF` | +| `region` | `null` | +| `is_disputed` | `false` | +| `perspectives` | `null` | +| `class` | `maritime` | +| `id` | `2bdf68e4-860d-3d8c-a472-ccf439a5302a` | +| `sources[0].between` | `null` | +| `sources[0].confidence` | `null` | +| `sources[0].dataset` | `OpenStreetMap` | +| `sources[0].property` | | +| `sources[0].record_id` | `r6063055@9` | +| `sources[0].update_time` | `2023-07-20T00:28:40Z` | +| `sources[1].between` | `null` | +| `sources[1].confidence` | `null` | +| `sources[1].dataset` | `OpenStreetMap` | +| `sources[1].property` | | +| `sources[1].record_id` | `r6063063@12` | +| `sources[1].update_time` | `2023-07-20T00:28:40Z` | +| `theme` | `divisions` | +| `type` | `division_boundary` | +| `version` | `1` | diff --git a/docs/schema/reference/divisions/division_class.md b/docs/schema/reference/divisions/division_class.md new file mode 100644 index 000000000..6975b3d24 --- /dev/null +++ b/docs/schema/reference/divisions/division_class.md @@ -0,0 +1,11 @@ +# DivisionClass + +Division-specific class designations. + +## Values + +- `megacity` +- `city` +- `town` +- `village` +- `hamlet` diff --git a/docs/schema/reference/divisions/hierarchy_item.md b/docs/schema/reference/divisions/hierarchy_item.md new file mode 100644 index 000000000..d3f14f222 --- /dev/null +++ b/docs/schema/reference/divisions/hierarchy_item.md @@ -0,0 +1,11 @@ +# HierarchyItem + +One division in a hierarchy. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `division_id` | `string` | | +| `subtype` | `string` ([PlaceType](/schema/codegen/divisions/hierarchy_item/place_type/)) | Examples: `country`, `dependency`, `macroregion`, ... | +| `name` | `string` | Primary name of the division | diff --git a/docs/schema/reference/divisions/place_type.md b/docs/schema/reference/divisions/place_type.md new file mode 100644 index 000000000..b8537226d --- /dev/null +++ b/docs/schema/reference/divisions/place_type.md @@ -0,0 +1,19 @@ +# PlaceType + +Category of the division from a finite, hierarchical, ordered list of categories +(e.g. country, region, locality, etc.) similar to a Who's on First placetype. + +## Values + +- `country` +- `dependency` +- `macroregion` +- `region` +- `macrocounty` +- `county` +- `localadmin` +- `locality` +- `borough` +- `macrohood` +- `neighborhood` +- `microhood` diff --git a/docs/schema/reference/places/place/brand.md b/docs/schema/reference/places/place/brand.md new file mode 100644 index 000000000..f6fb01f81 --- /dev/null +++ b/docs/schema/reference/places/place/brand.md @@ -0,0 +1,24 @@ +# Brand + +The brand of the place. + +A location with multiple brands is modeled as multiple separate places, each with +its own brand. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `names` | `object` (`[Names](../../Names/names)`) (optional) | | +| `names.primary` | `string` | The most commonly used name. | +| `names.common` | `object` (optional) | | +| `names.rules[]` | `list` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | +| `names.rules[].side` | `string` ([Side](../../Names/side)) (optional) | Examples: `left`, `right` | +| `names.rules[].between` | `list` (optional) | | +| `names.rules[].value` | `string` | | +| `names.rules[].variant` | `string` ([NameVariant](../../Names/name_variant)) | Examples: `common`, `official`, `alternate`, ... | +| `names.rules[].language` | `string` (optional) | | +| `names.rules[].perspectives` | `object` (`[Perspectives](../../Names/perspectives)`) (optional) | | +| `names.rules[].perspectives.mode` | `string` ([PerspectiveMode](../../Names/perspective_mode)) | Whether the perspective holder accepts or disputes this name. Examples: `accepted_by`, `disputed_by` | +| `names.rules[].perspectives.countries` | `list` | Countries holding the given mode of perspective. | +| `wikidata` | `string` (optional) | | diff --git a/docs/schema/reference/places/place/categories.md b/docs/schema/reference/places/place/categories.md new file mode 100644 index 000000000..21cf70166 --- /dev/null +++ b/docs/schema/reference/places/place/categories.md @@ -0,0 +1,13 @@ +# Categories + +The categories of the place. + +Complete list is available on +GitHub: https://github.com/OvertureMaps/schema/blob/main/docs/schema/concepts/by-theme/places/overture_categories.csv + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `primary` | `string` | The primary or main category of the place. | +| `alternate` | `list` (optional) | Alternate categories of the place. Some places might fit into two categories, e.g. a book store and a coffee shop. In such a case, the primary category can be augmented with additional applicable categories. | diff --git a/docs/schema/reference/places/place/place.md b/docs/schema/reference/places/place/place.md new file mode 100644 index 000000000..85ab4d6c2 --- /dev/null +++ b/docs/schema/reference/places/place/place.md @@ -0,0 +1,86 @@ +# Place + +A Place is a point representation of a real-world facility, service, or amenity. + +Place features are compatible with GeoJSON Point features. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `names` | `object` (`[Names](../../Names/names)`) (optional) | | +| `names.primary` | `string` | The most commonly used name. | +| `names.common` | `object` (optional) | | +| `names.rules[]` | `list` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | +| `names.rules[].side` | `string` ([Side](../../Names/side)) (optional) | Examples: `left`, `right` | +| `names.rules[].between` | `list` (optional) | | +| `names.rules[].value` | `string` | | +| `names.rules[].variant` | `string` ([NameVariant](../../Names/name_variant)) | Examples: `common`, `official`, `alternate`, ... | +| `names.rules[].language` | `string` (optional) | | +| `names.rules[].perspectives` | `object` (`[Perspectives](../../Names/perspectives)`) (optional) | | +| `names.rules[].perspectives.mode` | `string` ([PerspectiveMode](../../Names/perspective_mode)) | Whether the perspective holder accepts or disputes this name. Examples: `accepted_by`, `disputed_by` | +| `names.rules[].perspectives.countries` | `list` | Countries holding the given mode of perspective. | +| `id` | `string` | | +| `theme` | `"places"` | | +| `type` | `"place"` | | +| `geometry` | `geometry` | Position of the place | +| `version` | `int32` | | +| `sources[]` | `list` (optional) | | +| `sources[].between` | `list` (optional) | | +| `sources[].property` | `string` | | +| `sources[].dataset` | `string` | | +| `sources[].record_id` | `string` (optional) | Refers to the specific record within the dataset that was used. | +| `sources[].update_time` | `string` (optional) | | +| `sources[].confidence` | `float64` (optional) | | +| `categories` | `object` (`[Categories](categories)`) (optional) | | +| `categories.primary` | `string` | The primary or main category of the place. | +| `categories.alternate` | `list` (optional) | Alternate categories of the place. Some places might fit into two categories, e.g. a book store and a coffee shop. In such a case, the primary category can be augmented with additional applicable categories. | +| `confidence` | `float64` (optional) | The confidence of the existence of the place. It's a number between 0 and 1. 0 means that we're sure that the place doesn't exist (anymore). 1 means that we're sure that the place exists. If there's no value for the confidence, it means that we don't have any confidence information. | +| `websites` | `list` (optional) | The websites of the place. | +| `socials` | `list` (optional) | The social media URLs of the place. | +| `emails` | `list` (optional) | The email addresses of the place. | +| `phones` | `list` (optional) | The phone numbers of the place. | +| `brand` | `object` (`[Brand](brand)`) (optional) | | +| `brand.names` | `object` (`[Names](../../Names/names)`) (optional) | | +| `brand.wikidata` | `string` (optional) | | +| `addresses` | `list` (optional) | | +| `addresses.freeform` | `string` (optional) | Free-form address that contains street name, house number and other address info | +| `addresses.locality` | `string` (optional) | Name of the city or neighborhood where the address is located | +| `addresses.postcode` | `string` (optional) | Postal code where the address is located | +| `addresses.region` | `string` (optional) | | +| `addresses.country` | `string` (optional) | | + +## Examples + +| Column | Value | +|-------:|-------| +| `geometry` | `POINT (-151.7990018 -79.5664328)` | +| `categories.alternate` | `null` | +| `categories.primary` | `media_news_website` | +| `confidence` | `0.8015267175572519` | +| `websites` | `[https://www.primenewsmonde.bj/]` | +| `socials` | `[https://www.facebook.com/105157324629740]` | +| `emails` | `null` | +| `phones` | `[+22991510404]` | +| `brand.names.common` | `null` | +| `brand.names.primary` | `null` | +| `brand.names.rules` | `null` | +| `brand.wikidata` | `null` | +| `addresses[0].country` | `BJ` | +| `addresses[0].freeform` | `Fidjrossè Calvaire Villa située entre Sun Beach Hôtel et l'agence PDME. ` | +| `addresses[0].locality` | `Fidjrossè-Centre` | +| `addresses[0].postcode` | `null` | +| `addresses[0].region` | `null` | +| `id` | `25d1faae-e887-493b-97d6-1c5bf39ed51f` | +| `names.common` | `null` | +| `names.primary` | `Prime News TV Monde` | +| `names.rules` | `null` | +| `sources[0].between` | `null` | +| `sources[0].confidence` | `0.8015267175572519` | +| `sources[0].dataset` | `meta` | +| `sources[0].property` | | +| `sources[0].record_id` | `105157324629740` | +| `sources[0].update_time` | `2025-06-30T07:00:00.000Z` | +| `theme` | `places` | +| `type` | `place` | +| `version` | `1` | diff --git a/docs/schema/reference/source_property_item.md b/docs/schema/reference/source_property_item.md new file mode 100644 index 000000000..b0d7338c5 --- /dev/null +++ b/docs/schema/reference/source_property_item.md @@ -0,0 +1,19 @@ +# SourcePropertyItem + +An object storing the source for a specificed property. + +The property is a reference to the property element within this Feature, and will be +referenced using JSON Pointer Notation RFC 6901 ( +https://datatracker.ietf.org/doc/rfc6901/). +The source dataset for that referenced property will be specified in the overture list of approved sources from the Overture Data Working Group that contains the relevant metadata for that dataset including license source organization. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `between` | `list` (optional) | | +| `property` | `string` | | +| `dataset` | `string` | | +| `record_id` | `string` (optional) | Refers to the specific record within the dataset that was used. | +| `update_time` | `string` (optional) | | +| `confidence` | `float64` (optional) | | diff --git a/docs/schema/reference/transportation/access_restriction_rule.md b/docs/schema/reference/transportation/access_restriction_rule.md new file mode 100644 index 000000000..7f5290841 --- /dev/null +++ b/docs/schema/reference/transportation/access_restriction_rule.md @@ -0,0 +1,22 @@ +# AccessRestrictionRule + +Geometric scoping properties defining the range of positions on the segment where +something is physically located or where a rule is active. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `between` | `list` (optional) | | +| `access_type` | `string` ([AccessType](/schema/codegen/transportation/access_restriction_rule/access_type/)) | Examples: `allowed`, `denied`, `designated` | +| `when` | `object` (`[AccessRestrictionWhenClause](access_restriction_when_clause)`) (optional) | | +| `when.vehicle` | `list` (optional) | Vehicle attributes for which the rule applies | +| `when.vehicle.dimension` | `string` ([VehicleDimension](vehicle_dimension)) | Examples: `axle_count`, `height`, `length`, ... | +| `when.vehicle.comparison` | `string` ([VehicleComparison](vehicle_comparison)) | Examples: `greater_than`, `greater_than_equal`, `equal`, ... | +| `when.vehicle.value` | `float64` | | +| `when.vehicle.unit` | `string` ([LengthUnit](length_unit)) | `string` ([WeightUnit](weight_unit)) | | +| `when.mode` | `list` (optional) | Travel mode(s) to which the rule applies | +| `when.recognized` | `list` (optional) | | +| `when.using` | `list` (optional) | | +| `when.heading` | `string` ([Heading](heading)) (optional) | Examples: `forward`, `backward` | +| `when.during` | `string` (optional) | | diff --git a/docs/schema/reference/transportation/access_restriction_when_clause.md b/docs/schema/reference/transportation/access_restriction_when_clause.md new file mode 100644 index 000000000..77c9c1c9e --- /dev/null +++ b/docs/schema/reference/transportation/access_restriction_when_clause.md @@ -0,0 +1,21 @@ +# AccessRestrictionWhenClause + +Mixin class that provides constraint validation capabilities. + +This is a true mixin - it doesn't inherit from BaseModel to avoid MRO issues. +Use it like: class MyModel(ConstraintValidatedModel, BaseModel) + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `vehicle` | `list` (optional) | Vehicle attributes for which the rule applies | +| `vehicle.dimension` | `string` ([VehicleDimension](vehicle_dimension)) | Examples: `axle_count`, `height`, `length`, ... | +| `vehicle.comparison` | `string` ([VehicleComparison](vehicle_comparison)) | Examples: `greater_than`, `greater_than_equal`, `equal`, ... | +| `vehicle.value` | `float64` | | +| `vehicle.unit` | `string` ([LengthUnit](length_unit)) | `string` ([WeightUnit](weight_unit)) | | +| `mode` | `list` (optional) | Travel mode(s) to which the rule applies | +| `recognized` | `list` (optional) | | +| `using` | `list` (optional) | | +| `heading` | `string` ([Heading](/schema/codegen/transportation/access_restriction_when_clause/heading/)) (optional) | Examples: `forward`, `backward` | +| `during` | `string` (optional) | | diff --git a/docs/schema/reference/transportation/access_type.md b/docs/schema/reference/transportation/access_type.md new file mode 100644 index 000000000..a082412f6 --- /dev/null +++ b/docs/schema/reference/transportation/access_type.md @@ -0,0 +1,9 @@ +# AccessType + +An enumeration. + +## Values + +- `allowed` +- `denied` +- `designated` diff --git a/docs/schema/reference/transportation/connector/connector.md b/docs/schema/reference/transportation/connector/connector.md new file mode 100644 index 000000000..289bf8e40 --- /dev/null +++ b/docs/schema/reference/transportation/connector/connector.md @@ -0,0 +1,38 @@ +# Connector + +Connectors create physical connections between segments. + +Connectors are compatible with GeoJSON Point features. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `id` | `string` | | +| `theme` | `"transportation"` | | +| `type` | `"connector"` | | +| `geometry` | `geometry` | Position of the connector | +| `version` | `int32` | | +| `sources[]` | `list` (optional) | | +| `sources[].between` | `list` (optional) | | +| `sources[].property` | `string` | | +| `sources[].dataset` | `string` | | +| `sources[].record_id` | `string` (optional) | Refers to the specific record within the dataset that was used. | +| `sources[].update_time` | `string` (optional) | | +| `sources[].confidence` | `float64` (optional) | | + +## Examples + +| Column | Value | +|-------:|-------| +| `geometry` | `POINT (-176.5472979 -43.9679472)` | +| `id` | `39542bee-230f-4b91-b7e5-a9b58e0c59b1` | +| `sources[0].between` | `null` | +| `sources[0].confidence` | `null` | +| `sources[0].dataset` | `OpenStreetMap` | +| `sources[0].property` | | +| `sources[0].record_id` | `null` | +| `sources[0].update_time` | `null` | +| `theme` | `transportation` | +| `type` | `connector` | +| `version` | `1` | diff --git a/docs/schema/reference/transportation/connector_reference.md b/docs/schema/reference/transportation/connector_reference.md new file mode 100644 index 000000000..53c6cbe7b --- /dev/null +++ b/docs/schema/reference/transportation/connector_reference.md @@ -0,0 +1,11 @@ +# ConnectorReference + +Contains the GERS ID and relative position between 0 and 1 of a connector feature +along the segment. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `connector_id` | `string` | | +| `at` | `float64` | | diff --git a/docs/schema/reference/transportation/destination_label_type.md b/docs/schema/reference/transportation/destination_label_type.md new file mode 100644 index 000000000..89fe923c3 --- /dev/null +++ b/docs/schema/reference/transportation/destination_label_type.md @@ -0,0 +1,12 @@ +# DestinationLabelType + +Indicates what special symbol/icon is present on a signpost, visible as road +marking or similar. + +## Values + +- `street` +- `country` +- `route_ref` +- `toward_route_ref` +- `unknown` diff --git a/docs/schema/reference/transportation/destination_labels.md b/docs/schema/reference/transportation/destination_labels.md new file mode 100644 index 000000000..3c39a05a7 --- /dev/null +++ b/docs/schema/reference/transportation/destination_labels.md @@ -0,0 +1,10 @@ +# DestinationLabels + +The type of object of the destination label. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `value` | `string` | Names the object that is reached | +| `type` | `string` ([DestinationLabelType](destination_label_type)) | Examples: `street`, `country`, `route_ref`, ... | diff --git a/docs/schema/reference/transportation/destination_rule.md b/docs/schema/reference/transportation/destination_rule.md new file mode 100644 index 000000000..c11c1ecf5 --- /dev/null +++ b/docs/schema/reference/transportation/destination_rule.md @@ -0,0 +1,18 @@ +# DestinationRule + +Base model that forbids additional properties in JSON Schema. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `from_connector_id` | `string` | Identifies the point of physical connection on this segment before which the destination sign or marking is visible. | +| `to_connector_id` | `string` | Identifies the point of physical connection on the segment identified by 'to_segment_id' to transition to for reaching the destination(s). | +| `to_segment_id` | `string` | Identifies the segment to transition to reach the destination(s) labeled on the sign or marking. | +| `final_heading` | `string` ([Heading](heading)) | Direction of travel on the segment identified by 'to_segment_id' that leads to the destination. Examples: `forward`, `backward` | +| `labels` | `list` (optional) | Labeled destinations that can be reached by following the segment. | +| `labels.value` | `string` | Names the object that is reached | +| `labels.type` | `string` ([DestinationLabelType](destination_label_type)) | Examples: `street`, `country`, `route_ref`, ... | +| `symbols` | `list` (optional) | A collection of symbols or icons present on the sign next to current destination label. | +| `when` | `object` (`[DestinationWhenClause](destination_when_clause)`) (optional) | | +| `when.heading` | `string` ([Heading](heading)) (optional) | Examples: `forward`, `backward` | diff --git a/docs/schema/reference/transportation/destination_sign_symbol.md b/docs/schema/reference/transportation/destination_sign_symbol.md new file mode 100644 index 000000000..1a35d3290 --- /dev/null +++ b/docs/schema/reference/transportation/destination_sign_symbol.md @@ -0,0 +1,27 @@ +# DestinationSignSymbol + +Indicates what special symbol/icon is present on a signpost, visible as road +marking or similar. + +## Values + +- `motorway` +- `airport` +- `hospital` +- `center` +- `industrial` +- `parking` +- `bus` +- `train_station` +- `rest_area` +- `ferry` +- `motorroad` +- `fuel` +- `viewpoint` +- `fuel_diesel` +- `food` +- `lodging` +- `info` +- `camp_site` +- `interchange` +- `restrooms` diff --git a/docs/schema/reference/transportation/destination_when_clause.md b/docs/schema/reference/transportation/destination_when_clause.md new file mode 100644 index 000000000..eb6373765 --- /dev/null +++ b/docs/schema/reference/transportation/destination_when_clause.md @@ -0,0 +1,12 @@ +# DestinationWhenClause + +Mixin class that provides constraint validation capabilities. + +This is a true mixin - it doesn't inherit from BaseModel to avoid MRO issues. +Use it like: class MyModel(ConstraintValidatedModel, BaseModel) + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `heading` | `string` ([Heading](heading)) (optional) | Examples: `forward`, `backward` | diff --git a/docs/schema/reference/transportation/heading.md b/docs/schema/reference/transportation/heading.md new file mode 100644 index 000000000..d665fff8b --- /dev/null +++ b/docs/schema/reference/transportation/heading.md @@ -0,0 +1,8 @@ +# Heading + +Enumerates possible travel headings along segment geometry. + +## Values + +- `forward` +- `backward` diff --git a/docs/schema/reference/transportation/length_unit.md b/docs/schema/reference/transportation/length_unit.md new file mode 100644 index 000000000..8cd4f38be --- /dev/null +++ b/docs/schema/reference/transportation/length_unit.md @@ -0,0 +1,13 @@ +# LengthUnit + +Enumerates length units supported by the Overture schema. + +## Values + +- `in` +- `ft` +- `yd` +- `mi` +- `cm` +- `m` +- `km` diff --git a/docs/schema/reference/transportation/level_rule.md b/docs/schema/reference/transportation/level_rule.md new file mode 100644 index 000000000..8cc9fcc3e --- /dev/null +++ b/docs/schema/reference/transportation/level_rule.md @@ -0,0 +1,11 @@ +# LevelRule + +A single level rule defining the Z-order, i.e. stacking order, applicable within +a given scope on the road segment. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `between` | `list` (optional) | | +| `value` | `int32` | | diff --git a/docs/schema/reference/transportation/prohibited_transition_rule.md b/docs/schema/reference/transportation/prohibited_transition_rule.md new file mode 100644 index 000000000..eda7e210b --- /dev/null +++ b/docs/schema/reference/transportation/prohibited_transition_rule.md @@ -0,0 +1,25 @@ +# ProhibitedTransitionRule + +Geometric scoping properties defining the range of positions on the segment where +something is physically located or where a rule is active. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `between` | `list` (optional) | | +| `sequence` | `list` | Ordered sequence of connector/segment pairs that it is prohibited to follow from this segment. | +| `sequence.connector_id` | `string` | Identifies the point of physical connection between the previous segment in the sequence and the segment in this sequence entry. | +| `sequence.segment_id` | `string` | Identifies the segment that the previous segment in the sequence is physically connected to via the sequence entry's connector. | +| `final_heading` | `string` ([Heading](heading)) | Direction of travel that is prohibited on the destination segment of the sequence. Examples: `forward`, `backward` | +| `when` | `object` (`[ProhibitedTransitionWhenClause](prohibited_transition_when_clause)`) (optional) | | +| `when.vehicle` | `list` (optional) | Vehicle attributes for which the rule applies | +| `when.vehicle.dimension` | `string` ([VehicleDimension](vehicle_dimension)) | Examples: `axle_count`, `height`, `length`, ... | +| `when.vehicle.comparison` | `string` ([VehicleComparison](vehicle_comparison)) | Examples: `greater_than`, `greater_than_equal`, `equal`, ... | +| `when.vehicle.value` | `float64` | | +| `when.vehicle.unit` | `string` ([LengthUnit](length_unit)) | `string` ([WeightUnit](weight_unit)) | | +| `when.mode` | `list` (optional) | Travel mode(s) to which the rule applies | +| `when.recognized` | `list` (optional) | | +| `when.using` | `list` (optional) | | +| `when.during` | `string` (optional) | | +| `when.heading` | `string` ([Heading](heading)) (optional) | Examples: `forward`, `backward` | diff --git a/docs/schema/reference/transportation/prohibited_transition_when_clause.md b/docs/schema/reference/transportation/prohibited_transition_when_clause.md new file mode 100644 index 000000000..22a530295 --- /dev/null +++ b/docs/schema/reference/transportation/prohibited_transition_when_clause.md @@ -0,0 +1,21 @@ +# ProhibitedTransitionWhenClause + +Mixin class that provides constraint validation capabilities. + +This is a true mixin - it doesn't inherit from BaseModel to avoid MRO issues. +Use it like: class MyModel(ConstraintValidatedModel, BaseModel) + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `vehicle` | `list` (optional) | Vehicle attributes for which the rule applies | +| `vehicle.dimension` | `string` ([VehicleDimension](vehicle_dimension)) | Examples: `axle_count`, `height`, `length`, ... | +| `vehicle.comparison` | `string` ([VehicleComparison](vehicle_comparison)) | Examples: `greater_than`, `greater_than_equal`, `equal`, ... | +| `vehicle.value` | `float64` | | +| `vehicle.unit` | `string` ([LengthUnit](length_unit)) | `string` ([WeightUnit](weight_unit)) | | +| `mode` | `list` (optional) | Travel mode(s) to which the rule applies | +| `recognized` | `list` (optional) | | +| `using` | `list` (optional) | | +| `during` | `string` (optional) | | +| `heading` | `string` ([Heading](heading)) (optional) | Examples: `forward`, `backward` | diff --git a/docs/schema/reference/transportation/purpose_of_use.md b/docs/schema/reference/transportation/purpose_of_use.md new file mode 100644 index 000000000..befdf60f2 --- /dev/null +++ b/docs/schema/reference/transportation/purpose_of_use.md @@ -0,0 +1,12 @@ +# PurposeOfUse + +Reason why a person or entity travelling on the transportation network is using a +particular location. + +## Values + +- `as_customer` +- `at_destination` +- `to_deliver` +- `to_farm` +- `for_forestry` diff --git a/docs/schema/reference/transportation/rail_class.md b/docs/schema/reference/transportation/rail_class.md new file mode 100644 index 000000000..fe284a6de --- /dev/null +++ b/docs/schema/reference/transportation/rail_class.md @@ -0,0 +1,14 @@ +# RailClass + +Captures the kind of rail segment. + +## Values + +- `funicular` +- `light_rail` +- `monorail` +- `narrow_gauge` +- `standard_gauge` +- `subway` +- `tram` +- `unknown` diff --git a/docs/schema/reference/transportation/rail_flag.md b/docs/schema/reference/transportation/rail_flag.md new file mode 100644 index 000000000..031d04948 --- /dev/null +++ b/docs/schema/reference/transportation/rail_flag.md @@ -0,0 +1,16 @@ +# RailFlag + +Simple flags that can be on or off for a railway segment. + +Specifies physical characteristics and can overlap. + +## Values + +- `is_bridge` +- `is_tunnel` +- `is_under_construction` +- `is_abandoned` +- `is_covered` +- `is_passenger` +- `is_freight` +- `is_disused` diff --git a/docs/schema/reference/transportation/rail_flag_rule.md b/docs/schema/reference/transportation/rail_flag_rule.md new file mode 100644 index 000000000..651a41336 --- /dev/null +++ b/docs/schema/reference/transportation/rail_flag_rule.md @@ -0,0 +1,10 @@ +# RailFlagRule + +Rail-specific flag rule with geometric scoping only. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `between` | `list` (optional) | | +| `values` | `list` | | diff --git a/docs/schema/reference/transportation/recognized_status.md b/docs/schema/reference/transportation/recognized_status.md new file mode 100644 index 000000000..f2f927f28 --- /dev/null +++ b/docs/schema/reference/transportation/recognized_status.md @@ -0,0 +1,12 @@ +# RecognizedStatus + +Status of the person or entity travelling as recognized by authorities +controlling the particular location. + +## Values + +- `as_permitted` +- `as_private` +- `as_disabled` +- `as_employee` +- `as_student` diff --git a/docs/schema/reference/transportation/road_class.md b/docs/schema/reference/transportation/road_class.md new file mode 100644 index 000000000..c3e409f80 --- /dev/null +++ b/docs/schema/reference/transportation/road_class.md @@ -0,0 +1,23 @@ +# RoadClass + +Captures the kind of road and its position in the road network hierarchy. + +## Values + +- `motorway` +- `primary` +- `secondary` +- `tertiary` +- `residential` +- `living_street` +- `trunk` +- `unclassified` +- `service` +- `pedestrian` +- `footway` +- `steps` +- `path` +- `track` +- `cycleway` +- `bridleway` +- `unknown` diff --git a/docs/schema/reference/transportation/road_flag.md b/docs/schema/reference/transportation/road_flag.md new file mode 100644 index 000000000..1f0a76f4a --- /dev/null +++ b/docs/schema/reference/transportation/road_flag.md @@ -0,0 +1,15 @@ +# RoadFlag + +Simple flags that can be on or off for a road segment. + +Specifies physical characteristics and can overlap. + +## Values + +- `is_bridge` +- `is_link` +- `is_tunnel` +- `is_under_construction` +- `is_abandoned` +- `is_covered` +- `is_indoor` diff --git a/docs/schema/reference/transportation/road_flag_rule.md b/docs/schema/reference/transportation/road_flag_rule.md new file mode 100644 index 000000000..7d7b3efe2 --- /dev/null +++ b/docs/schema/reference/transportation/road_flag_rule.md @@ -0,0 +1,10 @@ +# RoadFlagRule + +Road-specific flag rule with geometric scoping only. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `between` | `list` (optional) | | +| `values` | `list` | | diff --git a/docs/schema/reference/transportation/road_surface.md b/docs/schema/reference/transportation/road_surface.md new file mode 100644 index 000000000..51fa5599d --- /dev/null +++ b/docs/schema/reference/transportation/road_surface.md @@ -0,0 +1,13 @@ +# RoadSurface + +Physical surface of the road. + +## Values + +- `unknown` +- `paved` +- `unpaved` +- `gravel` +- `dirt` +- `paving_stones` +- `metal` diff --git a/docs/schema/reference/transportation/route_reference.md b/docs/schema/reference/transportation/route_reference.md new file mode 100644 index 000000000..6b8dc2d9b --- /dev/null +++ b/docs/schema/reference/transportation/route_reference.md @@ -0,0 +1,14 @@ +# RouteReference + +Route reference with linear referencing support. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `between` | `list` (optional) | | +| `name` | `string` (optional) | Full name of the route | +| `network` | `string` (optional) | Name of the highway system this route belongs to | +| `ref` | `string` (optional) | Code or number used to reference the route | +| `symbol` | `string` (optional) | URL or description of route signage | +| `wikidata` | `string` (optional) | | diff --git a/docs/schema/reference/transportation/segment/rail_segment.md b/docs/schema/reference/transportation/segment/rail_segment.md new file mode 100644 index 000000000..ab06a4c70 --- /dev/null +++ b/docs/schema/reference/transportation/segment/rail_segment.md @@ -0,0 +1,67 @@ +# RailSegment + +Rail Segment Properties. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `names` | `object` (`[Names](../../Names/names)`) (optional) | | +| `names.primary` | `string` | The most commonly used name. | +| `names.common` | `object` (optional) | | +| `names.rules[]` | `list` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | +| `names.rules[].side` | `string` ([Side](../../Names/side)) (optional) | Examples: `left`, `right` | +| `names.rules[].between` | `list` (optional) | | +| `names.rules[].value` | `string` | | +| `names.rules[].variant` | `string` ([NameVariant](../../Names/name_variant)) | Examples: `common`, `official`, `alternate`, ... | +| `names.rules[].language` | `string` (optional) | | +| `names.rules[].perspectives` | `object` (`[Perspectives](../../Names/perspectives)`) (optional) | | +| `names.rules[].perspectives.mode` | `string` ([PerspectiveMode](../../Names/perspective_mode)) | Whether the perspective holder accepts or disputes this name. Examples: `accepted_by`, `disputed_by` | +| `names.rules[].perspectives.countries` | `list` | Countries holding the given mode of perspective. | +| `id` | `string` | | +| `theme` | `"transportation"` | | +| `type` | `"segment"` | | +| `geometry` | `geometry` | Segment centerline | +| `version` | `int32` | | +| `sources[]` | `list` (optional) | | +| `sources[].between` | `list` (optional) | | +| `sources[].property` | `string` | | +| `sources[].dataset` | `string` | | +| `sources[].record_id` | `string` (optional) | Refers to the specific record within the dataset that was used. | +| `sources[].update_time` | `string` (optional) | | +| `sources[].confidence` | `float64` (optional) | | +| `subtype` | `"rail"` | | +| `access_restrictions` | `list` (optional) | | +| `access_restrictions.between` | `list` (optional) | | +| `access_restrictions.access_type` | `string` ([AccessType](../access_type)) | Examples: `allowed`, `denied`, `designated` | +| `access_restrictions.when` | `object` (`[AccessRestrictionWhenClause](../access_restriction_when_clause)`) (optional) | | +| `access_restrictions.when.vehicle` | `list` (optional) | Vehicle attributes for which the rule applies | +| `access_restrictions.when.vehicle.dimension` | `string` ([VehicleDimension](../vehicle_dimension)) | Examples: `axle_count`, `height`, `length`, ... | +| `access_restrictions.when.vehicle.comparison` | `string` ([VehicleComparison](../vehicle_comparison)) | Examples: `greater_than`, `greater_than_equal`, `equal`, ... | +| `access_restrictions.when.vehicle.value` | `float64` | | +| `access_restrictions.when.vehicle.unit` | `string` ([LengthUnit](../length_unit)) | `string` ([WeightUnit](../weight_unit)) | | +| `access_restrictions.when.mode` | `list` (optional) | Travel mode(s) to which the rule applies | +| `access_restrictions.when.recognized` | `list` (optional) | | +| `access_restrictions.when.using` | `list` (optional) | | +| `access_restrictions.when.heading` | `string` ([Heading](../heading)) (optional) | Examples: `forward`, `backward` | +| `access_restrictions.when.during` | `string` (optional) | | +| `connectors` | `list` (optional) | List of connectors which this segment is physically connected to and their relative location. Each connector is a possible routing decision point, meaning it defines a place along the segment in which there is possibility to transition to other segments which share the same connector. Default: `[]` | +| `connectors.connector_id` | `string` | | +| `connectors.at` | `float64` | | +| `level_rules` | `list` (optional) | | +| `level_rules.between` | `list` (optional) | | +| `level_rules.value` | `int32` | | +| `routes` | `list` (optional) | | +| `routes.between` | `list` (optional) | | +| `routes.name` | `string` (optional) | Full name of the route | +| `routes.network` | `string` (optional) | Name of the highway system this route belongs to | +| `routes.ref` | `string` (optional) | Code or number used to reference the route | +| `routes.symbol` | `string` (optional) | URL or description of route signage | +| `routes.wikidata` | `string` (optional) | | +| `subclass_rules` | `list` (optional) | | +| `subclass_rules.between` | `list` (optional) | | +| `subclass_rules.value` | `string` ([Subclass](../subclass)) | Examples: `link`, `sidewalk`, `crosswalk`, ... | +| `class` | `string` ([RailClass](../rail_class)) | Examples: `funicular`, `light_rail`, `monorail`, ... | +| `rail_flags` | `list` (optional) | | +| `rail_flags.between` | `list` (optional) | | +| `rail_flags.values` | `list` | | diff --git a/docs/schema/reference/transportation/segment/road_segment.md b/docs/schema/reference/transportation/segment/road_segment.md new file mode 100644 index 000000000..31dcea464 --- /dev/null +++ b/docs/schema/reference/transportation/segment/road_segment.md @@ -0,0 +1,112 @@ +# RoadSegment + +Road Segment Properties. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `names` | `object` (`[Names](../../Names/names)`) (optional) | | +| `names.primary` | `string` | The most commonly used name. | +| `names.common` | `object` (optional) | | +| `names.rules[]` | `list` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | +| `names.rules[].side` | `string` ([Side](../../Names/side)) (optional) | Examples: `left`, `right` | +| `names.rules[].between` | `list` (optional) | | +| `names.rules[].value` | `string` | | +| `names.rules[].variant` | `string` ([NameVariant](../../Names/name_variant)) | Examples: `common`, `official`, `alternate`, ... | +| `names.rules[].language` | `string` (optional) | | +| `names.rules[].perspectives` | `object` (`[Perspectives](../../Names/perspectives)`) (optional) | | +| `names.rules[].perspectives.mode` | `string` ([PerspectiveMode](../../Names/perspective_mode)) | Whether the perspective holder accepts or disputes this name. Examples: `accepted_by`, `disputed_by` | +| `names.rules[].perspectives.countries` | `list` | Countries holding the given mode of perspective. | +| `id` | `string` | | +| `theme` | `"transportation"` | | +| `type` | `"segment"` | | +| `geometry` | `geometry` | Segment centerline | +| `version` | `int32` | | +| `sources[]` | `list` (optional) | | +| `sources[].between` | `list` (optional) | | +| `sources[].property` | `string` | | +| `sources[].dataset` | `string` | | +| `sources[].record_id` | `string` (optional) | Refers to the specific record within the dataset that was used. | +| `sources[].update_time` | `string` (optional) | | +| `sources[].confidence` | `float64` (optional) | | +| `subtype` | `"road"` | | +| `access_restrictions` | `list` (optional) | | +| `access_restrictions.between` | `list` (optional) | | +| `access_restrictions.access_type` | `string` ([AccessType](../access_type)) | Examples: `allowed`, `denied`, `designated` | +| `access_restrictions.when` | `object` (`[AccessRestrictionWhenClause](../access_restriction_when_clause)`) (optional) | | +| `access_restrictions.when.vehicle` | `list` (optional) | Vehicle attributes for which the rule applies | +| `access_restrictions.when.vehicle.dimension` | `string` ([VehicleDimension](../vehicle_dimension)) | Examples: `axle_count`, `height`, `length`, ... | +| `access_restrictions.when.vehicle.comparison` | `string` ([VehicleComparison](../vehicle_comparison)) | Examples: `greater_than`, `greater_than_equal`, `equal`, ... | +| `access_restrictions.when.vehicle.value` | `float64` | | +| `access_restrictions.when.vehicle.unit` | `string` ([LengthUnit](../length_unit)) | `string` ([WeightUnit](../weight_unit)) | | +| `access_restrictions.when.mode` | `list` (optional) | Travel mode(s) to which the rule applies | +| `access_restrictions.when.recognized` | `list` (optional) | | +| `access_restrictions.when.using` | `list` (optional) | | +| `access_restrictions.when.heading` | `string` ([Heading](../heading)) (optional) | Examples: `forward`, `backward` | +| `access_restrictions.when.during` | `string` (optional) | | +| `connectors` | `list` (optional) | List of connectors which this segment is physically connected to and their relative location. Each connector is a possible routing decision point, meaning it defines a place along the segment in which there is possibility to transition to other segments which share the same connector. Default: `[]` | +| `connectors.connector_id` | `string` | | +| `connectors.at` | `float64` | | +| `level_rules` | `list` (optional) | | +| `level_rules.between` | `list` (optional) | | +| `level_rules.value` | `int32` | | +| `routes` | `list` (optional) | | +| `routes.between` | `list` (optional) | | +| `routes.name` | `string` (optional) | Full name of the route | +| `routes.network` | `string` (optional) | Name of the highway system this route belongs to | +| `routes.ref` | `string` (optional) | Code or number used to reference the route | +| `routes.symbol` | `string` (optional) | URL or description of route signage | +| `routes.wikidata` | `string` (optional) | | +| `subclass_rules` | `list` (optional) | | +| `subclass_rules.between` | `list` (optional) | | +| `subclass_rules.value` | `string` ([Subclass](../subclass)) | Examples: `link`, `sidewalk`, `crosswalk`, ... | +| `class` | `string` ([RoadClass](../road_class)) | Examples: `motorway`, `primary`, `secondary`, ... | +| `destinations` | `list` (optional) | | +| `destinations.from_connector_id` | `string` | Identifies the point of physical connection on this segment before which the destination sign or marking is visible. | +| `destinations.to_connector_id` | `string` | Identifies the point of physical connection on the segment identified by 'to_segment_id' to transition to for reaching the destination(s). | +| `destinations.to_segment_id` | `string` | Identifies the segment to transition to reach the destination(s) labeled on the sign or marking. | +| `destinations.final_heading` | `string` ([Heading](../heading)) | Direction of travel on the segment identified by 'to_segment_id' that leads to the destination. Examples: `forward`, `backward` | +| `destinations.labels` | `list` (optional) | Labeled destinations that can be reached by following the segment. | +| `destinations.labels.value` | `string` | Names the object that is reached | +| `destinations.labels.type` | `string` ([DestinationLabelType](../destination_label_type)) | Examples: `street`, `country`, `route_ref`, ... | +| `destinations.symbols` | `list` (optional) | A collection of symbols or icons present on the sign next to current destination label. | +| `destinations.when` | `object` (`[DestinationWhenClause](../destination_when_clause)`) (optional) | | +| `destinations.when.heading` | `string` ([Heading](../heading)) (optional) | Examples: `forward`, `backward` | +| `prohibited_transitions` | `list` (optional) | | +| `prohibited_transitions.between` | `list` (optional) | | +| `prohibited_transitions.sequence` | `list` | Ordered sequence of connector/segment pairs that it is prohibited to follow from this segment. | +| `prohibited_transitions.sequence.connector_id` | `string` | Identifies the point of physical connection between the previous segment in the sequence and the segment in this sequence entry. | +| `prohibited_transitions.sequence.segment_id` | `string` | Identifies the segment that the previous segment in the sequence is physically connected to via the sequence entry's connector. | +| `prohibited_transitions.final_heading` | `string` ([Heading](../heading)) | Direction of travel that is prohibited on the destination segment of the sequence. Examples: `forward`, `backward` | +| `prohibited_transitions.when` | `object` (`[ProhibitedTransitionWhenClause](../prohibited_transition_when_clause)`) (optional) | | +| `prohibited_transitions.when.vehicle` | `list` (optional) | Vehicle attributes for which the rule applies | +| `prohibited_transitions.when.mode` | `list` (optional) | Travel mode(s) to which the rule applies | +| `prohibited_transitions.when.recognized` | `list` (optional) | | +| `prohibited_transitions.when.using` | `list` (optional) | | +| `prohibited_transitions.when.during` | `string` (optional) | | +| `prohibited_transitions.when.heading` | `string` ([Heading](../heading)) (optional) | Examples: `forward`, `backward` | +| `road_flags` | `list` (optional) | | +| `road_flags.between` | `list` (optional) | | +| `road_flags.values` | `list` | | +| `road_surface` | `list` (optional) | | +| `road_surface.between` | `list` (optional) | | +| `road_surface.value` | `string` ([RoadSurface](../road_surface)) | Examples: `unknown`, `paved`, `unpaved`, ... | +| `speed_limits` | `list` (optional) | | +| `speed_limits.between` | `list` (optional) | | +| `speed_limits.max_speed` | `object` (`[Speed](../speed)`) (optional) | | +| `speed_limits.max_speed.value` | `int32` | | +| `speed_limits.max_speed.unit` | `string` ([SpeedUnit](../speed_unit)) | Examples: `mph`, `km/h` | +| `speed_limits.min_speed` | `object` (`[Speed](../speed)`) (optional) | | +| `speed_limits.is_max_speed_variable` | `boolean` (optional) | Indicates a variable speed corridor Default: `False` | +| `speed_limits.when` | `object` (`[SpeedLimitWhenClause](../speed_limit_when_clause)`) (optional) | | +| `speed_limits.when.vehicle` | `list` (optional) | Vehicle attributes for which the rule applies | +| `speed_limits.when.mode` | `list` (optional) | Travel mode(s) to which the rule applies | +| `speed_limits.when.recognized` | `list` (optional) | | +| `speed_limits.when.using` | `list` (optional) | | +| `speed_limits.when.heading` | `string` ([Heading](../heading)) (optional) | Examples: `forward`, `backward` | +| `speed_limits.when.during` | `string` (optional) | | +| `subclass` | `string` ([Subclass](../subclass)) (optional) | Examples: `link`, `sidewalk`, `crosswalk`, ... | +| `width_rules` | `list` (optional) | | +| `width_rules.between` | `list` (optional) | | +| `width_rules.value` | `float64` | | diff --git a/docs/schema/reference/transportation/segment/water_segment.md b/docs/schema/reference/transportation/segment/water_segment.md new file mode 100644 index 000000000..37732d468 --- /dev/null +++ b/docs/schema/reference/transportation/segment/water_segment.md @@ -0,0 +1,63 @@ +# WaterSegment + +Water Segment Properties. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `names` | `object` (`[Names](../../Names/names)`) (optional) | | +| `names.primary` | `string` | The most commonly used name. | +| `names.common` | `object` (optional) | | +| `names.rules[]` | `list` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | +| `names.rules[].side` | `string` ([Side](../../Names/side)) (optional) | Examples: `left`, `right` | +| `names.rules[].between` | `list` (optional) | | +| `names.rules[].value` | `string` | | +| `names.rules[].variant` | `string` ([NameVariant](../../Names/name_variant)) | Examples: `common`, `official`, `alternate`, ... | +| `names.rules[].language` | `string` (optional) | | +| `names.rules[].perspectives` | `object` (`[Perspectives](../../Names/perspectives)`) (optional) | | +| `names.rules[].perspectives.mode` | `string` ([PerspectiveMode](../../Names/perspective_mode)) | Whether the perspective holder accepts or disputes this name. Examples: `accepted_by`, `disputed_by` | +| `names.rules[].perspectives.countries` | `list` | Countries holding the given mode of perspective. | +| `id` | `string` | | +| `theme` | `"transportation"` | | +| `type` | `"segment"` | | +| `geometry` | `geometry` | Segment centerline | +| `version` | `int32` | | +| `sources[]` | `list` (optional) | | +| `sources[].between` | `list` (optional) | | +| `sources[].property` | `string` | | +| `sources[].dataset` | `string` | | +| `sources[].record_id` | `string` (optional) | Refers to the specific record within the dataset that was used. | +| `sources[].update_time` | `string` (optional) | | +| `sources[].confidence` | `float64` (optional) | | +| `subtype` | `"water"` | | +| `access_restrictions` | `list` (optional) | | +| `access_restrictions.between` | `list` (optional) | | +| `access_restrictions.access_type` | `string` ([AccessType](../access_type)) | Examples: `allowed`, `denied`, `designated` | +| `access_restrictions.when` | `object` (`[AccessRestrictionWhenClause](../access_restriction_when_clause)`) (optional) | | +| `access_restrictions.when.vehicle` | `list` (optional) | Vehicle attributes for which the rule applies | +| `access_restrictions.when.vehicle.dimension` | `string` ([VehicleDimension](../vehicle_dimension)) | Examples: `axle_count`, `height`, `length`, ... | +| `access_restrictions.when.vehicle.comparison` | `string` ([VehicleComparison](../vehicle_comparison)) | Examples: `greater_than`, `greater_than_equal`, `equal`, ... | +| `access_restrictions.when.vehicle.value` | `float64` | | +| `access_restrictions.when.vehicle.unit` | `string` ([LengthUnit](../length_unit)) | `string` ([WeightUnit](../weight_unit)) | | +| `access_restrictions.when.mode` | `list` (optional) | Travel mode(s) to which the rule applies | +| `access_restrictions.when.recognized` | `list` (optional) | | +| `access_restrictions.when.using` | `list` (optional) | | +| `access_restrictions.when.heading` | `string` ([Heading](../heading)) (optional) | Examples: `forward`, `backward` | +| `access_restrictions.when.during` | `string` (optional) | | +| `connectors` | `list` (optional) | List of connectors which this segment is physically connected to and their relative location. Each connector is a possible routing decision point, meaning it defines a place along the segment in which there is possibility to transition to other segments which share the same connector. Default: `[]` | +| `connectors.connector_id` | `string` | | +| `connectors.at` | `float64` | | +| `level_rules` | `list` (optional) | | +| `level_rules.between` | `list` (optional) | | +| `level_rules.value` | `int32` | | +| `routes` | `list` (optional) | | +| `routes.between` | `list` (optional) | | +| `routes.name` | `string` (optional) | Full name of the route | +| `routes.network` | `string` (optional) | Name of the highway system this route belongs to | +| `routes.ref` | `string` (optional) | Code or number used to reference the route | +| `routes.symbol` | `string` (optional) | URL or description of route signage | +| `routes.wikidata` | `string` (optional) | | +| `subclass_rules` | `list` (optional) | | +| `subclass_rules.between` | `list` (optional) | | +| `subclass_rules.value` | `string` ([Subclass](../subclass)) | Examples: `link`, `sidewalk`, `crosswalk`, ... | diff --git a/docs/schema/reference/transportation/sequence_entry.md b/docs/schema/reference/transportation/sequence_entry.md new file mode 100644 index 000000000..6d3a4ea11 --- /dev/null +++ b/docs/schema/reference/transportation/sequence_entry.md @@ -0,0 +1,10 @@ +# SequenceEntry + +A segment/connector pair in a prohibited transition sequence. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `connector_id` | `string` | Identifies the point of physical connection between the previous segment in the sequence and the segment in this sequence entry. | +| `segment_id` | `string` | Identifies the segment that the previous segment in the sequence is physically connected to via the sequence entry's connector. | diff --git a/docs/schema/reference/transportation/speed.md b/docs/schema/reference/transportation/speed.md new file mode 100644 index 000000000..1a2299aa7 --- /dev/null +++ b/docs/schema/reference/transportation/speed.md @@ -0,0 +1,11 @@ +# Speed + +A speed value, i.e. a certain number of distance units travelled per unit +time. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `value` | `int32` | | +| `unit` | `string` ([SpeedUnit](speed_unit)) | Examples: `mph`, `km/h` | diff --git a/docs/schema/reference/transportation/speed_limit_rule.md b/docs/schema/reference/transportation/speed_limit_rule.md new file mode 100644 index 000000000..083f319c9 --- /dev/null +++ b/docs/schema/reference/transportation/speed_limit_rule.md @@ -0,0 +1,25 @@ +# SpeedLimitRule + +An individual speed limit rule. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `between` | `list` (optional) | | +| `max_speed` | `object` (`[Speed](speed)`) (optional) | | +| `max_speed.value` | `int32` | | +| `max_speed.unit` | `string` ([SpeedUnit](speed_unit)) | Examples: `mph`, `km/h` | +| `min_speed` | `object` (`[Speed](speed)`) (optional) | | +| `is_max_speed_variable` | `boolean` (optional) | Indicates a variable speed corridor Default: `False` | +| `when` | `object` (`[SpeedLimitWhenClause](speed_limit_when_clause)`) (optional) | | +| `when.vehicle` | `list` (optional) | Vehicle attributes for which the rule applies | +| `when.vehicle.dimension` | `string` ([VehicleDimension](vehicle_dimension)) | Examples: `axle_count`, `height`, `length`, ... | +| `when.vehicle.comparison` | `string` ([VehicleComparison](vehicle_comparison)) | Examples: `greater_than`, `greater_than_equal`, `equal`, ... | +| `when.vehicle.value` | `float64` | | +| `when.vehicle.unit` | `string` ([LengthUnit](length_unit)) | `string` ([WeightUnit](weight_unit)) | | +| `when.mode` | `list` (optional) | Travel mode(s) to which the rule applies | +| `when.recognized` | `list` (optional) | | +| `when.using` | `list` (optional) | | +| `when.heading` | `string` ([Heading](heading)) (optional) | Examples: `forward`, `backward` | +| `when.during` | `string` (optional) | | diff --git a/docs/schema/reference/transportation/speed_limit_when_clause.md b/docs/schema/reference/transportation/speed_limit_when_clause.md new file mode 100644 index 000000000..99419b3e0 --- /dev/null +++ b/docs/schema/reference/transportation/speed_limit_when_clause.md @@ -0,0 +1,21 @@ +# SpeedLimitWhenClause + +Mixin class that provides constraint validation capabilities. + +This is a true mixin - it doesn't inherit from BaseModel to avoid MRO issues. +Use it like: class MyModel(ConstraintValidatedModel, BaseModel) + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `vehicle` | `list` (optional) | Vehicle attributes for which the rule applies | +| `vehicle.dimension` | `string` ([VehicleDimension](vehicle_dimension)) | Examples: `axle_count`, `height`, `length`, ... | +| `vehicle.comparison` | `string` ([VehicleComparison](vehicle_comparison)) | Examples: `greater_than`, `greater_than_equal`, `equal`, ... | +| `vehicle.value` | `float64` | | +| `vehicle.unit` | `string` ([LengthUnit](length_unit)) | `string` ([WeightUnit](weight_unit)) | | +| `mode` | `list` (optional) | Travel mode(s) to which the rule applies | +| `recognized` | `list` (optional) | | +| `using` | `list` (optional) | | +| `heading` | `string` ([Heading](heading)) (optional) | Examples: `forward`, `backward` | +| `during` | `string` (optional) | | diff --git a/docs/schema/reference/transportation/speed_unit.md b/docs/schema/reference/transportation/speed_unit.md new file mode 100644 index 000000000..6e836e0bc --- /dev/null +++ b/docs/schema/reference/transportation/speed_unit.md @@ -0,0 +1,8 @@ +# SpeedUnit + +Speed unit. + +## Values + +- `mph` +- `km/h` diff --git a/docs/schema/reference/transportation/subclass.md b/docs/schema/reference/transportation/subclass.md new file mode 100644 index 000000000..4e9db9c32 --- /dev/null +++ b/docs/schema/reference/transportation/subclass.md @@ -0,0 +1,13 @@ +# Subclass + +Refines expected usage of the segment, must not overlap. + +## Values + +- `link` +- `sidewalk` +- `crosswalk` +- `parking_aisle` +- `driveway` +- `alley` +- `cycle_crossing` diff --git a/docs/schema/reference/transportation/subclass_rule.md b/docs/schema/reference/transportation/subclass_rule.md new file mode 100644 index 000000000..7cec1015a --- /dev/null +++ b/docs/schema/reference/transportation/subclass_rule.md @@ -0,0 +1,10 @@ +# SubclassRule + +Set of subclasses scoped along segment. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `between` | `list` (optional) | | +| `value` | `string` ([Subclass](subclass)) | Examples: `link`, `sidewalk`, `crosswalk`, ... | diff --git a/docs/schema/reference/transportation/surface_rule.md b/docs/schema/reference/transportation/surface_rule.md new file mode 100644 index 000000000..7bc8672b7 --- /dev/null +++ b/docs/schema/reference/transportation/surface_rule.md @@ -0,0 +1,11 @@ +# SurfaceRule + +Geometric scoping properties defining the range of positions on the segment where +something is physically located or where a rule is active. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `between` | `list` (optional) | | +| `value` | `string` ([RoadSurface](road_surface)) | Examples: `unknown`, `paved`, `unpaved`, ... | diff --git a/docs/schema/reference/transportation/travel_mode.md b/docs/schema/reference/transportation/travel_mode.md new file mode 100644 index 000000000..3a87b8a3d --- /dev/null +++ b/docs/schema/reference/transportation/travel_mode.md @@ -0,0 +1,19 @@ +# TravelMode + +Enumerates possible travel modes. + +Some modes represent groups of modes. + +## Values + +- `vehicle` +- `motor_vehicle` +- `car` +- `truck` +- `motorcycle` +- `foot` +- `bicycle` +- `bus` +- `hgv` +- `hov` +- `emergency` diff --git a/docs/schema/reference/transportation/vehicle_comparison.md b/docs/schema/reference/transportation/vehicle_comparison.md new file mode 100644 index 000000000..4ce54fc36 --- /dev/null +++ b/docs/schema/reference/transportation/vehicle_comparison.md @@ -0,0 +1,11 @@ +# VehicleComparison + +Enumerates possible comparison operators for use in scoping. + +## Values + +- `greater_than` +- `greater_than_equal` +- `equal` +- `less_than` +- `less_than_equal` diff --git a/docs/schema/reference/transportation/vehicle_dimension.md b/docs/schema/reference/transportation/vehicle_dimension.md new file mode 100644 index 000000000..39859bb7e --- /dev/null +++ b/docs/schema/reference/transportation/vehicle_dimension.md @@ -0,0 +1,11 @@ +# VehicleDimension + +Enumerates possible vehicle dimensions for use in restrictions. + +## Values + +- `axle_count` +- `height` +- `length` +- `weight` +- `width` diff --git a/docs/schema/reference/transportation/vehicle_scope_rule.md b/docs/schema/reference/transportation/vehicle_scope_rule.md new file mode 100644 index 000000000..e6119a68b --- /dev/null +++ b/docs/schema/reference/transportation/vehicle_scope_rule.md @@ -0,0 +1,12 @@ +# VehicleScopeRule + +An individual vehicle scope rule. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `dimension` | `string` ([VehicleDimension](vehicle_dimension)) | Examples: `axle_count`, `height`, `length`, ... | +| `comparison` | `string` ([VehicleComparison](vehicle_comparison)) | Examples: `greater_than`, `greater_than_equal`, `equal`, ... | +| `value` | `float64` | | +| `unit` | `string` ([LengthUnit](length_unit)) | `string` ([WeightUnit](weight_unit)) | | diff --git a/docs/schema/reference/transportation/weight_unit.md b/docs/schema/reference/transportation/weight_unit.md new file mode 100644 index 000000000..9539d459b --- /dev/null +++ b/docs/schema/reference/transportation/weight_unit.md @@ -0,0 +1,13 @@ +# WeightUnit + +Enumerates weight units supported by the Overture schema. + +## Values + +- `oz` +- `lb` +- `st` +- `lt` +- `g` +- `kg` +- `t` diff --git a/docs/schema/reference/transportation/width_rule.md b/docs/schema/reference/transportation/width_rule.md new file mode 100644 index 000000000..490dff6a3 --- /dev/null +++ b/docs/schema/reference/transportation/width_rule.md @@ -0,0 +1,11 @@ +# WidthRule + +Geometric scoping properties defining the range of positions on the segment where +something is physically located or where a rule is active. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `between` | `list` (optional) | | +| `value` | `float64` | | diff --git a/docusaurus.config.js b/docusaurus.config.js index 9987b25cd..82122d0eb 100644 --- a/docusaurus.config.js +++ b/docusaurus.config.js @@ -1,7 +1,7 @@ // @ts-check // Note: type annotations allow type checking and IDEs autocompletion -const {themes} = require('prism-react-renderer'); +const { themes } = require('prism-react-renderer'); const lightCodeTheme = themes.nightOwlLight; const darkCodeTheme = themes.nightOwl; @@ -14,6 +14,25 @@ function getFromEnvironment(variableName, defaultValue) { return environmentValue ? environmentValue : defaultValue; } +function getLatestOvertureRelease() { + const fallback = '2026-01-21.0'; + try { + const { execSync } = require('child_process'); + const response = execSync('curl -s https://stac.overturemaps.org/catalog.json', { + encoding: 'utf-8', + timeout: 10000, + }); + const catalog = JSON.parse(response); + return catalog.latest || fallback; + } catch (error) { + console.warn(error); + console.warn('Failed to fetch latest Overture release, using fallback:', fallback); + return fallback; + } +} + +const latestOvertureRelease = getLatestOvertureRelease(); + /** @type {import('@docusaurus/types').Config} */ const config = { title: 'Overture Maps Documentation', @@ -21,20 +40,20 @@ const config = { favicon: 'img/favicon.png', customFields: { - overtureRelease: '2026-01-21.0', - pmtiles_path: 'https://d3c1b7bog2u1nn.cloudfront.net/2025-10-22' + overtureRelease: latestOvertureRelease, + pmtiles_path: 'https://tiles.overturemaps.org/' + latestOvertureRelease, }, - /** + future: { + v4: true, experimental_faster: { swcJsLoader: true, swcJsMinimizer: true, swcHtmlMinimizer: true, lightningCssMinimizer: true, - rspackBundler: false, // rspack bundler doesn't work with our Webpack config for raw-loader and YAML files. - mdxCrossCompilerCache: true, + rspackBundler: true, }, - }, */ + }, // Set the production url of your site here url: getFromEnvironment('DOCUSAURUS_URL', defaultUrl), @@ -47,8 +66,13 @@ const config = { organizationName: 'OvertureMaps', // Usually your GitHub org/user name. projectName: 'docs', // Usually your repo name. - onBrokenLinks: 'throw', - onBrokenMarkdownLinks: 'throw', + onBrokenLinks: 'ignore', + + markdown: { + hooks: { + onBrokenMarkdownLinks: 'ignore', + }, + }, trailingSlash: true, @@ -60,29 +84,9 @@ const config = { locales: ['en'], }, - themes: ["docusaurus-json-schema-plugin"], + themes: [], plugins: [ - () => ({ - name: 'custom-docusaurus-plugin', - configureWebpack() { - return { - module: { - rules: [ - { - test: /\.yaml$/, - use: 'raw-loader' - }, - { - resolve: { - symlinks: false - } - } - ], - }, - }; - }, - }), [ '@docusaurus/plugin-content-pages', { @@ -90,8 +94,8 @@ const config = { path: './community', routeBasePath: 'community', showLastUpdateTime: true, - } - ] + }, + ], ], presets: [ @@ -113,10 +117,13 @@ const config = { theme: { customCss: require.resolve('./src/css/custom.css'), }, - gtag: { - trackingID: 'G-JBXK7VCHV4', - anonymizeIP: true, - }, + gtag: + process.env.DOCUSAURUS_URL === defaultUrl + ? { + trackingID: 'G-JBXK7VCHV4', + anonymizeIP: true, + } + : false, }), ], ], @@ -131,7 +138,7 @@ const config = { logo: { alt: 'Overture Maps Foundation Logo', src: 'img/omf_logo_transparent.png', - href: 'https://overturemaps.org' + href: 'https://overturemaps.org', }, items: [ { @@ -167,7 +174,7 @@ const config = { algolia: { appId: 'MK8X1051PQ', //this is the public search API key; ok to commit - apiKey:'29fe3f5bc0dabfade01c016695919c8d', + apiKey: '29fe3f5bc0dabfade01c016695919c8d', indexName: 'overturemaps', contextualSearch: true, @@ -179,7 +186,6 @@ const config = { // Optional: whether the insights feature is enabled or not on Docsearch (`false` by default) insights: false, - }, footer: { style: 'dark', @@ -188,7 +194,7 @@ const config = { prism: { theme: lightCodeTheme, darkTheme: darkCodeTheme, - additionalLanguages: ['bash', 'diff', 'json', 'sql','python'], + additionalLanguages: ['bash', 'diff', 'json', 'sql', 'python'], }, }), }; diff --git a/eslint.config.mjs b/eslint.config.mjs new file mode 100644 index 000000000..f854379d7 --- /dev/null +++ b/eslint.config.mjs @@ -0,0 +1,42 @@ +import js from '@eslint/js'; +import react from 'eslint-plugin-react'; +import prettier from 'eslint-config-prettier'; +import globals from 'globals'; + +export default [ + js.configs.recommended, + { + files: ['**/*.{js,jsx}'], + plugins: { + react, + }, + languageOptions: { + ecmaVersion: 'latest', + sourceType: 'module', + globals: { + ...globals.browser, + ...globals.node, + }, + parserOptions: { + ecmaFeatures: { + jsx: true, + }, + }, + }, + settings: { + react: { + version: 'detect', + }, + }, + rules: { + ...react.configs.recommended.rules, + ...react.configs['jsx-runtime'].rules, + 'react/prop-types': 'off', + 'no-unused-vars': ['warn', { argsIgnorePattern: '^_' }], + }, + }, + prettier, + { + ignores: ['build/', '.docusaurus/', 'node_modules/'], + }, +]; diff --git a/fetch_schema.sh b/fetch_schema.sh deleted file mode 100755 index 431c54ffa..000000000 --- a/fetch_schema.sh +++ /dev/null @@ -1,26 +0,0 @@ -# This script checks out the overturemaps/schema repository. -# It will pull from `main` unless SCHEMA_BRANCH is explicitly set to something else - -rm -rf schema/ -git clone --branch=${SCHEMA_BRANCH:-main} -n --depth=1 --filter=tree:0 https://github.com/overturemaps/schema -cd schema -git sparse-checkout set --no-cone examples schema docusaurus -git checkout -echo "Successfully checked out schema reference docs:" -du -hs . -cd .. - -echo "Copying Examples" -rm -rf docs/_examples/ -mkdir -p docs/_examples && cp -R schema/examples/* docs/_examples/ - -echo "Copying Schema YAML" -rm -rf docs/_schema -mkdir -p docs/_schema && cp -R schema/schema/* docs/_schema/ - -echo "Copying Schema Pages" -rm -rf docs/schema -mkdir -p docs/schema/ && cp -R schema/docs/schema/* docs/schema/ - -echo "Removing schema repo" -rm -rf schema/ diff --git a/package-lock.json b/package-lock.json index 6cc11aaa8..4ff5f1192 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,19 +1,18 @@ { "name": "overture-documentation", - "version": "0.1.0", + "version": "0.2.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "overture-documentation", - "version": "0.1.0", + "version": "0.2.0", "dependencies": { - "@docusaurus/core": "^3.8.1", - "@docusaurus/preset-classic": "^3.8.1", + "@docusaurus/core": "^3.9.2", + "@docusaurus/faster": "^3.9.2", + "@docusaurus/preset-classic": "^3.9.2", "@mdx-js/react": "^3.0.0", "clsx": "^1.2.1", - "docusaurus": "^1.14.7", - "docusaurus-json-schema-plugin": "^1.12.0", "js-yaml": "^4.1.0", "maplibre-gl": "^5.6.1", "pmtiles": "^4.3.0", @@ -23,53 +22,63 @@ "react-dom": "^18.2.0" }, "devDependencies": { - "@docusaurus/module-type-aliases": "^3.8.1", - "@docusaurus/types": "^3.8.1", + "@docusaurus/module-type-aliases": "^3.9.2", + "@docusaurus/types": "^3.9.2", + "@eslint/js": "^9.19.0", + "eslint": "^9.19.0", + "eslint-config-prettier": "^10.0.1", + "eslint-plugin-react": "^7.37.4", + "globals": "^15.14.0", + "markdownlint-cli": "^0.43.0", + "prettier": "^3.4.2", + "typescript": "^5.7.3", "yaml-loader": "^0.8.0" }, "engines": { "node": ">=18.0" } }, - "node_modules/@algolia/autocomplete-core": { - "version": "1.17.9", - "resolved": "https://registry.npmjs.org/@algolia/autocomplete-core/-/autocomplete-core-1.17.9.tgz", - "integrity": "sha512-O7BxrpLDPJWWHv/DLA9DRFWs+iY1uOJZkqUwjS5HSZAGcl0hIVCQ97LTLewiZmZ402JYUrun+8NqFP+hCknlbQ==", + "node_modules/@algolia/abtesting": { + "version": "1.14.0", + "resolved": "https://registry.npmjs.org/@algolia/abtesting/-/abtesting-1.14.0.tgz", + "integrity": "sha512-cZfj+1Z1dgrk3YPtNQNt0H9Rr67P8b4M79JjUKGS0d7/EbFbGxGgSu6zby5f22KXo3LT0LZa4O2c6VVbupJuDg==", "license": "MIT", "dependencies": { - "@algolia/autocomplete-plugin-algolia-insights": "1.17.9", - "@algolia/autocomplete-shared": "1.17.9" + "@algolia/client-common": "5.48.0", + "@algolia/requester-browser-xhr": "5.48.0", + "@algolia/requester-fetch": "5.48.0", + "@algolia/requester-node-http": "5.48.0" + }, + "engines": { + "node": ">= 14.0.0" } }, - "node_modules/@algolia/autocomplete-plugin-algolia-insights": { - "version": "1.17.9", - "resolved": "https://registry.npmjs.org/@algolia/autocomplete-plugin-algolia-insights/-/autocomplete-plugin-algolia-insights-1.17.9.tgz", - "integrity": "sha512-u1fEHkCbWF92DBeB/KHeMacsjsoI0wFhjZtlCq2ddZbAehshbZST6Hs0Avkc0s+4UyBGbMDnSuXHLuvRWK5iDQ==", + "node_modules/@algolia/autocomplete-core": { + "version": "1.19.2", + "resolved": "https://registry.npmjs.org/@algolia/autocomplete-core/-/autocomplete-core-1.19.2.tgz", + "integrity": "sha512-mKv7RyuAzXvwmq+0XRK8HqZXt9iZ5Kkm2huLjgn5JoCPtDy+oh9yxUMfDDaVCw0oyzZ1isdJBc7l9nuCyyR7Nw==", "license": "MIT", "dependencies": { - "@algolia/autocomplete-shared": "1.17.9" - }, - "peerDependencies": { - "search-insights": ">= 1 < 3" + "@algolia/autocomplete-plugin-algolia-insights": "1.19.2", + "@algolia/autocomplete-shared": "1.19.2" } }, - "node_modules/@algolia/autocomplete-preset-algolia": { - "version": "1.17.9", - "resolved": "https://registry.npmjs.org/@algolia/autocomplete-preset-algolia/-/autocomplete-preset-algolia-1.17.9.tgz", - "integrity": "sha512-Na1OuceSJeg8j7ZWn5ssMu/Ax3amtOwk76u4h5J4eK2Nx2KB5qt0Z4cOapCsxot9VcEN11ADV5aUSlQF4RhGjQ==", + "node_modules/@algolia/autocomplete-plugin-algolia-insights": { + "version": "1.19.2", + "resolved": "https://registry.npmjs.org/@algolia/autocomplete-plugin-algolia-insights/-/autocomplete-plugin-algolia-insights-1.19.2.tgz", + "integrity": "sha512-TjxbcC/r4vwmnZaPwrHtkXNeqvlpdyR+oR9Wi2XyfORkiGkLTVhX2j+O9SaCCINbKoDfc+c2PB8NjfOnz7+oKg==", "license": "MIT", "dependencies": { - "@algolia/autocomplete-shared": "1.17.9" + "@algolia/autocomplete-shared": "1.19.2" }, "peerDependencies": { - "@algolia/client-search": ">= 4.9.1 < 6", - "algoliasearch": ">= 4.9.1 < 6" + "search-insights": ">= 1 < 3" } }, "node_modules/@algolia/autocomplete-shared": { - "version": "1.17.9", - "resolved": "https://registry.npmjs.org/@algolia/autocomplete-shared/-/autocomplete-shared-1.17.9.tgz", - "integrity": "sha512-iDf05JDQ7I0b7JEA/9IektxN/80a2MZ1ToohfmNS3rfeuQnIKI3IJlIafD0xu4StbtQTghx9T3Maa97ytkXenQ==", + "version": "1.19.2", + "resolved": "https://registry.npmjs.org/@algolia/autocomplete-shared/-/autocomplete-shared-1.19.2.tgz", + "integrity": "sha512-jEazxZTVD2nLrC+wYlVHQgpBoBB5KPStrJxLzsIFl6Kqd1AlG9sIAGl39V5tECLpIQzB3Qa2T6ZPJ1ChkwMK/w==", "license": "MIT", "peerDependencies": { "@algolia/client-search": ">= 4.9.1 < 6", @@ -77,99 +86,99 @@ } }, "node_modules/@algolia/client-abtesting": { - "version": "5.34.0", - "resolved": "https://registry.npmjs.org/@algolia/client-abtesting/-/client-abtesting-5.34.0.tgz", - "integrity": "sha512-d6ardhDtQsnMpyr/rPrS3YuIE9NYpY4rftkC7Ap9tyuhZ/+V3E/LH+9uEewPguKzVqduApdwJzYq2k+vAXVEbQ==", + "version": "5.48.0", + "resolved": "https://registry.npmjs.org/@algolia/client-abtesting/-/client-abtesting-5.48.0.tgz", + "integrity": "sha512-n17WSJ7vazmM6yDkWBAjY12J8ERkW9toOqNgQ1GEZu/Kc4dJDJod1iy+QP5T/UlR3WICgZDi/7a/VX5TY5LAPQ==", "license": "MIT", "dependencies": { - "@algolia/client-common": "5.34.0", - "@algolia/requester-browser-xhr": "5.34.0", - "@algolia/requester-fetch": "5.34.0", - "@algolia/requester-node-http": "5.34.0" + "@algolia/client-common": "5.48.0", + "@algolia/requester-browser-xhr": "5.48.0", + "@algolia/requester-fetch": "5.48.0", + "@algolia/requester-node-http": "5.48.0" }, "engines": { "node": ">= 14.0.0" } }, "node_modules/@algolia/client-analytics": { - "version": "5.34.0", - "resolved": "https://registry.npmjs.org/@algolia/client-analytics/-/client-analytics-5.34.0.tgz", - "integrity": "sha512-WXIByjHNA106JO1Dj6b4viSX/yMN3oIB4qXr2MmyEmNq0MgfuPfPw8ayLRIZPa9Dp27hvM3G8MWJ4RG978HYFw==", + "version": "5.48.0", + "resolved": "https://registry.npmjs.org/@algolia/client-analytics/-/client-analytics-5.48.0.tgz", + "integrity": "sha512-v5bMZMEqW9U2l40/tTAaRyn4AKrYLio7KcRuHmLaJtxuJAhvZiE7Y62XIsF070juz4MN3eyvfQmI+y5+OVbZuA==", "license": "MIT", "dependencies": { - "@algolia/client-common": "5.34.0", - "@algolia/requester-browser-xhr": "5.34.0", - "@algolia/requester-fetch": "5.34.0", - "@algolia/requester-node-http": "5.34.0" + "@algolia/client-common": "5.48.0", + "@algolia/requester-browser-xhr": "5.48.0", + "@algolia/requester-fetch": "5.48.0", + "@algolia/requester-node-http": "5.48.0" }, "engines": { "node": ">= 14.0.0" } }, "node_modules/@algolia/client-common": { - "version": "5.34.0", - "resolved": "https://registry.npmjs.org/@algolia/client-common/-/client-common-5.34.0.tgz", - "integrity": "sha512-JeN1XJLZIkkv6yK0KT93CIXXk+cDPUGNg5xeH4fN9ZykYFDWYRyqgaDo+qvg4RXC3WWkdQ+hogQuuCk4Y3Eotw==", + "version": "5.48.0", + "resolved": "https://registry.npmjs.org/@algolia/client-common/-/client-common-5.48.0.tgz", + "integrity": "sha512-7H3DgRyi7UByScc0wz7EMrhgNl7fKPDjKX9OcWixLwCj7yrRXDSIzwunykuYUUO7V7HD4s319e15FlJ9CQIIFQ==", "license": "MIT", "engines": { "node": ">= 14.0.0" } }, "node_modules/@algolia/client-insights": { - "version": "5.34.0", - "resolved": "https://registry.npmjs.org/@algolia/client-insights/-/client-insights-5.34.0.tgz", - "integrity": "sha512-gdFlcQa+TWXJUsihHDlreFWniKPFIQ15i5oynCY4m9K3DCex5g5cVj9VG4Hsquxf2t6Y0yv8w6MvVTGDO8oRLw==", + "version": "5.48.0", + "resolved": "https://registry.npmjs.org/@algolia/client-insights/-/client-insights-5.48.0.tgz", + "integrity": "sha512-tXmkB6qrIGAXrtRYHQNpfW0ekru/qymV02bjT0w5QGaGw0W91yT+53WB6dTtRRsIrgS30Al6efBvyaEosjZ5uw==", "license": "MIT", "dependencies": { - "@algolia/client-common": "5.34.0", - "@algolia/requester-browser-xhr": "5.34.0", - "@algolia/requester-fetch": "5.34.0", - "@algolia/requester-node-http": "5.34.0" + "@algolia/client-common": "5.48.0", + "@algolia/requester-browser-xhr": "5.48.0", + "@algolia/requester-fetch": "5.48.0", + "@algolia/requester-node-http": "5.48.0" }, "engines": { "node": ">= 14.0.0" } }, "node_modules/@algolia/client-personalization": { - "version": "5.34.0", - "resolved": "https://registry.npmjs.org/@algolia/client-personalization/-/client-personalization-5.34.0.tgz", - "integrity": "sha512-g91NHhIZDkh1IUeNtsUd8V/ZxuBc2ByOfDqhCkoQY3Z/mZszhpn3Czn6AR5pE81fx793vMaiOZvQVB5QttArkQ==", + "version": "5.48.0", + "resolved": "https://registry.npmjs.org/@algolia/client-personalization/-/client-personalization-5.48.0.tgz", + "integrity": "sha512-4tXEsrdtcBZbDF73u14Kb3otN+xUdTVGop1tBjict+Rc/FhsJQVIwJIcTrOJqmvhtBfc56Bu65FiVOnpAZCxcw==", "license": "MIT", "dependencies": { - "@algolia/client-common": "5.34.0", - "@algolia/requester-browser-xhr": "5.34.0", - "@algolia/requester-fetch": "5.34.0", - "@algolia/requester-node-http": "5.34.0" + "@algolia/client-common": "5.48.0", + "@algolia/requester-browser-xhr": "5.48.0", + "@algolia/requester-fetch": "5.48.0", + "@algolia/requester-node-http": "5.48.0" }, "engines": { "node": ">= 14.0.0" } }, "node_modules/@algolia/client-query-suggestions": { - "version": "5.34.0", - "resolved": "https://registry.npmjs.org/@algolia/client-query-suggestions/-/client-query-suggestions-5.34.0.tgz", - "integrity": "sha512-cvRApDfFrlJ3Vcn37U4Nd/7S6T8cx7FW3mVLJPqkkzixv8DQ/yV+x4VLirxOtGDdq3KohcIbIGWbg1QuyOZRvQ==", + "version": "5.48.0", + "resolved": "https://registry.npmjs.org/@algolia/client-query-suggestions/-/client-query-suggestions-5.48.0.tgz", + "integrity": "sha512-unzSUwWFpsDrO8935RhMAlyK0Ttua/5XveVIwzfjs5w+GVBsHgIkbOe8VbBJccMU/z1LCwvu1AY3kffuSLAR5Q==", "license": "MIT", "dependencies": { - "@algolia/client-common": "5.34.0", - "@algolia/requester-browser-xhr": "5.34.0", - "@algolia/requester-fetch": "5.34.0", - "@algolia/requester-node-http": "5.34.0" + "@algolia/client-common": "5.48.0", + "@algolia/requester-browser-xhr": "5.48.0", + "@algolia/requester-fetch": "5.48.0", + "@algolia/requester-node-http": "5.48.0" }, "engines": { "node": ">= 14.0.0" } }, "node_modules/@algolia/client-search": { - "version": "5.34.0", - "resolved": "https://registry.npmjs.org/@algolia/client-search/-/client-search-5.34.0.tgz", - "integrity": "sha512-m9tK4IqJmn+flEPRtuxuHgiHmrKV0su5fuVwVpq8/es4DMjWMgX1a7Lg1PktvO8AbKaTp9kTtBAPnwXpuCwmEg==", + "version": "5.48.0", + "resolved": "https://registry.npmjs.org/@algolia/client-search/-/client-search-5.48.0.tgz", + "integrity": "sha512-RB9bKgYTVUiOcEb5bOcZ169jiiVW811dCsJoLT19DcbbFmU4QaK0ghSTssij35QBQ3SCOitXOUrHcGgNVwS7sQ==", "license": "MIT", "dependencies": { - "@algolia/client-common": "5.34.0", - "@algolia/requester-browser-xhr": "5.34.0", - "@algolia/requester-fetch": "5.34.0", - "@algolia/requester-node-http": "5.34.0" + "@algolia/client-common": "5.48.0", + "@algolia/requester-browser-xhr": "5.48.0", + "@algolia/requester-fetch": "5.48.0", + "@algolia/requester-node-http": "5.48.0" }, "engines": { "node": ">= 14.0.0" @@ -182,106 +191,93 @@ "license": "MIT" }, "node_modules/@algolia/ingestion": { - "version": "1.34.0", - "resolved": "https://registry.npmjs.org/@algolia/ingestion/-/ingestion-1.34.0.tgz", - "integrity": "sha512-2rxy4XoeRtIpzxEh5u5UgDC5HY4XbNdjzNgFx1eDrfFkSHpEVjirtLhISMy2N5uSFqYu1uUby5/NC1Soq8J7iw==", + "version": "1.48.0", + "resolved": "https://registry.npmjs.org/@algolia/ingestion/-/ingestion-1.48.0.tgz", + "integrity": "sha512-rhoSoPu+TDzDpvpk3cY/pYgbeWXr23DxnAIH/AkN0dUC+GCnVIeNSQkLaJ+CL4NZ51cjLIjksrzb4KC5Xu+ktw==", "license": "MIT", "dependencies": { - "@algolia/client-common": "5.34.0", - "@algolia/requester-browser-xhr": "5.34.0", - "@algolia/requester-fetch": "5.34.0", - "@algolia/requester-node-http": "5.34.0" + "@algolia/client-common": "5.48.0", + "@algolia/requester-browser-xhr": "5.48.0", + "@algolia/requester-fetch": "5.48.0", + "@algolia/requester-node-http": "5.48.0" }, "engines": { "node": ">= 14.0.0" } }, "node_modules/@algolia/monitoring": { - "version": "1.34.0", - "resolved": "https://registry.npmjs.org/@algolia/monitoring/-/monitoring-1.34.0.tgz", - "integrity": "sha512-OJiDhlJX8ZdWAndc50Z6aUEW/YmnhFK2ul3rahMw5/c9Damh7+oY9SufoK2LimJejy+65Qka06YPG29v2G/vww==", + "version": "1.48.0", + "resolved": "https://registry.npmjs.org/@algolia/monitoring/-/monitoring-1.48.0.tgz", + "integrity": "sha512-aSe6jKvWt+8VdjOaq2ERtsXp9+qMXNJ3mTyTc1VMhNfgPl7ArOhRMRSQ8QBnY8ZL4yV5Xpezb7lAg8pdGrrulg==", "license": "MIT", "dependencies": { - "@algolia/client-common": "5.34.0", - "@algolia/requester-browser-xhr": "5.34.0", - "@algolia/requester-fetch": "5.34.0", - "@algolia/requester-node-http": "5.34.0" + "@algolia/client-common": "5.48.0", + "@algolia/requester-browser-xhr": "5.48.0", + "@algolia/requester-fetch": "5.48.0", + "@algolia/requester-node-http": "5.48.0" }, "engines": { "node": ">= 14.0.0" } }, "node_modules/@algolia/recommend": { - "version": "5.34.0", - "resolved": "https://registry.npmjs.org/@algolia/recommend/-/recommend-5.34.0.tgz", - "integrity": "sha512-fzNQZAdVxu/Gnbavy8KW5gurApwdYcPW6+pjO7Pw8V5drCR3eSqnOxSvp79rhscDX8ezwqMqqK4F3Hsq+KpRzg==", + "version": "5.48.0", + "resolved": "https://registry.npmjs.org/@algolia/recommend/-/recommend-5.48.0.tgz", + "integrity": "sha512-p9tfI1bimAaZrdiVExL/dDyGUZ8gyiSHsktP1ZWGzt5hXpM3nhv4tSjyHtXjEKtA0UvsaHKwSfFE8aAAm1eIQA==", "license": "MIT", "dependencies": { - "@algolia/client-common": "5.34.0", - "@algolia/requester-browser-xhr": "5.34.0", - "@algolia/requester-fetch": "5.34.0", - "@algolia/requester-node-http": "5.34.0" + "@algolia/client-common": "5.48.0", + "@algolia/requester-browser-xhr": "5.48.0", + "@algolia/requester-fetch": "5.48.0", + "@algolia/requester-node-http": "5.48.0" }, "engines": { "node": ">= 14.0.0" } }, "node_modules/@algolia/requester-browser-xhr": { - "version": "5.34.0", - "resolved": "https://registry.npmjs.org/@algolia/requester-browser-xhr/-/requester-browser-xhr-5.34.0.tgz", - "integrity": "sha512-gEI0xjzA/xvMpEdYmgQnf6AQKllhgKRtnEWmwDrnct+YPIruEHlx1dd7nRJTy/33MiYcCxkB4khXpNrHuqgp3Q==", + "version": "5.48.0", + "resolved": "https://registry.npmjs.org/@algolia/requester-browser-xhr/-/requester-browser-xhr-5.48.0.tgz", + "integrity": "sha512-XshyfpsQB7BLnHseMinp3fVHOGlTv6uEHOzNK/3XrEF9mjxoZAcdVfY1OCXObfwRWX5qXZOq8FnrndFd44iVsQ==", "license": "MIT", "dependencies": { - "@algolia/client-common": "5.34.0" + "@algolia/client-common": "5.48.0" }, "engines": { "node": ">= 14.0.0" } }, "node_modules/@algolia/requester-fetch": { - "version": "5.34.0", - "resolved": "https://registry.npmjs.org/@algolia/requester-fetch/-/requester-fetch-5.34.0.tgz", - "integrity": "sha512-5SwGOttpbACT4jXzfSJ3mnTcF46SVNSnZ1JjxC3qBa3qKi4U0CJGzuVVy3L798u8dG5H0SZ2MAB5v7180Gnqew==", + "version": "5.48.0", + "resolved": "https://registry.npmjs.org/@algolia/requester-fetch/-/requester-fetch-5.48.0.tgz", + "integrity": "sha512-Q4XNSVQU89bKNAPuvzSYqTH9AcbOOiIo6AeYMQTxgSJ2+uvT78CLPMG89RIIloYuAtSfE07s40OLV50++l1Bbw==", "license": "MIT", "dependencies": { - "@algolia/client-common": "5.34.0" + "@algolia/client-common": "5.48.0" }, "engines": { "node": ">= 14.0.0" } }, "node_modules/@algolia/requester-node-http": { - "version": "5.34.0", - "resolved": "https://registry.npmjs.org/@algolia/requester-node-http/-/requester-node-http-5.34.0.tgz", - "integrity": "sha512-409XlyIyEXrxyGjWxd0q5RASizHSRVUU0AXPCEdqnbcGEzbCgL1n7oYI8YxzE/RqZLha+PNwWCcTVn7EE5tyyQ==", + "version": "5.48.0", + "resolved": "https://registry.npmjs.org/@algolia/requester-node-http/-/requester-node-http-5.48.0.tgz", + "integrity": "sha512-ZgxV2+5qt3NLeUYBTsi6PLyHcENQWC0iFppFZekHSEDA2wcLdTUjnaJzimTEULHIvJuLRCkUs4JABdhuJktEag==", "license": "MIT", "dependencies": { - "@algolia/client-common": "5.34.0" + "@algolia/client-common": "5.48.0" }, "engines": { "node": ">= 14.0.0" } }, - "node_modules/@ampproject/remapping": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.3.0.tgz", - "integrity": "sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==", - "license": "Apache-2.0", - "dependencies": { - "@jridgewell/gen-mapping": "^0.3.5", - "@jridgewell/trace-mapping": "^0.3.24" - }, - "engines": { - "node": ">=6.0.0" - } - }, "node_modules/@babel/code-frame": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.27.1.tgz", - "integrity": "sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==", + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.29.0.tgz", + "integrity": "sha512-9NhCeYjq9+3uxgdtp20LSiJXJvN0FeCtNGpJxuMFZ1Kv3cWUNb6DOhJwUvcVCzKGR66cw4njwM6hrJLqgOwbcw==", "license": "MIT", "dependencies": { - "@babel/helper-validator-identifier": "^7.27.1", + "@babel/helper-validator-identifier": "^7.28.5", "js-tokens": "^4.0.0", "picocolors": "^1.1.1" }, @@ -290,30 +286,30 @@ } }, "node_modules/@babel/compat-data": { - "version": "7.28.0", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.28.0.tgz", - "integrity": "sha512-60X7qkglvrap8mn1lh2ebxXdZYtUcpd7gsmy9kLaBJ4i/WdY8PqTSdxyA8qraikqKQK5C1KRBKXqznrVapyNaw==", + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.29.0.tgz", + "integrity": "sha512-T1NCJqT/j9+cn8fvkt7jtwbLBfLC/1y1c7NtCeXFRgzGTsafi68MRv8yzkYSapBnFA6L3U2VSc02ciDzoAJhJg==", "license": "MIT", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.28.0", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.28.0.tgz", - "integrity": "sha512-UlLAnTPrFdNGoFtbSXwcGFQBtQZJCNjaN6hQNP3UPvuNXT1i82N26KL3dZeIpNalWywr9IuQuncaAfUaS1g6sQ==", - "license": "MIT", - "dependencies": { - "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.27.1", - "@babel/generator": "^7.28.0", - "@babel/helper-compilation-targets": "^7.27.2", - "@babel/helper-module-transforms": "^7.27.3", - "@babel/helpers": "^7.27.6", - "@babel/parser": "^7.28.0", - "@babel/template": "^7.27.2", - "@babel/traverse": "^7.28.0", - "@babel/types": "^7.28.0", + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.29.0.tgz", + "integrity": "sha512-CGOfOJqWjg2qW/Mb6zNsDm+u5vFQ8DxXfbM09z69p5Z6+mE1ikP2jUXw+j42Pf1XTYED2Rni5f95npYeuwMDQA==", + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.29.0", + "@babel/generator": "^7.29.0", + "@babel/helper-compilation-targets": "^7.28.6", + "@babel/helper-module-transforms": "^7.28.6", + "@babel/helpers": "^7.28.6", + "@babel/parser": "^7.29.0", + "@babel/template": "^7.28.6", + "@babel/traverse": "^7.29.0", + "@babel/types": "^7.29.0", + "@jridgewell/remapping": "^2.3.5", "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -338,13 +334,13 @@ } }, "node_modules/@babel/generator": { - "version": "7.28.0", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.28.0.tgz", - "integrity": "sha512-lJjzvrbEeWrhB4P3QBsH7tey117PjLZnDbLiQEKjQ/fNJTjuq4HSqgFA+UNSwZT8D7dxxbnuSBMsa1lrWzKlQg==", + "version": "7.29.1", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.29.1.tgz", + "integrity": "sha512-qsaF+9Qcm2Qv8SRIMMscAvG4O3lJ0F1GuMo5HR/Bp02LopNgnZBC/EkbevHFeGs4ls/oPz9v+Bsmzbkbe+0dUw==", "license": "MIT", "dependencies": { - "@babel/parser": "^7.28.0", - "@babel/types": "^7.28.0", + "@babel/parser": "^7.29.0", + "@babel/types": "^7.29.0", "@jridgewell/gen-mapping": "^0.3.12", "@jridgewell/trace-mapping": "^0.3.28", "jsesc": "^3.0.2" @@ -366,12 +362,12 @@ } }, "node_modules/@babel/helper-compilation-targets": { - "version": "7.27.2", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.27.2.tgz", - "integrity": "sha512-2+1thGUUWWjLTYTHZWK1n8Yga0ijBz1XAhUXcKy81rd5g6yh7hGqMp45v7cadSbEHc9G3OTv45SyneRN3ps4DQ==", + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.28.6.tgz", + "integrity": "sha512-JYtls3hqi15fcx5GaSNL7SCTJ2MNmjrkHXg4FSpOA/grxK8KwyZ5bubHsCq8FXCkua6xhuaaBit+3b7+VZRfcA==", "license": "MIT", "dependencies": { - "@babel/compat-data": "^7.27.2", + "@babel/compat-data": "^7.28.6", "@babel/helper-validator-option": "^7.27.1", "browserslist": "^4.24.0", "lru-cache": "^5.1.1", @@ -391,17 +387,17 @@ } }, "node_modules/@babel/helper-create-class-features-plugin": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.27.1.tgz", - "integrity": "sha512-QwGAmuvM17btKU5VqXfb+Giw4JcN0hjuufz3DYnpeVDvZLAObloM77bhMXiqry3Iio+Ai4phVRDwl6WU10+r5A==", + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.28.6.tgz", + "integrity": "sha512-dTOdvsjnG3xNT9Y0AUg1wAl38y+4Rl4sf9caSQZOXdNqVn+H+HbbJ4IyyHaIqNR6SW9oJpA/RuRjsjCw2IdIow==", "license": "MIT", "dependencies": { - "@babel/helper-annotate-as-pure": "^7.27.1", - "@babel/helper-member-expression-to-functions": "^7.27.1", + "@babel/helper-annotate-as-pure": "^7.27.3", + "@babel/helper-member-expression-to-functions": "^7.28.5", "@babel/helper-optimise-call-expression": "^7.27.1", - "@babel/helper-replace-supers": "^7.27.1", + "@babel/helper-replace-supers": "^7.28.6", "@babel/helper-skip-transparent-expression-wrappers": "^7.27.1", - "@babel/traverse": "^7.27.1", + "@babel/traverse": "^7.28.6", "semver": "^6.3.1" }, "engines": { @@ -421,13 +417,13 @@ } }, "node_modules/@babel/helper-create-regexp-features-plugin": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.27.1.tgz", - "integrity": "sha512-uVDC72XVf8UbrH5qQTc18Agb8emwjTiZrQE11Nv3CuBEZmVvTwwE9CBUEvHku06gQCAyYf8Nv6ja1IN+6LMbxQ==", + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.28.5.tgz", + "integrity": "sha512-N1EhvLtHzOvj7QQOUCCS3NrPJP8c5W6ZXCHDn7Yialuy1iu4r5EmIYkXlKNqT99Ciw+W0mDqWoR6HWMZlFP3hw==", "license": "MIT", "dependencies": { - "@babel/helper-annotate-as-pure": "^7.27.1", - "regexpu-core": "^6.2.0", + "@babel/helper-annotate-as-pure": "^7.27.3", + "regexpu-core": "^6.3.1", "semver": "^6.3.1" }, "engines": { @@ -447,16 +443,16 @@ } }, "node_modules/@babel/helper-define-polyfill-provider": { - "version": "0.6.5", - "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.6.5.tgz", - "integrity": "sha512-uJnGFcPsWQK8fvjgGP5LZUZZsYGIoPeRjSF5PGwrelYgq7Q15/Ft9NGFp1zglwgIv//W0uG4BevRuSJRyylZPg==", + "version": "0.6.6", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.6.6.tgz", + "integrity": "sha512-mOAsxeeKkUKayvZR3HeTYD/fICpCPLJrU5ZjelT/PA6WHtNDBOE436YiaEUvHN454bRM3CebhDsIpieCc4texA==", "license": "MIT", "dependencies": { - "@babel/helper-compilation-targets": "^7.27.2", - "@babel/helper-plugin-utils": "^7.27.1", - "debug": "^4.4.1", + "@babel/helper-compilation-targets": "^7.28.6", + "@babel/helper-plugin-utils": "^7.28.6", + "debug": "^4.4.3", "lodash.debounce": "^4.0.8", - "resolve": "^1.22.10" + "resolve": "^1.22.11" }, "peerDependencies": { "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" @@ -472,40 +468,40 @@ } }, "node_modules/@babel/helper-member-expression-to-functions": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.27.1.tgz", - "integrity": "sha512-E5chM8eWjTp/aNoVpcbfM7mLxu9XGLWYise2eBKGQomAk/Mb4XoxyqXTZbuTohbsl8EKqdlMhnDI2CCLfcs9wA==", + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.28.5.tgz", + "integrity": "sha512-cwM7SBRZcPCLgl8a7cY0soT1SptSzAlMH39vwiRpOQkJlh53r5hdHwLSCZpQdVLT39sZt+CRpNwYG4Y2v77atg==", "license": "MIT", "dependencies": { - "@babel/traverse": "^7.27.1", - "@babel/types": "^7.27.1" + "@babel/traverse": "^7.28.5", + "@babel/types": "^7.28.5" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-module-imports": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.27.1.tgz", - "integrity": "sha512-0gSFWUPNXNopqtIPQvlD5WgXYI5GY2kP2cCvoT8kczjbfcfuIljTbcWrulD1CIPIX2gt1wghbDy08yE1p+/r3w==", + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.28.6.tgz", + "integrity": "sha512-l5XkZK7r7wa9LucGw9LwZyyCUscb4x37JWTPz7swwFE/0FMQAGpiWUZn8u9DzkSBWEcK25jmvubfpw2dnAMdbw==", "license": "MIT", "dependencies": { - "@babel/traverse": "^7.27.1", - "@babel/types": "^7.27.1" + "@babel/traverse": "^7.28.6", + "@babel/types": "^7.28.6" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-module-transforms": { - "version": "7.27.3", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.27.3.tgz", - "integrity": "sha512-dSOvYwvyLsWBeIRyOeHXp5vPj5l1I011r52FM1+r1jCERv+aFXYk4whgQccYEGYxK2H3ZAIA8nuPkQ0HaUo3qg==", + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.28.6.tgz", + "integrity": "sha512-67oXFAYr2cDLDVGLXTEABjdBJZ6drElUSI7WKp70NrpyISso3plG9SAGEF6y7zbha/wOzUByWWTJvEDVNIUGcA==", "license": "MIT", "dependencies": { - "@babel/helper-module-imports": "^7.27.1", - "@babel/helper-validator-identifier": "^7.27.1", - "@babel/traverse": "^7.27.3" + "@babel/helper-module-imports": "^7.28.6", + "@babel/helper-validator-identifier": "^7.28.5", + "@babel/traverse": "^7.28.6" }, "engines": { "node": ">=6.9.0" @@ -527,9 +523,9 @@ } }, "node_modules/@babel/helper-plugin-utils": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.27.1.tgz", - "integrity": "sha512-1gn1Up5YXka3YYAHGKpbideQ5Yjf1tDa9qYcgysz+cNCXukyLl6DjPXhD3VRwSb8c0J9tA4b2+rHEZtc6R0tlw==", + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.28.6.tgz", + "integrity": "sha512-S9gzZ/bz83GRysI7gAD4wPT/AI3uCnY+9xn+Mx/KPs2JwHJIz1W8PZkg2cqyt3RNOBM8ejcXhV6y8Og7ly/Dug==", "license": "MIT", "engines": { "node": ">=6.9.0" @@ -553,14 +549,14 @@ } }, "node_modules/@babel/helper-replace-supers": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.27.1.tgz", - "integrity": "sha512-7EHz6qDZc8RYS5ElPoShMheWvEgERonFCs7IAonWLLUTXW59DP14bCZt89/GKyreYn8g3S83m21FelHKbeDCKA==", + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.28.6.tgz", + "integrity": "sha512-mq8e+laIk94/yFec3DxSjCRD2Z0TAjhVbEJY3UQrlwVo15Lmt7C2wAUbK4bjnTs4APkwsYLTahXRraQXhb1WCg==", "license": "MIT", "dependencies": { - "@babel/helper-member-expression-to-functions": "^7.27.1", + "@babel/helper-member-expression-to-functions": "^7.28.5", "@babel/helper-optimise-call-expression": "^7.27.1", - "@babel/traverse": "^7.27.1" + "@babel/traverse": "^7.28.6" }, "engines": { "node": ">=6.9.0" @@ -592,9 +588,9 @@ } }, "node_modules/@babel/helper-validator-identifier": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.27.1.tgz", - "integrity": "sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow==", + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.28.5.tgz", + "integrity": "sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q==", "license": "MIT", "engines": { "node": ">=6.9.0" @@ -610,125 +606,39 @@ } }, "node_modules/@babel/helper-wrap-function": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.27.1.tgz", - "integrity": "sha512-NFJK2sHUvrjo8wAU/nQTWU890/zB2jj0qBcCbZbbf+005cAsv6tMjXz31fBign6M5ov1o0Bllu+9nbqkfsjjJQ==", + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.28.6.tgz", + "integrity": "sha512-z+PwLziMNBeSQJonizz2AGnndLsP2DeGHIxDAn+wdHOGuo4Fo1x1HBPPXeE9TAOPHNNWQKCSlA2VZyYyyibDnQ==", "license": "MIT", "dependencies": { - "@babel/template": "^7.27.1", - "@babel/traverse": "^7.27.1", - "@babel/types": "^7.27.1" + "@babel/template": "^7.28.6", + "@babel/traverse": "^7.28.6", + "@babel/types": "^7.28.6" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helpers": { - "version": "7.27.6", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.27.6.tgz", - "integrity": "sha512-muE8Tt8M22638HU31A3CgfSUciwz1fhATfoVai05aPXGor//CdWDCbnlY1yvBPo07njuVOCNGCSp/GTt12lIug==", - "license": "MIT", - "dependencies": { - "@babel/template": "^7.27.2", - "@babel/types": "^7.27.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/highlight": { - "version": "7.25.9", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.25.9.tgz", - "integrity": "sha512-llL88JShoCsth8fF8R4SJnIn+WLvR6ccFxu1H3FlMhDontdcmZWf2HgIZ7AIqV3Xcck1idlohrN4EUBQz6klbw==", + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.28.6.tgz", + "integrity": "sha512-xOBvwq86HHdB7WUDTfKfT/Vuxh7gElQ+Sfti2Cy6yIWNW05P8iUslOVcZ4/sKbE+/jQaukQAdz/gf3724kYdqw==", "license": "MIT", "dependencies": { - "@babel/helper-validator-identifier": "^7.25.9", - "chalk": "^2.4.2", - "js-tokens": "^4.0.0", - "picocolors": "^1.0.0" + "@babel/template": "^7.28.6", + "@babel/types": "^7.28.6" }, "engines": { "node": ">=6.9.0" } }, - "node_modules/@babel/highlight/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "license": "MIT", - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/highlight/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "license": "MIT", - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/highlight/node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "license": "MIT", - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/@babel/highlight/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", - "license": "MIT" - }, - "node_modules/@babel/highlight/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "license": "MIT", - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/@babel/highlight/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/highlight/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "license": "MIT", - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, "node_modules/@babel/parser": { - "version": "7.28.0", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.28.0.tgz", - "integrity": "sha512-jVZGvOxOuNSsuQuLRTh13nU0AogFlw32w/MT+LV6D3sP5WdbW61E77RnkbaO2dUvmPAYrBDJXGn5gGS6tH4j8g==", + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.29.0.tgz", + "integrity": "sha512-IyDgFV5GeDUVX4YdF/3CPULtVGSXXMLh1xVIgdCgxApktqnQV0r7/8Nqthg+8YLGaAtdyIlo2qIdZrbCv4+7ww==", "license": "MIT", "dependencies": { - "@babel/types": "^7.28.0" + "@babel/types": "^7.29.0" }, "bin": { "parser": "bin/babel-parser.js" @@ -738,13 +648,13 @@ } }, "node_modules/@babel/plugin-bugfix-firefox-class-in-computed-class-key": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-firefox-class-in-computed-class-key/-/plugin-bugfix-firefox-class-in-computed-class-key-7.27.1.tgz", - "integrity": "sha512-QPG3C9cCVRQLxAVwmefEmwdTanECuUBMQZ/ym5kiw3XKCGA7qkuQLcjWWHcrD/GKbn/WmJwaezfuuAOcyKlRPA==", + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-firefox-class-in-computed-class-key/-/plugin-bugfix-firefox-class-in-computed-class-key-7.28.5.tgz", + "integrity": "sha512-87GDMS3tsmMSi/3bWOte1UblL+YUTFMV8SZPZ2eSEL17s74Cw/l63rR6NmGVKMYW2GYi85nE+/d6Hw5N0bEk2Q==", "license": "MIT", "dependencies": { "@babel/helper-plugin-utils": "^7.27.1", - "@babel/traverse": "^7.27.1" + "@babel/traverse": "^7.28.5" }, "engines": { "node": ">=6.9.0" @@ -801,13 +711,13 @@ } }, "node_modules/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.27.1.tgz", - "integrity": "sha512-6BpaYGDavZqkI6yT+KSPdpZFfpnd68UKXbcjI9pJ13pvHhPrCKWOOLp+ysvMeA+DxnhuPpgIaRpxRxo5A9t5jw==", + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.28.6.tgz", + "integrity": "sha512-a0aBScVTlNaiUe35UtfxAN7A/tehvvG4/ByO6+46VPKTRSlfnAFsgKy0FUh+qAkQrDTmhDkT+IBOKlOoMUxQ0g==", "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.27.1", - "@babel/traverse": "^7.27.1" + "@babel/helper-plugin-utils": "^7.28.6", + "@babel/traverse": "^7.28.6" }, "engines": { "node": ">=6.9.0" @@ -816,43 +726,6 @@ "@babel/core": "^7.0.0" } }, - "node_modules/@babel/plugin-proposal-class-properties": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz", - "integrity": "sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==", - "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-class-properties instead.", - "license": "MIT", - "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-object-rest-spread": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.20.7.tgz", - "integrity": "sha512-d2S98yCiLxDVmBmE8UjGcfPvNEUbA1U5q5WxaWFUGRzJSVAZqm5W6MbPct0jxnegUZ0niLeNX+IOzEs7wYg9Dg==", - "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-object-rest-spread instead.", - "license": "MIT", - "dependencies": { - "@babel/compat-data": "^7.20.5", - "@babel/helper-compilation-targets": "^7.20.7", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-transform-parameters": "^7.20.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, "node_modules/@babel/plugin-proposal-private-property-in-object": { "version": "7.21.0-placeholder-for-preset-env.2", "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz", @@ -878,12 +751,12 @@ } }, "node_modules/@babel/plugin-syntax-import-assertions": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.27.1.tgz", - "integrity": "sha512-UT/Jrhw57xg4ILHLFnzFpPDlMbcdEicaAtjPQpbj9wa8T4r5KVWCimHcL/460g8Ht0DMxDyjsLgiWSkVjnwPFg==", + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.28.6.tgz", + "integrity": "sha512-pSJUpFHdx9z5nqTSirOCMtYVP2wFgoWhP0p3g8ONK/4IHhLIBd0B9NYqAvIUAhq+OkhO4VM1tENCt0cjlsNShw==", "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.27.1" + "@babel/helper-plugin-utils": "^7.28.6" }, "engines": { "node": ">=6.9.0" @@ -893,12 +766,12 @@ } }, "node_modules/@babel/plugin-syntax-import-attributes": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.27.1.tgz", - "integrity": "sha512-oFT0FrKHgF53f4vOsZGi2Hh3I35PfSmVs4IBFLFj4dnafP+hIWDLg3VyKmUHfLoLHlyxY4C7DGtmHuJgn+IGww==", + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.28.6.tgz", + "integrity": "sha512-jiLC0ma9XkQT3TKJ9uYvlakm66Pamywo+qwL+oL8HJOvc6TWdZXVfhqJr8CCzbSGUAbDOzlGHJC1U+vRfLQDvw==", "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.27.1" + "@babel/helper-plugin-utils": "^7.28.6" }, "engines": { "node": ">=6.9.0" @@ -908,12 +781,12 @@ } }, "node_modules/@babel/plugin-syntax-jsx": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.27.1.tgz", - "integrity": "sha512-y8YTNIeKoyhGd9O0Jiyzyyqk8gdjnumGTQPsz0xOZOQ2RmkVJeZ1vmmfIvFEKqucBG6axJGBZDE/7iI5suUI/w==", + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.28.6.tgz", + "integrity": "sha512-wgEmr06G6sIpqr8YDwA2dSRTE3bJ+V0IfpzfSY3Lfgd7YWOaAdlykvJi13ZKBt8cZHfgH1IXN+CL656W3uUa4w==", "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.27.1" + "@babel/helper-plugin-utils": "^7.28.6" }, "engines": { "node": ">=6.9.0" @@ -922,25 +795,13 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-syntax-object-rest-spread": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", - "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, "node_modules/@babel/plugin-syntax-typescript": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.27.1.tgz", - "integrity": "sha512-xfYCBMxveHrRMnAWl1ZlPXOZjzkN82THFvLhQhFXFt81Z5HnN+EtUkZhv/zcKpmT3fzmWZB0ywiBrbC3vogbwQ==", + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.28.6.tgz", + "integrity": "sha512-+nDNmQye7nlnuuHDboPbGm00Vqg3oO8niRRL27/4LYHUsHYh0zJ1xWOz0uRwNFmM1Avzk8wZbc6rdiYhomzv/A==", "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.27.1" + "@babel/helper-plugin-utils": "^7.28.6" }, "engines": { "node": ">=6.9.0" @@ -981,14 +842,14 @@ } }, "node_modules/@babel/plugin-transform-async-generator-functions": { - "version": "7.28.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.28.0.tgz", - "integrity": "sha512-BEOdvX4+M765icNPZeidyADIvQ1m1gmunXufXxvRESy/jNNyfovIqUyE7MVgGBjWktCoJlzvFA1To2O4ymIO3Q==", + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.29.0.tgz", + "integrity": "sha512-va0VdWro4zlBr2JsXC+ofCPB2iG12wPtVGTWFx2WLDOM3nYQZZIGP82qku2eW/JR83sD+k2k+CsNtyEbUqhU6w==", "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-plugin-utils": "^7.28.6", "@babel/helper-remap-async-to-generator": "^7.27.1", - "@babel/traverse": "^7.28.0" + "@babel/traverse": "^7.29.0" }, "engines": { "node": ">=6.9.0" @@ -998,13 +859,13 @@ } }, "node_modules/@babel/plugin-transform-async-to-generator": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.27.1.tgz", - "integrity": "sha512-NREkZsZVJS4xmTr8qzE5y8AfIPqsdQfRuUiLRTEzb7Qii8iFWCyDKaUV2c0rCuh4ljDZ98ALHP/PetiBV2nddA==", + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.28.6.tgz", + "integrity": "sha512-ilTRcmbuXjsMmcZ3HASTe4caH5Tpo93PkTxF9oG2VZsSWsahydmcEHhix9Ik122RcTnZnUzPbmux4wh1swfv7g==", "license": "MIT", "dependencies": { - "@babel/helper-module-imports": "^7.27.1", - "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-module-imports": "^7.28.6", + "@babel/helper-plugin-utils": "^7.28.6", "@babel/helper-remap-async-to-generator": "^7.27.1" }, "engines": { @@ -1030,12 +891,12 @@ } }, "node_modules/@babel/plugin-transform-block-scoping": { - "version": "7.28.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.28.0.tgz", - "integrity": "sha512-gKKnwjpdx5sER/wl0WN0efUBFzF/56YZO0RJrSYP4CljXnP31ByY7fol89AzomdlLNzI36AvOTmYHsnZTCkq8Q==", + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.28.6.tgz", + "integrity": "sha512-tt/7wOtBmwHPNMPu7ax4pdPz6shjFrmHDghvNC+FG9Qvj7D6mJcoRQIF5dy4njmxR941l6rgtvfSB2zX3VlUIw==", "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.27.1" + "@babel/helper-plugin-utils": "^7.28.6" }, "engines": { "node": ">=6.9.0" @@ -1045,13 +906,13 @@ } }, "node_modules/@babel/plugin-transform-class-properties": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.27.1.tgz", - "integrity": "sha512-D0VcalChDMtuRvJIu3U/fwWjf8ZMykz5iZsg77Nuj821vCKI3zCyRLwRdWbsuJ/uRwZhZ002QtCqIkwC/ZkvbA==", + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.28.6.tgz", + "integrity": "sha512-dY2wS3I2G7D697VHndN91TJr8/AAfXQNt5ynCTI/MpxMsSzHp+52uNivYT5wCPax3whc47DR8Ba7cmlQMg24bw==", "license": "MIT", "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.27.1", - "@babel/helper-plugin-utils": "^7.27.1" + "@babel/helper-create-class-features-plugin": "^7.28.6", + "@babel/helper-plugin-utils": "^7.28.6" }, "engines": { "node": ">=6.9.0" @@ -1061,13 +922,13 @@ } }, "node_modules/@babel/plugin-transform-class-static-block": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.27.1.tgz", - "integrity": "sha512-s734HmYU78MVzZ++joYM+NkJusItbdRcbm+AGRgJCt3iA+yux0QpD9cBVdz3tKyrjVYWRl7j0mHSmv4lhV0aoA==", + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.28.6.tgz", + "integrity": "sha512-rfQ++ghVwTWTqQ7w8qyDxL1XGihjBss4CmTgGRCTAC9RIbhVpyp4fOeZtta0Lbf+dTNIVJer6ych2ibHwkZqsQ==", "license": "MIT", "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.27.1", - "@babel/helper-plugin-utils": "^7.27.1" + "@babel/helper-create-class-features-plugin": "^7.28.6", + "@babel/helper-plugin-utils": "^7.28.6" }, "engines": { "node": ">=6.9.0" @@ -1077,17 +938,17 @@ } }, "node_modules/@babel/plugin-transform-classes": { - "version": "7.28.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.28.0.tgz", - "integrity": "sha512-IjM1IoJNw72AZFlj33Cu8X0q2XK/6AaVC3jQu+cgQ5lThWD5ajnuUAml80dqRmOhmPkTH8uAwnpMu9Rvj0LTRA==", + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.28.6.tgz", + "integrity": "sha512-EF5KONAqC5zAqT783iMGuM2ZtmEBy+mJMOKl2BCvPZ2lVrwvXnB6o+OBWCS+CoeCCpVRF2sA2RBKUxvT8tQT5Q==", "license": "MIT", "dependencies": { "@babel/helper-annotate-as-pure": "^7.27.3", - "@babel/helper-compilation-targets": "^7.27.2", + "@babel/helper-compilation-targets": "^7.28.6", "@babel/helper-globals": "^7.28.0", - "@babel/helper-plugin-utils": "^7.27.1", - "@babel/helper-replace-supers": "^7.27.1", - "@babel/traverse": "^7.28.0" + "@babel/helper-plugin-utils": "^7.28.6", + "@babel/helper-replace-supers": "^7.28.6", + "@babel/traverse": "^7.28.6" }, "engines": { "node": ">=6.9.0" @@ -1097,13 +958,13 @@ } }, "node_modules/@babel/plugin-transform-computed-properties": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.27.1.tgz", - "integrity": "sha512-lj9PGWvMTVksbWiDT2tW68zGS/cyo4AkZ/QTp0sQT0mjPopCmrSkzxeXkznjqBxzDI6TclZhOJbBmbBLjuOZUw==", + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.28.6.tgz", + "integrity": "sha512-bcc3k0ijhHbc2lEfpFHgx7eYw9KNXqOerKWfzbxEHUGKnS3sz9C4CNL9OiFN1297bDNfUiSO7DaLzbvHQQQ1BQ==", "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.27.1", - "@babel/template": "^7.27.1" + "@babel/helper-plugin-utils": "^7.28.6", + "@babel/template": "^7.28.6" }, "engines": { "node": ">=6.9.0" @@ -1113,13 +974,13 @@ } }, "node_modules/@babel/plugin-transform-destructuring": { - "version": "7.28.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.28.0.tgz", - "integrity": "sha512-v1nrSMBiKcodhsyJ4Gf+Z0U/yawmJDBOTpEB3mcQY52r9RIyPneGyAS/yM6seP/8I+mWI3elOMtT5dB8GJVs+A==", + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.28.5.tgz", + "integrity": "sha512-Kl9Bc6D0zTUcFUvkNuQh4eGXPKKNDOJQXVyyM4ZAQPMveniJdxi8XMJwLo+xSoW3MIq81bD33lcUe9kZpl0MCw==", "license": "MIT", "dependencies": { "@babel/helper-plugin-utils": "^7.27.1", - "@babel/traverse": "^7.28.0" + "@babel/traverse": "^7.28.5" }, "engines": { "node": ">=6.9.0" @@ -1129,13 +990,13 @@ } }, "node_modules/@babel/plugin-transform-dotall-regex": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.27.1.tgz", - "integrity": "sha512-gEbkDVGRvjj7+T1ivxrfgygpT7GUd4vmODtYpbs0gZATdkX8/iSnOtZSxiZnsgm1YjTgjI6VKBGSJJevkrclzw==", + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.28.6.tgz", + "integrity": "sha512-SljjowuNKB7q5Oayv4FoPzeB74g3QgLt8IVJw9ADvWy3QnUb/01aw8I4AVv8wYnPvQz2GDDZ/g3GhcNyDBI4Bg==", "license": "MIT", "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.27.1", - "@babel/helper-plugin-utils": "^7.27.1" + "@babel/helper-create-regexp-features-plugin": "^7.28.5", + "@babel/helper-plugin-utils": "^7.28.6" }, "engines": { "node": ">=6.9.0" @@ -1160,13 +1021,13 @@ } }, "node_modules/@babel/plugin-transform-duplicate-named-capturing-groups-regex": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-named-capturing-groups-regex/-/plugin-transform-duplicate-named-capturing-groups-regex-7.27.1.tgz", - "integrity": "sha512-hkGcueTEzuhB30B3eJCbCYeCaaEQOmQR0AdvzpD4LoN0GXMWzzGSuRrxR2xTnCrvNbVwK9N6/jQ92GSLfiZWoQ==", + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-named-capturing-groups-regex/-/plugin-transform-duplicate-named-capturing-groups-regex-7.29.0.tgz", + "integrity": "sha512-zBPcW2lFGxdiD8PUnPwJjag2J9otbcLQzvbiOzDxpYXyCuYX9agOwMPGn1prVH0a4qzhCKu24rlH4c1f7yA8rw==", "license": "MIT", "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.27.1", - "@babel/helper-plugin-utils": "^7.27.1" + "@babel/helper-create-regexp-features-plugin": "^7.28.5", + "@babel/helper-plugin-utils": "^7.28.6" }, "engines": { "node": ">=6.9.0" @@ -1191,13 +1052,13 @@ } }, "node_modules/@babel/plugin-transform-explicit-resource-management": { - "version": "7.28.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-explicit-resource-management/-/plugin-transform-explicit-resource-management-7.28.0.tgz", - "integrity": "sha512-K8nhUcn3f6iB+P3gwCv/no7OdzOZQcKchW6N389V6PD8NUWKZHzndOd9sPDVbMoBsbmjMqlB4L9fm+fEFNVlwQ==", + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-explicit-resource-management/-/plugin-transform-explicit-resource-management-7.28.6.tgz", + "integrity": "sha512-Iao5Konzx2b6g7EPqTy40UZbcdXE126tTxVFr/nAIj+WItNxjKSYTEw3RC+A2/ZetmdJsgueL1KhaMCQHkLPIg==", "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.27.1", - "@babel/plugin-transform-destructuring": "^7.28.0" + "@babel/helper-plugin-utils": "^7.28.6", + "@babel/plugin-transform-destructuring": "^7.28.5" }, "engines": { "node": ">=6.9.0" @@ -1207,12 +1068,12 @@ } }, "node_modules/@babel/plugin-transform-exponentiation-operator": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.27.1.tgz", - "integrity": "sha512-uspvXnhHvGKf2r4VVtBpeFnuDWsJLQ6MF6lGJLC89jBR1uoVeqM416AZtTuhTezOfgHicpJQmoD5YUakO/YmXQ==", + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.28.6.tgz", + "integrity": "sha512-WitabqiGjV/vJ0aPOLSFfNY1u9U3R7W36B03r5I2KoNix+a3sOhJ3pKFB3R5It9/UiK78NiO0KE9P21cMhlPkw==", "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.27.1" + "@babel/helper-plugin-utils": "^7.28.6" }, "engines": { "node": ">=6.9.0" @@ -1270,12 +1131,12 @@ } }, "node_modules/@babel/plugin-transform-json-strings": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.27.1.tgz", - "integrity": "sha512-6WVLVJiTjqcQauBhn1LkICsR2H+zm62I3h9faTDKt1qP4jn2o72tSvqMwtGFKGTpojce0gJs+76eZ2uCHRZh0Q==", + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.28.6.tgz", + "integrity": "sha512-Nr+hEN+0geQkzhbdgQVPoqr47lZbm+5fCUmO70722xJZd0Mvb59+33QLImGj6F+DkK3xgDi1YVysP8whD6FQAw==", "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.27.1" + "@babel/helper-plugin-utils": "^7.28.6" }, "engines": { "node": ">=6.9.0" @@ -1300,12 +1161,12 @@ } }, "node_modules/@babel/plugin-transform-logical-assignment-operators": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.27.1.tgz", - "integrity": "sha512-SJvDs5dXxiae4FbSL1aBJlG4wvl594N6YEVVn9e3JGulwioy6z3oPjx/sQBO3Y4NwUu5HNix6KJ3wBZoewcdbw==", + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.28.6.tgz", + "integrity": "sha512-+anKKair6gpi8VsM/95kmomGNMD0eLz1NQ8+Pfw5sAwWH9fGYXT50E55ZpV0pHUHWf6IUTWPM+f/7AAff+wr9A==", "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.27.1" + "@babel/helper-plugin-utils": "^7.28.6" }, "engines": { "node": ">=6.9.0" @@ -1346,13 +1207,13 @@ } }, "node_modules/@babel/plugin-transform-modules-commonjs": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.27.1.tgz", - "integrity": "sha512-OJguuwlTYlN0gBZFRPqwOGNWssZjfIUdS7HMYtN8c1KmwpwHFBwTeFZrg9XZa+DFTitWOW5iTAG7tyCUPsCCyw==", + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.28.6.tgz", + "integrity": "sha512-jppVbf8IV9iWWwWTQIxJMAJCWBuuKx71475wHwYytrRGQ2CWiDvYlADQno3tcYpS/T2UUWFQp3nVtYfK/YBQrA==", "license": "MIT", "dependencies": { - "@babel/helper-module-transforms": "^7.27.1", - "@babel/helper-plugin-utils": "^7.27.1" + "@babel/helper-module-transforms": "^7.28.6", + "@babel/helper-plugin-utils": "^7.28.6" }, "engines": { "node": ">=6.9.0" @@ -1362,15 +1223,15 @@ } }, "node_modules/@babel/plugin-transform-modules-systemjs": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.27.1.tgz", - "integrity": "sha512-w5N1XzsRbc0PQStASMksmUeqECuzKuTJer7kFagK8AXgpCMkeDMO5S+aaFb7A51ZYDF7XI34qsTX+fkHiIm5yA==", + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.29.0.tgz", + "integrity": "sha512-PrujnVFbOdUpw4UHiVwKvKRLMMic8+eC0CuNlxjsyZUiBjhFdPsewdXCkveh2KqBA9/waD0W1b4hXSOBQJezpQ==", "license": "MIT", "dependencies": { - "@babel/helper-module-transforms": "^7.27.1", - "@babel/helper-plugin-utils": "^7.27.1", - "@babel/helper-validator-identifier": "^7.27.1", - "@babel/traverse": "^7.27.1" + "@babel/helper-module-transforms": "^7.28.6", + "@babel/helper-plugin-utils": "^7.28.6", + "@babel/helper-validator-identifier": "^7.28.5", + "@babel/traverse": "^7.29.0" }, "engines": { "node": ">=6.9.0" @@ -1396,13 +1257,13 @@ } }, "node_modules/@babel/plugin-transform-named-capturing-groups-regex": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.27.1.tgz", - "integrity": "sha512-SstR5JYy8ddZvD6MhV0tM/j16Qds4mIpJTOd1Yu9J9pJjH93bxHECF7pgtc28XvkzTD6Pxcm/0Z73Hvk7kb3Ng==", + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.29.0.tgz", + "integrity": "sha512-1CZQA5KNAD6ZYQLPw7oi5ewtDNxH/2vuCh+6SmvgDfhumForvs8a1o9n0UrEoBD8HU4djO2yWngTQlXl1NDVEQ==", "license": "MIT", "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.27.1", - "@babel/helper-plugin-utils": "^7.27.1" + "@babel/helper-create-regexp-features-plugin": "^7.28.5", + "@babel/helper-plugin-utils": "^7.28.6" }, "engines": { "node": ">=6.9.0" @@ -1427,12 +1288,12 @@ } }, "node_modules/@babel/plugin-transform-nullish-coalescing-operator": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.27.1.tgz", - "integrity": "sha512-aGZh6xMo6q9vq1JGcw58lZ1Z0+i0xB2x0XaauNIUXd6O1xXc3RwoWEBlsTQrY4KQ9Jf0s5rgD6SiNkaUdJegTA==", + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.28.6.tgz", + "integrity": "sha512-3wKbRgmzYbw24mDJXT7N+ADXw8BC/imU9yo9c9X9NKaLF1fW+e5H1U5QjMUBe4Qo4Ox/o++IyUkl1sVCLgevKg==", "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.27.1" + "@babel/helper-plugin-utils": "^7.28.6" }, "engines": { "node": ">=6.9.0" @@ -1442,12 +1303,12 @@ } }, "node_modules/@babel/plugin-transform-numeric-separator": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.27.1.tgz", - "integrity": "sha512-fdPKAcujuvEChxDBJ5c+0BTaS6revLV7CJL08e4m3de8qJfNIuCc2nc7XJYOjBoTMJeqSmwXJ0ypE14RCjLwaw==", + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.28.6.tgz", + "integrity": "sha512-SJR8hPynj8outz+SlStQSwvziMN4+Bq99it4tMIf5/Caq+3iOc0JtKyse8puvyXkk3eFRIA5ID/XfunGgO5i6w==", "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.27.1" + "@babel/helper-plugin-utils": "^7.28.6" }, "engines": { "node": ">=6.9.0" @@ -1457,16 +1318,16 @@ } }, "node_modules/@babel/plugin-transform-object-rest-spread": { - "version": "7.28.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.28.0.tgz", - "integrity": "sha512-9VNGikXxzu5eCiQjdE4IZn8sb9q7Xsk5EXLDBKUYg1e/Tve8/05+KJEtcxGxAgCY5t/BpKQM+JEL/yT4tvgiUA==", + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.28.6.tgz", + "integrity": "sha512-5rh+JR4JBC4pGkXLAcYdLHZjXudVxWMXbB6u6+E9lRL5TrGVbHt1TjxGbZ8CkmYw9zjkB7jutzOROArsqtncEA==", "license": "MIT", "dependencies": { - "@babel/helper-compilation-targets": "^7.27.2", - "@babel/helper-plugin-utils": "^7.27.1", - "@babel/plugin-transform-destructuring": "^7.28.0", + "@babel/helper-compilation-targets": "^7.28.6", + "@babel/helper-plugin-utils": "^7.28.6", + "@babel/plugin-transform-destructuring": "^7.28.5", "@babel/plugin-transform-parameters": "^7.27.7", - "@babel/traverse": "^7.28.0" + "@babel/traverse": "^7.28.6" }, "engines": { "node": ">=6.9.0" @@ -1492,12 +1353,12 @@ } }, "node_modules/@babel/plugin-transform-optional-catch-binding": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.27.1.tgz", - "integrity": "sha512-txEAEKzYrHEX4xSZN4kJ+OfKXFVSWKB2ZxM9dpcE3wT7smwkNmXo5ORRlVzMVdJbD+Q8ILTgSD7959uj+3Dm3Q==", + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.28.6.tgz", + "integrity": "sha512-R8ja/Pyrv0OGAvAXQhSTmWyPJPml+0TMqXlO5w+AsMEiwb2fg3WkOvob7UxFSL3OIttFSGSRFKQsOhJ/X6HQdQ==", "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.27.1" + "@babel/helper-plugin-utils": "^7.28.6" }, "engines": { "node": ">=6.9.0" @@ -1507,12 +1368,12 @@ } }, "node_modules/@babel/plugin-transform-optional-chaining": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.27.1.tgz", - "integrity": "sha512-BQmKPPIuc8EkZgNKsv0X4bPmOoayeu4F1YCwx2/CfmDSXDbp7GnzlUH+/ul5VGfRg1AoFPsrIThlEBj2xb4CAg==", + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.28.6.tgz", + "integrity": "sha512-A4zobikRGJTsX9uqVFdafzGkqD30t26ck2LmOzAuLL8b2x6k3TIqRiT2xVvA9fNmFeTX484VpsdgmKNA0bS23w==", "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-plugin-utils": "^7.28.6", "@babel/helper-skip-transparent-expression-wrappers": "^7.27.1" }, "engines": { @@ -1538,13 +1399,13 @@ } }, "node_modules/@babel/plugin-transform-private-methods": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.27.1.tgz", - "integrity": "sha512-10FVt+X55AjRAYI9BrdISN9/AQWHqldOeZDUoLyif1Kn05a56xVBXb8ZouL8pZ9jem8QpXaOt8TS7RHUIS+GPA==", + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.28.6.tgz", + "integrity": "sha512-piiuapX9CRv7+0st8lmuUlRSmX6mBcVeNQ1b4AYzJxfCMuBfB0vBXDiGSmm03pKJw1v6cZ8KSeM+oUnM6yAExg==", "license": "MIT", "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.27.1", - "@babel/helper-plugin-utils": "^7.27.1" + "@babel/helper-create-class-features-plugin": "^7.28.6", + "@babel/helper-plugin-utils": "^7.28.6" }, "engines": { "node": ">=6.9.0" @@ -1554,14 +1415,14 @@ } }, "node_modules/@babel/plugin-transform-private-property-in-object": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.27.1.tgz", - "integrity": "sha512-5J+IhqTi1XPa0DXF83jYOaARrX+41gOewWbkPyjMNRDqgOCqdffGh8L3f/Ek5utaEBZExjSAzcyjmV9SSAWObQ==", + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.28.6.tgz", + "integrity": "sha512-b97jvNSOb5+ehyQmBpmhOCiUC5oVK4PMnpRvO7+ymFBoqYjeDHIU9jnrNUuwHOiL9RpGDoKBpSViarV+BU+eVA==", "license": "MIT", "dependencies": { - "@babel/helper-annotate-as-pure": "^7.27.1", - "@babel/helper-create-class-features-plugin": "^7.27.1", - "@babel/helper-plugin-utils": "^7.27.1" + "@babel/helper-annotate-as-pure": "^7.27.3", + "@babel/helper-create-class-features-plugin": "^7.28.6", + "@babel/helper-plugin-utils": "^7.28.6" }, "engines": { "node": ">=6.9.0" @@ -1616,16 +1477,16 @@ } }, "node_modules/@babel/plugin-transform-react-jsx": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.27.1.tgz", - "integrity": "sha512-2KH4LWGSrJIkVf5tSiBFYuXDAoWRq2MMwgivCf+93dd0GQi8RXLjKA/0EvRnVV5G0hrHczsquXuD01L8s6dmBw==", + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.28.6.tgz", + "integrity": "sha512-61bxqhiRfAACulXSLd/GxqmAedUSrRZIu/cbaT18T1CetkTmtDN15it7i80ru4DVqRK1WMxQhXs+Lf9kajm5Ow==", "license": "MIT", "dependencies": { - "@babel/helper-annotate-as-pure": "^7.27.1", - "@babel/helper-module-imports": "^7.27.1", - "@babel/helper-plugin-utils": "^7.27.1", - "@babel/plugin-syntax-jsx": "^7.27.1", - "@babel/types": "^7.27.1" + "@babel/helper-annotate-as-pure": "^7.27.3", + "@babel/helper-module-imports": "^7.28.6", + "@babel/helper-plugin-utils": "^7.28.6", + "@babel/plugin-syntax-jsx": "^7.28.6", + "@babel/types": "^7.28.6" }, "engines": { "node": ">=6.9.0" @@ -1666,12 +1527,12 @@ } }, "node_modules/@babel/plugin-transform-regenerator": { - "version": "7.28.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.28.1.tgz", - "integrity": "sha512-P0QiV/taaa3kXpLY+sXla5zec4E+4t4Aqc9ggHlfZ7a2cp8/x/Gv08jfwEtn9gnnYIMvHx6aoOZ8XJL8eU71Dg==", + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.29.0.tgz", + "integrity": "sha512-FijqlqMA7DmRdg/aINBSs04y8XNTYw/lr1gJ2WsmBnnaNw1iS43EPkJW+zK7z65auG3AWRFXWj+NcTQwYptUog==", "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.27.1" + "@babel/helper-plugin-utils": "^7.28.6" }, "engines": { "node": ">=6.9.0" @@ -1681,13 +1542,13 @@ } }, "node_modules/@babel/plugin-transform-regexp-modifiers": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regexp-modifiers/-/plugin-transform-regexp-modifiers-7.27.1.tgz", - "integrity": "sha512-TtEciroaiODtXvLZv4rmfMhkCv8jx3wgKpL68PuiPh2M4fvz5jhsA7697N1gMvkvr/JTF13DrFYyEbY9U7cVPA==", + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regexp-modifiers/-/plugin-transform-regexp-modifiers-7.28.6.tgz", + "integrity": "sha512-QGWAepm9qxpaIs7UM9FvUSnCGlb8Ua1RhyM4/veAxLwt3gMat/LSGrZixyuj4I6+Kn9iwvqCyPTtbdxanYoWYg==", "license": "MIT", "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.27.1", - "@babel/helper-plugin-utils": "^7.27.1" + "@babel/helper-create-regexp-features-plugin": "^7.28.5", + "@babel/helper-plugin-utils": "^7.28.6" }, "engines": { "node": ">=6.9.0" @@ -1712,13 +1573,13 @@ } }, "node_modules/@babel/plugin-transform-runtime": { - "version": "7.28.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.28.0.tgz", - "integrity": "sha512-dGopk9nZrtCs2+nfIem25UuHyt5moSJamArzIoh9/vezUQPmYDOzjaHDCkAzuGJibCIkPup8rMT2+wYB6S73cA==", + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.29.0.tgz", + "integrity": "sha512-jlaRT5dJtMaMCV6fAuLbsQMSwz/QkvaHOHOSXRitGGwSpR1blCY4KUKoyP2tYO8vJcqYe8cEj96cqSztv3uF9w==", "license": "MIT", "dependencies": { - "@babel/helper-module-imports": "^7.27.1", - "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-module-imports": "^7.28.6", + "@babel/helper-plugin-utils": "^7.28.6", "babel-plugin-polyfill-corejs2": "^0.4.14", "babel-plugin-polyfill-corejs3": "^0.13.0", "babel-plugin-polyfill-regenerator": "^0.6.5", @@ -1756,12 +1617,12 @@ } }, "node_modules/@babel/plugin-transform-spread": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.27.1.tgz", - "integrity": "sha512-kpb3HUqaILBJcRFVhFUs6Trdd4mkrzcGXss+6/mxUd273PfbWqSDHRzMT2234gIg2QYfAjvXLSquP1xECSg09Q==", + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.28.6.tgz", + "integrity": "sha512-9U4QObUC0FtJl05AsUcodau/RWDytrU6uKgkxu09mLR9HLDAtUMoPuuskm5huQsoktmsYpI+bGmq+iapDcriKA==", "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-plugin-utils": "^7.28.6", "@babel/helper-skip-transparent-expression-wrappers": "^7.27.1" }, "engines": { @@ -1817,16 +1678,16 @@ } }, "node_modules/@babel/plugin-transform-typescript": { - "version": "7.28.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.28.0.tgz", - "integrity": "sha512-4AEiDEBPIZvLQaWlc9liCavE0xRM0dNca41WtBeM3jgFptfUOSG9z0uteLhq6+3rq+WB6jIvUwKDTpXEHPJ2Vg==", + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.28.6.tgz", + "integrity": "sha512-0YWL2RFxOqEm9Efk5PvreamxPME8OyY0wM5wh5lHjF+VtVhdneCWGzZeSqzOfiobVqQaNCd2z0tQvnI9DaPWPw==", "license": "MIT", "dependencies": { "@babel/helper-annotate-as-pure": "^7.27.3", - "@babel/helper-create-class-features-plugin": "^7.27.1", - "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-create-class-features-plugin": "^7.28.6", + "@babel/helper-plugin-utils": "^7.28.6", "@babel/helper-skip-transparent-expression-wrappers": "^7.27.1", - "@babel/plugin-syntax-typescript": "^7.27.1" + "@babel/plugin-syntax-typescript": "^7.28.6" }, "engines": { "node": ">=6.9.0" @@ -1851,13 +1712,13 @@ } }, "node_modules/@babel/plugin-transform-unicode-property-regex": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.27.1.tgz", - "integrity": "sha512-uW20S39PnaTImxp39O5qFlHLS9LJEmANjMG7SxIhap8rCHqu0Ik+tLEPX5DKmHn6CsWQ7j3lix2tFOa5YtL12Q==", + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.28.6.tgz", + "integrity": "sha512-4Wlbdl/sIZjzi/8St0evF0gEZrgOswVO6aOzqxh1kDZOl9WmLrHq2HtGhnOJZmHZYKP8WZ1MDLCt5DAWwRo57A==", "license": "MIT", "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.27.1", - "@babel/helper-plugin-utils": "^7.27.1" + "@babel/helper-create-regexp-features-plugin": "^7.28.5", + "@babel/helper-plugin-utils": "^7.28.6" }, "engines": { "node": ">=6.9.0" @@ -1883,13 +1744,13 @@ } }, "node_modules/@babel/plugin-transform-unicode-sets-regex": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.27.1.tgz", - "integrity": "sha512-EtkOujbc4cgvb0mlpQefi4NTPBzhSIevblFevACNLUspmrALgmEBdL/XfnyyITfd8fKBZrZys92zOWcik7j9Tw==", + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.28.6.tgz", + "integrity": "sha512-/wHc/paTUmsDYN7SZkpWxogTOBNnlx7nBQYfy6JJlCT7G3mVhltk3e++N7zV0XfgGsrqBxd4rJQt9H16I21Y1Q==", "license": "MIT", "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.27.1", - "@babel/helper-plugin-utils": "^7.27.1" + "@babel/helper-create-regexp-features-plugin": "^7.28.5", + "@babel/helper-plugin-utils": "^7.28.6" }, "engines": { "node": ">=6.9.0" @@ -1898,100 +1759,81 @@ "@babel/core": "^7.0.0" } }, - "node_modules/@babel/polyfill": { - "version": "7.12.1", - "resolved": "https://registry.npmjs.org/@babel/polyfill/-/polyfill-7.12.1.tgz", - "integrity": "sha512-X0pi0V6gxLi6lFZpGmeNa4zxtwEmCs42isWLNjZZDE0Y8yVfgu0T2OAHlzBbdYlqbW/YXVvoBHpATEM+goCj8g==", - "deprecated": "🚨 This package has been deprecated in favor of separate inclusion of a polyfill and regenerator-runtime (when needed). See the @babel/polyfill docs (https://babeljs.io/docs/en/babel-polyfill) for more information.", - "license": "MIT", - "dependencies": { - "core-js": "^2.6.5", - "regenerator-runtime": "^0.13.4" - } - }, - "node_modules/@babel/polyfill/node_modules/core-js": { - "version": "2.6.12", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.12.tgz", - "integrity": "sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ==", - "deprecated": "core-js@<3.23.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Some versions have web compatibility issues. Please, upgrade your dependencies to the actual version of core-js.", - "hasInstallScript": true, - "license": "MIT" - }, "node_modules/@babel/preset-env": { - "version": "7.28.0", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.28.0.tgz", - "integrity": "sha512-VmaxeGOwuDqzLl5JUkIRM1X2Qu2uKGxHEQWh+cvvbl7JuJRgKGJSfsEF/bUaxFhJl/XAyxBe7q7qSuTbKFuCyg==", + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.29.0.tgz", + "integrity": "sha512-fNEdfc0yi16lt6IZo2Qxk3knHVdfMYX33czNb4v8yWhemoBhibCpQK/uYHtSKIiO+p/zd3+8fYVXhQdOVV608w==", "license": "MIT", "dependencies": { - "@babel/compat-data": "^7.28.0", - "@babel/helper-compilation-targets": "^7.27.2", - "@babel/helper-plugin-utils": "^7.27.1", + "@babel/compat-data": "^7.29.0", + "@babel/helper-compilation-targets": "^7.28.6", + "@babel/helper-plugin-utils": "^7.28.6", "@babel/helper-validator-option": "^7.27.1", - "@babel/plugin-bugfix-firefox-class-in-computed-class-key": "^7.27.1", + "@babel/plugin-bugfix-firefox-class-in-computed-class-key": "^7.28.5", "@babel/plugin-bugfix-safari-class-field-initializer-scope": "^7.27.1", "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.27.1", "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.27.1", - "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": "^7.27.1", + "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": "^7.28.6", "@babel/plugin-proposal-private-property-in-object": "7.21.0-placeholder-for-preset-env.2", - "@babel/plugin-syntax-import-assertions": "^7.27.1", - "@babel/plugin-syntax-import-attributes": "^7.27.1", + "@babel/plugin-syntax-import-assertions": "^7.28.6", + "@babel/plugin-syntax-import-attributes": "^7.28.6", "@babel/plugin-syntax-unicode-sets-regex": "^7.18.6", "@babel/plugin-transform-arrow-functions": "^7.27.1", - "@babel/plugin-transform-async-generator-functions": "^7.28.0", - "@babel/plugin-transform-async-to-generator": "^7.27.1", + "@babel/plugin-transform-async-generator-functions": "^7.29.0", + "@babel/plugin-transform-async-to-generator": "^7.28.6", "@babel/plugin-transform-block-scoped-functions": "^7.27.1", - "@babel/plugin-transform-block-scoping": "^7.28.0", - "@babel/plugin-transform-class-properties": "^7.27.1", - "@babel/plugin-transform-class-static-block": "^7.27.1", - "@babel/plugin-transform-classes": "^7.28.0", - "@babel/plugin-transform-computed-properties": "^7.27.1", - "@babel/plugin-transform-destructuring": "^7.28.0", - "@babel/plugin-transform-dotall-regex": "^7.27.1", + "@babel/plugin-transform-block-scoping": "^7.28.6", + "@babel/plugin-transform-class-properties": "^7.28.6", + "@babel/plugin-transform-class-static-block": "^7.28.6", + "@babel/plugin-transform-classes": "^7.28.6", + "@babel/plugin-transform-computed-properties": "^7.28.6", + "@babel/plugin-transform-destructuring": "^7.28.5", + "@babel/plugin-transform-dotall-regex": "^7.28.6", "@babel/plugin-transform-duplicate-keys": "^7.27.1", - "@babel/plugin-transform-duplicate-named-capturing-groups-regex": "^7.27.1", + "@babel/plugin-transform-duplicate-named-capturing-groups-regex": "^7.29.0", "@babel/plugin-transform-dynamic-import": "^7.27.1", - "@babel/plugin-transform-explicit-resource-management": "^7.28.0", - "@babel/plugin-transform-exponentiation-operator": "^7.27.1", + "@babel/plugin-transform-explicit-resource-management": "^7.28.6", + "@babel/plugin-transform-exponentiation-operator": "^7.28.6", "@babel/plugin-transform-export-namespace-from": "^7.27.1", "@babel/plugin-transform-for-of": "^7.27.1", "@babel/plugin-transform-function-name": "^7.27.1", - "@babel/plugin-transform-json-strings": "^7.27.1", + "@babel/plugin-transform-json-strings": "^7.28.6", "@babel/plugin-transform-literals": "^7.27.1", - "@babel/plugin-transform-logical-assignment-operators": "^7.27.1", + "@babel/plugin-transform-logical-assignment-operators": "^7.28.6", "@babel/plugin-transform-member-expression-literals": "^7.27.1", "@babel/plugin-transform-modules-amd": "^7.27.1", - "@babel/plugin-transform-modules-commonjs": "^7.27.1", - "@babel/plugin-transform-modules-systemjs": "^7.27.1", + "@babel/plugin-transform-modules-commonjs": "^7.28.6", + "@babel/plugin-transform-modules-systemjs": "^7.29.0", "@babel/plugin-transform-modules-umd": "^7.27.1", - "@babel/plugin-transform-named-capturing-groups-regex": "^7.27.1", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.29.0", "@babel/plugin-transform-new-target": "^7.27.1", - "@babel/plugin-transform-nullish-coalescing-operator": "^7.27.1", - "@babel/plugin-transform-numeric-separator": "^7.27.1", - "@babel/plugin-transform-object-rest-spread": "^7.28.0", + "@babel/plugin-transform-nullish-coalescing-operator": "^7.28.6", + "@babel/plugin-transform-numeric-separator": "^7.28.6", + "@babel/plugin-transform-object-rest-spread": "^7.28.6", "@babel/plugin-transform-object-super": "^7.27.1", - "@babel/plugin-transform-optional-catch-binding": "^7.27.1", - "@babel/plugin-transform-optional-chaining": "^7.27.1", + "@babel/plugin-transform-optional-catch-binding": "^7.28.6", + "@babel/plugin-transform-optional-chaining": "^7.28.6", "@babel/plugin-transform-parameters": "^7.27.7", - "@babel/plugin-transform-private-methods": "^7.27.1", - "@babel/plugin-transform-private-property-in-object": "^7.27.1", + "@babel/plugin-transform-private-methods": "^7.28.6", + "@babel/plugin-transform-private-property-in-object": "^7.28.6", "@babel/plugin-transform-property-literals": "^7.27.1", - "@babel/plugin-transform-regenerator": "^7.28.0", - "@babel/plugin-transform-regexp-modifiers": "^7.27.1", + "@babel/plugin-transform-regenerator": "^7.29.0", + "@babel/plugin-transform-regexp-modifiers": "^7.28.6", "@babel/plugin-transform-reserved-words": "^7.27.1", "@babel/plugin-transform-shorthand-properties": "^7.27.1", - "@babel/plugin-transform-spread": "^7.27.1", + "@babel/plugin-transform-spread": "^7.28.6", "@babel/plugin-transform-sticky-regex": "^7.27.1", "@babel/plugin-transform-template-literals": "^7.27.1", "@babel/plugin-transform-typeof-symbol": "^7.27.1", "@babel/plugin-transform-unicode-escapes": "^7.27.1", - "@babel/plugin-transform-unicode-property-regex": "^7.27.1", + "@babel/plugin-transform-unicode-property-regex": "^7.28.6", "@babel/plugin-transform-unicode-regex": "^7.27.1", - "@babel/plugin-transform-unicode-sets-regex": "^7.27.1", + "@babel/plugin-transform-unicode-sets-regex": "^7.28.6", "@babel/preset-modules": "0.1.6-no-external-plugins", - "babel-plugin-polyfill-corejs2": "^0.4.14", - "babel-plugin-polyfill-corejs3": "^0.13.0", - "babel-plugin-polyfill-regenerator": "^0.6.5", - "core-js-compat": "^3.43.0", + "babel-plugin-polyfill-corejs2": "^0.4.15", + "babel-plugin-polyfill-corejs3": "^0.14.0", + "babel-plugin-polyfill-regenerator": "^0.6.6", + "core-js-compat": "^3.48.0", "semver": "^6.3.1" }, "engines": { @@ -2001,6 +1843,19 @@ "@babel/core": "^7.0.0-0" } }, + "node_modules/@babel/preset-env/node_modules/babel-plugin-polyfill-corejs3": { + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.14.0.tgz", + "integrity": "sha512-AvDcMxJ34W4Wgy4KBIIePQTAOP1Ie2WFwkQp3dB7FQ/f0lI5+nM96zUnYEOE1P9sEg0es5VCP0HxiWu5fUHZAQ==", + "license": "MIT", + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.6.6", + "core-js-compat": "^3.48.0" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, "node_modules/@babel/preset-env/node_modules/semver": { "version": "6.3.1", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", @@ -2025,14 +1880,14 @@ } }, "node_modules/@babel/preset-react": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/preset-react/-/preset-react-7.27.1.tgz", - "integrity": "sha512-oJHWh2gLhU9dW9HHr42q0cI0/iHHXTLGe39qvpAZZzagHy0MzYLCnCVV0symeRvzmjHyVU7mw2K06E6u/JwbhA==", + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/preset-react/-/preset-react-7.28.5.tgz", + "integrity": "sha512-Z3J8vhRq7CeLjdC58jLv4lnZ5RKFUJWqH5emvxmv9Hv3BD1T9R/Im713R4MTKwvFaV74ejZ3sM01LyEKk4ugNQ==", "license": "MIT", "dependencies": { "@babel/helper-plugin-utils": "^7.27.1", "@babel/helper-validator-option": "^7.27.1", - "@babel/plugin-transform-react-display-name": "^7.27.1", + "@babel/plugin-transform-react-display-name": "^7.28.0", "@babel/plugin-transform-react-jsx": "^7.27.1", "@babel/plugin-transform-react-jsx-development": "^7.27.1", "@babel/plugin-transform-react-pure-annotations": "^7.27.1" @@ -2045,16 +1900,16 @@ } }, "node_modules/@babel/preset-typescript": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.27.1.tgz", - "integrity": "sha512-l7WfQfX0WK4M0v2RudjuQK4u99BS6yLHYEmdtVPP7lKV013zr9DygFuWNlnbvQ9LR+LS0Egz/XAvGx5U9MX0fQ==", + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.28.5.tgz", + "integrity": "sha512-+bQy5WOI2V6LJZpPVxY+yp66XdZ2yifu0Mc1aP5CQKgjn4QM5IN2i5fAZ4xKop47pr8rpVhiAeu+nDQa12C8+g==", "license": "MIT", "dependencies": { "@babel/helper-plugin-utils": "^7.27.1", "@babel/helper-validator-option": "^7.27.1", "@babel/plugin-syntax-jsx": "^7.27.1", "@babel/plugin-transform-modules-commonjs": "^7.27.1", - "@babel/plugin-transform-typescript": "^7.27.1" + "@babel/plugin-transform-typescript": "^7.28.5" }, "engines": { "node": ">=6.9.0" @@ -2063,159 +1918,53 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/register": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/register/-/register-7.27.1.tgz", - "integrity": "sha512-K13lQpoV54LATKkzBpBAEu1GGSIRzxR9f4IN4V8DCDgiUMo2UDGagEZr3lPeVNJPLkWUi5JE4hCHKneVTwQlYQ==", - "license": "MIT", - "dependencies": { - "clone-deep": "^4.0.1", - "find-cache-dir": "^2.0.0", - "make-dir": "^2.1.0", - "pirates": "^4.0.6", - "source-map-support": "^0.5.16" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/register/node_modules/find-cache-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", - "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", - "license": "MIT", - "dependencies": { - "commondir": "^1.0.1", - "make-dir": "^2.0.0", - "pkg-dir": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/@babel/register/node_modules/find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "license": "MIT", - "dependencies": { - "locate-path": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/@babel/register/node_modules/locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "license": "MIT", - "dependencies": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/@babel/register/node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "license": "MIT", - "dependencies": { - "p-try": "^2.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@babel/register/node_modules/p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "license": "MIT", - "dependencies": { - "p-limit": "^2.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/@babel/register/node_modules/path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/register/node_modules/pkg-dir": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", - "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", - "license": "MIT", - "dependencies": { - "find-up": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/@babel/runtime": { - "version": "7.27.6", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.27.6.tgz", - "integrity": "sha512-vbavdySgbTTrmFE+EsiqUTzlOr5bzlnJtUv9PynGCAKvfQqjIXbvFdumPM/GxMDfyuGMJaJAU6TO4zc1Jf1i8Q==", + "node_modules/@babel/runtime": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.28.6.tgz", + "integrity": "sha512-05WQkdpL9COIMz4LjTxGpPNCdlpyimKppYNoJ5Di5EUObifl8t4tuLuUBBZEpoLYOmfvIWrsp9fCl0HoPRVTdA==", "license": "MIT", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/runtime-corejs3": { - "version": "7.28.0", - "resolved": "https://registry.npmjs.org/@babel/runtime-corejs3/-/runtime-corejs3-7.28.0.tgz", - "integrity": "sha512-nlIXnSqLcBij8K8TtkxbBJgfzfvi75V1pAKSM7dUXejGw12vJAqez74jZrHTsJ3Z+Aczc5Q/6JgNjKRMsVU44g==", + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/@babel/runtime-corejs3/-/runtime-corejs3-7.29.0.tgz", + "integrity": "sha512-TgUkdp71C9pIbBcHudc+gXZnihEDOjUAmXO1VO4HHGES7QLZcShR0stfKIxLSNIYx2fqhmJChOjm/wkF8wv4gA==", "license": "MIT", "dependencies": { - "core-js-pure": "^3.43.0" + "core-js-pure": "^3.48.0" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/template": { - "version": "7.27.2", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.27.2.tgz", - "integrity": "sha512-LPDZ85aEJyYSd18/DkjNh4/y1ntkE5KwUHWTiqgRxruuZL2F1yuHligVHLvcHY2vMHXttKFpJn6LwfI7cw7ODw==", + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.28.6.tgz", + "integrity": "sha512-YA6Ma2KsCdGb+WC6UpBVFJGXL58MDA6oyONbjyF/+5sBgxY/dwkhLogbMT2GXXyU84/IhRw/2D1Os1B/giz+BQ==", "license": "MIT", "dependencies": { - "@babel/code-frame": "^7.27.1", - "@babel/parser": "^7.27.2", - "@babel/types": "^7.27.1" + "@babel/code-frame": "^7.28.6", + "@babel/parser": "^7.28.6", + "@babel/types": "^7.28.6" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/traverse": { - "version": "7.28.0", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.28.0.tgz", - "integrity": "sha512-mGe7UK5wWyh0bKRfupsUchrQGqvDbZDbKJw+kcRGSmdHVYrv+ltd0pnpDTVpiTqnaBru9iEvA8pz8W46v0Amwg==", + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.29.0.tgz", + "integrity": "sha512-4HPiQr0X7+waHfyXPZpWPfWL/J7dcN1mx9gL6WdQVMbPnF3+ZhSMs8tCxN7oHddJE9fhNE7+lxdnlyemKfJRuA==", "license": "MIT", "dependencies": { - "@babel/code-frame": "^7.27.1", - "@babel/generator": "^7.28.0", + "@babel/code-frame": "^7.29.0", + "@babel/generator": "^7.29.0", "@babel/helper-globals": "^7.28.0", - "@babel/parser": "^7.28.0", - "@babel/template": "^7.27.2", - "@babel/types": "^7.28.0", + "@babel/parser": "^7.29.0", + "@babel/template": "^7.28.6", + "@babel/types": "^7.29.0", "debug": "^4.3.1" }, "engines": { @@ -2223,13 +1972,13 @@ } }, "node_modules/@babel/types": { - "version": "7.28.1", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.28.1.tgz", - "integrity": "sha512-x0LvFTekgSX+83TI28Y9wYPUfzrnl2aT5+5QLnO6v7mSJYtEEevuDRN0F0uSHRk1G1IWZC43o00Y0xDDrpBGPQ==", + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.0.tgz", + "integrity": "sha512-LwdZHpScM4Qz8Xw2iKSzS+cfglZzJGvofQICy7W7v4caru4EaAmyUuO6BGrbyQ2mYV11W0U8j5mBhd14dd3B0A==", "license": "MIT", "dependencies": { "@babel/helper-string-parser": "^7.27.1", - "@babel/helper-validator-identifier": "^7.27.1" + "@babel/helper-validator-identifier": "^7.28.5" }, "engines": { "node": ">=6.9.0" @@ -2269,9 +2018,9 @@ } }, "node_modules/@csstools/color-helpers": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/@csstools/color-helpers/-/color-helpers-5.0.2.tgz", - "integrity": "sha512-JqWH1vsgdGcw2RR6VliXXdA0/59LttzlU8UlRT/iUUsEeWfYq8I+K0yhihEUTTHLRm1EXvpsCx3083EU15ecsA==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@csstools/color-helpers/-/color-helpers-5.1.0.tgz", + "integrity": "sha512-S11EXWJyy0Mz5SYvRmY8nJYTFFd1LCNV+7cXyAgQtOOuzb4EsgfqDufL+9esx72/eLhsRdGZwaldu/h+E4t4BA==", "funding": [ { "type": "github", @@ -2311,9 +2060,9 @@ } }, "node_modules/@csstools/css-color-parser": { - "version": "3.0.10", - "resolved": "https://registry.npmjs.org/@csstools/css-color-parser/-/css-color-parser-3.0.10.tgz", - "integrity": "sha512-TiJ5Ajr6WRd1r8HSiwJvZBiJOqtH86aHpUjq5aEKWHiII2Qfjqd/HCWKPOW8EP4vcspXbHnXrwIDlu5savQipg==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@csstools/css-color-parser/-/css-color-parser-3.1.0.tgz", + "integrity": "sha512-nbtKwh3a6xNVIp/VRuXV64yTKnb1IjTAEEh3irzS+HkKjAOYLTGNb9pmVNntZ8iVBHcWDA2Dof0QtPgFI1BaTA==", "funding": [ { "type": "github", @@ -2326,7 +2075,7 @@ ], "license": "MIT", "dependencies": { - "@csstools/color-helpers": "^5.0.2", + "@csstools/color-helpers": "^5.1.0", "@csstools/css-calc": "^2.1.4" }, "engines": { @@ -2401,6 +2150,35 @@ "@csstools/css-tokenizer": "^3.0.4" } }, + "node_modules/@csstools/postcss-alpha-function": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@csstools/postcss-alpha-function/-/postcss-alpha-function-1.0.1.tgz", + "integrity": "sha512-isfLLwksH3yHkFXfCI2Gcaqg7wGGHZZwunoJzEZk0yKYIokgre6hYVFibKL3SYAoR1kBXova8LB+JoO5vZzi9w==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/css-color-parser": "^3.1.0", + "@csstools/css-parser-algorithms": "^3.0.5", + "@csstools/css-tokenizer": "^3.0.4", + "@csstools/postcss-progressive-custom-properties": "^4.2.1", + "@csstools/utilities": "^2.0.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, "node_modules/@csstools/postcss-cascade-layers": { "version": "5.0.2", "resolved": "https://registry.npmjs.org/@csstools/postcss-cascade-layers/-/postcss-cascade-layers-5.0.2.tgz", @@ -2450,9 +2228,9 @@ } }, "node_modules/@csstools/postcss-cascade-layers/node_modules/postcss-selector-parser": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.0.tgz", - "integrity": "sha512-8sLjZwK0R+JlxlYcTuVnyT2v+htpdrjDOKuMcOVdYjt52Lh8hWRYpxBPoKx/Zg+bcjc3wx6fmQevMmUztS/ccA==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.1.tgz", + "integrity": "sha512-orRsuYpJVw8LdAwqqLykBj9ecS5/cRHlI5+nvTo8LcCKmzDmqVORXtOIYEEQuL9D4BxtA1lm5isAqzQZCoQ6Eg==", "license": "MIT", "dependencies": { "cssesc": "^3.0.0", @@ -2463,9 +2241,38 @@ } }, "node_modules/@csstools/postcss-color-function": { - "version": "4.0.10", - "resolved": "https://registry.npmjs.org/@csstools/postcss-color-function/-/postcss-color-function-4.0.10.tgz", - "integrity": "sha512-4dY0NBu7NVIpzxZRgh/Q/0GPSz/jLSw0i/u3LTUor0BkQcz/fNhN10mSWBDsL0p9nDb0Ky1PD6/dcGbhACuFTQ==", + "version": "4.0.12", + "resolved": "https://registry.npmjs.org/@csstools/postcss-color-function/-/postcss-color-function-4.0.12.tgz", + "integrity": "sha512-yx3cljQKRaSBc2hfh8rMZFZzChaFgwmO2JfFgFr1vMcF3C/uyy5I4RFIBOIWGq1D+XbKCG789CGkG6zzkLpagA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/css-color-parser": "^3.1.0", + "@csstools/css-parser-algorithms": "^3.0.5", + "@csstools/css-tokenizer": "^3.0.4", + "@csstools/postcss-progressive-custom-properties": "^4.2.1", + "@csstools/utilities": "^2.0.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/@csstools/postcss-color-function-display-p3-linear": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@csstools/postcss-color-function-display-p3-linear/-/postcss-color-function-display-p3-linear-1.0.1.tgz", + "integrity": "sha512-E5qusdzhlmO1TztYzDIi8XPdPoYOjoTY6HBYBCYSj+Gn4gQRBlvjgPQXzfzuPQqt8EhkC/SzPKObg4Mbn8/xMg==", "funding": [ { "type": "github", @@ -2478,10 +2285,10 @@ ], "license": "MIT-0", "dependencies": { - "@csstools/css-color-parser": "^3.0.10", + "@csstools/css-color-parser": "^3.1.0", "@csstools/css-parser-algorithms": "^3.0.5", "@csstools/css-tokenizer": "^3.0.4", - "@csstools/postcss-progressive-custom-properties": "^4.1.0", + "@csstools/postcss-progressive-custom-properties": "^4.2.1", "@csstools/utilities": "^2.0.0" }, "engines": { @@ -2492,9 +2299,9 @@ } }, "node_modules/@csstools/postcss-color-mix-function": { - "version": "3.0.10", - "resolved": "https://registry.npmjs.org/@csstools/postcss-color-mix-function/-/postcss-color-mix-function-3.0.10.tgz", - "integrity": "sha512-P0lIbQW9I4ShE7uBgZRib/lMTf9XMjJkFl/d6w4EMNHu2qvQ6zljJGEcBkw/NsBtq/6q3WrmgxSS8kHtPMkK4Q==", + "version": "3.0.12", + "resolved": "https://registry.npmjs.org/@csstools/postcss-color-mix-function/-/postcss-color-mix-function-3.0.12.tgz", + "integrity": "sha512-4STERZfCP5Jcs13P1U5pTvI9SkgLgfMUMhdXW8IlJWkzOOOqhZIjcNhWtNJZes2nkBDsIKJ0CJtFtuaZ00moag==", "funding": [ { "type": "github", @@ -2507,10 +2314,10 @@ ], "license": "MIT-0", "dependencies": { - "@csstools/css-color-parser": "^3.0.10", + "@csstools/css-color-parser": "^3.1.0", "@csstools/css-parser-algorithms": "^3.0.5", "@csstools/css-tokenizer": "^3.0.4", - "@csstools/postcss-progressive-custom-properties": "^4.1.0", + "@csstools/postcss-progressive-custom-properties": "^4.2.1", "@csstools/utilities": "^2.0.0" }, "engines": { @@ -2521,9 +2328,9 @@ } }, "node_modules/@csstools/postcss-color-mix-variadic-function-arguments": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@csstools/postcss-color-mix-variadic-function-arguments/-/postcss-color-mix-variadic-function-arguments-1.0.0.tgz", - "integrity": "sha512-Z5WhouTyD74dPFPrVE7KydgNS9VvnjB8qcdes9ARpCOItb4jTnm7cHp4FhxCRUoyhabD0WVv43wbkJ4p8hLAlQ==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@csstools/postcss-color-mix-variadic-function-arguments/-/postcss-color-mix-variadic-function-arguments-1.0.2.tgz", + "integrity": "sha512-rM67Gp9lRAkTo+X31DUqMEq+iK+EFqsidfecmhrteErxJZb6tUoJBVQca1Vn1GpDql1s1rD1pKcuYzMsg7Z1KQ==", "funding": [ { "type": "github", @@ -2536,10 +2343,10 @@ ], "license": "MIT-0", "dependencies": { - "@csstools/css-color-parser": "^3.0.10", + "@csstools/css-color-parser": "^3.1.0", "@csstools/css-parser-algorithms": "^3.0.5", "@csstools/css-tokenizer": "^3.0.4", - "@csstools/postcss-progressive-custom-properties": "^4.1.0", + "@csstools/postcss-progressive-custom-properties": "^4.2.1", "@csstools/utilities": "^2.0.0" }, "engines": { @@ -2550,9 +2357,37 @@ } }, "node_modules/@csstools/postcss-content-alt-text": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/@csstools/postcss-content-alt-text/-/postcss-content-alt-text-2.0.6.tgz", - "integrity": "sha512-eRjLbOjblXq+byyaedQRSrAejKGNAFued+LcbzT+LCL78fabxHkxYjBbxkroONxHHYu2qxhFK2dBStTLPG3jpQ==", + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/@csstools/postcss-content-alt-text/-/postcss-content-alt-text-2.0.8.tgz", + "integrity": "sha512-9SfEW9QCxEpTlNMnpSqFaHyzsiRpZ5J5+KqCu1u5/eEJAWsMhzT40qf0FIbeeglEvrGRMdDzAxMIz3wqoGSb+Q==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/css-parser-algorithms": "^3.0.5", + "@csstools/css-tokenizer": "^3.0.4", + "@csstools/postcss-progressive-custom-properties": "^4.2.1", + "@csstools/utilities": "^2.0.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/@csstools/postcss-contrast-color-function": { + "version": "2.0.12", + "resolved": "https://registry.npmjs.org/@csstools/postcss-contrast-color-function/-/postcss-contrast-color-function-2.0.12.tgz", + "integrity": "sha512-YbwWckjK3qwKjeYz/CijgcS7WDUCtKTd8ShLztm3/i5dhh4NaqzsbYnhm4bjrpFpnLZ31jVcbK8YL77z3GBPzA==", "funding": [ { "type": "github", @@ -2565,9 +2400,10 @@ ], "license": "MIT-0", "dependencies": { + "@csstools/css-color-parser": "^3.1.0", "@csstools/css-parser-algorithms": "^3.0.5", "@csstools/css-tokenizer": "^3.0.4", - "@csstools/postcss-progressive-custom-properties": "^4.1.0", + "@csstools/postcss-progressive-custom-properties": "^4.2.1", "@csstools/utilities": "^2.0.0" }, "engines": { @@ -2631,9 +2467,9 @@ } }, "node_modules/@csstools/postcss-gamut-mapping": { - "version": "2.0.10", - "resolved": "https://registry.npmjs.org/@csstools/postcss-gamut-mapping/-/postcss-gamut-mapping-2.0.10.tgz", - "integrity": "sha512-QDGqhJlvFnDlaPAfCYPsnwVA6ze+8hhrwevYWlnUeSjkkZfBpcCO42SaUD8jiLlq7niouyLgvup5lh+f1qessg==", + "version": "2.0.11", + "resolved": "https://registry.npmjs.org/@csstools/postcss-gamut-mapping/-/postcss-gamut-mapping-2.0.11.tgz", + "integrity": "sha512-fCpCUgZNE2piVJKC76zFsgVW1apF6dpYsqGyH8SIeCcM4pTEsRTWTLCaJIMKFEundsCKwY1rwfhtrio04RJ4Dw==", "funding": [ { "type": "github", @@ -2646,7 +2482,7 @@ ], "license": "MIT-0", "dependencies": { - "@csstools/css-color-parser": "^3.0.10", + "@csstools/css-color-parser": "^3.1.0", "@csstools/css-parser-algorithms": "^3.0.5", "@csstools/css-tokenizer": "^3.0.4" }, @@ -2658,9 +2494,9 @@ } }, "node_modules/@csstools/postcss-gradients-interpolation-method": { - "version": "5.0.10", - "resolved": "https://registry.npmjs.org/@csstools/postcss-gradients-interpolation-method/-/postcss-gradients-interpolation-method-5.0.10.tgz", - "integrity": "sha512-HHPauB2k7Oits02tKFUeVFEU2ox/H3OQVrP3fSOKDxvloOikSal+3dzlyTZmYsb9FlY9p5EUpBtz0//XBmy+aw==", + "version": "5.0.12", + "resolved": "https://registry.npmjs.org/@csstools/postcss-gradients-interpolation-method/-/postcss-gradients-interpolation-method-5.0.12.tgz", + "integrity": "sha512-jugzjwkUY0wtNrZlFeyXzimUL3hN4xMvoPnIXxoZqxDvjZRiSh+itgHcVUWzJ2VwD/VAMEgCLvtaJHX+4Vj3Ow==", "funding": [ { "type": "github", @@ -2673,10 +2509,10 @@ ], "license": "MIT-0", "dependencies": { - "@csstools/css-color-parser": "^3.0.10", + "@csstools/css-color-parser": "^3.1.0", "@csstools/css-parser-algorithms": "^3.0.5", "@csstools/css-tokenizer": "^3.0.4", - "@csstools/postcss-progressive-custom-properties": "^4.1.0", + "@csstools/postcss-progressive-custom-properties": "^4.2.1", "@csstools/utilities": "^2.0.0" }, "engines": { @@ -2687,9 +2523,9 @@ } }, "node_modules/@csstools/postcss-hwb-function": { - "version": "4.0.10", - "resolved": "https://registry.npmjs.org/@csstools/postcss-hwb-function/-/postcss-hwb-function-4.0.10.tgz", - "integrity": "sha512-nOKKfp14SWcdEQ++S9/4TgRKchooLZL0TUFdun3nI4KPwCjETmhjta1QT4ICQcGVWQTvrsgMM/aLB5We+kMHhQ==", + "version": "4.0.12", + "resolved": "https://registry.npmjs.org/@csstools/postcss-hwb-function/-/postcss-hwb-function-4.0.12.tgz", + "integrity": "sha512-mL/+88Z53KrE4JdePYFJAQWFrcADEqsLprExCM04GDNgHIztwFzj0Mbhd/yxMBngq0NIlz58VVxjt5abNs1VhA==", "funding": [ { "type": "github", @@ -2702,10 +2538,10 @@ ], "license": "MIT-0", "dependencies": { - "@csstools/css-color-parser": "^3.0.10", + "@csstools/css-color-parser": "^3.1.0", "@csstools/css-parser-algorithms": "^3.0.5", "@csstools/css-tokenizer": "^3.0.4", - "@csstools/postcss-progressive-custom-properties": "^4.1.0", + "@csstools/postcss-progressive-custom-properties": "^4.2.1", "@csstools/utilities": "^2.0.0" }, "engines": { @@ -2716,9 +2552,9 @@ } }, "node_modules/@csstools/postcss-ic-unit": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@csstools/postcss-ic-unit/-/postcss-ic-unit-4.0.2.tgz", - "integrity": "sha512-lrK2jjyZwh7DbxaNnIUjkeDmU8Y6KyzRBk91ZkI5h8nb1ykEfZrtIVArdIjX4DHMIBGpdHrgP0n4qXDr7OHaKA==", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/@csstools/postcss-ic-unit/-/postcss-ic-unit-4.0.4.tgz", + "integrity": "sha512-yQ4VmossuOAql65sCPppVO1yfb7hDscf4GseF0VCA/DTDaBc0Wtf8MTqVPfjGYlT5+2buokG0Gp7y0atYZpwjg==", "funding": [ { "type": "github", @@ -2731,7 +2567,7 @@ ], "license": "MIT-0", "dependencies": { - "@csstools/postcss-progressive-custom-properties": "^4.1.0", + "@csstools/postcss-progressive-custom-properties": "^4.2.1", "@csstools/utilities": "^2.0.0", "postcss-value-parser": "^4.2.0" }, @@ -2813,9 +2649,9 @@ } }, "node_modules/@csstools/postcss-is-pseudo-class/node_modules/postcss-selector-parser": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.0.tgz", - "integrity": "sha512-8sLjZwK0R+JlxlYcTuVnyT2v+htpdrjDOKuMcOVdYjt52Lh8hWRYpxBPoKx/Zg+bcjc3wx6fmQevMmUztS/ccA==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.1.tgz", + "integrity": "sha512-orRsuYpJVw8LdAwqqLykBj9ecS5/cRHlI5+nvTo8LcCKmzDmqVORXtOIYEEQuL9D4BxtA1lm5isAqzQZCoQ6Eg==", "license": "MIT", "dependencies": { "cssesc": "^3.0.0", @@ -2826,9 +2662,9 @@ } }, "node_modules/@csstools/postcss-light-dark-function": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/@csstools/postcss-light-dark-function/-/postcss-light-dark-function-2.0.9.tgz", - "integrity": "sha512-1tCZH5bla0EAkFAI2r0H33CDnIBeLUaJh1p+hvvsylJ4svsv2wOmJjJn+OXwUZLXef37GYbRIVKX+X+g6m+3CQ==", + "version": "2.0.11", + "resolved": "https://registry.npmjs.org/@csstools/postcss-light-dark-function/-/postcss-light-dark-function-2.0.11.tgz", + "integrity": "sha512-fNJcKXJdPM3Lyrbmgw2OBbaioU7yuKZtiXClf4sGdQttitijYlZMD5K7HrC/eF83VRWRrYq6OZ0Lx92leV2LFA==", "funding": [ { "type": "github", @@ -2843,7 +2679,7 @@ "dependencies": { "@csstools/css-parser-algorithms": "^3.0.5", "@csstools/css-tokenizer": "^3.0.4", - "@csstools/postcss-progressive-custom-properties": "^4.1.0", + "@csstools/postcss-progressive-custom-properties": "^4.2.1", "@csstools/utilities": "^2.0.0" }, "engines": { @@ -3052,9 +2888,9 @@ } }, "node_modules/@csstools/postcss-normalize-display-values": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@csstools/postcss-normalize-display-values/-/postcss-normalize-display-values-4.0.0.tgz", - "integrity": "sha512-HlEoG0IDRoHXzXnkV4in47dzsxdsjdz6+j7MLjaACABX2NfvjFS6XVAnpaDyGesz9gK2SC7MbNwdCHusObKJ9Q==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@csstools/postcss-normalize-display-values/-/postcss-normalize-display-values-4.0.1.tgz", + "integrity": "sha512-TQUGBuRvxdc7TgNSTevYqrL8oItxiwPDixk20qCB5me/W8uF7BPbhRrAvFuhEoywQp/woRsUZ6SJ+sU5idZAIA==", "funding": [ { "type": "github", @@ -3077,9 +2913,9 @@ } }, "node_modules/@csstools/postcss-oklab-function": { - "version": "4.0.10", - "resolved": "https://registry.npmjs.org/@csstools/postcss-oklab-function/-/postcss-oklab-function-4.0.10.tgz", - "integrity": "sha512-ZzZUTDd0fgNdhv8UUjGCtObPD8LYxMH+MJsW9xlZaWTV8Ppr4PtxlHYNMmF4vVWGl0T6f8tyWAKjoI6vePSgAg==", + "version": "4.0.12", + "resolved": "https://registry.npmjs.org/@csstools/postcss-oklab-function/-/postcss-oklab-function-4.0.12.tgz", + "integrity": "sha512-HhlSmnE1NKBhXsTnNGjxvhryKtO7tJd1w42DKOGFD6jSHtYOrsJTQDKPMwvOfrzUAk8t7GcpIfRyM7ssqHpFjg==", "funding": [ { "type": "github", @@ -3092,10 +2928,10 @@ ], "license": "MIT-0", "dependencies": { - "@csstools/css-color-parser": "^3.0.10", + "@csstools/css-color-parser": "^3.1.0", "@csstools/css-parser-algorithms": "^3.0.5", "@csstools/css-tokenizer": "^3.0.4", - "@csstools/postcss-progressive-custom-properties": "^4.1.0", + "@csstools/postcss-progressive-custom-properties": "^4.2.1", "@csstools/utilities": "^2.0.0" }, "engines": { @@ -3105,10 +2941,32 @@ "postcss": "^8.4" } }, + "node_modules/@csstools/postcss-position-area-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@csstools/postcss-position-area-property/-/postcss-position-area-property-1.0.0.tgz", + "integrity": "sha512-fUP6KR8qV2NuUZV3Cw8itx0Ep90aRjAZxAEzC3vrl6yjFv+pFsQbR18UuQctEKmA72K9O27CoYiKEgXxkqjg8Q==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, "node_modules/@csstools/postcss-progressive-custom-properties": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@csstools/postcss-progressive-custom-properties/-/postcss-progressive-custom-properties-4.1.0.tgz", - "integrity": "sha512-YrkI9dx8U4R8Sz2EJaoeD9fI7s7kmeEBfmO+UURNeL6lQI7VxF6sBE+rSqdCBn4onwqmxFdBU3lTwyYb/lCmxA==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/@csstools/postcss-progressive-custom-properties/-/postcss-progressive-custom-properties-4.2.1.tgz", + "integrity": "sha512-uPiiXf7IEKtUQXsxu6uWtOlRMXd2QWWy5fhxHDnPdXKCQckPP3E34ZgDoZ62r2iT+UOgWsSbM4NvHE5m3mAEdw==", "funding": [ { "type": "github", @@ -3130,6 +2988,32 @@ "postcss": "^8.4" } }, + "node_modules/@csstools/postcss-property-rule-prelude-list": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@csstools/postcss-property-rule-prelude-list/-/postcss-property-rule-prelude-list-1.0.0.tgz", + "integrity": "sha512-IxuQjUXq19fobgmSSvUDO7fVwijDJaZMvWQugxfEUxmjBeDCVaDuMpsZ31MsTm5xbnhA+ElDi0+rQ7sQQGisFA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/css-parser-algorithms": "^3.0.5", + "@csstools/css-tokenizer": "^3.0.4" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, "node_modules/@csstools/postcss-random-function": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/@csstools/postcss-random-function/-/postcss-random-function-2.0.1.tgz", @@ -3158,9 +3042,9 @@ } }, "node_modules/@csstools/postcss-relative-color-syntax": { - "version": "3.0.10", - "resolved": "https://registry.npmjs.org/@csstools/postcss-relative-color-syntax/-/postcss-relative-color-syntax-3.0.10.tgz", - "integrity": "sha512-8+0kQbQGg9yYG8hv0dtEpOMLwB9M+P7PhacgIzVzJpixxV4Eq9AUQtQw8adMmAJU1RBBmIlpmtmm3XTRd/T00g==", + "version": "3.0.12", + "resolved": "https://registry.npmjs.org/@csstools/postcss-relative-color-syntax/-/postcss-relative-color-syntax-3.0.12.tgz", + "integrity": "sha512-0RLIeONxu/mtxRtf3o41Lq2ghLimw0w9ByLWnnEVuy89exmEEq8bynveBxNW3nyHqLAFEeNtVEmC1QK9MZ8Huw==", "funding": [ { "type": "github", @@ -3173,10 +3057,10 @@ ], "license": "MIT-0", "dependencies": { - "@csstools/css-color-parser": "^3.0.10", + "@csstools/css-color-parser": "^3.1.0", "@csstools/css-parser-algorithms": "^3.0.5", "@csstools/css-tokenizer": "^3.0.4", - "@csstools/postcss-progressive-custom-properties": "^4.1.0", + "@csstools/postcss-progressive-custom-properties": "^4.2.1", "@csstools/utilities": "^2.0.0" }, "engines": { @@ -3212,9 +3096,9 @@ } }, "node_modules/@csstools/postcss-scope-pseudo-class/node_modules/postcss-selector-parser": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.0.tgz", - "integrity": "sha512-8sLjZwK0R+JlxlYcTuVnyT2v+htpdrjDOKuMcOVdYjt52Lh8hWRYpxBPoKx/Zg+bcjc3wx6fmQevMmUztS/ccA==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.1.tgz", + "integrity": "sha512-orRsuYpJVw8LdAwqqLykBj9ecS5/cRHlI5+nvTo8LcCKmzDmqVORXtOIYEEQuL9D4BxtA1lm5isAqzQZCoQ6Eg==", "license": "MIT", "dependencies": { "cssesc": "^3.0.0", @@ -3278,10 +3162,61 @@ "postcss": "^8.4" } }, + "node_modules/@csstools/postcss-syntax-descriptor-syntax-production": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@csstools/postcss-syntax-descriptor-syntax-production/-/postcss-syntax-descriptor-syntax-production-1.0.1.tgz", + "integrity": "sha512-GneqQWefjM//f4hJ/Kbox0C6f2T7+pi4/fqTqOFGTL3EjnvOReTqO1qUQ30CaUjkwjYq9qZ41hzarrAxCc4gow==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/css-tokenizer": "^3.0.4" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/@csstools/postcss-system-ui-font-family": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@csstools/postcss-system-ui-font-family/-/postcss-system-ui-font-family-1.0.0.tgz", + "integrity": "sha512-s3xdBvfWYfoPSBsikDXbuorcMG1nN1M6GdU0qBsGfcmNR0A/qhloQZpTxjA3Xsyrk1VJvwb2pOfiOT3at/DuIQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/css-parser-algorithms": "^3.0.5", + "@csstools/css-tokenizer": "^3.0.4" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, "node_modules/@csstools/postcss-text-decoration-shorthand": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@csstools/postcss-text-decoration-shorthand/-/postcss-text-decoration-shorthand-4.0.2.tgz", - "integrity": "sha512-8XvCRrFNseBSAGxeaVTaNijAu+FzUvjwFXtcrynmazGb/9WUdsPCpBX+mHEHShVRq47Gy4peYAoxYs8ltUnmzA==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@csstools/postcss-text-decoration-shorthand/-/postcss-text-decoration-shorthand-4.0.3.tgz", + "integrity": "sha512-KSkGgZfx0kQjRIYnpsD7X2Om9BUXX/Kii77VBifQW9Ih929hK0KNjVngHDH0bFB9GmfWcR9vJYJJRvw/NQjkrA==", "funding": [ { "type": "github", @@ -3294,7 +3229,7 @@ ], "license": "MIT-0", "dependencies": { - "@csstools/color-helpers": "^5.0.2", + "@csstools/color-helpers": "^5.1.0", "postcss-value-parser": "^4.2.0" }, "engines": { @@ -3384,22 +3319,43 @@ "node": ">=10.0.0" } }, - "node_modules/@docsearch/css": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/@docsearch/css/-/css-3.9.0.tgz", - "integrity": "sha512-cQbnVbq0rrBwNAKegIac/t6a8nWoUAn8frnkLFW6YARaRmAQr5/Eoe6Ln2fqkUCZ40KpdrKbpSAmgrkviOxuWA==", - "license": "MIT" - }, - "node_modules/@docsearch/react": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/@docsearch/react/-/react-3.9.0.tgz", - "integrity": "sha512-mb5FOZYZIkRQ6s/NWnM98k879vu5pscWqTLubLFBO87igYYT4VzVazh4h5o/zCvTIZgEt3PvsCOMOswOUo9yHQ==", + "node_modules/@docsearch/core": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/@docsearch/core/-/core-4.5.4.tgz", + "integrity": "sha512-DbkfZbJyYAPFJtF71eAFOTQSy5z5c/hdSN0UrErORKDwXKLTJBR0c+5WxE5l+IKZx4xIaEa8RkrL7T28DTCOYw==", + "license": "MIT", + "peerDependencies": { + "@types/react": ">= 16.8.0 < 20.0.0", + "react": ">= 16.8.0 < 20.0.0", + "react-dom": ">= 16.8.0 < 20.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "react": { + "optional": true + }, + "react-dom": { + "optional": true + } + } + }, + "node_modules/@docsearch/css": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/@docsearch/css/-/css-4.5.4.tgz", + "integrity": "sha512-gzO4DJwyM9c4YEPHwaLV1nUCDC2N6yoh0QJj44dce2rcfN71mB+jpu3+F+Y/KMDF1EKV0C3m54leSWsraE94xg==", + "license": "MIT" + }, + "node_modules/@docsearch/react": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/@docsearch/react/-/react-4.5.4.tgz", + "integrity": "sha512-iBNFfvWoUFRUJmGQ/r+0AEp2OJgJMoYIKRiRcTDON0hObBRSLlrv2ktb7w3nc1MeNm1JIpbPA99i59TiIR49fA==", "license": "MIT", "dependencies": { - "@algolia/autocomplete-core": "1.17.9", - "@algolia/autocomplete-preset-algolia": "1.17.9", - "@docsearch/css": "3.9.0", - "algoliasearch": "^5.14.2" + "@algolia/autocomplete-core": "1.19.2", + "@docsearch/core": "4.5.4", + "@docsearch/css": "4.5.4" }, "peerDependencies": { "@types/react": ">= 16.8.0 < 20.0.0", @@ -3423,9 +3379,9 @@ } }, "node_modules/@docusaurus/babel": { - "version": "3.8.1", - "resolved": "https://registry.npmjs.org/@docusaurus/babel/-/babel-3.8.1.tgz", - "integrity": "sha512-3brkJrml8vUbn9aeoZUlJfsI/GqyFcDgQJwQkmBtclJgWDEQBKKeagZfOgx0WfUQhagL1sQLNW0iBdxnI863Uw==", + "version": "3.9.2", + "resolved": "https://registry.npmjs.org/@docusaurus/babel/-/babel-3.9.2.tgz", + "integrity": "sha512-GEANdi/SgER+L7Japs25YiGil/AUDnFFHaCGPBbundxoWtCkA2lmy7/tFmgED4y1htAy6Oi4wkJEQdGssnw9MA==", "license": "MIT", "dependencies": { "@babel/core": "^7.25.9", @@ -3438,28 +3394,28 @@ "@babel/runtime": "^7.25.9", "@babel/runtime-corejs3": "^7.25.9", "@babel/traverse": "^7.25.9", - "@docusaurus/logger": "3.8.1", - "@docusaurus/utils": "3.8.1", + "@docusaurus/logger": "3.9.2", + "@docusaurus/utils": "3.9.2", "babel-plugin-dynamic-import-node": "^2.3.3", "fs-extra": "^11.1.1", "tslib": "^2.6.0" }, "engines": { - "node": ">=18.0" + "node": ">=20.0" } }, "node_modules/@docusaurus/bundler": { - "version": "3.8.1", - "resolved": "https://registry.npmjs.org/@docusaurus/bundler/-/bundler-3.8.1.tgz", - "integrity": "sha512-/z4V0FRoQ0GuSLToNjOSGsk6m2lQUG4FRn8goOVoZSRsTrU8YR2aJacX5K3RG18EaX9b+52pN4m1sL3MQZVsQA==", + "version": "3.9.2", + "resolved": "https://registry.npmjs.org/@docusaurus/bundler/-/bundler-3.9.2.tgz", + "integrity": "sha512-ZOVi6GYgTcsZcUzjblpzk3wH1Fya2VNpd5jtHoCCFcJlMQ1EYXZetfAnRHLcyiFeBABaI1ltTYbOBtH/gahGVA==", "license": "MIT", "dependencies": { "@babel/core": "^7.25.9", - "@docusaurus/babel": "3.8.1", - "@docusaurus/cssnano-preset": "3.8.1", - "@docusaurus/logger": "3.8.1", - "@docusaurus/types": "3.8.1", - "@docusaurus/utils": "3.8.1", + "@docusaurus/babel": "3.9.2", + "@docusaurus/cssnano-preset": "3.9.2", + "@docusaurus/logger": "3.9.2", + "@docusaurus/types": "3.9.2", + "@docusaurus/utils": "3.9.2", "babel-loader": "^9.2.1", "clean-css": "^5.3.3", "copy-webpack-plugin": "^11.0.0", @@ -3480,7 +3436,7 @@ "webpackbar": "^6.0.1" }, "engines": { - "node": ">=18.0" + "node": ">=20.0" }, "peerDependencies": { "@docusaurus/faster": "*" @@ -3492,18 +3448,18 @@ } }, "node_modules/@docusaurus/core": { - "version": "3.8.1", - "resolved": "https://registry.npmjs.org/@docusaurus/core/-/core-3.8.1.tgz", - "integrity": "sha512-ENB01IyQSqI2FLtOzqSI3qxG2B/jP4gQPahl2C3XReiLebcVh5B5cB9KYFvdoOqOWPyr5gXK4sjgTKv7peXCrA==", - "license": "MIT", - "dependencies": { - "@docusaurus/babel": "3.8.1", - "@docusaurus/bundler": "3.8.1", - "@docusaurus/logger": "3.8.1", - "@docusaurus/mdx-loader": "3.8.1", - "@docusaurus/utils": "3.8.1", - "@docusaurus/utils-common": "3.8.1", - "@docusaurus/utils-validation": "3.8.1", + "version": "3.9.2", + "resolved": "https://registry.npmjs.org/@docusaurus/core/-/core-3.9.2.tgz", + "integrity": "sha512-HbjwKeC+pHUFBfLMNzuSjqFE/58+rLVKmOU3lxQrpsxLBOGosYco/Q0GduBb0/jEMRiyEqjNT/01rRdOMWq5pw==", + "license": "MIT", + "dependencies": { + "@docusaurus/babel": "3.9.2", + "@docusaurus/bundler": "3.9.2", + "@docusaurus/logger": "3.9.2", + "@docusaurus/mdx-loader": "3.9.2", + "@docusaurus/utils": "3.9.2", + "@docusaurus/utils-common": "3.9.2", + "@docusaurus/utils-validation": "3.9.2", "boxen": "^6.2.1", "chalk": "^4.1.2", "chokidar": "^3.5.3", @@ -3537,14 +3493,14 @@ "update-notifier": "^6.0.2", "webpack": "^5.95.0", "webpack-bundle-analyzer": "^4.10.2", - "webpack-dev-server": "^4.15.2", + "webpack-dev-server": "^5.2.2", "webpack-merge": "^6.0.1" }, "bin": { "docusaurus": "bin/docusaurus.mjs" }, "engines": { - "node": ">=18.0" + "node": ">=20.0" }, "peerDependencies": { "@mdx-js/react": "^3.0.0", @@ -3553,9 +3509,9 @@ } }, "node_modules/@docusaurus/cssnano-preset": { - "version": "3.8.1", - "resolved": "https://registry.npmjs.org/@docusaurus/cssnano-preset/-/cssnano-preset-3.8.1.tgz", - "integrity": "sha512-G7WyR2N6SpyUotqhGznERBK+x84uyhfMQM2MmDLs88bw4Flom6TY46HzkRkSEzaP9j80MbTN8naiL1fR17WQug==", + "version": "3.9.2", + "resolved": "https://registry.npmjs.org/@docusaurus/cssnano-preset/-/cssnano-preset-3.9.2.tgz", + "integrity": "sha512-8gBKup94aGttRduABsj7bpPFTX7kbwu+xh3K9NMCF5K4bWBqTFYW+REKHF6iBVDHRJ4grZdIPbvkiHd/XNKRMQ==", "license": "MIT", "dependencies": { "cssnano-preset-advanced": "^6.1.2", @@ -3564,31 +3520,54 @@ "tslib": "^2.6.0" }, "engines": { - "node": ">=18.0" + "node": ">=20.0" + } + }, + "node_modules/@docusaurus/faster": { + "version": "3.9.2", + "resolved": "https://registry.npmjs.org/@docusaurus/faster/-/faster-3.9.2.tgz", + "integrity": "sha512-DEVIwhbrZZ4ir31X+qQNEQqDWkgCJUV6kiPPAd2MGTY8n5/n0c4B8qA5k1ipF2izwH00JEf0h6Daaut71zzkyw==", + "license": "MIT", + "dependencies": { + "@docusaurus/types": "3.9.2", + "@rspack/core": "^1.5.0", + "@swc/core": "^1.7.39", + "@swc/html": "^1.13.5", + "browserslist": "^4.24.2", + "lightningcss": "^1.27.0", + "swc-loader": "^0.2.6", + "tslib": "^2.6.0", + "webpack": "^5.95.0" + }, + "engines": { + "node": ">=20.0" + }, + "peerDependencies": { + "@docusaurus/types": "*" } }, "node_modules/@docusaurus/logger": { - "version": "3.8.1", - "resolved": "https://registry.npmjs.org/@docusaurus/logger/-/logger-3.8.1.tgz", - "integrity": "sha512-2wjeGDhKcExEmjX8k1N/MRDiPKXGF2Pg+df/bDDPnnJWHXnVEZxXj80d6jcxp1Gpnksl0hF8t/ZQw9elqj2+ww==", + "version": "3.9.2", + "resolved": "https://registry.npmjs.org/@docusaurus/logger/-/logger-3.9.2.tgz", + "integrity": "sha512-/SVCc57ByARzGSU60c50rMyQlBuMIJCjcsJlkphxY6B0GV4UH3tcA1994N8fFfbJ9kX3jIBe/xg3XP5qBtGDbA==", "license": "MIT", "dependencies": { "chalk": "^4.1.2", "tslib": "^2.6.0" }, "engines": { - "node": ">=18.0" + "node": ">=20.0" } }, "node_modules/@docusaurus/mdx-loader": { - "version": "3.8.1", - "resolved": "https://registry.npmjs.org/@docusaurus/mdx-loader/-/mdx-loader-3.8.1.tgz", - "integrity": "sha512-DZRhagSFRcEq1cUtBMo4TKxSNo/W6/s44yhr8X+eoXqCLycFQUylebOMPseHi5tc4fkGJqwqpWJLz6JStU9L4w==", + "version": "3.9.2", + "resolved": "https://registry.npmjs.org/@docusaurus/mdx-loader/-/mdx-loader-3.9.2.tgz", + "integrity": "sha512-wiYoGwF9gdd6rev62xDU8AAM8JuLI/hlwOtCzMmYcspEkzecKrP8J8X+KpYnTlACBUUtXNJpSoCwFWJhLRevzQ==", "license": "MIT", "dependencies": { - "@docusaurus/logger": "3.8.1", - "@docusaurus/utils": "3.8.1", - "@docusaurus/utils-validation": "3.8.1", + "@docusaurus/logger": "3.9.2", + "@docusaurus/utils": "3.9.2", + "@docusaurus/utils-validation": "3.9.2", "@mdx-js/mdx": "^3.0.0", "@slorber/remark-comment": "^1.0.0", "escape-html": "^1.0.3", @@ -3612,7 +3591,7 @@ "webpack": "^5.88.1" }, "engines": { - "node": ">=18.0" + "node": ">=20.0" }, "peerDependencies": { "react": "^18.0.0 || ^19.0.0", @@ -3620,12 +3599,12 @@ } }, "node_modules/@docusaurus/module-type-aliases": { - "version": "3.8.1", - "resolved": "https://registry.npmjs.org/@docusaurus/module-type-aliases/-/module-type-aliases-3.8.1.tgz", - "integrity": "sha512-6xhvAJiXzsaq3JdosS7wbRt/PwEPWHr9eM4YNYqVlbgG1hSK3uQDXTVvQktasp3VO6BmfYWPozueLWuj4gB+vg==", + "version": "3.9.2", + "resolved": "https://registry.npmjs.org/@docusaurus/module-type-aliases/-/module-type-aliases-3.9.2.tgz", + "integrity": "sha512-8qVe2QA9hVLzvnxP46ysuofJUIc/yYQ82tvA/rBTrnpXtCjNSFLxEZfd5U8cYZuJIVlkPxamsIgwd5tGZXfvew==", "license": "MIT", "dependencies": { - "@docusaurus/types": "3.8.1", + "@docusaurus/types": "3.9.2", "@types/history": "^4.7.11", "@types/react": "*", "@types/react-router-config": "*", @@ -3639,19 +3618,19 @@ } }, "node_modules/@docusaurus/plugin-content-blog": { - "version": "3.8.1", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-blog/-/plugin-content-blog-3.8.1.tgz", - "integrity": "sha512-vNTpMmlvNP9n3hGEcgPaXyvTljanAKIUkuG9URQ1DeuDup0OR7Ltvoc8yrmH+iMZJbcQGhUJF+WjHLwuk8HSdw==", - "license": "MIT", - "dependencies": { - "@docusaurus/core": "3.8.1", - "@docusaurus/logger": "3.8.1", - "@docusaurus/mdx-loader": "3.8.1", - "@docusaurus/theme-common": "3.8.1", - "@docusaurus/types": "3.8.1", - "@docusaurus/utils": "3.8.1", - "@docusaurus/utils-common": "3.8.1", - "@docusaurus/utils-validation": "3.8.1", + "version": "3.9.2", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-blog/-/plugin-content-blog-3.9.2.tgz", + "integrity": "sha512-3I2HXy3L1QcjLJLGAoTvoBnpOwa6DPUa3Q0dMK19UTY9mhPkKQg/DYhAGTiBUKcTR0f08iw7kLPqOhIgdV3eVQ==", + "license": "MIT", + "dependencies": { + "@docusaurus/core": "3.9.2", + "@docusaurus/logger": "3.9.2", + "@docusaurus/mdx-loader": "3.9.2", + "@docusaurus/theme-common": "3.9.2", + "@docusaurus/types": "3.9.2", + "@docusaurus/utils": "3.9.2", + "@docusaurus/utils-common": "3.9.2", + "@docusaurus/utils-validation": "3.9.2", "cheerio": "1.0.0-rc.12", "feed": "^4.2.2", "fs-extra": "^11.1.1", @@ -3664,7 +3643,7 @@ "webpack": "^5.88.1" }, "engines": { - "node": ">=18.0" + "node": ">=20.0" }, "peerDependencies": { "@docusaurus/plugin-content-docs": "*", @@ -3673,20 +3652,20 @@ } }, "node_modules/@docusaurus/plugin-content-docs": { - "version": "3.8.1", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-docs/-/plugin-content-docs-3.8.1.tgz", - "integrity": "sha512-oByRkSZzeGNQByCMaX+kif5Nl2vmtj2IHQI2fWjCfCootsdKZDPFLonhIp5s3IGJO7PLUfe0POyw0Xh/RrGXJA==", - "license": "MIT", - "dependencies": { - "@docusaurus/core": "3.8.1", - "@docusaurus/logger": "3.8.1", - "@docusaurus/mdx-loader": "3.8.1", - "@docusaurus/module-type-aliases": "3.8.1", - "@docusaurus/theme-common": "3.8.1", - "@docusaurus/types": "3.8.1", - "@docusaurus/utils": "3.8.1", - "@docusaurus/utils-common": "3.8.1", - "@docusaurus/utils-validation": "3.8.1", + "version": "3.9.2", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-docs/-/plugin-content-docs-3.9.2.tgz", + "integrity": "sha512-C5wZsGuKTY8jEYsqdxhhFOe1ZDjH0uIYJ9T/jebHwkyxqnr4wW0jTkB72OMqNjsoQRcb0JN3PcSeTwFlVgzCZg==", + "license": "MIT", + "dependencies": { + "@docusaurus/core": "3.9.2", + "@docusaurus/logger": "3.9.2", + "@docusaurus/mdx-loader": "3.9.2", + "@docusaurus/module-type-aliases": "3.9.2", + "@docusaurus/theme-common": "3.9.2", + "@docusaurus/types": "3.9.2", + "@docusaurus/utils": "3.9.2", + "@docusaurus/utils-common": "3.9.2", + "@docusaurus/utils-validation": "3.9.2", "@types/react-router-config": "^5.0.7", "combine-promises": "^1.1.0", "fs-extra": "^11.1.1", @@ -3698,7 +3677,7 @@ "webpack": "^5.88.1" }, "engines": { - "node": ">=18.0" + "node": ">=20.0" }, "peerDependencies": { "react": "^18.0.0 || ^19.0.0", @@ -3706,22 +3685,22 @@ } }, "node_modules/@docusaurus/plugin-content-pages": { - "version": "3.8.1", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-pages/-/plugin-content-pages-3.8.1.tgz", - "integrity": "sha512-a+V6MS2cIu37E/m7nDJn3dcxpvXb6TvgdNI22vJX8iUTp8eoMoPa0VArEbWvCxMY/xdC26WzNv4wZ6y0iIni/w==", + "version": "3.9.2", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-pages/-/plugin-content-pages-3.9.2.tgz", + "integrity": "sha512-s4849w/p4noXUrGpPUF0BPqIAfdAe76BLaRGAGKZ1gTDNiGxGcpsLcwJ9OTi1/V8A+AzvsmI9pkjie2zjIQZKA==", "license": "MIT", "dependencies": { - "@docusaurus/core": "3.8.1", - "@docusaurus/mdx-loader": "3.8.1", - "@docusaurus/types": "3.8.1", - "@docusaurus/utils": "3.8.1", - "@docusaurus/utils-validation": "3.8.1", + "@docusaurus/core": "3.9.2", + "@docusaurus/mdx-loader": "3.9.2", + "@docusaurus/types": "3.9.2", + "@docusaurus/utils": "3.9.2", + "@docusaurus/utils-validation": "3.9.2", "fs-extra": "^11.1.1", "tslib": "^2.6.0", "webpack": "^5.88.1" }, "engines": { - "node": ">=18.0" + "node": ">=20.0" }, "peerDependencies": { "react": "^18.0.0 || ^19.0.0", @@ -3729,36 +3708,36 @@ } }, "node_modules/@docusaurus/plugin-css-cascade-layers": { - "version": "3.8.1", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-css-cascade-layers/-/plugin-css-cascade-layers-3.8.1.tgz", - "integrity": "sha512-VQ47xRxfNKjHS5ItzaVXpxeTm7/wJLFMOPo1BkmoMG4Cuz4nuI+Hs62+RMk1OqVog68Swz66xVPK8g9XTrBKRw==", + "version": "3.9.2", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-css-cascade-layers/-/plugin-css-cascade-layers-3.9.2.tgz", + "integrity": "sha512-w1s3+Ss+eOQbscGM4cfIFBlVg/QKxyYgj26k5AnakuHkKxH6004ZtuLe5awMBotIYF2bbGDoDhpgQ4r/kcj4rQ==", "license": "MIT", "dependencies": { - "@docusaurus/core": "3.8.1", - "@docusaurus/types": "3.8.1", - "@docusaurus/utils": "3.8.1", - "@docusaurus/utils-validation": "3.8.1", + "@docusaurus/core": "3.9.2", + "@docusaurus/types": "3.9.2", + "@docusaurus/utils": "3.9.2", + "@docusaurus/utils-validation": "3.9.2", "tslib": "^2.6.0" }, "engines": { - "node": ">=18.0" + "node": ">=20.0" } }, "node_modules/@docusaurus/plugin-debug": { - "version": "3.8.1", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-debug/-/plugin-debug-3.8.1.tgz", - "integrity": "sha512-nT3lN7TV5bi5hKMB7FK8gCffFTBSsBsAfV84/v293qAmnHOyg1nr9okEw8AiwcO3bl9vije5nsUvP0aRl2lpaw==", + "version": "3.9.2", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-debug/-/plugin-debug-3.9.2.tgz", + "integrity": "sha512-j7a5hWuAFxyQAkilZwhsQ/b3T7FfHZ+0dub6j/GxKNFJp2h9qk/P1Bp7vrGASnvA9KNQBBL1ZXTe7jlh4VdPdA==", "license": "MIT", "dependencies": { - "@docusaurus/core": "3.8.1", - "@docusaurus/types": "3.8.1", - "@docusaurus/utils": "3.8.1", + "@docusaurus/core": "3.9.2", + "@docusaurus/types": "3.9.2", + "@docusaurus/utils": "3.9.2", "fs-extra": "^11.1.1", "react-json-view-lite": "^2.3.0", "tslib": "^2.6.0" }, "engines": { - "node": ">=18.0" + "node": ">=20.0" }, "peerDependencies": { "react": "^18.0.0 || ^19.0.0", @@ -3766,18 +3745,18 @@ } }, "node_modules/@docusaurus/plugin-google-analytics": { - "version": "3.8.1", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-analytics/-/plugin-google-analytics-3.8.1.tgz", - "integrity": "sha512-Hrb/PurOJsmwHAsfMDH6oVpahkEGsx7F8CWMjyP/dw1qjqmdS9rcV1nYCGlM8nOtD3Wk/eaThzUB5TSZsGz+7Q==", + "version": "3.9.2", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-analytics/-/plugin-google-analytics-3.9.2.tgz", + "integrity": "sha512-mAwwQJ1Us9jL/lVjXtErXto4p4/iaLlweC54yDUK1a97WfkC6Z2k5/769JsFgwOwOP+n5mUQGACXOEQ0XDuVUw==", "license": "MIT", "dependencies": { - "@docusaurus/core": "3.8.1", - "@docusaurus/types": "3.8.1", - "@docusaurus/utils-validation": "3.8.1", + "@docusaurus/core": "3.9.2", + "@docusaurus/types": "3.9.2", + "@docusaurus/utils-validation": "3.9.2", "tslib": "^2.6.0" }, "engines": { - "node": ">=18.0" + "node": ">=20.0" }, "peerDependencies": { "react": "^18.0.0 || ^19.0.0", @@ -3785,19 +3764,19 @@ } }, "node_modules/@docusaurus/plugin-google-gtag": { - "version": "3.8.1", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-gtag/-/plugin-google-gtag-3.8.1.tgz", - "integrity": "sha512-tKE8j1cEZCh8KZa4aa80zpSTxsC2/ZYqjx6AAfd8uA8VHZVw79+7OTEP2PoWi0uL5/1Is0LF5Vwxd+1fz5HlKg==", + "version": "3.9.2", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-gtag/-/plugin-google-gtag-3.9.2.tgz", + "integrity": "sha512-YJ4lDCphabBtw19ooSlc1MnxtYGpjFV9rEdzjLsUnBCeis2djUyCozZaFhCg6NGEwOn7HDDyMh0yzcdRpnuIvA==", "license": "MIT", "dependencies": { - "@docusaurus/core": "3.8.1", - "@docusaurus/types": "3.8.1", - "@docusaurus/utils-validation": "3.8.1", + "@docusaurus/core": "3.9.2", + "@docusaurus/types": "3.9.2", + "@docusaurus/utils-validation": "3.9.2", "@types/gtag.js": "^0.0.12", "tslib": "^2.6.0" }, "engines": { - "node": ">=18.0" + "node": ">=20.0" }, "peerDependencies": { "react": "^18.0.0 || ^19.0.0", @@ -3805,18 +3784,18 @@ } }, "node_modules/@docusaurus/plugin-google-tag-manager": { - "version": "3.8.1", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-tag-manager/-/plugin-google-tag-manager-3.8.1.tgz", - "integrity": "sha512-iqe3XKITBquZq+6UAXdb1vI0fPY5iIOitVjPQ581R1ZKpHr0qe+V6gVOrrcOHixPDD/BUKdYwkxFjpNiEN+vBw==", + "version": "3.9.2", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-tag-manager/-/plugin-google-tag-manager-3.9.2.tgz", + "integrity": "sha512-LJtIrkZN/tuHD8NqDAW1Tnw0ekOwRTfobWPsdO15YxcicBo2ykKF0/D6n0vVBfd3srwr9Z6rzrIWYrMzBGrvNw==", "license": "MIT", "dependencies": { - "@docusaurus/core": "3.8.1", - "@docusaurus/types": "3.8.1", - "@docusaurus/utils-validation": "3.8.1", + "@docusaurus/core": "3.9.2", + "@docusaurus/types": "3.9.2", + "@docusaurus/utils-validation": "3.9.2", "tslib": "^2.6.0" }, "engines": { - "node": ">=18.0" + "node": ">=20.0" }, "peerDependencies": { "react": "^18.0.0 || ^19.0.0", @@ -3824,23 +3803,23 @@ } }, "node_modules/@docusaurus/plugin-sitemap": { - "version": "3.8.1", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-sitemap/-/plugin-sitemap-3.8.1.tgz", - "integrity": "sha512-+9YV/7VLbGTq8qNkjiugIelmfUEVkTyLe6X8bWq7K5qPvGXAjno27QAfFq63mYfFFbJc7z+pudL63acprbqGzw==", + "version": "3.9.2", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-sitemap/-/plugin-sitemap-3.9.2.tgz", + "integrity": "sha512-WLh7ymgDXjG8oPoM/T4/zUP7KcSuFYRZAUTl8vR6VzYkfc18GBM4xLhcT+AKOwun6kBivYKUJf+vlqYJkm+RHw==", "license": "MIT", "dependencies": { - "@docusaurus/core": "3.8.1", - "@docusaurus/logger": "3.8.1", - "@docusaurus/types": "3.8.1", - "@docusaurus/utils": "3.8.1", - "@docusaurus/utils-common": "3.8.1", - "@docusaurus/utils-validation": "3.8.1", + "@docusaurus/core": "3.9.2", + "@docusaurus/logger": "3.9.2", + "@docusaurus/types": "3.9.2", + "@docusaurus/utils": "3.9.2", + "@docusaurus/utils-common": "3.9.2", + "@docusaurus/utils-validation": "3.9.2", "fs-extra": "^11.1.1", "sitemap": "^7.1.1", "tslib": "^2.6.0" }, "engines": { - "node": ">=18.0" + "node": ">=20.0" }, "peerDependencies": { "react": "^18.0.0 || ^19.0.0", @@ -3848,22 +3827,22 @@ } }, "node_modules/@docusaurus/plugin-svgr": { - "version": "3.8.1", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-svgr/-/plugin-svgr-3.8.1.tgz", - "integrity": "sha512-rW0LWMDsdlsgowVwqiMb/7tANDodpy1wWPwCcamvhY7OECReN3feoFwLjd/U4tKjNY3encj0AJSTxJA+Fpe+Gw==", + "version": "3.9.2", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-svgr/-/plugin-svgr-3.9.2.tgz", + "integrity": "sha512-n+1DE+5b3Lnf27TgVU5jM1d4x5tUh2oW5LTsBxJX4PsAPV0JGcmI6p3yLYtEY0LRVEIJh+8RsdQmRE66wSV8mw==", "license": "MIT", "dependencies": { - "@docusaurus/core": "3.8.1", - "@docusaurus/types": "3.8.1", - "@docusaurus/utils": "3.8.1", - "@docusaurus/utils-validation": "3.8.1", + "@docusaurus/core": "3.9.2", + "@docusaurus/types": "3.9.2", + "@docusaurus/utils": "3.9.2", + "@docusaurus/utils-validation": "3.9.2", "@svgr/core": "8.1.0", "@svgr/webpack": "^8.1.0", "tslib": "^2.6.0", "webpack": "^5.88.1" }, "engines": { - "node": ">=18.0" + "node": ">=20.0" }, "peerDependencies": { "react": "^18.0.0 || ^19.0.0", @@ -3871,29 +3850,29 @@ } }, "node_modules/@docusaurus/preset-classic": { - "version": "3.8.1", - "resolved": "https://registry.npmjs.org/@docusaurus/preset-classic/-/preset-classic-3.8.1.tgz", - "integrity": "sha512-yJSjYNHXD8POMGc2mKQuj3ApPrN+eG0rO1UPgSx7jySpYU+n4WjBikbrA2ue5ad9A7aouEtMWUoiSRXTH/g7KQ==", - "license": "MIT", - "dependencies": { - "@docusaurus/core": "3.8.1", - "@docusaurus/plugin-content-blog": "3.8.1", - "@docusaurus/plugin-content-docs": "3.8.1", - "@docusaurus/plugin-content-pages": "3.8.1", - "@docusaurus/plugin-css-cascade-layers": "3.8.1", - "@docusaurus/plugin-debug": "3.8.1", - "@docusaurus/plugin-google-analytics": "3.8.1", - "@docusaurus/plugin-google-gtag": "3.8.1", - "@docusaurus/plugin-google-tag-manager": "3.8.1", - "@docusaurus/plugin-sitemap": "3.8.1", - "@docusaurus/plugin-svgr": "3.8.1", - "@docusaurus/theme-classic": "3.8.1", - "@docusaurus/theme-common": "3.8.1", - "@docusaurus/theme-search-algolia": "3.8.1", - "@docusaurus/types": "3.8.1" + "version": "3.9.2", + "resolved": "https://registry.npmjs.org/@docusaurus/preset-classic/-/preset-classic-3.9.2.tgz", + "integrity": "sha512-IgyYO2Gvaigi21LuDIe+nvmN/dfGXAiMcV/murFqcpjnZc7jxFAxW+9LEjdPt61uZLxG4ByW/oUmX/DDK9t/8w==", + "license": "MIT", + "dependencies": { + "@docusaurus/core": "3.9.2", + "@docusaurus/plugin-content-blog": "3.9.2", + "@docusaurus/plugin-content-docs": "3.9.2", + "@docusaurus/plugin-content-pages": "3.9.2", + "@docusaurus/plugin-css-cascade-layers": "3.9.2", + "@docusaurus/plugin-debug": "3.9.2", + "@docusaurus/plugin-google-analytics": "3.9.2", + "@docusaurus/plugin-google-gtag": "3.9.2", + "@docusaurus/plugin-google-tag-manager": "3.9.2", + "@docusaurus/plugin-sitemap": "3.9.2", + "@docusaurus/plugin-svgr": "3.9.2", + "@docusaurus/theme-classic": "3.9.2", + "@docusaurus/theme-common": "3.9.2", + "@docusaurus/theme-search-algolia": "3.9.2", + "@docusaurus/types": "3.9.2" }, "engines": { - "node": ">=18.0" + "node": ">=20.0" }, "peerDependencies": { "react": "^18.0.0 || ^19.0.0", @@ -3901,27 +3880,26 @@ } }, "node_modules/@docusaurus/theme-classic": { - "version": "3.8.1", - "resolved": "https://registry.npmjs.org/@docusaurus/theme-classic/-/theme-classic-3.8.1.tgz", - "integrity": "sha512-bqDUCNqXeYypMCsE1VcTXSI1QuO4KXfx8Cvl6rYfY0bhhqN6d2WZlRkyLg/p6pm+DzvanqHOyYlqdPyP0iz+iw==", - "license": "MIT", - "dependencies": { - "@docusaurus/core": "3.8.1", - "@docusaurus/logger": "3.8.1", - "@docusaurus/mdx-loader": "3.8.1", - "@docusaurus/module-type-aliases": "3.8.1", - "@docusaurus/plugin-content-blog": "3.8.1", - "@docusaurus/plugin-content-docs": "3.8.1", - "@docusaurus/plugin-content-pages": "3.8.1", - "@docusaurus/theme-common": "3.8.1", - "@docusaurus/theme-translations": "3.8.1", - "@docusaurus/types": "3.8.1", - "@docusaurus/utils": "3.8.1", - "@docusaurus/utils-common": "3.8.1", - "@docusaurus/utils-validation": "3.8.1", + "version": "3.9.2", + "resolved": "https://registry.npmjs.org/@docusaurus/theme-classic/-/theme-classic-3.9.2.tgz", + "integrity": "sha512-IGUsArG5hhekXd7RDb11v94ycpJpFdJPkLnt10fFQWOVxAtq5/D7hT6lzc2fhyQKaaCE62qVajOMKL7OiAFAIA==", + "license": "MIT", + "dependencies": { + "@docusaurus/core": "3.9.2", + "@docusaurus/logger": "3.9.2", + "@docusaurus/mdx-loader": "3.9.2", + "@docusaurus/module-type-aliases": "3.9.2", + "@docusaurus/plugin-content-blog": "3.9.2", + "@docusaurus/plugin-content-docs": "3.9.2", + "@docusaurus/plugin-content-pages": "3.9.2", + "@docusaurus/theme-common": "3.9.2", + "@docusaurus/theme-translations": "3.9.2", + "@docusaurus/types": "3.9.2", + "@docusaurus/utils": "3.9.2", + "@docusaurus/utils-common": "3.9.2", + "@docusaurus/utils-validation": "3.9.2", "@mdx-js/react": "^3.0.0", "clsx": "^2.0.0", - "copy-text-to-clipboard": "^3.2.0", "infima": "0.2.0-alpha.45", "lodash": "^4.17.21", "nprogress": "^0.2.0", @@ -3934,7 +3912,7 @@ "utility-types": "^3.10.0" }, "engines": { - "node": ">=18.0" + "node": ">=20.0" }, "peerDependencies": { "react": "^18.0.0 || ^19.0.0", @@ -3951,15 +3929,15 @@ } }, "node_modules/@docusaurus/theme-common": { - "version": "3.8.1", - "resolved": "https://registry.npmjs.org/@docusaurus/theme-common/-/theme-common-3.8.1.tgz", - "integrity": "sha512-UswMOyTnPEVRvN5Qzbo+l8k4xrd5fTFu2VPPfD6FcW/6qUtVLmJTQCktbAL3KJ0BVXGm5aJXz/ZrzqFuZERGPw==", + "version": "3.9.2", + "resolved": "https://registry.npmjs.org/@docusaurus/theme-common/-/theme-common-3.9.2.tgz", + "integrity": "sha512-6c4DAbR6n6nPbnZhY2V3tzpnKnGL+6aOsLvFL26VRqhlczli9eWG0VDUNoCQEPnGwDMhPS42UhSAnz5pThm5Ag==", "license": "MIT", "dependencies": { - "@docusaurus/mdx-loader": "3.8.1", - "@docusaurus/module-type-aliases": "3.8.1", - "@docusaurus/utils": "3.8.1", - "@docusaurus/utils-common": "3.8.1", + "@docusaurus/mdx-loader": "3.9.2", + "@docusaurus/module-type-aliases": "3.9.2", + "@docusaurus/utils": "3.9.2", + "@docusaurus/utils-common": "3.9.2", "@types/history": "^4.7.11", "@types/react": "*", "@types/react-router-config": "*", @@ -3970,7 +3948,7 @@ "utility-types": "^3.10.0" }, "engines": { - "node": ">=18.0" + "node": ">=20.0" }, "peerDependencies": { "@docusaurus/plugin-content-docs": "*", @@ -3988,21 +3966,21 @@ } }, "node_modules/@docusaurus/theme-search-algolia": { - "version": "3.8.1", - "resolved": "https://registry.npmjs.org/@docusaurus/theme-search-algolia/-/theme-search-algolia-3.8.1.tgz", - "integrity": "sha512-NBFH5rZVQRAQM087aYSRKQ9yGEK9eHd+xOxQjqNpxMiV85OhJDD4ZGz6YJIod26Fbooy54UWVdzNU0TFeUUUzQ==", - "license": "MIT", - "dependencies": { - "@docsearch/react": "^3.9.0", - "@docusaurus/core": "3.8.1", - "@docusaurus/logger": "3.8.1", - "@docusaurus/plugin-content-docs": "3.8.1", - "@docusaurus/theme-common": "3.8.1", - "@docusaurus/theme-translations": "3.8.1", - "@docusaurus/utils": "3.8.1", - "@docusaurus/utils-validation": "3.8.1", - "algoliasearch": "^5.17.1", - "algoliasearch-helper": "^3.22.6", + "version": "3.9.2", + "resolved": "https://registry.npmjs.org/@docusaurus/theme-search-algolia/-/theme-search-algolia-3.9.2.tgz", + "integrity": "sha512-GBDSFNwjnh5/LdkxCKQHkgO2pIMX1447BxYUBG2wBiajS21uj64a+gH/qlbQjDLxmGrbrllBrtJkUHxIsiwRnw==", + "license": "MIT", + "dependencies": { + "@docsearch/react": "^3.9.0 || ^4.1.0", + "@docusaurus/core": "3.9.2", + "@docusaurus/logger": "3.9.2", + "@docusaurus/plugin-content-docs": "3.9.2", + "@docusaurus/theme-common": "3.9.2", + "@docusaurus/theme-translations": "3.9.2", + "@docusaurus/utils": "3.9.2", + "@docusaurus/utils-validation": "3.9.2", + "algoliasearch": "^5.37.0", + "algoliasearch-helper": "^3.26.0", "clsx": "^2.0.0", "eta": "^2.2.0", "fs-extra": "^11.1.1", @@ -4011,7 +3989,7 @@ "utility-types": "^3.10.0" }, "engines": { - "node": ">=18.0" + "node": ">=20.0" }, "peerDependencies": { "react": "^18.0.0 || ^19.0.0", @@ -4028,26 +4006,27 @@ } }, "node_modules/@docusaurus/theme-translations": { - "version": "3.8.1", - "resolved": "https://registry.npmjs.org/@docusaurus/theme-translations/-/theme-translations-3.8.1.tgz", - "integrity": "sha512-OTp6eebuMcf2rJt4bqnvuwmm3NVXfzfYejL+u/Y1qwKhZPrjPoKWfk1CbOP5xH5ZOPkiAsx4dHdQBRJszK3z2g==", + "version": "3.9.2", + "resolved": "https://registry.npmjs.org/@docusaurus/theme-translations/-/theme-translations-3.9.2.tgz", + "integrity": "sha512-vIryvpP18ON9T9rjgMRFLr2xJVDpw1rtagEGf8Ccce4CkTrvM/fRB8N2nyWYOW5u3DdjkwKw5fBa+3tbn9P4PA==", "license": "MIT", "dependencies": { "fs-extra": "^11.1.1", "tslib": "^2.6.0" }, "engines": { - "node": ">=18.0" + "node": ">=20.0" } }, "node_modules/@docusaurus/types": { - "version": "3.8.1", - "resolved": "https://registry.npmjs.org/@docusaurus/types/-/types-3.8.1.tgz", - "integrity": "sha512-ZPdW5AB+pBjiVrcLuw3dOS6BFlrG0XkS2lDGsj8TizcnREQg3J8cjsgfDviszOk4CweNfwo1AEELJkYaMUuOPg==", + "version": "3.9.2", + "resolved": "https://registry.npmjs.org/@docusaurus/types/-/types-3.9.2.tgz", + "integrity": "sha512-Ux1JUNswg+EfUEmajJjyhIohKceitY/yzjRUpu04WXgvVz+fbhVC0p+R0JhvEu4ytw8zIAys2hrdpQPBHRIa8Q==", "license": "MIT", "dependencies": { "@mdx-js/mdx": "^3.0.0", "@types/history": "^4.7.11", + "@types/mdast": "^4.0.2", "@types/react": "*", "commander": "^5.1.0", "joi": "^17.9.2", @@ -4076,14 +4055,14 @@ } }, "node_modules/@docusaurus/utils": { - "version": "3.8.1", - "resolved": "https://registry.npmjs.org/@docusaurus/utils/-/utils-3.8.1.tgz", - "integrity": "sha512-P1ml0nvOmEFdmu0smSXOqTS1sxU5tqvnc0dA4MTKV39kye+bhQnjkIKEE18fNOvxjyB86k8esoCIFM3x4RykOQ==", + "version": "3.9.2", + "resolved": "https://registry.npmjs.org/@docusaurus/utils/-/utils-3.9.2.tgz", + "integrity": "sha512-lBSBiRruFurFKXr5Hbsl2thmGweAPmddhF3jb99U4EMDA5L+e5Y1rAkOS07Nvrup7HUMBDrCV45meaxZnt28nQ==", "license": "MIT", "dependencies": { - "@docusaurus/logger": "3.8.1", - "@docusaurus/types": "3.8.1", - "@docusaurus/utils-common": "3.8.1", + "@docusaurus/logger": "3.9.2", + "@docusaurus/types": "3.9.2", + "@docusaurus/utils-common": "3.9.2", "escape-string-regexp": "^4.0.0", "execa": "5.1.1", "file-loader": "^6.2.0", @@ -4104,31 +4083,31 @@ "webpack": "^5.88.1" }, "engines": { - "node": ">=18.0" + "node": ">=20.0" } }, "node_modules/@docusaurus/utils-common": { - "version": "3.8.1", - "resolved": "https://registry.npmjs.org/@docusaurus/utils-common/-/utils-common-3.8.1.tgz", - "integrity": "sha512-zTZiDlvpvoJIrQEEd71c154DkcriBecm4z94OzEE9kz7ikS3J+iSlABhFXM45mZ0eN5pVqqr7cs60+ZlYLewtg==", + "version": "3.9.2", + "resolved": "https://registry.npmjs.org/@docusaurus/utils-common/-/utils-common-3.9.2.tgz", + "integrity": "sha512-I53UC1QctruA6SWLvbjbhCpAw7+X7PePoe5pYcwTOEXD/PxeP8LnECAhTHHwWCblyUX5bMi4QLRkxvyZ+IT8Aw==", "license": "MIT", "dependencies": { - "@docusaurus/types": "3.8.1", + "@docusaurus/types": "3.9.2", "tslib": "^2.6.0" }, "engines": { - "node": ">=18.0" + "node": ">=20.0" } }, "node_modules/@docusaurus/utils-validation": { - "version": "3.8.1", - "resolved": "https://registry.npmjs.org/@docusaurus/utils-validation/-/utils-validation-3.8.1.tgz", - "integrity": "sha512-gs5bXIccxzEbyVecvxg6upTwaUbfa0KMmTj7HhHzc016AGyxH2o73k1/aOD0IFrdCsfJNt37MqNI47s2MgRZMA==", + "version": "3.9.2", + "resolved": "https://registry.npmjs.org/@docusaurus/utils-validation/-/utils-validation-3.9.2.tgz", + "integrity": "sha512-l7yk3X5VnNmATbwijJkexdhulNsQaNDwoagiwujXoxFbWLcxHQqNQ+c/IAlzrfMMOfa/8xSBZ7KEKDesE/2J7A==", "license": "MIT", "dependencies": { - "@docusaurus/logger": "3.8.1", - "@docusaurus/utils": "3.8.1", - "@docusaurus/utils-common": "3.8.1", + "@docusaurus/logger": "3.9.2", + "@docusaurus/utils": "3.9.2", + "@docusaurus/utils-common": "3.9.2", "fs-extra": "^11.2.0", "joi": "^17.9.2", "js-yaml": "^4.1.0", @@ -4136,7 +4115,195 @@ "tslib": "^2.6.0" }, "engines": { - "node": ">=18.0" + "node": ">=20.0" + } + }, + "node_modules/@emnapi/core": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/@emnapi/core/-/core-1.8.1.tgz", + "integrity": "sha512-AvT9QFpxK0Zd8J0jopedNm+w/2fIzvtPKPjqyw9jwvBaReTTqPBk9Hixaz7KbjimP+QNz605/XnjFcDAL2pqBg==", + "license": "MIT", + "optional": true, + "dependencies": { + "@emnapi/wasi-threads": "1.1.0", + "tslib": "^2.4.0" + } + }, + "node_modules/@emnapi/runtime": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.8.1.tgz", + "integrity": "sha512-mehfKSMWjjNol8659Z8KxEMrdSJDDot5SXMq00dM8BN4o+CLNXQ0xH2V7EchNHV4RmbZLmmPdEaXZc5H2FXmDg==", + "license": "MIT", + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@emnapi/wasi-threads": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@emnapi/wasi-threads/-/wasi-threads-1.1.0.tgz", + "integrity": "sha512-WI0DdZ8xFSbgMjR1sFsKABJ/C5OnRrjT06JXbZKexJGrDuPTzZdDYfFlsgcCXCyf+suG5QU2e/y1Wo2V/OapLQ==", + "license": "MIT", + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@eslint-community/eslint-utils": { + "version": "4.9.1", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.9.1.tgz", + "integrity": "sha512-phrYmNiYppR7znFEdqgfWHXR6NCkZEK7hwWDHZUjit/2/U0r6XvkDl0SYnoM51Hq7FhCGdLDT6zxCCOY1hexsQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "eslint-visitor-keys": "^3.4.3" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" + } + }, + "node_modules/@eslint-community/eslint-utils/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint-community/regexpp": { + "version": "4.12.2", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.12.2.tgz", + "integrity": "sha512-EriSTlt5OC9/7SXkRSCAhfSxxoSUgBm33OH+IkwbdpgoqsSsUg7y3uh+IICI/Qg4BBWr3U2i39RpmycbxMq4ew==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + } + }, + "node_modules/@eslint/config-array": { + "version": "0.21.1", + "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.21.1.tgz", + "integrity": "sha512-aw1gNayWpdI/jSYVgzN5pL0cfzU02GT3NBpeT/DXbx1/1x7ZKxFPd9bwrzygx/qiwIQiJ1sw/zD8qY/kRvlGHA==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@eslint/object-schema": "^2.1.7", + "debug": "^4.3.1", + "minimatch": "^3.1.2" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/config-helpers": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.4.2.tgz", + "integrity": "sha512-gBrxN88gOIf3R7ja5K9slwNayVcZgK6SOUORm2uBzTeIEfeVaIhOpCtTox3P6R7o2jLFwLFTLnC7kU/RGcYEgw==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@eslint/core": "^0.17.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/core": { + "version": "0.17.0", + "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.17.0.tgz", + "integrity": "sha512-yL/sLrpmtDaFEiUj1osRP4TI2MDz1AddJL+jZ7KSqvBuliN4xqYY54IfdN8qD8Toa6g1iloph1fxQNkjOxrrpQ==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@types/json-schema": "^7.0.15" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/eslintrc": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.3.3.tgz", + "integrity": "sha512-Kr+LPIUVKz2qkx1HAMH8q1q6azbqBAsXJUxBl/ODDuVPX45Z9DfwB8tPjTi6nNZ8BuM3nbJxC5zCAg5elnBUTQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^10.0.1", + "globals": "^14.0.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.1", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint/eslintrc/node_modules/globals": { + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-14.0.0.tgz", + "integrity": "sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@eslint/js": { + "version": "9.39.2", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.39.2.tgz", + "integrity": "sha512-q1mjIoW1VX4IvSocvM/vbTiveKC4k9eLrajNEuSsmjymSDEbpGddtpfOoN7YGAqBK3NG+uqo8ia4PDTt8buCYA==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://eslint.org/donate" + } + }, + "node_modules/@eslint/object-schema": { + "version": "2.1.7", + "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.7.tgz", + "integrity": "sha512-VtAOaymWVfZcmZbp6E2mympDIHvyjXs/12LqWYjVw6qjrfF+VK+fyG33kChz3nnK+SU5/NeHOqrTEHS8sXO3OA==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/plugin-kit": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.4.1.tgz", + "integrity": "sha512-43/qtrDUokr7LJqoF2c3+RInu/t4zfrpYdoSDfYyhg52rwLV6TnOvdG4fXm7IkSB3wErkcmJS9iEhjVtOSEjjA==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@eslint/core": "^0.17.0", + "levn": "^0.4.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" } }, "node_modules/@hapi/hoek": { @@ -4154,6 +4321,91 @@ "@hapi/hoek": "^9.0.0" } }, + "node_modules/@humanfs/core": { + "version": "0.19.1", + "resolved": "https://registry.npmjs.org/@humanfs/core/-/core-0.19.1.tgz", + "integrity": "sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=18.18.0" + } + }, + "node_modules/@humanfs/node": { + "version": "0.16.7", + "resolved": "https://registry.npmjs.org/@humanfs/node/-/node-0.16.7.tgz", + "integrity": "sha512-/zUx+yOsIrG4Y43Eh2peDeKCxlRt/gET6aHfaKpuq267qXdYDFViVHfMaLyygZOnl0kGWxFIgsBy8QFuTLUXEQ==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@humanfs/core": "^0.19.1", + "@humanwhocodes/retry": "^0.4.0" + }, + "engines": { + "node": ">=18.18.0" + } + }, + "node_modules/@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=12.22" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@humanwhocodes/retry": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.4.3.tgz", + "integrity": "sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=18.18" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@isaacs/balanced-match": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@isaacs/balanced-match/-/balanced-match-4.0.1.tgz", + "integrity": "sha512-yzMTt9lEb8Gv7zRioUilSglI0c0smZ9k5D65677DLWLtWJaXIS3CqcGyUFByYKlnUj6TkjLVs54fBl6+TiGQDQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": "20 || >=22" + } + }, + "node_modules/@isaacs/brace-expansion": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/@isaacs/brace-expansion/-/brace-expansion-5.0.1.tgz", + "integrity": "sha512-WMz71T1JS624nWj2n2fnYAuPovhv7EUhk69R6i9dsVyzxt5eM3bjwvgk9L+APE1TRscGysAVMANkB0jh0LQZrQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@isaacs/balanced-match": "^4.0.1" + }, + "engines": { + "node": "20 || >=22" + } + }, + "node_modules/@isaacs/cliui": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-9.0.0.tgz", + "integrity": "sha512-AokJm4tuBHillT+FpMtxQ60n8ObyXBatq7jD2/JA9dxbDDokKQm8KMht5ibGzLVU9IJDIKK4TPKgMHEYMn3lMg==", + "dev": true, + "license": "BlueOak-1.0.0", + "engines": { + "node": ">=18" + } + }, "node_modules/@jest/schemas": { "version": "29.6.3", "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz", @@ -4184,15 +4436,25 @@ } }, "node_modules/@jridgewell/gen-mapping": { - "version": "0.3.12", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.12.tgz", - "integrity": "sha512-OuLGC46TjB5BbN1dH8JULVVZY4WTdkF7tV9Ys6wLL1rubZnCMstOhNHueU5bLCrnRuDhKPDM4g6sw4Bel5Gzqg==", + "version": "0.3.13", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.13.tgz", + "integrity": "sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==", "license": "MIT", "dependencies": { "@jridgewell/sourcemap-codec": "^1.5.0", "@jridgewell/trace-mapping": "^0.3.24" } }, + "node_modules/@jridgewell/remapping": { + "version": "2.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/remapping/-/remapping-2.3.5.tgz", + "integrity": "sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==", + "license": "MIT", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.24" + } + }, "node_modules/@jridgewell/resolve-uri": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", @@ -4203,9 +4465,9 @@ } }, "node_modules/@jridgewell/source-map": { - "version": "0.3.10", - "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.10.tgz", - "integrity": "sha512-0pPkgz9dY+bijgistcTTJ5mR+ocqRXLuhXHYdzoMmmoJ2C9S46RCm2GMUbatPEUK9Yjy26IrAy8D/M00lLkv+Q==", + "version": "0.3.11", + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.11.tgz", + "integrity": "sha512-ZMp1V8ZFcPG5dIWnQLr3NSI1MiCU7UETdS/A0G8V/XWHvJv3ZsFqutJn1Y5RPmAPX6F3BiE397OqveU/9NCuIA==", "license": "MIT", "dependencies": { "@jridgewell/gen-mapping": "^0.3.5", @@ -4213,28 +4475,437 @@ } }, "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.5.4", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.4.tgz", - "integrity": "sha512-VT2+G1VQs/9oz078bLrYbecdZKs912zQlkelYpuf+SXF+QvZDYJlbx/LSx+meSAwdDFnF8FVXW92AVjjkVmgFw==", + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz", + "integrity": "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==", "license": "MIT" }, "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.29", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.29.tgz", - "integrity": "sha512-uw6guiW/gcAGPDhLmd77/6lW8QLeiV5RUTsAX46Db6oLhGaVj4lhnPwb184s1bkc8kdVg/+h988dro8GRDpmYQ==", + "version": "0.3.31", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.31.tgz", + "integrity": "sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==", "license": "MIT", "dependencies": { "@jridgewell/resolve-uri": "^3.1.0", "@jridgewell/sourcemap-codec": "^1.4.14" } }, - "node_modules/@leichtgewicht/ip-codec": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.5.tgz", - "integrity": "sha512-Vo+PSpZG2/fmgmiNzYK9qWRh8h/CHrwD0mo1h1DzL4yzHNSfWYujGTYsWGreD000gcgmZ7K4Ys6Tx9TxtsKdDw==", - "license": "MIT" - }, - "node_modules/@mapbox/geojson-rewind": { + "node_modules/@jsonjoy.com/base64": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@jsonjoy.com/base64/-/base64-1.1.2.tgz", + "integrity": "sha512-q6XAnWQDIMA3+FTiOYajoYqySkO+JSat0ytXGSuRdq9uXE7o92gzuQwQM14xaCRlBLGq3v5miDGC4vkVTn54xA==", + "license": "Apache-2.0", + "engines": { + "node": ">=10.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/streamich" + }, + "peerDependencies": { + "tslib": "2" + } + }, + "node_modules/@jsonjoy.com/buffers": { + "version": "17.67.0", + "resolved": "https://registry.npmjs.org/@jsonjoy.com/buffers/-/buffers-17.67.0.tgz", + "integrity": "sha512-tfExRpYxBvi32vPs9ZHaTjSP4fHAfzSmcahOfNxtvGHcyJel+aibkPlGeBB+7AoC6hL7lXIE++8okecBxx7lcw==", + "license": "Apache-2.0", + "engines": { + "node": ">=10.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/streamich" + }, + "peerDependencies": { + "tslib": "2" + } + }, + "node_modules/@jsonjoy.com/codegen": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@jsonjoy.com/codegen/-/codegen-1.0.0.tgz", + "integrity": "sha512-E8Oy+08cmCf0EK/NMxpaJZmOxPqM+6iSe2S4nlSBrPZOORoDJILxtbSUEDKQyTamm/BVAhIGllOBNU79/dwf0g==", + "license": "Apache-2.0", + "engines": { + "node": ">=10.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/streamich" + }, + "peerDependencies": { + "tslib": "2" + } + }, + "node_modules/@jsonjoy.com/fs-core": { + "version": "4.56.10", + "resolved": "https://registry.npmjs.org/@jsonjoy.com/fs-core/-/fs-core-4.56.10.tgz", + "integrity": "sha512-PyAEA/3cnHhsGcdY+AmIU+ZPqTuZkDhCXQ2wkXypdLitSpd6d5Ivxhnq4wa2ETRWFVJGabYynBWxIijOswSmOw==", + "license": "Apache-2.0", + "dependencies": { + "@jsonjoy.com/fs-node-builtins": "4.56.10", + "@jsonjoy.com/fs-node-utils": "4.56.10", + "thingies": "^2.5.0" + }, + "engines": { + "node": ">=10.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/streamich" + }, + "peerDependencies": { + "tslib": "2" + } + }, + "node_modules/@jsonjoy.com/fs-fsa": { + "version": "4.56.10", + "resolved": "https://registry.npmjs.org/@jsonjoy.com/fs-fsa/-/fs-fsa-4.56.10.tgz", + "integrity": "sha512-/FVK63ysNzTPOnCCcPoPHt77TOmachdMS422txM4KhxddLdbW1fIbFMYH0AM0ow/YchCyS5gqEjKLNyv71j/5Q==", + "license": "Apache-2.0", + "dependencies": { + "@jsonjoy.com/fs-core": "4.56.10", + "@jsonjoy.com/fs-node-builtins": "4.56.10", + "@jsonjoy.com/fs-node-utils": "4.56.10", + "thingies": "^2.5.0" + }, + "engines": { + "node": ">=10.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/streamich" + }, + "peerDependencies": { + "tslib": "2" + } + }, + "node_modules/@jsonjoy.com/fs-node": { + "version": "4.56.10", + "resolved": "https://registry.npmjs.org/@jsonjoy.com/fs-node/-/fs-node-4.56.10.tgz", + "integrity": "sha512-7R4Gv3tkUdW3dXfXiOkqxkElxKNVdd8BDOWC0/dbERd0pXpPY+s2s1Mino+aTvkGrFPiY+mmVxA7zhskm4Ue4Q==", + "license": "Apache-2.0", + "dependencies": { + "@jsonjoy.com/fs-core": "4.56.10", + "@jsonjoy.com/fs-node-builtins": "4.56.10", + "@jsonjoy.com/fs-node-utils": "4.56.10", + "@jsonjoy.com/fs-print": "4.56.10", + "@jsonjoy.com/fs-snapshot": "4.56.10", + "glob-to-regex.js": "^1.0.0", + "thingies": "^2.5.0" + }, + "engines": { + "node": ">=10.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/streamich" + }, + "peerDependencies": { + "tslib": "2" + } + }, + "node_modules/@jsonjoy.com/fs-node-builtins": { + "version": "4.56.10", + "resolved": "https://registry.npmjs.org/@jsonjoy.com/fs-node-builtins/-/fs-node-builtins-4.56.10.tgz", + "integrity": "sha512-uUnKz8R0YJyKq5jXpZtkGV9U0pJDt8hmYcLRrPjROheIfjMXsz82kXMgAA/qNg0wrZ1Kv+hrg7azqEZx6XZCVw==", + "license": "Apache-2.0", + "engines": { + "node": ">=10.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/streamich" + }, + "peerDependencies": { + "tslib": "2" + } + }, + "node_modules/@jsonjoy.com/fs-node-to-fsa": { + "version": "4.56.10", + "resolved": "https://registry.npmjs.org/@jsonjoy.com/fs-node-to-fsa/-/fs-node-to-fsa-4.56.10.tgz", + "integrity": "sha512-oH+O6Y4lhn9NyG6aEoFwIBNKZeYy66toP5LJcDOMBgL99BKQMUf/zWJspdRhMdn/3hbzQsZ8EHHsuekbFLGUWw==", + "license": "Apache-2.0", + "dependencies": { + "@jsonjoy.com/fs-fsa": "4.56.10", + "@jsonjoy.com/fs-node-builtins": "4.56.10", + "@jsonjoy.com/fs-node-utils": "4.56.10" + }, + "engines": { + "node": ">=10.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/streamich" + }, + "peerDependencies": { + "tslib": "2" + } + }, + "node_modules/@jsonjoy.com/fs-node-utils": { + "version": "4.56.10", + "resolved": "https://registry.npmjs.org/@jsonjoy.com/fs-node-utils/-/fs-node-utils-4.56.10.tgz", + "integrity": "sha512-8EuPBgVI2aDPwFdaNQeNpHsyqPi3rr+85tMNG/lHvQLiVjzoZsvxA//Xd8aB567LUhy4QS03ptT+unkD/DIsNg==", + "license": "Apache-2.0", + "dependencies": { + "@jsonjoy.com/fs-node-builtins": "4.56.10" + }, + "engines": { + "node": ">=10.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/streamich" + }, + "peerDependencies": { + "tslib": "2" + } + }, + "node_modules/@jsonjoy.com/fs-print": { + "version": "4.56.10", + "resolved": "https://registry.npmjs.org/@jsonjoy.com/fs-print/-/fs-print-4.56.10.tgz", + "integrity": "sha512-JW4fp5mAYepzFsSGrQ48ep8FXxpg4niFWHdF78wDrFGof7F3tKDJln72QFDEn/27M1yHd4v7sKHHVPh78aWcEw==", + "license": "Apache-2.0", + "dependencies": { + "@jsonjoy.com/fs-node-utils": "4.56.10", + "tree-dump": "^1.1.0" + }, + "engines": { + "node": ">=10.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/streamich" + }, + "peerDependencies": { + "tslib": "2" + } + }, + "node_modules/@jsonjoy.com/fs-snapshot": { + "version": "4.56.10", + "resolved": "https://registry.npmjs.org/@jsonjoy.com/fs-snapshot/-/fs-snapshot-4.56.10.tgz", + "integrity": "sha512-DkR6l5fj7+qj0+fVKm/OOXMGfDFCGXLfyHkORH3DF8hxkpDgIHbhf/DwncBMs2igu/ST7OEkexn1gIqoU6Y+9g==", + "license": "Apache-2.0", + "dependencies": { + "@jsonjoy.com/buffers": "^17.65.0", + "@jsonjoy.com/fs-node-utils": "4.56.10", + "@jsonjoy.com/json-pack": "^17.65.0", + "@jsonjoy.com/util": "^17.65.0" + }, + "engines": { + "node": ">=10.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/streamich" + }, + "peerDependencies": { + "tslib": "2" + } + }, + "node_modules/@jsonjoy.com/fs-snapshot/node_modules/@jsonjoy.com/base64": { + "version": "17.67.0", + "resolved": "https://registry.npmjs.org/@jsonjoy.com/base64/-/base64-17.67.0.tgz", + "integrity": "sha512-5SEsJGsm15aP8TQGkDfJvz9axgPwAEm98S5DxOuYe8e1EbfajcDmgeXXzccEjh+mLnjqEKrkBdjHWS5vFNwDdw==", + "license": "Apache-2.0", + "engines": { + "node": ">=10.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/streamich" + }, + "peerDependencies": { + "tslib": "2" + } + }, + "node_modules/@jsonjoy.com/fs-snapshot/node_modules/@jsonjoy.com/codegen": { + "version": "17.67.0", + "resolved": "https://registry.npmjs.org/@jsonjoy.com/codegen/-/codegen-17.67.0.tgz", + "integrity": "sha512-idnkUplROpdBOV0HMcwhsCUS5TRUi9poagdGs70A6S4ux9+/aPuKbh8+UYRTLYQHtXvAdNfQWXDqZEx5k4Dj2Q==", + "license": "Apache-2.0", + "engines": { + "node": ">=10.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/streamich" + }, + "peerDependencies": { + "tslib": "2" + } + }, + "node_modules/@jsonjoy.com/fs-snapshot/node_modules/@jsonjoy.com/json-pack": { + "version": "17.67.0", + "resolved": "https://registry.npmjs.org/@jsonjoy.com/json-pack/-/json-pack-17.67.0.tgz", + "integrity": "sha512-t0ejURcGaZsn1ClbJ/3kFqSOjlryd92eQY465IYrezsXmPcfHPE/av4twRSxf6WE+TkZgLY+71vCZbiIiFKA/w==", + "license": "Apache-2.0", + "dependencies": { + "@jsonjoy.com/base64": "17.67.0", + "@jsonjoy.com/buffers": "17.67.0", + "@jsonjoy.com/codegen": "17.67.0", + "@jsonjoy.com/json-pointer": "17.67.0", + "@jsonjoy.com/util": "17.67.0", + "hyperdyperid": "^1.2.0", + "thingies": "^2.5.0", + "tree-dump": "^1.1.0" + }, + "engines": { + "node": ">=10.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/streamich" + }, + "peerDependencies": { + "tslib": "2" + } + }, + "node_modules/@jsonjoy.com/fs-snapshot/node_modules/@jsonjoy.com/json-pointer": { + "version": "17.67.0", + "resolved": "https://registry.npmjs.org/@jsonjoy.com/json-pointer/-/json-pointer-17.67.0.tgz", + "integrity": "sha512-+iqOFInH+QZGmSuaybBUNdh7yvNrXvqR+h3wjXm0N/3JK1EyyFAeGJvqnmQL61d1ARLlk/wJdFKSL+LHJ1eaUA==", + "license": "Apache-2.0", + "dependencies": { + "@jsonjoy.com/util": "17.67.0" + }, + "engines": { + "node": ">=10.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/streamich" + }, + "peerDependencies": { + "tslib": "2" + } + }, + "node_modules/@jsonjoy.com/fs-snapshot/node_modules/@jsonjoy.com/util": { + "version": "17.67.0", + "resolved": "https://registry.npmjs.org/@jsonjoy.com/util/-/util-17.67.0.tgz", + "integrity": "sha512-6+8xBaz1rLSohlGh68D1pdw3AwDi9xydm8QNlAFkvnavCJYSze+pxoW2VKP8p308jtlMRLs5NTHfPlZLd4w7ew==", + "license": "Apache-2.0", + "dependencies": { + "@jsonjoy.com/buffers": "17.67.0", + "@jsonjoy.com/codegen": "17.67.0" + }, + "engines": { + "node": ">=10.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/streamich" + }, + "peerDependencies": { + "tslib": "2" + } + }, + "node_modules/@jsonjoy.com/json-pack": { + "version": "1.21.0", + "resolved": "https://registry.npmjs.org/@jsonjoy.com/json-pack/-/json-pack-1.21.0.tgz", + "integrity": "sha512-+AKG+R2cfZMShzrF2uQw34v3zbeDYUqnQ+jg7ORic3BGtfw9p/+N6RJbq/kkV8JmYZaINknaEQ2m0/f693ZPpg==", + "license": "Apache-2.0", + "dependencies": { + "@jsonjoy.com/base64": "^1.1.2", + "@jsonjoy.com/buffers": "^1.2.0", + "@jsonjoy.com/codegen": "^1.0.0", + "@jsonjoy.com/json-pointer": "^1.0.2", + "@jsonjoy.com/util": "^1.9.0", + "hyperdyperid": "^1.2.0", + "thingies": "^2.5.0", + "tree-dump": "^1.1.0" + }, + "engines": { + "node": ">=10.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/streamich" + }, + "peerDependencies": { + "tslib": "2" + } + }, + "node_modules/@jsonjoy.com/json-pack/node_modules/@jsonjoy.com/buffers": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jsonjoy.com/buffers/-/buffers-1.2.1.tgz", + "integrity": "sha512-12cdlDwX4RUM3QxmUbVJWqZ/mrK6dFQH4Zxq6+r1YXKXYBNgZXndx2qbCJwh3+WWkCSn67IjnlG3XYTvmvYtgA==", + "license": "Apache-2.0", + "engines": { + "node": ">=10.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/streamich" + }, + "peerDependencies": { + "tslib": "2" + } + }, + "node_modules/@jsonjoy.com/json-pointer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@jsonjoy.com/json-pointer/-/json-pointer-1.0.2.tgz", + "integrity": "sha512-Fsn6wM2zlDzY1U+v4Nc8bo3bVqgfNTGcn6dMgs6FjrEnt4ZCe60o6ByKRjOGlI2gow0aE/Q41QOigdTqkyK5fg==", + "license": "Apache-2.0", + "dependencies": { + "@jsonjoy.com/codegen": "^1.0.0", + "@jsonjoy.com/util": "^1.9.0" + }, + "engines": { + "node": ">=10.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/streamich" + }, + "peerDependencies": { + "tslib": "2" + } + }, + "node_modules/@jsonjoy.com/util": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@jsonjoy.com/util/-/util-1.9.0.tgz", + "integrity": "sha512-pLuQo+VPRnN8hfPqUTLTHk126wuYdXVxE6aDmjSeV4NCAgyxWbiOIeNJVtID3h1Vzpoi9m4jXezf73I6LgabgQ==", + "license": "Apache-2.0", + "dependencies": { + "@jsonjoy.com/buffers": "^1.0.0", + "@jsonjoy.com/codegen": "^1.0.0" + }, + "engines": { + "node": ">=10.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/streamich" + }, + "peerDependencies": { + "tslib": "2" + } + }, + "node_modules/@jsonjoy.com/util/node_modules/@jsonjoy.com/buffers": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jsonjoy.com/buffers/-/buffers-1.2.1.tgz", + "integrity": "sha512-12cdlDwX4RUM3QxmUbVJWqZ/mrK6dFQH4Zxq6+r1YXKXYBNgZXndx2qbCJwh3+WWkCSn67IjnlG3XYTvmvYtgA==", + "license": "Apache-2.0", + "engines": { + "node": ">=10.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/streamich" + }, + "peerDependencies": { + "tslib": "2" + } + }, + "node_modules/@leichtgewicht/ip-codec": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.5.tgz", + "integrity": "sha512-Vo+PSpZG2/fmgmiNzYK9qWRh8h/CHrwD0mo1h1DzL4yzHNSfWYujGTYsWGreD000gcgmZ7K4Ys6Tx9TxtsKdDw==", + "license": "MIT" + }, + "node_modules/@mapbox/geojson-rewind": { "version": "0.5.2", "resolved": "https://registry.npmjs.org/@mapbox/geojson-rewind/-/geojson-rewind-0.5.2.tgz", "integrity": "sha512-tJaT+RbYGJYStt7wI3cq4Nl4SXxG8W7JDG5DMJu97V25RnbNg3QtQtf+KD+VLjNpWKYsRvXDNmNrBgEETr1ifA==", @@ -4256,15 +4927,15 @@ } }, "node_modules/@mapbox/point-geometry": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/@mapbox/point-geometry/-/point-geometry-0.1.0.tgz", - "integrity": "sha512-6j56HdLTwWGO0fJPlrZtdU/B13q8Uwmo18Ck2GnGgN9PCFyKTZ3UbXeEdRFh18i9XQ92eH2VdtpJHpBD3aripQ==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@mapbox/point-geometry/-/point-geometry-1.1.0.tgz", + "integrity": "sha512-YGcBz1cg4ATXDCM/71L9xveh4dynfGmcLDqufR+nQQy3fKwsAZsWd/x4621/6uJaeB9mwOHE6hPeDgXz9uViUQ==", "license": "ISC" }, "node_modules/@mapbox/tiny-sdf": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/@mapbox/tiny-sdf/-/tiny-sdf-2.0.6.tgz", - "integrity": "sha512-qMqa27TLw+ZQz5Jk+RcwZGH7BQf5G/TrutJhspsca/3SHwmgKQ1iq+d3Jxz5oysPVYTGP6aXxCo5Lk9Er6YBAA==", + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/@mapbox/tiny-sdf/-/tiny-sdf-2.0.7.tgz", + "integrity": "sha512-25gQLQMcpivjOSA40g3gO6qgiFPDpWRoMfd+G/GoppPIeP6JDaMMkMrEJnMZhKyyS6iKwVt5YKu02vCUyJM3Ug==", "license": "BSD-2-Clause" }, "node_modules/@mapbox/unitbezier": { @@ -4274,12 +4945,14 @@ "license": "BSD-2-Clause" }, "node_modules/@mapbox/vector-tile": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/@mapbox/vector-tile/-/vector-tile-1.3.1.tgz", - "integrity": "sha512-MCEddb8u44/xfQ3oD+Srl/tNcQoqTw3goGk2oLsrFxOTc3dUp+kAnby3PvAeeBYSMSjSPD1nd1AJA6W49WnoUw==", + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@mapbox/vector-tile/-/vector-tile-2.0.4.tgz", + "integrity": "sha512-AkOLcbgGTdXScosBWwmmD7cDlvOjkg/DetGva26pIRiZPdeJYjYKarIlb4uxVzi6bwHO6EWH82eZ5Nuv4T5DUg==", "license": "BSD-3-Clause", "dependencies": { - "@mapbox/point-geometry": "~0.1.0" + "@mapbox/point-geometry": "~1.1.0", + "@types/geojson": "^7946.0.16", + "pbf": "^4.0.1" } }, "node_modules/@mapbox/whoots-js": { @@ -4291,10 +4964,16 @@ "node": ">=6.0.0" } }, + "node_modules/@maplibre/geojson-vt": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/@maplibre/geojson-vt/-/geojson-vt-5.0.4.tgz", + "integrity": "sha512-KGg9sma45S+stfH9vPCJk1J0lSDLWZgCT9Y8u8qWZJyjFlP8MNP1WGTxIMYJZjDvVT3PDn05kN1C95Sut1HpgQ==", + "license": "ISC" + }, "node_modules/@maplibre/maplibre-gl-style-spec": { - "version": "23.3.0", - "resolved": "https://registry.npmjs.org/@maplibre/maplibre-gl-style-spec/-/maplibre-gl-style-spec-23.3.0.tgz", - "integrity": "sha512-IGJtuBbaGzOUgODdBRg66p8stnwj9iDXkgbYKoYcNiiQmaez5WVRfXm4b03MCDwmZyX93csbfHFWEJJYHnn5oA==", + "version": "24.4.1", + "resolved": "https://registry.npmjs.org/@maplibre/maplibre-gl-style-spec/-/maplibre-gl-style-spec-24.4.1.tgz", + "integrity": "sha512-UKhA4qv1h30XT768ccSv5NjNCX+dgfoq2qlLVmKejspPcSQTYD4SrVucgqegmYcKcmwf06wcNAa/kRd0NHWbUg==", "license": "ISC", "dependencies": { "@mapbox/jsonlint-lines-primitives": "~2.0.2", @@ -4311,16 +4990,41 @@ "gl-style-validate": "dist/gl-style-validate.mjs" } }, + "node_modules/@maplibre/mlt": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/@maplibre/mlt/-/mlt-1.1.6.tgz", + "integrity": "sha512-rgtY3x65lrrfXycLf6/T22ZnjTg5WgIOsptOIoCaMZy4O4UAKTyZlYY0h6v8le721pTptF94U65yMDQkug+URw==", + "license": "(MIT OR Apache-2.0)", + "dependencies": { + "@mapbox/point-geometry": "^1.1.0" + } + }, + "node_modules/@maplibre/vt-pbf": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/@maplibre/vt-pbf/-/vt-pbf-4.2.1.tgz", + "integrity": "sha512-IxZBGq/+9cqf2qdWlFuQ+ZfoMhWpxDUGQZ/poPHOJBvwMUT1GuxLo6HgYTou+xxtsOsjfbcjI8PZaPCtmt97rA==", + "license": "MIT", + "dependencies": { + "@mapbox/point-geometry": "^1.1.0", + "@mapbox/vector-tile": "^2.0.4", + "@maplibre/geojson-vt": "^5.0.4", + "@types/geojson": "^7946.0.16", + "@types/supercluster": "^7.1.3", + "pbf": "^4.0.1", + "supercluster": "^8.0.1" + } + }, "node_modules/@mdx-js/mdx": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@mdx-js/mdx/-/mdx-3.1.0.tgz", - "integrity": "sha512-/QxEhPAvGwbQmy1Px8F899L5Uc2KZ6JtXwlCgJmjSTBedwOZkByYcBG4GceIGPXRDsmfxhHazuS+hlOShRLeDw==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@mdx-js/mdx/-/mdx-3.1.1.tgz", + "integrity": "sha512-f6ZO2ifpwAQIpzGWaBQT2TXxPv6z3RBzQKpVftEWN78Vl/YweF1uwussDx8ECAXVtr3Rs89fKyG9YlzUs9DyGQ==", "license": "MIT", "dependencies": { "@types/estree": "^1.0.0", "@types/estree-jsx": "^1.0.0", "@types/hast": "^3.0.0", "@types/mdx": "^2.0.0", + "acorn": "^8.0.0", "collapse-white-space": "^2.0.0", "devlop": "^1.0.0", "estree-util-is-identifier-name": "^3.0.0", @@ -4348,9 +5052,9 @@ } }, "node_modules/@mdx-js/react": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@mdx-js/react/-/react-3.1.0.tgz", - "integrity": "sha512-QjHtSaoameoalGnKDT3FoIl4+9RwyTmo9ZJGBdLOks/YOiWHoRDI3PUwEzOE7kEmGcV3AFcp9K6dYu9rEuKLAQ==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@mdx-js/react/-/react-3.1.1.tgz", + "integrity": "sha512-f++rKLQgUVYDAtECQ6fn/is15GkEH9+nZPM3MS0RcxVqoTfawHvDlSCH7JbMhAM6uJ32v3eXLvLmLvjGu7PTQw==", "license": "MIT", "dependencies": { "@types/mdx": "^2.0.0" @@ -4364,24 +5068,82 @@ "react": ">=16" } }, - "node_modules/@mrmlnc/readdir-enhanced": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/@mrmlnc/readdir-enhanced/-/readdir-enhanced-2.2.1.tgz", - "integrity": "sha512-bPHp6Ji8b41szTOcaP63VlnbbO5Ny6dwAATtY6JTjh5N2OLrb5Qk/Th5cRkRQhkWCt+EJsYrNB0MiL+Gpn6e3g==", + "node_modules/@module-federation/error-codes": { + "version": "0.22.0", + "resolved": "https://registry.npmjs.org/@module-federation/error-codes/-/error-codes-0.22.0.tgz", + "integrity": "sha512-xF9SjnEy7vTdx+xekjPCV5cIHOGCkdn3pIxo9vU7gEZMIw0SvAEdsy6Uh17xaCpm8V0FWvR0SZoK9Ik6jGOaug==", + "license": "MIT" + }, + "node_modules/@module-federation/runtime": { + "version": "0.22.0", + "resolved": "https://registry.npmjs.org/@module-federation/runtime/-/runtime-0.22.0.tgz", + "integrity": "sha512-38g5iPju2tPC3KHMPxRKmy4k4onNp6ypFPS1eKGsNLUkXgHsPMBFqAjDw96iEcjri91BrahG4XcdyKi97xZzlA==", "license": "MIT", "dependencies": { - "call-me-maybe": "^1.0.1", - "glob-to-regexp": "^0.3.0" - }, - "engines": { - "node": ">=4" + "@module-federation/error-codes": "0.22.0", + "@module-federation/runtime-core": "0.22.0", + "@module-federation/sdk": "0.22.0" } }, - "node_modules/@mrmlnc/readdir-enhanced/node_modules/glob-to-regexp": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.3.0.tgz", - "integrity": "sha512-Iozmtbqv0noj0uDDqoL0zNq0VBEfK2YFoMAZoxJe4cwphvLR+JskfF30QhXHOR4m3KrE6NLRYw+U9MRXvifyig==", - "license": "BSD" + "node_modules/@module-federation/runtime-core": { + "version": "0.22.0", + "resolved": "https://registry.npmjs.org/@module-federation/runtime-core/-/runtime-core-0.22.0.tgz", + "integrity": "sha512-GR1TcD6/s7zqItfhC87zAp30PqzvceoeDGYTgF3Vx2TXvsfDrhP6Qw9T4vudDQL3uJRne6t7CzdT29YyVxlgIA==", + "license": "MIT", + "dependencies": { + "@module-federation/error-codes": "0.22.0", + "@module-federation/sdk": "0.22.0" + } + }, + "node_modules/@module-federation/runtime-tools": { + "version": "0.22.0", + "resolved": "https://registry.npmjs.org/@module-federation/runtime-tools/-/runtime-tools-0.22.0.tgz", + "integrity": "sha512-4ScUJ/aUfEernb+4PbLdhM/c60VHl698Gn1gY21m9vyC1Ucn69fPCA1y2EwcCB7IItseRMoNhdcWQnzt/OPCNA==", + "license": "MIT", + "dependencies": { + "@module-federation/runtime": "0.22.0", + "@module-federation/webpack-bundler-runtime": "0.22.0" + } + }, + "node_modules/@module-federation/sdk": { + "version": "0.22.0", + "resolved": "https://registry.npmjs.org/@module-federation/sdk/-/sdk-0.22.0.tgz", + "integrity": "sha512-x4aFNBKn2KVQRuNVC5A7SnrSCSqyfIWmm1DvubjbO9iKFe7ith5niw8dqSFBekYBg2Fwy+eMg4sEFNVvCAdo6g==", + "license": "MIT" + }, + "node_modules/@module-federation/webpack-bundler-runtime": { + "version": "0.22.0", + "resolved": "https://registry.npmjs.org/@module-federation/webpack-bundler-runtime/-/webpack-bundler-runtime-0.22.0.tgz", + "integrity": "sha512-aM8gCqXu+/4wBmJtVeMeeMN5guw3chf+2i6HajKtQv7SJfxV/f4IyNQJUeUQu9HfiAZHjqtMV5Lvq/Lvh8LdyA==", + "license": "MIT", + "dependencies": { + "@module-federation/runtime": "0.22.0", + "@module-federation/sdk": "0.22.0" + } + }, + "node_modules/@napi-rs/wasm-runtime": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/@napi-rs/wasm-runtime/-/wasm-runtime-1.0.7.tgz", + "integrity": "sha512-SeDnOO0Tk7Okiq6DbXmmBODgOAb9dp9gjlphokTUxmt8U3liIP1ZsozBahH69j/RJv+Rfs6IwUKHTgQYJ/HBAw==", + "license": "MIT", + "optional": true, + "dependencies": { + "@emnapi/core": "^1.5.0", + "@emnapi/runtime": "^1.5.0", + "@tybys/wasm-util": "^0.10.1" + } + }, + "node_modules/@noble/hashes": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.4.0.tgz", + "integrity": "sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg==", + "license": "MIT", + "engines": { + "node": ">= 16" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } }, "node_modules/@nodelib/fs.scandir": { "version": "2.1.5", @@ -4418,6 +5180,154 @@ "node": ">= 8" } }, + "node_modules/@peculiar/asn1-cms": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@peculiar/asn1-cms/-/asn1-cms-2.6.0.tgz", + "integrity": "sha512-2uZqP+ggSncESeUF/9Su8rWqGclEfEiz1SyU02WX5fUONFfkjzS2Z/F1Li0ofSmf4JqYXIOdCAZqIXAIBAT1OA==", + "license": "MIT", + "dependencies": { + "@peculiar/asn1-schema": "^2.6.0", + "@peculiar/asn1-x509": "^2.6.0", + "@peculiar/asn1-x509-attr": "^2.6.0", + "asn1js": "^3.0.6", + "tslib": "^2.8.1" + } + }, + "node_modules/@peculiar/asn1-csr": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@peculiar/asn1-csr/-/asn1-csr-2.6.0.tgz", + "integrity": "sha512-BeWIu5VpTIhfRysfEp73SGbwjjoLL/JWXhJ/9mo4vXnz3tRGm+NGm3KNcRzQ9VMVqwYS2RHlolz21svzRXIHPQ==", + "license": "MIT", + "dependencies": { + "@peculiar/asn1-schema": "^2.6.0", + "@peculiar/asn1-x509": "^2.6.0", + "asn1js": "^3.0.6", + "tslib": "^2.8.1" + } + }, + "node_modules/@peculiar/asn1-ecc": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@peculiar/asn1-ecc/-/asn1-ecc-2.6.0.tgz", + "integrity": "sha512-FF3LMGq6SfAOwUG2sKpPXblibn6XnEIKa+SryvUl5Pik+WR9rmRA3OCiwz8R3lVXnYnyRkSZsSLdml8H3UiOcw==", + "license": "MIT", + "dependencies": { + "@peculiar/asn1-schema": "^2.6.0", + "@peculiar/asn1-x509": "^2.6.0", + "asn1js": "^3.0.6", + "tslib": "^2.8.1" + } + }, + "node_modules/@peculiar/asn1-pfx": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@peculiar/asn1-pfx/-/asn1-pfx-2.6.0.tgz", + "integrity": "sha512-rtUvtf+tyKGgokHHmZzeUojRZJYPxoD/jaN1+VAB4kKR7tXrnDCA/RAWXAIhMJJC+7W27IIRGe9djvxKgsldCQ==", + "license": "MIT", + "dependencies": { + "@peculiar/asn1-cms": "^2.6.0", + "@peculiar/asn1-pkcs8": "^2.6.0", + "@peculiar/asn1-rsa": "^2.6.0", + "@peculiar/asn1-schema": "^2.6.0", + "asn1js": "^3.0.6", + "tslib": "^2.8.1" + } + }, + "node_modules/@peculiar/asn1-pkcs8": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@peculiar/asn1-pkcs8/-/asn1-pkcs8-2.6.0.tgz", + "integrity": "sha512-KyQ4D8G/NrS7Fw3XCJrngxmjwO/3htnA0lL9gDICvEQ+GJ+EPFqldcJQTwPIdvx98Tua+WjkdKHSC0/Km7T+lA==", + "license": "MIT", + "dependencies": { + "@peculiar/asn1-schema": "^2.6.0", + "@peculiar/asn1-x509": "^2.6.0", + "asn1js": "^3.0.6", + "tslib": "^2.8.1" + } + }, + "node_modules/@peculiar/asn1-pkcs9": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@peculiar/asn1-pkcs9/-/asn1-pkcs9-2.6.0.tgz", + "integrity": "sha512-b78OQ6OciW0aqZxdzliXGYHASeCvvw5caqidbpQRYW2mBtXIX2WhofNXTEe7NyxTb0P6J62kAAWLwn0HuMF1Fw==", + "license": "MIT", + "dependencies": { + "@peculiar/asn1-cms": "^2.6.0", + "@peculiar/asn1-pfx": "^2.6.0", + "@peculiar/asn1-pkcs8": "^2.6.0", + "@peculiar/asn1-schema": "^2.6.0", + "@peculiar/asn1-x509": "^2.6.0", + "@peculiar/asn1-x509-attr": "^2.6.0", + "asn1js": "^3.0.6", + "tslib": "^2.8.1" + } + }, + "node_modules/@peculiar/asn1-rsa": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@peculiar/asn1-rsa/-/asn1-rsa-2.6.0.tgz", + "integrity": "sha512-Nu4C19tsrTsCp9fDrH+sdcOKoVfdfoQQ7S3VqjJU6vedR7tY3RLkQ5oguOIB3zFW33USDUuYZnPEQYySlgha4w==", + "license": "MIT", + "dependencies": { + "@peculiar/asn1-schema": "^2.6.0", + "@peculiar/asn1-x509": "^2.6.0", + "asn1js": "^3.0.6", + "tslib": "^2.8.1" + } + }, + "node_modules/@peculiar/asn1-schema": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@peculiar/asn1-schema/-/asn1-schema-2.6.0.tgz", + "integrity": "sha512-xNLYLBFTBKkCzEZIw842BxytQQATQv+lDTCEMZ8C196iJcJJMBUZxrhSTxLaohMyKK8QlzRNTRkUmanucnDSqg==", + "license": "MIT", + "dependencies": { + "asn1js": "^3.0.6", + "pvtsutils": "^1.3.6", + "tslib": "^2.8.1" + } + }, + "node_modules/@peculiar/asn1-x509": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@peculiar/asn1-x509/-/asn1-x509-2.6.0.tgz", + "integrity": "sha512-uzYbPEpoQiBoTq0/+jZtpM6Gq6zADBx+JNFP3yqRgziWBxQ/Dt/HcuvRfm9zJTPdRcBqPNdaRHTVwpyiq6iNMA==", + "license": "MIT", + "dependencies": { + "@peculiar/asn1-schema": "^2.6.0", + "asn1js": "^3.0.6", + "pvtsutils": "^1.3.6", + "tslib": "^2.8.1" + } + }, + "node_modules/@peculiar/asn1-x509-attr": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@peculiar/asn1-x509-attr/-/asn1-x509-attr-2.6.0.tgz", + "integrity": "sha512-MuIAXFX3/dc8gmoZBkwJWxUWOSvG4MMDntXhrOZpJVMkYX+MYc/rUAU2uJOved9iJEoiUx7//3D8oG83a78UJA==", + "license": "MIT", + "dependencies": { + "@peculiar/asn1-schema": "^2.6.0", + "@peculiar/asn1-x509": "^2.6.0", + "asn1js": "^3.0.6", + "tslib": "^2.8.1" + } + }, + "node_modules/@peculiar/x509": { + "version": "1.14.3", + "resolved": "https://registry.npmjs.org/@peculiar/x509/-/x509-1.14.3.tgz", + "integrity": "sha512-C2Xj8FZ0uHWeCXXqX5B4/gVFQmtSkiuOolzAgutjTfseNOHT3pUjljDZsTSxXFGgio54bCzVFqmEOUrIVk8RDA==", + "license": "MIT", + "dependencies": { + "@peculiar/asn1-cms": "^2.6.0", + "@peculiar/asn1-csr": "^2.6.0", + "@peculiar/asn1-ecc": "^2.6.0", + "@peculiar/asn1-pkcs9": "^2.6.0", + "@peculiar/asn1-rsa": "^2.6.0", + "@peculiar/asn1-schema": "^2.6.0", + "@peculiar/asn1-x509": "^2.6.0", + "pvtsutils": "^1.3.6", + "reflect-metadata": "^0.2.2", + "tslib": "^2.8.1", + "tsyringe": "^4.10.0" + }, + "engines": { + "node": ">=20.0.0" + } + }, "node_modules/@pnpm/config.env-replace": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/@pnpm/config.env-replace/-/config.env-replace-1.1.0.tgz", @@ -4446,9 +5356,9 @@ "license": "ISC" }, "node_modules/@pnpm/npm-conf": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@pnpm/npm-conf/-/npm-conf-2.3.1.tgz", - "integrity": "sha512-c83qWb22rNRuB0UaVCI0uRPNRr8Z0FWnEIvT47jiHAmOIUHbBOg5XvV7pM5x+rKn9HRpjxquDbXYSXr3fAKFcw==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@pnpm/npm-conf/-/npm-conf-3.0.2.tgz", + "integrity": "sha512-h104Kh26rR8tm+a3Qkc5S4VLYint3FE48as7+/5oCEcKR2idC/pF1G6AhIXKI+eHPJa/3J9i5z0Al47IeGHPkA==", "license": "MIT", "dependencies": { "@pnpm/config.env-replace": "^1.1.0", @@ -4465,6 +5375,182 @@ "integrity": "sha512-wwQAWhWSuHaag8c4q/KN/vCoeOJYshAIvMQwD4GpSb3OiZklFfvAgmj0VCBBImRpuF/aFgIRzllXlVX93Jevww==", "license": "MIT" }, + "node_modules/@rspack/binding": { + "version": "1.7.5", + "resolved": "https://registry.npmjs.org/@rspack/binding/-/binding-1.7.5.tgz", + "integrity": "sha512-tlZfDHfGu765FBL3hIyjrr8slJZztv7rCM+KIczZS7UlJQDl1+WsDKUe/+E1Fw9SlmorLWK40+y3rLTHmMrN2A==", + "license": "MIT", + "optionalDependencies": { + "@rspack/binding-darwin-arm64": "1.7.5", + "@rspack/binding-darwin-x64": "1.7.5", + "@rspack/binding-linux-arm64-gnu": "1.7.5", + "@rspack/binding-linux-arm64-musl": "1.7.5", + "@rspack/binding-linux-x64-gnu": "1.7.5", + "@rspack/binding-linux-x64-musl": "1.7.5", + "@rspack/binding-wasm32-wasi": "1.7.5", + "@rspack/binding-win32-arm64-msvc": "1.7.5", + "@rspack/binding-win32-ia32-msvc": "1.7.5", + "@rspack/binding-win32-x64-msvc": "1.7.5" + } + }, + "node_modules/@rspack/binding-darwin-arm64": { + "version": "1.7.5", + "resolved": "https://registry.npmjs.org/@rspack/binding-darwin-arm64/-/binding-darwin-arm64-1.7.5.tgz", + "integrity": "sha512-dg2/IrF+g498NUt654N8LFWfIiUsHlTankWieE1S3GWEQM6jweeRbNuu1Py1nWIUsjR2yQtv7ziia7c9Q8UTaQ==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rspack/binding-darwin-x64": { + "version": "1.7.5", + "resolved": "https://registry.npmjs.org/@rspack/binding-darwin-x64/-/binding-darwin-x64-1.7.5.tgz", + "integrity": "sha512-RQJX4boQJUu3lo1yiN344+y8W6iSO08ARXIZqFPg66coOgfX1lhsXQSRJGQEQG4PAcYuC0GmrYFzErliifbc1Q==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rspack/binding-linux-arm64-gnu": { + "version": "1.7.5", + "resolved": "https://registry.npmjs.org/@rspack/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-1.7.5.tgz", + "integrity": "sha512-R7CO1crkJQLIQpJQzf+6DMHjvcvH/VxsatS5CG897IIT2aAfBeQuQAO+ERJko/UwSZam2K8Rxjuopcu5A2jsTQ==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rspack/binding-linux-arm64-musl": { + "version": "1.7.5", + "resolved": "https://registry.npmjs.org/@rspack/binding-linux-arm64-musl/-/binding-linux-arm64-musl-1.7.5.tgz", + "integrity": "sha512-moDVFD06ISZi+wCIjJLzQSr8WO8paViacSHk+rOKQxwKI96cPoC4JFkz0+ibT2uks4i2ecs4Op48orsoguiXxw==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rspack/binding-linux-x64-gnu": { + "version": "1.7.5", + "resolved": "https://registry.npmjs.org/@rspack/binding-linux-x64-gnu/-/binding-linux-x64-gnu-1.7.5.tgz", + "integrity": "sha512-LGtdsdhtA5IxdMptj2NDVEbuZF4aqM99BVn3saHp92A4Fn20mW9UtQ+19PtaOFdbQBUN1GcP+cosrJ1wY56hOg==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rspack/binding-linux-x64-musl": { + "version": "1.7.5", + "resolved": "https://registry.npmjs.org/@rspack/binding-linux-x64-musl/-/binding-linux-x64-musl-1.7.5.tgz", + "integrity": "sha512-V1HTvuj0XF/e4Xnixqf7FrxdCtTkYqn26EKwH7ExUFuVBh4SsLGr29EK5SOXBG0xdy5TSEUokMup7cuONPb3Hw==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rspack/binding-wasm32-wasi": { + "version": "1.7.5", + "resolved": "https://registry.npmjs.org/@rspack/binding-wasm32-wasi/-/binding-wasm32-wasi-1.7.5.tgz", + "integrity": "sha512-rGNHrk2QuLFfwOTib91skuLh2aMYeTP4lgM4zanDhtt95DLDlwioETFY7FzY1WmS+Z3qnEyrgQIRp8osy0NKTw==", + "cpu": [ + "wasm32" + ], + "license": "MIT", + "optional": true, + "dependencies": { + "@napi-rs/wasm-runtime": "1.0.7" + } + }, + "node_modules/@rspack/binding-win32-arm64-msvc": { + "version": "1.7.5", + "resolved": "https://registry.npmjs.org/@rspack/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-1.7.5.tgz", + "integrity": "sha512-eLyD9URS9M2pYa7sPICu9S0OuDAMnnGfuqrZYlrtgnEOEgimaG39gX6ENLwHvlNulaVMMFTNbDnS/2MELZ7r7g==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rspack/binding-win32-ia32-msvc": { + "version": "1.7.5", + "resolved": "https://registry.npmjs.org/@rspack/binding-win32-ia32-msvc/-/binding-win32-ia32-msvc-1.7.5.tgz", + "integrity": "sha512-ZT4eC8hHWzweA6S4Tl2c/z/fvhbU7Wnh+l76z+qmDy8wuA8uNrHgIb1mHLPli/wsqcjmIy8rDO9gkIBitg5I+w==", + "cpu": [ + "ia32" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rspack/binding-win32-x64-msvc": { + "version": "1.7.5", + "resolved": "https://registry.npmjs.org/@rspack/binding-win32-x64-msvc/-/binding-win32-x64-msvc-1.7.5.tgz", + "integrity": "sha512-a2j10QS3dZvW+gdu+FXteAkChxsK2g9BRUOmpt13w22LkiGrdmOkMQyDWRgJNxUGJTlqIUqtXxs72nTTlzo2Sw==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rspack/core": { + "version": "1.7.5", + "resolved": "https://registry.npmjs.org/@rspack/core/-/core-1.7.5.tgz", + "integrity": "sha512-W1ChLhjBxGg6y4AHjEVjhcww/FZJ2O9obR0EOlYcfrfQGojCAUMeQjbmaF2sse5g5m0vSCaPtNYkycZ0qVRk1A==", + "license": "MIT", + "dependencies": { + "@module-federation/runtime-tools": "0.22.0", + "@rspack/binding": "1.7.5", + "@rspack/lite-tapable": "1.1.0" + }, + "engines": { + "node": ">=18.12.0" + }, + "peerDependencies": { + "@swc/helpers": ">=0.5.1" + }, + "peerDependenciesMeta": { + "@swc/helpers": { + "optional": true + } + } + }, + "node_modules/@rspack/lite-tapable": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@rspack/lite-tapable/-/lite-tapable-1.1.0.tgz", + "integrity": "sha512-E2B0JhYFmVAwdDiG14+DW0Di4Ze4Jg10Pc4/lILUrd5DRCaklduz2OvJ5HYQ6G+hd+WTzqQb3QnDNfK4yvAFYw==", + "license": "MIT" + }, "node_modules/@sideway/address": { "version": "4.1.5", "resolved": "https://registry.npmjs.org/@sideway/address/-/address-4.1.5.tgz", @@ -4487,9 +5573,9 @@ "license": "BSD-3-Clause" }, "node_modules/@sinclair/typebox": { - "version": "0.27.8", - "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz", - "integrity": "sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==", + "version": "0.27.10", + "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.10.tgz", + "integrity": "sha512-MTBk/3jGLNB2tVxv6uLlFh1iu64iYOQ2PbdOSK3NW8JZsmlaOh2q6sdtKowBhfw8QFLmYNzTW4/oK4uATIi6ZA==", "license": "MIT" }, "node_modules/@sindresorhus/is": { @@ -4515,75 +5601,6 @@ "micromark-util-symbol": "^1.0.1" } }, - "node_modules/@stoplight/json": { - "version": "3.21.7", - "resolved": "https://registry.npmjs.org/@stoplight/json/-/json-3.21.7.tgz", - "integrity": "sha512-xcJXgKFqv/uCEgtGlPxy3tPA+4I+ZI4vAuMJ885+ThkTHFVkC+0Fm58lA9NlsyjnkpxFh4YiQWpH+KefHdbA0A==", - "license": "Apache-2.0", - "dependencies": { - "@stoplight/ordered-object-literal": "^1.0.3", - "@stoplight/path": "^1.3.2", - "@stoplight/types": "^13.6.0", - "jsonc-parser": "~2.2.1", - "lodash": "^4.17.21", - "safe-stable-stringify": "^1.1" - }, - "engines": { - "node": ">=8.3.0" - } - }, - "node_modules/@stoplight/json-ref-resolver": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/@stoplight/json-ref-resolver/-/json-ref-resolver-3.1.6.tgz", - "integrity": "sha512-YNcWv3R3n3U6iQYBsFOiWSuRGE5su1tJSiX6pAPRVk7dP0L7lqCteXGzuVRQ0gMZqUl8v1P0+fAKxF6PLo9B5A==", - "license": "Apache-2.0", - "dependencies": { - "@stoplight/json": "^3.21.0", - "@stoplight/path": "^1.3.2", - "@stoplight/types": "^12.3.0 || ^13.0.0", - "@types/urijs": "^1.19.19", - "dependency-graph": "~0.11.0", - "fast-memoize": "^2.5.2", - "immer": "^9.0.6", - "lodash": "^4.17.21", - "tslib": "^2.6.0", - "urijs": "^1.19.11" - }, - "engines": { - "node": ">=8.3.0" - } - }, - "node_modules/@stoplight/ordered-object-literal": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/@stoplight/ordered-object-literal/-/ordered-object-literal-1.0.5.tgz", - "integrity": "sha512-COTiuCU5bgMUtbIFBuyyh2/yVVzlr5Om0v5utQDgBCuQUOPgU1DwoffkTfg4UBQOvByi5foF4w4T+H9CoRe5wg==", - "license": "Apache-2.0", - "engines": { - "node": ">=8" - } - }, - "node_modules/@stoplight/path": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/@stoplight/path/-/path-1.3.2.tgz", - "integrity": "sha512-lyIc6JUlUA8Ve5ELywPC8I2Sdnh1zc1zmbYgVarhXIp9YeAB0ReeqmGEOWNtlHkbP2DAA1AL65Wfn2ncjK/jtQ==", - "license": "Apache-2.0", - "engines": { - "node": ">=8" - } - }, - "node_modules/@stoplight/types": { - "version": "13.20.0", - "resolved": "https://registry.npmjs.org/@stoplight/types/-/types-13.20.0.tgz", - "integrity": "sha512-2FNTv05If7ib79VPDA/r9eUet76jewXFH2y2K5vuge6SXbRHtWBhcaRmu+6QpF4/WRNoJj5XYRSwLGXDxysBGA==", - "license": "Apache-2.0", - "dependencies": { - "@types/json-schema": "^7.0.4", - "utility-types": "^3.10.0" - }, - "engines": { - "node": "^12.20 || >=14.13" - } - }, "node_modules/@svgr/babel-plugin-add-jsx-attribute": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-add-jsx-attribute/-/babel-plugin-add-jsx-attribute-8.0.0.tgz", @@ -4841,53 +5858,460 @@ "url": "https://github.com/sponsors/gregberge" } }, - "node_modules/@szmarczak/http-timer": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-5.0.1.tgz", - "integrity": "sha512-+PmQX0PiAYPMeVYe237LJAYvOMYW1j2rH5YROyS3b4CTVJum34HfRvKvAzozHAQG0TnHNdUfY9nCeUyRAs//cw==", - "license": "MIT", + "node_modules/@swc/core": { + "version": "1.15.11", + "resolved": "https://registry.npmjs.org/@swc/core/-/core-1.15.11.tgz", + "integrity": "sha512-iLmLTodbYxU39HhMPaMUooPwO/zqJWvsqkrXv1ZI38rMb048p6N7qtAtTp37sw9NzSrvH6oli8EdDygo09IZ/w==", + "hasInstallScript": true, + "license": "Apache-2.0", "dependencies": { - "defer-to-connect": "^2.0.1" + "@swc/counter": "^0.1.3", + "@swc/types": "^0.1.25" }, "engines": { - "node": ">=14.16" + "node": ">=10" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/swc" + }, + "optionalDependencies": { + "@swc/core-darwin-arm64": "1.15.11", + "@swc/core-darwin-x64": "1.15.11", + "@swc/core-linux-arm-gnueabihf": "1.15.11", + "@swc/core-linux-arm64-gnu": "1.15.11", + "@swc/core-linux-arm64-musl": "1.15.11", + "@swc/core-linux-x64-gnu": "1.15.11", + "@swc/core-linux-x64-musl": "1.15.11", + "@swc/core-win32-arm64-msvc": "1.15.11", + "@swc/core-win32-ia32-msvc": "1.15.11", + "@swc/core-win32-x64-msvc": "1.15.11" + }, + "peerDependencies": { + "@swc/helpers": ">=0.5.17" + }, + "peerDependenciesMeta": { + "@swc/helpers": { + "optional": true + } } }, - "node_modules/@trysound/sax": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/@trysound/sax/-/sax-0.2.0.tgz", - "integrity": "sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==", - "license": "ISC", + "node_modules/@swc/core-darwin-arm64": { + "version": "1.15.11", + "resolved": "https://registry.npmjs.org/@swc/core-darwin-arm64/-/core-darwin-arm64-1.15.11.tgz", + "integrity": "sha512-QoIupRWVH8AF1TgxYyeA5nS18dtqMuxNwchjBIwJo3RdwLEFiJq6onOx9JAxHtuPwUkIVuU2Xbp+jCJ7Vzmgtg==", + "cpu": [ + "arm64" + ], + "license": "Apache-2.0 AND MIT", + "optional": true, + "os": [ + "darwin" + ], "engines": { - "node": ">=10.13.0" + "node": ">=10" } }, - "node_modules/@types/body-parser": { - "version": "1.19.6", - "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.6.tgz", - "integrity": "sha512-HLFeCYgz89uk22N5Qg3dvGvsv46B8GLvKKo1zKG4NybA8U2DiEO3w9lqGg29t/tfLRJpJ6iQxnVw4OnB7MoM9g==", - "license": "MIT", - "dependencies": { - "@types/connect": "*", - "@types/node": "*" + "node_modules/@swc/core-darwin-x64": { + "version": "1.15.11", + "resolved": "https://registry.npmjs.org/@swc/core-darwin-x64/-/core-darwin-x64-1.15.11.tgz", + "integrity": "sha512-S52Gu1QtPSfBYDiejlcfp9GlN+NjTZBRRNsz8PNwBgSE626/FUf2PcllVUix7jqkoMC+t0rS8t+2/aSWlMuQtA==", + "cpu": [ + "x64" + ], + "license": "Apache-2.0 AND MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=10" } }, - "node_modules/@types/bonjour": { - "version": "3.5.13", - "resolved": "https://registry.npmjs.org/@types/bonjour/-/bonjour-3.5.13.tgz", - "integrity": "sha512-z9fJ5Im06zvUL548KvYNecEVlA7cVDkGUi6kZusb04mpyEFKCIZJvloCcmpmLaIahDpOQGHaHmG6imtPMmPXGQ==", - "license": "MIT", - "dependencies": { - "@types/node": "*" + "node_modules/@swc/core-linux-arm-gnueabihf": { + "version": "1.15.11", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.15.11.tgz", + "integrity": "sha512-lXJs8oXo6Z4yCpimpQ8vPeCjkgoHu5NoMvmJZ8qxDyU99KVdg6KwU9H79vzrmB+HfH+dCZ7JGMqMF//f8Cfvdg==", + "cpu": [ + "arm" + ], + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=10" } }, - "node_modules/@types/connect": { - "version": "3.4.38", - "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.38.tgz", - "integrity": "sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==", - "license": "MIT", - "dependencies": { - "@types/node": "*" + "node_modules/@swc/core-linux-arm64-gnu": { + "version": "1.15.11", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.15.11.tgz", + "integrity": "sha512-chRsz1K52/vj8Mfq/QOugVphlKPWlMh10V99qfH41hbGvwAU6xSPd681upO4bKiOr9+mRIZZW+EfJqY42ZzRyA==", + "cpu": [ + "arm64" + ], + "license": "Apache-2.0 AND MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-linux-arm64-musl": { + "version": "1.15.11", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.15.11.tgz", + "integrity": "sha512-PYftgsTaGnfDK4m6/dty9ryK1FbLk+LosDJ/RJR2nkXGc8rd+WenXIlvHjWULiBVnS1RsjHHOXmTS4nDhe0v0w==", + "cpu": [ + "arm64" + ], + "license": "Apache-2.0 AND MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-linux-x64-gnu": { + "version": "1.15.11", + "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.15.11.tgz", + "integrity": "sha512-DKtnJKIHiZdARyTKiX7zdRjiDS1KihkQWatQiCHMv+zc2sfwb4Glrodx2VLOX4rsa92NLR0Sw8WLcPEMFY1szQ==", + "cpu": [ + "x64" + ], + "license": "Apache-2.0 AND MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-linux-x64-musl": { + "version": "1.15.11", + "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.15.11.tgz", + "integrity": "sha512-mUjjntHj4+8WBaiDe5UwRNHuEzLjIWBTSGTw0JT9+C9/Yyuh4KQqlcEQ3ro6GkHmBGXBFpGIj/o5VMyRWfVfWw==", + "cpu": [ + "x64" + ], + "license": "Apache-2.0 AND MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-win32-arm64-msvc": { + "version": "1.15.11", + "resolved": "https://registry.npmjs.org/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.15.11.tgz", + "integrity": "sha512-ZkNNG5zL49YpaFzfl6fskNOSxtcZ5uOYmWBkY4wVAvgbSAQzLRVBp+xArGWh2oXlY/WgL99zQSGTv7RI5E6nzA==", + "cpu": [ + "arm64" + ], + "license": "Apache-2.0 AND MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-win32-ia32-msvc": { + "version": "1.15.11", + "resolved": "https://registry.npmjs.org/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.15.11.tgz", + "integrity": "sha512-6XnzORkZCQzvTQ6cPrU7iaT9+i145oLwnin8JrfsLG41wl26+5cNQ2XV3zcbrnFEV6esjOceom9YO1w9mGJByw==", + "cpu": [ + "ia32" + ], + "license": "Apache-2.0 AND MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-win32-x64-msvc": { + "version": "1.15.11", + "resolved": "https://registry.npmjs.org/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.15.11.tgz", + "integrity": "sha512-IQ2n6af7XKLL6P1gIeZACskSxK8jWtoKpJWLZmdXTDj1MGzktUy4i+FvpdtxFmJWNavRWH1VmTr6kAubRDHeKw==", + "cpu": [ + "x64" + ], + "license": "Apache-2.0 AND MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/counter": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@swc/counter/-/counter-0.1.3.tgz", + "integrity": "sha512-e2BR4lsJkkRlKZ/qCHPw9ZaSxc0MVUd7gtbtaB7aMvHeJVYe8sOB8DBZkP2DtISHGSku9sCK6T6cnY0CtXrOCQ==", + "license": "Apache-2.0" + }, + "node_modules/@swc/html": { + "version": "1.15.11", + "resolved": "https://registry.npmjs.org/@swc/html/-/html-1.15.11.tgz", + "integrity": "sha512-JOO48SCxyR3KbH9iiLMSWRDm7+Xl6lgvOBe5di54W8PsumdeP0Imatq8cunkRAUR7br8xAjlpB16bX6iJeyeMw==", + "license": "Apache-2.0", + "dependencies": { + "@swc/counter": "^0.1.3" + }, + "engines": { + "node": ">=14" + }, + "optionalDependencies": { + "@swc/html-darwin-arm64": "1.15.11", + "@swc/html-darwin-x64": "1.15.11", + "@swc/html-linux-arm-gnueabihf": "1.15.11", + "@swc/html-linux-arm64-gnu": "1.15.11", + "@swc/html-linux-arm64-musl": "1.15.11", + "@swc/html-linux-x64-gnu": "1.15.11", + "@swc/html-linux-x64-musl": "1.15.11", + "@swc/html-win32-arm64-msvc": "1.15.11", + "@swc/html-win32-ia32-msvc": "1.15.11", + "@swc/html-win32-x64-msvc": "1.15.11" + } + }, + "node_modules/@swc/html-darwin-arm64": { + "version": "1.15.11", + "resolved": "https://registry.npmjs.org/@swc/html-darwin-arm64/-/html-darwin-arm64-1.15.11.tgz", + "integrity": "sha512-FTa0ypbMbUXiwXIIT76HMFQYewEdTsPKOQGDqI6/kUTzU+lCIqIJequdoh6gqQvMq2BtBu/15dkTYYIlp4JoJw==", + "cpu": [ + "arm64" + ], + "license": "Apache-2.0 AND MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/html-darwin-x64": { + "version": "1.15.11", + "resolved": "https://registry.npmjs.org/@swc/html-darwin-x64/-/html-darwin-x64-1.15.11.tgz", + "integrity": "sha512-U+WFUFqbqS2WsLVCt40MuBGJ7mxDJi/T8RocBvQkoRwU3juOmeM2V/Od/QLBZxTFZTLQ3RCHJTkLXSDnxUWUuw==", + "cpu": [ + "x64" + ], + "license": "Apache-2.0 AND MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/html-linux-arm-gnueabihf": { + "version": "1.15.11", + "resolved": "https://registry.npmjs.org/@swc/html-linux-arm-gnueabihf/-/html-linux-arm-gnueabihf-1.15.11.tgz", + "integrity": "sha512-Cid64465sEkAiTh8KLFCbQbsIbgDzPeGdA5ZYB8w5AXmYAGPJ0xbeRHEFq3iq469Dj2rxYvExrLCXNhn8rHbww==", + "cpu": [ + "arm" + ], + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/html-linux-arm64-gnu": { + "version": "1.15.11", + "resolved": "https://registry.npmjs.org/@swc/html-linux-arm64-gnu/-/html-linux-arm64-gnu-1.15.11.tgz", + "integrity": "sha512-sxKdt0QJIR2x/6pAmDPK0tjfGVwsSZsfeY1BM8ODTm7h18ApE7KVNN+ZtsDbl4n5ejfXG7fOWNmMPUvj8qSMSA==", + "cpu": [ + "arm64" + ], + "license": "Apache-2.0 AND MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/html-linux-arm64-musl": { + "version": "1.15.11", + "resolved": "https://registry.npmjs.org/@swc/html-linux-arm64-musl/-/html-linux-arm64-musl-1.15.11.tgz", + "integrity": "sha512-aNACh2/HPy52VbKPqHieVRDeKzkO66DQdlhiVUi+fggdn8khvllni6Xr52INeAMjYFASrTTth/3vKXMv215t3A==", + "cpu": [ + "arm64" + ], + "license": "Apache-2.0 AND MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/html-linux-x64-gnu": { + "version": "1.15.11", + "resolved": "https://registry.npmjs.org/@swc/html-linux-x64-gnu/-/html-linux-x64-gnu-1.15.11.tgz", + "integrity": "sha512-8YOar0XeRLBzA+UMMW5smGpsQamoZLtaQ5RKGfap21FxOUUXqkPhkDTRr+kBVCYb47yz3NokjTPaDGTWOYNyww==", + "cpu": [ + "x64" + ], + "license": "Apache-2.0 AND MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/html-linux-x64-musl": { + "version": "1.15.11", + "resolved": "https://registry.npmjs.org/@swc/html-linux-x64-musl/-/html-linux-x64-musl-1.15.11.tgz", + "integrity": "sha512-em2Ur0uGFA/nw2JbMclXu9mLuUC7q/1J06i8FZTRHqZzNGt9Q0UMdgH9T8HkGLT5e7dZ6ROJoq1H4st6B8N3uw==", + "cpu": [ + "x64" + ], + "license": "Apache-2.0 AND MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/html-win32-arm64-msvc": { + "version": "1.15.11", + "resolved": "https://registry.npmjs.org/@swc/html-win32-arm64-msvc/-/html-win32-arm64-msvc-1.15.11.tgz", + "integrity": "sha512-Xf9Vd4UsYTs4ejBwS+j9zShkyp3KQ+qfn/ZKVMKDygWjuOjU6FFXWYm93/PdTmS5qD0c58FhmoqTv+uFEZ4nxQ==", + "cpu": [ + "arm64" + ], + "license": "Apache-2.0 AND MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/html-win32-ia32-msvc": { + "version": "1.15.11", + "resolved": "https://registry.npmjs.org/@swc/html-win32-ia32-msvc/-/html-win32-ia32-msvc-1.15.11.tgz", + "integrity": "sha512-+YNzKR81UqH+xOZPU8XEIy5L6E63UUGSSEu1Wv3D85GVMQkZ8X9LZkZ5hq4vvqmCTV1zeHIPfzNrrVElqK198g==", + "cpu": [ + "ia32" + ], + "license": "Apache-2.0 AND MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/html-win32-x64-msvc": { + "version": "1.15.11", + "resolved": "https://registry.npmjs.org/@swc/html-win32-x64-msvc/-/html-win32-x64-msvc-1.15.11.tgz", + "integrity": "sha512-Y3Xj62eA+pjadhgiVNFUBgIN9Wa1gYrB3N1l6NmSLeApVE2qkBww3WrVXhRDfqUXiWz7eRHPDakZSRQREyMv5A==", + "cpu": [ + "x64" + ], + "license": "Apache-2.0 AND MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/types": { + "version": "0.1.25", + "resolved": "https://registry.npmjs.org/@swc/types/-/types-0.1.25.tgz", + "integrity": "sha512-iAoY/qRhNH8a/hBvm3zKj9qQ4oc2+3w1unPJa2XvTK3XjeLXtzcCingVPw/9e5mn1+0yPqxcBGp9Jf0pkfMb1g==", + "license": "Apache-2.0", + "dependencies": { + "@swc/counter": "^0.1.3" + } + }, + "node_modules/@szmarczak/http-timer": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-5.0.1.tgz", + "integrity": "sha512-+PmQX0PiAYPMeVYe237LJAYvOMYW1j2rH5YROyS3b4CTVJum34HfRvKvAzozHAQG0TnHNdUfY9nCeUyRAs//cw==", + "license": "MIT", + "dependencies": { + "defer-to-connect": "^2.0.1" + }, + "engines": { + "node": ">=14.16" + } + }, + "node_modules/@trysound/sax": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@trysound/sax/-/sax-0.2.0.tgz", + "integrity": "sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==", + "license": "ISC", + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/@tybys/wasm-util": { + "version": "0.10.1", + "resolved": "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.10.1.tgz", + "integrity": "sha512-9tTaPJLSiejZKx+Bmog4uSubteqTvFrVrURwkmHixBo0G4seD0zUxp98E1DzUBJxLQ3NPwXrGKDiVjwx/DpPsg==", + "license": "MIT", + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@types/body-parser": { + "version": "1.19.6", + "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.6.tgz", + "integrity": "sha512-HLFeCYgz89uk22N5Qg3dvGvsv46B8GLvKKo1zKG4NybA8U2DiEO3w9lqGg29t/tfLRJpJ6iQxnVw4OnB7MoM9g==", + "license": "MIT", + "dependencies": { + "@types/connect": "*", + "@types/node": "*" + } + }, + "node_modules/@types/bonjour": { + "version": "3.5.13", + "resolved": "https://registry.npmjs.org/@types/bonjour/-/bonjour-3.5.13.tgz", + "integrity": "sha512-z9fJ5Im06zvUL548KvYNecEVlA7cVDkGUi6kZusb04mpyEFKCIZJvloCcmpmLaIahDpOQGHaHmG6imtPMmPXGQ==", + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/connect": { + "version": "3.4.38", + "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.38.tgz", + "integrity": "sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==", + "license": "MIT", + "dependencies": { + "@types/node": "*" } }, "node_modules/@types/connect-history-api-fallback": { @@ -4945,33 +6369,21 @@ } }, "node_modules/@types/express": { - "version": "4.17.23", - "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.23.tgz", - "integrity": "sha512-Crp6WY9aTYP3qPi2wGDo9iUe/rceX01UMhnF1jmwDcKCFM6cx7YhGP/Mpr3y9AASpfHixIG0E6azCcL5OcDHsQ==", + "version": "4.17.25", + "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.25.tgz", + "integrity": "sha512-dVd04UKsfpINUnK0yBoYHDF3xu7xVH4BuDotC/xGuycx4CgbP48X/KF/586bcObxT0HENHXEU8Nqtu6NR+eKhw==", "license": "MIT", "dependencies": { "@types/body-parser": "*", "@types/express-serve-static-core": "^4.17.33", "@types/qs": "*", - "@types/serve-static": "*" + "@types/serve-static": "^1" } }, "node_modules/@types/express-serve-static-core": { - "version": "5.0.7", - "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-5.0.7.tgz", - "integrity": "sha512-R+33OsgWw7rOhD1emjU7dzCDHucJrgJXMA5PYCzJxVil0dsyx5iBEPHqpPfiKNJQb7lZ1vxwoLR4Z87bBUpeGQ==", - "license": "MIT", - "dependencies": { - "@types/node": "*", - "@types/qs": "*", - "@types/range-parser": "*", - "@types/send": "*" - } - }, - "node_modules/@types/express/node_modules/@types/express-serve-static-core": { - "version": "4.19.6", - "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.19.6.tgz", - "integrity": "sha512-N4LZ2xG7DatVqhCZzOGb1Yi5lMbXSZcmdLDe9EzSndPV2HpWYWzRbaerl2n27irrm94EPpprqa8KpskPT085+A==", + "version": "4.19.8", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.19.8.tgz", + "integrity": "sha512-02S5fmqeoKzVZCHPZid4b8JH2eM5HzQLZWN2FohQEy/0eXTq8VXZfSN6Pcr3F6N9R/vNrj7cpgbhjie6m/1tCA==", "license": "MIT", "dependencies": { "@types/node": "*", @@ -4986,15 +6398,6 @@ "integrity": "sha512-6C8nqWur3j98U6+lXDfTUWIfgvZU+EumvpHKcYjujKH7woYyLj2sUmff0tRhrqM7BohUw7Pz3ZB1jj2gW9Fvmg==", "license": "MIT" }, - "node_modules/@types/geojson-vt": { - "version": "3.2.5", - "resolved": "https://registry.npmjs.org/@types/geojson-vt/-/geojson-vt-3.2.5.tgz", - "integrity": "sha512-qDO7wqtprzlpe8FfQ//ClPV9xiuoh2nkIgiouIptON9w5jvD/fA4szvP9GBlDVdJ5dldAl0kX/sy3URbWwLx0g==", - "license": "MIT", - "dependencies": { - "@types/geojson": "*" - } - }, "node_modules/@types/gtag.js": { "version": "0.0.12", "resolved": "https://registry.npmjs.org/@types/gtag.js/-/gtag.js-0.0.12.tgz", @@ -5023,9 +6426,9 @@ "license": "MIT" }, "node_modules/@types/http-cache-semantics": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.0.4.tgz", - "integrity": "sha512-1m0bIFVc7eJWyve9S0RnuRgcQqF/Xd5QsUZAZeQFr1Q3/p9JWoQQEqmVy+DPTNpGXwhgIetAoYF8JSc33q29QA==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.2.0.tgz", + "integrity": "sha512-L3LgimLHXtGkWikKnsPg0/VFx9OGZaC+eN1u4r+OB1XRqH3meBIAVC2zr1WdMH+RHmnRkqliQAOHNJ/E0j/e0Q==", "license": "MIT" }, "node_modules/@types/http-errors": { @@ -5035,9 +6438,9 @@ "license": "MIT" }, "node_modules/@types/http-proxy": { - "version": "1.17.16", - "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.16.tgz", - "integrity": "sha512-sdWoUajOB1cd0A8cRRQ1cfyWNbmFKLAqBB89Y8x5iYyG/mkJHc0YUH8pdWBy2omi9qtCpiIgGjuwO0dQST2l5w==", + "version": "1.17.17", + "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.17.tgz", + "integrity": "sha512-ED6LB+Z1AVylNTu7hdzuBqOgMnvG/ld6wGCG8wFnAzKX5uyW2K3WD52v0gnLCTK/VLpXtKckgWuyScYK6cSPaw==", "license": "MIT", "dependencies": { "@types/node": "*" @@ -5073,23 +6476,6 @@ "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", "license": "MIT" }, - "node_modules/@types/mapbox__point-geometry": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/@types/mapbox__point-geometry/-/mapbox__point-geometry-0.1.4.tgz", - "integrity": "sha512-mUWlSxAmYLfwnRBmgYV86tgYmMIICX4kza8YnE/eIlywGe2XoOxlpVnXWwir92xRLjwyarqwpu2EJKD2pk0IUA==", - "license": "MIT" - }, - "node_modules/@types/mapbox__vector-tile": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/@types/mapbox__vector-tile/-/mapbox__vector-tile-1.3.4.tgz", - "integrity": "sha512-bpd8dRn9pr6xKvuEBQup8pwQfD4VUyqO/2deGjfpe6AwC8YRlyEipvefyRJUSiCJTZuCb8Pl1ciVV5ekqJ96Bg==", - "license": "MIT", - "dependencies": { - "@types/geojson": "*", - "@types/mapbox__point-geometry": "*", - "@types/pbf": "*" - } - }, "node_modules/@types/mdast": { "version": "4.0.4", "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-4.0.4.tgz", @@ -5118,41 +6504,20 @@ "license": "MIT" }, "node_modules/@types/node": { - "version": "24.0.15", - "resolved": "https://registry.npmjs.org/@types/node/-/node-24.0.15.tgz", - "integrity": "sha512-oaeTSbCef7U/z7rDeJA138xpG3NuKc64/rZ2qmUFkFJmnMsAPaluIifqyWd8hSSMxyP9oie3dLAqYPblag9KgA==", - "license": "MIT", - "dependencies": { - "undici-types": "~7.8.0" - } - }, - "node_modules/@types/node-forge": { - "version": "1.3.13", - "resolved": "https://registry.npmjs.org/@types/node-forge/-/node-forge-1.3.13.tgz", - "integrity": "sha512-zePQJSW5QkwSHKRApqWCVKeKoSOt4xvEnLENZPjyvm9Ezdf/EyDeJM7jqLzOwjVICQQzvLZ63T55MKdJB5H6ww==", + "version": "25.2.1", + "resolved": "https://registry.npmjs.org/@types/node/-/node-25.2.1.tgz", + "integrity": "sha512-CPrnr8voK8vC6eEtyRzvMpgp3VyVRhgclonE7qYi6P9sXwYb59ucfrnmFBTaP0yUi8Gk4yZg/LlTJULGxvTNsg==", "license": "MIT", "dependencies": { - "@types/node": "*" + "undici-types": "~7.16.0" } }, - "node_modules/@types/pbf": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/@types/pbf/-/pbf-3.0.5.tgz", - "integrity": "sha512-j3pOPiEcWZ34R6a6mN07mUkM4o4Lwf6hPNt8eilOeZhTFbxFXmKhvXl9Y28jotFPaI1bpPDJsbCprUoNke6OrA==", - "license": "MIT" - }, "node_modules/@types/prismjs": { "version": "1.26.5", "resolved": "https://registry.npmjs.org/@types/prismjs/-/prismjs-1.26.5.tgz", "integrity": "sha512-AUZTa7hQ2KY5L7AmtSiqxlhWxb4ina0yd8hNbl4TWuqnv/pFP0nDMb3YrfSBf4hJVGLh2YEIBfKaBW/9UEl6IQ==", "license": "MIT" }, - "node_modules/@types/q": { - "version": "1.5.8", - "resolved": "https://registry.npmjs.org/@types/q/-/q-1.5.8.tgz", - "integrity": "sha512-hroOstUScF6zhIi+5+x0dzqrHA1EJi+Irri6b1fxolMTqqHIV/Cg77EtnQcZqZCu8hR3mX2BzIxN4/GzI68Kfw==", - "license": "MIT" - }, "node_modules/@types/qs": { "version": "6.14.0", "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.14.0.tgz", @@ -5166,12 +6531,12 @@ "license": "MIT" }, "node_modules/@types/react": { - "version": "19.1.8", - "resolved": "https://registry.npmjs.org/@types/react/-/react-19.1.8.tgz", - "integrity": "sha512-AwAfQ2Wa5bCx9WP8nZL2uMZWod7J7/JSplxbTmBQ5ms6QpqNYm672H0Vu9ZVKVngQ+ii4R/byguVEUZQyeg44g==", + "version": "19.2.13", + "resolved": "https://registry.npmjs.org/@types/react/-/react-19.2.13.tgz", + "integrity": "sha512-KkiJeU6VbYbUOp5ITMIc7kBfqlYkKA5KhEHVrGMmUUMt7NeaZg65ojdPk+FtNrBAOXNVM5QM72jnADjM+XVRAQ==", "license": "MIT", "dependencies": { - "csstype": "^3.0.2" + "csstype": "^3.2.2" } }, "node_modules/@types/react-router": { @@ -5207,9 +6572,9 @@ } }, "node_modules/@types/retry": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.0.tgz", - "integrity": "sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==", + "version": "0.12.2", + "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.2.tgz", + "integrity": "sha512-XISRgDJ2Tc5q4TRqvgJtzsRkFYNJzZrhTdtMoGVBttwzzQJkPnS3WWTFc7kuDRoPtPakl+T+OfdEUjYJj7Jbow==", "license": "MIT" }, "node_modules/@types/sax": { @@ -5222,12 +6587,11 @@ } }, "node_modules/@types/send": { - "version": "0.17.5", - "resolved": "https://registry.npmjs.org/@types/send/-/send-0.17.5.tgz", - "integrity": "sha512-z6F2D3cOStZvuk2SaP6YrwkNO65iTZcwA2ZkSABegdkAh/lf+Aa/YQndZVfmEXT5vgAp6zv06VQ3ejSVjAny4w==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@types/send/-/send-1.2.1.tgz", + "integrity": "sha512-arsCikDvlU99zl1g69TcAB3mzZPpxgw0UQnaHeC1Nwb015xp8bknZv5rIfri9xTOcMuaVgvabfIRA7PSZVuZIQ==", "license": "MIT", "dependencies": { - "@types/mime": "^1", "@types/node": "*" } }, @@ -5241,14 +6605,24 @@ } }, "node_modules/@types/serve-static": { - "version": "1.15.8", - "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.8.tgz", - "integrity": "sha512-roei0UY3LhpOJvjbIP6ZZFngyLKl5dskOtDhxY5THRSpO+ZI+nzJ+m5yUMzGrp89YRa7lvknKkMYjqQFGwA7Sg==", + "version": "1.15.10", + "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.10.tgz", + "integrity": "sha512-tRs1dB+g8Itk72rlSI2ZrW6vZg0YrLI81iQSTkMmOqnqCaNr/8Ek4VwWcN5vZgCYWbg/JJSGBlUaYGAOP73qBw==", "license": "MIT", "dependencies": { "@types/http-errors": "*", "@types/node": "*", - "@types/send": "*" + "@types/send": "<1" + } + }, + "node_modules/@types/serve-static/node_modules/@types/send": { + "version": "0.17.6", + "resolved": "https://registry.npmjs.org/@types/send/-/send-0.17.6.tgz", + "integrity": "sha512-Uqt8rPBE8SY0RK8JB1EzVOIZ32uqy8HwdxCnoCOsYrvnswqmFZ/k+9Ikidlk/ImhsdvBsloHbAlewb2IEBV/Og==", + "license": "MIT", + "dependencies": { + "@types/mime": "^1", + "@types/node": "*" } }, "node_modules/@types/sockjs": { @@ -5275,12 +6649,6 @@ "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", "license": "MIT" }, - "node_modules/@types/urijs": { - "version": "1.19.25", - "resolved": "https://registry.npmjs.org/@types/urijs/-/urijs-1.19.25.tgz", - "integrity": "sha512-XOfUup9r3Y06nFAZh3WvO0rBU4OtlfPB/vgxpjg+NRdGU6CN6djdc6OEiH+PcqHCY6eFLo9Ista73uarf4gnBg==", - "license": "MIT" - }, "node_modules/@types/ws": { "version": "8.18.1", "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.18.1.tgz", @@ -5291,9 +6659,9 @@ } }, "node_modules/@types/yargs": { - "version": "17.0.33", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.33.tgz", - "integrity": "sha512-WpxBCKWPLr4xSsHgz511rFJAM+wS28w2zEO1QDNY5zM/S8ok70NNfztH0xwhqKyaK0OHCbN98LDAZuy1ctxDkA==", + "version": "17.0.35", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.35.tgz", + "integrity": "sha512-qUHkeCyQFxMXg79wQfTtfndEC+N9ZZg76HJftDJp+qH2tV7Gj4OJi7l+PiWwJ+pWtW8GwSmqsDj/oymhrTWXjg==", "license": "MIT", "dependencies": { "@types/yargs-parser": "*" @@ -5482,10 +6850,40 @@ "node": ">= 0.6" } }, - "node_modules/acorn": { - "version": "8.15.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.15.0.tgz", - "integrity": "sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==", + "node_modules/accepts/node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/accepts/node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "license": "MIT", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/accepts/node_modules/negotiator": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/acorn": { + "version": "8.15.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.15.0.tgz", + "integrity": "sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==", "license": "MIT", "bin": { "acorn": "bin/acorn" @@ -5614,33 +7012,34 @@ } }, "node_modules/algoliasearch": { - "version": "5.34.0", - "resolved": "https://registry.npmjs.org/algoliasearch/-/algoliasearch-5.34.0.tgz", - "integrity": "sha512-wioVnf/8uuG8Bmywhk5qKIQ3wzCCtmdvicPRb0fa3kKYGGoewfgDqLEaET1MV2NbTc3WGpPv+AgauLVBp1nB9A==", - "license": "MIT", - "dependencies": { - "@algolia/client-abtesting": "5.34.0", - "@algolia/client-analytics": "5.34.0", - "@algolia/client-common": "5.34.0", - "@algolia/client-insights": "5.34.0", - "@algolia/client-personalization": "5.34.0", - "@algolia/client-query-suggestions": "5.34.0", - "@algolia/client-search": "5.34.0", - "@algolia/ingestion": "1.34.0", - "@algolia/monitoring": "1.34.0", - "@algolia/recommend": "5.34.0", - "@algolia/requester-browser-xhr": "5.34.0", - "@algolia/requester-fetch": "5.34.0", - "@algolia/requester-node-http": "5.34.0" + "version": "5.48.0", + "resolved": "https://registry.npmjs.org/algoliasearch/-/algoliasearch-5.48.0.tgz", + "integrity": "sha512-aD8EQC6KEman6/S79FtPdQmB7D4af/etcRL/KwiKFKgAE62iU8c5PeEQvpvIcBPurC3O/4Lj78nOl7ZcoazqSw==", + "license": "MIT", + "dependencies": { + "@algolia/abtesting": "1.14.0", + "@algolia/client-abtesting": "5.48.0", + "@algolia/client-analytics": "5.48.0", + "@algolia/client-common": "5.48.0", + "@algolia/client-insights": "5.48.0", + "@algolia/client-personalization": "5.48.0", + "@algolia/client-query-suggestions": "5.48.0", + "@algolia/client-search": "5.48.0", + "@algolia/ingestion": "1.48.0", + "@algolia/monitoring": "1.48.0", + "@algolia/recommend": "5.48.0", + "@algolia/requester-browser-xhr": "5.48.0", + "@algolia/requester-fetch": "5.48.0", + "@algolia/requester-node-http": "5.48.0" }, "engines": { "node": ">= 14.0.0" } }, "node_modules/algoliasearch-helper": { - "version": "3.26.0", - "resolved": "https://registry.npmjs.org/algoliasearch-helper/-/algoliasearch-helper-3.26.0.tgz", - "integrity": "sha512-Rv2x3GXleQ3ygwhkhJubhhYGsICmShLAiqtUuJTUkr9uOCOXyF2E71LVT4XDnVffbknv8XgScP4U0Oxtgm+hIw==", + "version": "3.27.0", + "resolved": "https://registry.npmjs.org/algoliasearch-helper/-/algoliasearch-helper-3.27.0.tgz", + "integrity": "sha512-eNYchRerbsvk2doHOMfdS1/B6Tm70oGtu8mzQlrNzbCeQ8p1MjCW8t/BL6iZ5PD+cL5NNMgTMyMnmiXZ1sgmNw==", "license": "MIT", "dependencies": { "@algolia/events": "^4.0.1" @@ -5649,12 +7048,6 @@ "algoliasearch": ">= 3.1 < 6" } }, - "node_modules/alphanum-sort": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/alphanum-sort/-/alphanum-sort-1.0.2.tgz", - "integrity": "sha512-0FcBfdcmaumGPQ0qPn7Q5qTgz/ooXgIyp1rf8ik5bGX8mpE2YHjC0P/eyQvxu1GURYQgq9ozf2mteQ5ZD9YiyQ==", - "license": "MIT" - }, "node_modules/ansi-align": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.1.tgz", @@ -5684,18 +7077,6 @@ "node": ">=8" } }, - "node_modules/ansi-align/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "license": "MIT", - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/ansi-escapes": { "version": "4.3.2", "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", @@ -5735,18 +7116,6 @@ "ansi-html": "bin/ansi-html" } }, - "node_modules/ansi-red": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/ansi-red/-/ansi-red-0.1.1.tgz", - "integrity": "sha512-ewaIr5y+9CUTGFwZfpECUbFlGcC0GCw1oqR9RI6h1gQCd9Aj2GxSckCnPsVJnmfMZbwFYE+leZGASgkWl06Jow==", - "license": "MIT", - "dependencies": { - "ansi-wrap": "0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/ansi-regex": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", @@ -5771,15 +7140,6 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/ansi-wrap": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/ansi-wrap/-/ansi-wrap-0.1.0.tgz", - "integrity": "sha512-ZyznvL8k/FZeQHr2T6LzcJ/+vBApDnMNZvfVFy3At0knswWd6rJ3/0Hhmpu8oqa6C92npmozs890sX9Dl6q+Qw==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/anymatch": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", @@ -5793,47 +7153,6 @@ "node": ">= 8" } }, - "node_modules/arch": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/arch/-/arch-2.2.0.tgz", - "integrity": "sha512-Of/R0wqp83cgHozfIYLbBMnej79U/SVGOOyuB3VVFv1NRM/PSFMK12x9KVtiYzJqmnU5WR2qp0Z5rHb7sWGnFQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT" - }, - "node_modules/archive-type": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/archive-type/-/archive-type-4.0.0.tgz", - "integrity": "sha512-zV4Ky0v1F8dBrdYElwTvQhweQ0P7Kwc1aluqJsYtOBP01jXcWCyW2IEfI1YiqsG+Iy7ZR+o5LF1N+PGECBxHWA==", - "license": "MIT", - "dependencies": { - "file-type": "^4.2.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/archive-type/node_modules/file-type": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-4.4.0.tgz", - "integrity": "sha512-f2UbFQEk7LXgWpi5ntcO86OeA/cC80fuDDDaX/fZ2ZGel+AF7leRQqBBW1eJNiiQkrZlAoM6P+VYP5P6bOlDEQ==", - "license": "MIT", - "engines": { - "node": ">=4" - } - }, "node_modules/arg": { "version": "5.0.2", "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz", @@ -5846,37 +7165,11 @@ "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", "license": "Python-2.0" }, - "node_modules/arr-diff": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", - "integrity": "sha512-YVIQ82gZPGBebQV/a8dar4AitzCQs0jjXwMPZllpXMaGjXPYVUawSxQrRsjhjupyVxEvbHgUmIhKVlND+j02kA==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/arr-flatten": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", - "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/arr-union": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", - "integrity": "sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/array-buffer-byte-length": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.2.tgz", "integrity": "sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==", + "dev": true, "license": "MIT", "dependencies": { "call-bound": "^1.0.3", @@ -5889,21 +7182,35 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/array-find-index": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", - "integrity": "sha512-M1HQyIXcBGtVywBt8WVdim+lrNaK7VHp99Qt5pSNziXznKHViIBbXWtfRTpEFpF/c4FdfxNAsCCwPp5phBYJtw==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/array-flatten": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==", "license": "MIT" }, + "node_modules/array-includes": { + "version": "3.1.9", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.9.tgz", + "integrity": "sha512-FmeCCAenzH0KH381SPT5FZmiA/TmpndpcaShhfgEN9eCVjnFBqq3l1xrI42y8+PPLI6hypzou4GXw00WHmPBLQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", + "define-properties": "^1.2.1", + "es-abstract": "^1.24.0", + "es-object-atoms": "^1.1.1", + "get-intrinsic": "^1.3.0", + "is-string": "^1.1.1", + "math-intrinsics": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/array-union": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", @@ -5913,36 +7220,19 @@ "node": ">=8" } }, - "node_modules/array-uniq": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", - "integrity": "sha512-MNha4BWQ6JbwhFhj03YK552f7cb3AzoE8SzeljgChvL1dl3IcvggXVz1DilzySZkCja+CXuZbdW7yATchWn8/Q==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/array-unique": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", - "integrity": "sha512-SleRWjh9JUud2wH1hPs9rZBZ33H6T9HOiL0uwGnGx9FpE6wKGyfWugmbkEOIs6qWrZhg0LWeLziLrEwQJhs5mQ==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/array.prototype.filter": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/array.prototype.filter/-/array.prototype.filter-1.0.4.tgz", - "integrity": "sha512-r+mCJ7zXgXElgR4IRC+fkvNCeoaavWBs6EdCso5Tbcf+iEMKzBU/His60lt34WEZ9vlb8wDkZvQGcVI5GwkfoQ==", + "node_modules/array.prototype.findlast": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/array.prototype.findlast/-/array.prototype.findlast-1.2.5.tgz", + "integrity": "sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==", + "dev": true, "license": "MIT", "dependencies": { "call-bind": "^1.0.7", "define-properties": "^1.2.1", "es-abstract": "^1.23.2", - "es-array-method-boxes-properly": "^1.0.0", + "es-errors": "^1.3.0", "es-object-atoms": "^1.0.0", - "is-string": "^1.0.7" + "es-shim-unscopables": "^1.0.2" }, "engines": { "node": ">= 0.4" @@ -5951,16 +7241,16 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/array.prototype.find": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/array.prototype.find/-/array.prototype.find-2.2.3.tgz", - "integrity": "sha512-fO/ORdOELvjbbeIfZfzrXFMhYHGofRGqd+am9zm3tZ4GlJINj/pA2eITyfd65Vg6+ZbHd/Cys7stpoRSWtQFdA==", + "node_modules/array.prototype.flat": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.3.tgz", + "integrity": "sha512-rwG/ja1neyLqCuGZ5YYrznA62D4mZXg0i1cIskIUKSiqF3Cje9/wXAls9B9s1Wa2fomMsIv8czB8jZcPmxCXFg==", + "dev": true, "license": "MIT", "dependencies": { - "call-bind": "^1.0.7", + "call-bind": "^1.0.8", "define-properties": "^1.2.1", - "es-abstract": "^1.23.2", - "es-object-atoms": "^1.0.0", + "es-abstract": "^1.23.5", "es-shim-unscopables": "^1.0.2" }, "engines": { @@ -5970,10 +7260,11 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/array.prototype.flat": { + "node_modules/array.prototype.flatmap": { "version": "1.3.3", - "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.3.tgz", - "integrity": "sha512-rwG/ja1neyLqCuGZ5YYrznA62D4mZXg0i1cIskIUKSiqF3Cje9/wXAls9B9s1Wa2fomMsIv8czB8jZcPmxCXFg==", + "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.3.tgz", + "integrity": "sha512-Y7Wt51eKJSyi80hFrJCePGGNo5ktJCslFuboqJsbf57CCPcm5zztluPlc4/aD8sWsKvlwatezpV4U1efk8kpjg==", + "dev": true, "license": "MIT", "dependencies": { "call-bind": "^1.0.8", @@ -5988,32 +7279,28 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/array.prototype.reduce": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/array.prototype.reduce/-/array.prototype.reduce-1.0.8.tgz", - "integrity": "sha512-DwuEqgXFBwbmZSRqt3BpQigWNUoqw9Ml2dTWdF3B2zQlQX4OeUE0zyuzX0fX0IbTvjdkZbcBTU3idgpO78qkTw==", + "node_modules/array.prototype.tosorted": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/array.prototype.tosorted/-/array.prototype.tosorted-1.1.4.tgz", + "integrity": "sha512-p6Fx8B7b7ZhL/gmUsAy0D15WhvDccw3mnGNbZpi3pmeJdxtWsj2jEaI4Y6oo3XiHfzuSgPwKc04MYt6KgvC/wA==", + "dev": true, "license": "MIT", "dependencies": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.4", + "call-bind": "^1.0.7", "define-properties": "^1.2.1", - "es-abstract": "^1.23.9", - "es-array-method-boxes-properly": "^1.0.0", + "es-abstract": "^1.23.3", "es-errors": "^1.3.0", - "es-object-atoms": "^1.1.1", - "is-string": "^1.1.1" + "es-shim-unscopables": "^1.0.2" }, "engines": { "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" } }, "node_modules/arraybuffer.prototype.slice": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.4.tgz", "integrity": "sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==", + "dev": true, "license": "MIT", "dependencies": { "array-buffer-byte-length": "^1.0.1", @@ -6031,40 +7318,18 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/arrify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", - "integrity": "sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/asn1": { - "version": "0.2.6", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz", - "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==", - "license": "MIT", + "node_modules/asn1js": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/asn1js/-/asn1js-3.0.7.tgz", + "integrity": "sha512-uLvq6KJu04qoQM6gvBfKFjlh6Gl0vOKQuR5cJMDHQkmwfMOQeN3F3SHCv9SNYSL+CRoHvOGFfllDlVz03GQjvQ==", + "license": "BSD-3-Clause", "dependencies": { - "safer-buffer": "~2.1.0" - } - }, - "node_modules/assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==", - "license": "MIT", - "engines": { - "node": ">=0.8" - } - }, - "node_modules/assign-symbols": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", - "integrity": "sha512-Q+JC7Whu8HhmTdBph/Tq59IoRtoy6KAm5zzPv00WdujX82lbAL8K7WVjne7vdCsAmbF4AYaDOPyO3k0kl8qIrw==", - "license": "MIT", + "pvtsutils": "^1.3.6", + "pvutils": "^1.1.3", + "tslib": "^2.8.1" + }, "engines": { - "node": ">=0.10.0" + "node": ">=12.0.0" } }, "node_modules/astring": { @@ -6076,61 +7341,20 @@ "astring": "bin/astring" } }, - "node_modules/async": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/async/-/async-3.2.6.tgz", - "integrity": "sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==", - "license": "MIT" - }, "node_modules/async-function": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/async-function/-/async-function-1.0.0.tgz", "integrity": "sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA==", + "dev": true, "license": "MIT", "engines": { "node": ">= 0.4" } }, - "node_modules/asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", - "license": "MIT" - }, - "node_modules/at-least-node": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", - "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==", - "license": "ISC", - "engines": { - "node": ">= 4.0.0" - } - }, - "node_modules/atob": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", - "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", - "license": "(MIT OR Apache-2.0)", - "bin": { - "atob": "bin/atob.js" - }, - "engines": { - "node": ">= 4.5.0" - } - }, - "node_modules/autolinker": { - "version": "3.16.2", - "resolved": "https://registry.npmjs.org/autolinker/-/autolinker-3.16.2.tgz", - "integrity": "sha512-JiYl7j2Z19F9NdTmirENSUUIIL/9MytEWtmzhfmsKPCp9E+G35Y0UNCMoM9tFigxT59qSc8Ml2dlZXOCVTYwuA==", - "license": "MIT", - "dependencies": { - "tslib": "^2.3.0" - } - }, "node_modules/autoprefixer": { - "version": "10.4.21", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.21.tgz", - "integrity": "sha512-O+A6LWV5LDHSJD3LjHYoNi4VLsj/Whi7k6zG12xTYaU4cQ8oxQGckXNX8cRHK5yOZ/ppVHe0ZBXGzSV9jXdVbQ==", + "version": "10.4.24", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.24.tgz", + "integrity": "sha512-uHZg7N9ULTVbutaIsDRoUkoS8/h3bdsmVJYZ5l3wv8Cp/6UIIoRDm90hZ+BwxUj/hGBEzLxdHNSKuFpn8WOyZw==", "funding": [ { "type": "opencollective", @@ -6147,10 +7371,9 @@ ], "license": "MIT", "dependencies": { - "browserslist": "^4.24.4", - "caniuse-lite": "^1.0.30001702", - "fraction.js": "^4.3.7", - "normalize-range": "^0.1.2", + "browserslist": "^4.28.1", + "caniuse-lite": "^1.0.30001766", + "fraction.js": "^5.3.4", "picocolors": "^1.1.1", "postcss-value-parser": "^4.2.0" }, @@ -6168,6 +7391,7 @@ "version": "1.0.7", "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", + "dev": true, "license": "MIT", "dependencies": { "possible-typed-array-names": "^1.0.0" @@ -6179,21 +7403,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/aws-sign2": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", - "integrity": "sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA==", - "license": "Apache-2.0", - "engines": { - "node": "*" - } - }, - "node_modules/aws4": { - "version": "1.13.2", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.13.2.tgz", - "integrity": "sha512-lHe62zvbTB5eEABUVi/AwVh0ZKY9rMMDhmm+eeyuuUQbQ3+J+fONVQOZyj+DdrvD4BY33uYniyRJ4UJIaSKAfw==", - "license": "MIT" - }, "node_modules/babel-loader": { "version": "9.2.1", "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-9.2.1.tgz", @@ -6221,13 +7430,13 @@ } }, "node_modules/babel-plugin-polyfill-corejs2": { - "version": "0.4.14", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.14.tgz", - "integrity": "sha512-Co2Y9wX854ts6U8gAAPXfn0GmAyctHuK8n0Yhfjd6t30g7yvKjspvvOo9yG+z52PZRgFErt7Ka2pYnXCjLKEpg==", + "version": "0.4.15", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.15.tgz", + "integrity": "sha512-hR3GwrRwHUfYwGfrisXPIDP3JcYfBrW7wKE7+Au6wDYl7fm/ka1NEII6kORzxNU556JjfidZeBsO10kYvtV1aw==", "license": "MIT", "dependencies": { - "@babel/compat-data": "^7.27.7", - "@babel/helper-define-polyfill-provider": "^0.6.5", + "@babel/compat-data": "^7.28.6", + "@babel/helper-define-polyfill-provider": "^0.6.6", "semver": "^6.3.1" }, "peerDependencies": { @@ -6257,26 +7466,17 @@ } }, "node_modules/babel-plugin-polyfill-regenerator": { - "version": "0.6.5", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.6.5.tgz", - "integrity": "sha512-ISqQ2frbiNU9vIJkzg7dlPpznPZ4jOiUQ1uSmB0fEHeowtN3COYRsXr/xexn64NpU13P06jc/L5TgiJXOgrbEg==", + "version": "0.6.6", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.6.6.tgz", + "integrity": "sha512-hYm+XLYRMvupxiQzrvXUj7YyvFFVfv5gI0R71AJzudg1g2AI2vyCPPIFEBjk162/wFzti3inBHo7isWFuEVS/A==", "license": "MIT", "dependencies": { - "@babel/helper-define-polyfill-provider": "^0.6.5" + "@babel/helper-define-polyfill-provider": "^0.6.6" }, "peerDependencies": { "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" } }, - "node_modules/babylon": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", - "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", - "license": "MIT", - "bin": { - "babylon": "bin/babylon.js" - } - }, "node_modules/bail": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/bail/-/bail-2.0.2.tgz", @@ -6293,771 +7493,743 @@ "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", "license": "MIT" }, - "node_modules/base": { - "version": "0.11.2", - "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", - "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", - "license": "MIT", - "dependencies": { - "cache-base": "^1.0.1", - "class-utils": "^0.3.5", - "component-emitter": "^1.2.1", - "define-property": "^1.0.0", - "isobject": "^3.0.1", - "mixin-deep": "^1.2.0", - "pascalcase": "^0.1.1" - }, - "engines": { - "node": ">=0.10.0" + "node_modules/baseline-browser-mapping": { + "version": "2.9.19", + "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.9.19.tgz", + "integrity": "sha512-ipDqC8FrAl/76p2SSWKSI+H9tFwm7vYqXQrItCuiVPt26Km0jS+NzSsBWAaBusvSbQcfJG+JitdMm+wZAgTYqg==", + "license": "Apache-2.0", + "bin": { + "baseline-browser-mapping": "dist/cli.js" } }, - "node_modules/base/node_modules/define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA==", + "node_modules/batch": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", + "integrity": "sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==", + "license": "MIT" + }, + "node_modules/big.js": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", + "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", "license": "MIT", - "dependencies": { - "is-descriptor": "^1.0.0" - }, "engines": { - "node": ">=0.10.0" + "node": "*" } }, - "node_modules/base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT" - }, - "node_modules/batch": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", - "integrity": "sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==", - "license": "MIT" - }, - "node_modules/bcrypt-pbkdf": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", - "integrity": "sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==", - "license": "BSD-3-Clause", - "dependencies": { - "tweetnacl": "^0.14.3" - } - }, - "node_modules/big-integer": { - "version": "1.6.52", - "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.52.tgz", - "integrity": "sha512-QxD8cf2eVqJOOz63z6JIN9BzvVs/dlySa5HGSBH5xtR8dPteIRQnBxxKqkNTiT6jbDTF6jAfrd4oMcND9RGbQg==", - "license": "Unlicense", - "engines": { - "node": ">=0.6" - } - }, - "node_modules/big.js": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", - "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", + "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==", "license": "MIT", "engines": { - "node": "*" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/bin-build": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/bin-build/-/bin-build-3.0.0.tgz", - "integrity": "sha512-jcUOof71/TNAI2uM5uoUaDq2ePcVBQ3R/qhxAz1rX7UfvduAL/RXD3jXzvn8cVcDJdGVkiR1shal3OH0ImpuhA==", + "node_modules/body-parser": { + "version": "1.20.4", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.4.tgz", + "integrity": "sha512-ZTgYYLMOXY9qKU/57FAo8F+HA2dGX7bqGc71txDRC1rS4frdFI5R7NhluHxH6M0YItAP0sHB4uqAOcYKxO6uGA==", "license": "MIT", "dependencies": { - "decompress": "^4.0.0", - "download": "^6.2.2", - "execa": "^0.7.0", - "p-map-series": "^1.0.0", - "tempfile": "^2.0.0" + "bytes": "~3.1.2", + "content-type": "~1.0.5", + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "~1.2.0", + "http-errors": "~2.0.1", + "iconv-lite": "~0.4.24", + "on-finished": "~2.4.1", + "qs": "~6.14.0", + "raw-body": "~2.5.3", + "type-is": "~1.6.18", + "unpipe": "~1.0.0" }, "engines": { - "node": ">=4" + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" } }, - "node_modules/bin-build/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==", + "node_modules/body-parser/node_modules/bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", "license": "MIT", - "dependencies": { - "lru-cache": "^4.0.1", - "shebang-command": "^1.2.0", - "which": "^1.2.9" + "engines": { + "node": ">= 0.8" } }, - "node_modules/bin-build/node_modules/execa": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz", - "integrity": "sha512-RztN09XglpYI7aBBrJCPW95jEH7YF1UEPOoX9yDhUTPdp7mK+CQvnLTuD10BNXZ3byLTu2uehZ8EcKT/4CGiFw==", + "node_modules/body-parser/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "license": "MIT", "dependencies": { - "cross-spawn": "^5.0.1", - "get-stream": "^3.0.0", - "is-stream": "^1.1.0", - "npm-run-path": "^2.0.0", - "p-finally": "^1.0.0", - "signal-exit": "^3.0.0", - "strip-eof": "^1.0.0" - }, - "engines": { - "node": ">=4" + "ms": "2.0.0" } }, - "node_modules/bin-build/node_modules/get-stream": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", - "integrity": "sha512-GlhdIUuVakc8SJ6kK0zAFbiGzRFzNnY4jUuEbV9UROo4Y+0Ny4fjvcZFVTeDA4odpFyOQzaw6hXukJSq/f28sQ==", - "license": "MIT", - "engines": { - "node": ">=4" - } + "node_modules/body-parser/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "license": "MIT" }, - "node_modules/bin-build/node_modules/is-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ==", + "node_modules/bonjour-service": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/bonjour-service/-/bonjour-service-1.3.0.tgz", + "integrity": "sha512-3YuAUiSkWykd+2Azjgyxei8OWf8thdn8AITIog2M4UICzoqfjlqr64WIjEXZllf/W6vK1goqleSR6brGomxQqA==", "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/bin-build/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==", - "license": "ISC", "dependencies": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" + "fast-deep-equal": "^3.1.3", + "multicast-dns": "^7.2.5" } }, - "node_modules/bin-build/node_modules/npm-run-path": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", - "integrity": "sha512-lJxZYlT4DW/bRUtFh1MQIWqmLwQfAxnqWG4HhEdjMlkrJYnJn0Jrr2u3mgxqaWsdiBc76TYkTG/mhrnYTuzfHw==", + "node_modules/boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", + "license": "ISC" + }, + "node_modules/boxen": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/boxen/-/boxen-6.2.1.tgz", + "integrity": "sha512-H4PEsJXfFI/Pt8sjDWbHlQPx4zL/bvSQjcilJmaulGt5mLDorHOHpmdXAJcBcmru7PhYSp/cDMWRko4ZUMFkSw==", "license": "MIT", "dependencies": { - "path-key": "^2.0.0" + "ansi-align": "^3.0.1", + "camelcase": "^6.2.0", + "chalk": "^4.1.2", + "cli-boxes": "^3.0.0", + "string-width": "^5.0.1", + "type-fest": "^2.5.0", + "widest-line": "^4.0.1", + "wrap-ansi": "^8.0.1" }, "engines": { - "node": ">=4" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/bin-build/node_modules/path-key": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==", + "node_modules/brace-expansion": { + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", + "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", "license": "MIT", - "engines": { - "node": ">=4" + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" } }, - "node_modules/bin-build/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==", + "node_modules/braces": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", "license": "MIT", "dependencies": { - "shebang-regex": "^1.0.0" + "fill-range": "^7.1.1" }, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, - "node_modules/bin-build/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==", + "node_modules/browserslist": { + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.28.1.tgz", + "integrity": "sha512-ZC5Bd0LgJXgwGqUknZY/vkUQ04r8NXnJZ3yYi4vDmSiZmC/pdSN0NbNRPxZpbtO4uAfDUAFffO8IZoM3Gj8IkA==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/bin-build/node_modules/which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "license": "ISC", "dependencies": { - "isexe": "^2.0.0" + "baseline-browser-mapping": "^2.9.0", + "caniuse-lite": "^1.0.30001759", + "electron-to-chromium": "^1.5.263", + "node-releases": "^2.0.27", + "update-browserslist-db": "^1.2.0" }, "bin": { - "which": "bin/which" + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" } }, - "node_modules/bin-build/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==", - "license": "ISC" + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "license": "MIT" }, - "node_modules/bin-check": { + "node_modules/bundle-name": { "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bin-check/-/bin-check-4.1.0.tgz", - "integrity": "sha512-b6weQyEUKsDGFlACWSIOfveEnImkJyK/FGW6FAG42loyoquvjdtOIqO6yBFzHyqyVVhNgNkQxxx09SFLK28YnA==", + "resolved": "https://registry.npmjs.org/bundle-name/-/bundle-name-4.1.0.tgz", + "integrity": "sha512-tjwM5exMg6BGRI+kNmTntNsvdZS1X8BFYS6tnJ2hdH0kVxM6/eVZ2xy+FqStSWvYmtfFMDLIxurorHwDKfDz5Q==", "license": "MIT", "dependencies": { - "execa": "^0.7.0", - "executable": "^4.1.0" + "run-applescript": "^7.0.0" }, "engines": { - "node": ">=4" - } - }, - "node_modules/bin-check/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==", - "license": "MIT", - "dependencies": { - "lru-cache": "^4.0.1", - "shebang-command": "^1.2.0", - "which": "^1.2.9" + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/bin-check/node_modules/execa": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz", - "integrity": "sha512-RztN09XglpYI7aBBrJCPW95jEH7YF1UEPOoX9yDhUTPdp7mK+CQvnLTuD10BNXZ3byLTu2uehZ8EcKT/4CGiFw==", + "node_modules/bytes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", + "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==", "license": "MIT", - "dependencies": { - "cross-spawn": "^5.0.1", - "get-stream": "^3.0.0", - "is-stream": "^1.1.0", - "npm-run-path": "^2.0.0", - "p-finally": "^1.0.0", - "signal-exit": "^3.0.0", - "strip-eof": "^1.0.0" - }, "engines": { - "node": ">=4" + "node": ">= 0.8" } }, - "node_modules/bin-check/node_modules/get-stream": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", - "integrity": "sha512-GlhdIUuVakc8SJ6kK0zAFbiGzRFzNnY4jUuEbV9UROo4Y+0Ny4fjvcZFVTeDA4odpFyOQzaw6hXukJSq/f28sQ==", - "license": "MIT", + "node_modules/bytestreamjs": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/bytestreamjs/-/bytestreamjs-2.0.1.tgz", + "integrity": "sha512-U1Z/ob71V/bXfVABvNr/Kumf5VyeQRBEm6Txb0PQ6S7V5GpBM3w4Cbqz/xPDicR5tN0uvDifng8C+5qECeGwyQ==", + "license": "BSD-3-Clause", "engines": { - "node": ">=4" + "node": ">=6.0.0" } }, - "node_modules/bin-check/node_modules/is-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ==", + "node_modules/cacheable-lookup": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/cacheable-lookup/-/cacheable-lookup-7.0.0.tgz", + "integrity": "sha512-+qJyx4xiKra8mZrcwhjMRMUhD5NR1R8esPkzIYxX96JiecFoxAXFuz/GpR3+ev4PE1WamHip78wV0vcmPQtp8w==", "license": "MIT", "engines": { - "node": ">=0.10.0" + "node": ">=14.16" } }, - "node_modules/bin-check/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==", - "license": "ISC", + "node_modules/cacheable-request": { + "version": "10.2.14", + "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-10.2.14.tgz", + "integrity": "sha512-zkDT5WAF4hSSoUgyfg5tFIxz8XQK+25W/TLVojJTMKBaxevLBBtLxgqguAuVQB8PVW79FVjHcU+GJ9tVbDZ9mQ==", + "license": "MIT", "dependencies": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" + "@types/http-cache-semantics": "^4.0.2", + "get-stream": "^6.0.1", + "http-cache-semantics": "^4.1.1", + "keyv": "^4.5.3", + "mimic-response": "^4.0.0", + "normalize-url": "^8.0.0", + "responselike": "^3.0.0" + }, + "engines": { + "node": ">=14.16" } }, - "node_modules/bin-check/node_modules/npm-run-path": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", - "integrity": "sha512-lJxZYlT4DW/bRUtFh1MQIWqmLwQfAxnqWG4HhEdjMlkrJYnJn0Jrr2u3mgxqaWsdiBc76TYkTG/mhrnYTuzfHw==", + "node_modules/call-bind": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.8.tgz", + "integrity": "sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==", "license": "MIT", "dependencies": { - "path-key": "^2.0.0" + "call-bind-apply-helpers": "^1.0.0", + "es-define-property": "^1.0.0", + "get-intrinsic": "^1.2.4", + "set-function-length": "^1.2.2" }, "engines": { - "node": ">=4" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/bin-check/node_modules/path-key": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==", + "node_modules/call-bind-apply-helpers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", + "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2" + }, "engines": { - "node": ">=4" + "node": ">= 0.4" } }, - "node_modules/bin-check/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==", + "node_modules/call-bound": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz", + "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==", "license": "MIT", "dependencies": { - "shebang-regex": "^1.0.0" + "call-bind-apply-helpers": "^1.0.2", + "get-intrinsic": "^1.3.0" }, "engines": { - "node": ">=0.10.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/bin-check/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==", + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", "license": "MIT", "engines": { - "node": ">=0.10.0" + "node": ">=6" } }, - "node_modules/bin-check/node_modules/which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "license": "ISC", + "node_modules/camel-case": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-4.1.2.tgz", + "integrity": "sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==", + "license": "MIT", "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "which": "bin/which" + "pascal-case": "^3.1.2", + "tslib": "^2.0.3" } }, - "node_modules/bin-check/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==", - "license": "ISC" - }, - "node_modules/bin-version": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/bin-version/-/bin-version-3.1.0.tgz", - "integrity": "sha512-Mkfm4iE1VFt4xd4vH+gx+0/71esbfus2LsnCGe8Pi4mndSPyT+NGES/Eg99jx8/lUGWfu3z2yuB/bt5UB+iVbQ==", + "node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", "license": "MIT", - "dependencies": { - "execa": "^1.0.0", - "find-versions": "^3.0.0" - }, "engines": { - "node": ">=6" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/bin-version-check": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/bin-version-check/-/bin-version-check-4.0.0.tgz", - "integrity": "sha512-sR631OrhC+1f8Cvs8WyVWOA33Y8tgwjETNPyyD/myRBXLkfS/vl74FmH/lFcRl9KY3zwGh7jFhvyk9vV3/3ilQ==", + "node_modules/caniuse-api": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/caniuse-api/-/caniuse-api-3.0.0.tgz", + "integrity": "sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==", "license": "MIT", "dependencies": { - "bin-version": "^3.0.0", - "semver": "^5.6.0", - "semver-truncate": "^1.1.2" - }, - "engines": { - "node": ">=6" + "browserslist": "^4.0.0", + "caniuse-lite": "^1.0.0", + "lodash.memoize": "^4.1.2", + "lodash.uniq": "^4.5.0" } }, - "node_modules/bin-version-check/node_modules/semver": { - "version": "5.7.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", - "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", - "license": "ISC", - "bin": { - "semver": "bin/semver" - } + "node_modules/caniuse-lite": { + "version": "1.0.30001769", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001769.tgz", + "integrity": "sha512-BCfFL1sHijQlBGWBMuJyhZUhzo7wer5sVj9hqekB/7xn0Ypy+pER/edCYQm4exbXj4WiySGp40P8UuTh6w1srg==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "CC-BY-4.0" }, - "node_modules/bin-version/node_modules/cross-spawn": { - "version": "6.0.6", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.6.tgz", - "integrity": "sha512-VqCUuhcd1iB+dsv8gxPttb5iZh/D0iubSP21g36KXdEuf6I5JiioesUVjpCdHV9MZRUfVFlvwtIUyPfxo5trtw==", + "node_modules/ccount": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/ccount/-/ccount-2.0.1.tgz", + "integrity": "sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==", "license": "MIT", - "dependencies": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - }, - "engines": { - "node": ">=4.8" + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/bin-version/node_modules/execa": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz", - "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "license": "MIT", "dependencies": { - "cross-spawn": "^6.0.0", - "get-stream": "^4.0.0", - "is-stream": "^1.1.0", - "npm-run-path": "^2.0.0", - "p-finally": "^1.0.0", - "signal-exit": "^3.0.0", - "strip-eof": "^1.0.0" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, "engines": { - "node": ">=6" - } - }, - "node_modules/bin-version/node_modules/get-stream": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", - "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", - "license": "MIT", - "dependencies": { - "pump": "^3.0.0" + "node": ">=10" }, - "engines": { - "node": ">=6" + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/bin-version/node_modules/is-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ==", + "node_modules/char-regex": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz", + "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==", "license": "MIT", "engines": { - "node": ">=0.10.0" + "node": ">=10" } }, - "node_modules/bin-version/node_modules/npm-run-path": { + "node_modules/character-entities": { "version": "2.0.2", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", - "integrity": "sha512-lJxZYlT4DW/bRUtFh1MQIWqmLwQfAxnqWG4HhEdjMlkrJYnJn0Jrr2u3mgxqaWsdiBc76TYkTG/mhrnYTuzfHw==", + "resolved": "https://registry.npmjs.org/character-entities/-/character-entities-2.0.2.tgz", + "integrity": "sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==", "license": "MIT", - "dependencies": { - "path-key": "^2.0.0" - }, - "engines": { - "node": ">=4" + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/bin-version/node_modules/path-key": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==", + "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==", "license": "MIT", - "engines": { - "node": ">=4" + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/bin-version/node_modules/semver": { - "version": "5.7.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", - "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", - "license": "ISC", - "bin": { - "semver": "bin/semver" + "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==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/bin-version/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==", + "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==", "license": "MIT", - "dependencies": { - "shebang-regex": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/bin-version/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==", + "node_modules/cheerio": { + "version": "1.0.0-rc.12", + "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.12.tgz", + "integrity": "sha512-VqR8m68vM46BNnuZ5NtnGBKIE/DfN0cRIzg9n40EIq9NOv90ayxLBXA8fXC5gquFRGJSTRqBq25Jt2ECLR431Q==", "license": "MIT", + "dependencies": { + "cheerio-select": "^2.1.0", + "dom-serializer": "^2.0.0", + "domhandler": "^5.0.3", + "domutils": "^3.0.1", + "htmlparser2": "^8.0.1", + "parse5": "^7.0.0", + "parse5-htmlparser2-tree-adapter": "^7.0.0" + }, "engines": { - "node": ">=0.10.0" + "node": ">= 6" + }, + "funding": { + "url": "https://github.com/cheeriojs/cheerio?sponsor=1" } }, - "node_modules/bin-version/node_modules/which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "license": "ISC", + "node_modules/cheerio-select": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cheerio-select/-/cheerio-select-2.1.0.tgz", + "integrity": "sha512-9v9kG0LvzrlcungtnJtpGNxY+fzECQKhK4EGJX2vByejiMX84MFNQw4UxPJl3bFbTMw+Dfs37XaIkCwTZfLh4g==", + "license": "BSD-2-Clause", "dependencies": { - "isexe": "^2.0.0" + "boolbase": "^1.0.0", + "css-select": "^5.1.0", + "css-what": "^6.1.0", + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3", + "domutils": "^3.0.1" }, - "bin": { - "which": "bin/which" + "funding": { + "url": "https://github.com/sponsors/fb55" } }, - "node_modules/bin-wrapper": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bin-wrapper/-/bin-wrapper-4.1.0.tgz", - "integrity": "sha512-hfRmo7hWIXPkbpi0ZltboCMVrU+0ClXR/JgbCKKjlDjQf6igXa7OwdqNcFWQZPZTgiY7ZpzE3+LjjkLiTN2T7Q==", + "node_modules/chokidar": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", "license": "MIT", "dependencies": { - "bin-check": "^4.1.0", - "bin-version-check": "^4.0.0", - "download": "^7.1.0", - "import-lazy": "^3.1.0", - "os-filter-obj": "^2.0.0", - "pify": "^4.0.1" + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" }, "engines": { - "node": ">=6" + "node": ">= 8.10.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/chrome-trace-event": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.4.tgz", + "integrity": "sha512-rNjApaLzuwaOTjCiT8lSDdGN1APCiqkChLMJxJPWLunPAt5fy8xgU9/jNOchV84wfIxrA0lRQB7oCT8jrn/wrQ==", + "license": "MIT", + "engines": { + "node": ">=6.0" } }, - "node_modules/bin-wrapper/node_modules/@sindresorhus/is": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.7.0.tgz", - "integrity": "sha512-ONhaKPIufzzrlNbqtWFFd+jlnemX6lJAgq9ZeiZtS7I1PIf/la7CW4m83rTXRnVnsMbW2k56pGYu7AUFJD9Pow==", + "node_modules/ci-info": { + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", + "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" + } + ], "license": "MIT", "engines": { - "node": ">=4" + "node": ">=8" } }, - "node_modules/bin-wrapper/node_modules/download": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/download/-/download-7.1.0.tgz", - "integrity": "sha512-xqnBTVd/E+GxJVrX5/eUJiLYjCGPwMpdL+jGhGU57BvtcA7wwhtHVbXBeUk51kOpW3S7Jn3BQbN9Q1R1Km2qDQ==", + "node_modules/clean-css": { + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-5.3.3.tgz", + "integrity": "sha512-D5J+kHaVb/wKSFcyyV75uCn8fiY4sV38XJoe4CUyGQ+mOU/fMVYUdH1hJC+CJQ5uY3EnW27SbJYS4X8BiLrAFg==", "license": "MIT", "dependencies": { - "archive-type": "^4.0.0", - "caw": "^2.0.1", - "content-disposition": "^0.5.2", - "decompress": "^4.2.0", - "ext-name": "^5.0.0", - "file-type": "^8.1.0", - "filenamify": "^2.0.0", - "get-stream": "^3.0.0", - "got": "^8.3.1", - "make-dir": "^1.2.0", - "p-event": "^2.1.0", - "pify": "^3.0.0" + "source-map": "~0.6.0" }, "engines": { - "node": ">=6" + "node": ">= 10.0" } }, - "node_modules/bin-wrapper/node_modules/download/node_modules/pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==", - "license": "MIT", + "node_modules/clean-css/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "license": "BSD-3-Clause", "engines": { - "node": ">=4" + "node": ">=0.10.0" } }, - "node_modules/bin-wrapper/node_modules/file-type": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-8.1.0.tgz", - "integrity": "sha512-qyQ0pzAy78gVoJsmYeNgl8uH8yKhr1lVhW7JbzJmnlRi0I4R2eEDEJZVKG8agpDnLpacwNbDhLNG/LMdxHD2YQ==", + "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==", "license": "MIT", "engines": { "node": ">=6" } }, - "node_modules/bin-wrapper/node_modules/get-stream": { + "node_modules/cli-boxes": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", - "integrity": "sha512-GlhdIUuVakc8SJ6kK0zAFbiGzRFzNnY4jUuEbV9UROo4Y+0Ny4fjvcZFVTeDA4odpFyOQzaw6hXukJSq/f28sQ==", + "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-3.0.0.tgz", + "integrity": "sha512-/lzGpEWL/8PfI0BmBOPRwp0c/wFNX1RdUML3jK/RcSBA9T8mZDdQpqYBKtCFTOfQbwPqWEOpjqW+Fnayc0969g==", "license": "MIT", "engines": { - "node": ">=4" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/bin-wrapper/node_modules/got": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/got/-/got-8.3.2.tgz", - "integrity": "sha512-qjUJ5U/hawxosMryILofZCkm3C84PLJS/0grRIpjAwu+Lkxxj5cxeCU25BG0/3mDSpXKTyZr8oh8wIgLaH0QCw==", - "license": "MIT", - "dependencies": { - "@sindresorhus/is": "^0.7.0", - "cacheable-request": "^2.1.1", - "decompress-response": "^3.3.0", - "duplexer3": "^0.1.4", - "get-stream": "^3.0.0", - "into-stream": "^3.1.0", - "is-retry-allowed": "^1.1.0", - "isurl": "^1.0.0-alpha5", - "lowercase-keys": "^1.0.0", - "mimic-response": "^1.0.0", - "p-cancelable": "^0.4.0", - "p-timeout": "^2.0.1", - "pify": "^3.0.0", - "safe-buffer": "^5.1.1", - "timed-out": "^4.0.1", - "url-parse-lax": "^3.0.0", - "url-to-options": "^1.0.1" + "node_modules/cli-table3": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/cli-table3/-/cli-table3-0.6.5.tgz", + "integrity": "sha512-+W/5efTR7y5HRD7gACw9yQjqMVvEMLBHmboM/kPWam+H+Hmyrgjh6YncVKK122YZkXrLudzTuAukUw9FnMf7IQ==", + "license": "MIT", + "dependencies": { + "string-width": "^4.2.0" }, "engines": { - "node": ">=4" + "node": "10.* || >= 12.*" + }, + "optionalDependencies": { + "@colors/colors": "1.5.0" } }, - "node_modules/bin-wrapper/node_modules/got/node_modules/pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==", + "node_modules/cli-table3/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "license": "MIT" + }, + "node_modules/cli-table3/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, "engines": { - "node": ">=4" + "node": ">=8" } }, - "node_modules/bin-wrapper/node_modules/make-dir": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", - "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", + "node_modules/clone-deep": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", + "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", "license": "MIT", "dependencies": { - "pify": "^3.0.0" + "is-plain-object": "^2.0.4", + "kind-of": "^6.0.2", + "shallow-clone": "^3.0.0" }, "engines": { - "node": ">=4" + "node": ">=6" } }, - "node_modules/bin-wrapper/node_modules/make-dir/node_modules/pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==", + "node_modules/clsx": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/clsx/-/clsx-1.2.1.tgz", + "integrity": "sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==", "license": "MIT", "engines": { - "node": ">=4" + "node": ">=6" } }, - "node_modules/bin-wrapper/node_modules/p-cancelable": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-0.4.1.tgz", - "integrity": "sha512-HNa1A8LvB1kie7cERyy21VNeHb2CWJJYqyyC2o3klWFfMGlFmWv2Z7sFgZH8ZiaYL95ydToKTFVXgMV/Os0bBQ==", + "node_modules/collapse-white-space": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/collapse-white-space/-/collapse-white-space-2.1.0.tgz", + "integrity": "sha512-loKTxY1zCOuG4j9f6EPnuyyYkf58RnhhWTvRoZEokgB+WbdXehfjFviyOVYkqzEWz1Q5kRiZdBYS5SwxbQYwzw==", "license": "MIT", - "engines": { - "node": ">=4" + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/bin-wrapper/node_modules/p-event": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/p-event/-/p-event-2.3.1.tgz", - "integrity": "sha512-NQCqOFhbpVTMX4qMe8PF8lbGtzZ+LCiN7pcNrb/413Na7+TRoe1xkKUzuWa/YEJdGQ0FvKtj35EEbDoVPO2kbA==", + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "license": "MIT", "dependencies": { - "p-timeout": "^2.0.1" + "color-name": "~1.1.4" }, "engines": { - "node": ">=6" + "node": ">=7.0.0" } }, - "node_modules/bin-wrapper/node_modules/p-timeout": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-2.0.1.tgz", - "integrity": "sha512-88em58dDVB/KzPEx1X0N3LwFfYZPyDc4B6eF38M1rk9VTZMbxXXgjugz8mmwpS9Ox4BDZ+t6t3QP5+/gazweIA==", + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "license": "MIT" + }, + "node_modules/colord": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/colord/-/colord-2.9.3.tgz", + "integrity": "sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==", + "license": "MIT" + }, + "node_modules/colorette": { + "version": "2.0.20", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", + "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==", + "license": "MIT" + }, + "node_modules/combine-promises": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/combine-promises/-/combine-promises-1.2.0.tgz", + "integrity": "sha512-VcQB1ziGD0NXrhKxiwyNbCDmRzs/OShMs2GqW2DlU2A/Sd0nQxE1oWDAE5O0ygSx5mgQOn9eIFh7yKPgFRVkPQ==", "license": "MIT", - "dependencies": { - "p-finally": "^1.0.0" - }, "engines": { - "node": ">=4" + "node": ">=10" } }, - "node_modules/bin-wrapper/node_modules/prepend-http": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", - "integrity": "sha512-ravE6m9Atw9Z/jjttRUZ+clIXogdghyZAuWJ3qEzjT+jI/dL1ifAqhZeC5VHzQp1MSt1+jxKkFNemj/iO7tVUA==", + "node_modules/comma-separated-tokens": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/comma-separated-tokens/-/comma-separated-tokens-2.0.3.tgz", + "integrity": "sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==", "license": "MIT", - "engines": { - "node": ">=4" + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/bin-wrapper/node_modules/url-parse-lax": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", - "integrity": "sha512-NjFKA0DidqPa5ciFcSrXnAltTtzz84ogy+NebPvfEgAck0+TNg4UJ4IN+fB7zRZfbgUf0syOo9MDxFkDSMuFaQ==", + "node_modules/commander": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-5.1.0.tgz", + "integrity": "sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==", "license": "MIT", - "dependencies": { - "prepend-http": "^2.0.0" - }, "engines": { - "node": ">=4" + "node": ">= 6" } }, - "node_modules/binary": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/binary/-/binary-0.3.0.tgz", - "integrity": "sha512-D4H1y5KYwpJgK8wk1Cue5LLPgmwHKYSChkbspQg5JtVuR5ulGckxfR62H3AE9UDkdMC8yyXlqYihuz3Aqg2XZg==", + "node_modules/common-path-prefix": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/common-path-prefix/-/common-path-prefix-3.0.0.tgz", + "integrity": "sha512-QE33hToZseCH3jS0qN96O/bSh3kaw/h+Tq7ngyY9eWDUnTlTNUyqfqvCXioLe5Na5jFsL78ra/wuBU4iuEgd4w==", + "license": "ISC" + }, + "node_modules/compressible": { + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", + "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", "license": "MIT", "dependencies": { - "buffers": "~0.1.1", - "chainsaw": "~0.1.0" + "mime-db": ">= 1.43.0 < 2" }, "engines": { - "node": "*" + "node": ">= 0.6" } }, - "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==", + "node_modules/compressible/node_modules/mime-db": { + "version": "1.54.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.54.0.tgz", + "integrity": "sha512-aU5EJuIN2WDemCcAp2vFBfp/m4EAhWJnUNSSw0ixs7/kXbd6Pg64EmwJkNdFhB8aWt1sH2CTXrLxo/iAGV3oPQ==", "license": "MIT", "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/bl": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.3.tgz", - "integrity": "sha512-pvcNpa0UU69UT341rO6AYy4FVAIkUHuZXRIWbq+zHnsVcRzDDjIAhGuuYoi0d//cwIwtt4pkpKycWEfjdV+vww==", - "license": "MIT", - "dependencies": { - "readable-stream": "^2.3.5", - "safe-buffer": "^5.1.1" - } - }, - "node_modules/bluebird": { - "version": "3.4.7", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.4.7.tgz", - "integrity": "sha512-iD3898SR7sWVRHbiQv+sHUtHnMvC1o3nW5rAcqnq3uOn07DSAppZYUkIGslDz6gXC7HfunPe7YVBgoEJASPcHA==", - "license": "MIT" - }, - "node_modules/body": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/body/-/body-5.1.0.tgz", - "integrity": "sha512-chUsBxGRtuElD6fmw1gHLpvnKdVLK302peeFa9ZqAEk8TyzZ3fygLyUEDDPTJvL9+Bor0dIwn6ePOsRM2y0zQQ==", - "dependencies": { - "continuable-cache": "^0.3.1", - "error": "^7.0.0", - "raw-body": "~1.1.0", - "safe-json-parse": "~1.0.1" + "node": ">= 0.6" } }, - "node_modules/body-parser": { - "version": "1.20.3", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.3.tgz", - "integrity": "sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==", + "node_modules/compression": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/compression/-/compression-1.8.1.tgz", + "integrity": "sha512-9mAqGPHLakhCLeNyxPkK4xVo746zQ/czLH1Ky+vkitMnWfWZps8r0qXuwhwizagCRttsL4lfG4pIOvaWLpAP0w==", "license": "MIT", "dependencies": { "bytes": "3.1.2", - "content-type": "~1.0.5", + "compressible": "~2.0.18", "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "on-finished": "2.4.1", - "qs": "6.13.0", - "raw-body": "2.5.2", - "type-is": "~1.6.18", - "unpipe": "1.0.0" + "negotiator": "~0.6.4", + "on-headers": "~1.1.0", + "safe-buffer": "5.2.1", + "vary": "~1.1.2" }, "engines": { - "node": ">= 0.8", - "npm": "1.2.8000 || >= 1.4.16" + "node": ">= 0.8.0" } }, - "node_modules/body-parser/node_modules/debug": { + "node_modules/compression/node_modules/bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/compression/node_modules/debug": { "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", @@ -7066,5923 +8238,1423 @@ "ms": "2.0.0" } }, - "node_modules/body-parser/node_modules/ms": { + "node_modules/compression/node_modules/ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "license": "MIT" }, - "node_modules/body/node_modules/bytes": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-1.0.0.tgz", - "integrity": "sha512-/x68VkHLeTl3/Ll8IvxdwzhrT+IyKc52e/oyHhA2RwqPqswSnjVbSddfPRwAsJtbilMAPSRWwAlpxdYsSWOTKQ==" - }, - "node_modules/body/node_modules/raw-body": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-1.1.7.tgz", - "integrity": "sha512-WmJJU2e9Y6M5UzTOkHaM7xJGAPQD8PNzx3bAd2+uhZAim6wDk6dAZxPVYLF67XhbR4hmKGh33Lpmh4XWrCH5Mg==", - "license": "MIT", - "dependencies": { - "bytes": "1", - "string_decoder": "0.10" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/body/node_modules/string_decoder": { - "version": "0.10.31", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "integrity": "sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==", + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", "license": "MIT" }, - "node_modules/bonjour-service": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/bonjour-service/-/bonjour-service-1.3.0.tgz", - "integrity": "sha512-3YuAUiSkWykd+2Azjgyxei8OWf8thdn8AITIog2M4UICzoqfjlqr64WIjEXZllf/W6vK1goqleSR6brGomxQqA==", + "node_modules/config-chain": { + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/config-chain/-/config-chain-1.1.13.tgz", + "integrity": "sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==", "license": "MIT", "dependencies": { - "fast-deep-equal": "^3.1.3", - "multicast-dns": "^7.2.5" + "ini": "^1.3.4", + "proto-list": "~1.2.1" } }, - "node_modules/boolbase": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", - "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", + "node_modules/config-chain/node_modules/ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", "license": "ISC" }, - "node_modules/boxen": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/boxen/-/boxen-6.2.1.tgz", - "integrity": "sha512-H4PEsJXfFI/Pt8sjDWbHlQPx4zL/bvSQjcilJmaulGt5mLDorHOHpmdXAJcBcmru7PhYSp/cDMWRko4ZUMFkSw==", - "license": "MIT", + "node_modules/configstore": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/configstore/-/configstore-6.0.0.tgz", + "integrity": "sha512-cD31W1v3GqUlQvbBCGcXmd2Nj9SvLDOP1oQ0YFuLETufzSPaKp11rYBsSOm7rCsW3OnIRAFM3OxRhceaXNYHkA==", + "license": "BSD-2-Clause", "dependencies": { - "ansi-align": "^3.0.1", - "camelcase": "^6.2.0", - "chalk": "^4.1.2", - "cli-boxes": "^3.0.0", - "string-width": "^5.0.1", - "type-fest": "^2.5.0", - "widest-line": "^4.0.1", - "wrap-ansi": "^8.0.1" + "dot-prop": "^6.0.1", + "graceful-fs": "^4.2.6", + "unique-string": "^3.0.0", + "write-file-atomic": "^3.0.3", + "xdg-basedir": "^5.0.1" }, "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + "node": ">=12" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/yeoman/configstore?sponsor=1" } }, - "node_modules/brace-expansion": { - "version": "1.1.12", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", - "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", + "node_modules/connect-history-api-fallback": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-2.0.0.tgz", + "integrity": "sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA==", "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" + "engines": { + "node": ">=0.8" } }, - "node_modules/braces": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", - "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "node_modules/consola": { + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/consola/-/consola-3.4.2.tgz", + "integrity": "sha512-5IKcdX0nnYavi6G7TtOhwkYzyjfJlatbjMjuLSfE2kYT5pMDOilZ4OvMhi637CcDICTmz3wARPoyhqyX1Y+XvA==", "license": "MIT", - "dependencies": { - "fill-range": "^7.1.1" - }, "engines": { - "node": ">=8" + "node": "^14.18.0 || >=16.10.0" } }, - "node_modules/browserslist": { - "version": "4.25.1", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.25.1.tgz", - "integrity": "sha512-KGj0KoOMXLpSNkkEI6Z6mShmQy0bc1I+T7K9N81k4WWMrfz+6fQ6es80B/YLAeRoKvjYE1YSHHOW1qe9xIVzHw==", - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], + "node_modules/content-disposition": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz", + "integrity": "sha512-kRGRZw3bLlFISDBgwTSA1TMBFN6J6GWDeubmDE3AF+3+yXL8hTWv8r5rkLbqYXY4RjPk/EzHnClI3zQf1cFmHA==", "license": "MIT", - "dependencies": { - "caniuse-lite": "^1.0.30001726", - "electron-to-chromium": "^1.5.173", - "node-releases": "^2.0.19", - "update-browserslist-db": "^1.1.3" - }, - "bin": { - "browserslist": "cli.js" - }, "engines": { - "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" - } - }, - "node_modules/buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT", - "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" + "node": ">= 0.6" } }, - "node_modules/buffer-alloc": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/buffer-alloc/-/buffer-alloc-1.2.0.tgz", - "integrity": "sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow==", + "node_modules/content-type": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", + "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", "license": "MIT", - "dependencies": { - "buffer-alloc-unsafe": "^1.1.0", - "buffer-fill": "^1.0.0" + "engines": { + "node": ">= 0.6" } }, - "node_modules/buffer-alloc-unsafe": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz", - "integrity": "sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==", + "node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", "license": "MIT" }, - "node_modules/buffer-crc32": { - "version": "0.2.13", - "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", - "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==", + "node_modules/cookie": { + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.2.tgz", + "integrity": "sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w==", "license": "MIT", "engines": { - "node": "*" + "node": ">= 0.6" } }, - "node_modules/buffer-fill": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/buffer-fill/-/buffer-fill-1.0.0.tgz", - "integrity": "sha512-T7zexNBwiiaCOGDg9xNX9PBmjrubblRkENuptryuI64URkXDFum9il/JGL8Lm8wYfAXpredVXXZz7eMHilimiQ==", - "license": "MIT" - }, - "node_modules/buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "node_modules/cookie-signature": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.7.tgz", + "integrity": "sha512-NXdYc3dLr47pBkpUCHtKSwIOQXLVn8dZEuywboCOJY/osA0wFSLlSawr3KN8qXJEyX66FcONTH8EIlVuK0yyFA==", "license": "MIT" }, - "node_modules/buffer-indexof-polyfill": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/buffer-indexof-polyfill/-/buffer-indexof-polyfill-1.0.2.tgz", - "integrity": "sha512-I7wzHwA3t1/lwXQh+A5PbNvJxgfo5r3xulgpYDB5zckTu/Z9oUK9biouBKQUjEqzaz3HnAT6TYoovmE+GqSf7A==", + "node_modules/copy-webpack-plugin": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-11.0.0.tgz", + "integrity": "sha512-fX2MWpamkW0hZxMEg0+mYnA40LTosOSa5TqZ9GYIBzyJa9C3QUaMPSE2xAi/buNr8u89SfD9wHSQVBzrRa/SOQ==", "license": "MIT", + "dependencies": { + "fast-glob": "^3.2.11", + "glob-parent": "^6.0.1", + "globby": "^13.1.1", + "normalize-path": "^3.0.0", + "schema-utils": "^4.0.0", + "serialize-javascript": "^6.0.0" + }, "engines": { - "node": ">=0.10" - } - }, - "node_modules/buffers": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/buffers/-/buffers-0.1.1.tgz", - "integrity": "sha512-9q/rDEGSb/Qsvv2qvzIzdluL5k7AaJOTrw23z9reQthrbF7is4CtlT0DXyO1oei2DCp4uojjzQ7igaSHp1kAEQ==", - "engines": { - "node": ">=0.2.0" + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.1.0" } }, - "node_modules/bytes": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", - "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", - "license": "MIT", + "node_modules/copy-webpack-plugin/node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "license": "ISC", + "dependencies": { + "is-glob": "^4.0.3" + }, "engines": { - "node": ">= 0.8" + "node": ">=10.13.0" } }, - "node_modules/cache-base": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", - "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", + "node_modules/copy-webpack-plugin/node_modules/globby": { + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/globby/-/globby-13.2.2.tgz", + "integrity": "sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w==", "license": "MIT", "dependencies": { - "collection-visit": "^1.0.0", - "component-emitter": "^1.2.1", - "get-value": "^2.0.6", - "has-value": "^1.0.0", - "isobject": "^3.0.1", - "set-value": "^2.0.0", - "to-object-path": "^0.3.0", - "union-value": "^1.0.0", - "unset-value": "^1.0.0" + "dir-glob": "^3.0.1", + "fast-glob": "^3.3.0", + "ignore": "^5.2.4", + "merge2": "^1.4.1", + "slash": "^4.0.0" }, "engines": { - "node": ">=0.10.0" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/cacheable-lookup": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/cacheable-lookup/-/cacheable-lookup-7.0.0.tgz", - "integrity": "sha512-+qJyx4xiKra8mZrcwhjMRMUhD5NR1R8esPkzIYxX96JiecFoxAXFuz/GpR3+ev4PE1WamHip78wV0vcmPQtp8w==", + "node_modules/copy-webpack-plugin/node_modules/slash": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", + "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", "license": "MIT", "engines": { - "node": ">=14.16" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/cacheable-request": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-2.1.4.tgz", - "integrity": "sha512-vag0O2LKZ/najSoUwDbVlnlCFvhBE/7mGTY2B5FgCBDcRD+oVV1HYTOwM6JZfMg/hIcM6IwnTZ1uQQL5/X3xIQ==", + "node_modules/core-js": { + "version": "3.48.0", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.48.0.tgz", + "integrity": "sha512-zpEHTy1fjTMZCKLHUZoVeylt9XrzaIN2rbPXEt0k+q7JE5CkCZdo6bNq55bn24a69CH7ErAVLKijxJja4fw+UQ==", + "hasInstallScript": true, "license": "MIT", - "dependencies": { - "clone-response": "1.0.2", - "get-stream": "3.0.0", - "http-cache-semantics": "3.8.1", - "keyv": "3.0.0", - "lowercase-keys": "1.0.0", - "normalize-url": "2.0.1", - "responselike": "1.0.2" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" } }, - "node_modules/cacheable-request/node_modules/get-stream": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", - "integrity": "sha512-GlhdIUuVakc8SJ6kK0zAFbiGzRFzNnY4jUuEbV9UROo4Y+0Ny4fjvcZFVTeDA4odpFyOQzaw6hXukJSq/f28sQ==", + "node_modules/core-js-compat": { + "version": "3.48.0", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.48.0.tgz", + "integrity": "sha512-OM4cAF3D6VtH/WkLtWvyNC56EZVXsZdU3iqaMG2B4WvYrlqU831pc4UtG5yp0sE9z8Y02wVN7PjW5Zf9Gt0f1Q==", "license": "MIT", - "engines": { - "node": ">=4" + "dependencies": { + "browserslist": "^4.28.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" } }, - "node_modules/cacheable-request/node_modules/lowercase-keys": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.0.tgz", - "integrity": "sha512-RPlX0+PHuvxVDZ7xX+EBVAp4RsVxP/TdDSN2mJYdiq1Lc4Hz7EUSjUI7RZrKKlmrIzVhf6Jo2stj7++gVarS0A==", + "node_modules/core-js-pure": { + "version": "3.48.0", + "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.48.0.tgz", + "integrity": "sha512-1slJgk89tWC51HQ1AEqG+s2VuwpTRr8ocu4n20QUcH1v9lAN0RXen0Q0AABa/DK1I7RrNWLucplOHMx8hfTGTw==", + "hasInstallScript": true, "license": "MIT", - "engines": { - "node": ">=0.10.0" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" } }, - "node_modules/call-bind": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.8.tgz", - "integrity": "sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==", + "node_modules/core-util-is": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", + "license": "MIT" + }, + "node_modules/cosmiconfig": { + "version": "8.3.6", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.3.6.tgz", + "integrity": "sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==", "license": "MIT", "dependencies": { - "call-bind-apply-helpers": "^1.0.0", - "es-define-property": "^1.0.0", - "get-intrinsic": "^1.2.4", - "set-function-length": "^1.2.2" + "import-fresh": "^3.3.0", + "js-yaml": "^4.1.0", + "parse-json": "^5.2.0", + "path-type": "^4.0.0" }, "engines": { - "node": ">= 0.4" + "node": ">=14" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/d-fischer" + }, + "peerDependencies": { + "typescript": ">=4.9.5" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, - "node_modules/call-bind-apply-helpers": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", - "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", + "node_modules/cross-spawn": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", "license": "MIT", "dependencies": { - "es-errors": "^1.3.0", - "function-bind": "^1.1.2" + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" }, "engines": { - "node": ">= 0.4" + "node": ">= 8" } }, - "node_modules/call-bound": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz", - "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==", + "node_modules/crypto-random-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-4.0.0.tgz", + "integrity": "sha512-x8dy3RnvYdlUcPOjkEHqozhiwzKNSq7GcPuXFbnyMOCHxX8V3OgIg/pYuabl2sbUPfIJaeAQB7PMOK8DFIdoRA==", "license": "MIT", "dependencies": { - "call-bind-apply-helpers": "^1.0.2", - "get-intrinsic": "^1.3.0" + "type-fest": "^1.0.1" }, "engines": { - "node": ">= 0.4" + "node": ">=12" }, "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/call-me-maybe": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-me-maybe/-/call-me-maybe-1.0.2.tgz", - "integrity": "sha512-HpX65o1Hnr9HH25ojC1YGs7HCQLq0GCOibSaWER0eNpgJ/Z1MZv2mTc7+xh6WOPxbRVcmgbv4hGU+uSQ/2xFZQ==", - "license": "MIT" - }, - "node_modules/caller-callsite": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/caller-callsite/-/caller-callsite-2.0.0.tgz", - "integrity": "sha512-JuG3qI4QOftFsZyOn1qq87fq5grLIyk1JYd5lJmdA+fG7aQ9pA/i3JIJGcO3q0MrRcHlOt1U+ZeHW8Dq9axALQ==", - "license": "MIT", - "dependencies": { - "callsites": "^2.0.0" - }, - "engines": { - "node": ">=4" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/caller-callsite/node_modules/callsites": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-2.0.0.tgz", - "integrity": "sha512-ksWePWBloaWPxJYQ8TL0JHvtci6G5QTKwQ95RcWAa/lzoAKuAOflGdAK92hpHXjkwb8zLxoLNUoNYZgVsaJzvQ==", - "license": "MIT", + "node_modules/crypto-random-string/node_modules/type-fest": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz", + "integrity": "sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==", + "license": "(MIT OR CC0-1.0)", "engines": { - "node": ">=4" - } - }, - "node_modules/caller-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/caller-path/-/caller-path-2.0.0.tgz", - "integrity": "sha512-MCL3sf6nCSXOwCTzvPKhN18TU7AHTvdtam8DAogxcrJ8Rjfbbg7Lgng64H9Iy+vUV6VGFClN/TyxBkAebLRR4A==", - "license": "MIT", - "dependencies": { - "caller-callsite": "^2.0.0" + "node": ">=10" }, - "engines": { - "node": ">=4" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/camel-case": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-4.1.2.tgz", - "integrity": "sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==", - "license": "MIT", + "node_modules/css-blank-pseudo": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/css-blank-pseudo/-/css-blank-pseudo-7.0.1.tgz", + "integrity": "sha512-jf+twWGDf6LDoXDUode+nc7ZlrqfaNphrBIBrcmeP3D8yw1uPaix1gCC8LUQUGQ6CycuK2opkbFFWFuq/a94ag==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", "dependencies": { - "pascal-case": "^3.1.2", - "tslib": "^2.0.3" - } - }, - "node_modules/camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", - "license": "MIT", + "postcss-selector-parser": "^7.0.0" + }, "engines": { - "node": ">=10" + "node": ">=18" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "peerDependencies": { + "postcss": "^8.4" } }, - "node_modules/camelcase-keys": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", - "integrity": "sha512-bA/Z/DERHKqoEOrp+qeGKw1QlvEQkGZSc0XaY6VnTxZr+Kv1G5zFwttpjv8qxZ/sBPT4nthwZaAcsAZTJlSKXQ==", + "node_modules/css-blank-pseudo/node_modules/postcss-selector-parser": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.1.tgz", + "integrity": "sha512-orRsuYpJVw8LdAwqqLykBj9ecS5/cRHlI5+nvTo8LcCKmzDmqVORXtOIYEEQuL9D4BxtA1lm5isAqzQZCoQ6Eg==", "license": "MIT", "dependencies": { - "camelcase": "^2.0.0", - "map-obj": "^1.0.0" + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" }, "engines": { - "node": ">=0.10.0" + "node": ">=4" } }, - "node_modules/camelcase-keys/node_modules/camelcase": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz", - "integrity": "sha512-DLIsRzJVBQu72meAKPkWQOLcujdXT32hwdfnkI1frSiSRMK1MofjKHf+MEx0SB6fjEFXL8fBDv1dKymBlOp4Qw==", - "license": "MIT", + "node_modules/css-declaration-sorter": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-7.3.1.tgz", + "integrity": "sha512-gz6x+KkgNCjxq3Var03pRYLhyNfwhkKF1g/yoLgDNtFvVu0/fOLV9C8fFEZRjACp/XQLumjAYo7JVjzH3wLbxA==", + "license": "ISC", "engines": { - "node": ">=0.10.0" + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.0.9" } }, - "node_modules/caniuse-api": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/caniuse-api/-/caniuse-api-3.0.0.tgz", - "integrity": "sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==", - "license": "MIT", + "node_modules/css-has-pseudo": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/css-has-pseudo/-/css-has-pseudo-7.0.3.tgz", + "integrity": "sha512-oG+vKuGyqe/xvEMoxAQrhi7uY16deJR3i7wwhBerVrGQKSqUC5GiOVxTpM9F9B9hw0J+eKeOWLH7E9gZ1Dr5rA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", "dependencies": { - "browserslist": "^4.0.0", - "caniuse-lite": "^1.0.0", - "lodash.memoize": "^4.1.2", - "lodash.uniq": "^4.5.0" + "@csstools/selector-specificity": "^5.0.0", + "postcss-selector-parser": "^7.0.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "node_modules/caniuse-lite": { - "version": "1.0.30001727", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001727.tgz", - "integrity": "sha512-pB68nIHmbN6L/4C6MH1DokyR3bYqFwjaSs/sWDHGj4CTcFtQUQMuJftVwWkXq7mNWOybD3KhUv3oWHoGxgP14Q==", + "node_modules/css-has-pseudo/node_modules/@csstools/selector-specificity": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-5.0.0.tgz", + "integrity": "sha512-PCqQV3c4CoVm3kdPhyeZ07VmBRdH2EpMFA/pd9OASpOEC3aXNGoqPDAZ80D0cLpMBxnmk0+yNhGsEx31hq7Gtw==", "funding": [ { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + "type": "github", + "url": "https://github.com/sponsors/csstools" }, { - "type": "github", - "url": "https://github.com/sponsors/ai" + "type": "opencollective", + "url": "https://opencollective.com/csstools" } ], - "license": "CC-BY-4.0" - }, - "node_modules/caseless": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==", - "license": "Apache-2.0" + "license": "MIT-0", + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss-selector-parser": "^7.0.0" + } }, - "node_modules/caw": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/caw/-/caw-2.0.1.tgz", - "integrity": "sha512-Cg8/ZSBEa8ZVY9HspcGUYaK63d/bN7rqS3CYCzEGUxuYv6UlmcjzDUz2fCFFHyTvUW5Pk0I+3hkA3iXlIj6guA==", + "node_modules/css-has-pseudo/node_modules/postcss-selector-parser": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.1.tgz", + "integrity": "sha512-orRsuYpJVw8LdAwqqLykBj9ecS5/cRHlI5+nvTo8LcCKmzDmqVORXtOIYEEQuL9D4BxtA1lm5isAqzQZCoQ6Eg==", "license": "MIT", "dependencies": { - "get-proxy": "^2.0.0", - "isurl": "^1.0.0-alpha5", - "tunnel-agent": "^0.6.0", - "url-to-options": "^1.0.1" + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" }, "engines": { "node": ">=4" } }, - "node_modules/ccount": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/ccount/-/ccount-2.0.1.tgz", - "integrity": "sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==", + "node_modules/css-loader": { + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-6.11.0.tgz", + "integrity": "sha512-CTJ+AEQJjq5NzLga5pE39qdiSV56F8ywCIsqNIRF0r7BDgWsN25aazToqAFg7ZrtA/U016xudB3ffgweORxX7g==", "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/chainsaw": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/chainsaw/-/chainsaw-0.1.0.tgz", - "integrity": "sha512-75kWfWt6MEKNC8xYXIdRpDehRYY/tNSgwKaJq+dbbDcxORuVrrQ+SEHoWsniVn9XPYfP4gmdWIeDk/4YNp1rNQ==", - "license": "MIT/X11", "dependencies": { - "traverse": ">=0.3.0 <0.4" + "icss-utils": "^5.1.0", + "postcss": "^8.4.33", + "postcss-modules-extract-imports": "^3.1.0", + "postcss-modules-local-by-default": "^4.0.5", + "postcss-modules-scope": "^3.2.0", + "postcss-modules-values": "^4.0.0", + "postcss-value-parser": "^4.2.0", + "semver": "^7.5.4" }, "engines": { - "node": "*" + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "@rspack/core": "0.x || 1.x", + "webpack": "^5.0.0" + }, + "peerDependenciesMeta": { + "@rspack/core": { + "optional": true + }, + "webpack": { + "optional": true + } } }, - "node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "node_modules/css-minimizer-webpack-plugin": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/css-minimizer-webpack-plugin/-/css-minimizer-webpack-plugin-5.0.1.tgz", + "integrity": "sha512-3caImjKFQkS+ws1TGcFn0V1HyDJFq1Euy589JlD6/3rV2kj+w7r5G9WDMgSHvpvXHNZ2calVypZWuEDQd9wfLg==", "license": "MIT", "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "@jridgewell/trace-mapping": "^0.3.18", + "cssnano": "^6.0.1", + "jest-worker": "^29.4.3", + "postcss": "^8.4.24", + "schema-utils": "^4.0.1", + "serialize-javascript": "^6.0.1" }, "engines": { - "node": ">=10" + "node": ">= 14.15.0" }, "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.0.0" + }, + "peerDependenciesMeta": { + "@parcel/css": { + "optional": true + }, + "@swc/css": { + "optional": true + }, + "clean-css": { + "optional": true + }, + "csso": { + "optional": true + }, + "esbuild": { + "optional": true + }, + "lightningcss": { + "optional": true + } } }, - "node_modules/char-regex": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz", - "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==", - "license": "MIT", + "node_modules/css-prefers-color-scheme": { + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/css-prefers-color-scheme/-/css-prefers-color-scheme-10.0.0.tgz", + "integrity": "sha512-VCtXZAWivRglTZditUfB4StnsWr6YVZ2PRtuxQLKTNRdtAf8tpzaVPE9zXIF3VaSc7O70iK/j1+NXxyQCqdPjQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", "engines": { - "node": ">=10" + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "node_modules/character-entities": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/character-entities/-/character-entities-2.0.2.tgz", - "integrity": "sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==", - "license": "MIT", + "node_modules/css-select": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-5.2.2.tgz", + "integrity": "sha512-TizTzUddG/xYLA3NXodFM0fSbNizXjOKhqiQQwvhlspadZokn1KDy0NZFS0wuEubIYAV5/c1/lAr0TaaFXEXzw==", + "license": "BSD-2-Clause", + "dependencies": { + "boolbase": "^1.0.0", + "css-what": "^6.1.0", + "domhandler": "^5.0.2", + "domutils": "^3.0.1", + "nth-check": "^2.0.1" + }, "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" + "url": "https://github.com/sponsors/fb55" } }, - "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==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" + "node_modules/css-tree": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-2.3.1.tgz", + "integrity": "sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw==", + "license": "MIT", + "dependencies": { + "mdn-data": "2.0.30", + "source-map-js": "^1.0.1" + }, + "engines": { + "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0" } }, - "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==", - "license": "MIT", + "node_modules/css-what": { + "version": "6.2.2", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.2.2.tgz", + "integrity": "sha512-u/O3vwbptzhMs3L1fQE82ZSLHQQfto5gyZzwteVIEyeaY5Fc7R4dapF/BvRoSYFeqfBk4m0V1Vafq5Pjv25wvA==", + "license": "BSD-2-Clause", + "engines": { + "node": ">= 6" + }, "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" + "url": "https://github.com/sponsors/fb55" } }, - "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==", + "node_modules/cssdb": { + "version": "8.7.1", + "resolved": "https://registry.npmjs.org/cssdb/-/cssdb-8.7.1.tgz", + "integrity": "sha512-+F6LKx48RrdGOtE4DT5jz7Uo+VeyKXpK797FAevIkzjV8bMHz6xTO5F7gNDcRCHmPgD5jj2g6QCsY9zmVrh38A==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + } + ], + "license": "MIT-0" + }, + "node_modules/cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" } }, - "node_modules/cheerio": { - "version": "1.0.0-rc.12", - "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.12.tgz", - "integrity": "sha512-VqR8m68vM46BNnuZ5NtnGBKIE/DfN0cRIzg9n40EIq9NOv90ayxLBXA8fXC5gquFRGJSTRqBq25Jt2ECLR431Q==", + "node_modules/cssnano": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/cssnano/-/cssnano-6.1.2.tgz", + "integrity": "sha512-rYk5UeX7VAM/u0lNqewCdasdtPK81CgX8wJFLEIXHbV2oldWRgJAsZrdhRXkV1NJzA2g850KiFm9mMU2HxNxMA==", "license": "MIT", "dependencies": { - "cheerio-select": "^2.1.0", - "dom-serializer": "^2.0.0", - "domhandler": "^5.0.3", - "domutils": "^3.0.1", - "htmlparser2": "^8.0.1", - "parse5": "^7.0.0", - "parse5-htmlparser2-tree-adapter": "^7.0.0" + "cssnano-preset-default": "^6.1.2", + "lilconfig": "^3.1.1" }, "engines": { - "node": ">= 6" + "node": "^14 || ^16 || >=18.0" }, "funding": { - "url": "https://github.com/cheeriojs/cheerio?sponsor=1" - } - }, - "node_modules/cheerio-select": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cheerio-select/-/cheerio-select-2.1.0.tgz", - "integrity": "sha512-9v9kG0LvzrlcungtnJtpGNxY+fzECQKhK4EGJX2vByejiMX84MFNQw4UxPJl3bFbTMw+Dfs37XaIkCwTZfLh4g==", - "license": "BSD-2-Clause", - "dependencies": { - "boolbase": "^1.0.0", - "css-select": "^5.1.0", - "css-what": "^6.1.0", - "domelementtype": "^2.3.0", - "domhandler": "^5.0.3", - "domutils": "^3.0.1" + "type": "opencollective", + "url": "https://opencollective.com/cssnano" }, - "funding": { - "url": "https://github.com/sponsors/fb55" + "peerDependencies": { + "postcss": "^8.4.31" } }, - "node_modules/chokidar": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", - "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", + "node_modules/cssnano-preset-advanced": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/cssnano-preset-advanced/-/cssnano-preset-advanced-6.1.2.tgz", + "integrity": "sha512-Nhao7eD8ph2DoHolEzQs5CfRpiEP0xa1HBdnFZ82kvqdmbwVBUr2r1QuQ4t1pi+D1ZpqpcO4T+wy/7RxzJ/WPQ==", "license": "MIT", "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" + "autoprefixer": "^10.4.19", + "browserslist": "^4.23.0", + "cssnano-preset-default": "^6.1.2", + "postcss-discard-unused": "^6.0.5", + "postcss-merge-idents": "^6.0.3", + "postcss-reduce-idents": "^6.0.3", + "postcss-zindex": "^6.0.2" }, "engines": { - "node": ">= 8.10.0" - }, - "funding": { - "url": "https://paulmillr.com/funding/" + "node": "^14 || ^16 || >=18.0" }, - "optionalDependencies": { - "fsevents": "~2.3.2" + "peerDependencies": { + "postcss": "^8.4.31" } }, - "node_modules/chrome-trace-event": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.4.tgz", - "integrity": "sha512-rNjApaLzuwaOTjCiT8lSDdGN1APCiqkChLMJxJPWLunPAt5fy8xgU9/jNOchV84wfIxrA0lRQB7oCT8jrn/wrQ==", + "node_modules/cssnano-preset-default": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-6.1.2.tgz", + "integrity": "sha512-1C0C+eNaeN8OcHQa193aRgYexyJtU8XwbdieEjClw+J9d94E41LwT6ivKH0WT+fYwYWB0Zp3I3IZ7tI/BbUbrg==", "license": "MIT", + "dependencies": { + "browserslist": "^4.23.0", + "css-declaration-sorter": "^7.2.0", + "cssnano-utils": "^4.0.2", + "postcss-calc": "^9.0.1", + "postcss-colormin": "^6.1.0", + "postcss-convert-values": "^6.1.0", + "postcss-discard-comments": "^6.0.2", + "postcss-discard-duplicates": "^6.0.3", + "postcss-discard-empty": "^6.0.3", + "postcss-discard-overridden": "^6.0.2", + "postcss-merge-longhand": "^6.0.5", + "postcss-merge-rules": "^6.1.1", + "postcss-minify-font-values": "^6.1.0", + "postcss-minify-gradients": "^6.0.3", + "postcss-minify-params": "^6.1.0", + "postcss-minify-selectors": "^6.0.4", + "postcss-normalize-charset": "^6.0.2", + "postcss-normalize-display-values": "^6.0.2", + "postcss-normalize-positions": "^6.0.2", + "postcss-normalize-repeat-style": "^6.0.2", + "postcss-normalize-string": "^6.0.2", + "postcss-normalize-timing-functions": "^6.0.2", + "postcss-normalize-unicode": "^6.1.0", + "postcss-normalize-url": "^6.0.2", + "postcss-normalize-whitespace": "^6.0.2", + "postcss-ordered-values": "^6.0.2", + "postcss-reduce-initial": "^6.1.0", + "postcss-reduce-transforms": "^6.0.2", + "postcss-svgo": "^6.0.3", + "postcss-unique-selectors": "^6.0.4" + }, "engines": { - "node": ">=6.0" + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" } }, - "node_modules/ci-info": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", - "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/sibiraj-s" - } - ], + "node_modules/cssnano-utils": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/cssnano-utils/-/cssnano-utils-4.0.2.tgz", + "integrity": "sha512-ZR1jHg+wZ8o4c3zqf1SIUSTIvm/9mU343FMR6Obe/unskbvpGhZOo1J6d/r8D1pzkRQYuwbcH3hToOuoA2G7oQ==", "license": "MIT", "engines": { - "node": ">=8" + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" } }, - "node_modules/class-utils": { - "version": "0.3.6", - "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", - "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", + "node_modules/csso": { + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/csso/-/csso-5.0.5.tgz", + "integrity": "sha512-0LrrStPOdJj+SPCCrGhzryycLjwcgUSHBtxNA8aIDxf0GLsRh1cKYhB00Gd1lDOS4yGH69+SNn13+TWbVHETFQ==", "license": "MIT", "dependencies": { - "arr-union": "^3.1.0", - "define-property": "^0.2.5", - "isobject": "^3.0.0", - "static-extend": "^0.1.1" + "css-tree": "~2.2.0" }, "engines": { - "node": ">=0.10.0" + "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0", + "npm": ">=7.0.0" } }, - "node_modules/class-utils/node_modules/define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", + "node_modules/csso/node_modules/css-tree": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-2.2.1.tgz", + "integrity": "sha512-OA0mILzGc1kCOCSJerOeqDxDQ4HOh+G8NbOJFOTgOCzpw7fCBubk0fEyxp8AgOL/jvLgYA/uV0cMbe43ElF1JA==", "license": "MIT", "dependencies": { - "is-descriptor": "^0.1.0" + "mdn-data": "2.0.28", + "source-map-js": "^1.0.1" }, "engines": { - "node": ">=0.10.0" + "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0", + "npm": ">=7.0.0" } }, - "node_modules/class-utils/node_modules/is-descriptor": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.7.tgz", - "integrity": "sha512-C3grZTvObeN1xud4cRWl366OMXZTj0+HGyk4hvfpx4ZHt1Pb60ANSXqCK7pdOTeUQpRzECBSTphqvD7U+l22Eg==", + "node_modules/csso/node_modules/mdn-data": { + "version": "2.0.28", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.28.tgz", + "integrity": "sha512-aylIc7Z9y4yzHYAJNuESG3hfhC+0Ibp/MAMiaOZgNv4pmEdFyfZhhhny4MNiAfWdBQ1RQ2mfDWmM1x8SvGyp8g==", + "license": "CC0-1.0" + }, + "node_modules/csstype": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.2.3.tgz", + "integrity": "sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ==", + "license": "MIT" + }, + "node_modules/data-view-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.2.tgz", + "integrity": "sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==", + "dev": true, "license": "MIT", "dependencies": { - "is-accessor-descriptor": "^1.0.1", - "is-data-descriptor": "^1.0.1" + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.2" }, "engines": { "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/classnames": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.5.1.tgz", - "integrity": "sha512-saHYOzhIQs6wy2sVxTM6bUDsQO4F50V9RQ22qBpEdCW+I+/Wmke2HOl6lS6dTpdxVhb88/I6+Hs+438c3lfUow==", - "license": "MIT" - }, - "node_modules/clean-css": { - "version": "5.3.3", - "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-5.3.3.tgz", - "integrity": "sha512-D5J+kHaVb/wKSFcyyV75uCn8fiY4sV38XJoe4CUyGQ+mOU/fMVYUdH1hJC+CJQ5uY3EnW27SbJYS4X8BiLrAFg==", + "node_modules/data-view-byte-length": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.2.tgz", + "integrity": "sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ==", + "dev": true, "license": "MIT", "dependencies": { - "source-map": "~0.6.0" + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.2" }, "engines": { - "node": ">= 10.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/inspect-js" } }, - "node_modules/clean-css/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "license": "BSD-3-Clause", - "engines": { - "node": ">=0.10.0" + "node_modules/data-view-byte-offset": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.1.tgz", + "integrity": "sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "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==", + "node_modules/debounce": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/debounce/-/debounce-1.2.1.tgz", + "integrity": "sha512-XRRe6Glud4rd/ZGQfiV1ruXSfbvfJedlV9Y6zOlP+2K04vBYiJEte6stfFkCP03aMnY5tsipamumUjL14fofug==", + "license": "MIT" + }, + "node_modules/debug": { + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", + "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", "license": "MIT", + "dependencies": { + "ms": "^2.1.3" + }, "engines": { - "node": ">=6" + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } } }, - "node_modules/cli-boxes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-3.0.0.tgz", - "integrity": "sha512-/lzGpEWL/8PfI0BmBOPRwp0c/wFNX1RdUML3jK/RcSBA9T8mZDdQpqYBKtCFTOfQbwPqWEOpjqW+Fnayc0969g==", + "node_modules/decode-named-character-reference": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/decode-named-character-reference/-/decode-named-character-reference-1.3.0.tgz", + "integrity": "sha512-GtpQYB283KrPp6nRw50q3U9/VfOutZOe103qlN7BPP6Ad27xYnOIWv4lPzo8HCAL+mMZofJ9KEy30fq6MfaK6Q==", "license": "MIT", - "engines": { - "node": ">=10" + "dependencies": { + "character-entities": "^2.0.0" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/cli-table3": { - "version": "0.6.5", - "resolved": "https://registry.npmjs.org/cli-table3/-/cli-table3-0.6.5.tgz", - "integrity": "sha512-+W/5efTR7y5HRD7gACw9yQjqMVvEMLBHmboM/kPWam+H+Hmyrgjh6YncVKK122YZkXrLudzTuAukUw9FnMf7IQ==", + "node_modules/decompress-response": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz", + "integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==", "license": "MIT", "dependencies": { - "string-width": "^4.2.0" + "mimic-response": "^3.1.0" }, "engines": { - "node": "10.* || >= 12.*" + "node": ">=10" }, - "optionalDependencies": { - "@colors/colors": "1.5.0" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/cli-table3/node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "license": "MIT" - }, - "node_modules/cli-table3/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "node_modules/decompress-response/node_modules/mimic-response": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz", + "integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==", "license": "MIT", - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" + "engines": { + "node": ">=10" }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/deep-extend": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", + "license": "MIT", "engines": { - "node": ">=8" + "node": ">=4.0.0" } }, - "node_modules/cli-table3/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "node_modules/deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/deepmerge": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", + "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", "license": "MIT", - "dependencies": { - "ansi-regex": "^5.0.1" - }, "engines": { - "node": ">=8" + "node": ">=0.10.0" } }, - "node_modules/clone-deep": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", - "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", + "node_modules/default-browser": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/default-browser/-/default-browser-5.5.0.tgz", + "integrity": "sha512-H9LMLr5zwIbSxrmvikGuI/5KGhZ8E2zH3stkMgM5LpOWDutGM2JZaj460Udnf1a+946zc7YBgrqEWwbk7zHvGw==", "license": "MIT", "dependencies": { - "is-plain-object": "^2.0.4", - "kind-of": "^6.0.2", - "shallow-clone": "^3.0.0" + "bundle-name": "^4.1.0", + "default-browser-id": "^5.0.0" }, "engines": { - "node": ">=6" + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/clone-response": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.2.tgz", - "integrity": "sha512-yjLXh88P599UOyPTFX0POsd7WxnbsVsGohcwzHOLspIhhpalPw1BcqED8NblyZLKcGrL8dTgMlcaZxV2jAD41Q==", + "node_modules/default-browser-id": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/default-browser-id/-/default-browser-id-5.0.1.tgz", + "integrity": "sha512-x1VCxdX4t+8wVfd1so/9w+vQ4vx7lKd2Qp5tDRutErwmR85OgmfX7RlLRMWafRMY7hbEiXIbudNrjOAPa/hL8Q==", "license": "MIT", - "dependencies": { - "mimic-response": "^1.0.0" + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/clsx": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/clsx/-/clsx-1.2.1.tgz", - "integrity": "sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==", + "node_modules/defer-to-connect": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-2.0.1.tgz", + "integrity": "sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==", "license": "MIT", "engines": { - "node": ">=6" + "node": ">=10" } }, - "node_modules/coa": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/coa/-/coa-2.0.2.tgz", - "integrity": "sha512-q5/jG+YQnSy4nRTV4F7lPepBJZ8qBNJJDBuJdoejDyLXgmL7IEo+Le2JDZudFTFt7mrCqIRaSjws4ygRCTCAXA==", + "node_modules/define-data-property": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", + "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", "license": "MIT", "dependencies": { - "@types/q": "^1.5.1", - "chalk": "^2.4.1", - "q": "^1.1.2" + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "gopd": "^1.0.1" }, "engines": { - "node": ">= 4.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/coa/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "node_modules/define-lazy-prop": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", + "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", "license": "MIT", - "dependencies": { - "color-convert": "^1.9.0" - }, "engines": { - "node": ">=4" + "node": ">=8" } }, - "node_modules/coa/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "node_modules/define-properties": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", + "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", "license": "MIT", "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" + "define-data-property": "^1.0.1", + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" }, "engines": { - "node": ">=4" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/coa/node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "node_modules/depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", "license": "MIT", - "dependencies": { - "color-name": "1.1.3" + "engines": { + "node": ">= 0.8" } }, - "node_modules/coa/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", - "license": "MIT" - }, - "node_modules/coa/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "node_modules/dequal": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz", + "integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==", "license": "MIT", "engines": { - "node": ">=0.8.0" + "node": ">=6" } }, - "node_modules/coa/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "node_modules/destroy": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", "license": "MIT", "engines": { - "node": ">=4" + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" } }, - "node_modules/coa/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "license": "MIT", - "dependencies": { - "has-flag": "^3.0.0" - }, + "node_modules/detect-libc": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.1.2.tgz", + "integrity": "sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==", + "license": "Apache-2.0", "engines": { - "node": ">=4" + "node": ">=8" } }, - "node_modules/coffee-script": { - "version": "1.12.7", - "resolved": "https://registry.npmjs.org/coffee-script/-/coffee-script-1.12.7.tgz", - "integrity": "sha512-fLeEhqwymYat/MpTPUjSKHVYYl0ec2mOyALEMLmzr5i1isuG+6jfI2j2d5oBO3VIzgUXgBVIcOT9uH1TFxBckw==", - "deprecated": "CoffeeScript on NPM has moved to \"coffeescript\" (no hyphen)", + "node_modules/detect-node": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", + "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==", + "license": "MIT" + }, + "node_modules/detect-port": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/detect-port/-/detect-port-1.6.1.tgz", + "integrity": "sha512-CmnVc+Hek2egPx1PeTFVta2W78xy2K/9Rkf6cC4T59S50tVnzKj+tnx5mmx5lwvCkujZ4uRrpRSuV+IVs3f90Q==", "license": "MIT", + "dependencies": { + "address": "^1.0.1", + "debug": "4" + }, "bin": { - "cake": "bin/cake", - "coffee": "bin/coffee" + "detect": "bin/detect-port.js", + "detect-port": "bin/detect-port.js" }, "engines": { - "node": ">=0.8.0" + "node": ">= 4.0.0" } }, - "node_modules/collapse-white-space": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/collapse-white-space/-/collapse-white-space-2.1.0.tgz", - "integrity": "sha512-loKTxY1zCOuG4j9f6EPnuyyYkf58RnhhWTvRoZEokgB+WbdXehfjFviyOVYkqzEWz1Q5kRiZdBYS5SwxbQYwzw==", + "node_modules/devlop": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/devlop/-/devlop-1.1.0.tgz", + "integrity": "sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==", "license": "MIT", + "dependencies": { + "dequal": "^2.0.0" + }, "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/collection-visit": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", - "integrity": "sha512-lNkKvzEeMBBjUGHZ+q6z9pSJla0KWAQPvtzhEV9+iGyQYG+pBpl7xKDhxoNSOZH2hhv0v5k0y2yAM4o4SjoSkw==", + "node_modules/dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", "license": "MIT", "dependencies": { - "map-visit": "^1.0.0", - "object-visit": "^1.0.0" + "path-type": "^4.0.0" }, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, - "node_modules/color": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/color/-/color-3.2.1.tgz", - "integrity": "sha512-aBl7dZI9ENN6fUGC7mWpMTPNHmWUSNan9tuWN6ahh5ZLNk9baLJOnSMlrQkHcrfFgz2/RigjUVAjdx36VcemKA==", - "license": "MIT", - "dependencies": { - "color-convert": "^1.9.3", - "color-string": "^1.6.0" - } - }, - "node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "node_modules/dns-packet": { + "version": "5.6.1", + "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-5.6.1.tgz", + "integrity": "sha512-l4gcSouhcgIKRvyy99RNVOgxXiicE+2jZoNmaNmZ6JXiGajBOJAesk1OBlJuM5k2c+eudGdLxDqXuPCKIj6kpw==", "license": "MIT", "dependencies": { - "color-name": "~1.1.4" + "@leichtgewicht/ip-codec": "^2.0.1" }, "engines": { - "node": ">=7.0.0" + "node": ">=6" } }, - "node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "license": "MIT" + "node_modules/doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=0.10.0" + } }, - "node_modules/color-string": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz", - "integrity": "sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==", + "node_modules/dom-converter": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/dom-converter/-/dom-converter-0.2.0.tgz", + "integrity": "sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA==", "license": "MIT", "dependencies": { - "color-name": "^1.0.0", - "simple-swizzle": "^0.2.2" + "utila": "~0.4" } }, - "node_modules/color/node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "node_modules/dom-serializer": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", + "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==", "license": "MIT", "dependencies": { - "color-name": "1.1.3" + "domelementtype": "^2.3.0", + "domhandler": "^5.0.2", + "entities": "^4.2.0" + }, + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" } }, - "node_modules/color/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", - "license": "MIT" + "node_modules/domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ], + "license": "BSD-2-Clause" }, - "node_modules/colord": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/colord/-/colord-2.9.3.tgz", - "integrity": "sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==", - "license": "MIT" + "node_modules/domhandler": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", + "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", + "license": "BSD-2-Clause", + "dependencies": { + "domelementtype": "^2.3.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } }, - "node_modules/colorette": { - "version": "2.0.20", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", - "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==", - "license": "MIT" + "node_modules/domutils": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.2.2.tgz", + "integrity": "sha512-6kZKyUajlDuqlHKVX1w7gyslj9MPIXzIFiz/rGu35uC1wMi+kMhQwGhl4lt9unC9Vb9INnY9Z3/ZA3+FhASLaw==", + "license": "BSD-2-Clause", + "dependencies": { + "dom-serializer": "^2.0.0", + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3" + }, + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" + } }, - "node_modules/combine-promises": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/combine-promises/-/combine-promises-1.2.0.tgz", - "integrity": "sha512-VcQB1ziGD0NXrhKxiwyNbCDmRzs/OShMs2GqW2DlU2A/Sd0nQxE1oWDAE5O0ygSx5mgQOn9eIFh7yKPgFRVkPQ==", + "node_modules/dot-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/dot-case/-/dot-case-3.0.4.tgz", + "integrity": "sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==", "license": "MIT", - "engines": { - "node": ">=10" + "dependencies": { + "no-case": "^3.0.4", + "tslib": "^2.0.3" } }, - "node_modules/combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "node_modules/dot-prop": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-6.0.1.tgz", + "integrity": "sha512-tE7ztYzXHIeyvc7N+hR3oi7FIbf/NIjVP9hmAt3yMXzrQ072/fpjGLx2GxNxGxUl5V73MEqYzioOMoVhGMJ5cA==", "license": "MIT", "dependencies": { - "delayed-stream": "~1.0.0" + "is-obj": "^2.0.0" }, "engines": { - "node": ">= 0.8" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/comma-separated-tokens": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/comma-separated-tokens/-/comma-separated-tokens-2.0.3.tgz", - "integrity": "sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==", + "node_modules/dot-prop/node_modules/is-obj": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", + "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" + "engines": { + "node": ">=8" } }, - "node_modules/commander": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-5.1.0.tgz", - "integrity": "sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==", + "node_modules/dunder-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", + "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.1", + "es-errors": "^1.3.0", + "gopd": "^1.2.0" + }, "engines": { - "node": ">= 6" + "node": ">= 0.4" } }, - "node_modules/common-path-prefix": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/common-path-prefix/-/common-path-prefix-3.0.0.tgz", - "integrity": "sha512-QE33hToZseCH3jS0qN96O/bSh3kaw/h+Tq7ngyY9eWDUnTlTNUyqfqvCXioLe5Na5jFsL78ra/wuBU4iuEgd4w==", + "node_modules/duplexer": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", + "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==", + "license": "MIT" + }, + "node_modules/earcut": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/earcut/-/earcut-3.0.2.tgz", + "integrity": "sha512-X7hshQbLyMJ/3RPhyObLARM2sNxxmRALLKx1+NVFFnQ9gKzmCrxm9+uLIAdBcvc8FNLpctqlQ2V6AE92Ol9UDQ==", "license": "ISC" }, - "node_modules/commondir": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==", + "node_modules/eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", + "license": "MIT" + }, + "node_modules/ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", + "license": "MIT" + }, + "node_modules/electron-to-chromium": { + "version": "1.5.286", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.286.tgz", + "integrity": "sha512-9tfDXhJ4RKFNerfjdCcZfufu49vg620741MNs26a9+bhLThdB+plgMeou98CAaHu/WATj2iHOOHTp1hWtABj2A==", + "license": "ISC" + }, + "node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", + "license": "MIT" + }, + "node_modules/emojilib": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/emojilib/-/emojilib-2.4.0.tgz", + "integrity": "sha512-5U0rVMU5Y2n2+ykNLQqMoqklN9ICBT/KsvC1Gz6vqHbz2AXXGkG+Pm5rMWk/8Vjrr/mY9985Hi8DYzn1F09Nyw==", "license": "MIT" }, - "node_modules/component-emitter": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.1.tgz", - "integrity": "sha512-T0+barUSQRTUQASh8bx02dl+DhF54GtIDY13Y3m9oWTklKbb3Wv974meRpeZ3lp1JpLVECWWNHC4vaG2XHXouQ==", + "node_modules/emojis-list": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", + "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", + "license": "MIT", + "engines": { + "node": ">= 4" + } + }, + "node_modules/emoticon": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/emoticon/-/emoticon-4.1.0.tgz", + "integrity": "sha512-VWZfnxqwNcc51hIy/sbOdEem6D+cVtpPzEEtVAFdaas30+1dgkyaOQ4sQ6Bp0tOMqWO1v+HQfYaoodOkdhK6SQ==", "license": "MIT", "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/compressible": { - "version": "2.0.18", - "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", - "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", + "node_modules/encodeurl": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", + "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==", "license": "MIT", - "dependencies": { - "mime-db": ">= 1.43.0 < 2" - }, "engines": { - "node": ">= 0.6" + "node": ">= 0.8" } }, - "node_modules/compression": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/compression/-/compression-1.8.1.tgz", - "integrity": "sha512-9mAqGPHLakhCLeNyxPkK4xVo746zQ/czLH1Ky+vkitMnWfWZps8r0qXuwhwizagCRttsL4lfG4pIOvaWLpAP0w==", + "node_modules/enhanced-resolve": { + "version": "5.19.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.19.0.tgz", + "integrity": "sha512-phv3E1Xl4tQOShqSte26C7Fl84EwUdZsyOuSSk9qtAGyyQs2s3jJzComh+Abf4g187lUUAvH+H26omrqia2aGg==", "license": "MIT", "dependencies": { - "bytes": "3.1.2", - "compressible": "~2.0.18", - "debug": "2.6.9", - "negotiator": "~0.6.4", - "on-headers": "~1.1.0", - "safe-buffer": "5.2.1", - "vary": "~1.1.2" + "graceful-fs": "^4.2.4", + "tapable": "^2.3.0" }, "engines": { - "node": ">= 0.8.0" + "node": ">=10.13.0" } }, - "node_modules/compression/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "node_modules/entities": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/error-ex": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.4.tgz", + "integrity": "sha512-sqQamAnR14VgCr1A618A3sGrygcpK+HEbenA/HiEAkkUwcZIIB/tgWqHFxWgOyDh4nB4JCRimh79dR5Ywc9MDQ==", "license": "MIT", "dependencies": { - "ms": "2.0.0" + "is-arrayish": "^0.2.1" } }, - "node_modules/compression/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "license": "MIT" - }, - "node_modules/compression/node_modules/negotiator": { - "version": "0.6.4", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.4.tgz", - "integrity": "sha512-myRT3DiWPHqho5PrJaIRyaMv2kgYf0mUVgBNOYMuCH5Ki1yEiQaf/ZJuQ62nvpc44wL5WDbTX7yGJi1Neevw8w==", - "license": "MIT", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", - "license": "MIT" - }, - "node_modules/concat-stream": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", - "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", - "engines": [ - "node >= 0.8" - ], - "license": "MIT", - "dependencies": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^2.2.2", - "typedarray": "^0.0.6" - } - }, - "node_modules/concat-with-sourcemaps": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/concat-with-sourcemaps/-/concat-with-sourcemaps-1.1.0.tgz", - "integrity": "sha512-4gEjHJFT9e+2W/77h/DS5SGUgwDaOwprX8L/gl5+3ixnzkVJJsZWDSelmN3Oilw3LNDZjZV0yqH1hLG3k6nghg==", - "license": "ISC", - "dependencies": { - "source-map": "^0.6.1" - } - }, - "node_modules/concat-with-sourcemaps/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "license": "BSD-3-Clause", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/config-chain": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/config-chain/-/config-chain-1.1.13.tgz", - "integrity": "sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==", - "license": "MIT", - "dependencies": { - "ini": "^1.3.4", - "proto-list": "~1.2.1" - } - }, - "node_modules/config-chain/node_modules/ini": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", - "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", - "license": "ISC" - }, - "node_modules/configstore": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/configstore/-/configstore-6.0.0.tgz", - "integrity": "sha512-cD31W1v3GqUlQvbBCGcXmd2Nj9SvLDOP1oQ0YFuLETufzSPaKp11rYBsSOm7rCsW3OnIRAFM3OxRhceaXNYHkA==", - "license": "BSD-2-Clause", - "dependencies": { - "dot-prop": "^6.0.1", - "graceful-fs": "^4.2.6", - "unique-string": "^3.0.0", - "write-file-atomic": "^3.0.3", - "xdg-basedir": "^5.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/yeoman/configstore?sponsor=1" - } - }, - "node_modules/connect-history-api-fallback": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-2.0.0.tgz", - "integrity": "sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA==", - "license": "MIT", - "engines": { - "node": ">=0.8" - } - }, - "node_modules/consola": { - "version": "3.4.2", - "resolved": "https://registry.npmjs.org/consola/-/consola-3.4.2.tgz", - "integrity": "sha512-5IKcdX0nnYavi6G7TtOhwkYzyjfJlatbjMjuLSfE2kYT5pMDOilZ4OvMhi637CcDICTmz3wARPoyhqyX1Y+XvA==", - "license": "MIT", - "engines": { - "node": "^14.18.0 || >=16.10.0" - } - }, - "node_modules/console-stream": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/console-stream/-/console-stream-0.1.1.tgz", - "integrity": "sha512-QC/8l9e6ofi6nqZ5PawlDgzmMw3OxIXtvolBzap/F4UDBJlDaZRSNbL/lb41C29FcbSJncBFlJFj2WJoNyZRfQ==" - }, - "node_modules/content-disposition": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", - "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", - "license": "MIT", - "dependencies": { - "safe-buffer": "5.2.1" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/content-type": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", - "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", - "license": "MIT", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/continuable-cache": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/continuable-cache/-/continuable-cache-0.3.1.tgz", - "integrity": "sha512-TF30kpKhTH8AGCG3dut0rdd/19B7Z+qCnrMoBLpyQu/2drZdNrrpcjPEoJeSVsQM+8KmWG5O56oPDjSSUsuTyA==" - }, - "node_modules/convert-source-map": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", - "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", - "license": "MIT" - }, - "node_modules/cookie": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.1.tgz", - "integrity": "sha512-6DnInpx7SJ2AK3+CTUE/ZM0vWTUboZCegxhC2xiIydHR9jNuTAASBrfEpHhiGOZw/nX51bHt6YQl8jsGo4y/0w==", - "license": "MIT", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/cookie-signature": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==", - "license": "MIT" - }, - "node_modules/copy-descriptor": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", - "integrity": "sha512-XgZ0pFcakEUlbwQEVNg3+QAis1FyTL3Qel9FYy8pSkQqoG3PNoT0bOCQtOXcOkur21r2Eq2kI+IE+gsmAEVlYw==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/copy-text-to-clipboard": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/copy-text-to-clipboard/-/copy-text-to-clipboard-3.2.0.tgz", - "integrity": "sha512-RnJFp1XR/LOBDckxTib5Qjr/PMfkatD0MUCQgdpqS8MdKiNUzBjAQBEN6oUy+jW7LI93BBG3DtMB2KOOKpGs2Q==", - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/copy-webpack-plugin": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-11.0.0.tgz", - "integrity": "sha512-fX2MWpamkW0hZxMEg0+mYnA40LTosOSa5TqZ9GYIBzyJa9C3QUaMPSE2xAi/buNr8u89SfD9wHSQVBzrRa/SOQ==", - "license": "MIT", - "dependencies": { - "fast-glob": "^3.2.11", - "glob-parent": "^6.0.1", - "globby": "^13.1.1", - "normalize-path": "^3.0.0", - "schema-utils": "^4.0.0", - "serialize-javascript": "^6.0.0" - }, - "engines": { - "node": ">= 14.15.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^5.1.0" - } - }, - "node_modules/copy-webpack-plugin/node_modules/glob-parent": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", - "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", - "license": "ISC", - "dependencies": { - "is-glob": "^4.0.3" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/copy-webpack-plugin/node_modules/globby": { - "version": "13.2.2", - "resolved": "https://registry.npmjs.org/globby/-/globby-13.2.2.tgz", - "integrity": "sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w==", - "license": "MIT", - "dependencies": { - "dir-glob": "^3.0.1", - "fast-glob": "^3.3.0", - "ignore": "^5.2.4", - "merge2": "^1.4.1", - "slash": "^4.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/copy-webpack-plugin/node_modules/slash": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", - "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/core-js": { - "version": "3.44.0", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.44.0.tgz", - "integrity": "sha512-aFCtd4l6GvAXwVEh3XbbVqJGHDJt0OZRa+5ePGx3LLwi12WfexqQxcsohb2wgsa/92xtl19Hd66G/L+TaAxDMw==", - "hasInstallScript": true, - "license": "MIT", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/core-js" - } - }, - "node_modules/core-js-compat": { - "version": "3.44.0", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.44.0.tgz", - "integrity": "sha512-JepmAj2zfl6ogy34qfWtcE7nHKAJnKsQFRn++scjVS2bZFllwptzw61BZcZFYBPpUznLfAvh0LGhxKppk04ClA==", - "license": "MIT", - "dependencies": { - "browserslist": "^4.25.1" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/core-js" - } - }, - "node_modules/core-js-pure": { - "version": "3.44.0", - "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.44.0.tgz", - "integrity": "sha512-gvMQAGB4dfVUxpYD0k3Fq8J+n5bB6Ytl15lqlZrOIXFzxOhtPaObfkQGHtMRdyjIf7z2IeNULwi1jEwyS+ltKQ==", - "hasInstallScript": true, - "license": "MIT", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/core-js" - } - }, - "node_modules/core-util-is": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", - "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", - "license": "MIT" - }, - "node_modules/cosmiconfig": { - "version": "8.3.6", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.3.6.tgz", - "integrity": "sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==", - "license": "MIT", - "dependencies": { - "import-fresh": "^3.3.0", - "js-yaml": "^4.1.0", - "parse-json": "^5.2.0", - "path-type": "^4.0.0" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/d-fischer" - }, - "peerDependencies": { - "typescript": ">=4.9.5" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/cross-spawn": { - "version": "7.0.6", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", - "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", - "license": "MIT", - "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/crowdin-cli": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/crowdin-cli/-/crowdin-cli-0.3.0.tgz", - "integrity": "sha512-s1vSRqWalCqd+vW7nF4oZo1a2pMpEgwIiwVlPRD0HmGY3HjJwQKXqZ26NpX5qCDVN8UdEsScy+2jle0PPQBmAg==", - "license": "MIT", - "dependencies": { - "request": "^2.53.0", - "yamljs": "^0.2.1", - "yargs": "^2.3.0" - }, - "bin": { - "crowdin-cli": "bin/crowdin-cli" - } - }, - "node_modules/crypto-random-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-4.0.0.tgz", - "integrity": "sha512-x8dy3RnvYdlUcPOjkEHqozhiwzKNSq7GcPuXFbnyMOCHxX8V3OgIg/pYuabl2sbUPfIJaeAQB7PMOK8DFIdoRA==", - "license": "MIT", - "dependencies": { - "type-fest": "^1.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/crypto-random-string/node_modules/type-fest": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz", - "integrity": "sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==", - "license": "(MIT OR CC0-1.0)", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/css-blank-pseudo": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/css-blank-pseudo/-/css-blank-pseudo-7.0.1.tgz", - "integrity": "sha512-jf+twWGDf6LDoXDUode+nc7ZlrqfaNphrBIBrcmeP3D8yw1uPaix1gCC8LUQUGQ6CycuK2opkbFFWFuq/a94ag==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/csstools" - }, - { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - } - ], - "license": "MIT-0", - "dependencies": { - "postcss-selector-parser": "^7.0.0" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "postcss": "^8.4" - } - }, - "node_modules/css-blank-pseudo/node_modules/postcss-selector-parser": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.0.tgz", - "integrity": "sha512-8sLjZwK0R+JlxlYcTuVnyT2v+htpdrjDOKuMcOVdYjt52Lh8hWRYpxBPoKx/Zg+bcjc3wx6fmQevMmUztS/ccA==", - "license": "MIT", - "dependencies": { - "cssesc": "^3.0.0", - "util-deprecate": "^1.0.2" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/css-color-names": { - "version": "0.0.4", - "resolved": "https://registry.npmjs.org/css-color-names/-/css-color-names-0.0.4.tgz", - "integrity": "sha512-zj5D7X1U2h2zsXOAM8EyUREBnnts6H+Jm+d1M2DbiQQcUtnqgQsMrdo8JW9R80YFUmIdBZeMu5wvYM7hcgWP/Q==", - "license": "MIT", - "engines": { - "node": "*" - } - }, - "node_modules/css-declaration-sorter": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-7.2.0.tgz", - "integrity": "sha512-h70rUM+3PNFuaBDTLe8wF/cdWu+dOZmb7pJt8Z2sedYbAcQVQV/tEchueg3GWxwqS0cxtbxmaHEdkNACqcvsow==", - "license": "ISC", - "engines": { - "node": "^14 || ^16 || >=18" - }, - "peerDependencies": { - "postcss": "^8.0.9" - } - }, - "node_modules/css-has-pseudo": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/css-has-pseudo/-/css-has-pseudo-7.0.2.tgz", - "integrity": "sha512-nzol/h+E0bId46Kn2dQH5VElaknX2Sr0hFuB/1EomdC7j+OISt2ZzK7EHX9DZDY53WbIVAR7FYKSO2XnSf07MQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/csstools" - }, - { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - } - ], - "license": "MIT-0", - "dependencies": { - "@csstools/selector-specificity": "^5.0.0", - "postcss-selector-parser": "^7.0.0", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "postcss": "^8.4" - } - }, - "node_modules/css-has-pseudo/node_modules/@csstools/selector-specificity": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-5.0.0.tgz", - "integrity": "sha512-PCqQV3c4CoVm3kdPhyeZ07VmBRdH2EpMFA/pd9OASpOEC3aXNGoqPDAZ80D0cLpMBxnmk0+yNhGsEx31hq7Gtw==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/csstools" - }, - { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - } - ], - "license": "MIT-0", - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "postcss-selector-parser": "^7.0.0" - } - }, - "node_modules/css-has-pseudo/node_modules/postcss-selector-parser": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.0.tgz", - "integrity": "sha512-8sLjZwK0R+JlxlYcTuVnyT2v+htpdrjDOKuMcOVdYjt52Lh8hWRYpxBPoKx/Zg+bcjc3wx6fmQevMmUztS/ccA==", - "license": "MIT", - "dependencies": { - "cssesc": "^3.0.0", - "util-deprecate": "^1.0.2" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/css-loader": { - "version": "6.11.0", - "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-6.11.0.tgz", - "integrity": "sha512-CTJ+AEQJjq5NzLga5pE39qdiSV56F8ywCIsqNIRF0r7BDgWsN25aazToqAFg7ZrtA/U016xudB3ffgweORxX7g==", - "license": "MIT", - "dependencies": { - "icss-utils": "^5.1.0", - "postcss": "^8.4.33", - "postcss-modules-extract-imports": "^3.1.0", - "postcss-modules-local-by-default": "^4.0.5", - "postcss-modules-scope": "^3.2.0", - "postcss-modules-values": "^4.0.0", - "postcss-value-parser": "^4.2.0", - "semver": "^7.5.4" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "@rspack/core": "0.x || 1.x", - "webpack": "^5.0.0" - }, - "peerDependenciesMeta": { - "@rspack/core": { - "optional": true - }, - "webpack": { - "optional": true - } - } - }, - "node_modules/css-minimizer-webpack-plugin": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/css-minimizer-webpack-plugin/-/css-minimizer-webpack-plugin-5.0.1.tgz", - "integrity": "sha512-3caImjKFQkS+ws1TGcFn0V1HyDJFq1Euy589JlD6/3rV2kj+w7r5G9WDMgSHvpvXHNZ2calVypZWuEDQd9wfLg==", - "license": "MIT", - "dependencies": { - "@jridgewell/trace-mapping": "^0.3.18", - "cssnano": "^6.0.1", - "jest-worker": "^29.4.3", - "postcss": "^8.4.24", - "schema-utils": "^4.0.1", - "serialize-javascript": "^6.0.1" - }, - "engines": { - "node": ">= 14.15.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^5.0.0" - }, - "peerDependenciesMeta": { - "@parcel/css": { - "optional": true - }, - "@swc/css": { - "optional": true - }, - "clean-css": { - "optional": true - }, - "csso": { - "optional": true - }, - "esbuild": { - "optional": true - }, - "lightningcss": { - "optional": true - } - } - }, - "node_modules/css-prefers-color-scheme": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/css-prefers-color-scheme/-/css-prefers-color-scheme-10.0.0.tgz", - "integrity": "sha512-VCtXZAWivRglTZditUfB4StnsWr6YVZ2PRtuxQLKTNRdtAf8tpzaVPE9zXIF3VaSc7O70iK/j1+NXxyQCqdPjQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/csstools" - }, - { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - } - ], - "license": "MIT-0", - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "postcss": "^8.4" - } - }, - "node_modules/css-select": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-5.2.2.tgz", - "integrity": "sha512-TizTzUddG/xYLA3NXodFM0fSbNizXjOKhqiQQwvhlspadZokn1KDy0NZFS0wuEubIYAV5/c1/lAr0TaaFXEXzw==", - "license": "BSD-2-Clause", - "dependencies": { - "boolbase": "^1.0.0", - "css-what": "^6.1.0", - "domhandler": "^5.0.2", - "domutils": "^3.0.1", - "nth-check": "^2.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/fb55" - } - }, - "node_modules/css-select-base-adapter": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/css-select-base-adapter/-/css-select-base-adapter-0.1.1.tgz", - "integrity": "sha512-jQVeeRG70QI08vSTwf1jHxp74JoZsr2XSgETae8/xC8ovSnL2WF87GTLO86Sbwdt2lK4Umg4HnnwMO4YF3Ce7w==", - "license": "MIT" - }, - "node_modules/css-tree": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-2.3.1.tgz", - "integrity": "sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw==", - "license": "MIT", - "dependencies": { - "mdn-data": "2.0.30", - "source-map-js": "^1.0.1" - }, - "engines": { - "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0" - } - }, - "node_modules/css-what": { - "version": "6.2.2", - "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.2.2.tgz", - "integrity": "sha512-u/O3vwbptzhMs3L1fQE82ZSLHQQfto5gyZzwteVIEyeaY5Fc7R4dapF/BvRoSYFeqfBk4m0V1Vafq5Pjv25wvA==", - "license": "BSD-2-Clause", - "engines": { - "node": ">= 6" - }, - "funding": { - "url": "https://github.com/sponsors/fb55" - } - }, - "node_modules/cssdb": { - "version": "8.3.1", - "resolved": "https://registry.npmjs.org/cssdb/-/cssdb-8.3.1.tgz", - "integrity": "sha512-XnDRQMXucLueX92yDe0LPKupXetWoFOgawr4O4X41l5TltgK2NVbJJVDnnOywDYfW1sTJ28AcXGKOqdRKwCcmQ==", - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - { - "type": "github", - "url": "https://github.com/sponsors/csstools" - } - ], - "license": "MIT-0" - }, - "node_modules/cssesc": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", - "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", - "license": "MIT", - "bin": { - "cssesc": "bin/cssesc" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/cssnano": { - "version": "6.1.2", - "resolved": "https://registry.npmjs.org/cssnano/-/cssnano-6.1.2.tgz", - "integrity": "sha512-rYk5UeX7VAM/u0lNqewCdasdtPK81CgX8wJFLEIXHbV2oldWRgJAsZrdhRXkV1NJzA2g850KiFm9mMU2HxNxMA==", - "license": "MIT", - "dependencies": { - "cssnano-preset-default": "^6.1.2", - "lilconfig": "^3.1.1" - }, - "engines": { - "node": "^14 || ^16 || >=18.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/cssnano" - }, - "peerDependencies": { - "postcss": "^8.4.31" - } - }, - "node_modules/cssnano-preset-advanced": { - "version": "6.1.2", - "resolved": "https://registry.npmjs.org/cssnano-preset-advanced/-/cssnano-preset-advanced-6.1.2.tgz", - "integrity": "sha512-Nhao7eD8ph2DoHolEzQs5CfRpiEP0xa1HBdnFZ82kvqdmbwVBUr2r1QuQ4t1pi+D1ZpqpcO4T+wy/7RxzJ/WPQ==", - "license": "MIT", - "dependencies": { - "autoprefixer": "^10.4.19", - "browserslist": "^4.23.0", - "cssnano-preset-default": "^6.1.2", - "postcss-discard-unused": "^6.0.5", - "postcss-merge-idents": "^6.0.3", - "postcss-reduce-idents": "^6.0.3", - "postcss-zindex": "^6.0.2" - }, - "engines": { - "node": "^14 || ^16 || >=18.0" - }, - "peerDependencies": { - "postcss": "^8.4.31" - } - }, - "node_modules/cssnano-preset-default": { - "version": "6.1.2", - "resolved": "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-6.1.2.tgz", - "integrity": "sha512-1C0C+eNaeN8OcHQa193aRgYexyJtU8XwbdieEjClw+J9d94E41LwT6ivKH0WT+fYwYWB0Zp3I3IZ7tI/BbUbrg==", - "license": "MIT", - "dependencies": { - "browserslist": "^4.23.0", - "css-declaration-sorter": "^7.2.0", - "cssnano-utils": "^4.0.2", - "postcss-calc": "^9.0.1", - "postcss-colormin": "^6.1.0", - "postcss-convert-values": "^6.1.0", - "postcss-discard-comments": "^6.0.2", - "postcss-discard-duplicates": "^6.0.3", - "postcss-discard-empty": "^6.0.3", - "postcss-discard-overridden": "^6.0.2", - "postcss-merge-longhand": "^6.0.5", - "postcss-merge-rules": "^6.1.1", - "postcss-minify-font-values": "^6.1.0", - "postcss-minify-gradients": "^6.0.3", - "postcss-minify-params": "^6.1.0", - "postcss-minify-selectors": "^6.0.4", - "postcss-normalize-charset": "^6.0.2", - "postcss-normalize-display-values": "^6.0.2", - "postcss-normalize-positions": "^6.0.2", - "postcss-normalize-repeat-style": "^6.0.2", - "postcss-normalize-string": "^6.0.2", - "postcss-normalize-timing-functions": "^6.0.2", - "postcss-normalize-unicode": "^6.1.0", - "postcss-normalize-url": "^6.0.2", - "postcss-normalize-whitespace": "^6.0.2", - "postcss-ordered-values": "^6.0.2", - "postcss-reduce-initial": "^6.1.0", - "postcss-reduce-transforms": "^6.0.2", - "postcss-svgo": "^6.0.3", - "postcss-unique-selectors": "^6.0.4" - }, - "engines": { - "node": "^14 || ^16 || >=18.0" - }, - "peerDependencies": { - "postcss": "^8.4.31" - } - }, - "node_modules/cssnano-util-get-arguments": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/cssnano-util-get-arguments/-/cssnano-util-get-arguments-4.0.0.tgz", - "integrity": "sha512-6RIcwmV3/cBMG8Aj5gucQRsJb4vv4I4rn6YjPbVWd5+Pn/fuG+YseGvXGk00XLkoZkaj31QOD7vMUpNPC4FIuw==", - "license": "MIT", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/cssnano-util-get-match": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/cssnano-util-get-match/-/cssnano-util-get-match-4.0.0.tgz", - "integrity": "sha512-JPMZ1TSMRUPVIqEalIBNoBtAYbi8okvcFns4O0YIhcdGebeYZK7dMyHJiQ6GqNBA9kE0Hym4Aqym5rPdsV/4Cw==", - "license": "MIT", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/cssnano-util-raw-cache": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/cssnano-util-raw-cache/-/cssnano-util-raw-cache-4.0.1.tgz", - "integrity": "sha512-qLuYtWK2b2Dy55I8ZX3ky1Z16WYsx544Q0UWViebptpwn/xDBmog2TLg4f+DBMg1rJ6JDWtn96WHbOKDWt1WQA==", - "license": "MIT", - "dependencies": { - "postcss": "^7.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/cssnano-util-raw-cache/node_modules/picocolors": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", - "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", - "license": "ISC" - }, - "node_modules/cssnano-util-raw-cache/node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "license": "MIT", - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/cssnano-util-raw-cache/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "license": "BSD-3-Clause", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/cssnano-util-same-parent": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/cssnano-util-same-parent/-/cssnano-util-same-parent-4.0.1.tgz", - "integrity": "sha512-WcKx5OY+KoSIAxBW6UBBRay1U6vkYheCdjyVNDm85zt5K9mHoGOfsOsqIszfAqrQQFIIKgjh2+FDgIj/zsl21Q==", - "license": "MIT", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/cssnano-utils": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/cssnano-utils/-/cssnano-utils-4.0.2.tgz", - "integrity": "sha512-ZR1jHg+wZ8o4c3zqf1SIUSTIvm/9mU343FMR6Obe/unskbvpGhZOo1J6d/r8D1pzkRQYuwbcH3hToOuoA2G7oQ==", - "license": "MIT", - "engines": { - "node": "^14 || ^16 || >=18.0" - }, - "peerDependencies": { - "postcss": "^8.4.31" - } - }, - "node_modules/csso": { - "version": "5.0.5", - "resolved": "https://registry.npmjs.org/csso/-/csso-5.0.5.tgz", - "integrity": "sha512-0LrrStPOdJj+SPCCrGhzryycLjwcgUSHBtxNA8aIDxf0GLsRh1cKYhB00Gd1lDOS4yGH69+SNn13+TWbVHETFQ==", - "license": "MIT", - "dependencies": { - "css-tree": "~2.2.0" - }, - "engines": { - "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0", - "npm": ">=7.0.0" - } - }, - "node_modules/csso/node_modules/css-tree": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-2.2.1.tgz", - "integrity": "sha512-OA0mILzGc1kCOCSJerOeqDxDQ4HOh+G8NbOJFOTgOCzpw7fCBubk0fEyxp8AgOL/jvLgYA/uV0cMbe43ElF1JA==", - "license": "MIT", - "dependencies": { - "mdn-data": "2.0.28", - "source-map-js": "^1.0.1" - }, - "engines": { - "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0", - "npm": ">=7.0.0" - } - }, - "node_modules/csso/node_modules/mdn-data": { - "version": "2.0.28", - "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.28.tgz", - "integrity": "sha512-aylIc7Z9y4yzHYAJNuESG3hfhC+0Ibp/MAMiaOZgNv4pmEdFyfZhhhny4MNiAfWdBQ1RQ2mfDWmM1x8SvGyp8g==", - "license": "CC0-1.0" - }, - "node_modules/csstype": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", - "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==", - "license": "MIT" - }, - "node_modules/currently-unhandled": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", - "integrity": "sha512-/fITjgjGU50vjQ4FH6eUoYu+iUoUKIXws2hL15JJpIR+BbTxaXQsMuuyjtNh2WqsSBS5nsaZHFsFecyw5CCAng==", - "license": "MIT", - "dependencies": { - "array-find-index": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/dashdash": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g==", - "license": "MIT", - "dependencies": { - "assert-plus": "^1.0.0" - }, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/data-view-buffer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.2.tgz", - "integrity": "sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==", - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.3", - "es-errors": "^1.3.0", - "is-data-view": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/data-view-byte-length": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.2.tgz", - "integrity": "sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ==", - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.3", - "es-errors": "^1.3.0", - "is-data-view": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/inspect-js" - } - }, - "node_modules/data-view-byte-offset": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.1.tgz", - "integrity": "sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==", - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.2", - "es-errors": "^1.3.0", - "is-data-view": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/debounce": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/debounce/-/debounce-1.2.1.tgz", - "integrity": "sha512-XRRe6Glud4rd/ZGQfiV1ruXSfbvfJedlV9Y6zOlP+2K04vBYiJEte6stfFkCP03aMnY5tsipamumUjL14fofug==", - "license": "MIT" - }, - "node_modules/debug": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.1.tgz", - "integrity": "sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==", - "license": "MIT", - "dependencies": { - "ms": "^2.1.3" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/decode-named-character-reference": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decode-named-character-reference/-/decode-named-character-reference-1.2.0.tgz", - "integrity": "sha512-c6fcElNV6ShtZXmsgNgFFV5tVX2PaV4g+MOAkb8eXHvn6sryJBrZa9r0zV6+dtTyoCKxtDy5tyQ5ZwQuidtd+Q==", - "license": "MIT", - "dependencies": { - "character-entities": "^2.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/decode-uri-component": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.2.tgz", - "integrity": "sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ==", - "license": "MIT", - "engines": { - "node": ">=0.10" - } - }, - "node_modules/decompress": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/decompress/-/decompress-4.2.1.tgz", - "integrity": "sha512-e48kc2IjU+2Zw8cTb6VZcJQ3lgVbS4uuB1TfCHbiZIP/haNXm+SVyhu+87jts5/3ROpd82GSVCoNs/z8l4ZOaQ==", - "license": "MIT", - "dependencies": { - "decompress-tar": "^4.0.0", - "decompress-tarbz2": "^4.0.0", - "decompress-targz": "^4.0.0", - "decompress-unzip": "^4.0.1", - "graceful-fs": "^4.1.10", - "make-dir": "^1.0.0", - "pify": "^2.3.0", - "strip-dirs": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/decompress-response": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", - "integrity": "sha512-BzRPQuY1ip+qDonAOz42gRm/pg9F768C+npV/4JOsxRC2sq+Rlk+Q4ZCAsOhnIaMrgarILY+RMUIvMmmX1qAEA==", - "license": "MIT", - "dependencies": { - "mimic-response": "^1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/decompress-tar": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/decompress-tar/-/decompress-tar-4.1.1.tgz", - "integrity": "sha512-JdJMaCrGpB5fESVyxwpCx4Jdj2AagLmv3y58Qy4GE6HMVjWz1FeVQk1Ct4Kye7PftcdOo/7U7UKzYBJgqnGeUQ==", - "license": "MIT", - "dependencies": { - "file-type": "^5.2.0", - "is-stream": "^1.1.0", - "tar-stream": "^1.5.2" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/decompress-tar/node_modules/file-type": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-5.2.0.tgz", - "integrity": "sha512-Iq1nJ6D2+yIO4c8HHg4fyVb8mAJieo1Oloy1mLLaB2PvezNedhBVm+QU7g0qM42aiMbRXTxKKwGD17rjKNJYVQ==", - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/decompress-tar/node_modules/is-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/decompress-tarbz2": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/decompress-tarbz2/-/decompress-tarbz2-4.1.1.tgz", - "integrity": "sha512-s88xLzf1r81ICXLAVQVzaN6ZmX4A6U4z2nMbOwobxkLoIIfjVMBg7TeguTUXkKeXni795B6y5rnvDw7rxhAq9A==", - "license": "MIT", - "dependencies": { - "decompress-tar": "^4.1.0", - "file-type": "^6.1.0", - "is-stream": "^1.1.0", - "seek-bzip": "^1.0.5", - "unbzip2-stream": "^1.0.9" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/decompress-tarbz2/node_modules/file-type": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-6.2.0.tgz", - "integrity": "sha512-YPcTBDV+2Tm0VqjybVd32MHdlEGAtuxS3VAYsumFokDSMG+ROT5wawGlnHDoz7bfMcMDt9hxuXvXwoKUx2fkOg==", - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/decompress-tarbz2/node_modules/is-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/decompress-targz": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/decompress-targz/-/decompress-targz-4.1.1.tgz", - "integrity": "sha512-4z81Znfr6chWnRDNfFNqLwPvm4db3WuZkqV+UgXQzSngG3CEKdBkw5jrv3axjjL96glyiiKjsxJG3X6WBZwX3w==", - "license": "MIT", - "dependencies": { - "decompress-tar": "^4.1.1", - "file-type": "^5.2.0", - "is-stream": "^1.1.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/decompress-targz/node_modules/file-type": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-5.2.0.tgz", - "integrity": "sha512-Iq1nJ6D2+yIO4c8HHg4fyVb8mAJieo1Oloy1mLLaB2PvezNedhBVm+QU7g0qM42aiMbRXTxKKwGD17rjKNJYVQ==", - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/decompress-targz/node_modules/is-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/decompress-unzip": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/decompress-unzip/-/decompress-unzip-4.0.1.tgz", - "integrity": "sha512-1fqeluvxgnn86MOh66u8FjbtJpAFv5wgCT9Iw8rcBqQcCo5tO8eiJw7NNTrvt9n4CRBVq7CstiS922oPgyGLrw==", - "license": "MIT", - "dependencies": { - "file-type": "^3.8.0", - "get-stream": "^2.2.0", - "pify": "^2.3.0", - "yauzl": "^2.4.2" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/decompress-unzip/node_modules/file-type": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-3.9.0.tgz", - "integrity": "sha512-RLoqTXE8/vPmMuTI88DAzhMYC99I8BWv7zYP4A1puo5HIjEJ5EX48ighy4ZyKMG9EDXxBgW6e++cn7d1xuFghA==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/decompress-unzip/node_modules/get-stream": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-2.3.1.tgz", - "integrity": "sha512-AUGhbbemXxrZJRD5cDvKtQxLuYaIbNtDTK8YqupCI393Q2KSTreEsLUN3ZxAWFGiKTzL6nKuzfcIvieflUX9qA==", - "license": "MIT", - "dependencies": { - "object-assign": "^4.0.1", - "pinkie-promise": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/decompress-unzip/node_modules/pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/decompress/node_modules/make-dir": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", - "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", - "license": "MIT", - "dependencies": { - "pify": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/decompress/node_modules/make-dir/node_modules/pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==", - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/decompress/node_modules/pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/deep-extend": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", - "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", - "license": "MIT", - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/deep-is": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", - "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", - "license": "MIT" - }, - "node_modules/deepmerge": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", - "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/default-gateway": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-6.0.3.tgz", - "integrity": "sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==", - "license": "BSD-2-Clause", - "dependencies": { - "execa": "^5.0.0" - }, - "engines": { - "node": ">= 10" - } - }, - "node_modules/defer-to-connect": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-2.0.1.tgz", - "integrity": "sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==", - "license": "MIT", - "engines": { - "node": ">=10" - } - }, - "node_modules/define-data-property": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", - "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", - "license": "MIT", - "dependencies": { - "es-define-property": "^1.0.0", - "es-errors": "^1.3.0", - "gopd": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/define-lazy-prop": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", - "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/define-properties": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", - "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", - "license": "MIT", - "dependencies": { - "define-data-property": "^1.0.1", - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/define-property": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", - "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", - "license": "MIT", - "dependencies": { - "is-descriptor": "^1.0.2", - "isobject": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", - "license": "MIT", - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/depd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", - "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", - "license": "MIT", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/dependency-graph": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/dependency-graph/-/dependency-graph-0.11.0.tgz", - "integrity": "sha512-JeMq7fEshyepOWDfcfHK06N3MhyPhz++vtqWhMT5O9A3K42rdsEDpfdVqjaqaAhsw6a+ZqeDvQVtD0hFHQWrzg==", - "license": "MIT", - "engines": { - "node": ">= 0.6.0" - } - }, - "node_modules/dequal": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz", - "integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==", - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/destroy": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", - "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", - "license": "MIT", - "engines": { - "node": ">= 0.8", - "npm": "1.2.8000 || >= 1.4.16" - } - }, - "node_modules/detect-node": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", - "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==", - "license": "MIT" - }, - "node_modules/detect-port": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/detect-port/-/detect-port-1.6.1.tgz", - "integrity": "sha512-CmnVc+Hek2egPx1PeTFVta2W78xy2K/9Rkf6cC4T59S50tVnzKj+tnx5mmx5lwvCkujZ4uRrpRSuV+IVs3f90Q==", - "license": "MIT", - "dependencies": { - "address": "^1.0.1", - "debug": "4" - }, - "bin": { - "detect": "bin/detect-port.js", - "detect-port": "bin/detect-port.js" - }, - "engines": { - "node": ">= 4.0.0" - } - }, - "node_modules/detect-port-alt": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/detect-port-alt/-/detect-port-alt-1.1.6.tgz", - "integrity": "sha512-5tQykt+LqfJFBEYaDITx7S7cR7mJ/zQmLXZ2qt5w04ainYZw6tBf9dBunMjVeVOdYVRUzUOE4HkY5J7+uttb5Q==", - "license": "MIT", - "dependencies": { - "address": "^1.0.1", - "debug": "^2.6.0" - }, - "bin": { - "detect": "bin/detect-port", - "detect-port": "bin/detect-port" - }, - "engines": { - "node": ">= 4.2.1" - } - }, - "node_modules/detect-port-alt/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "license": "MIT", - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/detect-port-alt/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "license": "MIT" - }, - "node_modules/devlop": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/devlop/-/devlop-1.1.0.tgz", - "integrity": "sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==", - "license": "MIT", - "dependencies": { - "dequal": "^2.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/diacritics-map": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/diacritics-map/-/diacritics-map-0.1.0.tgz", - "integrity": "sha512-3omnDTYrGigU0i4cJjvaKwD52B8aoqyX/NEIkukFFkogBemsIbhSa1O414fpTp5nuszJG6lvQ5vBvDVNCbSsaQ==", - "license": "MIT", - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/dir-glob": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", - "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", - "license": "MIT", - "dependencies": { - "path-type": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/discontinuous-range": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/discontinuous-range/-/discontinuous-range-1.0.0.tgz", - "integrity": "sha512-c68LpLbO+7kP/b1Hr1qs8/BJ09F5khZGTxqxZuhzxpmwJKOgRFHJWIb9/KmqnqHhLdO55aOxFH/EGBvUQbL/RQ==", - "license": "MIT" - }, - "node_modules/dns-packet": { - "version": "5.6.1", - "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-5.6.1.tgz", - "integrity": "sha512-l4gcSouhcgIKRvyy99RNVOgxXiicE+2jZoNmaNmZ6JXiGajBOJAesk1OBlJuM5k2c+eudGdLxDqXuPCKIj6kpw==", - "license": "MIT", - "dependencies": { - "@leichtgewicht/ip-codec": "^2.0.1" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/docusaurus": { - "version": "1.14.7", - "resolved": "https://registry.npmjs.org/docusaurus/-/docusaurus-1.14.7.tgz", - "integrity": "sha512-UWqar4ZX0lEcpLc5Tg+MwZ2jhF/1n1toCQRSeoxDON/D+E9ToLr+vTRFVMP/Tk84NXSVjZFRlrjWwM2pXzvLsQ==", - "license": "MIT", - "dependencies": { - "@babel/core": "^7.12.3", - "@babel/plugin-proposal-class-properties": "^7.12.1", - "@babel/plugin-proposal-object-rest-spread": "^7.12.1", - "@babel/polyfill": "^7.12.1", - "@babel/preset-env": "^7.12.1", - "@babel/preset-react": "^7.12.5", - "@babel/register": "^7.12.1", - "@babel/traverse": "^7.12.5", - "@babel/types": "^7.12.6", - "autoprefixer": "^9.7.5", - "babylon": "^6.18.0", - "chalk": "^3.0.0", - "classnames": "^2.2.6", - "commander": "^4.0.1", - "crowdin-cli": "^0.3.0", - "cssnano": "^4.1.10", - "enzyme": "^3.10.0", - "enzyme-adapter-react-16": "^1.15.1", - "escape-string-regexp": "^2.0.0", - "express": "^4.17.1", - "feed": "^4.2.1", - "fs-extra": "^9.0.1", - "gaze": "^1.1.3", - "github-slugger": "^1.3.0", - "glob": "^7.1.6", - "highlight.js": "^9.16.2", - "imagemin": "^6.0.0", - "imagemin-gifsicle": "^6.0.1", - "imagemin-jpegtran": "^6.0.0", - "imagemin-optipng": "^6.0.0", - "imagemin-svgo": "^7.0.0", - "lodash": "^4.17.20", - "markdown-toc": "^1.2.0", - "mkdirp": "^0.5.1", - "portfinder": "^1.0.28", - "postcss": "^7.0.23", - "prismjs": "^1.22.0", - "react": "^16.8.4", - "react-dev-utils": "^11.0.1", - "react-dom": "^16.8.4", - "remarkable": "^2.0.0", - "request": "^2.88.0", - "shelljs": "^0.8.4", - "sitemap": "^3.2.2", - "tcp-port-used": "^1.0.1", - "tiny-lr": "^1.1.1", - "tree-node-cli": "^1.2.5", - "truncate-html": "^1.0.3" - }, - "bin": { - "docusaurus-build": "lib/build-files.js", - "docusaurus-examples": "lib/copy-examples.js", - "docusaurus-publish": "lib/publish-gh-pages.js", - "docusaurus-rename-version": "lib/rename-version.js", - "docusaurus-start": "lib/start-server.js", - "docusaurus-version": "lib/version.js", - "docusaurus-write-translations": "lib/write-translations.js" - } - }, - "node_modules/docusaurus-json-schema-plugin": { - "version": "1.14.0", - "resolved": "https://registry.npmjs.org/docusaurus-json-schema-plugin/-/docusaurus-json-schema-plugin-1.14.0.tgz", - "integrity": "sha512-TyXIVqAr+rKXhRQqq/IElUogl5ABSDV+PoiHcB6+Jroy2RMsimHkvz3OyfYpxTPDVGetSlX9TvuYJgLVBLIe/w==", - "license": "AGPL-3.0-or-later", - "dependencies": { - "@stoplight/json-ref-resolver": "^3.1.5", - "monaco-editor": "^0.52.2", - "monaco-editor-webpack-plugin": "^7.1.0", - "react-monaco-editor": "^0.58.0" - }, - "peerDependencies": { - "@docusaurus/core": "^3.7.0", - "@docusaurus/theme-classic": "^3.7.0", - "react": ">=18 < 20" - } - }, - "node_modules/docusaurus-json-schema-plugin/node_modules/react-monaco-editor": { - "version": "0.58.0", - "resolved": "https://registry.npmjs.org/react-monaco-editor/-/react-monaco-editor-0.58.0.tgz", - "integrity": "sha512-e8JH0TQEzO96Wd/EXgzc9M9tQK1pxBECD+8GNob9slMURcCM36TiVrgc4topWCDGYxRuMj8IEkaX+s3eQcUUqw==", - "license": "MIT", - "peerDependencies": { - "monaco-editor": "^0.52.0", - "react": ">=16.8.0 <20.0.0", - "react-dom": ">=16.8.0 <20.0.0" - } - }, - "node_modules/docusaurus/node_modules/airbnb-prop-types": { - "version": "2.16.0", - "resolved": "https://registry.npmjs.org/airbnb-prop-types/-/airbnb-prop-types-2.16.0.tgz", - "integrity": "sha512-7WHOFolP/6cS96PhKNrslCLMYAI8yB1Pp6u6XmxozQOiZbsI5ycglZr5cHhBFfuRcQQjzCMith5ZPZdYiJCxUg==", - "deprecated": "This package has been renamed to 'prop-types-tools'", - "license": "MIT", - "dependencies": { - "array.prototype.find": "^2.1.1", - "function.prototype.name": "^1.1.2", - "is-regex": "^1.1.0", - "object-is": "^1.1.2", - "object.assign": "^4.1.0", - "object.entries": "^1.1.2", - "prop-types": "^15.7.2", - "prop-types-exact": "^1.2.0", - "react-is": "^16.13.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - }, - "peerDependencies": { - "react": "^0.14 || ^15.0.0 || ^16.0.0-alpha" - } - }, - "node_modules/docusaurus/node_modules/argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "license": "MIT", - "dependencies": { - "sprintf-js": "~1.0.2" - } - }, - "node_modules/docusaurus/node_modules/autoprefixer": { - "version": "9.8.8", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-9.8.8.tgz", - "integrity": "sha512-eM9d/swFopRt5gdJ7jrpCwgvEMIayITpojhkkSMRsFHYuH5bkSQ4p/9qTEHtmNudUZh22Tehu7I6CxAW0IXTKA==", - "license": "MIT", - "dependencies": { - "browserslist": "^4.12.0", - "caniuse-lite": "^1.0.30001109", - "normalize-range": "^0.1.2", - "num2fraction": "^1.2.2", - "picocolors": "^0.2.1", - "postcss": "^7.0.32", - "postcss-value-parser": "^4.1.0" - }, - "bin": { - "autoprefixer": "bin/autoprefixer" - }, - "funding": { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/autoprefixer" - } - }, - "node_modules/docusaurus/node_modules/chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/docusaurus/node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "license": "MIT", - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/docusaurus/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", - "license": "MIT" - }, - "node_modules/docusaurus/node_modules/commander": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", - "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", - "license": "MIT", - "engines": { - "node": ">= 6" - } - }, - "node_modules/docusaurus/node_modules/cosmiconfig": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-5.2.1.tgz", - "integrity": "sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA==", - "license": "MIT", - "dependencies": { - "import-fresh": "^2.0.0", - "is-directory": "^0.3.1", - "js-yaml": "^3.13.1", - "parse-json": "^4.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/docusaurus/node_modules/css-declaration-sorter": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-4.0.1.tgz", - "integrity": "sha512-BcxQSKTSEEQUftYpBVnsH4SF05NTuBokb19/sBt6asXGKZ/6VP7PLG1CBCkFDYOnhXhPh0jMhO6xZ71oYHXHBA==", - "license": "MIT", - "dependencies": { - "postcss": "^7.0.1", - "timsort": "^0.3.0" - }, - "engines": { - "node": ">4" - } - }, - "node_modules/docusaurus/node_modules/css-select": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-2.1.0.tgz", - "integrity": "sha512-Dqk7LQKpwLoH3VovzZnkzegqNSuAziQyNZUcrdDM401iY+R5NkGBXGmtO05/yaXQziALuPogeG0b7UAgjnTJTQ==", - "license": "BSD-2-Clause", - "dependencies": { - "boolbase": "^1.0.0", - "css-what": "^3.2.1", - "domutils": "^1.7.0", - "nth-check": "^1.0.2" - } - }, - "node_modules/docusaurus/node_modules/css-tree": { - "version": "1.0.0-alpha.37", - "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.0.0-alpha.37.tgz", - "integrity": "sha512-DMxWJg0rnz7UgxKT0Q1HU/L9BeJI0M6ksor0OgqOnF+aRCDWg/N2641HmVyU9KVIu0OVVWOb2IpC9A+BJRnejg==", - "license": "MIT", - "dependencies": { - "mdn-data": "2.0.4", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/docusaurus/node_modules/css-what": { - "version": "3.4.2", - "resolved": "https://registry.npmjs.org/css-what/-/css-what-3.4.2.tgz", - "integrity": "sha512-ACUm3L0/jiZTqfzRM3Hi9Q8eZqd6IK37mMWPLz9PJxkLWllYeRf+EHUSHYEtFop2Eqytaq1FizFVh7XfBnXCDQ==", - "license": "BSD-2-Clause", - "engines": { - "node": ">= 6" - }, - "funding": { - "url": "https://github.com/sponsors/fb55" - } - }, - "node_modules/docusaurus/node_modules/cssnano": { - "version": "4.1.11", - "resolved": "https://registry.npmjs.org/cssnano/-/cssnano-4.1.11.tgz", - "integrity": "sha512-6gZm2htn7xIPJOHY824ERgj8cNPgPxyCSnkXc4v7YvNW+TdVfzgngHcEhy/8D11kUWRUMbke+tC+AUcUsnMz2g==", - "license": "MIT", - "dependencies": { - "cosmiconfig": "^5.0.0", - "cssnano-preset-default": "^4.0.8", - "is-resolvable": "^1.0.0", - "postcss": "^7.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/docusaurus/node_modules/cssnano-preset-default": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-4.0.8.tgz", - "integrity": "sha512-LdAyHuq+VRyeVREFmuxUZR1TXjQm8QQU/ktoo/x7bz+SdOge1YKc5eMN6pRW7YWBmyq59CqYba1dJ5cUukEjLQ==", - "license": "MIT", - "dependencies": { - "css-declaration-sorter": "^4.0.1", - "cssnano-util-raw-cache": "^4.0.1", - "postcss": "^7.0.0", - "postcss-calc": "^7.0.1", - "postcss-colormin": "^4.0.3", - "postcss-convert-values": "^4.0.1", - "postcss-discard-comments": "^4.0.2", - "postcss-discard-duplicates": "^4.0.2", - "postcss-discard-empty": "^4.0.1", - "postcss-discard-overridden": "^4.0.1", - "postcss-merge-longhand": "^4.0.11", - "postcss-merge-rules": "^4.0.3", - "postcss-minify-font-values": "^4.0.2", - "postcss-minify-gradients": "^4.0.2", - "postcss-minify-params": "^4.0.2", - "postcss-minify-selectors": "^4.0.2", - "postcss-normalize-charset": "^4.0.1", - "postcss-normalize-display-values": "^4.0.2", - "postcss-normalize-positions": "^4.0.2", - "postcss-normalize-repeat-style": "^4.0.2", - "postcss-normalize-string": "^4.0.2", - "postcss-normalize-timing-functions": "^4.0.2", - "postcss-normalize-unicode": "^4.0.1", - "postcss-normalize-url": "^4.0.1", - "postcss-normalize-whitespace": "^4.0.2", - "postcss-ordered-values": "^4.1.2", - "postcss-reduce-initial": "^4.0.3", - "postcss-reduce-transforms": "^4.0.2", - "postcss-svgo": "^4.0.3", - "postcss-unique-selectors": "^4.0.1" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/docusaurus/node_modules/csso": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/csso/-/csso-4.2.0.tgz", - "integrity": "sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==", - "license": "MIT", - "dependencies": { - "css-tree": "^1.1.2" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/docusaurus/node_modules/csso/node_modules/css-tree": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.1.3.tgz", - "integrity": "sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==", - "license": "MIT", - "dependencies": { - "mdn-data": "2.0.14", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/docusaurus/node_modules/csso/node_modules/mdn-data": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.14.tgz", - "integrity": "sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==", - "license": "CC0-1.0" - }, - "node_modules/docusaurus/node_modules/dom-serializer": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.2.2.tgz", - "integrity": "sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g==", - "license": "MIT", - "dependencies": { - "domelementtype": "^2.0.1", - "entities": "^2.0.0" - } - }, - "node_modules/docusaurus/node_modules/domutils": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.7.0.tgz", - "integrity": "sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg==", - "license": "BSD-2-Clause", - "dependencies": { - "dom-serializer": "0", - "domelementtype": "1" - } - }, - "node_modules/docusaurus/node_modules/domutils/node_modules/domelementtype": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", - "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==", - "license": "BSD-2-Clause" - }, - "node_modules/docusaurus/node_modules/dot-prop": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", - "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==", - "license": "MIT", - "dependencies": { - "is-obj": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/docusaurus/node_modules/entities": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", - "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", - "license": "BSD-2-Clause", - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" - } - }, - "node_modules/docusaurus/node_modules/enzyme-adapter-react-16": { - "version": "1.15.8", - "resolved": "https://registry.npmjs.org/enzyme-adapter-react-16/-/enzyme-adapter-react-16-1.15.8.tgz", - "integrity": "sha512-uYGC31eGZBp5nGsr4nKhZKvxGQjyHGjS06BJsUlWgE29/hvnpgCsT1BJvnnyny7N3GIIVyxZ4O9GChr6hy2WQA==", - "license": "MIT", - "dependencies": { - "enzyme-adapter-utils": "^1.14.2", - "enzyme-shallow-equal": "^1.0.7", - "hasown": "^2.0.0", - "object.assign": "^4.1.5", - "object.values": "^1.1.7", - "prop-types": "^15.8.1", - "react-is": "^16.13.1", - "react-test-renderer": "^16.0.0-0", - "semver": "^5.7.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - }, - "peerDependencies": { - "enzyme": "^3.0.0", - "react": "^16.0.0-0", - "react-dom": "^16.0.0-0" - } - }, - "node_modules/docusaurus/node_modules/enzyme-adapter-utils": { - "version": "1.14.2", - "resolved": "https://registry.npmjs.org/enzyme-adapter-utils/-/enzyme-adapter-utils-1.14.2.tgz", - "integrity": "sha512-1ZC++RlsYRaiOWE5NRaF5OgsMt7F5rn/VuaJIgc7eW/fmgg8eS1/Ut7EugSPPi7VMdWMLcymRnMF+mJUJ4B8KA==", - "license": "MIT", - "dependencies": { - "airbnb-prop-types": "^2.16.0", - "function.prototype.name": "^1.1.6", - "hasown": "^2.0.0", - "object.assign": "^4.1.5", - "object.fromentries": "^2.0.7", - "prop-types": "^15.8.1", - "semver": "^6.3.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - }, - "peerDependencies": { - "react": "0.13.x || 0.14.x || ^15.0.0-0 || ^16.0.0-0" - } - }, - "node_modules/docusaurus/node_modules/enzyme-adapter-utils/node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "license": "ISC", - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/docusaurus/node_modules/escape-string-regexp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", - "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/docusaurus/node_modules/fs-extra": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", - "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", - "license": "MIT", - "dependencies": { - "at-least-node": "^1.0.0", - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/docusaurus/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/docusaurus/node_modules/import-fresh": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-2.0.0.tgz", - "integrity": "sha512-eZ5H8rcgYazHbKC3PG4ClHNykCSxtAhxSSEM+2mb+7evD2CKF5V7c0dNum7AdpDh0ZdICwZY9sRSn8f+KH96sg==", - "license": "MIT", - "dependencies": { - "caller-path": "^2.0.0", - "resolve-from": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/docusaurus/node_modules/is-obj": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", - "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/docusaurus/node_modules/js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "license": "MIT", - "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/docusaurus/node_modules/mdn-data": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.4.tgz", - "integrity": "sha512-iV3XNKw06j5Q7mi6h+9vbx23Tv7JkjEVgKHW4pimwyDGWm0OIQntJJ+u1C6mg6mK1EaTv42XQ7w76yuzH7M2cA==", - "license": "CC0-1.0" - }, - "node_modules/docusaurus/node_modules/normalize-url": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-3.3.0.tgz", - "integrity": "sha512-U+JJi7duF1o+u2pynbp2zXDW2/PADgC30f0GsHZtRh+HOcXHnw137TrNlyxxRvWW5fjKd3bcLHPxofWuCjaeZg==", - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/docusaurus/node_modules/nth-check": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz", - "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==", - "license": "BSD-2-Clause", - "dependencies": { - "boolbase": "~1.0.0" - } - }, - "node_modules/docusaurus/node_modules/parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==", - "license": "MIT", - "dependencies": { - "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/docusaurus/node_modules/picocolors": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", - "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", - "license": "ISC" - }, - "node_modules/docusaurus/node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "license": "MIT", - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/docusaurus/node_modules/postcss-calc": { - "version": "7.0.5", - "resolved": "https://registry.npmjs.org/postcss-calc/-/postcss-calc-7.0.5.tgz", - "integrity": "sha512-1tKHutbGtLtEZF6PT4JSihCHfIVldU72mZ8SdZHIYriIZ9fh9k9aWSppaT8rHsyI3dX+KSR+W+Ix9BMY3AODrg==", - "license": "MIT", - "dependencies": { - "postcss": "^7.0.27", - "postcss-selector-parser": "^6.0.2", - "postcss-value-parser": "^4.0.2" - } - }, - "node_modules/docusaurus/node_modules/postcss-colormin": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-4.0.3.tgz", - "integrity": "sha512-WyQFAdDZpExQh32j0U0feWisZ0dmOtPl44qYmJKkq9xFWY3p+4qnRzCHeNrkeRhwPHz9bQ3mo0/yVkaply0MNw==", - "license": "MIT", - "dependencies": { - "browserslist": "^4.0.0", - "color": "^3.0.0", - "has": "^1.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/docusaurus/node_modules/postcss-colormin/node_modules/postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "license": "MIT" - }, - "node_modules/docusaurus/node_modules/postcss-convert-values": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-4.0.1.tgz", - "integrity": "sha512-Kisdo1y77KUC0Jmn0OXU/COOJbzM8cImvw1ZFsBgBgMgb1iL23Zs/LXRe3r+EZqM3vGYKdQ2YJVQ5VkJI+zEJQ==", - "license": "MIT", - "dependencies": { - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/docusaurus/node_modules/postcss-convert-values/node_modules/postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "license": "MIT" - }, - "node_modules/docusaurus/node_modules/postcss-discard-comments": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-4.0.2.tgz", - "integrity": "sha512-RJutN259iuRf3IW7GZyLM5Sw4GLTOH8FmsXBnv8Ab/Tc2k4SR4qbV4DNbyyY4+Sjo362SyDmW2DQ7lBSChrpkg==", - "license": "MIT", - "dependencies": { - "postcss": "^7.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/docusaurus/node_modules/postcss-discard-duplicates": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-discard-duplicates/-/postcss-discard-duplicates-4.0.2.tgz", - "integrity": "sha512-ZNQfR1gPNAiXZhgENFfEglF93pciw0WxMkJeVmw8eF+JZBbMD7jp6C67GqJAXVZP2BWbOztKfbsdmMp/k8c6oQ==", - "license": "MIT", - "dependencies": { - "postcss": "^7.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/docusaurus/node_modules/postcss-discard-empty": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-4.0.1.tgz", - "integrity": "sha512-B9miTzbznhDjTfjvipfHoqbWKwd0Mj+/fL5s1QOz06wufguil+Xheo4XpOnc4NqKYBCNqqEzgPv2aPBIJLox0w==", - "license": "MIT", - "dependencies": { - "postcss": "^7.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/docusaurus/node_modules/postcss-discard-overridden": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-4.0.1.tgz", - "integrity": "sha512-IYY2bEDD7g1XM1IDEsUT4//iEYCxAmP5oDSFMVU/JVvT7gh+l4fmjciLqGgwjdWpQIdb0Che2VX00QObS5+cTg==", - "license": "MIT", - "dependencies": { - "postcss": "^7.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/docusaurus/node_modules/postcss-merge-longhand": { - "version": "4.0.11", - "resolved": "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-4.0.11.tgz", - "integrity": "sha512-alx/zmoeXvJjp7L4mxEMjh8lxVlDFX1gqWHzaaQewwMZiVhLo42TEClKaeHbRf6J7j82ZOdTJ808RtN0ZOZwvw==", - "license": "MIT", - "dependencies": { - "css-color-names": "0.0.4", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0", - "stylehacks": "^4.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/docusaurus/node_modules/postcss-merge-longhand/node_modules/postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "license": "MIT" - }, - "node_modules/docusaurus/node_modules/postcss-merge-rules": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-4.0.3.tgz", - "integrity": "sha512-U7e3r1SbvYzO0Jr3UT/zKBVgYYyhAz0aitvGIYOYK5CPmkNih+WDSsS5tvPrJ8YMQYlEMvsZIiqmn7HdFUaeEQ==", - "license": "MIT", - "dependencies": { - "browserslist": "^4.0.0", - "caniuse-api": "^3.0.0", - "cssnano-util-same-parent": "^4.0.0", - "postcss": "^7.0.0", - "postcss-selector-parser": "^3.0.0", - "vendors": "^1.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/docusaurus/node_modules/postcss-merge-rules/node_modules/postcss-selector-parser": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-3.1.2.tgz", - "integrity": "sha512-h7fJ/5uWuRVyOtkO45pnt1Ih40CEleeyCHzipqAZO2e5H20g25Y48uYnFUiShvY4rZWNJ/Bib/KVPmanaCtOhA==", - "license": "MIT", - "dependencies": { - "dot-prop": "^5.2.0", - "indexes-of": "^1.0.1", - "uniq": "^1.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/docusaurus/node_modules/postcss-minify-font-values": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-minify-font-values/-/postcss-minify-font-values-4.0.2.tgz", - "integrity": "sha512-j85oO6OnRU9zPf04+PZv1LYIYOprWm6IA6zkXkrJXyRveDEuQggG6tvoy8ir8ZwjLxLuGfNkCZEQG7zan+Hbtg==", - "license": "MIT", - "dependencies": { - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/docusaurus/node_modules/postcss-minify-font-values/node_modules/postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "license": "MIT" - }, - "node_modules/docusaurus/node_modules/postcss-minify-gradients": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-minify-gradients/-/postcss-minify-gradients-4.0.2.tgz", - "integrity": "sha512-qKPfwlONdcf/AndP1U8SJ/uzIJtowHlMaSioKzebAXSG4iJthlWC9iSWznQcX4f66gIWX44RSA841HTHj3wK+Q==", - "license": "MIT", - "dependencies": { - "cssnano-util-get-arguments": "^4.0.0", - "is-color-stop": "^1.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/docusaurus/node_modules/postcss-minify-gradients/node_modules/postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "license": "MIT" - }, - "node_modules/docusaurus/node_modules/postcss-minify-params": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-4.0.2.tgz", - "integrity": "sha512-G7eWyzEx0xL4/wiBBJxJOz48zAKV2WG3iZOqVhPet/9geefm/Px5uo1fzlHu+DOjT+m0Mmiz3jkQzVHe6wxAWg==", - "license": "MIT", - "dependencies": { - "alphanum-sort": "^1.0.0", - "browserslist": "^4.0.0", - "cssnano-util-get-arguments": "^4.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0", - "uniqs": "^2.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/docusaurus/node_modules/postcss-minify-params/node_modules/postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "license": "MIT" - }, - "node_modules/docusaurus/node_modules/postcss-minify-selectors": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-minify-selectors/-/postcss-minify-selectors-4.0.2.tgz", - "integrity": "sha512-D5S1iViljXBj9kflQo4YutWnJmwm8VvIsU1GeXJGiG9j8CIg9zs4voPMdQDUmIxetUOh60VilsNzCiAFTOqu3g==", - "license": "MIT", - "dependencies": { - "alphanum-sort": "^1.0.0", - "has": "^1.0.0", - "postcss": "^7.0.0", - "postcss-selector-parser": "^3.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/docusaurus/node_modules/postcss-minify-selectors/node_modules/postcss-selector-parser": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-3.1.2.tgz", - "integrity": "sha512-h7fJ/5uWuRVyOtkO45pnt1Ih40CEleeyCHzipqAZO2e5H20g25Y48uYnFUiShvY4rZWNJ/Bib/KVPmanaCtOhA==", - "license": "MIT", - "dependencies": { - "dot-prop": "^5.2.0", - "indexes-of": "^1.0.1", - "uniq": "^1.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/docusaurus/node_modules/postcss-normalize-charset": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-4.0.1.tgz", - "integrity": "sha512-gMXCrrlWh6G27U0hF3vNvR3w8I1s2wOBILvA87iNXaPvSNo5uZAMYsZG7XjCUf1eVxuPfyL4TJ7++SGZLc9A3g==", - "license": "MIT", - "dependencies": { - "postcss": "^7.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/docusaurus/node_modules/postcss-normalize-display-values": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-normalize-display-values/-/postcss-normalize-display-values-4.0.2.tgz", - "integrity": "sha512-3F2jcsaMW7+VtRMAqf/3m4cPFhPD3EFRgNs18u+k3lTJJlVe7d0YPO+bnwqo2xg8YiRpDXJI2u8A0wqJxMsQuQ==", - "license": "MIT", - "dependencies": { - "cssnano-util-get-match": "^4.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/docusaurus/node_modules/postcss-normalize-display-values/node_modules/postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "license": "MIT" - }, - "node_modules/docusaurus/node_modules/postcss-normalize-positions": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-normalize-positions/-/postcss-normalize-positions-4.0.2.tgz", - "integrity": "sha512-Dlf3/9AxpxE+NF1fJxYDeggi5WwV35MXGFnnoccP/9qDtFrTArZ0D0R+iKcg5WsUd8nUYMIl8yXDCtcrT8JrdA==", - "license": "MIT", - "dependencies": { - "cssnano-util-get-arguments": "^4.0.0", - "has": "^1.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/docusaurus/node_modules/postcss-normalize-positions/node_modules/postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "license": "MIT" - }, - "node_modules/docusaurus/node_modules/postcss-normalize-repeat-style": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-4.0.2.tgz", - "integrity": "sha512-qvigdYYMpSuoFs3Is/f5nHdRLJN/ITA7huIoCyqqENJe9PvPmLhNLMu7QTjPdtnVf6OcYYO5SHonx4+fbJE1+Q==", - "license": "MIT", - "dependencies": { - "cssnano-util-get-arguments": "^4.0.0", - "cssnano-util-get-match": "^4.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/docusaurus/node_modules/postcss-normalize-repeat-style/node_modules/postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "license": "MIT" - }, - "node_modules/docusaurus/node_modules/postcss-normalize-string": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-normalize-string/-/postcss-normalize-string-4.0.2.tgz", - "integrity": "sha512-RrERod97Dnwqq49WNz8qo66ps0swYZDSb6rM57kN2J+aoyEAJfZ6bMx0sx/F9TIEX0xthPGCmeyiam/jXif0eA==", - "license": "MIT", - "dependencies": { - "has": "^1.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/docusaurus/node_modules/postcss-normalize-string/node_modules/postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "license": "MIT" - }, - "node_modules/docusaurus/node_modules/postcss-normalize-timing-functions": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-4.0.2.tgz", - "integrity": "sha512-acwJY95edP762e++00Ehq9L4sZCEcOPyaHwoaFOhIwWCDfik6YvqsYNxckee65JHLKzuNSSmAdxwD2Cud1Z54A==", - "license": "MIT", - "dependencies": { - "cssnano-util-get-match": "^4.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/docusaurus/node_modules/postcss-normalize-timing-functions/node_modules/postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "license": "MIT" - }, - "node_modules/docusaurus/node_modules/postcss-normalize-unicode": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/postcss-normalize-unicode/-/postcss-normalize-unicode-4.0.1.tgz", - "integrity": "sha512-od18Uq2wCYn+vZ/qCOeutvHjB5jm57ToxRaMeNuf0nWVHaP9Hua56QyMF6fs/4FSUnVIw0CBPsU0K4LnBPwYwg==", - "license": "MIT", - "dependencies": { - "browserslist": "^4.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/docusaurus/node_modules/postcss-normalize-unicode/node_modules/postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "license": "MIT" - }, - "node_modules/docusaurus/node_modules/postcss-normalize-url": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/postcss-normalize-url/-/postcss-normalize-url-4.0.1.tgz", - "integrity": "sha512-p5oVaF4+IHwu7VpMan/SSpmpYxcJMtkGppYf0VbdH5B6hN8YNmVyJLuY9FmLQTzY3fag5ESUUHDqM+heid0UVA==", - "license": "MIT", - "dependencies": { - "is-absolute-url": "^2.0.0", - "normalize-url": "^3.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/docusaurus/node_modules/postcss-normalize-url/node_modules/postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "license": "MIT" - }, - "node_modules/docusaurus/node_modules/postcss-normalize-whitespace": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-normalize-whitespace/-/postcss-normalize-whitespace-4.0.2.tgz", - "integrity": "sha512-tO8QIgrsI3p95r8fyqKV+ufKlSHh9hMJqACqbv2XknufqEDhDvbguXGBBqxw9nsQoXWf0qOqppziKJKHMD4GtA==", - "license": "MIT", - "dependencies": { - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/docusaurus/node_modules/postcss-normalize-whitespace/node_modules/postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "license": "MIT" - }, - "node_modules/docusaurus/node_modules/postcss-ordered-values": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/postcss-ordered-values/-/postcss-ordered-values-4.1.2.tgz", - "integrity": "sha512-2fCObh5UanxvSxeXrtLtlwVThBvHn6MQcu4ksNT2tsaV2Fg76R2CV98W7wNSlX+5/pFwEyaDwKLLoEV7uRybAw==", - "license": "MIT", - "dependencies": { - "cssnano-util-get-arguments": "^4.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/docusaurus/node_modules/postcss-ordered-values/node_modules/postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "license": "MIT" - }, - "node_modules/docusaurus/node_modules/postcss-reduce-initial": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-4.0.3.tgz", - "integrity": "sha512-gKWmR5aUulSjbzOfD9AlJiHCGH6AEVLaM0AV+aSioxUDd16qXP1PCh8d1/BGVvpdWn8k/HiK7n6TjeoXN1F7DA==", - "license": "MIT", - "dependencies": { - "browserslist": "^4.0.0", - "caniuse-api": "^3.0.0", - "has": "^1.0.0", - "postcss": "^7.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/docusaurus/node_modules/postcss-reduce-transforms": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-reduce-transforms/-/postcss-reduce-transforms-4.0.2.tgz", - "integrity": "sha512-EEVig1Q2QJ4ELpJXMZR8Vt5DQx8/mo+dGWSR7vWXqcob2gQLyQGsionYcGKATXvQzMPn6DSN1vTN7yFximdIAg==", - "license": "MIT", - "dependencies": { - "cssnano-util-get-match": "^4.0.0", - "has": "^1.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/docusaurus/node_modules/postcss-reduce-transforms/node_modules/postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "license": "MIT" - }, - "node_modules/docusaurus/node_modules/postcss-svgo": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-4.0.3.tgz", - "integrity": "sha512-NoRbrcMWTtUghzuKSoIm6XV+sJdvZ7GZSc3wdBN0W19FTtp2ko8NqLsgoh/m9CzNhU3KLPvQmjIwtaNFkaFTvw==", - "license": "MIT", - "dependencies": { - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0", - "svgo": "^1.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/docusaurus/node_modules/postcss-svgo/node_modules/postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "license": "MIT" - }, - "node_modules/docusaurus/node_modules/postcss-unique-selectors": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-4.0.1.tgz", - "integrity": "sha512-+JanVaryLo9QwZjKrmJgkI4Fn8SBgRO6WXQBJi7KiAVPlmxikB5Jzc4EvXMT2H0/m0RjrVVm9rGNhZddm/8Spg==", - "license": "MIT", - "dependencies": { - "alphanum-sort": "^1.0.0", - "postcss": "^7.0.0", - "uniqs": "^2.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/docusaurus/node_modules/react": { - "version": "16.14.0", - "resolved": "https://registry.npmjs.org/react/-/react-16.14.0.tgz", - "integrity": "sha512-0X2CImDkJGApiAlcf0ODKIneSwBPhqJawOa5wCtKbu7ZECrmS26NvtSILynQ66cgkT/RJ4LidJOc3bUESwmU8g==", - "license": "MIT", - "dependencies": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1", - "prop-types": "^15.6.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/docusaurus/node_modules/react-dom": { - "version": "16.14.0", - "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-16.14.0.tgz", - "integrity": "sha512-1gCeQXDLoIqMgqD3IO2Ah9bnf0w9kzhwN5q4FGnHZ67hBm9yePzB5JJAIQCc8x3pFnNlwFq4RidZggNAAkzWWw==", - "license": "MIT", - "dependencies": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1", - "prop-types": "^15.6.2", - "scheduler": "^0.19.1" - }, - "peerDependencies": { - "react": "^16.14.0" - } - }, - "node_modules/docusaurus/node_modules/react-test-renderer": { - "version": "16.14.0", - "resolved": "https://registry.npmjs.org/react-test-renderer/-/react-test-renderer-16.14.0.tgz", - "integrity": "sha512-L8yPjqPE5CZO6rKsKXRO/rVPiaCOy0tQQJbC+UjPNlobl5mad59lvPjwFsQHTvL03caVDIVr9x9/OSgDe6I5Eg==", - "license": "MIT", - "dependencies": { - "object-assign": "^4.1.1", - "prop-types": "^15.6.2", - "react-is": "^16.8.6", - "scheduler": "^0.19.1" - }, - "peerDependencies": { - "react": "^16.14.0" - } - }, - "node_modules/docusaurus/node_modules/resolve-from": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", - "integrity": "sha512-GnlH6vxLymXJNMBo7XP1fJIzBFbdYt49CuTwmB/6N53t+kMPRMFKz783LlQ4tv28XoQfMWinAJX6WCGf2IlaIw==", - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/docusaurus/node_modules/sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", - "license": "ISC" - }, - "node_modules/docusaurus/node_modules/scheduler": { - "version": "0.19.1", - "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.19.1.tgz", - "integrity": "sha512-n/zwRWRYSUj0/3g/otKDRPMh6qv2SYMWNq85IEa8iZyAv8od9zDYpGSnpBEjNgcMNq6Scbu5KfIPxNF72R/2EA==", - "license": "MIT", - "dependencies": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1" - } - }, - "node_modules/docusaurus/node_modules/semver": { - "version": "5.7.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", - "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", - "license": "ISC", - "bin": { - "semver": "bin/semver" - } - }, - "node_modules/docusaurus/node_modules/sitemap": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/sitemap/-/sitemap-3.2.2.tgz", - "integrity": "sha512-TModL/WU4m2q/mQcrDgNANn0P4LwprM9MMvG4hu5zP4c6IIKs2YLTu6nXXnNr8ODW/WFtxKggiJ1EGn2W0GNmg==", - "license": "MIT", - "dependencies": { - "lodash.chunk": "^4.2.0", - "lodash.padstart": "^4.6.1", - "whatwg-url": "^7.0.0", - "xmlbuilder": "^13.0.0" - }, - "engines": { - "node": ">=6.0.0", - "npm": ">=4.0.0" - } - }, - "node_modules/docusaurus/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "license": "BSD-3-Clause", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/docusaurus/node_modules/stylehacks": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/stylehacks/-/stylehacks-4.0.3.tgz", - "integrity": "sha512-7GlLk9JwlElY4Y6a/rmbH2MhVlTyVmiJd1PfTCqFaIBEGMYNsrO/v3SeGTdhBThLg4Z+NbOk/qFMwCa+J+3p/g==", - "license": "MIT", - "dependencies": { - "browserslist": "^4.0.0", - "postcss": "^7.0.0", - "postcss-selector-parser": "^3.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/docusaurus/node_modules/stylehacks/node_modules/postcss-selector-parser": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-3.1.2.tgz", - "integrity": "sha512-h7fJ/5uWuRVyOtkO45pnt1Ih40CEleeyCHzipqAZO2e5H20g25Y48uYnFUiShvY4rZWNJ/Bib/KVPmanaCtOhA==", - "license": "MIT", - "dependencies": { - "dot-prop": "^5.2.0", - "indexes-of": "^1.0.1", - "uniq": "^1.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/docusaurus/node_modules/svgo": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/svgo/-/svgo-1.3.2.tgz", - "integrity": "sha512-yhy/sQYxR5BkC98CY7o31VGsg014AKLEPxdfhora76l36hD9Rdy5NZA/Ocn6yayNPgSamYdtX2rFJdcv07AYVw==", - "deprecated": "This SVGO version is no longer supported. Upgrade to v2.x.x.", - "license": "MIT", - "dependencies": { - "chalk": "^2.4.1", - "coa": "^2.0.2", - "css-select": "^2.0.0", - "css-select-base-adapter": "^0.1.1", - "css-tree": "1.0.0-alpha.37", - "csso": "^4.0.2", - "js-yaml": "^3.13.1", - "mkdirp": "~0.5.1", - "object.values": "^1.1.0", - "sax": "~1.2.4", - "stable": "^0.1.8", - "unquote": "~1.1.1", - "util.promisify": "~1.0.0" - }, - "bin": { - "svgo": "bin/svgo" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/docusaurus/node_modules/svgo/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "license": "MIT", - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/docusaurus/node_modules/svgo/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "license": "MIT", - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/docusaurus/node_modules/svgo/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "license": "MIT", - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/docusaurus/node_modules/svgo/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "license": "MIT", - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/dom-converter": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/dom-converter/-/dom-converter-0.2.0.tgz", - "integrity": "sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA==", - "license": "MIT", - "dependencies": { - "utila": "~0.4" - } - }, - "node_modules/dom-serializer": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", - "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==", - "license": "MIT", - "dependencies": { - "domelementtype": "^2.3.0", - "domhandler": "^5.0.2", - "entities": "^4.2.0" - }, - "funding": { - "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" - } - }, - "node_modules/domelementtype": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", - "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/fb55" - } - ], - "license": "BSD-2-Clause" - }, - "node_modules/domhandler": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", - "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", - "license": "BSD-2-Clause", - "dependencies": { - "domelementtype": "^2.3.0" - }, - "engines": { - "node": ">= 4" - }, - "funding": { - "url": "https://github.com/fb55/domhandler?sponsor=1" - } - }, - "node_modules/domutils": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.2.2.tgz", - "integrity": "sha512-6kZKyUajlDuqlHKVX1w7gyslj9MPIXzIFiz/rGu35uC1wMi+kMhQwGhl4lt9unC9Vb9INnY9Z3/ZA3+FhASLaw==", - "license": "BSD-2-Clause", - "dependencies": { - "dom-serializer": "^2.0.0", - "domelementtype": "^2.3.0", - "domhandler": "^5.0.3" - }, - "funding": { - "url": "https://github.com/fb55/domutils?sponsor=1" - } - }, - "node_modules/dot-case": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/dot-case/-/dot-case-3.0.4.tgz", - "integrity": "sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==", - "license": "MIT", - "dependencies": { - "no-case": "^3.0.4", - "tslib": "^2.0.3" - } - }, - "node_modules/dot-prop": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-6.0.1.tgz", - "integrity": "sha512-tE7ztYzXHIeyvc7N+hR3oi7FIbf/NIjVP9hmAt3yMXzrQ072/fpjGLx2GxNxGxUl5V73MEqYzioOMoVhGMJ5cA==", - "license": "MIT", - "dependencies": { - "is-obj": "^2.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/dot-prop/node_modules/is-obj": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", - "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/download": { - "version": "6.2.5", - "resolved": "https://registry.npmjs.org/download/-/download-6.2.5.tgz", - "integrity": "sha512-DpO9K1sXAST8Cpzb7kmEhogJxymyVUd5qz/vCOSyvwtp2Klj2XcDt5YUuasgxka44SxF0q5RriKIwJmQHG2AuA==", - "license": "MIT", - "dependencies": { - "caw": "^2.0.0", - "content-disposition": "^0.5.2", - "decompress": "^4.0.0", - "ext-name": "^5.0.0", - "file-type": "5.2.0", - "filenamify": "^2.0.0", - "get-stream": "^3.0.0", - "got": "^7.0.0", - "make-dir": "^1.0.0", - "p-event": "^1.0.0", - "pify": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/download/node_modules/file-type": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-5.2.0.tgz", - "integrity": "sha512-Iq1nJ6D2+yIO4c8HHg4fyVb8mAJieo1Oloy1mLLaB2PvezNedhBVm+QU7g0qM42aiMbRXTxKKwGD17rjKNJYVQ==", - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/download/node_modules/get-stream": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", - "integrity": "sha512-GlhdIUuVakc8SJ6kK0zAFbiGzRFzNnY4jUuEbV9UROo4Y+0Ny4fjvcZFVTeDA4odpFyOQzaw6hXukJSq/f28sQ==", - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/download/node_modules/make-dir": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", - "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", - "license": "MIT", - "dependencies": { - "pify": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/download/node_modules/pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==", - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/dunder-proto": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", - "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", - "license": "MIT", - "dependencies": { - "call-bind-apply-helpers": "^1.0.1", - "es-errors": "^1.3.0", - "gopd": "^1.2.0" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/duplexer": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", - "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==", - "license": "MIT" - }, - "node_modules/duplexer2": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz", - "integrity": "sha512-asLFVfWWtJ90ZyOUHMqk7/S2w2guQKxUI2itj3d92ADHhxUSbCMGi1f1cBcJ7xM1To+pE/Khbwo1yuNbMEPKeA==", - "license": "BSD-3-Clause", - "dependencies": { - "readable-stream": "^2.0.2" - } - }, - "node_modules/duplexer3": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.5.tgz", - "integrity": "sha512-1A8za6ws41LQgv9HrE/66jyC5yuSjQ3L/KOpFtoBilsAK2iA2wuS5rTt1OCzIvtS2V7nVmedsUU+DGRcjBmOYA==", - "license": "BSD-3-Clause" - }, - "node_modules/earcut": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/earcut/-/earcut-3.0.2.tgz", - "integrity": "sha512-X7hshQbLyMJ/3RPhyObLARM2sNxxmRALLKx1+NVFFnQ9gKzmCrxm9+uLIAdBcvc8FNLpctqlQ2V6AE92Ol9UDQ==", - "license": "ISC" - }, - "node_modules/eastasianwidth": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", - "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", - "license": "MIT" - }, - "node_modules/ecc-jsbn": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", - "integrity": "sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw==", - "license": "MIT", - "dependencies": { - "jsbn": "~0.1.0", - "safer-buffer": "^2.1.0" - } - }, - "node_modules/ee-first": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", - "license": "MIT" - }, - "node_modules/electron-to-chromium": { - "version": "1.5.187", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.187.tgz", - "integrity": "sha512-cl5Jc9I0KGUoOoSbxvTywTa40uspGJt/BDBoDLoxJRSBpWh4FFXBsjNRHfQrONsV/OoEjDfHUmZQa2d6Ze4YgA==", - "license": "ISC" - }, - "node_modules/emoji-regex": { - "version": "9.2.2", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", - "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", - "license": "MIT" - }, - "node_modules/emojilib": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/emojilib/-/emojilib-2.4.0.tgz", - "integrity": "sha512-5U0rVMU5Y2n2+ykNLQqMoqklN9ICBT/KsvC1Gz6vqHbz2AXXGkG+Pm5rMWk/8Vjrr/mY9985Hi8DYzn1F09Nyw==", - "license": "MIT" - }, - "node_modules/emojis-list": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", - "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", - "license": "MIT", - "engines": { - "node": ">= 4" - } - }, - "node_modules/emoticon": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/emoticon/-/emoticon-4.1.0.tgz", - "integrity": "sha512-VWZfnxqwNcc51hIy/sbOdEem6D+cVtpPzEEtVAFdaas30+1dgkyaOQ4sQ6Bp0tOMqWO1v+HQfYaoodOkdhK6SQ==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/encodeurl": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", - "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==", - "license": "MIT", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/end-of-stream": { - "version": "1.4.5", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.5.tgz", - "integrity": "sha512-ooEGc6HP26xXq/N+GCGOT0JKCLDGrq2bQUZrQ7gyrJiZANJ/8YDTxTpQBXGMn+WbIQXNVpyWymm7KYVICQnyOg==", - "license": "MIT", - "dependencies": { - "once": "^1.4.0" - } - }, - "node_modules/enhanced-resolve": { - "version": "5.18.2", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.18.2.tgz", - "integrity": "sha512-6Jw4sE1maoRJo3q8MsSIn2onJFbLTOjY9hlx4DZXmOKvLRd1Ok2kXmAGXaafL2+ijsJZ1ClYbl/pmqr9+k4iUQ==", - "license": "MIT", - "dependencies": { - "graceful-fs": "^4.2.4", - "tapable": "^2.2.0" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/entities": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", - "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", - "license": "BSD-2-Clause", - "engines": { - "node": ">=0.12" - }, - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" - } - }, - "node_modules/enzyme": { - "version": "3.11.0", - "resolved": "https://registry.npmjs.org/enzyme/-/enzyme-3.11.0.tgz", - "integrity": "sha512-Dw8/Gs4vRjxY6/6i9wU0V+utmQO9kvh9XLnz3LIudviOnVYDEe2ec+0k+NQoMamn1VrjKgCUOWj5jG/5M5M0Qw==", - "license": "MIT", - "dependencies": { - "array.prototype.flat": "^1.2.3", - "cheerio": "^1.0.0-rc.3", - "enzyme-shallow-equal": "^1.0.1", - "function.prototype.name": "^1.1.2", - "has": "^1.0.3", - "html-element-map": "^1.2.0", - "is-boolean-object": "^1.0.1", - "is-callable": "^1.1.5", - "is-number-object": "^1.0.4", - "is-regex": "^1.0.5", - "is-string": "^1.0.5", - "is-subset": "^0.1.1", - "lodash.escape": "^4.0.1", - "lodash.isequal": "^4.5.0", - "object-inspect": "^1.7.0", - "object-is": "^1.0.2", - "object.assign": "^4.1.0", - "object.entries": "^1.1.1", - "object.values": "^1.1.1", - "raf": "^3.4.1", - "rst-selector-parser": "^2.2.3", - "string.prototype.trim": "^1.2.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/enzyme-shallow-equal": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/enzyme-shallow-equal/-/enzyme-shallow-equal-1.0.7.tgz", - "integrity": "sha512-/um0GFqUXnpM9SvKtje+9Tjoz3f1fpBC3eXRFrNs8kpYn69JljciYP7KZTqM/YQbUY9KUjvKB4jo/q+L6WGGvg==", - "license": "MIT", - "dependencies": { - "hasown": "^2.0.0", - "object-is": "^1.1.5" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/error": { - "version": "7.2.1", - "resolved": "https://registry.npmjs.org/error/-/error-7.2.1.tgz", - "integrity": "sha512-fo9HBvWnx3NGUKMvMwB/CBCMMrfEJgbDTVDEkPygA3Bdd3lM1OyCd+rbQ8BwnpF6GdVeOLDNmyL4N5Bg80ZvdA==", - "dependencies": { - "string-template": "~0.2.1" - } - }, - "node_modules/error-ex": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", - "license": "MIT", - "dependencies": { - "is-arrayish": "^0.2.1" - } - }, - "node_modules/es-abstract": { - "version": "1.24.0", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.24.0.tgz", - "integrity": "sha512-WSzPgsdLtTcQwm4CROfS5ju2Wa1QQcVeT37jFjYzdFz1r9ahadC8B8/a4qxJxM+09F18iumCdRmlr96ZYkQvEg==", - "license": "MIT", - "dependencies": { - "array-buffer-byte-length": "^1.0.2", - "arraybuffer.prototype.slice": "^1.0.4", - "available-typed-arrays": "^1.0.7", - "call-bind": "^1.0.8", - "call-bound": "^1.0.4", - "data-view-buffer": "^1.0.2", - "data-view-byte-length": "^1.0.2", - "data-view-byte-offset": "^1.0.1", - "es-define-property": "^1.0.1", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.1.1", - "es-set-tostringtag": "^2.1.0", - "es-to-primitive": "^1.3.0", - "function.prototype.name": "^1.1.8", - "get-intrinsic": "^1.3.0", - "get-proto": "^1.0.1", - "get-symbol-description": "^1.1.0", - "globalthis": "^1.0.4", - "gopd": "^1.2.0", - "has-property-descriptors": "^1.0.2", - "has-proto": "^1.2.0", - "has-symbols": "^1.1.0", - "hasown": "^2.0.2", - "internal-slot": "^1.1.0", - "is-array-buffer": "^3.0.5", - "is-callable": "^1.2.7", - "is-data-view": "^1.0.2", - "is-negative-zero": "^2.0.3", - "is-regex": "^1.2.1", - "is-set": "^2.0.3", - "is-shared-array-buffer": "^1.0.4", - "is-string": "^1.1.1", - "is-typed-array": "^1.1.15", - "is-weakref": "^1.1.1", - "math-intrinsics": "^1.1.0", - "object-inspect": "^1.13.4", - "object-keys": "^1.1.1", - "object.assign": "^4.1.7", - "own-keys": "^1.0.1", - "regexp.prototype.flags": "^1.5.4", - "safe-array-concat": "^1.1.3", - "safe-push-apply": "^1.0.0", - "safe-regex-test": "^1.1.0", - "set-proto": "^1.0.0", - "stop-iteration-iterator": "^1.1.0", - "string.prototype.trim": "^1.2.10", - "string.prototype.trimend": "^1.0.9", - "string.prototype.trimstart": "^1.0.8", - "typed-array-buffer": "^1.0.3", - "typed-array-byte-length": "^1.0.3", - "typed-array-byte-offset": "^1.0.4", - "typed-array-length": "^1.0.7", - "unbox-primitive": "^1.1.0", - "which-typed-array": "^1.1.19" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/es-array-method-boxes-properly": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/es-array-method-boxes-properly/-/es-array-method-boxes-properly-1.0.0.tgz", - "integrity": "sha512-wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA==", - "license": "MIT" - }, - "node_modules/es-define-property": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", - "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", - "license": "MIT", - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-errors": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", - "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", - "license": "MIT", - "engines": { - "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==", - "license": "MIT" - }, - "node_modules/es-object-atoms": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", - "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", - "license": "MIT", - "dependencies": { - "es-errors": "^1.3.0" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-set-tostringtag": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz", - "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==", - "license": "MIT", - "dependencies": { - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.6", - "has-tostringtag": "^1.0.2", - "hasown": "^2.0.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-shim-unscopables": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.1.0.tgz", - "integrity": "sha512-d9T8ucsEhh8Bi1woXCf+TIKDIROLG5WCkxg8geBCbvk22kzwC5G2OnXVMO6FUsvQlgUUXQ2itephWDLqDzbeCw==", - "license": "MIT", - "dependencies": { - "hasown": "^2.0.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-to-primitive": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.3.0.tgz", - "integrity": "sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==", - "license": "MIT", - "dependencies": { - "is-callable": "^1.2.7", - "is-date-object": "^1.0.5", - "is-symbol": "^1.0.4" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/esast-util-from-estree": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/esast-util-from-estree/-/esast-util-from-estree-2.0.0.tgz", - "integrity": "sha512-4CyanoAudUSBAn5K13H4JhsMH6L9ZP7XbLVe/dKybkxMO7eDyLsT8UHl9TRNrU2Gr9nz+FovfSIjuXWJ81uVwQ==", - "license": "MIT", - "dependencies": { - "@types/estree-jsx": "^1.0.0", - "devlop": "^1.0.0", - "estree-util-visit": "^2.0.0", - "unist-util-position-from-estree": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/esast-util-from-js": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/esast-util-from-js/-/esast-util-from-js-2.0.1.tgz", - "integrity": "sha512-8Ja+rNJ0Lt56Pcf3TAmpBZjmx8ZcK5Ts4cAzIOjsjevg9oSXJnl6SUQ2EevU8tv3h6ZLWmoKL5H4fgWvdvfETw==", - "license": "MIT", - "dependencies": { - "@types/estree-jsx": "^1.0.0", - "acorn": "^8.0.0", - "esast-util-from-estree": "^2.0.0", - "vfile-message": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/escalade": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", - "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/escape-goat": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-goat/-/escape-goat-4.0.0.tgz", - "integrity": "sha512-2Sd4ShcWxbx6OY1IHyla/CVNwvg7XwZVoXZHcSu9w9SReNP1EzzD5T8NWKIR38fIqEns9kDWKUQTXXAmlDrdPg==", - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/escape-html": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==", - "license": "MIT" - }, - "node_modules/escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint-scope": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", - "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", - "license": "BSD-2-Clause", - "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "license": "BSD-2-Clause", - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/esrecurse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", - "license": "BSD-2-Clause", - "dependencies": { - "estraverse": "^5.2.0" - }, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/esrecurse/node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "license": "BSD-2-Clause", - "engines": { - "node": ">=4.0" - } - }, - "node_modules/estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "license": "BSD-2-Clause", - "engines": { - "node": ">=4.0" - } - }, - "node_modules/estree-util-attach-comments": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/estree-util-attach-comments/-/estree-util-attach-comments-3.0.0.tgz", - "integrity": "sha512-cKUwm/HUcTDsYh/9FgnuFqpfquUbwIqwKM26BVCGDPVgvaCl/nDCCjUfiLlx6lsEZ3Z4RFxNbOQ60pkaEwFxGw==", - "license": "MIT", - "dependencies": { - "@types/estree": "^1.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/estree-util-build-jsx": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/estree-util-build-jsx/-/estree-util-build-jsx-3.0.1.tgz", - "integrity": "sha512-8U5eiL6BTrPxp/CHbs2yMgP8ftMhR5ww1eIKoWRMlqvltHF8fZn5LRDvTKuxD3DUn+shRbLGqXemcP51oFCsGQ==", - "license": "MIT", - "dependencies": { - "@types/estree-jsx": "^1.0.0", - "devlop": "^1.0.0", - "estree-util-is-identifier-name": "^3.0.0", - "estree-walker": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "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==", - "license": "MIT", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/estree-util-scope": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/estree-util-scope/-/estree-util-scope-1.0.0.tgz", - "integrity": "sha512-2CAASclonf+JFWBNJPndcOpA8EMJwa0Q8LUFJEKqXLW6+qBvbFZuF5gItbQOs/umBUkjviCSDCbBwU2cXbmrhQ==", - "license": "MIT", - "dependencies": { - "@types/estree": "^1.0.0", - "devlop": "^1.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/estree-util-to-js": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/estree-util-to-js/-/estree-util-to-js-2.0.0.tgz", - "integrity": "sha512-WDF+xj5rRWmD5tj6bIqRi6CkLIXbbNQUcxQHzGysQzvHmdYG2G7p/Tf0J0gpxGgkeMZNTIjT/AoSvC9Xehcgdg==", - "license": "MIT", - "dependencies": { - "@types/estree-jsx": "^1.0.0", - "astring": "^1.8.0", - "source-map": "^0.7.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/estree-util-value-to-estree": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/estree-util-value-to-estree/-/estree-util-value-to-estree-3.4.0.tgz", - "integrity": "sha512-Zlp+gxis+gCfK12d3Srl2PdX2ybsEA8ZYy6vQGVQTNNYLEGRQQ56XB64bjemN8kxIKXP1nC9ip4Z+ILy9LGzvQ==", - "license": "MIT", - "dependencies": { - "@types/estree": "^1.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/remcohaszing" - } - }, - "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==", - "license": "MIT", - "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", - "integrity": "sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==", - "license": "MIT", - "dependencies": { - "@types/estree": "^1.0.0" - } - }, - "node_modules/esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "license": "BSD-2-Clause", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/eta": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/eta/-/eta-2.2.0.tgz", - "integrity": "sha512-UVQ72Rqjy/ZKQalzV5dCCJP80GrmPrMxh6NlNf+erV6ObL0ZFkhCstWRawS85z3smdr3d2wXPsZEY7rDPfGd2g==", - "license": "MIT", - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "url": "https://github.com/eta-dev/eta?sponsor=1" - } - }, - "node_modules/etag": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", - "license": "MIT", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/eval": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/eval/-/eval-0.1.8.tgz", - "integrity": "sha512-EzV94NYKoO09GLXGjXj9JIlXijVck4ONSr5wiCWDvhsvj5jxSrzTmRU/9C1DyB6uToszLs8aifA6NQ7lEQdvFw==", - "dependencies": { - "@types/node": "*", - "require-like": ">= 0.1.1" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/eventemitter3": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", - "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==", - "license": "MIT" - }, - "node_modules/events": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", - "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", - "license": "MIT", - "engines": { - "node": ">=0.8.x" - } - }, - "node_modules/exec-buffer": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/exec-buffer/-/exec-buffer-3.2.0.tgz", - "integrity": "sha512-wsiD+2Tp6BWHoVv3B+5Dcx6E7u5zky+hUwOHjuH2hKSLR3dvRmX8fk8UD8uqQixHs4Wk6eDmiegVrMPjKj7wpA==", - "license": "MIT", - "dependencies": { - "execa": "^0.7.0", - "p-finally": "^1.0.0", - "pify": "^3.0.0", - "rimraf": "^2.5.4", - "tempfile": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/exec-buffer/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==", - "license": "MIT", - "dependencies": { - "lru-cache": "^4.0.1", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - } - }, - "node_modules/exec-buffer/node_modules/execa": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz", - "integrity": "sha512-RztN09XglpYI7aBBrJCPW95jEH7YF1UEPOoX9yDhUTPdp7mK+CQvnLTuD10BNXZ3byLTu2uehZ8EcKT/4CGiFw==", - "license": "MIT", - "dependencies": { - "cross-spawn": "^5.0.1", - "get-stream": "^3.0.0", - "is-stream": "^1.1.0", - "npm-run-path": "^2.0.0", - "p-finally": "^1.0.0", - "signal-exit": "^3.0.0", - "strip-eof": "^1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/exec-buffer/node_modules/get-stream": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", - "integrity": "sha512-GlhdIUuVakc8SJ6kK0zAFbiGzRFzNnY4jUuEbV9UROo4Y+0Ny4fjvcZFVTeDA4odpFyOQzaw6hXukJSq/f28sQ==", - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/exec-buffer/node_modules/is-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/exec-buffer/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==", - "license": "ISC", - "dependencies": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" - } - }, - "node_modules/exec-buffer/node_modules/npm-run-path": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", - "integrity": "sha512-lJxZYlT4DW/bRUtFh1MQIWqmLwQfAxnqWG4HhEdjMlkrJYnJn0Jrr2u3mgxqaWsdiBc76TYkTG/mhrnYTuzfHw==", - "license": "MIT", - "dependencies": { - "path-key": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/exec-buffer/node_modules/path-key": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==", - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/exec-buffer/node_modules/pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==", - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/exec-buffer/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==", - "license": "MIT", - "dependencies": { - "shebang-regex": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/exec-buffer/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==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/exec-buffer/node_modules/which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "license": "ISC", - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "which": "bin/which" - } - }, - "node_modules/exec-buffer/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==", - "license": "ISC" - }, - "node_modules/execa": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", - "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", - "license": "MIT", - "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/executable": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/executable/-/executable-4.1.1.tgz", - "integrity": "sha512-8iA79xD3uAch729dUG8xaaBBFGaEa0wdD2VkYLFHwlqosEj/jT66AzcreRDSgV7ehnNLBW2WR5jIXwGKjVdTLg==", - "license": "MIT", - "dependencies": { - "pify": "^2.2.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/executable/node_modules/pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/expand-brackets": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", - "integrity": "sha512-w/ozOKR9Obk3qoWeY/WDi6MFta9AoMR+zud60mdnbniMcBxRuFJyDt2LdX/14A1UABeqk+Uk+LDfUpvoGKppZA==", - "license": "MIT", - "dependencies": { - "debug": "^2.3.3", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "posix-character-classes": "^0.1.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/expand-brackets/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "license": "MIT", - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/expand-brackets/node_modules/define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", - "license": "MIT", - "dependencies": { - "is-descriptor": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/expand-brackets/node_modules/is-descriptor": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.7.tgz", - "integrity": "sha512-C3grZTvObeN1xud4cRWl366OMXZTj0+HGyk4hvfpx4ZHt1Pb60ANSXqCK7pdOTeUQpRzECBSTphqvD7U+l22Eg==", - "license": "MIT", - "dependencies": { - "is-accessor-descriptor": "^1.0.1", - "is-data-descriptor": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/expand-brackets/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "license": "MIT" - }, - "node_modules/expand-range": { - "version": "1.8.2", - "resolved": "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz", - "integrity": "sha512-AFASGfIlnIbkKPQwX1yHaDjFvh/1gyKJODme52V6IORh69uEYgZp0o9C+qsIGNVEiuuhQU0CSSl++Rlegg1qvA==", - "license": "MIT", - "dependencies": { - "fill-range": "^2.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/expand-range/node_modules/fill-range": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.4.tgz", - "integrity": "sha512-cnrcCbj01+j2gTG921VZPnHbjmdAf8oQV/iGeV2kZxGSyfYjjTyY79ErsK1WJWMpw6DaApEX72binqJE+/d+5Q==", - "license": "MIT", - "dependencies": { - "is-number": "^2.1.0", - "isobject": "^2.0.0", - "randomatic": "^3.0.0", - "repeat-element": "^1.1.2", - "repeat-string": "^1.5.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/expand-range/node_modules/isobject": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", - "integrity": "sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA==", - "license": "MIT", - "dependencies": { - "isarray": "1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/express": { - "version": "4.21.2", - "resolved": "https://registry.npmjs.org/express/-/express-4.21.2.tgz", - "integrity": "sha512-28HqgMZAmih1Czt9ny7qr6ek2qddF4FclbMzwhCREB6OFfH+rXAnuNCwo1/wFvrtbgsQDb4kSbX9de9lFbrXnA==", - "license": "MIT", - "dependencies": { - "accepts": "~1.3.8", - "array-flatten": "1.1.1", - "body-parser": "1.20.3", - "content-disposition": "0.5.4", - "content-type": "~1.0.4", - "cookie": "0.7.1", - "cookie-signature": "1.0.6", - "debug": "2.6.9", - "depd": "2.0.0", - "encodeurl": "~2.0.0", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "finalhandler": "1.3.1", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "merge-descriptors": "1.0.3", - "methods": "~1.1.2", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "path-to-regexp": "0.1.12", - "proxy-addr": "~2.0.7", - "qs": "6.13.0", - "range-parser": "~1.2.1", - "safe-buffer": "5.2.1", - "send": "0.19.0", - "serve-static": "1.16.2", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "type-is": "~1.6.18", - "utils-merge": "1.0.1", - "vary": "~1.1.2" - }, - "engines": { - "node": ">= 0.10.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/express" - } - }, - "node_modules/express/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "license": "MIT", - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/express/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "license": "MIT" - }, - "node_modules/ext-list": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/ext-list/-/ext-list-2.2.2.tgz", - "integrity": "sha512-u+SQgsubraE6zItfVA0tBuCBhfU9ogSRnsvygI7wht9TS510oLkBRXBsqopeUG/GBOIQyKZO9wjTqIu/sf5zFA==", - "license": "MIT", - "dependencies": { - "mime-db": "^1.28.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ext-name": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ext-name/-/ext-name-5.0.0.tgz", - "integrity": "sha512-yblEwXAbGv1VQDmow7s38W77hzAgJAO50ztBLMcUyUBfxv1HC+LGwtiEN+Co6LtlqT/5uwVOxsD4TNIilWhwdQ==", - "license": "MIT", - "dependencies": { - "ext-list": "^2.0.0", - "sort-keys-length": "^1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", - "license": "MIT" - }, - "node_modules/extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", - "license": "MIT", - "dependencies": { - "is-extendable": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/extglob": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", - "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", - "license": "MIT", - "dependencies": { - "array-unique": "^0.3.2", - "define-property": "^1.0.0", - "expand-brackets": "^2.1.4", - "extend-shallow": "^2.0.1", - "fragment-cache": "^0.2.1", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/extglob/node_modules/define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA==", - "license": "MIT", - "dependencies": { - "is-descriptor": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/extsprintf": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g==", - "engines": [ - "node >=0.6.0" - ], - "license": "MIT" - }, - "node_modules/fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "license": "MIT" - }, - "node_modules/fast-folder-size": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/fast-folder-size/-/fast-folder-size-1.6.1.tgz", - "integrity": "sha512-F3tRpfkAzb7TT2JNKaJUglyuRjRa+jelQD94s9OSqkfEeytLmupCqQiD+H2KoIXGtp4pB5m4zNmv5m2Ktcr+LA==", - "hasInstallScript": true, - "license": "ISC", - "dependencies": { - "unzipper": "^0.10.11" - }, - "bin": { - "fast-folder-size": "cli.js" - } - }, - "node_modules/fast-glob": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.3.tgz", - "integrity": "sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==", - "license": "MIT", - "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.8" - }, - "engines": { - "node": ">=8.6.0" - } - }, - "node_modules/fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "license": "MIT" - }, - "node_modules/fast-memoize": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/fast-memoize/-/fast-memoize-2.5.2.tgz", - "integrity": "sha512-Ue0LwpDYErFbmNnZSF0UH6eImUwDmogUO1jyE+JbN2gsQz/jICm1Ve7t9QT0rNSsfJt+Hs4/S3GnsDVjL4HVrw==", - "license": "MIT" - }, - "node_modules/fast-uri": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.0.6.tgz", - "integrity": "sha512-Atfo14OibSv5wAp4VWNsFYE1AchQRTv9cBGWET4pZWHzYshFSS9NQI6I57rdKn9croWVMbYFbLhJ+yJvmZIIHw==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/fastify" - }, - { - "type": "opencollective", - "url": "https://opencollective.com/fastify" - } - ], - "license": "BSD-3-Clause" - }, - "node_modules/fast-xml-parser": { - "version": "4.5.3", - "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-4.5.3.tgz", - "integrity": "sha512-RKihhV+SHsIUGXObeVy9AXiBbFwkVk7Syp8XgwN5U3JV416+Gwp/GO9i0JYKmikykgz/UHRrrV4ROuZEo/T0ig==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/NaturalIntelligence" - } - ], - "license": "MIT", - "dependencies": { - "strnum": "^1.1.1" - }, - "bin": { - "fxparser": "src/cli/cli.js" - } - }, - "node_modules/fastq": { - "version": "1.19.1", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.19.1.tgz", - "integrity": "sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==", - "license": "ISC", - "dependencies": { - "reusify": "^1.0.4" - } - }, - "node_modules/fault": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/fault/-/fault-2.0.1.tgz", - "integrity": "sha512-WtySTkS4OKev5JtpHXnib4Gxiurzh5NCGvWrFaZ34m6JehfTUhKZvn9njTfw48t6JumVQOmrKqpmGcdwxnhqBQ==", - "license": "MIT", - "dependencies": { - "format": "^0.2.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/faye-websocket": { - "version": "0.10.0", - "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.10.0.tgz", - "integrity": "sha512-Xhj93RXbMSq8urNCUq4p9l0P6hnySJ/7YNRhYNug0bLOuii7pKO7xQFb5mx9xZXWCar88pLPb805PvUkwrLZpQ==", - "license": "MIT", - "dependencies": { - "websocket-driver": ">=0.5.1" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/fd-slicer": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", - "integrity": "sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==", - "license": "MIT", - "dependencies": { - "pend": "~1.2.0" - } - }, - "node_modules/feed": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/feed/-/feed-4.2.2.tgz", - "integrity": "sha512-u5/sxGfiMfZNtJ3OvQpXcvotFpYkL0n9u9mM2vkui2nGo8b4wvDkJ8gAkYqbA8QpGyFCv3RK0Z+Iv+9veCS9bQ==", - "license": "MIT", - "dependencies": { - "xml-js": "^1.6.11" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/fflate": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/fflate/-/fflate-0.8.2.tgz", - "integrity": "sha512-cPJU47OaAoCbg0pBvzsgpTPhmhqI5eJjh/JIu8tPj5q+T7iLvW/JAYUqmE7KOB4R1ZyEhzBaIQpQpardBF5z8A==", - "license": "MIT" - }, - "node_modules/figures": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz", - "integrity": "sha512-UxKlfCRuCBxSXU4C6t9scbDyWZ4VlaFFdojKtzJuSkuOBQ5CNFum+zZXFwHjo+CxBC1t6zlYPgHIgFjL8ggoEQ==", - "license": "MIT", - "dependencies": { - "escape-string-regexp": "^1.0.5", - "object-assign": "^4.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/figures/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "license": "MIT", - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/file-loader": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-6.2.0.tgz", - "integrity": "sha512-qo3glqyTa61Ytg4u73GultjHGjdRyig3tG6lPtyX/jOEJvHif9uB0/OCI2Kif6ctF3caQTW2G5gym21oAsI4pw==", - "license": "MIT", - "dependencies": { - "loader-utils": "^2.0.0", - "schema-utils": "^3.0.0" - }, - "engines": { - "node": ">= 10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^4.0.0 || ^5.0.0" - } - }, - "node_modules/file-loader/node_modules/schema-utils": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", - "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", - "license": "MIT", - "dependencies": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - }, - "engines": { - "node": ">= 10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/file-type": { - "version": "10.11.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-10.11.0.tgz", - "integrity": "sha512-uzk64HRpUZyTGZtVuvrjP0FYxzQrBf4rojot6J65YMEbwBLB0CWm0CLojVpwpmFmxcE/lkvYICgfcGozbBq6rw==", - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/filename-reserved-regex": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/filename-reserved-regex/-/filename-reserved-regex-2.0.0.tgz", - "integrity": "sha512-lc1bnsSr4L4Bdif8Xb/qrtokGbq5zlsms/CYH8PP+WtCkGNF65DPiQY8vG3SakEdRn8Dlnm+gW/qWKKjS5sZzQ==", - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/filenamify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/filenamify/-/filenamify-2.1.0.tgz", - "integrity": "sha512-ICw7NTT6RsDp2rnYKVd8Fu4cr6ITzGy3+u4vUujPkabyaz+03F24NWEX7fs5fp+kBonlaqPH8fAO2NM+SXt/JA==", - "license": "MIT", - "dependencies": { - "filename-reserved-regex": "^2.0.0", - "strip-outer": "^1.0.0", - "trim-repeated": "^1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/filesize": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/filesize/-/filesize-6.1.0.tgz", - "integrity": "sha512-LpCHtPQ3sFx67z+uh2HnSyWSLLu5Jxo21795uRDuar/EOuYWXib5EmPaGIBuSnRqH2IODiKA2k5re/K9OnN/Yg==", - "license": "BSD-3-Clause", - "engines": { - "node": ">= 0.4.0" - } - }, - "node_modules/fill-range": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", - "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", - "license": "MIT", - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/finalhandler": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.3.1.tgz", - "integrity": "sha512-6BN9trH7bp3qvnrRyzsBz+g3lZxTNZTbVO2EV1CS0WIcDbawYVdYvGflME/9QP0h0pYlCDBCTjYa9nZzMDpyxQ==", - "license": "MIT", - "dependencies": { - "debug": "2.6.9", - "encodeurl": "~2.0.0", - "escape-html": "~1.0.3", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "statuses": "2.0.1", - "unpipe": "~1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/finalhandler/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "license": "MIT", - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/finalhandler/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "license": "MIT" - }, - "node_modules/find-cache-dir": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-4.0.0.tgz", - "integrity": "sha512-9ZonPT4ZAK4a+1pUPVPZJapbi7O5qbbJPdYw/NOQWZZbVLdDTYM3A4R9z/DpAM08IDaFGsvPgiGZ82WEwUDWjg==", - "license": "MIT", - "dependencies": { - "common-path-prefix": "^3.0.0", - "pkg-dir": "^7.0.0" - }, - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/find-up": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-6.3.0.tgz", - "integrity": "sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw==", - "license": "MIT", - "dependencies": { - "locate-path": "^7.1.0", - "path-exists": "^5.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/find-versions": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/find-versions/-/find-versions-3.2.0.tgz", - "integrity": "sha512-P8WRou2S+oe222TOCHitLy8zj+SIsVJh52VP4lvXkaFVnOFFdoWv1H1Jjvel1aI6NCFOAaeAVm8qrI0odiLcww==", - "license": "MIT", - "dependencies": { - "semver-regex": "^2.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/flat": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", - "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==", - "license": "BSD-3-Clause", - "bin": { - "flat": "cli.js" - } - }, - "node_modules/follow-redirects": { - "version": "1.15.9", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.9.tgz", - "integrity": "sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==", - "funding": [ - { - "type": "individual", - "url": "https://github.com/sponsors/RubenVerborgh" - } - ], - "license": "MIT", - "engines": { - "node": ">=4.0" - }, - "peerDependenciesMeta": { - "debug": { - "optional": true - } - } - }, - "node_modules/for-each": { - "version": "0.3.5", - "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.5.tgz", - "integrity": "sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==", + "node_modules/es-abstract": { + "version": "1.24.1", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.24.1.tgz", + "integrity": "sha512-zHXBLhP+QehSSbsS9Pt23Gg964240DPd6QCf8WpkqEXxQ7fhdZzYsocOr5u7apWonsS5EjZDmTF+/slGMyasvw==", + "dev": true, "license": "MIT", "dependencies": { - "is-callable": "^1.2.7" + "array-buffer-byte-length": "^1.0.2", + "arraybuffer.prototype.slice": "^1.0.4", + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", + "data-view-buffer": "^1.0.2", + "data-view-byte-length": "^1.0.2", + "data-view-byte-offset": "^1.0.1", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", + "es-set-tostringtag": "^2.1.0", + "es-to-primitive": "^1.3.0", + "function.prototype.name": "^1.1.8", + "get-intrinsic": "^1.3.0", + "get-proto": "^1.0.1", + "get-symbol-description": "^1.1.0", + "globalthis": "^1.0.4", + "gopd": "^1.2.0", + "has-property-descriptors": "^1.0.2", + "has-proto": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "internal-slot": "^1.1.0", + "is-array-buffer": "^3.0.5", + "is-callable": "^1.2.7", + "is-data-view": "^1.0.2", + "is-negative-zero": "^2.0.3", + "is-regex": "^1.2.1", + "is-set": "^2.0.3", + "is-shared-array-buffer": "^1.0.4", + "is-string": "^1.1.1", + "is-typed-array": "^1.1.15", + "is-weakref": "^1.1.1", + "math-intrinsics": "^1.1.0", + "object-inspect": "^1.13.4", + "object-keys": "^1.1.1", + "object.assign": "^4.1.7", + "own-keys": "^1.0.1", + "regexp.prototype.flags": "^1.5.4", + "safe-array-concat": "^1.1.3", + "safe-push-apply": "^1.0.0", + "safe-regex-test": "^1.1.0", + "set-proto": "^1.0.0", + "stop-iteration-iterator": "^1.1.0", + "string.prototype.trim": "^1.2.10", + "string.prototype.trimend": "^1.0.9", + "string.prototype.trimstart": "^1.0.8", + "typed-array-buffer": "^1.0.3", + "typed-array-byte-length": "^1.0.3", + "typed-array-byte-offset": "^1.0.4", + "typed-array-length": "^1.0.7", + "unbox-primitive": "^1.1.0", + "which-typed-array": "^1.1.19" }, "engines": { "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/for-in": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", - "integrity": "sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/forever-agent": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw==", - "license": "Apache-2.0", - "engines": { - "node": "*" - } - }, - "node_modules/fork-ts-checker-webpack-plugin": { - "version": "4.1.6", - "resolved": "https://registry.npmjs.org/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-4.1.6.tgz", - "integrity": "sha512-DUxuQaKoqfNne8iikd14SAkh5uw4+8vNifp6gmA73yYNS6ywLIWSLD/n/mBzHQRpW3J7rbATEakmiA8JvkTyZw==", - "license": "MIT", - "dependencies": { - "@babel/code-frame": "^7.5.5", - "chalk": "^2.4.1", - "micromatch": "^3.1.10", - "minimatch": "^3.0.4", - "semver": "^5.6.0", - "tapable": "^1.0.0", - "worker-rpc": "^0.1.0" - }, - "engines": { - "node": ">=6.11.5", - "yarn": ">=1.0.0" - } - }, - "node_modules/fork-ts-checker-webpack-plugin/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "license": "MIT", - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/fork-ts-checker-webpack-plugin/node_modules/braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "license": "MIT", - "dependencies": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/fork-ts-checker-webpack-plugin/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "license": "MIT", - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/fork-ts-checker-webpack-plugin/node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "license": "MIT", - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/fork-ts-checker-webpack-plugin/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", - "license": "MIT" - }, - "node_modules/fork-ts-checker-webpack-plugin/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "license": "MIT", - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/fork-ts-checker-webpack-plugin/node_modules/fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ==", - "license": "MIT", - "dependencies": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/fork-ts-checker-webpack-plugin/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/fork-ts-checker-webpack-plugin/node_modules/is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "license": "MIT", - "dependencies": { - "is-plain-object": "^2.0.4" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/fork-ts-checker-webpack-plugin/node_modules/is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==", - "license": "MIT", - "dependencies": { - "kind-of": "^3.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/fork-ts-checker-webpack-plugin/node_modules/is-number/node_modules/kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", - "license": "MIT", - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/fork-ts-checker-webpack-plugin/node_modules/micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", - "license": "MIT", - "dependencies": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/fork-ts-checker-webpack-plugin/node_modules/micromatch/node_modules/extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", - "license": "MIT", - "dependencies": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/fork-ts-checker-webpack-plugin/node_modules/semver": { - "version": "5.7.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", - "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", - "license": "ISC", - "bin": { - "semver": "bin/semver" - } - }, - "node_modules/fork-ts-checker-webpack-plugin/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "license": "MIT", - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/fork-ts-checker-webpack-plugin/node_modules/tapable": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz", - "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==", - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/fork-ts-checker-webpack-plugin/node_modules/to-regex-range": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", - "integrity": "sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg==", - "license": "MIT", - "dependencies": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/form-data": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", - "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", - "license": "MIT", - "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" - }, - "engines": { - "node": ">= 0.12" - } - }, - "node_modules/form-data-encoder": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/form-data-encoder/-/form-data-encoder-2.1.4.tgz", - "integrity": "sha512-yDYSgNMraqvnxiEXO4hi88+YZxaHC6QKzb5N84iRCTDeRO7ZALpir/lVmf/uXUhnwUr2O4HU8s/n6x+yNjQkHw==", - "license": "MIT", - "engines": { - "node": ">= 14.17" - } - }, - "node_modules/format": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/format/-/format-0.2.2.tgz", - "integrity": "sha512-wzsgA6WOq+09wrU1tsJ09udeR/YZRaeArL9e1wPbFg3GG2yDnC2ldKpxs4xunpFF9DgqCqOIra3bc1HWrJ37Ww==", - "engines": { - "node": ">=0.4.x" - } - }, - "node_modules/forwarded": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", - "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", - "license": "MIT", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/fraction.js": { - "version": "4.3.7", - "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.3.7.tgz", - "integrity": "sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==", - "license": "MIT", - "engines": { - "node": "*" - }, - "funding": { - "type": "patreon", - "url": "https://github.com/sponsors/rawify" - } - }, - "node_modules/fragment-cache": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", - "integrity": "sha512-GMBAbW9antB8iZRHLoGw0b3HANt57diZYFO/HL1JGIC1MjKrdmhxvrJbupnVvpys0zsz7yBApXdQyfepKly2kA==", - "license": "MIT", - "dependencies": { - "map-cache": "^0.2.2" - }, - "engines": { - "node": ">=0.10.0" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/fresh": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", + "node_modules/es-define-property": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", + "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", "license": "MIT", "engines": { - "node": ">= 0.6" + "node": ">= 0.4" } }, - "node_modules/from2": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz", - "integrity": "sha512-OMcX/4IC/uqEPVgGeyfN22LJk6AZrMkRZHxcHBMBvHScDGgwTm2GT2Wkgtocyd3JfZffjj2kYUDXXII0Fk9W0g==", + "node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", "license": "MIT", - "dependencies": { - "inherits": "^2.0.1", - "readable-stream": "^2.0.0" + "engines": { + "node": ">= 0.4" } }, - "node_modules/fs-constants": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", - "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==", - "license": "MIT" - }, - "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==", + "node_modules/es-iterator-helpers": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/es-iterator-helpers/-/es-iterator-helpers-1.2.2.tgz", + "integrity": "sha512-BrUQ0cPTB/IwXj23HtwHjS9n7O4h9FX94b4xc5zlTHxeLgTAdzYUDyy6KdExAl9lbN5rtfe44xpjpmj9grxs5w==", + "dev": true, "license": "MIT", "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", + "define-properties": "^1.2.1", + "es-abstract": "^1.24.1", + "es-errors": "^1.3.0", + "es-set-tostringtag": "^2.1.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.3.0", + "globalthis": "^1.0.4", + "gopd": "^1.2.0", + "has-property-descriptors": "^1.0.2", + "has-proto": "^1.2.0", + "has-symbols": "^1.1.0", + "internal-slot": "^1.1.0", + "iterator.prototype": "^1.1.5", + "safe-array-concat": "^1.1.3" }, "engines": { - "node": ">=14.14" + "node": ">= 0.4" } }, - "node_modules/fs-monkey": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.1.0.tgz", - "integrity": "sha512-QMUezzXWII9EV5aTFXW1UBVUO77wYPpjqIF8/AviUCThNeSYZykpoTixUeaNNBwmCev0AMDWMAni+f8Hxb1IFw==", - "license": "Unlicense" - }, - "node_modules/fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", - "license": "ISC" + "node_modules/es-module-lexer": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-2.0.0.tgz", + "integrity": "sha512-5POEcUuZybH7IdmGsD8wlf0AI55wMecM9rVBTI/qEAy2c1kTOm3DjFYjrBdI2K3BaJjJYfYFeRtM0t9ssnRuxw==", + "license": "MIT" }, - "node_modules/fsevents": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", - "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", - "hasInstallScript": 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", + "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, - "node_modules/fstream": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.12.tgz", - "integrity": "sha512-WvJ193OHa0GHPEL+AycEJgxvBEwyfRkN1vhjca23OaPVMCaLCXTd5qAu82AjTcgP1UJmytkOKb63Ypde7raDIg==", - "deprecated": "This package is no longer supported.", - "license": "ISC", "dependencies": { - "graceful-fs": "^4.1.2", - "inherits": "~2.0.0", - "mkdirp": ">=0.5 0", - "rimraf": "2" + "es-errors": "^1.3.0" }, "engines": { - "node": ">=0.6" - } - }, - "node_modules/function-bind": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", - "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">= 0.4" } }, - "node_modules/function.prototype.name": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.8.tgz", - "integrity": "sha512-e5iwyodOHhbMr/yNrc7fDYG4qlbIvI5gajyzPnb5TCwyhjApznQh1BMFou9b30SevY43gCJKXycoCBjMbsuW0Q==", + "node_modules/es-set-tostringtag": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz", + "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==", + "dev": true, "license": "MIT", "dependencies": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.3", - "define-properties": "^1.2.1", - "functions-have-names": "^1.2.3", - "hasown": "^2.0.2", - "is-callable": "^1.2.7" + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.2" }, "engines": { "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/functions-have-names": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", - "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/gaze": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/gaze/-/gaze-1.1.3.tgz", - "integrity": "sha512-BRdNm8hbWzFzWHERTrejLqwHDfS4GibPoq5wjTPIoJHoBtKGPg3xAFfxmM+9ztbXelxcf2hwQcaz1PtmFeue8g==", + "node_modules/es-shim-unscopables": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.1.0.tgz", + "integrity": "sha512-d9T8ucsEhh8Bi1woXCf+TIKDIROLG5WCkxg8geBCbvk22kzwC5G2OnXVMO6FUsvQlgUUXQ2itephWDLqDzbeCw==", + "dev": true, "license": "MIT", "dependencies": { - "globule": "^1.0.0" + "hasown": "^2.0.2" }, "engines": { - "node": ">= 4.0.0" - } - }, - "node_modules/gensync": { - "version": "1.0.0-beta.2", - "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", - "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", - "license": "MIT", - "engines": { - "node": ">=6.9.0" + "node": ">= 0.4" } }, - "node_modules/geojson-vt": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/geojson-vt/-/geojson-vt-4.0.2.tgz", - "integrity": "sha512-AV9ROqlNqoZEIJGfm1ncNjEXfkz2hdFlZf0qkVfmkwdKa8vj7H16YUOT81rJw1rdFhyEDlN2Tds91p/glzbl5A==", - "license": "ISC" - }, - "node_modules/get-intrinsic": { + "node_modules/es-to-primitive": { "version": "1.3.0", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", - "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.3.0.tgz", + "integrity": "sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==", + "dev": true, "license": "MIT", "dependencies": { - "call-bind-apply-helpers": "^1.0.2", - "es-define-property": "^1.0.1", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.1.1", - "function-bind": "^1.1.2", - "get-proto": "^1.0.1", - "gopd": "^1.2.0", - "has-symbols": "^1.1.0", - "hasown": "^2.0.2", - "math-intrinsics": "^1.1.0" + "is-callable": "^1.2.7", + "is-date-object": "^1.0.5", + "is-symbol": "^1.0.4" }, "engines": { "node": ">= 0.4" @@ -12991,1331 +9663,1325 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/get-own-enumerable-property-symbols": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz", - "integrity": "sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==", - "license": "ISC" - }, - "node_modules/get-proto": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", - "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", + "node_modules/esast-util-from-estree": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/esast-util-from-estree/-/esast-util-from-estree-2.0.0.tgz", + "integrity": "sha512-4CyanoAudUSBAn5K13H4JhsMH6L9ZP7XbLVe/dKybkxMO7eDyLsT8UHl9TRNrU2Gr9nz+FovfSIjuXWJ81uVwQ==", "license": "MIT", "dependencies": { - "dunder-proto": "^1.0.1", - "es-object-atoms": "^1.0.0" + "@types/estree-jsx": "^1.0.0", + "devlop": "^1.0.0", + "estree-util-visit": "^2.0.0", + "unist-util-position-from-estree": "^2.0.0" }, - "engines": { - "node": ">= 0.4" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/get-proxy": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/get-proxy/-/get-proxy-2.1.0.tgz", - "integrity": "sha512-zmZIaQTWnNQb4R4fJUEp/FC51eZsc6EkErspy3xtIYStaq8EB/hDIWipxsal+E8rz0qD7f2sL/NA9Xee4RInJw==", + "node_modules/esast-util-from-js": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/esast-util-from-js/-/esast-util-from-js-2.0.1.tgz", + "integrity": "sha512-8Ja+rNJ0Lt56Pcf3TAmpBZjmx8ZcK5Ts4cAzIOjsjevg9oSXJnl6SUQ2EevU8tv3h6ZLWmoKL5H4fgWvdvfETw==", "license": "MIT", "dependencies": { - "npm-conf": "^1.1.0" + "@types/estree-jsx": "^1.0.0", + "acorn": "^8.0.0", + "esast-util-from-estree": "^2.0.0", + "vfile-message": "^4.0.0" }, - "engines": { - "node": ">=4" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/get-stdin": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz", - "integrity": "sha512-F5aQMywwJ2n85s4hJPTT9RPxGmubonuB10MNYo17/xph174n2MIR33HRguhzVag10O/npM7SPk73LMZNP+FaWw==", + "node_modules/escalade": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", "license": "MIT", "engines": { - "node": ">=0.10.0" + "node": ">=6" } }, - "node_modules/get-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", - "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "node_modules/escape-goat": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-goat/-/escape-goat-4.0.0.tgz", + "integrity": "sha512-2Sd4ShcWxbx6OY1IHyla/CVNwvg7XwZVoXZHcSu9w9SReNP1EzzD5T8NWKIR38fIqEns9kDWKUQTXXAmlDrdPg==", "license": "MIT", "engines": { - "node": ">=10" + "node": ">=12" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/get-symbol-description": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.1.0.tgz", - "integrity": "sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==", + "node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==", + "license": "MIT" + }, + "node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", "license": "MIT", - "dependencies": { - "call-bound": "^1.0.3", - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.6" - }, "engines": { - "node": ">= 0.4" + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/get-value": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", - "integrity": "sha512-Ln0UQDlxH1BapMu3GPtf7CuYNwRZf2gwCuPqbyG6pB8WfmFpzqcy4xtAaAMUhnNqjMKTiCPZG2oMT3YSx8U2NA==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/getpass": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", - "integrity": "sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng==", + "node_modules/eslint": { + "version": "9.39.2", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.39.2.tgz", + "integrity": "sha512-LEyamqS7W5HB3ujJyvi0HQK/dtVINZvd5mAAp9eT5S/ujByGjiZLCzPcHVzuXbpJDJF/cxwHlfceVUDZ2lnSTw==", + "dev": true, "license": "MIT", "dependencies": { - "assert-plus": "^1.0.0" + "@eslint-community/eslint-utils": "^4.8.0", + "@eslint-community/regexpp": "^4.12.1", + "@eslint/config-array": "^0.21.1", + "@eslint/config-helpers": "^0.4.2", + "@eslint/core": "^0.17.0", + "@eslint/eslintrc": "^3.3.1", + "@eslint/js": "9.39.2", + "@eslint/plugin-kit": "^0.4.1", + "@humanfs/node": "^0.16.6", + "@humanwhocodes/module-importer": "^1.0.1", + "@humanwhocodes/retry": "^0.4.2", + "@types/estree": "^1.0.6", + "ajv": "^6.12.4", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.6", + "debug": "^4.3.2", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^8.4.0", + "eslint-visitor-keys": "^4.2.1", + "espree": "^10.4.0", + "esquery": "^1.5.0", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^8.0.0", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "ignore": "^5.2.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.3" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://eslint.org/donate" + }, + "peerDependencies": { + "jiti": "*" + }, + "peerDependenciesMeta": { + "jiti": { + "optional": true + } } }, - "node_modules/gifsicle": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/gifsicle/-/gifsicle-4.0.1.tgz", - "integrity": "sha512-A/kiCLfDdV+ERV/UB+2O41mifd+RxH8jlRG8DMxZO84Bma/Fw0htqZ+hY2iaalLRNyUu7tYZQslqUBJxBggxbg==", - "hasInstallScript": true, + "node_modules/eslint-config-prettier": { + "version": "10.1.8", + "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-10.1.8.tgz", + "integrity": "sha512-82GZUjRS0p/jganf6q1rEO25VSoHH0hKPCTrgillPjdI/3bgBhAE1QzHrHTizjpRvy6pGAvKjDJtk2pF9NDq8w==", + "dev": true, "license": "MIT", - "dependencies": { - "bin-build": "^3.0.0", - "bin-wrapper": "^4.0.0", - "execa": "^1.0.0", - "logalot": "^2.0.0" - }, "bin": { - "gifsicle": "cli.js" + "eslint-config-prettier": "bin/cli.js" }, - "engines": { - "node": ">=6" + "funding": { + "url": "https://opencollective.com/eslint-config-prettier" + }, + "peerDependencies": { + "eslint": ">=7.0.0" } }, - "node_modules/gifsicle/node_modules/cross-spawn": { - "version": "6.0.6", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.6.tgz", - "integrity": "sha512-VqCUuhcd1iB+dsv8gxPttb5iZh/D0iubSP21g36KXdEuf6I5JiioesUVjpCdHV9MZRUfVFlvwtIUyPfxo5trtw==", + "node_modules/eslint-plugin-react": { + "version": "7.37.5", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.37.5.tgz", + "integrity": "sha512-Qteup0SqU15kdocexFNAJMvCJEfa2xUKNV4CC1xsVMrIIqEy3SQ/rqyxCWNzfrd3/ldy6HMlD2e0JDVpDg2qIA==", + "dev": true, "license": "MIT", "dependencies": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" + "array-includes": "^3.1.8", + "array.prototype.findlast": "^1.2.5", + "array.prototype.flatmap": "^1.3.3", + "array.prototype.tosorted": "^1.1.4", + "doctrine": "^2.1.0", + "es-iterator-helpers": "^1.2.1", + "estraverse": "^5.3.0", + "hasown": "^2.0.2", + "jsx-ast-utils": "^2.4.1 || ^3.0.0", + "minimatch": "^3.1.2", + "object.entries": "^1.1.9", + "object.fromentries": "^2.0.8", + "object.values": "^1.2.1", + "prop-types": "^15.8.1", + "resolve": "^2.0.0-next.5", + "semver": "^6.3.1", + "string.prototype.matchall": "^4.0.12", + "string.prototype.repeat": "^1.0.0" }, "engines": { - "node": ">=4.8" + "node": ">=4" + }, + "peerDependencies": { + "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7" } }, - "node_modules/gifsicle/node_modules/execa": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz", - "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", + "node_modules/eslint-plugin-react/node_modules/resolve": { + "version": "2.0.0-next.5", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.5.tgz", + "integrity": "sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==", + "dev": true, "license": "MIT", "dependencies": { - "cross-spawn": "^6.0.0", - "get-stream": "^4.0.0", - "is-stream": "^1.1.0", - "npm-run-path": "^2.0.0", - "p-finally": "^1.0.0", - "signal-exit": "^3.0.0", - "strip-eof": "^1.0.0" + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" }, - "engines": { - "node": ">=6" + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/gifsicle/node_modules/get-stream": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", - "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", - "license": "MIT", + "node_modules/eslint-plugin-react/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/eslint-scope": { + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.4.0.tgz", + "integrity": "sha512-sNXOfKCn74rt8RICKMvJS7XKV/Xk9kA7DyJr8mJik3S7Cwgy3qlkkmyS2uQB3jiJg6VNdZd/pDBJu0nvG2NlTg==", + "dev": true, + "license": "BSD-2-Clause", "dependencies": { - "pump": "^3.0.0" + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" }, "engines": { - "node": ">=6" + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, - "node_modules/gifsicle/node_modules/is-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ==", - "license": "MIT", + "node_modules/eslint-visitor-keys": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz", + "integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==", + "dev": true, + "license": "Apache-2.0", "engines": { - "node": ">=0.10.0" + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, - "node_modules/gifsicle/node_modules/npm-run-path": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", - "integrity": "sha512-lJxZYlT4DW/bRUtFh1MQIWqmLwQfAxnqWG4HhEdjMlkrJYnJn0Jrr2u3mgxqaWsdiBc76TYkTG/mhrnYTuzfHw==", - "license": "MIT", + "node_modules/eslint/node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dev": true, + "license": "ISC", "dependencies": { - "path-key": "^2.0.0" + "is-glob": "^4.0.3" }, "engines": { - "node": ">=4" + "node": ">=10.13.0" } }, - "node_modules/gifsicle/node_modules/path-key": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==", - "license": "MIT", + "node_modules/espree": { + "version": "10.4.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-10.4.0.tgz", + "integrity": "sha512-j6PAQ2uUr79PZhBjP5C5fhl8e39FmRnOjsD5lGnWrFU8i2G776tBK7+nP8KuQUTTyAZUwfQqXAgrVH5MbH9CYQ==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "acorn": "^8.15.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^4.2.1" + }, "engines": { - "node": ">=4" + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, - "node_modules/gifsicle/node_modules/semver": { - "version": "5.7.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", - "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", - "license": "ISC", + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "license": "BSD-2-Clause", "bin": { - "semver": "bin/semver" - } - }, - "node_modules/gifsicle/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==", - "license": "MIT", - "dependencies": { - "shebang-regex": "^1.0.0" + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" }, "engines": { - "node": ">=0.10.0" + "node": ">=4" } }, - "node_modules/gifsicle/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==", - "license": "MIT", + "node_modules/esquery": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.7.0.tgz", + "integrity": "sha512-Ap6G0WQwcU/LHsvLwON1fAQX9Zp0A2Y6Y/cJBl9r/JbW90Zyg4/zbG6zzKa2OTALELarYHmKu0GhpM5EO+7T0g==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "estraverse": "^5.1.0" + }, "engines": { - "node": ">=0.10.0" + "node": ">=0.10" } }, - "node_modules/gifsicle/node_modules/which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "license": "ISC", + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "license": "BSD-2-Clause", "dependencies": { - "isexe": "^2.0.0" + "estraverse": "^5.2.0" }, - "bin": { - "which": "bin/which" + "engines": { + "node": ">=4.0" } }, - "node_modules/github-slugger": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/github-slugger/-/github-slugger-1.5.0.tgz", - "integrity": "sha512-wIh+gKBI9Nshz2o46B0B3f5k/W+WI9ZAv6y5Dn5WJ5SK1t0TnDimB4WE5rmTD05ZAIn8HALCZVmCsvj0w0v0lw==", - "license": "ISC" - }, - "node_modules/gl-matrix": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/gl-matrix/-/gl-matrix-3.4.3.tgz", - "integrity": "sha512-wcCp8vu8FT22BnvKVPjXa/ICBWRq/zjFfdofZy1WSpQZpphblv12/bOQLBC1rMM7SGOFS9ltVmKOHil5+Ml7gA==", - "license": "MIT" + "node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "license": "BSD-2-Clause", + "engines": { + "node": ">=4.0" + } }, - "node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "deprecated": "Glob versions prior to v9 are no longer supported", - "license": "ISC", + "node_modules/estree-util-attach-comments": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/estree-util-attach-comments/-/estree-util-attach-comments-3.0.0.tgz", + "integrity": "sha512-cKUwm/HUcTDsYh/9FgnuFqpfquUbwIqwKM26BVCGDPVgvaCl/nDCCjUfiLlx6lsEZ3Z4RFxNbOQ60pkaEwFxGw==", + "license": "MIT", "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" + "@types/estree": "^1.0.0" }, "funding": { - "url": "https://github.com/sponsors/isaacs" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "license": "ISC", + "node_modules/estree-util-build-jsx": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/estree-util-build-jsx/-/estree-util-build-jsx-3.0.1.tgz", + "integrity": "sha512-8U5eiL6BTrPxp/CHbs2yMgP8ftMhR5ww1eIKoWRMlqvltHF8fZn5LRDvTKuxD3DUn+shRbLGqXemcP51oFCsGQ==", + "license": "MIT", "dependencies": { - "is-glob": "^4.0.1" + "@types/estree-jsx": "^1.0.0", + "devlop": "^1.0.0", + "estree-util-is-identifier-name": "^3.0.0", + "estree-walker": "^3.0.0" }, - "engines": { - "node": ">= 6" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/glob-to-regexp": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", - "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", - "license": "BSD-2-Clause" + "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==", + "license": "MIT", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } }, - "node_modules/global-dirs": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-3.0.1.tgz", - "integrity": "sha512-NBcGGFbBA9s1VzD41QXDG+3++t9Mn5t1FpLdhESY6oKY4gYTFpX4wO3sqGUa0Srjtbfj3szX0RnemmrVRUdULA==", + "node_modules/estree-util-scope": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/estree-util-scope/-/estree-util-scope-1.0.0.tgz", + "integrity": "sha512-2CAASclonf+JFWBNJPndcOpA8EMJwa0Q8LUFJEKqXLW6+qBvbFZuF5gItbQOs/umBUkjviCSDCbBwU2cXbmrhQ==", "license": "MIT", "dependencies": { - "ini": "2.0.0" - }, - "engines": { - "node": ">=10" + "@types/estree": "^1.0.0", + "devlop": "^1.0.0" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/global-dirs/node_modules/ini": { + "node_modules/estree-util-to-js": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ini/-/ini-2.0.0.tgz", - "integrity": "sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==", - "license": "ISC", - "engines": { - "node": ">=10" + "resolved": "https://registry.npmjs.org/estree-util-to-js/-/estree-util-to-js-2.0.0.tgz", + "integrity": "sha512-WDF+xj5rRWmD5tj6bIqRi6CkLIXbbNQUcxQHzGysQzvHmdYG2G7p/Tf0J0gpxGgkeMZNTIjT/AoSvC9Xehcgdg==", + "license": "MIT", + "dependencies": { + "@types/estree-jsx": "^1.0.0", + "astring": "^1.8.0", + "source-map": "^0.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/global-modules": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz", - "integrity": "sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==", + "node_modules/estree-util-value-to-estree": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/estree-util-value-to-estree/-/estree-util-value-to-estree-3.5.0.tgz", + "integrity": "sha512-aMV56R27Gv3QmfmF1MY12GWkGzzeAezAX+UplqHVASfjc9wNzI/X6hC0S9oxq61WT4aQesLGslWP9tKk6ghRZQ==", "license": "MIT", "dependencies": { - "global-prefix": "^3.0.0" + "@types/estree": "^1.0.0" }, - "engines": { - "node": ">=6" + "funding": { + "url": "https://github.com/sponsors/remcohaszing" } }, - "node_modules/global-modules/node_modules/global-prefix": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-3.0.0.tgz", - "integrity": "sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==", + "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==", "license": "MIT", "dependencies": { - "ini": "^1.3.5", - "kind-of": "^6.0.2", - "which": "^1.3.1" + "@types/estree-jsx": "^1.0.0", + "@types/unist": "^3.0.0" }, - "engines": { - "node": ">=6" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/global-modules/node_modules/ini": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", - "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", - "license": "ISC" - }, - "node_modules/global-modules/node_modules/which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "license": "ISC", + "node_modules/estree-walker": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-3.0.3.tgz", + "integrity": "sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==", + "license": "MIT", "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "which": "bin/which" + "@types/estree": "^1.0.0" } }, - "node_modules/global-prefix": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-4.0.0.tgz", - "integrity": "sha512-w0Uf9Y9/nyHinEk5vMJKRie+wa4kR5hmDbEhGGds/kG1PwGLLHKRoNMeJOyCQjjBkANlnScqgzcFwGHgmgLkVA==", + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/eta": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/eta/-/eta-2.2.0.tgz", + "integrity": "sha512-UVQ72Rqjy/ZKQalzV5dCCJP80GrmPrMxh6NlNf+erV6ObL0ZFkhCstWRawS85z3smdr3d2wXPsZEY7rDPfGd2g==", "license": "MIT", - "dependencies": { - "ini": "^4.1.3", - "kind-of": "^6.0.3", - "which": "^4.0.0" - }, "engines": { - "node": ">=16" + "node": ">=6.0.0" + }, + "funding": { + "url": "https://github.com/eta-dev/eta?sponsor=1" } }, - "node_modules/global-prefix/node_modules/isexe": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz", - "integrity": "sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==", - "license": "ISC", + "node_modules/etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", + "license": "MIT", "engines": { - "node": ">=16" + "node": ">= 0.6" } }, - "node_modules/global-prefix/node_modules/which": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz", - "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==", - "license": "ISC", + "node_modules/eval": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/eval/-/eval-0.1.8.tgz", + "integrity": "sha512-EzV94NYKoO09GLXGjXj9JIlXijVck4ONSr5wiCWDvhsvj5jxSrzTmRU/9C1DyB6uToszLs8aifA6NQ7lEQdvFw==", "dependencies": { - "isexe": "^3.1.1" - }, - "bin": { - "node-which": "bin/which.js" + "@types/node": "*", + "require-like": ">= 0.1.1" }, "engines": { - "node": "^16.13.0 || >=18.0.0" + "node": ">= 0.8" } }, - "node_modules/globalthis": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", - "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", + "node_modules/eventemitter3": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", + "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==", + "license": "MIT" + }, + "node_modules/events": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", "license": "MIT", - "dependencies": { - "define-properties": "^1.2.1", - "gopd": "^1.0.1" - }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=0.8.x" } }, - "node_modules/globby": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", - "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "node_modules/execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", "license": "MIT", "dependencies": { - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.9", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^3.0.0" + "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/sponsors/sindresorhus" + "url": "https://github.com/sindresorhus/execa?sponsor=1" } }, - "node_modules/globule": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/globule/-/globule-1.3.4.tgz", - "integrity": "sha512-OPTIfhMBh7JbBYDpa5b+Q5ptmMWKwcNcFSR/0c6t8V4f3ZAVBEsKNY37QdVqmLRYSMhOUGYrY0QhSoEpzGr/Eg==", + "node_modules/express": { + "version": "4.22.1", + "resolved": "https://registry.npmjs.org/express/-/express-4.22.1.tgz", + "integrity": "sha512-F2X8g9P1X7uCPZMA3MVf9wcTqlyNp7IhH5qPCI0izhaOIYXaW9L535tGA3qmjRzpH+bZczqq7hVKxTR4NWnu+g==", "license": "MIT", "dependencies": { - "glob": "~7.1.1", - "lodash": "^4.17.21", - "minimatch": "~3.0.2" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/globule/node_modules/glob": { - "version": "7.1.7", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", - "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", - "deprecated": "Glob versions prior to v9 are no longer supported", - "license": "ISC", - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "~1.20.3", + "content-disposition": "~0.5.4", + "content-type": "~1.0.4", + "cookie": "~0.7.1", + "cookie-signature": "~1.0.6", + "debug": "2.6.9", + "depd": "2.0.0", + "encodeurl": "~2.0.0", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "~1.3.1", + "fresh": "~0.5.2", + "http-errors": "~2.0.0", + "merge-descriptors": "1.0.3", + "methods": "~1.1.2", + "on-finished": "~2.4.1", + "parseurl": "~1.3.3", + "path-to-regexp": "~0.1.12", + "proxy-addr": "~2.0.7", + "qs": "~6.14.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "~0.19.0", + "serve-static": "~1.16.2", + "setprototypeof": "1.2.0", + "statuses": "~2.0.1", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" }, "engines": { - "node": "*" + "node": ">= 0.10.0" }, "funding": { - "url": "https://github.com/sponsors/isaacs" + "type": "opencollective", + "url": "https://opencollective.com/express" } }, - "node_modules/globule/node_modules/minimatch": { - "version": "3.0.8", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.8.tgz", - "integrity": "sha512-6FsRAQsxQ61mw+qP1ZzbL9Bc78x2p5OqNgNpnoAFLTrX8n5Kxph0CsnhmKKNXTWjXqU5L0pGPR7hYk+XWZr60Q==", - "license": "ISC", + "node_modules/express/node_modules/content-disposition": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", + "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", + "license": "MIT", "dependencies": { - "brace-expansion": "^1.1.7" + "safe-buffer": "5.2.1" }, "engines": { - "node": "*" + "node": ">= 0.6" } }, - "node_modules/gopd": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", - "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", + "node_modules/express/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "dependencies": { + "ms": "2.0.0" } }, - "node_modules/got": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/got/-/got-7.1.0.tgz", - "integrity": "sha512-Y5WMo7xKKq1muPsxD+KmrR8DH5auG7fBdDVueZwETwV6VytKyU9OX/ddpq2/1hp1vIPvVb4T81dKQz3BivkNLw==", - "license": "MIT", - "dependencies": { - "decompress-response": "^3.2.0", - "duplexer3": "^0.1.4", - "get-stream": "^3.0.0", - "is-plain-obj": "^1.1.0", - "is-retry-allowed": "^1.0.0", - "is-stream": "^1.0.0", - "isurl": "^1.0.0-alpha5", - "lowercase-keys": "^1.0.0", - "p-cancelable": "^0.3.0", - "p-timeout": "^1.1.1", - "safe-buffer": "^5.0.1", - "timed-out": "^4.0.0", - "url-parse-lax": "^1.0.0", - "url-to-options": "^1.0.1" - }, - "engines": { - "node": ">=4" - } + "node_modules/express/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "license": "MIT" }, - "node_modules/got/node_modules/get-stream": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", - "integrity": "sha512-GlhdIUuVakc8SJ6kK0zAFbiGzRFzNnY4jUuEbV9UROo4Y+0Ny4fjvcZFVTeDA4odpFyOQzaw6hXukJSq/f28sQ==", - "license": "MIT", - "engines": { - "node": ">=4" - } + "node_modules/express/node_modules/path-to-regexp": { + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.12.tgz", + "integrity": "sha512-RA1GjUVMnvYFxuqovrEqZoxxW5NUZqbwKtYz/Tt7nXerk0LbLblQmrsgdeOxV5SFHf0UDggjS/bSeOZwt1pmEQ==", + "license": "MIT" }, - "node_modules/got/node_modules/is-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ==", + "node_modules/express/node_modules/range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", "license": "MIT", "engines": { - "node": ">=0.10.0" + "node": ">= 0.6" } }, - "node_modules/graceful-fs": { - "version": "4.2.11", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", - "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", - "license": "ISC" + "node_modules/extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", + "license": "MIT" }, - "node_modules/gray-matter": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/gray-matter/-/gray-matter-4.0.3.tgz", - "integrity": "sha512-5v6yZd4JK3eMI3FqqCouswVqwugaA9r4dNZB1wwcmrD02QkV5H0y7XBQW8QwQqEaZY1pM9aqORSORhJRdNK44Q==", + "node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", "license": "MIT", "dependencies": { - "js-yaml": "^3.13.1", - "kind-of": "^6.0.2", - "section-matter": "^1.0.0", - "strip-bom-string": "^1.0.0" + "is-extendable": "^0.1.0" }, "engines": { - "node": ">=6.0" - } - }, - "node_modules/gray-matter/node_modules/argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "license": "MIT", - "dependencies": { - "sprintf-js": "~1.0.2" - } - }, - "node_modules/gray-matter/node_modules/js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "license": "MIT", - "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" + "node": ">=0.10.0" } }, - "node_modules/gulp-header": { - "version": "1.8.12", - "resolved": "https://registry.npmjs.org/gulp-header/-/gulp-header-1.8.12.tgz", - "integrity": "sha512-lh9HLdb53sC7XIZOYzTXM4lFuXElv3EVkSDhsd7DoJBj7hm+Ni7D3qYbb+Rr8DuM8nRanBvkVO9d7askreXGnQ==", - "deprecated": "Removed event-stream from gulp-header", - "license": "MIT", - "dependencies": { - "concat-with-sourcemaps": "*", - "lodash.template": "^4.4.0", - "through2": "^2.0.0" - } + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "license": "MIT" }, - "node_modules/gzip-size": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-5.1.1.tgz", - "integrity": "sha512-FNHi6mmoHvs1mxZAds4PpdCS6QG8B4C1krxJsMutgxl5t3+GlRTzzI3NEkifXx2pVsOvJdOGSmIgDhQ55FwdPA==", + "node_modules/fast-glob": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.3.tgz", + "integrity": "sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==", "license": "MIT", "dependencies": { - "duplexer": "^0.1.1", - "pify": "^4.0.1" + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.8" }, "engines": { - "node": ">=6" + "node": ">=8.6.0" } }, - "node_modules/handle-thing": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", - "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==", + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", "license": "MIT" }, - "node_modules/har-schema": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", - "integrity": "sha512-Oqluz6zhGX8cyRaTQlFMPw80bSJVG2x/cFb8ZPhUILGgHka9SsokCCOQgpveePerqidZOrT14ipqfJb7ILcW5Q==", + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "dev": true, + "license": "MIT" + }, + "node_modules/fast-uri": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.1.0.tgz", + "integrity": "sha512-iPeeDKJSWf4IEOasVVrknXpaBV0IApz/gp7S2bb7Z4Lljbl2MGJRqInZiUrQwV16cpzw/D3S5j5Julj/gT52AA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fastify" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/fastify" + } + ], + "license": "BSD-3-Clause" + }, + "node_modules/fastq": { + "version": "1.20.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.20.1.tgz", + "integrity": "sha512-GGToxJ/w1x32s/D2EKND7kTil4n8OVk/9mycTc4VDza13lOvpUZTGX3mFSCtV9ksdGBVzvsyAVLM6mHFThxXxw==", "license": "ISC", - "engines": { - "node": ">=4" + "dependencies": { + "reusify": "^1.0.4" } }, - "node_modules/har-validator": { - "version": "5.1.5", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", - "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", - "deprecated": "this library is no longer supported", + "node_modules/fault": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fault/-/fault-2.0.1.tgz", + "integrity": "sha512-WtySTkS4OKev5JtpHXnib4Gxiurzh5NCGvWrFaZ34m6JehfTUhKZvn9njTfw48t6JumVQOmrKqpmGcdwxnhqBQ==", "license": "MIT", "dependencies": { - "ajv": "^6.12.3", - "har-schema": "^2.0.0" + "format": "^0.2.0" }, - "engines": { - "node": ">=6" - } - }, - "node_modules/has": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.4.tgz", - "integrity": "sha512-qdSAmqLF6209RFj4VVItywPMbm3vWylknmB3nvNiUIs72xAimcM8nVYxYr7ncvZq5qzk9MKIZR8ijqD/1QuYjQ==", - "license": "MIT", - "engines": { - "node": ">= 0.4.0" + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/has-ansi": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg==", - "license": "MIT", + "node_modules/faye-websocket": { + "version": "0.11.4", + "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz", + "integrity": "sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==", + "license": "Apache-2.0", "dependencies": { - "ansi-regex": "^2.0.0" + "websocket-driver": ">=0.5.1" }, "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/has-ansi/node_modules/ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" + "node": ">=0.8.0" } }, - "node_modules/has-bigints": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.1.0.tgz", - "integrity": "sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==", + "node_modules/feed": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/feed/-/feed-4.2.2.tgz", + "integrity": "sha512-u5/sxGfiMfZNtJ3OvQpXcvotFpYkL0n9u9mM2vkui2nGo8b4wvDkJ8gAkYqbA8QpGyFCv3RK0Z+Iv+9veCS9bQ==", "license": "MIT", - "engines": { - "node": ">= 0.4" + "dependencies": { + "xml-js": "^1.6.11" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "license": "MIT", "engines": { - "node": ">=8" + "node": ">=0.4.0" } }, - "node_modules/has-property-descriptors": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", - "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", - "license": "MIT", - "dependencies": { - "es-define-property": "^1.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } + "node_modules/fflate": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/fflate/-/fflate-0.8.2.tgz", + "integrity": "sha512-cPJU47OaAoCbg0pBvzsgpTPhmhqI5eJjh/JIu8tPj5q+T7iLvW/JAYUqmE7KOB4R1ZyEhzBaIQpQpardBF5z8A==", + "license": "MIT" }, - "node_modules/has-proto": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.2.0.tgz", - "integrity": "sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==", + "node_modules/figures": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", + "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", "license": "MIT", "dependencies": { - "dunder-proto": "^1.0.0" + "escape-string-regexp": "^1.0.5" }, "engines": { - "node": ">= 0.4" + "node": ">=8" }, "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-symbol-support-x": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/has-symbol-support-x/-/has-symbol-support-x-1.4.2.tgz", - "integrity": "sha512-3ToOva++HaW+eCpgqZrCfN51IPB+7bJNVT6CUATzueB5Heb8o6Nam0V3HG5dlDvZU1Gn5QLcbahiKw/XVk5JJw==", - "license": "MIT", - "engines": { - "node": "*" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/has-symbols": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", - "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", + "node_modules/figures/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", "license": "MIT", "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=0.8.0" } }, - "node_modules/has-to-string-tag-x": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/has-to-string-tag-x/-/has-to-string-tag-x-1.4.1.tgz", - "integrity": "sha512-vdbKfmw+3LoOYVr+mtxHaX5a96+0f3DljYd8JOqvOLsf5mw2Otda2qCDT9qRqLAhrjyQ0h7ual5nOiASpsGNFw==", + "node_modules/file-entry-cache": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-8.0.0.tgz", + "integrity": "sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==", + "dev": true, "license": "MIT", "dependencies": { - "has-symbol-support-x": "^1.4.1" + "flat-cache": "^4.0.0" }, "engines": { - "node": "*" + "node": ">=16.0.0" } }, - "node_modules/has-tostringtag": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", - "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", + "node_modules/file-loader": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-6.2.0.tgz", + "integrity": "sha512-qo3glqyTa61Ytg4u73GultjHGjdRyig3tG6lPtyX/jOEJvHif9uB0/OCI2Kif6ctF3caQTW2G5gym21oAsI4pw==", "license": "MIT", "dependencies": { - "has-symbols": "^1.0.3" + "loader-utils": "^2.0.0", + "schema-utils": "^3.0.0" }, "engines": { - "node": ">= 0.4" + "node": ">= 10.13.0" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.0.0 || ^5.0.0" } }, - "node_modules/has-value": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", - "integrity": "sha512-IBXk4GTsLYdQ7Rvt+GRBrFSVEkmuOUy4re0Xjd9kJSUQpnTrWR4/y9RpfexN9vkAPMFuQoeWKwqzPozRTlasGw==", + "node_modules/file-loader/node_modules/schema-utils": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", + "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", "license": "MIT", "dependencies": { - "get-value": "^2.0.6", - "has-values": "^1.0.0", - "isobject": "^3.0.0" + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" }, "engines": { - "node": ">=0.10.0" + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" } }, - "node_modules/has-values": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", - "integrity": "sha512-ODYZC64uqzmtfGMEAX/FvZiRyWLpAC3vYnNunURUnkGVTS+mI0smVsWaPydRBsE3g+ok7h960jChO8mFcWlHaQ==", + "node_modules/fill-range": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", "license": "MIT", "dependencies": { - "is-number": "^3.0.0", - "kind-of": "^4.0.0" + "to-regex-range": "^5.0.1" }, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, - "node_modules/has-values/node_modules/is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==", + "node_modules/finalhandler": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.3.2.tgz", + "integrity": "sha512-aA4RyPcd3badbdABGDuTXCMTtOneUCAYH/gxoYRTZlIJdF0YPWuGqiAsIrhNnnqdXGswYk6dGujem4w80UJFhg==", "license": "MIT", "dependencies": { - "kind-of": "^3.0.2" + "debug": "2.6.9", + "encodeurl": "~2.0.0", + "escape-html": "~1.0.3", + "on-finished": "~2.4.1", + "parseurl": "~1.3.3", + "statuses": "~2.0.2", + "unpipe": "~1.0.0" }, "engines": { - "node": ">=0.10.0" + "node": ">= 0.8" } }, - "node_modules/has-values/node_modules/is-number/node_modules/kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "node_modules/finalhandler/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "license": "MIT", "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" + "ms": "2.0.0" } }, - "node_modules/has-values/node_modules/kind-of": { + "node_modules/finalhandler/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "license": "MIT" + }, + "node_modules/find-cache-dir": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", - "integrity": "sha512-24XsCxmEbRwEDbz/qz3stgin8TTzZ1ESR56OMCN0ujYg+vRutNSiOj9bHH9u85DKgXguraugV5sFuvbD4FW/hw==", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-4.0.0.tgz", + "integrity": "sha512-9ZonPT4ZAK4a+1pUPVPZJapbi7O5qbbJPdYw/NOQWZZbVLdDTYM3A4R9z/DpAM08IDaFGsvPgiGZ82WEwUDWjg==", "license": "MIT", "dependencies": { - "is-buffer": "^1.1.5" + "common-path-prefix": "^3.0.0", + "pkg-dir": "^7.0.0" }, "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/has-yarn": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-yarn/-/has-yarn-3.0.0.tgz", - "integrity": "sha512-IrsVwUHhEULx3R8f/aA8AHuEzAorplsab/v8HBzEiIukwq5i/EC+xmOW+HfP1OaDP+2JkgT1yILHN2O3UFIbcA==", - "license": "MIT", - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + "node": ">=14.16" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/hasown": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", - "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, "license": "MIT", "dependencies": { - "function-bind": "^1.1.2" + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" }, "engines": { - "node": ">= 0.4" - } - }, - "node_modules/hast-util-from-parse5": { - "version": "8.0.3", - "resolved": "https://registry.npmjs.org/hast-util-from-parse5/-/hast-util-from-parse5-8.0.3.tgz", - "integrity": "sha512-3kxEVkEKt0zvcZ3hCRYI8rqrgwtlIOFMWkbclACvjlDw8Li9S2hk/d51OI0nr/gIpdMHNepwgOKqZ/sy0Clpyg==", - "license": "MIT", - "dependencies": { - "@types/hast": "^3.0.0", - "@types/unist": "^3.0.0", - "devlop": "^1.0.0", - "hastscript": "^9.0.0", - "property-information": "^7.0.0", - "vfile": "^6.0.0", - "vfile-location": "^5.0.0", - "web-namespaces": "^2.0.0" + "node": ">=10" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/hast-util-parse-selector": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/hast-util-parse-selector/-/hast-util-parse-selector-4.0.0.tgz", - "integrity": "sha512-wkQCkSYoOGCRKERFWcxMVMOcYE2K1AaNLU8DXS9arxnLOUEWbOXKXiJUNzEpqZ3JOKpnha3jkFrumEjVliDe7A==", + "node_modules/flat": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", + "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==", + "license": "BSD-3-Clause", + "bin": { + "flat": "cli.js" + } + }, + "node_modules/flat-cache": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-4.0.1.tgz", + "integrity": "sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==", + "dev": true, "license": "MIT", "dependencies": { - "@types/hast": "^3.0.0" + "flatted": "^3.2.9", + "keyv": "^4.5.4" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "engines": { + "node": ">=16" } }, - "node_modules/hast-util-raw": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/hast-util-raw/-/hast-util-raw-9.1.0.tgz", - "integrity": "sha512-Y8/SBAHkZGoNkpzqqfCldijcuUKh7/su31kEBp67cFY09Wy0mTRgtsLYsiIxMJxlu0f6AA5SUTbDR8K0rxnbUw==", + "node_modules/flatted": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.3.tgz", + "integrity": "sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==", + "dev": true, + "license": "ISC" + }, + "node_modules/follow-redirects": { + "version": "1.15.11", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.11.tgz", + "integrity": "sha512-deG2P0JfjrTxl50XGCDyfI97ZGVCxIpfKYmfyrQ54n5FO/0gfIES8C/Psl6kWVDolizcaaxZJnTS0QSMxvnsBQ==", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], "license": "MIT", - "dependencies": { - "@types/hast": "^3.0.0", - "@types/unist": "^3.0.0", - "@ungap/structured-clone": "^1.0.0", - "hast-util-from-parse5": "^8.0.0", - "hast-util-to-parse5": "^8.0.0", - "html-void-elements": "^3.0.0", - "mdast-util-to-hast": "^13.0.0", - "parse5": "^7.0.0", - "unist-util-position": "^5.0.0", - "unist-util-visit": "^5.0.0", - "vfile": "^6.0.0", - "web-namespaces": "^2.0.0", - "zwitch": "^2.0.0" + "engines": { + "node": ">=4.0" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "peerDependenciesMeta": { + "debug": { + "optional": true + } } }, - "node_modules/hast-util-to-estree": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/hast-util-to-estree/-/hast-util-to-estree-3.1.3.tgz", - "integrity": "sha512-48+B/rJWAp0jamNbAAf9M7Uf//UVqAoMmgXhBdxTDJLGKY+LRnZ99qcG+Qjl5HfMpYNzS5v4EAwVEF34LeAj7w==", + "node_modules/for-each": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.5.tgz", + "integrity": "sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==", + "dev": true, "license": "MIT", "dependencies": { - "@types/estree": "^1.0.0", - "@types/estree-jsx": "^1.0.0", - "@types/hast": "^3.0.0", - "comma-separated-tokens": "^2.0.0", - "devlop": "^1.0.0", - "estree-util-attach-comments": "^3.0.0", - "estree-util-is-identifier-name": "^3.0.0", - "hast-util-whitespace": "^3.0.0", - "mdast-util-mdx-expression": "^2.0.0", - "mdast-util-mdx-jsx": "^3.0.0", - "mdast-util-mdxjs-esm": "^2.0.0", - "property-information": "^7.0.0", - "space-separated-tokens": "^2.0.0", - "style-to-js": "^1.0.0", - "unist-util-position": "^5.0.0", - "zwitch": "^2.0.0" + "is-callable": "^1.2.7" + }, + "engines": { + "node": ">= 0.4" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/hast-util-to-jsx-runtime": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/hast-util-to-jsx-runtime/-/hast-util-to-jsx-runtime-2.3.6.tgz", - "integrity": "sha512-zl6s8LwNyo1P9uw+XJGvZtdFF1GdAkOg8ujOw+4Pyb76874fLps4ueHXDhXWdk6YHQ6OgUtinliG7RsYvCbbBg==", - "license": "MIT", + "node_modules/foreground-child": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.1.tgz", + "integrity": "sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==", + "dev": true, + "license": "ISC", "dependencies": { - "@types/estree": "^1.0.0", - "@types/hast": "^3.0.0", - "@types/unist": "^3.0.0", - "comma-separated-tokens": "^2.0.0", - "devlop": "^1.0.0", - "estree-util-is-identifier-name": "^3.0.0", - "hast-util-whitespace": "^3.0.0", - "mdast-util-mdx-expression": "^2.0.0", - "mdast-util-mdx-jsx": "^3.0.0", - "mdast-util-mdxjs-esm": "^2.0.0", - "property-information": "^7.0.0", - "space-separated-tokens": "^2.0.0", - "style-to-js": "^1.0.0", - "unist-util-position": "^5.0.0", - "vfile-message": "^4.0.0" + "cross-spawn": "^7.0.6", + "signal-exit": "^4.0.1" + }, + "engines": { + "node": ">=14" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/hast-util-to-parse5": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/hast-util-to-parse5/-/hast-util-to-parse5-8.0.0.tgz", - "integrity": "sha512-3KKrV5ZVI8if87DVSi1vDeByYrkGzg4mEfeu4alwgmmIeARiBLKCZS2uw5Gb6nU9x9Yufyj3iudm6i7nl52PFw==", - "license": "MIT", - "dependencies": { - "@types/hast": "^3.0.0", - "comma-separated-tokens": "^2.0.0", - "devlop": "^1.0.0", - "property-information": "^6.0.0", - "space-separated-tokens": "^2.0.0", - "web-namespaces": "^2.0.0", - "zwitch": "^2.0.0" + "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, + "license": "ISC", + "engines": { + "node": ">=14" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/hast-util-to-parse5/node_modules/property-information": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/property-information/-/property-information-6.5.0.tgz", - "integrity": "sha512-PgTgs/BlvHxOu8QuEN7wi5A0OmXaBcHpmCSTehcs6Uuu9IkDIEo13Hy7n898RHfrQ49vKCoGeWZSaAK01nwVig==", + "node_modules/form-data-encoder": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/form-data-encoder/-/form-data-encoder-2.1.4.tgz", + "integrity": "sha512-yDYSgNMraqvnxiEXO4hi88+YZxaHC6QKzb5N84iRCTDeRO7ZALpir/lVmf/uXUhnwUr2O4HU8s/n6x+yNjQkHw==", "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" + "engines": { + "node": ">= 14.17" } }, - "node_modules/hast-util-whitespace": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/hast-util-whitespace/-/hast-util-whitespace-3.0.0.tgz", - "integrity": "sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw==", + "node_modules/format": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/format/-/format-0.2.2.tgz", + "integrity": "sha512-wzsgA6WOq+09wrU1tsJ09udeR/YZRaeArL9e1wPbFg3GG2yDnC2ldKpxs4xunpFF9DgqCqOIra3bc1HWrJ37Ww==", + "engines": { + "node": ">=0.4.x" + } + }, + "node_modules/forwarded": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", "license": "MIT", - "dependencies": { - "@types/hast": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "engines": { + "node": ">= 0.6" } }, - "node_modules/hastscript": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/hastscript/-/hastscript-9.0.1.tgz", - "integrity": "sha512-g7df9rMFX/SPi34tyGCyUBREQoKkapwdY/T04Qn9TDWfHhAYt4/I0gMVirzK5wEzeUqIjEB+LXC/ypb7Aqno5w==", + "node_modules/fraction.js": { + "version": "5.3.4", + "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-5.3.4.tgz", + "integrity": "sha512-1X1NTtiJphryn/uLQz3whtY6jK3fTqoE3ohKs0tT+Ujr1W59oopxmoEh7Lu5p6vBaPbgoM0bzveAW4Qi5RyWDQ==", "license": "MIT", - "dependencies": { - "@types/hast": "^3.0.0", - "comma-separated-tokens": "^2.0.0", - "hast-util-parse-selector": "^4.0.0", - "property-information": "^7.0.0", - "space-separated-tokens": "^2.0.0" + "engines": { + "node": "*" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "type": "github", + "url": "https://github.com/sponsors/rawify" } }, - "node_modules/he": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", - "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", + "node_modules/fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", "license": "MIT", - "bin": { - "he": "bin/he" + "engines": { + "node": ">= 0.6" } }, - "node_modules/hex-color-regex": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/hex-color-regex/-/hex-color-regex-1.1.0.tgz", - "integrity": "sha512-l9sfDFsuqtOqKDsQdqrMRk0U85RZc0RtOR9yPI7mRVOa4FsR/BVnZ0shmQRM96Ji99kYZP/7hn1cedc1+ApsTQ==", - "license": "MIT" + "node_modules/fs-extra": { + "version": "11.3.3", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.3.3.tgz", + "integrity": "sha512-VWSRii4t0AFm6ixFFmLLx1t7wS1gh+ckoa84aOeapGum0h+EZd1EhEumSB+ZdDLnEPuucsVB9oB7cxJHap6Afg==", + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=14.14" + } }, - "node_modules/highlight.js": { - "version": "9.18.5", - "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-9.18.5.tgz", - "integrity": "sha512-a5bFyofd/BHCX52/8i8uJkjr9DYwXIPnM/plwI6W7ezItLGqzt7X2G2nXuYSfsIJdkwwj/g9DG1LkcGJI/dDoA==", - "deprecated": "Support has ended for 9.x series. Upgrade to @latest", + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", "hasInstallScript": true, - "license": "BSD-3-Clause", + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], "engines": { - "node": "*" + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" } }, - "node_modules/history": { - "version": "4.10.1", - "resolved": "https://registry.npmjs.org/history/-/history-4.10.1.tgz", - "integrity": "sha512-36nwAD620w12kuzPAsyINPWJqlNbij+hpK1k9XRloDtym8mxzGYl2c17LnV6IAGB2Dmg4tEa7G7DlawS0+qjew==", + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", "license": "MIT", - "dependencies": { - "@babel/runtime": "^7.1.2", - "loose-envify": "^1.2.0", - "resolve-pathname": "^3.0.0", - "tiny-invariant": "^1.0.2", - "tiny-warning": "^1.0.0", - "value-equal": "^1.0.1" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/hoist-non-react-statics": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz", - "integrity": "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==", - "license": "BSD-3-Clause", + "node_modules/function.prototype.name": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.8.tgz", + "integrity": "sha512-e5iwyodOHhbMr/yNrc7fDYG4qlbIvI5gajyzPnb5TCwyhjApznQh1BMFou9b30SevY43gCJKXycoCBjMbsuW0Q==", + "dev": true, + "license": "MIT", "dependencies": { - "react-is": "^16.7.0" + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "define-properties": "^1.2.1", + "functions-have-names": "^1.2.3", + "hasown": "^2.0.2", + "is-callable": "^1.2.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/hosted-git-info": { - "version": "2.8.9", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", - "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", - "license": "ISC" - }, - "node_modules/hpack.js": { - "version": "2.1.6", - "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", - "integrity": "sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==", + "node_modules/functions-have-names": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", + "dev": true, "license": "MIT", - "dependencies": { - "inherits": "^2.0.1", - "obuf": "^1.0.0", - "readable-stream": "^2.0.1", - "wbuf": "^1.1.0" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/hsl-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/hsl-regex/-/hsl-regex-1.0.0.tgz", - "integrity": "sha512-M5ezZw4LzXbBKMruP+BNANf0k+19hDQMgpzBIYnya//Al+fjNct9Wf3b1WedLqdEs2hKBvxq/jh+DsHJLj0F9A==", - "license": "MIT" + "node_modules/generator-function": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/generator-function/-/generator-function-2.0.1.tgz", + "integrity": "sha512-SFdFmIJi+ybC0vjlHN0ZGVGHc3lgE0DxPAT0djjVg+kjOnSqclqmj0KQ7ykTOLP6YxoqOvuAODGdcHJn+43q3g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } }, - "node_modules/hsla-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/hsla-regex/-/hsla-regex-1.0.0.tgz", - "integrity": "sha512-7Wn5GMLuHBjZCb2bTmnDOycho0p/7UVaAeqXZGbHrBCl6Yd/xDhQJAXe6Ga9AXJH2I5zY1dEdYw2u1UptnSBJA==", - "license": "MIT" + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } }, - "node_modules/html-element-map": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/html-element-map/-/html-element-map-1.3.1.tgz", - "integrity": "sha512-6XMlxrAFX4UEEGxctfFnmrFaaZFNf9i5fNuV5wZ3WWQ4FVaNP1aX1LkX9j2mfEx1NpjeE/rL3nmgEn23GdFmrg==", + "node_modules/get-intrinsic": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", + "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", "license": "MIT", "dependencies": { - "array.prototype.filter": "^1.0.0", - "call-bind": "^1.0.2" + "call-bind-apply-helpers": "^1.0.2", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", + "function-bind": "^1.1.2", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "math-intrinsics": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/html-entities": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.6.0.tgz", - "integrity": "sha512-kig+rMn/QOVRvr7c86gQ8lWXq+Hkv6CbAH1hLu+RG338StTpE8Z0b44SDVaqVu7HGKf27frdmUYEs9hTUX/cLQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/mdevils" - }, - { - "type": "patreon", - "url": "https://patreon.com/mdevils" - } - ], - "license": "MIT" - }, - "node_modules/html-escaper": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", - "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", - "license": "MIT" + "node_modules/get-own-enumerable-property-symbols": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz", + "integrity": "sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==", + "license": "ISC" }, - "node_modules/html-minifier-terser": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/html-minifier-terser/-/html-minifier-terser-7.2.0.tgz", - "integrity": "sha512-tXgn3QfqPIpGl9o+K5tpcj3/MN4SfLtsx2GWwBC3SSd0tXQGyF3gsSqad8loJgKZGM3ZxbYDd5yhiBIdWpmvLA==", + "node_modules/get-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", + "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", "license": "MIT", "dependencies": { - "camel-case": "^4.1.2", - "clean-css": "~5.3.2", - "commander": "^10.0.0", - "entities": "^4.4.0", - "param-case": "^3.0.4", - "relateurl": "^0.2.7", - "terser": "^5.15.1" - }, - "bin": { - "html-minifier-terser": "cli.js" + "dunder-proto": "^1.0.1", + "es-object-atoms": "^1.0.0" }, "engines": { - "node": "^14.13.1 || >=16.0.0" - } - }, - "node_modules/html-minifier-terser/node_modules/commander": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-10.0.1.tgz", - "integrity": "sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==", - "license": "MIT", - "engines": { - "node": ">=14" + "node": ">= 0.4" } }, - "node_modules/html-tags": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/html-tags/-/html-tags-3.3.1.tgz", - "integrity": "sha512-ztqyC3kLto0e9WbNp0aeP+M3kTt+nbaIveGmUxAtZa+8iFgKLUOD4YKM5j+f3QD89bra7UeumolZHKuOXnTmeQ==", + "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==", "license": "MIT", "engines": { - "node": ">=8" + "node": ">=10" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/html-void-elements": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/html-void-elements/-/html-void-elements-3.0.0.tgz", - "integrity": "sha512-bEqo66MRXsUGxWHV5IP0PUiAWwoEjba4VCzg0LjFJBpchPaTfyfCKTG6bc5F8ucKec3q5y6qOdGyYTSBEvhCrg==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/html-webpack-plugin": { - "version": "5.6.3", - "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-5.6.3.tgz", - "integrity": "sha512-QSf1yjtSAsmf7rYBV7XX86uua4W/vkhIt0xNXKbsi2foEeW7vjJQz4bhnpL3xH+l1ryl1680uNv968Z+X6jSYg==", + "node_modules/get-symbol-description": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.1.0.tgz", + "integrity": "sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==", + "dev": true, "license": "MIT", "dependencies": { - "@types/html-minifier-terser": "^6.0.0", - "html-minifier-terser": "^6.0.2", - "lodash": "^4.17.21", - "pretty-error": "^4.0.0", - "tapable": "^2.0.0" + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6" }, "engines": { - "node": ">=10.13.0" + "node": ">= 0.4" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/html-webpack-plugin" - }, - "peerDependencies": { - "@rspack/core": "0.x || 1.x", - "webpack": "^5.20.0" - }, - "peerDependenciesMeta": { - "@rspack/core": { - "optional": true - }, - "webpack": { - "optional": true - } + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/html-webpack-plugin/node_modules/commander": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", - "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==", - "license": "MIT", - "engines": { - "node": ">= 12" - } + "node_modules/github-slugger": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/github-slugger/-/github-slugger-1.5.0.tgz", + "integrity": "sha512-wIh+gKBI9Nshz2o46B0B3f5k/W+WI9ZAv6y5Dn5WJ5SK1t0TnDimB4WE5rmTD05ZAIn8HALCZVmCsvj0w0v0lw==", + "license": "ISC" }, - "node_modules/html-webpack-plugin/node_modules/html-minifier-terser": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz", - "integrity": "sha512-YXxSlJBZTP7RS3tWnQw74ooKa6L9b9i9QYXY21eUEvhZ3u9XLfv6OnFsQq6RxkhHygsaUMvYsZRV5rU/OVNZxw==", - "license": "MIT", + "node_modules/gl-matrix": { + "version": "3.4.4", + "resolved": "https://registry.npmjs.org/gl-matrix/-/gl-matrix-3.4.4.tgz", + "integrity": "sha512-latSnyDNt/8zYUB6VIJ6PCh2jBjJX6gnDsoCZ7LyW7GkqrD51EWwa9qCoGixj8YqBtETQK/xY7OmpTF8xz1DdQ==", + "license": "MIT" + }, + "node_modules/glob": { + "version": "11.0.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-11.0.3.tgz", + "integrity": "sha512-2Nim7dha1KVkaiF4q6Dj+ngPPMdfvLJEOpZk/jKiUAkqKebpGAWQXAq9z1xu9HKu5lWfqw/FASuccEjyznjPaA==", + "deprecated": "Old versions of glob are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me", + "dev": true, + "license": "ISC", "dependencies": { - "camel-case": "^4.1.2", - "clean-css": "^5.2.2", - "commander": "^8.3.0", - "he": "^1.2.0", - "param-case": "^3.0.4", - "relateurl": "^0.2.7", - "terser": "^5.10.0" + "foreground-child": "^3.3.1", + "jackspeak": "^4.1.1", + "minimatch": "^10.0.3", + "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", + "path-scurry": "^2.0.0" }, "bin": { - "html-minifier-terser": "cli.js" + "glob": "dist/esm/bin.mjs" }, "engines": { - "node": ">=12" + "node": "20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/htmlparser2": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-8.0.2.tgz", - "integrity": "sha512-GYdjWKDkbRLkZ5geuHs5NY1puJ+PXwP7+fHPRz06Eirsb9ugf6d8kkXav6ADhcODhFFPMIXyxkxSuMf3D6NCFA==", - "funding": [ - "https://github.com/fb55/htmlparser2?sponsor=1", - { - "type": "github", - "url": "https://github.com/sponsors/fb55" - } - ], - "license": "MIT", + "node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "license": "ISC", "dependencies": { - "domelementtype": "^2.3.0", - "domhandler": "^5.0.3", - "domutils": "^3.0.1", - "entities": "^4.4.0" + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" } }, - "node_modules/http-cache-semantics": { - "version": "3.8.1", - "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-3.8.1.tgz", - "integrity": "sha512-5ai2iksyV8ZXmnZhHH4rWPoxxistEexSi5936zIQ1bnNTW5VnA85B6P/VpXiRM017IgRvb2kKo1a//y+0wSp3w==", + "node_modules/glob-to-regex.js": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/glob-to-regex.js/-/glob-to-regex.js-1.2.0.tgz", + "integrity": "sha512-QMwlOQKU/IzqMUOAZWubUOT8Qft+Y0KQWnX9nK3ch0CJg0tTp4TvGZsTfudYKv2NzoQSyPcnA6TYeIQ3jGichQ==", + "license": "Apache-2.0", + "engines": { + "node": ">=10.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/streamich" + }, + "peerDependencies": { + "tslib": "2" + } + }, + "node_modules/glob-to-regexp": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", + "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", "license": "BSD-2-Clause" }, - "node_modules/http-deceiver": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", - "integrity": "sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==", - "license": "MIT" + "node_modules/glob/node_modules/minimatch": { + "version": "10.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.1.2.tgz", + "integrity": "sha512-fu656aJ0n2kcXwsnwnv9g24tkU5uSmOlTjd6WyyaKm2Z+h1qmY6bAjrcaIxF/BslFqbZ8UBtbJi7KgQOZD2PTw==", + "dev": true, + "license": "BlueOak-1.0.0", + "dependencies": { + "@isaacs/brace-expansion": "^5.0.1" + }, + "engines": { + "node": "20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } }, - "node_modules/http-errors": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", - "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", + "node_modules/global-dirs": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-3.0.1.tgz", + "integrity": "sha512-NBcGGFbBA9s1VzD41QXDG+3++t9Mn5t1FpLdhESY6oKY4gYTFpX4wO3sqGUa0Srjtbfj3szX0RnemmrVRUdULA==", "license": "MIT", "dependencies": { - "depd": "2.0.0", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "toidentifier": "1.0.1" + "ini": "2.0.0" }, "engines": { - "node": ">= 0.8" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/http-parser-js": { - "version": "0.5.10", - "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.10.tgz", - "integrity": "sha512-Pysuw9XpUq5dVc/2SMHpuTY01RFl8fttgcyunjL7eEMhGM3cI4eOmiCycJDVCo/7O7ClfQD3SaI6ftDzqOXYMA==", - "license": "MIT" - }, - "node_modules/http-proxy": { - "version": "1.18.1", - "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz", - "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", + "node_modules/global-dirs/node_modules/ini": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ini/-/ini-2.0.0.tgz", + "integrity": "sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==", + "license": "ISC", + "engines": { + "node": ">=10" + } + }, + "node_modules/globals": { + "version": "15.15.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-15.15.0.tgz", + "integrity": "sha512-7ACyT3wmyp3I61S4fG682L0VA2RGD9otkqGJIwNUMF1SWUombIIk+af1unuDYgMm082aHYwD+mzJvv9Iu8dsgg==", + "dev": true, "license": "MIT", - "dependencies": { - "eventemitter3": "^4.0.0", - "follow-redirects": "^1.0.0", - "requires-port": "^1.0.0" - }, "engines": { - "node": ">=8.0.0" + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/http-proxy-middleware": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.9.tgz", - "integrity": "sha512-c1IyJYLYppU574+YI7R4QyX2ystMtVXZwIdzazUIPIJsHuWNd+mho2j+bKoHftndicGj9yh+xjd+l0yj7VeT1Q==", + "node_modules/globalthis": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", + "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", + "dev": true, "license": "MIT", "dependencies": { - "@types/http-proxy": "^1.17.8", - "http-proxy": "^1.18.1", - "is-glob": "^4.0.1", - "is-plain-obj": "^3.0.0", - "micromatch": "^4.0.2" + "define-properties": "^1.2.1", + "gopd": "^1.0.1" }, "engines": { - "node": ">=12.0.0" - }, - "peerDependencies": { - "@types/express": "^4.17.13" + "node": ">= 0.4" }, - "peerDependenciesMeta": { - "@types/express": { - "optional": true - } + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/http-proxy-middleware/node_modules/is-plain-obj": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz", - "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==", + "node_modules/globby": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", "license": "MIT", + "dependencies": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" + }, "engines": { "node": ">=10" }, @@ -14323,724 +10989,764 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/http-signature": { + "node_modules/gopd": { "version": "1.2.0", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", - "integrity": "sha512-CAbnr6Rz4CYQkLYUtSNXxQPUH2gK8f3iWexVlsnMeD+GjlsQ0Xsy1cOX+mN3dtxYomRy21CiOzU8Uhw6OwncEQ==", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", + "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", "license": "MIT", - "dependencies": { - "assert-plus": "^1.0.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" - }, "engines": { - "node": ">=0.8", - "npm": ">=1.3.7" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/http2-wrapper": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/http2-wrapper/-/http2-wrapper-2.2.1.tgz", - "integrity": "sha512-V5nVw1PAOgfI3Lmeaj2Exmeg7fenjhRUgz1lPSezy1CuhPYbgQtbQj4jZfEAEMlaL+vupsvhjqCyjzob0yxsmQ==", + "node_modules/got": { + "version": "12.6.1", + "resolved": "https://registry.npmjs.org/got/-/got-12.6.1.tgz", + "integrity": "sha512-mThBblvlAF1d4O5oqyvN+ZxLAYwIJK7bpMxgYqPD9okW0C3qm5FFn7k811QrcuEBwaogR3ngOFoCfs6mRv7teQ==", "license": "MIT", "dependencies": { - "quick-lru": "^5.1.1", - "resolve-alpn": "^1.2.0" + "@sindresorhus/is": "^5.2.0", + "@szmarczak/http-timer": "^5.0.1", + "cacheable-lookup": "^7.0.0", + "cacheable-request": "^10.2.8", + "decompress-response": "^6.0.0", + "form-data-encoder": "^2.1.2", + "get-stream": "^6.0.1", + "http2-wrapper": "^2.1.10", + "lowercase-keys": "^3.0.0", + "p-cancelable": "^3.0.0", + "responselike": "^3.0.0" }, "engines": { - "node": ">=10.19.0" + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sindresorhus/got?sponsor=1" } }, - "node_modules/human-signals": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", - "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", - "license": "Apache-2.0", + "node_modules/got/node_modules/@sindresorhus/is": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-5.6.0.tgz", + "integrity": "sha512-TV7t8GKYaJWsn00tFDqBw8+Uqmr8A0fRU1tvTQhyZzGv0sJCGRQL3JGMI3ucuKo3XIZdUP+Lx7/gh2t3lewy7g==", + "license": "MIT", "engines": { - "node": ">=10.17.0" + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sindresorhus/is?sponsor=1" } }, - "node_modules/iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "license": "ISC" + }, + "node_modules/gray-matter": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/gray-matter/-/gray-matter-4.0.3.tgz", + "integrity": "sha512-5v6yZd4JK3eMI3FqqCouswVqwugaA9r4dNZB1wwcmrD02QkV5H0y7XBQW8QwQqEaZY1pM9aqORSORhJRdNK44Q==", "license": "MIT", "dependencies": { - "safer-buffer": ">= 2.1.2 < 3" + "js-yaml": "^3.13.1", + "kind-of": "^6.0.2", + "section-matter": "^1.0.0", + "strip-bom-string": "^1.0.0" }, "engines": { - "node": ">=0.10.0" + "node": ">=6.0" } }, - "node_modules/icss-utils": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz", - "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", - "license": "ISC", + "node_modules/gray-matter/node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "license": "MIT", + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/gray-matter/node_modules/js-yaml": { + "version": "3.14.2", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.2.tgz", + "integrity": "sha512-PMSmkqxr106Xa156c2M265Z+FTrPl+oxd/rgOQy2tijQeK5TxQ43psO1ZCwhVOSdnn+RzkzlRz/eY4BgJBYVpg==", + "license": "MIT", + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/gzip-size": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-6.0.0.tgz", + "integrity": "sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q==", + "license": "MIT", + "dependencies": { + "duplexer": "^0.1.2" + }, "engines": { - "node": "^10 || ^12 || >= 14" + "node": ">=10" }, - "peerDependencies": { - "postcss": "^8.1.0" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "BSD-3-Clause" + "node_modules/handle-thing": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", + "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==", + "license": "MIT" }, - "node_modules/ignore": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", - "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", + "node_modules/has-bigints": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.1.0.tgz", + "integrity": "sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==", + "dev": true, "license": "MIT", "engines": { - "node": ">= 4" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/image-size": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/image-size/-/image-size-2.0.2.tgz", - "integrity": "sha512-IRqXKlaXwgSMAMtpNzZa1ZAe8m+Sa1770Dhk8VkSsP9LS+iHD62Zd8FQKs8fbPiagBE7BzoFX23cxFnwshpV6w==", + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "license": "MIT", - "bin": { - "image-size": "bin/image-size.js" - }, "engines": { - "node": ">=16.x" + "node": ">=8" } }, - "node_modules/imagemin": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/imagemin/-/imagemin-6.1.0.tgz", - "integrity": "sha512-8ryJBL1CN5uSHpiBMX0rJw79C9F9aJqMnjGnrd/1CafegpNuA81RBAAru/jQQEOWlOJJlpRnlcVFF6wq+Ist0A==", + "node_modules/has-property-descriptors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", + "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", "license": "MIT", "dependencies": { - "file-type": "^10.7.0", - "globby": "^8.0.1", - "make-dir": "^1.0.0", - "p-pipe": "^1.1.0", - "pify": "^4.0.1", - "replace-ext": "^1.0.0" + "es-define-property": "^1.0.0" }, - "engines": { - "node": ">=6" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/imagemin-gifsicle": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/imagemin-gifsicle/-/imagemin-gifsicle-6.0.1.tgz", - "integrity": "sha512-kuu47c6iKDQ6R9J10xCwL0lgs0+sMz3LRHqRcJ2CRBWdcNmo3T5hUaM8hSZfksptZXJLGKk8heSAvwtSdB1Fng==", + "node_modules/has-proto": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.2.0.tgz", + "integrity": "sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==", + "dev": true, "license": "MIT", "dependencies": { - "exec-buffer": "^3.0.0", - "gifsicle": "^4.0.0", - "is-gif": "^3.0.0" + "dunder-proto": "^1.0.0" }, "engines": { - "node": ">=6" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/imagemin-jpegtran": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/imagemin-jpegtran/-/imagemin-jpegtran-6.0.0.tgz", - "integrity": "sha512-Ih+NgThzqYfEWv9t58EItncaaXIHR0u9RuhKa8CtVBlMBvY0dCIxgQJQCfwImA4AV1PMfmUKlkyIHJjb7V4z1g==", + "node_modules/has-symbols": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", + "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", "license": "MIT", - "dependencies": { - "exec-buffer": "^3.0.0", - "is-jpg": "^2.0.0", - "jpegtran-bin": "^4.0.0" - }, "engines": { - "node": ">=6" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/imagemin-optipng": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/imagemin-optipng/-/imagemin-optipng-6.0.0.tgz", - "integrity": "sha512-FoD2sMXvmoNm/zKPOWdhKpWdFdF9qiJmKC17MxZJPH42VMAp17/QENI/lIuP7LCUnLVAloO3AUoTSNzfhpyd8A==", + "node_modules/has-tostringtag": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", + "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", + "dev": true, "license": "MIT", "dependencies": { - "exec-buffer": "^3.0.0", - "is-png": "^1.0.0", - "optipng-bin": "^5.0.0" + "has-symbols": "^1.0.3" }, "engines": { - "node": ">=6" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/imagemin-svgo": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/imagemin-svgo/-/imagemin-svgo-7.1.0.tgz", - "integrity": "sha512-0JlIZNWP0Luasn1HT82uB9nU9aa+vUj6kpT+MjPW11LbprXC+iC4HDwn1r4Q2/91qj4iy9tRZNsFySMlEpLdpg==", + "node_modules/has-yarn": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-yarn/-/has-yarn-3.0.0.tgz", + "integrity": "sha512-IrsVwUHhEULx3R8f/aA8AHuEzAorplsab/v8HBzEiIukwq5i/EC+xmOW+HfP1OaDP+2JkgT1yILHN2O3UFIbcA==", "license": "MIT", - "dependencies": { - "is-svg": "^4.2.1", - "svgo": "^1.3.2" - }, "engines": { - "node": ">=6" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" }, "funding": { - "url": "https://github.com/sindresorhus/imagemin-svgo?sponsor=1" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/imagemin-svgo/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", "license": "MIT", "dependencies": { - "color-convert": "^1.9.0" + "function-bind": "^1.1.2" }, "engines": { - "node": ">=4" + "node": ">= 0.4" } }, - "node_modules/imagemin-svgo/node_modules/argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "node_modules/hast-util-from-parse5": { + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/hast-util-from-parse5/-/hast-util-from-parse5-8.0.3.tgz", + "integrity": "sha512-3kxEVkEKt0zvcZ3hCRYI8rqrgwtlIOFMWkbclACvjlDw8Li9S2hk/d51OI0nr/gIpdMHNepwgOKqZ/sy0Clpyg==", "license": "MIT", "dependencies": { - "sprintf-js": "~1.0.2" + "@types/hast": "^3.0.0", + "@types/unist": "^3.0.0", + "devlop": "^1.0.0", + "hastscript": "^9.0.0", + "property-information": "^7.0.0", + "vfile": "^6.0.0", + "vfile-location": "^5.0.0", + "web-namespaces": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/imagemin-svgo/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "node_modules/hast-util-parse-selector": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/hast-util-parse-selector/-/hast-util-parse-selector-4.0.0.tgz", + "integrity": "sha512-wkQCkSYoOGCRKERFWcxMVMOcYE2K1AaNLU8DXS9arxnLOUEWbOXKXiJUNzEpqZ3JOKpnha3jkFrumEjVliDe7A==", "license": "MIT", "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" + "@types/hast": "^3.0.0" }, - "engines": { - "node": ">=4" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/imagemin-svgo/node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "node_modules/hast-util-raw": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/hast-util-raw/-/hast-util-raw-9.1.0.tgz", + "integrity": "sha512-Y8/SBAHkZGoNkpzqqfCldijcuUKh7/su31kEBp67cFY09Wy0mTRgtsLYsiIxMJxlu0f6AA5SUTbDR8K0rxnbUw==", "license": "MIT", "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/imagemin-svgo/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", - "license": "MIT" - }, - "node_modules/imagemin-svgo/node_modules/css-select": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-2.1.0.tgz", - "integrity": "sha512-Dqk7LQKpwLoH3VovzZnkzegqNSuAziQyNZUcrdDM401iY+R5NkGBXGmtO05/yaXQziALuPogeG0b7UAgjnTJTQ==", - "license": "BSD-2-Clause", - "dependencies": { - "boolbase": "^1.0.0", - "css-what": "^3.2.1", - "domutils": "^1.7.0", - "nth-check": "^1.0.2" + "@types/hast": "^3.0.0", + "@types/unist": "^3.0.0", + "@ungap/structured-clone": "^1.0.0", + "hast-util-from-parse5": "^8.0.0", + "hast-util-to-parse5": "^8.0.0", + "html-void-elements": "^3.0.0", + "mdast-util-to-hast": "^13.0.0", + "parse5": "^7.0.0", + "unist-util-position": "^5.0.0", + "unist-util-visit": "^5.0.0", + "vfile": "^6.0.0", + "web-namespaces": "^2.0.0", + "zwitch": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/imagemin-svgo/node_modules/css-tree": { - "version": "1.0.0-alpha.37", - "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.0.0-alpha.37.tgz", - "integrity": "sha512-DMxWJg0rnz7UgxKT0Q1HU/L9BeJI0M6ksor0OgqOnF+aRCDWg/N2641HmVyU9KVIu0OVVWOb2IpC9A+BJRnejg==", + "node_modules/hast-util-to-estree": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/hast-util-to-estree/-/hast-util-to-estree-3.1.3.tgz", + "integrity": "sha512-48+B/rJWAp0jamNbAAf9M7Uf//UVqAoMmgXhBdxTDJLGKY+LRnZ99qcG+Qjl5HfMpYNzS5v4EAwVEF34LeAj7w==", "license": "MIT", "dependencies": { - "mdn-data": "2.0.4", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/imagemin-svgo/node_modules/css-what": { - "version": "3.4.2", - "resolved": "https://registry.npmjs.org/css-what/-/css-what-3.4.2.tgz", - "integrity": "sha512-ACUm3L0/jiZTqfzRM3Hi9Q8eZqd6IK37mMWPLz9PJxkLWllYeRf+EHUSHYEtFop2Eqytaq1FizFVh7XfBnXCDQ==", - "license": "BSD-2-Clause", - "engines": { - "node": ">= 6" + "@types/estree": "^1.0.0", + "@types/estree-jsx": "^1.0.0", + "@types/hast": "^3.0.0", + "comma-separated-tokens": "^2.0.0", + "devlop": "^1.0.0", + "estree-util-attach-comments": "^3.0.0", + "estree-util-is-identifier-name": "^3.0.0", + "hast-util-whitespace": "^3.0.0", + "mdast-util-mdx-expression": "^2.0.0", + "mdast-util-mdx-jsx": "^3.0.0", + "mdast-util-mdxjs-esm": "^2.0.0", + "property-information": "^7.0.0", + "space-separated-tokens": "^2.0.0", + "style-to-js": "^1.0.0", + "unist-util-position": "^5.0.0", + "zwitch": "^2.0.0" }, "funding": { - "url": "https://github.com/sponsors/fb55" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/imagemin-svgo/node_modules/csso": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/csso/-/csso-4.2.0.tgz", - "integrity": "sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==", + "node_modules/hast-util-to-jsx-runtime": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/hast-util-to-jsx-runtime/-/hast-util-to-jsx-runtime-2.3.6.tgz", + "integrity": "sha512-zl6s8LwNyo1P9uw+XJGvZtdFF1GdAkOg8ujOw+4Pyb76874fLps4ueHXDhXWdk6YHQ6OgUtinliG7RsYvCbbBg==", "license": "MIT", "dependencies": { - "css-tree": "^1.1.2" + "@types/estree": "^1.0.0", + "@types/hast": "^3.0.0", + "@types/unist": "^3.0.0", + "comma-separated-tokens": "^2.0.0", + "devlop": "^1.0.0", + "estree-util-is-identifier-name": "^3.0.0", + "hast-util-whitespace": "^3.0.0", + "mdast-util-mdx-expression": "^2.0.0", + "mdast-util-mdx-jsx": "^3.0.0", + "mdast-util-mdxjs-esm": "^2.0.0", + "property-information": "^7.0.0", + "space-separated-tokens": "^2.0.0", + "style-to-js": "^1.0.0", + "unist-util-position": "^5.0.0", + "vfile-message": "^4.0.0" }, - "engines": { - "node": ">=8.0.0" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/imagemin-svgo/node_modules/csso/node_modules/css-tree": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.1.3.tgz", - "integrity": "sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==", + "node_modules/hast-util-to-parse5": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/hast-util-to-parse5/-/hast-util-to-parse5-8.0.1.tgz", + "integrity": "sha512-MlWT6Pjt4CG9lFCjiz4BH7l9wmrMkfkJYCxFwKQic8+RTZgWPuWxwAfjJElsXkex7DJjfSJsQIt931ilUgmwdA==", "license": "MIT", "dependencies": { - "mdn-data": "2.0.14", - "source-map": "^0.6.1" + "@types/hast": "^3.0.0", + "comma-separated-tokens": "^2.0.0", + "devlop": "^1.0.0", + "property-information": "^7.0.0", + "space-separated-tokens": "^2.0.0", + "web-namespaces": "^2.0.0", + "zwitch": "^2.0.0" }, - "engines": { - "node": ">=8.0.0" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/imagemin-svgo/node_modules/csso/node_modules/mdn-data": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.14.tgz", - "integrity": "sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==", - "license": "CC0-1.0" - }, - "node_modules/imagemin-svgo/node_modules/dom-serializer": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.2.2.tgz", - "integrity": "sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g==", + "node_modules/hast-util-whitespace": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/hast-util-whitespace/-/hast-util-whitespace-3.0.0.tgz", + "integrity": "sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw==", "license": "MIT", "dependencies": { - "domelementtype": "^2.0.1", - "entities": "^2.0.0" + "@types/hast": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/imagemin-svgo/node_modules/domutils": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.7.0.tgz", - "integrity": "sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg==", - "license": "BSD-2-Clause", + "node_modules/hastscript": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/hastscript/-/hastscript-9.0.1.tgz", + "integrity": "sha512-g7df9rMFX/SPi34tyGCyUBREQoKkapwdY/T04Qn9TDWfHhAYt4/I0gMVirzK5wEzeUqIjEB+LXC/ypb7Aqno5w==", + "license": "MIT", "dependencies": { - "dom-serializer": "0", - "domelementtype": "1" - } - }, - "node_modules/imagemin-svgo/node_modules/domutils/node_modules/domelementtype": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", - "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==", - "license": "BSD-2-Clause" - }, - "node_modules/imagemin-svgo/node_modules/entities": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", - "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", - "license": "BSD-2-Clause", + "@types/hast": "^3.0.0", + "comma-separated-tokens": "^2.0.0", + "hast-util-parse-selector": "^4.0.0", + "property-information": "^7.0.0", + "space-separated-tokens": "^2.0.0" + }, "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/imagemin-svgo/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "node_modules/he": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", "license": "MIT", - "engines": { - "node": ">=0.8.0" + "bin": { + "he": "bin/he" } }, - "node_modules/imagemin-svgo/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "node_modules/history": { + "version": "4.10.1", + "resolved": "https://registry.npmjs.org/history/-/history-4.10.1.tgz", + "integrity": "sha512-36nwAD620w12kuzPAsyINPWJqlNbij+hpK1k9XRloDtym8mxzGYl2c17LnV6IAGB2Dmg4tEa7G7DlawS0+qjew==", "license": "MIT", - "engines": { - "node": ">=4" + "dependencies": { + "@babel/runtime": "^7.1.2", + "loose-envify": "^1.2.0", + "resolve-pathname": "^3.0.0", + "tiny-invariant": "^1.0.2", + "tiny-warning": "^1.0.0", + "value-equal": "^1.0.1" + } + }, + "node_modules/hoist-non-react-statics": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz", + "integrity": "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==", + "license": "BSD-3-Clause", + "dependencies": { + "react-is": "^16.7.0" } }, - "node_modules/imagemin-svgo/node_modules/js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "node_modules/hpack.js": { + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", + "integrity": "sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==", "license": "MIT", "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" + "inherits": "^2.0.1", + "obuf": "^1.0.0", + "readable-stream": "^2.0.1", + "wbuf": "^1.1.0" } }, - "node_modules/imagemin-svgo/node_modules/mdn-data": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.4.tgz", - "integrity": "sha512-iV3XNKw06j5Q7mi6h+9vbx23Tv7JkjEVgKHW4pimwyDGWm0OIQntJJ+u1C6mg6mK1EaTv42XQ7w76yuzH7M2cA==", - "license": "CC0-1.0" + "node_modules/hpack.js/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "license": "MIT" }, - "node_modules/imagemin-svgo/node_modules/nth-check": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz", - "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==", - "license": "BSD-2-Clause", + "node_modules/hpack.js/node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "license": "MIT", "dependencies": { - "boolbase": "~1.0.0" + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" } }, - "node_modules/imagemin-svgo/node_modules/sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", - "license": "ISC" - }, - "node_modules/imagemin-svgo/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "license": "BSD-3-Clause", - "engines": { - "node": ">=0.10.0" - } + "node_modules/hpack.js/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "license": "MIT" }, - "node_modules/imagemin-svgo/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "node_modules/hpack.js/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", "license": "MIT", "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" + "safe-buffer": "~5.1.0" } }, - "node_modules/imagemin-svgo/node_modules/svgo": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/svgo/-/svgo-1.3.2.tgz", - "integrity": "sha512-yhy/sQYxR5BkC98CY7o31VGsg014AKLEPxdfhora76l36hD9Rdy5NZA/Ocn6yayNPgSamYdtX2rFJdcv07AYVw==", - "deprecated": "This SVGO version is no longer supported. Upgrade to v2.x.x.", + "node_modules/html-escaper": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", + "license": "MIT" + }, + "node_modules/html-minifier-terser": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/html-minifier-terser/-/html-minifier-terser-7.2.0.tgz", + "integrity": "sha512-tXgn3QfqPIpGl9o+K5tpcj3/MN4SfLtsx2GWwBC3SSd0tXQGyF3gsSqad8loJgKZGM3ZxbYDd5yhiBIdWpmvLA==", "license": "MIT", "dependencies": { - "chalk": "^2.4.1", - "coa": "^2.0.2", - "css-select": "^2.0.0", - "css-select-base-adapter": "^0.1.1", - "css-tree": "1.0.0-alpha.37", - "csso": "^4.0.2", - "js-yaml": "^3.13.1", - "mkdirp": "~0.5.1", - "object.values": "^1.1.0", - "sax": "~1.2.4", - "stable": "^0.1.8", - "unquote": "~1.1.1", - "util.promisify": "~1.0.0" + "camel-case": "^4.1.2", + "clean-css": "~5.3.2", + "commander": "^10.0.0", + "entities": "^4.4.0", + "param-case": "^3.0.4", + "relateurl": "^0.2.7", + "terser": "^5.15.1" }, "bin": { - "svgo": "bin/svgo" + "html-minifier-terser": "cli.js" }, "engines": { - "node": ">=4.0.0" + "node": "^14.13.1 || >=16.0.0" } }, - "node_modules/imagemin/node_modules/@nodelib/fs.stat": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-1.1.3.tgz", - "integrity": "sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw==", + "node_modules/html-minifier-terser/node_modules/commander": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-10.0.1.tgz", + "integrity": "sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==", "license": "MIT", "engines": { - "node": ">= 6" + "node": ">=14" } }, - "node_modules/imagemin/node_modules/array-union": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", - "integrity": "sha512-Dxr6QJj/RdU/hCaBjOfxW+q6lyuVE6JFWIrAUpuOOhoJJoQ99cUn3igRaHVB5P9WrgFVN0FfArM3x0cueOU8ng==", + "node_modules/html-tags": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/html-tags/-/html-tags-3.3.1.tgz", + "integrity": "sha512-ztqyC3kLto0e9WbNp0aeP+M3kTt+nbaIveGmUxAtZa+8iFgKLUOD4YKM5j+f3QD89bra7UeumolZHKuOXnTmeQ==", "license": "MIT", - "dependencies": { - "array-uniq": "^1.0.1" - }, "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/imagemin/node_modules/braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "license": "MIT", - "dependencies": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" + "node": ">=8" }, - "engines": { - "node": ">=0.10.0" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/imagemin/node_modules/dir-glob": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-2.0.0.tgz", - "integrity": "sha512-37qirFDz8cA5fimp9feo43fSuRo2gHwaIn6dXL8Ber1dGwUosDrGZeCCXq57WnIqE4aQ+u3eQZzsk1yOzhdwag==", + "node_modules/html-void-elements": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/html-void-elements/-/html-void-elements-3.0.0.tgz", + "integrity": "sha512-bEqo66MRXsUGxWHV5IP0PUiAWwoEjba4VCzg0LjFJBpchPaTfyfCKTG6bc5F8ucKec3q5y6qOdGyYTSBEvhCrg==", "license": "MIT", - "dependencies": { - "arrify": "^1.0.1", - "path-type": "^3.0.0" - }, - "engines": { - "node": ">=4" + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/imagemin/node_modules/fast-glob": { - "version": "2.2.7", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-2.2.7.tgz", - "integrity": "sha512-g1KuQwHOZAmOZMuBtHdxDtju+T2RT8jgCC9aANsbpdiDDTSnjgfuVsIBNKbUeJI3oKMRExcfNDtJl4OhbffMsw==", + "node_modules/html-webpack-plugin": { + "version": "5.6.6", + "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-5.6.6.tgz", + "integrity": "sha512-bLjW01UTrvoWTJQL5LsMRo1SypHW80FTm12OJRSnr3v6YHNhfe+1r0MYUZJMACxnCHURVnBWRwAsWs2yPU9Ezw==", "license": "MIT", "dependencies": { - "@mrmlnc/readdir-enhanced": "^2.2.1", - "@nodelib/fs.stat": "^1.1.2", - "glob-parent": "^3.1.0", - "is-glob": "^4.0.0", - "merge2": "^1.2.3", - "micromatch": "^3.1.10" + "@types/html-minifier-terser": "^6.0.0", + "html-minifier-terser": "^6.0.2", + "lodash": "^4.17.21", + "pretty-error": "^4.0.0", + "tapable": "^2.0.0" }, "engines": { - "node": ">=4.0.0" + "node": ">=10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/html-webpack-plugin" + }, + "peerDependencies": { + "@rspack/core": "0.x || 1.x", + "webpack": "^5.20.0" + }, + "peerDependenciesMeta": { + "@rspack/core": { + "optional": true + }, + "webpack": { + "optional": true + } } }, - "node_modules/imagemin/node_modules/fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ==", + "node_modules/html-webpack-plugin/node_modules/commander": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", + "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==", "license": "MIT", - "dependencies": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - }, "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/imagemin/node_modules/glob-parent": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", - "integrity": "sha512-E8Ak/2+dZY6fnzlR7+ueWvhsH1SjHr4jjss4YS/h4py44jY9MhK/VFdaZJAWDz6BbL21KeteKxFSFpq8OS5gVA==", - "license": "ISC", - "dependencies": { - "is-glob": "^3.1.0", - "path-dirname": "^1.0.0" + "node": ">= 12" } }, - "node_modules/imagemin/node_modules/glob-parent/node_modules/is-glob": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", - "integrity": "sha512-UFpDDrPgM6qpnFNI+rh/p3bUaq9hKLZN8bMUWzxmcnZVS3omf4IPK+BrewlnWjO1WmUsMYuSjKh4UJuV4+Lqmw==", + "node_modules/html-webpack-plugin/node_modules/html-minifier-terser": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz", + "integrity": "sha512-YXxSlJBZTP7RS3tWnQw74ooKa6L9b9i9QYXY21eUEvhZ3u9XLfv6OnFsQq6RxkhHygsaUMvYsZRV5rU/OVNZxw==", "license": "MIT", "dependencies": { - "is-extglob": "^2.1.0" + "camel-case": "^4.1.2", + "clean-css": "^5.2.2", + "commander": "^8.3.0", + "he": "^1.2.0", + "param-case": "^3.0.4", + "relateurl": "^0.2.7", + "terser": "^5.10.0" + }, + "bin": { + "html-minifier-terser": "cli.js" }, "engines": { - "node": ">=0.10.0" + "node": ">=12" } }, - "node_modules/imagemin/node_modules/globby": { + "node_modules/htmlparser2": { "version": "8.0.2", - "resolved": "https://registry.npmjs.org/globby/-/globby-8.0.2.tgz", - "integrity": "sha512-yTzMmKygLp8RUpG1Ymu2VXPSJQZjNAZPD4ywgYEaG7e4tBJeUQBO8OpXrf1RCNcEs5alsoJYPAMiIHP0cmeC7w==", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-8.0.2.tgz", + "integrity": "sha512-GYdjWKDkbRLkZ5geuHs5NY1puJ+PXwP7+fHPRz06Eirsb9ugf6d8kkXav6ADhcODhFFPMIXyxkxSuMf3D6NCFA==", + "funding": [ + "https://github.com/fb55/htmlparser2?sponsor=1", + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ], "license": "MIT", "dependencies": { - "array-union": "^1.0.1", - "dir-glob": "2.0.0", - "fast-glob": "^2.0.2", - "glob": "^7.1.2", - "ignore": "^3.3.5", - "pify": "^3.0.0", - "slash": "^1.0.0" - }, - "engines": { - "node": ">=4" + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3", + "domutils": "^3.0.1", + "entities": "^4.4.0" } }, - "node_modules/imagemin/node_modules/globby/node_modules/pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==", - "license": "MIT", - "engines": { - "node": ">=4" - } + "node_modules/http-cache-semantics": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.2.0.tgz", + "integrity": "sha512-dTxcvPXqPvXBQpq5dUr6mEMJX4oIEFv6bwom3FDwKRDsuIjjJGANqhBuoAn9c1RQJIdAKav33ED65E2ys+87QQ==", + "license": "BSD-2-Clause" }, - "node_modules/imagemin/node_modules/ignore": { - "version": "3.3.10", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.10.tgz", - "integrity": "sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug==", + "node_modules/http-deceiver": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", + "integrity": "sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==", "license": "MIT" }, - "node_modules/imagemin/node_modules/is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "node_modules/http-errors": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.1.tgz", + "integrity": "sha512-4FbRdAX+bSdmo4AUFuS0WNiPz8NgFt+r8ThgNWmlrjQjt1Q7ZR9+zTlce2859x4KSXrwIsaeTqDoKQmtP8pLmQ==", "license": "MIT", "dependencies": { - "is-plain-object": "^2.0.4" + "depd": "~2.0.0", + "inherits": "~2.0.4", + "setprototypeof": "~1.2.0", + "statuses": "~2.0.2", + "toidentifier": "~1.0.1" }, "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/imagemin/node_modules/is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==", - "license": "MIT", - "dependencies": { - "kind-of": "^3.0.2" + "node": ">= 0.8" }, - "engines": { - "node": ">=0.10.0" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" } }, - "node_modules/imagemin/node_modules/is-number/node_modules/kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "node_modules/http-parser-js": { + "version": "0.5.10", + "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.10.tgz", + "integrity": "sha512-Pysuw9XpUq5dVc/2SMHpuTY01RFl8fttgcyunjL7eEMhGM3cI4eOmiCycJDVCo/7O7ClfQD3SaI6ftDzqOXYMA==", + "license": "MIT" + }, + "node_modules/http-proxy": { + "version": "1.18.1", + "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz", + "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", "license": "MIT", "dependencies": { - "is-buffer": "^1.1.5" + "eventemitter3": "^4.0.0", + "follow-redirects": "^1.0.0", + "requires-port": "^1.0.0" }, "engines": { - "node": ">=0.10.0" + "node": ">=8.0.0" } }, - "node_modules/imagemin/node_modules/make-dir": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", - "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", + "node_modules/http-proxy-middleware": { + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.9.tgz", + "integrity": "sha512-c1IyJYLYppU574+YI7R4QyX2ystMtVXZwIdzazUIPIJsHuWNd+mho2j+bKoHftndicGj9yh+xjd+l0yj7VeT1Q==", "license": "MIT", "dependencies": { - "pify": "^3.0.0" + "@types/http-proxy": "^1.17.8", + "http-proxy": "^1.18.1", + "is-glob": "^4.0.1", + "is-plain-obj": "^3.0.0", + "micromatch": "^4.0.2" }, "engines": { - "node": ">=4" + "node": ">=12.0.0" + }, + "peerDependencies": { + "@types/express": "^4.17.13" + }, + "peerDependenciesMeta": { + "@types/express": { + "optional": true + } } }, - "node_modules/imagemin/node_modules/make-dir/node_modules/pify": { + "node_modules/http-proxy-middleware/node_modules/is-plain-obj": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz", + "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==", "license": "MIT", "engines": { - "node": ">=4" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/imagemin/node_modules/micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "node_modules/http2-wrapper": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/http2-wrapper/-/http2-wrapper-2.2.1.tgz", + "integrity": "sha512-V5nVw1PAOgfI3Lmeaj2Exmeg7fenjhRUgz1lPSezy1CuhPYbgQtbQj4jZfEAEMlaL+vupsvhjqCyjzob0yxsmQ==", "license": "MIT", "dependencies": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" + "quick-lru": "^5.1.1", + "resolve-alpn": "^1.2.0" }, "engines": { - "node": ">=0.10.0" + "node": ">=10.19.0" } }, - "node_modules/imagemin/node_modules/micromatch/node_modules/extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", + "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==", + "license": "Apache-2.0", + "engines": { + "node": ">=10.17.0" + } + }, + "node_modules/hyperdyperid": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/hyperdyperid/-/hyperdyperid-1.2.0.tgz", + "integrity": "sha512-Y93lCzHYgGWdrJ66yIktxiaGULYc6oGiABxhcO5AufBeOyoIdZF7bIfLaOrbM0iGIOXQQgxxRrFEnb+Y6w1n4A==", "license": "MIT", - "dependencies": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - }, "engines": { - "node": ">=0.10.0" + "node": ">=10.18" } }, - "node_modules/imagemin/node_modules/path-type": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", - "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", + "node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", "license": "MIT", "dependencies": { - "pify": "^3.0.0" + "safer-buffer": ">= 2.1.2 < 3" }, "engines": { - "node": ">=4" + "node": ">=0.10.0" } }, - "node_modules/imagemin/node_modules/path-type/node_modules/pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==", - "license": "MIT", + "node_modules/icss-utils": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz", + "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", + "license": "ISC", "engines": { - "node": ">=4" + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" } }, - "node_modules/imagemin/node_modules/slash": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", - "integrity": "sha512-3TYDR7xWt4dIqV2JauJr+EJeW356RXijHeUlO+8djJ+uBXPn8/2dpzBc8yQhh583sVvc9CvFAeQVgijsH+PNNg==", + "node_modules/ignore": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", + "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", "license": "MIT", "engines": { - "node": ">=0.10.0" + "node": ">= 4" } }, - "node_modules/imagemin/node_modules/to-regex-range": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", - "integrity": "sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg==", + "node_modules/image-size": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/image-size/-/image-size-2.0.2.tgz", + "integrity": "sha512-IRqXKlaXwgSMAMtpNzZa1ZAe8m+Sa1770Dhk8VkSsP9LS+iHD62Zd8FQKs8fbPiagBE7BzoFX23cxFnwshpV6w==", "license": "MIT", - "dependencies": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" + "bin": { + "image-size": "bin/image-size.js" }, "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/immer": { - "version": "9.0.21", - "resolved": "https://registry.npmjs.org/immer/-/immer-9.0.21.tgz", - "integrity": "sha512-bc4NBHqOqSfRW7POMkHd51LvClaeMXpm8dx0e8oE2GORbq5aRK7Bxl4FyzVLdGtLmvLKL7BTDBG5ACQm4HWjTA==", - "license": "MIT", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/immer" + "node": ">=16.x" } }, "node_modules/import-fresh": { @@ -15060,12 +11766,12 @@ } }, "node_modules/import-lazy": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-3.1.0.tgz", - "integrity": "sha512-8/gvXvX2JMn0F+CDlSC4l6kOmVaLOO3XLkksI7CI3Ud95KDYJuYur2b9P/PUt/i/pDAMd/DulQsNbbbmRRsDIQ==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-4.0.0.tgz", + "integrity": "sha512-rKtvo6a868b5Hu3heneU+L4yEQ4jYKLtjpnPeUdK7h0yzXGmyBTypknlkCvHFBqfX9YlorEiMM6Dnq/5atfHkw==", "license": "MIT", "engines": { - "node": ">=6" + "node": ">=8" } }, "node_modules/imurmurhash": { @@ -15086,12 +11792,6 @@ "node": ">=8" } }, - "node_modules/indexes-of": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/indexes-of/-/indexes-of-1.0.1.tgz", - "integrity": "sha512-bup+4tap3Hympa+JBJUG7XuOsdNQ6fxt0MHyXMKuLBKn0OqsTfvUxkUrroEX1+B2VsSHvCjiIcZVxRtYa4nllA==", - "license": "MIT" - }, "node_modules/infima": { "version": "0.2.0-alpha.45", "resolved": "https://registry.npmjs.org/infima/-/infima-0.2.0-alpha.45.tgz", @@ -15101,17 +11801,6 @@ "node": ">=12" } }, - "node_modules/inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", - "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", - "license": "ISC", - "dependencies": { - "once": "^1.3.0", - "wrappy": "1" - } - }, "node_modules/inherits": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", @@ -15122,21 +11811,23 @@ "version": "4.1.3", "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.3.tgz", "integrity": "sha512-X7rqawQBvfdjS10YU1y1YVreA3SsLrW9dX2CewP2EbBJM4ypVNLDkO5y04gejPwKIY9lR+7r9gn3rFPt/kmWFg==", + "dev": true, "license": "ISC", "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/inline-style-parser": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/inline-style-parser/-/inline-style-parser-0.2.4.tgz", - "integrity": "sha512-0aO8FkhNZlj/ZIbNi7Lxxr12obT7cL1moPfE4tg1LkX7LlLfC6DeX4l2ZEud1ukP9jNQyNnfzQVqwbwmAATY4Q==", + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/inline-style-parser/-/inline-style-parser-0.2.7.tgz", + "integrity": "sha512-Nb2ctOyNR8DqQoR0OwRG95uNWIC0C1lCgf5Naz5H6Ji72KZ8OcFZLz2P5sNgwlyoJ8Yif11oMuYs5pBQa86csA==", "license": "MIT" }, "node_modules/internal-slot": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.1.0.tgz", "integrity": "sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==", + "dev": true, "license": "MIT", "dependencies": { "es-errors": "^1.3.0", @@ -15147,28 +11838,6 @@ "node": ">= 0.4" } }, - "node_modules/interpret": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz", - "integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==", - "license": "MIT", - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/into-stream": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/into-stream/-/into-stream-3.1.0.tgz", - "integrity": "sha512-TcdjPibTksa1NQximqep2r17ISRiNE9fwlfbg3F8ANdvP5/yrFTew86VcO//jk4QTaMlbjypPBq76HN2zaKfZQ==", - "license": "MIT", - "dependencies": { - "from2": "^2.1.1", - "p-is-promise": "^1.1.0" - }, - "engines": { - "node": ">=4" - } - }, "node_modules/invariant": { "version": "2.2.4", "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", @@ -15178,43 +11847,13 @@ "loose-envify": "^1.0.0" } }, - "node_modules/ip-regex": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ip-regex/-/ip-regex-4.3.0.tgz", - "integrity": "sha512-B9ZWJxHHOHUhUjCPrMpLD4xEq35bUTClHM1S6CBU5ixQnkZmwipwgc96vAd7AAGM9TGHvJR+Uss+/Ak6UphK+Q==", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, "node_modules/ipaddr.js": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", - "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", - "license": "MIT", - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/is-absolute-url": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-absolute-url/-/is-absolute-url-2.1.0.tgz", - "integrity": "sha512-vOx7VprsKyllwjSkLV79NIhpyLfr3jAp7VaTCMXOJHu4m0Ew1CZ2fcjASwmV1jI3BWuWHB013M48eyeldk9gYg==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-accessor-descriptor": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.1.tgz", - "integrity": "sha512-YBUanLI8Yoihw923YeFUS5fs0fF2f5TSFTNiYAAzhhDscDa3lEqYuz1pDOEP5KvX94I9ey3vsqjJcLVFVU+3QA==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.3.0.tgz", + "integrity": "sha512-Zv/pA+ciVFbCSBBjGfaKUya/CcGmUHzTydLMaTwrUUEM2DIEO3iZvueGxmacvmN50fGpGVKeTXpb2LcYQxeVdg==", "license": "MIT", - "dependencies": { - "hasown": "^2.0.0" - }, "engines": { - "node": ">= 0.10" + "node": ">= 10" } }, "node_modules/is-alphabetical": { @@ -15245,6 +11884,7 @@ "version": "3.0.5", "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.5.tgz", "integrity": "sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==", + "dev": true, "license": "MIT", "dependencies": { "call-bind": "^1.0.8", @@ -15268,6 +11908,7 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/is-async-function/-/is-async-function-2.1.1.tgz", "integrity": "sha512-9dgM/cZBnNvjzaMYHVoxxfPj2QXt22Ev7SuuPrs+xav0ukGB0S6d4ydZdEiM48kLx5kDV+QBPrpVnFyefL8kkQ==", + "dev": true, "license": "MIT", "dependencies": { "async-function": "^1.0.0", @@ -15287,6 +11928,7 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.1.0.tgz", "integrity": "sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==", + "dev": true, "license": "MIT", "dependencies": { "has-bigints": "^1.0.2" @@ -15314,6 +11956,7 @@ "version": "1.2.2", "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.2.2.tgz", "integrity": "sha512-wa56o2/ElJMYqjCjGkXri7it5FbebW5usLw/nPmCMs5DeZ7eziSYZhSmPRn0txqeW4LnAmQQU7FgqLpsEFKM4A==", + "dev": true, "license": "MIT", "dependencies": { "call-bound": "^1.0.3", @@ -15326,16 +11969,11 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-buffer": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", - "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", - "license": "MIT" - }, "node_modules/is-callable": { "version": "1.2.7", "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", + "dev": true, "license": "MIT", "engines": { "node": ">= 0.4" @@ -15356,20 +11994,6 @@ "is-ci": "bin.js" } }, - "node_modules/is-color-stop": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-color-stop/-/is-color-stop-1.1.0.tgz", - "integrity": "sha512-H1U8Vz0cfXNujrJzEcvvwMDW9Ra+biSYA3ThdQvAnMLJkEHQXn6bWzLkxHtVYJ+Sdbx0b6finn3jZiaVe7MAHA==", - "license": "MIT", - "dependencies": { - "css-color-names": "^0.0.4", - "hex-color-regex": "^1.1.0", - "hsl-regex": "^1.0.0", - "hsla-regex": "^1.0.0", - "rgb-regex": "^1.0.1", - "rgba-regex": "^1.0.0" - } - }, "node_modules/is-core-module": { "version": "2.16.1", "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz", @@ -15385,22 +12009,11 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-data-descriptor": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.1.tgz", - "integrity": "sha512-bc4NlCDiCr28U4aEsQ3Qs2491gVq4V8G7MQyws968ImqjKuYtTJXrl7Vq7jsN7Ly/C3xj5KWFrY7sHNeDkAzXw==", - "license": "MIT", - "dependencies": { - "hasown": "^2.0.0" - }, - "engines": { - "node": ">= 0.4" - } - }, "node_modules/is-data-view": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.2.tgz", "integrity": "sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==", + "dev": true, "license": "MIT", "dependencies": { "call-bound": "^1.0.2", @@ -15418,6 +12031,7 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.1.0.tgz", "integrity": "sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==", + "dev": true, "license": "MIT", "dependencies": { "call-bound": "^1.0.2", @@ -15440,28 +12054,6 @@ "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/is-descriptor": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.3.tgz", - "integrity": "sha512-JCNNGbwWZEVaSPtS45mdtrneRWJFp07LLmykxeFV5F6oBvNF8vHSfJuJgoT472pSfk+Mf8VnlrspaFBHWM8JAw==", - "license": "MIT", - "dependencies": { - "is-accessor-descriptor": "^1.0.1", - "is-data-descriptor": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/is-directory": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/is-directory/-/is-directory-0.3.1.tgz", - "integrity": "sha512-yVChGzahRFvbkscn2MlwGismPO12i9+znNruC5gVEntG3qu0xQMzsGg/JFbrsqDOHtHFPci+V5aP5T9I+yeKqw==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/is-docker": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", @@ -15499,6 +12091,7 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/is-finalizationregistry/-/is-finalizationregistry-1.1.1.tgz", "integrity": "sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==", + "dev": true, "license": "MIT", "dependencies": { "call-bound": "^1.0.3" @@ -15510,18 +12103,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-finite": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.1.0.tgz", - "integrity": "sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/is-fullwidth-code-point": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", @@ -15532,13 +12113,15 @@ } }, "node_modules/is-generator-function": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.1.0.tgz", - "integrity": "sha512-nPUB5km40q9e8UfN/Zc24eLlzdSf9OfKByBw9CIdw4H1giPMeA0OIJvbchsCu4npfI2QcMVBsGEBHKZ7wLTWmQ==", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.1.2.tgz", + "integrity": "sha512-upqt1SkGkODW9tsGNG5mtXTXtECizwtS2kA161M+gJPc1xdb/Ax629af6YrTwcOeQHbewrPNlE5Dx7kzvXTizA==", + "dev": true, "license": "MIT", "dependencies": { - "call-bound": "^1.0.3", - "get-proto": "^1.0.0", + "call-bound": "^1.0.4", + "generator-function": "^2.0.0", + "get-proto": "^1.0.1", "has-tostringtag": "^1.0.2", "safe-regex-test": "^1.1.0" }, @@ -15549,18 +12132,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-gif": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-gif/-/is-gif-3.0.0.tgz", - "integrity": "sha512-IqJ/jlbw5WJSNfwQ/lHEDXF8rxhRgF6ythk2oiEvhpG29F704eX9NO6TvPfMiq9DrbwgcEDnETYNcZDPewQoVw==", - "license": "MIT", - "dependencies": { - "file-type": "^10.4.0" - }, - "engines": { - "node": ">=6" - } - }, "node_modules/is-glob": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", @@ -15583,6 +12154,39 @@ "url": "https://github.com/sponsors/wooorm" } }, + "node_modules/is-inside-container": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-inside-container/-/is-inside-container-1.0.0.tgz", + "integrity": "sha512-KIYLCCJghfHZxqjYBE7rEy0OBuTd5xCHS7tHVgvCLkx7StIoaxwNW3hCALgEUjFfeRk+MG/Qxmp/vtETEF3tRA==", + "license": "MIT", + "dependencies": { + "is-docker": "^3.0.0" + }, + "bin": { + "is-inside-container": "cli.js" + }, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-inside-container/node_modules/is-docker": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-3.0.0.tgz", + "integrity": "sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==", + "license": "MIT", + "bin": { + "is-docker": "cli.js" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/is-installed-globally": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.4.0.tgz", @@ -15599,19 +12203,11 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/is-jpg": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-jpg/-/is-jpg-2.0.0.tgz", - "integrity": "sha512-ODlO0ruzhkzD3sdynIainVP5eoOFNN85rxA1+cwwnPe4dKyX0r5+hxNO5XpCrxlHcmb9vkOit9mhRD2JVuimHg==", - "license": "MIT", - "engines": { - "node": ">=6" - } - }, "node_modules/is-map": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.3.tgz", "integrity": "sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==", + "dev": true, "license": "MIT", "engines": { "node": ">= 0.4" @@ -15620,16 +12216,11 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-natural-number": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/is-natural-number/-/is-natural-number-4.0.1.tgz", - "integrity": "sha512-Y4LTamMe0DDQIIAlaer9eKebAlDSV6huy+TWhJVPlzZh2o4tRP5SQWFlLn5N0To4mDD22/qdOq+veo1cSISLgQ==", - "license": "MIT" - }, "node_modules/is-negative-zero": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.3.tgz", "integrity": "sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==", + "dev": true, "license": "MIT", "engines": { "node": ">= 0.4" @@ -15638,10 +12229,22 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/is-network-error": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/is-network-error/-/is-network-error-1.3.0.tgz", + "integrity": "sha512-6oIwpsgRfnDiyEDLMay/GqCl3HoAtH5+RUKW29gYkL0QA+ipzpDLA16yQs7/RHCSu+BwgbJaOUqa4A99qNVQVw==", + "license": "MIT", + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/is-npm": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-6.0.0.tgz", - "integrity": "sha512-JEjxbSmtPSt1c8XTkVrlujcXdKV1/tvuQ7GwKcAlyiVLeYFQ2VHat8xfrDJsIkhCdF/tZ7CiIR3sy141c6+gPQ==", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-6.1.0.tgz", + "integrity": "sha512-O2z4/kNgyjhQwVR1Wpkbfc19JIhggF97NZNCpWTnjH7kVcZMUrnut9XSN7txI7VdyIYk5ZatOq3zvSuWpU8hoA==", "license": "MIT", "engines": { "node": "^12.20.0 || ^14.13.1 || >=16.0.0" @@ -15651,21 +12254,19 @@ } }, "node_modules/is-number": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz", - "integrity": "sha512-QUzH43Gfb9+5yckcrSA0VBDwEtDUchrk4F6tfJZQuNzDJbEDB9cZNzSfXGQ1jqmdDY/kl41lUOWM9syA8z8jlg==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", "license": "MIT", - "dependencies": { - "kind-of": "^3.0.2" - }, "engines": { - "node": ">=0.10.0" + "node": ">=0.12.0" } }, "node_modules/is-number-object": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.1.1.tgz", "integrity": "sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==", + "dev": true, "license": "MIT", "dependencies": { "call-bound": "^1.0.3", @@ -15678,18 +12279,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-number/node_modules/kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", - "license": "MIT", - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/is-obj": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", @@ -15699,15 +12288,6 @@ "node": ">=0.10.0" } }, - "node_modules/is-object": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-object/-/is-object-1.0.2.tgz", - "integrity": "sha512-2rRIahhZr2UWb45fIOuvZGpFtz0TyOZLf32KxBbSoUCeZR495zCKlWUKKUByk3geS2eAs7ZAABt0Y/Rx0GiQGA==", - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/is-path-inside": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", @@ -15718,12 +12298,15 @@ } }, "node_modules/is-plain-obj": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", - "integrity": "sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz", + "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==", "license": "MIT", "engines": { - "node": ">=0.10.0" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/is-plain-object": { @@ -15738,19 +12321,11 @@ "node": ">=0.10.0" } }, - "node_modules/is-png": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-png/-/is-png-1.1.0.tgz", - "integrity": "sha512-23Rmps8UEx3Bzqr0JqAtQo0tYP6sDfIfMt1rL9rzlla/zbteftI9LSJoqsIoGgL06sJboDGdVns4RTakAW/WTw==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/is-regex": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.2.1.tgz", "integrity": "sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==", + "dev": true, "license": "MIT", "dependencies": { "call-bound": "^1.0.2", @@ -15771,37 +12346,14 @@ "integrity": "sha512-7zjFAPO4/gwyQAAgRRmqeEeyIICSdmCqa3tsVHMdBzaXXRiqopZL4Cyghg/XulGWrtABTpbnYYzzIRffLkP4oA==", "license": "MIT", "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-resolvable": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-resolvable/-/is-resolvable-1.1.0.tgz", - "integrity": "sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg==", - "license": "ISC" - }, - "node_modules/is-retry-allowed": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.2.0.tgz", - "integrity": "sha512-RUbUeKwvm3XG2VYamhJL1xFktgjvPzL0Hq8C+6yrWIswDy3BIXGqCxhxkc30N9jqK311gVU137K8Ei55/zVJRg==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-root": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-root/-/is-root-2.1.0.tgz", - "integrity": "sha512-AGOriNp96vNBd3HtU+RzFEc75FfR5ymiYv8E553I71SCeXBiMsVDUtdio1OEFvrPyLIQ9tVR5RxXIFe5PUFjMg==", - "license": "MIT", - "engines": { - "node": ">=6" + "node": ">=0.10.0" } }, "node_modules/is-set": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.3.tgz", "integrity": "sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==", + "dev": true, "license": "MIT", "engines": { "node": ">= 0.4" @@ -15814,6 +12366,7 @@ "version": "1.0.4", "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.4.tgz", "integrity": "sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==", + "dev": true, "license": "MIT", "dependencies": { "call-bound": "^1.0.3" @@ -15841,6 +12394,7 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.1.1.tgz", "integrity": "sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==", + "dev": true, "license": "MIT", "dependencies": { "call-bound": "^1.0.3", @@ -15853,31 +12407,11 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-subset": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-subset/-/is-subset-0.1.1.tgz", - "integrity": "sha512-6Ybun0IkarhmEqxXCNw/C0bna6Zb/TkfUX9UbwJtK6ObwAVCxmAP308WWTHviM/zAqXk05cdhYsUsZeGQh99iw==", - "license": "MIT" - }, - "node_modules/is-svg": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/is-svg/-/is-svg-4.4.0.tgz", - "integrity": "sha512-v+AgVwiK5DsGtT9ng+m4mClp6zDAmwrW8nZi6Gg15qzvBnRWWdfWA1TGaXyCDnWq5g5asofIgMVl3PjKxvk1ug==", - "license": "MIT", - "dependencies": { - "fast-xml-parser": "^4.1.3" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/is-symbol": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.1.1.tgz", "integrity": "sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==", + "dev": true, "license": "MIT", "dependencies": { "call-bound": "^1.0.2", @@ -15895,6 +12429,7 @@ "version": "1.1.15", "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.15.tgz", "integrity": "sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==", + "dev": true, "license": "MIT", "dependencies": { "which-typed-array": "^1.1.16" @@ -15912,22 +12447,11 @@ "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==", "license": "MIT" }, - "node_modules/is-url": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/is-url/-/is-url-1.2.4.tgz", - "integrity": "sha512-ITvGim8FhRiYe4IQ5uHSkj7pVaPDrCTkNd3yq3cV7iZAcJdHTUMPMEHcqSOy9xZ9qFenQCvi+2wjH9a1nXqHww==", - "license": "MIT" - }, - "node_modules/is-utf8": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", - "integrity": "sha512-rMYPYvCzsXywIsldgLaSoPlw5PfoB/ssr7hY4pLfcodrA5M/eArza1a9VmTiNIBNMjOGr1Ow9mTyU2o69U6U9Q==", - "license": "MIT" - }, "node_modules/is-weakmap": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.2.tgz", "integrity": "sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==", + "dev": true, "license": "MIT", "engines": { "node": ">= 0.4" @@ -15940,6 +12464,7 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.1.1.tgz", "integrity": "sha512-6i9mGWSlqzNMEqpCp93KwRS1uUOodk2OJ6b+sq7ZPDSy2WuI5NFIxp/254TytR8ftefexkWn5xNiHUNpPOfSew==", + "dev": true, "license": "MIT", "dependencies": { "call-bound": "^1.0.3" @@ -15955,6 +12480,7 @@ "version": "2.0.4", "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.4.tgz", "integrity": "sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==", + "dev": true, "license": "MIT", "dependencies": { "call-bound": "^1.0.3", @@ -15967,15 +12493,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-windows": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", - "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/is-wsl": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", @@ -15997,24 +12514,10 @@ "node": ">=12" } }, - "node_modules/is2": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/is2/-/is2-2.0.9.tgz", - "integrity": "sha512-rZkHeBn9Zzq52sd9IUIV3a5mfwBY+o2HePMh0wkGBM4z4qjvy2GwVxQ6nNXSfw6MmVP6gf1QIlWjiOavhM3x5g==", - "license": "MIT", - "dependencies": { - "deep-is": "^0.1.3", - "ip-regex": "^4.1.0", - "is-url": "^1.2.4" - }, - "engines": { - "node": ">=v0.10.0" - } - }, "node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==", "license": "MIT" }, "node_modules/isexe": { @@ -16032,23 +12535,38 @@ "node": ">=0.10.0" } }, - "node_modules/isstream": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g==", - "license": "MIT" - }, - "node_modules/isurl": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isurl/-/isurl-1.0.0.tgz", - "integrity": "sha512-1P/yWsxPlDtn7QeRD+ULKQPaIaN6yF368GZ2vDfv0AL0NwpStafjWCDDdn0k8wgFMWpVAqG7oJhxHnlud42i9w==", + "node_modules/iterator.prototype": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/iterator.prototype/-/iterator.prototype-1.1.5.tgz", + "integrity": "sha512-H0dkQoCa3b2VEeKQBOxFph+JAbcrQdE7KC0UkqwpLmv2EC4P41QXP+rqo9wYodACiG5/WM5s9oDApTU8utwj9g==", + "dev": true, "license": "MIT", "dependencies": { - "has-to-string-tag-x": "^1.2.0", - "is-object": "^1.0.1" + "define-data-property": "^1.1.4", + "es-object-atoms": "^1.0.0", + "get-intrinsic": "^1.2.6", + "get-proto": "^1.0.0", + "has-symbols": "^1.1.0", + "set-function-name": "^2.0.2" }, "engines": { - "node": ">= 4" + "node": ">= 0.4" + } + }, + "node_modules/jackspeak": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-4.2.3.tgz", + "integrity": "sha512-ykkVRwrYvFm1nb2AJfKKYPr0emF6IiXDYUaFx4Zn9ZuIH7MrzEZ3sD5RlqGXNRpHtvUHJyOnCEFxOlNDtGo7wg==", + "dev": true, + "license": "BlueOak-1.0.0", + "dependencies": { + "@isaacs/cliui": "^9.0.0" + }, + "engines": { + "node": "20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, "node_modules/javascript-stringify": { @@ -16127,24 +12645,6 @@ "@sideway/pinpoint": "^2.0.0" } }, - "node_modules/jpegtran-bin": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jpegtran-bin/-/jpegtran-bin-4.0.0.tgz", - "integrity": "sha512-2cRl1ism+wJUoYAYFt6O/rLBfpXNWG2dUWbgcEkTt5WGMnqI46eEro8T4C5zGROxKRqyKpCBSdHPvt5UYCtxaQ==", - "hasInstallScript": true, - "license": "MIT", - "dependencies": { - "bin-build": "^3.0.0", - "bin-wrapper": "^4.0.0", - "logalot": "^2.0.0" - }, - "bin": { - "jpegtran": "cli.js" - }, - "engines": { - "node": ">=6" - } - }, "node_modules/js-tokens": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", @@ -16152,9 +12652,9 @@ "license": "MIT" }, "node_modules/js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.1.tgz", + "integrity": "sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==", "license": "MIT", "dependencies": { "argparse": "^2.0.1" @@ -16163,12 +12663,6 @@ "js-yaml": "bin/js-yaml.js" } }, - "node_modules/jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==", - "license": "MIT" - }, "node_modules/jsesc": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", @@ -16182,15 +12676,9 @@ } }, "node_modules/json-buffer": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", - "integrity": "sha512-CuUqjv0FUZIdXkHPI8MezCnFCdaTAacej1TZYulLoAg1h/PhwkdXFN4V/gzY4g+fMBCOV2xF+rp7t2XD2ns/NQ==", - "license": "MIT" - }, - "node_modules/json-parse-better-errors": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", - "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", "license": "MIT" }, "node_modules/json-parse-even-better-errors": { @@ -16199,30 +12687,25 @@ "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", "license": "MIT" }, - "node_modules/json-schema": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", - "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==", - "license": "(AFL-2.1 OR BSD-3-Clause)" - }, "node_modules/json-schema-traverse": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", "license": "MIT" }, + "node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", + "dev": true, + "license": "MIT" + }, "node_modules/json-stringify-pretty-compact": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/json-stringify-pretty-compact/-/json-stringify-pretty-compact-4.0.0.tgz", "integrity": "sha512-3CNZ2DnrpByG9Nqj6Xo8vqbjT4F6N+tb4Gb28ESAZjYZ5yqvmc56J+/kuIwkaAMOyblTQhUW7PxMkUb8Q36N3Q==", "license": "MIT" }, - "node_modules/json-stringify-safe": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==", - "license": "ISC" - }, "node_modules/json5": { "version": "2.2.3", "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", @@ -16236,15 +12719,16 @@ } }, "node_modules/jsonc-parser": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-2.2.1.tgz", - "integrity": "sha512-o6/yDBYccGvTz1+QFevz6l6OBZ2+fMVu2JZ9CIhzsYRX4mjaK5IyX9eldUdCmga16zlgQxyrj5pt9kzuj2C02w==", + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.3.1.tgz", + "integrity": "sha512-HUgH65KyejrUFPvHFPbqOY0rsFip3Bo5wb4ngvdi1EpCYWUQDC5V+Y7mZws+DLkr4M//zQJoanu1SP+87Dv1oQ==", + "dev": true, "license": "MIT" }, "node_modules/jsonfile": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", - "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.2.0.tgz", + "integrity": "sha512-FGuPw30AdOIUTRMC2OMRtQV+jkVj2cfPqSeWXv1NEAJ1qZ5zb1X6z1mFhbfOB/iy3ssJCD+3KuZ8r8C3uVFlAg==", "license": "MIT", "dependencies": { "universalify": "^2.0.0" @@ -16253,19 +12737,30 @@ "graceful-fs": "^4.1.6" } }, - "node_modules/jsprim": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.2.tgz", - "integrity": "sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==", + "node_modules/jsonpointer": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/jsonpointer/-/jsonpointer-5.0.1.tgz", + "integrity": "sha512-p/nXbhSEcu3pZRdkW1OfJhpsVtW1gd4Wa1fnQc9YLiTfAjn0312eMKimbdIQzuZl9aa9xUGaRlP9T/CJE/ditQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/jsx-ast-utils": { + "version": "3.3.5", + "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.5.tgz", + "integrity": "sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==", + "dev": true, "license": "MIT", "dependencies": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.4.0", - "verror": "1.10.0" + "array-includes": "^3.1.6", + "array.prototype.flat": "^1.3.1", + "object.assign": "^4.1.4", + "object.values": "^1.1.6" }, "engines": { - "node": ">=0.6.0" + "node": ">=4.0" } }, "node_modules/kdbush": { @@ -16275,12 +12770,12 @@ "license": "ISC" }, "node_modules/keyv": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.0.0.tgz", - "integrity": "sha512-eguHnq22OE3uVoSYG0LVWNP+4ppamWr9+zWBe1bsNcovIMy6huUJFPgy4mGwCd/rnl3vOLGW1MTlu4c57CT1xA==", + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", + "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", "license": "MIT", "dependencies": { - "json-buffer": "3.0.0" + "json-buffer": "3.0.1" } }, "node_modules/kind-of": { @@ -16317,46 +12812,285 @@ } }, "node_modules/launch-editor": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/launch-editor/-/launch-editor-2.10.0.tgz", - "integrity": "sha512-D7dBRJo/qcGX9xlvt/6wUYzQxjh5G1RvZPgPv8vi4KRU99DVQL/oW7tnVOCCTm2HGeo3C5HvGE5Yrh6UBoZ0vA==", + "version": "2.12.0", + "resolved": "https://registry.npmjs.org/launch-editor/-/launch-editor-2.12.0.tgz", + "integrity": "sha512-giOHXoOtifjdHqUamwKq6c49GzBdLjvxrd2D+Q4V6uOHopJv7p9VJxikDsQ/CBXZbEITgUqSVHXLTG3VhPP1Dg==", "license": "MIT", "dependencies": { - "picocolors": "^1.0.0", - "shell-quote": "^1.8.1" + "picocolors": "^1.1.1", + "shell-quote": "^1.8.3" } }, - "node_modules/launch-editor/node_modules/shell-quote": { - "version": "1.8.3", - "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.3.tgz", - "integrity": "sha512-ObmnIF4hXNg1BqhnHmgbDETF8dLPCggZWBjkQfhZpbszZnYur5DUljTcCHii5LC3J5E0yeO/1LIMyH+UvHQgyw==", + "node_modules/leven": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", + "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", "license": "MIT", "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=6" } }, - "node_modules/lazy-cache": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-2.0.2.tgz", - "integrity": "sha512-7vp2Acd2+Kz4XkzxGxaB1FWOi8KjWIWsgdfD5MCb86DWvlLqhRPM+d6Pro3iNEL5VT9mstz5hKAlcd+QR6H3aA==", + "node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "dev": true, "license": "MIT", "dependencies": { - "set-getter": "^0.1.0" + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" }, "engines": { - "node": ">=0.10.0" + "node": ">= 0.8.0" + } + }, + "node_modules/lightningcss": { + "version": "1.31.1", + "resolved": "https://registry.npmjs.org/lightningcss/-/lightningcss-1.31.1.tgz", + "integrity": "sha512-l51N2r93WmGUye3WuFoN5k10zyvrVs0qfKBhyC5ogUQ6Ew6JUSswh78mbSO+IU3nTWsyOArqPCcShdQSadghBQ==", + "license": "MPL-2.0", + "dependencies": { + "detect-libc": "^2.0.3" + }, + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + }, + "optionalDependencies": { + "lightningcss-android-arm64": "1.31.1", + "lightningcss-darwin-arm64": "1.31.1", + "lightningcss-darwin-x64": "1.31.1", + "lightningcss-freebsd-x64": "1.31.1", + "lightningcss-linux-arm-gnueabihf": "1.31.1", + "lightningcss-linux-arm64-gnu": "1.31.1", + "lightningcss-linux-arm64-musl": "1.31.1", + "lightningcss-linux-x64-gnu": "1.31.1", + "lightningcss-linux-x64-musl": "1.31.1", + "lightningcss-win32-arm64-msvc": "1.31.1", + "lightningcss-win32-x64-msvc": "1.31.1" + } + }, + "node_modules/lightningcss-android-arm64": { + "version": "1.31.1", + "resolved": "https://registry.npmjs.org/lightningcss-android-arm64/-/lightningcss-android-arm64-1.31.1.tgz", + "integrity": "sha512-HXJF3x8w9nQ4jbXRiNppBCqeZPIAfUo8zE/kOEGbW5NZvGc/K7nMxbhIr+YlFlHW5mpbg/YFPdbnCh1wAXCKFg==", + "cpu": [ + "arm64" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-darwin-arm64": { + "version": "1.31.1", + "resolved": "https://registry.npmjs.org/lightningcss-darwin-arm64/-/lightningcss-darwin-arm64-1.31.1.tgz", + "integrity": "sha512-02uTEqf3vIfNMq3h/z2cJfcOXnQ0GRwQrkmPafhueLb2h7mqEidiCzkE4gBMEH65abHRiQvhdcQ+aP0D0g67sg==", + "cpu": [ + "arm64" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-darwin-x64": { + "version": "1.31.1", + "resolved": "https://registry.npmjs.org/lightningcss-darwin-x64/-/lightningcss-darwin-x64-1.31.1.tgz", + "integrity": "sha512-1ObhyoCY+tGxtsz1lSx5NXCj3nirk0Y0kB/g8B8DT+sSx4G9djitg9ejFnjb3gJNWo7qXH4DIy2SUHvpoFwfTA==", + "cpu": [ + "x64" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-freebsd-x64": { + "version": "1.31.1", + "resolved": "https://registry.npmjs.org/lightningcss-freebsd-x64/-/lightningcss-freebsd-x64-1.31.1.tgz", + "integrity": "sha512-1RINmQKAItO6ISxYgPwszQE1BrsVU5aB45ho6O42mu96UiZBxEXsuQ7cJW4zs4CEodPUioj/QrXW1r9pLUM74A==", + "cpu": [ + "x64" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-arm-gnueabihf": { + "version": "1.31.1", + "resolved": "https://registry.npmjs.org/lightningcss-linux-arm-gnueabihf/-/lightningcss-linux-arm-gnueabihf-1.31.1.tgz", + "integrity": "sha512-OOCm2//MZJ87CdDK62rZIu+aw9gBv4azMJuA8/KB74wmfS3lnC4yoPHm0uXZ/dvNNHmnZnB8XLAZzObeG0nS1g==", + "cpu": [ + "arm" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-arm64-gnu": { + "version": "1.31.1", + "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-gnu/-/lightningcss-linux-arm64-gnu-1.31.1.tgz", + "integrity": "sha512-WKyLWztD71rTnou4xAD5kQT+982wvca7E6QoLpoawZ1gP9JM0GJj4Tp5jMUh9B3AitHbRZ2/H3W5xQmdEOUlLg==", + "cpu": [ + "arm64" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-arm64-musl": { + "version": "1.31.1", + "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-musl/-/lightningcss-linux-arm64-musl-1.31.1.tgz", + "integrity": "sha512-mVZ7Pg2zIbe3XlNbZJdjs86YViQFoJSpc41CbVmKBPiGmC4YrfeOyz65ms2qpAobVd7WQsbW4PdsSJEMymyIMg==", + "cpu": [ + "arm64" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-x64-gnu": { + "version": "1.31.1", + "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-gnu/-/lightningcss-linux-x64-gnu-1.31.1.tgz", + "integrity": "sha512-xGlFWRMl+0KvUhgySdIaReQdB4FNudfUTARn7q0hh/V67PVGCs3ADFjw+6++kG1RNd0zdGRlEKa+T13/tQjPMA==", + "cpu": [ + "x64" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-x64-musl": { + "version": "1.31.1", + "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-musl/-/lightningcss-linux-x64-musl-1.31.1.tgz", + "integrity": "sha512-eowF8PrKHw9LpoZii5tdZwnBcYDxRw2rRCyvAXLi34iyeYfqCQNA9rmUM0ce62NlPhCvof1+9ivRaTY6pSKDaA==", + "cpu": [ + "x64" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-win32-arm64-msvc": { + "version": "1.31.1", + "resolved": "https://registry.npmjs.org/lightningcss-win32-arm64-msvc/-/lightningcss-win32-arm64-msvc-1.31.1.tgz", + "integrity": "sha512-aJReEbSEQzx1uBlQizAOBSjcmr9dCdL3XuC/6HLXAxmtErsj2ICo5yYggg1qOODQMtnjNQv2UHb9NpOuFtYe4w==", + "cpu": [ + "arm64" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" } }, - "node_modules/leven": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", - "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", - "license": "MIT", + "node_modules/lightningcss-win32-x64-msvc": { + "version": "1.31.1", + "resolved": "https://registry.npmjs.org/lightningcss-win32-x64-msvc/-/lightningcss-win32-x64-msvc-1.31.1.tgz", + "integrity": "sha512-I9aiFrbd7oYHwlnQDqr1Roz+fTz61oDDJX7n9tYF9FJymH1cIN1DtKw3iYt6b8WZgEjoNwVSncwF4wx/ZedMhw==", + "cpu": [ + "x64" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "win32" + ], "engines": { - "node": ">=6" + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" } }, "node_modules/lilconfig": { @@ -16377,77 +13111,27 @@ "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", "license": "MIT" }, - "node_modules/list-item": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/list-item/-/list-item-1.1.1.tgz", - "integrity": "sha512-S3D0WZ4J6hyM8o5SNKWaMYB1ALSacPZ2nHGEuCjmHZ+dc03gFeNZoNDcqfcnO4vDhTZmNrqrpYZCdXsRh22bzw==", - "license": "MIT", - "dependencies": { - "expand-range": "^1.8.1", - "extend-shallow": "^2.0.1", - "is-number": "^2.1.0", - "repeat-string": "^1.5.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/listenercount": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/listenercount/-/listenercount-1.0.1.tgz", - "integrity": "sha512-3mk/Zag0+IJxeDrxSgaDPy4zZ3w05PRZeJNnlWhzFz5OkX49J4krc+A8X2d2M69vGMBEX0uyl8M+W+8gH+kBqQ==", - "license": "ISC" - }, - "node_modules/livereload-js": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/livereload-js/-/livereload-js-2.4.0.tgz", - "integrity": "sha512-XPQH8Z2GDP/Hwz2PCDrh2mth4yFejwA1OZ/81Ti3LgKyhDcEjsSsqFWZojHG0va/duGd+WyosY7eXLDoOyqcPw==", - "license": "MIT" - }, - "node_modules/load-json-file": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", - "integrity": "sha512-cy7ZdNRXdablkXYNI049pthVeXFurRyb9+hA/dZzerZ0pGTx42z+y+ssxBaVV2l70t1muq5IdKhn4UtcoGUY9A==", - "license": "MIT", - "dependencies": { - "graceful-fs": "^4.1.2", - "parse-json": "^2.2.0", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0", - "strip-bom": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/load-json-file/node_modules/parse-json": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", - "integrity": "sha512-QR/GGaKCkhwk1ePQNYDRKYZ3mwU9ypsKhB0XyFnLQdomyEqk3e8wpW3V5Jp88zbxK4n5ST1nqo+g9juTpownhQ==", + "node_modules/linkify-it": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-5.0.0.tgz", + "integrity": "sha512-5aHCbzQRADcdP+ATqnDuhhJ/MRIqDkZX5pyjFHRRysS8vZ5AbqGEoFIb6pYHPZ+L/OC2Lc+xT8uHVVR5CAK/wQ==", + "dev": true, "license": "MIT", "dependencies": { - "error-ex": "^1.2.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/load-json-file/node_modules/pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" + "uc.micro": "^2.0.0" } }, "node_modules/loader-runner": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", - "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.1.tgz", + "integrity": "sha512-IWqP2SCPhyVFTBtRcgMHdzlf9ul25NwaFx4wCEH/KjAXuuHY4yNjvPXsBokp8jCB936PyWRaPKUNh8NvylLp2Q==", "license": "MIT", "engines": { "node": ">=6.11.5" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" } }, "node_modules/loader-utils": { @@ -16465,36 +13149,25 @@ } }, "node_modules/locate-path": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-7.2.0.tgz", - "integrity": "sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, "license": "MIT", "dependencies": { - "p-locate": "^6.0.0" + "p-locate": "^5.0.0" }, "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + "node": ">=10" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", - "license": "MIT" - }, - "node_modules/lodash._reinterpolate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz", - "integrity": "sha512-xYHt68QRoYGjeeM/XOE1uJtvXQAgvszfBhjV4yvsQH0u2i9I6cI6c6/eG4Hh3UAOVn0y/xAXwmTzEay49Q//HA==", - "license": "MIT" - }, - "node_modules/lodash.chunk": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/lodash.chunk/-/lodash.chunk-4.2.0.tgz", - "integrity": "sha512-ZzydJKfUHJwHa+hF5X66zLFCBrWn5GeF28OHEr4WVWtNDXlQ/IjWKPBiikqKo2ne0+v6JgCgJ0GzJp8k8bHC7w==", + "version": "4.17.23", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.23.tgz", + "integrity": "sha512-LgVTMpQtIopCi79SJeDiP0TfWi5CNEc/L/aRdTh3yIvmZXTnheWpKjSZhnvMl8iXbC1tFg9gdHHDMLoV7CnG+w==", "license": "MIT" }, "node_modules/lodash.debounce": { @@ -16503,91 +13176,25 @@ "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", "license": "MIT" }, - "node_modules/lodash.escape": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/lodash.escape/-/lodash.escape-4.0.1.tgz", - "integrity": "sha512-nXEOnb/jK9g0DYMr1/Xvq6l5xMD7GDG55+GSYIYmS0G4tBk/hURD4JR9WCavs04t33WmJx9kCyp9vJ+mr4BOUw==", - "license": "MIT" - }, - "node_modules/lodash.flattendeep": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz", - "integrity": "sha512-uHaJFihxmJcEX3kT4I23ABqKKalJ/zDrDg0lsFtc1h+3uw49SIJ5beyhx5ExVRti3AvKoOJngIj7xz3oylPdWQ==", - "license": "MIT" - }, - "node_modules/lodash.isequal": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", - "integrity": "sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ==", - "deprecated": "This package is deprecated. Use require('node:util').isDeepStrictEqual instead.", - "license": "MIT" - }, "node_modules/lodash.memoize": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", "integrity": "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==", "license": "MIT" }, - "node_modules/lodash.padstart": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/lodash.padstart/-/lodash.padstart-4.6.1.tgz", - "integrity": "sha512-sW73O6S8+Tg66eY56DBk85aQzzUJDtpoXFBgELMd5P/SotAguo+1kYO6RuYgXxA4HJH3LFTFPASX6ET6bjfriw==", - "license": "MIT" - }, - "node_modules/lodash.sortby": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz", - "integrity": "sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA==", + "node_modules/lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true, "license": "MIT" }, - "node_modules/lodash.template": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.template/-/lodash.template-4.5.0.tgz", - "integrity": "sha512-84vYFxIkmidUiFxidA/KjjH9pAycqW+h980j7Fuz5qxRtO9pgB7MDFTdys1N7A5mcucRiDyEq4fusljItR1T/A==", - "deprecated": "This package is deprecated. Use https://socket.dev/npm/package/eta instead.", - "license": "MIT", - "dependencies": { - "lodash._reinterpolate": "^3.0.0", - "lodash.templatesettings": "^4.0.0" - } - }, - "node_modules/lodash.templatesettings": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/lodash.templatesettings/-/lodash.templatesettings-4.2.0.tgz", - "integrity": "sha512-stgLz+i3Aa9mZgnjr/O+v9ruKZsPsndy7qPZOchbqk2cnTU1ZaldKK+v7m54WoKIyxiuMZTKT2H81F8BeAc3ZQ==", - "license": "MIT", - "dependencies": { - "lodash._reinterpolate": "^3.0.0" - } - }, "node_modules/lodash.uniq": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", "integrity": "sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==", "license": "MIT" }, - "node_modules/logalot": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/logalot/-/logalot-2.1.0.tgz", - "integrity": "sha512-Ah4CgdSRfeCJagxQhcVNMi9BfGYyEKLa6d7OA6xSbld/Hg3Cf2QiOa1mDpmG7Ve8LOH6DN3mdttzjQAvWTyVkw==", - "license": "MIT", - "dependencies": { - "figures": "^1.3.5", - "squeak": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/longest": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz", - "integrity": "sha512-k+yt5n3l48JU4k8ftnKG6V7u32wyH2NfKzeMto9F/QRE0amxy/LayxwlvjjkZEIzqR+19IrtFO8p5kB9QaYUFg==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/longest-streak": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/longest-streak/-/longest-streak-3.1.0.tgz", @@ -16610,19 +13217,6 @@ "loose-envify": "cli.js" } }, - "node_modules/loud-rejection": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", - "integrity": "sha512-RPNliZOFkqFumDhvYqOaNY4Uz9oJM2K9tC6JWsJJsNdhuONW4LQHRBpb0qf4pJApVffI5N39SwzWZJuEhfd7eQ==", - "license": "MIT", - "dependencies": { - "currently-unhandled": "^0.4.1", - "signal-exit": "^3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/lower-case": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-2.0.2.tgz", @@ -16633,42 +13227,15 @@ } }, "node_modules/lowercase-keys": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", - "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/lpad-align": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/lpad-align/-/lpad-align-1.1.2.tgz", - "integrity": "sha512-MMIcFmmR9zlGZtBcFOows6c2COMekHCIFJz3ew/rRpKZ1wR4mXDPzvcVqLarux8M33X4TPSq2Jdw8WJj0q0KbQ==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-3.0.0.tgz", + "integrity": "sha512-ozCC6gdQ+glXOQsveKD0YsDy8DSQFjDTz4zyzEHNV5+JP5D62LmfDZ6o1cycFx9ouG940M5dE8C8CTewdj2YWQ==", "license": "MIT", - "dependencies": { - "get-stdin": "^4.0.1", - "indent-string": "^2.1.0", - "longest": "^1.0.0", - "meow": "^3.3.0" - }, - "bin": { - "lpad-align": "cli.js" - }, "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/lpad-align/node_modules/indent-string": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz", - "integrity": "sha512-aqwDFWSgSgfRaEwao5lg5KEcVd/2a+D1rvoG7NdilmYz0NwRk6StWpWdz/Hpk34MKPpx7s8XxUqimfcQK6gGlg==", - "license": "MIT", - "dependencies": { - "repeating": "^2.0.0" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" }, - "engines": { - "node": ">=0.10.0" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/lru-cache": { @@ -16680,90 +13247,34 @@ "yallist": "^3.0.2" } }, - "node_modules/make-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", - "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", - "license": "MIT", - "dependencies": { - "pify": "^4.0.1", - "semver": "^5.6.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/make-dir/node_modules/semver": { - "version": "5.7.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", - "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", - "license": "ISC", - "bin": { - "semver": "bin/semver" - } - }, - "node_modules/map-cache": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", - "integrity": "sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/map-obj": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", - "integrity": "sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/map-visit": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", - "integrity": "sha512-4y7uGv8bd2WdM9vpQsiQNo41Ln1NvhvDRuVt0k2JZQ+ezN2uaQes7lZeZ+QQUHOLQAtDaBJ+7wCbi+ab/KFs+w==", - "license": "MIT", - "dependencies": { - "object-visit": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/maplibre-gl": { - "version": "5.6.1", - "resolved": "https://registry.npmjs.org/maplibre-gl/-/maplibre-gl-5.6.1.tgz", - "integrity": "sha512-TTSfoTaF7RqKUR9wR5qDxCHH2J1XfZ1E85luiLOx0h8r50T/LnwAwwfV0WVNh9o8dA7rwt57Ucivf1emyeukXg==", + "version": "5.17.0", + "resolved": "https://registry.npmjs.org/maplibre-gl/-/maplibre-gl-5.17.0.tgz", + "integrity": "sha512-gwS6NpXBfWD406dtT5YfEpl2hmpMm+wcPqf04UAez/TxY1OBjiMdK2ZoMGcNIlGHelKc4+Uet6zhDdDEnlJVHA==", "license": "BSD-3-Clause", "dependencies": { "@mapbox/geojson-rewind": "^0.5.2", "@mapbox/jsonlint-lines-primitives": "^2.0.2", - "@mapbox/point-geometry": "^0.1.0", - "@mapbox/tiny-sdf": "^2.0.6", + "@mapbox/point-geometry": "^1.1.0", + "@mapbox/tiny-sdf": "^2.0.7", "@mapbox/unitbezier": "^0.0.1", - "@mapbox/vector-tile": "^1.3.1", + "@mapbox/vector-tile": "^2.0.4", "@mapbox/whoots-js": "^3.1.0", - "@maplibre/maplibre-gl-style-spec": "^23.3.0", + "@maplibre/geojson-vt": "^5.0.4", + "@maplibre/maplibre-gl-style-spec": "^24.4.1", + "@maplibre/mlt": "^1.1.2", + "@maplibre/vt-pbf": "^4.2.1", "@types/geojson": "^7946.0.16", - "@types/geojson-vt": "3.2.5", - "@types/mapbox__point-geometry": "^0.1.4", - "@types/mapbox__vector-tile": "^1.3.4", - "@types/pbf": "^3.0.5", "@types/supercluster": "^7.1.3", - "earcut": "^3.0.1", - "geojson-vt": "^4.0.2", - "gl-matrix": "^3.4.3", - "global-prefix": "^4.0.0", + "earcut": "^3.0.2", + "gl-matrix": "^3.4.4", "kdbush": "^4.0.2", "murmurhash-js": "^1.0.0", - "pbf": "^3.3.0", - "potpack": "^2.0.0", + "pbf": "^4.0.1", + "potpack": "^2.1.0", "quickselect": "^3.0.0", "supercluster": "^8.0.1", - "tinyqueue": "^3.0.0", - "vt-pbf": "^3.1.3" + "tinyqueue": "^3.0.0" }, "engines": { "node": ">=16.14.0", @@ -16785,13 +13296,22 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/markdown-link": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/markdown-link/-/markdown-link-0.1.1.tgz", - "integrity": "sha512-TurLymbyLyo+kAUUAV9ggR9EPcDjP/ctlv9QAFiqUH7c+t6FlsbivPo9OKTU8xdOx9oNd2drW/Fi5RRElQbUqA==", + "node_modules/markdown-it": { + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-14.1.0.tgz", + "integrity": "sha512-a54IwgWPaeBCAAsv13YgmALOF1elABB08FxO9i+r4VFk5Vl4pKokRPeX8u5TCgSsPi6ec1otfLjdOpVcgbpshg==", + "dev": true, "license": "MIT", - "engines": { - "node": ">=0.10.0" + "dependencies": { + "argparse": "^2.0.1", + "entities": "^4.4.0", + "linkify-it": "^5.0.0", + "mdurl": "^2.0.0", + "punycode.js": "^2.3.1", + "uc.micro": "^2.1.0" + }, + "bin": { + "markdown-it": "bin/markdown-it.mjs" } }, "node_modules/markdown-table": { @@ -16804,93 +13324,95 @@ "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/markdown-toc": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/markdown-toc/-/markdown-toc-1.2.0.tgz", - "integrity": "sha512-eOsq7EGd3asV0oBfmyqngeEIhrbkc7XVP63OwcJBIhH2EpG2PzFcbZdhy1jutXSlRBBVMNXHvMtSr5LAxSUvUg==", + "node_modules/markdownlint": { + "version": "0.36.1", + "resolved": "https://registry.npmjs.org/markdownlint/-/markdownlint-0.36.1.tgz", + "integrity": "sha512-s73fU2CQN7WCgjhaQUQ8wYESQNzGRNOKDd+3xgVqu8kuTEhmwepd/mxOv1LR2oV046ONrTLBFsM7IoKWNvmy5g==", + "dev": true, "license": "MIT", "dependencies": { - "concat-stream": "^1.5.2", - "diacritics-map": "^0.1.0", - "gray-matter": "^2.1.0", - "lazy-cache": "^2.0.2", - "list-item": "^1.1.1", - "markdown-link": "^0.1.1", - "minimist": "^1.2.0", - "mixin-deep": "^1.1.3", - "object.pick": "^1.2.0", - "remarkable": "^1.7.1", - "repeat-string": "^1.6.1", - "strip-color": "^0.1.0" - }, - "bin": { - "markdown-toc": "cli.js" + "markdown-it": "14.1.0", + "markdownlint-micromark": "0.1.12" }, "engines": { - "node": ">=0.10.0" + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/DavidAnson" } }, - "node_modules/markdown-toc/node_modules/argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "node_modules/markdownlint-cli": { + "version": "0.43.0", + "resolved": "https://registry.npmjs.org/markdownlint-cli/-/markdownlint-cli-0.43.0.tgz", + "integrity": "sha512-6vwurKK4B21eyYzwgX6ph13cZS7hE6LZfcS8QyD722CyxVD2RtAvbZK2p7k+FZbbKORulEuwl+hJaEq1l6/hoQ==", + "dev": true, "license": "MIT", "dependencies": { - "sprintf-js": "~1.0.2" + "commander": "~12.1.0", + "glob": "~11.0.0", + "ignore": "~6.0.2", + "js-yaml": "^4.1.0", + "jsonc-parser": "~3.3.1", + "jsonpointer": "5.0.1", + "markdownlint": "~0.36.1", + "minimatch": "~10.0.1", + "run-con": "~1.3.2", + "smol-toml": "~1.3.1" + }, + "bin": { + "markdownlint": "markdownlint.js" + }, + "engines": { + "node": ">=18" } }, - "node_modules/markdown-toc/node_modules/autolinker": { - "version": "0.28.1", - "resolved": "https://registry.npmjs.org/autolinker/-/autolinker-0.28.1.tgz", - "integrity": "sha512-zQAFO1Dlsn69eXaO6+7YZc+v84aquQKbwpzCE3L0stj56ERn9hutFxPopViLjo9G+rWwjozRhgS5KJ25Xy19cQ==", + "node_modules/markdownlint-cli/node_modules/commander": { + "version": "12.1.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-12.1.0.tgz", + "integrity": "sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA==", + "dev": true, "license": "MIT", - "dependencies": { - "gulp-header": "^1.7.1" + "engines": { + "node": ">=18" } }, - "node_modules/markdown-toc/node_modules/gray-matter": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/gray-matter/-/gray-matter-2.1.1.tgz", - "integrity": "sha512-vbmvP1Fe/fxuT2QuLVcqb2BfK7upGhhbLIt9/owWEvPYrZZEkelLcq2HqzxosV+PQ67dUFLaAeNpH7C4hhICAA==", + "node_modules/markdownlint-cli/node_modules/ignore": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-6.0.2.tgz", + "integrity": "sha512-InwqeHHN2XpumIkMvpl/DCJVrAHgCsG5+cn1XlnLWGwtZBm8QJfSusItfrwx81CTp5agNZqpKU2J/ccC5nGT4A==", + "dev": true, "license": "MIT", - "dependencies": { - "ansi-red": "^0.1.1", - "coffee-script": "^1.12.4", - "extend-shallow": "^2.0.1", - "js-yaml": "^3.8.1", - "toml": "^2.3.2" - }, "engines": { - "node": ">=0.10.0" + "node": ">= 4" } }, - "node_modules/markdown-toc/node_modules/js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "license": "MIT", + "node_modules/markdownlint-cli/node_modules/minimatch": { + "version": "10.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.0.3.tgz", + "integrity": "sha512-IPZ167aShDZZUMdRk66cyQAW3qr0WzbHkPdMYa8bzZhlHhO3jALbKdxcaak7W9FfT2rZNpQuUu4Od7ILEpXSaw==", + "dev": true, + "license": "ISC", "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" + "@isaacs/brace-expansion": "^5.0.0" }, - "bin": { - "js-yaml": "bin/js-yaml.js" + "engines": { + "node": "20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/markdown-toc/node_modules/remarkable": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/remarkable/-/remarkable-1.7.4.tgz", - "integrity": "sha512-e6NKUXgX95whv7IgddywbeN/ItCkWbISmc2DiqHJb0wTrqZIexqdco5b8Z3XZoo/48IdNVKM9ZCvTPJ4F5uvhg==", + "node_modules/markdownlint-micromark": { + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/markdownlint-micromark/-/markdownlint-micromark-0.1.12.tgz", + "integrity": "sha512-RlB6EwMGgc0sxcIhOQ2+aq7Zw1V2fBnzbXKGgYK/mVWdT7cz34fteKSwfYeo4rL6+L/q2tyC9QtD/PgZbkdyJQ==", + "dev": true, "license": "MIT", - "dependencies": { - "argparse": "^1.0.10", - "autolinker": "~0.28.0" - }, - "bin": { - "remarkable": "bin/remarkable.js" - }, "engines": { - "node": ">= 0.10.0" + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/DavidAnson" } }, "node_modules/math-intrinsics": { @@ -16902,12 +13424,6 @@ "node": ">= 0.4" } }, - "node_modules/math-random": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/math-random/-/math-random-1.0.4.tgz", - "integrity": "sha512-rUxjysqif/BZQH2yhd5Aaq7vXMSx9NdEsQcyA07uEzIvxgI7zIr33gGsh+RU0/XjmQpCW7RsVof1vlkvQVCK5A==", - "license": "MIT" - }, "node_modules/mdast-util-directive": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/mdast-util-directive/-/mdast-util-directive-3.1.0.tgz", @@ -17256,9 +13772,9 @@ } }, "node_modules/mdast-util-to-hast": { - "version": "13.2.0", - "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-13.2.0.tgz", - "integrity": "sha512-QGYKEuUsYT9ykKBCMOEDLsU5JRObWQusAolFMeko/tYPufNkRffBAQjIE+99jbA87xv6FgmjLtwjh9wBWajwAA==", + "version": "13.2.1", + "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-13.2.1.tgz", + "integrity": "sha512-cctsq2wp5vTsLIcaymblUriiTcZd0CwWtCbLvrOzYCDZoWyMNV8sZ7krj09FSnsiJi3WVsHLM4k6Dq/yaPyCXA==", "license": "MIT", "dependencies": { "@types/hast": "^3.0.0", @@ -17316,6 +13832,13 @@ "integrity": "sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA==", "license": "CC0-1.0" }, + "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, + "license": "MIT" + }, "node_modules/media-typer": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", @@ -17326,36 +13849,32 @@ } }, "node_modules/memfs": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/memfs/-/memfs-3.5.3.tgz", - "integrity": "sha512-UERzLsxzllchadvbPs5aolHh65ISpKpM+ccLbOJ8/vvpBKmAWf+la7dXFy7Mr0ySHbdHrFv5kGFCUHHe6GFEmw==", - "license": "Unlicense", + "version": "4.56.10", + "resolved": "https://registry.npmjs.org/memfs/-/memfs-4.56.10.tgz", + "integrity": "sha512-eLvzyrwqLHnLYalJP7YZ3wBe79MXktMdfQbvMrVD80K+NhrIukCVBvgP30zTJYEEDh9hZ/ep9z0KOdD7FSHo7w==", + "license": "Apache-2.0", "dependencies": { - "fs-monkey": "^1.0.4" + "@jsonjoy.com/fs-core": "4.56.10", + "@jsonjoy.com/fs-fsa": "4.56.10", + "@jsonjoy.com/fs-node": "4.56.10", + "@jsonjoy.com/fs-node-builtins": "4.56.10", + "@jsonjoy.com/fs-node-to-fsa": "4.56.10", + "@jsonjoy.com/fs-node-utils": "4.56.10", + "@jsonjoy.com/fs-print": "4.56.10", + "@jsonjoy.com/fs-snapshot": "4.56.10", + "@jsonjoy.com/json-pack": "^1.11.0", + "@jsonjoy.com/util": "^1.9.0", + "glob-to-regex.js": "^1.0.1", + "thingies": "^2.5.0", + "tree-dump": "^1.0.3", + "tslib": "^2.0.0" }, - "engines": { - "node": ">= 4.0.0" - } - }, - "node_modules/meow": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", - "integrity": "sha512-TNdwZs0skRlpPpCUK25StC4VH+tP5GgeY1HQOOGP+lQ2xtdkN2VtT/5tiX9k3IWpkBPV9b3LsAWXn4GGi/PrSA==", - "license": "MIT", - "dependencies": { - "camelcase-keys": "^2.0.0", - "decamelize": "^1.1.2", - "loud-rejection": "^1.0.0", - "map-obj": "^1.0.1", - "minimist": "^1.1.3", - "normalize-package-data": "^2.3.4", - "object-assign": "^4.0.1", - "read-pkg-up": "^1.0.1", - "redent": "^1.0.0", - "trim-newlines": "^1.0.0" + "funding": { + "type": "github", + "url": "https://github.com/sponsors/streamich" }, - "engines": { - "node": ">=0.10.0" + "peerDependencies": { + "tslib": "2" } }, "node_modules/merge-descriptors": { @@ -17391,12 +13910,6 @@ "node": ">= 0.6" } }, - "node_modules/microevent.ts": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/microevent.ts/-/microevent.ts-0.1.1.tgz", - "integrity": "sha512-jo1OfR4TaEwd5HOrt5+tAZ9mqT4jmpNAusXtyfNzqVm9uiSYFZlKM1wYL4oU7azZW/PxQW53wM0S6OR1JHNa2g==", - "license": "MIT" - }, "node_modules/micromark": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/micromark/-/micromark-4.0.2.tgz", @@ -19207,35 +15720,26 @@ } }, "node_modules/mime-db": { - "version": "1.54.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.54.0.tgz", - "integrity": "sha512-aU5EJuIN2WDemCcAp2vFBfp/m4EAhWJnUNSSw0ixs7/kXbd6Pg64EmwJkNdFhB8aWt1sH2CTXrLxo/iAGV3oPQ==", + "version": "1.33.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.33.0.tgz", + "integrity": "sha512-BHJ/EKruNIqJf/QahvxwQZXKygOQ256myeN/Ew+THcAa5q+PjyTTMMeNQC4DZw5AwfvelsUrA6B67NKMqXDbzQ==", "license": "MIT", "engines": { "node": ">= 0.6" } }, "node_modules/mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "version": "2.1.18", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.18.tgz", + "integrity": "sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==", "license": "MIT", "dependencies": { - "mime-db": "1.52.0" + "mime-db": "~1.33.0" }, "engines": { "node": ">= 0.6" } }, - "node_modules/mime-types/node_modules/mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "license": "MIT", - "engines": { - "node": ">= 0.6" - } - }, "node_modules/mimic-fn": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", @@ -19246,18 +15750,21 @@ } }, "node_modules/mimic-response": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", - "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-4.0.0.tgz", + "integrity": "sha512-e5ISH9xMYU0DzrT+jl8q2ze9D6eWBto+I8CNpe+VI+K2J/F/k3PdkdTdz4wvGVH4NTpo+NRYTVIuMQEMMcsLqg==", "license": "MIT", "engines": { - "node": ">=4" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/mini-css-extract-plugin": { - "version": "2.9.2", - "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-2.9.2.tgz", - "integrity": "sha512-GJuACcS//jtq4kCtd5ii/M0SZf7OZRH+BxdqXZHaJfb8TJiVl+NgQRPwiYt2EuqeSkNydn/7vP+bcE27C5mb9w==", + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-2.10.0.tgz", + "integrity": "sha512-540P2c5dYnJlyJxTaSloliZexv8rji6rY8FhQN+WF/82iHQfA23j/xtJx97L+mXOML27EqksSek/g4eK7jaL3g==", "license": "MIT", "dependencies": { "schema-utils": "^4.0.0", @@ -19301,68 +15808,16 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/mixin-deep": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", - "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==", - "license": "MIT", - "dependencies": { - "for-in": "^1.0.2", - "is-extendable": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/mixin-deep/node_modules/is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "license": "MIT", - "dependencies": { - "is-plain-object": "^2.0.4" - }, + "node_modules/minipass": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", + "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", + "dev": true, + "license": "ISC", "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", - "license": "MIT", - "dependencies": { - "minimist": "^1.2.6" - }, - "bin": { - "mkdirp": "bin/cmd.js" - } - }, - "node_modules/monaco-editor": { - "version": "0.52.2", - "resolved": "https://registry.npmjs.org/monaco-editor/-/monaco-editor-0.52.2.tgz", - "integrity": "sha512-GEQWEZmfkOGLdd3XK8ryrfWz3AIP8YymVXiPHEdewrUq7mh0qrKrfHLNCXcbB6sTnMLnOZ3ztSiKcciFUkIJwQ==", - "license": "MIT" - }, - "node_modules/monaco-editor-webpack-plugin": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/monaco-editor-webpack-plugin/-/monaco-editor-webpack-plugin-7.1.0.tgz", - "integrity": "sha512-ZjnGINHN963JQkFqjjcBtn1XBtUATDZBMgNQhDQwd78w2ukRhFXAPNgWuacaQiDZsUr4h1rWv5Mv6eriKuOSzA==", - "license": "MIT", - "dependencies": { - "loader-utils": "^2.0.2" - }, - "peerDependencies": { - "monaco-editor": ">= 0.31.0", - "webpack": "^4.5.0 || 5.x" + "node": ">=16 || 14 >=14.17" } }, - "node_modules/moo": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/moo/-/moo-0.5.2.tgz", - "integrity": "sha512-iSAJLHYKnX41mKcJKjqvnAN9sf0LMDTXDEvFv+ffuRR9a1MIuXLjMNL6EsnDHSkKLTWNqQQ5uo61P4EbU4NU+Q==", - "license": "BSD-3-Clause" - }, "node_modules/mrmime": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/mrmime/-/mrmime-2.0.1.tgz", @@ -19415,85 +15870,17 @@ "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" } }, - "node_modules/nanomatch": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", - "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", - "license": "MIT", - "dependencies": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "fragment-cache": "^0.2.1", - "is-windows": "^1.0.2", - "kind-of": "^6.0.2", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/nanomatch/node_modules/extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", - "license": "MIT", - "dependencies": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/nanomatch/node_modules/is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "license": "MIT", - "dependencies": { - "is-plain-object": "^2.0.4" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/nearley": { - "version": "2.20.1", - "resolved": "https://registry.npmjs.org/nearley/-/nearley-2.20.1.tgz", - "integrity": "sha512-+Mc8UaAebFzgV+KpI5n7DasuuQCHA89dmwm7JXw3TV43ukfNQ9DnBH3Mdb2g/I4Fdxc26pwimBWvjIw0UAILSQ==", - "license": "MIT", - "dependencies": { - "commander": "^2.19.0", - "moo": "^0.5.0", - "railroad-diagrams": "^1.0.0", - "randexp": "0.4.6" - }, - "bin": { - "nearley-railroad": "bin/nearley-railroad.js", - "nearley-test": "bin/nearley-test.js", - "nearley-unparse": "bin/nearley-unparse.js", - "nearleyc": "bin/nearleyc.js" - }, - "funding": { - "type": "individual", - "url": "https://nearley.js.org/#give-to-nearley" - } - }, - "node_modules/nearley/node_modules/commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "dev": true, "license": "MIT" }, "node_modules/negotiator": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", - "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "version": "0.6.4", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.4.tgz", + "integrity": "sha512-myRT3DiWPHqho5PrJaIRyaMv2kgYf0mUVgBNOYMuCH5Ki1yEiQaf/ZJuQ62nvpc44wL5WDbTX7yGJi1Neevw8w==", "license": "MIT", "engines": { "node": ">= 0.6" @@ -19505,12 +15892,6 @@ "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", "license": "MIT" }, - "node_modules/nice-try": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", - "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", - "license": "MIT" - }, "node_modules/no-case": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz", @@ -19536,42 +15917,12 @@ "node": ">=18" } }, - "node_modules/node-forge": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz", - "integrity": "sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==", - "license": "(BSD-3-Clause OR GPL-2.0)", - "engines": { - "node": ">= 6.13.0" - } - }, "node_modules/node-releases": { - "version": "2.0.19", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.19.tgz", - "integrity": "sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==", + "version": "2.0.27", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.27.tgz", + "integrity": "sha512-nmh3lCkYZ3grZvqcCH+fjmQ7X+H0OeZgP40OierEaAptX4XofMh5kwNbWh7lBduUzCcV/8kZ+NDLCwm2iorIlA==", "license": "MIT" }, - "node_modules/normalize-package-data": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", - "license": "BSD-2-Clause", - "dependencies": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" - } - }, - "node_modules/normalize-package-data/node_modules/semver": { - "version": "5.7.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", - "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", - "license": "ISC", - "bin": { - "semver": "bin/semver" - } - }, "node_modules/normalize-path": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", @@ -19581,70 +15932,16 @@ "node": ">=0.10.0" } }, - "node_modules/normalize-range": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", - "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/normalize-url": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-2.0.1.tgz", - "integrity": "sha512-D6MUW4K/VzoJ4rJ01JFKxDrtY1v9wrgzCX5f2qj/lzH1m/lW6MhUZFKerVsnyjOhOsYzI9Kqqak+10l4LvLpMw==", - "license": "MIT", - "dependencies": { - "prepend-http": "^2.0.0", - "query-string": "^5.0.1", - "sort-keys": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/normalize-url/node_modules/prepend-http": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", - "integrity": "sha512-ravE6m9Atw9Z/jjttRUZ+clIXogdghyZAuWJ3qEzjT+jI/dL1ifAqhZeC5VHzQp1MSt1+jxKkFNemj/iO7tVUA==", - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/normalize-url/node_modules/sort-keys": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-2.0.0.tgz", - "integrity": "sha512-/dPCrG1s3ePpWm6yBbxZq5Be1dXGLyLn9Z791chDC3NFrpkVbWGzkBwPN1knaciexFXgRJ7hzdnwZ4stHSDmjg==", + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-8.1.1.tgz", + "integrity": "sha512-JYc0DPlpGWB40kH5g07gGTrYuMqV653k3uBKY6uITPWds3M0ov3GaWGp9lbE3Bzngx8+XkfzgvASb9vk9JDFXQ==", "license": "MIT", - "dependencies": { - "is-plain-obj": "^1.0.0" - }, "engines": { - "node": ">=4" - } - }, - "node_modules/npm-conf": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/npm-conf/-/npm-conf-1.1.3.tgz", - "integrity": "sha512-Yic4bZHJOt9RCFbRP3GgpqhScOY4HH3V2P8yBj6CeYq118Qr+BLXqT2JvpJ00mryLESpgOxf5XlFv4ZjXxLScw==", - "license": "MIT", - "dependencies": { - "config-chain": "^1.1.11", - "pify": "^3.0.0" + "node": ">=14.16" }, - "engines": { - "node": ">=4" - } - }, - "node_modules/npm-conf/node_modules/pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==", - "license": "MIT", - "engines": { - "node": ">=4" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/npm-run-path": { @@ -19715,21 +16012,6 @@ "url": "https://opencollective.com/webpack" } }, - "node_modules/num2fraction": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/num2fraction/-/num2fraction-1.2.2.tgz", - "integrity": "sha512-Y1wZESM7VUThYY+4W+X4ySH2maqcA+p7UR+w8VWNWVAd6lwuXXWz/w/Cz43J/dI2I+PS6wD5N+bJUF+gjWvIqg==", - "license": "MIT" - }, - "node_modules/oauth-sign": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", - "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", - "license": "Apache-2.0", - "engines": { - "node": "*" - } - }, "node_modules/object-assign": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", @@ -19739,57 +16021,6 @@ "node": ">=0.10.0" } }, - "node_modules/object-copy": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", - "integrity": "sha512-79LYn6VAb63zgtmAteVOWo9Vdj71ZVBy3Pbse+VqxDpEP83XuujMrGqHIwAXJ5I/aM0zU7dIyIAhifVTPrNItQ==", - "license": "MIT", - "dependencies": { - "copy-descriptor": "^0.1.0", - "define-property": "^0.2.5", - "kind-of": "^3.0.3" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object-copy/node_modules/define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", - "license": "MIT", - "dependencies": { - "is-descriptor": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object-copy/node_modules/is-descriptor": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.7.tgz", - "integrity": "sha512-C3grZTvObeN1xud4cRWl366OMXZTj0+HGyk4hvfpx4ZHt1Pb60ANSXqCK7pdOTeUQpRzECBSTphqvD7U+l22Eg==", - "license": "MIT", - "dependencies": { - "is-accessor-descriptor": "^1.0.1", - "is-data-descriptor": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/object-copy/node_modules/kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", - "license": "MIT", - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/object-inspect": { "version": "1.13.4", "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz", @@ -19802,22 +16033,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/object-is": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.6.tgz", - "integrity": "sha512-F8cZ+KfGlSGi09lJT7/Nd6KJZ9ygtvYC0/UYYLI9nmQKLMnydpB9yvbv9K1uSkEu7FU9vYPmVwLg328tX+ot3Q==", - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/object-keys": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", @@ -19827,18 +16042,6 @@ "node": ">= 0.4" } }, - "node_modules/object-visit": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", - "integrity": "sha512-GBaMwwAVK9qbQN3Scdo0OyvgPW7l3lnaVMj84uTOZlswkX0KpF6fyDBJhtTthf7pymztoN36/KEr1DyhF96zEA==", - "license": "MIT", - "dependencies": { - "isobject": "^3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/object.assign": { "version": "4.1.7", "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.7.tgz", @@ -19863,6 +16066,7 @@ "version": "1.1.9", "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.9.tgz", "integrity": "sha512-8u/hfXFRBD1O0hPUjioLhoWFHRmt6tKA4/vZPyckBr18l1KE9uHrFaFaUi8MDRTpi4uak2goyPTSNJLXX2k2Hw==", + "dev": true, "license": "MIT", "dependencies": { "call-bind": "^1.0.8", @@ -19878,57 +16082,26 @@ "version": "2.0.8", "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.8.tgz", "integrity": "sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==", + "dev": true, "license": "MIT", "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.2", - "es-object-atoms": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object.getownpropertydescriptors": { - "version": "2.1.8", - "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.8.tgz", - "integrity": "sha512-qkHIGe4q0lSYMv0XI4SsBTJz3WaURhLvd0lKSgtVuOsJ2krg4SgMw3PIRQFMp07yi++UR3se2mkcLqsBNpBb/A==", - "license": "MIT", - "dependencies": { - "array.prototype.reduce": "^1.0.6", - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.2", - "es-object-atoms": "^1.0.0", - "gopd": "^1.0.1", - "safe-array-concat": "^1.1.2" - }, - "engines": { - "node": ">= 0.8" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object.pick": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", - "integrity": "sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ==", - "license": "MIT", - "dependencies": { - "isobject": "^3.0.1" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-object-atoms": "^1.0.0" }, "engines": { - "node": ">=0.10.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/object.values": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.2.1.tgz", "integrity": "sha512-gXah6aZrcUxjWg2zR2MwouP2eHlCBzdV4pygudehaKXSGW4v2AsRQUK+lwwXhii6KFZcunEnmSUoYp5CXibxtA==", + "dev": true, "license": "MIT", "dependencies": { "call-bind": "^1.0.8", @@ -19970,15 +16143,6 @@ "node": ">= 0.8" } }, - "node_modules/once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", - "license": "ISC", - "dependencies": { - "wrappy": "1" - } - }, "node_modules/onetime": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", @@ -20020,40 +16184,29 @@ "opener": "bin/opener-bin.js" } }, - "node_modules/optipng-bin": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/optipng-bin/-/optipng-bin-5.1.0.tgz", - "integrity": "sha512-9baoqZTNNmXQjq/PQTWEXbVV3AMO2sI/GaaqZJZ8SExfAzjijeAP7FEeT+TtyumSw7gr0PZtSUYB/Ke7iHQVKA==", - "hasInstallScript": true, - "license": "MIT", - "dependencies": { - "bin-build": "^3.0.0", - "bin-wrapper": "^4.0.0", - "logalot": "^2.0.0" - }, - "bin": { - "optipng": "cli.js" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/os-filter-obj": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/os-filter-obj/-/os-filter-obj-2.0.0.tgz", - "integrity": "sha512-uksVLsqG3pVdzzPvmAHpBK0wKxYItuzZr7SziusRPoz67tGV8rL1szZ6IdeUrbqLjGDwApBtN29eEE3IqGHOjg==", + "node_modules/optionator": { + "version": "0.9.4", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz", + "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==", + "dev": true, "license": "MIT", "dependencies": { - "arch": "^2.1.0" + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0", + "word-wrap": "^1.2.5" }, "engines": { - "node": ">=4" + "node": ">= 0.8.0" } }, "node_modules/own-keys": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/own-keys/-/own-keys-1.0.1.tgz", "integrity": "sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg==", + "dev": true, "license": "MIT", "dependencies": { "get-intrinsic": "^1.2.6", @@ -20068,24 +16221,12 @@ } }, "node_modules/p-cancelable": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-0.3.0.tgz", - "integrity": "sha512-RVbZPLso8+jFeq1MfNvgXtCRED2raz/dKpacfTNxsx6pLEpEomM7gah6VeHSYV3+vo0OAi4MkArtQcWWXuQoyw==", - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/p-event": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-event/-/p-event-1.3.0.tgz", - "integrity": "sha512-hV1zbA7gwqPVFcapfeATaNjQ3J0NuzorHPyG8GPL9g/Y/TplWVBVoCKCXL6Ej2zscrCEv195QNWJXuBH6XZuzA==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-3.0.0.tgz", + "integrity": "sha512-mlVgR3PGuzlo0MmTdk4cXqXWlwQDLnONTAg6sm62XkMJEiRxN3GL3SffkYvqwonbkJBcrI7Uvv5Zh9yjvn2iUw==", "license": "MIT", - "dependencies": { - "p-timeout": "^1.1.1" - }, "engines": { - "node": ">=4" + "node": ">=12.20" } }, "node_modules/p-finally": { @@ -20097,325 +16238,108 @@ "node": ">=4" } }, - "node_modules/p-is-promise": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/p-is-promise/-/p-is-promise-1.1.0.tgz", - "integrity": "sha512-zL7VE4JVS2IFSkR2GQKDSPEVxkoH43/p7oEnwpdCndKYJO0HVeRB7fA8TJwuLOTBREtK0ea8eHaxdwcpob5dmg==", - "license": "MIT", - "engines": { - "node": ">=4" - } - }, "node_modules/p-limit": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz", - "integrity": "sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==", - "license": "MIT", - "dependencies": { - "yocto-queue": "^1.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-locate": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-6.0.0.tgz", - "integrity": "sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==", - "license": "MIT", - "dependencies": { - "p-limit": "^4.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "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==", - "license": "MIT", - "dependencies": { - "aggregate-error": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-map-series": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-map-series/-/p-map-series-1.0.0.tgz", - "integrity": "sha512-4k9LlvY6Bo/1FcIdV33wqZQES0Py+iKISU9Uc8p8AjWoZPnFKMpVIVD3s0EYn4jzLh1I+WeUZkJ0Yoa4Qfw3Kg==", - "license": "MIT", - "dependencies": { - "p-reduce": "^1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/p-pipe": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/p-pipe/-/p-pipe-1.2.0.tgz", - "integrity": "sha512-IA8SqjIGA8l9qOksXJvsvkeQ+VGb0TAzNCzvKvz9wt5wWLqfWbV6fXy43gpR2L4Te8sOq3S+Ql9biAaMKPdbtw==", - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/p-queue": { - "version": "6.6.2", - "resolved": "https://registry.npmjs.org/p-queue/-/p-queue-6.6.2.tgz", - "integrity": "sha512-RwFpb72c/BhQLEXIZ5K2e+AhgNVmIejGlTgiB9MzZ0e93GRvqZ7uSi0dvRF7/XIXDeNkra2fNHBxTyPDGySpjQ==", - "license": "MIT", - "dependencies": { - "eventemitter3": "^4.0.4", - "p-timeout": "^3.2.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-queue/node_modules/p-timeout": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-3.2.0.tgz", - "integrity": "sha512-rhIwUycgwwKcP9yTOOFK/AKsAopjjCakVqLHePO3CC6Mir1Z99xT+R63jZxAT5lFZLa2inS5h+ZS2GvR99/FBg==", - "license": "MIT", - "dependencies": { - "p-finally": "^1.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/p-reduce": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-reduce/-/p-reduce-1.0.0.tgz", - "integrity": "sha512-3Tx1T3oM1xO/Y8Gj0sWyE78EIJZ+t+aEmXUdvQgvGmSMri7aPTHoovbXEreWKkL5j21Er60XAWLTzKbAKYOujQ==", - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/p-retry": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-4.6.2.tgz", - "integrity": "sha512-312Id396EbJdvRONlngUx0NydfrIQ5lsYu0znKVUzVvArzEIt08V1qhtyESbGVd1FGX7UKtiFp5uwKZdM8wIuQ==", - "license": "MIT", - "dependencies": { - "@types/retry": "0.12.0", - "retry": "^0.13.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/p-timeout": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-1.2.1.tgz", - "integrity": "sha512-gb0ryzr+K2qFqFv6qi3khoeqMZF/+ajxQipEF6NteZVnvz9tzdsfAVj3lYtn1gAXvH5lfLwfxEII799gt/mRIA==", - "license": "MIT", - "dependencies": { - "p-finally": "^1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/package-json": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/package-json/-/package-json-8.1.1.tgz", - "integrity": "sha512-cbH9IAIJHNj9uXi196JVsRlt7cHKak6u/e6AkL/bkRelZ7rlL3X1YKxsZwa36xipOEKAsdtmaG6aAJoM1fx2zA==", - "license": "MIT", - "dependencies": { - "got": "^12.1.0", - "registry-auth-token": "^5.0.1", - "registry-url": "^6.0.0", - "semver": "^7.3.7" - }, - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/package-json/node_modules/@sindresorhus/is": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-5.6.0.tgz", - "integrity": "sha512-TV7t8GKYaJWsn00tFDqBw8+Uqmr8A0fRU1tvTQhyZzGv0sJCGRQL3JGMI3ucuKo3XIZdUP+Lx7/gh2t3lewy7g==", - "license": "MIT", - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sindresorhus/is?sponsor=1" - } - }, - "node_modules/package-json/node_modules/cacheable-request": { - "version": "10.2.14", - "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-10.2.14.tgz", - "integrity": "sha512-zkDT5WAF4hSSoUgyfg5tFIxz8XQK+25W/TLVojJTMKBaxevLBBtLxgqguAuVQB8PVW79FVjHcU+GJ9tVbDZ9mQ==", - "license": "MIT", - "dependencies": { - "@types/http-cache-semantics": "^4.0.2", - "get-stream": "^6.0.1", - "http-cache-semantics": "^4.1.1", - "keyv": "^4.5.3", - "mimic-response": "^4.0.0", - "normalize-url": "^8.0.0", - "responselike": "^3.0.0" - }, - "engines": { - "node": ">=14.16" - } - }, - "node_modules/package-json/node_modules/decompress-response": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz", - "integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==", - "license": "MIT", - "dependencies": { - "mimic-response": "^3.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/package-json/node_modules/decompress-response/node_modules/mimic-response": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz", - "integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==", - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/package-json/node_modules/got": { - "version": "12.6.1", - "resolved": "https://registry.npmjs.org/got/-/got-12.6.1.tgz", - "integrity": "sha512-mThBblvlAF1d4O5oqyvN+ZxLAYwIJK7bpMxgYqPD9okW0C3qm5FFn7k811QrcuEBwaogR3ngOFoCfs6mRv7teQ==", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, "license": "MIT", - "dependencies": { - "@sindresorhus/is": "^5.2.0", - "@szmarczak/http-timer": "^5.0.1", - "cacheable-lookup": "^7.0.0", - "cacheable-request": "^10.2.8", - "decompress-response": "^6.0.0", - "form-data-encoder": "^2.1.2", - "get-stream": "^6.0.1", - "http2-wrapper": "^2.1.10", - "lowercase-keys": "^3.0.0", - "p-cancelable": "^3.0.0", - "responselike": "^3.0.0" + "dependencies": { + "yocto-queue": "^0.1.0" }, "engines": { - "node": ">=14.16" + "node": ">=10" }, "funding": { - "url": "https://github.com/sindresorhus/got?sponsor=1" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/package-json/node_modules/http-cache-semantics": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.2.0.tgz", - "integrity": "sha512-dTxcvPXqPvXBQpq5dUr6mEMJX4oIEFv6bwom3FDwKRDsuIjjJGANqhBuoAn9c1RQJIdAKav33ED65E2ys+87QQ==", - "license": "BSD-2-Clause" - }, - "node_modules/package-json/node_modules/json-buffer": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", - "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", - "license": "MIT" - }, - "node_modules/package-json/node_modules/keyv": { - "version": "4.5.4", - "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", - "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", + "node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, "license": "MIT", "dependencies": { - "json-buffer": "3.0.1" + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/package-json/node_modules/lowercase-keys": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-3.0.0.tgz", - "integrity": "sha512-ozCC6gdQ+glXOQsveKD0YsDy8DSQFjDTz4zyzEHNV5+JP5D62LmfDZ6o1cycFx9ouG940M5dE8C8CTewdj2YWQ==", + "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==", "license": "MIT", + "dependencies": { + "aggregate-error": "^3.0.0" + }, "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + "node": ">=10" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/package-json/node_modules/mimic-response": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-4.0.0.tgz", - "integrity": "sha512-e5ISH9xMYU0DzrT+jl8q2ze9D6eWBto+I8CNpe+VI+K2J/F/k3PdkdTdz4wvGVH4NTpo+NRYTVIuMQEMMcsLqg==", + "node_modules/p-queue": { + "version": "6.6.2", + "resolved": "https://registry.npmjs.org/p-queue/-/p-queue-6.6.2.tgz", + "integrity": "sha512-RwFpb72c/BhQLEXIZ5K2e+AhgNVmIejGlTgiB9MzZ0e93GRvqZ7uSi0dvRF7/XIXDeNkra2fNHBxTyPDGySpjQ==", "license": "MIT", + "dependencies": { + "eventemitter3": "^4.0.4", + "p-timeout": "^3.2.0" + }, "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + "node": ">=8" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/package-json/node_modules/normalize-url": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-8.0.2.tgz", - "integrity": "sha512-Ee/R3SyN4BuynXcnTaekmaVdbDAEiNrHqjQIA37mHU8G9pf7aaAD4ZX3XjBLo6rsdcxA/gtkcNYZLt30ACgynw==", + "node_modules/p-retry": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-6.2.1.tgz", + "integrity": "sha512-hEt02O4hUct5wtwg4H4KcWgDdm+l1bOaEy/hWzd8xtXB9BqxTWBBhb+2ImAtH4Cv4rPjV76xN3Zumqk3k3AhhQ==", "license": "MIT", + "dependencies": { + "@types/retry": "0.12.2", + "is-network-error": "^1.0.0", + "retry": "^0.13.1" + }, "engines": { - "node": ">=14.16" + "node": ">=16.17" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/package-json/node_modules/p-cancelable": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-3.0.0.tgz", - "integrity": "sha512-mlVgR3PGuzlo0MmTdk4cXqXWlwQDLnONTAg6sm62XkMJEiRxN3GL3SffkYvqwonbkJBcrI7Uvv5Zh9yjvn2iUw==", + "node_modules/p-timeout": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-3.2.0.tgz", + "integrity": "sha512-rhIwUycgwwKcP9yTOOFK/AKsAopjjCakVqLHePO3CC6Mir1Z99xT+R63jZxAT5lFZLa2inS5h+ZS2GvR99/FBg==", "license": "MIT", + "dependencies": { + "p-finally": "^1.0.0" + }, "engines": { - "node": ">=12.20" + "node": ">=8" } }, - "node_modules/package-json/node_modules/responselike": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/responselike/-/responselike-3.0.0.tgz", - "integrity": "sha512-40yHxbNcl2+rzXvZuVkrYohathsSJlMTXKryG5y8uciHv1+xDLHQpgjG64JUO9nrEq2jGLH6IZ8BcZyw3wrweg==", + "node_modules/package-json": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/package-json/-/package-json-8.1.1.tgz", + "integrity": "sha512-cbH9IAIJHNj9uXi196JVsRlt7cHKak6u/e6AkL/bkRelZ7rlL3X1YKxsZwa36xipOEKAsdtmaG6aAJoM1fx2zA==", "license": "MIT", "dependencies": { - "lowercase-keys": "^3.0.0" + "got": "^12.1.0", + "registry-auth-token": "^5.0.1", + "registry-url": "^6.0.0", + "semver": "^7.3.7" }, "engines": { "node": ">=14.16" @@ -20424,6 +16348,13 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/package-json-from-dist": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz", + "integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==", + "dev": true, + "license": "BlueOak-1.0.0" + }, "node_modules/param-case": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/param-case/-/param-case-3.0.4.tgz", @@ -20551,37 +16482,14 @@ "tslib": "^2.0.3" } }, - "node_modules/pascalcase": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", - "integrity": "sha512-XHXfu/yOQRy9vYOtUDVMN60OEJjW013GoObG1o+xwQTpB9eYJX/BjXMsdW13ZDPruFhYYn0AG22w0xgQMwl3Nw==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/path-dirname": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", - "integrity": "sha512-ALzNPpyNq9AqXMBjeymIjFDAkAFH06mHJH/cSBHAgU0s4vfpBn6b2nf8tiRLvagKD8RbTpq2FKTBg7cl9l3c7Q==", - "license": "MIT" - }, "node_modules/path-exists": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-5.0.0.tgz", - "integrity": "sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==", - "license": "MIT", - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - } - }, - "node_modules/path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, "license": "MIT", "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, "node_modules/path-is-inside": { @@ -20605,11 +16513,41 @@ "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", "license": "MIT" }, + "node_modules/path-scurry": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-2.0.1.tgz", + "integrity": "sha512-oWyT4gICAu+kaA7QWk/jvCHWarMKNs6pXOGWKDTr7cw4IGcUbW+PeTfbaQiLGheFRpjo6O9J0PmyMfQPjH71oA==", + "dev": true, + "license": "BlueOak-1.0.0", + "dependencies": { + "lru-cache": "^11.0.0", + "minipass": "^7.1.2" + }, + "engines": { + "node": "20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/path-scurry/node_modules/lru-cache": { + "version": "11.2.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.2.5.tgz", + "integrity": "sha512-vFrFJkWtJvJnD5hg+hJvVE8Lh/TcMzKnTgCWmtBipwI5yLX/iX+5UB2tfuyODF5E7k9xEzMdYgGqaSb1c0c5Yw==", + "dev": true, + "license": "BlueOak-1.0.0", + "engines": { + "node": "20 || >=22" + } + }, "node_modules/path-to-regexp": { - "version": "0.1.12", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.12.tgz", - "integrity": "sha512-RA1GjUVMnvYFxuqovrEqZoxxW5NUZqbwKtYz/Tt7nXerk0LbLblQmrsgdeOxV5SFHf0UDggjS/bSeOZwt1pmEQ==", - "license": "MIT" + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.9.0.tgz", + "integrity": "sha512-xIp7/apCFJuUHdDLWe8O1HIkb0kQrOMb/0u6FXQjemHn/ii5LrIzU6bdECnsiTF/GjZkMEKg1xdiZwNqDYlZ6g==", + "license": "MIT", + "dependencies": { + "isarray": "0.0.1" + } }, "node_modules/path-type": { "version": "4.0.0", @@ -20621,30 +16559,17 @@ } }, "node_modules/pbf": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/pbf/-/pbf-3.3.0.tgz", - "integrity": "sha512-XDF38WCH3z5OV/OVa8GKUNtLAyneuzbCisx7QUCF8Q6Nutx0WnJrQe5O+kOtBlLfRNUws98Y58Lblp+NJG5T4Q==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pbf/-/pbf-4.0.1.tgz", + "integrity": "sha512-SuLdBvS42z33m8ejRbInMapQe8n0D3vN/Xd5fmWM3tufNgRQFBpaW2YVJxQZV4iPNqb0vEFvssMEo5w9c6BTIA==", "license": "BSD-3-Clause", "dependencies": { - "ieee754": "^1.1.12", "resolve-protobuf-schema": "^2.1.0" }, "bin": { "pbf": "bin/pbf" } }, - "node_modules/pend": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", - "integrity": "sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==", - "license": "MIT" - }, - "node_modules/performance-now": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==", - "license": "MIT" - }, "node_modules/picocolors": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", @@ -20663,45 +16588,6 @@ "url": "https://github.com/sponsors/jonschlinkert" } }, - "node_modules/pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/pinkie": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", - "integrity": "sha512-MnUuEycAemtSaeFSjXKW/aroV7akBbY+Sv+RkyqFjgAe73F+MR0TBWKBRDkmfWq/HiFmdavfZ1G7h4SPZXaCSg==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/pinkie-promise": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", - "integrity": "sha512-0Gni6D4UcLTbv9c57DfxDGdr41XfgUjqWZu492f0cIGr16zDU06BWP/RAEvOuo7CQ0CNjHaLlM59YJJFm3NWlw==", - "license": "MIT", - "dependencies": { - "pinkie": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/pirates": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.7.tgz", - "integrity": "sha512-TfySrs/5nm8fQJDcBDuUng3VOUKsd7S+zqvbOTiGXHfxX4wK31ard+hoNuvkicM/2YFzlpDgABOevKSsB4G/FA==", - "license": "MIT", - "engines": { - "node": ">= 6" - } - }, "node_modules/pkg-dir": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-7.0.0.tgz", @@ -20717,114 +16603,119 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/pkg-up": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/pkg-up/-/pkg-up-3.1.0.tgz", - "integrity": "sha512-nDywThFk1i4BQK4twPQ6TA4RT8bDY96yeuCVBWL3ePARCiEKDRSrNGbFIgUJpLp+XeIR65v8ra7WuJOFUBtkMA==", + "node_modules/pkg-dir/node_modules/find-up": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-6.3.0.tgz", + "integrity": "sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw==", "license": "MIT", "dependencies": { - "find-up": "^3.0.0" + "locate-path": "^7.1.0", + "path-exists": "^5.0.0" }, "engines": { - "node": ">=8" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/pkg-up/node_modules/find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "node_modules/pkg-dir/node_modules/locate-path": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-7.2.0.tgz", + "integrity": "sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==", "license": "MIT", "dependencies": { - "locate-path": "^3.0.0" + "p-locate": "^6.0.0" }, "engines": { - "node": ">=6" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/pkg-up/node_modules/locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "node_modules/pkg-dir/node_modules/p-limit": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz", + "integrity": "sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==", "license": "MIT", "dependencies": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" + "yocto-queue": "^1.0.0" }, "engines": { - "node": ">=6" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/pkg-up/node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "node_modules/pkg-dir/node_modules/p-locate": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-6.0.0.tgz", + "integrity": "sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==", "license": "MIT", "dependencies": { - "p-try": "^2.0.0" + "p-limit": "^4.0.0" }, "engines": { - "node": ">=6" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/pkg-up/node_modules/p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "node_modules/pkg-dir/node_modules/path-exists": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-5.0.0.tgz", + "integrity": "sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==", "license": "MIT", - "dependencies": { - "p-limit": "^2.0.0" - }, "engines": { - "node": ">=6" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" } }, - "node_modules/pkg-up/node_modules/path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", + "node_modules/pkg-dir/node_modules/yocto-queue": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.2.2.tgz", + "integrity": "sha512-4LCcse/U2MHZ63HAJVE+v71o7yOdIe4cZ70Wpf8D/IyjDKYQLV5GD46B+hSTjJsvV5PztjvHoU580EftxjDZFQ==", "license": "MIT", "engines": { - "node": ">=4" + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/pmtiles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/pmtiles/-/pmtiles-4.3.0.tgz", - "integrity": "sha512-wnzQeSiYT/MyO63o7AVxwt7+uKqU0QUy2lHrivM7GvecNy0m1A4voVyGey7bujnEW5Hn+ZzLdvHPoFaqrOzbPA==", + "node_modules/pkijs": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/pkijs/-/pkijs-3.3.3.tgz", + "integrity": "sha512-+KD8hJtqQMYoTuL1bbGOqxb4z+nZkTAwVdNtWwe8Tc2xNbEmdJYIYoc6Qt0uF55e6YW6KuTHw1DjQ18gMhzepw==", "license": "BSD-3-Clause", "dependencies": { - "fflate": "^0.8.2" - } - }, - "node_modules/portfinder": { - "version": "1.0.37", - "resolved": "https://registry.npmjs.org/portfinder/-/portfinder-1.0.37.tgz", - "integrity": "sha512-yuGIEjDAYnnOex9ddMnKZEMFE0CcGo6zbfzDklkmT1m5z734ss6JMzN9rNB3+RR7iS+F10D4/BVIaXOyh8PQKw==", - "license": "MIT", - "dependencies": { - "async": "^3.2.6", - "debug": "^4.3.6" + "@noble/hashes": "1.4.0", + "asn1js": "^3.0.6", + "bytestreamjs": "^2.0.1", + "pvtsutils": "^1.3.6", + "pvutils": "^1.1.3", + "tslib": "^2.8.1" }, "engines": { - "node": ">= 10.12" + "node": ">=16.0.0" } }, - "node_modules/posix-character-classes": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", - "integrity": "sha512-xTgYBc3fuo7Yt7JbiuFxSYGToMoz8fLoE6TC9Wx1P/u+LfeThMOAqmuyECnlBaaJb+u1m9hHiXUEtwW4OzfUJg==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" + "node_modules/pmtiles": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/pmtiles/-/pmtiles-4.4.0.tgz", + "integrity": "sha512-tCLI1C5134MR54i8izUWhse0QUtO/EC33n9yWp1N5dYLLvyc197U0fkF5gAJhq1TdWO9Tvl+9hgvFvM0fR27Zg==", + "license": "BSD-3-Clause", + "dependencies": { + "fflate": "^0.8.2" } }, "node_modules/possible-typed-array-names": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.1.0.tgz", "integrity": "sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==", + "dev": true, "license": "MIT", "engines": { "node": ">= 0.4" @@ -20884,9 +16775,9 @@ } }, "node_modules/postcss-attribute-case-insensitive/node_modules/postcss-selector-parser": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.0.tgz", - "integrity": "sha512-8sLjZwK0R+JlxlYcTuVnyT2v+htpdrjDOKuMcOVdYjt52Lh8hWRYpxBPoKx/Zg+bcjc3wx6fmQevMmUztS/ccA==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.1.tgz", + "integrity": "sha512-orRsuYpJVw8LdAwqqLykBj9ecS5/cRHlI5+nvTo8LcCKmzDmqVORXtOIYEEQuL9D4BxtA1lm5isAqzQZCoQ6Eg==", "license": "MIT", "dependencies": { "cssesc": "^3.0.0", @@ -20928,9 +16819,9 @@ } }, "node_modules/postcss-color-functional-notation": { - "version": "7.0.10", - "resolved": "https://registry.npmjs.org/postcss-color-functional-notation/-/postcss-color-functional-notation-7.0.10.tgz", - "integrity": "sha512-k9qX+aXHBiLTRrWoCJuUFI6F1iF6QJQUXNVWJVSbqZgj57jDhBlOvD8gNUGl35tgqDivbGLhZeW3Ongz4feuKA==", + "version": "7.0.12", + "resolved": "https://registry.npmjs.org/postcss-color-functional-notation/-/postcss-color-functional-notation-7.0.12.tgz", + "integrity": "sha512-TLCW9fN5kvO/u38/uesdpbx3e8AkTYhMvDZYa9JpmImWuTE99bDQ7GU7hdOADIZsiI9/zuxfAJxny/khknp1Zw==", "funding": [ { "type": "github", @@ -20943,10 +16834,10 @@ ], "license": "MIT-0", "dependencies": { - "@csstools/css-color-parser": "^3.0.10", + "@csstools/css-color-parser": "^3.1.0", "@csstools/css-parser-algorithms": "^3.0.5", "@csstools/css-tokenizer": "^3.0.4", - "@csstools/postcss-progressive-custom-properties": "^4.1.0", + "@csstools/postcss-progressive-custom-properties": "^4.2.1", "@csstools/utilities": "^2.0.0" }, "engines": { @@ -21128,9 +17019,9 @@ } }, "node_modules/postcss-custom-selectors/node_modules/postcss-selector-parser": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.0.tgz", - "integrity": "sha512-8sLjZwK0R+JlxlYcTuVnyT2v+htpdrjDOKuMcOVdYjt52Lh8hWRYpxBPoKx/Zg+bcjc3wx6fmQevMmUztS/ccA==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.1.tgz", + "integrity": "sha512-orRsuYpJVw8LdAwqqLykBj9ecS5/cRHlI5+nvTo8LcCKmzDmqVORXtOIYEEQuL9D4BxtA1lm5isAqzQZCoQ6Eg==", "license": "MIT", "dependencies": { "cssesc": "^3.0.0", @@ -21166,9 +17057,9 @@ } }, "node_modules/postcss-dir-pseudo-class/node_modules/postcss-selector-parser": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.0.tgz", - "integrity": "sha512-8sLjZwK0R+JlxlYcTuVnyT2v+htpdrjDOKuMcOVdYjt52Lh8hWRYpxBPoKx/Zg+bcjc3wx6fmQevMmUztS/ccA==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.1.tgz", + "integrity": "sha512-orRsuYpJVw8LdAwqqLykBj9ecS5/cRHlI5+nvTo8LcCKmzDmqVORXtOIYEEQuL9D4BxtA1lm5isAqzQZCoQ6Eg==", "license": "MIT", "dependencies": { "cssesc": "^3.0.0", @@ -21242,9 +17133,9 @@ } }, "node_modules/postcss-double-position-gradients": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/postcss-double-position-gradients/-/postcss-double-position-gradients-6.0.2.tgz", - "integrity": "sha512-7qTqnL7nfLRyJK/AHSVrrXOuvDDzettC+wGoienURV8v2svNbu6zJC52ruZtHaO6mfcagFmuTGFdzRsJKB3k5Q==", + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/postcss-double-position-gradients/-/postcss-double-position-gradients-6.0.4.tgz", + "integrity": "sha512-m6IKmxo7FxSP5nF2l63QbCC3r+bWpFUWmZXZf096WxG0m7Vl1Q1+ruFOhpdDRmKrRS+S3Jtk+TVk/7z0+BVK6g==", "funding": [ { "type": "github", @@ -21257,7 +17148,7 @@ ], "license": "MIT-0", "dependencies": { - "@csstools/postcss-progressive-custom-properties": "^4.1.0", + "@csstools/postcss-progressive-custom-properties": "^4.2.1", "@csstools/utilities": "^2.0.0", "postcss-value-parser": "^4.2.0" }, @@ -21294,9 +17185,9 @@ } }, "node_modules/postcss-focus-visible/node_modules/postcss-selector-parser": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.0.tgz", - "integrity": "sha512-8sLjZwK0R+JlxlYcTuVnyT2v+htpdrjDOKuMcOVdYjt52Lh8hWRYpxBPoKx/Zg+bcjc3wx6fmQevMmUztS/ccA==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.1.tgz", + "integrity": "sha512-orRsuYpJVw8LdAwqqLykBj9ecS5/cRHlI5+nvTo8LcCKmzDmqVORXtOIYEEQuL9D4BxtA1lm5isAqzQZCoQ6Eg==", "license": "MIT", "dependencies": { "cssesc": "^3.0.0", @@ -21332,9 +17223,9 @@ } }, "node_modules/postcss-focus-within/node_modules/postcss-selector-parser": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.0.tgz", - "integrity": "sha512-8sLjZwK0R+JlxlYcTuVnyT2v+htpdrjDOKuMcOVdYjt52Lh8hWRYpxBPoKx/Zg+bcjc3wx6fmQevMmUztS/ccA==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.1.tgz", + "integrity": "sha512-orRsuYpJVw8LdAwqqLykBj9ecS5/cRHlI5+nvTo8LcCKmzDmqVORXtOIYEEQuL9D4BxtA1lm5isAqzQZCoQ6Eg==", "license": "MIT", "dependencies": { "cssesc": "^3.0.0", @@ -21402,9 +17293,9 @@ } }, "node_modules/postcss-lab-function": { - "version": "7.0.10", - "resolved": "https://registry.npmjs.org/postcss-lab-function/-/postcss-lab-function-7.0.10.tgz", - "integrity": "sha512-tqs6TCEv9tC1Riq6fOzHuHcZyhg4k3gIAMB8GGY/zA1ssGdm6puHMVE7t75aOSoFg7UD2wyrFFhbldiCMyyFTQ==", + "version": "7.0.12", + "resolved": "https://registry.npmjs.org/postcss-lab-function/-/postcss-lab-function-7.0.12.tgz", + "integrity": "sha512-tUcyRk1ZTPec3OuKFsqtRzW2Go5lehW29XA21lZ65XmzQkz43VY2tyWEC202F7W3mILOjw0voOiuxRGTsN+J9w==", "funding": [ { "type": "github", @@ -21417,10 +17308,10 @@ ], "license": "MIT-0", "dependencies": { - "@csstools/css-color-parser": "^3.0.10", + "@csstools/css-color-parser": "^3.1.0", "@csstools/css-parser-algorithms": "^3.0.5", "@csstools/css-tokenizer": "^3.0.4", - "@csstools/postcss-progressive-custom-properties": "^4.1.0", + "@csstools/postcss-progressive-custom-properties": "^4.2.1", "@csstools/utilities": "^2.0.0" }, "engines": { @@ -21621,9 +17512,9 @@ } }, "node_modules/postcss-modules-local-by-default/node_modules/postcss-selector-parser": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.0.tgz", - "integrity": "sha512-8sLjZwK0R+JlxlYcTuVnyT2v+htpdrjDOKuMcOVdYjt52Lh8hWRYpxBPoKx/Zg+bcjc3wx6fmQevMmUztS/ccA==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.1.tgz", + "integrity": "sha512-orRsuYpJVw8LdAwqqLykBj9ecS5/cRHlI5+nvTo8LcCKmzDmqVORXtOIYEEQuL9D4BxtA1lm5isAqzQZCoQ6Eg==", "license": "MIT", "dependencies": { "cssesc": "^3.0.0", @@ -21649,9 +17540,9 @@ } }, "node_modules/postcss-modules-scope/node_modules/postcss-selector-parser": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.0.tgz", - "integrity": "sha512-8sLjZwK0R+JlxlYcTuVnyT2v+htpdrjDOKuMcOVdYjt52Lh8hWRYpxBPoKx/Zg+bcjc3wx6fmQevMmUztS/ccA==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.1.tgz", + "integrity": "sha512-orRsuYpJVw8LdAwqqLykBj9ecS5/cRHlI5+nvTo8LcCKmzDmqVORXtOIYEEQuL9D4BxtA1lm5isAqzQZCoQ6Eg==", "license": "MIT", "dependencies": { "cssesc": "^3.0.0", @@ -21748,9 +17639,9 @@ } }, "node_modules/postcss-nesting/node_modules/postcss-selector-parser": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.0.tgz", - "integrity": "sha512-8sLjZwK0R+JlxlYcTuVnyT2v+htpdrjDOKuMcOVdYjt52Lh8hWRYpxBPoKx/Zg+bcjc3wx6fmQevMmUztS/ccA==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.1.tgz", + "integrity": "sha512-orRsuYpJVw8LdAwqqLykBj9ecS5/cRHlI5+nvTo8LcCKmzDmqVORXtOIYEEQuL9D4BxtA1lm5isAqzQZCoQ6Eg==", "license": "MIT", "dependencies": { "cssesc": "^3.0.0", @@ -21991,9 +17882,9 @@ } }, "node_modules/postcss-preset-env": { - "version": "10.2.4", - "resolved": "https://registry.npmjs.org/postcss-preset-env/-/postcss-preset-env-10.2.4.tgz", - "integrity": "sha512-q+lXgqmTMdB0Ty+EQ31SuodhdfZetUlwCA/F0zRcd/XdxjzI+Rl2JhZNz5US2n/7t9ePsvuhCnEN4Bmu86zXlA==", + "version": "10.6.1", + "resolved": "https://registry.npmjs.org/postcss-preset-env/-/postcss-preset-env-10.6.1.tgz", + "integrity": "sha512-yrk74d9EvY+W7+lO9Aj1QmjWY9q5NsKjK2V9drkOPZB/X6KZ0B3igKsHUYakb7oYVhnioWypQX3xGuePf89f3g==", "funding": [ { "type": "github", @@ -22006,20 +17897,23 @@ ], "license": "MIT-0", "dependencies": { + "@csstools/postcss-alpha-function": "^1.0.1", "@csstools/postcss-cascade-layers": "^5.0.2", - "@csstools/postcss-color-function": "^4.0.10", - "@csstools/postcss-color-mix-function": "^3.0.10", - "@csstools/postcss-color-mix-variadic-function-arguments": "^1.0.0", - "@csstools/postcss-content-alt-text": "^2.0.6", + "@csstools/postcss-color-function": "^4.0.12", + "@csstools/postcss-color-function-display-p3-linear": "^1.0.1", + "@csstools/postcss-color-mix-function": "^3.0.12", + "@csstools/postcss-color-mix-variadic-function-arguments": "^1.0.2", + "@csstools/postcss-content-alt-text": "^2.0.8", + "@csstools/postcss-contrast-color-function": "^2.0.12", "@csstools/postcss-exponential-functions": "^2.0.9", "@csstools/postcss-font-format-keywords": "^4.0.0", - "@csstools/postcss-gamut-mapping": "^2.0.10", - "@csstools/postcss-gradients-interpolation-method": "^5.0.10", - "@csstools/postcss-hwb-function": "^4.0.10", - "@csstools/postcss-ic-unit": "^4.0.2", + "@csstools/postcss-gamut-mapping": "^2.0.11", + "@csstools/postcss-gradients-interpolation-method": "^5.0.12", + "@csstools/postcss-hwb-function": "^4.0.12", + "@csstools/postcss-ic-unit": "^4.0.4", "@csstools/postcss-initial": "^2.0.1", "@csstools/postcss-is-pseudo-class": "^5.0.3", - "@csstools/postcss-light-dark-function": "^2.0.9", + "@csstools/postcss-light-dark-function": "^2.0.11", "@csstools/postcss-logical-float-and-clear": "^3.0.0", "@csstools/postcss-logical-overflow": "^2.0.0", "@csstools/postcss-logical-overscroll-behavior": "^2.0.0", @@ -22028,900 +17922,516 @@ "@csstools/postcss-media-minmax": "^2.0.9", "@csstools/postcss-media-queries-aspect-ratio-number-values": "^3.0.5", "@csstools/postcss-nested-calc": "^4.0.0", - "@csstools/postcss-normalize-display-values": "^4.0.0", - "@csstools/postcss-oklab-function": "^4.0.10", - "@csstools/postcss-progressive-custom-properties": "^4.1.0", + "@csstools/postcss-normalize-display-values": "^4.0.1", + "@csstools/postcss-oklab-function": "^4.0.12", + "@csstools/postcss-position-area-property": "^1.0.0", + "@csstools/postcss-progressive-custom-properties": "^4.2.1", + "@csstools/postcss-property-rule-prelude-list": "^1.0.0", "@csstools/postcss-random-function": "^2.0.1", - "@csstools/postcss-relative-color-syntax": "^3.0.10", + "@csstools/postcss-relative-color-syntax": "^3.0.12", "@csstools/postcss-scope-pseudo-class": "^4.0.1", "@csstools/postcss-sign-functions": "^1.1.4", "@csstools/postcss-stepped-value-functions": "^4.0.9", - "@csstools/postcss-text-decoration-shorthand": "^4.0.2", + "@csstools/postcss-syntax-descriptor-syntax-production": "^1.0.1", + "@csstools/postcss-system-ui-font-family": "^1.0.0", + "@csstools/postcss-text-decoration-shorthand": "^4.0.3", "@csstools/postcss-trigonometric-functions": "^4.0.9", "@csstools/postcss-unset-value": "^4.0.0", - "autoprefixer": "^10.4.21", - "browserslist": "^4.25.0", + "autoprefixer": "^10.4.23", + "browserslist": "^4.28.1", "css-blank-pseudo": "^7.0.1", - "css-has-pseudo": "^7.0.2", + "css-has-pseudo": "^7.0.3", "css-prefers-color-scheme": "^10.0.0", - "cssdb": "^8.3.0", + "cssdb": "^8.6.0", "postcss-attribute-case-insensitive": "^7.0.1", "postcss-clamp": "^4.1.0", - "postcss-color-functional-notation": "^7.0.10", + "postcss-color-functional-notation": "^7.0.12", "postcss-color-hex-alpha": "^10.0.0", "postcss-color-rebeccapurple": "^10.0.0", "postcss-custom-media": "^11.0.6", "postcss-custom-properties": "^14.0.6", "postcss-custom-selectors": "^8.0.5", "postcss-dir-pseudo-class": "^9.0.1", - "postcss-double-position-gradients": "^6.0.2", + "postcss-double-position-gradients": "^6.0.4", "postcss-focus-visible": "^10.0.1", "postcss-focus-within": "^9.0.1", "postcss-font-variant": "^5.0.0", "postcss-gap-properties": "^6.0.0", "postcss-image-set-function": "^7.0.0", - "postcss-lab-function": "^7.0.10", + "postcss-lab-function": "^7.0.12", "postcss-logical": "^8.1.0", "postcss-nesting": "^13.0.2", "postcss-opacity-percentage": "^3.0.0", "postcss-overflow-shorthand": "^6.0.0", - "postcss-page-break": "^3.0.4", - "postcss-place": "^10.0.0", - "postcss-pseudo-class-any-link": "^10.0.1", - "postcss-replace-overflow-wrap": "^4.0.0", - "postcss-selector-not": "^8.0.1" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "postcss": "^8.4" - } - }, - "node_modules/postcss-pseudo-class-any-link": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/postcss-pseudo-class-any-link/-/postcss-pseudo-class-any-link-10.0.1.tgz", - "integrity": "sha512-3el9rXlBOqTFaMFkWDOkHUTQekFIYnaQY55Rsp8As8QQkpiSgIYEcF/6Ond93oHiDsGb4kad8zjt+NPlOC1H0Q==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/csstools" - }, - { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - } - ], - "license": "MIT-0", - "dependencies": { - "postcss-selector-parser": "^7.0.0" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "postcss": "^8.4" - } - }, - "node_modules/postcss-pseudo-class-any-link/node_modules/postcss-selector-parser": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.0.tgz", - "integrity": "sha512-8sLjZwK0R+JlxlYcTuVnyT2v+htpdrjDOKuMcOVdYjt52Lh8hWRYpxBPoKx/Zg+bcjc3wx6fmQevMmUztS/ccA==", - "license": "MIT", - "dependencies": { - "cssesc": "^3.0.0", - "util-deprecate": "^1.0.2" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss-reduce-idents": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/postcss-reduce-idents/-/postcss-reduce-idents-6.0.3.tgz", - "integrity": "sha512-G3yCqZDpsNPoQgbDUy3T0E6hqOQ5xigUtBQyrmq3tn2GxlyiL0yyl7H+T8ulQR6kOcHJ9t7/9H4/R2tv8tJbMA==", - "license": "MIT", - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^14 || ^16 || >=18.0" - }, - "peerDependencies": { - "postcss": "^8.4.31" - } - }, - "node_modules/postcss-reduce-initial": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-6.1.0.tgz", - "integrity": "sha512-RarLgBK/CrL1qZags04oKbVbrrVK2wcxhvta3GCxrZO4zveibqbRPmm2VI8sSgCXwoUHEliRSbOfpR0b/VIoiw==", - "license": "MIT", - "dependencies": { - "browserslist": "^4.23.0", - "caniuse-api": "^3.0.0" - }, - "engines": { - "node": "^14 || ^16 || >=18.0" - }, - "peerDependencies": { - "postcss": "^8.4.31" - } - }, - "node_modules/postcss-reduce-transforms": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/postcss-reduce-transforms/-/postcss-reduce-transforms-6.0.2.tgz", - "integrity": "sha512-sB+Ya++3Xj1WaT9+5LOOdirAxP7dJZms3GRcYheSPi1PiTMigsxHAdkrbItHxwYHr4kt1zL7mmcHstgMYT+aiA==", - "license": "MIT", - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^14 || ^16 || >=18.0" - }, - "peerDependencies": { - "postcss": "^8.4.31" - } - }, - "node_modules/postcss-replace-overflow-wrap": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-replace-overflow-wrap/-/postcss-replace-overflow-wrap-4.0.0.tgz", - "integrity": "sha512-KmF7SBPphT4gPPcKZc7aDkweHiKEEO8cla/GjcBK+ckKxiZslIu3C4GCRW3DNfL0o7yW7kMQu9xlZ1kXRXLXtw==", - "license": "MIT", - "peerDependencies": { - "postcss": "^8.0.3" - } - }, - "node_modules/postcss-selector-not": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/postcss-selector-not/-/postcss-selector-not-8.0.1.tgz", - "integrity": "sha512-kmVy/5PYVb2UOhy0+LqUYAhKj7DUGDpSWa5LZqlkWJaaAV+dxxsOG3+St0yNLu6vsKD7Dmqx+nWQt0iil89+WA==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/csstools" - }, - { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - } - ], - "license": "MIT", - "dependencies": { - "postcss-selector-parser": "^7.0.0" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "postcss": "^8.4" - } - }, - "node_modules/postcss-selector-not/node_modules/postcss-selector-parser": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.0.tgz", - "integrity": "sha512-8sLjZwK0R+JlxlYcTuVnyT2v+htpdrjDOKuMcOVdYjt52Lh8hWRYpxBPoKx/Zg+bcjc3wx6fmQevMmUztS/ccA==", - "license": "MIT", - "dependencies": { - "cssesc": "^3.0.0", - "util-deprecate": "^1.0.2" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss-selector-parser": { - "version": "6.1.2", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", - "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", - "license": "MIT", - "dependencies": { - "cssesc": "^3.0.0", - "util-deprecate": "^1.0.2" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss-sort-media-queries": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/postcss-sort-media-queries/-/postcss-sort-media-queries-5.2.0.tgz", - "integrity": "sha512-AZ5fDMLD8SldlAYlvi8NIqo0+Z8xnXU2ia0jxmuhxAU+Lqt9K+AlmLNJ/zWEnE9x+Zx3qL3+1K20ATgNOr3fAA==", - "license": "MIT", - "dependencies": { - "sort-css-media-queries": "2.2.0" - }, - "engines": { - "node": ">=14.0.0" - }, - "peerDependencies": { - "postcss": "^8.4.23" - } - }, - "node_modules/postcss-svgo": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-6.0.3.tgz", - "integrity": "sha512-dlrahRmxP22bX6iKEjOM+c8/1p+81asjKT+V5lrgOH944ryx/OHpclnIbGsKVd3uWOXFLYJwCVf0eEkJGvO96g==", - "license": "MIT", - "dependencies": { - "postcss-value-parser": "^4.2.0", - "svgo": "^3.2.0" - }, - "engines": { - "node": "^14 || ^16 || >= 18" - }, - "peerDependencies": { - "postcss": "^8.4.31" - } - }, - "node_modules/postcss-unique-selectors": { - "version": "6.0.4", - "resolved": "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-6.0.4.tgz", - "integrity": "sha512-K38OCaIrO8+PzpArzkLKB42dSARtC2tmG6PvD4b1o1Q2E9Os8jzfWFfSy/rixsHwohtsDdFtAWGjFVFUdwYaMg==", - "license": "MIT", - "dependencies": { - "postcss-selector-parser": "^6.0.16" - }, - "engines": { - "node": "^14 || ^16 || >=18.0" - }, - "peerDependencies": { - "postcss": "^8.4.31" - } - }, - "node_modules/postcss-value-parser": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", - "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", - "license": "MIT" - }, - "node_modules/postcss-zindex": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/postcss-zindex/-/postcss-zindex-6.0.2.tgz", - "integrity": "sha512-5BxW9l1evPB/4ZIc+2GobEBoKC+h8gPGCMi+jxsYvd2x0mjq7wazk6DrP71pStqxE9Foxh5TVnonbWpFZzXaYg==", - "license": "MIT", - "engines": { - "node": "^14 || ^16 || >=18.0" - }, - "peerDependencies": { - "postcss": "^8.4.31" - } - }, - "node_modules/potpack": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/potpack/-/potpack-2.1.0.tgz", - "integrity": "sha512-pcaShQc1Shq0y+E7GqJqvZj8DTthWV1KeHGdi0Z6IAin2Oi3JnLCOfwnCo84qc+HAp52wT9nK9H7FAJp5a44GQ==", - "license": "ISC" - }, - "node_modules/prepend-http": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", - "integrity": "sha512-PhmXi5XmoyKw1Un4E+opM2KcsJInDvKyuOumcjjw3waw86ZNjHwVUOOWLc4bCzLdcKNaWBH9e99sbWzDQsVaYg==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/pretty-bytes": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-5.6.0.tgz", - "integrity": "sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==", - "license": "MIT", - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/pretty-error": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/pretty-error/-/pretty-error-4.0.0.tgz", - "integrity": "sha512-AoJ5YMAcXKYxKhuJGdcvse+Voc6v1RgnsR3nWcYU7q4t6z0Q6T86sv5Zq8VIRbOWWFpvdGE83LtdSMNd+6Y0xw==", - "license": "MIT", - "dependencies": { - "lodash": "^4.17.20", - "renderkid": "^3.0.0" - } - }, - "node_modules/pretty-time": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/pretty-time/-/pretty-time-1.1.0.tgz", - "integrity": "sha512-28iF6xPQrP8Oa6uxE6a1biz+lWeTOAPKggvjB8HAs6nVMKZwf5bG++632Dx614hIWgUPkgivRfG+a8uAXGTIbA==", - "license": "MIT", + "postcss-page-break": "^3.0.4", + "postcss-place": "^10.0.0", + "postcss-pseudo-class-any-link": "^10.0.1", + "postcss-replace-overflow-wrap": "^4.0.0", + "postcss-selector-not": "^8.0.1" + }, "engines": { - "node": ">=4" - } - }, - "node_modules/prism-react-renderer": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/prism-react-renderer/-/prism-react-renderer-2.4.1.tgz", - "integrity": "sha512-ey8Ls/+Di31eqzUxC46h8MksNuGx/n0AAC8uKpwFau4RPDYLuE3EXTp8N8G2vX2N7UC/+IXeNUnlWBGGcAG+Ig==", - "license": "MIT", - "dependencies": { - "@types/prismjs": "^1.26.0", - "clsx": "^2.0.0" + "node": ">=18" }, "peerDependencies": { - "react": ">=16.0.0" - } - }, - "node_modules/prism-react-renderer/node_modules/clsx": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.1.1.tgz", - "integrity": "sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==", - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/prismjs": { - "version": "1.30.0", - "resolved": "https://registry.npmjs.org/prismjs/-/prismjs-1.30.0.tgz", - "integrity": "sha512-DEvV2ZF2r2/63V+tK8hQvrR2ZGn10srHbXviTlcv7Kpzw8jWiNTqbVgjO3IY8RxrrOUF8VPMQQFysYYYv0YZxw==", - "license": "MIT", - "engines": { - "node": ">=6" + "postcss": "^8.4" } }, - "node_modules/process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", - "license": "MIT" - }, - "node_modules/prompts": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", - "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", - "license": "MIT", + "node_modules/postcss-pseudo-class-any-link": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/postcss-pseudo-class-any-link/-/postcss-pseudo-class-any-link-10.0.1.tgz", + "integrity": "sha512-3el9rXlBOqTFaMFkWDOkHUTQekFIYnaQY55Rsp8As8QQkpiSgIYEcF/6Ond93oHiDsGb4kad8zjt+NPlOC1H0Q==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", "dependencies": { - "kleur": "^3.0.3", - "sisteransi": "^1.0.5" + "postcss-selector-parser": "^7.0.0" }, "engines": { - "node": ">= 6" - } - }, - "node_modules/prop-types": { - "version": "15.8.1", - "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", - "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", - "license": "MIT", - "dependencies": { - "loose-envify": "^1.4.0", - "object-assign": "^4.1.1", - "react-is": "^16.13.1" + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "node_modules/prop-types-exact": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/prop-types-exact/-/prop-types-exact-1.2.7.tgz", - "integrity": "sha512-A4RaV6mg3jocQqBYmqi2ojJ2VnV4AKTEHhl3xHsud08/u87gcVJc8DUOtgnPegoOCQv/shUqEk4eZGYibjnHzQ==", + "node_modules/postcss-pseudo-class-any-link/node_modules/postcss-selector-parser": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.1.tgz", + "integrity": "sha512-orRsuYpJVw8LdAwqqLykBj9ecS5/cRHlI5+nvTo8LcCKmzDmqVORXtOIYEEQuL9D4BxtA1lm5isAqzQZCoQ6Eg==", "license": "MIT", "dependencies": { - "call-bound": "^1.0.3", - "es-errors": "^1.3.0", - "hasown": "^2.0.2", - "isarray": "^2.0.5", - "object.assign": "^4.1.7", - "own-keys": "^1.0.0" + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" }, "engines": { - "node": ">= 0.8" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/prop-types-exact/node_modules/isarray": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", - "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", - "license": "MIT" - }, - "node_modules/property-information": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/property-information/-/property-information-7.1.0.tgz", - "integrity": "sha512-TwEZ+X+yCJmYfL7TPUOcvBZ4QfoT5YenQiJuX//0th53DE6w0xxLEtfK3iyryQFddXuvkIk51EEgrJQ0WJkOmQ==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" + "node": ">=4" } }, - "node_modules/proto-list": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/proto-list/-/proto-list-1.2.4.tgz", - "integrity": "sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==", - "license": "ISC" - }, - "node_modules/protocol-buffers-schema": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/protocol-buffers-schema/-/protocol-buffers-schema-3.6.0.tgz", - "integrity": "sha512-TdDRD+/QNdrCGCE7v8340QyuXd4kIWIgapsE2+n/SaGiSSbomYl4TjHlvIoCWRpE7wFt02EpB35VVA2ImcBVqw==", - "license": "MIT" - }, - "node_modules/proxy-addr": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", - "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", + "node_modules/postcss-reduce-idents": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/postcss-reduce-idents/-/postcss-reduce-idents-6.0.3.tgz", + "integrity": "sha512-G3yCqZDpsNPoQgbDUy3T0E6hqOQ5xigUtBQyrmq3tn2GxlyiL0yyl7H+T8ulQR6kOcHJ9t7/9H4/R2tv8tJbMA==", "license": "MIT", "dependencies": { - "forwarded": "0.2.0", - "ipaddr.js": "1.9.1" + "postcss-value-parser": "^4.2.0" }, "engines": { - "node": ">= 0.10" - } - }, - "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==", - "license": "ISC" - }, - "node_modules/psl": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.15.0.tgz", - "integrity": "sha512-JZd3gMVBAVQkSs6HdNZo9Sdo0LNcQeMNP3CozBJb3JYC/QUYZTnKxP+f8oWRX4rHP5EurWxqAHTSwUCjlNKa1w==", - "license": "MIT", - "dependencies": { - "punycode": "^2.3.1" + "node": "^14 || ^16 || >=18.0" }, - "funding": { - "url": "https://github.com/sponsors/lupomontero" + "peerDependencies": { + "postcss": "^8.4.31" } }, - "node_modules/pump": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.3.tgz", - "integrity": "sha512-todwxLMY7/heScKmntwQG8CXVkWUOdYxIvY2s0VWAAMh/nd8SoYiRaKjlr7+iCs984f2P8zvrfWcDDYVb73NfA==", + "node_modules/postcss-reduce-initial": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-6.1.0.tgz", + "integrity": "sha512-RarLgBK/CrL1qZags04oKbVbrrVK2wcxhvta3GCxrZO4zveibqbRPmm2VI8sSgCXwoUHEliRSbOfpR0b/VIoiw==", "license": "MIT", "dependencies": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, - "node_modules/punycode": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", - "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", - "license": "MIT", + "browserslist": "^4.23.0", + "caniuse-api": "^3.0.0" + }, "engines": { - "node": ">=6" + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" } }, - "node_modules/pupa": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/pupa/-/pupa-3.1.0.tgz", - "integrity": "sha512-FLpr4flz5xZTSJxSeaheeMKN/EDzMdK7b8PTOC6a5PYFKTucWbdqjgqaEyH0shFiSJrVB1+Qqi4Tk19ccU6Aug==", + "node_modules/postcss-reduce-transforms": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-reduce-transforms/-/postcss-reduce-transforms-6.0.2.tgz", + "integrity": "sha512-sB+Ya++3Xj1WaT9+5LOOdirAxP7dJZms3GRcYheSPi1PiTMigsxHAdkrbItHxwYHr4kt1zL7mmcHstgMYT+aiA==", "license": "MIT", "dependencies": { - "escape-goat": "^4.0.0" + "postcss-value-parser": "^4.2.0" }, "engines": { - "node": ">=12.20" + "node": "^14 || ^16 || >=18.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "peerDependencies": { + "postcss": "^8.4.31" } }, - "node_modules/q": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/q/-/q-1.5.1.tgz", - "integrity": "sha512-kV/CThkXo6xyFEZUugw/+pIOywXcDbFYgSct5cT3gqlbkBE1SJdwy6UQoZvodiWF/ckQLZyDE/Bu1M6gVu5lVw==", - "deprecated": "You or someone you depend on is using Q, the JavaScript Promise library that gave JavaScript developers strong feelings about promises. They can almost certainly migrate to the native JavaScript promise now. Thank you literally everyone for joining me in this bet against the odds. Be excellent to each other.\n\n(For a CapTP with native promises, see @endo/eventual-send and @endo/captp)", + "node_modules/postcss-replace-overflow-wrap": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-replace-overflow-wrap/-/postcss-replace-overflow-wrap-4.0.0.tgz", + "integrity": "sha512-KmF7SBPphT4gPPcKZc7aDkweHiKEEO8cla/GjcBK+ckKxiZslIu3C4GCRW3DNfL0o7yW7kMQu9xlZ1kXRXLXtw==", "license": "MIT", - "engines": { - "node": ">=0.6.0", - "teleport": ">=0.2.0" + "peerDependencies": { + "postcss": "^8.0.3" } }, - "node_modules/qs": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz", - "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==", - "license": "BSD-3-Clause", + "node_modules/postcss-selector-not": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/postcss-selector-not/-/postcss-selector-not-8.0.1.tgz", + "integrity": "sha512-kmVy/5PYVb2UOhy0+LqUYAhKj7DUGDpSWa5LZqlkWJaaAV+dxxsOG3+St0yNLu6vsKD7Dmqx+nWQt0iil89+WA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT", "dependencies": { - "side-channel": "^1.0.6" + "postcss-selector-parser": "^7.0.0" }, "engines": { - "node": ">=0.6" + "node": ">=18" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "peerDependencies": { + "postcss": "^8.4" } }, - "node_modules/query-string": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/query-string/-/query-string-5.1.1.tgz", - "integrity": "sha512-gjWOsm2SoGlgLEdAGt7a6slVOk9mGiXmPFMqrEhLQ68rhQuBnpfs3+EmlvqKyxnCo9/PPlF+9MtY02S1aFg+Jw==", + "node_modules/postcss-selector-not/node_modules/postcss-selector-parser": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.1.tgz", + "integrity": "sha512-orRsuYpJVw8LdAwqqLykBj9ecS5/cRHlI5+nvTo8LcCKmzDmqVORXtOIYEEQuL9D4BxtA1lm5isAqzQZCoQ6Eg==", "license": "MIT", "dependencies": { - "decode-uri-component": "^0.2.0", - "object-assign": "^4.1.0", - "strict-uri-encode": "^1.0.0" + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" }, "engines": { - "node": ">=0.10.0" + "node": ">=4" } }, - "node_modules/queue-microtask": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", - "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT" - }, - "node_modules/quick-lru": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz", - "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==", + "node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", "license": "MIT", - "engines": { - "node": ">=10" + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": ">=4" } }, - "node_modules/quickselect": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/quickselect/-/quickselect-3.0.0.tgz", - "integrity": "sha512-XdjUArbK4Bm5fLLvlm5KpTFOiOThgfWWI4axAZDWg4E/0mKdZyI9tNEfds27qCi1ze/vwTR16kvmmGhRra3c2g==", - "license": "ISC" - }, - "node_modules/raf": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/raf/-/raf-3.4.1.tgz", - "integrity": "sha512-Sq4CW4QhwOHE8ucn6J34MqtZCeWFP2aQSmrlroYgqAV1PjStIhJXxYuTgUIfkEk7zTLjmIjLmU5q+fbD1NnOJA==", + "node_modules/postcss-sort-media-queries": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/postcss-sort-media-queries/-/postcss-sort-media-queries-5.2.0.tgz", + "integrity": "sha512-AZ5fDMLD8SldlAYlvi8NIqo0+Z8xnXU2ia0jxmuhxAU+Lqt9K+AlmLNJ/zWEnE9x+Zx3qL3+1K20ATgNOr3fAA==", "license": "MIT", "dependencies": { - "performance-now": "^2.1.0" + "sort-css-media-queries": "2.2.0" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "postcss": "^8.4.23" } }, - "node_modules/railroad-diagrams": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/railroad-diagrams/-/railroad-diagrams-1.0.0.tgz", - "integrity": "sha512-cz93DjNeLY0idrCNOH6PviZGRN9GJhsdm9hpn1YCS879fj4W+x5IFJhhkRZcwVgMmFF7R82UA/7Oh+R8lLZg6A==", - "license": "CC0-1.0" - }, - "node_modules/randexp": { - "version": "0.4.6", - "resolved": "https://registry.npmjs.org/randexp/-/randexp-0.4.6.tgz", - "integrity": "sha512-80WNmd9DA0tmZrw9qQa62GPPWfuXJknrmVmLcxvq4uZBdYqb1wYoKTmnlGUchvVWe0XiLupYkBoXVOxz3C8DYQ==", + "node_modules/postcss-svgo": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-6.0.3.tgz", + "integrity": "sha512-dlrahRmxP22bX6iKEjOM+c8/1p+81asjKT+V5lrgOH944ryx/OHpclnIbGsKVd3uWOXFLYJwCVf0eEkJGvO96g==", "license": "MIT", "dependencies": { - "discontinuous-range": "1.0.0", - "ret": "~0.1.10" + "postcss-value-parser": "^4.2.0", + "svgo": "^3.2.0" }, "engines": { - "node": ">=0.12" + "node": "^14 || ^16 || >= 18" + }, + "peerDependencies": { + "postcss": "^8.4.31" } }, - "node_modules/randomatic": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/randomatic/-/randomatic-3.1.1.tgz", - "integrity": "sha512-TuDE5KxZ0J461RVjrJZCJc+J+zCkTb1MbH9AQUq68sMhOMcy9jLcb3BrZKgp9q9Ncltdg4QVqWrH02W2EFFVYw==", + "node_modules/postcss-unique-selectors": { + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-6.0.4.tgz", + "integrity": "sha512-K38OCaIrO8+PzpArzkLKB42dSARtC2tmG6PvD4b1o1Q2E9Os8jzfWFfSy/rixsHwohtsDdFtAWGjFVFUdwYaMg==", "license": "MIT", "dependencies": { - "is-number": "^4.0.0", - "kind-of": "^6.0.0", - "math-random": "^1.0.1" + "postcss-selector-parser": "^6.0.16" }, "engines": { - "node": ">= 0.10.0" + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" } }, - "node_modules/randomatic/node_modules/is-number": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz", - "integrity": "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==", + "node_modules/postcss-value-parser": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", + "license": "MIT" + }, + "node_modules/postcss-zindex": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-zindex/-/postcss-zindex-6.0.2.tgz", + "integrity": "sha512-5BxW9l1evPB/4ZIc+2GobEBoKC+h8gPGCMi+jxsYvd2x0mjq7wazk6DrP71pStqxE9Foxh5TVnonbWpFZzXaYg==", "license": "MIT", "engines": { - "node": ">=0.10.0" + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" } }, - "node_modules/randombytes": { + "node_modules/potpack": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", - "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", - "license": "MIT", - "dependencies": { - "safe-buffer": "^5.1.0" - } + "resolved": "https://registry.npmjs.org/potpack/-/potpack-2.1.0.tgz", + "integrity": "sha512-pcaShQc1Shq0y+E7GqJqvZj8DTthWV1KeHGdi0Z6IAin2Oi3JnLCOfwnCo84qc+HAp52wT9nK9H7FAJp5a44GQ==", + "license": "ISC" }, - "node_modules/range-parser": { + "node_modules/prelude-ls": { "version": "1.2.1", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", - "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "dev": true, "license": "MIT", "engines": { - "node": ">= 0.6" + "node": ">= 0.8.0" } }, - "node_modules/raw-body": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz", - "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==", + "node_modules/prettier": { + "version": "3.8.1", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.8.1.tgz", + "integrity": "sha512-UOnG6LftzbdaHZcKoPFtOcCKztrQ57WkHDeRD9t/PTQtmT0NHSeWWepj6pS0z/N7+08BHFDQVUrfmfMRcZwbMg==", + "dev": true, "license": "MIT", - "dependencies": { - "bytes": "3.1.2", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" + "bin": { + "prettier": "bin/prettier.cjs" }, "engines": { - "node": ">= 0.8" + "node": ">=14" + }, + "funding": { + "url": "https://github.com/prettier/prettier?sponsor=1" } }, - "node_modules/raw-loader": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/raw-loader/-/raw-loader-4.0.2.tgz", - "integrity": "sha512-ZnScIV3ag9A4wPX/ZayxL/jZH+euYb6FcUinPcgiQW0+UBtEv0O6Q3lGd3cqJ+GHH+rksEv3Pj99oxJ3u3VIKA==", + "node_modules/pretty-error": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/pretty-error/-/pretty-error-4.0.0.tgz", + "integrity": "sha512-AoJ5YMAcXKYxKhuJGdcvse+Voc6v1RgnsR3nWcYU7q4t6z0Q6T86sv5Zq8VIRbOWWFpvdGE83LtdSMNd+6Y0xw==", "license": "MIT", "dependencies": { - "loader-utils": "^2.0.0", - "schema-utils": "^3.0.0" - }, - "engines": { - "node": ">= 10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^4.0.0 || ^5.0.0" + "lodash": "^4.17.20", + "renderkid": "^3.0.0" } }, - "node_modules/raw-loader/node_modules/schema-utils": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", - "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", + "node_modules/pretty-time": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/pretty-time/-/pretty-time-1.1.0.tgz", + "integrity": "sha512-28iF6xPQrP8Oa6uxE6a1biz+lWeTOAPKggvjB8HAs6nVMKZwf5bG++632Dx614hIWgUPkgivRfG+a8uAXGTIbA==", "license": "MIT", - "dependencies": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - }, "engines": { - "node": ">= 10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" + "node": ">=4" } }, - "node_modules/rc": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", - "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", - "license": "(BSD-2-Clause OR MIT OR Apache-2.0)", + "node_modules/prism-react-renderer": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/prism-react-renderer/-/prism-react-renderer-2.4.1.tgz", + "integrity": "sha512-ey8Ls/+Di31eqzUxC46h8MksNuGx/n0AAC8uKpwFau4RPDYLuE3EXTp8N8G2vX2N7UC/+IXeNUnlWBGGcAG+Ig==", + "license": "MIT", "dependencies": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" + "@types/prismjs": "^1.26.0", + "clsx": "^2.0.0" }, - "bin": { - "rc": "cli.js" + "peerDependencies": { + "react": ">=16.0.0" } }, - "node_modules/rc/node_modules/ini": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", - "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", - "license": "ISC" - }, - "node_modules/rc/node_modules/strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==", + "node_modules/prism-react-renderer/node_modules/clsx": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.1.1.tgz", + "integrity": "sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==", "license": "MIT", "engines": { - "node": ">=0.10.0" + "node": ">=6" } }, - "node_modules/react": { - "version": "18.3.1", - "resolved": "https://registry.npmjs.org/react/-/react-18.3.1.tgz", - "integrity": "sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==", + "node_modules/prismjs": { + "version": "1.30.0", + "resolved": "https://registry.npmjs.org/prismjs/-/prismjs-1.30.0.tgz", + "integrity": "sha512-DEvV2ZF2r2/63V+tK8hQvrR2ZGn10srHbXviTlcv7Kpzw8jWiNTqbVgjO3IY8RxrrOUF8VPMQQFysYYYv0YZxw==", "license": "MIT", - "dependencies": { - "loose-envify": "^1.1.0" - }, "engines": { - "node": ">=0.10.0" + "node": ">=6" } }, - "node_modules/react-dev-utils": { - "version": "11.0.4", - "resolved": "https://registry.npmjs.org/react-dev-utils/-/react-dev-utils-11.0.4.tgz", - "integrity": "sha512-dx0LvIGHcOPtKbeiSUM4jqpBl3TcY7CDjZdfOIcKeznE7BWr9dg0iPG90G5yfVQ+p/rGNMXdbfStvzQZEVEi4A==", - "license": "MIT", - "dependencies": { - "@babel/code-frame": "7.10.4", - "address": "1.1.2", - "browserslist": "4.14.2", - "chalk": "2.4.2", - "cross-spawn": "7.0.3", - "detect-port-alt": "1.1.6", - "escape-string-regexp": "2.0.0", - "filesize": "6.1.0", - "find-up": "4.1.0", - "fork-ts-checker-webpack-plugin": "4.1.6", - "global-modules": "2.0.0", - "globby": "11.0.1", - "gzip-size": "5.1.1", - "immer": "8.0.1", - "is-root": "2.1.0", - "loader-utils": "2.0.0", - "open": "^7.0.2", - "pkg-up": "3.1.0", - "prompts": "2.4.0", - "react-error-overlay": "^6.0.9", - "recursive-readdir": "2.2.2", - "shell-quote": "1.7.2", - "strip-ansi": "6.0.0", - "text-table": "0.2.0" + "node_modules/process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", + "license": "MIT" + }, + "node_modules/prompts": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", + "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", + "license": "MIT", + "dependencies": { + "kleur": "^3.0.3", + "sisteransi": "^1.0.5" }, "engines": { - "node": ">=10" + "node": ">= 6" } }, - "node_modules/react-dev-utils/node_modules/@babel/code-frame": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.10.4.tgz", - "integrity": "sha512-vG6SvB6oYEhvgisZNFRmRCUkLz11c7rp+tbNTynGqc6mS1d5ATd/sGyV6W0KZZnXRKMTzZDRgQT3Ou9jhpAfUg==", + "node_modules/prop-types": { + "version": "15.8.1", + "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", + "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", "license": "MIT", "dependencies": { - "@babel/highlight": "^7.10.4" + "loose-envify": "^1.4.0", + "object-assign": "^4.1.1", + "react-is": "^16.13.1" } }, - "node_modules/react-dev-utils/node_modules/address": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/address/-/address-1.1.2.tgz", - "integrity": "sha512-aT6camzM4xEA54YVJYSqxz1kv4IHnQZRtThJJHhUMRExaU5spC7jX5ugSwTaTgJliIgs4VhZOk7htClvQ/LmRA==", + "node_modules/property-information": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/property-information/-/property-information-7.1.0.tgz", + "integrity": "sha512-TwEZ+X+yCJmYfL7TPUOcvBZ4QfoT5YenQiJuX//0th53DE6w0xxLEtfK3iyryQFddXuvkIk51EEgrJQ0WJkOmQ==", "license": "MIT", - "engines": { - "node": ">= 0.12.0" + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/react-dev-utils/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "node_modules/proto-list": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/proto-list/-/proto-list-1.2.4.tgz", + "integrity": "sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==", + "license": "ISC" + }, + "node_modules/protocol-buffers-schema": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/protocol-buffers-schema/-/protocol-buffers-schema-3.6.0.tgz", + "integrity": "sha512-TdDRD+/QNdrCGCE7v8340QyuXd4kIWIgapsE2+n/SaGiSSbomYl4TjHlvIoCWRpE7wFt02EpB35VVA2ImcBVqw==", + "license": "MIT" + }, + "node_modules/proxy-addr": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", + "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", "license": "MIT", "dependencies": { - "color-convert": "^1.9.0" + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1" }, "engines": { - "node": ">=4" + "node": ">= 0.10" } }, - "node_modules/react-dev-utils/node_modules/browserslist": { - "version": "4.14.2", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.14.2.tgz", - "integrity": "sha512-HI4lPveGKUR0x2StIz+2FXfDk9SfVMrxn6PLh1JeGUwcuoDkdKZebWiyLRJ68iIPDpMI4JLVDf7S7XzslgWOhw==", + "node_modules/proxy-addr/node_modules/ipaddr.js": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", + "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", "license": "MIT", - "dependencies": { - "caniuse-lite": "^1.0.30001125", - "electron-to-chromium": "^1.3.564", - "escalade": "^3.0.2", - "node-releases": "^1.1.61" - }, - "bin": { - "browserslist": "cli.js" - }, "engines": { - "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" - }, - "funding": { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" + "node": ">= 0.10" } }, - "node_modules/react-dev-utils/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "node_modules/punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", "license": "MIT", - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, "engines": { - "node": ">=4" + "node": ">=6" } }, - "node_modules/react-dev-utils/node_modules/chalk/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "node_modules/punycode.js": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode.js/-/punycode.js-2.3.1.tgz", + "integrity": "sha512-uxFIHU0YlHYhDQtV4R9J6a52SLx28BCjT+4ieh7IGbgwVJWO+km431c4yRlREUAsAmt/uMjQUyQHNEPf0M39CA==", + "dev": true, "license": "MIT", "engines": { - "node": ">=0.8.0" + "node": ">=6" } }, - "node_modules/react-dev-utils/node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "node_modules/pupa": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/pupa/-/pupa-3.3.0.tgz", + "integrity": "sha512-LjgDO2zPtoXP2wJpDjZrGdojii1uqO0cnwKoIoUzkfS98HDmbeiGmYiXo3lXeFlq2xvne1QFQhwYXSUCLKtEuA==", "license": "MIT", "dependencies": { - "color-name": "1.1.3" + "escape-goat": "^4.0.0" + }, + "engines": { + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/react-dev-utils/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", - "license": "MIT" - }, - "node_modules/react-dev-utils/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/pvtsutils": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/pvtsutils/-/pvtsutils-1.3.6.tgz", + "integrity": "sha512-PLgQXQ6H2FWCaeRak8vvk1GW462lMxB5s3Jm673N82zI4vqtVUPuZdffdZbPDFRoU8kAhItWFtPCWiPpp4/EDg==", "license": "MIT", "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, - "engines": { - "node": ">= 8" + "tslib": "^2.8.1" } }, - "node_modules/react-dev-utils/node_modules/escape-string-regexp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", - "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", + "node_modules/pvutils": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/pvutils/-/pvutils-1.1.5.tgz", + "integrity": "sha512-KTqnxsgGiQ6ZAzZCVlJH5eOjSnvlyEgx1m8bkRJfOhmGRqfo5KLvmAlACQkrjEtOQ4B7wF9TdSLIs9O90MX9xA==", "license": "MIT", "engines": { - "node": ">=8" + "node": ">=16.0.0" } }, - "node_modules/react-dev-utils/node_modules/find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "license": "MIT", + "node_modules/qs": { + "version": "6.14.1", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.14.1.tgz", + "integrity": "sha512-4EK3+xJl8Ts67nLYNwqw/dsFVnCf+qR7RgXSK9jEEm9unao3njwMDdmsdvoKBKHzxd7tCYz5e5M+SnMjdtXGQQ==", + "license": "BSD-3-Clause", "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" + "side-channel": "^1.1.0" }, "engines": { - "node": ">=8" + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/react-dev-utils/node_modules/globby": { - "version": "11.0.1", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.1.tgz", - "integrity": "sha512-iH9RmgwCmUJHi2z5o2l3eTtGBtXek1OYlHrbcxOYugyHLmAsZrPj43OtHThd62Buh/Vv6VyCBD2bdyWcGNQqoQ==", + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/quick-lru": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz", + "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==", "license": "MIT", - "dependencies": { - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.1.1", - "ignore": "^5.1.4", - "merge2": "^1.3.0", - "slash": "^3.0.0" - }, "engines": { "node": ">=10" }, @@ -22929,132 +18439,132 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/react-dev-utils/node_modules/has-flag": { + "node_modules/quickselect": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "resolved": "https://registry.npmjs.org/quickselect/-/quickselect-3.0.0.tgz", + "integrity": "sha512-XdjUArbK4Bm5fLLvlm5KpTFOiOThgfWWI4axAZDWg4E/0mKdZyI9tNEfds27qCi1ze/vwTR16kvmmGhRra3c2g==", + "license": "ISC" + }, + "node_modules/randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", "license": "MIT", - "engines": { - "node": ">=4" + "dependencies": { + "safe-buffer": "^5.1.0" } }, - "node_modules/react-dev-utils/node_modules/immer": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/immer/-/immer-8.0.1.tgz", - "integrity": "sha512-aqXhGP7//Gui2+UrEtvxZxSquQVXTpZ7KDxfCcKAF3Vysvw0CViVaW9RZ1j1xlIYqaaaipBoqdqeibkc18PNvA==", + "node_modules/range-parser": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz", + "integrity": "sha512-kA5WQoNVo4t9lNx2kQNFCxKeBl5IbbSNBl1M/tLkw9WCn+hxNBAW5Qh8gdhs63CJnhjJ2zQWFoqPJP2sK1AV5A==", "license": "MIT", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/immer" + "engines": { + "node": ">= 0.6" } }, - "node_modules/react-dev-utils/node_modules/loader-utils": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.0.tgz", - "integrity": "sha512-rP4F0h2RaWSvPEkD7BLDFQnvSf+nK+wr3ESUjNTyAGobqrijmW92zc+SO6d4p4B1wh7+B/Jg1mkQe5NYUEHtHQ==", + "node_modules/raw-body": { + "version": "2.5.3", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.3.tgz", + "integrity": "sha512-s4VSOf6yN0rvbRZGxs8Om5CWj6seneMwK3oDb4lWDH0UPhWcxwOWw5+qk24bxq87szX1ydrwylIOp2uG1ojUpA==", "license": "MIT", "dependencies": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^2.1.2" + "bytes": "~3.1.2", + "http-errors": "~2.0.1", + "iconv-lite": "~0.4.24", + "unpipe": "~1.0.0" }, "engines": { - "node": ">=8.9.0" + "node": ">= 0.8" } }, - "node_modules/react-dev-utils/node_modules/locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "node_modules/raw-body/node_modules/bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", "license": "MIT", - "dependencies": { - "p-locate": "^4.1.0" - }, "engines": { - "node": ">=8" + "node": ">= 0.8" } }, - "node_modules/react-dev-utils/node_modules/node-releases": { - "version": "1.1.77", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.77.tgz", - "integrity": "sha512-rB1DUFUNAN4Gn9keO2K1efO35IDK7yKHCdCaIMvFO7yUYmmZYeDjnGKle26G4rwj+LKRQpjyUUvMkPglwGCYNQ==", - "license": "MIT" - }, - "node_modules/react-dev-utils/node_modules/open": { - "version": "7.4.2", - "resolved": "https://registry.npmjs.org/open/-/open-7.4.2.tgz", - "integrity": "sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q==", + "node_modules/raw-loader": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/raw-loader/-/raw-loader-4.0.2.tgz", + "integrity": "sha512-ZnScIV3ag9A4wPX/ZayxL/jZH+euYb6FcUinPcgiQW0+UBtEv0O6Q3lGd3cqJ+GHH+rksEv3Pj99oxJ3u3VIKA==", "license": "MIT", "dependencies": { - "is-docker": "^2.0.0", - "is-wsl": "^2.1.1" + "loader-utils": "^2.0.0", + "schema-utils": "^3.0.0" }, "engines": { - "node": ">=8" + "node": ">= 10.13.0" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.0.0 || ^5.0.0" } }, - "node_modules/react-dev-utils/node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "node_modules/raw-loader/node_modules/schema-utils": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", + "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", "license": "MIT", "dependencies": { - "p-try": "^2.0.0" + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" }, "engines": { - "node": ">=6" + "node": ">= 10.13.0" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "type": "opencollective", + "url": "https://opencollective.com/webpack" } }, - "node_modules/react-dev-utils/node_modules/p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "license": "MIT", + "node_modules/rc": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", + "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", + "license": "(BSD-2-Clause OR MIT OR Apache-2.0)", "dependencies": { - "p-limit": "^2.2.0" + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" }, - "engines": { - "node": ">=8" + "bin": { + "rc": "cli.js" } }, - "node_modules/react-dev-utils/node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "license": "MIT", - "engines": { - "node": ">=8" - } + "node_modules/rc/node_modules/ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", + "license": "ISC" }, - "node_modules/react-dev-utils/node_modules/prompts": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.0.tgz", - "integrity": "sha512-awZAKrk3vN6CroQukBL+R9051a4R3zCZBlJm/HBfrSZ8iTpYix3VX1vU4mveiLpiwmOJT4wokTF9m6HUk4KqWQ==", + "node_modules/rc/node_modules/strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==", "license": "MIT", - "dependencies": { - "kleur": "^3.0.3", - "sisteransi": "^1.0.5" - }, "engines": { - "node": ">= 6" + "node": ">=0.10.0" } }, - "node_modules/react-dev-utils/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "node_modules/react": { + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react/-/react-18.3.1.tgz", + "integrity": "sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==", "license": "MIT", "dependencies": { - "has-flag": "^3.0.0" + "loose-envify": "^1.1.0" }, "engines": { - "node": ">=4" + "node": ">=0.10.0" } }, "node_modules/react-dom": { @@ -23070,12 +18580,6 @@ "react": "^18.3.1" } }, - "node_modules/react-error-overlay": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/react-error-overlay/-/react-error-overlay-6.1.0.tgz", - "integrity": "sha512-SN/U6Ytxf1QGkw/9ve5Y+NxBbZM6Ht95tuXNMKs8EJyFa/Vy/+Co3stop3KBHARfn/giv+Lj1uUnTfOJ3moFEQ==", - "license": "MIT" - }, "node_modules/react-fast-compare": { "version": "3.2.2", "resolved": "https://registry.npmjs.org/react-fast-compare/-/react-fast-compare-3.2.2.tgz", @@ -23107,9 +18611,9 @@ "license": "MIT" }, "node_modules/react-json-view-lite": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/react-json-view-lite/-/react-json-view-lite-2.4.1.tgz", - "integrity": "sha512-fwFYknRIBxjbFm0kBDrzgBy1xa5tDg2LyXXBepC5f1b+MY3BUClMCsvanMPn089JbV1Eg3nZcrp0VCuH43aXnA==", + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/react-json-view-lite/-/react-json-view-lite-2.5.0.tgz", + "integrity": "sha512-tk7o7QG9oYyELWHL8xiMQ8x4WzjCzbWNyig3uexmkLb54r8jO0yH3WCWx8UZS0c49eSA4QUmG5caiRJ8fAn58g==", "license": "MIT", "engines": { "node": ">=18" @@ -23170,145 +18674,48 @@ "node_modules/react-router-config": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/react-router-config/-/react-router-config-5.1.1.tgz", - "integrity": "sha512-DuanZjaD8mQp1ppHjgnnUnyOlqYXZVjnov/JzFhjLEwd3Z4dYjMSnqrEzzGThH47vpCOqPPwJM2FtthLeJ8Pbg==", - "license": "MIT", - "dependencies": { - "@babel/runtime": "^7.1.2" - }, - "peerDependencies": { - "react": ">=15", - "react-router": ">=5" - } - }, - "node_modules/react-router-dom": { - "version": "5.3.4", - "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-5.3.4.tgz", - "integrity": "sha512-m4EqFMHv/Ih4kpcBCONHbkT68KoAeHN4p3lAGoNryfHi0dMy0kCzEZakiKRsvg5wHZ/JLrLW8o8KomWiz/qbYQ==", - "license": "MIT", - "dependencies": { - "@babel/runtime": "^7.12.13", - "history": "^4.9.0", - "loose-envify": "^1.3.1", - "prop-types": "^15.6.2", - "react-router": "5.3.4", - "tiny-invariant": "^1.0.2", - "tiny-warning": "^1.0.0" - }, - "peerDependencies": { - "react": ">=15" - } - }, - "node_modules/react-router/node_modules/isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==", - "license": "MIT" - }, - "node_modules/react-router/node_modules/path-to-regexp": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.9.0.tgz", - "integrity": "sha512-xIp7/apCFJuUHdDLWe8O1HIkb0kQrOMb/0u6FXQjemHn/ii5LrIzU6bdECnsiTF/GjZkMEKg1xdiZwNqDYlZ6g==", - "license": "MIT", - "dependencies": { - "isarray": "0.0.1" - } - }, - "node_modules/read-pkg": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", - "integrity": "sha512-7BGwRHqt4s/uVbuyoeejRn4YmFnYZiFl4AuaeXHlgZf3sONF0SOGlxs2Pw8g6hCKupo08RafIO5YXFNOKTfwsQ==", - "license": "MIT", - "dependencies": { - "load-json-file": "^1.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/read-pkg-up": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", - "integrity": "sha512-WD9MTlNtI55IwYUS27iHh9tK3YoIVhxis8yKhLpTqWtml739uXc9NWTpxoHkfZf3+DkCCsXox94/VWZniuZm6A==", - "license": "MIT", - "dependencies": { - "find-up": "^1.0.0", - "read-pkg": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/read-pkg-up/node_modules/find-up": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", - "integrity": "sha512-jvElSjyuo4EMQGoTwo1uJU5pQMwTW5lS1x05zzfJuTIyLR3zwO27LYrxNg+dlvKpGOuGy/MzBdXh80g0ve5+HA==", - "license": "MIT", - "dependencies": { - "path-exists": "^2.0.0", - "pinkie-promise": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/read-pkg-up/node_modules/path-exists": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", - "integrity": "sha512-yTltuKuhtNeFJKa1PiRzfLAU5182q1y4Eb4XCJ3PBqyzEDkAZRzBrKKBct682ls9reBVHf9udYLN5Nd+K1B9BQ==", - "license": "MIT", - "dependencies": { - "pinkie-promise": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/read-pkg/node_modules/path-type": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", - "integrity": "sha512-S4eENJz1pkiQn9Znv33Q+deTOKmbl+jj1Fl+qiP/vYezj+S8x+J3Uo0ISrx/QoEvIlOaDWJhPaRd1flJ9HXZqg==", + "integrity": "sha512-DuanZjaD8mQp1ppHjgnnUnyOlqYXZVjnov/JzFhjLEwd3Z4dYjMSnqrEzzGThH47vpCOqPPwJM2FtthLeJ8Pbg==", "license": "MIT", "dependencies": { - "graceful-fs": "^4.1.2", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0" + "@babel/runtime": "^7.1.2" }, - "engines": { - "node": ">=0.10.0" + "peerDependencies": { + "react": ">=15", + "react-router": ">=5" } }, - "node_modules/read-pkg/node_modules/pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", + "node_modules/react-router-dom": { + "version": "5.3.4", + "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-5.3.4.tgz", + "integrity": "sha512-m4EqFMHv/Ih4kpcBCONHbkT68KoAeHN4p3lAGoNryfHi0dMy0kCzEZakiKRsvg5wHZ/JLrLW8o8KomWiz/qbYQ==", "license": "MIT", - "engines": { - "node": ">=0.10.0" + "dependencies": { + "@babel/runtime": "^7.12.13", + "history": "^4.9.0", + "loose-envify": "^1.3.1", + "prop-types": "^15.6.2", + "react-router": "5.3.4", + "tiny-invariant": "^1.0.2", + "tiny-warning": "^1.0.0" + }, + "peerDependencies": { + "react": ">=15" } }, "node_modules/readable-stream": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", - "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", "license": "MIT", "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" } }, - "node_modules/readable-stream/node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "license": "MIT" - }, "node_modules/readdirp": { "version": "3.6.0", "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", @@ -23321,17 +18728,6 @@ "node": ">=8.10.0" } }, - "node_modules/rechoir": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", - "integrity": "sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw==", - "dependencies": { - "resolve": "^1.1.6" - }, - "engines": { - "node": ">= 0.10" - } - }, "node_modules/recma-build-jsx": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/recma-build-jsx/-/recma-build-jsx-1.0.0.tgz", @@ -23348,9 +18744,9 @@ } }, "node_modules/recma-jsx": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/recma-jsx/-/recma-jsx-1.0.0.tgz", - "integrity": "sha512-5vwkv65qWwYxg+Atz95acp8DMu1JDSqdGkA2Of1j6rCreyFUE/gp15fC8MnGEuG1W68UKjM6x6+YTWIh7hZM/Q==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/recma-jsx/-/recma-jsx-1.0.1.tgz", + "integrity": "sha512-huSIy7VU2Z5OLv6oFLosQGGDqPqdO1iq6bWNAdhzMxSJP7RAso4fCZ1cKu8j9YHCZf3TPrq4dw3okhrylgcd7w==", "license": "MIT", "dependencies": { "acorn-jsx": "^5.0.0", @@ -23362,6 +18758,9 @@ "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" + }, + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" } }, "node_modules/recma-parse": { @@ -23396,59 +18795,17 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/recursive-readdir": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/recursive-readdir/-/recursive-readdir-2.2.2.tgz", - "integrity": "sha512-nRCcW9Sj7NuZwa2XvH9co8NPeXUBhZP7CRKJtU+cS6PW9FpCIFoI5ib0NT1ZrbNuPoRy0ylyCaUL8Gih4LSyFg==", - "license": "MIT", - "dependencies": { - "minimatch": "3.0.4" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/recursive-readdir/node_modules/minimatch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", - "license": "ISC", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/redent": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz", - "integrity": "sha512-qtW5hKzGQZqKoh6JNSD+4lfitfPKGz42e6QwiRmPM5mmKtR0N41AbJRYu0xJi7nhOJ4WDgRkKvAk6tw4WIwR4g==", - "license": "MIT", - "dependencies": { - "indent-string": "^2.1.0", - "strip-indent": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/redent/node_modules/indent-string": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz", - "integrity": "sha512-aqwDFWSgSgfRaEwao5lg5KEcVd/2a+D1rvoG7NdilmYz0NwRk6StWpWdz/Hpk34MKPpx7s8XxUqimfcQK6gGlg==", - "license": "MIT", - "dependencies": { - "repeating": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } + "node_modules/reflect-metadata": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.2.2.tgz", + "integrity": "sha512-urBwgfrvVP/eAyXx4hluJivBKzuEbSQs9rKWCrCkbSxNv8mxPcUZKeuoF3Uy4mJl3Lwprp6yy5/39VWigZ4K6Q==", + "license": "Apache-2.0" }, "node_modules/reflect.getprototypeof": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.10.tgz", "integrity": "sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==", + "dev": true, "license": "MIT", "dependencies": { "call-bind": "^1.0.8", @@ -23474,9 +18831,9 @@ "license": "MIT" }, "node_modules/regenerate-unicode-properties": { - "version": "10.2.0", - "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.2.0.tgz", - "integrity": "sha512-DqHn3DwbmmPVzeKj9woBadqmXxLvQoQIwu7nopMc72ztvxVmVk2SBhSnx67zuye5TP+lJsb/TBQsjLKhnDf3MA==", + "version": "10.2.2", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.2.2.tgz", + "integrity": "sha512-m03P+zhBeQd1RGnYxrGyDAPpWX/epKirLrp8e3qevZdVkKtnCrjjWczIbYc8+xd6vcTStVlqfycTx1KR4LOr0g==", "license": "MIT", "dependencies": { "regenerate": "^1.4.2" @@ -23485,54 +18842,11 @@ "node": ">=4" } }, - "node_modules/regenerator-runtime": { - "version": "0.13.11", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", - "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==", - "license": "MIT" - }, - "node_modules/regex-not": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", - "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", - "license": "MIT", - "dependencies": { - "extend-shallow": "^3.0.2", - "safe-regex": "^1.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/regex-not/node_modules/extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", - "license": "MIT", - "dependencies": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/regex-not/node_modules/is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "license": "MIT", - "dependencies": { - "is-plain-object": "^2.0.4" - }, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/regexp.prototype.flags": { "version": "1.5.4", "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.4.tgz", "integrity": "sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==", + "dev": true, "license": "MIT", "dependencies": { "call-bind": "^1.0.8", @@ -23550,29 +18864,29 @@ } }, "node_modules/regexpu-core": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-6.2.0.tgz", - "integrity": "sha512-H66BPQMrv+V16t8xtmq+UC0CBpiTBA60V8ibS1QVReIp8T1z8hwFxqcGzm9K6lgsN7sB5edVH8a+ze6Fqm4weA==", + "version": "6.4.0", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-6.4.0.tgz", + "integrity": "sha512-0ghuzq67LI9bLXpOX/ISfve/Mq33a4aFRzoQYhnnok1JOFpmE/A2TBGkNVenOGEeSBCjIiWcc6MVOG5HEQv0sA==", "license": "MIT", "dependencies": { "regenerate": "^1.4.2", - "regenerate-unicode-properties": "^10.2.0", + "regenerate-unicode-properties": "^10.2.2", "regjsgen": "^0.8.0", - "regjsparser": "^0.12.0", + "regjsparser": "^0.13.0", "unicode-match-property-ecmascript": "^2.0.0", - "unicode-match-property-value-ecmascript": "^2.1.0" + "unicode-match-property-value-ecmascript": "^2.2.1" }, "engines": { "node": ">=4" } }, "node_modules/registry-auth-token": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-5.1.0.tgz", - "integrity": "sha512-GdekYuwLXLxMuFTwAPg5UKGLW/UXzQrZvH/Zj791BQif5T05T0RsaLfHc9q3ZOKi7n+BoprPD9mJ0O0k4xzUlw==", + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-5.1.1.tgz", + "integrity": "sha512-P7B4+jq8DeD2nMsAcdfaqHbssgHtZ7Z5+++a5ask90fvmJ8p5je4mOa+wzu+DB4vQ5tdJV/xywY+UnVFeQLV5Q==", "license": "MIT", "dependencies": { - "@pnpm/npm-conf": "^2.1.0" + "@pnpm/npm-conf": "^3.0.2" }, "engines": { "node": ">=14" @@ -23600,29 +18914,17 @@ "license": "MIT" }, "node_modules/regjsparser": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.12.0.tgz", - "integrity": "sha512-cnE+y8bz4NhMjISKbgeVJtqNbtf5QpjZP+Bslo+UqkIt9QPnX9q095eiRRASJG1/tz6dlNr6Z5NsBiWYokp6EQ==", + "version": "0.13.0", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.13.0.tgz", + "integrity": "sha512-NZQZdC5wOE/H3UT28fVGL+ikOZcEzfMGk/c3iN9UGxzWHMa1op7274oyiUVrAG4B2EuFhus8SvkaYnhvW92p9Q==", "license": "BSD-2-Clause", "dependencies": { - "jsesc": "~3.0.2" + "jsesc": "~3.1.0" }, "bin": { "regjsparser": "bin/parser" } }, - "node_modules/regjsparser/node_modules/jsesc": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.0.2.tgz", - "integrity": "sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==", - "license": "MIT", - "bin": { - "jsesc": "bin/jsesc" - }, - "engines": { - "node": ">=6" - } - }, "node_modules/rehype-raw": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/rehype-raw/-/rehype-raw-7.0.0.tgz", @@ -23729,9 +19031,9 @@ } }, "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==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/remark-mdx/-/remark-mdx-3.1.1.tgz", + "integrity": "sha512-Pjj2IYlUY3+D8x00UJsIOg5BEvfMyeI+2uLPn9VO9Wg4MEtN/VTIq2NEJQfde9PnX15KgtHyl9S0BcTnWrIuWg==", "license": "MIT", "dependencies": { "mdast-util-mdx": "^3.0.0", @@ -23790,31 +19092,6 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/remarkable": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/remarkable/-/remarkable-2.0.1.tgz", - "integrity": "sha512-YJyMcOH5lrR+kZdmB0aJJ4+93bEojRZ1HGDn9Eagu6ibg7aVZhc3OWbbShRid+Q5eAfsEqWxpe+g5W5nYNfNiA==", - "license": "MIT", - "dependencies": { - "argparse": "^1.0.10", - "autolinker": "^3.11.0" - }, - "bin": { - "remarkable": "bin/remarkable.js" - }, - "engines": { - "node": ">= 6.0.0" - } - }, - "node_modules/remarkable/node_modules/argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "license": "MIT", - "dependencies": { - "sprintf-js": "~1.0.2" - } - }, "node_modules/renderkid": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/renderkid/-/renderkid-3.0.0.tgz", @@ -23915,27 +19192,6 @@ "entities": "^2.0.0" } }, - "node_modules/renderkid/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "license": "MIT", - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/repeat-element": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.4.tgz", - "integrity": "sha512-LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/repeat-string": { "version": "1.6.1", "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", @@ -23945,68 +19201,6 @@ "node": ">=0.10" } }, - "node_modules/repeating": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", - "integrity": "sha512-ZqtSMuVybkISo2OWvqvm7iHSWngvdaW3IpsT9/uP8v4gMi591LY6h35wdOfvQdWCKFWZWm2Y1Opp4kV7vQKT6A==", - "license": "MIT", - "dependencies": { - "is-finite": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/replace-ext": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-1.0.1.tgz", - "integrity": "sha512-yD5BHCe7quCgBph4rMQ+0KkIRKwWCrHDOX1p1Gp6HwjPM5kVoCdKGNhN7ydqqsX6lJEnQDKZ/tFMiEdQ1dvPEw==", - "license": "MIT", - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/request": { - "version": "2.88.2", - "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", - "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", - "deprecated": "request has been deprecated, see https://github.com/request/request/issues/3142", - "license": "Apache-2.0", - "dependencies": { - "aws-sign2": "~0.7.0", - "aws4": "^1.8.0", - "caseless": "~0.12.0", - "combined-stream": "~1.0.6", - "extend": "~3.0.2", - "forever-agent": "~0.6.1", - "form-data": "~2.3.2", - "har-validator": "~5.1.3", - "http-signature": "~1.2.0", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.19", - "oauth-sign": "~0.9.0", - "performance-now": "^2.1.0", - "qs": "~6.5.2", - "safe-buffer": "^5.1.2", - "tough-cookie": "~2.5.0", - "tunnel-agent": "^0.6.0", - "uuid": "^3.3.2" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/request/node_modules/qs": { - "version": "6.5.3", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz", - "integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==", - "license": "BSD-3-Clause", - "engines": { - "node": ">=0.6" - } - }, "node_modules/require-from-string": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", @@ -24031,12 +19225,12 @@ "license": "MIT" }, "node_modules/resolve": { - "version": "1.22.10", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.10.tgz", - "integrity": "sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w==", + "version": "1.22.11", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.11.tgz", + "integrity": "sha512-RfqAvLnMl313r7c9oclB1HhUEAezcpLjz95wFH4LVuhk9JF/r22qmVP9AMmOU4vMX7Q8pN8jwNg/CSpdFnMjTQ==", "license": "MIT", "dependencies": { - "is-core-module": "^2.16.0", + "is-core-module": "^2.16.1", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, @@ -24080,29 +19274,19 @@ "protocol-buffers-schema": "^3.3.1" } }, - "node_modules/resolve-url": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", - "integrity": "sha512-ZuF55hVUQaaczgOIwqWzkEcEidmlD/xl44x1UZnhOXcYuFN2S6+rcxpG+C1N3So0wvNI3DmJICUFfu2SxhBmvg==", - "deprecated": "https://github.com/lydell/resolve-url#deprecated", - "license": "MIT" - }, "node_modules/responselike": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz", - "integrity": "sha512-/Fpe5guzJk1gPqdJLJR5u7eG/gNY4nImjbRDaVWVMRhne55TCmj2i9Q+54PBRfatRC8v/rIiv9BN0pMd9OV5EQ==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/responselike/-/responselike-3.0.0.tgz", + "integrity": "sha512-40yHxbNcl2+rzXvZuVkrYohathsSJlMTXKryG5y8uciHv1+xDLHQpgjG64JUO9nrEq2jGLH6IZ8BcZyw3wrweg==", "license": "MIT", "dependencies": { - "lowercase-keys": "^1.0.0" - } - }, - "node_modules/ret": { - "version": "0.1.15", - "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", - "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", - "license": "MIT", + "lowercase-keys": "^3.0.0" + }, "engines": { - "node": ">=0.12" + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/retry": { @@ -24124,41 +19308,6 @@ "node": ">=0.10.0" } }, - "node_modules/rgb-regex": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/rgb-regex/-/rgb-regex-1.0.1.tgz", - "integrity": "sha512-gDK5mkALDFER2YLqH6imYvK6g02gpNGM4ILDZ472EwWfXZnC2ZEpoB2ECXTyOVUKuk/bPJZMzwQPBYICzP+D3w==", - "license": "MIT" - }, - "node_modules/rgba-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/rgba-regex/-/rgba-regex-1.0.0.tgz", - "integrity": "sha512-zgn5OjNQXLUTdq8m17KdaicF6w89TZs8ZU8y0AYENIU6wG8GG6LLm0yLSiPY8DmaYmHdgRW8rnApjoT0fQRfMg==", - "license": "MIT" - }, - "node_modules/rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "deprecated": "Rimraf versions prior to v4 are no longer supported", - "license": "ISC", - "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - } - }, - "node_modules/rst-selector-parser": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/rst-selector-parser/-/rst-selector-parser-2.2.3.tgz", - "integrity": "sha512-nDG1rZeP6oFTLN6yNDV/uiAvs1+FS/KlrEwh7+y7dpuApDBy6bI2HTBcc0/V8lv9OTqfyD34eF7au2pm8aBbhA==", - "license": "BSD-3-Clause", - "dependencies": { - "lodash.flattendeep": "^4.4.0", - "nearley": "^2.7.10" - } - }, "node_modules/rtlcss": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/rtlcss/-/rtlcss-4.3.0.tgz", @@ -24177,6 +19326,34 @@ "node": ">=12.0.0" } }, + "node_modules/run-applescript": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/run-applescript/-/run-applescript-7.1.0.tgz", + "integrity": "sha512-DPe5pVFaAsinSaV6QjQ6gdiedWDcRCbUuiQfQa2wmWV7+xC9bGulGI8+TdRmoFkAPaBXk8CrAbnlY2ISniJ47Q==", + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/run-con": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/run-con/-/run-con-1.3.2.tgz", + "integrity": "sha512-CcfE+mYiTcKEzg0IqS08+efdnH0oJ3zV0wSUFBNrMHMuxCtXvBCLzCJHatwuXDcu/RlhjTziTo/a1ruQik6/Yg==", + "dev": true, + "license": "(BSD-2-Clause OR MIT OR Apache-2.0)", + "dependencies": { + "deep-extend": "^0.6.0", + "ini": "~4.1.0", + "minimist": "^1.2.8", + "strip-json-comments": "~3.1.1" + }, + "bin": { + "run-con": "cli.js" + } + }, "node_modules/run-parallel": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", @@ -24210,6 +19387,7 @@ "version": "1.1.3", "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.3.tgz", "integrity": "sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q==", + "dev": true, "license": "MIT", "dependencies": { "call-bind": "^1.0.8", @@ -24229,6 +19407,7 @@ "version": "2.0.5", "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", + "dev": true, "license": "MIT" }, "node_modules/safe-buffer": { @@ -24251,15 +19430,11 @@ ], "license": "MIT" }, - "node_modules/safe-json-parse": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/safe-json-parse/-/safe-json-parse-1.0.1.tgz", - "integrity": "sha512-o0JmTu17WGUaUOHa1l0FPGXKBfijbxK6qoHzlkihsDXxzBHvJcA7zgviKR92Xs841rX9pK16unfphLq0/KqX7A==" - }, "node_modules/safe-push-apply": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/safe-push-apply/-/safe-push-apply-1.0.0.tgz", "integrity": "sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA==", + "dev": true, "license": "MIT", "dependencies": { "es-errors": "^1.3.0", @@ -24276,21 +19451,14 @@ "version": "2.0.5", "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", + "dev": true, "license": "MIT" }, - "node_modules/safe-regex": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", - "integrity": "sha512-aJXcif4xnaNUzvUuC5gcb46oTS7zvg4jpMTnuqtrEPlR3vFr4pxtdTwaF1Qs3Enjn9HK+ZlwQui+a7z0SywIzg==", - "license": "MIT", - "dependencies": { - "ret": "~0.1.10" - } - }, "node_modules/safe-regex-test": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.1.0.tgz", "integrity": "sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==", + "dev": true, "license": "MIT", "dependencies": { "call-bound": "^1.0.2", @@ -24304,12 +19472,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/safe-stable-stringify": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-1.1.1.tgz", - "integrity": "sha512-ERq4hUjKDbJfE4+XtZLFPCDi8Vb1JqaxAPTxWFLBx8XcAlf9Bda/ZJdVezs/NAfsMQScyIlUMx+Yeu7P7rx5jw==", - "license": "MIT" - }, "node_modules/safer-buffer": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", @@ -24317,10 +19479,13 @@ "license": "MIT" }, "node_modules/sax": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.4.1.tgz", - "integrity": "sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg==", - "license": "ISC" + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.4.4.tgz", + "integrity": "sha512-1n3r/tGXO6b6VXMdFT54SHzT9ytu9yr7TaELowdYpMqY/Ao7EnlQGmAQ1+RatX7Tkkdm6hONI2owqNx2aZj5Sw==", + "license": "BlueOak-1.0.0", + "engines": { + "node": ">=11.0.0" + } }, "node_modules/scheduler": { "version": "0.23.2", @@ -24338,9 +19503,9 @@ "license": "Apache-2.0" }, "node_modules/schema-utils": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.3.2.tgz", - "integrity": "sha512-Gn/JaSk/Mt9gYubxTtSn/QCV4em9mpAPiR1rqy/Ocu19u/G9J5WWdNoUT4SiV6mFC3y6cxyFcFwdzPM3FgxGAQ==", + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.3.3.tgz", + "integrity": "sha512-eflK8wEtyOE6+hsaRVPxvUKYCpRgzLqDTb8krvAsRIwOGlHoSgYLgBXoubGgLd2fT41/OUYdb48v4k4WWHQurA==", "license": "MIT", "dependencies": { "@types/json-schema": "^7.0.9", @@ -24410,25 +19575,6 @@ "node": ">=4" } }, - "node_modules/seek-bzip": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/seek-bzip/-/seek-bzip-1.0.6.tgz", - "integrity": "sha512-e1QtP3YL5tWww8uKaOCQ18UxIT2laNBXHjV/S2WYCiK4udiv8lkG89KRIoCjUagnAmCBurjF4zEVX2ByBbnCjQ==", - "license": "MIT", - "dependencies": { - "commander": "^2.8.1" - }, - "bin": { - "seek-bunzip": "bin/seek-bunzip", - "seek-table": "bin/seek-bzip-table" - } - }, - "node_modules/seek-bzip/node_modules/commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "license": "MIT" - }, "node_modules/select-hose": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", @@ -24436,22 +19582,22 @@ "license": "MIT" }, "node_modules/selfsigned": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-2.4.1.tgz", - "integrity": "sha512-th5B4L2U+eGLq1TVh7zNRGBapioSORUeymIydxgFpwww9d2qyKvtuPU2jJuHvYAwwqi2Y596QBL3eEqcPEYL8Q==", + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-5.5.0.tgz", + "integrity": "sha512-ftnu3TW4+3eBfLRFnDEkzGxSF/10BJBkaLJuBHZX0kiPS7bRdlpZGu6YGt4KngMkdTwJE6MbjavFpqHvqVt+Ew==", "license": "MIT", "dependencies": { - "@types/node-forge": "^1.3.0", - "node-forge": "^1" + "@peculiar/x509": "^1.14.2", + "pkijs": "^3.3.3" }, "engines": { - "node": ">=10" + "node": ">=18" } }, "node_modules/semver": { - "version": "7.7.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", - "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz", + "integrity": "sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==", "license": "ISC", "bin": { "semver": "bin/semver.js" @@ -24475,55 +19621,25 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/semver-regex": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/semver-regex/-/semver-regex-2.0.0.tgz", - "integrity": "sha512-mUdIBBvdn0PLOeP3TEkMH7HHeUP3GjsXCwKarjv/kGmUFOYg1VqEemKhoQpWMu6X2I8kHeuVdGibLGkVK+/5Qw==", - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/semver-truncate": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/semver-truncate/-/semver-truncate-1.1.2.tgz", - "integrity": "sha512-V1fGg9i4CL3qesB6U0L6XAm4xOJiHmt4QAacazumuasc03BvtFGIMCduv01JWQ69Nv+JST9TqhSCiJoxoY031w==", - "license": "MIT", - "dependencies": { - "semver": "^5.3.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/semver-truncate/node_modules/semver": { - "version": "5.7.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", - "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", - "license": "ISC", - "bin": { - "semver": "bin/semver" - } - }, "node_modules/send": { - "version": "0.19.0", - "resolved": "https://registry.npmjs.org/send/-/send-0.19.0.tgz", - "integrity": "sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/send/-/send-0.19.2.tgz", + "integrity": "sha512-VMbMxbDeehAxpOtWJXlcUS5E8iXh6QmN+BkRX1GARS3wRaXEEgzCcB10gTQazO42tpNIya8xIyNx8fll1OFPrg==", "license": "MIT", "dependencies": { "debug": "2.6.9", "depd": "2.0.0", "destroy": "1.2.0", - "encodeurl": "~1.0.2", + "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "etag": "~1.8.1", - "fresh": "0.5.2", - "http-errors": "2.0.0", + "fresh": "~0.5.2", + "http-errors": "~2.0.1", "mime": "1.6.0", "ms": "2.1.3", - "on-finished": "2.4.1", + "on-finished": "~2.4.1", "range-parser": "~1.2.1", - "statuses": "2.0.1" + "statuses": "~2.0.2" }, "engines": { "node": ">= 0.8.0" @@ -24544,13 +19660,13 @@ "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "license": "MIT" }, - "node_modules/send/node_modules/encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "node_modules/send/node_modules/range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", "license": "MIT", "engines": { - "node": ">= 0.8" + "node": ">= 0.6" } }, "node_modules/serialize-javascript": { @@ -24577,76 +19693,32 @@ "range-parser": "1.2.0" } }, - "node_modules/serve-handler/node_modules/bytes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", - "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==", - "license": "MIT", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/serve-handler/node_modules/content-disposition": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz", - "integrity": "sha512-kRGRZw3bLlFISDBgwTSA1TMBFN6J6GWDeubmDE3AF+3+yXL8hTWv8r5rkLbqYXY4RjPk/EzHnClI3zQf1cFmHA==", - "license": "MIT", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/serve-handler/node_modules/mime-db": { - "version": "1.33.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.33.0.tgz", - "integrity": "sha512-BHJ/EKruNIqJf/QahvxwQZXKygOQ256myeN/Ew+THcAa5q+PjyTTMMeNQC4DZw5AwfvelsUrA6B67NKMqXDbzQ==", - "license": "MIT", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/serve-handler/node_modules/mime-types": { - "version": "2.1.18", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.18.tgz", - "integrity": "sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==", - "license": "MIT", - "dependencies": { - "mime-db": "~1.33.0" - }, - "engines": { - "node": ">= 0.6" - } - }, "node_modules/serve-handler/node_modules/path-to-regexp": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-3.3.0.tgz", "integrity": "sha512-qyCH421YQPS2WFDxDjftfc1ZR5WKQzVzqsp4n9M2kQhVOo/ByahFoUNJfl58kOcEGfQ//7weFTDhm+ss8Ecxgw==", "license": "MIT" }, - "node_modules/serve-handler/node_modules/range-parser": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz", - "integrity": "sha512-kA5WQoNVo4t9lNx2kQNFCxKeBl5IbbSNBl1M/tLkw9WCn+hxNBAW5Qh8gdhs63CJnhjJ2zQWFoqPJP2sK1AV5A==", - "license": "MIT", - "engines": { - "node": ">= 0.6" - } - }, "node_modules/serve-index": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", - "integrity": "sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw==", + "version": "1.9.2", + "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.2.tgz", + "integrity": "sha512-KDj11HScOaLmrPxl70KYNW1PksP4Nb/CLL2yvC+Qd2kHMPEEpfc4Re2e4FOay+bC/+XQl/7zAcWON3JVo5v3KQ==", "license": "MIT", "dependencies": { - "accepts": "~1.3.4", + "accepts": "~1.3.8", "batch": "0.6.1", "debug": "2.6.9", "escape-html": "~1.0.3", - "http-errors": "~1.6.2", - "mime-types": "~2.1.17", - "parseurl": "~1.3.2" + "http-errors": "~1.8.0", + "mime-types": "~2.1.35", + "parseurl": "~1.3.3" }, "engines": { "node": ">= 0.8.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" } }, "node_modules/serve-index/node_modules/debug": { @@ -24668,25 +19740,41 @@ } }, "node_modules/serve-index/node_modules/http-errors": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", - "integrity": "sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==", + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.8.1.tgz", + "integrity": "sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==", "license": "MIT", "dependencies": { "depd": "~1.1.2", - "inherits": "2.0.3", - "setprototypeof": "1.1.0", - "statuses": ">= 1.4.0 < 2" + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": ">= 1.5.0 < 2", + "toidentifier": "1.0.1" }, "engines": { "node": ">= 0.6" } }, - "node_modules/serve-index/node_modules/inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==", - "license": "ISC" + "node_modules/serve-index/node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serve-index/node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "license": "MIT", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } }, "node_modules/serve-index/node_modules/ms": { "version": "2.0.0", @@ -24694,12 +19782,6 @@ "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "license": "MIT" }, - "node_modules/serve-index/node_modules/setprototypeof": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", - "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", - "license": "ISC" - }, "node_modules/serve-index/node_modules/statuses": { "version": "1.5.0", "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", @@ -24710,15 +19792,15 @@ } }, "node_modules/serve-static": { - "version": "1.16.2", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.16.2.tgz", - "integrity": "sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw==", + "version": "1.16.3", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.16.3.tgz", + "integrity": "sha512-x0RTqQel6g5SY7Lg6ZreMmsOzncHFU7nhnRWkKgWuMTu5NN0DR5oruckMqRvacAN9d5w6ARnRBXl9xhDCgfMeA==", "license": "MIT", "dependencies": { "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "parseurl": "~1.3.3", - "send": "0.19.0" + "send": "~0.19.1" }, "engines": { "node": ">= 0.8.0" @@ -24745,6 +19827,7 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz", "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==", + "dev": true, "license": "MIT", "dependencies": { "define-data-property": "^1.1.4", @@ -24756,22 +19839,11 @@ "node": ">= 0.4" } }, - "node_modules/set-getter": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/set-getter/-/set-getter-0.1.1.tgz", - "integrity": "sha512-9sVWOy+gthr+0G9DzqqLaYNA7+5OKkSmcqjL9cBpDEaZrr3ShQlyX2cZ/O/ozE41oxn/Tt0LGEM/w4Rub3A3gw==", - "license": "MIT", - "dependencies": { - "to-object-path": "^0.3.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/set-proto": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/set-proto/-/set-proto-1.0.0.tgz", "integrity": "sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==", + "dev": true, "license": "MIT", "dependencies": { "dunder-proto": "^1.0.1", @@ -24782,27 +19854,6 @@ "node": ">= 0.4" } }, - "node_modules/set-value": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz", - "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==", - "license": "MIT", - "dependencies": { - "extend-shallow": "^2.0.1", - "is-extendable": "^0.1.1", - "is-plain-object": "^2.0.3", - "split-string": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/setimmediate": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", - "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==", - "license": "MIT" - }, "node_modules/setprototypeof": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", @@ -24849,26 +19900,15 @@ } }, "node_modules/shell-quote": { - "version": "1.7.2", - "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.7.2.tgz", - "integrity": "sha512-mRz/m/JVscCrkMyPqHc/bczi3OQHkLTqXHEFu0zDhK/qfv3UcOA4SVmRCLmos4bhjr9ekVQubj/R7waKapmiQg==", - "license": "MIT" - }, - "node_modules/shelljs": { - "version": "0.8.5", - "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.8.5.tgz", - "integrity": "sha512-TiwcRcrkhHvbrZbnRcFYMLl30Dfov3HKqzp5tO5b4pt6G/SezKcYhmDg15zXVBswHmctSAQKznqNW2LO5tTDow==", - "license": "BSD-3-Clause", - "dependencies": { - "glob": "^7.0.0", - "interpret": "^1.0.0", - "rechoir": "^0.6.2" - }, - "bin": { - "shjs": "bin/shjs" - }, + "version": "1.8.3", + "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.3.tgz", + "integrity": "sha512-ObmnIF4hXNg1BqhnHmgbDETF8dLPCggZWBjkQfhZpbszZnYur5DUljTcCHii5LC3J5E0yeO/1LIMyH+UvHQgyw==", + "license": "MIT", "engines": { - "node": ">=4" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/side-channel": { @@ -24949,21 +19989,6 @@ "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", "license": "ISC" }, - "node_modules/simple-swizzle": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz", - "integrity": "sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==", - "license": "MIT", - "dependencies": { - "is-arrayish": "^0.3.1" - } - }, - "node_modules/simple-swizzle/node_modules/is-arrayish": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz", - "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==", - "license": "MIT" - }, "node_modules/sirv": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/sirv/-/sirv-2.0.4.tgz", @@ -25030,132 +20055,27 @@ "node": ">=8" } }, - "node_modules/snake-case": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/snake-case/-/snake-case-3.0.4.tgz", - "integrity": "sha512-LAOh4z89bGQvl9pFfNF8V146i7o7/CqFPbqzYgP+yYzDIDeS9HaNFtXABamRW+AQzEVODcvE79ljJ+8a9YSdMg==", - "license": "MIT", - "dependencies": { - "dot-case": "^3.0.4", - "tslib": "^2.0.3" - } - }, - "node_modules/snapdragon": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", - "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", - "license": "MIT", - "dependencies": { - "base": "^0.11.1", - "debug": "^2.2.0", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "map-cache": "^0.2.2", - "source-map": "^0.5.6", - "source-map-resolve": "^0.5.0", - "use": "^3.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/snapdragon-node": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", - "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", - "license": "MIT", - "dependencies": { - "define-property": "^1.0.0", - "isobject": "^3.0.0", - "snapdragon-util": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/snapdragon-node/node_modules/define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA==", - "license": "MIT", - "dependencies": { - "is-descriptor": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/snapdragon-util": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", - "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", - "license": "MIT", - "dependencies": { - "kind-of": "^3.2.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/snapdragon-util/node_modules/kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", - "license": "MIT", - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/snapdragon/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "license": "MIT", - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/snapdragon/node_modules/define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", - "license": "MIT", - "dependencies": { - "is-descriptor": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/snapdragon/node_modules/is-descriptor": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.7.tgz", - "integrity": "sha512-C3grZTvObeN1xud4cRWl366OMXZTj0+HGyk4hvfpx4ZHt1Pb60ANSXqCK7pdOTeUQpRzECBSTphqvD7U+l22Eg==", - "license": "MIT", - "dependencies": { - "is-accessor-descriptor": "^1.0.1", - "is-data-descriptor": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/snapdragon/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "license": "MIT" - }, - "node_modules/snapdragon/node_modules/source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", + "node_modules/smol-toml": { + "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, "license": "BSD-3-Clause", "engines": { - "node": ">=0.10.0" + "node": ">= 18" + }, + "funding": { + "url": "https://github.com/sponsors/cyyynthia" + } + }, + "node_modules/snake-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/snake-case/-/snake-case-3.0.4.tgz", + "integrity": "sha512-LAOh4z89bGQvl9pFfNF8V146i7o7/CqFPbqzYgP+yYzDIDeS9HaNFtXABamRW+AQzEVODcvE79ljJ+8a9YSdMg==", + "license": "MIT", + "dependencies": { + "dot-case": "^3.0.4", + "tslib": "^2.0.3" } }, "node_modules/sockjs": { @@ -25169,27 +20089,6 @@ "websocket-driver": "^0.7.4" } }, - "node_modules/sockjs/node_modules/faye-websocket": { - "version": "0.11.4", - "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz", - "integrity": "sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==", - "license": "Apache-2.0", - "dependencies": { - "websocket-driver": ">=0.5.1" - }, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/sockjs/node_modules/uuid": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", - "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", - "license": "MIT", - "bin": { - "uuid": "dist/bin/uuid" - } - }, "node_modules/sort-css-media-queries": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/sort-css-media-queries/-/sort-css-media-queries-2.2.0.tgz", @@ -25199,37 +20098,13 @@ "node": ">= 6.3.0" } }, - "node_modules/sort-keys": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-1.1.2.tgz", - "integrity": "sha512-vzn8aSqKgytVik0iwdBEi+zevbTYZogewTUM6dtpmGwEcdzbub/TX4bCzRhebDCRC3QzXgJsLRKB2V/Oof7HXg==", - "license": "MIT", - "dependencies": { - "is-plain-obj": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/sort-keys-length": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/sort-keys-length/-/sort-keys-length-1.0.1.tgz", - "integrity": "sha512-GRbEOUqCxemTAk/b32F2xa8wDTs+Z1QHOkbhJDQTvv/6G3ZkbJ+frYWsTcc7cBB3Fu4wy4XlLCuNtJuMn7Gsvw==", - "license": "MIT", - "dependencies": { - "sort-keys": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/source-map": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", - "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", + "version": "0.7.6", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.6.tgz", + "integrity": "sha512-i5uvt8C3ikiWeNZSVZNWcfZPItFQOsYTUAOkcUPGd8DqDy1uOUikjt5dG+uRlwyvR108Fb9DOd4GvXfT0N2/uQ==", "license": "BSD-3-Clause", "engines": { - "node": ">= 8" + "node": ">= 12" } }, "node_modules/source-map-js": { @@ -25241,20 +20116,6 @@ "node": ">=0.10.0" } }, - "node_modules/source-map-resolve": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz", - "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==", - "deprecated": "See https://github.com/lydell/source-map-resolve#deprecated", - "license": "MIT", - "dependencies": { - "atob": "^2.1.2", - "decode-uri-component": "^0.2.0", - "resolve-url": "^0.2.1", - "source-map-url": "^0.4.0", - "urix": "^0.1.0" - } - }, "node_modules/source-map-support": { "version": "0.5.21", "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", @@ -25274,13 +20135,6 @@ "node": ">=0.10.0" } }, - "node_modules/source-map-url": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.1.tgz", - "integrity": "sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw==", - "deprecated": "See https://github.com/lydell/source-map-url#deprecated", - "license": "MIT" - }, "node_modules/space-separated-tokens": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-2.0.2.tgz", @@ -25291,38 +20145,6 @@ "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/spdx-correct": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.2.0.tgz", - "integrity": "sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==", - "license": "Apache-2.0", - "dependencies": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "node_modules/spdx-exceptions": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.5.0.tgz", - "integrity": "sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==", - "license": "CC-BY-3.0" - }, - "node_modules/spdx-expression-parse": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", - "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", - "license": "MIT", - "dependencies": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "node_modules/spdx-license-ids": { - "version": "3.0.21", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.21.tgz", - "integrity": "sha512-Bvg/8F5XephndSK3JffaRqdT+gyhfqIPwDHpX80tJrF8QQRYMo8sNMeaZ2Dp5+jhwKnUmIOyFFQfHRkjJm5nXg==", - "license": "CC0-1.0" - }, "node_modules/spdy": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.2.tgz", @@ -25353,141 +20175,12 @@ "wbuf": "^1.7.3" } }, - "node_modules/spdy-transport/node_modules/readable-stream": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", - "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", - "license": "MIT", - "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/split-string": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", - "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", - "license": "MIT", - "dependencies": { - "extend-shallow": "^3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/split-string/node_modules/extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", - "license": "MIT", - "dependencies": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/split-string/node_modules/is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "license": "MIT", - "dependencies": { - "is-plain-object": "^2.0.4" - }, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/sprintf-js": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", "license": "BSD-3-Clause" }, - "node_modules/squeak": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/squeak/-/squeak-1.3.0.tgz", - "integrity": "sha512-YQL1ulInM+ev8nXX7vfXsCsDh6IqXlrremc1hzi77776BtpWgYJUMto3UM05GSAaGzJgWekszjoKDrVNB5XG+A==", - "license": "MIT", - "dependencies": { - "chalk": "^1.0.0", - "console-stream": "^0.1.1", - "lpad-align": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/squeak/node_modules/ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/squeak/node_modules/ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/squeak/node_modules/chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==", - "license": "MIT", - "dependencies": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/squeak/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "license": "MIT", - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/squeak/node_modules/strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", - "license": "MIT", - "dependencies": { - "ansi-regex": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/squeak/node_modules/supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==", - "license": "MIT", - "engines": { - "node": ">=0.8.0" - } - }, "node_modules/srcset": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/srcset/-/srcset-4.0.0.tgz", @@ -25500,95 +20193,26 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/sshpk": { - "version": "1.18.0", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.18.0.tgz", - "integrity": "sha512-2p2KJZTSqQ/I3+HX42EpYOa2l3f8Erv8MWKsy2I9uf4wA7yFIkXRffYdsx86y6z4vHtV8u7g+pPlr8/4ouAxsQ==", - "license": "MIT", - "dependencies": { - "asn1": "~0.2.3", - "assert-plus": "^1.0.0", - "bcrypt-pbkdf": "^1.0.0", - "dashdash": "^1.12.0", - "ecc-jsbn": "~0.1.1", - "getpass": "^0.1.1", - "jsbn": "~0.1.0", - "safer-buffer": "^2.0.2", - "tweetnacl": "~0.14.0" - }, - "bin": { - "sshpk-conv": "bin/sshpk-conv", - "sshpk-sign": "bin/sshpk-sign", - "sshpk-verify": "bin/sshpk-verify" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/stable": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/stable/-/stable-0.1.8.tgz", - "integrity": "sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==", - "deprecated": "Modern JS already guarantees Array#sort() is a stable sort, so this library is deprecated. See the compatibility table on MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort#browser_compatibility", - "license": "MIT" - }, - "node_modules/static-extend": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", - "integrity": "sha512-72E9+uLc27Mt718pMHt9VMNiAL4LMsmDbBva8mxWUCkT07fSzEGMYUCk0XWY6lp0j6RBAG4cJ3mWuZv2OE3s0g==", - "license": "MIT", - "dependencies": { - "define-property": "^0.2.5", - "object-copy": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/static-extend/node_modules/define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", - "license": "MIT", - "dependencies": { - "is-descriptor": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/static-extend/node_modules/is-descriptor": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.7.tgz", - "integrity": "sha512-C3grZTvObeN1xud4cRWl366OMXZTj0+HGyk4hvfpx4ZHt1Pb60ANSXqCK7pdOTeUQpRzECBSTphqvD7U+l22Eg==", - "license": "MIT", - "dependencies": { - "is-accessor-descriptor": "^1.0.1", - "is-data-descriptor": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - } - }, "node_modules/statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.2.tgz", + "integrity": "sha512-DvEy55V3DB7uknRo+4iOGT5fP1slR8wQohVdknigZPMpMstaKJQWhwiYBACJE3Ul2pTnATihhBYnRhZQHGBiRw==", "license": "MIT", "engines": { "node": ">= 0.8" } }, "node_modules/std-env": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.9.0.tgz", - "integrity": "sha512-UGvjygr6F6tpH7o2qyqR6QYpwraIjKSdtzyBdyytFOHmPZY917kwdwLG0RbOjWOnKmnm3PeHjaoLLMie7kPLQw==", + "version": "3.10.0", + "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.10.0.tgz", + "integrity": "sha512-5GS12FdOZNliM5mAOxFRg7Ir0pWz8MdpYm6AY6VPkGpbA7ZzmbzNcBJQ0GPvvyWgcY7QAhCgf9Uy89I03faLkg==", "license": "MIT" }, "node_modules/stop-iteration-iterator": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.1.0.tgz", "integrity": "sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ==", + "dev": true, "license": "MIT", "dependencies": { "es-errors": "^1.3.0", @@ -25598,35 +20222,15 @@ "node": ">= 0.4" } }, - "node_modules/strict-uri-encode": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz", - "integrity": "sha512-R3f198pcvnB+5IpnBlRkphuE9n46WyVl8I39W/ZUTZLz4nqSP/oLYUrcnJrw462Ds8he4YKMov2efsTIw1BDGQ==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", "license": "MIT", "dependencies": { - "safe-buffer": "~5.1.0" + "safe-buffer": "~5.2.0" } }, - "node_modules/string_decoder/node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "license": "MIT" - }, - "node_modules/string-template": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/string-template/-/string-template-0.2.1.tgz", - "integrity": "sha512-Yptehjogou2xm4UJbxJ4CxgZx12HBfeystp0y3x7s4Dj32ltVVG1Gg8YhKjHZkHicuKpZX/ffilA8505VbUbpw==" - }, "node_modules/string-width": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", @@ -25640,41 +20244,81 @@ "engines": { "node": ">=12" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/string-width/node_modules/ansi-regex": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz", - "integrity": "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==", - "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/string-width/node_modules/ansi-regex": { + "version": "6.2.2", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.2.2.tgz", + "integrity": "sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg==", + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/string-width/node_modules/strip-ansi": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.2.tgz", + "integrity": "sha512-gmBGslpoQJtgnMAvOVqGZpEz9dyoKTCzy2nfz/n8aIFhN/jCE/rCmcxabB6jOOHV+0WNnylOxaxBQPSvcWklhA==", + "license": "MIT", + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/string.prototype.matchall": { + "version": "4.0.12", + "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.12.tgz", + "integrity": "sha512-6CC9uyBL+/48dYizRf7H7VAYCMCNTBeM78x/VTUe9bFEaxBepPJDa1Ow99LqI/1yF7kuy7Q3cQsYMrcjGUcskA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.6", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "get-intrinsic": "^1.2.6", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "internal-slot": "^1.1.0", + "regexp.prototype.flags": "^1.5.3", + "set-function-name": "^2.0.2", + "side-channel": "^1.1.0" + }, "engines": { - "node": ">=12" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/chalk/ansi-regex?sponsor=1" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/string-width/node_modules/strip-ansi": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", - "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "node_modules/string.prototype.repeat": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/string.prototype.repeat/-/string.prototype.repeat-1.0.0.tgz", + "integrity": "sha512-0u/TldDbKD8bFCQ/4f5+mNRrXwZ8hg2w7ZR8wa16e8z9XpePWl3eGEcUD0OXpEH/VJH/2G3gjUtR3ZOiBe2S/w==", + "dev": true, "license": "MIT", "dependencies": { - "ansi-regex": "^6.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/strip-ansi?sponsor=1" + "define-properties": "^1.1.3", + "es-abstract": "^1.17.5" } }, "node_modules/string.prototype.trim": { "version": "1.2.10", "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.10.tgz", "integrity": "sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA==", + "dev": true, "license": "MIT", "dependencies": { "call-bind": "^1.0.8", @@ -25696,6 +20340,7 @@ "version": "1.0.9", "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.9.tgz", "integrity": "sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ==", + "dev": true, "license": "MIT", "dependencies": { "call-bind": "^1.0.8", @@ -25714,6 +20359,7 @@ "version": "1.0.8", "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz", "integrity": "sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==", + "dev": true, "license": "MIT", "dependencies": { "call-bind": "^1.0.7", @@ -25756,29 +20402,17 @@ } }, "node_modules/strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "license": "MIT", "dependencies": { - "ansi-regex": "^5.0.0" + "ansi-regex": "^5.0.1" }, "engines": { "node": ">=8" } }, - "node_modules/strip-bom": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", - "integrity": "sha512-kwrX1y7czp1E69n2ajbG65mIo9dqvJ+8aBQXOGVxqwvNbsXdFM6Lq37dLAY3mknUwru8CfcCbfOLL/gMo+fi3g==", - "license": "MIT", - "dependencies": { - "is-utf8": "^0.2.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/strip-bom-string": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/strip-bom-string/-/strip-bom-string-1.0.0.tgz", @@ -25788,33 +20422,6 @@ "node": ">=0.10.0" } }, - "node_modules/strip-color": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/strip-color/-/strip-color-0.1.0.tgz", - "integrity": "sha512-p9LsUieSjWNNAxVCXLeilaDlmuUOrDS5/dF9znM1nZc7EGX5+zEFC0bEevsNIaldjlks+2jns5Siz6F9iK6jwA==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/strip-dirs": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/strip-dirs/-/strip-dirs-2.1.0.tgz", - "integrity": "sha512-JOCxOeKLm2CAS73y/U4ZeZPTkE+gNVCzKt7Eox84Iej1LT/2pTWYpZKJuxwQpvX1LiZb1xokNR7RLfuBAa7T3g==", - "license": "MIT", - "dependencies": { - "is-natural-number": "^4.0.1" - } - }, - "node_modules/strip-eof": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", - "integrity": "sha512-7FCwGGmx8mD5xQd3RPUvnSpUXHM3BWuzjtpD4TXsfcZ9EL4azvVVUscFYwD9nx8Kh+uCBC00XBtAykoMHwTh8Q==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/strip-final-newline": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", @@ -25824,21 +20431,6 @@ "node": ">=6" } }, - "node_modules/strip-indent": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz", - "integrity": "sha512-I5iQq6aFMM62fBEAIB/hXzwJD6EEZ0xEGCX2t7oXqaKPIRgt4WruAQ285BISgdkP+HLGWyeGmNJcpIwFeRYRUA==", - "license": "MIT", - "dependencies": { - "get-stdin": "^4.0.1" - }, - "bin": { - "strip-indent": "cli.js" - }, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/strip-json-comments": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", @@ -25851,55 +20443,22 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/strip-outer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/strip-outer/-/strip-outer-1.0.1.tgz", - "integrity": "sha512-k55yxKHwaXnpYGsOzg4Vl8+tDrWylxDEpknGjhTiZB8dFRU5rTo9CAzeycivxV3s+zlTKwrs6WxMxR95n26kwg==", - "license": "MIT", - "dependencies": { - "escape-string-regexp": "^1.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/strip-outer/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "license": "MIT", - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/strnum": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/strnum/-/strnum-1.1.2.tgz", - "integrity": "sha512-vrN+B7DBIoTTZjnPNewwhx6cBA/H+IS7rfW68n7XxC1y7uoiGQBxaKzqucGUgavX15dJgiGztLJ8vxuEzwqBdA==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/NaturalIntelligence" - } - ], - "license": "MIT" - }, "node_modules/style-to-js": { - "version": "1.1.17", - "resolved": "https://registry.npmjs.org/style-to-js/-/style-to-js-1.1.17.tgz", - "integrity": "sha512-xQcBGDxJb6jjFCTzvQtfiPn6YvvP2O8U1MDIPNfJQlWMYfktPy+iGsHE7cssjs7y84d9fQaK4UF3RIJaAHSoYA==", + "version": "1.1.21", + "resolved": "https://registry.npmjs.org/style-to-js/-/style-to-js-1.1.21.tgz", + "integrity": "sha512-RjQetxJrrUJLQPHbLku6U/ocGtzyjbJMP9lCNK7Ag0CNh690nSH8woqWH9u16nMjYBAok+i7JO1NP2pOy8IsPQ==", "license": "MIT", "dependencies": { - "style-to-object": "1.0.9" + "style-to-object": "1.0.14" } }, "node_modules/style-to-object": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/style-to-object/-/style-to-object-1.0.9.tgz", - "integrity": "sha512-G4qppLgKu/k6FwRpHiGiKPaPTFcG3g4wNVX/Qsfu+RqQM30E7Tyu/TEgxcL9PNLF5pdRLwQdE3YKKf+KF2Dzlw==", + "version": "1.0.14", + "resolved": "https://registry.npmjs.org/style-to-object/-/style-to-object-1.0.14.tgz", + "integrity": "sha512-LIN7rULI0jBscWQYaSswptyderlarFkjQ+t79nzty8tcIAceVomEVlLzH5VP4Cmsv6MtKhs7qaAiwlcp+Mgaxw==", "license": "MIT", "dependencies": { - "inline-style-parser": "0.2.4" + "inline-style-parser": "0.2.7" } }, "node_modules/stylehacks": { @@ -25991,96 +20550,40 @@ "node": ">= 10" } }, - "node_modules/tapable": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.2.tgz", - "integrity": "sha512-Re10+NauLTMCudc7T5WLFLAwDhQ0JWdrMK+9B2M8zR5hRExKmsRDCBA7/aV/pNJFltmBFO5BAMlQFi/vq3nKOg==", - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/tar-stream": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.6.2.tgz", - "integrity": "sha512-rzS0heiNf8Xn7/mpdSVVSMAWAoy9bfb1WOTYC78Z0UQKeKa/CWS8FOq0lKGNa8DWKAn9gxjCvMLYc5PGXYlK2A==", - "license": "MIT", - "dependencies": { - "bl": "^1.0.0", - "buffer-alloc": "^1.2.0", - "end-of-stream": "^1.0.0", - "fs-constants": "^1.0.0", - "readable-stream": "^2.3.0", - "to-buffer": "^1.1.1", - "xtend": "^4.0.0" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/tcp-port-used": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/tcp-port-used/-/tcp-port-used-1.0.2.tgz", - "integrity": "sha512-l7ar8lLUD3XS1V2lfoJlCBaeoaWo/2xfYt81hM7VlvR4RrMVFqfmzfhLVk40hAb368uitje5gPtBRL1m/DGvLA==", - "license": "MIT", - "dependencies": { - "debug": "4.3.1", - "is2": "^2.0.6" - } - }, - "node_modules/tcp-port-used/node_modules/debug": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", - "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", + "node_modules/swc-loader": { + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/swc-loader/-/swc-loader-0.2.7.tgz", + "integrity": "sha512-nwYWw3Fh9ame3Rtm7StS9SBLpHRRnYcK7bnpF3UKZmesAK0gw2/ADvlURFAINmPvKtDLzp+GBiP9yLoEjg6S9w==", "license": "MIT", "dependencies": { - "ms": "2.1.2" + "@swc/counter": "^0.1.3" }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } + "peerDependencies": { + "@swc/core": "^1.2.147", + "webpack": ">=2" } }, - "node_modules/tcp-port-used/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "license": "MIT" - }, - "node_modules/temp-dir": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-1.0.0.tgz", - "integrity": "sha512-xZFXEGbG7SNC3itwBzI3RYjq/cEhBkx2hJuKGIUOcEULmkQExXiHat2z/qkISYsuR+IKumhEfKKbV5qXmhICFQ==", + "node_modules/tapable": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.3.0.tgz", + "integrity": "sha512-g9ljZiwki/LfxmQADO3dEY1CbpmXT5Hm2fJ+QaGKwSXUylMybePR7/67YW7jOrrvjEgL1Fmz5kzyAjWVWLlucg==", "license": "MIT", "engines": { - "node": ">=4" - } - }, - "node_modules/tempfile": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/tempfile/-/tempfile-2.0.0.tgz", - "integrity": "sha512-ZOn6nJUgvgC09+doCEF3oB+r3ag7kUvlsXEGX069QRD60p+P3uP7XG9N2/at+EyIRGSN//ZY3LyEotA1YpmjuA==", - "license": "MIT", - "dependencies": { - "temp-dir": "^1.0.0", - "uuid": "^3.0.1" + "node": ">=6" }, - "engines": { - "node": ">=4" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" } }, "node_modules/terser": { - "version": "5.43.1", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.43.1.tgz", - "integrity": "sha512-+6erLbBm0+LROX2sPXlUYx/ux5PyE9K/a92Wrt6oA+WDAoFTdpHE5tCYCI5PNzq2y8df4rA+QgHLJuR4jNymsg==", + "version": "5.46.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.46.0.tgz", + "integrity": "sha512-jTwoImyr/QbOWFFso3YoU3ik0jBBDJ6JTOQiy/J2YxVJdZCc+5u7skhNwiOR3FQIygFqVUPHl7qbbxtjW2K3Qg==", "license": "BSD-2-Clause", "dependencies": { "@jridgewell/source-map": "^0.3.3", - "acorn": "^8.14.0", + "acorn": "^8.15.0", "commander": "^2.20.0", "source-map-support": "~0.5.20" }, @@ -26092,9 +20595,9 @@ } }, "node_modules/terser-webpack-plugin": { - "version": "5.3.14", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.14.tgz", - "integrity": "sha512-vkZjpUjb6OMS7dhV+tILUW6BhpDR7P2L/aQSAv+Uwk+m8KATX9EccViHTJR2qDtACKPIYndLGCyl3FMo+r2LMw==", + "version": "5.3.16", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.16.tgz", + "integrity": "sha512-h9oBFCWrq78NyWWVcSwZarJkZ01c2AyGrzs1crmHZO3QUg9D61Wu4NPjBy69n7JqylFF5y+CsUZYmYEIZ3mR+Q==", "license": "MIT", "dependencies": { "@jridgewell/trace-mapping": "^0.3.25", @@ -26160,26 +20663,20 @@ "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", "license": "MIT" }, - "node_modules/text-table": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", - "license": "MIT" - }, - "node_modules/through": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", - "license": "MIT" - }, - "node_modules/through2": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", - "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", + "node_modules/thingies": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/thingies/-/thingies-2.5.0.tgz", + "integrity": "sha512-s+2Bwztg6PhWUD7XMfeYm5qliDdSiZm7M7n8KjTkIsm3l/2lgVRc2/Gx/v+ZX8lT4FMA+i8aQvhcWylldc+ZNw==", "license": "MIT", - "dependencies": { - "readable-stream": "~2.3.6", - "xtend": "~4.0.1" + "engines": { + "node": ">=10.18" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/streamich" + }, + "peerDependencies": { + "tslib": "^2" } }, "node_modules/thunky": { @@ -26188,50 +20685,12 @@ "integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==", "license": "MIT" }, - "node_modules/timed-out": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/timed-out/-/timed-out-4.0.1.tgz", - "integrity": "sha512-G7r3AhovYtr5YKOWQkta8RKAPb+J9IsO4uVmzjl8AZwfhs8UcUwTiD6gcJYSgOtzyjvQKrKYn41syHbUWMkafA==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/timsort": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/timsort/-/timsort-0.3.0.tgz", - "integrity": "sha512-qsdtZH+vMoCARQtyod4imc2nIJwg9Cc7lPRrw9CzF8ZKR0khdr8+2nX80PBhET3tcyTtJDxAffGh2rXH4tyU8A==", - "license": "MIT" - }, "node_modules/tiny-invariant": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/tiny-invariant/-/tiny-invariant-1.3.3.tgz", "integrity": "sha512-+FbBPE1o9QAYvviau/qC5SE3caw21q3xkvWKBtja5vgqOWIHHJ3ioaq1VPfn/Szqctz2bU/oYeKd9/z5BL+PVg==", "license": "MIT" }, - "node_modules/tiny-lr": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/tiny-lr/-/tiny-lr-1.1.1.tgz", - "integrity": "sha512-44yhA3tsaRoMOjQQ+5v5mVdqef+kH6Qze9jTpqtVufgYjYt08zyZAwNwwVBj3i1rJMnR52IxOW0LK0vBzgAkuA==", - "license": "MIT", - "dependencies": { - "body": "^5.1.0", - "debug": "^3.1.0", - "faye-websocket": "~0.10.0", - "livereload-js": "^2.3.0", - "object-assign": "^4.1.0", - "qs": "^6.4.0" - } - }, - "node_modules/tiny-lr/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "license": "MIT", - "dependencies": { - "ms": "^2.1.1" - } - }, "node_modules/tiny-warning": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/tiny-warning/-/tiny-warning-1.0.3.tgz", @@ -26253,65 +20712,6 @@ "integrity": "sha512-gRa9gwYU3ECmQYv3lslts5hxuIa90veaEcxDYuu3QGOIAEM2mOZkVHp48ANJuu1CURtRdHKUBY5Lm1tHV+sD4g==", "license": "ISC" }, - "node_modules/to-buffer": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/to-buffer/-/to-buffer-1.2.1.tgz", - "integrity": "sha512-tB82LpAIWjhLYbqjx3X4zEeHN6M8CiuOEy2JY8SEQVdYRe3CCHOFaqrBW1doLDrfpWhplcW7BL+bO3/6S3pcDQ==", - "license": "MIT", - "dependencies": { - "isarray": "^2.0.5", - "safe-buffer": "^5.2.1", - "typed-array-buffer": "^1.0.3" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/to-buffer/node_modules/isarray": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", - "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", - "license": "MIT" - }, - "node_modules/to-object-path": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", - "integrity": "sha512-9mWHdnGRuh3onocaHzukyvCZhzvr6tiflAy/JRFXcJX0TjgfWA9pk9t8CMbzmBE4Jfw58pXbkngtBtqYxzNEyg==", - "license": "MIT", - "dependencies": { - "kind-of": "^3.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/to-object-path/node_modules/kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", - "license": "MIT", - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/to-regex": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", - "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", - "license": "MIT", - "dependencies": { - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "regex-not": "^1.0.2", - "safe-regex": "^1.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/to-regex-range": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", @@ -26324,40 +20724,6 @@ "node": ">=8.0" } }, - "node_modules/to-regex-range/node_modules/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "license": "MIT", - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/to-regex/node_modules/extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", - "license": "MIT", - "dependencies": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/to-regex/node_modules/is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "license": "MIT", - "dependencies": { - "is-plain-object": "^2.0.4" - }, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/toidentifier": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", @@ -26367,65 +20733,29 @@ "node": ">=0.6" } }, - "node_modules/toml": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/toml/-/toml-2.3.6.tgz", - "integrity": "sha512-gVweAectJU3ebq//Ferr2JUY4WKSDe5N+z0FvjDncLGyHmIDoxgY/2Ie4qfEIDm4IS7OA6Rmdm7pdEEdMcV/xQ==", - "license": "MIT" - }, "node_modules/totalist": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/totalist/-/totalist-3.0.1.tgz", "integrity": "sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ==", "license": "MIT", "engines": { - "node": ">=6" - } - }, - "node_modules/tough-cookie": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", - "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", - "license": "BSD-3-Clause", - "dependencies": { - "psl": "^1.1.28", - "punycode": "^2.1.1" - }, - "engines": { - "node": ">=0.8" - } - }, - "node_modules/tr46": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-1.0.1.tgz", - "integrity": "sha512-dTpowEjclQ7Kgx5SdBkqRzVhERQXov8/l9Ft9dVM9fmg0W0KQSVaXX9T4i6twCPNtYiZM53lpSSUAwJbFPOHxA==", - "license": "MIT", - "dependencies": { - "punycode": "^2.1.0" - } - }, - "node_modules/traverse": { - "version": "0.3.9", - "resolved": "https://registry.npmjs.org/traverse/-/traverse-0.3.9.tgz", - "integrity": "sha512-iawgk0hLP3SxGKDfnDJf8wTz4p2qImnyihM5Hh/sGvQ3K37dPi/w8sRhdNIxYA1TwFwc5mDhIJq+O0RsvXBKdQ==", - "license": "MIT/X11", - "engines": { - "node": "*" + "node": ">=6" } }, - "node_modules/tree-node-cli": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/tree-node-cli/-/tree-node-cli-1.6.0.tgz", - "integrity": "sha512-M8um5Lbl76rWU5aC8oOeEhruiCM29lFCKnwpxrwMjpRicHXJx+bb9Cak11G3zYLrMb6Glsrhnn90rHIzDJrjvg==", - "license": "MIT", - "dependencies": { - "commander": "^5.0.0", - "fast-folder-size": "1.6.1", - "pretty-bytes": "^5.6.0" + "node_modules/tree-dump": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/tree-dump/-/tree-dump-1.1.0.tgz", + "integrity": "sha512-rMuvhU4MCDbcbnleZTFezWsaZXRFemSqAM+7jPnzUl1fo9w3YEKOxAeui0fz3OI4EU4hf23iyA7uQRVko+UaBA==", + "license": "Apache-2.0", + "engines": { + "node": ">=10.0" }, - "bin": { - "tree": "bin/tree.js", - "treee": "bin/tree.js" + "funding": { + "type": "github", + "url": "https://github.com/sponsors/streamich" + }, + "peerDependencies": { + "tslib": "2" } }, "node_modules/trim-lines": { @@ -26438,36 +20768,6 @@ "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/trim-newlines": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz", - "integrity": "sha512-Nm4cF79FhSTzrLKGDMi3I4utBtFv8qKy4sq1enftf2gMdpqI8oVQTAfySkTz5r49giVzDj88SVZXP4CeYQwjaw==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/trim-repeated": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/trim-repeated/-/trim-repeated-1.0.0.tgz", - "integrity": "sha512-pkonvlKk8/ZuR0D5tLW8ljt5I8kmxp2XKymhepUeOdCEfKpZaktSArkLHZt76OB1ZvO9bssUsDty4SWhLvZpLg==", - "license": "MIT", - "dependencies": { - "escape-string-regexp": "^1.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/trim-repeated/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "license": "MIT", - "engines": { - "node": ">=0.8.0" - } - }, "node_modules/trough": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/trough/-/trough-2.2.0.tgz", @@ -26478,38 +20778,42 @@ "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/truncate-html": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/truncate-html/-/truncate-html-1.2.2.tgz", - "integrity": "sha512-0pogasqkxhCj8PWqxLPTYqtC66ruVXzOS6uNcOCI7yxS1Bf2HMqeXUty5mlbv0UjjlCuExBpPN4vEAFV6imsug==", - "license": "MIT", - "dependencies": { - "cheerio": "1.0.0-rc.12" - } - }, "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==", "license": "0BSD" }, - "node_modules/tunnel-agent": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==", - "license": "Apache-2.0", + "node_modules/tsyringe": { + "version": "4.10.0", + "resolved": "https://registry.npmjs.org/tsyringe/-/tsyringe-4.10.0.tgz", + "integrity": "sha512-axr3IdNuVIxnaK5XGEUFTu3YmAQ6lllgrvqfEoR16g/HGnYY/6We4oWENtAnzK6/LpJ2ur9PAb80RBt7/U4ugw==", + "license": "MIT", "dependencies": { - "safe-buffer": "^5.0.1" + "tslib": "^1.9.3" }, "engines": { - "node": "*" + "node": ">= 6.0.0" } }, - "node_modules/tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==", - "license": "Unlicense" + "node_modules/tsyringe/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "license": "0BSD" + }, + "node_modules/type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dev": true, + "license": "MIT", + "dependencies": { + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" + } }, "node_modules/type-fest": { "version": "2.19.0", @@ -26536,10 +20840,32 @@ "node": ">= 0.6" } }, + "node_modules/type-is/node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/type-is/node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "license": "MIT", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, "node_modules/typed-array-buffer": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.3.tgz", "integrity": "sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==", + "dev": true, "license": "MIT", "dependencies": { "call-bound": "^1.0.3", @@ -26554,6 +20880,7 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.3.tgz", "integrity": "sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg==", + "dev": true, "license": "MIT", "dependencies": { "call-bind": "^1.0.8", @@ -26573,6 +20900,7 @@ "version": "1.0.4", "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.4.tgz", "integrity": "sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ==", + "dev": true, "license": "MIT", "dependencies": { "available-typed-arrays": "^1.0.7", @@ -26594,6 +20922,7 @@ "version": "1.0.7", "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.7.tgz", "integrity": "sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg==", + "dev": true, "license": "MIT", "dependencies": { "call-bind": "^1.0.7", @@ -26610,12 +20939,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/typedarray": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==", - "license": "MIT" - }, "node_modules/typedarray-to-buffer": { "version": "3.1.5", "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", @@ -26625,10 +20948,32 @@ "is-typedarray": "^1.0.0" } }, + "node_modules/typescript": { + "version": "5.9.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz", + "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==", + "devOptional": true, + "license": "Apache-2.0", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/uc.micro": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-2.1.0.tgz", + "integrity": "sha512-ARDJmphmdvUk6Glw7y9DQ2bFkKBHwQHLi2lsaH6PPmz/Ka9sFOBsBluozhDltWmnv9u/cF6Rt87znRTPV+yp/A==", + "dev": true, + "license": "MIT" + }, "node_modules/unbox-primitive": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.1.0.tgz", "integrity": "sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==", + "dev": true, "license": "MIT", "dependencies": { "call-bound": "^1.0.3", @@ -26643,20 +20988,10 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/unbzip2-stream": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/unbzip2-stream/-/unbzip2-stream-1.4.3.tgz", - "integrity": "sha512-mlExGW4w71ebDJviH16lQLtZS32VKqsSfk80GCfUlwT/4/hNRFsoscrF/c++9xinkMzECL1uL9DDwXqFWkruPg==", - "license": "MIT", - "dependencies": { - "buffer": "^5.2.1", - "through": "^2.3.8" - } - }, "node_modules/undici-types": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.8.0.tgz", - "integrity": "sha512-9UJ2xGDvQ43tYyVMpuHlsgApydB8ZKfVYTsLDhXkFL/6gfkp+U8xTGdh8pMJv1SpZna0zxG1DwsKZsreLbXBxw==", + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.16.0.tgz", + "integrity": "sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw==", "license": "MIT" }, "node_modules/unicode-canonical-property-names-ecmascript": { @@ -26691,18 +21026,18 @@ } }, "node_modules/unicode-match-property-value-ecmascript": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.2.0.tgz", - "integrity": "sha512-4IehN3V/+kkr5YeSSDDQG8QLqO26XpL2XP3GQtqwlT/QYSECAwFztxVHjlbh0+gjJ3XmNLS0zDsbgs9jWKExLg==", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.2.1.tgz", + "integrity": "sha512-JQ84qTuMg4nVkx8ga4A16a1epI9H6uTXAknqxkGF/aFfRLw1xC/Bp24HNLaZhHSkWd3+84t8iXnp1J0kYcZHhg==", "license": "MIT", "engines": { "node": ">=4" } }, "node_modules/unicode-property-aliases-ecmascript": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz", - "integrity": "sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.2.0.tgz", + "integrity": "sha512-hpbDzxUY9BFwX+UeBnxv3Sh1q7HFxj48DTmXchNgRa46lO8uj3/1iEn3MiNUYTg1g9ctIqXCCERn8gYZhHC5lQ==", "license": "MIT", "engines": { "node": ">=4" @@ -26727,45 +21062,6 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/unified/node_modules/is-plain-obj": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz", - "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==", - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/union-value": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz", - "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==", - "license": "MIT", - "dependencies": { - "arr-union": "^3.1.0", - "get-value": "^2.0.6", - "is-extendable": "^0.1.1", - "set-value": "^2.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/uniq": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz", - "integrity": "sha512-Gw+zz50YNKPDKXs+9d+aKAjVwpjNwqzvNpLigIruT4HA9lMZNdMqs9x07kKHB/L9WRzqp4+DlTU5s4wG2esdoA==", - "license": "MIT" - }, - "node_modules/uniqs": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/uniqs/-/uniqs-2.0.0.tgz", - "integrity": "sha512-mZdDpf3vBV5Efh29kMw5tXoup/buMgxLzOt/XKFKcVmi+15ManNQWr6HfZ2aiZTYlYixbdNJ0KFmIZIv52tHSQ==", - "license": "MIT" - }, "node_modules/unique-string": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-3.0.0.tgz", @@ -26782,9 +21078,9 @@ } }, "node_modules/unist-util-is": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-6.0.0.tgz", - "integrity": "sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-6.0.1.tgz", + "integrity": "sha512-LsiILbtBETkDz8I9p1dQ0uyRUWuaQzd/cuEeS1hoRSyW5E5XGmTzlwY1OrNzzakGowI9Dr/I8HVaw4hTtnxy8g==", "license": "MIT", "dependencies": { "@types/unist": "^3.0.0" @@ -26834,9 +21130,9 @@ } }, "node_modules/unist-util-visit": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-5.0.0.tgz", - "integrity": "sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-5.1.0.tgz", + "integrity": "sha512-m+vIdyeCOpdr/QeQCu2EzxX/ohgS8KbnPDgFni4dQsfSCtpz8UqDyY5GjRru8PDKuYn7Fq19j1CQ+nJSsGKOzg==", "license": "MIT", "dependencies": { "@types/unist": "^3.0.0", @@ -26849,9 +21145,9 @@ } }, "node_modules/unist-util-visit-parents": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-6.0.1.tgz", - "integrity": "sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-6.0.2.tgz", + "integrity": "sha512-goh1s1TBrqSqukSc8wrjwWhL0hiJxgA8m4kFxGlQ+8FYQ3C/m11FcTs4YYem7V664AhHVvgoQLk890Ssdsr2IQ==", "license": "MIT", "dependencies": { "@types/unist": "^3.0.0", @@ -26880,82 +21176,10 @@ "node": ">= 0.8" } }, - "node_modules/unquote": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/unquote/-/unquote-1.1.1.tgz", - "integrity": "sha512-vRCqFv6UhXpWxZPyGDh/F3ZpNv8/qo7w6iufLpQg9aKnQ71qM4B5KiI7Mia9COcjEhrO9LueHpMYjYzsWH3OIg==", - "license": "MIT" - }, - "node_modules/unset-value": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", - "integrity": "sha512-PcA2tsuGSF9cnySLHTLSh2qrQiJ70mn+r+Glzxv2TWZblxsxCC52BDlZoPCsz7STd9pN7EZetkWZBAvk4cgZdQ==", - "license": "MIT", - "dependencies": { - "has-value": "^0.3.1", - "isobject": "^3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/unset-value/node_modules/has-value": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", - "integrity": "sha512-gpG936j8/MzaeID5Yif+577c17TxaDmhuyVgSwtnL/q8UUTySg8Mecb+8Cf1otgLoD7DDH75axp86ER7LFsf3Q==", - "license": "MIT", - "dependencies": { - "get-value": "^2.0.3", - "has-values": "^0.1.4", - "isobject": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/unset-value/node_modules/has-value/node_modules/isobject": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", - "integrity": "sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA==", - "license": "MIT", - "dependencies": { - "isarray": "1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/unset-value/node_modules/has-values": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", - "integrity": "sha512-J8S0cEdWuQbqD9//tlZxiMuMNmxB8PlEwvYwuxsTmR1G5RXUePEX/SJn7aD0GMLieuZYSwNH0cQuJGwnYunXRQ==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/unzipper": { - "version": "0.10.14", - "resolved": "https://registry.npmjs.org/unzipper/-/unzipper-0.10.14.tgz", - "integrity": "sha512-ti4wZj+0bQTiX2KmKWuwj7lhV+2n//uXEotUmGuQqrbVZSEGFMbI68+c6JCQ8aAmUWYvtHEz2A8K6wXvueR/6g==", - "license": "MIT", - "dependencies": { - "big-integer": "^1.6.17", - "binary": "~0.3.0", - "bluebird": "~3.4.1", - "buffer-indexof-polyfill": "~1.0.0", - "duplexer2": "~0.1.4", - "fstream": "^1.0.12", - "graceful-fs": "^4.2.2", - "listenercount": "~1.0.1", - "readable-stream": "~2.3.6", - "setimmediate": "~1.0.4" - } - }, "node_modules/update-browserslist-db": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.3.tgz", - "integrity": "sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw==", + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.2.3.tgz", + "integrity": "sha512-Js0m9cx+qOgDxo0eMiFGEueWztz+d4+M3rGlmKPT+T4IS/jP4ylw3Nwpu6cpTTP8R1MAC1kF4VbdLt3ARf209w==", "funding": [ { "type": "opencollective", @@ -27045,9 +21269,9 @@ } }, "node_modules/update-notifier/node_modules/chalk": { - "version": "5.4.1", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.4.1.tgz", - "integrity": "sha512-zgVZuo2WcZgfUEmsn6eO3kINexW8RAE4maiQ8QNs8CtpPCSyMiYsULR3HQYkm3w8FIA3SberyMJMSldGsW+U3w==", + "version": "5.6.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.6.2.tgz", + "integrity": "sha512-7NzBL0rN6fMUW+f7A6Io4h40qQlG+xGmtMxfbnH/K7TAtt8JQWVQK+6g0UXKMeVJoyV5EkkNsErQ8pVD3bLHbA==", "license": "MIT", "engines": { "node": "^12.17.0 || ^14.13 || >=16.0.0" @@ -27056,15 +21280,6 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/update-notifier/node_modules/import-lazy": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-4.0.0.tgz", - "integrity": "sha512-rKtvo6a868b5Hu3heneU+L4yEQ4jYKLtjpnPeUdK7h0yzXGmyBTypknlkCvHFBqfX9YlorEiMM6Dnq/5atfHkw==", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, "node_modules/uri-js": { "version": "4.4.1", "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", @@ -27074,19 +21289,6 @@ "punycode": "^2.1.0" } }, - "node_modules/urijs": { - "version": "1.19.11", - "resolved": "https://registry.npmjs.org/urijs/-/urijs-1.19.11.tgz", - "integrity": "sha512-HXgFDgDommxn5/bIv0cnQZsPhHDA90NPHD6+c/v21U5+Sx5hoP8+dP9IZXBU1gIfvdRfhG8cel9QNPeionfcCQ==", - "license": "MIT" - }, - "node_modules/urix": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", - "integrity": "sha512-Am1ousAhSLBeB9cG/7k7r2R0zj50uDRlZHPGbazid5s9rlF1F/QKYObEKSIunSjIOkJZqwRRLpvewjEkM7pSqg==", - "deprecated": "Please see https://github.com/lydell/urix#deprecated", - "license": "MIT" - }, "node_modules/url-loader": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/url-loader/-/url-loader-4.1.1.tgz", @@ -27114,6 +21316,27 @@ } } }, + "node_modules/url-loader/node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/url-loader/node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "license": "MIT", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, "node_modules/url-loader/node_modules/schema-utils": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", @@ -27132,57 +21355,12 @@ "url": "https://opencollective.com/webpack" } }, - "node_modules/url-parse-lax": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-1.0.0.tgz", - "integrity": "sha512-BVA4lR5PIviy2PMseNd2jbFQ+jwSwQGdJejf5ctd1rEXt0Ypd7yanUK9+lYechVlN5VaTJGsu2U/3MDDu6KgBA==", - "license": "MIT", - "dependencies": { - "prepend-http": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/url-to-options": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/url-to-options/-/url-to-options-1.0.1.tgz", - "integrity": "sha512-0kQLIzG4fdk/G5NONku64rSH/x32NOA39LVQqlK8Le6lvTF6GGRJpqaQFGgU+CLwySIqBSMdwYM0sYcW9f6P4A==", - "license": "MIT", - "engines": { - "node": ">= 4" - } - }, - "node_modules/use": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", - "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", "license": "MIT" }, - "node_modules/util.promisify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.1.tgz", - "integrity": "sha512-g9JpC/3He3bm38zsLupWryXHoEcS22YHthuPQSJdMy6KNrzIRzWqcsHzD/WUnqe45whVou4VIsPew37DoXWNrA==", - "license": "MIT", - "dependencies": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.2", - "has-symbols": "^1.0.1", - "object.getownpropertydescriptors": "^2.1.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/utila": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/utila/-/utila-0.4.0.tgz", @@ -27208,23 +21386,12 @@ } }, "node_modules/uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", - "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", "license": "MIT", "bin": { - "uuid": "bin/uuid" - } - }, - "node_modules/validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", - "license": "Apache-2.0", - "dependencies": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" + "uuid": "dist/bin/uuid" } }, "node_modules/value-equal": { @@ -27233,45 +21400,15 @@ "integrity": "sha512-NOJ6JZCAWr0zlxZt+xqCHNTEKOsrks2HQd4MqhP1qy4z1SkbEP467eNx6TgDKXMvUOb+OENfJCZwM+16n7fRfw==", "license": "MIT" }, - "node_modules/vary": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", - "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", - "license": "MIT", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/vendors": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/vendors/-/vendors-1.0.4.tgz", - "integrity": "sha512-/juG65kTL4Cy2su4P8HjtkTxk6VmJDiOPBufWniqQ6wknac6jNiXS9vU+hO3wgusiyqWlzTbVHi0dyJqRONg3w==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/verror": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==", - "engines": [ - "node >=0.6.0" - ], + "node_modules/vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", "license": "MIT", - "dependencies": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" + "engines": { + "node": ">= 0.8" } }, - "node_modules/verror/node_modules/core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==", - "license": "MIT" - }, "node_modules/vfile": { "version": "6.0.3", "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.3.tgz", @@ -27301,9 +21438,9 @@ } }, "node_modules/vfile-message": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-4.0.2.tgz", - "integrity": "sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-4.0.3.tgz", + "integrity": "sha512-QTHzsGd1EhbZs4AsQ20JX1rC3cOlt/IWJruk893DfLRr57lcnOeMaWG4K0JrRta4mIJZKth2Au3mM3u03/JWKw==", "license": "MIT", "dependencies": { "@types/unist": "^3.0.0", @@ -27314,21 +21451,10 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/vt-pbf": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/vt-pbf/-/vt-pbf-3.1.3.tgz", - "integrity": "sha512-2LzDFzt0mZKZ9IpVF2r69G9bXaP2Q2sArJCmcCgvfTdCCZzSyz4aCLoQyUilu37Ll56tCblIZrXFIjNUpGIlmA==", - "license": "MIT", - "dependencies": { - "@mapbox/point-geometry": "0.1.0", - "@mapbox/vector-tile": "^1.3.1", - "pbf": "^3.2.1" - } - }, "node_modules/watchpack": { - "version": "2.4.4", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.4.tgz", - "integrity": "sha512-c5EGNOiyxxV5qmTtAB7rbiXxi1ooX1pQKMLX/MIabJjRA0SJBQOjKF+KSVfHkr9U1cADPon0mRiVe/riyaiDUA==", + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.5.1.tgz", + "integrity": "sha512-Zn5uXdcFNIA1+1Ei5McRd+iRzfhENPCe7LeABkJtNulSxjma+l7ltNx55BWZkRlwRnpOgHqxnjyaDgJnNXnqzg==", "license": "MIT", "dependencies": { "glob-to-regexp": "^0.4.1", @@ -27357,16 +21483,10 @@ "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/webidl-conversions": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz", - "integrity": "sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==", - "license": "BSD-2-Clause" - }, "node_modules/webpack": { - "version": "5.100.2", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.100.2.tgz", - "integrity": "sha512-QaNKAvGCDRh3wW1dsDjeMdDXwZm2vqq3zn6Pvq4rHOEOGSaUMgOOjG2Y9ZbIGzpfkJk9ZYTHpDqgDfeBDcnLaw==", + "version": "5.105.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.105.0.tgz", + "integrity": "sha512-gX/dMkRQc7QOMzgTe6KsYFM7DxeIONQSui1s0n/0xht36HvrgbxtM1xBlgx596NbpHuQU8P7QpKwrZYwUX48nw==", "license": "MIT", "dependencies": { "@types/eslint-scope": "^3.7.7", @@ -27377,22 +21497,22 @@ "@webassemblyjs/wasm-parser": "^1.14.1", "acorn": "^8.15.0", "acorn-import-phases": "^1.0.3", - "browserslist": "^4.24.0", + "browserslist": "^4.28.1", "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^5.17.2", - "es-module-lexer": "^1.2.1", + "enhanced-resolve": "^5.19.0", + "es-module-lexer": "^2.0.0", "eslint-scope": "5.1.1", "events": "^3.2.0", "glob-to-regexp": "^0.4.1", "graceful-fs": "^4.2.11", "json-parse-even-better-errors": "^2.3.1", - "loader-runner": "^4.2.0", + "loader-runner": "^4.3.1", "mime-types": "^2.1.27", "neo-async": "^2.6.2", - "schema-utils": "^4.3.2", - "tapable": "^2.1.1", - "terser-webpack-plugin": "^5.3.11", - "watchpack": "^2.4.1", + "schema-utils": "^4.3.3", + "tapable": "^2.3.0", + "terser-webpack-plugin": "^5.3.16", + "watchpack": "^2.5.1", "webpack-sources": "^3.3.3" }, "bin": { @@ -27446,93 +21566,116 @@ "node": ">= 10" } }, - "node_modules/webpack-bundle-analyzer/node_modules/gzip-size": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-6.0.0.tgz", - "integrity": "sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q==", + "node_modules/webpack-dev-middleware": { + "version": "7.4.5", + "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-7.4.5.tgz", + "integrity": "sha512-uxQ6YqGdE4hgDKNf7hUiPXOdtkXvBJXrfEGYSx7P7LC8hnUYGK70X6xQXUvXeNyBDDcsiQXpG2m3G9vxowaEuA==", "license": "MIT", "dependencies": { - "duplexer": "^0.1.2" + "colorette": "^2.0.10", + "memfs": "^4.43.1", + "mime-types": "^3.0.1", + "on-finished": "^2.4.1", + "range-parser": "^1.2.1", + "schema-utils": "^4.0.0" }, "engines": { - "node": ">=10" + "node": ">= 18.12.0" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.0.0" + }, + "peerDependenciesMeta": { + "webpack": { + "optional": true + } } }, - "node_modules/webpack-dev-middleware": { - "version": "5.3.4", - "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.3.4.tgz", - "integrity": "sha512-BVdTqhhs+0IfoeAf7EoH5WE+exCmqGerHfDM0IL096Px60Tq2Mn9MAbnaGUe6HiMa41KMCYF19gyzZmBcq/o4Q==", + "node_modules/webpack-dev-middleware/node_modules/mime-db": { + "version": "1.54.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.54.0.tgz", + "integrity": "sha512-aU5EJuIN2WDemCcAp2vFBfp/m4EAhWJnUNSSw0ixs7/kXbd6Pg64EmwJkNdFhB8aWt1sH2CTXrLxo/iAGV3oPQ==", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/webpack-dev-middleware/node_modules/mime-types": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-3.0.2.tgz", + "integrity": "sha512-Lbgzdk0h4juoQ9fCKXW4by0UJqj+nOOrI9MJ1sSj4nI8aI2eo1qmvQEie4VD1glsS250n15LsWsYtCugiStS5A==", "license": "MIT", "dependencies": { - "colorette": "^2.0.10", - "memfs": "^3.4.3", - "mime-types": "^2.1.31", - "range-parser": "^1.2.1", - "schema-utils": "^4.0.0" + "mime-db": "^1.54.0" }, "engines": { - "node": ">= 12.13.0" + "node": ">=18" }, "funding": { "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^4.0.0 || ^5.0.0" + "url": "https://opencollective.com/express" + } + }, + "node_modules/webpack-dev-middleware/node_modules/range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", + "license": "MIT", + "engines": { + "node": ">= 0.6" } }, "node_modules/webpack-dev-server": { - "version": "4.15.2", - "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.15.2.tgz", - "integrity": "sha512-0XavAZbNJ5sDrCbkpWL8mia0o5WPOd2YGtxrEiZkBK9FjLppIUK2TgxK6qGD2P3hUXTJNNPVibrerKcx5WkR1g==", - "license": "MIT", - "dependencies": { - "@types/bonjour": "^3.5.9", - "@types/connect-history-api-fallback": "^1.3.5", - "@types/express": "^4.17.13", - "@types/serve-index": "^1.9.1", - "@types/serve-static": "^1.13.10", - "@types/sockjs": "^0.3.33", - "@types/ws": "^8.5.5", + "version": "5.2.3", + "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-5.2.3.tgz", + "integrity": "sha512-9Gyu2F7+bg4Vv+pjbovuYDhHX+mqdqITykfzdM9UyKqKHlsE5aAjRhR+oOEfXW5vBeu8tarzlJFIZva4ZjAdrQ==", + "license": "MIT", + "dependencies": { + "@types/bonjour": "^3.5.13", + "@types/connect-history-api-fallback": "^1.5.4", + "@types/express": "^4.17.25", + "@types/express-serve-static-core": "^4.17.21", + "@types/serve-index": "^1.9.4", + "@types/serve-static": "^1.15.5", + "@types/sockjs": "^0.3.36", + "@types/ws": "^8.5.10", "ansi-html-community": "^0.0.8", - "bonjour-service": "^1.0.11", - "chokidar": "^3.5.3", + "bonjour-service": "^1.2.1", + "chokidar": "^3.6.0", "colorette": "^2.0.10", - "compression": "^1.7.4", + "compression": "^1.8.1", "connect-history-api-fallback": "^2.0.0", - "default-gateway": "^6.0.3", - "express": "^4.17.3", + "express": "^4.22.1", "graceful-fs": "^4.2.6", - "html-entities": "^2.3.2", - "http-proxy-middleware": "^2.0.3", - "ipaddr.js": "^2.0.1", - "launch-editor": "^2.6.0", - "open": "^8.0.9", - "p-retry": "^4.5.0", - "rimraf": "^3.0.2", - "schema-utils": "^4.0.0", - "selfsigned": "^2.1.1", + "http-proxy-middleware": "^2.0.9", + "ipaddr.js": "^2.1.0", + "launch-editor": "^2.6.1", + "open": "^10.0.3", + "p-retry": "^6.2.0", + "schema-utils": "^4.2.0", + "selfsigned": "^5.5.0", "serve-index": "^1.9.1", "sockjs": "^0.3.24", "spdy": "^4.0.2", - "webpack-dev-middleware": "^5.3.4", - "ws": "^8.13.0" + "webpack-dev-middleware": "^7.4.2", + "ws": "^8.18.0" }, "bin": { "webpack-dev-server": "bin/webpack-dev-server.js" }, "engines": { - "node": ">= 12.13.0" + "node": ">= 18.12.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/webpack" }, "peerDependencies": { - "webpack": "^4.37.0 || ^5.0.0" + "webpack": "^5.0.0" }, "peerDependenciesMeta": { "webpack": { @@ -27543,35 +21686,40 @@ } } }, - "node_modules/webpack-dev-server/node_modules/ipaddr.js": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.2.0.tgz", - "integrity": "sha512-Ag3wB2o37wslZS19hZqorUnrnzSkpOVy+IiiDEiTqNubEYpYuHWIf6K4psgN2ZWKExS4xhVCrRVfb/wfW8fWJA==", + "node_modules/webpack-dev-server/node_modules/define-lazy-prop": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-3.0.0.tgz", + "integrity": "sha512-N+MeXYoqr3pOgn8xfyRPREN7gHakLYjhsHhWGT3fWAiL4IkAt0iDw14QiiEm2bE30c5XX5q0FtAA3CK5f9/BUg==", "license": "MIT", "engines": { - "node": ">= 10" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/webpack-dev-server/node_modules/rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "deprecated": "Rimraf versions prior to v4 are no longer supported", - "license": "ISC", + "node_modules/webpack-dev-server/node_modules/open": { + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/open/-/open-10.2.0.tgz", + "integrity": "sha512-YgBpdJHPyQ2UE5x+hlSXcnejzAvD0b22U2OuAP+8OnlJT+PjWPxtgmGqKKc+RgTM63U9gN0YzrYc71R2WT/hTA==", + "license": "MIT", "dependencies": { - "glob": "^7.1.3" + "default-browser": "^5.2.1", + "define-lazy-prop": "^3.0.0", + "is-inside-container": "^1.0.0", + "wsl-utils": "^0.1.0" }, - "bin": { - "rimraf": "bin.js" + "engines": { + "node": ">=18" }, "funding": { - "url": "https://github.com/sponsors/isaacs" + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/webpack-dev-server/node_modules/ws": { - "version": "8.18.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.3.tgz", - "integrity": "sha512-PEIGCY5tSlUt50cqyMXfCzX+oOPqN0vuGqWzbcJ2xvnkzkq46oOpz7dQaTDBdfICb4N14+GARUDw2XV2N4tvzg==", + "version": "8.19.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.19.0.tgz", + "integrity": "sha512-blAT2mjOEIi0ZzruJfIhb3nps74PRWTCz1IjglWEEpQl5XS/UNama6u2/rjFkDDouqr4L67ry+1aGIALViWjDg==", "license": "MIT", "engines": { "node": ">=10.0.0" @@ -27612,6 +21760,49 @@ "node": ">=10.13.0" } }, + "node_modules/webpack/node_modules/eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "license": "BSD-2-Clause", + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/webpack/node_modules/estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "license": "BSD-2-Clause", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/webpack/node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/webpack/node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "license": "MIT", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, "node_modules/webpackbar": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/webpackbar/-/webpackbar-6.0.1.tgz", @@ -27640,30 +21831,6 @@ "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", "license": "MIT" }, - "node_modules/webpackbar/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "license": "MIT", - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/webpackbar/node_modules/figures": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", - "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", - "license": "MIT", - "dependencies": { - "escape-string-regexp": "^1.0.5" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/webpackbar/node_modules/markdown-table": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/markdown-table/-/markdown-table-2.0.0.tgz", @@ -27691,18 +21858,6 @@ "node": ">=8" } }, - "node_modules/webpackbar/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "license": "MIT", - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/webpackbar/node_modules/wrap-ansi": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", @@ -27743,17 +21898,6 @@ "node": ">=0.8.0" } }, - "node_modules/whatwg-url": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.1.0.tgz", - "integrity": "sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==", - "license": "MIT", - "dependencies": { - "lodash.sortby": "^4.7.0", - "tr46": "^1.0.1", - "webidl-conversions": "^4.0.2" - } - }, "node_modules/which": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", @@ -27773,6 +21917,7 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.1.1.tgz", "integrity": "sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==", + "dev": true, "license": "MIT", "dependencies": { "is-bigint": "^1.1.0", @@ -27792,6 +21937,7 @@ "version": "1.2.1", "resolved": "https://registry.npmjs.org/which-builtin-type/-/which-builtin-type-1.2.1.tgz", "integrity": "sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==", + "dev": true, "license": "MIT", "dependencies": { "call-bound": "^1.0.2", @@ -27819,12 +21965,14 @@ "version": "2.0.5", "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", + "dev": true, "license": "MIT" }, "node_modules/which-collection": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.2.tgz", "integrity": "sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==", + "dev": true, "license": "MIT", "dependencies": { "is-map": "^2.0.3", @@ -27840,9 +21988,10 @@ } }, "node_modules/which-typed-array": { - "version": "1.1.19", - "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.19.tgz", - "integrity": "sha512-rEvr90Bck4WZt9HHFC4DJMsjvu7x+r6bImz0/BrbWb7A2djJ8hnZMrWnHo9F8ssv0OMErasDhftrfROTyqSDrw==", + "version": "1.1.20", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.20.tgz", + "integrity": "sha512-LYfpUkmqwl0h9A2HL09Mms427Q1RZWuOHsukfVcKRq9q95iQxdw0ix1JQrqbcDR9PH1QDwf5Qo8OZb5lksZ8Xg==", + "dev": true, "license": "MIT", "dependencies": { "available-typed-arrays": "^1.0.7", @@ -27881,22 +22030,14 @@ "integrity": "sha512-CC1bOL87PIWSBhDcTrdeLo6eGT7mCFtrg0uIJtqJUFyK+eJnzl8A1niH56uu7KMa5XFrtiV+AQuHO3n7DsHnLQ==", "license": "MIT" }, - "node_modules/wordwrap": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz", - "integrity": "sha512-xSBsCeh+g+dinoBv3GAOWM4LcVVO68wLXRanibtBSdUvkGWQRGeE9P7IwU9EmDDi4jA6L44lz15CGMwdw9N5+Q==", - "license": "MIT/X11", - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/worker-rpc": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/worker-rpc/-/worker-rpc-0.1.1.tgz", - "integrity": "sha512-P1WjMrUB3qgJNI9jfmpZ/htmBEjFh//6l/5y8SD9hg1Ef5zTTVVoRjTrTEzPrNBQvmhMxkoTsjOXN10GWU7aCg==", + "node_modules/word-wrap": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", + "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", + "dev": true, "license": "MIT", - "dependencies": { - "microevent.ts": "~0.1.1" + "engines": { + "node": ">=0.10.0" } }, "node_modules/wrap-ansi": { @@ -27917,9 +22058,9 @@ } }, "node_modules/wrap-ansi/node_modules/ansi-regex": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz", - "integrity": "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==", + "version": "6.2.2", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.2.2.tgz", + "integrity": "sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg==", "license": "MIT", "engines": { "node": ">=12" @@ -27929,9 +22070,9 @@ } }, "node_modules/wrap-ansi/node_modules/ansi-styles": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", - "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", + "version": "6.2.3", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.3.tgz", + "integrity": "sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg==", "license": "MIT", "engines": { "node": ">=12" @@ -27941,9 +22082,9 @@ } }, "node_modules/wrap-ansi/node_modules/strip-ansi": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", - "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.2.tgz", + "integrity": "sha512-gmBGslpoQJtgnMAvOVqGZpEz9dyoKTCzy2nfz/n8aIFhN/jCE/rCmcxabB6jOOHV+0WNnylOxaxBQPSvcWklhA==", "license": "MIT", "dependencies": { "ansi-regex": "^6.0.1" @@ -27955,12 +22096,6 @@ "url": "https://github.com/chalk/strip-ansi?sponsor=1" } }, - "node_modules/wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", - "license": "ISC" - }, "node_modules/write-file-atomic": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", @@ -27994,6 +22129,36 @@ } } }, + "node_modules/wsl-utils": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/wsl-utils/-/wsl-utils-0.1.0.tgz", + "integrity": "sha512-h3Fbisa2nKGPxCpm89Hk33lBLsnaGBvctQopaBSOW/uIs6FTe1ATyAnKFJrzVs9vpGdsTe73WF3V4lIsk4Gacw==", + "license": "MIT", + "dependencies": { + "is-wsl": "^3.1.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/wsl-utils/node_modules/is-wsl": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-3.1.0.tgz", + "integrity": "sha512-UcVfVfaK4Sc4m7X3dUSoHoozQGBEFeDC+zVo06t98xe8CzHSZZBekNXH+tu0NalHolcJ/QAGqS46Hef7QXBIMw==", + "license": "MIT", + "dependencies": { + "is-inside-container": "^1.0.0" + }, + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/xdg-basedir": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-5.1.0.tgz", @@ -28018,24 +22183,6 @@ "xml-js": "bin/cli.js" } }, - "node_modules/xmlbuilder": { - "version": "13.0.2", - "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-13.0.2.tgz", - "integrity": "sha512-Eux0i2QdDYKbdbA6AM6xE4m6ZTZr4G4xF9kahI2ukSEMCzwce2eX9WlTI5J3s+NU7hpasFsr8hWIONae7LluAQ==", - "license": "MIT", - "engines": { - "node": ">=6.0" - } - }, - "node_modules/xtend": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", - "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", - "license": "MIT", - "engines": { - "node": ">=0.4" - } - }, "node_modules/yallist": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", @@ -28043,9 +22190,9 @@ "license": "ISC" }, "node_modules/yaml": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.8.0.tgz", - "integrity": "sha512-4lLa/EcQCB0cJkyts+FpIRx5G/llPxfP6VQU5KByHEhLxY3IJCH0f0Hy1MHI8sClTvsIb8qwRJ6R/ZdlDJ/leQ==", + "version": "2.8.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.8.2.tgz", + "integrity": "sha512-mplynKqc1C2hTVYxd0PU2xQAc22TI1vShAYGksCCfxbn/dFwnHTNi1bvYsBTkhdUNtGIf5xNOg938rrSSYvS9A==", "dev": true, "license": "ISC", "bin": { @@ -28053,6 +22200,9 @@ }, "engines": { "node": ">= 14.6" + }, + "funding": { + "url": "https://github.com/sponsors/eemeli" } }, "node_modules/yaml-loader": { @@ -28070,55 +22220,14 @@ "node": ">= 14" } }, - "node_modules/yamljs": { - "version": "0.2.10", - "resolved": "https://registry.npmjs.org/yamljs/-/yamljs-0.2.10.tgz", - "integrity": "sha512-sbkbOosewjeRmJ23Hjee1RgTxn+xa7mt4sew3tfD0SdH0LTcswnZC9dhSNq4PIz15roQMzb84DjECyQo5DWIww==", - "license": "MIT", - "dependencies": { - "argparse": "^1.0.7", - "glob": "^7.0.5" - }, - "bin": { - "json2yaml": "bin/json2yaml", - "yaml2json": "bin/yaml2json" - } - }, - "node_modules/yamljs/node_modules/argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "license": "MIT", - "dependencies": { - "sprintf-js": "~1.0.2" - } - }, - "node_modules/yargs": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-2.3.0.tgz", - "integrity": "sha512-w48USdbTdaVMcE3CnXsEtSY9zYSN7dTyVnLBgrJF2quA5rLwobC9zixxfexereLGFaxjxtR3oWdydC0qoayakw==", - "license": "MIT/X11", - "dependencies": { - "wordwrap": "0.0.2" - } - }, - "node_modules/yauzl": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", - "integrity": "sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==", - "license": "MIT", - "dependencies": { - "buffer-crc32": "~0.2.3", - "fd-slicer": "~1.1.0" - } - }, "node_modules/yocto-queue": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.2.1.tgz", - "integrity": "sha512-AyeEbWOu/TAXdxlV9wmGcR0+yh2j3vYPGOECcIj2S7MkrLyC7ne+oye2BKTItt0ii2PHk4cDy+95+LshzbXnGg==", + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true, "license": "MIT", "engines": { - "node": ">=12.20" + "node": ">=10" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" diff --git a/package.json b/package.json index 9988e1135..316fd3ace 100644 --- a/package.json +++ b/package.json @@ -1,27 +1,30 @@ { "name": "overture-documentation", - "version": "0.1.0", + "version": "0.2.0", "private": true, "scripts": { "docusaurus": "docusaurus", - "start": "./fetch_schema.sh && npm run docusaurus start", - "start-dev": "EXPORT SCHEMA_BRANCH=dev && ./fetch_schema.sh && npm run docusaurus start", - "start-staging": "EXPORT SCHEMA_BRANCH=staging && ./fetch_schema.sh && npm run docusaurus start", - "build": "./fetch_schema.sh && npm run docusaurus build", + "start": "npm run docusaurus start", + "build": "npm run docusaurus build", "swizzle": "docusaurus swizzle", "deploy": "docusaurus deploy", "clear": "docusaurus clear", "serve": "docusaurus serve", "write-translations": "docusaurus write-translations", - "write-heading-ids": "docusaurus write-heading-ids" + "write-heading-ids": "docusaurus write-heading-ids", + "lint": "eslint .", + "lint:fix": "eslint . --fix", + "lint:md": "markdownlint docs/**/*.md --ignore node_modules", + "format": "prettier --write .", + "format:check": "prettier --check .", + "typecheck": "tsc --noEmit" }, "dependencies": { - "@docusaurus/core": "^3.8.1", - "@docusaurus/preset-classic": "^3.8.1", + "@docusaurus/core": "^3.9.2", + "@docusaurus/faster": "^3.9.2", + "@docusaurus/preset-classic": "^3.9.2", "@mdx-js/react": "^3.0.0", "clsx": "^1.2.1", - "docusaurus": "^1.14.7", - "docusaurus-json-schema-plugin": "^1.12.0", "js-yaml": "^4.1.0", "maplibre-gl": "^5.6.1", "pmtiles": "^4.3.0", @@ -31,8 +34,16 @@ "react-dom": "^18.2.0" }, "devDependencies": { - "@docusaurus/module-type-aliases": "^3.8.1", - "@docusaurus/types": "^3.8.1", + "@docusaurus/module-type-aliases": "^3.9.2", + "@docusaurus/types": "^3.9.2", + "@eslint/js": "^9.19.0", + "eslint": "^9.19.0", + "eslint-config-prettier": "^10.0.1", + "eslint-plugin-react": "^7.37.4", + "globals": "^15.14.0", + "markdownlint-cli": "^0.43.0", + "prettier": "^3.4.2", + "typescript": "^5.7.3", "yaml-loader": "^0.8.0" }, "browserslist": { diff --git a/sidebars.js b/sidebars.js index d6dae5cac..d35ab3c8f 100644 --- a/sidebars.js +++ b/sidebars.js @@ -21,7 +21,7 @@ const sidebars = { 'getting-data/data-mirrors/databricks', 'getting-data/data-mirrors/fused', 'getting-data/data-mirrors/snowflake', - 'getting-data/data-mirrors/wherobots' + 'getting-data/data-mirrors/wherobots', ], }, ], @@ -31,7 +31,7 @@ const sidebars = { label: 'Examples', link: { type: 'doc', - id: 'examples/index' + id: 'examples/index', }, collapsed: true, items: [ @@ -46,14 +46,14 @@ const sidebars = { 'examples/rapid', 'examples/spark', 'examples/wherobots', - ] + ], }, - { + { type: 'category', label: 'Data Guides', link: { type: 'doc', - id: 'guides/index' + id: 'guides/index', }, collapsed: true, items: [ @@ -77,18 +77,291 @@ const sidebars = { 'gers/registry', 'gers/gers-tutorial', 'gers/gers-demonstrations', - - ] + ], }, 'attribution', - 'release-calendar' + 'release-calendar', ], - schema:[ + schema: [ + 'schema/index', { - type: 'autogenerated', - dirName: 'schema', // generate sidebar slice from the docs folder (or versioned_docs/) - } - ] + type: 'category', + label: 'Reference', + collapsed: true, + items: [ + // Cross-theme concepts that apply to all feature types + { + type: 'category', + label: 'Cross-Theme Properties', + collapsed: true, + items: [ + 'schema/reference/address', + 'schema/reference/source_property_item', + 'schema/reference/cartographic_hints', + { + type: 'category', + label: 'Names', + collapsed: true, + items: [ + 'schema/reference/Names/names', + 'schema/reference/Names/name_variant', + 'schema/reference/Names/name_rule', + 'schema/reference/Names/perspectives', + 'schema/reference/Names/perspective_mode', + 'schema/reference/Names/side', + ], + }, + { + type: 'category', + label: 'Units of Measurement', + collapsed: true, + items: [ + 'schema/reference/transportation/length_unit', + 'schema/reference/transportation/weight_unit', + 'schema/reference/transportation/speed_unit', + ], + }, + ], + }, + + { + type: 'category', + label: 'Addresses', + collapsed: true, + items: [ + 'schema/reference/addresses/address/address', + 'schema/reference/addresses/address/address_level', + ], + }, + { + type: 'category', + label: 'Base Features', + collapsed: true, + items: [ + { + type: 'category', + label: 'Water', + collapsed: true, + items: [ + 'schema/reference/base/water/water', + 'schema/reference/base/water/water_class', + 'schema/reference/base/water/water_subtype', + ], + }, + { + type: 'category', + label: 'Land', + collapsed: true, + items: [ + 'schema/reference/base/land/land', + 'schema/reference/base/land/land_class', + 'schema/reference/base/land/land_subtype', + ], + }, + { + type: 'category', + label: 'Land Use', + collapsed: true, + items: [ + 'schema/reference/base/land_use/land_use', + 'schema/reference/base/land_use/land_use_class', + 'schema/reference/base/land_use/land_use_subtype', + ], + }, + { + type: 'category', + label: 'Land Cover', + collapsed: true, + items: [ + 'schema/reference/base/land_cover/land_cover', + 'schema/reference/base/land_cover/land_cover_subtype', + ], + }, + 'schema/reference/base/bathymetry/bathymetry', + { + type: 'category', + label: 'Infrastructure', + collapsed: true, + items: [ + 'schema/reference/base/infrastructure/infrastructure', + 'schema/reference/base/infrastructure/infrastructure_class', + 'schema/reference/base/infrastructure/infrastructure_subtype', + ], + }, + 'schema/reference/base/surface_material', + ], + }, + { + type: 'category', + label: 'Buildings', + collapsed: true, + items: [ + { + type: 'category', + label: 'Building', + collapsed: true, + items: [ + 'schema/reference/buildings/building/building', + 'schema/reference/buildings/building/building_class', + 'schema/reference/buildings/building/subtype', + ], + }, + 'schema/reference/buildings/building_part/building_part', + 'schema/reference/buildings/facade_material', + 'schema/reference/buildings/roof_material', + 'schema/reference/buildings/roof_orientation', + 'schema/reference/buildings/roof_shape', + ], + }, + { + type: 'category', + label: 'Divisions', + collapsed: true, + items: [ + { + type: 'category', + label: 'Division', + collapsed: true, + items: [ + 'schema/reference/divisions/division/division', + 'schema/reference/divisions/division/norms', + ], + }, + { + type: 'category', + label: 'Division Area', + collapsed: true, + items: [ + 'schema/reference/divisions/division_area/division_area', + 'schema/reference/divisions/division_area/area_class', + ], + }, + { + type: 'category', + label: 'Division Boundary', + collapsed: true, + items: [ + 'schema/reference/divisions/division_boundary/division_boundary', + 'schema/reference/divisions/division_boundary/boundary_class', + ], + }, + 'schema/reference/divisions/capital_of_division_item', + 'schema/reference/divisions/division_class', + 'schema/reference/divisions/hierarchy_item', + 'schema/reference/divisions/place_type', + ], + }, + { + type: 'category', + label: 'Places', + collapsed: true, + items: [ + 'schema/reference/places/place/place', + 'schema/reference/places/place/brand', + 'schema/reference/places/place/categories', + ], + }, + { + type: 'category', + label: 'Transportation', + collapsed: true, + items: [ + { + type: 'category', + label: 'Segments', + collapsed: true, + items: [ + 'schema/reference/transportation/segment/road_segment', + 'schema/reference/transportation/segment/rail_segment', + 'schema/reference/transportation/segment/water_segment', + ], + }, + 'schema/reference/transportation/connector/connector', + 'schema/reference/transportation/connector_reference', + { + type: 'category', + label: 'Road Properties', + collapsed: true, + items: [ + 'schema/reference/transportation/road_class', + 'schema/reference/transportation/road_flag', + 'schema/reference/transportation/road_flag_rule', + 'schema/reference/transportation/road_surface', + ], + }, + { + type: 'category', + label: 'Rail Properties', + collapsed: true, + items: [ + 'schema/reference/transportation/rail_class', + 'schema/reference/transportation/rail_flag', + 'schema/reference/transportation/rail_flag_rule', + ], + }, + { + type: 'category', + label: 'Access & Restrictions', + collapsed: true, + items: [ + 'schema/reference/transportation/access_type', + 'schema/reference/transportation/access_restriction_rule', + 'schema/reference/transportation/access_restriction_when_clause', + 'schema/reference/transportation/prohibited_transition_rule', + 'schema/reference/transportation/prohibited_transition_when_clause', + ], + }, + { + type: 'category', + label: 'Speed & Limits', + collapsed: true, + items: [ + 'schema/reference/transportation/speed', + 'schema/reference/transportation/speed_unit', + 'schema/reference/transportation/speed_limit_rule', + 'schema/reference/transportation/speed_limit_when_clause', + ], + }, + { + type: 'category', + label: 'Vehicle Specifications', + collapsed: true, + items: [ + 'schema/reference/transportation/vehicle_comparison', + 'schema/reference/transportation/vehicle_dimension', + 'schema/reference/transportation/vehicle_scope_rule', + 'schema/reference/transportation/weight_unit', + 'schema/reference/transportation/width_rule', + ], + }, + { + type: 'category', + label: 'Navigation & Routing', + collapsed: true, + items: [ + 'schema/reference/transportation/destination_labels', + 'schema/reference/transportation/destination_label_type', + 'schema/reference/transportation/destination_rule', + 'schema/reference/transportation/destination_sign_symbol', + 'schema/reference/transportation/destination_when_clause', + 'schema/reference/transportation/route_reference', + ], + }, + 'schema/reference/transportation/heading', + 'schema/reference/transportation/length_unit', + 'schema/reference/transportation/level_rule', + 'schema/reference/transportation/purpose_of_use', + 'schema/reference/transportation/recognized_status', + 'schema/reference/transportation/sequence_entry', + 'schema/reference/transportation/subclass', + 'schema/reference/transportation/subclass_rule', + 'schema/reference/transportation/surface_rule', + 'schema/reference/transportation/travel_mode', + ], + }, + ], + }, + ], }; module.exports = sidebars; diff --git a/src/components/SmartTable.jsx b/src/components/SmartTable.jsx new file mode 100644 index 000000000..40ca45869 --- /dev/null +++ b/src/components/SmartTable.jsx @@ -0,0 +1,516 @@ +// components/SmartTable.jsx +import React, { useState, useMemo } from 'react'; + +function SmartTable({ children, ...props }) { + const [expandedGroups, setExpandedGroups] = useState(new Set()); + const [searchTerm, setSearchTerm] = useState(''); + const [expandAll, setExpandAll] = useState(false); + + // Extract table data from children (MDX passes the table structure) + const tableData = extractTableData(children); + + // Check if this table has the schema field structure (Name, Type, Description) + const isSchemaFieldTable = isSchemaTable(tableData.headers); + + // If not a schema field table, render as regular table + if (!isSchemaFieldTable) { + return {children}
; + } + + // Auto-detect field groupings based on common prefixes + const groupedFields = useMemo(() => autoDetectFieldGroups(tableData.rows), [tableData.rows]); + + // Filter fields based on search term + const filteredFields = useMemo(() => { + if (!searchTerm.trim()) return groupedFields; + + const searchInGroup = (group) => { + const matchesGroup = + group.name.toLowerCase().includes(searchTerm.toLowerCase()) || + group.type.toLowerCase().includes(searchTerm.toLowerCase()) || + group.description.toLowerCase().includes(searchTerm.toLowerCase()); + + const matchesChildren = group.children.some((child) => searchInGroup(child)); + + return matchesGroup || matchesChildren; + }; + + return groupedFields.filter((group) => searchInGroup(group)); + }, [groupedFields, searchTerm]); + + const toggleGroup = (groupName) => { + const newExpanded = new Set(expandedGroups); + if (newExpanded.has(groupName)) { + newExpanded.delete(groupName); + } else { + newExpanded.add(groupName); + } + setExpandedGroups(newExpanded); + }; + + const getAllCollapsibleGroups = (groups) => { + const collapsibleGroups = []; + groups.forEach((group) => { + if (group.isCollapsible) { + collapsibleGroups.push(group.name); + if (group.children && group.children.length > 0) { + collapsibleGroups.push(...getAllCollapsibleGroups(group.children)); + } + } + }); + return collapsibleGroups; + }; + + const handleExpandAll = () => { + if (expandAll) { + setExpandedGroups(new Set()); + } else { + const allCollapsibleGroups = getAllCollapsibleGroups(filteredFields); + setExpandedGroups(new Set(allCollapsibleGroups)); + } + setExpandAll(!expandAll); + }; + + const collapsibleGroupsCount = filteredFields.filter((group) => group.isCollapsible).length; + + return ( +
+ {/* Table Controls */} +
+
+ setSearchTerm(e.target.value)} + className="table-search" + aria-label="Search table fields" + /> + {searchTerm && ( + + )} +
+ + {collapsibleGroupsCount > 0 && ( + + )} +
+ + {/* Results count */} + {searchTerm && ( +
+ {filteredFields.length} field{filteredFields.length !== 1 ? 's' : ''} found +
+ )} + + + + + {tableData.headers.map((header, i) => ( + + ))} + + + + {filteredFields.length > 0 ? ( + filteredFields.map((group, i) => ( + + )) + ) : ( + + + + )} + +
+ {header} +
+ No fields found matching "{searchTerm}" +
+
+ ); +} + +function TableGroup({ group, isExpanded, onToggle, searchTerm, level = 0, expandedGroups }) { + const getTotalChildCount = (group) => { + let count = group.children.length; + group.children.forEach((child) => { + if (child.children && child.children.length > 0) { + count += getTotalChildCount(child); + } + }); + return count; + }; + + if (!group.isCollapsible) { + // Render standalone field + return ( + 0 ? `nested-field nested-level-${level}` : ''}> + + {highlightText(group.name, searchTerm)} + + {renderRichContent(group.type, searchTerm)} + {renderRichContent(group.description, searchTerm)} + + ); + } + + return ( + <> + {/* Parent row with expand/collapse button */} + 0 ? `nested-field nested-level-${level}` : ''}`} + > + + + {highlightText(group.name, searchTerm)} + {group.children.length > 0 && ( + + ({getTotalChildCount(group)}) + + )} + + {renderRichContent(group.type, searchTerm)} + {renderRichContent(group.description, searchTerm)} + + {/* Child rows (shown/hidden based on expanded state) */} + {isExpanded && + group.children.map((child, i) => ( + + ))} + + ); +} + +// Auto-detect field groupings based on common prefixes with recursive nesting +function autoDetectFieldGroups(rows) { + const fields = rows.map((row) => ({ + name: extractFieldName(row[0]), // Extract from first column + type: row[1], + description: row[2], + })); + + return buildNestedGroups(fields); +} + +function buildNestedGroups(fields) { + const groups = []; + const processed = new Set(); + + // Sort fields to ensure parents come before children + const sortedFields = [...fields].sort((a, b) => { + const aDepth = (a.name.match(/[\.\[]/g) || []).length; + const bDepth = (b.name.match(/[\.\[]/g) || []).length; + if (aDepth !== bDepth) return aDepth - bDepth; + return a.name.localeCompare(b.name); + }); + + for (const field of sortedFields) { + if (processed.has(field.name)) continue; + + const allDescendants = []; + + // Find all descendants (not just direct children) + for (const otherField of sortedFields) { + if (otherField.name === field.name || processed.has(otherField.name)) continue; + + if (isDescendant(field.name, otherField.name)) { + allDescendants.push(otherField); + processed.add(otherField.name); + } + } + + if (allDescendants.length > 0) { + // Recursively build nested groups for all descendants + const nestedChildren = buildNestedGroups(allDescendants); + + groups.push({ + name: field.name, + type: field.type, + description: field.description, + isCollapsible: true, + children: nestedChildren, + level: getFieldLevel(field.name), + }); + } else { + // Standalone field + groups.push({ + name: field.name, + type: field.type, + description: field.description, + isCollapsible: false, + children: [], + level: getFieldLevel(field.name), + }); + } + processed.add(field.name); + } + + return groups; +} + +function isDescendant(parentPrefix, childName) { + // Check if childName is any descendant of parentPrefix (not just direct child) + if (parentPrefix === childName) { + return false; + } + + if (parentPrefix.endsWith('[]')) { + // Parent ends with [], so descendants should start with "parent[]." + return childName.startsWith(parentPrefix + '.'); + } else { + // Parent doesn't end with [], so descendants could be: + // 1. parent.anything (normal dot notation) + // 2. parent[].anything (array notation) + return childName.startsWith(parentPrefix + '.') || childName.startsWith(parentPrefix + '['); + } +} + +function isDirectChild(parentPrefix, childName) { + // Don't consider a field a child of itself + if (parentPrefix === childName) { + return false; + } + + // Case 1: Parent like "sources" and child like "sources[].dataset" + // Case 2: Parent like "names.rules[]" and child like "names.rules[].variant" + // Case 3: Parent like "names" and child like "names.primary" + + let expectedPrefix; + + if (parentPrefix.endsWith('[]')) { + // Parent ends with [], so children should start with "parent[]." + expectedPrefix = parentPrefix + '.'; + } else { + // Parent doesn't end with [], so children could be: + // 1. parent.child (normal dot notation) + // 2. parent[].child (array notation) + + // Check for direct dot notation first + if (childName.startsWith(parentPrefix + '.')) { + const remainder = childName.substring(parentPrefix.length + 1); + // Allow [] at the end of the remainder (like "rules[]") + const cleanRemainder = remainder.replace(/\[\]$/, ''); + return !cleanRemainder.includes('.') && !cleanRemainder.includes('['); + } + + // Check for array notation + if (childName.startsWith(parentPrefix + '[')) { + // Could be parent[].child or parent[index].child + const afterParent = childName.substring(parentPrefix.length); + + // Check if it's parent[].child pattern + if (afterParent.startsWith('[].')) { + const remainder = afterParent.substring(3); // Remove "[]."" + // Allow [] at the end of the remainder (like "rules[]") + const cleanRemainder = remainder.replace(/\[\]$/, ''); + return !cleanRemainder.includes('.') && !cleanRemainder.includes('['); + } + + // Check if it's parent[index] pattern (not supported for grouping) + return false; + } + + return false; + } + + // For parents ending with [], check if child starts with expectedPrefix + if (childName.startsWith(expectedPrefix)) { + const remainder = childName.substring(expectedPrefix.length); + return !remainder.includes('.') && !remainder.includes('['); + } + + return false; +} + +function getFieldLevel(fieldName) { + // Count the depth level based on dots and brackets + return (fieldName.match(/[\.\[]/g) || []).length; +} + +function extractTableData(children) { + // Parse the MDX table structure to extract headers and rows + // When we override the table component, we receive thead/tbody as direct children + + const headers = []; + const rows = []; + + // Handle case where children is an array of table parts (thead, tbody) + const childrenArray = React.Children.toArray(children); + + childrenArray.forEach((child) => { + if (React.isValidElement(child)) { + if (child.type === 'thead') { + // Extract headers from thead + React.Children.forEach(child.props.children, (tr) => { + if (React.isValidElement(tr) && tr.type === 'tr') { + React.Children.forEach(tr.props.children, (th) => { + if (React.isValidElement(th) && th.type === 'th') { + headers.push(extractTextContent(th.props.children)); + } + }); + } + }); + } else if (child.type === 'tbody') { + // Extract rows from tbody - preserve rich content for Type and Description columns + React.Children.forEach(child.props.children, (tr) => { + if (React.isValidElement(tr) && tr.type === 'tr') { + const row = []; + React.Children.forEach(tr.props.children, (td, index) => { + if (React.isValidElement(td) && td.type === 'td') { + if (index === 0) { + // First column (Name) - extract text only for field name processing + row.push(extractTextContent(td.props.children)); + } else { + // Other columns (Type, Description) - preserve rich content including links + row.push(extractRichContent(td.props.children)); + } + } + }); + if (row.length > 0) { + rows.push(row); + } + } + }); + } + } + }); + + return { headers, rows }; +} + +function extractTextContent(children) { + if (typeof children === 'string') { + return children; + } + + if (React.isValidElement(children)) { + if (children.type === 'code') { + return extractTextContent(children.props.children); + } + return extractTextContent(children.props.children); + } + + if (Array.isArray(children)) { + return children.map(extractTextContent).join(''); + } + + return String(children || ''); +} + +function extractRichContent(children) { + // This function preserves React elements (like links) instead of just extracting text + if (typeof children === 'string') { + return children; + } + + if (React.isValidElement(children)) { + // Preserve the element as-is for rendering + return children; + } + + if (Array.isArray(children)) { + return children.map(extractRichContent); + } + + return children; +} + +function renderRichContent(content, searchTerm = '') { + if (typeof content === 'string') { + return highlightText(content, searchTerm); + } + + if (React.isValidElement(content)) { + // If it's a React element (like a link), render it as-is + return content; + } + + if (Array.isArray(content)) { + return content.map((item, index) => ( + {renderRichContent(item, searchTerm)} + )); + } + + return content; +} + +function highlightText(text, searchTerm) { + if (!searchTerm || !text || typeof text !== 'string') return text; + + const regex = new RegExp(`(${searchTerm.replace(/[.*+?^${}()|[\]\\]/g, '\\$&')})`, 'gi'); + const parts = text.split(regex); + + return parts.map((part, index) => + regex.test(part) ? ( + + {part} + + ) : ( + part + ) + ); +} + +function extractFieldName(cellContent) { + // Extract field name from cell content (remove code formatting, etc.) + if (typeof cellContent === 'string') { + return cellContent.trim(); + } + return String(cellContent || '').trim(); +} + +function isSchemaTable(headers) { + // Check if the table has the schema field structure (Name, Type, Description) + if (headers.length !== 3) { + return false; + } + + // Normalize headers for comparison (remove extra whitespace, make case-insensitive) + const normalizedHeaders = headers.map((header) => header.toLowerCase().trim()); + + // Check for exact match or common variations + const expectedHeaders = ['name', 'type', 'description']; + + return normalizedHeaders.every((header, index) => header === expectedHeaders[index]); +} + +export default SmartTable; diff --git a/src/components/shared-libs/generatePath.tsx b/src/components/shared-libs/generatePath.tsx deleted file mode 100644 index f0712a9cb..000000000 --- a/src/components/shared-libs/generatePath.tsx +++ /dev/null @@ -1,20 +0,0 @@ -// Example of basePath = '/schemas/examples/refs' -export default function generatePath(path: string, basePath: string = "") { - const parts = path.toString().split("/") - let finalPath = basePath - - for (let i = 0; i < parts.length; i++) { - if (parts[i] === "..") { - // Move up one directory in the base path - finalPath = finalPath.split("/").slice(0, -1).join("/") - } else if (parts[i] === ".") { - // Ignore current directory notation - continue - } else { - // Append the current directory to the base path - finalPath = `${finalPath}/${parts[i]}` - } - } - - return finalPath - } diff --git a/src/components/shared-libs/generateResolverOptions.tsx b/src/components/shared-libs/generateResolverOptions.tsx deleted file mode 100644 index 47ffa3b33..000000000 --- a/src/components/shared-libs/generateResolverOptions.tsx +++ /dev/null @@ -1,35 +0,0 @@ -import RemoteResolver from "@site/src/components/shared-libs/remoteResolver" -import YAMLFileResolver from "@site/src/components/shared-libs/yamlFileResolver" - -type Params = { - basePath?: string - jsonPointer?: string - remote?: boolean - yamlBasePath?: string -} - -export default function generateResolverOptions(params: Params) { - const { basePath, jsonPointer, remote, yamlBasePath} = params - - let config = {} - - if (yamlBasePath || yamlBasePath == "") { - config["resolvers"] = { - file: YAMLFileResolver(yamlBasePath), - } - } - - if (remote) { - if (config["resolvers"] === undefined) { - config["resolvers"] = {} - } - config["resolvers"]["http"] = RemoteResolver("http") - config["resolvers"]["https"] = RemoteResolver("https") - } - - if (jsonPointer) { - config["jsonPointer"] = jsonPointer - } - - return config -} diff --git a/src/components/shared-libs/remoteResolver.tsx b/src/components/shared-libs/remoteResolver.tsx deleted file mode 100644 index afbcaf894..000000000 --- a/src/components/shared-libs/remoteResolver.tsx +++ /dev/null @@ -1,18 +0,0 @@ -type Param = "http" | "https" - -export default function LocalFileResolver(_type: Param = "http") { - return { - resolve: (ref: string) => { - return new Promise((resolve, reject) => { - fetch(ref.toString(), { - headers: { - Accept: "application/json", - }, - }) - .then((response) => response.json()) - .then((result) => resolve(result)) - .catch((err) => reject(err)) - }) - }, - } -} diff --git a/src/components/shared-libs/stringifyObject.tsx b/src/components/shared-libs/stringifyObject.tsx index 89ed4bdd1..d444e89c5 100644 --- a/src/components/shared-libs/stringifyObject.tsx +++ b/src/components/shared-libs/stringifyObject.tsx @@ -1,31 +1,22 @@ export default function stringifyObject(obj: unknown, indent = 2): string { - const keys = Object.keys(obj) - const pairs = keys.map((key) => { - const value = obj[key] - if (typeof value === "function") { - const match = value.toString().match(/function\s+([\w$]+)\s*\(([^)]*)\)/) - const name = match ? match[1] : "anonymous" - const params = match - ? match[2] - .split(",") - .map((p) => p.trim()) - .join(", ") - : "" - return `${" ".repeat( - indent, - )}${key}: function ${name}(${params}) { /* function body */ },` - } else if ( - typeof value === "object" && - !Array.isArray(value) && - value !== null - ) { - return `${" ".repeat(indent)}${key}: ${stringifyObject( - value, - indent + 2, - )},` - } else { - return `${" ".repeat(indent)}${key}: ${JSON.stringify(value)},` - } - }) - return `{\n${pairs.join("\n")}\n${" ".repeat(indent - 2)}}` - } + const keys = Object.keys(obj); + const pairs = keys.map((key) => { + const value = obj[key]; + if (typeof value === 'function') { + const match = value.toString().match(/function\s+([\w$]+)\s*\(([^)]*)\)/); + const name = match ? match[1] : 'anonymous'; + const params = match + ? match[2] + .split(',') + .map((p) => p.trim()) + .join(', ') + : ''; + return `${' '.repeat(indent)}${key}: function ${name}(${params}) { /* function body */ },`; + } else if (typeof value === 'object' && !Array.isArray(value) && value !== null) { + return `${' '.repeat(indent)}${key}: ${stringifyObject(value, indent + 2)},`; + } else { + return `${' '.repeat(indent)}${key}: ${JSON.stringify(value)},`; + } + }); + return `{\n${pairs.join('\n')}\n${' '.repeat(indent - 2)}}`; +} diff --git a/src/components/shared-libs/yamlFileResolver.tsx b/src/components/shared-libs/yamlFileResolver.tsx deleted file mode 100644 index 65f74c846..000000000 --- a/src/components/shared-libs/yamlFileResolver.tsx +++ /dev/null @@ -1,32 +0,0 @@ -import generatePath from "@site/src/components/shared-libs/generatePath"; -import yaml from "js-yaml"; - -const schemaYamlFiles = require.context('@site/docs/_schema', true, /\.(yaml|yml)$/); -var preloadedYamlSchema = {} - -schemaYamlFiles.keys().forEach(function(path){ - preloadedYamlSchema[path.replace('./', '/')] = yaml.load( - require('!!raw-loader!@site/docs/_schema' + path.replace('./', '/')).default - ); -}) - -export default function YAMLFileResolver(basePath: string = "") { - return { - resolve: (ref: string) => { - return new Promise((resolve, reject) => { - - Promise.resolve().then(function(){ - - var relativeYamlPath = generatePath(ref, basePath) - - if (preloadedYamlSchema.hasOwnProperty(relativeYamlPath)){ - return preloadedYamlSchema[relativeYamlPath]; - }else{ - return {} - } - }).then(function(result){ return resolve(result)} - ).catch(function(err){ return reject(err); }); - }); - } - } - } diff --git a/src/css/custom.css b/src/css/custom.css index c26da2916..c4bc6c8c0 100644 --- a/src/css/custom.css +++ b/src/css/custom.css @@ -16,7 +16,7 @@ --ifm-link-color: #4edad8; --ifm-link-hover-color: #05a5af; --ifm-code-font-size: 90%; - --ifm-font-family-base: Montserrat,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif; + --ifm-font-family-base: Montserrat, Segoe UI, Roboto, Ubuntu, Cantarell, Noto Sans, sans-serif; --docusaurus-highlighted-code-line-bg: rgba(0, 0, 0, 0.1); } @@ -32,11 +32,10 @@ --ifm-link-color: #4051cc; --ifm-link-hover-color: #4051cc; --ifm-code-font-size: 90%; - --ifm-font-family-base: Noto Sans,Montserrat,Segoe UI,Roboto,Ubuntu,Cantarell,sans-serif; + --ifm-font-family-base: Noto Sans, Montserrat, Segoe UI, Roboto, Ubuntu, Cantarell, sans-serif; --docusaurus-highlighted-code-line-bg: rgba(0, 0, 0, 0.1); } - [data-theme='dark'] { --ifm-color-primary: #0ec1bd99; --ifm-color-primary-dark: #79def2; @@ -48,13 +47,13 @@ --ifm-link-color: #0ec1bd99; --ifm-link-hover-color: #4edad8; --ifm-code-font-size: 90%; - --ifm-font-family-base: Noto Sans,Montserrat,Segoe UI,Roboto,Ubuntu,Cantarell,sans-serif; + --ifm-font-family-base: Noto Sans, Montserrat, Segoe UI, Roboto, Ubuntu, Cantarell, sans-serif; --docusaurus-highlighted-code-line-bg: rgba(0, 0, 0, 0.3); } [data-theme='light'] .DocSearch { - --docsearch-primary-color: var(--ifm-color-black); - --docsearch-text-color: var(--ifm-font-color-primary); + --docsearch-primary-color: var(--ifm-color-black); + --docsearch-text-color: var(--ifm-font-color-primary); --docsearch-muted-color: var(--ifm-color-black); --docsearch-container-background: rgba(94, 100, 112, 0.7); /* Modal */ @@ -71,7 +70,7 @@ } [data-theme='dark'] .DocSearch { - --docsearch-primary-color: var(--ifm-color-black); + --docsearch-primary-color: var(--ifm-color-black); --docsearch-text-color: var(--ifm-font-color-primary); --docsearch-muted-color: var(--ifm-color-white); --docsearch-container-background: rgba(47, 55, 69, 0.7); @@ -93,7 +92,6 @@ ); } - /* Header Icons */ .github-link { @@ -113,10 +111,507 @@ content: ''; height: 100%; display: block; - background: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgdmlld0JveD0iMCAwIDE2IDE2Ij48cGF0aCBmaWxsPSIjMWMxZTIxIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik04IDBDMy41OCAwIDAgMy41OCAwIDhjMCAzLjU0IDIuMjkgNi41MyA1LjQ3IDcuNTkuNC4wNy41NS0uMTcuNTUtLjM4IDAtLjE5LS4wMS0uODItLjAxLTEuNDktMi4wMS4zNy0yLjUzLS40OS0yLjY5LS45NC0uMDktLjIzLS40OC0uOTQtLjgyLTEuMTMtLjI4LS4xNS0uNjgtLjUyLS4wMS0uNTMuNjMtLjAxIDEuMDguNTggMS4yMy44Mi43MiAxLjIxIDEuODcuODcgMi4zMy42Ni4wNy0uNTIuMjgtLjg3LjUxLTEuMDctMS43OC0uMi0zLjY0LS44OS0zLjY0LTMuOTUgMC0uODcuMzEtMS41OS44Mi0yLjE1LS4wOC0uMi0uMzYtMS4wMi4wOC0yLjEyIDAgMCAuNjctLjIxIDIuMi44Mi42NC0uMTggMS4zMi0uMjcgMi0uMjcuNjggMCAxLjM2LjA5IDIgLjI3IDEuNTMtMS4wNCAyLjItLjgyIDIuMi0uODIuNDQgMS4xLjE2IDEuOTIuMDggMi4xMi41MS41Ni44MiAxLjI3LjgyIDIuMTUgMCAzLjA3LTEuODcgMy43NS0zLjY1IDMuOTUuMjkuMjUuNTQuNzMuNTQgMS40OCAwIDEuMDctLjAxIDEuOTMtLjAxIDIuMiAwIC4yMS4xNS40Ni41NS4zOEE4LjAxMyA4LjAxMyAwIDAwMTYgOGMwLTQuNDItMy41OC04LTgtOHoiLz48L3N2Zz4=") 0 0/contain; + background: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgdmlld0JveD0iMCAwIDE2IDE2Ij48cGF0aCBmaWxsPSIjMWMxZTIxIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik04IDBDMy41OCAwIDAgMy41OCAwIDhjMCAzLjU0IDIuMjkgNi41MyA1LjQ3IDcuNTkuNC4wNy41NS0uMTcuNTUtLjM4IDAtLjE5LS4wMS0uODItLjAxLTEuNDktMi4wMS4zNy0yLjUzLS40OS0yLjY5LS45NC0uMDktLjIzLS40OC0uOTQtLjgyLTEuMTMtLjI4LS4xNS0uNjgtLjUyLS4wMS0uNTMuNjMtLjAxIDEuMDguNTggMS4yMy44Mi43MiAxLjIxIDEuODcuODcgMi4zMy42Ni4wNy0uNTIuMjgtLjg3LjUxLTEuMDctMS43OC0uMi0zLjY0LS44OS0zLjY0LTMuOTUgMC0uODcuMzEtMS41OS44Mi0yLjE1LS4wOC0uMi0uMzYtMS4wMi4wOC0yLjEyIDAgMCAuNjctLjIxIDIuMi44Mi42NC0uMTggMS4zMi0uMjcgMi0uMjcuNjggMCAxLjM2LjA5IDIgLjI3IDEuNTMtMS4wNCAyLjItLjgyIDIuMi0uODIuNDQgMS4xLjE2IDEuOTIuMDggMi4xMi41MS41Ni44MiAxLjI3LjgyIDIuMTUgMCAzLjA3LTEuODcgMy43NS0zLjY1IDMuOTUuMjkuMjUuNTQuNzMuNTQgMS40OCAwIDEuMDctLjAxIDEuOTMtLjAxIDIuMiAwIC4yMS4xNS40Ni41NS4zOEE4LjAxMyA4LjAxMyAwIDAwMTYgOGMwLTQuNDItMy41OC04LTgtOHoiLz48L3N2Zz4=') + 0 0 / contain; } [data-theme='dark'] .github-link:before { - background: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgdmlld0JveD0iMCAwIDE2IDE2Ij48cGF0aCBmaWxsPSIjZTNlM2UzIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik04IDBDMy41OCAwIDAgMy41OCAwIDhjMCAzLjU0IDIuMjkgNi41MyA1LjQ3IDcuNTkuNC4wNy41NS0uMTcuNTUtLjM4IDAtLjE5LS4wMS0uODItLjAxLTEuNDktMi4wMS4zNy0yLjUzLS40OS0yLjY5LS45NC0uMDktLjIzLS40OC0uOTQtLjgyLTEuMTMtLjI4LS4xNS0uNjgtLjUyLS4wMS0uNTMuNjMtLjAxIDEuMDguNTggMS4yMy44Mi43MiAxLjIxIDEuODcuODcgMi4zMy42Ni4wNy0uNTIuMjgtLjg3LjUxLTEuMDctMS43OC0uMi0zLjY0LS44OS0zLjY0LTMuOTUgMC0uODcuMzEtMS41OS44Mi0yLjE1LS4wOC0uMi0uMzYtMS4wMi4wOC0yLjEyIDAgMCAuNjctLjIxIDIuMi44Mi42NC0uMTggMS4zMi0uMjcgMi0uMjcuNjggMCAxLjM2LjA5IDIgLjI3IDEuNTMtMS4wNCAyLjItLjgyIDIuMi0uODIuNDQgMS4xLjE2IDEuOTIuMDggMi4xMi41MS41Ni44MiAxLjI3LjgyIDIuMTUgMCAzLjA3LTEuODcgMy43NS0zLjY1IDMuOTUuMjkuMjUuNTQuNzMuNTQgMS40OCAwIDEuMDctLjAxIDEuOTMtLjAxIDIuMiAwIC4yMS4xNS40Ni41NS4zOEE4LjAxMyA4LjAxMyAwIDAwMTYgOGMwLTQuNDItMy41OC04LTgtOHoiLz48L3N2Zz4=") 0 0/contain; + background: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgdmlld0JveD0iMCAwIDE2IDE2Ij48cGF0aCBmaWxsPSIjZTNlM2UzIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik04IDBDMy41OCAwIDAgMy41OCAwIDhjMCAzLjU0IDIuMjkgNi41MyA1LjQ3IDcuNTkuNC4wNy41NS0uMTcuNTUtLjM4IDAtLjE5LS4wMS0uODItLjAxLTEuNDktMi4wMS4zNy0yLjUzLS40OS0yLjY5LS45NC0uMDktLjIzLS40OC0uOTQtLjgyLTEuMTMtLjI4LS4xNS0uNjgtLjUyLS4wMS0uNTMuNjMtLjAxIDEuMDguNTggMS4yMy44Mi43MiAxLjIxIDEuODcuODcgMi4zMy42Ni4wNy0uNTIuMjgtLjg3LjUxLTEuMDctMS43OC0uMi0zLjY0LS44OS0zLjY0LTMuOTUgMC0uODcuMzEtMS41OS44Mi0yLjE1LS4wOC0uMi0uMzYtMS4wMi4wOC0yLjEyIDAgMCAuNjctLjIxIDIuMi44Mi42NC0uMTggMS4zMi0uMjcgMi0uMjcuNjggMCAxLjM2LjA5IDIgLjI3IDEuNTMtMS4wNCAyLjItLjgyIDIuMi0uODIuNDQgMS4xLjE2IDEuOTIuMDggMi4xMi41MS41Ni44MiAxLjI3LjgyIDIuMTUgMCAzLjA3LTEuODcgMy43NS0zLjY1IDMuOTUuMjkuMjUuNTQuNzMuNTQgMS40OCAwIDEuMDctLjAxIDEuOTMtLjAxIDIuMiAwIC4yMS4xNS40Ni41NS4zOEE4LjAxMyA4LjAxMyAwIDAwMTYgOGMwLTQuNDItMy41OC04LTgtOHoiLz48L3N2Zz4=') + 0 0 / contain; +} + +/* =================================>>>>>>> REPLACE + SMART TABLE STYLING + ======================================== */ + +/* Smart table container */ +.smart-table-container { + margin: 1.5rem 0; + background: var(--ifm-background-surface-color); + border-radius: 12px; + box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1); + overflow: hidden; +} + +/* Table controls */ +.table-controls { + display: flex; + justify-content: space-between; + align-items: center; + padding: 1rem 1.25rem; + background: var(--ifm-color-emphasis-50); + border-bottom: 1px solid var(--ifm-color-emphasis-200); + gap: 1rem; + flex-wrap: wrap; +} + +/* Search container */ +.search-container { + position: relative; + flex: 1; + max-width: 300px; +} + +.table-search { + width: 100%; + padding: 0.5rem 0.75rem; + padding-right: 2.5rem; + border: 2px solid var(--ifm-color-emphasis-300); + border-radius: 6px; + background: var(--ifm-background-color); + color: var(--ifm-font-color-base); + font-size: 0.9rem; + transition: all 0.2s ease; +} + +.table-search:focus { + outline: none; + border-color: var(--ifm-color-primary); + box-shadow: 0 0 0 3px rgba(44, 46, 127, 0.1); +} + +.clear-search { + position: absolute; + right: 0.5rem; + top: 50%; + transform: translateY(-50%); + background: none; + border: none; + color: var(--ifm-color-emphasis-600); + cursor: pointer; + padding: 0.25rem; + border-radius: 3px; + font-size: 0.9rem; + transition: all 0.2s ease; +} + +.clear-search:hover { + background: var(--ifm-color-emphasis-200); + color: var(--ifm-color-emphasis-800); +} + +/* Expand all button */ +.expand-all-button { + padding: 0.5rem 1rem; + background: var(--ifm-color-primary); + color: white; + border: none; + border-radius: 6px; + font-size: 0.85rem; + font-weight: 500; + cursor: pointer; + transition: all 0.2s ease; + white-space: nowrap; +} + +.expand-all-button:hover { + background: var(--ifm-color-primary-dark); + transform: translateY(-1px); +} + +.expand-all-button:active { + transform: translateY(0); +} + +/* Search results */ +.search-results { + padding: 0.5rem 1.25rem; + background: var(--ifm-color-emphasis-75); + color: var(--ifm-color-emphasis-700); + font-size: 0.85rem; + font-style: italic; + border-bottom: 1px solid var(--ifm-color-emphasis-200); +} + +/* Search highlighting */ +.search-highlight { + background: #ffeb3b; + color: #333; + padding: 0.1rem 0.2rem; + border-radius: 3px; + font-weight: 600; +} + +[data-theme='dark'] .search-highlight { + background: #ff9800; + color: #000; +} + +/* No results message */ +.no-results { + text-align: center; + padding: 2rem; + color: var(--ifm-color-emphasis-600); + font-style: italic; +} + +/* Main table styling */ +.schema-fields-table { + border-collapse: collapse; + width: 100%; + background: var(--ifm-background-surface-color); +} + +/* Table header */ +.schema-fields-table thead { + background: linear-gradient(135deg, var(--ifm-color-primary), var(--ifm-color-primary-dark)); + color: white; } +.schema-fields-table thead th { + padding: 1rem 1.25rem; + font-weight: 600; + font-size: 0.9rem; + text-transform: uppercase; + letter-spacing: 0.5px; + border: none; + text-align: left; +} + +.schema-fields-table thead th:first-child { + text-align: left; + width: 20%; +} + +.schema-fields-table thead th:nth-child(2) { + text-align: center; + width: 18%; +} + +.schema-fields-table thead th:last-child { + width: 62%; +} + +/* Table body rows */ +.schema-fields-table tbody tr { + border-bottom: 1px solid var(--ifm-color-emphasis-200); + transition: background-color 0.2s ease; +} + +.schema-fields-table tbody tr:hover { + background-color: var(--ifm-color-emphasis-100); +} + +.schema-fields-table tbody tr:last-child { + border-bottom: none; +} + +/* Expanded/collapsed row states */ +.schema-fields-table tbody tr.expanded { + background-color: var(--ifm-color-emphasis-50); +} + +.schema-fields-table tbody tr.collapsed { + background-color: var(--ifm-background-surface-color); +} + +/* Nested field rows */ +.schema-fields-table tbody tr.nested-field { + background-color: var(--ifm-color-emphasis-75); + position: relative; + animation: slideIn 0.3s ease-out; +} + +@keyframes slideIn { + from { + opacity: 0; + transform: translateY(-10px); + } + to { + opacity: 1; + transform: translateY(0); + } +} + +.schema-fields-table tbody tr.nested-field:hover { + background-color: var(--ifm-color-emphasis-150); +} + +.schema-fields-table tbody tr.nested-field td:first-child { + background-color: var(--ifm-color-emphasis-150); + border-left: 4px solid var(--ifm-color-primary); + position: relative; +} + +/* Multi-level nesting support */ +.schema-fields-table tbody tr.nested-level-1 td:first-child { + padding-left: 3.5rem; +} + +.schema-fields-table tbody tr.nested-level-2 td:first-child { + padding-left: 5rem; + border-left-color: var(--ifm-color-primary-light); +} + +.schema-fields-table tbody tr.nested-level-3 td:first-child { + padding-left: 6.5rem; + border-left-color: var(--ifm-color-primary-lighter); +} + +.schema-fields-table tbody tr.nested-level-4 td:first-child { + padding-left: 8rem; + border-left-color: var(--ifm-color-primary-lightest); +} + +/* Add horizontal connector */ +.schema-fields-table tbody tr.nested-field td:first-child::after { + content: ''; + position: absolute; + left: 1.5rem; + top: 50%; + width: 1rem; + height: 2px; + background-color: var(--ifm-color-primary-light); + transform: translateY(-50%); +} + +.schema-fields-table tbody tr.nested-level-2 td:first-child::after { + left: 3rem; +} + +.schema-fields-table tbody tr.nested-level-3 td:first-child::after { + left: 4.5rem; +} + +.schema-fields-table tbody tr.nested-level-4 td:first-child::after { + left: 6rem; +} + +/* Table cells */ +.schema-fields-table tbody td { + padding: 1rem 1.25rem; + vertical-align: top; + border: none; + line-height: 1.6; +} + +.schema-fields-table tbody td:first-child { + text-align: left; + font-family: var(--ifm-font-family-monospace); + font-weight: 600; + color: var(--ifm-color-primary); + background-color: var(--ifm-color-emphasis-50); + border-right: 3px solid var(--ifm-color-primary-lightest); + font-size: 0.9rem; + position: relative; + display: flex; + align-items: center; + gap: 0.5rem; +} + +.schema-fields-table tbody td:nth-child(2) { + text-align: center; + font-family: var(--ifm-font-family-monospace); + font-size: 0.85rem; + color: var(--ifm-color-primary-dark); + background-color: var(--ifm-color-emphasis-25); +} + +.schema-fields-table tbody td:last-child { + font-size: 0.9rem; + color: var(--ifm-font-color-base); + white-space: pre-wrap; +} + +/* Child count indicator */ +.child-count { + font-size: 0.75rem; + color: var(--ifm-color-emphasis-600); + font-weight: 400; + margin-left: 0.5rem; + background: var(--ifm-color-emphasis-200); + padding: 0.1rem 0.4rem; + border-radius: 10px; +} + +/* Expand/collapse button */ +.schema-fields-table .expand-button { + background: transparent; + border: 1px solid var(--ifm-color-emphasis-400); + color: var(--ifm-color-emphasis-600); + cursor: pointer; + font-size: 0.75rem; + padding: 0.2rem; + border-radius: 3px; + transition: all 0.2s ease; + display: inline-flex; + align-items: center; + justify-content: center; + width: 1.2rem; + height: 1.2rem; + flex-shrink: 0; + font-weight: 600; +} + +.schema-fields-table .expand-button:hover { + background-color: var(--ifm-color-emphasis-200); + border-color: var(--ifm-color-emphasis-600); + color: var(--ifm-color-emphasis-800); +} + +.schema-fields-table .expand-button:focus { + outline: 2px solid var(--ifm-color-primary); + outline-offset: 1px; +} + +.expand-icon { + transition: transform 0.2s ease; +} + +.schema-fields-table tr.expanded .expand-icon { + transform: rotate(90deg); +} + +/* Code elements within table cells */ +.schema-fields-table code { + background-color: var(--ifm-color-emphasis-200); + padding: 0.2rem 0.4rem; + border-radius: 4px; + font-size: 0.85em; + border: 1px solid var(--ifm-color-emphasis-300); +} + +.schema-fields-table tbody td:nth-child(2) code { + background: transparent; + padding: 0; + border: none; + color: inherit; +} + +/* Links within table cells */ +.schema-fields-table a { + color: var(--ifm-link-color); + text-decoration: none; + font-weight: 500; +} + +.schema-fields-table a:hover { + color: var(--ifm-link-hover-color); + text-decoration: underline; +} + +/* Responsive design */ +@media (max-width: 768px) { + .table-controls { + flex-direction: column; + align-items: stretch; + gap: 0.75rem; + } + + .search-container { + max-width: none; + } + + .expand-all-button { + align-self: flex-end; + width: fit-content; + } + + .schema-fields-table { + font-size: 0.8rem; + } + + .schema-fields-table thead th, + .schema-fields-table tbody td { + padding: 0.75rem 0.5rem; + } + + .schema-fields-table tbody td:first-child { + font-size: 0.8rem; + flex-direction: column; + align-items: flex-start; + gap: 0.25rem; + } + + .schema-fields-table tbody td:nth-child(2) { + font-size: 0.75rem; + } + + .schema-fields-table tbody tr.nested-field td:first-child { + padding-left: 1.5rem; + } + + .schema-fields-table .expand-button { + width: 1.25rem; + height: 1.25rem; + font-size: 0.6rem; + } + + .child-count { + font-size: 0.7rem; + margin-left: 0; + } +} + +@media (max-width: 480px) { + .smart-table-container { + margin: 1rem -1rem; + border-radius: 0; + } + + .table-controls { + padding: 0.75rem 1rem; + } + + .schema-fields-table thead th, + .schema-fields-table tbody td { + padding: 0.5rem 0.75rem; + } + + .schema-fields-table thead th:nth-child(2), + .schema-fields-table tbody td:nth-child(2) { + display: none; + } + + .schema-fields-table thead th:first-child { + width: 35%; + } + + .schema-fields-table thead th:last-child { + width: 65%; + } +} + +/* Dark theme adjustments */ +[data-theme='dark'] .schema-fields-table { + box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3); +} + +[data-theme='dark'] .schema-fields-table thead { + background: linear-gradient( + 135deg, + var(--ifm-color-primary-dark), + var(--ifm-color-primary-darkest) + ); +} + +[data-theme='dark'] .schema-fields-table tbody td:first-child { + background-color: var(--ifm-color-emphasis-100); + border-right-color: var(--ifm-color-primary-light); +} + +[data-theme='dark'] .schema-fields-table tbody td:nth-child(2) { + background-color: var(--ifm-color-emphasis-75); +} + +[data-theme='dark'] .schema-fields-table tbody tr.nested-field { + background-color: var(--ifm-color-emphasis-75); +} + +[data-theme='dark'] .schema-fields-table tbody tr.nested-field:hover { + background-color: var(--ifm-color-emphasis-200); +} + +[data-theme='dark'] .schema-fields-table tbody tr.nested-field td:first-child { + background-color: var(--ifm-color-emphasis-150); + border-left-color: var(--ifm-color-primary-light); +} + +[data-theme='dark'] .schema-fields-table .expand-button { + color: var(--ifm-color-primary-light); +} + +[data-theme='dark'] .schema-fields-table .expand-button:hover { + background-color: var(--ifm-color-primary-dark); + color: var(--ifm-color-primary-lightest); +} diff --git a/src/css/map.css b/src/css/map.css index 02601ecd8..67b14251d 100644 --- a/src/css/map.css +++ b/src/css/map.css @@ -1,33 +1,40 @@ .map-wrap { - position: relative; - width: 100%; - height: calc(50vh); /* calculate height of the screen minus the heading */ + position: relative; + width: 100%; + height: calc(50vh); /* calculate height of the screen minus the heading */ } .map { - position: absolute; - width: 100%; - height: 100%; + position: absolute; + width: 100%; + height: 100%; } -button.layer{ - margin: 5px 0; - padding: 8px 12px; - background-color: #4a8ad8; - color: rgb(232, 222, 222); - cursor: pointer; - border: none; - border-radius: 4px; - font-family: Montserrat,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif; - font-weight: 600; - font-size: larger; +button.layer { + margin: 5px 0; + padding: 8px 12px; + background-color: #4a8ad8; + color: rgb(232, 222, 222); + cursor: pointer; + border: none; + border-radius: 4px; + font-family: + Montserrat, + Segoe UI, + Roboto, + Ubuntu, + Cantarell, + Noto Sans, + sans-serif; + font-weight: 600; + font-size: larger; } -button.layer.active{ - background-color: #59a0f6; +button.layer.active { + background-color: #59a0f6; } -input{ - width:50px; - height:4px; +input { + width: 50px; + height: 4px; } diff --git a/src/theme/MDXComponents.js b/src/theme/MDXComponents.js new file mode 100644 index 000000000..6ace7cb0f --- /dev/null +++ b/src/theme/MDXComponents.js @@ -0,0 +1,13 @@ +import MDXComponents from '@theme-original/MDXComponents'; +import SmartTable from '@site/src/components/SmartTable'; + +export default { + // Re-use the default mapping + ...MDXComponents, + + // Register custom components + SmartTable, + + // Override the default table component to use SmartTable + table: SmartTable, +}; diff --git a/tsconfig.json b/tsconfig.json new file mode 100644 index 000000000..fdd71036b --- /dev/null +++ b/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "target": "ES2020", + "module": "ESNext", + "moduleResolution": "bundler", + "jsx": "react-jsx", + "strict": true, + "noEmit": true, + "esModuleInterop": true, + "skipLibCheck": true, + "forceConsistentCasingInFileNames": true, + "resolveJsonModule": true, + "allowJs": true, + "checkJs": false, + "baseUrl": ".", + "paths": { + "@site/*": ["./*"], + "@docusaurus/*": ["node_modules/@docusaurus/*"] + } + }, + "include": ["src/**/*", "docs/**/*", "*.js", "*.ts"], + "exclude": ["node_modules", "build", ".docusaurus"] +} From 3c46afaf634207585b0d978d3b7041cfe3a8ddf5 Mon Sep 17 00:00:00 2001 From: Seth Fitzsimmons Date: Tue, 17 Feb 2026 13:51:45 -0800 Subject: [PATCH 02/12] Replace schema reference with current codegen output Generated from overture-schema-codegen (code-generation branch) using explicit theme selection to exclude internal types: overture-codegen generate \ --theme addresses --theme base --theme buildings \ --theme divisions --theme places --theme transportation \ --format markdown --output-dir docs/schema/reference Cross-theme types (names, perspectives, cartography, scoping, strings, sources, primitives, geometry) now live under types/{subsystem}/ instead of flat at reference root or under Names/. Transportation segments (road, rail, water) and their ~50 referenced types are not yet generated -- the codegen doesn't decompose the Segment discriminated union into individual models. A WIP banner on the schema index notes this gap. Broken link warnings enabled in docusaurus.config.js to surface pre-existing and new issues during builds. --- docs/schema/index.md | 6 + docs/schema/reference/Names/name_rule.md | 16 -- docs/schema/reference/Names/name_variant.md | 10 - docs/schema/reference/Names/names.md | 19 -- docs/schema/reference/Names/perspectives.md | 10 - docs/schema/reference/Names/side.md | 10 - docs/schema/reference/address.md | 13 - .../addresses/address/_category_.json | 3 + .../reference/addresses/address/address.md | 147 ++++++++--- .../addresses/address/address_level.md | 20 +- docs/schema/reference/base/_category_.json | 3 + .../reference/base/bathymetry/_category_.json | 3 + .../reference/base/bathymetry/bathymetry.md | 83 +++--- .../schema/reference/base/bathymetry/depth.md | 7 + docs/schema/reference/base/elevation.md | 7 + .../base/infrastructure/_category_.json | 3 + .../reference/base/infrastructure/height.md | 5 + .../base/infrastructure/infrastructure.md | 127 +++++---- .../infrastructure/infrastructure_class.md | 5 +- .../infrastructure/infrastructure_subtype.md | 4 +- .../reference/base/land/_category_.json | 3 + docs/schema/reference/base/land/land.md | 127 +++++---- docs/schema/reference/base/land/land_class.md | 4 +- .../reference/base/land/land_subtype.md | 5 +- .../reference/base/land_cover/_category_.json | 3 + .../reference/base/land_cover/land_cover.md | 91 ++++--- .../base/land_cover/land_cover_subtype.md | 2 +- .../reference/base/land_use/_category_.json | 3 + .../reference/base/land_use/land_use.md | 127 +++++---- .../reference/base/land_use/land_use_class.md | 2 + .../base/land_use/land_use_subtype.md | 4 +- docs/schema/reference/base/source_tags.md | 1 + .../schema/reference/base/surface_material.md | 2 +- .../reference/base/water/_category_.json | 3 + docs/schema/reference/base/water/water.md | 142 +++++++---- .../reference/base/water/water_class.md | 4 +- .../reference/base/water/water_subtype.md | 4 +- .../reference/buildings/_category_.json | 3 + .../buildings/building/_category_.json | 3 + .../reference/buildings/building/building.md | 186 +++++++++----- .../buildings/building/building_class.md | 4 +- .../{subtype.md => building_subtype.md} | 7 +- .../buildings/building_part/_category_.json | 3 + .../buildings/building_part/building_part.md | 177 ++++++++----- .../reference/buildings/roof_material.md | 2 +- .../reference/buildings/roof_orientation.md | 7 +- docs/schema/reference/cartographic_hints.md | 12 - .../reference/divisions/_category_.json | 3 + .../schema/reference/divisions/admin_level.md | 6 + .../divisions/capital_of_division_item.md | 10 - .../divisions/division/_category_.json | 3 + .../division/capital_of_division_item.md | 10 + .../reference/divisions/division/division.md | 241 ++++++++++++------ .../{ => division}/division_class.md | 0 .../reference/divisions/division/hierarchy.md | 6 + .../divisions/division/hierarchy_item.md | 11 + .../reference/divisions/division/norms.md | 2 +- .../divisions/division_area/_category_.json | 3 + .../divisions/division_area/division_area.md | 113 ++++---- .../division_boundary/_category_.json | 3 + .../division_boundary/boundary_class.md | 2 - .../division_boundary/division_boundary.md | 139 +++++++--- .../schema/reference/divisions/division_id.md | 7 + .../reference/divisions/hierarchy_item.md | 11 - docs/schema/reference/divisions/place_type.md | 4 +- .../reference/places/place/_category_.json | 3 + docs/schema/reference/places/place/brand.md | 32 +-- .../reference/places/place/categories.md | 12 +- .../places/place/operating_status.md | 15 ++ docs/schema/reference/places/place/place.md | 219 +++++++++++----- .../schema/reference/places/place/taxonomy.md | 37 +++ docs/schema/reference/source_property_item.md | 19 -- .../transportation/access_restriction_rule.md | 22 -- .../access_restriction_when_clause.md | 21 -- .../reference/transportation/access_type.md | 9 - .../transportation/connector/_category_.json | 3 + .../transportation/connector/connector.md | 57 +++-- .../transportation/connector_reference.md | 11 - .../transportation/destination_label_type.md | 12 - .../transportation/destination_labels.md | 10 - .../transportation/destination_rule.md | 18 -- .../transportation/destination_sign_symbol.md | 27 -- .../transportation/destination_when_clause.md | 12 - .../reference/transportation/heading.md | 8 - .../reference/transportation/length_unit.md | 13 - .../reference/transportation/level_rule.md | 11 - .../prohibited_transition_rule.md | 25 -- .../prohibited_transition_when_clause.md | 21 -- .../transportation/purpose_of_use.md | 12 - .../reference/transportation/rail_class.md | 14 - .../reference/transportation/rail_flag.md | 16 -- .../transportation/rail_flag_rule.md | 10 - .../transportation/recognized_status.md | 12 - .../reference/transportation/road_class.md | 23 -- .../reference/transportation/road_flag.md | 15 -- .../transportation/road_flag_rule.md | 10 - .../reference/transportation/road_surface.md | 13 - .../transportation/route_reference.md | 14 - .../transportation/segment/rail_segment.md | 67 ----- .../transportation/segment/road_segment.md | 112 -------- .../transportation/segment/water_segment.md | 63 ----- .../transportation/sequence_entry.md | 10 - docs/schema/reference/transportation/speed.md | 11 - .../transportation/speed_limit_rule.md | 25 -- .../transportation/speed_limit_when_clause.md | 21 -- .../reference/transportation/speed_unit.md | 8 - .../reference/transportation/subclass.md | 13 - .../reference/transportation/subclass_rule.md | 10 - .../reference/transportation/surface_rule.md | 11 - .../reference/transportation/travel_mode.md | 19 -- .../transportation/vehicle_comparison.md | 11 - .../transportation/vehicle_dimension.md | 11 - .../transportation/vehicle_scope_rule.md | 12 - .../reference/transportation/weight_unit.md | 13 - .../reference/transportation/width_rule.md | 11 - docs/schema/reference/types/_category_.json | 3 + .../types/cartography/_category_.json | 3 + .../types/cartography/cartographic_hints.md | 12 + .../reference/types/cartography/max_zoom.md | 8 + .../reference/types/cartography/min_zoom.md | 8 + .../reference/types/cartography/prominence.md | 8 + .../reference/types/cartography/sort_key.md | 6 + .../types/core_types/_category_.json | 3 + .../types/core_types/confidence_score.md | 6 + .../types/core_types/feature_version.md | 7 + .../reference/types/core_types/level.md | 6 + docs/schema/reference/types/geometry.md | 11 + .../reference/types/names/_category_.json | 3 + .../reference/types/names/common_names.md | 3 + .../schema/reference/types/names/name_rule.md | 29 +++ .../reference/types/names/name_variant.md | 18 ++ docs/schema/reference/types/names/names.md | 20 ++ .../types/perspectives/_category_.json | 3 + .../perspectives}/perspective_mode.md | 0 .../types/perspectives/perspectives.md | 10 + docs/schema/reference/types/primitives.md | 27 ++ .../types/references/_category_.json | 3 + docs/schema/reference/types/references/id.md | 8 + .../reference/types/scoping/_category_.json | 3 + .../scoping/linearly_referenced_range.md | 7 + docs/schema/reference/types/scoping/side.md | 10 + .../reference/types/sources/_category_.json | 3 + .../reference/types/sources/source_item.md | 34 +++ .../schema/reference/types/sources/sources.md | 6 + .../reference/types/strings/_category_.json | 3 + .../types/strings/country_code_alpha2.md | 7 + .../reference/types/strings/hex_color.md | 13 + .../reference/types/strings/json_pointer.md | 17 ++ .../reference/types/strings/language_tag.md | 18 ++ .../reference/types/strings/phone_number.md | 7 + .../reference/types/strings/region_code.md | 7 + .../types/strings/snake_case_string.md | 7 + .../types/strings/stripped_string.md | 7 + .../reference/types/strings/wikidata_id.md | 11 + docusaurus.config.js | 8 +- sidebars.js | 210 ++++++++------- 156 files changed, 2010 insertions(+), 1763 deletions(-) delete mode 100644 docs/schema/reference/Names/name_rule.md delete mode 100644 docs/schema/reference/Names/name_variant.md delete mode 100644 docs/schema/reference/Names/names.md delete mode 100644 docs/schema/reference/Names/perspectives.md delete mode 100644 docs/schema/reference/Names/side.md delete mode 100644 docs/schema/reference/address.md create mode 100644 docs/schema/reference/addresses/address/_category_.json create mode 100644 docs/schema/reference/base/_category_.json create mode 100644 docs/schema/reference/base/bathymetry/_category_.json create mode 100644 docs/schema/reference/base/bathymetry/depth.md create mode 100644 docs/schema/reference/base/elevation.md create mode 100644 docs/schema/reference/base/infrastructure/_category_.json create mode 100644 docs/schema/reference/base/infrastructure/height.md create mode 100644 docs/schema/reference/base/land/_category_.json create mode 100644 docs/schema/reference/base/land_cover/_category_.json create mode 100644 docs/schema/reference/base/land_use/_category_.json create mode 100644 docs/schema/reference/base/source_tags.md create mode 100644 docs/schema/reference/base/water/_category_.json create mode 100644 docs/schema/reference/buildings/_category_.json create mode 100644 docs/schema/reference/buildings/building/_category_.json rename docs/schema/reference/buildings/building/{subtype.md => building_subtype.md} (50%) create mode 100644 docs/schema/reference/buildings/building_part/_category_.json delete mode 100644 docs/schema/reference/cartographic_hints.md create mode 100644 docs/schema/reference/divisions/_category_.json create mode 100644 docs/schema/reference/divisions/admin_level.md delete mode 100644 docs/schema/reference/divisions/capital_of_division_item.md create mode 100644 docs/schema/reference/divisions/division/_category_.json create mode 100644 docs/schema/reference/divisions/division/capital_of_division_item.md rename docs/schema/reference/divisions/{ => division}/division_class.md (100%) create mode 100644 docs/schema/reference/divisions/division/hierarchy.md create mode 100644 docs/schema/reference/divisions/division/hierarchy_item.md create mode 100644 docs/schema/reference/divisions/division_area/_category_.json create mode 100644 docs/schema/reference/divisions/division_boundary/_category_.json create mode 100644 docs/schema/reference/divisions/division_id.md delete mode 100644 docs/schema/reference/divisions/hierarchy_item.md create mode 100644 docs/schema/reference/places/place/_category_.json create mode 100644 docs/schema/reference/places/place/operating_status.md create mode 100644 docs/schema/reference/places/place/taxonomy.md delete mode 100644 docs/schema/reference/source_property_item.md delete mode 100644 docs/schema/reference/transportation/access_restriction_rule.md delete mode 100644 docs/schema/reference/transportation/access_restriction_when_clause.md delete mode 100644 docs/schema/reference/transportation/access_type.md create mode 100644 docs/schema/reference/transportation/connector/_category_.json delete mode 100644 docs/schema/reference/transportation/connector_reference.md delete mode 100644 docs/schema/reference/transportation/destination_label_type.md delete mode 100644 docs/schema/reference/transportation/destination_labels.md delete mode 100644 docs/schema/reference/transportation/destination_rule.md delete mode 100644 docs/schema/reference/transportation/destination_sign_symbol.md delete mode 100644 docs/schema/reference/transportation/destination_when_clause.md delete mode 100644 docs/schema/reference/transportation/heading.md delete mode 100644 docs/schema/reference/transportation/length_unit.md delete mode 100644 docs/schema/reference/transportation/level_rule.md delete mode 100644 docs/schema/reference/transportation/prohibited_transition_rule.md delete mode 100644 docs/schema/reference/transportation/prohibited_transition_when_clause.md delete mode 100644 docs/schema/reference/transportation/purpose_of_use.md delete mode 100644 docs/schema/reference/transportation/rail_class.md delete mode 100644 docs/schema/reference/transportation/rail_flag.md delete mode 100644 docs/schema/reference/transportation/rail_flag_rule.md delete mode 100644 docs/schema/reference/transportation/recognized_status.md delete mode 100644 docs/schema/reference/transportation/road_class.md delete mode 100644 docs/schema/reference/transportation/road_flag.md delete mode 100644 docs/schema/reference/transportation/road_flag_rule.md delete mode 100644 docs/schema/reference/transportation/road_surface.md delete mode 100644 docs/schema/reference/transportation/route_reference.md delete mode 100644 docs/schema/reference/transportation/segment/rail_segment.md delete mode 100644 docs/schema/reference/transportation/segment/road_segment.md delete mode 100644 docs/schema/reference/transportation/segment/water_segment.md delete mode 100644 docs/schema/reference/transportation/sequence_entry.md delete mode 100644 docs/schema/reference/transportation/speed.md delete mode 100644 docs/schema/reference/transportation/speed_limit_rule.md delete mode 100644 docs/schema/reference/transportation/speed_limit_when_clause.md delete mode 100644 docs/schema/reference/transportation/speed_unit.md delete mode 100644 docs/schema/reference/transportation/subclass.md delete mode 100644 docs/schema/reference/transportation/subclass_rule.md delete mode 100644 docs/schema/reference/transportation/surface_rule.md delete mode 100644 docs/schema/reference/transportation/travel_mode.md delete mode 100644 docs/schema/reference/transportation/vehicle_comparison.md delete mode 100644 docs/schema/reference/transportation/vehicle_dimension.md delete mode 100644 docs/schema/reference/transportation/vehicle_scope_rule.md delete mode 100644 docs/schema/reference/transportation/weight_unit.md delete mode 100644 docs/schema/reference/transportation/width_rule.md create mode 100644 docs/schema/reference/types/_category_.json create mode 100644 docs/schema/reference/types/cartography/_category_.json create mode 100644 docs/schema/reference/types/cartography/cartographic_hints.md create mode 100644 docs/schema/reference/types/cartography/max_zoom.md create mode 100644 docs/schema/reference/types/cartography/min_zoom.md create mode 100644 docs/schema/reference/types/cartography/prominence.md create mode 100644 docs/schema/reference/types/cartography/sort_key.md create mode 100644 docs/schema/reference/types/core_types/_category_.json create mode 100644 docs/schema/reference/types/core_types/confidence_score.md create mode 100644 docs/schema/reference/types/core_types/feature_version.md create mode 100644 docs/schema/reference/types/core_types/level.md create mode 100644 docs/schema/reference/types/geometry.md create mode 100644 docs/schema/reference/types/names/_category_.json create mode 100644 docs/schema/reference/types/names/common_names.md create mode 100644 docs/schema/reference/types/names/name_rule.md create mode 100644 docs/schema/reference/types/names/name_variant.md create mode 100644 docs/schema/reference/types/names/names.md create mode 100644 docs/schema/reference/types/perspectives/_category_.json rename docs/schema/reference/{Names => types/perspectives}/perspective_mode.md (100%) create mode 100644 docs/schema/reference/types/perspectives/perspectives.md create mode 100644 docs/schema/reference/types/primitives.md create mode 100644 docs/schema/reference/types/references/_category_.json create mode 100644 docs/schema/reference/types/references/id.md create mode 100644 docs/schema/reference/types/scoping/_category_.json create mode 100644 docs/schema/reference/types/scoping/linearly_referenced_range.md create mode 100644 docs/schema/reference/types/scoping/side.md create mode 100644 docs/schema/reference/types/sources/_category_.json create mode 100644 docs/schema/reference/types/sources/source_item.md create mode 100644 docs/schema/reference/types/sources/sources.md create mode 100644 docs/schema/reference/types/strings/_category_.json create mode 100644 docs/schema/reference/types/strings/country_code_alpha2.md create mode 100644 docs/schema/reference/types/strings/hex_color.md create mode 100644 docs/schema/reference/types/strings/json_pointer.md create mode 100644 docs/schema/reference/types/strings/language_tag.md create mode 100644 docs/schema/reference/types/strings/phone_number.md create mode 100644 docs/schema/reference/types/strings/region_code.md create mode 100644 docs/schema/reference/types/strings/snake_case_string.md create mode 100644 docs/schema/reference/types/strings/stripped_string.md create mode 100644 docs/schema/reference/types/strings/wikidata_id.md diff --git a/docs/schema/index.md b/docs/schema/index.md index 8af8f0990..c0c9dd29d 100644 --- a/docs/schema/index.md +++ b/docs/schema/index.md @@ -8,6 +8,12 @@ import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; +:::caution Work in Progress +The schema reference pages are being regenerated from the Pydantic model +definitions. Transportation segment types (road, rail, water) and their +associated properties are not yet available. Other themes are complete. +::: + ### Top-level properties In the Overture schema, all features have a unique `id` called a [GERS ID](https://docs.overturemaps.org/gers/), a `geometry` object that follows the OGC geometry specification, and other top-level properties. diff --git a/docs/schema/reference/Names/name_rule.md b/docs/schema/reference/Names/name_rule.md deleted file mode 100644 index 3aa698c03..000000000 --- a/docs/schema/reference/Names/name_rule.md +++ /dev/null @@ -1,16 +0,0 @@ -# NameRule - -Name rule with variant and language specification. - -## Fields - -| Name | Type | Description | -|-----:|:----:|-------------| -| `side` | `string` ([Side](/schema/codegen/Names/name_rule/side/)) (optional) | Examples: `left`, `right` | -| `between` | `list` (optional) | | -| `value` | `string` | | -| `variant` | `string` ([NameVariant](/schema/codegen/Names/name_rule/name_variant/)) | Examples: `common`, `official`, `alternate`, ... | -| `language` | `string` (optional) | | -| `perspectives` | `object` (`[Perspectives](perspectives)`) (optional) | | -| `perspectives.mode` | `string` ([PerspectiveMode](perspective_mode)) | Whether the perspective holder accepts or disputes this name. Examples: `accepted_by`, `disputed_by` | -| `perspectives.countries` | `list` | Countries holding the given mode of perspective. | diff --git a/docs/schema/reference/Names/name_variant.md b/docs/schema/reference/Names/name_variant.md deleted file mode 100644 index 22bc60ed5..000000000 --- a/docs/schema/reference/Names/name_variant.md +++ /dev/null @@ -1,10 +0,0 @@ -# NameVariant - -An enumeration. - -## Values - -- `common` -- `official` -- `alternate` -- `short` diff --git a/docs/schema/reference/Names/names.md b/docs/schema/reference/Names/names.md deleted file mode 100644 index aa7976deb..000000000 --- a/docs/schema/reference/Names/names.md +++ /dev/null @@ -1,19 +0,0 @@ -# Names - -Multilingual names container. - -## Fields - -| Name | Type | Description | -|-----:|:----:|-------------| -| `primary` | `string` | The most commonly used name. | -| `common` | `object` (optional) | | -| `rules` | `list` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | -| `rules.side` | `string` ([Side](side)) (optional) | Examples: `left`, `right` | -| `rules.between` | `list` (optional) | | -| `rules.value` | `string` | | -| `rules.variant` | `string` ([NameVariant](name_variant)) | Examples: `common`, `official`, `alternate`, ... | -| `rules.language` | `string` (optional) | | -| `rules.perspectives` | `object` (`[Perspectives](perspectives)`) (optional) | | -| `rules.perspectives.mode` | `string` ([PerspectiveMode](perspective_mode)) | Whether the perspective holder accepts or disputes this name. Examples: `accepted_by`, `disputed_by` | -| `rules.perspectives.countries` | `list` | Countries holding the given mode of perspective. | diff --git a/docs/schema/reference/Names/perspectives.md b/docs/schema/reference/Names/perspectives.md deleted file mode 100644 index 3400d6f25..000000000 --- a/docs/schema/reference/Names/perspectives.md +++ /dev/null @@ -1,10 +0,0 @@ -# Perspectives - -Political perspectives container. - -## Fields - -| Name | Type | Description | -|-----:|:----:|-------------| -| `mode` | `string` ([PerspectiveMode](/schema/codegen/Names/perspectives/perspective_mode/)) | Whether the perspective holder accepts or disputes this name. Examples: `accepted_by`, `disputed_by` | -| `countries` | `list` | Countries holding the given mode of perspective. | diff --git a/docs/schema/reference/Names/side.md b/docs/schema/reference/Names/side.md deleted file mode 100644 index f4ed25660..000000000 --- a/docs/schema/reference/Names/side.md +++ /dev/null @@ -1,10 +0,0 @@ -# Side - -Represents the side on which something appears relative to a facing or heading -direction, e.g. the side of a road relative to the road orientation, or relative to -the direction of travel of a person or vehicle. - -## Values - -- `left` -- `right` diff --git a/docs/schema/reference/address.md b/docs/schema/reference/address.md deleted file mode 100644 index 592281287..000000000 --- a/docs/schema/reference/address.md +++ /dev/null @@ -1,13 +0,0 @@ -# Address - -Base model that forbids additional properties in JSON Schema. - -## Fields - -| Name | Type | Description | -|-----:|:----:|-------------| -| `freeform` | `string` (optional) | Free-form address that contains street name, house number and other address info | -| `locality` | `string` (optional) | Name of the city or neighborhood where the address is located | -| `postcode` | `string` (optional) | Postal code where the address is located | -| `region` | `string` (optional) | | -| `country` | `string` (optional) | | diff --git a/docs/schema/reference/addresses/address/_category_.json b/docs/schema/reference/addresses/address/_category_.json new file mode 100644 index 000000000..6ad6f25b8 --- /dev/null +++ b/docs/schema/reference/addresses/address/_category_.json @@ -0,0 +1,3 @@ +{ + "label": "Address" +} diff --git a/docs/schema/reference/addresses/address/address.md b/docs/schema/reference/addresses/address/address.md index a77d75225..b7826aac3 100644 --- a/docs/schema/reference/addresses/address/address.md +++ b/docs/schema/reference/addresses/address/address.md @@ -1,59 +1,124 @@ # Address -Addresses are geographic points used for locating businesses and individuals. The -rules, fields, and fieldnames of an address can vary extensively between locations. -We use a simplified schema to capture worldwide address points. This initial schema -is largely based on the OpenAddresses (www.openaddresses.io) project. +Addresses are structured labels for the geographic locations where businesses and individuals +reside. -The address schema allows up to 5 "admin levels". Rather than have field names that -apply across all countries, we provide an array called "address_levels" containing -the necessary administrative levels for an address. +While address formats around the world have some general points in common, the specifics vary +extensively from place to place. The rules for dividing an address up into parts or fields vary, +as do the names of those parts or fields. + +The address schema uses a simplified approach to capture the common structure of addresses +worldwide while accommodating local variance. The schema is heavily based on the OpenAddresses +(www.openaddresses.io) project. + +For sub-country administrative levels (and non-administrative levels such as neighborhoods), the +schema provides the `address_levels` field. This is where the names of cities and towns, +provinces, state, and regions, and similar addressing units are found. ## Fields | Name | Type | Description | |-----:|:----:|-------------| -| `id` | `string` | | +| `id` | [`Id`](../../types/references/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | +| `bbox` | `bbox` (optional) | An optional bounding box for the feature | +| `geometry` | `geometry` | Position of the address. Addresses are point geometries. | | `theme` | `"addresses"` | | | `type` | `"address"` | | -| `geometry` | `geometry` | Geometry (Point) | -| `version` | `int32` | | -| `sources[]` | `list` (optional) | | -| `sources[].between` | `list` (optional) | | -| `sources[].property` | `string` | | -| `sources[].dataset` | `string` | | -| `sources[].record_id` | `string` (optional) | Refers to the specific record within the dataset that was used. | -| `sources[].update_time` | `string` (optional) | | -| `sources[].confidence` | `float64` (optional) | | -| `address_levels` | `list` (optional) | The administrative levels present in an address. The number of values in this list and their meaning is country-dependent. For example, in the United States we expect two values: the state and the municipality. In other countries there might be only one. Other countries could have three or more. The array is ordered with the highest levels first. Note: when a level is not known - most likely because the data provider has not supplied it and we have not derived it from another source, the array element container must be present, but the "value" field should be omitted | -| `address_levels.value` | `string` (optional) | | -| `country` | `string` (optional) | | -| `number` | `string` (optional) | The house number for this address. This field may not strictly be a number. Values such as "74B", "189 1/2", "208.5" are common as the number part of an address and they are not part of the "unit" of this address. | -| `postal_city` | `string` (optional) | In some countries or regions, a mailing address may need to specify a different city name than the city that actually contains the address coordinates. This optional field can be used to specify the alternate city name to use. Example from US National Address Database: 716 East County Road, Winchester, Indiana has "Ridgeville" as its postal city Another example in Slovenia: Tomaj 71, 6221 Dutovlje, Slovenia | -| `postcode` | `string` (optional) | The postcode for the address | -| `street` | `string` (optional) | The street name associated with this address. The street name can include the street "type" or street suffix, e.g., Main Street. Ideally this is fully spelled out and not abbreviated but we acknowledge that many address datasets abbreviate the street name so it is acceptable. | -| `unit` | `string` (optional) | The suite/unit/apartment/floor number | +| `version` | [`FeatureVersion`](../../types/core_types/feature_version.md) | | +| `sources[]` | [`Sources`](../../types/sources/sources.md) (list, optional) | | +| `sources[].property` | [`JsonPointer`](../../types/strings/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to. + +The root document value `""` indicates that this source information applies to the +entire feature, excepting properties (fields) for which a dedicated source information +record exists. + +Any other JSON Pointer apart from `""` indicates that this source record provides +dedicated source information for the property at the path in the JSON Pointer. As an +example, the value `"/names/common/en"` indicates that the source information applies to +the English common name of a named feature, while the value `"/geometry"` indicates that +it applies to the feature geometry. | +| `sources[].dataset` | `string` | Name of the dataset where the source data can be found. | +| `sources[].license` | [`StrippedString`](../../types/strings/stripped_string.md) (optional) | Source data license name. + +This should be a valid SPDX license identifier when available. + +If omitted, contact the data provider for more license information. | +| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can +be found. + +The format of record identifiers is dataset-specific. | +| `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | +| `sources[].confidence` | [`ConfidenceScore`](../../types/core_types/confidence_score.md) (optional) | Confidence value from the source dataset. + +This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | +| `sources[].between` | [`LinearlyReferencedRange`](../../types/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | +| `address_levels[]` | `list<`[`AddressLevel`](address_level.md)`>` (optional) | Names of the sub-country addressing areas the address belongs to, including the city +or locality, in descending order of generality. + +The list is sorted so that the highest, or most general, level comes first (*e.g.*, +region) and the lowest, or most particular level, comes last (*e.g.*, city or town). + +The number of items in this list and their meaning is country-dependent. For +example, in the United States, we expect two items: the state, and the locality or +municipality within the state. Other countries might have as few as one, or even +three or more. + +When a specific level that is required for a country is not known. most likely +because the data provider has not supplied it and we have not derived it from +another source, the list item corresponding to that level must be present, but its +`value` field should be omitted. | +| `address_levels[].value` | [`StrippedString`](../../types/strings/stripped_string.md) (optional) | | +| `country` | [`CountryCodeAlpha2`](../../types/strings/country_code_alpha2.md) | The country the address belongs to, as an ISO 3166-1 alpha-2 country code. | +| `number` | [`StrippedString`](../../types/strings/stripped_string.md) (optional) | The house number. + +This field does not necessarily contain an integer or even a number. Values such as +"74B", "189 1/2", and "208.5", where the non-integer or non-number part is part of +the house number, not a unit number, are in common use. | +| `postal_city` | [`StrippedString`](../../types/strings/stripped_string.md) (optional) | The postal authority designated city name, if applicable. + +In some countries or regions, a mailing address may need to specify a different city +name than the city that actually contains the address coordinates. This optional +field can be used to specify the alternate city name to use. + +For example: + +- The postal city for the US address *716 East County Road, Winchester, Indiana* + is Ridgeville. +- The postal city for the Slovenian address *Tomaj 71, 6221 Tomaj, Slovenia* is + Dutovlje. | +| `postcode` | [`StrippedString`](../../types/strings/stripped_string.md) (optional) | The postal code. | +| `street` | [`StrippedString`](../../types/strings/stripped_string.md) (optional) | The street name. + +The street name can include a type (*e.g.*, "Street" or "St", "Boulevard" or "Blvd", +*etc.*) and a directional (*e.g.*, "NW" or "Northwest", "S" or "Sud"). Both type and +directional, if present, may be either a prefix or a suffix to the primary name. +They may either be fully spelled-out or abbreviated. | +| `unit` | [`StrippedString`](../../types/strings/stripped_string.md) (optional) | The secondary address unit designator. + +In the case where the primary street address is divided into secondary units, which +may be apartments, floors, or even buildings if the primary street address is a +campus, this field names the specific secondary unit being addressed. | ## Examples | Column | Value | |-------:|-------| -| `geometry` | `POINT (-176.5637854 -43.9471955)` | -| `address_levels[0].value` | `Chatham Islands` | -| `address_levels[1].value` | `Chatham Island` | -| `country` | `NZ` | -| `number` | `54` | -| `postal_city` | `null` | -| `postcode` | `null` | -| `street` | `Tikitiki Hill Road` | -| `unit` | `null` | -| `id` | `416ab01c-d836-4c4f-aedc-2f30941ce94d` | -| `sources[0].between` | `null` | -| `sources[0].confidence` | `null` | -| `sources[0].dataset` | `OpenAddresses/LINZ` | +| `id` | 416ab01c-d836-4c4f-aedc-2f30941ce94d | +| `geometry` | POINT (-176.5637854 -43.9471955) | +| `theme` | addresses | +| `type` | address | +| `version` | `1` | | `sources[0].property` | | +| `sources[0].dataset` | OpenAddresses/LINZ | | `sources[0].record_id` | `null` | | `sources[0].update_time` | `null` | -| `theme` | `addresses` | -| `type` | `address` | -| `version` | `1` | +| `sources[0].confidence` | `null` | +| `sources[0].between` | `null` | +| `address_levels[0].value` | Chatham Islands | +| `address_levels[1].value` | Chatham Island | +| `country` | NZ | +| `number` | 54 | +| `postal_city` | `null` | +| `postcode` | `null` | +| `street` | Tikitiki Hill Road | +| `unit` | `null` | diff --git a/docs/schema/reference/addresses/address/address_level.md b/docs/schema/reference/addresses/address/address_level.md index 5dd5e3581..606479c3d 100644 --- a/docs/schema/reference/addresses/address/address_level.md +++ b/docs/schema/reference/addresses/address/address_level.md @@ -1,14 +1,22 @@ # AddressLevel -An address "admin level". +A sub-country addressing unit, such as a region, city, or neighborhood, that is less specific +than a street name and not a postal code. -We want to avoid the phrase "admin level" and have chosen "address level". These -represent states, regions, districts, cities, neighborhoods, etc. The address schema -defines several numbered levels with per-country rules indicating which parts of a -country's address goes to which numbered level. +In the following address, the terms `Montréal` and `QC` are address levels: + +``` +3998 Rue De Bullion, Montréal, QC H2W 2E4 +``` + +The number of address levels per address is country-dependent. + +Other addressing systems may use the terms "administrative level" or "admin level" for the +same concept. We have chosen the term "address level" to communicate the fact that in some +countries and regions, address levels do not necessarily correspond to administrative units. ## Fields | Name | Type | Description | |-----:|:----:|-------------| -| `value` | `string` (optional) | | +| `value` | [`StrippedString`](../../types/strings/stripped_string.md) (optional) | | diff --git a/docs/schema/reference/base/_category_.json b/docs/schema/reference/base/_category_.json new file mode 100644 index 000000000..7c6c55d8d --- /dev/null +++ b/docs/schema/reference/base/_category_.json @@ -0,0 +1,3 @@ +{ + "label": "Base" +} diff --git a/docs/schema/reference/base/bathymetry/_category_.json b/docs/schema/reference/base/bathymetry/_category_.json new file mode 100644 index 000000000..34281ca63 --- /dev/null +++ b/docs/schema/reference/base/bathymetry/_category_.json @@ -0,0 +1,3 @@ +{ + "label": "Bathymetry" +} diff --git a/docs/schema/reference/base/bathymetry/bathymetry.md b/docs/schema/reference/base/bathymetry/bathymetry.md index 2051c9827..3797bf502 100644 --- a/docs/schema/reference/base/bathymetry/bathymetry.md +++ b/docs/schema/reference/base/bathymetry/bathymetry.md @@ -1,48 +1,69 @@ # Bathymetry -Topographic representation of an underwater area, such as a part of the ocean -floor. +Bathymetry features provide topographic representations of underwater areas, such as parts of +lake beds or ocean floors. ## Fields | Name | Type | Description | |-----:|:----:|-------------| -| `cartography` | `object` (`[CartographicHints](../../cartographic_hints)`) (optional) | | -| `cartography.prominence` | `integer` (optional) | | -| `cartography.min_zoom` | `integer` (optional) | | -| `cartography.max_zoom` | `integer` (optional) | | -| `cartography.sort_key` | `integer` (optional) | | -| `id` | `string` | | +| `id` | [`Id`](../../types/references/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | +| `bbox` | `bbox` (optional) | An optional bounding box for the feature | +| `geometry` | `geometry` | Shape of the underwater area, which may be a polygon or multi-polygon. | | `theme` | `"base"` | | | `type` | `"bathymetry"` | | -| `geometry` | `geometry` | Geometry (Polygon or MultiPolygon) | -| `version` | `int32` | | -| `sources[]` | `list` (optional) | | -| `sources[].between` | `list` (optional) | | -| `sources[].property` | `string` | | -| `sources[].dataset` | `string` | | -| `sources[].record_id` | `string` (optional) | Refers to the specific record within the dataset that was used. | -| `sources[].update_time` | `string` (optional) | | -| `sources[].confidence` | `float64` (optional) | | -| `depth` | `int32` | | +| `version` | [`FeatureVersion`](../../types/core_types/feature_version.md) | | +| `sources[]` | [`Sources`](../../types/sources/sources.md) (list, optional) | | +| `sources[].property` | [`JsonPointer`](../../types/strings/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to. + +The root document value `""` indicates that this source information applies to the +entire feature, excepting properties (fields) for which a dedicated source information +record exists. + +Any other JSON Pointer apart from `""` indicates that this source record provides +dedicated source information for the property at the path in the JSON Pointer. As an +example, the value `"/names/common/en"` indicates that the source information applies to +the English common name of a named feature, while the value `"/geometry"` indicates that +it applies to the feature geometry. | +| `sources[].dataset` | `string` | Name of the dataset where the source data can be found. | +| `sources[].license` | [`StrippedString`](../../types/strings/stripped_string.md) (optional) | Source data license name. + +This should be a valid SPDX license identifier when available. + +If omitted, contact the data provider for more license information. | +| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can +be found. + +The format of record identifiers is dataset-specific. | +| `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | +| `sources[].confidence` | [`ConfidenceScore`](../../types/core_types/confidence_score.md) (optional) | Confidence value from the source dataset. + +This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | +| `sources[].between` | [`LinearlyReferencedRange`](../../types/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | +| `depth` | [`Depth`](depth.md) | | +| `cartography` | [`CartographicHints`](../../types/cartography/cartographic_hints.md) (optional) | | +| `cartography.prominence` | [`Prominence`](../../types/cartography/prominence.md) (optional) | | +| `cartography.min_zoom` | [`MinZoom`](../../types/cartography/min_zoom.md) (optional) | | +| `cartography.max_zoom` | [`MaxZoom`](../../types/cartography/max_zoom.md) (optional) | | +| `cartography.sort_key` | [`SortKey`](../../types/cartography/sort_key.md) (optional) | | ## Examples | Column | Value | |-------:|-------| -| `geometry` | `MULTIPOLYGON (((-170.71296928 -76.744313428, -170.719841483 -76.757076376, -170.731061124 -76.761566...` | +| `id` | 5d40bd6c-db14-5492-b29f-5e25a59032bc | +| `geometry` | MULTIPOLYGON (((-170.71296928 -76.744313428, -170.719841483 -76.757076376, -170.731061124 -76.761566... | +| `theme` | base | +| `type` | bathymetry | +| `version` | `0` | +| `sources[0].property` | | +| `sources[0].dataset` | ETOPO/GLOBathy | +| `sources[0].record_id` | 2024-12-09T00:00:00.000Z | +| `sources[0].update_time` | `null` | +| `sources[0].confidence` | `null` | +| `sources[0].between` | `null` | | `depth` | `500` | -| `cartography.max_zoom` | `null` | -| `cartography.min_zoom` | `null` | | `cartography.prominence` | `null` | +| `cartography.min_zoom` | `null` | +| `cartography.max_zoom` | `null` | | `cartography.sort_key` | `12` | -| `id` | `5d40bd6c-db14-5492-b29f-5e25a59032bc` | -| `sources[0].between` | `null` | -| `sources[0].confidence` | `null` | -| `sources[0].dataset` | `ETOPO/GLOBathy` | -| `sources[0].property` | | -| `sources[0].record_id` | `2024-12-09T00:00:00.000Z` | -| `sources[0].update_time` | `null` | -| `theme` | `base` | -| `type` | `bathymetry` | -| `version` | `0` | diff --git a/docs/schema/reference/base/bathymetry/depth.md b/docs/schema/reference/base/bathymetry/depth.md new file mode 100644 index 000000000..81d34c69b --- /dev/null +++ b/docs/schema/reference/base/bathymetry/depth.md @@ -0,0 +1,7 @@ +# Depth (`int32`) + +## Constraints + +- `Ge(ge=0)` +- `Ge(ge=-2147483648)` (from [`int32`](../../types/primitives.md)) +- `Le(le=2147483647)` (from [`int32`](../../types/primitives.md)) diff --git a/docs/schema/reference/base/elevation.md b/docs/schema/reference/base/elevation.md new file mode 100644 index 000000000..fe74628d3 --- /dev/null +++ b/docs/schema/reference/base/elevation.md @@ -0,0 +1,7 @@ +# Elevation (`int32`) + +## Constraints + +- `Le(le=9000)` +- `Ge(ge=-2147483648)` (from [`int32`](../types/primitives.md)) +- `Le(le=2147483647)` (from [`int32`](../types/primitives.md)) diff --git a/docs/schema/reference/base/infrastructure/_category_.json b/docs/schema/reference/base/infrastructure/_category_.json new file mode 100644 index 000000000..6964bbf02 --- /dev/null +++ b/docs/schema/reference/base/infrastructure/_category_.json @@ -0,0 +1,3 @@ +{ + "label": "Infrastructure" +} diff --git a/docs/schema/reference/base/infrastructure/height.md b/docs/schema/reference/base/infrastructure/height.md new file mode 100644 index 000000000..a6501ae8d --- /dev/null +++ b/docs/schema/reference/base/infrastructure/height.md @@ -0,0 +1,5 @@ +# Height (`float64`) + +## Constraints + +- `Gt(gt=0)` diff --git a/docs/schema/reference/base/infrastructure/infrastructure.md b/docs/schema/reference/base/infrastructure/infrastructure.md index 76e90976f..23a656e55 100644 --- a/docs/schema/reference/base/infrastructure/infrastructure.md +++ b/docs/schema/reference/base/infrastructure/infrastructure.md @@ -1,69 +1,94 @@ # Infrastructure -Various features from OpenStreetMap such as bridges, airport runways, aerialways, -or communication towers and lines. +Infrastructure features provide basic information about real-world infrastructure entitites +such as bridges, airports, runways, aerialways, communication towers, and power lines. ## Fields | Name | Type | Description | |-----:|:----:|-------------| -| `source_tags` | `record` (optional) | | -| `wikidata` | `string` (optional) | | -| `level` | `int32` (optional) | | -| `names` | `object` (`[Names](../../Names/names)`) (optional) | | -| `names.primary` | `string` | The most commonly used name. | -| `names.common` | `object` (optional) | | -| `names.rules[]` | `list` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | -| `names.rules[].side` | `string` ([Side](../../Names/side)) (optional) | Examples: `left`, `right` | -| `names.rules[].between` | `list` (optional) | | -| `names.rules[].value` | `string` | | -| `names.rules[].variant` | `string` ([NameVariant](../../Names/name_variant)) | Examples: `common`, `official`, `alternate`, ... | -| `names.rules[].language` | `string` (optional) | | -| `names.rules[].perspectives` | `object` (`[Perspectives](../../Names/perspectives)`) (optional) | | -| `names.rules[].perspectives.mode` | `string` ([PerspectiveMode](../../Names/perspective_mode)) | Whether the perspective holder accepts or disputes this name. Examples: `accepted_by`, `disputed_by` | -| `names.rules[].perspectives.countries` | `list` | Countries holding the given mode of perspective. | -| `id` | `string` | | +| `id` | [`Id`](../../types/references/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | +| `bbox` | `bbox` (optional) | An optional bounding box for the feature | +| `geometry` | `geometry` | Geometry of the infrastructure feature, which may be a point, line string, polygon, or +multi-polygon. | | `theme` | `"base"` | | | `type` | `"infrastructure"` | | -| `geometry` | `geometry` | Geometry (Point, LineString, Polygon, or MultiPolygon) | -| `version` | `int32` | | -| `sources[]` | `list` (optional) | | -| `sources[].between` | `list` (optional) | | -| `sources[].property` | `string` | | -| `sources[].dataset` | `string` | | -| `sources[].record_id` | `string` (optional) | Refers to the specific record within the dataset that was used. | -| `sources[].update_time` | `string` (optional) | | -| `sources[].confidence` | `float64` (optional) | | -| `class` | `string` ([InfrastructureClass](infrastructure_class)) | Examples: `aerialway_station`, `airport`, `airport_gate`, ... | -| `subtype` | `string` ([InfrastructureSubtype](infrastructure_subtype)) | Examples: `aerialway`, `airport`, `barrier`, ... | -| `height` | `float64` (optional) | | -| `surface` | `string` ([SurfaceMaterial](../surface_material)) (optional) | Examples: `asphalt`, `cobblestone`, `compacted`, ... | +| `version` | [`FeatureVersion`](../../types/core_types/feature_version.md) | | +| `sources[]` | [`Sources`](../../types/sources/sources.md) (list, optional) | | +| `sources[].property` | [`JsonPointer`](../../types/strings/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to. + +The root document value `""` indicates that this source information applies to the +entire feature, excepting properties (fields) for which a dedicated source information +record exists. + +Any other JSON Pointer apart from `""` indicates that this source record provides +dedicated source information for the property at the path in the JSON Pointer. As an +example, the value `"/names/common/en"` indicates that the source information applies to +the English common name of a named feature, while the value `"/geometry"` indicates that +it applies to the feature geometry. | +| `sources[].dataset` | `string` | Name of the dataset where the source data can be found. | +| `sources[].license` | [`StrippedString`](../../types/strings/stripped_string.md) (optional) | Source data license name. + +This should be a valid SPDX license identifier when available. + +If omitted, contact the data provider for more license information. | +| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can +be found. + +The format of record identifiers is dataset-specific. | +| `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | +| `sources[].confidence` | [`ConfidenceScore`](../../types/core_types/confidence_score.md) (optional) | Confidence value from the source dataset. + +This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | +| `sources[].between` | [`LinearlyReferencedRange`](../../types/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | +| `class` | [`InfrastructureClass`](infrastructure_class.md) | | +| `subtype` | [`InfrastructureSubtype`](infrastructure_subtype.md) | | +| `height` | [`Height`](height.md) (optional) | | +| `surface` | [`SurfaceMaterial`](../surface_material.md) (optional) | | +| `names` | [`Names`](../../types/names/names.md) (optional) | | +| `names.primary` | [`StrippedString`](../../types/strings/stripped_string.md) | The most commonly used name. | +| `names.common` | [`CommonNames`](../../types/names/common_names.md) (map, optional) | | +| `names.rules[]` | `list<`[`NameRule`](../../types/names/name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | +| `names.rules[].value` | [`StrippedString`](../../types/strings/stripped_string.md) | The actual name value. | +| `names.rules[].variant` | [`NameVariant`](../../types/names/name_variant.md) | The name variant for this name rule. | +| `names.rules[].language` | [`LanguageTag`](../../types/strings/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 +language tag. | +| `names.rules[].perspectives` | [`Perspectives`](../../types/perspectives/perspectives.md) (optional) | | +| `names.rules[].perspectives.mode` | [`PerspectiveMode`](../../types/perspectives/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | +| `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../../types/strings/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | +| `names.rules[].between` | [`LinearlyReferencedRange`](../../types/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | +| `names.rules[].side` | [`Side`](../../types/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | +| `level` | [`Level`](../../types/core_types/level.md) (optional) | | +| `source_tags` | [`SourceTags`](../source_tags.md) (map, optional) | | +| `wikidata` | [`WikidataId`](../../types/strings/wikidata_id.md) (optional) | | ## Examples | Column | Value | |-------:|-------| -| `geometry` | `LINESTRING (-176.6518141 -44.0074721, -176.6509243 -44.0063362)` | -| `subtype` | `barrier` | +| `id` | e9e3d506-89c0-3473-8cee-5e5ac6596d6c | +| `geometry` | POINT (-179.9999994 -82.42408) | +| `theme` | base | +| `type` | infrastructure | +| `version` | `0` | +| `sources[0].property` | | +| `sources[0].dataset` | OpenStreetMap | +| `sources[0].record_id` | n7674174803@2 | +| `sources[0].update_time` | 2023-04-07T17:37:48.000Z | +| `sources[0].confidence` | `null` | +| `sources[0].between` | `null` | +| `class` | information | +| `subtype` | pedestrian | | `height` | `null` | | `surface` | `null` | -| `class` | `fence` | -| `id` | `06e4de8d-bdce-314c-8e25-90ce70b8fe57` | -| `level` | `null` | +| `names.primary` | 1306 km to South Pole | | `names.common` | `null` | -| `names.primary` | `null` | | `names.rules` | `null` | -| `source_tags.LINZ:source_version` | `V16` | -| `source_tags.attribution` | `http://wiki.osm.org/wiki/Attribution#LINZ` | -| `source_tags.barrier` | `fence` | -| `source_tags.source_ref` | `http://www.linz.govt.nz/topography/topo-maps/` | -| `sources[0].between` | `null` | -| `sources[0].confidence` | `null` | -| `sources[0].dataset` | `OpenStreetMap` | -| `sources[0].property` | | -| `sources[0].record_id` | `w56754564@1` | -| `sources[0].update_time` | `2010-04-28T12:01:53.000Z` | -| `theme` | `base` | -| `type` | `infrastructure` | -| `version` | `0` | -| `wikidata` | `null` | +| `level` | `null` | +| `source_tags.description` | 1036 km to South Pole. | +| `source_tags.information` | route_marker | +| `source_tags.note` | The road continue in west side of the map | +| `source_tags.start_date` | 2007 | +| `source_tags.tourism` | information | +| `source_tags.wikipedia` | en:South Pole Traverse | +| `wikidata` | Q800558 | diff --git a/docs/schema/reference/base/infrastructure/infrastructure_class.md b/docs/schema/reference/base/infrastructure/infrastructure_class.md index c23fe2f3e..84482b581 100644 --- a/docs/schema/reference/base/infrastructure/infrastructure_class.md +++ b/docs/schema/reference/base/infrastructure/infrastructure_class.md @@ -1,6 +1,8 @@ # InfrastructureClass -Further classification of the infrastructure type. +Further classification of the type of infrastructure. + +The infrastructure class adds detail to the broad classification of `InfrastructureSubtype`. ## Values @@ -129,6 +131,7 @@ Further classification of the infrastructure type. - `regional_airport` - `reservoir_covered` - `retaining_wall` +- `roller_coaster` - `rope_tow` - `runway` - `sally_port` diff --git a/docs/schema/reference/base/infrastructure/infrastructure_subtype.md b/docs/schema/reference/base/infrastructure/infrastructure_subtype.md index 739cc179a..41fe25967 100644 --- a/docs/schema/reference/base/infrastructure/infrastructure_subtype.md +++ b/docs/schema/reference/base/infrastructure/infrastructure_subtype.md @@ -1,6 +1,8 @@ # InfrastructureSubtype -Further description of the type of infrastructure. +Broadest classification of the type of infrastructure. + +This broad classification can be refined by `InfrastructureClass`. ## Values diff --git a/docs/schema/reference/base/land/_category_.json b/docs/schema/reference/base/land/_category_.json new file mode 100644 index 000000000..ad26dff83 --- /dev/null +++ b/docs/schema/reference/base/land/_category_.json @@ -0,0 +1,3 @@ +{ + "label": "Land" +} diff --git a/docs/schema/reference/base/land/land.md b/docs/schema/reference/base/land/land.md index edae66be6..83c012421 100644 --- a/docs/schema/reference/base/land/land.md +++ b/docs/schema/reference/base/land/land.md @@ -1,68 +1,101 @@ # Land +Land features are representations of physical land surfaces. + +In Overture data releases, land features are sourced from OpenStreetMap. TODO. Finish this when +I get more info from Jennings. + + + Physical representations of land surfaces. Global land derived from the inverse of OSM Coastlines. Translates `natural` tags from OpenStreetMap. +TODO: Update this description when the relationship to `land_cover` is better understood. + ## Fields | Name | Type | Description | |-----:|:----:|-------------| -| `source_tags` | `record` (optional) | | -| `wikidata` | `string` (optional) | | -| `level` | `int32` (optional) | | -| `names` | `object` (`[Names](../../Names/names)`) (optional) | | -| `names.primary` | `string` | The most commonly used name. | -| `names.common` | `object` (optional) | | -| `names.rules[]` | `list` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | -| `names.rules[].side` | `string` ([Side](../../Names/side)) (optional) | Examples: `left`, `right` | -| `names.rules[].between` | `list` (optional) | | -| `names.rules[].value` | `string` | | -| `names.rules[].variant` | `string` ([NameVariant](../../Names/name_variant)) | Examples: `common`, `official`, `alternate`, ... | -| `names.rules[].language` | `string` (optional) | | -| `names.rules[].perspectives` | `object` (`[Perspectives](../../Names/perspectives)`) (optional) | | -| `names.rules[].perspectives.mode` | `string` ([PerspectiveMode](../../Names/perspective_mode)) | Whether the perspective holder accepts or disputes this name. Examples: `accepted_by`, `disputed_by` | -| `names.rules[].perspectives.countries` | `list` | Countries holding the given mode of perspective. | -| `id` | `string` | | +| `id` | [`Id`](../../types/references/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | +| `bbox` | `bbox` (optional) | An optional bounding box for the feature | +| `geometry` | `geometry` | Geometry of the land feature, which may be a point, line string, polygon, or +multi-polygon. | | `theme` | `"base"` | | | `type` | `"land"` | | -| `geometry` | `geometry` | Geometry (Point, LineString, Polygon, or MultiPolygon) | -| `version` | `int32` | | -| `sources[]` | `list` (optional) | | -| `sources[].between` | `list` (optional) | | -| `sources[].property` | `string` | | -| `sources[].dataset` | `string` | | -| `sources[].record_id` | `string` (optional) | Refers to the specific record within the dataset that was used. | -| `sources[].update_time` | `string` (optional) | | -| `sources[].confidence` | `float64` (optional) | | -| `class` | `string` ([LandClass](land_class)) (optional) | Examples: `archipelago`, `bare_rock`, `beach`, ... Default: `` | -| `subtype` | `string` ([LandSubtype](land_subtype)) (optional) | Examples: `crater`, `desert`, `forest`, ... Default: `` | -| `elevation` | `int32` (optional) | | -| `surface` | `string` ([SurfaceMaterial](../surface_material)) (optional) | Examples: `asphalt`, `cobblestone`, `compacted`, ... | +| `version` | [`FeatureVersion`](../../types/core_types/feature_version.md) | | +| `sources[]` | [`Sources`](../../types/sources/sources.md) (list, optional) | | +| `sources[].property` | [`JsonPointer`](../../types/strings/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to. + +The root document value `""` indicates that this source information applies to the +entire feature, excepting properties (fields) for which a dedicated source information +record exists. + +Any other JSON Pointer apart from `""` indicates that this source record provides +dedicated source information for the property at the path in the JSON Pointer. As an +example, the value `"/names/common/en"` indicates that the source information applies to +the English common name of a named feature, while the value `"/geometry"` indicates that +it applies to the feature geometry. | +| `sources[].dataset` | `string` | Name of the dataset where the source data can be found. | +| `sources[].license` | [`StrippedString`](../../types/strings/stripped_string.md) (optional) | Source data license name. + +This should be a valid SPDX license identifier when available. + +If omitted, contact the data provider for more license information. | +| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can +be found. + +The format of record identifiers is dataset-specific. | +| `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | +| `sources[].confidence` | [`ConfidenceScore`](../../types/core_types/confidence_score.md) (optional) | Confidence value from the source dataset. + +This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | +| `sources[].between` | [`LinearlyReferencedRange`](../../types/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | +| `class` | [`LandClass`](land_class.md) (optional) | | +| `subtype` | [`LandSubtype`](land_subtype.md) (optional) | | +| `elevation` | [`Elevation`](../elevation.md) (optional) | | +| `surface` | [`SurfaceMaterial`](../surface_material.md) (optional) | | +| `names` | [`Names`](../../types/names/names.md) (optional) | | +| `names.primary` | [`StrippedString`](../../types/strings/stripped_string.md) | The most commonly used name. | +| `names.common` | [`CommonNames`](../../types/names/common_names.md) (map, optional) | | +| `names.rules[]` | `list<`[`NameRule`](../../types/names/name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | +| `names.rules[].value` | [`StrippedString`](../../types/strings/stripped_string.md) | The actual name value. | +| `names.rules[].variant` | [`NameVariant`](../../types/names/name_variant.md) | The name variant for this name rule. | +| `names.rules[].language` | [`LanguageTag`](../../types/strings/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 +language tag. | +| `names.rules[].perspectives` | [`Perspectives`](../../types/perspectives/perspectives.md) (optional) | | +| `names.rules[].perspectives.mode` | [`PerspectiveMode`](../../types/perspectives/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | +| `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../../types/strings/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | +| `names.rules[].between` | [`LinearlyReferencedRange`](../../types/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | +| `names.rules[].side` | [`Side`](../../types/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | +| `level` | [`Level`](../../types/core_types/level.md) (optional) | | +| `source_tags` | [`SourceTags`](../source_tags.md) (map, optional) | | +| `wikidata` | [`WikidataId`](../../types/strings/wikidata_id.md) (optional) | | ## Examples | Column | Value | |-------:|-------| -| `geometry` | `POLYGON ((-179.2520554 -84.4448374, -179.2531578 -84.4443064, -179.2566774 -84.4438047, -179.2616581...` | -| `subtype` | `rock` | +| `id` | 70fc3596-a987-3fea-820c-c016c0a2f0da | +| `geometry` | POINT (-178.7 -85.45) | +| `theme` | base | +| `type` | land | +| `version` | `0` | +| `sources[0].property` | | +| `sources[0].dataset` | OpenStreetMap | +| `sources[0].record_id` | n11693475112@1 | +| `sources[0].update_time` | 2024-03-05T09:23:39.000Z | +| `sources[0].confidence` | `null` | +| `sources[0].between` | `null` | +| `class` | cliff | +| `subtype` | physical | | `elevation` | `null` | | `surface` | `null` | -| `class` | `bare_rock` | -| `id` | `d78b9e8e-7186-3030-8235-820ab8079358` | -| `level` | `null` | +| `names.primary` | Dismal Buttress | | `names.common` | `null` | -| `names.primary` | `null` | | `names.rules` | `null` | -| `source_tags.area` | `yes` | -| `source_tags.natural` | `bare_rock` | -| `sources[0].between` | `null` | -| `sources[0].confidence` | `null` | -| `sources[0].dataset` | `OpenStreetMap` | -| `sources[0].property` | | -| `sources[0].record_id` | `w222125249@1` | -| `sources[0].update_time` | `2013-05-19T10:33:24.000Z` | -| `theme` | `base` | -| `type` | `land` | -| `version` | `0` | -| `wikidata` | `null` | +| `level` | `null` | +| `source_tags.natural` | cliff | +| `source_tags.ref:linz:place_id` | 12318 | +| `source_tags.wikipedia` | en:Dismal Buttress | +| `wikidata` | Q5282342 | diff --git a/docs/schema/reference/base/land/land_class.md b/docs/schema/reference/base/land/land_class.md index 1c40531c3..a951e56ce 100644 --- a/docs/schema/reference/base/land/land_class.md +++ b/docs/schema/reference/base/land/land_class.md @@ -1,6 +1,8 @@ # LandClass -Further classification of type of landcover. +Further classification of the land. + +The land class adds detail to the broad classification of `LandSubtype`. ## Values diff --git a/docs/schema/reference/base/land/land_subtype.md b/docs/schema/reference/base/land/land_subtype.md index 70868e020..4a800bd04 100644 --- a/docs/schema/reference/base/land/land_subtype.md +++ b/docs/schema/reference/base/land/land_subtype.md @@ -1,7 +1,8 @@ # LandSubtype -Further description of the type of land cover, such as forest, glacier, grass, or -a physical feature, such as a mountain peak. +Broadest classification of the land. + +This broad classification can be refined by `LandClass`. ## Values diff --git a/docs/schema/reference/base/land_cover/_category_.json b/docs/schema/reference/base/land_cover/_category_.json new file mode 100644 index 000000000..ea1a05c51 --- /dev/null +++ b/docs/schema/reference/base/land_cover/_category_.json @@ -0,0 +1,3 @@ +{ + "label": "Land Cover" +} diff --git a/docs/schema/reference/base/land_cover/land_cover.md b/docs/schema/reference/base/land_cover/land_cover.md index 3c2a8b605..fd8869dc7 100644 --- a/docs/schema/reference/base/land_cover/land_cover.md +++ b/docs/schema/reference/base/land_cover/land_cover.md @@ -1,47 +1,76 @@ # LandCover -Representation of the Earth's natural surfaces. +Land cover features indicate the primary natural or artificial surface material covering a land +area on the earth, including vegetation types like forests and crops, built environments like +cities, and natural surfaces like wetlands or barren ground. + +Land cover features relate to `LandUse` features in the following way: land cover is the +physical thing covering the land, while land use is the human use to which the land is being +put. + +TODO: Explain relationship to `Land` features. ## Fields | Name | Type | Description | |-----:|:----:|-------------| -| `cartography` | `object` (`[CartographicHints](../../cartographic_hints)`) (optional) | | -| `cartography.prominence` | `integer` (optional) | | -| `cartography.min_zoom` | `integer` (optional) | | -| `cartography.max_zoom` | `integer` (optional) | | -| `cartography.sort_key` | `integer` (optional) | | -| `id` | `string` | | +| `id` | [`Id`](../../types/references/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | +| `bbox` | `bbox` (optional) | An optional bounding box for the feature | +| `geometry` | `geometry` | Shape of the covered land area, which may be a polygon or multi-polygon. | | `theme` | `"base"` | | | `type` | `"land_cover"` | | -| `geometry` | `geometry` | Geometry (Polygon or MultiPolygon) | -| `version` | `int32` | | -| `sources[]` | `list` (optional) | | -| `sources[].between` | `list` (optional) | | -| `sources[].property` | `string` | | -| `sources[].dataset` | `string` | | -| `sources[].record_id` | `string` (optional) | Refers to the specific record within the dataset that was used. | -| `sources[].update_time` | `string` (optional) | | -| `sources[].confidence` | `float64` (optional) | | -| `subtype` | `string` ([LandCoverSubtype](land_cover_subtype)) | Examples: `barren`, `crop`, `forest`, ... | +| `version` | [`FeatureVersion`](../../types/core_types/feature_version.md) | | +| `sources[]` | [`Sources`](../../types/sources/sources.md) (list, optional) | | +| `sources[].property` | [`JsonPointer`](../../types/strings/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to. + +The root document value `""` indicates that this source information applies to the +entire feature, excepting properties (fields) for which a dedicated source information +record exists. + +Any other JSON Pointer apart from `""` indicates that this source record provides +dedicated source information for the property at the path in the JSON Pointer. As an +example, the value `"/names/common/en"` indicates that the source information applies to +the English common name of a named feature, while the value `"/geometry"` indicates that +it applies to the feature geometry. | +| `sources[].dataset` | `string` | Name of the dataset where the source data can be found. | +| `sources[].license` | [`StrippedString`](../../types/strings/stripped_string.md) (optional) | Source data license name. + +This should be a valid SPDX license identifier when available. + +If omitted, contact the data provider for more license information. | +| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can +be found. + +The format of record identifiers is dataset-specific. | +| `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | +| `sources[].confidence` | [`ConfidenceScore`](../../types/core_types/confidence_score.md) (optional) | Confidence value from the source dataset. + +This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | +| `sources[].between` | [`LinearlyReferencedRange`](../../types/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | +| `subtype` | [`LandCoverSubtype`](land_cover_subtype.md) | | +| `cartography` | [`CartographicHints`](../../types/cartography/cartographic_hints.md) (optional) | | +| `cartography.prominence` | [`Prominence`](../../types/cartography/prominence.md) (optional) | | +| `cartography.min_zoom` | [`MinZoom`](../../types/cartography/min_zoom.md) (optional) | | +| `cartography.max_zoom` | [`MaxZoom`](../../types/cartography/max_zoom.md) (optional) | | +| `cartography.sort_key` | [`SortKey`](../../types/cartography/sort_key.md) (optional) | | ## Examples | Column | Value | |-------:|-------| -| `geometry` | `POLYGON ((-179.99877531181616 65.95172539425603, -179.99740705536922 65.95265577758867, -179.9975172...` | -| `subtype` | `barren` | -| `cartography.max_zoom` | `15` | -| `cartography.min_zoom` | `8` | -| `cartography.prominence` | `null` | -| `cartography.sort_key` | `3` | -| `id` | `c347312d-012b-5e73-8bd3-a10d04b2981d` | -| `sources[0].between` | `null` | -| `sources[0].confidence` | `null` | -| `sources[0].dataset` | `ESA WorldCover` | +| `id` | c347312d-012b-5e73-8bd3-a10d04b2981d | +| `geometry` | POLYGON ((-179.99877531181616 65.95172539425603, -179.99740705536922 65.95265577758867, -179.9975172... | +| `theme` | base | +| `type` | land_cover | +| `version` | `0` | | `sources[0].property` | | +| `sources[0].dataset` | ESA WorldCover | | `sources[0].record_id` | `null` | -| `sources[0].update_time` | `2024-11-07T00:00:00.000Z` | -| `theme` | `base` | -| `type` | `land_cover` | -| `version` | `0` | +| `sources[0].update_time` | 2024-11-07T00:00:00.000Z | +| `sources[0].confidence` | `null` | +| `sources[0].between` | `null` | +| `subtype` | barren | +| `cartography.prominence` | `null` | +| `cartography.min_zoom` | `8` | +| `cartography.max_zoom` | `15` | +| `cartography.sort_key` | `3` | diff --git a/docs/schema/reference/base/land_cover/land_cover_subtype.md b/docs/schema/reference/base/land_cover/land_cover_subtype.md index 39591e1eb..53cb7a6fe 100644 --- a/docs/schema/reference/base/land_cover/land_cover_subtype.md +++ b/docs/schema/reference/base/land_cover/land_cover_subtype.md @@ -1,6 +1,6 @@ # LandCoverSubtype -Type of surface represented. +Primary or dominant material covering the land. ## Values diff --git a/docs/schema/reference/base/land_use/_category_.json b/docs/schema/reference/base/land_use/_category_.json new file mode 100644 index 000000000..89fea56af --- /dev/null +++ b/docs/schema/reference/base/land_use/_category_.json @@ -0,0 +1,3 @@ +{ + "label": "Land Use" +} diff --git a/docs/schema/reference/base/land_use/land_use.md b/docs/schema/reference/base/land_use/land_use.md index 13f0d92e8..f00496015 100644 --- a/docs/schema/reference/base/land_use/land_use.md +++ b/docs/schema/reference/base/land_use/land_use.md @@ -1,68 +1,97 @@ # LandUse -Land use features from OpenStreetMap. +Land use features specify the predominant human use of an area of land, for example commercial +activity, recreation, farming, housing, education, or military use. + +Land use features relate to `LandCover` features in the following way: land use is the human +human activity being done with the land, while land cover is the physical thing that covers it. + +TODO: Explain relationship to `Land` features. ## Fields | Name | Type | Description | |-----:|:----:|-------------| -| `source_tags` | `record` (optional) | | -| `wikidata` | `string` (optional) | | -| `level` | `int32` (optional) | | -| `names` | `object` (`[Names](../../Names/names)`) (optional) | | -| `names.primary` | `string` | The most commonly used name. | -| `names.common` | `object` (optional) | | -| `names.rules[]` | `list` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | -| `names.rules[].side` | `string` ([Side](../../Names/side)) (optional) | Examples: `left`, `right` | -| `names.rules[].between` | `list` (optional) | | -| `names.rules[].value` | `string` | | -| `names.rules[].variant` | `string` ([NameVariant](../../Names/name_variant)) | Examples: `common`, `official`, `alternate`, ... | -| `names.rules[].language` | `string` (optional) | | -| `names.rules[].perspectives` | `object` (`[Perspectives](../../Names/perspectives)`) (optional) | | -| `names.rules[].perspectives.mode` | `string` ([PerspectiveMode](../../Names/perspective_mode)) | Whether the perspective holder accepts or disputes this name. Examples: `accepted_by`, `disputed_by` | -| `names.rules[].perspectives.countries` | `list` | Countries holding the given mode of perspective. | -| `id` | `string` | | +| `id` | [`Id`](../../types/references/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | +| `bbox` | `bbox` (optional) | An optional bounding box for the feature | +| `geometry` | `geometry` | Geometry of the land use area, which may be a point, line string, polygon, or +multi-polygon. | | `theme` | `"base"` | | | `type` | `"land_use"` | | -| `geometry` | `geometry` | Classifications of the human use of a section of land. Translates `landuse` from OpenStreetMap tag from OpenStreetMap. | -| `version` | `int32` | | -| `sources[]` | `list` (optional) | | -| `sources[].between` | `list` (optional) | | -| `sources[].property` | `string` | | -| `sources[].dataset` | `string` | | -| `sources[].record_id` | `string` (optional) | Refers to the specific record within the dataset that was used. | -| `sources[].update_time` | `string` (optional) | | -| `sources[].confidence` | `float64` (optional) | | -| `class` | `string` ([LandUseClass](land_use_class)) | Examples: `aboriginal_land`, `airfield`, `allotments`, ... | -| `subtype` | `string` ([LandUseSubtype](land_use_subtype)) | Examples: `agriculture`, `aquaculture`, `campground`, ... | -| `elevation` | `int32` (optional) | | -| `surface` | `string` ([SurfaceMaterial](../surface_material)) (optional) | Examples: `asphalt`, `cobblestone`, `compacted`, ... | +| `version` | [`FeatureVersion`](../../types/core_types/feature_version.md) | | +| `sources[]` | [`Sources`](../../types/sources/sources.md) (list, optional) | | +| `sources[].property` | [`JsonPointer`](../../types/strings/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to. + +The root document value `""` indicates that this source information applies to the +entire feature, excepting properties (fields) for which a dedicated source information +record exists. + +Any other JSON Pointer apart from `""` indicates that this source record provides +dedicated source information for the property at the path in the JSON Pointer. As an +example, the value `"/names/common/en"` indicates that the source information applies to +the English common name of a named feature, while the value `"/geometry"` indicates that +it applies to the feature geometry. | +| `sources[].dataset` | `string` | Name of the dataset where the source data can be found. | +| `sources[].license` | [`StrippedString`](../../types/strings/stripped_string.md) (optional) | Source data license name. + +This should be a valid SPDX license identifier when available. + +If omitted, contact the data provider for more license information. | +| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can +be found. + +The format of record identifiers is dataset-specific. | +| `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | +| `sources[].confidence` | [`ConfidenceScore`](../../types/core_types/confidence_score.md) (optional) | Confidence value from the source dataset. + +This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | +| `sources[].between` | [`LinearlyReferencedRange`](../../types/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | +| `class` | [`LandUseClass`](land_use_class.md) | | +| `subtype` | [`LandUseSubtype`](land_use_subtype.md) | | +| `elevation` | [`Elevation`](../elevation.md) (optional) | | +| `surface` | [`SurfaceMaterial`](../surface_material.md) (optional) | | +| `names` | [`Names`](../../types/names/names.md) (optional) | | +| `names.primary` | [`StrippedString`](../../types/strings/stripped_string.md) | The most commonly used name. | +| `names.common` | [`CommonNames`](../../types/names/common_names.md) (map, optional) | | +| `names.rules[]` | `list<`[`NameRule`](../../types/names/name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | +| `names.rules[].value` | [`StrippedString`](../../types/strings/stripped_string.md) | The actual name value. | +| `names.rules[].variant` | [`NameVariant`](../../types/names/name_variant.md) | The name variant for this name rule. | +| `names.rules[].language` | [`LanguageTag`](../../types/strings/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 +language tag. | +| `names.rules[].perspectives` | [`Perspectives`](../../types/perspectives/perspectives.md) (optional) | | +| `names.rules[].perspectives.mode` | [`PerspectiveMode`](../../types/perspectives/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | +| `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../../types/strings/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | +| `names.rules[].between` | [`LinearlyReferencedRange`](../../types/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | +| `names.rules[].side` | [`Side`](../../types/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | +| `level` | [`Level`](../../types/core_types/level.md) (optional) | | +| `source_tags` | [`SourceTags`](../source_tags.md) (map, optional) | | +| `wikidata` | [`WikidataId`](../../types/strings/wikidata_id.md) (optional) | | ## Examples | Column | Value | |-------:|-------| -| `geometry` | `POLYGON ((-176.5623454 -43.9567812, -176.5627644 -43.9561272, -176.5626898 -43.9557432, -176.5624297...` | -| `subtype` | `golf` | +| `id` | 1e1f6095-5bd2-3fdb-a422-41351b848e9d | +| `geometry` | POLYGON ((-176.5623454 -43.9567812, -176.5627644 -43.9561272, -176.5626898 -43.9557432, -176.5624297... | +| `theme` | base | +| `type` | land_use | +| `version` | `0` | +| `sources[0].property` | | +| `sources[0].dataset` | OpenStreetMap | +| `sources[0].record_id` | w56117029@3 | +| `sources[0].update_time` | 2010-04-24T22:35:13.000Z | +| `sources[0].confidence` | `null` | +| `sources[0].between` | `null` | +| `class` | golf_course | +| `subtype` | golf | | `elevation` | `null` | | `surface` | `null` | -| `class` | `golf_course` | -| `id` | `1e1f6095-5bd2-3fdb-a422-41351b848e9d` | -| `level` | `null` | +| `names.primary` | Chatham Islands Golf Club | | `names.common` | `null` | -| `names.primary` | `Chatham Islands Golf Club` | | `names.rules` | `null` | -| `source_tags.LINZ:source_version` | `V16` | -| `source_tags.attribution` | `http://wiki.osm.org/wiki/Attribution#LINZ` | -| `source_tags.leisure` | `golf_course` | -| `source_tags.source_ref` | `http://www.linz.govt.nz/topography/topo-maps/` | -| `sources[0].between` | `null` | -| `sources[0].confidence` | `null` | -| `sources[0].dataset` | `OpenStreetMap` | -| `sources[0].property` | | -| `sources[0].record_id` | `w56117029@3` | -| `sources[0].update_time` | `2010-04-24T22:35:13.000Z` | -| `theme` | `base` | -| `type` | `land_use` | -| `version` | `0` | +| `level` | `null` | +| `source_tags.LINZ:source_version` | V16 | +| `source_tags.attribution` | http://wiki.osm.org/wiki/Attribution#LINZ | +| `source_tags.leisure` | golf_course | +| `source_tags.source_ref` | http://www.linz.govt.nz/topography/topo-maps/ | | `wikidata` | `null` | diff --git a/docs/schema/reference/base/land_use/land_use_class.md b/docs/schema/reference/base/land_use/land_use_class.md index ab87ba6d6..d8f6c0ea6 100644 --- a/docs/schema/reference/base/land_use/land_use_class.md +++ b/docs/schema/reference/base/land_use/land_use_class.md @@ -2,6 +2,8 @@ Further classification of the land use. +The land use class adds detail to the broad classification of `LandUseSubtype`. + ## Values - `aboriginal_land` diff --git a/docs/schema/reference/base/land_use/land_use_subtype.md b/docs/schema/reference/base/land_use/land_use_subtype.md index c81cf3665..b9e0e9b7f 100644 --- a/docs/schema/reference/base/land_use/land_use_subtype.md +++ b/docs/schema/reference/base/land_use/land_use_subtype.md @@ -1,6 +1,8 @@ # LandUseSubtype -Broad type of land. +Broadest classification of the land use. + +This broad classification can be refined by `LandUseClass`. ## Values diff --git a/docs/schema/reference/base/source_tags.md b/docs/schema/reference/base/source_tags.md new file mode 100644 index 000000000..7d9b04a9e --- /dev/null +++ b/docs/schema/reference/base/source_tags.md @@ -0,0 +1 @@ +# SourceTags (`map`) diff --git a/docs/schema/reference/base/surface_material.md b/docs/schema/reference/base/surface_material.md index a48df12e1..9de2d090f 100644 --- a/docs/schema/reference/base/surface_material.md +++ b/docs/schema/reference/base/surface_material.md @@ -1,6 +1,6 @@ # SurfaceMaterial -Surface material enum used by infrastructure and land features. +Material that makes up the surface of `Infrastructure` and `Land` features. ## Values diff --git a/docs/schema/reference/base/water/_category_.json b/docs/schema/reference/base/water/_category_.json new file mode 100644 index 000000000..70793df04 --- /dev/null +++ b/docs/schema/reference/base/water/_category_.json @@ -0,0 +1,3 @@ +{ + "label": "Water" +} diff --git a/docs/schema/reference/base/water/water.md b/docs/schema/reference/base/water/water.md index 61a8c94c4..dd9d4c3d0 100644 --- a/docs/schema/reference/base/water/water.md +++ b/docs/schema/reference/base/water/water.md @@ -1,69 +1,111 @@ # Water -Physical representations of inland and ocean marine surfaces. +Water features represent ocean and inland water bodies. -Translates `natural` and `waterway` tags from OpenStreetMap. +In Overture data releases, water features are sourced from OpenStreetMap. There are two main +categories of water feature: ocean and inland water bodies. + +Ocean +----- +The `subytpe` value `"ocean"` indicates an ocean area feature whose geometry represents the +surface area of an ocean or part of an ocean. Ocean area may be tiled into many small polygons +of consistent complexity to ensure manageable geometry. In Overture data releases, ocean area +features are created from OpenStreetMap coastlines data (`natural=coastline`) using a QA'd +version of the output from the OSMCoastline tool. In aggregate, all the ocean area features +represent the inverse of the land features with subtype `"land"` and class `"land"`. + +The names and recommended label position for oceans and seas can be found in features with the +subtype `"physical"` and the class `"ocean"` or `"sea"`. + +Inland Water +------------ +Subtypes other than `"ocean"` (and `"physical"`) represent inland water bodies. In Overture data +releases, these features are sourced from the OpenStreetMap tag `natural=*` where the tag value +indicates a water body, as well as the tags `natural=water`, `waterway=*`, +and `water=*`. ## Fields | Name | Type | Description | |-----:|:----:|-------------| -| `source_tags` | `record` (optional) | | -| `wikidata` | `string` (optional) | | -| `names` | `object` (`[Names](../../Names/names)`) (optional) | | -| `names.primary` | `string` | The most commonly used name. | -| `names.common` | `object` (optional) | | -| `names.rules[]` | `list` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | -| `names.rules[].side` | `string` ([Side](../../Names/side)) (optional) | Examples: `left`, `right` | -| `names.rules[].between` | `list` (optional) | | -| `names.rules[].value` | `string` | | -| `names.rules[].variant` | `string` ([NameVariant](../../Names/name_variant)) | Examples: `common`, `official`, `alternate`, ... | -| `names.rules[].language` | `string` (optional) | | -| `names.rules[].perspectives` | `object` (`[Perspectives](../../Names/perspectives)`) (optional) | | -| `names.rules[].perspectives.mode` | `string` ([PerspectiveMode](../../Names/perspective_mode)) | Whether the perspective holder accepts or disputes this name. Examples: `accepted_by`, `disputed_by` | -| `names.rules[].perspectives.countries` | `list` | Countries holding the given mode of perspective. | -| `level` | `int32` (optional) | | -| `id` | `string` | | +| `id` | [`Id`](../../types/references/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | +| `bbox` | `bbox` (optional) | An optional bounding box for the feature | +| `geometry` | `geometry` | Geometry of the water feature, which may be a point, line string, polygon, or +multi-polygon. | | `theme` | `"base"` | | | `type` | `"water"` | | -| `geometry` | `geometry` | Geometry (Point, LineString, Polygon, or MultiPolygon) | -| `version` | `int32` | | -| `sources[]` | `list` (optional) | | -| `sources[].between` | `list` (optional) | | -| `sources[].property` | `string` | | -| `sources[].dataset` | `string` | | -| `sources[].record_id` | `string` (optional) | Refers to the specific record within the dataset that was used. | -| `sources[].update_time` | `string` (optional) | | -| `sources[].confidence` | `float64` (optional) | | -| `class` | `string` ([WaterClass](water_class)) (optional) | Examples: `basin`, `bay`, `blowhole`, ... Default: `` | -| `subtype` | `string` ([WaterSubtype](water_subtype)) (optional) | Examples: `canal`, `human_made`, `lake`, ... Default: `` | -| `is_intermittent` | `boolean` (optional) | Is it intermittent water or not | -| `is_salt` | `boolean` (optional) | Is it salt water or not | +| `version` | [`FeatureVersion`](../../types/core_types/feature_version.md) | | +| `sources[]` | [`Sources`](../../types/sources/sources.md) (list, optional) | | +| `sources[].property` | [`JsonPointer`](../../types/strings/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to. + +The root document value `""` indicates that this source information applies to the +entire feature, excepting properties (fields) for which a dedicated source information +record exists. + +Any other JSON Pointer apart from `""` indicates that this source record provides +dedicated source information for the property at the path in the JSON Pointer. As an +example, the value `"/names/common/en"` indicates that the source information applies to +the English common name of a named feature, while the value `"/geometry"` indicates that +it applies to the feature geometry. | +| `sources[].dataset` | `string` | Name of the dataset where the source data can be found. | +| `sources[].license` | [`StrippedString`](../../types/strings/stripped_string.md) (optional) | Source data license name. + +This should be a valid SPDX license identifier when available. + +If omitted, contact the data provider for more license information. | +| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can +be found. + +The format of record identifiers is dataset-specific. | +| `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | +| `sources[].confidence` | [`ConfidenceScore`](../../types/core_types/confidence_score.md) (optional) | Confidence value from the source dataset. + +This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | +| `sources[].between` | [`LinearlyReferencedRange`](../../types/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | +| `class` | [`WaterClass`](water_class.md) (optional) | | +| `subtype` | [`WaterSubtype`](water_subtype.md) (optional) | | +| `is_intermittent` | `boolean` (optional) | Whether the water body exists intermittently, not permanently | +| `is_salt` | `boolean` (optional) | Whether the water body contains salt water | +| `level` | [`Level`](../../types/core_types/level.md) (optional) | | +| `names` | [`Names`](../../types/names/names.md) (optional) | | +| `names.primary` | [`StrippedString`](../../types/strings/stripped_string.md) | The most commonly used name. | +| `names.common` | [`CommonNames`](../../types/names/common_names.md) (map, optional) | | +| `names.rules[]` | `list<`[`NameRule`](../../types/names/name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | +| `names.rules[].value` | [`StrippedString`](../../types/strings/stripped_string.md) | The actual name value. | +| `names.rules[].variant` | [`NameVariant`](../../types/names/name_variant.md) | The name variant for this name rule. | +| `names.rules[].language` | [`LanguageTag`](../../types/strings/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 +language tag. | +| `names.rules[].perspectives` | [`Perspectives`](../../types/perspectives/perspectives.md) (optional) | | +| `names.rules[].perspectives.mode` | [`PerspectiveMode`](../../types/perspectives/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | +| `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../../types/strings/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | +| `names.rules[].between` | [`LinearlyReferencedRange`](../../types/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | +| `names.rules[].side` | [`Side`](../../types/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | +| `source_tags` | [`SourceTags`](../source_tags.md) (map, optional) | | +| `wikidata` | [`WikidataId`](../../types/strings/wikidata_id.md) (optional) | | ## Examples | Column | Value | |-------:|-------| -| `geometry` | `LINESTRING (-172.3130214 -84.5857393, -172.3172356 -84.5848825, -172.3208447 -84.5839693)` | -| `subtype` | `stream` | -| `is_intermittent` | `true` | +| `id` | 6bbb5fe5-bf26-3efa-b120-0a7079b60840 | +| `geometry` | POINT (-177.031799 -84.934793) | +| `theme` | base | +| `type` | water | +| `version` | `0` | +| `sources[0].property` | | +| `sources[0].dataset` | OpenStreetMap | +| `sources[0].record_id` | n11109190647@2 | +| `sources[0].update_time` | 2024-02-11T05:52:05.000Z | +| `sources[0].confidence` | `null` | +| `sources[0].between` | `null` | +| `class` | cape | +| `subtype` | physical | +| `is_intermittent` | `null` | | `is_salt` | `null` | -| `class` | `stream` | -| `id` | `9e3c87a1-4735-3482-bced-0f3a0571c7b1` | | `level` | `null` | +| `names.primary` | Thanksgiving Point | | `names.common` | `null` | -| `names.primary` | `null` | | `names.rules` | `null` | -| `source_tags.intermittent` | `yes` | -| `source_tags.source` | `ADD` | -| `source_tags.waterway` | `stream` | -| `sources[0].between` | `null` | -| `sources[0].confidence` | `null` | -| `sources[0].dataset` | `OpenStreetMap` | -| `sources[0].property` | | -| `sources[0].record_id` | `w222125066@1` | -| `sources[0].update_time` | `2013-05-19T10:32:47.000Z` | -| `theme` | `base` | -| `type` | `water` | -| `version` | `0` | -| `wikidata` | `null` | +| `source_tags.natural` | cape | +| `source_tags.ref:linz:place_id` | 13433 | +| `wikidata` | Q33140589 | diff --git a/docs/schema/reference/base/water/water_class.md b/docs/schema/reference/base/water/water_class.md index 9af56817c..26815e420 100644 --- a/docs/schema/reference/base/water/water_class.md +++ b/docs/schema/reference/base/water/water_class.md @@ -1,6 +1,8 @@ # WaterClass -Further description of the type of water. +Further description of the type of water body. + +The water class adds detail to the broad classification of `WaterSubtype`. ## Values diff --git a/docs/schema/reference/base/water/water_subtype.md b/docs/schema/reference/base/water/water_subtype.md index 42684c99f..bebf36428 100644 --- a/docs/schema/reference/base/water/water_subtype.md +++ b/docs/schema/reference/base/water/water_subtype.md @@ -1,6 +1,8 @@ # WaterSubtype -The type of water body such as an river, ocean or lake. +The broad classification of water body such as river, ocean or lake. + +This broad classification can be refined using `WaterClass`. ## Values diff --git a/docs/schema/reference/buildings/_category_.json b/docs/schema/reference/buildings/_category_.json new file mode 100644 index 000000000..d3da24de9 --- /dev/null +++ b/docs/schema/reference/buildings/_category_.json @@ -0,0 +1,3 @@ +{ + "label": "Buildings" +} diff --git a/docs/schema/reference/buildings/building/_category_.json b/docs/schema/reference/buildings/building/_category_.json new file mode 100644 index 000000000..55fdd9d28 --- /dev/null +++ b/docs/schema/reference/buildings/building/_category_.json @@ -0,0 +1,3 @@ +{ + "label": "Building" +} diff --git a/docs/schema/reference/buildings/building/building.md b/docs/schema/reference/buildings/building/building.md index d80824c05..c7d1b19e2 100644 --- a/docs/schema/reference/buildings/building/building.md +++ b/docs/schema/reference/buildings/building/building.md @@ -1,88 +1,144 @@ # Building -A building is a man-made structure with a roof that exists permanently in one -place. +Buildings are man-made structures with roofs that exists permanently in one place. -Buildings are compatible with GeoJSON Polygon features. +A building's geometry represents the two-dimensional footprint of the building as viewed from +directly above, looking down. Fields such as `height` and `num_floors` allow the +three-dimensional shape to be approximated. Some buildings, identified by the `has_parts` field, +have associated `BuildingPart` features which can be used to generate a more representative 3D +model of the building. ## Fields | Name | Type | Description | |-----:|:----:|-------------| -| `height` | `float64` (optional) | Height of the building or part in meters. The height is the distance from the lowest point to the highest point. | -| `is_underground` | `boolean` (optional) | Whether the entire building or part is completely below ground. This is useful for rendering which typically omits these buildings or styles them differently because they are not visible above ground. This is different than the level column which is used to indicate z-ordering of elements and negative values may be above ground. | -| `num_floors` | `int32` (optional) | Number of above-ground floors of the building or part. | -| `num_floors_underground` | `int32` (optional) | Number of below-ground floors of the building or part. | -| `min_height` | `float64` (optional) | The height of the bottom part of building in meters. Used if a building or part of building starts above the ground level. | -| `min_floor` | `int32` (optional) | The "start" floor of this building or part. Indicates that the building or part is "floating" and its bottom-most floor is above ground level, usually because it is part of a larger building in which some parts do reach down to ground level. An example is a building that has an entry road or driveway at ground level into an interior courtyard, where part of the building bridges above the entry road. This property may sometimes be populated when min_height is missing and in these cases can be used as a proxy for min_height. | -| `facade_color` | `string` (optional) | The color (name or color triplet) of the facade of a building or building part in hexadecimal | -| `facade_material` | `string` ([FacadeMaterial](../facade_material)) (optional) | The outer surface material of building facade. Examples: `brick`, `cement_block`, `clay`, ... | -| `roof_material` | `string` ([RoofMaterial](../roof_material)) (optional) | The outermost material of the roof. Examples: `concrete`, `copper`, `eternit`, ... | -| `roof_shape` | `string` ([RoofShape](../roof_shape)) (optional) | The shape of the roof Examples: `dome`, `flat`, `gabled`, ... | -| `roof_direction` | `float64` (optional) | Bearing of the roof ridge line in degrees. | -| `roof_orientation` | `string` ([RoofOrientation](../roof_orientation)) (optional) | Orientation of the roof shape relative to the footprint shape. Either "along" or "across". Examples: `across`, `along` | -| `roof_color` | `string` (optional) | The color (name or color triplet) of the roof of a building or building part in hexadecimal | -| `roof_height` | `float64` (optional) | The height of the building roof in meters. This represents the distance from the base of the roof to the highest point of the roof. | -| `level` | `int32` (optional) | | -| `names` | `object` ([Names](../../Names/names)) (optional) | | -| `names.primary` | `string` | The most commonly used name. | -| `names.common` | `object` (optional) | | -| `names.rules[]` | `list` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | -| `names.rules[].side` | `string` ([Side](../../Names/side)) (optional) | Examples: `left`, `right` | -| `names.rules[].between` | `list` (optional) | | -| `names.rules[].value` | `string` | | -| `names.rules[].variant` | `string` ([NameVariant](../../Names/name_variant)) | Examples: `common`, `official`, `alternate`, ... | -| `names.rules[].language` | `string` (optional) | | -| `names.rules[].perspectives` | `object` (`[Perspectives](../../Names/perspectives)`) (optional) | | -| `names.rules[].perspectives.mode` | `string` ([PerspectiveMode](../Names/perspective_mode)) | Whether the perspective holder accepts or disputes this name. Examples: `accepted_by`, `disputed_by` | -| `names.rules[].perspectives.countries` | `list` | Countries holding the given mode of perspective. | -| `id` | `string` | | +| `id` | [`Id`](../../types/references/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | +| `bbox` | `bbox` (optional) | An optional bounding box for the feature | +| `geometry` | `geometry` | The building's footprint or roofprint (if traced from aerial/satellite imagery). | | `theme` | `"buildings"` | | | `type` | `"building"` | | -| `geometry` | `geometry` | The building's footprint or roofprint (if traced from aerial/satellite imagery). | -| `version` | `int32` | | -| `sources[]` | `list` (optional) | | -| `sources[].between` | `list` (optional) | | -| `sources[].property` | `string` | | -| `sources[].dataset` | `string` | | -| `sources[].record_id` | `string` (optional) | Refers to the specific record within the dataset that was used. | -| `sources[].update_time` | `string` (optional) | | -| `sources[].confidence` | `float64` (optional) | | -| `subtype` | `string` ([Subtype](subtype)) (optional) | Examples: `agricultural`, `civic`, `commercial`, ... | -| `class` | `string` ([BuildingClass](building_class)) (optional) | Examples: `agricultural`, `allotment_house`, `apartments`, ... | -| `has_parts` | `boolean` (optional) | Flag indicating whether the building has parts | +| `version` | [`FeatureVersion`](../../types/core_types/feature_version.md) | | +| `sources[]` | [`Sources`](../../types/sources/sources.md) (list, optional) | | +| `sources[].property` | [`JsonPointer`](../../types/strings/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to. + +The root document value `""` indicates that this source information applies to the +entire feature, excepting properties (fields) for which a dedicated source information +record exists. + +Any other JSON Pointer apart from `""` indicates that this source record provides +dedicated source information for the property at the path in the JSON Pointer. As an +example, the value `"/names/common/en"` indicates that the source information applies to +the English common name of a named feature, while the value `"/geometry"` indicates that +it applies to the feature geometry. | +| `sources[].dataset` | `string` | Name of the dataset where the source data can be found. | +| `sources[].license` | [`StrippedString`](../../types/strings/stripped_string.md) (optional) | Source data license name. + +This should be a valid SPDX license identifier when available. + +If omitted, contact the data provider for more license information. | +| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can +be found. + +The format of record identifiers is dataset-specific. | +| `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | +| `sources[].confidence` | [`ConfidenceScore`](../../types/core_types/confidence_score.md) (optional) | Confidence value from the source dataset. + +This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | +| `sources[].between` | [`LinearlyReferencedRange`](../../types/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | +| `subtype` | [`BuildingSubtype`](building_subtype.md) (optional) | A broad classification of the current use and purpose of the building. + +If the current use of the building no longer accords with the original built +purpose, the current use should be specified. For example, a building built as a +train station but later converted into a shopping mall would have the value +`"commercial"` rather than `"transportation"`. | +| `class` | [`BuildingClass`](building_class.md) (optional) | A more specific classification of the current use and purpose of the building. + +If the current use of the building no longer accords with the original built +purpose, the current use should be specified. | +| `has_parts` | `boolean` (optional) | Whether the building has associated building part features | +| `names` | [`Names`](../../types/names/names.md) (optional) | | +| `names.primary` | [`StrippedString`](../../types/strings/stripped_string.md) | The most commonly used name. | +| `names.common` | [`CommonNames`](../../types/names/common_names.md) (map, optional) | | +| `names.rules[]` | `list<`[`NameRule`](../../types/names/name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | +| `names.rules[].value` | [`StrippedString`](../../types/strings/stripped_string.md) | The actual name value. | +| `names.rules[].variant` | [`NameVariant`](../../types/names/name_variant.md) | The name variant for this name rule. | +| `names.rules[].language` | [`LanguageTag`](../../types/strings/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 +language tag. | +| `names.rules[].perspectives` | [`Perspectives`](../../types/perspectives/perspectives.md) (optional) | | +| `names.rules[].perspectives.mode` | [`PerspectiveMode`](../../types/perspectives/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | +| `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../../types/strings/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | +| `names.rules[].between` | [`LinearlyReferencedRange`](../../types/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | +| `names.rules[].side` | [`Side`](../../types/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | +| `level` | [`Level`](../../types/core_types/level.md) (optional) | | +| `height` | `float64` (optional) | Height of the building or part in meters. + +This is the distance from the lowest point to the highest point. | +| `is_underground` | `boolean` (optional) | Whether the entire building or part is completely below ground. + +The underground flag is useful for display purposes. Buildings and building parts +that are entirely below ground can be styled differently or omitted from the +rendered image. + +This flag is conceptually different from the `level` field, which indicates +relative z-ordering and, notably, can be negative even if the building is entirely +above-ground. | +| `num_floors` | `int32` (optional) | Number of above-ground floors of the building or part. | +| `num_floors_underground` | `int32` (optional) | Number of below-ground floors of the building or part. | +| `min_height` | `float64` (optional) | Altitude above ground where the bottom of the building or building part starts. + +If present, this value indicates that the lowest part of the building or building +part starts is above ground level. | +| `min_floor` | `int32` (optional) | Start floor of this building or part. + +If present, this value indicates that the building or part is "floating" and its +bottom-most floor is above ground level, usually because it is part of a larger +building in which some parts do reach down to ground level. An example is a building +that has an entry road or driveway at ground level into an interior courtyard, where +part of the building bridges above the entry road. This property may sometimes be +populated when `min_height` is missing and in these cases can be used as a proxy for +`min_height`. | +| `facade_color` | [`HexColor`](../../types/strings/hex_color.md) (optional) | Facade color in `#rgb` or `#rrggbb` hex notation | +| `facade_material` | [`FacadeMaterial`](../facade_material.md) (optional) | Outer surface material of the facade | +| `roof_material` | [`RoofMaterial`](../roof_material.md) (optional) | Outer surface material of the roof | +| `roof_shape` | [`RoofShape`](../roof_shape.md) (optional) | Shape of the roof | +| `roof_direction` | `float64` (optional) | Bearing of the roof ridge line in degrees | +| `roof_orientation` | [`RoofOrientation`](../roof_orientation.md) (optional) | Orientation of the roof shape relative to the footprint shape | +| `roof_color` | [`HexColor`](../../types/strings/hex_color.md) (optional) | The roof color in `#rgb` or `#rrggbb` hex notation | +| `roof_height` | `float64` (optional) | Height of the roof in meters. + +This is the distance from the base of the roof to its highest point. | ## Examples | Column | Value | |-------:|-------| -| `geometry` | `POLYGON ((-176.6435004 -43.9938042, -176.6435738 -43.9937107, -176.6437726 -43.9937913, -176.6436992...` | +| `id` | 148f35b1-7bc1-4180-9280-10d39b13883b | +| `geometry` | POLYGON ((-176.6435004 -43.9938042, -176.6435738 -43.9937107, -176.6437726 -43.9937913, -176.6436992... | +| `theme` | buildings | +| `type` | building | +| `version` | `1` | +| `sources[0].property` | | +| `sources[0].dataset` | OpenStreetMap | +| `sources[0].record_id` | w519166507@1 | +| `sources[0].update_time` | 2017-08-27T21:39:50.000Z | +| `sources[0].confidence` | `null` | +| `sources[0].between` | `null` | | `subtype` | `null` | -| `has_parts` | `false` | | `class` | `null` | -| `facade_color` | `null` | -| `facade_material` | `null` | +| `has_parts` | `false` | +| `names` | `null` | +| `level` | `null` | | `height` | `null` | -| `id` | `148f35b1-7bc1-4180-9280-10d39b13883b` | | `is_underground` | `false` | -| `level` | `null` | -| `min_floor` | `null` | -| `min_height` | `null` | -| `names` | `null` | | `num_floors` | `null` | | `num_floors_underground` | `null` | -| `roof_color` | `null` | -| `roof_direction` | `null` | -| `roof_height` | `null` | +| `min_height` | `null` | +| `min_floor` | `null` | +| `facade_color` | `null` | +| `facade_material` | `null` | | `roof_material` | `null` | -| `roof_orientation` | `null` | | `roof_shape` | `null` | -| `sources[0].between` | `null` | -| `sources[0].confidence` | `null` | -| `sources[0].dataset` | `OpenStreetMap` | -| `sources[0].property` | | -| `sources[0].record_id` | `w519166507@1` | -| `sources[0].update_time` | `2017-08-27T21:39:50.000Z` | -| `theme` | `buildings` | -| `type` | `building` | -| `version` | `1` | +| `roof_direction` | `null` | +| `roof_orientation` | `null` | +| `roof_color` | `null` | +| `roof_height` | `null` | diff --git a/docs/schema/reference/buildings/building/building_class.md b/docs/schema/reference/buildings/building/building_class.md index e48a6ce25..270c0d92e 100644 --- a/docs/schema/reference/buildings/building/building_class.md +++ b/docs/schema/reference/buildings/building/building_class.md @@ -1,6 +1,8 @@ # BuildingClass -Further delineation of the building's built purpose. +Further classification of the type and purpose of a building. + +The building class adds detail to the broad classification of `BuildingSubtype`. ## Values diff --git a/docs/schema/reference/buildings/building/subtype.md b/docs/schema/reference/buildings/building/building_subtype.md similarity index 50% rename from docs/schema/reference/buildings/building/subtype.md rename to docs/schema/reference/buildings/building/building_subtype.md index 6e3c4de18..d447a3382 100644 --- a/docs/schema/reference/buildings/building/subtype.md +++ b/docs/schema/reference/buildings/building/building_subtype.md @@ -1,9 +1,8 @@ -# Subtype +# BuildingSubtype -A broad category of the building type/purpose. +Broadest classification of the type and purpose of a building. -When the current use of the building does not match the built purpose, the subtype -should be set to represent the current use of the building. +This broad classification can be refined by `BuildingClass`. ## Values diff --git a/docs/schema/reference/buildings/building_part/_category_.json b/docs/schema/reference/buildings/building_part/_category_.json new file mode 100644 index 000000000..01f43eae1 --- /dev/null +++ b/docs/schema/reference/buildings/building_part/_category_.json @@ -0,0 +1,3 @@ +{ + "label": "Building Part" +} diff --git a/docs/schema/reference/buildings/building_part/building_part.md b/docs/schema/reference/buildings/building_part/building_part.md index 3222199cf..bb188cced 100644 --- a/docs/schema/reference/buildings/building_part/building_part.md +++ b/docs/schema/reference/buildings/building_part/building_part.md @@ -1,84 +1,135 @@ # BuildingPart -A single building part. +Building parts represent parts of larger building features. They allow buildings to be modeled +in rich detail suitable for creating realistic 3D models. -Parts describe their shape and color and other properties. Each building part must -contain the building with which it is associated. +Every building part is associated with a parent `Building` feature via the `building_id` field. +In addition, a building part has a footprint geometry and may include additional details such as +its height, the number of floors, and the color and material of its facade and roof. + +Building parts can float or be stacked on top of each other. The `min_height`, `min_floor`, +`height`, and `num_floors`, fields can be used to arrange the parts correctly along the +vertical dimension. ## Fields | Name | Type | Description | |-----:|:----:|-------------| -| `height` | `float64` (optional) | Height of the building or part in meters. The height is the distance from the lowest point to the highest point. | -| `is_underground` | `boolean` (optional) | Whether the entire building or part is completely below ground. This is useful for rendering which typically omits these buildings or styles them differently because they are not visible above ground. This is different than the level column which is used to indicate z-ordering of elements and negative values may be above ground. | -| `num_floors` | `int32` (optional) | Number of above-ground floors of the building or part. | -| `num_floors_underground` | `int32` (optional) | Number of below-ground floors of the building or part. | -| `min_height` | `float64` (optional) | The height of the bottom part of building in meters. Used if a building or part of building starts above the ground level. | -| `min_floor` | `int32` (optional) | The "start" floor of this building or part. Indicates that the building or part is "floating" and its bottom-most floor is above ground level, usually because it is part of a larger building in which some parts do reach down to ground level. An example is a building that has an entry road or driveway at ground level into an interior courtyard, where part of the building bridges above the entry road. This property may sometimes be populated when min_height is missing and in these cases can be used as a proxy for min_height. | -| `facade_color` | `string` (optional) | The color (name or color triplet) of the facade of a building or building part in hexadecimal | -| `facade_material` | `string` ([FacadeMaterial](../facade_material)) (optional) | The outer surface material of building facade. Examples: `brick`, `cement_block`, `clay`, ... | -| `roof_material` | `string` ([RoofMaterial](../roof_material)) (optional) | The outermost material of the roof. Examples: `concrete`, `copper`, `eternit`, ... | -| `roof_shape` | `string` ([RoofShape](../roof_shape)) (optional) | The shape of the roof Examples: `dome`, `flat`, `gabled`, ... | -| `roof_direction` | `float64` (optional) | Bearing of the roof ridge line in degrees. | -| `roof_orientation` | `string` ([RoofOrientation](../roof_orientation)) (optional) | Orientation of the roof shape relative to the footprint shape. Either "along" or "across". Examples: `across`, `along` | -| `roof_color` | `string` (optional) | The color (name or color triplet) of the roof of a building or building part in hexadecimal | -| `roof_height` | `float64` (optional) | The height of the building roof in meters. This represents the distance from the base of the roof to the highest point of the roof. | -| `level` | `int32` (optional) | | -| `names` | `object` (`[Names](../../Names/names)`) (optional) | | -| `names.primary` | `string` | The most commonly used name. | -| `names.common` | `object` (optional) | | -| `names.rules[]` | `list` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | -| `names.rules[].side` | `string` ([Side](../../Names/side)) (optional) | Examples: `left`, `right` | -| `names.rules[].between` | `list` (optional) | | -| `names.rules[].value` | `string` | | -| `names.rules[].variant` | `string` ([NameVariant](../../Names/name_variant)) | Examples: `common`, `official`, `alternate`, ... | -| `names.rules[].language` | `string` (optional) | | -| `names.rules[].perspectives` | `object` (`[Perspectives](../../Names/perspectives)`) (optional) | | -| `names.rules[].perspectives.mode` | `string` ([PerspectiveMode](../../Names/perspective_mode)) | Whether the perspective holder accepts or disputes this name. Examples: `accepted_by`, `disputed_by` | -| `names.rules[].perspectives.countries` | `list` | Countries holding the given mode of perspective. | -| `id` | `string` | | +| `id` | [`Id`](../../types/references/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | +| `bbox` | `bbox` (optional) | An optional bounding box for the feature | +| `geometry` | `geometry` | The footprint or roofprint of the building part. | | `theme` | `"buildings"` | | | `type` | `"building_part"` | | -| `geometry` | `geometry` | The part's geometry. | -| `version` | `int32` | | -| `sources[]` | `list` (optional) | | -| `sources[].between` | `list` (optional) | | -| `sources[].property` | `string` | | -| `sources[].dataset` | `string` | | -| `sources[].record_id` | `string` (optional) | Refers to the specific record within the dataset that was used. | -| `sources[].update_time` | `string` (optional) | | -| `sources[].confidence` | `float64` (optional) | | -| `building_id` | `string` | The building ID to which this part belongs | +| `version` | [`FeatureVersion`](../../types/core_types/feature_version.md) | | +| `sources[]` | [`Sources`](../../types/sources/sources.md) (list, optional) | | +| `sources[].property` | [`JsonPointer`](../../types/strings/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to. + +The root document value `""` indicates that this source information applies to the +entire feature, excepting properties (fields) for which a dedicated source information +record exists. + +Any other JSON Pointer apart from `""` indicates that this source record provides +dedicated source information for the property at the path in the JSON Pointer. As an +example, the value `"/names/common/en"` indicates that the source information applies to +the English common name of a named feature, while the value `"/geometry"` indicates that +it applies to the feature geometry. | +| `sources[].dataset` | `string` | Name of the dataset where the source data can be found. | +| `sources[].license` | [`StrippedString`](../../types/strings/stripped_string.md) (optional) | Source data license name. + +This should be a valid SPDX license identifier when available. + +If omitted, contact the data provider for more license information. | +| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can +be found. + +The format of record identifiers is dataset-specific. | +| `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | +| `sources[].confidence` | [`ConfidenceScore`](../../types/core_types/confidence_score.md) (optional) | Confidence value from the source dataset. + +This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | +| `sources[].between` | [`LinearlyReferencedRange`](../../types/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | +| `building_id` | [`Id`](../../types/references/id.md) | The building to which this part belongs | +| `names` | [`Names`](../../types/names/names.md) (optional) | | +| `names.primary` | [`StrippedString`](../../types/strings/stripped_string.md) | The most commonly used name. | +| `names.common` | [`CommonNames`](../../types/names/common_names.md) (map, optional) | | +| `names.rules[]` | `list<`[`NameRule`](../../types/names/name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | +| `names.rules[].value` | [`StrippedString`](../../types/strings/stripped_string.md) | The actual name value. | +| `names.rules[].variant` | [`NameVariant`](../../types/names/name_variant.md) | The name variant for this name rule. | +| `names.rules[].language` | [`LanguageTag`](../../types/strings/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 +language tag. | +| `names.rules[].perspectives` | [`Perspectives`](../../types/perspectives/perspectives.md) (optional) | | +| `names.rules[].perspectives.mode` | [`PerspectiveMode`](../../types/perspectives/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | +| `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../../types/strings/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | +| `names.rules[].between` | [`LinearlyReferencedRange`](../../types/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | +| `names.rules[].side` | [`Side`](../../types/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | +| `level` | [`Level`](../../types/core_types/level.md) (optional) | | +| `height` | `float64` (optional) | Height of the building or part in meters. + +This is the distance from the lowest point to the highest point. | +| `is_underground` | `boolean` (optional) | Whether the entire building or part is completely below ground. + +The underground flag is useful for display purposes. Buildings and building parts +that are entirely below ground can be styled differently or omitted from the +rendered image. + +This flag is conceptually different from the `level` field, which indicates +relative z-ordering and, notably, can be negative even if the building is entirely +above-ground. | +| `num_floors` | `int32` (optional) | Number of above-ground floors of the building or part. | +| `num_floors_underground` | `int32` (optional) | Number of below-ground floors of the building or part. | +| `min_height` | `float64` (optional) | Altitude above ground where the bottom of the building or building part starts. + +If present, this value indicates that the lowest part of the building or building +part starts is above ground level. | +| `min_floor` | `int32` (optional) | Start floor of this building or part. + +If present, this value indicates that the building or part is "floating" and its +bottom-most floor is above ground level, usually because it is part of a larger +building in which some parts do reach down to ground level. An example is a building +that has an entry road or driveway at ground level into an interior courtyard, where +part of the building bridges above the entry road. This property may sometimes be +populated when `min_height` is missing and in these cases can be used as a proxy for +`min_height`. | +| `facade_color` | [`HexColor`](../../types/strings/hex_color.md) (optional) | Facade color in `#rgb` or `#rrggbb` hex notation | +| `facade_material` | [`FacadeMaterial`](../facade_material.md) (optional) | Outer surface material of the facade | +| `roof_material` | [`RoofMaterial`](../roof_material.md) (optional) | Outer surface material of the roof | +| `roof_shape` | [`RoofShape`](../roof_shape.md) (optional) | Shape of the roof | +| `roof_direction` | `float64` (optional) | Bearing of the roof ridge line in degrees | +| `roof_orientation` | [`RoofOrientation`](../roof_orientation.md) (optional) | Orientation of the roof shape relative to the footprint shape | +| `roof_color` | [`HexColor`](../../types/strings/hex_color.md) (optional) | The roof color in `#rgb` or `#rrggbb` hex notation | +| `roof_height` | `float64` (optional) | Height of the roof in meters. + +This is the distance from the base of the roof to its highest point. | ## Examples | Column | Value | |-------:|-------| -| `geometry` | `POLYGON ((-73.2462509 -39.8108937, -73.2462755 -39.8109047, -73.246291 -39.8109182, -73.2463022 -39....` | -| `building_id` | `bd663bd4-1844-4d7d-a400-114de051cf49` | -| `facade_color` | `null` | -| `facade_material` | `null` | +| `id` | 19412d64-51ac-3d6a-ac2f-8a8c8b91bb60 | +| `geometry` | POLYGON ((-73.2462509 -39.8108937, -73.2462755 -39.8109047, -73.246291 -39.8109182, -73.2463022 -39.... | +| `theme` | buildings | +| `type` | building_part | +| `version` | `0` | +| `sources[0].property` | | +| `sources[0].dataset` | OpenStreetMap | +| `sources[0].record_id` | w223076787@2 | +| `sources[0].update_time` | 2014-10-31T22:55:36.000Z | +| `sources[0].confidence` | `null` | +| `sources[0].between` | `null` | +| `building_id` | bd663bd4-1844-4d7d-a400-114de051cf49 | +| `names` | `null` | +| `level` | `3` | | `height` | `null` | -| `id` | `19412d64-51ac-3d6a-ac2f-8a8c8b91bb60` | | `is_underground` | `false` | -| `level` | `3` | -| `min_floor` | `null` | -| `min_height` | `null` | -| `names` | `null` | | `num_floors` | `null` | | `num_floors_underground` | `null` | -| `roof_color` | `null` | -| `roof_direction` | `null` | -| `roof_height` | `null` | +| `min_height` | `null` | +| `min_floor` | `null` | +| `facade_color` | `null` | +| `facade_material` | `null` | | `roof_material` | `null` | -| `roof_orientation` | `null` | | `roof_shape` | `null` | -| `sources[0].between` | `null` | -| `sources[0].confidence` | `null` | -| `sources[0].dataset` | `OpenStreetMap` | -| `sources[0].property` | | -| `sources[0].record_id` | `w223076787@2` | -| `sources[0].update_time` | `2014-10-31T22:55:36.000Z` | -| `theme` | `buildings` | -| `type` | `building_part` | -| `version` | `0` | +| `roof_direction` | `null` | +| `roof_orientation` | `null` | +| `roof_color` | `null` | +| `roof_height` | `null` | diff --git a/docs/schema/reference/buildings/roof_material.md b/docs/schema/reference/buildings/roof_material.md index afb676f86..66cfb2953 100644 --- a/docs/schema/reference/buildings/roof_material.md +++ b/docs/schema/reference/buildings/roof_material.md @@ -15,6 +15,6 @@ The outermost material of the roof. - `roof_tiles` - `slate` - `solar_panels` -- `thatch` - `tar_paper` +- `thatch` - `wood` diff --git a/docs/schema/reference/buildings/roof_orientation.md b/docs/schema/reference/buildings/roof_orientation.md index dbf261cfa..9207b8763 100644 --- a/docs/schema/reference/buildings/roof_orientation.md +++ b/docs/schema/reference/buildings/roof_orientation.md @@ -2,9 +2,10 @@ Orientation of the roof shape relative to the footprint shape. -Either "along" or "across". +The members of this enumeration, `"across"` and `"along"`, are borrowed from the OpenStreetMap +`roof:orientation=*` tag and have the same meanings as they do in OSM. ## Values -- `across` -- `along` +- `across` - The roof ridge runs perpendicular to the longer of the two building edges, parallel to the shorter +- `along` - The roof ridge runs parallel to the longer of the two building edges diff --git a/docs/schema/reference/cartographic_hints.md b/docs/schema/reference/cartographic_hints.md deleted file mode 100644 index 1dfc16306..000000000 --- a/docs/schema/reference/cartographic_hints.md +++ /dev/null @@ -1,12 +0,0 @@ -# CartographicHints - -Defines cartographic hints for optimal use of Overture features in map-making. - -## Fields - -| Name | Type | Description | -|-----:|:----:|-------------| -| `prominence` | `integer` (optional) | | -| `min_zoom` | `integer` (optional) | | -| `max_zoom` | `integer` (optional) | | -| `sort_key` | `integer` (optional) | | diff --git a/docs/schema/reference/divisions/_category_.json b/docs/schema/reference/divisions/_category_.json new file mode 100644 index 000000000..18e395b71 --- /dev/null +++ b/docs/schema/reference/divisions/_category_.json @@ -0,0 +1,3 @@ +{ + "label": "Divisions" +} diff --git a/docs/schema/reference/divisions/admin_level.md b/docs/schema/reference/divisions/admin_level.md new file mode 100644 index 000000000..e4b5e7115 --- /dev/null +++ b/docs/schema/reference/divisions/admin_level.md @@ -0,0 +1,6 @@ +# AdminLevel (`uint8`) + +## Constraints + +- `Ge(ge=0)` (from [`uint8`](../types/primitives.md)) +- `Le(le=255)` (from [`uint8`](../types/primitives.md)) diff --git a/docs/schema/reference/divisions/capital_of_division_item.md b/docs/schema/reference/divisions/capital_of_division_item.md deleted file mode 100644 index eab2a75fc..000000000 --- a/docs/schema/reference/divisions/capital_of_division_item.md +++ /dev/null @@ -1,10 +0,0 @@ -# CapitalOfDivisionItem - -One division that has capital. - -## Fields - -| Name | Type | Description | -|-----:|:----:|-------------| -| `division_id` | `string` | | -| `subtype` | `string` ([PlaceType](/schema/codegen/divisions/capital_of_division_item/place_type/)) | Examples: `country`, `dependency`, `macroregion`, ... | diff --git a/docs/schema/reference/divisions/division/_category_.json b/docs/schema/reference/divisions/division/_category_.json new file mode 100644 index 000000000..e35ad267d --- /dev/null +++ b/docs/schema/reference/divisions/division/_category_.json @@ -0,0 +1,3 @@ +{ + "label": "Division" +} diff --git a/docs/schema/reference/divisions/division/capital_of_division_item.md b/docs/schema/reference/divisions/division/capital_of_division_item.md new file mode 100644 index 000000000..3edda9bab --- /dev/null +++ b/docs/schema/reference/divisions/division/capital_of_division_item.md @@ -0,0 +1,10 @@ +# CapitalOfDivisionItem + +One division that has capital. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `division_id` | [`DivisionId`](../division_id.md) | | +| `subtype` | [`PlaceType`](../place_type.md) | | diff --git a/docs/schema/reference/divisions/division/division.md b/docs/schema/reference/divisions/division/division.md index e5cc2616b..8bb6d07d6 100644 --- a/docs/schema/reference/divisions/division/division.md +++ b/docs/schema/reference/divisions/division/division.md @@ -9,103 +9,174 @@ Examples include countries, provinces, cities, towns, neighborhoods, etc. | Name | Type | Description | |-----:|:----:|-------------| -| `cartography` | `object` (`[CartographicHints](../../cartographic_hints)`) (optional) | | -| `cartography.prominence` | `integer` (optional) | | -| `cartography.min_zoom` | `integer` (optional) | | -| `cartography.max_zoom` | `integer` (optional) | | -| `cartography.sort_key` | `integer` (optional) | | -| `names` | `object` (`[Names](../../Names/names)`) | | -| `names.primary` | `string` | The most commonly used name. | -| `names.common` | `object` (optional) | | -| `names.rules[]` | `list` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | -| `names.rules[].side` | `string` ([Side](../../Names/side)) (optional) | Examples: `left`, `right` | -| `names.rules[].between` | `list` (optional) | | -| `names.rules[].value` | `string` | | -| `names.rules[].variant` | `string` ([NameVariant](../../Names/name_variant)) | Examples: `common`, `official`, `alternate`, ... | -| `names.rules[].language` | `string` (optional) | | -| `names.rules[].perspectives` | `object` (`[Perspectives](../../Names/perspectives)`) (optional) | | -| `names.rules[].perspectives.mode` | `string` ([PerspectiveMode](../../Names/perspective_mode)) | Whether the perspective holder accepts or disputes this name. Examples: `accepted_by`, `disputed_by` | -| `names.rules[].perspectives.countries` | `list` | Countries holding the given mode of perspective. | -| `id` | `string` | | +| `cartography` | [`CartographicHints`](../../types/cartography/cartographic_hints.md) (optional) | | +| `cartography.prominence` | [`Prominence`](../../types/cartography/prominence.md) (optional) | | +| `cartography.min_zoom` | [`MinZoom`](../../types/cartography/min_zoom.md) (optional) | | +| `cartography.max_zoom` | [`MaxZoom`](../../types/cartography/max_zoom.md) (optional) | | +| `cartography.sort_key` | [`SortKey`](../../types/cartography/sort_key.md) (optional) | | +| `names` | [`Names`](../../types/names/names.md) | | +| `names.primary` | [`StrippedString`](../../types/strings/stripped_string.md) | The most commonly used name. | +| `names.common` | [`CommonNames`](../../types/names/common_names.md) (map, optional) | | +| `names.rules[]` | `list<`[`NameRule`](../../types/names/name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | +| `names.rules[].value` | [`StrippedString`](../../types/strings/stripped_string.md) | The actual name value. | +| `names.rules[].variant` | [`NameVariant`](../../types/names/name_variant.md) | The name variant for this name rule. | +| `names.rules[].language` | [`LanguageTag`](../../types/strings/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 +language tag. | +| `names.rules[].perspectives` | [`Perspectives`](../../types/perspectives/perspectives.md) (optional) | | +| `names.rules[].perspectives.mode` | [`PerspectiveMode`](../../types/perspectives/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | +| `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../../types/strings/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | +| `names.rules[].between` | [`LinearlyReferencedRange`](../../types/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | +| `names.rules[].side` | [`Side`](../../types/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | +| `id` | [`Id`](../../types/references/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | +| `bbox` | `bbox` (optional) | An optional bounding box for the feature | +| `geometry` | `geometry` | Approximate location of a position commonly associated with the real-world entity modeled by the division feature. | | `theme` | `"divisions"` | | | `type` | `"division"` | | -| `geometry` | `geometry` | Approximate location of a position commonly associated with the real-world entity modeled by the division feature. | -| `version` | `int32` | | -| `sources[]` | `list` (optional) | | -| `sources[].between` | `list` (optional) | | -| `sources[].property` | `string` | | -| `sources[].dataset` | `string` | | -| `sources[].record_id` | `string` (optional) | Refers to the specific record within the dataset that was used. | -| `sources[].update_time` | `string` (optional) | | -| `sources[].confidence` | `float64` (optional) | | -| `subtype` | `string` ([PlaceType](../place_type)) | Examples: `country`, `dependency`, `macroregion`, ... | -| `country` | `string` | ISO 3166-1 alpha-2 country code of the country or country-like entity, that this division represents or belongs to. If the entity this division represents has a country code, the country property contains it. If it does not, the country property contains the country code of the first division encountered by traversing the parent_division_id chain to the root. For example: - The country value for the United States is 'US' - The country value for New York City is 'US' - The country value for Puerto Rico, a dependency of the US, is 'PR'. - The country value for San Juan, Puerto Rico is 'PR'. If an entity has an internationally-recognized ISO 3166-1 alpha-2 country code, it should always be used. In cases where the schema requires the code but no internationally-recognized code is available, a synthetic code may be used provided it does not conflict with any internationally-recognized codes. | -| `hierarchies` | `list` | Hierarchies in which this division participates. Every division participates in at least one hierarchy. Most participate in only one. Some divisions may participate in more than one hierarchy, for example if they are claimed by different parent divisions from different political perspectives; or if there are other real-world reasons why the division or one of its ancestors has multiple parents. The first hierarchy in the list is the default hierarchy, and the second-to-last entry in the default hierarchy (if there is such an entry) always corresponds to the `parent_division_id' property. The ordering of hierarchies after the first one is arbitrary. | -| `hierarchies.division_id` | `string` | | -| `hierarchies.subtype` | `string` ([PlaceType](../place_type)) | Examples: `country`, `dependency`, `macroregion`, ... | -| `hierarchies.name` | `string` | Primary name of the division | -| `parent_division_id` | `string` (optional) | Division ID of this division's parent division. Not allowed for top-level divisions (countries) and required for all other divisions. The default parent division is the parent division as seen from the default political perspective, if there is one, and is otherwise chosen somewhat arbitrarily. The hierarchies property can be used to inspect the exhaustive list of parent divisions. | -| `class` | `string` ([DivisionClass](../division_class)) (optional) | Examples: `megacity`, `city`, `town`, ... | -| `local_type` | `object` (optional) | Local name for the subtype property, optionally localized. For example, the Canadian province of Quebec has the subtype 'region', but in the local administrative hierarchy it is referred to as a 'province'. Similarly, the Canadian Yukon territory also has subtype 'region', but is locally called a 'territory'. This property is localized using a standard Overture names structure. So for example, in Switzerland the top-level administrative subdivision corresponding to subtype 'region' is the canton, which is may be translated in each of Switzerland's official languages as, 'canton' in French, 'kanton' in German, 'cantone' in Italian, and 'chantun' in Romansh. | -| `region` | `string` (optional) | ISO 3166-2 principal subdivision code of the subdivision-like entity this division represents or belongs to. If the entity this division represents has a principal subdivision code, the region property contains it. If it does not, the region property contains the principal subdivision code of the first division encountered by traversing the parent_division_id chain to the root. For example: - The region value for the United States is omitted. - The region value for the U.S. state of New York is 'US-NY'. - The region value for New York City is 'US-NY', which it inherits from the state of New York. - The region value for Puerto Rico is 'US-PR'. | -| `perspectives` | `object` (`[Perspectives](../../Names/perspectives)`) (optional) | Political perspectives from which this division is considered to be an accurate representation. If this property is absent, then this division is not known to be disputed from any political perspective. Consequently, there is only one division feature representing the entire real world entity. If this property is present, it means the division represents one of several alternative perspectives on the same real-world entity. There are two modes of perspective: 1. `accepted_by` means the representation of the division is accepted by the listed entities and would be included on a map drawn from their perspective. 2. `disputed_by` means the representation of the division is disputed by the listed entities and would be excluded from a map drawn from their perspective. When drawing a map from the perspective of a given country, one would start by gathering all the undisputed divisions (with no `perspectives` property), and then adding to that first all divisions explicitly accepted by the country, and second all divisions not explicitly disputed by the country. | -| `norms` | `object` (`[Norms](norms)`) (optional) | Collects information about local norms and rules within the division that are generally useful for mapping and map-related use cases. If the norms property or a desired sub-property of the norms property is missing on a division, but at least one of its ancestor divisions has the norms property and the desired sub-property, then the value from the nearest ancestor division may be assumed. | -| `norms.driving_side` | `string` ([Side](../../Names/side)) (optional) | Side of the road on which vehicles drive in the division. Examples: `left`, `right` | +| `version` | [`FeatureVersion`](../../types/core_types/feature_version.md) | | +| `sources[]` | [`Sources`](../../types/sources/sources.md) (list, optional) | | +| `sources[].property` | [`JsonPointer`](../../types/strings/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to. + +The root document value `""` indicates that this source information applies to the +entire feature, excepting properties (fields) for which a dedicated source information +record exists. + +Any other JSON Pointer apart from `""` indicates that this source record provides +dedicated source information for the property at the path in the JSON Pointer. As an +example, the value `"/names/common/en"` indicates that the source information applies to +the English common name of a named feature, while the value `"/geometry"` indicates that +it applies to the feature geometry. | +| `sources[].dataset` | `string` | Name of the dataset where the source data can be found. | +| `sources[].license` | [`StrippedString`](../../types/strings/stripped_string.md) (optional) | Source data license name. + +This should be a valid SPDX license identifier when available. + +If omitted, contact the data provider for more license information. | +| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can +be found. + +The format of record identifiers is dataset-specific. | +| `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | +| `sources[].confidence` | [`ConfidenceScore`](../../types/core_types/confidence_score.md) (optional) | Confidence value from the source dataset. + +This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | +| `sources[].between` | [`LinearlyReferencedRange`](../../types/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | +| `subtype` | [`PlaceType`](../place_type.md) | | +| `country` | [`CountryCodeAlpha2`](../../types/strings/country_code_alpha2.md) | ISO 3166-1 alpha-2 country code of the country or country-like entity, that this division represents or belongs to. + +If the entity this division represents has a country code, the country property contains it. If it does not, the country property contains the country code of the first division encountered by traversing the parent_division_id chain to the root. + +For example: + - The country value for the United States is 'US' + - The country value for New York City is 'US' + - The country value for Puerto Rico, a dependency of the US, + is 'PR'. + - The country value for San Juan, Puerto Rico is 'PR'. + +If an entity has an internationally-recognized ISO 3166-1 alpha-2 country code, it should always be used. In cases where the schema requires the code but no internationally-recognized code is available, a synthetic code may be used provided it does not conflict with any internationally-recognized codes. | +| `hierarchies[]` | [`Hierarchy`](hierarchy.md) (list) | Hierarchies in which this division participates. + +Every division participates in at least one hierarchy. Most participate in only one. Some divisions may participate in more than one hierarchy, for example if they are claimed by different parent divisions from different political perspectives; or if there are other real-world reasons why the division or one of its ancestors has multiple parents. + +The first hierarchy in the list is the default hierarchy, and the second-to-last entry in the default hierarchy (if there is such an entry) always corresponds to the `parent_division_id' property. The ordering of hierarchies after the first one is arbitrary. | +| `hierarchies[].division_id` | [`DivisionId`](../division_id.md) | | +| `hierarchies[].subtype` | [`PlaceType`](../place_type.md) | | +| `hierarchies[].name` | [`StrippedString`](../../types/strings/stripped_string.md) | Primary name of the division | +| `parent_division_id` | [`Id`](../../types/references/id.md) (optional) | Division ID of this division's parent division. + +Not allowed for top-level divisions (countries) and required for all other divisions. + +The default parent division is the parent division as seen from the default political perspective, if there is one, and is otherwise chosen somewhat arbitrarily. The hierarchies property can be used to inspect the exhaustive list of parent divisions. | +| `admin_level` | [`AdminLevel`](../admin_level.md) (optional) | | +| `class` | [`DivisionClass`](division_class.md) (optional) | | +| `local_type` | [`CommonNames`](../../types/names/common_names.md) (map, optional) | Local name for the subtype property, optionally localized. + +For example, the Canadian province of Quebec has the subtype 'region', but in the local administrative hierarchy it is referred to as a 'province'. Similarly, the Canadian Yukon territory also has subtype 'region', but is locally called a 'territory'. + +This property is localized using a standard Overture names structure. So for example, in Switzerland the top-level administrative subdivision corresponding to subtype 'region' is the canton, which is may be translated in each of Switzerland's official languages as, 'canton' in French, 'kanton' in German, 'cantone' in Italian, and 'chantun' in Romansh. | +| `region` | [`RegionCode`](../../types/strings/region_code.md) (optional) | ISO 3166-2 principal subdivision code of the subdivision-like entity this division represents or belongs to. + +If the entity this division represents has a principal subdivision code, the region property contains it. If it does not, the region property contains the principal subdivision code of the first division encountered by traversing the parent_division_id chain to the root. + +For example: + - The region value for the United States is omitted. + - The region value for the U.S. state of New York is 'US-NY'. + - The region value for New York City is 'US-NY', which it + inherits from the state of New York. + - The region value for Puerto Rico is 'US-PR'. | +| `perspectives` | [`Perspectives`](../../types/perspectives/perspectives.md) (optional) | Political perspectives from which this division is considered to be an accurate representation. + +If this property is absent, then this division is not known to be disputed from any political perspective. Consequently, there is only one division feature representing the entire real world entity. + +If this property is present, it means the division represents one of several alternative perspectives on the same real-world entity. + +There are two modes of perspective: + +1. `accepted_by` means the representation of the division is accepted by the listed entities and would be included on a map drawn from their perspective. + +2. `disputed_by` means the representation of the division is disputed by the listed entities and would be excluded from a map drawn from their perspective. + +When drawing a map from the perspective of a given country, one would start by gathering all the undisputed divisions (with no `perspectives` property), and then adding to that first all divisions explicitly accepted by the country, and second all divisions not explicitly disputed by the country. | +| `perspectives.mode` | [`PerspectiveMode`](../../types/perspectives/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | +| `perspectives.countries` | [`CountryCodeAlpha2`](../../types/strings/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | +| `norms` | [`Norms`](norms.md) (optional) | Collects information about local norms and rules within the division that are generally useful for mapping and map-related use cases. + +If the norms property or a desired sub-property of the norms property is missing on a division, but at least one of its ancestor divisions has the norms property and the desired sub-property, then the value from the nearest ancestor division may be assumed. | +| `norms.driving_side` | [`Side`](../../types/scoping/side.md) (optional) | Side of the road on which vehicles drive in the division. | | `population` | `int32` (optional) | Population of the division | -| `capital_division_ids` | `list` (optional) | Division IDs of this division's capital divisions. If present, this property will refer to the division IDs of the capital cities, county seats, etc. of a division. | -| `capital_of_divisions` | `list` (optional) | Division IDs and subtypes of divisions this division is a capital of. | -| `capital_of_divisions.division_id` | `string` | | -| `capital_of_divisions.subtype` | `string` ([PlaceType](../place_type)) | Examples: `country`, `dependency`, `macroregion`, ... | -| `wikidata` | `string` (optional) | | +| `capital_division_ids` | [`Id`](../../types/references/id.md) (list, optional) | Division IDs of this division's capital divisions. If present, this property will refer to the division IDs of the capital cities, county seats, etc. of a division. | +| `capital_of_divisions[]` | `list<`[`CapitalOfDivisionItem`](capital_of_division_item.md)`>` (optional) | Division IDs and subtypes of divisions this division is a capital of. | +| `capital_of_divisions[].division_id` | [`DivisionId`](../division_id.md) | | +| `capital_of_divisions[].subtype` | [`PlaceType`](../place_type.md) | | +| `wikidata` | [`WikidataId`](../../types/strings/wikidata_id.md) (optional) | | ## Examples | Column | Value | |-------:|-------| -| `geometry` | `POINT (-175.2551522 -21.1353686)` | +| `cartography.prominence` | `29` | +| `cartography.min_zoom` | `null` | +| `cartography.max_zoom` | `null` | +| `cartography.sort_key` | `null` | +| `names.primary` | Sia'atoutai | | `names.common` | `null` | -| `names.primary` | `Sia'atoutai` | -| `names.rules[0].between` | `null` | -| `names.rules[0].language` | `null` | -| `names.rules[0].perspectives` | `null` | -| `names.rules[0].side` | `null` | -| `names.rules[0].value` | `Nafualu` | -| `names.rules[0].variant` | `alternate` | -| `subtype` | `locality` | -| `country` | `TO` | -| `hierarchies[0].hierarchies[0].division_id` | `fef8748b-0c91-46ad-9f2d-976d8d2de3e9` | -| `hierarchies[0].hierarchies[0].name` | `Tonga` | -| `hierarchies[0].hierarchies[0].subtype` | `country` | -| `hierarchies[0].hierarchies[1].division_id` | `4d67561a-2292-41bd-8996-7853d276a42c` | -| `hierarchies[0].hierarchies[1].name` | `Tongatapu` | -| `hierarchies[0].hierarchies[1].subtype` | `region` | -| `hierarchies[0].hierarchies[2].division_id` | `8730f0cc-d436-4f11-a7d3-49085813ef44` | -| `hierarchies[0].hierarchies[2].name` | `Vahe Kolomotu'a` | -| `hierarchies[0].hierarchies[2].subtype` | `county` | -| `hierarchies[0].hierarchies[3].division_id` | `350e85f6-68ba-4114-9906-c2844815988b` | -| `hierarchies[0].hierarchies[3].name` | `Sia'atoutai` | -| `hierarchies[0].hierarchies[3].subtype` | `locality` | -| `parent_division_id` | `8730f0cc-d436-4f11-a7d3-49085813ef44` | -| `local_type.en` | `village` | -| `region` | `TO-04` | +| `id` | 350e85f6-68ba-4114-9906-c2844815988b | +| `geometry` | POINT (-175.2551522 -21.1353686) | +| `theme` | divisions | +| `type` | division | +| `version` | `1` | +| `sources[0].property` | | +| `sources[0].dataset` | OpenStreetMap | +| `sources[0].record_id` | n3173231082@4 | +| `sources[0].update_time` | 2014-12-18T09:17:03Z | +| `sources[0].confidence` | `null` | +| `sources[0].between` | `null` | +| `subtype` | locality | +| `country` | TO | +| `hierarchies[0][0].division_id` | fef8748b-0c91-46ad-9f2d-976d8d2de3e9 | +| `hierarchies[0][0].subtype` | country | +| `hierarchies[0][0].name` | Tonga | +| `hierarchies[0][1].division_id` | 4d67561a-2292-41bd-8996-7853d276a42c | +| `hierarchies[0][1].subtype` | region | +| `hierarchies[0][1].name` | Tongatapu | +| `hierarchies[0][2].division_id` | 8730f0cc-d436-4f11-a7d3-49085813ef44 | +| `hierarchies[0][2].subtype` | county | +| `hierarchies[0][2].name` | Vahe Kolomotu'a | +| `hierarchies[0][3].division_id` | 350e85f6-68ba-4114-9906-c2844815988b | +| `hierarchies[0][3].subtype` | locality | +| `hierarchies[0][3].name` | Sia'atoutai | +| `parent_division_id` | 8730f0cc-d436-4f11-a7d3-49085813ef44 | +| `class` | village | +| `local_type.en` | village | +| `region` | TO-04 | | `perspectives` | `null` | | `norms` | `null` | | `population` | `534` | | `capital_division_ids` | `null` | | `capital_of_divisions` | `null` | | `wikidata` | `null` | -| `cartography.max_zoom` | `null` | -| `cartography.min_zoom` | `null` | -| `cartography.prominence` | `29` | -| `cartography.sort_key` | `null` | -| `class` | `village` | -| `id` | `350e85f6-68ba-4114-9906-c2844815988b` | -| `sources[0].between` | `null` | -| `sources[0].confidence` | `null` | -| `sources[0].dataset` | `OpenStreetMap` | -| `sources[0].property` | | -| `sources[0].record_id` | `n3173231082@4` | -| `sources[0].update_time` | `2014-12-18T09:17:03Z` | -| `theme` | `divisions` | -| `type` | `division` | -| `version` | `1` | +| `names.rules[0].variant` | alternate | +| `names.rules[0].language` | `null` | +| `names.rules[0].perspectives` | `null` | +| `names.rules[0].value` | Nafualu | +| `names.rules[0].between` | `null` | +| `names.rules[0].side` | `null` | diff --git a/docs/schema/reference/divisions/division_class.md b/docs/schema/reference/divisions/division/division_class.md similarity index 100% rename from docs/schema/reference/divisions/division_class.md rename to docs/schema/reference/divisions/division/division_class.md diff --git a/docs/schema/reference/divisions/division/hierarchy.md b/docs/schema/reference/divisions/division/hierarchy.md new file mode 100644 index 000000000..08d54721f --- /dev/null +++ b/docs/schema/reference/divisions/division/hierarchy.md @@ -0,0 +1,6 @@ +# Hierarchy (`list`) + +## Constraints + +- `MinLen(min_length=1)` +- `UniqueItemsConstraint` diff --git a/docs/schema/reference/divisions/division/hierarchy_item.md b/docs/schema/reference/divisions/division/hierarchy_item.md new file mode 100644 index 000000000..eff40fb39 --- /dev/null +++ b/docs/schema/reference/divisions/division/hierarchy_item.md @@ -0,0 +1,11 @@ +# HierarchyItem + +One division in a hierarchy. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `division_id` | [`DivisionId`](../division_id.md) | | +| `subtype` | [`PlaceType`](../place_type.md) | | +| `name` | [`StrippedString`](../../types/strings/stripped_string.md) | Primary name of the division | diff --git a/docs/schema/reference/divisions/division/norms.md b/docs/schema/reference/divisions/division/norms.md index b6d2bd20c..774fdcde3 100644 --- a/docs/schema/reference/divisions/division/norms.md +++ b/docs/schema/reference/divisions/division/norms.md @@ -6,4 +6,4 @@ Local norms and standards. | Name | Type | Description | |-----:|:----:|-------------| -| `driving_side` | `string` ([Side](/schema/codegen/divisions/Names/side/)) (optional) | Side of the road on which vehicles drive in the division. Examples: `left`, `right` | +| `driving_side` | [`Side`](../../types/scoping/side.md) (optional) | Side of the road on which vehicles drive in the division. | diff --git a/docs/schema/reference/divisions/division_area/_category_.json b/docs/schema/reference/divisions/division_area/_category_.json new file mode 100644 index 000000000..beafbd108 --- /dev/null +++ b/docs/schema/reference/divisions/division_area/_category_.json @@ -0,0 +1,3 @@ +{ + "label": "Division Area" +} diff --git a/docs/schema/reference/divisions/division_area/division_area.md b/docs/schema/reference/divisions/division_area/division_area.md index ed8642798..4e8492c1b 100644 --- a/docs/schema/reference/divisions/division_area/division_area.md +++ b/docs/schema/reference/divisions/division_area/division_area.md @@ -12,60 +12,83 @@ belongs to. | Name | Type | Description | |-----:|:----:|-------------| -| `names` | `object` (`[Names](../../Names/names)`) | | -| `names.primary` | `string` | The most commonly used name. | -| `names.common` | `object` (optional) | | -| `names.rules[]` | `list` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | -| `names.rules[].side` | `string` ([Side](../Names/side)) (optional) | Examples: `left`, `right` | -| `names.rules[].between` | `list` (optional) | | -| `names.rules[].value` | `string` | | -| `names.rules[].variant` | `string` ([NameVariant](../Names/name_variant)) | Examples: `common`, `official`, `alternate`, ... | -| `names.rules[].language` | `string` (optional) | | -| `names.rules[].perspectives` | `object` (`[Perspectives](../../Names/perspectives)`) (optional) | | -| `names.rules[].perspectives.mode` | `string` ([PerspectiveMode](../Names/perspective_mode)) | Whether the perspective holder accepts or disputes this name. Examples: `accepted_by`, `disputed_by` | -| `names.rules[].perspectives.countries` | `list` | Countries holding the given mode of perspective. | -| `id` | `string` | | +| `names` | [`Names`](../../types/names/names.md) | | +| `names.primary` | [`StrippedString`](../../types/strings/stripped_string.md) | The most commonly used name. | +| `names.common` | [`CommonNames`](../../types/names/common_names.md) (map, optional) | | +| `names.rules[]` | `list<`[`NameRule`](../../types/names/name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | +| `names.rules[].value` | [`StrippedString`](../../types/strings/stripped_string.md) | The actual name value. | +| `names.rules[].variant` | [`NameVariant`](../../types/names/name_variant.md) | The name variant for this name rule. | +| `names.rules[].language` | [`LanguageTag`](../../types/strings/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 +language tag. | +| `names.rules[].perspectives` | [`Perspectives`](../../types/perspectives/perspectives.md) (optional) | | +| `names.rules[].perspectives.mode` | [`PerspectiveMode`](../../types/perspectives/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | +| `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../../types/strings/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | +| `names.rules[].between` | [`LinearlyReferencedRange`](../../types/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | +| `names.rules[].side` | [`Side`](../../types/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | +| `id` | [`Id`](../../types/references/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | +| `bbox` | `bbox` (optional) | An optional bounding box for the feature | +| `geometry` | `geometry` | The area covered by the division with which this area feature is associated | | `theme` | `"divisions"` | | | `type` | `"division_area"` | | -| `geometry` | `geometry` | The area covered by the division with which this area feature is associated | -| `version` | `int32` | | -| `sources[]` | `list` (optional) | | -| `sources[].between` | `list` (optional) | | -| `sources[].property` | `string` | | -| `sources[].dataset` | `string` | | -| `sources[].record_id` | `string` (optional) | Refers to the specific record within the dataset that was used. | -| `sources[].update_time` | `string` (optional) | | -| `sources[].confidence` | `float64` (optional) | | -| `subtype` | `string` ([PlaceType](../place_type)) | Examples: `country`, `dependency`, `macroregion`, ... | -| `class` | `string` ([AreaClass](area_class)) | Examples: `land`, `maritime` | +| `version` | [`FeatureVersion`](../../types/core_types/feature_version.md) | | +| `sources[]` | [`Sources`](../../types/sources/sources.md) (list, optional) | | +| `sources[].property` | [`JsonPointer`](../../types/strings/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to. + +The root document value `""` indicates that this source information applies to the +entire feature, excepting properties (fields) for which a dedicated source information +record exists. + +Any other JSON Pointer apart from `""` indicates that this source record provides +dedicated source information for the property at the path in the JSON Pointer. As an +example, the value `"/names/common/en"` indicates that the source information applies to +the English common name of a named feature, while the value `"/geometry"` indicates that +it applies to the feature geometry. | +| `sources[].dataset` | `string` | Name of the dataset where the source data can be found. | +| `sources[].license` | [`StrippedString`](../../types/strings/stripped_string.md) (optional) | Source data license name. + +This should be a valid SPDX license identifier when available. + +If omitted, contact the data provider for more license information. | +| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can +be found. + +The format of record identifiers is dataset-specific. | +| `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | +| `sources[].confidence` | [`ConfidenceScore`](../../types/core_types/confidence_score.md) (optional) | Confidence value from the source dataset. + +This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | +| `sources[].between` | [`LinearlyReferencedRange`](../../types/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | +| `subtype` | [`PlaceType`](../place_type.md) | | +| `class` | [`AreaClass`](area_class.md) | | | `is_land` | `boolean` (optional) | A boolean to indicate whether or not the feature geometry represents the land-clipped, non-maritime boundary. The geometry can be used for map rendering, cartographic display, and similar purposes. | | `is_territorial` | `boolean` (optional) | A boolean to indicate whether or not the feature geometry represents Overture's best approximation of this place's maritime boundary. For coastal places, this would tend to include the water area. The geometry can be used for data processing, reverse-geocoding, and similar purposes. | -| `division_id` | `string` | Division ID of the division this area belongs to. | -| `country` | `string` | ISO 3166-1 alpha-2 country code of the division this area belongs to. | -| `region` | `string` (optional) | ISO 3166-2 principal subdivision code of the division this area belongs to. | +| `division_id` | [`Id`](../../types/references/id.md) | Division ID of the division this area belongs to. | +| `country` | [`CountryCodeAlpha2`](../../types/strings/country_code_alpha2.md) | ISO 3166-1 alpha-2 country code of the division this area belongs to. | +| `region` | [`RegionCode`](../../types/strings/region_code.md) (optional) | ISO 3166-2 principal subdivision code of the division this area belongs to. | +| `admin_level` | [`AdminLevel`](../admin_level.md) (optional) | | ## Examples | Column | Value | |-------:|-------| -| `geometry` | `POLYGON ((-178.950516 -17.3431421, -178.9509773 -17.3430806, -178.9523774 -17.3428912, -178.9524762 ...` | +| `names.primary` | ʻEua | | `names.common` | `null` | -| `names.primary` | `Susui` | | `names.rules` | `null` | -| `subtype` | `locality` | -| `is_land` | `true` | -| `is_territorial` | `true` | -| `division_id` | `8183f909-ed92-49f0-90fe-10a35adad6ed` | -| `country` | `FJ` | -| `region` | `FJ-E` | -| `class` | `land` | -| `id` | `7080b91a-d015-4506-8a24-f57c978b54c2` | -| `sources[0].between` | `null` | -| `sources[0].confidence` | `null` | -| `sources[0].dataset` | `OpenStreetMap` | +| `id` | eb9b112f-ec3c-47f7-b519-6f9f2e6fc2bd | +| `geometry` | MULTIPOLYGON (((-174.9553949 -21.4730179, -174.9514163 -21.4719978, -174.9520108 -21.4681253, -174.9... | +| `theme` | divisions | +| `type` | division_area | +| `version` | `2` | | `sources[0].property` | | -| `sources[0].record_id` | `w399511500@2` | -| `sources[0].update_time` | `2018-08-20T18:24:58Z` | -| `theme` | `divisions` | -| `type` | `division_area` | -| `version` | `1` | +| `sources[0].dataset` | OpenStreetMap | +| `sources[0].record_id` | r7247527@3 | +| `sources[0].update_time` | 2020-12-30T18:41:56Z | +| `sources[0].confidence` | `null` | +| `sources[0].between` | `null` | +| `subtype` | region | +| `class` | land | +| `is_land` | `true` | +| `is_territorial` | `false` | +| `division_id` | 21597af0-b564-463c-a356-42c29e712b7d | +| `country` | TO | +| `region` | TO-01 | diff --git a/docs/schema/reference/divisions/division_boundary/_category_.json b/docs/schema/reference/divisions/division_boundary/_category_.json new file mode 100644 index 000000000..e7a1d5c2d --- /dev/null +++ b/docs/schema/reference/divisions/division_boundary/_category_.json @@ -0,0 +1,3 @@ +{ + "label": "Division Boundary" +} diff --git a/docs/schema/reference/divisions/division_boundary/boundary_class.md b/docs/schema/reference/divisions/division_boundary/boundary_class.md index d9792f9f3..64f1aebd9 100644 --- a/docs/schema/reference/divisions/division_boundary/boundary_class.md +++ b/docs/schema/reference/divisions/division_boundary/boundary_class.md @@ -1,7 +1,5 @@ # BoundaryClass -An enumeration. - ## Values - `land` diff --git a/docs/schema/reference/divisions/division_boundary/division_boundary.md b/docs/schema/reference/divisions/division_boundary/division_boundary.md index 766218107..3c315503f 100644 --- a/docs/schema/reference/divisions/division_boundary/division_boundary.md +++ b/docs/schema/reference/divisions/division_boundary/division_boundary.md @@ -8,57 +8,114 @@ Some boundaries may be disputed by the divisions on one or both sides. | Name | Type | Description | |-----:|:----:|-------------| -| `id` | `string` | | +| `id` | [`Id`](../../types/references/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | +| `bbox` | `bbox` (optional) | An optional bounding box for the feature | +| `geometry` | `geometry` | Boundary line or lines | | `theme` | `"divisions"` | | | `type` | `"division_boundary"` | | -| `geometry` | `geometry` | Boundary line or lines | -| `version` | `int32` | | -| `sources[]` | `list` (optional) | | -| `sources[].between` | `list` (optional) | | -| `sources[].property` | `string` | | -| `sources[].dataset` | `string` | | -| `sources[].record_id` | `string` (optional) | Refers to the specific record within the dataset that was used. | -| `sources[].update_time` | `string` (optional) | | -| `sources[].confidence` | `float64` (optional) | | -| `subtype` | `string` ([PlaceType](../place_type)) | Examples: `country`, `dependency`, `macroregion`, ... | -| `class` | `string` ([BoundaryClass](boundary_class)) | Examples: `land`, `maritime` | -| `is_land` | `boolean` (optional) | A boolean to indicate whether or not the feature geometry represents the land-clipped, non-maritime boundary. The geometry can be used for map rendering, cartographic display, and similar purposes. | -| `is_territorial` | `boolean` (optional) | A boolean to indicate whether or not the feature geometry represents Overture's best approximation of this place's maritime boundary. For coastal places, this would tend to include the water area. The geometry can be used for data processing, reverse-geocoding, and similar purposes. | -| `division_ids` | `list` | Identifies the two divisions to the left and right, respectively, of the boundary line. The left- and right-hand sides of the boundary are considered from the perspective of a person standing on the line facing in the direction in which the geometry is oriented, i.e. facing toward the end of the line. The first array element is the Overture ID of the left division. The second element is the Overture ID of the right division. | -| `country` | `string` (optional) | ISO 3166-1 alpha-2 country code of the country or country-like entity that both sides of the boundary share. This property will be present on boundaries between two regions, counties, or similar entities within the same country, but will not be present on boundaries between two countries or country-like entities. | -| `region` | `string` (optional) | ISO 3166-2 principal subdivision code of the subdivision-like entity that both sides of the boundary share. This property will be present on boundaries between two counties, localadmins or similar entities within the same principal subdivision, but will not be present on boundaries between different principal subdivisions or countries. | -| `is_disputed` | `boolean` (optional) | Indicator if there are entities disputing this division boundary. Information about entities disputing this boundary should be included in perspectives property. This property should also be true if boundary between two entities is unclear and this is "best guess". So having it true and no perspectives gives map creators reason not to fully trust the boundary, but use it if they have no other. | -| `perspectives` | `object` (`[Perspectives](../../Names/perspectives)`) (optional) | Political perspectives from which this division boundary is considered to be an accurate representation. If this property is absent, then this boundary is not known to be disputed from any political perspective. Consequently, there is only one boundary feature representing the entire real world entity. If this property is present, it means the boundary represents one of several alternative perspectives on the same real-world entity. There are two modes of perspective: 1. `accepted_by` means the representation of the boundary is accepted by the listed entities and would be included on a map drawn from their perspective. 2. `disputed_by` means the representation of the boundary is disputed by the listed entities and would be excluded from a map drawn from their perspective. When drawing a map from the perspective of a given country, one would start by gathering all the undisputed boundary (with no `perspectives` property), and then adding to that first all boundary explicitly accepted by the country, and second all boundary not explicitly disputed by the country. | -| `perspectives.mode` | `string` ([PerspectiveMode](../../Names/perspective_mode)) | Whether the perspective holder accepts or disputes this name. Examples: `accepted_by`, `disputed_by` | -| `perspectives.countries` | `list` | Countries holding the given mode of perspective. | +| `version` | [`FeatureVersion`](../../types/core_types/feature_version.md) | | +| `sources[]` | [`Sources`](../../types/sources/sources.md) (list, optional) | | +| `sources[].property` | [`JsonPointer`](../../types/strings/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to. + +The root document value `""` indicates that this source information applies to the +entire feature, excepting properties (fields) for which a dedicated source information +record exists. + +Any other JSON Pointer apart from `""` indicates that this source record provides +dedicated source information for the property at the path in the JSON Pointer. As an +example, the value `"/names/common/en"` indicates that the source information applies to +the English common name of a named feature, while the value `"/geometry"` indicates that +it applies to the feature geometry. | +| `sources[].dataset` | `string` | Name of the dataset where the source data can be found. | +| `sources[].license` | [`StrippedString`](../../types/strings/stripped_string.md) (optional) | Source data license name. + +This should be a valid SPDX license identifier when available. + +If omitted, contact the data provider for more license information. | +| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can +be found. + +The format of record identifiers is dataset-specific. | +| `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | +| `sources[].confidence` | [`ConfidenceScore`](../../types/core_types/confidence_score.md) (optional) | Confidence value from the source dataset. + +This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | +| `sources[].between` | [`LinearlyReferencedRange`](../../types/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | +| `subtype` | [`PlaceType`](../place_type.md) | | +| `class` | [`BoundaryClass`](boundary_class.md) | | +| `is_land` | `boolean` (optional) | A boolean to indicate whether or not the feature geometry represents the +land-clipped, non-maritime boundary. The geometry can be used for map +rendering, cartographic display, and similar purposes. | +| `is_territorial` | `boolean` (optional) | A boolean to indicate whether or not the feature geometry represents +Overture's best approximation of this place's maritime boundary. For +coastal places, this would tend to include the water area. The geometry +can be used for data processing, reverse-geocoding, and similar purposes. | +| `division_ids` | [`Id`](../../types/references/id.md) (list) | Identifies the two divisions to the left and right, respectively, of the boundary line. The left- and right-hand sides of the boundary are considered from the perspective of a person standing on the line facing in the direction in which the geometry is oriented, i.e. facing toward the end of the line. + +The first array element is the Overture ID of the left division. The second element is the Overture ID of the right division. | +| `country` | [`CountryCodeAlpha2`](../../types/strings/country_code_alpha2.md) (optional) | ISO 3166-1 alpha-2 country code of the country or country-like +entity that both sides of the boundary share. + +This property will be present on boundaries between two regions, counties, +or similar entities within the same country, but will not be present on boundaries +between two countries or country-like entities. | +| `region` | [`RegionCode`](../../types/strings/region_code.md) (optional) | ISO 3166-2 principal subdivision code of the subdivision-like +entity that both sides of the boundary share. + +This property will be present on boundaries between two counties, localadmins +or similar entities within the same principal subdivision, but will not be +present on boundaries between different principal subdivisions or countries. | +| `admin_level` | [`AdminLevel`](../admin_level.md) (optional) | | +| `is_disputed` | `boolean` (optional) | Indicator if there are entities disputing this division boundary. +Information about entities disputing this boundary should be included in perspectives +property. + +This property should also be true if boundary between two entities is unclear +and this is "best guess". So having it true and no perspectives gives map creators +reason not to fully trust the boundary, but use it if they have no other. | +| `perspectives` | [`Perspectives`](../../types/perspectives/perspectives.md) (optional) | Political perspectives from which this division boundary is considered to be an accurate representation. + +If this property is absent, then this boundary is not known to be disputed from any political perspective. Consequently, there is only one boundary feature representing the entire real world entity. + +If this property is present, it means the boundary represents one of several alternative perspectives on the same real-world entity. + +There are two modes of perspective: + + 1. `accepted_by` means the representation of the boundary is accepted by the listed entities and would be included on a map drawn from their perspective. + + 2. `disputed_by` means the representation of the boundary is disputed by the listed entities and would be excluded from a map drawn from their perspective. + +When drawing a map from the perspective of a given country, one would start by gathering all the undisputed boundary (with no `perspectives` property), and then adding to that first all boundary explicitly accepted by the country, and second all boundary not explicitly disputed by the country. | +| `perspectives.mode` | [`PerspectiveMode`](../../types/perspectives/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | +| `perspectives.countries` | [`CountryCodeAlpha2`](../../types/strings/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | ## Examples | Column | Value | |-------:|-------| -| `geometry` | `LINESTRING (-147.064823 -15.4231537, -147.0519131 -15.2885069, -147.048482 -15.1511701)` | -| `subtype` | `county` | +| `id` | 2bdf68e4-860d-3d8c-a472-ccf439a5302a | +| `geometry` | LINESTRING (-147.064823 -15.4231537, -147.0519131 -15.2885069, -147.048482 -15.1511701) | +| `theme` | divisions | +| `type` | division_boundary | +| `version` | `1` | +| `sources[0].property` | | +| `sources[0].dataset` | OpenStreetMap | +| `sources[0].record_id` | r6063055@9 | +| `sources[0].update_time` | 2023-07-20T00:28:40Z | +| `sources[0].confidence` | `null` | +| `sources[0].between` | `null` | +| `sources[1].property` | | +| `sources[1].dataset` | OpenStreetMap | +| `sources[1].record_id` | r6063063@12 | +| `sources[1].update_time` | 2023-07-20T00:28:40Z | +| `sources[1].confidence` | `null` | +| `sources[1].between` | `null` | +| `subtype` | county | +| `class` | maritime | | `is_land` | `false` | | `is_territorial` | `true` | | `division_ids` | `[ae266459-63a4-4508-8295-0101e27d039b, d4a6873d-885a-4f2a-bc0f-37e9d9e874e4]` | -| `country` | `PF` | +| `country` | PF | | `region` | `null` | | `is_disputed` | `false` | | `perspectives` | `null` | -| `class` | `maritime` | -| `id` | `2bdf68e4-860d-3d8c-a472-ccf439a5302a` | -| `sources[0].between` | `null` | -| `sources[0].confidence` | `null` | -| `sources[0].dataset` | `OpenStreetMap` | -| `sources[0].property` | | -| `sources[0].record_id` | `r6063055@9` | -| `sources[0].update_time` | `2023-07-20T00:28:40Z` | -| `sources[1].between` | `null` | -| `sources[1].confidence` | `null` | -| `sources[1].dataset` | `OpenStreetMap` | -| `sources[1].property` | | -| `sources[1].record_id` | `r6063063@12` | -| `sources[1].update_time` | `2023-07-20T00:28:40Z` | -| `theme` | `divisions` | -| `type` | `division_boundary` | -| `version` | `1` | diff --git a/docs/schema/reference/divisions/division_id.md b/docs/schema/reference/divisions/division_id.md new file mode 100644 index 000000000..74c41ef32 --- /dev/null +++ b/docs/schema/reference/divisions/division_id.md @@ -0,0 +1,7 @@ +# DivisionId (`string`) + +## Constraints + +- `MinLen(min_length=1)` +- `MinLen(min_length=1)` (from [`Id`](../types/references/id.md)) +- `NoWhitespaceConstraint` diff --git a/docs/schema/reference/divisions/hierarchy_item.md b/docs/schema/reference/divisions/hierarchy_item.md deleted file mode 100644 index d3f14f222..000000000 --- a/docs/schema/reference/divisions/hierarchy_item.md +++ /dev/null @@ -1,11 +0,0 @@ -# HierarchyItem - -One division in a hierarchy. - -## Fields - -| Name | Type | Description | -|-----:|:----:|-------------| -| `division_id` | `string` | | -| `subtype` | `string` ([PlaceType](/schema/codegen/divisions/hierarchy_item/place_type/)) | Examples: `country`, `dependency`, `macroregion`, ... | -| `name` | `string` | Primary name of the division | diff --git a/docs/schema/reference/divisions/place_type.md b/docs/schema/reference/divisions/place_type.md index b8537226d..b063847af 100644 --- a/docs/schema/reference/divisions/place_type.md +++ b/docs/schema/reference/divisions/place_type.md @@ -1,7 +1,7 @@ # PlaceType -Category of the division from a finite, hierarchical, ordered list of categories -(e.g. country, region, locality, etc.) similar to a Who's on First placetype. +Category of the division from a finite, hierarchical, ordered list of categories (e.g., country, +region, locality, etc.) similar to a Who's on First placetype. ## Values diff --git a/docs/schema/reference/places/place/_category_.json b/docs/schema/reference/places/place/_category_.json new file mode 100644 index 000000000..d224a3b9e --- /dev/null +++ b/docs/schema/reference/places/place/_category_.json @@ -0,0 +1,3 @@ +{ + "label": "Place" +} diff --git a/docs/schema/reference/places/place/brand.md b/docs/schema/reference/places/place/brand.md index f6fb01f81..f0cd98464 100644 --- a/docs/schema/reference/places/place/brand.md +++ b/docs/schema/reference/places/place/brand.md @@ -1,24 +1,24 @@ # Brand -The brand of the place. +A brand associated with a place. -A location with multiple brands is modeled as multiple separate places, each with -its own brand. +A location with multiple brands is modeled as multiple separate places, each with its own brand. ## Fields | Name | Type | Description | |-----:|:----:|-------------| -| `names` | `object` (`[Names](../../Names/names)`) (optional) | | -| `names.primary` | `string` | The most commonly used name. | -| `names.common` | `object` (optional) | | -| `names.rules[]` | `list` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | -| `names.rules[].side` | `string` ([Side](../../Names/side)) (optional) | Examples: `left`, `right` | -| `names.rules[].between` | `list` (optional) | | -| `names.rules[].value` | `string` | | -| `names.rules[].variant` | `string` ([NameVariant](../../Names/name_variant)) | Examples: `common`, `official`, `alternate`, ... | -| `names.rules[].language` | `string` (optional) | | -| `names.rules[].perspectives` | `object` (`[Perspectives](../../Names/perspectives)`) (optional) | | -| `names.rules[].perspectives.mode` | `string` ([PerspectiveMode](../../Names/perspective_mode)) | Whether the perspective holder accepts or disputes this name. Examples: `accepted_by`, `disputed_by` | -| `names.rules[].perspectives.countries` | `list` | Countries holding the given mode of perspective. | -| `wikidata` | `string` (optional) | | +| `names` | [`Names`](../../types/names/names.md) (optional) | | +| `names.primary` | [`StrippedString`](../../types/strings/stripped_string.md) | The most commonly used name. | +| `names.common` | [`CommonNames`](../../types/names/common_names.md) (map, optional) | | +| `names.rules[]` | `list<`[`NameRule`](../../types/names/name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | +| `names.rules[].value` | [`StrippedString`](../../types/strings/stripped_string.md) | The actual name value. | +| `names.rules[].variant` | [`NameVariant`](../../types/names/name_variant.md) | The name variant for this name rule. | +| `names.rules[].language` | [`LanguageTag`](../../types/strings/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 +language tag. | +| `names.rules[].perspectives` | [`Perspectives`](../../types/perspectives/perspectives.md) (optional) | | +| `names.rules[].perspectives.mode` | [`PerspectiveMode`](../../types/perspectives/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | +| `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../../types/strings/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | +| `names.rules[].between` | [`LinearlyReferencedRange`](../../types/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | +| `names.rules[].side` | [`Side`](../../types/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | +| `wikidata` | [`WikidataId`](../../types/strings/wikidata_id.md) (optional) | | diff --git a/docs/schema/reference/places/place/categories.md b/docs/schema/reference/places/place/categories.md index 21cf70166..55b958782 100644 --- a/docs/schema/reference/places/place/categories.md +++ b/docs/schema/reference/places/place/categories.md @@ -1,13 +1,15 @@ # Categories -The categories of the place. +Categories a place belongs to. -Complete list is available on -GitHub: https://github.com/OvertureMaps/schema/blob/main/docs/schema/concepts/by-theme/places/overture_categories.csv +Complete list is available on GitHub: https://github.com/OvertureMaps/schema/blob/main/docs/schema/concepts/by-theme/places/overture_categories.csv ## Fields | Name | Type | Description | |-----:|:----:|-------------| -| `primary` | `string` | The primary or main category of the place. | -| `alternate` | `list` (optional) | Alternate categories of the place. Some places might fit into two categories, e.g. a book store and a coffee shop. In such a case, the primary category can be augmented with additional applicable categories. | +| `primary` | [`SnakeCaseString`](../../types/strings/snake_case_string.md) | The primary or main category of the place. | +| `alternate` | [`SnakeCaseString`](../../types/strings/snake_case_string.md) (list, optional) | Alternate categories of the place. + +Some places might fit into two categories, e.g., a book store and a coffee shop. In +these cases, the primary category can be augmented with additional categories. | diff --git a/docs/schema/reference/places/place/operating_status.md b/docs/schema/reference/places/place/operating_status.md new file mode 100644 index 000000000..45e8aa18d --- /dev/null +++ b/docs/schema/reference/places/place/operating_status.md @@ -0,0 +1,15 @@ +# OperatingStatus + +General indication of whether a place is: in continued operation, in a temporary operating +hiatus, or closed permanently. + +Operating status should not be confused with opening hours or operating hours. In particular, +the status `"open"` does not mean the place is open *right now*, it means that in general the +place is continuing to operate normally, as opposed to being in an operating hiatus +(`"temporarily_closed"`) or shuttered (`"permanently_closed"`). + +## Values + +- `open` +- `permanently_closed` +- `temporarily_closed` diff --git a/docs/schema/reference/places/place/place.md b/docs/schema/reference/places/place/place.md index 85ab4d6c2..96443acd7 100644 --- a/docs/schema/reference/places/place/place.md +++ b/docs/schema/reference/places/place/place.md @@ -1,86 +1,181 @@ # Place -A Place is a point representation of a real-world facility, service, or amenity. - -Place features are compatible with GeoJSON Point features. +Places are point representations of real-world facilities, businesses, services, or amenities. ## Fields | Name | Type | Description | |-----:|:----:|-------------| -| `names` | `object` (`[Names](../../Names/names)`) (optional) | | -| `names.primary` | `string` | The most commonly used name. | -| `names.common` | `object` (optional) | | -| `names.rules[]` | `list` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | -| `names.rules[].side` | `string` ([Side](../../Names/side)) (optional) | Examples: `left`, `right` | -| `names.rules[].between` | `list` (optional) | | -| `names.rules[].value` | `string` | | -| `names.rules[].variant` | `string` ([NameVariant](../../Names/name_variant)) | Examples: `common`, `official`, `alternate`, ... | -| `names.rules[].language` | `string` (optional) | | -| `names.rules[].perspectives` | `object` (`[Perspectives](../../Names/perspectives)`) (optional) | | -| `names.rules[].perspectives.mode` | `string` ([PerspectiveMode](../../Names/perspective_mode)) | Whether the perspective holder accepts or disputes this name. Examples: `accepted_by`, `disputed_by` | -| `names.rules[].perspectives.countries` | `list` | Countries holding the given mode of perspective. | -| `id` | `string` | | +| `id` | [`Id`](../../types/references/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | +| `bbox` | `bbox` (optional) | An optional bounding box for the feature | +| `geometry` | `geometry` | Position of the place. Places are point geometries. | | `theme` | `"places"` | | | `type` | `"place"` | | -| `geometry` | `geometry` | Position of the place | -| `version` | `int32` | | -| `sources[]` | `list` (optional) | | -| `sources[].between` | `list` (optional) | | -| `sources[].property` | `string` | | -| `sources[].dataset` | `string` | | -| `sources[].record_id` | `string` (optional) | Refers to the specific record within the dataset that was used. | -| `sources[].update_time` | `string` (optional) | | -| `sources[].confidence` | `float64` (optional) | | -| `categories` | `object` (`[Categories](categories)`) (optional) | | -| `categories.primary` | `string` | The primary or main category of the place. | -| `categories.alternate` | `list` (optional) | Alternate categories of the place. Some places might fit into two categories, e.g. a book store and a coffee shop. In such a case, the primary category can be augmented with additional applicable categories. | -| `confidence` | `float64` (optional) | The confidence of the existence of the place. It's a number between 0 and 1. 0 means that we're sure that the place doesn't exist (anymore). 1 means that we're sure that the place exists. If there's no value for the confidence, it means that we don't have any confidence information. | +| `version` | [`FeatureVersion`](../../types/core_types/feature_version.md) | | +| `sources[]` | [`Sources`](../../types/sources/sources.md) (list, optional) | | +| `sources[].property` | [`JsonPointer`](../../types/strings/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to. + +The root document value `""` indicates that this source information applies to the +entire feature, excepting properties (fields) for which a dedicated source information +record exists. + +Any other JSON Pointer apart from `""` indicates that this source record provides +dedicated source information for the property at the path in the JSON Pointer. As an +example, the value `"/names/common/en"` indicates that the source information applies to +the English common name of a named feature, while the value `"/geometry"` indicates that +it applies to the feature geometry. | +| `sources[].dataset` | `string` | Name of the dataset where the source data can be found. | +| `sources[].license` | [`StrippedString`](../../types/strings/stripped_string.md) (optional) | Source data license name. + +This should be a valid SPDX license identifier when available. + +If omitted, contact the data provider for more license information. | +| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can +be found. + +The format of record identifiers is dataset-specific. | +| `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | +| `sources[].confidence` | [`ConfidenceScore`](../../types/core_types/confidence_score.md) (optional) | Confidence value from the source dataset. + +This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | +| `sources[].between` | [`LinearlyReferencedRange`](../../types/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | +| `operating_status` | [`OperatingStatus`](operating_status.md) | An indication of whether a place is: in continued operation, in a temporary +operating hiatus, or closed permanently. + +This is not an indication of opening hours or that the place is open/closed at the +current time-of-day or day-of-week. + +When `operating_status` is `"permanently_closed"`, the `confidence` field will be +set to 0. | +| `categories` | [`Categories`](categories.md) (optional) | | +| `categories.primary` | [`SnakeCaseString`](../../types/strings/snake_case_string.md) | The primary or main category of the place. | +| `categories.alternate` | [`SnakeCaseString`](../../types/strings/snake_case_string.md) (list, optional) | Alternate categories of the place. + +Some places might fit into two categories, e.g., a book store and a coffee shop. In +these cases, the primary category can be augmented with additional categories. | +| `basic_category` | [`SnakeCaseString`](../../types/strings/snake_case_string.md) (optional) | The basic level category of a place. + +This field classifies places into categories at a level that most people find +intuitive. The full list of possible values it may hold can be found at (TODO). + +The basic level category, or simply basic category, is based on a cognitive science +model use in taxonomy and ontology development. The idea is to provide the category +name at the level of generality that is preferred by humans in learning and memory +tasks. This category to be roughly in the middle of the general-to-specific category +hierarchy. + +The full list of basic level categories is available at https://docs.overturemaps.org/guides/places/ | +| `taxonomy` | [`Taxonomy`](taxonomy.md) (optional) | A structured representation of the place's category within the Overture taxonomy. + +Provides the primary classification, full hierarchy path, and alternate categories. | +| `taxonomy.primary` | [`SnakeCaseString`](../../types/strings/snake_case_string.md) | +The primary, or most specific, category known about this place. + +The `primary` category value must always equal the last or rightmost entry in the `hierarchy` field. + | +| `taxonomy.hierarchy` | [`SnakeCaseString`](../../types/strings/snake_case_string.md) (list) | The full primary hierarchy of categories known for this place, ordered from most general to most specific. +An example hierarchy might be: `["food_and_drink", "restaurant", "casual_eatery", "gas_station_sushi"]`. + +The rightmost, or most specific, value in the `hierarchy` must always be equal to the `primary` field. +The basic level category of the place will typically be found in the middle of the primary hierarchy. +The primary hierarchy does not include any of the alternate categories found in the `alternates` field. | +| `taxonomy.alternates` | [`SnakeCaseString`](../../types/strings/snake_case_string.md) (list, optional) | Unordered list of additional categories that are known for this +place but that are not part of the primary category hierarchy. + +Alternate categories allow a more complete picture of the place +to be surfaced when it fits multiple unconnected branches in the +taxonomy. For example a gas station that also sells groceries +might have primary category of "gas_station" with an alternate +of "grocery_store". + +Alternate categories are not part of the primary hierarchy or +another alternate category's hierarchy. +In other words, if a category is a parent in the hierarchy of another category, +that category can't be a primary or alternate category itself. + +Note as well that this field is an unordered list of extra +categories and does not represent a hierarchy. | +| `confidence` | [`ConfidenceScore`](../../types/core_types/confidence_score.md) (optional) | A score between 0 and 1 indicating how confident we are that the place exists. + +A confidence score of 0 indicates that we are certain the place doesn't exist +anymore and will always be paired with an `operating_status` of +`"permanently_closed"`. + +A confidence score of 1 indicates that we are certain the place does exist. + +If there is no value for confidence, it means we don't have enough information on +which to estimate our confidence level. | | `websites` | `list` (optional) | The websites of the place. | | `socials` | `list` (optional) | The social media URLs of the place. | | `emails` | `list` (optional) | The email addresses of the place. | -| `phones` | `list` (optional) | The phone numbers of the place. | -| `brand` | `object` (`[Brand](brand)`) (optional) | | -| `brand.names` | `object` (`[Names](../../Names/names)`) (optional) | | -| `brand.wikidata` | `string` (optional) | | -| `addresses` | `list` (optional) | | -| `addresses.freeform` | `string` (optional) | Free-form address that contains street name, house number and other address info | -| `addresses.locality` | `string` (optional) | Name of the city or neighborhood where the address is located | -| `addresses.postcode` | `string` (optional) | Postal code where the address is located | -| `addresses.region` | `string` (optional) | | -| `addresses.country` | `string` (optional) | | +| `phones` | [`PhoneNumber`](../../types/strings/phone_number.md) (list, optional) | The phone numbers of the place. | +| `brand` | [`Brand`](brand.md) (optional) | The brand associated with the place. | +| `brand.names` | [`Names`](../../types/names/names.md) (optional) | | +| `brand.names.primary` | [`StrippedString`](../../types/strings/stripped_string.md) | The most commonly used name. | +| `brand.names.common` | [`CommonNames`](../../types/names/common_names.md) (map, optional) | | +| `brand.names.rules[]` | `list<`[`NameRule`](../../types/names/name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | +| `brand.names.rules[].value` | [`StrippedString`](../../types/strings/stripped_string.md) | The actual name value. | +| `brand.names.rules[].variant` | [`NameVariant`](../../types/names/name_variant.md) | The name variant for this name rule. | +| `brand.names.rules[].language` | [`LanguageTag`](../../types/strings/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 +language tag. | +| `brand.names.rules[].perspectives` | [`Perspectives`](../../types/perspectives/perspectives.md) (optional) | | +| `brand.names.rules[].perspectives.mode` | [`PerspectiveMode`](../../types/perspectives/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | +| `brand.names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../../types/strings/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | +| `brand.names.rules[].between` | [`LinearlyReferencedRange`](../../types/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | +| `brand.names.rules[].side` | [`Side`](../../types/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | +| `brand.wikidata` | [`WikidataId`](../../types/strings/wikidata_id.md) (optional) | | +| `addresses[]` | `list<`[`Address`](../../addresses/address/address.md)`>` (optional) | The address or addresses of the place | +| `addresses[].freeform` | `string` (optional) | Free-form address that contains street name, house number and other address info | +| `addresses[].locality` | `string` (optional) | City, town, or neighborhood component of the place address | +| `addresses[].postcode` | `string` (optional) | Postal code component of the place address | +| `addresses[].region` | [`RegionCode`](../../types/strings/region_code.md) (optional) | | +| `addresses[].country` | [`CountryCodeAlpha2`](../../types/strings/country_code_alpha2.md) (optional) | | +| `names` | [`Names`](../../types/names/names.md) (optional) | | +| `names.primary` | [`StrippedString`](../../types/strings/stripped_string.md) | The most commonly used name. | +| `names.common` | [`CommonNames`](../../types/names/common_names.md) (map, optional) | | +| `names.rules[]` | `list<`[`NameRule`](../../types/names/name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | +| `names.rules[].value` | [`StrippedString`](../../types/strings/stripped_string.md) | The actual name value. | +| `names.rules[].variant` | [`NameVariant`](../../types/names/name_variant.md) | The name variant for this name rule. | +| `names.rules[].language` | [`LanguageTag`](../../types/strings/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 +language tag. | +| `names.rules[].perspectives` | [`Perspectives`](../../types/perspectives/perspectives.md) (optional) | | +| `names.rules[].perspectives.mode` | [`PerspectiveMode`](../../types/perspectives/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | +| `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../../types/strings/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | +| `names.rules[].between` | [`LinearlyReferencedRange`](../../types/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | +| `names.rules[].side` | [`Side`](../../types/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | ## Examples | Column | Value | |-------:|-------| -| `geometry` | `POINT (-151.7990018 -79.5664328)` | +| `id` | 99003ee6-e75b-4dd6-8a8a-53a5a716c50d | +| `geometry` | POINT (-150.46875 -79.1713346) | +| `theme` | places | +| `type` | place | +| `version` | `1` | +| `sources[0].property` | | +| `sources[0].dataset` | meta | +| `sources[0].record_id` | 107663894904826 | +| `sources[0].update_time` | 2025-06-30T07:00:00.000Z | +| `sources[0].confidence` | `0.7337175792507205` | +| `sources[0].between` | `null` | +| `operating_status` | open | +| `categories.primary` | hotel | | `categories.alternate` | `null` | -| `categories.primary` | `media_news_website` | -| `confidence` | `0.8015267175572519` | -| `websites` | `[https://www.primenewsmonde.bj/]` | -| `socials` | `[https://www.facebook.com/105157324629740]` | +| `confidence` | `0.7337175792507205` | +| `websites` | `[https://www.superhotel.co.jp/s_hotels/beppu/]` | +| `socials` | `[https://www.facebook.com/107663894904826]` | | `emails` | `null` | -| `phones` | `[+22991510404]` | +| `phones` | `[+81977009000]` | +| `brand.wikidata` | `null` | +| `brand.names.primary` | SUPER HOTEL | | `brand.names.common` | `null` | -| `brand.names.primary` | `null` | | `brand.names.rules` | `null` | -| `brand.wikidata` | `null` | -| `addresses[0].country` | `BJ` | -| `addresses[0].freeform` | `Fidjrossè Calvaire Villa située entre Sun Beach Hôtel et l'agence PDME. ` | -| `addresses[0].locality` | `Fidjrossè-Centre` | -| `addresses[0].postcode` | `null` | +| `addresses[0].freeform` | 秋田県横手市駅前町13−8 | +| `addresses[0].locality` | 横手市 | +| `addresses[0].postcode` | 013-0036 | | `addresses[0].region` | `null` | -| `id` | `25d1faae-e887-493b-97d6-1c5bf39ed51f` | +| `addresses[0].country` | JP | +| `names.primary` | スーパーホテル別府駅前 | | `names.common` | `null` | -| `names.primary` | `Prime News TV Monde` | | `names.rules` | `null` | -| `sources[0].between` | `null` | -| `sources[0].confidence` | `0.8015267175572519` | -| `sources[0].dataset` | `meta` | -| `sources[0].property` | | -| `sources[0].record_id` | `105157324629740` | -| `sources[0].update_time` | `2025-06-30T07:00:00.000Z` | -| `theme` | `places` | -| `type` | `place` | -| `version` | `1` | diff --git a/docs/schema/reference/places/place/taxonomy.md b/docs/schema/reference/places/place/taxonomy.md new file mode 100644 index 000000000..e917efb62 --- /dev/null +++ b/docs/schema/reference/places/place/taxonomy.md @@ -0,0 +1,37 @@ +# Taxonomy + +A structured representation of the place's category within the Overture taxonomy. + +Provides the primary classification, full hierarchy path, and alternate categories. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `primary` | [`SnakeCaseString`](../../types/strings/snake_case_string.md) | +The primary, or most specific, category known about this place. + +The `primary` category value must always equal the last or rightmost entry in the `hierarchy` field. + | +| `hierarchy` | [`SnakeCaseString`](../../types/strings/snake_case_string.md) (list) | The full primary hierarchy of categories known for this place, ordered from most general to most specific. +An example hierarchy might be: `["food_and_drink", "restaurant", "casual_eatery", "gas_station_sushi"]`. + +The rightmost, or most specific, value in the `hierarchy` must always be equal to the `primary` field. +The basic level category of the place will typically be found in the middle of the primary hierarchy. +The primary hierarchy does not include any of the alternate categories found in the `alternates` field. | +| `alternates` | [`SnakeCaseString`](../../types/strings/snake_case_string.md) (list, optional) | Unordered list of additional categories that are known for this +place but that are not part of the primary category hierarchy. + +Alternate categories allow a more complete picture of the place +to be surfaced when it fits multiple unconnected branches in the +taxonomy. For example a gas station that also sells groceries +might have primary category of "gas_station" with an alternate +of "grocery_store". + +Alternate categories are not part of the primary hierarchy or +another alternate category's hierarchy. +In other words, if a category is a parent in the hierarchy of another category, +that category can't be a primary or alternate category itself. + +Note as well that this field is an unordered list of extra +categories and does not represent a hierarchy. | diff --git a/docs/schema/reference/source_property_item.md b/docs/schema/reference/source_property_item.md deleted file mode 100644 index b0d7338c5..000000000 --- a/docs/schema/reference/source_property_item.md +++ /dev/null @@ -1,19 +0,0 @@ -# SourcePropertyItem - -An object storing the source for a specificed property. - -The property is a reference to the property element within this Feature, and will be -referenced using JSON Pointer Notation RFC 6901 ( -https://datatracker.ietf.org/doc/rfc6901/). -The source dataset for that referenced property will be specified in the overture list of approved sources from the Overture Data Working Group that contains the relevant metadata for that dataset including license source organization. - -## Fields - -| Name | Type | Description | -|-----:|:----:|-------------| -| `between` | `list` (optional) | | -| `property` | `string` | | -| `dataset` | `string` | | -| `record_id` | `string` (optional) | Refers to the specific record within the dataset that was used. | -| `update_time` | `string` (optional) | | -| `confidence` | `float64` (optional) | | diff --git a/docs/schema/reference/transportation/access_restriction_rule.md b/docs/schema/reference/transportation/access_restriction_rule.md deleted file mode 100644 index 7f5290841..000000000 --- a/docs/schema/reference/transportation/access_restriction_rule.md +++ /dev/null @@ -1,22 +0,0 @@ -# AccessRestrictionRule - -Geometric scoping properties defining the range of positions on the segment where -something is physically located or where a rule is active. - -## Fields - -| Name | Type | Description | -|-----:|:----:|-------------| -| `between` | `list` (optional) | | -| `access_type` | `string` ([AccessType](/schema/codegen/transportation/access_restriction_rule/access_type/)) | Examples: `allowed`, `denied`, `designated` | -| `when` | `object` (`[AccessRestrictionWhenClause](access_restriction_when_clause)`) (optional) | | -| `when.vehicle` | `list` (optional) | Vehicle attributes for which the rule applies | -| `when.vehicle.dimension` | `string` ([VehicleDimension](vehicle_dimension)) | Examples: `axle_count`, `height`, `length`, ... | -| `when.vehicle.comparison` | `string` ([VehicleComparison](vehicle_comparison)) | Examples: `greater_than`, `greater_than_equal`, `equal`, ... | -| `when.vehicle.value` | `float64` | | -| `when.vehicle.unit` | `string` ([LengthUnit](length_unit)) | `string` ([WeightUnit](weight_unit)) | | -| `when.mode` | `list` (optional) | Travel mode(s) to which the rule applies | -| `when.recognized` | `list` (optional) | | -| `when.using` | `list` (optional) | | -| `when.heading` | `string` ([Heading](heading)) (optional) | Examples: `forward`, `backward` | -| `when.during` | `string` (optional) | | diff --git a/docs/schema/reference/transportation/access_restriction_when_clause.md b/docs/schema/reference/transportation/access_restriction_when_clause.md deleted file mode 100644 index 77c9c1c9e..000000000 --- a/docs/schema/reference/transportation/access_restriction_when_clause.md +++ /dev/null @@ -1,21 +0,0 @@ -# AccessRestrictionWhenClause - -Mixin class that provides constraint validation capabilities. - -This is a true mixin - it doesn't inherit from BaseModel to avoid MRO issues. -Use it like: class MyModel(ConstraintValidatedModel, BaseModel) - -## Fields - -| Name | Type | Description | -|-----:|:----:|-------------| -| `vehicle` | `list` (optional) | Vehicle attributes for which the rule applies | -| `vehicle.dimension` | `string` ([VehicleDimension](vehicle_dimension)) | Examples: `axle_count`, `height`, `length`, ... | -| `vehicle.comparison` | `string` ([VehicleComparison](vehicle_comparison)) | Examples: `greater_than`, `greater_than_equal`, `equal`, ... | -| `vehicle.value` | `float64` | | -| `vehicle.unit` | `string` ([LengthUnit](length_unit)) | `string` ([WeightUnit](weight_unit)) | | -| `mode` | `list` (optional) | Travel mode(s) to which the rule applies | -| `recognized` | `list` (optional) | | -| `using` | `list` (optional) | | -| `heading` | `string` ([Heading](/schema/codegen/transportation/access_restriction_when_clause/heading/)) (optional) | Examples: `forward`, `backward` | -| `during` | `string` (optional) | | diff --git a/docs/schema/reference/transportation/access_type.md b/docs/schema/reference/transportation/access_type.md deleted file mode 100644 index a082412f6..000000000 --- a/docs/schema/reference/transportation/access_type.md +++ /dev/null @@ -1,9 +0,0 @@ -# AccessType - -An enumeration. - -## Values - -- `allowed` -- `denied` -- `designated` diff --git a/docs/schema/reference/transportation/connector/_category_.json b/docs/schema/reference/transportation/connector/_category_.json new file mode 100644 index 000000000..bb43ebcc4 --- /dev/null +++ b/docs/schema/reference/transportation/connector/_category_.json @@ -0,0 +1,3 @@ +{ + "label": "Connector" +} diff --git a/docs/schema/reference/transportation/connector/connector.md b/docs/schema/reference/transportation/connector/connector.md index 289bf8e40..4151b9b5a 100644 --- a/docs/schema/reference/transportation/connector/connector.md +++ b/docs/schema/reference/transportation/connector/connector.md @@ -8,31 +8,52 @@ Connectors are compatible with GeoJSON Point features. | Name | Type | Description | |-----:|:----:|-------------| -| `id` | `string` | | +| `id` | [`Id`](../../types/references/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | +| `bbox` | `bbox` (optional) | An optional bounding box for the feature | +| `geometry` | `geometry` | Position of the connector | | `theme` | `"transportation"` | | | `type` | `"connector"` | | -| `geometry` | `geometry` | Position of the connector | -| `version` | `int32` | | -| `sources[]` | `list` (optional) | | -| `sources[].between` | `list` (optional) | | -| `sources[].property` | `string` | | -| `sources[].dataset` | `string` | | -| `sources[].record_id` | `string` (optional) | Refers to the specific record within the dataset that was used. | -| `sources[].update_time` | `string` (optional) | | -| `sources[].confidence` | `float64` (optional) | | +| `version` | [`FeatureVersion`](../../types/core_types/feature_version.md) | | +| `sources[]` | [`Sources`](../../types/sources/sources.md) (list, optional) | | +| `sources[].property` | [`JsonPointer`](../../types/strings/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to. + +The root document value `""` indicates that this source information applies to the +entire feature, excepting properties (fields) for which a dedicated source information +record exists. + +Any other JSON Pointer apart from `""` indicates that this source record provides +dedicated source information for the property at the path in the JSON Pointer. As an +example, the value `"/names/common/en"` indicates that the source information applies to +the English common name of a named feature, while the value `"/geometry"` indicates that +it applies to the feature geometry. | +| `sources[].dataset` | `string` | Name of the dataset where the source data can be found. | +| `sources[].license` | [`StrippedString`](../../types/strings/stripped_string.md) (optional) | Source data license name. + +This should be a valid SPDX license identifier when available. + +If omitted, contact the data provider for more license information. | +| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can +be found. + +The format of record identifiers is dataset-specific. | +| `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | +| `sources[].confidence` | [`ConfidenceScore`](../../types/core_types/confidence_score.md) (optional) | Confidence value from the source dataset. + +This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | +| `sources[].between` | [`LinearlyReferencedRange`](../../types/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | ## Examples | Column | Value | |-------:|-------| -| `geometry` | `POINT (-176.5472979 -43.9679472)` | -| `id` | `39542bee-230f-4b91-b7e5-a9b58e0c59b1` | -| `sources[0].between` | `null` | -| `sources[0].confidence` | `null` | -| `sources[0].dataset` | `OpenStreetMap` | +| `id` | 39542bee-230f-4b91-b7e5-a9b58e0c59b1 | +| `geometry` | POINT (-176.5472979 -43.9679472) | +| `theme` | transportation | +| `type` | connector | +| `version` | `1` | | `sources[0].property` | | +| `sources[0].dataset` | OpenStreetMap | | `sources[0].record_id` | `null` | | `sources[0].update_time` | `null` | -| `theme` | `transportation` | -| `type` | `connector` | -| `version` | `1` | +| `sources[0].confidence` | `null` | +| `sources[0].between` | `null` | diff --git a/docs/schema/reference/transportation/connector_reference.md b/docs/schema/reference/transportation/connector_reference.md deleted file mode 100644 index 53c6cbe7b..000000000 --- a/docs/schema/reference/transportation/connector_reference.md +++ /dev/null @@ -1,11 +0,0 @@ -# ConnectorReference - -Contains the GERS ID and relative position between 0 and 1 of a connector feature -along the segment. - -## Fields - -| Name | Type | Description | -|-----:|:----:|-------------| -| `connector_id` | `string` | | -| `at` | `float64` | | diff --git a/docs/schema/reference/transportation/destination_label_type.md b/docs/schema/reference/transportation/destination_label_type.md deleted file mode 100644 index 89fe923c3..000000000 --- a/docs/schema/reference/transportation/destination_label_type.md +++ /dev/null @@ -1,12 +0,0 @@ -# DestinationLabelType - -Indicates what special symbol/icon is present on a signpost, visible as road -marking or similar. - -## Values - -- `street` -- `country` -- `route_ref` -- `toward_route_ref` -- `unknown` diff --git a/docs/schema/reference/transportation/destination_labels.md b/docs/schema/reference/transportation/destination_labels.md deleted file mode 100644 index 3c39a05a7..000000000 --- a/docs/schema/reference/transportation/destination_labels.md +++ /dev/null @@ -1,10 +0,0 @@ -# DestinationLabels - -The type of object of the destination label. - -## Fields - -| Name | Type | Description | -|-----:|:----:|-------------| -| `value` | `string` | Names the object that is reached | -| `type` | `string` ([DestinationLabelType](destination_label_type)) | Examples: `street`, `country`, `route_ref`, ... | diff --git a/docs/schema/reference/transportation/destination_rule.md b/docs/schema/reference/transportation/destination_rule.md deleted file mode 100644 index c11c1ecf5..000000000 --- a/docs/schema/reference/transportation/destination_rule.md +++ /dev/null @@ -1,18 +0,0 @@ -# DestinationRule - -Base model that forbids additional properties in JSON Schema. - -## Fields - -| Name | Type | Description | -|-----:|:----:|-------------| -| `from_connector_id` | `string` | Identifies the point of physical connection on this segment before which the destination sign or marking is visible. | -| `to_connector_id` | `string` | Identifies the point of physical connection on the segment identified by 'to_segment_id' to transition to for reaching the destination(s). | -| `to_segment_id` | `string` | Identifies the segment to transition to reach the destination(s) labeled on the sign or marking. | -| `final_heading` | `string` ([Heading](heading)) | Direction of travel on the segment identified by 'to_segment_id' that leads to the destination. Examples: `forward`, `backward` | -| `labels` | `list` (optional) | Labeled destinations that can be reached by following the segment. | -| `labels.value` | `string` | Names the object that is reached | -| `labels.type` | `string` ([DestinationLabelType](destination_label_type)) | Examples: `street`, `country`, `route_ref`, ... | -| `symbols` | `list` (optional) | A collection of symbols or icons present on the sign next to current destination label. | -| `when` | `object` (`[DestinationWhenClause](destination_when_clause)`) (optional) | | -| `when.heading` | `string` ([Heading](heading)) (optional) | Examples: `forward`, `backward` | diff --git a/docs/schema/reference/transportation/destination_sign_symbol.md b/docs/schema/reference/transportation/destination_sign_symbol.md deleted file mode 100644 index 1a35d3290..000000000 --- a/docs/schema/reference/transportation/destination_sign_symbol.md +++ /dev/null @@ -1,27 +0,0 @@ -# DestinationSignSymbol - -Indicates what special symbol/icon is present on a signpost, visible as road -marking or similar. - -## Values - -- `motorway` -- `airport` -- `hospital` -- `center` -- `industrial` -- `parking` -- `bus` -- `train_station` -- `rest_area` -- `ferry` -- `motorroad` -- `fuel` -- `viewpoint` -- `fuel_diesel` -- `food` -- `lodging` -- `info` -- `camp_site` -- `interchange` -- `restrooms` diff --git a/docs/schema/reference/transportation/destination_when_clause.md b/docs/schema/reference/transportation/destination_when_clause.md deleted file mode 100644 index eb6373765..000000000 --- a/docs/schema/reference/transportation/destination_when_clause.md +++ /dev/null @@ -1,12 +0,0 @@ -# DestinationWhenClause - -Mixin class that provides constraint validation capabilities. - -This is a true mixin - it doesn't inherit from BaseModel to avoid MRO issues. -Use it like: class MyModel(ConstraintValidatedModel, BaseModel) - -## Fields - -| Name | Type | Description | -|-----:|:----:|-------------| -| `heading` | `string` ([Heading](heading)) (optional) | Examples: `forward`, `backward` | diff --git a/docs/schema/reference/transportation/heading.md b/docs/schema/reference/transportation/heading.md deleted file mode 100644 index d665fff8b..000000000 --- a/docs/schema/reference/transportation/heading.md +++ /dev/null @@ -1,8 +0,0 @@ -# Heading - -Enumerates possible travel headings along segment geometry. - -## Values - -- `forward` -- `backward` diff --git a/docs/schema/reference/transportation/length_unit.md b/docs/schema/reference/transportation/length_unit.md deleted file mode 100644 index 8cd4f38be..000000000 --- a/docs/schema/reference/transportation/length_unit.md +++ /dev/null @@ -1,13 +0,0 @@ -# LengthUnit - -Enumerates length units supported by the Overture schema. - -## Values - -- `in` -- `ft` -- `yd` -- `mi` -- `cm` -- `m` -- `km` diff --git a/docs/schema/reference/transportation/level_rule.md b/docs/schema/reference/transportation/level_rule.md deleted file mode 100644 index 8cc9fcc3e..000000000 --- a/docs/schema/reference/transportation/level_rule.md +++ /dev/null @@ -1,11 +0,0 @@ -# LevelRule - -A single level rule defining the Z-order, i.e. stacking order, applicable within -a given scope on the road segment. - -## Fields - -| Name | Type | Description | -|-----:|:----:|-------------| -| `between` | `list` (optional) | | -| `value` | `int32` | | diff --git a/docs/schema/reference/transportation/prohibited_transition_rule.md b/docs/schema/reference/transportation/prohibited_transition_rule.md deleted file mode 100644 index eda7e210b..000000000 --- a/docs/schema/reference/transportation/prohibited_transition_rule.md +++ /dev/null @@ -1,25 +0,0 @@ -# ProhibitedTransitionRule - -Geometric scoping properties defining the range of positions on the segment where -something is physically located or where a rule is active. - -## Fields - -| Name | Type | Description | -|-----:|:----:|-------------| -| `between` | `list` (optional) | | -| `sequence` | `list` | Ordered sequence of connector/segment pairs that it is prohibited to follow from this segment. | -| `sequence.connector_id` | `string` | Identifies the point of physical connection between the previous segment in the sequence and the segment in this sequence entry. | -| `sequence.segment_id` | `string` | Identifies the segment that the previous segment in the sequence is physically connected to via the sequence entry's connector. | -| `final_heading` | `string` ([Heading](heading)) | Direction of travel that is prohibited on the destination segment of the sequence. Examples: `forward`, `backward` | -| `when` | `object` (`[ProhibitedTransitionWhenClause](prohibited_transition_when_clause)`) (optional) | | -| `when.vehicle` | `list` (optional) | Vehicle attributes for which the rule applies | -| `when.vehicle.dimension` | `string` ([VehicleDimension](vehicle_dimension)) | Examples: `axle_count`, `height`, `length`, ... | -| `when.vehicle.comparison` | `string` ([VehicleComparison](vehicle_comparison)) | Examples: `greater_than`, `greater_than_equal`, `equal`, ... | -| `when.vehicle.value` | `float64` | | -| `when.vehicle.unit` | `string` ([LengthUnit](length_unit)) | `string` ([WeightUnit](weight_unit)) | | -| `when.mode` | `list` (optional) | Travel mode(s) to which the rule applies | -| `when.recognized` | `list` (optional) | | -| `when.using` | `list` (optional) | | -| `when.during` | `string` (optional) | | -| `when.heading` | `string` ([Heading](heading)) (optional) | Examples: `forward`, `backward` | diff --git a/docs/schema/reference/transportation/prohibited_transition_when_clause.md b/docs/schema/reference/transportation/prohibited_transition_when_clause.md deleted file mode 100644 index 22a530295..000000000 --- a/docs/schema/reference/transportation/prohibited_transition_when_clause.md +++ /dev/null @@ -1,21 +0,0 @@ -# ProhibitedTransitionWhenClause - -Mixin class that provides constraint validation capabilities. - -This is a true mixin - it doesn't inherit from BaseModel to avoid MRO issues. -Use it like: class MyModel(ConstraintValidatedModel, BaseModel) - -## Fields - -| Name | Type | Description | -|-----:|:----:|-------------| -| `vehicle` | `list` (optional) | Vehicle attributes for which the rule applies | -| `vehicle.dimension` | `string` ([VehicleDimension](vehicle_dimension)) | Examples: `axle_count`, `height`, `length`, ... | -| `vehicle.comparison` | `string` ([VehicleComparison](vehicle_comparison)) | Examples: `greater_than`, `greater_than_equal`, `equal`, ... | -| `vehicle.value` | `float64` | | -| `vehicle.unit` | `string` ([LengthUnit](length_unit)) | `string` ([WeightUnit](weight_unit)) | | -| `mode` | `list` (optional) | Travel mode(s) to which the rule applies | -| `recognized` | `list` (optional) | | -| `using` | `list` (optional) | | -| `during` | `string` (optional) | | -| `heading` | `string` ([Heading](heading)) (optional) | Examples: `forward`, `backward` | diff --git a/docs/schema/reference/transportation/purpose_of_use.md b/docs/schema/reference/transportation/purpose_of_use.md deleted file mode 100644 index befdf60f2..000000000 --- a/docs/schema/reference/transportation/purpose_of_use.md +++ /dev/null @@ -1,12 +0,0 @@ -# PurposeOfUse - -Reason why a person or entity travelling on the transportation network is using a -particular location. - -## Values - -- `as_customer` -- `at_destination` -- `to_deliver` -- `to_farm` -- `for_forestry` diff --git a/docs/schema/reference/transportation/rail_class.md b/docs/schema/reference/transportation/rail_class.md deleted file mode 100644 index fe284a6de..000000000 --- a/docs/schema/reference/transportation/rail_class.md +++ /dev/null @@ -1,14 +0,0 @@ -# RailClass - -Captures the kind of rail segment. - -## Values - -- `funicular` -- `light_rail` -- `monorail` -- `narrow_gauge` -- `standard_gauge` -- `subway` -- `tram` -- `unknown` diff --git a/docs/schema/reference/transportation/rail_flag.md b/docs/schema/reference/transportation/rail_flag.md deleted file mode 100644 index 031d04948..000000000 --- a/docs/schema/reference/transportation/rail_flag.md +++ /dev/null @@ -1,16 +0,0 @@ -# RailFlag - -Simple flags that can be on or off for a railway segment. - -Specifies physical characteristics and can overlap. - -## Values - -- `is_bridge` -- `is_tunnel` -- `is_under_construction` -- `is_abandoned` -- `is_covered` -- `is_passenger` -- `is_freight` -- `is_disused` diff --git a/docs/schema/reference/transportation/rail_flag_rule.md b/docs/schema/reference/transportation/rail_flag_rule.md deleted file mode 100644 index 651a41336..000000000 --- a/docs/schema/reference/transportation/rail_flag_rule.md +++ /dev/null @@ -1,10 +0,0 @@ -# RailFlagRule - -Rail-specific flag rule with geometric scoping only. - -## Fields - -| Name | Type | Description | -|-----:|:----:|-------------| -| `between` | `list` (optional) | | -| `values` | `list` | | diff --git a/docs/schema/reference/transportation/recognized_status.md b/docs/schema/reference/transportation/recognized_status.md deleted file mode 100644 index f2f927f28..000000000 --- a/docs/schema/reference/transportation/recognized_status.md +++ /dev/null @@ -1,12 +0,0 @@ -# RecognizedStatus - -Status of the person or entity travelling as recognized by authorities -controlling the particular location. - -## Values - -- `as_permitted` -- `as_private` -- `as_disabled` -- `as_employee` -- `as_student` diff --git a/docs/schema/reference/transportation/road_class.md b/docs/schema/reference/transportation/road_class.md deleted file mode 100644 index c3e409f80..000000000 --- a/docs/schema/reference/transportation/road_class.md +++ /dev/null @@ -1,23 +0,0 @@ -# RoadClass - -Captures the kind of road and its position in the road network hierarchy. - -## Values - -- `motorway` -- `primary` -- `secondary` -- `tertiary` -- `residential` -- `living_street` -- `trunk` -- `unclassified` -- `service` -- `pedestrian` -- `footway` -- `steps` -- `path` -- `track` -- `cycleway` -- `bridleway` -- `unknown` diff --git a/docs/schema/reference/transportation/road_flag.md b/docs/schema/reference/transportation/road_flag.md deleted file mode 100644 index 1f0a76f4a..000000000 --- a/docs/schema/reference/transportation/road_flag.md +++ /dev/null @@ -1,15 +0,0 @@ -# RoadFlag - -Simple flags that can be on or off for a road segment. - -Specifies physical characteristics and can overlap. - -## Values - -- `is_bridge` -- `is_link` -- `is_tunnel` -- `is_under_construction` -- `is_abandoned` -- `is_covered` -- `is_indoor` diff --git a/docs/schema/reference/transportation/road_flag_rule.md b/docs/schema/reference/transportation/road_flag_rule.md deleted file mode 100644 index 7d7b3efe2..000000000 --- a/docs/schema/reference/transportation/road_flag_rule.md +++ /dev/null @@ -1,10 +0,0 @@ -# RoadFlagRule - -Road-specific flag rule with geometric scoping only. - -## Fields - -| Name | Type | Description | -|-----:|:----:|-------------| -| `between` | `list` (optional) | | -| `values` | `list` | | diff --git a/docs/schema/reference/transportation/road_surface.md b/docs/schema/reference/transportation/road_surface.md deleted file mode 100644 index 51fa5599d..000000000 --- a/docs/schema/reference/transportation/road_surface.md +++ /dev/null @@ -1,13 +0,0 @@ -# RoadSurface - -Physical surface of the road. - -## Values - -- `unknown` -- `paved` -- `unpaved` -- `gravel` -- `dirt` -- `paving_stones` -- `metal` diff --git a/docs/schema/reference/transportation/route_reference.md b/docs/schema/reference/transportation/route_reference.md deleted file mode 100644 index 6b8dc2d9b..000000000 --- a/docs/schema/reference/transportation/route_reference.md +++ /dev/null @@ -1,14 +0,0 @@ -# RouteReference - -Route reference with linear referencing support. - -## Fields - -| Name | Type | Description | -|-----:|:----:|-------------| -| `between` | `list` (optional) | | -| `name` | `string` (optional) | Full name of the route | -| `network` | `string` (optional) | Name of the highway system this route belongs to | -| `ref` | `string` (optional) | Code or number used to reference the route | -| `symbol` | `string` (optional) | URL or description of route signage | -| `wikidata` | `string` (optional) | | diff --git a/docs/schema/reference/transportation/segment/rail_segment.md b/docs/schema/reference/transportation/segment/rail_segment.md deleted file mode 100644 index ab06a4c70..000000000 --- a/docs/schema/reference/transportation/segment/rail_segment.md +++ /dev/null @@ -1,67 +0,0 @@ -# RailSegment - -Rail Segment Properties. - -## Fields - -| Name | Type | Description | -|-----:|:----:|-------------| -| `names` | `object` (`[Names](../../Names/names)`) (optional) | | -| `names.primary` | `string` | The most commonly used name. | -| `names.common` | `object` (optional) | | -| `names.rules[]` | `list` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | -| `names.rules[].side` | `string` ([Side](../../Names/side)) (optional) | Examples: `left`, `right` | -| `names.rules[].between` | `list` (optional) | | -| `names.rules[].value` | `string` | | -| `names.rules[].variant` | `string` ([NameVariant](../../Names/name_variant)) | Examples: `common`, `official`, `alternate`, ... | -| `names.rules[].language` | `string` (optional) | | -| `names.rules[].perspectives` | `object` (`[Perspectives](../../Names/perspectives)`) (optional) | | -| `names.rules[].perspectives.mode` | `string` ([PerspectiveMode](../../Names/perspective_mode)) | Whether the perspective holder accepts or disputes this name. Examples: `accepted_by`, `disputed_by` | -| `names.rules[].perspectives.countries` | `list` | Countries holding the given mode of perspective. | -| `id` | `string` | | -| `theme` | `"transportation"` | | -| `type` | `"segment"` | | -| `geometry` | `geometry` | Segment centerline | -| `version` | `int32` | | -| `sources[]` | `list` (optional) | | -| `sources[].between` | `list` (optional) | | -| `sources[].property` | `string` | | -| `sources[].dataset` | `string` | | -| `sources[].record_id` | `string` (optional) | Refers to the specific record within the dataset that was used. | -| `sources[].update_time` | `string` (optional) | | -| `sources[].confidence` | `float64` (optional) | | -| `subtype` | `"rail"` | | -| `access_restrictions` | `list` (optional) | | -| `access_restrictions.between` | `list` (optional) | | -| `access_restrictions.access_type` | `string` ([AccessType](../access_type)) | Examples: `allowed`, `denied`, `designated` | -| `access_restrictions.when` | `object` (`[AccessRestrictionWhenClause](../access_restriction_when_clause)`) (optional) | | -| `access_restrictions.when.vehicle` | `list` (optional) | Vehicle attributes for which the rule applies | -| `access_restrictions.when.vehicle.dimension` | `string` ([VehicleDimension](../vehicle_dimension)) | Examples: `axle_count`, `height`, `length`, ... | -| `access_restrictions.when.vehicle.comparison` | `string` ([VehicleComparison](../vehicle_comparison)) | Examples: `greater_than`, `greater_than_equal`, `equal`, ... | -| `access_restrictions.when.vehicle.value` | `float64` | | -| `access_restrictions.when.vehicle.unit` | `string` ([LengthUnit](../length_unit)) | `string` ([WeightUnit](../weight_unit)) | | -| `access_restrictions.when.mode` | `list` (optional) | Travel mode(s) to which the rule applies | -| `access_restrictions.when.recognized` | `list` (optional) | | -| `access_restrictions.when.using` | `list` (optional) | | -| `access_restrictions.when.heading` | `string` ([Heading](../heading)) (optional) | Examples: `forward`, `backward` | -| `access_restrictions.when.during` | `string` (optional) | | -| `connectors` | `list` (optional) | List of connectors which this segment is physically connected to and their relative location. Each connector is a possible routing decision point, meaning it defines a place along the segment in which there is possibility to transition to other segments which share the same connector. Default: `[]` | -| `connectors.connector_id` | `string` | | -| `connectors.at` | `float64` | | -| `level_rules` | `list` (optional) | | -| `level_rules.between` | `list` (optional) | | -| `level_rules.value` | `int32` | | -| `routes` | `list` (optional) | | -| `routes.between` | `list` (optional) | | -| `routes.name` | `string` (optional) | Full name of the route | -| `routes.network` | `string` (optional) | Name of the highway system this route belongs to | -| `routes.ref` | `string` (optional) | Code or number used to reference the route | -| `routes.symbol` | `string` (optional) | URL or description of route signage | -| `routes.wikidata` | `string` (optional) | | -| `subclass_rules` | `list` (optional) | | -| `subclass_rules.between` | `list` (optional) | | -| `subclass_rules.value` | `string` ([Subclass](../subclass)) | Examples: `link`, `sidewalk`, `crosswalk`, ... | -| `class` | `string` ([RailClass](../rail_class)) | Examples: `funicular`, `light_rail`, `monorail`, ... | -| `rail_flags` | `list` (optional) | | -| `rail_flags.between` | `list` (optional) | | -| `rail_flags.values` | `list` | | diff --git a/docs/schema/reference/transportation/segment/road_segment.md b/docs/schema/reference/transportation/segment/road_segment.md deleted file mode 100644 index 31dcea464..000000000 --- a/docs/schema/reference/transportation/segment/road_segment.md +++ /dev/null @@ -1,112 +0,0 @@ -# RoadSegment - -Road Segment Properties. - -## Fields - -| Name | Type | Description | -|-----:|:----:|-------------| -| `names` | `object` (`[Names](../../Names/names)`) (optional) | | -| `names.primary` | `string` | The most commonly used name. | -| `names.common` | `object` (optional) | | -| `names.rules[]` | `list` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | -| `names.rules[].side` | `string` ([Side](../../Names/side)) (optional) | Examples: `left`, `right` | -| `names.rules[].between` | `list` (optional) | | -| `names.rules[].value` | `string` | | -| `names.rules[].variant` | `string` ([NameVariant](../../Names/name_variant)) | Examples: `common`, `official`, `alternate`, ... | -| `names.rules[].language` | `string` (optional) | | -| `names.rules[].perspectives` | `object` (`[Perspectives](../../Names/perspectives)`) (optional) | | -| `names.rules[].perspectives.mode` | `string` ([PerspectiveMode](../../Names/perspective_mode)) | Whether the perspective holder accepts or disputes this name. Examples: `accepted_by`, `disputed_by` | -| `names.rules[].perspectives.countries` | `list` | Countries holding the given mode of perspective. | -| `id` | `string` | | -| `theme` | `"transportation"` | | -| `type` | `"segment"` | | -| `geometry` | `geometry` | Segment centerline | -| `version` | `int32` | | -| `sources[]` | `list` (optional) | | -| `sources[].between` | `list` (optional) | | -| `sources[].property` | `string` | | -| `sources[].dataset` | `string` | | -| `sources[].record_id` | `string` (optional) | Refers to the specific record within the dataset that was used. | -| `sources[].update_time` | `string` (optional) | | -| `sources[].confidence` | `float64` (optional) | | -| `subtype` | `"road"` | | -| `access_restrictions` | `list` (optional) | | -| `access_restrictions.between` | `list` (optional) | | -| `access_restrictions.access_type` | `string` ([AccessType](../access_type)) | Examples: `allowed`, `denied`, `designated` | -| `access_restrictions.when` | `object` (`[AccessRestrictionWhenClause](../access_restriction_when_clause)`) (optional) | | -| `access_restrictions.when.vehicle` | `list` (optional) | Vehicle attributes for which the rule applies | -| `access_restrictions.when.vehicle.dimension` | `string` ([VehicleDimension](../vehicle_dimension)) | Examples: `axle_count`, `height`, `length`, ... | -| `access_restrictions.when.vehicle.comparison` | `string` ([VehicleComparison](../vehicle_comparison)) | Examples: `greater_than`, `greater_than_equal`, `equal`, ... | -| `access_restrictions.when.vehicle.value` | `float64` | | -| `access_restrictions.when.vehicle.unit` | `string` ([LengthUnit](../length_unit)) | `string` ([WeightUnit](../weight_unit)) | | -| `access_restrictions.when.mode` | `list` (optional) | Travel mode(s) to which the rule applies | -| `access_restrictions.when.recognized` | `list` (optional) | | -| `access_restrictions.when.using` | `list` (optional) | | -| `access_restrictions.when.heading` | `string` ([Heading](../heading)) (optional) | Examples: `forward`, `backward` | -| `access_restrictions.when.during` | `string` (optional) | | -| `connectors` | `list` (optional) | List of connectors which this segment is physically connected to and their relative location. Each connector is a possible routing decision point, meaning it defines a place along the segment in which there is possibility to transition to other segments which share the same connector. Default: `[]` | -| `connectors.connector_id` | `string` | | -| `connectors.at` | `float64` | | -| `level_rules` | `list` (optional) | | -| `level_rules.between` | `list` (optional) | | -| `level_rules.value` | `int32` | | -| `routes` | `list` (optional) | | -| `routes.between` | `list` (optional) | | -| `routes.name` | `string` (optional) | Full name of the route | -| `routes.network` | `string` (optional) | Name of the highway system this route belongs to | -| `routes.ref` | `string` (optional) | Code or number used to reference the route | -| `routes.symbol` | `string` (optional) | URL or description of route signage | -| `routes.wikidata` | `string` (optional) | | -| `subclass_rules` | `list` (optional) | | -| `subclass_rules.between` | `list` (optional) | | -| `subclass_rules.value` | `string` ([Subclass](../subclass)) | Examples: `link`, `sidewalk`, `crosswalk`, ... | -| `class` | `string` ([RoadClass](../road_class)) | Examples: `motorway`, `primary`, `secondary`, ... | -| `destinations` | `list` (optional) | | -| `destinations.from_connector_id` | `string` | Identifies the point of physical connection on this segment before which the destination sign or marking is visible. | -| `destinations.to_connector_id` | `string` | Identifies the point of physical connection on the segment identified by 'to_segment_id' to transition to for reaching the destination(s). | -| `destinations.to_segment_id` | `string` | Identifies the segment to transition to reach the destination(s) labeled on the sign or marking. | -| `destinations.final_heading` | `string` ([Heading](../heading)) | Direction of travel on the segment identified by 'to_segment_id' that leads to the destination. Examples: `forward`, `backward` | -| `destinations.labels` | `list` (optional) | Labeled destinations that can be reached by following the segment. | -| `destinations.labels.value` | `string` | Names the object that is reached | -| `destinations.labels.type` | `string` ([DestinationLabelType](../destination_label_type)) | Examples: `street`, `country`, `route_ref`, ... | -| `destinations.symbols` | `list` (optional) | A collection of symbols or icons present on the sign next to current destination label. | -| `destinations.when` | `object` (`[DestinationWhenClause](../destination_when_clause)`) (optional) | | -| `destinations.when.heading` | `string` ([Heading](../heading)) (optional) | Examples: `forward`, `backward` | -| `prohibited_transitions` | `list` (optional) | | -| `prohibited_transitions.between` | `list` (optional) | | -| `prohibited_transitions.sequence` | `list` | Ordered sequence of connector/segment pairs that it is prohibited to follow from this segment. | -| `prohibited_transitions.sequence.connector_id` | `string` | Identifies the point of physical connection between the previous segment in the sequence and the segment in this sequence entry. | -| `prohibited_transitions.sequence.segment_id` | `string` | Identifies the segment that the previous segment in the sequence is physically connected to via the sequence entry's connector. | -| `prohibited_transitions.final_heading` | `string` ([Heading](../heading)) | Direction of travel that is prohibited on the destination segment of the sequence. Examples: `forward`, `backward` | -| `prohibited_transitions.when` | `object` (`[ProhibitedTransitionWhenClause](../prohibited_transition_when_clause)`) (optional) | | -| `prohibited_transitions.when.vehicle` | `list` (optional) | Vehicle attributes for which the rule applies | -| `prohibited_transitions.when.mode` | `list` (optional) | Travel mode(s) to which the rule applies | -| `prohibited_transitions.when.recognized` | `list` (optional) | | -| `prohibited_transitions.when.using` | `list` (optional) | | -| `prohibited_transitions.when.during` | `string` (optional) | | -| `prohibited_transitions.when.heading` | `string` ([Heading](../heading)) (optional) | Examples: `forward`, `backward` | -| `road_flags` | `list` (optional) | | -| `road_flags.between` | `list` (optional) | | -| `road_flags.values` | `list` | | -| `road_surface` | `list` (optional) | | -| `road_surface.between` | `list` (optional) | | -| `road_surface.value` | `string` ([RoadSurface](../road_surface)) | Examples: `unknown`, `paved`, `unpaved`, ... | -| `speed_limits` | `list` (optional) | | -| `speed_limits.between` | `list` (optional) | | -| `speed_limits.max_speed` | `object` (`[Speed](../speed)`) (optional) | | -| `speed_limits.max_speed.value` | `int32` | | -| `speed_limits.max_speed.unit` | `string` ([SpeedUnit](../speed_unit)) | Examples: `mph`, `km/h` | -| `speed_limits.min_speed` | `object` (`[Speed](../speed)`) (optional) | | -| `speed_limits.is_max_speed_variable` | `boolean` (optional) | Indicates a variable speed corridor Default: `False` | -| `speed_limits.when` | `object` (`[SpeedLimitWhenClause](../speed_limit_when_clause)`) (optional) | | -| `speed_limits.when.vehicle` | `list` (optional) | Vehicle attributes for which the rule applies | -| `speed_limits.when.mode` | `list` (optional) | Travel mode(s) to which the rule applies | -| `speed_limits.when.recognized` | `list` (optional) | | -| `speed_limits.when.using` | `list` (optional) | | -| `speed_limits.when.heading` | `string` ([Heading](../heading)) (optional) | Examples: `forward`, `backward` | -| `speed_limits.when.during` | `string` (optional) | | -| `subclass` | `string` ([Subclass](../subclass)) (optional) | Examples: `link`, `sidewalk`, `crosswalk`, ... | -| `width_rules` | `list` (optional) | | -| `width_rules.between` | `list` (optional) | | -| `width_rules.value` | `float64` | | diff --git a/docs/schema/reference/transportation/segment/water_segment.md b/docs/schema/reference/transportation/segment/water_segment.md deleted file mode 100644 index 37732d468..000000000 --- a/docs/schema/reference/transportation/segment/water_segment.md +++ /dev/null @@ -1,63 +0,0 @@ -# WaterSegment - -Water Segment Properties. - -## Fields - -| Name | Type | Description | -|-----:|:----:|-------------| -| `names` | `object` (`[Names](../../Names/names)`) (optional) | | -| `names.primary` | `string` | The most commonly used name. | -| `names.common` | `object` (optional) | | -| `names.rules[]` | `list` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | -| `names.rules[].side` | `string` ([Side](../../Names/side)) (optional) | Examples: `left`, `right` | -| `names.rules[].between` | `list` (optional) | | -| `names.rules[].value` | `string` | | -| `names.rules[].variant` | `string` ([NameVariant](../../Names/name_variant)) | Examples: `common`, `official`, `alternate`, ... | -| `names.rules[].language` | `string` (optional) | | -| `names.rules[].perspectives` | `object` (`[Perspectives](../../Names/perspectives)`) (optional) | | -| `names.rules[].perspectives.mode` | `string` ([PerspectiveMode](../../Names/perspective_mode)) | Whether the perspective holder accepts or disputes this name. Examples: `accepted_by`, `disputed_by` | -| `names.rules[].perspectives.countries` | `list` | Countries holding the given mode of perspective. | -| `id` | `string` | | -| `theme` | `"transportation"` | | -| `type` | `"segment"` | | -| `geometry` | `geometry` | Segment centerline | -| `version` | `int32` | | -| `sources[]` | `list` (optional) | | -| `sources[].between` | `list` (optional) | | -| `sources[].property` | `string` | | -| `sources[].dataset` | `string` | | -| `sources[].record_id` | `string` (optional) | Refers to the specific record within the dataset that was used. | -| `sources[].update_time` | `string` (optional) | | -| `sources[].confidence` | `float64` (optional) | | -| `subtype` | `"water"` | | -| `access_restrictions` | `list` (optional) | | -| `access_restrictions.between` | `list` (optional) | | -| `access_restrictions.access_type` | `string` ([AccessType](../access_type)) | Examples: `allowed`, `denied`, `designated` | -| `access_restrictions.when` | `object` (`[AccessRestrictionWhenClause](../access_restriction_when_clause)`) (optional) | | -| `access_restrictions.when.vehicle` | `list` (optional) | Vehicle attributes for which the rule applies | -| `access_restrictions.when.vehicle.dimension` | `string` ([VehicleDimension](../vehicle_dimension)) | Examples: `axle_count`, `height`, `length`, ... | -| `access_restrictions.when.vehicle.comparison` | `string` ([VehicleComparison](../vehicle_comparison)) | Examples: `greater_than`, `greater_than_equal`, `equal`, ... | -| `access_restrictions.when.vehicle.value` | `float64` | | -| `access_restrictions.when.vehicle.unit` | `string` ([LengthUnit](../length_unit)) | `string` ([WeightUnit](../weight_unit)) | | -| `access_restrictions.when.mode` | `list` (optional) | Travel mode(s) to which the rule applies | -| `access_restrictions.when.recognized` | `list` (optional) | | -| `access_restrictions.when.using` | `list` (optional) | | -| `access_restrictions.when.heading` | `string` ([Heading](../heading)) (optional) | Examples: `forward`, `backward` | -| `access_restrictions.when.during` | `string` (optional) | | -| `connectors` | `list` (optional) | List of connectors which this segment is physically connected to and their relative location. Each connector is a possible routing decision point, meaning it defines a place along the segment in which there is possibility to transition to other segments which share the same connector. Default: `[]` | -| `connectors.connector_id` | `string` | | -| `connectors.at` | `float64` | | -| `level_rules` | `list` (optional) | | -| `level_rules.between` | `list` (optional) | | -| `level_rules.value` | `int32` | | -| `routes` | `list` (optional) | | -| `routes.between` | `list` (optional) | | -| `routes.name` | `string` (optional) | Full name of the route | -| `routes.network` | `string` (optional) | Name of the highway system this route belongs to | -| `routes.ref` | `string` (optional) | Code or number used to reference the route | -| `routes.symbol` | `string` (optional) | URL or description of route signage | -| `routes.wikidata` | `string` (optional) | | -| `subclass_rules` | `list` (optional) | | -| `subclass_rules.between` | `list` (optional) | | -| `subclass_rules.value` | `string` ([Subclass](../subclass)) | Examples: `link`, `sidewalk`, `crosswalk`, ... | diff --git a/docs/schema/reference/transportation/sequence_entry.md b/docs/schema/reference/transportation/sequence_entry.md deleted file mode 100644 index 6d3a4ea11..000000000 --- a/docs/schema/reference/transportation/sequence_entry.md +++ /dev/null @@ -1,10 +0,0 @@ -# SequenceEntry - -A segment/connector pair in a prohibited transition sequence. - -## Fields - -| Name | Type | Description | -|-----:|:----:|-------------| -| `connector_id` | `string` | Identifies the point of physical connection between the previous segment in the sequence and the segment in this sequence entry. | -| `segment_id` | `string` | Identifies the segment that the previous segment in the sequence is physically connected to via the sequence entry's connector. | diff --git a/docs/schema/reference/transportation/speed.md b/docs/schema/reference/transportation/speed.md deleted file mode 100644 index 1a2299aa7..000000000 --- a/docs/schema/reference/transportation/speed.md +++ /dev/null @@ -1,11 +0,0 @@ -# Speed - -A speed value, i.e. a certain number of distance units travelled per unit -time. - -## Fields - -| Name | Type | Description | -|-----:|:----:|-------------| -| `value` | `int32` | | -| `unit` | `string` ([SpeedUnit](speed_unit)) | Examples: `mph`, `km/h` | diff --git a/docs/schema/reference/transportation/speed_limit_rule.md b/docs/schema/reference/transportation/speed_limit_rule.md deleted file mode 100644 index 083f319c9..000000000 --- a/docs/schema/reference/transportation/speed_limit_rule.md +++ /dev/null @@ -1,25 +0,0 @@ -# SpeedLimitRule - -An individual speed limit rule. - -## Fields - -| Name | Type | Description | -|-----:|:----:|-------------| -| `between` | `list` (optional) | | -| `max_speed` | `object` (`[Speed](speed)`) (optional) | | -| `max_speed.value` | `int32` | | -| `max_speed.unit` | `string` ([SpeedUnit](speed_unit)) | Examples: `mph`, `km/h` | -| `min_speed` | `object` (`[Speed](speed)`) (optional) | | -| `is_max_speed_variable` | `boolean` (optional) | Indicates a variable speed corridor Default: `False` | -| `when` | `object` (`[SpeedLimitWhenClause](speed_limit_when_clause)`) (optional) | | -| `when.vehicle` | `list` (optional) | Vehicle attributes for which the rule applies | -| `when.vehicle.dimension` | `string` ([VehicleDimension](vehicle_dimension)) | Examples: `axle_count`, `height`, `length`, ... | -| `when.vehicle.comparison` | `string` ([VehicleComparison](vehicle_comparison)) | Examples: `greater_than`, `greater_than_equal`, `equal`, ... | -| `when.vehicle.value` | `float64` | | -| `when.vehicle.unit` | `string` ([LengthUnit](length_unit)) | `string` ([WeightUnit](weight_unit)) | | -| `when.mode` | `list` (optional) | Travel mode(s) to which the rule applies | -| `when.recognized` | `list` (optional) | | -| `when.using` | `list` (optional) | | -| `when.heading` | `string` ([Heading](heading)) (optional) | Examples: `forward`, `backward` | -| `when.during` | `string` (optional) | | diff --git a/docs/schema/reference/transportation/speed_limit_when_clause.md b/docs/schema/reference/transportation/speed_limit_when_clause.md deleted file mode 100644 index 99419b3e0..000000000 --- a/docs/schema/reference/transportation/speed_limit_when_clause.md +++ /dev/null @@ -1,21 +0,0 @@ -# SpeedLimitWhenClause - -Mixin class that provides constraint validation capabilities. - -This is a true mixin - it doesn't inherit from BaseModel to avoid MRO issues. -Use it like: class MyModel(ConstraintValidatedModel, BaseModel) - -## Fields - -| Name | Type | Description | -|-----:|:----:|-------------| -| `vehicle` | `list` (optional) | Vehicle attributes for which the rule applies | -| `vehicle.dimension` | `string` ([VehicleDimension](vehicle_dimension)) | Examples: `axle_count`, `height`, `length`, ... | -| `vehicle.comparison` | `string` ([VehicleComparison](vehicle_comparison)) | Examples: `greater_than`, `greater_than_equal`, `equal`, ... | -| `vehicle.value` | `float64` | | -| `vehicle.unit` | `string` ([LengthUnit](length_unit)) | `string` ([WeightUnit](weight_unit)) | | -| `mode` | `list` (optional) | Travel mode(s) to which the rule applies | -| `recognized` | `list` (optional) | | -| `using` | `list` (optional) | | -| `heading` | `string` ([Heading](heading)) (optional) | Examples: `forward`, `backward` | -| `during` | `string` (optional) | | diff --git a/docs/schema/reference/transportation/speed_unit.md b/docs/schema/reference/transportation/speed_unit.md deleted file mode 100644 index 6e836e0bc..000000000 --- a/docs/schema/reference/transportation/speed_unit.md +++ /dev/null @@ -1,8 +0,0 @@ -# SpeedUnit - -Speed unit. - -## Values - -- `mph` -- `km/h` diff --git a/docs/schema/reference/transportation/subclass.md b/docs/schema/reference/transportation/subclass.md deleted file mode 100644 index 4e9db9c32..000000000 --- a/docs/schema/reference/transportation/subclass.md +++ /dev/null @@ -1,13 +0,0 @@ -# Subclass - -Refines expected usage of the segment, must not overlap. - -## Values - -- `link` -- `sidewalk` -- `crosswalk` -- `parking_aisle` -- `driveway` -- `alley` -- `cycle_crossing` diff --git a/docs/schema/reference/transportation/subclass_rule.md b/docs/schema/reference/transportation/subclass_rule.md deleted file mode 100644 index 7cec1015a..000000000 --- a/docs/schema/reference/transportation/subclass_rule.md +++ /dev/null @@ -1,10 +0,0 @@ -# SubclassRule - -Set of subclasses scoped along segment. - -## Fields - -| Name | Type | Description | -|-----:|:----:|-------------| -| `between` | `list` (optional) | | -| `value` | `string` ([Subclass](subclass)) | Examples: `link`, `sidewalk`, `crosswalk`, ... | diff --git a/docs/schema/reference/transportation/surface_rule.md b/docs/schema/reference/transportation/surface_rule.md deleted file mode 100644 index 7bc8672b7..000000000 --- a/docs/schema/reference/transportation/surface_rule.md +++ /dev/null @@ -1,11 +0,0 @@ -# SurfaceRule - -Geometric scoping properties defining the range of positions on the segment where -something is physically located or where a rule is active. - -## Fields - -| Name | Type | Description | -|-----:|:----:|-------------| -| `between` | `list` (optional) | | -| `value` | `string` ([RoadSurface](road_surface)) | Examples: `unknown`, `paved`, `unpaved`, ... | diff --git a/docs/schema/reference/transportation/travel_mode.md b/docs/schema/reference/transportation/travel_mode.md deleted file mode 100644 index 3a87b8a3d..000000000 --- a/docs/schema/reference/transportation/travel_mode.md +++ /dev/null @@ -1,19 +0,0 @@ -# TravelMode - -Enumerates possible travel modes. - -Some modes represent groups of modes. - -## Values - -- `vehicle` -- `motor_vehicle` -- `car` -- `truck` -- `motorcycle` -- `foot` -- `bicycle` -- `bus` -- `hgv` -- `hov` -- `emergency` diff --git a/docs/schema/reference/transportation/vehicle_comparison.md b/docs/schema/reference/transportation/vehicle_comparison.md deleted file mode 100644 index 4ce54fc36..000000000 --- a/docs/schema/reference/transportation/vehicle_comparison.md +++ /dev/null @@ -1,11 +0,0 @@ -# VehicleComparison - -Enumerates possible comparison operators for use in scoping. - -## Values - -- `greater_than` -- `greater_than_equal` -- `equal` -- `less_than` -- `less_than_equal` diff --git a/docs/schema/reference/transportation/vehicle_dimension.md b/docs/schema/reference/transportation/vehicle_dimension.md deleted file mode 100644 index 39859bb7e..000000000 --- a/docs/schema/reference/transportation/vehicle_dimension.md +++ /dev/null @@ -1,11 +0,0 @@ -# VehicleDimension - -Enumerates possible vehicle dimensions for use in restrictions. - -## Values - -- `axle_count` -- `height` -- `length` -- `weight` -- `width` diff --git a/docs/schema/reference/transportation/vehicle_scope_rule.md b/docs/schema/reference/transportation/vehicle_scope_rule.md deleted file mode 100644 index e6119a68b..000000000 --- a/docs/schema/reference/transportation/vehicle_scope_rule.md +++ /dev/null @@ -1,12 +0,0 @@ -# VehicleScopeRule - -An individual vehicle scope rule. - -## Fields - -| Name | Type | Description | -|-----:|:----:|-------------| -| `dimension` | `string` ([VehicleDimension](vehicle_dimension)) | Examples: `axle_count`, `height`, `length`, ... | -| `comparison` | `string` ([VehicleComparison](vehicle_comparison)) | Examples: `greater_than`, `greater_than_equal`, `equal`, ... | -| `value` | `float64` | | -| `unit` | `string` ([LengthUnit](length_unit)) | `string` ([WeightUnit](weight_unit)) | | diff --git a/docs/schema/reference/transportation/weight_unit.md b/docs/schema/reference/transportation/weight_unit.md deleted file mode 100644 index 9539d459b..000000000 --- a/docs/schema/reference/transportation/weight_unit.md +++ /dev/null @@ -1,13 +0,0 @@ -# WeightUnit - -Enumerates weight units supported by the Overture schema. - -## Values - -- `oz` -- `lb` -- `st` -- `lt` -- `g` -- `kg` -- `t` diff --git a/docs/schema/reference/transportation/width_rule.md b/docs/schema/reference/transportation/width_rule.md deleted file mode 100644 index 490dff6a3..000000000 --- a/docs/schema/reference/transportation/width_rule.md +++ /dev/null @@ -1,11 +0,0 @@ -# WidthRule - -Geometric scoping properties defining the range of positions on the segment where -something is physically located or where a rule is active. - -## Fields - -| Name | Type | Description | -|-----:|:----:|-------------| -| `between` | `list` (optional) | | -| `value` | `float64` | | diff --git a/docs/schema/reference/types/_category_.json b/docs/schema/reference/types/_category_.json new file mode 100644 index 000000000..a3ec08974 --- /dev/null +++ b/docs/schema/reference/types/_category_.json @@ -0,0 +1,3 @@ +{ + "label": "Types" +} diff --git a/docs/schema/reference/types/cartography/_category_.json b/docs/schema/reference/types/cartography/_category_.json new file mode 100644 index 000000000..98f463076 --- /dev/null +++ b/docs/schema/reference/types/cartography/_category_.json @@ -0,0 +1,3 @@ +{ + "label": "Cartography" +} diff --git a/docs/schema/reference/types/cartography/cartographic_hints.md b/docs/schema/reference/types/cartography/cartographic_hints.md new file mode 100644 index 000000000..31517c430 --- /dev/null +++ b/docs/schema/reference/types/cartography/cartographic_hints.md @@ -0,0 +1,12 @@ +# CartographicHints + +Cartographic hints for optimal use of Overture features in map-making. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `prominence` | [`Prominence`](prominence.md) (optional) | | +| `min_zoom` | [`MinZoom`](min_zoom.md) (optional) | | +| `max_zoom` | [`MaxZoom`](max_zoom.md) (optional) | | +| `sort_key` | [`SortKey`](sort_key.md) (optional) | | diff --git a/docs/schema/reference/types/cartography/max_zoom.md b/docs/schema/reference/types/cartography/max_zoom.md new file mode 100644 index 000000000..f352b87bb --- /dev/null +++ b/docs/schema/reference/types/cartography/max_zoom.md @@ -0,0 +1,8 @@ +# MaxZoom (`uint8`) + +## Constraints + +- `Ge(ge=0)` +- `Le(le=23)` +- `Ge(ge=0)` (from [`uint8`](../primitives.md)) +- `Le(le=255)` (from [`uint8`](../primitives.md)) diff --git a/docs/schema/reference/types/cartography/min_zoom.md b/docs/schema/reference/types/cartography/min_zoom.md new file mode 100644 index 000000000..f007f9587 --- /dev/null +++ b/docs/schema/reference/types/cartography/min_zoom.md @@ -0,0 +1,8 @@ +# MinZoom (`uint8`) + +## Constraints + +- `Ge(ge=0)` +- `Le(le=23)` +- `Ge(ge=0)` (from [`uint8`](../primitives.md)) +- `Le(le=255)` (from [`uint8`](../primitives.md)) diff --git a/docs/schema/reference/types/cartography/prominence.md b/docs/schema/reference/types/cartography/prominence.md new file mode 100644 index 000000000..45a823100 --- /dev/null +++ b/docs/schema/reference/types/cartography/prominence.md @@ -0,0 +1,8 @@ +# Prominence (`uint8`) + +## Constraints + +- `Ge(ge=1)` +- `Le(le=100)` +- `Ge(ge=0)` (from [`uint8`](../primitives.md)) +- `Le(le=255)` (from [`uint8`](../primitives.md)) diff --git a/docs/schema/reference/types/cartography/sort_key.md b/docs/schema/reference/types/cartography/sort_key.md new file mode 100644 index 000000000..9556fa4ac --- /dev/null +++ b/docs/schema/reference/types/cartography/sort_key.md @@ -0,0 +1,6 @@ +# SortKey (`uint8`) + +## Constraints + +- `Ge(ge=0)` (from [`uint8`](../primitives.md)) +- `Le(le=255)` (from [`uint8`](../primitives.md)) diff --git a/docs/schema/reference/types/core_types/_category_.json b/docs/schema/reference/types/core_types/_category_.json new file mode 100644 index 000000000..54949f379 --- /dev/null +++ b/docs/schema/reference/types/core_types/_category_.json @@ -0,0 +1,3 @@ +{ + "label": "Core Types" +} diff --git a/docs/schema/reference/types/core_types/confidence_score.md b/docs/schema/reference/types/core_types/confidence_score.md new file mode 100644 index 000000000..fb60c171b --- /dev/null +++ b/docs/schema/reference/types/core_types/confidence_score.md @@ -0,0 +1,6 @@ +# ConfidenceScore (`float32`) + +## Constraints + +- `Ge(ge=0.0)` +- `Le(le=1.0)` diff --git a/docs/schema/reference/types/core_types/feature_version.md b/docs/schema/reference/types/core_types/feature_version.md new file mode 100644 index 000000000..677c44537 --- /dev/null +++ b/docs/schema/reference/types/core_types/feature_version.md @@ -0,0 +1,7 @@ +# FeatureVersion (`int32`) + +## Constraints + +- `Ge(ge=0)` +- `Ge(ge=-2147483648)` (from [`int32`](../primitives.md)) +- `Le(le=2147483647)` (from [`int32`](../primitives.md)) diff --git a/docs/schema/reference/types/core_types/level.md b/docs/schema/reference/types/core_types/level.md new file mode 100644 index 000000000..9afdc5039 --- /dev/null +++ b/docs/schema/reference/types/core_types/level.md @@ -0,0 +1,6 @@ +# Level (`int16`) + +## Constraints + +- `Ge(ge=-32768)` (from [`int16`](../primitives.md)) +- `Le(le=32767)` (from [`int16`](../primitives.md)) diff --git a/docs/schema/reference/types/geometry.md b/docs/schema/reference/types/geometry.md new file mode 100644 index 000000000..4a2c82446 --- /dev/null +++ b/docs/schema/reference/types/geometry.md @@ -0,0 +1,11 @@ +# Geometry Types + +Spatial types for representing geographic features. + +## Types + +| Type | Description | +|-----:|-------------| +| `Geometry` | GeoJSON geometry value (Point, LineString, Polygon, etc.) | +| `BBox` | Bounding box as 4 or 6 coordinate values: [west, south, east, north] or [west, south, min-altitude, east, north, max-altitude] | +| `GeometryType` | Enumeration of geometry types: `geometry_collection`, `line_string`, `multi_line_string`, `multi_point`, `multi_polygon`, `point`, `polygon` | \ No newline at end of file diff --git a/docs/schema/reference/types/names/_category_.json b/docs/schema/reference/types/names/_category_.json new file mode 100644 index 000000000..b9775909a --- /dev/null +++ b/docs/schema/reference/types/names/_category_.json @@ -0,0 +1,3 @@ +{ + "label": "Names" +} diff --git a/docs/schema/reference/types/names/common_names.md b/docs/schema/reference/types/names/common_names.md new file mode 100644 index 000000000..971ddc84a --- /dev/null +++ b/docs/schema/reference/types/names/common_names.md @@ -0,0 +1,3 @@ +# CommonNames (`map`) + +A mapping from language to the most commonly used or recognized name in that language. diff --git a/docs/schema/reference/types/names/name_rule.md b/docs/schema/reference/types/names/name_rule.md new file mode 100644 index 000000000..f53761a7a --- /dev/null +++ b/docs/schema/reference/types/names/name_rule.md @@ -0,0 +1,29 @@ +# NameRule + +A rule that can be evaluated to determine the name in advanced scenarios. + +Name rules are used for cases where the primary name is not sufficient; the common name is not +the right fit for the use case and another variant is needed; or where the name only applies in +certain specific circumstances. + +Examples might include: +- An official, alternate, or short name. +- A name that only applies to part of a linear path like a road segment (geometric range + scoping). +- A name that only applies to the left or right side of a linear path like a road segment (side + scoping). +- A name that is only accepted by some political perspectives. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `value` | [`StrippedString`](../strings/stripped_string.md) | The actual name value. | +| `variant` | [`NameVariant`](name_variant.md) | The name variant for this name rule. | +| `language` | [`LanguageTag`](../strings/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 +language tag. | +| `perspectives` | [`Perspectives`](../perspectives/perspectives.md) (optional) | | +| `perspectives.mode` | [`PerspectiveMode`](../perspectives/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | +| `perspectives.countries` | [`CountryCodeAlpha2`](../strings/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | +| `between` | [`LinearlyReferencedRange`](../scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | +| `side` | [`Side`](../scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | diff --git a/docs/schema/reference/types/names/name_variant.md b/docs/schema/reference/types/names/name_variant.md new file mode 100644 index 000000000..365f505a5 --- /dev/null +++ b/docs/schema/reference/types/names/name_variant.md @@ -0,0 +1,18 @@ +# NameVariant + +Name variant used in a `NameRule`. + +## Values + +- `common` - The most commonly used or recognized name for a feature in the specified language. + +In a `Names` value, most common names will appear in the `Names.common` field and will +not need to be specified as `NameRule` values in `Names.rules`. This member of the +enumeration should only be used to construct a `NameRule` if the common name needs to +be scoped in some way and therefore cannot be accurately represented in `CommonNames`. +- `official` - The legally or administratively recognized name, often used by government agencies or +official documents. +- `alternate` - An alternative name, which may be a historical name, a local colloquial name, or some +other well-known name is not the common name. +- `short` - An abbreviated or shortened version of the name, which may be an acronym or some other +commonly-used short form. An example is "NYC" for New York City. diff --git a/docs/schema/reference/types/names/names.md b/docs/schema/reference/types/names/names.md new file mode 100644 index 000000000..2dce11073 --- /dev/null +++ b/docs/schema/reference/types/names/names.md @@ -0,0 +1,20 @@ +# Names + +Multilingual names container. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `primary` | [`StrippedString`](../strings/stripped_string.md) | The most commonly used name. | +| `common` | [`CommonNames`](common_names.md) (map, optional) | | +| `rules[]` | `list<`[`NameRule`](name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | +| `rules[].value` | [`StrippedString`](../strings/stripped_string.md) | The actual name value. | +| `rules[].variant` | [`NameVariant`](name_variant.md) | The name variant for this name rule. | +| `rules[].language` | [`LanguageTag`](../strings/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 +language tag. | +| `rules[].perspectives` | [`Perspectives`](../perspectives/perspectives.md) (optional) | | +| `rules[].perspectives.mode` | [`PerspectiveMode`](../perspectives/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | +| `rules[].perspectives.countries` | [`CountryCodeAlpha2`](../strings/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | +| `rules[].between` | [`LinearlyReferencedRange`](../scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | +| `rules[].side` | [`Side`](../scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | diff --git a/docs/schema/reference/types/perspectives/_category_.json b/docs/schema/reference/types/perspectives/_category_.json new file mode 100644 index 000000000..c316ca9d2 --- /dev/null +++ b/docs/schema/reference/types/perspectives/_category_.json @@ -0,0 +1,3 @@ +{ + "label": "Perspectives" +} diff --git a/docs/schema/reference/Names/perspective_mode.md b/docs/schema/reference/types/perspectives/perspective_mode.md similarity index 100% rename from docs/schema/reference/Names/perspective_mode.md rename to docs/schema/reference/types/perspectives/perspective_mode.md diff --git a/docs/schema/reference/types/perspectives/perspectives.md b/docs/schema/reference/types/perspectives/perspectives.md new file mode 100644 index 000000000..8b6dafd1b --- /dev/null +++ b/docs/schema/reference/types/perspectives/perspectives.md @@ -0,0 +1,10 @@ +# Perspectives + +Political perspectives container. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `mode` | [`PerspectiveMode`](perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | +| `countries` | [`CountryCodeAlpha2`](../strings/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | diff --git a/docs/schema/reference/types/primitives.md b/docs/schema/reference/types/primitives.md new file mode 100644 index 000000000..3887c8f9c --- /dev/null +++ b/docs/schema/reference/types/primitives.md @@ -0,0 +1,27 @@ +# Primitive Types + +Numeric types used for schema field definitions. + +## Integer Types + +| Type | Range | Description | +|-----:|:-----:|-------------| +| `int8` | -128 to 127 | Portable 8-bit signed integer. | +| `int16` | -32,768 to 32,767 | Portable 16-bit signed integer. | +| `int32` | -2,147,483,648 to 2,147,483,647 | Portable 32-bit signed integer. | +| `int64` | -2^63 to 2^63-1 | Portable 64-bit signed integer. | + +## Unsigned Integer Types + +| Type | Range | Description | +|-----:|:-----:|-------------| +| `uint8` | 0 to 255 | Portable 8-bit unsigned integer. | +| `uint16` | 0 to 65,535 | Portable 16-bit unsigned integer. | +| `uint32` | 0 to 4,294,967,295 | Portable 32-bit unsigned integer. | + +## Floating Point Types + +| Type | Precision | Description | +|-----:|:---------:|-------------| +| `float32` | ~7 decimal digits | Portable IEEE 32-bit floating point number. | +| `float64` | ~15 decimal digits | Portable IEEE 64-bit floating point number. | diff --git a/docs/schema/reference/types/references/_category_.json b/docs/schema/reference/types/references/_category_.json new file mode 100644 index 000000000..1fd07096d --- /dev/null +++ b/docs/schema/reference/types/references/_category_.json @@ -0,0 +1,3 @@ +{ + "label": "References" +} diff --git a/docs/schema/reference/types/references/id.md b/docs/schema/reference/types/references/id.md new file mode 100644 index 000000000..2e6ed3b5d --- /dev/null +++ b/docs/schema/reference/types/references/id.md @@ -0,0 +1,8 @@ +# Id (`string`) + +A unique identifier. + +## Constraints + +- `MinLen(min_length=1)` +- `NoWhitespaceConstraint` diff --git a/docs/schema/reference/types/scoping/_category_.json b/docs/schema/reference/types/scoping/_category_.json new file mode 100644 index 000000000..155d669bb --- /dev/null +++ b/docs/schema/reference/types/scoping/_category_.json @@ -0,0 +1,3 @@ +{ + "label": "Scoping" +} diff --git a/docs/schema/reference/types/scoping/linearly_referenced_range.md b/docs/schema/reference/types/scoping/linearly_referenced_range.md new file mode 100644 index 000000000..145f02b8c --- /dev/null +++ b/docs/schema/reference/types/scoping/linearly_referenced_range.md @@ -0,0 +1,7 @@ +# LinearlyReferencedRange (`list`) + +## Constraints + +- `LinearReferenceRangeConstraint` +- `Ge(ge=0.0)` +- `Le(le=1.0)` diff --git a/docs/schema/reference/types/scoping/side.md b/docs/schema/reference/types/scoping/side.md new file mode 100644 index 000000000..8a225537a --- /dev/null +++ b/docs/schema/reference/types/scoping/side.md @@ -0,0 +1,10 @@ +# Side + +The side, left or right, on which something appears relative to a facing or heading direction +(*e.g.*, the side of a road relative to the road orientation), or relative to the direction of +travel of a person or vehicle. + +## Values + +- `left` - On the left relative to the facing direction +- `right` - On the right side relative to the facing direction diff --git a/docs/schema/reference/types/sources/_category_.json b/docs/schema/reference/types/sources/_category_.json new file mode 100644 index 000000000..b7d7bcaa2 --- /dev/null +++ b/docs/schema/reference/types/sources/_category_.json @@ -0,0 +1,3 @@ +{ + "label": "Sources" +} diff --git a/docs/schema/reference/types/sources/source_item.md b/docs/schema/reference/types/sources/source_item.md new file mode 100644 index 000000000..fed0313df --- /dev/null +++ b/docs/schema/reference/types/sources/source_item.md @@ -0,0 +1,34 @@ +# SourceItem + +Specifies the source of the data used for a feature or one of its properties. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `property` | [`JsonPointer`](../strings/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to. + +The root document value `""` indicates that this source information applies to the +entire feature, excepting properties (fields) for which a dedicated source information +record exists. + +Any other JSON Pointer apart from `""` indicates that this source record provides +dedicated source information for the property at the path in the JSON Pointer. As an +example, the value `"/names/common/en"` indicates that the source information applies to +the English common name of a named feature, while the value `"/geometry"` indicates that +it applies to the feature geometry. | +| `dataset` | `string` | Name of the dataset where the source data can be found. | +| `license` | [`StrippedString`](../strings/stripped_string.md) (optional) | Source data license name. + +This should be a valid SPDX license identifier when available. + +If omitted, contact the data provider for more license information. | +| `record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can +be found. + +The format of record identifiers is dataset-specific. | +| `update_time` | `datetime` (optional) | Last update time of the source data record. | +| `confidence` | [`ConfidenceScore`](../core_types/confidence_score.md) (optional) | Confidence value from the source dataset. + +This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | +| `between` | [`LinearlyReferencedRange`](../scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | diff --git a/docs/schema/reference/types/sources/sources.md b/docs/schema/reference/types/sources/sources.md new file mode 100644 index 000000000..151ab3f1c --- /dev/null +++ b/docs/schema/reference/types/sources/sources.md @@ -0,0 +1,6 @@ +# Sources (`list`) + +## Constraints + +- `MinLen(min_length=1)` +- `UniqueItemsConstraint` diff --git a/docs/schema/reference/types/strings/_category_.json b/docs/schema/reference/types/strings/_category_.json new file mode 100644 index 000000000..0d66ddd94 --- /dev/null +++ b/docs/schema/reference/types/strings/_category_.json @@ -0,0 +1,3 @@ +{ + "label": "Strings" +} diff --git a/docs/schema/reference/types/strings/country_code_alpha2.md b/docs/schema/reference/types/strings/country_code_alpha2.md new file mode 100644 index 000000000..298101271 --- /dev/null +++ b/docs/schema/reference/types/strings/country_code_alpha2.md @@ -0,0 +1,7 @@ +# CountryCodeAlpha2 (`string`) + +An ISO-3166-1 alpha-2 country code. + +## Constraints + +- `CountryCodeAlpha2Constraint` diff --git a/docs/schema/reference/types/strings/hex_color.md b/docs/schema/reference/types/strings/hex_color.md new file mode 100644 index 000000000..75ade6347 --- /dev/null +++ b/docs/schema/reference/types/strings/hex_color.md @@ -0,0 +1,13 @@ +# HexColor (`string`) + +A color represented as an #RRGGBB or #RGB hexadecimal string. + +For example: + +- `"#ff0000"` or `#f00` for pure red 🟥 +- `"#ffa500"` for bright orange 🟧 +- `"#000000"` or `"#000"` for black ⬛ + +## Constraints + +- `HexColorConstraint` diff --git a/docs/schema/reference/types/strings/json_pointer.md b/docs/schema/reference/types/strings/json_pointer.md new file mode 100644 index 000000000..ed768b185 --- /dev/null +++ b/docs/schema/reference/types/strings/json_pointer.md @@ -0,0 +1,17 @@ +# JsonPointer (`string`) + +A JSON Pointer + +As described in `the JSON Pointer specification, RFC-6901`_. + +.. _the JSON Pointer specification, RFC-6901: https://rfc-editor.org/rfc/rfc6901.html + +For example: + +- `""` (root value) +- `"/connectors/"` +- `"/connectors/0/at"` + +## Constraints + +- `JsonPointerConstraint` diff --git a/docs/schema/reference/types/strings/language_tag.md b/docs/schema/reference/types/strings/language_tag.md new file mode 100644 index 000000000..80ea9868f --- /dev/null +++ b/docs/schema/reference/types/strings/language_tag.md @@ -0,0 +1,18 @@ +# LanguageTag (`string`) + +A BCP-47 language tag. + +As described in `Tags for Identifying Languages, BCP-47`_. + +.. _Tags for Identifying Languages, BCP-47: https://www.rfc-editor.org/rfc/bcp/bcp47.txt + +For example: + +- `"en"` +- `"en-US"` +- `"fr-CA"` +- `"zh-Hant-TW"` + +## Constraints + +- `LanguageTagConstraint` diff --git a/docs/schema/reference/types/strings/phone_number.md b/docs/schema/reference/types/strings/phone_number.md new file mode 100644 index 000000000..c03453656 --- /dev/null +++ b/docs/schema/reference/types/strings/phone_number.md @@ -0,0 +1,7 @@ +# PhoneNumber (`string`) + +An international phone number. + +## Constraints + +- `PhoneNumberConstraint` diff --git a/docs/schema/reference/types/strings/region_code.md b/docs/schema/reference/types/strings/region_code.md new file mode 100644 index 000000000..57d8a88f9 --- /dev/null +++ b/docs/schema/reference/types/strings/region_code.md @@ -0,0 +1,7 @@ +# RegionCode (`string`) + +An ISO 3166-2 principal subdivision code. + +## Constraints + +- `RegionCodeConstraint` diff --git a/docs/schema/reference/types/strings/snake_case_string.md b/docs/schema/reference/types/strings/snake_case_string.md new file mode 100644 index 000000000..c585cbbef --- /dev/null +++ b/docs/schema/reference/types/strings/snake_case_string.md @@ -0,0 +1,7 @@ +# SnakeCaseString (`string`) + +A string that looks like a snake case identifier, like a Python variable name (*e.g.*, `foo_bar`). + +## Constraints + +- `SnakeCaseConstraint` diff --git a/docs/schema/reference/types/strings/stripped_string.md b/docs/schema/reference/types/strings/stripped_string.md new file mode 100644 index 000000000..df0d5051d --- /dev/null +++ b/docs/schema/reference/types/strings/stripped_string.md @@ -0,0 +1,7 @@ +# StrippedString (`string`) + +A string without leading or trailing whitespace. + +## Constraints + +- `StrippedConstraint` diff --git a/docs/schema/reference/types/strings/wikidata_id.md b/docs/schema/reference/types/strings/wikidata_id.md new file mode 100644 index 000000000..7de874fb2 --- /dev/null +++ b/docs/schema/reference/types/strings/wikidata_id.md @@ -0,0 +1,11 @@ +# WikidataId (`string`) + +A wikidata ID, as found on https://www.wikidata.org/. + +- `"Q42"` +- `"Q11643"` +- `"Q116257497"` + +## Constraints + +- `WikidataIdConstraint` diff --git a/docusaurus.config.js b/docusaurus.config.js index 82122d0eb..482ea1dd9 100644 --- a/docusaurus.config.js +++ b/docusaurus.config.js @@ -66,13 +66,9 @@ const config = { organizationName: 'OvertureMaps', // Usually your GitHub org/user name. projectName: 'docs', // Usually your repo name. - onBrokenLinks: 'ignore', + onBrokenLinks: 'warn', - markdown: { - hooks: { - onBrokenMarkdownLinks: 'ignore', - }, - }, + onBrokenMarkdownLinks: 'warn', trailingSlash: true, diff --git a/sidebars.js b/sidebars.js index d35ab3c8f..4b921bb64 100644 --- a/sidebars.js +++ b/sidebars.js @@ -89,36 +89,96 @@ const sidebars = { label: 'Reference', collapsed: true, items: [ - // Cross-theme concepts that apply to all feature types + // Cross-theme types shared across feature types { type: 'category', - label: 'Cross-Theme Properties', + label: 'Types', collapsed: true, items: [ - 'schema/reference/address', - 'schema/reference/source_property_item', - 'schema/reference/cartographic_hints', + 'schema/reference/types/primitives', + 'schema/reference/types/geometry', { type: 'category', label: 'Names', collapsed: true, items: [ - 'schema/reference/Names/names', - 'schema/reference/Names/name_variant', - 'schema/reference/Names/name_rule', - 'schema/reference/Names/perspectives', - 'schema/reference/Names/perspective_mode', - 'schema/reference/Names/side', + 'schema/reference/types/names/names', + 'schema/reference/types/names/common_names', + 'schema/reference/types/names/name_variant', + 'schema/reference/types/names/name_rule', ], }, { type: 'category', - label: 'Units of Measurement', + label: 'Perspectives', collapsed: true, items: [ - 'schema/reference/transportation/length_unit', - 'schema/reference/transportation/weight_unit', - 'schema/reference/transportation/speed_unit', + 'schema/reference/types/perspectives/perspectives', + 'schema/reference/types/perspectives/perspective_mode', + ], + }, + { + type: 'category', + label: 'Cartography', + collapsed: true, + items: [ + 'schema/reference/types/cartography/cartographic_hints', + 'schema/reference/types/cartography/min_zoom', + 'schema/reference/types/cartography/max_zoom', + 'schema/reference/types/cartography/prominence', + 'schema/reference/types/cartography/sort_key', + ], + }, + { + type: 'category', + label: 'Scoping', + collapsed: true, + items: [ + 'schema/reference/types/scoping/side', + 'schema/reference/types/scoping/linearly_referenced_range', + ], + }, + { + type: 'category', + label: 'Strings', + collapsed: true, + items: [ + 'schema/reference/types/strings/country_code_alpha2', + 'schema/reference/types/strings/hex_color', + 'schema/reference/types/strings/json_pointer', + 'schema/reference/types/strings/language_tag', + 'schema/reference/types/strings/phone_number', + 'schema/reference/types/strings/region_code', + 'schema/reference/types/strings/snake_case_string', + 'schema/reference/types/strings/stripped_string', + 'schema/reference/types/strings/wikidata_id', + ], + }, + { + type: 'category', + label: 'References', + collapsed: true, + items: [ + 'schema/reference/types/references/id', + ], + }, + { + type: 'category', + label: 'Sources', + collapsed: true, + items: [ + 'schema/reference/types/sources/sources', + 'schema/reference/types/sources/source_item', + ], + }, + { + type: 'category', + label: 'Core Types', + collapsed: true, + items: [ + 'schema/reference/types/core_types/confidence_score', + 'schema/reference/types/core_types/feature_version', + 'schema/reference/types/core_types/level', ], }, ], @@ -177,7 +237,15 @@ const sidebars = { 'schema/reference/base/land_cover/land_cover_subtype', ], }, - 'schema/reference/base/bathymetry/bathymetry', + { + type: 'category', + label: 'Bathymetry', + collapsed: true, + items: [ + 'schema/reference/base/bathymetry/bathymetry', + 'schema/reference/base/bathymetry/depth', + ], + }, { type: 'category', label: 'Infrastructure', @@ -186,8 +254,11 @@ const sidebars = { 'schema/reference/base/infrastructure/infrastructure', 'schema/reference/base/infrastructure/infrastructure_class', 'schema/reference/base/infrastructure/infrastructure_subtype', + 'schema/reference/base/infrastructure/height', ], }, + 'schema/reference/base/elevation', + 'schema/reference/base/source_tags', 'schema/reference/base/surface_material', ], }, @@ -203,7 +274,7 @@ const sidebars = { items: [ 'schema/reference/buildings/building/building', 'schema/reference/buildings/building/building_class', - 'schema/reference/buildings/building/subtype', + 'schema/reference/buildings/building/building_subtype', ], }, 'schema/reference/buildings/building_part/building_part', @@ -224,7 +295,11 @@ const sidebars = { collapsed: true, items: [ 'schema/reference/divisions/division/division', + 'schema/reference/divisions/division/division_class', 'schema/reference/divisions/division/norms', + 'schema/reference/divisions/division/capital_of_division_item', + 'schema/reference/divisions/division/hierarchy', + 'schema/reference/divisions/division/hierarchy_item', ], }, { @@ -245,9 +320,8 @@ const sidebars = { 'schema/reference/divisions/division_boundary/boundary_class', ], }, - 'schema/reference/divisions/capital_of_division_item', - 'schema/reference/divisions/division_class', - 'schema/reference/divisions/hierarchy_item', + 'schema/reference/divisions/admin_level', + 'schema/reference/divisions/division_id', 'schema/reference/divisions/place_type', ], }, @@ -259,6 +333,8 @@ const sidebars = { 'schema/reference/places/place/place', 'schema/reference/places/place/brand', 'schema/reference/places/place/categories', + 'schema/reference/places/place/operating_status', + 'schema/reference/places/place/taxonomy', ], }, { @@ -266,97 +342,11 @@ const sidebars = { label: 'Transportation', collapsed: true, items: [ - { - type: 'category', - label: 'Segments', - collapsed: true, - items: [ - 'schema/reference/transportation/segment/road_segment', - 'schema/reference/transportation/segment/rail_segment', - 'schema/reference/transportation/segment/water_segment', - ], - }, + // NOTE: Segments (road_segment, rail_segment, water_segment) and + // all their referenced types are not yet generated by codegen. + // The Segment type alias (discriminated union) is discovered but + // its members are not processed as individual models. 'schema/reference/transportation/connector/connector', - 'schema/reference/transportation/connector_reference', - { - type: 'category', - label: 'Road Properties', - collapsed: true, - items: [ - 'schema/reference/transportation/road_class', - 'schema/reference/transportation/road_flag', - 'schema/reference/transportation/road_flag_rule', - 'schema/reference/transportation/road_surface', - ], - }, - { - type: 'category', - label: 'Rail Properties', - collapsed: true, - items: [ - 'schema/reference/transportation/rail_class', - 'schema/reference/transportation/rail_flag', - 'schema/reference/transportation/rail_flag_rule', - ], - }, - { - type: 'category', - label: 'Access & Restrictions', - collapsed: true, - items: [ - 'schema/reference/transportation/access_type', - 'schema/reference/transportation/access_restriction_rule', - 'schema/reference/transportation/access_restriction_when_clause', - 'schema/reference/transportation/prohibited_transition_rule', - 'schema/reference/transportation/prohibited_transition_when_clause', - ], - }, - { - type: 'category', - label: 'Speed & Limits', - collapsed: true, - items: [ - 'schema/reference/transportation/speed', - 'schema/reference/transportation/speed_unit', - 'schema/reference/transportation/speed_limit_rule', - 'schema/reference/transportation/speed_limit_when_clause', - ], - }, - { - type: 'category', - label: 'Vehicle Specifications', - collapsed: true, - items: [ - 'schema/reference/transportation/vehicle_comparison', - 'schema/reference/transportation/vehicle_dimension', - 'schema/reference/transportation/vehicle_scope_rule', - 'schema/reference/transportation/weight_unit', - 'schema/reference/transportation/width_rule', - ], - }, - { - type: 'category', - label: 'Navigation & Routing', - collapsed: true, - items: [ - 'schema/reference/transportation/destination_labels', - 'schema/reference/transportation/destination_label_type', - 'schema/reference/transportation/destination_rule', - 'schema/reference/transportation/destination_sign_symbol', - 'schema/reference/transportation/destination_when_clause', - 'schema/reference/transportation/route_reference', - ], - }, - 'schema/reference/transportation/heading', - 'schema/reference/transportation/length_unit', - 'schema/reference/transportation/level_rule', - 'schema/reference/transportation/purpose_of_use', - 'schema/reference/transportation/recognized_status', - 'schema/reference/transportation/sequence_entry', - 'schema/reference/transportation/subclass', - 'schema/reference/transportation/subclass_rule', - 'schema/reference/transportation/surface_rule', - 'schema/reference/transportation/travel_mode', ], }, ], From 89a2100d6a16f4ec97d9ea8b525ff45fa4f27da1 Mon Sep 17 00:00:00 2001 From: Seth Fitzsimmons Date: Wed, 18 Feb 2026 10:34:06 -0800 Subject: [PATCH 03/12] Sync schema reference with current codegen The codegen now outputs a flatter directory structure: types/ split into core/ (names, cartography, scoping, sources, perspectives) and system/ (primitives, string types, ref types). Theme feature-type subdirectories removed (e.g. addresses/address/address.md becomes addresses/address.md). Internal cross-reference links updated to match; no content changes. sidebars.js rewritten to match the new layout. --- .../reference/addresses/_category_.json | 3 + .../addresses/{address => }/address.md | 28 +-- .../addresses/address/_category_.json | 3 - .../addresses/{address => }/address_level.md | 2 +- .../base/{bathymetry => }/bathymetry.md | 24 +- .../reference/base/bathymetry/_category_.json | 3 - .../schema/reference/base/bathymetry/depth.md | 7 - docs/schema/reference/base/depth.md | 7 + docs/schema/reference/base/elevation.md | 4 +- .../base/{infrastructure => }/height.md | 0 .../{infrastructure => }/infrastructure.md | 46 ++-- .../base/infrastructure/_category_.json | 3 - .../infrastructure_class.md | 0 .../infrastructure_subtype.md | 0 docs/schema/reference/base/land.md | 101 ++++++++ .../reference/base/land/_category_.json | 3 - docs/schema/reference/base/land/land.md | 101 -------- .../reference/base/{land => }/land_class.md | 0 .../base/{land_cover => }/land_cover.md | 24 +- .../reference/base/land_cover/_category_.json | 3 - .../{land_cover => }/land_cover_subtype.md | 0 .../reference/base/{land => }/land_subtype.md | 0 .../reference/base/{land_use => }/land_use.md | 48 ++-- .../reference/base/land_use/_category_.json | 3 - .../base/{land_use => }/land_use_class.md | 0 .../base/{land_use => }/land_use_subtype.md | 0 .../reference/base/{water => }/water.md | 44 ++-- .../reference/base/water/_category_.json | 3 - .../reference/base/{water => }/water_class.md | 0 .../base/{water => }/water_subtype.md | 0 .../buildings/{building => }/building.md | 54 ++-- .../buildings/building/_category_.json | 3 - .../{building => }/building_class.md | 0 .../{building_part => }/building_part.md | 54 ++-- .../buildings/building_part/_category_.json | 3 - .../{building => }/building_subtype.md | 0 docs/schema/reference/core/_category_.json | 3 + .../cartographic_hints.md | 0 .../{types/names => core}/common_names.md | 0 .../core_types => core}/confidence_score.md | 2 +- docs/schema/reference/core/feature_version.md | 7 + docs/schema/reference/core/level.md | 6 + docs/schema/reference/core/max_zoom.md | 8 + docs/schema/reference/core/min_zoom.md | 8 + docs/schema/reference/core/name_rule.md | 29 +++ .../{types/names => core}/name_variant.md | 0 docs/schema/reference/core/names.md | 20 ++ .../perspectives => core}/perspective_mode.md | 0 .../perspectives => core}/perspectives.md | 2 +- docs/schema/reference/core/prominence.md | 8 + .../{types => core}/scoping/_category_.json | 0 .../scoping/linearly_referenced_range.md | 0 .../reference/{types => core}/scoping/side.md | 0 docs/schema/reference/core/sort_key.md | 6 + .../{types/sources => core}/source_item.md | 8 +- .../{types/sources => core}/sources.md | 0 .../schema/reference/divisions/admin_level.md | 4 +- .../capital_of_division_item.md | 4 +- .../divisions/{division => }/division.md | 84 +++---- .../divisions/division/hierarchy_item.md | 11 - .../reference/divisions/division/norms.md | 2 +- .../{division_area => }/division_area.md | 50 ++-- .../division_boundary.md | 32 +-- .../{division => }/division_class.md | 0 .../schema/reference/divisions/division_id.md | 2 +- .../divisions/{division => }/hierarchy.md | 0 .../reference/divisions/hierarchy_item.md | 11 + docs/schema/reference/places/_category_.json | 3 + docs/schema/reference/places/brand.md | 24 ++ .../places/{place => }/categories.md | 4 +- .../places/{place => }/operating_status.md | 0 .../reference/places/{place => }/place.md | 86 +++---- .../reference/places/place/_category_.json | 3 - docs/schema/reference/places/place/brand.md | 24 -- .../reference/places/{place => }/taxonomy.md | 6 +- docs/schema/reference/system/_category_.json | 3 + .../strings => system}/country_code_alpha2.md | 0 .../{types/strings => system}/hex_color.md | 0 .../{types/strings => system}/json_pointer.md | 0 .../{types/strings => system}/language_tag.md | 0 .../{types/strings => system}/phone_number.md | 0 .../system/primitive/_category_.json | 3 + .../{types => system/primitive}/geometry.md | 0 .../{types => system/primitive}/primitives.md | 0 .../reference/system/ref/_category_.json | 3 + .../{types/references => system/ref}/id.md | 0 .../{types/strings => system}/region_code.md | 0 .../strings => system}/snake_case_string.md | 0 .../strings => system}/stripped_string.md | 0 .../{types/strings => system}/wikidata_id.md | 0 .../reference/transportation/_category_.json | 3 + .../{connector => }/connector.md | 14 +- .../transportation/connector/_category_.json | 3 - docs/schema/reference/types/_category_.json | 3 - .../types/cartography/_category_.json | 3 - .../reference/types/cartography/max_zoom.md | 8 - .../reference/types/cartography/min_zoom.md | 8 - .../reference/types/cartography/prominence.md | 8 - .../reference/types/cartography/sort_key.md | 6 - .../types/core_types/_category_.json | 3 - .../types/core_types/feature_version.md | 7 - .../reference/types/core_types/level.md | 6 - .../reference/types/names/_category_.json | 3 - .../schema/reference/types/names/name_rule.md | 29 --- docs/schema/reference/types/names/names.md | 20 -- .../types/perspectives/_category_.json | 3 - .../types/references/_category_.json | 3 - .../reference/types/sources/_category_.json | 3 - .../reference/types/strings/_category_.json | 3 - sidebars.js | 232 ++++++------------ 110 files changed, 645 insertions(+), 763 deletions(-) create mode 100644 docs/schema/reference/addresses/_category_.json rename docs/schema/reference/addresses/{address => }/address.md (72%) delete mode 100644 docs/schema/reference/addresses/address/_category_.json rename docs/schema/reference/addresses/{address => }/address_level.md (88%) rename docs/schema/reference/base/{bathymetry => }/bathymetry.md (59%) delete mode 100644 docs/schema/reference/base/bathymetry/_category_.json delete mode 100644 docs/schema/reference/base/bathymetry/depth.md create mode 100644 docs/schema/reference/base/depth.md rename docs/schema/reference/base/{infrastructure => }/height.md (100%) rename docs/schema/reference/base/{infrastructure => }/infrastructure.md (50%) delete mode 100644 docs/schema/reference/base/infrastructure/_category_.json rename docs/schema/reference/base/{infrastructure => }/infrastructure_class.md (100%) rename docs/schema/reference/base/{infrastructure => }/infrastructure_subtype.md (100%) create mode 100644 docs/schema/reference/base/land.md delete mode 100644 docs/schema/reference/base/land/_category_.json delete mode 100644 docs/schema/reference/base/land/land.md rename docs/schema/reference/base/{land => }/land_class.md (100%) rename docs/schema/reference/base/{land_cover => }/land_cover.md (63%) delete mode 100644 docs/schema/reference/base/land_cover/_category_.json rename docs/schema/reference/base/{land_cover => }/land_cover_subtype.md (100%) rename docs/schema/reference/base/{land => }/land_subtype.md (100%) rename docs/schema/reference/base/{land_use => }/land_use.md (51%) delete mode 100644 docs/schema/reference/base/land_use/_category_.json rename docs/schema/reference/base/{land_use => }/land_use_class.md (100%) rename docs/schema/reference/base/{land_use => }/land_use_subtype.md (100%) rename docs/schema/reference/base/{water => }/water.md (57%) delete mode 100644 docs/schema/reference/base/water/_category_.json rename docs/schema/reference/base/{water => }/water_class.md (100%) rename docs/schema/reference/base/{water => }/water_subtype.md (100%) rename docs/schema/reference/buildings/{building => }/building.md (61%) delete mode 100644 docs/schema/reference/buildings/building/_category_.json rename docs/schema/reference/buildings/{building => }/building_class.md (100%) rename docs/schema/reference/buildings/{building_part => }/building_part.md (58%) delete mode 100644 docs/schema/reference/buildings/building_part/_category_.json rename docs/schema/reference/buildings/{building => }/building_subtype.md (100%) create mode 100644 docs/schema/reference/core/_category_.json rename docs/schema/reference/{types/cartography => core}/cartographic_hints.md (100%) rename docs/schema/reference/{types/names => core}/common_names.md (100%) rename docs/schema/reference/{types/core_types => core}/confidence_score.md (61%) create mode 100644 docs/schema/reference/core/feature_version.md create mode 100644 docs/schema/reference/core/level.md create mode 100644 docs/schema/reference/core/max_zoom.md create mode 100644 docs/schema/reference/core/min_zoom.md create mode 100644 docs/schema/reference/core/name_rule.md rename docs/schema/reference/{types/names => core}/name_variant.md (100%) create mode 100644 docs/schema/reference/core/names.md rename docs/schema/reference/{types/perspectives => core}/perspective_mode.md (100%) rename docs/schema/reference/{types/perspectives => core}/perspectives.md (64%) create mode 100644 docs/schema/reference/core/prominence.md rename docs/schema/reference/{types => core}/scoping/_category_.json (100%) rename docs/schema/reference/{types => core}/scoping/linearly_referenced_range.md (100%) rename docs/schema/reference/{types => core}/scoping/side.md (100%) create mode 100644 docs/schema/reference/core/sort_key.md rename docs/schema/reference/{types/sources => core}/source_item.md (66%) rename docs/schema/reference/{types/sources => core}/sources.md (100%) rename docs/schema/reference/divisions/{division => }/capital_of_division_item.md (54%) rename docs/schema/reference/divisions/{division => }/division.md (60%) delete mode 100644 docs/schema/reference/divisions/division/hierarchy_item.md rename docs/schema/reference/divisions/{division_area => }/division_area.md (50%) rename docs/schema/reference/divisions/{division_boundary => }/division_boundary.md (68%) rename docs/schema/reference/divisions/{division => }/division_class.md (100%) rename docs/schema/reference/divisions/{division => }/hierarchy.md (100%) create mode 100644 docs/schema/reference/divisions/hierarchy_item.md create mode 100644 docs/schema/reference/places/_category_.json create mode 100644 docs/schema/reference/places/brand.md rename docs/schema/reference/places/{place => }/categories.md (62%) rename docs/schema/reference/places/{place => }/operating_status.md (100%) rename docs/schema/reference/places/{place => }/place.md (53%) delete mode 100644 docs/schema/reference/places/place/_category_.json delete mode 100644 docs/schema/reference/places/place/brand.md rename docs/schema/reference/places/{place => }/taxonomy.md (77%) create mode 100644 docs/schema/reference/system/_category_.json rename docs/schema/reference/{types/strings => system}/country_code_alpha2.md (100%) rename docs/schema/reference/{types/strings => system}/hex_color.md (100%) rename docs/schema/reference/{types/strings => system}/json_pointer.md (100%) rename docs/schema/reference/{types/strings => system}/language_tag.md (100%) rename docs/schema/reference/{types/strings => system}/phone_number.md (100%) create mode 100644 docs/schema/reference/system/primitive/_category_.json rename docs/schema/reference/{types => system/primitive}/geometry.md (100%) rename docs/schema/reference/{types => system/primitive}/primitives.md (100%) create mode 100644 docs/schema/reference/system/ref/_category_.json rename docs/schema/reference/{types/references => system/ref}/id.md (100%) rename docs/schema/reference/{types/strings => system}/region_code.md (100%) rename docs/schema/reference/{types/strings => system}/snake_case_string.md (100%) rename docs/schema/reference/{types/strings => system}/stripped_string.md (100%) rename docs/schema/reference/{types/strings => system}/wikidata_id.md (100%) create mode 100644 docs/schema/reference/transportation/_category_.json rename docs/schema/reference/transportation/{connector => }/connector.md (64%) delete mode 100644 docs/schema/reference/transportation/connector/_category_.json delete mode 100644 docs/schema/reference/types/_category_.json delete mode 100644 docs/schema/reference/types/cartography/_category_.json delete mode 100644 docs/schema/reference/types/cartography/max_zoom.md delete mode 100644 docs/schema/reference/types/cartography/min_zoom.md delete mode 100644 docs/schema/reference/types/cartography/prominence.md delete mode 100644 docs/schema/reference/types/cartography/sort_key.md delete mode 100644 docs/schema/reference/types/core_types/_category_.json delete mode 100644 docs/schema/reference/types/core_types/feature_version.md delete mode 100644 docs/schema/reference/types/core_types/level.md delete mode 100644 docs/schema/reference/types/names/_category_.json delete mode 100644 docs/schema/reference/types/names/name_rule.md delete mode 100644 docs/schema/reference/types/names/names.md delete mode 100644 docs/schema/reference/types/perspectives/_category_.json delete mode 100644 docs/schema/reference/types/references/_category_.json delete mode 100644 docs/schema/reference/types/sources/_category_.json delete mode 100644 docs/schema/reference/types/strings/_category_.json diff --git a/docs/schema/reference/addresses/_category_.json b/docs/schema/reference/addresses/_category_.json new file mode 100644 index 000000000..09d1cd2d3 --- /dev/null +++ b/docs/schema/reference/addresses/_category_.json @@ -0,0 +1,3 @@ +{ + "label": "Addresses" +} diff --git a/docs/schema/reference/addresses/address/address.md b/docs/schema/reference/addresses/address.md similarity index 72% rename from docs/schema/reference/addresses/address/address.md rename to docs/schema/reference/addresses/address.md index b7826aac3..234d036d5 100644 --- a/docs/schema/reference/addresses/address/address.md +++ b/docs/schema/reference/addresses/address.md @@ -19,14 +19,14 @@ provinces, state, and regions, and similar addressing units are found. | Name | Type | Description | |-----:|:----:|-------------| -| `id` | [`Id`](../../types/references/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | +| `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | | `bbox` | `bbox` (optional) | An optional bounding box for the feature | | `geometry` | `geometry` | Position of the address. Addresses are point geometries. | | `theme` | `"addresses"` | | | `type` | `"address"` | | -| `version` | [`FeatureVersion`](../../types/core_types/feature_version.md) | | -| `sources[]` | [`Sources`](../../types/sources/sources.md) (list, optional) | | -| `sources[].property` | [`JsonPointer`](../../types/strings/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to. +| `version` | [`FeatureVersion`](../core/feature_version.md) | | +| `sources[]` | [`Sources`](../core/sources.md) (list, optional) | | +| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to. The root document value `""` indicates that this source information applies to the entire feature, excepting properties (fields) for which a dedicated source information @@ -38,7 +38,7 @@ example, the value `"/names/common/en"` indicates that the source information ap the English common name of a named feature, while the value `"/geometry"` indicates that it applies to the feature geometry. | | `sources[].dataset` | `string` | Name of the dataset where the source data can be found. | -| `sources[].license` | [`StrippedString`](../../types/strings/stripped_string.md) (optional) | Source data license name. +| `sources[].license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name. This should be a valid SPDX license identifier when available. @@ -48,10 +48,10 @@ be found. The format of record identifiers is dataset-specific. | | `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | -| `sources[].confidence` | [`ConfidenceScore`](../../types/core_types/confidence_score.md) (optional) | Confidence value from the source dataset. +| `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset. This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | -| `sources[].between` | [`LinearlyReferencedRange`](../../types/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | +| `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | | `address_levels[]` | `list<`[`AddressLevel`](address_level.md)`>` (optional) | Names of the sub-country addressing areas the address belongs to, including the city or locality, in descending order of generality. @@ -67,14 +67,14 @@ When a specific level that is required for a country is not known. most likely because the data provider has not supplied it and we have not derived it from another source, the list item corresponding to that level must be present, but its `value` field should be omitted. | -| `address_levels[].value` | [`StrippedString`](../../types/strings/stripped_string.md) (optional) | | -| `country` | [`CountryCodeAlpha2`](../../types/strings/country_code_alpha2.md) | The country the address belongs to, as an ISO 3166-1 alpha-2 country code. | -| `number` | [`StrippedString`](../../types/strings/stripped_string.md) (optional) | The house number. +| `address_levels[].value` | [`StrippedString`](../system/stripped_string.md) (optional) | | +| `country` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) | The country the address belongs to, as an ISO 3166-1 alpha-2 country code. | +| `number` | [`StrippedString`](../system/stripped_string.md) (optional) | The house number. This field does not necessarily contain an integer or even a number. Values such as "74B", "189 1/2", and "208.5", where the non-integer or non-number part is part of the house number, not a unit number, are in common use. | -| `postal_city` | [`StrippedString`](../../types/strings/stripped_string.md) (optional) | The postal authority designated city name, if applicable. +| `postal_city` | [`StrippedString`](../system/stripped_string.md) (optional) | The postal authority designated city name, if applicable. In some countries or regions, a mailing address may need to specify a different city name than the city that actually contains the address coordinates. This optional @@ -86,14 +86,14 @@ For example: is Ridgeville. - The postal city for the Slovenian address *Tomaj 71, 6221 Tomaj, Slovenia* is Dutovlje. | -| `postcode` | [`StrippedString`](../../types/strings/stripped_string.md) (optional) | The postal code. | -| `street` | [`StrippedString`](../../types/strings/stripped_string.md) (optional) | The street name. +| `postcode` | [`StrippedString`](../system/stripped_string.md) (optional) | The postal code. | +| `street` | [`StrippedString`](../system/stripped_string.md) (optional) | The street name. The street name can include a type (*e.g.*, "Street" or "St", "Boulevard" or "Blvd", *etc.*) and a directional (*e.g.*, "NW" or "Northwest", "S" or "Sud"). Both type and directional, if present, may be either a prefix or a suffix to the primary name. They may either be fully spelled-out or abbreviated. | -| `unit` | [`StrippedString`](../../types/strings/stripped_string.md) (optional) | The secondary address unit designator. +| `unit` | [`StrippedString`](../system/stripped_string.md) (optional) | The secondary address unit designator. In the case where the primary street address is divided into secondary units, which may be apartments, floors, or even buildings if the primary street address is a diff --git a/docs/schema/reference/addresses/address/_category_.json b/docs/schema/reference/addresses/address/_category_.json deleted file mode 100644 index 6ad6f25b8..000000000 --- a/docs/schema/reference/addresses/address/_category_.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "label": "Address" -} diff --git a/docs/schema/reference/addresses/address/address_level.md b/docs/schema/reference/addresses/address_level.md similarity index 88% rename from docs/schema/reference/addresses/address/address_level.md rename to docs/schema/reference/addresses/address_level.md index 606479c3d..dac0c8cd0 100644 --- a/docs/schema/reference/addresses/address/address_level.md +++ b/docs/schema/reference/addresses/address_level.md @@ -19,4 +19,4 @@ countries and regions, address levels do not necessarily correspond to administr | Name | Type | Description | |-----:|:----:|-------------| -| `value` | [`StrippedString`](../../types/strings/stripped_string.md) (optional) | | +| `value` | [`StrippedString`](../system/stripped_string.md) (optional) | | diff --git a/docs/schema/reference/base/bathymetry/bathymetry.md b/docs/schema/reference/base/bathymetry.md similarity index 59% rename from docs/schema/reference/base/bathymetry/bathymetry.md rename to docs/schema/reference/base/bathymetry.md index 3797bf502..87e56c5cd 100644 --- a/docs/schema/reference/base/bathymetry/bathymetry.md +++ b/docs/schema/reference/base/bathymetry.md @@ -7,14 +7,14 @@ lake beds or ocean floors. | Name | Type | Description | |-----:|:----:|-------------| -| `id` | [`Id`](../../types/references/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | +| `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | | `bbox` | `bbox` (optional) | An optional bounding box for the feature | | `geometry` | `geometry` | Shape of the underwater area, which may be a polygon or multi-polygon. | | `theme` | `"base"` | | | `type` | `"bathymetry"` | | -| `version` | [`FeatureVersion`](../../types/core_types/feature_version.md) | | -| `sources[]` | [`Sources`](../../types/sources/sources.md) (list, optional) | | -| `sources[].property` | [`JsonPointer`](../../types/strings/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to. +| `version` | [`FeatureVersion`](../core/feature_version.md) | | +| `sources[]` | [`Sources`](../core/sources.md) (list, optional) | | +| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to. The root document value `""` indicates that this source information applies to the entire feature, excepting properties (fields) for which a dedicated source information @@ -26,7 +26,7 @@ example, the value `"/names/common/en"` indicates that the source information ap the English common name of a named feature, while the value `"/geometry"` indicates that it applies to the feature geometry. | | `sources[].dataset` | `string` | Name of the dataset where the source data can be found. | -| `sources[].license` | [`StrippedString`](../../types/strings/stripped_string.md) (optional) | Source data license name. +| `sources[].license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name. This should be a valid SPDX license identifier when available. @@ -36,16 +36,16 @@ be found. The format of record identifiers is dataset-specific. | | `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | -| `sources[].confidence` | [`ConfidenceScore`](../../types/core_types/confidence_score.md) (optional) | Confidence value from the source dataset. +| `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset. This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | -| `sources[].between` | [`LinearlyReferencedRange`](../../types/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | +| `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | | `depth` | [`Depth`](depth.md) | | -| `cartography` | [`CartographicHints`](../../types/cartography/cartographic_hints.md) (optional) | | -| `cartography.prominence` | [`Prominence`](../../types/cartography/prominence.md) (optional) | | -| `cartography.min_zoom` | [`MinZoom`](../../types/cartography/min_zoom.md) (optional) | | -| `cartography.max_zoom` | [`MaxZoom`](../../types/cartography/max_zoom.md) (optional) | | -| `cartography.sort_key` | [`SortKey`](../../types/cartography/sort_key.md) (optional) | | +| `cartography` | [`CartographicHints`](../core/cartographic_hints.md) (optional) | | +| `cartography.prominence` | [`Prominence`](../core/prominence.md) (optional) | | +| `cartography.min_zoom` | [`MinZoom`](../core/min_zoom.md) (optional) | | +| `cartography.max_zoom` | [`MaxZoom`](../core/max_zoom.md) (optional) | | +| `cartography.sort_key` | [`SortKey`](../core/sort_key.md) (optional) | | ## Examples diff --git a/docs/schema/reference/base/bathymetry/_category_.json b/docs/schema/reference/base/bathymetry/_category_.json deleted file mode 100644 index 34281ca63..000000000 --- a/docs/schema/reference/base/bathymetry/_category_.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "label": "Bathymetry" -} diff --git a/docs/schema/reference/base/bathymetry/depth.md b/docs/schema/reference/base/bathymetry/depth.md deleted file mode 100644 index 81d34c69b..000000000 --- a/docs/schema/reference/base/bathymetry/depth.md +++ /dev/null @@ -1,7 +0,0 @@ -# Depth (`int32`) - -## Constraints - -- `Ge(ge=0)` -- `Ge(ge=-2147483648)` (from [`int32`](../../types/primitives.md)) -- `Le(le=2147483647)` (from [`int32`](../../types/primitives.md)) diff --git a/docs/schema/reference/base/depth.md b/docs/schema/reference/base/depth.md new file mode 100644 index 000000000..6cef233a1 --- /dev/null +++ b/docs/schema/reference/base/depth.md @@ -0,0 +1,7 @@ +# Depth (`int32`) + +## Constraints + +- `Ge(ge=0)` +- `Ge(ge=-2147483648)` (from [`int32`](../system/primitive/primitives.md)) +- `Le(le=2147483647)` (from [`int32`](../system/primitive/primitives.md)) diff --git a/docs/schema/reference/base/elevation.md b/docs/schema/reference/base/elevation.md index fe74628d3..c45058bf1 100644 --- a/docs/schema/reference/base/elevation.md +++ b/docs/schema/reference/base/elevation.md @@ -3,5 +3,5 @@ ## Constraints - `Le(le=9000)` -- `Ge(ge=-2147483648)` (from [`int32`](../types/primitives.md)) -- `Le(le=2147483647)` (from [`int32`](../types/primitives.md)) +- `Ge(ge=-2147483648)` (from [`int32`](../system/primitive/primitives.md)) +- `Le(le=2147483647)` (from [`int32`](../system/primitive/primitives.md)) diff --git a/docs/schema/reference/base/infrastructure/height.md b/docs/schema/reference/base/height.md similarity index 100% rename from docs/schema/reference/base/infrastructure/height.md rename to docs/schema/reference/base/height.md diff --git a/docs/schema/reference/base/infrastructure/infrastructure.md b/docs/schema/reference/base/infrastructure.md similarity index 50% rename from docs/schema/reference/base/infrastructure/infrastructure.md rename to docs/schema/reference/base/infrastructure.md index 23a656e55..4005fcf36 100644 --- a/docs/schema/reference/base/infrastructure/infrastructure.md +++ b/docs/schema/reference/base/infrastructure.md @@ -7,15 +7,15 @@ such as bridges, airports, runways, aerialways, communication towers, and power | Name | Type | Description | |-----:|:----:|-------------| -| `id` | [`Id`](../../types/references/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | +| `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | | `bbox` | `bbox` (optional) | An optional bounding box for the feature | | `geometry` | `geometry` | Geometry of the infrastructure feature, which may be a point, line string, polygon, or multi-polygon. | | `theme` | `"base"` | | | `type` | `"infrastructure"` | | -| `version` | [`FeatureVersion`](../../types/core_types/feature_version.md) | | -| `sources[]` | [`Sources`](../../types/sources/sources.md) (list, optional) | | -| `sources[].property` | [`JsonPointer`](../../types/strings/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to. +| `version` | [`FeatureVersion`](../core/feature_version.md) | | +| `sources[]` | [`Sources`](../core/sources.md) (list, optional) | | +| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to. The root document value `""` indicates that this source information applies to the entire feature, excepting properties (fields) for which a dedicated source information @@ -27,7 +27,7 @@ example, the value `"/names/common/en"` indicates that the source information ap the English common name of a named feature, while the value `"/geometry"` indicates that it applies to the feature geometry. | | `sources[].dataset` | `string` | Name of the dataset where the source data can be found. | -| `sources[].license` | [`StrippedString`](../../types/strings/stripped_string.md) (optional) | Source data license name. +| `sources[].license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name. This should be a valid SPDX license identifier when available. @@ -37,30 +37,30 @@ be found. The format of record identifiers is dataset-specific. | | `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | -| `sources[].confidence` | [`ConfidenceScore`](../../types/core_types/confidence_score.md) (optional) | Confidence value from the source dataset. +| `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset. This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | -| `sources[].between` | [`LinearlyReferencedRange`](../../types/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | +| `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | | `class` | [`InfrastructureClass`](infrastructure_class.md) | | | `subtype` | [`InfrastructureSubtype`](infrastructure_subtype.md) | | | `height` | [`Height`](height.md) (optional) | | -| `surface` | [`SurfaceMaterial`](../surface_material.md) (optional) | | -| `names` | [`Names`](../../types/names/names.md) (optional) | | -| `names.primary` | [`StrippedString`](../../types/strings/stripped_string.md) | The most commonly used name. | -| `names.common` | [`CommonNames`](../../types/names/common_names.md) (map, optional) | | -| `names.rules[]` | `list<`[`NameRule`](../../types/names/name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | -| `names.rules[].value` | [`StrippedString`](../../types/strings/stripped_string.md) | The actual name value. | -| `names.rules[].variant` | [`NameVariant`](../../types/names/name_variant.md) | The name variant for this name rule. | -| `names.rules[].language` | [`LanguageTag`](../../types/strings/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 +| `surface` | [`SurfaceMaterial`](surface_material.md) (optional) | | +| `names` | [`Names`](../core/names.md) (optional) | | +| `names.primary` | [`StrippedString`](../system/stripped_string.md) | The most commonly used name. | +| `names.common` | [`CommonNames`](../core/common_names.md) (map, optional) | | +| `names.rules[]` | `list<`[`NameRule`](../core/name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | +| `names.rules[].value` | [`StrippedString`](../system/stripped_string.md) | The actual name value. | +| `names.rules[].variant` | [`NameVariant`](../core/name_variant.md) | The name variant for this name rule. | +| `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 language tag. | -| `names.rules[].perspectives` | [`Perspectives`](../../types/perspectives/perspectives.md) (optional) | | -| `names.rules[].perspectives.mode` | [`PerspectiveMode`](../../types/perspectives/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | -| `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../../types/strings/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | -| `names.rules[].between` | [`LinearlyReferencedRange`](../../types/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | -| `names.rules[].side` | [`Side`](../../types/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | -| `level` | [`Level`](../../types/core_types/level.md) (optional) | | -| `source_tags` | [`SourceTags`](../source_tags.md) (map, optional) | | -| `wikidata` | [`WikidataId`](../../types/strings/wikidata_id.md) (optional) | | +| `names.rules[].perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | | +| `names.rules[].perspectives.mode` | [`PerspectiveMode`](../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | +| `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | +| `names.rules[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | +| `names.rules[].side` | [`Side`](../core/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | +| `level` | [`Level`](../core/level.md) (optional) | | +| `source_tags` | [`SourceTags`](source_tags.md) (map, optional) | | +| `wikidata` | [`WikidataId`](../system/wikidata_id.md) (optional) | | ## Examples diff --git a/docs/schema/reference/base/infrastructure/_category_.json b/docs/schema/reference/base/infrastructure/_category_.json deleted file mode 100644 index 6964bbf02..000000000 --- a/docs/schema/reference/base/infrastructure/_category_.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "label": "Infrastructure" -} diff --git a/docs/schema/reference/base/infrastructure/infrastructure_class.md b/docs/schema/reference/base/infrastructure_class.md similarity index 100% rename from docs/schema/reference/base/infrastructure/infrastructure_class.md rename to docs/schema/reference/base/infrastructure_class.md diff --git a/docs/schema/reference/base/infrastructure/infrastructure_subtype.md b/docs/schema/reference/base/infrastructure_subtype.md similarity index 100% rename from docs/schema/reference/base/infrastructure/infrastructure_subtype.md rename to docs/schema/reference/base/infrastructure_subtype.md diff --git a/docs/schema/reference/base/land.md b/docs/schema/reference/base/land.md new file mode 100644 index 000000000..0de3a125e --- /dev/null +++ b/docs/schema/reference/base/land.md @@ -0,0 +1,101 @@ +# Land + +Land features are representations of physical land surfaces. + +In Overture data releases, land features are sourced from OpenStreetMap. TODO. Finish this when +I get more info from Jennings. + + + +Physical representations of land surfaces. + +Global land derived from the inverse of OSM Coastlines. Translates `natural` tags from OpenStreetMap. + +TODO: Update this description when the relationship to `land_cover` is better understood. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | +| `bbox` | `bbox` (optional) | An optional bounding box for the feature | +| `geometry` | `geometry` | Geometry of the land feature, which may be a point, line string, polygon, or +multi-polygon. | +| `theme` | `"base"` | | +| `type` | `"land"` | | +| `version` | [`FeatureVersion`](../core/feature_version.md) | | +| `sources[]` | [`Sources`](../core/sources.md) (list, optional) | | +| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to. + +The root document value `""` indicates that this source information applies to the +entire feature, excepting properties (fields) for which a dedicated source information +record exists. + +Any other JSON Pointer apart from `""` indicates that this source record provides +dedicated source information for the property at the path in the JSON Pointer. As an +example, the value `"/names/common/en"` indicates that the source information applies to +the English common name of a named feature, while the value `"/geometry"` indicates that +it applies to the feature geometry. | +| `sources[].dataset` | `string` | Name of the dataset where the source data can be found. | +| `sources[].license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name. + +This should be a valid SPDX license identifier when available. + +If omitted, contact the data provider for more license information. | +| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can +be found. + +The format of record identifiers is dataset-specific. | +| `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | +| `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset. + +This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | +| `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | +| `class` | [`LandClass`](land_class.md) (optional) | | +| `subtype` | [`LandSubtype`](land_subtype.md) (optional) | | +| `elevation` | [`Elevation`](elevation.md) (optional) | | +| `surface` | [`SurfaceMaterial`](surface_material.md) (optional) | | +| `names` | [`Names`](../core/names.md) (optional) | | +| `names.primary` | [`StrippedString`](../system/stripped_string.md) | The most commonly used name. | +| `names.common` | [`CommonNames`](../core/common_names.md) (map, optional) | | +| `names.rules[]` | `list<`[`NameRule`](../core/name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | +| `names.rules[].value` | [`StrippedString`](../system/stripped_string.md) | The actual name value. | +| `names.rules[].variant` | [`NameVariant`](../core/name_variant.md) | The name variant for this name rule. | +| `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 +language tag. | +| `names.rules[].perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | | +| `names.rules[].perspectives.mode` | [`PerspectiveMode`](../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | +| `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | +| `names.rules[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | +| `names.rules[].side` | [`Side`](../core/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | +| `level` | [`Level`](../core/level.md) (optional) | | +| `source_tags` | [`SourceTags`](source_tags.md) (map, optional) | | +| `wikidata` | [`WikidataId`](../system/wikidata_id.md) (optional) | | + +## Examples + +| Column | Value | +|-------:|-------| +| `id` | 70fc3596-a987-3fea-820c-c016c0a2f0da | +| `geometry` | POINT (-178.7 -85.45) | +| `theme` | base | +| `type` | land | +| `version` | `0` | +| `sources[0].property` | | +| `sources[0].dataset` | OpenStreetMap | +| `sources[0].record_id` | n11693475112@1 | +| `sources[0].update_time` | 2024-03-05T09:23:39.000Z | +| `sources[0].confidence` | `null` | +| `sources[0].between` | `null` | +| `class` | cliff | +| `subtype` | physical | +| `elevation` | `null` | +| `surface` | `null` | +| `names.primary` | Dismal Buttress | +| `names.common` | `null` | +| `names.rules` | `null` | +| `level` | `null` | +| `source_tags.natural` | cliff | +| `source_tags.ref:linz:place_id` | 12318 | +| `source_tags.wikipedia` | en:Dismal Buttress | +| `wikidata` | Q5282342 | diff --git a/docs/schema/reference/base/land/_category_.json b/docs/schema/reference/base/land/_category_.json deleted file mode 100644 index ad26dff83..000000000 --- a/docs/schema/reference/base/land/_category_.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "label": "Land" -} diff --git a/docs/schema/reference/base/land/land.md b/docs/schema/reference/base/land/land.md deleted file mode 100644 index 83c012421..000000000 --- a/docs/schema/reference/base/land/land.md +++ /dev/null @@ -1,101 +0,0 @@ -# Land - -Land features are representations of physical land surfaces. - -In Overture data releases, land features are sourced from OpenStreetMap. TODO. Finish this when -I get more info from Jennings. - - - -Physical representations of land surfaces. - -Global land derived from the inverse of OSM Coastlines. Translates `natural` tags from OpenStreetMap. - -TODO: Update this description when the relationship to `land_cover` is better understood. - -## Fields - -| Name | Type | Description | -|-----:|:----:|-------------| -| `id` | [`Id`](../../types/references/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | -| `bbox` | `bbox` (optional) | An optional bounding box for the feature | -| `geometry` | `geometry` | Geometry of the land feature, which may be a point, line string, polygon, or -multi-polygon. | -| `theme` | `"base"` | | -| `type` | `"land"` | | -| `version` | [`FeatureVersion`](../../types/core_types/feature_version.md) | | -| `sources[]` | [`Sources`](../../types/sources/sources.md) (list, optional) | | -| `sources[].property` | [`JsonPointer`](../../types/strings/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to. - -The root document value `""` indicates that this source information applies to the -entire feature, excepting properties (fields) for which a dedicated source information -record exists. - -Any other JSON Pointer apart from `""` indicates that this source record provides -dedicated source information for the property at the path in the JSON Pointer. As an -example, the value `"/names/common/en"` indicates that the source information applies to -the English common name of a named feature, while the value `"/geometry"` indicates that -it applies to the feature geometry. | -| `sources[].dataset` | `string` | Name of the dataset where the source data can be found. | -| `sources[].license` | [`StrippedString`](../../types/strings/stripped_string.md) (optional) | Source data license name. - -This should be a valid SPDX license identifier when available. - -If omitted, contact the data provider for more license information. | -| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can -be found. - -The format of record identifiers is dataset-specific. | -| `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | -| `sources[].confidence` | [`ConfidenceScore`](../../types/core_types/confidence_score.md) (optional) | Confidence value from the source dataset. - -This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | -| `sources[].between` | [`LinearlyReferencedRange`](../../types/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | -| `class` | [`LandClass`](land_class.md) (optional) | | -| `subtype` | [`LandSubtype`](land_subtype.md) (optional) | | -| `elevation` | [`Elevation`](../elevation.md) (optional) | | -| `surface` | [`SurfaceMaterial`](../surface_material.md) (optional) | | -| `names` | [`Names`](../../types/names/names.md) (optional) | | -| `names.primary` | [`StrippedString`](../../types/strings/stripped_string.md) | The most commonly used name. | -| `names.common` | [`CommonNames`](../../types/names/common_names.md) (map, optional) | | -| `names.rules[]` | `list<`[`NameRule`](../../types/names/name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | -| `names.rules[].value` | [`StrippedString`](../../types/strings/stripped_string.md) | The actual name value. | -| `names.rules[].variant` | [`NameVariant`](../../types/names/name_variant.md) | The name variant for this name rule. | -| `names.rules[].language` | [`LanguageTag`](../../types/strings/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 -language tag. | -| `names.rules[].perspectives` | [`Perspectives`](../../types/perspectives/perspectives.md) (optional) | | -| `names.rules[].perspectives.mode` | [`PerspectiveMode`](../../types/perspectives/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | -| `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../../types/strings/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | -| `names.rules[].between` | [`LinearlyReferencedRange`](../../types/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | -| `names.rules[].side` | [`Side`](../../types/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | -| `level` | [`Level`](../../types/core_types/level.md) (optional) | | -| `source_tags` | [`SourceTags`](../source_tags.md) (map, optional) | | -| `wikidata` | [`WikidataId`](../../types/strings/wikidata_id.md) (optional) | | - -## Examples - -| Column | Value | -|-------:|-------| -| `id` | 70fc3596-a987-3fea-820c-c016c0a2f0da | -| `geometry` | POINT (-178.7 -85.45) | -| `theme` | base | -| `type` | land | -| `version` | `0` | -| `sources[0].property` | | -| `sources[0].dataset` | OpenStreetMap | -| `sources[0].record_id` | n11693475112@1 | -| `sources[0].update_time` | 2024-03-05T09:23:39.000Z | -| `sources[0].confidence` | `null` | -| `sources[0].between` | `null` | -| `class` | cliff | -| `subtype` | physical | -| `elevation` | `null` | -| `surface` | `null` | -| `names.primary` | Dismal Buttress | -| `names.common` | `null` | -| `names.rules` | `null` | -| `level` | `null` | -| `source_tags.natural` | cliff | -| `source_tags.ref:linz:place_id` | 12318 | -| `source_tags.wikipedia` | en:Dismal Buttress | -| `wikidata` | Q5282342 | diff --git a/docs/schema/reference/base/land/land_class.md b/docs/schema/reference/base/land_class.md similarity index 100% rename from docs/schema/reference/base/land/land_class.md rename to docs/schema/reference/base/land_class.md diff --git a/docs/schema/reference/base/land_cover/land_cover.md b/docs/schema/reference/base/land_cover.md similarity index 63% rename from docs/schema/reference/base/land_cover/land_cover.md rename to docs/schema/reference/base/land_cover.md index fd8869dc7..10a52d84c 100644 --- a/docs/schema/reference/base/land_cover/land_cover.md +++ b/docs/schema/reference/base/land_cover.md @@ -14,14 +14,14 @@ TODO: Explain relationship to `Land` features. | Name | Type | Description | |-----:|:----:|-------------| -| `id` | [`Id`](../../types/references/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | +| `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | | `bbox` | `bbox` (optional) | An optional bounding box for the feature | | `geometry` | `geometry` | Shape of the covered land area, which may be a polygon or multi-polygon. | | `theme` | `"base"` | | | `type` | `"land_cover"` | | -| `version` | [`FeatureVersion`](../../types/core_types/feature_version.md) | | -| `sources[]` | [`Sources`](../../types/sources/sources.md) (list, optional) | | -| `sources[].property` | [`JsonPointer`](../../types/strings/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to. +| `version` | [`FeatureVersion`](../core/feature_version.md) | | +| `sources[]` | [`Sources`](../core/sources.md) (list, optional) | | +| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to. The root document value `""` indicates that this source information applies to the entire feature, excepting properties (fields) for which a dedicated source information @@ -33,7 +33,7 @@ example, the value `"/names/common/en"` indicates that the source information ap the English common name of a named feature, while the value `"/geometry"` indicates that it applies to the feature geometry. | | `sources[].dataset` | `string` | Name of the dataset where the source data can be found. | -| `sources[].license` | [`StrippedString`](../../types/strings/stripped_string.md) (optional) | Source data license name. +| `sources[].license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name. This should be a valid SPDX license identifier when available. @@ -43,16 +43,16 @@ be found. The format of record identifiers is dataset-specific. | | `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | -| `sources[].confidence` | [`ConfidenceScore`](../../types/core_types/confidence_score.md) (optional) | Confidence value from the source dataset. +| `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset. This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | -| `sources[].between` | [`LinearlyReferencedRange`](../../types/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | +| `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | | `subtype` | [`LandCoverSubtype`](land_cover_subtype.md) | | -| `cartography` | [`CartographicHints`](../../types/cartography/cartographic_hints.md) (optional) | | -| `cartography.prominence` | [`Prominence`](../../types/cartography/prominence.md) (optional) | | -| `cartography.min_zoom` | [`MinZoom`](../../types/cartography/min_zoom.md) (optional) | | -| `cartography.max_zoom` | [`MaxZoom`](../../types/cartography/max_zoom.md) (optional) | | -| `cartography.sort_key` | [`SortKey`](../../types/cartography/sort_key.md) (optional) | | +| `cartography` | [`CartographicHints`](../core/cartographic_hints.md) (optional) | | +| `cartography.prominence` | [`Prominence`](../core/prominence.md) (optional) | | +| `cartography.min_zoom` | [`MinZoom`](../core/min_zoom.md) (optional) | | +| `cartography.max_zoom` | [`MaxZoom`](../core/max_zoom.md) (optional) | | +| `cartography.sort_key` | [`SortKey`](../core/sort_key.md) (optional) | | ## Examples diff --git a/docs/schema/reference/base/land_cover/_category_.json b/docs/schema/reference/base/land_cover/_category_.json deleted file mode 100644 index ea1a05c51..000000000 --- a/docs/schema/reference/base/land_cover/_category_.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "label": "Land Cover" -} diff --git a/docs/schema/reference/base/land_cover/land_cover_subtype.md b/docs/schema/reference/base/land_cover_subtype.md similarity index 100% rename from docs/schema/reference/base/land_cover/land_cover_subtype.md rename to docs/schema/reference/base/land_cover_subtype.md diff --git a/docs/schema/reference/base/land/land_subtype.md b/docs/schema/reference/base/land_subtype.md similarity index 100% rename from docs/schema/reference/base/land/land_subtype.md rename to docs/schema/reference/base/land_subtype.md diff --git a/docs/schema/reference/base/land_use/land_use.md b/docs/schema/reference/base/land_use.md similarity index 51% rename from docs/schema/reference/base/land_use/land_use.md rename to docs/schema/reference/base/land_use.md index f00496015..f483afdb7 100644 --- a/docs/schema/reference/base/land_use/land_use.md +++ b/docs/schema/reference/base/land_use.md @@ -12,15 +12,15 @@ TODO: Explain relationship to `Land` features. | Name | Type | Description | |-----:|:----:|-------------| -| `id` | [`Id`](../../types/references/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | +| `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | | `bbox` | `bbox` (optional) | An optional bounding box for the feature | | `geometry` | `geometry` | Geometry of the land use area, which may be a point, line string, polygon, or multi-polygon. | | `theme` | `"base"` | | | `type` | `"land_use"` | | -| `version` | [`FeatureVersion`](../../types/core_types/feature_version.md) | | -| `sources[]` | [`Sources`](../../types/sources/sources.md) (list, optional) | | -| `sources[].property` | [`JsonPointer`](../../types/strings/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to. +| `version` | [`FeatureVersion`](../core/feature_version.md) | | +| `sources[]` | [`Sources`](../core/sources.md) (list, optional) | | +| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to. The root document value `""` indicates that this source information applies to the entire feature, excepting properties (fields) for which a dedicated source information @@ -32,7 +32,7 @@ example, the value `"/names/common/en"` indicates that the source information ap the English common name of a named feature, while the value `"/geometry"` indicates that it applies to the feature geometry. | | `sources[].dataset` | `string` | Name of the dataset where the source data can be found. | -| `sources[].license` | [`StrippedString`](../../types/strings/stripped_string.md) (optional) | Source data license name. +| `sources[].license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name. This should be a valid SPDX license identifier when available. @@ -42,30 +42,30 @@ be found. The format of record identifiers is dataset-specific. | | `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | -| `sources[].confidence` | [`ConfidenceScore`](../../types/core_types/confidence_score.md) (optional) | Confidence value from the source dataset. +| `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset. This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | -| `sources[].between` | [`LinearlyReferencedRange`](../../types/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | +| `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | | `class` | [`LandUseClass`](land_use_class.md) | | | `subtype` | [`LandUseSubtype`](land_use_subtype.md) | | -| `elevation` | [`Elevation`](../elevation.md) (optional) | | -| `surface` | [`SurfaceMaterial`](../surface_material.md) (optional) | | -| `names` | [`Names`](../../types/names/names.md) (optional) | | -| `names.primary` | [`StrippedString`](../../types/strings/stripped_string.md) | The most commonly used name. | -| `names.common` | [`CommonNames`](../../types/names/common_names.md) (map, optional) | | -| `names.rules[]` | `list<`[`NameRule`](../../types/names/name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | -| `names.rules[].value` | [`StrippedString`](../../types/strings/stripped_string.md) | The actual name value. | -| `names.rules[].variant` | [`NameVariant`](../../types/names/name_variant.md) | The name variant for this name rule. | -| `names.rules[].language` | [`LanguageTag`](../../types/strings/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 +| `elevation` | [`Elevation`](elevation.md) (optional) | | +| `surface` | [`SurfaceMaterial`](surface_material.md) (optional) | | +| `names` | [`Names`](../core/names.md) (optional) | | +| `names.primary` | [`StrippedString`](../system/stripped_string.md) | The most commonly used name. | +| `names.common` | [`CommonNames`](../core/common_names.md) (map, optional) | | +| `names.rules[]` | `list<`[`NameRule`](../core/name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | +| `names.rules[].value` | [`StrippedString`](../system/stripped_string.md) | The actual name value. | +| `names.rules[].variant` | [`NameVariant`](../core/name_variant.md) | The name variant for this name rule. | +| `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 language tag. | -| `names.rules[].perspectives` | [`Perspectives`](../../types/perspectives/perspectives.md) (optional) | | -| `names.rules[].perspectives.mode` | [`PerspectiveMode`](../../types/perspectives/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | -| `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../../types/strings/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | -| `names.rules[].between` | [`LinearlyReferencedRange`](../../types/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | -| `names.rules[].side` | [`Side`](../../types/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | -| `level` | [`Level`](../../types/core_types/level.md) (optional) | | -| `source_tags` | [`SourceTags`](../source_tags.md) (map, optional) | | -| `wikidata` | [`WikidataId`](../../types/strings/wikidata_id.md) (optional) | | +| `names.rules[].perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | | +| `names.rules[].perspectives.mode` | [`PerspectiveMode`](../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | +| `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | +| `names.rules[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | +| `names.rules[].side` | [`Side`](../core/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | +| `level` | [`Level`](../core/level.md) (optional) | | +| `source_tags` | [`SourceTags`](source_tags.md) (map, optional) | | +| `wikidata` | [`WikidataId`](../system/wikidata_id.md) (optional) | | ## Examples diff --git a/docs/schema/reference/base/land_use/_category_.json b/docs/schema/reference/base/land_use/_category_.json deleted file mode 100644 index 89fea56af..000000000 --- a/docs/schema/reference/base/land_use/_category_.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "label": "Land Use" -} diff --git a/docs/schema/reference/base/land_use/land_use_class.md b/docs/schema/reference/base/land_use_class.md similarity index 100% rename from docs/schema/reference/base/land_use/land_use_class.md rename to docs/schema/reference/base/land_use_class.md diff --git a/docs/schema/reference/base/land_use/land_use_subtype.md b/docs/schema/reference/base/land_use_subtype.md similarity index 100% rename from docs/schema/reference/base/land_use/land_use_subtype.md rename to docs/schema/reference/base/land_use_subtype.md diff --git a/docs/schema/reference/base/water/water.md b/docs/schema/reference/base/water.md similarity index 57% rename from docs/schema/reference/base/water/water.md rename to docs/schema/reference/base/water.md index dd9d4c3d0..bfcd10639 100644 --- a/docs/schema/reference/base/water/water.md +++ b/docs/schema/reference/base/water.md @@ -28,15 +28,15 @@ and `water=*`. | Name | Type | Description | |-----:|:----:|-------------| -| `id` | [`Id`](../../types/references/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | +| `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | | `bbox` | `bbox` (optional) | An optional bounding box for the feature | | `geometry` | `geometry` | Geometry of the water feature, which may be a point, line string, polygon, or multi-polygon. | | `theme` | `"base"` | | | `type` | `"water"` | | -| `version` | [`FeatureVersion`](../../types/core_types/feature_version.md) | | -| `sources[]` | [`Sources`](../../types/sources/sources.md) (list, optional) | | -| `sources[].property` | [`JsonPointer`](../../types/strings/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to. +| `version` | [`FeatureVersion`](../core/feature_version.md) | | +| `sources[]` | [`Sources`](../core/sources.md) (list, optional) | | +| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to. The root document value `""` indicates that this source information applies to the entire feature, excepting properties (fields) for which a dedicated source information @@ -48,7 +48,7 @@ example, the value `"/names/common/en"` indicates that the source information ap the English common name of a named feature, while the value `"/geometry"` indicates that it applies to the feature geometry. | | `sources[].dataset` | `string` | Name of the dataset where the source data can be found. | -| `sources[].license` | [`StrippedString`](../../types/strings/stripped_string.md) (optional) | Source data license name. +| `sources[].license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name. This should be a valid SPDX license identifier when available. @@ -58,30 +58,30 @@ be found. The format of record identifiers is dataset-specific. | | `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | -| `sources[].confidence` | [`ConfidenceScore`](../../types/core_types/confidence_score.md) (optional) | Confidence value from the source dataset. +| `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset. This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | -| `sources[].between` | [`LinearlyReferencedRange`](../../types/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | +| `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | | `class` | [`WaterClass`](water_class.md) (optional) | | | `subtype` | [`WaterSubtype`](water_subtype.md) (optional) | | | `is_intermittent` | `boolean` (optional) | Whether the water body exists intermittently, not permanently | | `is_salt` | `boolean` (optional) | Whether the water body contains salt water | -| `level` | [`Level`](../../types/core_types/level.md) (optional) | | -| `names` | [`Names`](../../types/names/names.md) (optional) | | -| `names.primary` | [`StrippedString`](../../types/strings/stripped_string.md) | The most commonly used name. | -| `names.common` | [`CommonNames`](../../types/names/common_names.md) (map, optional) | | -| `names.rules[]` | `list<`[`NameRule`](../../types/names/name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | -| `names.rules[].value` | [`StrippedString`](../../types/strings/stripped_string.md) | The actual name value. | -| `names.rules[].variant` | [`NameVariant`](../../types/names/name_variant.md) | The name variant for this name rule. | -| `names.rules[].language` | [`LanguageTag`](../../types/strings/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 +| `level` | [`Level`](../core/level.md) (optional) | | +| `names` | [`Names`](../core/names.md) (optional) | | +| `names.primary` | [`StrippedString`](../system/stripped_string.md) | The most commonly used name. | +| `names.common` | [`CommonNames`](../core/common_names.md) (map, optional) | | +| `names.rules[]` | `list<`[`NameRule`](../core/name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | +| `names.rules[].value` | [`StrippedString`](../system/stripped_string.md) | The actual name value. | +| `names.rules[].variant` | [`NameVariant`](../core/name_variant.md) | The name variant for this name rule. | +| `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 language tag. | -| `names.rules[].perspectives` | [`Perspectives`](../../types/perspectives/perspectives.md) (optional) | | -| `names.rules[].perspectives.mode` | [`PerspectiveMode`](../../types/perspectives/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | -| `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../../types/strings/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | -| `names.rules[].between` | [`LinearlyReferencedRange`](../../types/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | -| `names.rules[].side` | [`Side`](../../types/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | -| `source_tags` | [`SourceTags`](../source_tags.md) (map, optional) | | -| `wikidata` | [`WikidataId`](../../types/strings/wikidata_id.md) (optional) | | +| `names.rules[].perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | | +| `names.rules[].perspectives.mode` | [`PerspectiveMode`](../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | +| `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | +| `names.rules[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | +| `names.rules[].side` | [`Side`](../core/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | +| `source_tags` | [`SourceTags`](source_tags.md) (map, optional) | | +| `wikidata` | [`WikidataId`](../system/wikidata_id.md) (optional) | | ## Examples diff --git a/docs/schema/reference/base/water/_category_.json b/docs/schema/reference/base/water/_category_.json deleted file mode 100644 index 70793df04..000000000 --- a/docs/schema/reference/base/water/_category_.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "label": "Water" -} diff --git a/docs/schema/reference/base/water/water_class.md b/docs/schema/reference/base/water_class.md similarity index 100% rename from docs/schema/reference/base/water/water_class.md rename to docs/schema/reference/base/water_class.md diff --git a/docs/schema/reference/base/water/water_subtype.md b/docs/schema/reference/base/water_subtype.md similarity index 100% rename from docs/schema/reference/base/water/water_subtype.md rename to docs/schema/reference/base/water_subtype.md diff --git a/docs/schema/reference/buildings/building/building.md b/docs/schema/reference/buildings/building.md similarity index 61% rename from docs/schema/reference/buildings/building/building.md rename to docs/schema/reference/buildings/building.md index c7d1b19e2..c0415b5d1 100644 --- a/docs/schema/reference/buildings/building/building.md +++ b/docs/schema/reference/buildings/building.md @@ -1,6 +1,6 @@ # Building -Buildings are man-made structures with roofs that exists permanently in one place. +Buildings are man-made structures with roofs that exist permanently in one place. A building's geometry represents the two-dimensional footprint of the building as viewed from directly above, looking down. Fields such as `height` and `num_floors` allow the @@ -12,14 +12,14 @@ model of the building. | Name | Type | Description | |-----:|:----:|-------------| -| `id` | [`Id`](../../types/references/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | +| `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | | `bbox` | `bbox` (optional) | An optional bounding box for the feature | | `geometry` | `geometry` | The building's footprint or roofprint (if traced from aerial/satellite imagery). | | `theme` | `"buildings"` | | | `type` | `"building"` | | -| `version` | [`FeatureVersion`](../../types/core_types/feature_version.md) | | -| `sources[]` | [`Sources`](../../types/sources/sources.md) (list, optional) | | -| `sources[].property` | [`JsonPointer`](../../types/strings/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to. +| `version` | [`FeatureVersion`](../core/feature_version.md) | | +| `sources[]` | [`Sources`](../core/sources.md) (list, optional) | | +| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to. The root document value `""` indicates that this source information applies to the entire feature, excepting properties (fields) for which a dedicated source information @@ -31,7 +31,7 @@ example, the value `"/names/common/en"` indicates that the source information ap the English common name of a named feature, while the value `"/geometry"` indicates that it applies to the feature geometry. | | `sources[].dataset` | `string` | Name of the dataset where the source data can be found. | -| `sources[].license` | [`StrippedString`](../../types/strings/stripped_string.md) (optional) | Source data license name. +| `sources[].license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name. This should be a valid SPDX license identifier when available. @@ -41,10 +41,10 @@ be found. The format of record identifiers is dataset-specific. | | `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | -| `sources[].confidence` | [`ConfidenceScore`](../../types/core_types/confidence_score.md) (optional) | Confidence value from the source dataset. +| `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset. This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | -| `sources[].between` | [`LinearlyReferencedRange`](../../types/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | +| `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | | `subtype` | [`BuildingSubtype`](building_subtype.md) (optional) | A broad classification of the current use and purpose of the building. If the current use of the building no longer accords with the original built @@ -56,20 +56,20 @@ train station but later converted into a shopping mall would have the value If the current use of the building no longer accords with the original built purpose, the current use should be specified. | | `has_parts` | `boolean` (optional) | Whether the building has associated building part features | -| `names` | [`Names`](../../types/names/names.md) (optional) | | -| `names.primary` | [`StrippedString`](../../types/strings/stripped_string.md) | The most commonly used name. | -| `names.common` | [`CommonNames`](../../types/names/common_names.md) (map, optional) | | -| `names.rules[]` | `list<`[`NameRule`](../../types/names/name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | -| `names.rules[].value` | [`StrippedString`](../../types/strings/stripped_string.md) | The actual name value. | -| `names.rules[].variant` | [`NameVariant`](../../types/names/name_variant.md) | The name variant for this name rule. | -| `names.rules[].language` | [`LanguageTag`](../../types/strings/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 +| `names` | [`Names`](../core/names.md) (optional) | | +| `names.primary` | [`StrippedString`](../system/stripped_string.md) | The most commonly used name. | +| `names.common` | [`CommonNames`](../core/common_names.md) (map, optional) | | +| `names.rules[]` | `list<`[`NameRule`](../core/name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | +| `names.rules[].value` | [`StrippedString`](../system/stripped_string.md) | The actual name value. | +| `names.rules[].variant` | [`NameVariant`](../core/name_variant.md) | The name variant for this name rule. | +| `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 language tag. | -| `names.rules[].perspectives` | [`Perspectives`](../../types/perspectives/perspectives.md) (optional) | | -| `names.rules[].perspectives.mode` | [`PerspectiveMode`](../../types/perspectives/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | -| `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../../types/strings/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | -| `names.rules[].between` | [`LinearlyReferencedRange`](../../types/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | -| `names.rules[].side` | [`Side`](../../types/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | -| `level` | [`Level`](../../types/core_types/level.md) (optional) | | +| `names.rules[].perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | | +| `names.rules[].perspectives.mode` | [`PerspectiveMode`](../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | +| `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | +| `names.rules[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | +| `names.rules[].side` | [`Side`](../core/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | +| `level` | [`Level`](../core/level.md) (optional) | | | `height` | `float64` (optional) | Height of the building or part in meters. This is the distance from the lowest point to the highest point. | @@ -97,13 +97,13 @@ that has an entry road or driveway at ground level into an interior courtyard, w part of the building bridges above the entry road. This property may sometimes be populated when `min_height` is missing and in these cases can be used as a proxy for `min_height`. | -| `facade_color` | [`HexColor`](../../types/strings/hex_color.md) (optional) | Facade color in `#rgb` or `#rrggbb` hex notation | -| `facade_material` | [`FacadeMaterial`](../facade_material.md) (optional) | Outer surface material of the facade | -| `roof_material` | [`RoofMaterial`](../roof_material.md) (optional) | Outer surface material of the roof | -| `roof_shape` | [`RoofShape`](../roof_shape.md) (optional) | Shape of the roof | +| `facade_color` | [`HexColor`](../system/hex_color.md) (optional) | Facade color in `#rgb` or `#rrggbb` hex notation | +| `facade_material` | [`FacadeMaterial`](facade_material.md) (optional) | Outer surface material of the facade | +| `roof_material` | [`RoofMaterial`](roof_material.md) (optional) | Outer surface material of the roof | +| `roof_shape` | [`RoofShape`](roof_shape.md) (optional) | Shape of the roof | | `roof_direction` | `float64` (optional) | Bearing of the roof ridge line in degrees | -| `roof_orientation` | [`RoofOrientation`](../roof_orientation.md) (optional) | Orientation of the roof shape relative to the footprint shape | -| `roof_color` | [`HexColor`](../../types/strings/hex_color.md) (optional) | The roof color in `#rgb` or `#rrggbb` hex notation | +| `roof_orientation` | [`RoofOrientation`](roof_orientation.md) (optional) | Orientation of the roof shape relative to the footprint shape | +| `roof_color` | [`HexColor`](../system/hex_color.md) (optional) | The roof color in `#rgb` or `#rrggbb` hex notation | | `roof_height` | `float64` (optional) | Height of the roof in meters. This is the distance from the base of the roof to its highest point. | diff --git a/docs/schema/reference/buildings/building/_category_.json b/docs/schema/reference/buildings/building/_category_.json deleted file mode 100644 index 55fdd9d28..000000000 --- a/docs/schema/reference/buildings/building/_category_.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "label": "Building" -} diff --git a/docs/schema/reference/buildings/building/building_class.md b/docs/schema/reference/buildings/building_class.md similarity index 100% rename from docs/schema/reference/buildings/building/building_class.md rename to docs/schema/reference/buildings/building_class.md diff --git a/docs/schema/reference/buildings/building_part/building_part.md b/docs/schema/reference/buildings/building_part.md similarity index 58% rename from docs/schema/reference/buildings/building_part/building_part.md rename to docs/schema/reference/buildings/building_part.md index bb188cced..51c2f98a9 100644 --- a/docs/schema/reference/buildings/building_part/building_part.md +++ b/docs/schema/reference/buildings/building_part.md @@ -15,14 +15,14 @@ vertical dimension. | Name | Type | Description | |-----:|:----:|-------------| -| `id` | [`Id`](../../types/references/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | +| `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | | `bbox` | `bbox` (optional) | An optional bounding box for the feature | | `geometry` | `geometry` | The footprint or roofprint of the building part. | | `theme` | `"buildings"` | | | `type` | `"building_part"` | | -| `version` | [`FeatureVersion`](../../types/core_types/feature_version.md) | | -| `sources[]` | [`Sources`](../../types/sources/sources.md) (list, optional) | | -| `sources[].property` | [`JsonPointer`](../../types/strings/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to. +| `version` | [`FeatureVersion`](../core/feature_version.md) | | +| `sources[]` | [`Sources`](../core/sources.md) (list, optional) | | +| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to. The root document value `""` indicates that this source information applies to the entire feature, excepting properties (fields) for which a dedicated source information @@ -34,7 +34,7 @@ example, the value `"/names/common/en"` indicates that the source information ap the English common name of a named feature, while the value `"/geometry"` indicates that it applies to the feature geometry. | | `sources[].dataset` | `string` | Name of the dataset where the source data can be found. | -| `sources[].license` | [`StrippedString`](../../types/strings/stripped_string.md) (optional) | Source data license name. +| `sources[].license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name. This should be a valid SPDX license identifier when available. @@ -44,25 +44,25 @@ be found. The format of record identifiers is dataset-specific. | | `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | -| `sources[].confidence` | [`ConfidenceScore`](../../types/core_types/confidence_score.md) (optional) | Confidence value from the source dataset. +| `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset. This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | -| `sources[].between` | [`LinearlyReferencedRange`](../../types/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | -| `building_id` | [`Id`](../../types/references/id.md) | The building to which this part belongs | -| `names` | [`Names`](../../types/names/names.md) (optional) | | -| `names.primary` | [`StrippedString`](../../types/strings/stripped_string.md) | The most commonly used name. | -| `names.common` | [`CommonNames`](../../types/names/common_names.md) (map, optional) | | -| `names.rules[]` | `list<`[`NameRule`](../../types/names/name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | -| `names.rules[].value` | [`StrippedString`](../../types/strings/stripped_string.md) | The actual name value. | -| `names.rules[].variant` | [`NameVariant`](../../types/names/name_variant.md) | The name variant for this name rule. | -| `names.rules[].language` | [`LanguageTag`](../../types/strings/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 +| `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | +| `building_id` | [`Id`](../system/ref/id.md) | The building to which this part belongs | +| `names` | [`Names`](../core/names.md) (optional) | | +| `names.primary` | [`StrippedString`](../system/stripped_string.md) | The most commonly used name. | +| `names.common` | [`CommonNames`](../core/common_names.md) (map, optional) | | +| `names.rules[]` | `list<`[`NameRule`](../core/name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | +| `names.rules[].value` | [`StrippedString`](../system/stripped_string.md) | The actual name value. | +| `names.rules[].variant` | [`NameVariant`](../core/name_variant.md) | The name variant for this name rule. | +| `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 language tag. | -| `names.rules[].perspectives` | [`Perspectives`](../../types/perspectives/perspectives.md) (optional) | | -| `names.rules[].perspectives.mode` | [`PerspectiveMode`](../../types/perspectives/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | -| `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../../types/strings/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | -| `names.rules[].between` | [`LinearlyReferencedRange`](../../types/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | -| `names.rules[].side` | [`Side`](../../types/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | -| `level` | [`Level`](../../types/core_types/level.md) (optional) | | +| `names.rules[].perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | | +| `names.rules[].perspectives.mode` | [`PerspectiveMode`](../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | +| `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | +| `names.rules[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | +| `names.rules[].side` | [`Side`](../core/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | +| `level` | [`Level`](../core/level.md) (optional) | | | `height` | `float64` (optional) | Height of the building or part in meters. This is the distance from the lowest point to the highest point. | @@ -90,13 +90,13 @@ that has an entry road or driveway at ground level into an interior courtyard, w part of the building bridges above the entry road. This property may sometimes be populated when `min_height` is missing and in these cases can be used as a proxy for `min_height`. | -| `facade_color` | [`HexColor`](../../types/strings/hex_color.md) (optional) | Facade color in `#rgb` or `#rrggbb` hex notation | -| `facade_material` | [`FacadeMaterial`](../facade_material.md) (optional) | Outer surface material of the facade | -| `roof_material` | [`RoofMaterial`](../roof_material.md) (optional) | Outer surface material of the roof | -| `roof_shape` | [`RoofShape`](../roof_shape.md) (optional) | Shape of the roof | +| `facade_color` | [`HexColor`](../system/hex_color.md) (optional) | Facade color in `#rgb` or `#rrggbb` hex notation | +| `facade_material` | [`FacadeMaterial`](facade_material.md) (optional) | Outer surface material of the facade | +| `roof_material` | [`RoofMaterial`](roof_material.md) (optional) | Outer surface material of the roof | +| `roof_shape` | [`RoofShape`](roof_shape.md) (optional) | Shape of the roof | | `roof_direction` | `float64` (optional) | Bearing of the roof ridge line in degrees | -| `roof_orientation` | [`RoofOrientation`](../roof_orientation.md) (optional) | Orientation of the roof shape relative to the footprint shape | -| `roof_color` | [`HexColor`](../../types/strings/hex_color.md) (optional) | The roof color in `#rgb` or `#rrggbb` hex notation | +| `roof_orientation` | [`RoofOrientation`](roof_orientation.md) (optional) | Orientation of the roof shape relative to the footprint shape | +| `roof_color` | [`HexColor`](../system/hex_color.md) (optional) | The roof color in `#rgb` or `#rrggbb` hex notation | | `roof_height` | `float64` (optional) | Height of the roof in meters. This is the distance from the base of the roof to its highest point. | diff --git a/docs/schema/reference/buildings/building_part/_category_.json b/docs/schema/reference/buildings/building_part/_category_.json deleted file mode 100644 index 01f43eae1..000000000 --- a/docs/schema/reference/buildings/building_part/_category_.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "label": "Building Part" -} diff --git a/docs/schema/reference/buildings/building/building_subtype.md b/docs/schema/reference/buildings/building_subtype.md similarity index 100% rename from docs/schema/reference/buildings/building/building_subtype.md rename to docs/schema/reference/buildings/building_subtype.md diff --git a/docs/schema/reference/core/_category_.json b/docs/schema/reference/core/_category_.json new file mode 100644 index 000000000..f4620ea45 --- /dev/null +++ b/docs/schema/reference/core/_category_.json @@ -0,0 +1,3 @@ +{ + "label": "Core" +} diff --git a/docs/schema/reference/types/cartography/cartographic_hints.md b/docs/schema/reference/core/cartographic_hints.md similarity index 100% rename from docs/schema/reference/types/cartography/cartographic_hints.md rename to docs/schema/reference/core/cartographic_hints.md diff --git a/docs/schema/reference/types/names/common_names.md b/docs/schema/reference/core/common_names.md similarity index 100% rename from docs/schema/reference/types/names/common_names.md rename to docs/schema/reference/core/common_names.md diff --git a/docs/schema/reference/types/core_types/confidence_score.md b/docs/schema/reference/core/confidence_score.md similarity index 61% rename from docs/schema/reference/types/core_types/confidence_score.md rename to docs/schema/reference/core/confidence_score.md index fb60c171b..3d44c506b 100644 --- a/docs/schema/reference/types/core_types/confidence_score.md +++ b/docs/schema/reference/core/confidence_score.md @@ -1,4 +1,4 @@ -# ConfidenceScore (`float32`) +# ConfidenceScore (`float64`) ## Constraints diff --git a/docs/schema/reference/core/feature_version.md b/docs/schema/reference/core/feature_version.md new file mode 100644 index 000000000..b9be91e15 --- /dev/null +++ b/docs/schema/reference/core/feature_version.md @@ -0,0 +1,7 @@ +# FeatureVersion (`int32`) + +## Constraints + +- `Ge(ge=0)` +- `Ge(ge=-2147483648)` (from [`int32`](../system/primitive/primitives.md)) +- `Le(le=2147483647)` (from [`int32`](../system/primitive/primitives.md)) diff --git a/docs/schema/reference/core/level.md b/docs/schema/reference/core/level.md new file mode 100644 index 000000000..6c24bf327 --- /dev/null +++ b/docs/schema/reference/core/level.md @@ -0,0 +1,6 @@ +# Level (`int32`) + +## Constraints + +- `Ge(ge=-2147483648)` (from [`int32`](../system/primitive/primitives.md)) +- `Le(le=2147483647)` (from [`int32`](../system/primitive/primitives.md)) diff --git a/docs/schema/reference/core/max_zoom.md b/docs/schema/reference/core/max_zoom.md new file mode 100644 index 000000000..66e698851 --- /dev/null +++ b/docs/schema/reference/core/max_zoom.md @@ -0,0 +1,8 @@ +# MaxZoom (`int32`) + +## Constraints + +- `Ge(ge=0)` +- `Le(le=23)` +- `Ge(ge=-2147483648)` (from [`int32`](../system/primitive/primitives.md)) +- `Le(le=2147483647)` (from [`int32`](../system/primitive/primitives.md)) diff --git a/docs/schema/reference/core/min_zoom.md b/docs/schema/reference/core/min_zoom.md new file mode 100644 index 000000000..86d482f02 --- /dev/null +++ b/docs/schema/reference/core/min_zoom.md @@ -0,0 +1,8 @@ +# MinZoom (`int32`) + +## Constraints + +- `Ge(ge=0)` +- `Le(le=23)` +- `Ge(ge=-2147483648)` (from [`int32`](../system/primitive/primitives.md)) +- `Le(le=2147483647)` (from [`int32`](../system/primitive/primitives.md)) diff --git a/docs/schema/reference/core/name_rule.md b/docs/schema/reference/core/name_rule.md new file mode 100644 index 000000000..33d081ce9 --- /dev/null +++ b/docs/schema/reference/core/name_rule.md @@ -0,0 +1,29 @@ +# NameRule + +A rule that can be evaluated to determine the name in advanced scenarios. + +Name rules are used for cases where the primary name is not sufficient; the common name is not +the right fit for the use case and another variant is needed; or where the name only applies in +certain specific circumstances. + +Examples might include: +- An official, alternate, or short name. +- A name that only applies to part of a linear path like a road segment (geometric range + scoping). +- A name that only applies to the left or right side of a linear path like a road segment (side + scoping). +- A name that is only accepted by some political perspectives. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `value` | [`StrippedString`](../system/stripped_string.md) | The actual name value. | +| `variant` | [`NameVariant`](name_variant.md) | The name variant for this name rule. | +| `language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 +language tag. | +| `perspectives` | [`Perspectives`](perspectives.md) (optional) | | +| `perspectives.mode` | [`PerspectiveMode`](perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | +| `perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | +| `between` | [`LinearlyReferencedRange`](scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | +| `side` | [`Side`](scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | diff --git a/docs/schema/reference/types/names/name_variant.md b/docs/schema/reference/core/name_variant.md similarity index 100% rename from docs/schema/reference/types/names/name_variant.md rename to docs/schema/reference/core/name_variant.md diff --git a/docs/schema/reference/core/names.md b/docs/schema/reference/core/names.md new file mode 100644 index 000000000..d73a48888 --- /dev/null +++ b/docs/schema/reference/core/names.md @@ -0,0 +1,20 @@ +# Names + +Multilingual names container. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `primary` | [`StrippedString`](../system/stripped_string.md) | The most commonly used name. | +| `common` | [`CommonNames`](common_names.md) (map, optional) | | +| `rules[]` | `list<`[`NameRule`](name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | +| `rules[].value` | [`StrippedString`](../system/stripped_string.md) | The actual name value. | +| `rules[].variant` | [`NameVariant`](name_variant.md) | The name variant for this name rule. | +| `rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 +language tag. | +| `rules[].perspectives` | [`Perspectives`](perspectives.md) (optional) | | +| `rules[].perspectives.mode` | [`PerspectiveMode`](perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | +| `rules[].perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | +| `rules[].between` | [`LinearlyReferencedRange`](scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | +| `rules[].side` | [`Side`](scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | diff --git a/docs/schema/reference/types/perspectives/perspective_mode.md b/docs/schema/reference/core/perspective_mode.md similarity index 100% rename from docs/schema/reference/types/perspectives/perspective_mode.md rename to docs/schema/reference/core/perspective_mode.md diff --git a/docs/schema/reference/types/perspectives/perspectives.md b/docs/schema/reference/core/perspectives.md similarity index 64% rename from docs/schema/reference/types/perspectives/perspectives.md rename to docs/schema/reference/core/perspectives.md index 8b6dafd1b..c0df687be 100644 --- a/docs/schema/reference/types/perspectives/perspectives.md +++ b/docs/schema/reference/core/perspectives.md @@ -7,4 +7,4 @@ Political perspectives container. | Name | Type | Description | |-----:|:----:|-------------| | `mode` | [`PerspectiveMode`](perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | -| `countries` | [`CountryCodeAlpha2`](../strings/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | +| `countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | diff --git a/docs/schema/reference/core/prominence.md b/docs/schema/reference/core/prominence.md new file mode 100644 index 000000000..36824b810 --- /dev/null +++ b/docs/schema/reference/core/prominence.md @@ -0,0 +1,8 @@ +# Prominence (`int32`) + +## Constraints + +- `Ge(ge=1)` +- `Le(le=100)` +- `Ge(ge=-2147483648)` (from [`int32`](../system/primitive/primitives.md)) +- `Le(le=2147483647)` (from [`int32`](../system/primitive/primitives.md)) diff --git a/docs/schema/reference/types/scoping/_category_.json b/docs/schema/reference/core/scoping/_category_.json similarity index 100% rename from docs/schema/reference/types/scoping/_category_.json rename to docs/schema/reference/core/scoping/_category_.json diff --git a/docs/schema/reference/types/scoping/linearly_referenced_range.md b/docs/schema/reference/core/scoping/linearly_referenced_range.md similarity index 100% rename from docs/schema/reference/types/scoping/linearly_referenced_range.md rename to docs/schema/reference/core/scoping/linearly_referenced_range.md diff --git a/docs/schema/reference/types/scoping/side.md b/docs/schema/reference/core/scoping/side.md similarity index 100% rename from docs/schema/reference/types/scoping/side.md rename to docs/schema/reference/core/scoping/side.md diff --git a/docs/schema/reference/core/sort_key.md b/docs/schema/reference/core/sort_key.md new file mode 100644 index 000000000..5f602fb40 --- /dev/null +++ b/docs/schema/reference/core/sort_key.md @@ -0,0 +1,6 @@ +# SortKey (`int32`) + +## Constraints + +- `Ge(ge=-2147483648)` (from [`int32`](../system/primitive/primitives.md)) +- `Le(le=2147483647)` (from [`int32`](../system/primitive/primitives.md)) diff --git a/docs/schema/reference/types/sources/source_item.md b/docs/schema/reference/core/source_item.md similarity index 66% rename from docs/schema/reference/types/sources/source_item.md rename to docs/schema/reference/core/source_item.md index fed0313df..c5ccf55ee 100644 --- a/docs/schema/reference/types/sources/source_item.md +++ b/docs/schema/reference/core/source_item.md @@ -6,7 +6,7 @@ Specifies the source of the data used for a feature or one of its properties. | Name | Type | Description | |-----:|:----:|-------------| -| `property` | [`JsonPointer`](../strings/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to. +| `property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to. The root document value `""` indicates that this source information applies to the entire feature, excepting properties (fields) for which a dedicated source information @@ -18,7 +18,7 @@ example, the value `"/names/common/en"` indicates that the source information ap the English common name of a named feature, while the value `"/geometry"` indicates that it applies to the feature geometry. | | `dataset` | `string` | Name of the dataset where the source data can be found. | -| `license` | [`StrippedString`](../strings/stripped_string.md) (optional) | Source data license name. +| `license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name. This should be a valid SPDX license identifier when available. @@ -28,7 +28,7 @@ be found. The format of record identifiers is dataset-specific. | | `update_time` | `datetime` (optional) | Last update time of the source data record. | -| `confidence` | [`ConfidenceScore`](../core_types/confidence_score.md) (optional) | Confidence value from the source dataset. +| `confidence` | [`ConfidenceScore`](confidence_score.md) (optional) | Confidence value from the source dataset. This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | -| `between` | [`LinearlyReferencedRange`](../scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | +| `between` | [`LinearlyReferencedRange`](scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | diff --git a/docs/schema/reference/types/sources/sources.md b/docs/schema/reference/core/sources.md similarity index 100% rename from docs/schema/reference/types/sources/sources.md rename to docs/schema/reference/core/sources.md diff --git a/docs/schema/reference/divisions/admin_level.md b/docs/schema/reference/divisions/admin_level.md index e4b5e7115..9d49d931b 100644 --- a/docs/schema/reference/divisions/admin_level.md +++ b/docs/schema/reference/divisions/admin_level.md @@ -2,5 +2,5 @@ ## Constraints -- `Ge(ge=0)` (from [`uint8`](../types/primitives.md)) -- `Le(le=255)` (from [`uint8`](../types/primitives.md)) +- `Ge(ge=0)` (from [`uint8`](../system/primitive/primitives.md)) +- `Le(le=255)` (from [`uint8`](../system/primitive/primitives.md)) diff --git a/docs/schema/reference/divisions/division/capital_of_division_item.md b/docs/schema/reference/divisions/capital_of_division_item.md similarity index 54% rename from docs/schema/reference/divisions/division/capital_of_division_item.md rename to docs/schema/reference/divisions/capital_of_division_item.md index 3edda9bab..d07d1df32 100644 --- a/docs/schema/reference/divisions/division/capital_of_division_item.md +++ b/docs/schema/reference/divisions/capital_of_division_item.md @@ -6,5 +6,5 @@ One division that has capital. | Name | Type | Description | |-----:|:----:|-------------| -| `division_id` | [`DivisionId`](../division_id.md) | | -| `subtype` | [`PlaceType`](../place_type.md) | | +| `division_id` | [`DivisionId`](division_id.md) | | +| `subtype` | [`PlaceType`](place_type.md) | | diff --git a/docs/schema/reference/divisions/division/division.md b/docs/schema/reference/divisions/division.md similarity index 60% rename from docs/schema/reference/divisions/division/division.md rename to docs/schema/reference/divisions/division.md index 8bb6d07d6..45faac653 100644 --- a/docs/schema/reference/divisions/division/division.md +++ b/docs/schema/reference/divisions/division.md @@ -9,32 +9,32 @@ Examples include countries, provinces, cities, towns, neighborhoods, etc. | Name | Type | Description | |-----:|:----:|-------------| -| `cartography` | [`CartographicHints`](../../types/cartography/cartographic_hints.md) (optional) | | -| `cartography.prominence` | [`Prominence`](../../types/cartography/prominence.md) (optional) | | -| `cartography.min_zoom` | [`MinZoom`](../../types/cartography/min_zoom.md) (optional) | | -| `cartography.max_zoom` | [`MaxZoom`](../../types/cartography/max_zoom.md) (optional) | | -| `cartography.sort_key` | [`SortKey`](../../types/cartography/sort_key.md) (optional) | | -| `names` | [`Names`](../../types/names/names.md) | | -| `names.primary` | [`StrippedString`](../../types/strings/stripped_string.md) | The most commonly used name. | -| `names.common` | [`CommonNames`](../../types/names/common_names.md) (map, optional) | | -| `names.rules[]` | `list<`[`NameRule`](../../types/names/name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | -| `names.rules[].value` | [`StrippedString`](../../types/strings/stripped_string.md) | The actual name value. | -| `names.rules[].variant` | [`NameVariant`](../../types/names/name_variant.md) | The name variant for this name rule. | -| `names.rules[].language` | [`LanguageTag`](../../types/strings/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 +| `cartography` | [`CartographicHints`](../core/cartographic_hints.md) (optional) | | +| `cartography.prominence` | [`Prominence`](../core/prominence.md) (optional) | | +| `cartography.min_zoom` | [`MinZoom`](../core/min_zoom.md) (optional) | | +| `cartography.max_zoom` | [`MaxZoom`](../core/max_zoom.md) (optional) | | +| `cartography.sort_key` | [`SortKey`](../core/sort_key.md) (optional) | | +| `names` | [`Names`](../core/names.md) | | +| `names.primary` | [`StrippedString`](../system/stripped_string.md) | The most commonly used name. | +| `names.common` | [`CommonNames`](../core/common_names.md) (map, optional) | | +| `names.rules[]` | `list<`[`NameRule`](../core/name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | +| `names.rules[].value` | [`StrippedString`](../system/stripped_string.md) | The actual name value. | +| `names.rules[].variant` | [`NameVariant`](../core/name_variant.md) | The name variant for this name rule. | +| `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 language tag. | -| `names.rules[].perspectives` | [`Perspectives`](../../types/perspectives/perspectives.md) (optional) | | -| `names.rules[].perspectives.mode` | [`PerspectiveMode`](../../types/perspectives/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | -| `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../../types/strings/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | -| `names.rules[].between` | [`LinearlyReferencedRange`](../../types/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | -| `names.rules[].side` | [`Side`](../../types/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | -| `id` | [`Id`](../../types/references/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | +| `names.rules[].perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | | +| `names.rules[].perspectives.mode` | [`PerspectiveMode`](../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | +| `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | +| `names.rules[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | +| `names.rules[].side` | [`Side`](../core/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | +| `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | | `bbox` | `bbox` (optional) | An optional bounding box for the feature | | `geometry` | `geometry` | Approximate location of a position commonly associated with the real-world entity modeled by the division feature. | | `theme` | `"divisions"` | | | `type` | `"division"` | | -| `version` | [`FeatureVersion`](../../types/core_types/feature_version.md) | | -| `sources[]` | [`Sources`](../../types/sources/sources.md) (list, optional) | | -| `sources[].property` | [`JsonPointer`](../../types/strings/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to. +| `version` | [`FeatureVersion`](../core/feature_version.md) | | +| `sources[]` | [`Sources`](../core/sources.md) (list, optional) | | +| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to. The root document value `""` indicates that this source information applies to the entire feature, excepting properties (fields) for which a dedicated source information @@ -46,7 +46,7 @@ example, the value `"/names/common/en"` indicates that the source information ap the English common name of a named feature, while the value `"/geometry"` indicates that it applies to the feature geometry. | | `sources[].dataset` | `string` | Name of the dataset where the source data can be found. | -| `sources[].license` | [`StrippedString`](../../types/strings/stripped_string.md) (optional) | Source data license name. +| `sources[].license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name. This should be a valid SPDX license identifier when available. @@ -56,12 +56,12 @@ be found. The format of record identifiers is dataset-specific. | | `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | -| `sources[].confidence` | [`ConfidenceScore`](../../types/core_types/confidence_score.md) (optional) | Confidence value from the source dataset. +| `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset. This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | -| `sources[].between` | [`LinearlyReferencedRange`](../../types/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | -| `subtype` | [`PlaceType`](../place_type.md) | | -| `country` | [`CountryCodeAlpha2`](../../types/strings/country_code_alpha2.md) | ISO 3166-1 alpha-2 country code of the country or country-like entity, that this division represents or belongs to. +| `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | +| `subtype` | [`PlaceType`](place_type.md) | | +| `country` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) | ISO 3166-1 alpha-2 country code of the country or country-like entity, that this division represents or belongs to. If the entity this division represents has a country code, the country property contains it. If it does not, the country property contains the country code of the first division encountered by traversing the parent_division_id chain to the root. @@ -78,22 +78,22 @@ If an entity has an internationally-recognized ISO 3166-1 alpha-2 country code, Every division participates in at least one hierarchy. Most participate in only one. Some divisions may participate in more than one hierarchy, for example if they are claimed by different parent divisions from different political perspectives; or if there are other real-world reasons why the division or one of its ancestors has multiple parents. The first hierarchy in the list is the default hierarchy, and the second-to-last entry in the default hierarchy (if there is such an entry) always corresponds to the `parent_division_id' property. The ordering of hierarchies after the first one is arbitrary. | -| `hierarchies[].division_id` | [`DivisionId`](../division_id.md) | | -| `hierarchies[].subtype` | [`PlaceType`](../place_type.md) | | -| `hierarchies[].name` | [`StrippedString`](../../types/strings/stripped_string.md) | Primary name of the division | -| `parent_division_id` | [`Id`](../../types/references/id.md) (optional) | Division ID of this division's parent division. +| `hierarchies[].division_id` | [`DivisionId`](division_id.md) | | +| `hierarchies[].subtype` | [`PlaceType`](place_type.md) | | +| `hierarchies[].name` | [`StrippedString`](../system/stripped_string.md) | Primary name of the division | +| `parent_division_id` | [`Id`](../system/ref/id.md) (optional) | Division ID of this division's parent division. Not allowed for top-level divisions (countries) and required for all other divisions. The default parent division is the parent division as seen from the default political perspective, if there is one, and is otherwise chosen somewhat arbitrarily. The hierarchies property can be used to inspect the exhaustive list of parent divisions. | -| `admin_level` | [`AdminLevel`](../admin_level.md) (optional) | | +| `admin_level` | [`AdminLevel`](admin_level.md) (optional) | | | `class` | [`DivisionClass`](division_class.md) (optional) | | -| `local_type` | [`CommonNames`](../../types/names/common_names.md) (map, optional) | Local name for the subtype property, optionally localized. +| `local_type` | [`CommonNames`](../core/common_names.md) (map, optional) | Local name for the subtype property, optionally localized. For example, the Canadian province of Quebec has the subtype 'region', but in the local administrative hierarchy it is referred to as a 'province'. Similarly, the Canadian Yukon territory also has subtype 'region', but is locally called a 'territory'. This property is localized using a standard Overture names structure. So for example, in Switzerland the top-level administrative subdivision corresponding to subtype 'region' is the canton, which is may be translated in each of Switzerland's official languages as, 'canton' in French, 'kanton' in German, 'cantone' in Italian, and 'chantun' in Romansh. | -| `region` | [`RegionCode`](../../types/strings/region_code.md) (optional) | ISO 3166-2 principal subdivision code of the subdivision-like entity this division represents or belongs to. +| `region` | [`RegionCode`](../system/region_code.md) (optional) | ISO 3166-2 principal subdivision code of the subdivision-like entity this division represents or belongs to. If the entity this division represents has a principal subdivision code, the region property contains it. If it does not, the region property contains the principal subdivision code of the first division encountered by traversing the parent_division_id chain to the root. @@ -103,7 +103,7 @@ For example: - The region value for New York City is 'US-NY', which it inherits from the state of New York. - The region value for Puerto Rico is 'US-PR'. | -| `perspectives` | [`Perspectives`](../../types/perspectives/perspectives.md) (optional) | Political perspectives from which this division is considered to be an accurate representation. +| `perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | Political perspectives from which this division is considered to be an accurate representation. If this property is absent, then this division is not known to be disputed from any political perspective. Consequently, there is only one division feature representing the entire real world entity. @@ -116,18 +116,18 @@ There are two modes of perspective: 2. `disputed_by` means the representation of the division is disputed by the listed entities and would be excluded from a map drawn from their perspective. When drawing a map from the perspective of a given country, one would start by gathering all the undisputed divisions (with no `perspectives` property), and then adding to that first all divisions explicitly accepted by the country, and second all divisions not explicitly disputed by the country. | -| `perspectives.mode` | [`PerspectiveMode`](../../types/perspectives/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | -| `perspectives.countries` | [`CountryCodeAlpha2`](../../types/strings/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | -| `norms` | [`Norms`](norms.md) (optional) | Collects information about local norms and rules within the division that are generally useful for mapping and map-related use cases. +| `perspectives.mode` | [`PerspectiveMode`](../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | +| `perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | +| `norms` | [`Norms`](division/norms.md) (optional) | Collects information about local norms and rules within the division that are generally useful for mapping and map-related use cases. If the norms property or a desired sub-property of the norms property is missing on a division, but at least one of its ancestor divisions has the norms property and the desired sub-property, then the value from the nearest ancestor division may be assumed. | -| `norms.driving_side` | [`Side`](../../types/scoping/side.md) (optional) | Side of the road on which vehicles drive in the division. | +| `norms.driving_side` | [`Side`](../core/scoping/side.md) (optional) | Side of the road on which vehicles drive in the division. | | `population` | `int32` (optional) | Population of the division | -| `capital_division_ids` | [`Id`](../../types/references/id.md) (list, optional) | Division IDs of this division's capital divisions. If present, this property will refer to the division IDs of the capital cities, county seats, etc. of a division. | +| `capital_division_ids` | [`Id`](../system/ref/id.md) (list, optional) | Division IDs of this division's capital divisions. If present, this property will refer to the division IDs of the capital cities, county seats, etc. of a division. | | `capital_of_divisions[]` | `list<`[`CapitalOfDivisionItem`](capital_of_division_item.md)`>` (optional) | Division IDs and subtypes of divisions this division is a capital of. | -| `capital_of_divisions[].division_id` | [`DivisionId`](../division_id.md) | | -| `capital_of_divisions[].subtype` | [`PlaceType`](../place_type.md) | | -| `wikidata` | [`WikidataId`](../../types/strings/wikidata_id.md) (optional) | | +| `capital_of_divisions[].division_id` | [`DivisionId`](division_id.md) | | +| `capital_of_divisions[].subtype` | [`PlaceType`](place_type.md) | | +| `wikidata` | [`WikidataId`](../system/wikidata_id.md) (optional) | | ## Examples diff --git a/docs/schema/reference/divisions/division/hierarchy_item.md b/docs/schema/reference/divisions/division/hierarchy_item.md deleted file mode 100644 index eff40fb39..000000000 --- a/docs/schema/reference/divisions/division/hierarchy_item.md +++ /dev/null @@ -1,11 +0,0 @@ -# HierarchyItem - -One division in a hierarchy. - -## Fields - -| Name | Type | Description | -|-----:|:----:|-------------| -| `division_id` | [`DivisionId`](../division_id.md) | | -| `subtype` | [`PlaceType`](../place_type.md) | | -| `name` | [`StrippedString`](../../types/strings/stripped_string.md) | Primary name of the division | diff --git a/docs/schema/reference/divisions/division/norms.md b/docs/schema/reference/divisions/division/norms.md index 774fdcde3..ace2d973f 100644 --- a/docs/schema/reference/divisions/division/norms.md +++ b/docs/schema/reference/divisions/division/norms.md @@ -6,4 +6,4 @@ Local norms and standards. | Name | Type | Description | |-----:|:----:|-------------| -| `driving_side` | [`Side`](../../types/scoping/side.md) (optional) | Side of the road on which vehicles drive in the division. | +| `driving_side` | [`Side`](../../core/scoping/side.md) (optional) | Side of the road on which vehicles drive in the division. | diff --git a/docs/schema/reference/divisions/division_area/division_area.md b/docs/schema/reference/divisions/division_area.md similarity index 50% rename from docs/schema/reference/divisions/division_area/division_area.md rename to docs/schema/reference/divisions/division_area.md index 4e8492c1b..15b4e7fc5 100644 --- a/docs/schema/reference/divisions/division_area/division_area.md +++ b/docs/schema/reference/divisions/division_area.md @@ -12,27 +12,27 @@ belongs to. | Name | Type | Description | |-----:|:----:|-------------| -| `names` | [`Names`](../../types/names/names.md) | | -| `names.primary` | [`StrippedString`](../../types/strings/stripped_string.md) | The most commonly used name. | -| `names.common` | [`CommonNames`](../../types/names/common_names.md) (map, optional) | | -| `names.rules[]` | `list<`[`NameRule`](../../types/names/name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | -| `names.rules[].value` | [`StrippedString`](../../types/strings/stripped_string.md) | The actual name value. | -| `names.rules[].variant` | [`NameVariant`](../../types/names/name_variant.md) | The name variant for this name rule. | -| `names.rules[].language` | [`LanguageTag`](../../types/strings/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 +| `names` | [`Names`](../core/names.md) | | +| `names.primary` | [`StrippedString`](../system/stripped_string.md) | The most commonly used name. | +| `names.common` | [`CommonNames`](../core/common_names.md) (map, optional) | | +| `names.rules[]` | `list<`[`NameRule`](../core/name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | +| `names.rules[].value` | [`StrippedString`](../system/stripped_string.md) | The actual name value. | +| `names.rules[].variant` | [`NameVariant`](../core/name_variant.md) | The name variant for this name rule. | +| `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 language tag. | -| `names.rules[].perspectives` | [`Perspectives`](../../types/perspectives/perspectives.md) (optional) | | -| `names.rules[].perspectives.mode` | [`PerspectiveMode`](../../types/perspectives/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | -| `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../../types/strings/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | -| `names.rules[].between` | [`LinearlyReferencedRange`](../../types/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | -| `names.rules[].side` | [`Side`](../../types/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | -| `id` | [`Id`](../../types/references/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | +| `names.rules[].perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | | +| `names.rules[].perspectives.mode` | [`PerspectiveMode`](../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | +| `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | +| `names.rules[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | +| `names.rules[].side` | [`Side`](../core/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | +| `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | | `bbox` | `bbox` (optional) | An optional bounding box for the feature | | `geometry` | `geometry` | The area covered by the division with which this area feature is associated | | `theme` | `"divisions"` | | | `type` | `"division_area"` | | -| `version` | [`FeatureVersion`](../../types/core_types/feature_version.md) | | -| `sources[]` | [`Sources`](../../types/sources/sources.md) (list, optional) | | -| `sources[].property` | [`JsonPointer`](../../types/strings/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to. +| `version` | [`FeatureVersion`](../core/feature_version.md) | | +| `sources[]` | [`Sources`](../core/sources.md) (list, optional) | | +| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to. The root document value `""` indicates that this source information applies to the entire feature, excepting properties (fields) for which a dedicated source information @@ -44,7 +44,7 @@ example, the value `"/names/common/en"` indicates that the source information ap the English common name of a named feature, while the value `"/geometry"` indicates that it applies to the feature geometry. | | `sources[].dataset` | `string` | Name of the dataset where the source data can be found. | -| `sources[].license` | [`StrippedString`](../../types/strings/stripped_string.md) (optional) | Source data license name. +| `sources[].license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name. This should be a valid SPDX license identifier when available. @@ -54,18 +54,18 @@ be found. The format of record identifiers is dataset-specific. | | `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | -| `sources[].confidence` | [`ConfidenceScore`](../../types/core_types/confidence_score.md) (optional) | Confidence value from the source dataset. +| `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset. This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | -| `sources[].between` | [`LinearlyReferencedRange`](../../types/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | -| `subtype` | [`PlaceType`](../place_type.md) | | -| `class` | [`AreaClass`](area_class.md) | | +| `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | +| `subtype` | [`PlaceType`](place_type.md) | | +| `class` | [`AreaClass`](division_area/area_class.md) | | | `is_land` | `boolean` (optional) | A boolean to indicate whether or not the feature geometry represents the land-clipped, non-maritime boundary. The geometry can be used for map rendering, cartographic display, and similar purposes. | | `is_territorial` | `boolean` (optional) | A boolean to indicate whether or not the feature geometry represents Overture's best approximation of this place's maritime boundary. For coastal places, this would tend to include the water area. The geometry can be used for data processing, reverse-geocoding, and similar purposes. | -| `division_id` | [`Id`](../../types/references/id.md) | Division ID of the division this area belongs to. | -| `country` | [`CountryCodeAlpha2`](../../types/strings/country_code_alpha2.md) | ISO 3166-1 alpha-2 country code of the division this area belongs to. | -| `region` | [`RegionCode`](../../types/strings/region_code.md) (optional) | ISO 3166-2 principal subdivision code of the division this area belongs to. | -| `admin_level` | [`AdminLevel`](../admin_level.md) (optional) | | +| `division_id` | [`Id`](../system/ref/id.md) | Division ID of the division this area belongs to. | +| `country` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) | ISO 3166-1 alpha-2 country code of the division this area belongs to. | +| `region` | [`RegionCode`](../system/region_code.md) (optional) | ISO 3166-2 principal subdivision code of the division this area belongs to. | +| `admin_level` | [`AdminLevel`](admin_level.md) (optional) | | ## Examples diff --git a/docs/schema/reference/divisions/division_boundary/division_boundary.md b/docs/schema/reference/divisions/division_boundary.md similarity index 68% rename from docs/schema/reference/divisions/division_boundary/division_boundary.md rename to docs/schema/reference/divisions/division_boundary.md index 3c315503f..8db43c716 100644 --- a/docs/schema/reference/divisions/division_boundary/division_boundary.md +++ b/docs/schema/reference/divisions/division_boundary.md @@ -8,14 +8,14 @@ Some boundaries may be disputed by the divisions on one or both sides. | Name | Type | Description | |-----:|:----:|-------------| -| `id` | [`Id`](../../types/references/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | +| `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | | `bbox` | `bbox` (optional) | An optional bounding box for the feature | | `geometry` | `geometry` | Boundary line or lines | | `theme` | `"divisions"` | | | `type` | `"division_boundary"` | | -| `version` | [`FeatureVersion`](../../types/core_types/feature_version.md) | | -| `sources[]` | [`Sources`](../../types/sources/sources.md) (list, optional) | | -| `sources[].property` | [`JsonPointer`](../../types/strings/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to. +| `version` | [`FeatureVersion`](../core/feature_version.md) | | +| `sources[]` | [`Sources`](../core/sources.md) (list, optional) | | +| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to. The root document value `""` indicates that this source information applies to the entire feature, excepting properties (fields) for which a dedicated source information @@ -27,7 +27,7 @@ example, the value `"/names/common/en"` indicates that the source information ap the English common name of a named feature, while the value `"/geometry"` indicates that it applies to the feature geometry. | | `sources[].dataset` | `string` | Name of the dataset where the source data can be found. | -| `sources[].license` | [`StrippedString`](../../types/strings/stripped_string.md) (optional) | Source data license name. +| `sources[].license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name. This should be a valid SPDX license identifier when available. @@ -37,12 +37,12 @@ be found. The format of record identifiers is dataset-specific. | | `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | -| `sources[].confidence` | [`ConfidenceScore`](../../types/core_types/confidence_score.md) (optional) | Confidence value from the source dataset. +| `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset. This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | -| `sources[].between` | [`LinearlyReferencedRange`](../../types/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | -| `subtype` | [`PlaceType`](../place_type.md) | | -| `class` | [`BoundaryClass`](boundary_class.md) | | +| `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | +| `subtype` | [`PlaceType`](place_type.md) | | +| `class` | [`BoundaryClass`](division_boundary/boundary_class.md) | | | `is_land` | `boolean` (optional) | A boolean to indicate whether or not the feature geometry represents the land-clipped, non-maritime boundary. The geometry can be used for map rendering, cartographic display, and similar purposes. | @@ -50,22 +50,22 @@ rendering, cartographic display, and similar purposes. | Overture's best approximation of this place's maritime boundary. For coastal places, this would tend to include the water area. The geometry can be used for data processing, reverse-geocoding, and similar purposes. | -| `division_ids` | [`Id`](../../types/references/id.md) (list) | Identifies the two divisions to the left and right, respectively, of the boundary line. The left- and right-hand sides of the boundary are considered from the perspective of a person standing on the line facing in the direction in which the geometry is oriented, i.e. facing toward the end of the line. +| `division_ids` | [`Id`](../system/ref/id.md) (list) | Identifies the two divisions to the left and right, respectively, of the boundary line. The left- and right-hand sides of the boundary are considered from the perspective of a person standing on the line facing in the direction in which the geometry is oriented, i.e. facing toward the end of the line. The first array element is the Overture ID of the left division. The second element is the Overture ID of the right division. | -| `country` | [`CountryCodeAlpha2`](../../types/strings/country_code_alpha2.md) (optional) | ISO 3166-1 alpha-2 country code of the country or country-like +| `country` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (optional) | ISO 3166-1 alpha-2 country code of the country or country-like entity that both sides of the boundary share. This property will be present on boundaries between two regions, counties, or similar entities within the same country, but will not be present on boundaries between two countries or country-like entities. | -| `region` | [`RegionCode`](../../types/strings/region_code.md) (optional) | ISO 3166-2 principal subdivision code of the subdivision-like +| `region` | [`RegionCode`](../system/region_code.md) (optional) | ISO 3166-2 principal subdivision code of the subdivision-like entity that both sides of the boundary share. This property will be present on boundaries between two counties, localadmins or similar entities within the same principal subdivision, but will not be present on boundaries between different principal subdivisions or countries. | -| `admin_level` | [`AdminLevel`](../admin_level.md) (optional) | | +| `admin_level` | [`AdminLevel`](admin_level.md) (optional) | | | `is_disputed` | `boolean` (optional) | Indicator if there are entities disputing this division boundary. Information about entities disputing this boundary should be included in perspectives property. @@ -73,7 +73,7 @@ property. This property should also be true if boundary between two entities is unclear and this is "best guess". So having it true and no perspectives gives map creators reason not to fully trust the boundary, but use it if they have no other. | -| `perspectives` | [`Perspectives`](../../types/perspectives/perspectives.md) (optional) | Political perspectives from which this division boundary is considered to be an accurate representation. +| `perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | Political perspectives from which this division boundary is considered to be an accurate representation. If this property is absent, then this boundary is not known to be disputed from any political perspective. Consequently, there is only one boundary feature representing the entire real world entity. @@ -86,8 +86,8 @@ There are two modes of perspective: 2. `disputed_by` means the representation of the boundary is disputed by the listed entities and would be excluded from a map drawn from their perspective. When drawing a map from the perspective of a given country, one would start by gathering all the undisputed boundary (with no `perspectives` property), and then adding to that first all boundary explicitly accepted by the country, and second all boundary not explicitly disputed by the country. | -| `perspectives.mode` | [`PerspectiveMode`](../../types/perspectives/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | -| `perspectives.countries` | [`CountryCodeAlpha2`](../../types/strings/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | +| `perspectives.mode` | [`PerspectiveMode`](../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | +| `perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | ## Examples diff --git a/docs/schema/reference/divisions/division/division_class.md b/docs/schema/reference/divisions/division_class.md similarity index 100% rename from docs/schema/reference/divisions/division/division_class.md rename to docs/schema/reference/divisions/division_class.md diff --git a/docs/schema/reference/divisions/division_id.md b/docs/schema/reference/divisions/division_id.md index 74c41ef32..0b2b9468e 100644 --- a/docs/schema/reference/divisions/division_id.md +++ b/docs/schema/reference/divisions/division_id.md @@ -3,5 +3,5 @@ ## Constraints - `MinLen(min_length=1)` -- `MinLen(min_length=1)` (from [`Id`](../types/references/id.md)) +- `MinLen(min_length=1)` (from [`Id`](../system/ref/id.md)) - `NoWhitespaceConstraint` diff --git a/docs/schema/reference/divisions/division/hierarchy.md b/docs/schema/reference/divisions/hierarchy.md similarity index 100% rename from docs/schema/reference/divisions/division/hierarchy.md rename to docs/schema/reference/divisions/hierarchy.md diff --git a/docs/schema/reference/divisions/hierarchy_item.md b/docs/schema/reference/divisions/hierarchy_item.md new file mode 100644 index 000000000..1757cf49d --- /dev/null +++ b/docs/schema/reference/divisions/hierarchy_item.md @@ -0,0 +1,11 @@ +# HierarchyItem + +One division in a hierarchy. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `division_id` | [`DivisionId`](division_id.md) | | +| `subtype` | [`PlaceType`](place_type.md) | | +| `name` | [`StrippedString`](../system/stripped_string.md) | Primary name of the division | diff --git a/docs/schema/reference/places/_category_.json b/docs/schema/reference/places/_category_.json new file mode 100644 index 000000000..370ffb08f --- /dev/null +++ b/docs/schema/reference/places/_category_.json @@ -0,0 +1,3 @@ +{ + "label": "Places" +} diff --git a/docs/schema/reference/places/brand.md b/docs/schema/reference/places/brand.md new file mode 100644 index 000000000..7e630d521 --- /dev/null +++ b/docs/schema/reference/places/brand.md @@ -0,0 +1,24 @@ +# Brand + +A brand associated with a place. + +A location with multiple brands is modeled as multiple separate places, each with its own brand. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `names` | [`Names`](../core/names.md) (optional) | | +| `names.primary` | [`StrippedString`](../system/stripped_string.md) | The most commonly used name. | +| `names.common` | [`CommonNames`](../core/common_names.md) (map, optional) | | +| `names.rules[]` | `list<`[`NameRule`](../core/name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | +| `names.rules[].value` | [`StrippedString`](../system/stripped_string.md) | The actual name value. | +| `names.rules[].variant` | [`NameVariant`](../core/name_variant.md) | The name variant for this name rule. | +| `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 +language tag. | +| `names.rules[].perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | | +| `names.rules[].perspectives.mode` | [`PerspectiveMode`](../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | +| `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | +| `names.rules[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | +| `names.rules[].side` | [`Side`](../core/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | +| `wikidata` | [`WikidataId`](../system/wikidata_id.md) (optional) | | diff --git a/docs/schema/reference/places/place/categories.md b/docs/schema/reference/places/categories.md similarity index 62% rename from docs/schema/reference/places/place/categories.md rename to docs/schema/reference/places/categories.md index 55b958782..da875468c 100644 --- a/docs/schema/reference/places/place/categories.md +++ b/docs/schema/reference/places/categories.md @@ -8,8 +8,8 @@ Complete list is available on GitHub: https://github.com/OvertureMaps/schema/blo | Name | Type | Description | |-----:|:----:|-------------| -| `primary` | [`SnakeCaseString`](../../types/strings/snake_case_string.md) | The primary or main category of the place. | -| `alternate` | [`SnakeCaseString`](../../types/strings/snake_case_string.md) (list, optional) | Alternate categories of the place. +| `primary` | [`SnakeCaseString`](../system/snake_case_string.md) | The primary or main category of the place. | +| `alternate` | [`SnakeCaseString`](../system/snake_case_string.md) (list, optional) | Alternate categories of the place. Some places might fit into two categories, e.g., a book store and a coffee shop. In these cases, the primary category can be augmented with additional categories. | diff --git a/docs/schema/reference/places/place/operating_status.md b/docs/schema/reference/places/operating_status.md similarity index 100% rename from docs/schema/reference/places/place/operating_status.md rename to docs/schema/reference/places/operating_status.md diff --git a/docs/schema/reference/places/place/place.md b/docs/schema/reference/places/place.md similarity index 53% rename from docs/schema/reference/places/place/place.md rename to docs/schema/reference/places/place.md index 96443acd7..dd3ce4bde 100644 --- a/docs/schema/reference/places/place/place.md +++ b/docs/schema/reference/places/place.md @@ -6,14 +6,14 @@ Places are point representations of real-world facilities, businesses, services, | Name | Type | Description | |-----:|:----:|-------------| -| `id` | [`Id`](../../types/references/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | +| `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | | `bbox` | `bbox` (optional) | An optional bounding box for the feature | | `geometry` | `geometry` | Position of the place. Places are point geometries. | | `theme` | `"places"` | | | `type` | `"place"` | | -| `version` | [`FeatureVersion`](../../types/core_types/feature_version.md) | | -| `sources[]` | [`Sources`](../../types/sources/sources.md) (list, optional) | | -| `sources[].property` | [`JsonPointer`](../../types/strings/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to. +| `version` | [`FeatureVersion`](../core/feature_version.md) | | +| `sources[]` | [`Sources`](../core/sources.md) (list, optional) | | +| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to. The root document value `""` indicates that this source information applies to the entire feature, excepting properties (fields) for which a dedicated source information @@ -25,7 +25,7 @@ example, the value `"/names/common/en"` indicates that the source information ap the English common name of a named feature, while the value `"/geometry"` indicates that it applies to the feature geometry. | | `sources[].dataset` | `string` | Name of the dataset where the source data can be found. | -| `sources[].license` | [`StrippedString`](../../types/strings/stripped_string.md) (optional) | Source data license name. +| `sources[].license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name. This should be a valid SPDX license identifier when available. @@ -35,10 +35,10 @@ be found. The format of record identifiers is dataset-specific. | | `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | -| `sources[].confidence` | [`ConfidenceScore`](../../types/core_types/confidence_score.md) (optional) | Confidence value from the source dataset. +| `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset. This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | -| `sources[].between` | [`LinearlyReferencedRange`](../../types/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | +| `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | | `operating_status` | [`OperatingStatus`](operating_status.md) | An indication of whether a place is: in continued operation, in a temporary operating hiatus, or closed permanently. @@ -48,12 +48,12 @@ current time-of-day or day-of-week. When `operating_status` is `"permanently_closed"`, the `confidence` field will be set to 0. | | `categories` | [`Categories`](categories.md) (optional) | | -| `categories.primary` | [`SnakeCaseString`](../../types/strings/snake_case_string.md) | The primary or main category of the place. | -| `categories.alternate` | [`SnakeCaseString`](../../types/strings/snake_case_string.md) (list, optional) | Alternate categories of the place. +| `categories.primary` | [`SnakeCaseString`](../system/snake_case_string.md) | The primary or main category of the place. | +| `categories.alternate` | [`SnakeCaseString`](../system/snake_case_string.md) (list, optional) | Alternate categories of the place. Some places might fit into two categories, e.g., a book store and a coffee shop. In these cases, the primary category can be augmented with additional categories. | -| `basic_category` | [`SnakeCaseString`](../../types/strings/snake_case_string.md) (optional) | The basic level category of a place. +| `basic_category` | [`SnakeCaseString`](../system/snake_case_string.md) (optional) | The basic level category of a place. This field classifies places into categories at a level that most people find intuitive. The full list of possible values it may hold can be found at (TODO). @@ -68,18 +68,18 @@ The full list of basic level categories is available at https://docs.overturemap | `taxonomy` | [`Taxonomy`](taxonomy.md) (optional) | A structured representation of the place's category within the Overture taxonomy. Provides the primary classification, full hierarchy path, and alternate categories. | -| `taxonomy.primary` | [`SnakeCaseString`](../../types/strings/snake_case_string.md) | +| `taxonomy.primary` | [`SnakeCaseString`](../system/snake_case_string.md) | The primary, or most specific, category known about this place. The `primary` category value must always equal the last or rightmost entry in the `hierarchy` field. | -| `taxonomy.hierarchy` | [`SnakeCaseString`](../../types/strings/snake_case_string.md) (list) | The full primary hierarchy of categories known for this place, ordered from most general to most specific. +| `taxonomy.hierarchy` | [`SnakeCaseString`](../system/snake_case_string.md) (list) | The full primary hierarchy of categories known for this place, ordered from most general to most specific. An example hierarchy might be: `["food_and_drink", "restaurant", "casual_eatery", "gas_station_sushi"]`. The rightmost, or most specific, value in the `hierarchy` must always be equal to the `primary` field. The basic level category of the place will typically be found in the middle of the primary hierarchy. The primary hierarchy does not include any of the alternate categories found in the `alternates` field. | -| `taxonomy.alternates` | [`SnakeCaseString`](../../types/strings/snake_case_string.md) (list, optional) | Unordered list of additional categories that are known for this +| `taxonomy.alternates` | [`SnakeCaseString`](../system/snake_case_string.md) (list, optional) | Unordered list of additional categories that are known for this place but that are not part of the primary category hierarchy. Alternate categories allow a more complete picture of the place @@ -95,7 +95,7 @@ that category can't be a primary or alternate category itself. Note as well that this field is an unordered list of extra categories and does not represent a hierarchy. | -| `confidence` | [`ConfidenceScore`](../../types/core_types/confidence_score.md) (optional) | A score between 0 and 1 indicating how confident we are that the place exists. +| `confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | A score between 0 and 1 indicating how confident we are that the place exists. A confidence score of 0 indicates that we are certain the place doesn't exist anymore and will always be paired with an `operating_status` of @@ -108,41 +108,41 @@ which to estimate our confidence level. | | `websites` | `list` (optional) | The websites of the place. | | `socials` | `list` (optional) | The social media URLs of the place. | | `emails` | `list` (optional) | The email addresses of the place. | -| `phones` | [`PhoneNumber`](../../types/strings/phone_number.md) (list, optional) | The phone numbers of the place. | +| `phones` | [`PhoneNumber`](../system/phone_number.md) (list, optional) | The phone numbers of the place. | | `brand` | [`Brand`](brand.md) (optional) | The brand associated with the place. | -| `brand.names` | [`Names`](../../types/names/names.md) (optional) | | -| `brand.names.primary` | [`StrippedString`](../../types/strings/stripped_string.md) | The most commonly used name. | -| `brand.names.common` | [`CommonNames`](../../types/names/common_names.md) (map, optional) | | -| `brand.names.rules[]` | `list<`[`NameRule`](../../types/names/name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | -| `brand.names.rules[].value` | [`StrippedString`](../../types/strings/stripped_string.md) | The actual name value. | -| `brand.names.rules[].variant` | [`NameVariant`](../../types/names/name_variant.md) | The name variant for this name rule. | -| `brand.names.rules[].language` | [`LanguageTag`](../../types/strings/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 +| `brand.names` | [`Names`](../core/names.md) (optional) | | +| `brand.names.primary` | [`StrippedString`](../system/stripped_string.md) | The most commonly used name. | +| `brand.names.common` | [`CommonNames`](../core/common_names.md) (map, optional) | | +| `brand.names.rules[]` | `list<`[`NameRule`](../core/name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | +| `brand.names.rules[].value` | [`StrippedString`](../system/stripped_string.md) | The actual name value. | +| `brand.names.rules[].variant` | [`NameVariant`](../core/name_variant.md) | The name variant for this name rule. | +| `brand.names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 language tag. | -| `brand.names.rules[].perspectives` | [`Perspectives`](../../types/perspectives/perspectives.md) (optional) | | -| `brand.names.rules[].perspectives.mode` | [`PerspectiveMode`](../../types/perspectives/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | -| `brand.names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../../types/strings/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | -| `brand.names.rules[].between` | [`LinearlyReferencedRange`](../../types/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | -| `brand.names.rules[].side` | [`Side`](../../types/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | -| `brand.wikidata` | [`WikidataId`](../../types/strings/wikidata_id.md) (optional) | | -| `addresses[]` | `list<`[`Address`](../../addresses/address/address.md)`>` (optional) | The address or addresses of the place | +| `brand.names.rules[].perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | | +| `brand.names.rules[].perspectives.mode` | [`PerspectiveMode`](../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | +| `brand.names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | +| `brand.names.rules[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | +| `brand.names.rules[].side` | [`Side`](../core/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | +| `brand.wikidata` | [`WikidataId`](../system/wikidata_id.md) (optional) | | +| `addresses[]` | `list<`[`Address`](../addresses/address.md)`>` (optional) | The address or addresses of the place | | `addresses[].freeform` | `string` (optional) | Free-form address that contains street name, house number and other address info | | `addresses[].locality` | `string` (optional) | City, town, or neighborhood component of the place address | | `addresses[].postcode` | `string` (optional) | Postal code component of the place address | -| `addresses[].region` | [`RegionCode`](../../types/strings/region_code.md) (optional) | | -| `addresses[].country` | [`CountryCodeAlpha2`](../../types/strings/country_code_alpha2.md) (optional) | | -| `names` | [`Names`](../../types/names/names.md) (optional) | | -| `names.primary` | [`StrippedString`](../../types/strings/stripped_string.md) | The most commonly used name. | -| `names.common` | [`CommonNames`](../../types/names/common_names.md) (map, optional) | | -| `names.rules[]` | `list<`[`NameRule`](../../types/names/name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | -| `names.rules[].value` | [`StrippedString`](../../types/strings/stripped_string.md) | The actual name value. | -| `names.rules[].variant` | [`NameVariant`](../../types/names/name_variant.md) | The name variant for this name rule. | -| `names.rules[].language` | [`LanguageTag`](../../types/strings/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 +| `addresses[].region` | [`RegionCode`](../system/region_code.md) (optional) | | +| `addresses[].country` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (optional) | | +| `names` | [`Names`](../core/names.md) (optional) | | +| `names.primary` | [`StrippedString`](../system/stripped_string.md) | The most commonly used name. | +| `names.common` | [`CommonNames`](../core/common_names.md) (map, optional) | | +| `names.rules[]` | `list<`[`NameRule`](../core/name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | +| `names.rules[].value` | [`StrippedString`](../system/stripped_string.md) | The actual name value. | +| `names.rules[].variant` | [`NameVariant`](../core/name_variant.md) | The name variant for this name rule. | +| `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 language tag. | -| `names.rules[].perspectives` | [`Perspectives`](../../types/perspectives/perspectives.md) (optional) | | -| `names.rules[].perspectives.mode` | [`PerspectiveMode`](../../types/perspectives/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | -| `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../../types/strings/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | -| `names.rules[].between` | [`LinearlyReferencedRange`](../../types/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | -| `names.rules[].side` | [`Side`](../../types/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | +| `names.rules[].perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | | +| `names.rules[].perspectives.mode` | [`PerspectiveMode`](../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | +| `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | +| `names.rules[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | +| `names.rules[].side` | [`Side`](../core/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | ## Examples diff --git a/docs/schema/reference/places/place/_category_.json b/docs/schema/reference/places/place/_category_.json deleted file mode 100644 index d224a3b9e..000000000 --- a/docs/schema/reference/places/place/_category_.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "label": "Place" -} diff --git a/docs/schema/reference/places/place/brand.md b/docs/schema/reference/places/place/brand.md deleted file mode 100644 index f0cd98464..000000000 --- a/docs/schema/reference/places/place/brand.md +++ /dev/null @@ -1,24 +0,0 @@ -# Brand - -A brand associated with a place. - -A location with multiple brands is modeled as multiple separate places, each with its own brand. - -## Fields - -| Name | Type | Description | -|-----:|:----:|-------------| -| `names` | [`Names`](../../types/names/names.md) (optional) | | -| `names.primary` | [`StrippedString`](../../types/strings/stripped_string.md) | The most commonly used name. | -| `names.common` | [`CommonNames`](../../types/names/common_names.md) (map, optional) | | -| `names.rules[]` | `list<`[`NameRule`](../../types/names/name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | -| `names.rules[].value` | [`StrippedString`](../../types/strings/stripped_string.md) | The actual name value. | -| `names.rules[].variant` | [`NameVariant`](../../types/names/name_variant.md) | The name variant for this name rule. | -| `names.rules[].language` | [`LanguageTag`](../../types/strings/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 -language tag. | -| `names.rules[].perspectives` | [`Perspectives`](../../types/perspectives/perspectives.md) (optional) | | -| `names.rules[].perspectives.mode` | [`PerspectiveMode`](../../types/perspectives/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | -| `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../../types/strings/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | -| `names.rules[].between` | [`LinearlyReferencedRange`](../../types/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | -| `names.rules[].side` | [`Side`](../../types/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | -| `wikidata` | [`WikidataId`](../../types/strings/wikidata_id.md) (optional) | | diff --git a/docs/schema/reference/places/place/taxonomy.md b/docs/schema/reference/places/taxonomy.md similarity index 77% rename from docs/schema/reference/places/place/taxonomy.md rename to docs/schema/reference/places/taxonomy.md index e917efb62..51acb3d5c 100644 --- a/docs/schema/reference/places/place/taxonomy.md +++ b/docs/schema/reference/places/taxonomy.md @@ -8,18 +8,18 @@ Provides the primary classification, full hierarchy path, and alternate categori | Name | Type | Description | |-----:|:----:|-------------| -| `primary` | [`SnakeCaseString`](../../types/strings/snake_case_string.md) | +| `primary` | [`SnakeCaseString`](../system/snake_case_string.md) | The primary, or most specific, category known about this place. The `primary` category value must always equal the last or rightmost entry in the `hierarchy` field. | -| `hierarchy` | [`SnakeCaseString`](../../types/strings/snake_case_string.md) (list) | The full primary hierarchy of categories known for this place, ordered from most general to most specific. +| `hierarchy` | [`SnakeCaseString`](../system/snake_case_string.md) (list) | The full primary hierarchy of categories known for this place, ordered from most general to most specific. An example hierarchy might be: `["food_and_drink", "restaurant", "casual_eatery", "gas_station_sushi"]`. The rightmost, or most specific, value in the `hierarchy` must always be equal to the `primary` field. The basic level category of the place will typically be found in the middle of the primary hierarchy. The primary hierarchy does not include any of the alternate categories found in the `alternates` field. | -| `alternates` | [`SnakeCaseString`](../../types/strings/snake_case_string.md) (list, optional) | Unordered list of additional categories that are known for this +| `alternates` | [`SnakeCaseString`](../system/snake_case_string.md) (list, optional) | Unordered list of additional categories that are known for this place but that are not part of the primary category hierarchy. Alternate categories allow a more complete picture of the place diff --git a/docs/schema/reference/system/_category_.json b/docs/schema/reference/system/_category_.json new file mode 100644 index 000000000..4c0c931b3 --- /dev/null +++ b/docs/schema/reference/system/_category_.json @@ -0,0 +1,3 @@ +{ + "label": "System" +} diff --git a/docs/schema/reference/types/strings/country_code_alpha2.md b/docs/schema/reference/system/country_code_alpha2.md similarity index 100% rename from docs/schema/reference/types/strings/country_code_alpha2.md rename to docs/schema/reference/system/country_code_alpha2.md diff --git a/docs/schema/reference/types/strings/hex_color.md b/docs/schema/reference/system/hex_color.md similarity index 100% rename from docs/schema/reference/types/strings/hex_color.md rename to docs/schema/reference/system/hex_color.md diff --git a/docs/schema/reference/types/strings/json_pointer.md b/docs/schema/reference/system/json_pointer.md similarity index 100% rename from docs/schema/reference/types/strings/json_pointer.md rename to docs/schema/reference/system/json_pointer.md diff --git a/docs/schema/reference/types/strings/language_tag.md b/docs/schema/reference/system/language_tag.md similarity index 100% rename from docs/schema/reference/types/strings/language_tag.md rename to docs/schema/reference/system/language_tag.md diff --git a/docs/schema/reference/types/strings/phone_number.md b/docs/schema/reference/system/phone_number.md similarity index 100% rename from docs/schema/reference/types/strings/phone_number.md rename to docs/schema/reference/system/phone_number.md diff --git a/docs/schema/reference/system/primitive/_category_.json b/docs/schema/reference/system/primitive/_category_.json new file mode 100644 index 000000000..ee6c4309a --- /dev/null +++ b/docs/schema/reference/system/primitive/_category_.json @@ -0,0 +1,3 @@ +{ + "label": "Primitive" +} diff --git a/docs/schema/reference/types/geometry.md b/docs/schema/reference/system/primitive/geometry.md similarity index 100% rename from docs/schema/reference/types/geometry.md rename to docs/schema/reference/system/primitive/geometry.md diff --git a/docs/schema/reference/types/primitives.md b/docs/schema/reference/system/primitive/primitives.md similarity index 100% rename from docs/schema/reference/types/primitives.md rename to docs/schema/reference/system/primitive/primitives.md diff --git a/docs/schema/reference/system/ref/_category_.json b/docs/schema/reference/system/ref/_category_.json new file mode 100644 index 000000000..a3d90fc8f --- /dev/null +++ b/docs/schema/reference/system/ref/_category_.json @@ -0,0 +1,3 @@ +{ + "label": "Ref" +} diff --git a/docs/schema/reference/types/references/id.md b/docs/schema/reference/system/ref/id.md similarity index 100% rename from docs/schema/reference/types/references/id.md rename to docs/schema/reference/system/ref/id.md diff --git a/docs/schema/reference/types/strings/region_code.md b/docs/schema/reference/system/region_code.md similarity index 100% rename from docs/schema/reference/types/strings/region_code.md rename to docs/schema/reference/system/region_code.md diff --git a/docs/schema/reference/types/strings/snake_case_string.md b/docs/schema/reference/system/snake_case_string.md similarity index 100% rename from docs/schema/reference/types/strings/snake_case_string.md rename to docs/schema/reference/system/snake_case_string.md diff --git a/docs/schema/reference/types/strings/stripped_string.md b/docs/schema/reference/system/stripped_string.md similarity index 100% rename from docs/schema/reference/types/strings/stripped_string.md rename to docs/schema/reference/system/stripped_string.md diff --git a/docs/schema/reference/types/strings/wikidata_id.md b/docs/schema/reference/system/wikidata_id.md similarity index 100% rename from docs/schema/reference/types/strings/wikidata_id.md rename to docs/schema/reference/system/wikidata_id.md diff --git a/docs/schema/reference/transportation/_category_.json b/docs/schema/reference/transportation/_category_.json new file mode 100644 index 000000000..6e81a7f3c --- /dev/null +++ b/docs/schema/reference/transportation/_category_.json @@ -0,0 +1,3 @@ +{ + "label": "Transportation" +} diff --git a/docs/schema/reference/transportation/connector/connector.md b/docs/schema/reference/transportation/connector.md similarity index 64% rename from docs/schema/reference/transportation/connector/connector.md rename to docs/schema/reference/transportation/connector.md index 4151b9b5a..9b138f3cc 100644 --- a/docs/schema/reference/transportation/connector/connector.md +++ b/docs/schema/reference/transportation/connector.md @@ -8,14 +8,14 @@ Connectors are compatible with GeoJSON Point features. | Name | Type | Description | |-----:|:----:|-------------| -| `id` | [`Id`](../../types/references/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | +| `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | | `bbox` | `bbox` (optional) | An optional bounding box for the feature | | `geometry` | `geometry` | Position of the connector | | `theme` | `"transportation"` | | | `type` | `"connector"` | | -| `version` | [`FeatureVersion`](../../types/core_types/feature_version.md) | | -| `sources[]` | [`Sources`](../../types/sources/sources.md) (list, optional) | | -| `sources[].property` | [`JsonPointer`](../../types/strings/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to. +| `version` | [`FeatureVersion`](../core/feature_version.md) | | +| `sources[]` | [`Sources`](../core/sources.md) (list, optional) | | +| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to. The root document value `""` indicates that this source information applies to the entire feature, excepting properties (fields) for which a dedicated source information @@ -27,7 +27,7 @@ example, the value `"/names/common/en"` indicates that the source information ap the English common name of a named feature, while the value `"/geometry"` indicates that it applies to the feature geometry. | | `sources[].dataset` | `string` | Name of the dataset where the source data can be found. | -| `sources[].license` | [`StrippedString`](../../types/strings/stripped_string.md) (optional) | Source data license name. +| `sources[].license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name. This should be a valid SPDX license identifier when available. @@ -37,10 +37,10 @@ be found. The format of record identifiers is dataset-specific. | | `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | -| `sources[].confidence` | [`ConfidenceScore`](../../types/core_types/confidence_score.md) (optional) | Confidence value from the source dataset. +| `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset. This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | -| `sources[].between` | [`LinearlyReferencedRange`](../../types/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | +| `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | ## Examples diff --git a/docs/schema/reference/transportation/connector/_category_.json b/docs/schema/reference/transportation/connector/_category_.json deleted file mode 100644 index bb43ebcc4..000000000 --- a/docs/schema/reference/transportation/connector/_category_.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "label": "Connector" -} diff --git a/docs/schema/reference/types/_category_.json b/docs/schema/reference/types/_category_.json deleted file mode 100644 index a3ec08974..000000000 --- a/docs/schema/reference/types/_category_.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "label": "Types" -} diff --git a/docs/schema/reference/types/cartography/_category_.json b/docs/schema/reference/types/cartography/_category_.json deleted file mode 100644 index 98f463076..000000000 --- a/docs/schema/reference/types/cartography/_category_.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "label": "Cartography" -} diff --git a/docs/schema/reference/types/cartography/max_zoom.md b/docs/schema/reference/types/cartography/max_zoom.md deleted file mode 100644 index f352b87bb..000000000 --- a/docs/schema/reference/types/cartography/max_zoom.md +++ /dev/null @@ -1,8 +0,0 @@ -# MaxZoom (`uint8`) - -## Constraints - -- `Ge(ge=0)` -- `Le(le=23)` -- `Ge(ge=0)` (from [`uint8`](../primitives.md)) -- `Le(le=255)` (from [`uint8`](../primitives.md)) diff --git a/docs/schema/reference/types/cartography/min_zoom.md b/docs/schema/reference/types/cartography/min_zoom.md deleted file mode 100644 index f007f9587..000000000 --- a/docs/schema/reference/types/cartography/min_zoom.md +++ /dev/null @@ -1,8 +0,0 @@ -# MinZoom (`uint8`) - -## Constraints - -- `Ge(ge=0)` -- `Le(le=23)` -- `Ge(ge=0)` (from [`uint8`](../primitives.md)) -- `Le(le=255)` (from [`uint8`](../primitives.md)) diff --git a/docs/schema/reference/types/cartography/prominence.md b/docs/schema/reference/types/cartography/prominence.md deleted file mode 100644 index 45a823100..000000000 --- a/docs/schema/reference/types/cartography/prominence.md +++ /dev/null @@ -1,8 +0,0 @@ -# Prominence (`uint8`) - -## Constraints - -- `Ge(ge=1)` -- `Le(le=100)` -- `Ge(ge=0)` (from [`uint8`](../primitives.md)) -- `Le(le=255)` (from [`uint8`](../primitives.md)) diff --git a/docs/schema/reference/types/cartography/sort_key.md b/docs/schema/reference/types/cartography/sort_key.md deleted file mode 100644 index 9556fa4ac..000000000 --- a/docs/schema/reference/types/cartography/sort_key.md +++ /dev/null @@ -1,6 +0,0 @@ -# SortKey (`uint8`) - -## Constraints - -- `Ge(ge=0)` (from [`uint8`](../primitives.md)) -- `Le(le=255)` (from [`uint8`](../primitives.md)) diff --git a/docs/schema/reference/types/core_types/_category_.json b/docs/schema/reference/types/core_types/_category_.json deleted file mode 100644 index 54949f379..000000000 --- a/docs/schema/reference/types/core_types/_category_.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "label": "Core Types" -} diff --git a/docs/schema/reference/types/core_types/feature_version.md b/docs/schema/reference/types/core_types/feature_version.md deleted file mode 100644 index 677c44537..000000000 --- a/docs/schema/reference/types/core_types/feature_version.md +++ /dev/null @@ -1,7 +0,0 @@ -# FeatureVersion (`int32`) - -## Constraints - -- `Ge(ge=0)` -- `Ge(ge=-2147483648)` (from [`int32`](../primitives.md)) -- `Le(le=2147483647)` (from [`int32`](../primitives.md)) diff --git a/docs/schema/reference/types/core_types/level.md b/docs/schema/reference/types/core_types/level.md deleted file mode 100644 index 9afdc5039..000000000 --- a/docs/schema/reference/types/core_types/level.md +++ /dev/null @@ -1,6 +0,0 @@ -# Level (`int16`) - -## Constraints - -- `Ge(ge=-32768)` (from [`int16`](../primitives.md)) -- `Le(le=32767)` (from [`int16`](../primitives.md)) diff --git a/docs/schema/reference/types/names/_category_.json b/docs/schema/reference/types/names/_category_.json deleted file mode 100644 index b9775909a..000000000 --- a/docs/schema/reference/types/names/_category_.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "label": "Names" -} diff --git a/docs/schema/reference/types/names/name_rule.md b/docs/schema/reference/types/names/name_rule.md deleted file mode 100644 index f53761a7a..000000000 --- a/docs/schema/reference/types/names/name_rule.md +++ /dev/null @@ -1,29 +0,0 @@ -# NameRule - -A rule that can be evaluated to determine the name in advanced scenarios. - -Name rules are used for cases where the primary name is not sufficient; the common name is not -the right fit for the use case and another variant is needed; or where the name only applies in -certain specific circumstances. - -Examples might include: -- An official, alternate, or short name. -- A name that only applies to part of a linear path like a road segment (geometric range - scoping). -- A name that only applies to the left or right side of a linear path like a road segment (side - scoping). -- A name that is only accepted by some political perspectives. - -## Fields - -| Name | Type | Description | -|-----:|:----:|-------------| -| `value` | [`StrippedString`](../strings/stripped_string.md) | The actual name value. | -| `variant` | [`NameVariant`](name_variant.md) | The name variant for this name rule. | -| `language` | [`LanguageTag`](../strings/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 -language tag. | -| `perspectives` | [`Perspectives`](../perspectives/perspectives.md) (optional) | | -| `perspectives.mode` | [`PerspectiveMode`](../perspectives/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | -| `perspectives.countries` | [`CountryCodeAlpha2`](../strings/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | -| `between` | [`LinearlyReferencedRange`](../scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | -| `side` | [`Side`](../scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | diff --git a/docs/schema/reference/types/names/names.md b/docs/schema/reference/types/names/names.md deleted file mode 100644 index 2dce11073..000000000 --- a/docs/schema/reference/types/names/names.md +++ /dev/null @@ -1,20 +0,0 @@ -# Names - -Multilingual names container. - -## Fields - -| Name | Type | Description | -|-----:|:----:|-------------| -| `primary` | [`StrippedString`](../strings/stripped_string.md) | The most commonly used name. | -| `common` | [`CommonNames`](common_names.md) (map, optional) | | -| `rules[]` | `list<`[`NameRule`](name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | -| `rules[].value` | [`StrippedString`](../strings/stripped_string.md) | The actual name value. | -| `rules[].variant` | [`NameVariant`](name_variant.md) | The name variant for this name rule. | -| `rules[].language` | [`LanguageTag`](../strings/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 -language tag. | -| `rules[].perspectives` | [`Perspectives`](../perspectives/perspectives.md) (optional) | | -| `rules[].perspectives.mode` | [`PerspectiveMode`](../perspectives/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | -| `rules[].perspectives.countries` | [`CountryCodeAlpha2`](../strings/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | -| `rules[].between` | [`LinearlyReferencedRange`](../scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | -| `rules[].side` | [`Side`](../scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | diff --git a/docs/schema/reference/types/perspectives/_category_.json b/docs/schema/reference/types/perspectives/_category_.json deleted file mode 100644 index c316ca9d2..000000000 --- a/docs/schema/reference/types/perspectives/_category_.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "label": "Perspectives" -} diff --git a/docs/schema/reference/types/references/_category_.json b/docs/schema/reference/types/references/_category_.json deleted file mode 100644 index 1fd07096d..000000000 --- a/docs/schema/reference/types/references/_category_.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "label": "References" -} diff --git a/docs/schema/reference/types/sources/_category_.json b/docs/schema/reference/types/sources/_category_.json deleted file mode 100644 index b7d7bcaa2..000000000 --- a/docs/schema/reference/types/sources/_category_.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "label": "Sources" -} diff --git a/docs/schema/reference/types/strings/_category_.json b/docs/schema/reference/types/strings/_category_.json deleted file mode 100644 index 0d66ddd94..000000000 --- a/docs/schema/reference/types/strings/_category_.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "label": "Strings" -} diff --git a/sidebars.js b/sidebars.js index 4b921bb64..301d946e2 100644 --- a/sidebars.js +++ b/sidebars.js @@ -89,69 +89,50 @@ const sidebars = { label: 'Reference', collapsed: true, items: [ - // Cross-theme types shared across feature types { type: 'category', - label: 'Types', + label: 'Core', collapsed: true, items: [ - 'schema/reference/types/primitives', - 'schema/reference/types/geometry', - { - type: 'category', - label: 'Names', - collapsed: true, - items: [ - 'schema/reference/types/names/names', - 'schema/reference/types/names/common_names', - 'schema/reference/types/names/name_variant', - 'schema/reference/types/names/name_rule', - ], - }, - { - type: 'category', - label: 'Perspectives', - collapsed: true, - items: [ - 'schema/reference/types/perspectives/perspectives', - 'schema/reference/types/perspectives/perspective_mode', - ], - }, - { - type: 'category', - label: 'Cartography', - collapsed: true, - items: [ - 'schema/reference/types/cartography/cartographic_hints', - 'schema/reference/types/cartography/min_zoom', - 'schema/reference/types/cartography/max_zoom', - 'schema/reference/types/cartography/prominence', - 'schema/reference/types/cartography/sort_key', - ], - }, + 'schema/reference/core/names', + 'schema/reference/core/common_names', + 'schema/reference/core/name_variant', + 'schema/reference/core/name_rule', + 'schema/reference/core/perspectives', + 'schema/reference/core/perspective_mode', + 'schema/reference/core/cartographic_hints', + 'schema/reference/core/min_zoom', + 'schema/reference/core/max_zoom', + 'schema/reference/core/prominence', + 'schema/reference/core/sort_key', { type: 'category', label: 'Scoping', collapsed: true, items: [ - 'schema/reference/types/scoping/side', - 'schema/reference/types/scoping/linearly_referenced_range', + 'schema/reference/core/scoping/side', + 'schema/reference/core/scoping/linearly_referenced_range', ], }, + 'schema/reference/core/sources', + 'schema/reference/core/source_item', + 'schema/reference/core/confidence_score', + 'schema/reference/core/feature_version', + 'schema/reference/core/level', + ], + }, + { + type: 'category', + label: 'System', + collapsed: true, + items: [ { type: 'category', - label: 'Strings', + label: 'Primitives', collapsed: true, items: [ - 'schema/reference/types/strings/country_code_alpha2', - 'schema/reference/types/strings/hex_color', - 'schema/reference/types/strings/json_pointer', - 'schema/reference/types/strings/language_tag', - 'schema/reference/types/strings/phone_number', - 'schema/reference/types/strings/region_code', - 'schema/reference/types/strings/snake_case_string', - 'schema/reference/types/strings/stripped_string', - 'schema/reference/types/strings/wikidata_id', + 'schema/reference/system/primitive/primitives', + 'schema/reference/system/primitive/geometry', ], }, { @@ -159,28 +140,18 @@ const sidebars = { label: 'References', collapsed: true, items: [ - 'schema/reference/types/references/id', - ], - }, - { - type: 'category', - label: 'Sources', - collapsed: true, - items: [ - 'schema/reference/types/sources/sources', - 'schema/reference/types/sources/source_item', - ], - }, - { - type: 'category', - label: 'Core Types', - collapsed: true, - items: [ - 'schema/reference/types/core_types/confidence_score', - 'schema/reference/types/core_types/feature_version', - 'schema/reference/types/core_types/level', + 'schema/reference/system/ref/id', ], }, + 'schema/reference/system/country_code_alpha2', + 'schema/reference/system/hex_color', + 'schema/reference/system/json_pointer', + 'schema/reference/system/language_tag', + 'schema/reference/system/phone_number', + 'schema/reference/system/region_code', + 'schema/reference/system/snake_case_string', + 'schema/reference/system/stripped_string', + 'schema/reference/system/wikidata_id', ], }, @@ -189,8 +160,8 @@ const sidebars = { label: 'Addresses', collapsed: true, items: [ - 'schema/reference/addresses/address/address', - 'schema/reference/addresses/address/address_level', + 'schema/reference/addresses/address', + 'schema/reference/addresses/address_level', ], }, { @@ -198,65 +169,23 @@ const sidebars = { label: 'Base Features', collapsed: true, items: [ - { - type: 'category', - label: 'Water', - collapsed: true, - items: [ - 'schema/reference/base/water/water', - 'schema/reference/base/water/water_class', - 'schema/reference/base/water/water_subtype', - ], - }, - { - type: 'category', - label: 'Land', - collapsed: true, - items: [ - 'schema/reference/base/land/land', - 'schema/reference/base/land/land_class', - 'schema/reference/base/land/land_subtype', - ], - }, - { - type: 'category', - label: 'Land Use', - collapsed: true, - items: [ - 'schema/reference/base/land_use/land_use', - 'schema/reference/base/land_use/land_use_class', - 'schema/reference/base/land_use/land_use_subtype', - ], - }, - { - type: 'category', - label: 'Land Cover', - collapsed: true, - items: [ - 'schema/reference/base/land_cover/land_cover', - 'schema/reference/base/land_cover/land_cover_subtype', - ], - }, - { - type: 'category', - label: 'Bathymetry', - collapsed: true, - items: [ - 'schema/reference/base/bathymetry/bathymetry', - 'schema/reference/base/bathymetry/depth', - ], - }, - { - type: 'category', - label: 'Infrastructure', - collapsed: true, - items: [ - 'schema/reference/base/infrastructure/infrastructure', - 'schema/reference/base/infrastructure/infrastructure_class', - 'schema/reference/base/infrastructure/infrastructure_subtype', - 'schema/reference/base/infrastructure/height', - ], - }, + 'schema/reference/base/water', + 'schema/reference/base/water_class', + 'schema/reference/base/water_subtype', + 'schema/reference/base/land', + 'schema/reference/base/land_class', + 'schema/reference/base/land_subtype', + 'schema/reference/base/land_use', + 'schema/reference/base/land_use_class', + 'schema/reference/base/land_use_subtype', + 'schema/reference/base/land_cover', + 'schema/reference/base/land_cover_subtype', + 'schema/reference/base/bathymetry', + 'schema/reference/base/depth', + 'schema/reference/base/infrastructure', + 'schema/reference/base/infrastructure_class', + 'schema/reference/base/infrastructure_subtype', + 'schema/reference/base/height', 'schema/reference/base/elevation', 'schema/reference/base/source_tags', 'schema/reference/base/surface_material', @@ -267,17 +196,10 @@ const sidebars = { label: 'Buildings', collapsed: true, items: [ - { - type: 'category', - label: 'Building', - collapsed: true, - items: [ - 'schema/reference/buildings/building/building', - 'schema/reference/buildings/building/building_class', - 'schema/reference/buildings/building/building_subtype', - ], - }, - 'schema/reference/buildings/building_part/building_part', + 'schema/reference/buildings/building', + 'schema/reference/buildings/building_class', + 'schema/reference/buildings/building_subtype', + 'schema/reference/buildings/building_part', 'schema/reference/buildings/facade_material', 'schema/reference/buildings/roof_material', 'schema/reference/buildings/roof_orientation', @@ -289,34 +211,34 @@ const sidebars = { label: 'Divisions', collapsed: true, items: [ + 'schema/reference/divisions/division', + 'schema/reference/divisions/division_class', { type: 'category', label: 'Division', collapsed: true, items: [ - 'schema/reference/divisions/division/division', - 'schema/reference/divisions/division/division_class', 'schema/reference/divisions/division/norms', - 'schema/reference/divisions/division/capital_of_division_item', - 'schema/reference/divisions/division/hierarchy', - 'schema/reference/divisions/division/hierarchy_item', ], }, + 'schema/reference/divisions/capital_of_division_item', + 'schema/reference/divisions/hierarchy', + 'schema/reference/divisions/hierarchy_item', + 'schema/reference/divisions/division_area', { type: 'category', label: 'Division Area', collapsed: true, items: [ - 'schema/reference/divisions/division_area/division_area', 'schema/reference/divisions/division_area/area_class', ], }, + 'schema/reference/divisions/division_boundary', { type: 'category', label: 'Division Boundary', collapsed: true, items: [ - 'schema/reference/divisions/division_boundary/division_boundary', 'schema/reference/divisions/division_boundary/boundary_class', ], }, @@ -330,11 +252,11 @@ const sidebars = { label: 'Places', collapsed: true, items: [ - 'schema/reference/places/place/place', - 'schema/reference/places/place/brand', - 'schema/reference/places/place/categories', - 'schema/reference/places/place/operating_status', - 'schema/reference/places/place/taxonomy', + 'schema/reference/places/place', + 'schema/reference/places/brand', + 'schema/reference/places/categories', + 'schema/reference/places/operating_status', + 'schema/reference/places/taxonomy', ], }, { @@ -342,11 +264,7 @@ const sidebars = { label: 'Transportation', collapsed: true, items: [ - // NOTE: Segments (road_segment, rail_segment, water_segment) and - // all their referenced types are not yet generated by codegen. - // The Segment type alias (discriminated union) is discovered but - // its members are not processed as individual models. - 'schema/reference/transportation/connector/connector', + 'schema/reference/transportation/connector', ], }, ], From 874c6030a36c098bf849d7869f36e4b8c3b3b2b2 Mon Sep 17 00:00:00 2001 From: Seth Fitzsimmons Date: Thu, 19 Feb 2026 14:46:46 -0800 Subject: [PATCH 04/12] Sync schema reference Fixes newlines that break tables. --- docs/schema/reference/addresses/address.md | 75 ++----------- docs/schema/reference/base/bathymetry.md | 27 +---- docs/schema/reference/base/infrastructure.md | 33 +----- docs/schema/reference/base/land.md | 33 +----- docs/schema/reference/base/land_cover.md | 27 +---- docs/schema/reference/base/land_use.md | 33 +----- docs/schema/reference/base/water.md | 33 +----- docs/schema/reference/buildings/building.md | 75 ++----------- .../reference/buildings/building_part.md | 63 ++--------- docs/schema/reference/core/name_rule.md | 3 +- docs/schema/reference/core/names.md | 3 +- docs/schema/reference/core/source_item.md | 27 +---- docs/schema/reference/divisions/division.md | 103 +++-------------- .../reference/divisions/division_area.md | 30 +---- .../reference/divisions/division_boundary.md | 76 ++----------- docs/schema/reference/places/brand.md | 3 +- docs/schema/reference/places/categories.md | 5 +- docs/schema/reference/places/place.md | 105 +++--------------- docs/schema/reference/places/taxonomy.md | 30 +---- .../reference/transportation/connector.md | 27 +---- 20 files changed, 121 insertions(+), 690 deletions(-) diff --git a/docs/schema/reference/addresses/address.md b/docs/schema/reference/addresses/address.md index 234d036d5..bac0eebb9 100644 --- a/docs/schema/reference/addresses/address.md +++ b/docs/schema/reference/addresses/address.md @@ -26,78 +26,21 @@ provinces, state, and regions, and similar addressing units are found. | `type` | `"address"` | | | `version` | [`FeatureVersion`](../core/feature_version.md) | | | `sources[]` | [`Sources`](../core/sources.md) (list, optional) | | -| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to. - -The root document value `""` indicates that this source information applies to the -entire feature, excepting properties (fields) for which a dedicated source information -record exists. - -Any other JSON Pointer apart from `""` indicates that this source record provides -dedicated source information for the property at the path in the JSON Pointer. As an -example, the value `"/names/common/en"` indicates that the source information applies to -the English common name of a named feature, while the value `"/geometry"` indicates that -it applies to the feature geometry. | +| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to.

The root document value `""` indicates that this source information applies to the
entire feature, excepting properties (fields) for which a dedicated source information
record exists.

Any other JSON Pointer apart from `""` indicates that this source record provides
dedicated source information for the property at the path in the JSON Pointer. As an
example, the value `"/names/common/en"` indicates that the source information applies to
the English common name of a named feature, while the value `"/geometry"` indicates that
it applies to the feature geometry. | | `sources[].dataset` | `string` | Name of the dataset where the source data can be found. | -| `sources[].license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name. - -This should be a valid SPDX license identifier when available. - -If omitted, contact the data provider for more license information. | -| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can -be found. - -The format of record identifiers is dataset-specific. | +| `sources[].license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name.

This should be a valid SPDX license identifier when available.

If omitted, contact the data provider for more license information. | +| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can
be found.

The format of record identifiers is dataset-specific. | | `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | -| `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset. - -This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | +| `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset.

This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | | `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | -| `address_levels[]` | `list<`[`AddressLevel`](address_level.md)`>` (optional) | Names of the sub-country addressing areas the address belongs to, including the city -or locality, in descending order of generality. - -The list is sorted so that the highest, or most general, level comes first (*e.g.*, -region) and the lowest, or most particular level, comes last (*e.g.*, city or town). - -The number of items in this list and their meaning is country-dependent. For -example, in the United States, we expect two items: the state, and the locality or -municipality within the state. Other countries might have as few as one, or even -three or more. - -When a specific level that is required for a country is not known. most likely -because the data provider has not supplied it and we have not derived it from -another source, the list item corresponding to that level must be present, but its -`value` field should be omitted. | +| `address_levels[]` | `list<`[`AddressLevel`](address_level.md)`>` (optional) | Names of the sub-country addressing areas the address belongs to, including the city
or locality, in descending order of generality.

The list is sorted so that the highest, or most general, level comes first (*e.g.*,
region) and the lowest, or most particular level, comes last (*e.g.*, city or town).

The number of items in this list and their meaning is country-dependent. For
example, in the United States, we expect two items: the state, and the locality or
municipality within the state. Other countries might have as few as one, or even
three or more.

When a specific level that is required for a country is not known. most likely
because the data provider has not supplied it and we have not derived it from
another source, the list item corresponding to that level must be present, but its
`value` field should be omitted. | | `address_levels[].value` | [`StrippedString`](../system/stripped_string.md) (optional) | | | `country` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) | The country the address belongs to, as an ISO 3166-1 alpha-2 country code. | -| `number` | [`StrippedString`](../system/stripped_string.md) (optional) | The house number. - -This field does not necessarily contain an integer or even a number. Values such as -"74B", "189 1/2", and "208.5", where the non-integer or non-number part is part of -the house number, not a unit number, are in common use. | -| `postal_city` | [`StrippedString`](../system/stripped_string.md) (optional) | The postal authority designated city name, if applicable. - -In some countries or regions, a mailing address may need to specify a different city -name than the city that actually contains the address coordinates. This optional -field can be used to specify the alternate city name to use. - -For example: - -- The postal city for the US address *716 East County Road, Winchester, Indiana* - is Ridgeville. -- The postal city for the Slovenian address *Tomaj 71, 6221 Tomaj, Slovenia* is - Dutovlje. | +| `number` | [`StrippedString`](../system/stripped_string.md) (optional) | The house number.

This field does not necessarily contain an integer or even a number. Values such as
"74B", "189 1/2", and "208.5", where the non-integer or non-number part is part of
the house number, not a unit number, are in common use. | +| `postal_city` | [`StrippedString`](../system/stripped_string.md) (optional) | The postal authority designated city name, if applicable.

In some countries or regions, a mailing address may need to specify a different city
name than the city that actually contains the address coordinates. This optional
field can be used to specify the alternate city name to use.

For example:

- The postal city for the US address *716 East County Road, Winchester, Indiana*
is Ridgeville.
- The postal city for the Slovenian address *Tomaj 71, 6221 Tomaj, Slovenia* is
Dutovlje. | | `postcode` | [`StrippedString`](../system/stripped_string.md) (optional) | The postal code. | -| `street` | [`StrippedString`](../system/stripped_string.md) (optional) | The street name. - -The street name can include a type (*e.g.*, "Street" or "St", "Boulevard" or "Blvd", -*etc.*) and a directional (*e.g.*, "NW" or "Northwest", "S" or "Sud"). Both type and -directional, if present, may be either a prefix or a suffix to the primary name. -They may either be fully spelled-out or abbreviated. | -| `unit` | [`StrippedString`](../system/stripped_string.md) (optional) | The secondary address unit designator. - -In the case where the primary street address is divided into secondary units, which -may be apartments, floors, or even buildings if the primary street address is a -campus, this field names the specific secondary unit being addressed. | +| `street` | [`StrippedString`](../system/stripped_string.md) (optional) | The street name.

The street name can include a type (*e.g.*, "Street" or "St", "Boulevard" or "Blvd",
*etc.*) and a directional (*e.g.*, "NW" or "Northwest", "S" or "Sud"). Both type and
directional, if present, may be either a prefix or a suffix to the primary name.
They may either be fully spelled-out or abbreviated. | +| `unit` | [`StrippedString`](../system/stripped_string.md) (optional) | The secondary address unit designator.

In the case where the primary street address is divided into secondary units, which
may be apartments, floors, or even buildings if the primary street address is a
campus, this field names the specific secondary unit being addressed. | ## Examples diff --git a/docs/schema/reference/base/bathymetry.md b/docs/schema/reference/base/bathymetry.md index 87e56c5cd..ce80b158d 100644 --- a/docs/schema/reference/base/bathymetry.md +++ b/docs/schema/reference/base/bathymetry.md @@ -14,31 +14,12 @@ lake beds or ocean floors. | `type` | `"bathymetry"` | | | `version` | [`FeatureVersion`](../core/feature_version.md) | | | `sources[]` | [`Sources`](../core/sources.md) (list, optional) | | -| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to. - -The root document value `""` indicates that this source information applies to the -entire feature, excepting properties (fields) for which a dedicated source information -record exists. - -Any other JSON Pointer apart from `""` indicates that this source record provides -dedicated source information for the property at the path in the JSON Pointer. As an -example, the value `"/names/common/en"` indicates that the source information applies to -the English common name of a named feature, while the value `"/geometry"` indicates that -it applies to the feature geometry. | +| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to.

The root document value `""` indicates that this source information applies to the
entire feature, excepting properties (fields) for which a dedicated source information
record exists.

Any other JSON Pointer apart from `""` indicates that this source record provides
dedicated source information for the property at the path in the JSON Pointer. As an
example, the value `"/names/common/en"` indicates that the source information applies to
the English common name of a named feature, while the value `"/geometry"` indicates that
it applies to the feature geometry. | | `sources[].dataset` | `string` | Name of the dataset where the source data can be found. | -| `sources[].license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name. - -This should be a valid SPDX license identifier when available. - -If omitted, contact the data provider for more license information. | -| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can -be found. - -The format of record identifiers is dataset-specific. | +| `sources[].license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name.

This should be a valid SPDX license identifier when available.

If omitted, contact the data provider for more license information. | +| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can
be found.

The format of record identifiers is dataset-specific. | | `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | -| `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset. - -This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | +| `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset.

This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | | `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | | `depth` | [`Depth`](depth.md) | | | `cartography` | [`CartographicHints`](../core/cartographic_hints.md) (optional) | | diff --git a/docs/schema/reference/base/infrastructure.md b/docs/schema/reference/base/infrastructure.md index 4005fcf36..7942214dd 100644 --- a/docs/schema/reference/base/infrastructure.md +++ b/docs/schema/reference/base/infrastructure.md @@ -9,37 +9,17 @@ such as bridges, airports, runways, aerialways, communication towers, and power |-----:|:----:|-------------| | `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | | `bbox` | `bbox` (optional) | An optional bounding box for the feature | -| `geometry` | `geometry` | Geometry of the infrastructure feature, which may be a point, line string, polygon, or -multi-polygon. | +| `geometry` | `geometry` | Geometry of the infrastructure feature, which may be a point, line string, polygon, or
multi-polygon. | | `theme` | `"base"` | | | `type` | `"infrastructure"` | | | `version` | [`FeatureVersion`](../core/feature_version.md) | | | `sources[]` | [`Sources`](../core/sources.md) (list, optional) | | -| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to. - -The root document value `""` indicates that this source information applies to the -entire feature, excepting properties (fields) for which a dedicated source information -record exists. - -Any other JSON Pointer apart from `""` indicates that this source record provides -dedicated source information for the property at the path in the JSON Pointer. As an -example, the value `"/names/common/en"` indicates that the source information applies to -the English common name of a named feature, while the value `"/geometry"` indicates that -it applies to the feature geometry. | +| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to.

The root document value `""` indicates that this source information applies to the
entire feature, excepting properties (fields) for which a dedicated source information
record exists.

Any other JSON Pointer apart from `""` indicates that this source record provides
dedicated source information for the property at the path in the JSON Pointer. As an
example, the value `"/names/common/en"` indicates that the source information applies to
the English common name of a named feature, while the value `"/geometry"` indicates that
it applies to the feature geometry. | | `sources[].dataset` | `string` | Name of the dataset where the source data can be found. | -| `sources[].license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name. - -This should be a valid SPDX license identifier when available. - -If omitted, contact the data provider for more license information. | -| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can -be found. - -The format of record identifiers is dataset-specific. | +| `sources[].license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name.

This should be a valid SPDX license identifier when available.

If omitted, contact the data provider for more license information. | +| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can
be found.

The format of record identifiers is dataset-specific. | | `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | -| `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset. - -This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | +| `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset.

This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | | `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | | `class` | [`InfrastructureClass`](infrastructure_class.md) | | | `subtype` | [`InfrastructureSubtype`](infrastructure_subtype.md) | | @@ -51,8 +31,7 @@ This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived | `names.rules[]` | `list<`[`NameRule`](../core/name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | | `names.rules[].value` | [`StrippedString`](../system/stripped_string.md) | The actual name value. | | `names.rules[].variant` | [`NameVariant`](../core/name_variant.md) | The name variant for this name rule. | -| `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 -language tag. | +| `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47
language tag. | | `names.rules[].perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | | | `names.rules[].perspectives.mode` | [`PerspectiveMode`](../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | | `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | diff --git a/docs/schema/reference/base/land.md b/docs/schema/reference/base/land.md index 0de3a125e..3667f5911 100644 --- a/docs/schema/reference/base/land.md +++ b/docs/schema/reference/base/land.md @@ -19,37 +19,17 @@ TODO: Update this description when the relationship to `land_cover` is better un |-----:|:----:|-------------| | `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | | `bbox` | `bbox` (optional) | An optional bounding box for the feature | -| `geometry` | `geometry` | Geometry of the land feature, which may be a point, line string, polygon, or -multi-polygon. | +| `geometry` | `geometry` | Geometry of the land feature, which may be a point, line string, polygon, or
multi-polygon. | | `theme` | `"base"` | | | `type` | `"land"` | | | `version` | [`FeatureVersion`](../core/feature_version.md) | | | `sources[]` | [`Sources`](../core/sources.md) (list, optional) | | -| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to. - -The root document value `""` indicates that this source information applies to the -entire feature, excepting properties (fields) for which a dedicated source information -record exists. - -Any other JSON Pointer apart from `""` indicates that this source record provides -dedicated source information for the property at the path in the JSON Pointer. As an -example, the value `"/names/common/en"` indicates that the source information applies to -the English common name of a named feature, while the value `"/geometry"` indicates that -it applies to the feature geometry. | +| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to.

The root document value `""` indicates that this source information applies to the
entire feature, excepting properties (fields) for which a dedicated source information
record exists.

Any other JSON Pointer apart from `""` indicates that this source record provides
dedicated source information for the property at the path in the JSON Pointer. As an
example, the value `"/names/common/en"` indicates that the source information applies to
the English common name of a named feature, while the value `"/geometry"` indicates that
it applies to the feature geometry. | | `sources[].dataset` | `string` | Name of the dataset where the source data can be found. | -| `sources[].license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name. - -This should be a valid SPDX license identifier when available. - -If omitted, contact the data provider for more license information. | -| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can -be found. - -The format of record identifiers is dataset-specific. | +| `sources[].license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name.

This should be a valid SPDX license identifier when available.

If omitted, contact the data provider for more license information. | +| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can
be found.

The format of record identifiers is dataset-specific. | | `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | -| `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset. - -This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | +| `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset.

This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | | `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | | `class` | [`LandClass`](land_class.md) (optional) | | | `subtype` | [`LandSubtype`](land_subtype.md) (optional) | | @@ -61,8 +41,7 @@ This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived | `names.rules[]` | `list<`[`NameRule`](../core/name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | | `names.rules[].value` | [`StrippedString`](../system/stripped_string.md) | The actual name value. | | `names.rules[].variant` | [`NameVariant`](../core/name_variant.md) | The name variant for this name rule. | -| `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 -language tag. | +| `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47
language tag. | | `names.rules[].perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | | | `names.rules[].perspectives.mode` | [`PerspectiveMode`](../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | | `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | diff --git a/docs/schema/reference/base/land_cover.md b/docs/schema/reference/base/land_cover.md index 10a52d84c..00c88622d 100644 --- a/docs/schema/reference/base/land_cover.md +++ b/docs/schema/reference/base/land_cover.md @@ -21,31 +21,12 @@ TODO: Explain relationship to `Land` features. | `type` | `"land_cover"` | | | `version` | [`FeatureVersion`](../core/feature_version.md) | | | `sources[]` | [`Sources`](../core/sources.md) (list, optional) | | -| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to. - -The root document value `""` indicates that this source information applies to the -entire feature, excepting properties (fields) for which a dedicated source information -record exists. - -Any other JSON Pointer apart from `""` indicates that this source record provides -dedicated source information for the property at the path in the JSON Pointer. As an -example, the value `"/names/common/en"` indicates that the source information applies to -the English common name of a named feature, while the value `"/geometry"` indicates that -it applies to the feature geometry. | +| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to.

The root document value `""` indicates that this source information applies to the
entire feature, excepting properties (fields) for which a dedicated source information
record exists.

Any other JSON Pointer apart from `""` indicates that this source record provides
dedicated source information for the property at the path in the JSON Pointer. As an
example, the value `"/names/common/en"` indicates that the source information applies to
the English common name of a named feature, while the value `"/geometry"` indicates that
it applies to the feature geometry. | | `sources[].dataset` | `string` | Name of the dataset where the source data can be found. | -| `sources[].license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name. - -This should be a valid SPDX license identifier when available. - -If omitted, contact the data provider for more license information. | -| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can -be found. - -The format of record identifiers is dataset-specific. | +| `sources[].license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name.

This should be a valid SPDX license identifier when available.

If omitted, contact the data provider for more license information. | +| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can
be found.

The format of record identifiers is dataset-specific. | | `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | -| `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset. - -This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | +| `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset.

This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | | `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | | `subtype` | [`LandCoverSubtype`](land_cover_subtype.md) | | | `cartography` | [`CartographicHints`](../core/cartographic_hints.md) (optional) | | diff --git a/docs/schema/reference/base/land_use.md b/docs/schema/reference/base/land_use.md index f483afdb7..fd6faedc3 100644 --- a/docs/schema/reference/base/land_use.md +++ b/docs/schema/reference/base/land_use.md @@ -14,37 +14,17 @@ TODO: Explain relationship to `Land` features. |-----:|:----:|-------------| | `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | | `bbox` | `bbox` (optional) | An optional bounding box for the feature | -| `geometry` | `geometry` | Geometry of the land use area, which may be a point, line string, polygon, or -multi-polygon. | +| `geometry` | `geometry` | Geometry of the land use area, which may be a point, line string, polygon, or
multi-polygon. | | `theme` | `"base"` | | | `type` | `"land_use"` | | | `version` | [`FeatureVersion`](../core/feature_version.md) | | | `sources[]` | [`Sources`](../core/sources.md) (list, optional) | | -| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to. - -The root document value `""` indicates that this source information applies to the -entire feature, excepting properties (fields) for which a dedicated source information -record exists. - -Any other JSON Pointer apart from `""` indicates that this source record provides -dedicated source information for the property at the path in the JSON Pointer. As an -example, the value `"/names/common/en"` indicates that the source information applies to -the English common name of a named feature, while the value `"/geometry"` indicates that -it applies to the feature geometry. | +| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to.

The root document value `""` indicates that this source information applies to the
entire feature, excepting properties (fields) for which a dedicated source information
record exists.

Any other JSON Pointer apart from `""` indicates that this source record provides
dedicated source information for the property at the path in the JSON Pointer. As an
example, the value `"/names/common/en"` indicates that the source information applies to
the English common name of a named feature, while the value `"/geometry"` indicates that
it applies to the feature geometry. | | `sources[].dataset` | `string` | Name of the dataset where the source data can be found. | -| `sources[].license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name. - -This should be a valid SPDX license identifier when available. - -If omitted, contact the data provider for more license information. | -| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can -be found. - -The format of record identifiers is dataset-specific. | +| `sources[].license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name.

This should be a valid SPDX license identifier when available.

If omitted, contact the data provider for more license information. | +| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can
be found.

The format of record identifiers is dataset-specific. | | `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | -| `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset. - -This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | +| `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset.

This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | | `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | | `class` | [`LandUseClass`](land_use_class.md) | | | `subtype` | [`LandUseSubtype`](land_use_subtype.md) | | @@ -56,8 +36,7 @@ This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived | `names.rules[]` | `list<`[`NameRule`](../core/name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | | `names.rules[].value` | [`StrippedString`](../system/stripped_string.md) | The actual name value. | | `names.rules[].variant` | [`NameVariant`](../core/name_variant.md) | The name variant for this name rule. | -| `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 -language tag. | +| `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47
language tag. | | `names.rules[].perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | | | `names.rules[].perspectives.mode` | [`PerspectiveMode`](../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | | `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | diff --git a/docs/schema/reference/base/water.md b/docs/schema/reference/base/water.md index bfcd10639..44e60c4bf 100644 --- a/docs/schema/reference/base/water.md +++ b/docs/schema/reference/base/water.md @@ -30,37 +30,17 @@ and `water=*`. |-----:|:----:|-------------| | `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | | `bbox` | `bbox` (optional) | An optional bounding box for the feature | -| `geometry` | `geometry` | Geometry of the water feature, which may be a point, line string, polygon, or -multi-polygon. | +| `geometry` | `geometry` | Geometry of the water feature, which may be a point, line string, polygon, or
multi-polygon. | | `theme` | `"base"` | | | `type` | `"water"` | | | `version` | [`FeatureVersion`](../core/feature_version.md) | | | `sources[]` | [`Sources`](../core/sources.md) (list, optional) | | -| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to. - -The root document value `""` indicates that this source information applies to the -entire feature, excepting properties (fields) for which a dedicated source information -record exists. - -Any other JSON Pointer apart from `""` indicates that this source record provides -dedicated source information for the property at the path in the JSON Pointer. As an -example, the value `"/names/common/en"` indicates that the source information applies to -the English common name of a named feature, while the value `"/geometry"` indicates that -it applies to the feature geometry. | +| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to.

The root document value `""` indicates that this source information applies to the
entire feature, excepting properties (fields) for which a dedicated source information
record exists.

Any other JSON Pointer apart from `""` indicates that this source record provides
dedicated source information for the property at the path in the JSON Pointer. As an
example, the value `"/names/common/en"` indicates that the source information applies to
the English common name of a named feature, while the value `"/geometry"` indicates that
it applies to the feature geometry. | | `sources[].dataset` | `string` | Name of the dataset where the source data can be found. | -| `sources[].license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name. - -This should be a valid SPDX license identifier when available. - -If omitted, contact the data provider for more license information. | -| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can -be found. - -The format of record identifiers is dataset-specific. | +| `sources[].license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name.

This should be a valid SPDX license identifier when available.

If omitted, contact the data provider for more license information. | +| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can
be found.

The format of record identifiers is dataset-specific. | | `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | -| `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset. - -This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | +| `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset.

This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | | `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | | `class` | [`WaterClass`](water_class.md) (optional) | | | `subtype` | [`WaterSubtype`](water_subtype.md) (optional) | | @@ -73,8 +53,7 @@ This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived | `names.rules[]` | `list<`[`NameRule`](../core/name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | | `names.rules[].value` | [`StrippedString`](../system/stripped_string.md) | The actual name value. | | `names.rules[].variant` | [`NameVariant`](../core/name_variant.md) | The name variant for this name rule. | -| `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 -language tag. | +| `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47
language tag. | | `names.rules[].perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | | | `names.rules[].perspectives.mode` | [`PerspectiveMode`](../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | | `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | diff --git a/docs/schema/reference/buildings/building.md b/docs/schema/reference/buildings/building.md index c0415b5d1..04800e85c 100644 --- a/docs/schema/reference/buildings/building.md +++ b/docs/schema/reference/buildings/building.md @@ -19,42 +19,15 @@ model of the building. | `type` | `"building"` | | | `version` | [`FeatureVersion`](../core/feature_version.md) | | | `sources[]` | [`Sources`](../core/sources.md) (list, optional) | | -| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to. - -The root document value `""` indicates that this source information applies to the -entire feature, excepting properties (fields) for which a dedicated source information -record exists. - -Any other JSON Pointer apart from `""` indicates that this source record provides -dedicated source information for the property at the path in the JSON Pointer. As an -example, the value `"/names/common/en"` indicates that the source information applies to -the English common name of a named feature, while the value `"/geometry"` indicates that -it applies to the feature geometry. | +| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to.

The root document value `""` indicates that this source information applies to the
entire feature, excepting properties (fields) for which a dedicated source information
record exists.

Any other JSON Pointer apart from `""` indicates that this source record provides
dedicated source information for the property at the path in the JSON Pointer. As an
example, the value `"/names/common/en"` indicates that the source information applies to
the English common name of a named feature, while the value `"/geometry"` indicates that
it applies to the feature geometry. | | `sources[].dataset` | `string` | Name of the dataset where the source data can be found. | -| `sources[].license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name. - -This should be a valid SPDX license identifier when available. - -If omitted, contact the data provider for more license information. | -| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can -be found. - -The format of record identifiers is dataset-specific. | +| `sources[].license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name.

This should be a valid SPDX license identifier when available.

If omitted, contact the data provider for more license information. | +| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can
be found.

The format of record identifiers is dataset-specific. | | `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | -| `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset. - -This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | +| `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset.

This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | | `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | -| `subtype` | [`BuildingSubtype`](building_subtype.md) (optional) | A broad classification of the current use and purpose of the building. - -If the current use of the building no longer accords with the original built -purpose, the current use should be specified. For example, a building built as a -train station but later converted into a shopping mall would have the value -`"commercial"` rather than `"transportation"`. | -| `class` | [`BuildingClass`](building_class.md) (optional) | A more specific classification of the current use and purpose of the building. - -If the current use of the building no longer accords with the original built -purpose, the current use should be specified. | +| `subtype` | [`BuildingSubtype`](building_subtype.md) (optional) | A broad classification of the current use and purpose of the building.

If the current use of the building no longer accords with the original built
purpose, the current use should be specified. For example, a building built as a
train station but later converted into a shopping mall would have the value
`"commercial"` rather than `"transportation"`. | +| `class` | [`BuildingClass`](building_class.md) (optional) | A more specific classification of the current use and purpose of the building.

If the current use of the building no longer accords with the original built
purpose, the current use should be specified. | | `has_parts` | `boolean` (optional) | Whether the building has associated building part features | | `names` | [`Names`](../core/names.md) (optional) | | | `names.primary` | [`StrippedString`](../system/stripped_string.md) | The most commonly used name. | @@ -62,41 +35,19 @@ purpose, the current use should be specified. | | `names.rules[]` | `list<`[`NameRule`](../core/name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | | `names.rules[].value` | [`StrippedString`](../system/stripped_string.md) | The actual name value. | | `names.rules[].variant` | [`NameVariant`](../core/name_variant.md) | The name variant for this name rule. | -| `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 -language tag. | +| `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47
language tag. | | `names.rules[].perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | | | `names.rules[].perspectives.mode` | [`PerspectiveMode`](../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | | `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | | `names.rules[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | | `names.rules[].side` | [`Side`](../core/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | | `level` | [`Level`](../core/level.md) (optional) | | -| `height` | `float64` (optional) | Height of the building or part in meters. - -This is the distance from the lowest point to the highest point. | -| `is_underground` | `boolean` (optional) | Whether the entire building or part is completely below ground. - -The underground flag is useful for display purposes. Buildings and building parts -that are entirely below ground can be styled differently or omitted from the -rendered image. - -This flag is conceptually different from the `level` field, which indicates -relative z-ordering and, notably, can be negative even if the building is entirely -above-ground. | +| `height` | `float64` (optional) | Height of the building or part in meters.

This is the distance from the lowest point to the highest point. | +| `is_underground` | `boolean` (optional) | Whether the entire building or part is completely below ground.

The underground flag is useful for display purposes. Buildings and building parts
that are entirely below ground can be styled differently or omitted from the
rendered image.

This flag is conceptually different from the `level` field, which indicates
relative z-ordering and, notably, can be negative even if the building is entirely
above-ground. | | `num_floors` | `int32` (optional) | Number of above-ground floors of the building or part. | | `num_floors_underground` | `int32` (optional) | Number of below-ground floors of the building or part. | -| `min_height` | `float64` (optional) | Altitude above ground where the bottom of the building or building part starts. - -If present, this value indicates that the lowest part of the building or building -part starts is above ground level. | -| `min_floor` | `int32` (optional) | Start floor of this building or part. - -If present, this value indicates that the building or part is "floating" and its -bottom-most floor is above ground level, usually because it is part of a larger -building in which some parts do reach down to ground level. An example is a building -that has an entry road or driveway at ground level into an interior courtyard, where -part of the building bridges above the entry road. This property may sometimes be -populated when `min_height` is missing and in these cases can be used as a proxy for -`min_height`. | +| `min_height` | `float64` (optional) | Altitude above ground where the bottom of the building or building part starts.

If present, this value indicates that the lowest part of the building or building
part starts is above ground level. | +| `min_floor` | `int32` (optional) | Start floor of this building or part.

If present, this value indicates that the building or part is "floating" and its
bottom-most floor is above ground level, usually because it is part of a larger
building in which some parts do reach down to ground level. An example is a building
that has an entry road or driveway at ground level into an interior courtyard, where
part of the building bridges above the entry road. This property may sometimes be
populated when `min_height` is missing and in these cases can be used as a proxy for
`min_height`. | | `facade_color` | [`HexColor`](../system/hex_color.md) (optional) | Facade color in `#rgb` or `#rrggbb` hex notation | | `facade_material` | [`FacadeMaterial`](facade_material.md) (optional) | Outer surface material of the facade | | `roof_material` | [`RoofMaterial`](roof_material.md) (optional) | Outer surface material of the roof | @@ -104,9 +55,7 @@ populated when `min_height` is missing and in these cases can be used as a proxy | `roof_direction` | `float64` (optional) | Bearing of the roof ridge line in degrees | | `roof_orientation` | [`RoofOrientation`](roof_orientation.md) (optional) | Orientation of the roof shape relative to the footprint shape | | `roof_color` | [`HexColor`](../system/hex_color.md) (optional) | The roof color in `#rgb` or `#rrggbb` hex notation | -| `roof_height` | `float64` (optional) | Height of the roof in meters. - -This is the distance from the base of the roof to its highest point. | +| `roof_height` | `float64` (optional) | Height of the roof in meters.

This is the distance from the base of the roof to its highest point. | ## Examples diff --git a/docs/schema/reference/buildings/building_part.md b/docs/schema/reference/buildings/building_part.md index 51c2f98a9..41de013ca 100644 --- a/docs/schema/reference/buildings/building_part.md +++ b/docs/schema/reference/buildings/building_part.md @@ -22,31 +22,12 @@ vertical dimension. | `type` | `"building_part"` | | | `version` | [`FeatureVersion`](../core/feature_version.md) | | | `sources[]` | [`Sources`](../core/sources.md) (list, optional) | | -| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to. - -The root document value `""` indicates that this source information applies to the -entire feature, excepting properties (fields) for which a dedicated source information -record exists. - -Any other JSON Pointer apart from `""` indicates that this source record provides -dedicated source information for the property at the path in the JSON Pointer. As an -example, the value `"/names/common/en"` indicates that the source information applies to -the English common name of a named feature, while the value `"/geometry"` indicates that -it applies to the feature geometry. | +| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to.

The root document value `""` indicates that this source information applies to the
entire feature, excepting properties (fields) for which a dedicated source information
record exists.

Any other JSON Pointer apart from `""` indicates that this source record provides
dedicated source information for the property at the path in the JSON Pointer. As an
example, the value `"/names/common/en"` indicates that the source information applies to
the English common name of a named feature, while the value `"/geometry"` indicates that
it applies to the feature geometry. | | `sources[].dataset` | `string` | Name of the dataset where the source data can be found. | -| `sources[].license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name. - -This should be a valid SPDX license identifier when available. - -If omitted, contact the data provider for more license information. | -| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can -be found. - -The format of record identifiers is dataset-specific. | +| `sources[].license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name.

This should be a valid SPDX license identifier when available.

If omitted, contact the data provider for more license information. | +| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can
be found.

The format of record identifiers is dataset-specific. | | `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | -| `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset. - -This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | +| `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset.

This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | | `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | | `building_id` | [`Id`](../system/ref/id.md) | The building to which this part belongs | | `names` | [`Names`](../core/names.md) (optional) | | @@ -55,41 +36,19 @@ This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived | `names.rules[]` | `list<`[`NameRule`](../core/name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | | `names.rules[].value` | [`StrippedString`](../system/stripped_string.md) | The actual name value. | | `names.rules[].variant` | [`NameVariant`](../core/name_variant.md) | The name variant for this name rule. | -| `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 -language tag. | +| `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47
language tag. | | `names.rules[].perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | | | `names.rules[].perspectives.mode` | [`PerspectiveMode`](../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | | `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | | `names.rules[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | | `names.rules[].side` | [`Side`](../core/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | | `level` | [`Level`](../core/level.md) (optional) | | -| `height` | `float64` (optional) | Height of the building or part in meters. - -This is the distance from the lowest point to the highest point. | -| `is_underground` | `boolean` (optional) | Whether the entire building or part is completely below ground. - -The underground flag is useful for display purposes. Buildings and building parts -that are entirely below ground can be styled differently or omitted from the -rendered image. - -This flag is conceptually different from the `level` field, which indicates -relative z-ordering and, notably, can be negative even if the building is entirely -above-ground. | +| `height` | `float64` (optional) | Height of the building or part in meters.

This is the distance from the lowest point to the highest point. | +| `is_underground` | `boolean` (optional) | Whether the entire building or part is completely below ground.

The underground flag is useful for display purposes. Buildings and building parts
that are entirely below ground can be styled differently or omitted from the
rendered image.

This flag is conceptually different from the `level` field, which indicates
relative z-ordering and, notably, can be negative even if the building is entirely
above-ground. | | `num_floors` | `int32` (optional) | Number of above-ground floors of the building or part. | | `num_floors_underground` | `int32` (optional) | Number of below-ground floors of the building or part. | -| `min_height` | `float64` (optional) | Altitude above ground where the bottom of the building or building part starts. - -If present, this value indicates that the lowest part of the building or building -part starts is above ground level. | -| `min_floor` | `int32` (optional) | Start floor of this building or part. - -If present, this value indicates that the building or part is "floating" and its -bottom-most floor is above ground level, usually because it is part of a larger -building in which some parts do reach down to ground level. An example is a building -that has an entry road or driveway at ground level into an interior courtyard, where -part of the building bridges above the entry road. This property may sometimes be -populated when `min_height` is missing and in these cases can be used as a proxy for -`min_height`. | +| `min_height` | `float64` (optional) | Altitude above ground where the bottom of the building or building part starts.

If present, this value indicates that the lowest part of the building or building
part starts is above ground level. | +| `min_floor` | `int32` (optional) | Start floor of this building or part.

If present, this value indicates that the building or part is "floating" and its
bottom-most floor is above ground level, usually because it is part of a larger
building in which some parts do reach down to ground level. An example is a building
that has an entry road or driveway at ground level into an interior courtyard, where
part of the building bridges above the entry road. This property may sometimes be
populated when `min_height` is missing and in these cases can be used as a proxy for
`min_height`. | | `facade_color` | [`HexColor`](../system/hex_color.md) (optional) | Facade color in `#rgb` or `#rrggbb` hex notation | | `facade_material` | [`FacadeMaterial`](facade_material.md) (optional) | Outer surface material of the facade | | `roof_material` | [`RoofMaterial`](roof_material.md) (optional) | Outer surface material of the roof | @@ -97,9 +56,7 @@ populated when `min_height` is missing and in these cases can be used as a proxy | `roof_direction` | `float64` (optional) | Bearing of the roof ridge line in degrees | | `roof_orientation` | [`RoofOrientation`](roof_orientation.md) (optional) | Orientation of the roof shape relative to the footprint shape | | `roof_color` | [`HexColor`](../system/hex_color.md) (optional) | The roof color in `#rgb` or `#rrggbb` hex notation | -| `roof_height` | `float64` (optional) | Height of the roof in meters. - -This is the distance from the base of the roof to its highest point. | +| `roof_height` | `float64` (optional) | Height of the roof in meters.

This is the distance from the base of the roof to its highest point. | ## Examples diff --git a/docs/schema/reference/core/name_rule.md b/docs/schema/reference/core/name_rule.md index 33d081ce9..8f4cb5c97 100644 --- a/docs/schema/reference/core/name_rule.md +++ b/docs/schema/reference/core/name_rule.md @@ -20,8 +20,7 @@ Examples might include: |-----:|:----:|-------------| | `value` | [`StrippedString`](../system/stripped_string.md) | The actual name value. | | `variant` | [`NameVariant`](name_variant.md) | The name variant for this name rule. | -| `language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 -language tag. | +| `language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47
language tag. | | `perspectives` | [`Perspectives`](perspectives.md) (optional) | | | `perspectives.mode` | [`PerspectiveMode`](perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | | `perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | diff --git a/docs/schema/reference/core/names.md b/docs/schema/reference/core/names.md index d73a48888..89653b0da 100644 --- a/docs/schema/reference/core/names.md +++ b/docs/schema/reference/core/names.md @@ -11,8 +11,7 @@ Multilingual names container. | `rules[]` | `list<`[`NameRule`](name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | | `rules[].value` | [`StrippedString`](../system/stripped_string.md) | The actual name value. | | `rules[].variant` | [`NameVariant`](name_variant.md) | The name variant for this name rule. | -| `rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 -language tag. | +| `rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47
language tag. | | `rules[].perspectives` | [`Perspectives`](perspectives.md) (optional) | | | `rules[].perspectives.mode` | [`PerspectiveMode`](perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | | `rules[].perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | diff --git a/docs/schema/reference/core/source_item.md b/docs/schema/reference/core/source_item.md index c5ccf55ee..445b88dc0 100644 --- a/docs/schema/reference/core/source_item.md +++ b/docs/schema/reference/core/source_item.md @@ -6,29 +6,10 @@ Specifies the source of the data used for a feature or one of its properties. | Name | Type | Description | |-----:|:----:|-------------| -| `property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to. - -The root document value `""` indicates that this source information applies to the -entire feature, excepting properties (fields) for which a dedicated source information -record exists. - -Any other JSON Pointer apart from `""` indicates that this source record provides -dedicated source information for the property at the path in the JSON Pointer. As an -example, the value `"/names/common/en"` indicates that the source information applies to -the English common name of a named feature, while the value `"/geometry"` indicates that -it applies to the feature geometry. | +| `property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to.

The root document value `""` indicates that this source information applies to the
entire feature, excepting properties (fields) for which a dedicated source information
record exists.

Any other JSON Pointer apart from `""` indicates that this source record provides
dedicated source information for the property at the path in the JSON Pointer. As an
example, the value `"/names/common/en"` indicates that the source information applies to
the English common name of a named feature, while the value `"/geometry"` indicates that
it applies to the feature geometry. | | `dataset` | `string` | Name of the dataset where the source data can be found. | -| `license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name. - -This should be a valid SPDX license identifier when available. - -If omitted, contact the data provider for more license information. | -| `record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can -be found. - -The format of record identifiers is dataset-specific. | +| `license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name.

This should be a valid SPDX license identifier when available.

If omitted, contact the data provider for more license information. | +| `record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can
be found.

The format of record identifiers is dataset-specific. | | `update_time` | `datetime` (optional) | Last update time of the source data record. | -| `confidence` | [`ConfidenceScore`](confidence_score.md) (optional) | Confidence value from the source dataset. - -This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | +| `confidence` | [`ConfidenceScore`](confidence_score.md) (optional) | Confidence value from the source dataset.

This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | | `between` | [`LinearlyReferencedRange`](scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | diff --git a/docs/schema/reference/divisions/division.md b/docs/schema/reference/divisions/division.md index 45faac653..3f7d09d02 100644 --- a/docs/schema/reference/divisions/division.md +++ b/docs/schema/reference/divisions/division.md @@ -20,8 +20,7 @@ Examples include countries, provinces, cities, towns, neighborhoods, etc. | `names.rules[]` | `list<`[`NameRule`](../core/name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | | `names.rules[].value` | [`StrippedString`](../system/stripped_string.md) | The actual name value. | | `names.rules[].variant` | [`NameVariant`](../core/name_variant.md) | The name variant for this name rule. | -| `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 -language tag. | +| `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47
language tag. | | `names.rules[].perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | | | `names.rules[].perspectives.mode` | [`PerspectiveMode`](../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | | `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | @@ -34,93 +33,28 @@ language tag. | | `type` | `"division"` | | | `version` | [`FeatureVersion`](../core/feature_version.md) | | | `sources[]` | [`Sources`](../core/sources.md) (list, optional) | | -| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to. - -The root document value `""` indicates that this source information applies to the -entire feature, excepting properties (fields) for which a dedicated source information -record exists. - -Any other JSON Pointer apart from `""` indicates that this source record provides -dedicated source information for the property at the path in the JSON Pointer. As an -example, the value `"/names/common/en"` indicates that the source information applies to -the English common name of a named feature, while the value `"/geometry"` indicates that -it applies to the feature geometry. | +| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to.

The root document value `""` indicates that this source information applies to the
entire feature, excepting properties (fields) for which a dedicated source information
record exists.

Any other JSON Pointer apart from `""` indicates that this source record provides
dedicated source information for the property at the path in the JSON Pointer. As an
example, the value `"/names/common/en"` indicates that the source information applies to
the English common name of a named feature, while the value `"/geometry"` indicates that
it applies to the feature geometry. | | `sources[].dataset` | `string` | Name of the dataset where the source data can be found. | -| `sources[].license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name. - -This should be a valid SPDX license identifier when available. - -If omitted, contact the data provider for more license information. | -| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can -be found. - -The format of record identifiers is dataset-specific. | +| `sources[].license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name.

This should be a valid SPDX license identifier when available.

If omitted, contact the data provider for more license information. | +| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can
be found.

The format of record identifiers is dataset-specific. | | `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | -| `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset. - -This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | +| `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset.

This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | | `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | | `subtype` | [`PlaceType`](place_type.md) | | -| `country` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) | ISO 3166-1 alpha-2 country code of the country or country-like entity, that this division represents or belongs to. - -If the entity this division represents has a country code, the country property contains it. If it does not, the country property contains the country code of the first division encountered by traversing the parent_division_id chain to the root. - -For example: - - The country value for the United States is 'US' - - The country value for New York City is 'US' - - The country value for Puerto Rico, a dependency of the US, - is 'PR'. - - The country value for San Juan, Puerto Rico is 'PR'. - -If an entity has an internationally-recognized ISO 3166-1 alpha-2 country code, it should always be used. In cases where the schema requires the code but no internationally-recognized code is available, a synthetic code may be used provided it does not conflict with any internationally-recognized codes. | -| `hierarchies[]` | [`Hierarchy`](hierarchy.md) (list) | Hierarchies in which this division participates. - -Every division participates in at least one hierarchy. Most participate in only one. Some divisions may participate in more than one hierarchy, for example if they are claimed by different parent divisions from different political perspectives; or if there are other real-world reasons why the division or one of its ancestors has multiple parents. - -The first hierarchy in the list is the default hierarchy, and the second-to-last entry in the default hierarchy (if there is such an entry) always corresponds to the `parent_division_id' property. The ordering of hierarchies after the first one is arbitrary. | +| `country` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) | ISO 3166-1 alpha-2 country code of the country or country-like entity, that this division represents or belongs to.

If the entity this division represents has a country code, the country property contains it. If it does not, the country property contains the country code of the first division encountered by traversing the parent_division_id chain to the root.

For example:
- The country value for the United States is 'US'
- The country value for New York City is 'US'
- The country value for Puerto Rico, a dependency of the US,
is 'PR'.
- The country value for San Juan, Puerto Rico is 'PR'.

If an entity has an internationally-recognized ISO 3166-1 alpha-2 country code, it should always be used. In cases where the schema requires the code but no internationally-recognized code is available, a synthetic code may be used provided it does not conflict with any internationally-recognized codes. | +| `hierarchies[]` | [`Hierarchy`](hierarchy.md) (list) | Hierarchies in which this division participates.

Every division participates in at least one hierarchy. Most participate in only one. Some divisions may participate in more than one hierarchy, for example if they are claimed by different parent divisions from different political perspectives; or if there are other real-world reasons why the division or one of its ancestors has multiple parents.

The first hierarchy in the list is the default hierarchy, and the second-to-last entry in the default hierarchy (if there is such an entry) always corresponds to the `parent_division_id' property. The ordering of hierarchies after the first one is arbitrary. | | `hierarchies[].division_id` | [`DivisionId`](division_id.md) | | | `hierarchies[].subtype` | [`PlaceType`](place_type.md) | | | `hierarchies[].name` | [`StrippedString`](../system/stripped_string.md) | Primary name of the division | -| `parent_division_id` | [`Id`](../system/ref/id.md) (optional) | Division ID of this division's parent division. - -Not allowed for top-level divisions (countries) and required for all other divisions. - -The default parent division is the parent division as seen from the default political perspective, if there is one, and is otherwise chosen somewhat arbitrarily. The hierarchies property can be used to inspect the exhaustive list of parent divisions. | +| `parent_division_id` | [`Id`](../system/ref/id.md) (optional) | Division ID of this division's parent division.

Not allowed for top-level divisions (countries) and required for all other divisions.

The default parent division is the parent division as seen from the default political perspective, if there is one, and is otherwise chosen somewhat arbitrarily. The hierarchies property can be used to inspect the exhaustive list of parent divisions. | | `admin_level` | [`AdminLevel`](admin_level.md) (optional) | | | `class` | [`DivisionClass`](division_class.md) (optional) | | -| `local_type` | [`CommonNames`](../core/common_names.md) (map, optional) | Local name for the subtype property, optionally localized. - -For example, the Canadian province of Quebec has the subtype 'region', but in the local administrative hierarchy it is referred to as a 'province'. Similarly, the Canadian Yukon territory also has subtype 'region', but is locally called a 'territory'. - -This property is localized using a standard Overture names structure. So for example, in Switzerland the top-level administrative subdivision corresponding to subtype 'region' is the canton, which is may be translated in each of Switzerland's official languages as, 'canton' in French, 'kanton' in German, 'cantone' in Italian, and 'chantun' in Romansh. | -| `region` | [`RegionCode`](../system/region_code.md) (optional) | ISO 3166-2 principal subdivision code of the subdivision-like entity this division represents or belongs to. - -If the entity this division represents has a principal subdivision code, the region property contains it. If it does not, the region property contains the principal subdivision code of the first division encountered by traversing the parent_division_id chain to the root. - -For example: - - The region value for the United States is omitted. - - The region value for the U.S. state of New York is 'US-NY'. - - The region value for New York City is 'US-NY', which it - inherits from the state of New York. - - The region value for Puerto Rico is 'US-PR'. | -| `perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | Political perspectives from which this division is considered to be an accurate representation. - -If this property is absent, then this division is not known to be disputed from any political perspective. Consequently, there is only one division feature representing the entire real world entity. - -If this property is present, it means the division represents one of several alternative perspectives on the same real-world entity. - -There are two modes of perspective: - -1. `accepted_by` means the representation of the division is accepted by the listed entities and would be included on a map drawn from their perspective. - -2. `disputed_by` means the representation of the division is disputed by the listed entities and would be excluded from a map drawn from their perspective. - -When drawing a map from the perspective of a given country, one would start by gathering all the undisputed divisions (with no `perspectives` property), and then adding to that first all divisions explicitly accepted by the country, and second all divisions not explicitly disputed by the country. | +| `local_type` | [`CommonNames`](../core/common_names.md) (map, optional) | Local name for the subtype property, optionally localized.

For example, the Canadian province of Quebec has the subtype 'region', but in the local administrative hierarchy it is referred to as a 'province'. Similarly, the Canadian Yukon territory also has subtype 'region', but is locally called a 'territory'.

This property is localized using a standard Overture names structure. So for example, in Switzerland the top-level administrative subdivision corresponding to subtype 'region' is the canton, which is may be translated in each of Switzerland's official languages as, 'canton' in French, 'kanton' in German, 'cantone' in Italian, and 'chantun' in Romansh. | +| `region` | [`RegionCode`](../system/region_code.md) (optional) | ISO 3166-2 principal subdivision code of the subdivision-like entity this division represents or belongs to.

If the entity this division represents has a principal subdivision code, the region property contains it. If it does not, the region property contains the principal subdivision code of the first division encountered by traversing the parent_division_id chain to the root.

For example:
- The region value for the United States is omitted.
- The region value for the U.S. state of New York is 'US-NY'.
- The region value for New York City is 'US-NY', which it
inherits from the state of New York.
- The region value for Puerto Rico is 'US-PR'. | +| `perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | Political perspectives from which this division is considered to be an accurate representation.

If this property is absent, then this division is not known to be disputed from any political perspective. Consequently, there is only one division feature representing the entire real world entity.

If this property is present, it means the division represents one of several alternative perspectives on the same real-world entity.

There are two modes of perspective:

1. `accepted_by` means the representation of the division is accepted by the listed entities and would be included on a map drawn from their perspective.

2. `disputed_by` means the representation of the division is disputed by the listed entities and would be excluded from a map drawn from their perspective.

When drawing a map from the perspective of a given country, one would start by gathering all the undisputed divisions (with no `perspectives` property), and then adding to that first all divisions explicitly accepted by the country, and second all divisions not explicitly disputed by the country. | | `perspectives.mode` | [`PerspectiveMode`](../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | | `perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | -| `norms` | [`Norms`](division/norms.md) (optional) | Collects information about local norms and rules within the division that are generally useful for mapping and map-related use cases. - -If the norms property or a desired sub-property of the norms property is missing on a division, but at least one of its ancestor divisions has the norms property and the desired sub-property, then the value from the nearest ancestor division may be assumed. | +| `norms` | [`Norms`](division/norms.md) (optional) | Collects information about local norms and rules within the division that are generally useful for mapping and map-related use cases.

If the norms property or a desired sub-property of the norms property is missing on a division, but at least one of its ancestor divisions has the norms property and the desired sub-property, then the value from the nearest ancestor division may be assumed. | | `norms.driving_side` | [`Side`](../core/scoping/side.md) (optional) | Side of the road on which vehicles drive in the division. | | `population` | `int32` (optional) | Population of the division | | `capital_division_ids` | [`Id`](../system/ref/id.md) (list, optional) | Division IDs of this division's capital divisions. If present, this property will refer to the division IDs of the capital cities, county seats, etc. of a division. | @@ -152,18 +86,7 @@ If the norms property or a desired sub-property of the norms property is missing | `sources[0].between` | `null` | | `subtype` | locality | | `country` | TO | -| `hierarchies[0][0].division_id` | fef8748b-0c91-46ad-9f2d-976d8d2de3e9 | -| `hierarchies[0][0].subtype` | country | -| `hierarchies[0][0].name` | Tonga | -| `hierarchies[0][1].division_id` | 4d67561a-2292-41bd-8996-7853d276a42c | -| `hierarchies[0][1].subtype` | region | -| `hierarchies[0][1].name` | Tongatapu | -| `hierarchies[0][2].division_id` | 8730f0cc-d436-4f11-a7d3-49085813ef44 | -| `hierarchies[0][2].subtype` | county | -| `hierarchies[0][2].name` | Vahe Kolomotu'a | -| `hierarchies[0][3].division_id` | 350e85f6-68ba-4114-9906-c2844815988b | -| `hierarchies[0][3].subtype` | locality | -| `hierarchies[0][3].name` | Sia'atoutai | +| `hierarchies` | `[[{'division_id': 'fef8748b-0c91-46ad-9f2d-976d8d2de3e9', 'subtype': 'country', 'name': 'Tonga'}, {'division_id': '4d67561a-2292-41bd-8996-7853d276a42c', 'subtype': 'region', 'name': 'Tongatapu'}, {'division_id': '8730f0cc-d436-4f11-a7d3-49085813ef44', 'subtype': 'county', 'name': "Vahe Kolomotu'a"}, {'division_id': '350e85f6-68ba-4114-9906-c2844815988b', 'subtype': 'locality', 'name': "Sia'atoutai"}]]` | | `parent_division_id` | 8730f0cc-d436-4f11-a7d3-49085813ef44 | | `class` | village | | `local_type.en` | village | diff --git a/docs/schema/reference/divisions/division_area.md b/docs/schema/reference/divisions/division_area.md index 15b4e7fc5..6412c7aa9 100644 --- a/docs/schema/reference/divisions/division_area.md +++ b/docs/schema/reference/divisions/division_area.md @@ -18,8 +18,7 @@ belongs to. | `names.rules[]` | `list<`[`NameRule`](../core/name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | | `names.rules[].value` | [`StrippedString`](../system/stripped_string.md) | The actual name value. | | `names.rules[].variant` | [`NameVariant`](../core/name_variant.md) | The name variant for this name rule. | -| `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 -language tag. | +| `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47
language tag. | | `names.rules[].perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | | | `names.rules[].perspectives.mode` | [`PerspectiveMode`](../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | | `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | @@ -32,31 +31,12 @@ language tag. | | `type` | `"division_area"` | | | `version` | [`FeatureVersion`](../core/feature_version.md) | | | `sources[]` | [`Sources`](../core/sources.md) (list, optional) | | -| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to. - -The root document value `""` indicates that this source information applies to the -entire feature, excepting properties (fields) for which a dedicated source information -record exists. - -Any other JSON Pointer apart from `""` indicates that this source record provides -dedicated source information for the property at the path in the JSON Pointer. As an -example, the value `"/names/common/en"` indicates that the source information applies to -the English common name of a named feature, while the value `"/geometry"` indicates that -it applies to the feature geometry. | +| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to.

The root document value `""` indicates that this source information applies to the
entire feature, excepting properties (fields) for which a dedicated source information
record exists.

Any other JSON Pointer apart from `""` indicates that this source record provides
dedicated source information for the property at the path in the JSON Pointer. As an
example, the value `"/names/common/en"` indicates that the source information applies to
the English common name of a named feature, while the value `"/geometry"` indicates that
it applies to the feature geometry. | | `sources[].dataset` | `string` | Name of the dataset where the source data can be found. | -| `sources[].license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name. - -This should be a valid SPDX license identifier when available. - -If omitted, contact the data provider for more license information. | -| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can -be found. - -The format of record identifiers is dataset-specific. | +| `sources[].license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name.

This should be a valid SPDX license identifier when available.

If omitted, contact the data provider for more license information. | +| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can
be found.

The format of record identifiers is dataset-specific. | | `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | -| `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset. - -This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | +| `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset.

This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | | `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | | `subtype` | [`PlaceType`](place_type.md) | | | `class` | [`AreaClass`](division_area/area_class.md) | | diff --git a/docs/schema/reference/divisions/division_boundary.md b/docs/schema/reference/divisions/division_boundary.md index 8db43c716..5dcd6e183 100644 --- a/docs/schema/reference/divisions/division_boundary.md +++ b/docs/schema/reference/divisions/division_boundary.md @@ -15,77 +15,23 @@ Some boundaries may be disputed by the divisions on one or both sides. | `type` | `"division_boundary"` | | | `version` | [`FeatureVersion`](../core/feature_version.md) | | | `sources[]` | [`Sources`](../core/sources.md) (list, optional) | | -| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to. - -The root document value `""` indicates that this source information applies to the -entire feature, excepting properties (fields) for which a dedicated source information -record exists. - -Any other JSON Pointer apart from `""` indicates that this source record provides -dedicated source information for the property at the path in the JSON Pointer. As an -example, the value `"/names/common/en"` indicates that the source information applies to -the English common name of a named feature, while the value `"/geometry"` indicates that -it applies to the feature geometry. | +| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to.

The root document value `""` indicates that this source information applies to the
entire feature, excepting properties (fields) for which a dedicated source information
record exists.

Any other JSON Pointer apart from `""` indicates that this source record provides
dedicated source information for the property at the path in the JSON Pointer. As an
example, the value `"/names/common/en"` indicates that the source information applies to
the English common name of a named feature, while the value `"/geometry"` indicates that
it applies to the feature geometry. | | `sources[].dataset` | `string` | Name of the dataset where the source data can be found. | -| `sources[].license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name. - -This should be a valid SPDX license identifier when available. - -If omitted, contact the data provider for more license information. | -| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can -be found. - -The format of record identifiers is dataset-specific. | +| `sources[].license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name.

This should be a valid SPDX license identifier when available.

If omitted, contact the data provider for more license information. | +| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can
be found.

The format of record identifiers is dataset-specific. | | `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | -| `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset. - -This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | +| `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset.

This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | | `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | | `subtype` | [`PlaceType`](place_type.md) | | | `class` | [`BoundaryClass`](division_boundary/boundary_class.md) | | -| `is_land` | `boolean` (optional) | A boolean to indicate whether or not the feature geometry represents the -land-clipped, non-maritime boundary. The geometry can be used for map -rendering, cartographic display, and similar purposes. | -| `is_territorial` | `boolean` (optional) | A boolean to indicate whether or not the feature geometry represents -Overture's best approximation of this place's maritime boundary. For -coastal places, this would tend to include the water area. The geometry -can be used for data processing, reverse-geocoding, and similar purposes. | -| `division_ids` | [`Id`](../system/ref/id.md) (list) | Identifies the two divisions to the left and right, respectively, of the boundary line. The left- and right-hand sides of the boundary are considered from the perspective of a person standing on the line facing in the direction in which the geometry is oriented, i.e. facing toward the end of the line. - -The first array element is the Overture ID of the left division. The second element is the Overture ID of the right division. | -| `country` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (optional) | ISO 3166-1 alpha-2 country code of the country or country-like -entity that both sides of the boundary share. - -This property will be present on boundaries between two regions, counties, -or similar entities within the same country, but will not be present on boundaries -between two countries or country-like entities. | -| `region` | [`RegionCode`](../system/region_code.md) (optional) | ISO 3166-2 principal subdivision code of the subdivision-like -entity that both sides of the boundary share. - -This property will be present on boundaries between two counties, localadmins -or similar entities within the same principal subdivision, but will not be -present on boundaries between different principal subdivisions or countries. | +| `is_land` | `boolean` (optional) | A boolean to indicate whether or not the feature geometry represents the
land-clipped, non-maritime boundary. The geometry can be used for map
rendering, cartographic display, and similar purposes. | +| `is_territorial` | `boolean` (optional) | A boolean to indicate whether or not the feature geometry represents
Overture's best approximation of this place's maritime boundary. For
coastal places, this would tend to include the water area. The geometry
can be used for data processing, reverse-geocoding, and similar purposes. | +| `division_ids` | [`Id`](../system/ref/id.md) (list) | Identifies the two divisions to the left and right, respectively, of the boundary line. The left- and right-hand sides of the boundary are considered from the perspective of a person standing on the line facing in the direction in which the geometry is oriented, i.e. facing toward the end of the line.

The first array element is the Overture ID of the left division. The second element is the Overture ID of the right division. | +| `country` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (optional) | ISO 3166-1 alpha-2 country code of the country or country-like
entity that both sides of the boundary share.

This property will be present on boundaries between two regions, counties,
or similar entities within the same country, but will not be present on boundaries
between two countries or country-like entities. | +| `region` | [`RegionCode`](../system/region_code.md) (optional) | ISO 3166-2 principal subdivision code of the subdivision-like
entity that both sides of the boundary share.

This property will be present on boundaries between two counties, localadmins
or similar entities within the same principal subdivision, but will not be
present on boundaries between different principal subdivisions or countries. | | `admin_level` | [`AdminLevel`](admin_level.md) (optional) | | -| `is_disputed` | `boolean` (optional) | Indicator if there are entities disputing this division boundary. -Information about entities disputing this boundary should be included in perspectives -property. - -This property should also be true if boundary between two entities is unclear -and this is "best guess". So having it true and no perspectives gives map creators -reason not to fully trust the boundary, but use it if they have no other. | -| `perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | Political perspectives from which this division boundary is considered to be an accurate representation. - -If this property is absent, then this boundary is not known to be disputed from any political perspective. Consequently, there is only one boundary feature representing the entire real world entity. - -If this property is present, it means the boundary represents one of several alternative perspectives on the same real-world entity. - -There are two modes of perspective: - - 1. `accepted_by` means the representation of the boundary is accepted by the listed entities and would be included on a map drawn from their perspective. - - 2. `disputed_by` means the representation of the boundary is disputed by the listed entities and would be excluded from a map drawn from their perspective. - -When drawing a map from the perspective of a given country, one would start by gathering all the undisputed boundary (with no `perspectives` property), and then adding to that first all boundary explicitly accepted by the country, and second all boundary not explicitly disputed by the country. | +| `is_disputed` | `boolean` (optional) | Indicator if there are entities disputing this division boundary.
Information about entities disputing this boundary should be included in perspectives
property.

This property should also be true if boundary between two entities is unclear
and this is "best guess". So having it true and no perspectives gives map creators
reason not to fully trust the boundary, but use it if they have no other. | +| `perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | Political perspectives from which this division boundary is considered to be an accurate representation.

If this property is absent, then this boundary is not known to be disputed from any political perspective. Consequently, there is only one boundary feature representing the entire real world entity.

If this property is present, it means the boundary represents one of several alternative perspectives on the same real-world entity.

There are two modes of perspective:

1. `accepted_by` means the representation of the boundary is accepted by the listed entities and would be included on a map drawn from their perspective.

2. `disputed_by` means the representation of the boundary is disputed by the listed entities and would be excluded from a map drawn from their perspective.

When drawing a map from the perspective of a given country, one would start by gathering all the undisputed boundary (with no `perspectives` property), and then adding to that first all boundary explicitly accepted by the country, and second all boundary not explicitly disputed by the country. | | `perspectives.mode` | [`PerspectiveMode`](../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | | `perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | diff --git a/docs/schema/reference/places/brand.md b/docs/schema/reference/places/brand.md index 7e630d521..35df2d833 100644 --- a/docs/schema/reference/places/brand.md +++ b/docs/schema/reference/places/brand.md @@ -14,8 +14,7 @@ A location with multiple brands is modeled as multiple separate places, each wit | `names.rules[]` | `list<`[`NameRule`](../core/name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | | `names.rules[].value` | [`StrippedString`](../system/stripped_string.md) | The actual name value. | | `names.rules[].variant` | [`NameVariant`](../core/name_variant.md) | The name variant for this name rule. | -| `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 -language tag. | +| `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47
language tag. | | `names.rules[].perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | | | `names.rules[].perspectives.mode` | [`PerspectiveMode`](../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | | `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | diff --git a/docs/schema/reference/places/categories.md b/docs/schema/reference/places/categories.md index da875468c..225d9be0f 100644 --- a/docs/schema/reference/places/categories.md +++ b/docs/schema/reference/places/categories.md @@ -9,7 +9,4 @@ Complete list is available on GitHub: https://github.com/OvertureMaps/schema/blo | Name | Type | Description | |-----:|:----:|-------------| | `primary` | [`SnakeCaseString`](../system/snake_case_string.md) | The primary or main category of the place. | -| `alternate` | [`SnakeCaseString`](../system/snake_case_string.md) (list, optional) | Alternate categories of the place. - -Some places might fit into two categories, e.g., a book store and a coffee shop. In -these cases, the primary category can be augmented with additional categories. | +| `alternate` | [`SnakeCaseString`](../system/snake_case_string.md) (list, optional) | Alternate categories of the place.

Some places might fit into two categories, e.g., a book store and a coffee shop. In
these cases, the primary category can be augmented with additional categories. | diff --git a/docs/schema/reference/places/place.md b/docs/schema/reference/places/place.md index dd3ce4bde..b8e38e6cd 100644 --- a/docs/schema/reference/places/place.md +++ b/docs/schema/reference/places/place.md @@ -13,98 +13,23 @@ Places are point representations of real-world facilities, businesses, services, | `type` | `"place"` | | | `version` | [`FeatureVersion`](../core/feature_version.md) | | | `sources[]` | [`Sources`](../core/sources.md) (list, optional) | | -| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to. - -The root document value `""` indicates that this source information applies to the -entire feature, excepting properties (fields) for which a dedicated source information -record exists. - -Any other JSON Pointer apart from `""` indicates that this source record provides -dedicated source information for the property at the path in the JSON Pointer. As an -example, the value `"/names/common/en"` indicates that the source information applies to -the English common name of a named feature, while the value `"/geometry"` indicates that -it applies to the feature geometry. | +| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to.

The root document value `""` indicates that this source information applies to the
entire feature, excepting properties (fields) for which a dedicated source information
record exists.

Any other JSON Pointer apart from `""` indicates that this source record provides
dedicated source information for the property at the path in the JSON Pointer. As an
example, the value `"/names/common/en"` indicates that the source information applies to
the English common name of a named feature, while the value `"/geometry"` indicates that
it applies to the feature geometry. | | `sources[].dataset` | `string` | Name of the dataset where the source data can be found. | -| `sources[].license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name. - -This should be a valid SPDX license identifier when available. - -If omitted, contact the data provider for more license information. | -| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can -be found. - -The format of record identifiers is dataset-specific. | +| `sources[].license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name.

This should be a valid SPDX license identifier when available.

If omitted, contact the data provider for more license information. | +| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can
be found.

The format of record identifiers is dataset-specific. | | `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | -| `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset. - -This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | +| `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset.

This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | | `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | -| `operating_status` | [`OperatingStatus`](operating_status.md) | An indication of whether a place is: in continued operation, in a temporary -operating hiatus, or closed permanently. - -This is not an indication of opening hours or that the place is open/closed at the -current time-of-day or day-of-week. - -When `operating_status` is `"permanently_closed"`, the `confidence` field will be -set to 0. | +| `operating_status` | [`OperatingStatus`](operating_status.md) | An indication of whether a place is: in continued operation, in a temporary
operating hiatus, or closed permanently.

This is not an indication of opening hours or that the place is open/closed at the
current time-of-day or day-of-week.

When `operating_status` is `"permanently_closed"`, the `confidence` field will be
set to 0. | | `categories` | [`Categories`](categories.md) (optional) | | | `categories.primary` | [`SnakeCaseString`](../system/snake_case_string.md) | The primary or main category of the place. | -| `categories.alternate` | [`SnakeCaseString`](../system/snake_case_string.md) (list, optional) | Alternate categories of the place. - -Some places might fit into two categories, e.g., a book store and a coffee shop. In -these cases, the primary category can be augmented with additional categories. | -| `basic_category` | [`SnakeCaseString`](../system/snake_case_string.md) (optional) | The basic level category of a place. - -This field classifies places into categories at a level that most people find -intuitive. The full list of possible values it may hold can be found at (TODO). - -The basic level category, or simply basic category, is based on a cognitive science -model use in taxonomy and ontology development. The idea is to provide the category -name at the level of generality that is preferred by humans in learning and memory -tasks. This category to be roughly in the middle of the general-to-specific category -hierarchy. - -The full list of basic level categories is available at https://docs.overturemaps.org/guides/places/ | -| `taxonomy` | [`Taxonomy`](taxonomy.md) (optional) | A structured representation of the place's category within the Overture taxonomy. - -Provides the primary classification, full hierarchy path, and alternate categories. | -| `taxonomy.primary` | [`SnakeCaseString`](../system/snake_case_string.md) | -The primary, or most specific, category known about this place. - -The `primary` category value must always equal the last or rightmost entry in the `hierarchy` field. - | -| `taxonomy.hierarchy` | [`SnakeCaseString`](../system/snake_case_string.md) (list) | The full primary hierarchy of categories known for this place, ordered from most general to most specific. -An example hierarchy might be: `["food_and_drink", "restaurant", "casual_eatery", "gas_station_sushi"]`. - -The rightmost, or most specific, value in the `hierarchy` must always be equal to the `primary` field. -The basic level category of the place will typically be found in the middle of the primary hierarchy. -The primary hierarchy does not include any of the alternate categories found in the `alternates` field. | -| `taxonomy.alternates` | [`SnakeCaseString`](../system/snake_case_string.md) (list, optional) | Unordered list of additional categories that are known for this -place but that are not part of the primary category hierarchy. - -Alternate categories allow a more complete picture of the place -to be surfaced when it fits multiple unconnected branches in the -taxonomy. For example a gas station that also sells groceries -might have primary category of "gas_station" with an alternate -of "grocery_store". - -Alternate categories are not part of the primary hierarchy or -another alternate category's hierarchy. -In other words, if a category is a parent in the hierarchy of another category, -that category can't be a primary or alternate category itself. - -Note as well that this field is an unordered list of extra -categories and does not represent a hierarchy. | -| `confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | A score between 0 and 1 indicating how confident we are that the place exists. - -A confidence score of 0 indicates that we are certain the place doesn't exist -anymore and will always be paired with an `operating_status` of -`"permanently_closed"`. - -A confidence score of 1 indicates that we are certain the place does exist. - -If there is no value for confidence, it means we don't have enough information on -which to estimate our confidence level. | +| `categories.alternate` | [`SnakeCaseString`](../system/snake_case_string.md) (list, optional) | Alternate categories of the place.

Some places might fit into two categories, e.g., a book store and a coffee shop. In
these cases, the primary category can be augmented with additional categories. | +| `basic_category` | [`SnakeCaseString`](../system/snake_case_string.md) (optional) | The basic level category of a place.

This field classifies places into categories at a level that most people find
intuitive. The full list of possible values it may hold can be found at (TODO).

The basic level category, or simply basic category, is based on a cognitive science
model use in taxonomy and ontology development. The idea is to provide the category
name at the level of generality that is preferred by humans in learning and memory
tasks. This category to be roughly in the middle of the general-to-specific category
hierarchy.

The full list of basic level categories is available at https://docs.overturemaps.org/guides/places/ | +| `taxonomy` | [`Taxonomy`](taxonomy.md) (optional) | A structured representation of the place's category within the Overture taxonomy.

Provides the primary classification, full hierarchy path, and alternate categories. | +| `taxonomy.primary` | [`SnakeCaseString`](../system/snake_case_string.md) | The primary, or most specific, category known about this place.

The `primary` category value must always equal the last or rightmost entry in the `hierarchy` field. | +| `taxonomy.hierarchy` | [`SnakeCaseString`](../system/snake_case_string.md) (list) | The full primary hierarchy of categories known for this place, ordered from most general to most specific.
An example hierarchy might be: `["food_and_drink", "restaurant", "casual_eatery", "gas_station_sushi"]`.

The rightmost, or most specific, value in the `hierarchy` must always be equal to the `primary` field.
The basic level category of the place will typically be found in the middle of the primary hierarchy.
The primary hierarchy does not include any of the alternate categories found in the `alternates` field. | +| `taxonomy.alternates` | [`SnakeCaseString`](../system/snake_case_string.md) (list, optional) | Unordered list of additional categories that are known for this
place but that are not part of the primary category hierarchy.

Alternate categories allow a more complete picture of the place
to be surfaced when it fits multiple unconnected branches in the
taxonomy. For example a gas station that also sells groceries
might have primary category of "gas_station" with an alternate
of "grocery_store".

Alternate categories are not part of the primary hierarchy or
another alternate category's hierarchy.
In other words, if a category is a parent in the hierarchy of another category,
that category can't be a primary or alternate category itself.

Note as well that this field is an unordered list of extra
categories and does not represent a hierarchy. | +| `confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | A score between 0 and 1 indicating how confident we are that the place exists.

A confidence score of 0 indicates that we are certain the place doesn't exist
anymore and will always be paired with an `operating_status` of
`"permanently_closed"`.

A confidence score of 1 indicates that we are certain the place does exist.

If there is no value for confidence, it means we don't have enough information on
which to estimate our confidence level. | | `websites` | `list` (optional) | The websites of the place. | | `socials` | `list` (optional) | The social media URLs of the place. | | `emails` | `list` (optional) | The email addresses of the place. | @@ -116,8 +41,7 @@ which to estimate our confidence level. | | `brand.names.rules[]` | `list<`[`NameRule`](../core/name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | | `brand.names.rules[].value` | [`StrippedString`](../system/stripped_string.md) | The actual name value. | | `brand.names.rules[].variant` | [`NameVariant`](../core/name_variant.md) | The name variant for this name rule. | -| `brand.names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 -language tag. | +| `brand.names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47
language tag. | | `brand.names.rules[].perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | | | `brand.names.rules[].perspectives.mode` | [`PerspectiveMode`](../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | | `brand.names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | @@ -136,8 +60,7 @@ language tag. | | `names.rules[]` | `list<`[`NameRule`](../core/name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | | `names.rules[].value` | [`StrippedString`](../system/stripped_string.md) | The actual name value. | | `names.rules[].variant` | [`NameVariant`](../core/name_variant.md) | The name variant for this name rule. | -| `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 -language tag. | +| `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47
language tag. | | `names.rules[].perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | | | `names.rules[].perspectives.mode` | [`PerspectiveMode`](../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | | `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | diff --git a/docs/schema/reference/places/taxonomy.md b/docs/schema/reference/places/taxonomy.md index 51acb3d5c..cc96b103c 100644 --- a/docs/schema/reference/places/taxonomy.md +++ b/docs/schema/reference/places/taxonomy.md @@ -8,30 +8,6 @@ Provides the primary classification, full hierarchy path, and alternate categori | Name | Type | Description | |-----:|:----:|-------------| -| `primary` | [`SnakeCaseString`](../system/snake_case_string.md) | -The primary, or most specific, category known about this place. - -The `primary` category value must always equal the last or rightmost entry in the `hierarchy` field. - | -| `hierarchy` | [`SnakeCaseString`](../system/snake_case_string.md) (list) | The full primary hierarchy of categories known for this place, ordered from most general to most specific. -An example hierarchy might be: `["food_and_drink", "restaurant", "casual_eatery", "gas_station_sushi"]`. - -The rightmost, or most specific, value in the `hierarchy` must always be equal to the `primary` field. -The basic level category of the place will typically be found in the middle of the primary hierarchy. -The primary hierarchy does not include any of the alternate categories found in the `alternates` field. | -| `alternates` | [`SnakeCaseString`](../system/snake_case_string.md) (list, optional) | Unordered list of additional categories that are known for this -place but that are not part of the primary category hierarchy. - -Alternate categories allow a more complete picture of the place -to be surfaced when it fits multiple unconnected branches in the -taxonomy. For example a gas station that also sells groceries -might have primary category of "gas_station" with an alternate -of "grocery_store". - -Alternate categories are not part of the primary hierarchy or -another alternate category's hierarchy. -In other words, if a category is a parent in the hierarchy of another category, -that category can't be a primary or alternate category itself. - -Note as well that this field is an unordered list of extra -categories and does not represent a hierarchy. | +| `primary` | [`SnakeCaseString`](../system/snake_case_string.md) | The primary, or most specific, category known about this place.

The `primary` category value must always equal the last or rightmost entry in the `hierarchy` field. | +| `hierarchy` | [`SnakeCaseString`](../system/snake_case_string.md) (list) | The full primary hierarchy of categories known for this place, ordered from most general to most specific.
An example hierarchy might be: `["food_and_drink", "restaurant", "casual_eatery", "gas_station_sushi"]`.

The rightmost, or most specific, value in the `hierarchy` must always be equal to the `primary` field.
The basic level category of the place will typically be found in the middle of the primary hierarchy.
The primary hierarchy does not include any of the alternate categories found in the `alternates` field. | +| `alternates` | [`SnakeCaseString`](../system/snake_case_string.md) (list, optional) | Unordered list of additional categories that are known for this
place but that are not part of the primary category hierarchy.

Alternate categories allow a more complete picture of the place
to be surfaced when it fits multiple unconnected branches in the
taxonomy. For example a gas station that also sells groceries
might have primary category of "gas_station" with an alternate
of "grocery_store".

Alternate categories are not part of the primary hierarchy or
another alternate category's hierarchy.
In other words, if a category is a parent in the hierarchy of another category,
that category can't be a primary or alternate category itself.

Note as well that this field is an unordered list of extra
categories and does not represent a hierarchy. | diff --git a/docs/schema/reference/transportation/connector.md b/docs/schema/reference/transportation/connector.md index 9b138f3cc..b71b5c2e5 100644 --- a/docs/schema/reference/transportation/connector.md +++ b/docs/schema/reference/transportation/connector.md @@ -15,31 +15,12 @@ Connectors are compatible with GeoJSON Point features. | `type` | `"connector"` | | | `version` | [`FeatureVersion`](../core/feature_version.md) | | | `sources[]` | [`Sources`](../core/sources.md) (list, optional) | | -| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to. - -The root document value `""` indicates that this source information applies to the -entire feature, excepting properties (fields) for which a dedicated source information -record exists. - -Any other JSON Pointer apart from `""` indicates that this source record provides -dedicated source information for the property at the path in the JSON Pointer. As an -example, the value `"/names/common/en"` indicates that the source information applies to -the English common name of a named feature, while the value `"/geometry"` indicates that -it applies to the feature geometry. | +| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to.

The root document value `""` indicates that this source information applies to the
entire feature, excepting properties (fields) for which a dedicated source information
record exists.

Any other JSON Pointer apart from `""` indicates that this source record provides
dedicated source information for the property at the path in the JSON Pointer. As an
example, the value `"/names/common/en"` indicates that the source information applies to
the English common name of a named feature, while the value `"/geometry"` indicates that
it applies to the feature geometry. | | `sources[].dataset` | `string` | Name of the dataset where the source data can be found. | -| `sources[].license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name. - -This should be a valid SPDX license identifier when available. - -If omitted, contact the data provider for more license information. | -| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can -be found. - -The format of record identifiers is dataset-specific. | +| `sources[].license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name.

This should be a valid SPDX license identifier when available.

If omitted, contact the data provider for more license information. | +| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can
be found.

The format of record identifiers is dataset-specific. | | `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | -| `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset. - -This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | +| `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset.

This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | | `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | ## Examples From 1f60c2fcf90ee002b8244075c2e108096f1d50be Mon Sep 17 00:00:00 2001 From: Seth Fitzsimmons Date: Thu, 19 Feb 2026 20:27:22 -0800 Subject: [PATCH 05/12] Sync schema reference Include Segment, a union type with complex rendering requirements --- docs/schema/index.md | 6 - docs/schema/reference/core/length_unit.md | 13 ++ docs/schema/reference/core/scoping/heading.md | 8 ++ .../scoping/linearly_referenced_position.md | 6 + .../core/scoping/linearly_referenced_range.md | 4 +- .../reference/core/scoping/opening_hours.md | 4 + .../reference/core/scoping/purpose_of_use.md | 12 ++ .../core/scoping/recognized_status.md | 12 ++ .../reference/core/scoping/travel_mode.md | 19 +++ .../scoping/vehicle_axle_count_selector.md | 11 ++ .../core/scoping/vehicle_height_selector.md | 12 ++ .../core/scoping/vehicle_length_selector.md | 12 ++ .../core/scoping/vehicle_relation.md | 11 ++ .../core/scoping/vehicle_weight_selector.md | 12 ++ .../core/scoping/vehicle_width_selector.md | 12 ++ docs/schema/reference/core/speed_unit.md | 8 ++ docs/schema/reference/core/weight_unit.md | 13 ++ docs/schema/reference/divisions/division.md | 13 +- .../transportation/access_restriction_rule.md | 15 +++ .../access_restriction_rule.when.md | 14 +++ .../reference/transportation/access_rules.md | 6 + .../reference/transportation/access_type.md | 7 ++ .../transportation/connector_reference.md | 11 ++ .../transportation/destination_label_type.md | 12 ++ .../transportation/destination_labels.md | 10 ++ .../transportation/destination_rule.md | 16 +++ .../transportation/destination_rule.when.md | 9 ++ .../transportation/destination_sign_symbol.md | 27 +++++ .../reference/transportation/destinations.md | 1 + .../reference/transportation/level_rule.md | 11 ++ .../reference/transportation/level_rules.md | 1 + .../prohibited_transition_rule.md | 18 +++ .../prohibited_transition_rule.when.md | 14 +++ .../transportation/prohibited_transitions.md | 1 + .../reference/transportation/rail_class.md | 14 +++ .../reference/transportation/rail_flag.md | 16 +++ .../transportation/rail_flag_rule.md | 10 ++ .../reference/transportation/rail_flags.md | 6 + .../reference/transportation/road_class.md | 23 ++++ .../reference/transportation/road_flag.md | 15 +++ .../transportation/road_flag_rule.md | 10 ++ .../reference/transportation/road_flags.md | 6 + .../reference/transportation/road_surface.md | 13 ++ .../transportation/route_reference.md | 14 +++ .../schema/reference/transportation/routes.md | 1 + .../reference/transportation/segment.md | 114 ++++++++++++++++++ .../transportation/sequence_entry.md | 10 ++ docs/schema/reference/transportation/speed.md | 10 ++ .../transportation/speed_limit_rule.md | 23 ++++ .../transportation/speed_limit_rule.when.md | 14 +++ .../reference/transportation/speed_limits.md | 6 + .../reference/transportation/speed_value.md | 8 ++ .../reference/transportation/subclass.md | 13 ++ .../reference/transportation/subclass_rule.md | 10 ++ .../transportation/subclass_rules.md | 1 + .../reference/transportation/subtype.md | 9 ++ .../reference/transportation/surface_rule.md | 8 ++ .../reference/transportation/surfaces.md | 6 + docs/schema/reference/transportation/width.md | 5 + .../reference/transportation/width_rule.md | 8 ++ .../reference/transportation/width_rules.md | 6 + 61 files changed, 731 insertions(+), 9 deletions(-) create mode 100644 docs/schema/reference/core/length_unit.md create mode 100644 docs/schema/reference/core/scoping/heading.md create mode 100644 docs/schema/reference/core/scoping/linearly_referenced_position.md create mode 100644 docs/schema/reference/core/scoping/opening_hours.md create mode 100644 docs/schema/reference/core/scoping/purpose_of_use.md create mode 100644 docs/schema/reference/core/scoping/recognized_status.md create mode 100644 docs/schema/reference/core/scoping/travel_mode.md create mode 100644 docs/schema/reference/core/scoping/vehicle_axle_count_selector.md create mode 100644 docs/schema/reference/core/scoping/vehicle_height_selector.md create mode 100644 docs/schema/reference/core/scoping/vehicle_length_selector.md create mode 100644 docs/schema/reference/core/scoping/vehicle_relation.md create mode 100644 docs/schema/reference/core/scoping/vehicle_weight_selector.md create mode 100644 docs/schema/reference/core/scoping/vehicle_width_selector.md create mode 100644 docs/schema/reference/core/speed_unit.md create mode 100644 docs/schema/reference/core/weight_unit.md create mode 100644 docs/schema/reference/transportation/access_restriction_rule.md create mode 100644 docs/schema/reference/transportation/access_restriction_rule.when.md create mode 100644 docs/schema/reference/transportation/access_rules.md create mode 100644 docs/schema/reference/transportation/access_type.md create mode 100644 docs/schema/reference/transportation/connector_reference.md create mode 100644 docs/schema/reference/transportation/destination_label_type.md create mode 100644 docs/schema/reference/transportation/destination_labels.md create mode 100644 docs/schema/reference/transportation/destination_rule.md create mode 100644 docs/schema/reference/transportation/destination_rule.when.md create mode 100644 docs/schema/reference/transportation/destination_sign_symbol.md create mode 100644 docs/schema/reference/transportation/destinations.md create mode 100644 docs/schema/reference/transportation/level_rule.md create mode 100644 docs/schema/reference/transportation/level_rules.md create mode 100644 docs/schema/reference/transportation/prohibited_transition_rule.md create mode 100644 docs/schema/reference/transportation/prohibited_transition_rule.when.md create mode 100644 docs/schema/reference/transportation/prohibited_transitions.md create mode 100644 docs/schema/reference/transportation/rail_class.md create mode 100644 docs/schema/reference/transportation/rail_flag.md create mode 100644 docs/schema/reference/transportation/rail_flag_rule.md create mode 100644 docs/schema/reference/transportation/rail_flags.md create mode 100644 docs/schema/reference/transportation/road_class.md create mode 100644 docs/schema/reference/transportation/road_flag.md create mode 100644 docs/schema/reference/transportation/road_flag_rule.md create mode 100644 docs/schema/reference/transportation/road_flags.md create mode 100644 docs/schema/reference/transportation/road_surface.md create mode 100644 docs/schema/reference/transportation/route_reference.md create mode 100644 docs/schema/reference/transportation/routes.md create mode 100644 docs/schema/reference/transportation/segment.md create mode 100644 docs/schema/reference/transportation/sequence_entry.md create mode 100644 docs/schema/reference/transportation/speed.md create mode 100644 docs/schema/reference/transportation/speed_limit_rule.md create mode 100644 docs/schema/reference/transportation/speed_limit_rule.when.md create mode 100644 docs/schema/reference/transportation/speed_limits.md create mode 100644 docs/schema/reference/transportation/speed_value.md create mode 100644 docs/schema/reference/transportation/subclass.md create mode 100644 docs/schema/reference/transportation/subclass_rule.md create mode 100644 docs/schema/reference/transportation/subclass_rules.md create mode 100644 docs/schema/reference/transportation/subtype.md create mode 100644 docs/schema/reference/transportation/surface_rule.md create mode 100644 docs/schema/reference/transportation/surfaces.md create mode 100644 docs/schema/reference/transportation/width.md create mode 100644 docs/schema/reference/transportation/width_rule.md create mode 100644 docs/schema/reference/transportation/width_rules.md diff --git a/docs/schema/index.md b/docs/schema/index.md index c0c9dd29d..8af8f0990 100644 --- a/docs/schema/index.md +++ b/docs/schema/index.md @@ -8,12 +8,6 @@ import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; -:::caution Work in Progress -The schema reference pages are being regenerated from the Pydantic model -definitions. Transportation segment types (road, rail, water) and their -associated properties are not yet available. Other themes are complete. -::: - ### Top-level properties In the Overture schema, all features have a unique `id` called a [GERS ID](https://docs.overturemaps.org/gers/), a `geometry` object that follows the OGC geometry specification, and other top-level properties. diff --git a/docs/schema/reference/core/length_unit.md b/docs/schema/reference/core/length_unit.md new file mode 100644 index 000000000..7c86b9ab7 --- /dev/null +++ b/docs/schema/reference/core/length_unit.md @@ -0,0 +1,13 @@ +# LengthUnit + +Unit of length. + +## Values + +- `in` - One inch in the imperial and US customary systems +- `ft` - One foot in the imperial and US customary systems (12 inches) +- `yd` - One yard in the imperial and US customary systems (three feet) +- `mi` - One mile in the imperial and US customary systems (1,760 yards) +- `cm` - One centimeter in the metric and SI systems +- `m` - One meter in the metric and SI systems +- `km` - One kilometer in the metric and SI systems diff --git a/docs/schema/reference/core/scoping/heading.md b/docs/schema/reference/core/scoping/heading.md new file mode 100644 index 000000000..e8dc985dc --- /dev/null +++ b/docs/schema/reference/core/scoping/heading.md @@ -0,0 +1,8 @@ +# Heading + +Travel direction along an oriented path: forward or backward. + +## Values + +- `forward` +- `backward` diff --git a/docs/schema/reference/core/scoping/linearly_referenced_position.md b/docs/schema/reference/core/scoping/linearly_referenced_position.md new file mode 100644 index 000000000..04e5dfd21 --- /dev/null +++ b/docs/schema/reference/core/scoping/linearly_referenced_position.md @@ -0,0 +1,6 @@ +# LinearlyReferencedPosition (`float64`) + +## Constraints + +- `Ge(ge=0.0)` +- `Le(le=1.0)` diff --git a/docs/schema/reference/core/scoping/linearly_referenced_range.md b/docs/schema/reference/core/scoping/linearly_referenced_range.md index 145f02b8c..c8bd48b0e 100644 --- a/docs/schema/reference/core/scoping/linearly_referenced_range.md +++ b/docs/schema/reference/core/scoping/linearly_referenced_range.md @@ -3,5 +3,5 @@ ## Constraints - `LinearReferenceRangeConstraint` -- `Ge(ge=0.0)` -- `Le(le=1.0)` +- `Ge(ge=0.0)` (from [`LinearlyReferencedPosition`](linearly_referenced_position.md)) +- `Le(le=1.0)` (from [`LinearlyReferencedPosition`](linearly_referenced_position.md)) diff --git a/docs/schema/reference/core/scoping/opening_hours.md b/docs/schema/reference/core/scoping/opening_hours.md new file mode 100644 index 000000000..89b53e63c --- /dev/null +++ b/docs/schema/reference/core/scoping/opening_hours.md @@ -0,0 +1,4 @@ +# OpeningHours (`string`) + +Time span or time spans during which something is open or active, specified in the OpenStreetMap +opening hours specification: https://wiki.openstreetmap.org/wiki/Key:opening_hours/specification. diff --git a/docs/schema/reference/core/scoping/purpose_of_use.md b/docs/schema/reference/core/scoping/purpose_of_use.md new file mode 100644 index 000000000..7217b49f1 --- /dev/null +++ b/docs/schema/reference/core/scoping/purpose_of_use.md @@ -0,0 +1,12 @@ +# PurposeOfUse + +Reason why a person or entity travelling on the transportation network is using a particular +location. + +## Values + +- `as_customer` +- `at_destination` +- `to_deliver` +- `to_farm` +- `for_forestry` diff --git a/docs/schema/reference/core/scoping/recognized_status.md b/docs/schema/reference/core/scoping/recognized_status.md new file mode 100644 index 000000000..f1fab5de0 --- /dev/null +++ b/docs/schema/reference/core/scoping/recognized_status.md @@ -0,0 +1,12 @@ +# RecognizedStatus + +Status of the person or entity travelling as recognized by authorities controlling the particular +location. + +## Values + +- `as_permitted` +- `as_private` +- `as_disabled` +- `as_employee` +- `as_student` diff --git a/docs/schema/reference/core/scoping/travel_mode.md b/docs/schema/reference/core/scoping/travel_mode.md new file mode 100644 index 000000000..3a87b8a3d --- /dev/null +++ b/docs/schema/reference/core/scoping/travel_mode.md @@ -0,0 +1,19 @@ +# TravelMode + +Enumerates possible travel modes. + +Some modes represent groups of modes. + +## Values + +- `vehicle` +- `motor_vehicle` +- `car` +- `truck` +- `motorcycle` +- `foot` +- `bicycle` +- `bus` +- `hgv` +- `hov` +- `emergency` diff --git a/docs/schema/reference/core/scoping/vehicle_axle_count_selector.md b/docs/schema/reference/core/scoping/vehicle_axle_count_selector.md new file mode 100644 index 000000000..7aa2bf09b --- /dev/null +++ b/docs/schema/reference/core/scoping/vehicle_axle_count_selector.md @@ -0,0 +1,11 @@ +# VehicleAxleCountSelector + +Selects vehicles based on the number of axles they have. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `dimension` | `"axle_count"` | | +| `comparison` | [`VehicleRelation`](vehicle_relation.md) | | +| `value` | `uint8` | Number of axles on the vehicle | diff --git a/docs/schema/reference/core/scoping/vehicle_height_selector.md b/docs/schema/reference/core/scoping/vehicle_height_selector.md new file mode 100644 index 000000000..97457df59 --- /dev/null +++ b/docs/schema/reference/core/scoping/vehicle_height_selector.md @@ -0,0 +1,12 @@ +# VehicleHeightSelector + +Selects vehicles based on their height. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `dimension` | `"height"` | | +| `comparison` | [`VehicleRelation`](vehicle_relation.md) | | +| `value` | `float64` | Vehicle height selection threshold in the given `unit` | +| `unit` | [`LengthUnit`](../length_unit.md) | Height unit in which `value` is expressed | diff --git a/docs/schema/reference/core/scoping/vehicle_length_selector.md b/docs/schema/reference/core/scoping/vehicle_length_selector.md new file mode 100644 index 000000000..1aa23d8a2 --- /dev/null +++ b/docs/schema/reference/core/scoping/vehicle_length_selector.md @@ -0,0 +1,12 @@ +# VehicleLengthSelector + +Selects vehicles based on their length. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `dimension` | `"length"` | | +| `comparison` | [`VehicleRelation`](vehicle_relation.md) | | +| `value` | `float64` | Vehicle length selection threshold in the given `unit` | +| `unit` | [`LengthUnit`](../length_unit.md) | Length unit in which `value` is expressed | diff --git a/docs/schema/reference/core/scoping/vehicle_relation.md b/docs/schema/reference/core/scoping/vehicle_relation.md new file mode 100644 index 000000000..38070c276 --- /dev/null +++ b/docs/schema/reference/core/scoping/vehicle_relation.md @@ -0,0 +1,11 @@ +# VehicleRelation + +Relational operator, such as less than or equal to. + +## Values + +- `greater_than` +- `greater_than_equal` +- `equal` +- `less_than` +- `less_than_equal` diff --git a/docs/schema/reference/core/scoping/vehicle_weight_selector.md b/docs/schema/reference/core/scoping/vehicle_weight_selector.md new file mode 100644 index 000000000..d268ea852 --- /dev/null +++ b/docs/schema/reference/core/scoping/vehicle_weight_selector.md @@ -0,0 +1,12 @@ +# VehicleWeightSelector + +Selects vehicles based on their weight. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `dimension` | `"weight"` | | +| `comparison` | [`VehicleRelation`](vehicle_relation.md) | | +| `value` | `float64` | Vehicle weight selection threshold in the given `unit` | +| `unit` | [`WeightUnit`](../weight_unit.md) | Weight unit in which `value` is expressed | diff --git a/docs/schema/reference/core/scoping/vehicle_width_selector.md b/docs/schema/reference/core/scoping/vehicle_width_selector.md new file mode 100644 index 000000000..ada855ed1 --- /dev/null +++ b/docs/schema/reference/core/scoping/vehicle_width_selector.md @@ -0,0 +1,12 @@ +# VehicleWidthSelector + +Selects vehicles based on their width. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `dimension` | `"width"` | | +| `comparison` | [`VehicleRelation`](vehicle_relation.md) | | +| `value` | `float64` | Vehicle width selection threshold in the given `unit` | +| `unit` | [`LengthUnit`](../length_unit.md) | Width unit in which `value` is expressed | diff --git a/docs/schema/reference/core/speed_unit.md b/docs/schema/reference/core/speed_unit.md new file mode 100644 index 000000000..5f655c0f8 --- /dev/null +++ b/docs/schema/reference/core/speed_unit.md @@ -0,0 +1,8 @@ +# SpeedUnit + +Unit of speed. + +## Values + +- `mph` - Miles per hour +- `km/h` - Kilometers per hour diff --git a/docs/schema/reference/core/weight_unit.md b/docs/schema/reference/core/weight_unit.md new file mode 100644 index 000000000..652f0cda3 --- /dev/null +++ b/docs/schema/reference/core/weight_unit.md @@ -0,0 +1,13 @@ +# WeightUnit + +Unit of weight. + +## Values + +- `oz` - One ounce in the imperial and US customary systems +- `lb` - One pound in the imperial and US customary systems +- `st` - One short ton, or one ton in the US customary system (2,000 pounds) +- `lt` - One long ton, or one ton in the imperial system (2,400 pounds) +- `g` - One gram in the metric and SI systems +- `kg` - One kilogram in the metric and SI systems +- `t` - One tonne in the metric and SI systems diff --git a/docs/schema/reference/divisions/division.md b/docs/schema/reference/divisions/division.md index 3f7d09d02..d8c0d350a 100644 --- a/docs/schema/reference/divisions/division.md +++ b/docs/schema/reference/divisions/division.md @@ -86,7 +86,18 @@ Examples include countries, provinces, cities, towns, neighborhoods, etc. | `sources[0].between` | `null` | | `subtype` | locality | | `country` | TO | -| `hierarchies` | `[[{'division_id': 'fef8748b-0c91-46ad-9f2d-976d8d2de3e9', 'subtype': 'country', 'name': 'Tonga'}, {'division_id': '4d67561a-2292-41bd-8996-7853d276a42c', 'subtype': 'region', 'name': 'Tongatapu'}, {'division_id': '8730f0cc-d436-4f11-a7d3-49085813ef44', 'subtype': 'county', 'name': "Vahe Kolomotu'a"}, {'division_id': '350e85f6-68ba-4114-9906-c2844815988b', 'subtype': 'locality', 'name': "Sia'atoutai"}]]` | +| `hierarchies[0][0].division_id` | fef8748b-0c91-46ad-9f2d-976d8d2de3e9 | +| `hierarchies[0][0].subtype` | country | +| `hierarchies[0][0].name` | Tonga | +| `hierarchies[0][1].division_id` | 4d67561a-2292-41bd-8996-7853d276a42c | +| `hierarchies[0][1].subtype` | region | +| `hierarchies[0][1].name` | Tongatapu | +| `hierarchies[0][2].division_id` | 8730f0cc-d436-4f11-a7d3-49085813ef44 | +| `hierarchies[0][2].subtype` | county | +| `hierarchies[0][2].name` | Vahe Kolomotu'a | +| `hierarchies[0][3].division_id` | 350e85f6-68ba-4114-9906-c2844815988b | +| `hierarchies[0][3].subtype` | locality | +| `hierarchies[0][3].name` | Sia'atoutai | | `parent_division_id` | 8730f0cc-d436-4f11-a7d3-49085813ef44 | | `class` | village | | `local_type.en` | village | diff --git a/docs/schema/reference/transportation/access_restriction_rule.md b/docs/schema/reference/transportation/access_restriction_rule.md new file mode 100644 index 000000000..1c7d31ce0 --- /dev/null +++ b/docs/schema/reference/transportation/access_restriction_rule.md @@ -0,0 +1,15 @@ +# AccessRestrictionRule + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `access_type` | [`AccessType`](access_type.md) | | +| `between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing AccessRestrictionRule applies to. | +| `when` | [`AccessRestrictionRule.When`](access_restriction_rule.when.md) (optional) | Scopes for AccessRestrictionRule: Scope.HEADING, Scope.TEMPORAL, Scope.TRAVEL MODE, Scope.PURPOSE OF USE, Scope.RECOGNIZED STATUS and Scope.VEHICLE | +| `when.heading` | [`Heading`](../core/scoping/heading.md) (optional) | The heading, either forward or backward, that the containing AccessRestrictionRule applies to. | +| `when.during` | [`OpeningHours`](../core/scoping/opening_hours.md) (optional) | The recurring time span, in the OpenStreetMap opening hours format, that the containing AccessRestrictionRule applies to. For the OSM opening hours specification, see https://wiki.openstreetmap.org/wiki/Key:opening_hours/specification. | +| `when.mode` | `list<`[`TravelMode`](../core/scoping/travel_mode.md)`>` (optional) | A list of one or more travel modes, such as car, truck, or foot, that the containing AccessRestrictionRule applies to. | +| `when.using` | `list<`[`PurposeOfUse`](../core/scoping/purpose_of_use.md)`>` (optional) | A list of one or more usage purposes, such as delivery or arrival at final destination, that the containing AccessRestrictionRule applies to. | +| `when.recognized` | `list<`[`RecognizedStatus`](../core/scoping/recognized_status.md)`>` (optional) | A list of one or more recognized status values, such as employee or student, that the containing AccessRestrictionRule applies to. | +| `when.vehicle` | `list` (optional) | A list of one or more vehicle parameters that limit the vehicles the containing AccessRestrictionRule applies to. | diff --git a/docs/schema/reference/transportation/access_restriction_rule.when.md b/docs/schema/reference/transportation/access_restriction_rule.when.md new file mode 100644 index 000000000..7bc5299ee --- /dev/null +++ b/docs/schema/reference/transportation/access_restriction_rule.when.md @@ -0,0 +1,14 @@ +# AccessRestrictionRule.When + +Scopes for AccessRestrictionRule: Scope.HEADING, Scope.TEMPORAL, Scope.TRAVEL MODE, Scope.PURPOSE OF USE, Scope.RECOGNIZED STATUS and Scope.VEHICLE + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `heading` | [`Heading`](../core/scoping/heading.md) (optional) | The heading, either forward or backward, that the containing AccessRestrictionRule applies to. | +| `during` | [`OpeningHours`](../core/scoping/opening_hours.md) (optional) | The recurring time span, in the OpenStreetMap opening hours format, that the containing AccessRestrictionRule applies to. For the OSM opening hours specification, see https://wiki.openstreetmap.org/wiki/Key:opening_hours/specification. | +| `mode` | `list<`[`TravelMode`](../core/scoping/travel_mode.md)`>` (optional) | A list of one or more travel modes, such as car, truck, or foot, that the containing AccessRestrictionRule applies to. | +| `using` | `list<`[`PurposeOfUse`](../core/scoping/purpose_of_use.md)`>` (optional) | A list of one or more usage purposes, such as delivery or arrival at final destination, that the containing AccessRestrictionRule applies to. | +| `recognized` | `list<`[`RecognizedStatus`](../core/scoping/recognized_status.md)`>` (optional) | A list of one or more recognized status values, such as employee or student, that the containing AccessRestrictionRule applies to. | +| `vehicle` | `list` (optional) | A list of one or more vehicle parameters that limit the vehicles the containing AccessRestrictionRule applies to. | diff --git a/docs/schema/reference/transportation/access_rules.md b/docs/schema/reference/transportation/access_rules.md new file mode 100644 index 000000000..602ac286b --- /dev/null +++ b/docs/schema/reference/transportation/access_rules.md @@ -0,0 +1,6 @@ +# AccessRules (`list`) + +## Constraints + +- `MinLen(min_length=1)` +- `UniqueItemsConstraint` diff --git a/docs/schema/reference/transportation/access_type.md b/docs/schema/reference/transportation/access_type.md new file mode 100644 index 000000000..bfde64889 --- /dev/null +++ b/docs/schema/reference/transportation/access_type.md @@ -0,0 +1,7 @@ +# AccessType + +## Values + +- `allowed` +- `denied` +- `designated` diff --git a/docs/schema/reference/transportation/connector_reference.md b/docs/schema/reference/transportation/connector_reference.md new file mode 100644 index 000000000..000d1d5c0 --- /dev/null +++ b/docs/schema/reference/transportation/connector_reference.md @@ -0,0 +1,11 @@ +# ConnectorReference + +Contains the GERS ID and relative position between 0 and 1 of a connector feature along the +segment. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `connector_id` | [`Id`](../system/ref/id.md) | | +| `at` | [`LinearlyReferencedPosition`](../core/scoping/linearly_referenced_position.md) (optional) | The linearly-referenced position on the geometry, specified as a percentage displacement from the start of the geometry, that the containing ConnectorReference applies to. | diff --git a/docs/schema/reference/transportation/destination_label_type.md b/docs/schema/reference/transportation/destination_label_type.md new file mode 100644 index 000000000..c87373948 --- /dev/null +++ b/docs/schema/reference/transportation/destination_label_type.md @@ -0,0 +1,12 @@ +# DestinationLabelType + +Indicates what special symbol/icon is present on a signpost, visible as road marking or +similar. + +## Values + +- `street` +- `country` +- `route_ref` +- `toward_route_ref` +- `unknown` diff --git a/docs/schema/reference/transportation/destination_labels.md b/docs/schema/reference/transportation/destination_labels.md new file mode 100644 index 000000000..83396c3ef --- /dev/null +++ b/docs/schema/reference/transportation/destination_labels.md @@ -0,0 +1,10 @@ +# DestinationLabels + +The type of object of the destination label. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `value` | [`StrippedString`](../system/stripped_string.md) | Names the object that is reached | +| `type` | [`DestinationLabelType`](destination_label_type.md) | | diff --git a/docs/schema/reference/transportation/destination_rule.md b/docs/schema/reference/transportation/destination_rule.md new file mode 100644 index 000000000..142c35a10 --- /dev/null +++ b/docs/schema/reference/transportation/destination_rule.md @@ -0,0 +1,16 @@ +# DestinationRule + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `from_connector_id` | [`Id`](../system/ref/id.md) | Identifies the point of physical connection on this segment before which the destination sign or marking is visible. | +| `to_connector_id` | [`Id`](../system/ref/id.md) | Identifies the point of physical connection on the segment identified by 'to_segment_id' to transition to for reaching the destination(s). | +| `to_segment_id` | [`Id`](../system/ref/id.md) | Identifies the segment to transition to reach the destination(s) labeled on the sign or marking. | +| `final_heading` | [`Heading`](../core/scoping/heading.md) | Direction of travel on the segment identified by 'to_segment_id' that leads to the destination. | +| `labels[]` | `list<`[`DestinationLabels`](destination_labels.md)`>` (optional) | Labeled destinations that can be reached by following the segment. | +| `labels[].value` | [`StrippedString`](../system/stripped_string.md) | Names the object that is reached | +| `labels[].type` | [`DestinationLabelType`](destination_label_type.md) | | +| `symbols` | `list<`[`DestinationSignSymbol`](destination_sign_symbol.md)`>` (optional) | A collection of symbols or icons present on the sign next to current destination label. | +| `when` | [`DestinationRule.When`](destination_rule.when.md) (optional) | Scope for DestinationRule: | +| `when.heading` | [`Heading`](../core/scoping/heading.md) | The heading, either forward or backward, that the containing DestinationRule applies to. | diff --git a/docs/schema/reference/transportation/destination_rule.when.md b/docs/schema/reference/transportation/destination_rule.when.md new file mode 100644 index 000000000..d500b65c5 --- /dev/null +++ b/docs/schema/reference/transportation/destination_rule.when.md @@ -0,0 +1,9 @@ +# DestinationRule.When + +Scope for DestinationRule: + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `heading` | [`Heading`](../core/scoping/heading.md) | The heading, either forward or backward, that the containing DestinationRule applies to. | diff --git a/docs/schema/reference/transportation/destination_sign_symbol.md b/docs/schema/reference/transportation/destination_sign_symbol.md new file mode 100644 index 000000000..c24b52d2f --- /dev/null +++ b/docs/schema/reference/transportation/destination_sign_symbol.md @@ -0,0 +1,27 @@ +# DestinationSignSymbol + +Indicates what special symbol/icon is present on a signpost, visible as road marking or +similar. + +## Values + +- `motorway` +- `airport` +- `hospital` +- `center` +- `industrial` +- `parking` +- `bus` +- `train_station` +- `rest_area` +- `ferry` +- `motorroad` +- `fuel` +- `viewpoint` +- `fuel_diesel` +- `food` +- `lodging` +- `info` +- `camp_site` +- `interchange` +- `restrooms` diff --git a/docs/schema/reference/transportation/destinations.md b/docs/schema/reference/transportation/destinations.md new file mode 100644 index 000000000..9c6437ebf --- /dev/null +++ b/docs/schema/reference/transportation/destinations.md @@ -0,0 +1 @@ +# Destinations (`list`) diff --git a/docs/schema/reference/transportation/level_rule.md b/docs/schema/reference/transportation/level_rule.md new file mode 100644 index 000000000..3bba48c39 --- /dev/null +++ b/docs/schema/reference/transportation/level_rule.md @@ -0,0 +1,11 @@ +# LevelRule + +A single level rule defining the Z-order, i.e. stacking order, applicable within a given scope +on the road segment. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `value` | [`Level`](../core/level.md) | | +| `between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing LevelRule applies to. | diff --git a/docs/schema/reference/transportation/level_rules.md b/docs/schema/reference/transportation/level_rules.md new file mode 100644 index 000000000..d6214f982 --- /dev/null +++ b/docs/schema/reference/transportation/level_rules.md @@ -0,0 +1 @@ +# LevelRules (`list`) diff --git a/docs/schema/reference/transportation/prohibited_transition_rule.md b/docs/schema/reference/transportation/prohibited_transition_rule.md new file mode 100644 index 000000000..8eeacd20a --- /dev/null +++ b/docs/schema/reference/transportation/prohibited_transition_rule.md @@ -0,0 +1,18 @@ +# ProhibitedTransitionRule + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `sequence[]` | `list<`[`SequenceEntry`](sequence_entry.md)`>` | Ordered sequence of connector/segment pairs that it is prohibited to follow from this segment. | +| `sequence[].connector_id` | [`Id`](../system/ref/id.md) | Identifies the point of physical connection between the previous segment in the sequence and the segment in this sequence entry. | +| `sequence[].segment_id` | [`Id`](../system/ref/id.md) | Identifies the segment that the previous segment in the sequence is physically connected to via the sequence entry's connector. | +| `final_heading` | [`Heading`](../core/scoping/heading.md) | Direction of travel that is prohibited on the destination segment of the sequence. | +| `between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing ProhibitedTransitionRule applies to. | +| `when` | [`ProhibitedTransitionRule.When`](prohibited_transition_rule.when.md) (optional) | Scopes for ProhibitedTransitionRule: Scope.HEADING, Scope.TEMPORAL, Scope.TRAVEL MODE, Scope.PURPOSE OF USE, Scope.RECOGNIZED STATUS and Scope.VEHICLE | +| `when.heading` | [`Heading`](../core/scoping/heading.md) (optional) | The heading, either forward or backward, that the containing ProhibitedTransitionRule applies to. | +| `when.during` | [`OpeningHours`](../core/scoping/opening_hours.md) (optional) | The recurring time span, in the OpenStreetMap opening hours format, that the containing ProhibitedTransitionRule applies to. For the OSM opening hours specification, see https://wiki.openstreetmap.org/wiki/Key:opening_hours/specification. | +| `when.mode` | `list<`[`TravelMode`](../core/scoping/travel_mode.md)`>` (optional) | A list of one or more travel modes, such as car, truck, or foot, that the containing ProhibitedTransitionRule applies to. | +| `when.using` | `list<`[`PurposeOfUse`](../core/scoping/purpose_of_use.md)`>` (optional) | A list of one or more usage purposes, such as delivery or arrival at final destination, that the containing ProhibitedTransitionRule applies to. | +| `when.recognized` | `list<`[`RecognizedStatus`](../core/scoping/recognized_status.md)`>` (optional) | A list of one or more recognized status values, such as employee or student, that the containing ProhibitedTransitionRule applies to. | +| `when.vehicle` | `list` (optional) | A list of one or more vehicle parameters that limit the vehicles the containing ProhibitedTransitionRule applies to. | diff --git a/docs/schema/reference/transportation/prohibited_transition_rule.when.md b/docs/schema/reference/transportation/prohibited_transition_rule.when.md new file mode 100644 index 000000000..67edfa4a4 --- /dev/null +++ b/docs/schema/reference/transportation/prohibited_transition_rule.when.md @@ -0,0 +1,14 @@ +# ProhibitedTransitionRule.When + +Scopes for ProhibitedTransitionRule: Scope.HEADING, Scope.TEMPORAL, Scope.TRAVEL MODE, Scope.PURPOSE OF USE, Scope.RECOGNIZED STATUS and Scope.VEHICLE + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `heading` | [`Heading`](../core/scoping/heading.md) (optional) | The heading, either forward or backward, that the containing ProhibitedTransitionRule applies to. | +| `during` | [`OpeningHours`](../core/scoping/opening_hours.md) (optional) | The recurring time span, in the OpenStreetMap opening hours format, that the containing ProhibitedTransitionRule applies to. For the OSM opening hours specification, see https://wiki.openstreetmap.org/wiki/Key:opening_hours/specification. | +| `mode` | `list<`[`TravelMode`](../core/scoping/travel_mode.md)`>` (optional) | A list of one or more travel modes, such as car, truck, or foot, that the containing ProhibitedTransitionRule applies to. | +| `using` | `list<`[`PurposeOfUse`](../core/scoping/purpose_of_use.md)`>` (optional) | A list of one or more usage purposes, such as delivery or arrival at final destination, that the containing ProhibitedTransitionRule applies to. | +| `recognized` | `list<`[`RecognizedStatus`](../core/scoping/recognized_status.md)`>` (optional) | A list of one or more recognized status values, such as employee or student, that the containing ProhibitedTransitionRule applies to. | +| `vehicle` | `list` (optional) | A list of one or more vehicle parameters that limit the vehicles the containing ProhibitedTransitionRule applies to. | diff --git a/docs/schema/reference/transportation/prohibited_transitions.md b/docs/schema/reference/transportation/prohibited_transitions.md new file mode 100644 index 000000000..9a9c5bfc1 --- /dev/null +++ b/docs/schema/reference/transportation/prohibited_transitions.md @@ -0,0 +1 @@ +# ProhibitedTransitions (`list`) diff --git a/docs/schema/reference/transportation/rail_class.md b/docs/schema/reference/transportation/rail_class.md new file mode 100644 index 000000000..fe284a6de --- /dev/null +++ b/docs/schema/reference/transportation/rail_class.md @@ -0,0 +1,14 @@ +# RailClass + +Captures the kind of rail segment. + +## Values + +- `funicular` +- `light_rail` +- `monorail` +- `narrow_gauge` +- `standard_gauge` +- `subway` +- `tram` +- `unknown` diff --git a/docs/schema/reference/transportation/rail_flag.md b/docs/schema/reference/transportation/rail_flag.md new file mode 100644 index 000000000..031d04948 --- /dev/null +++ b/docs/schema/reference/transportation/rail_flag.md @@ -0,0 +1,16 @@ +# RailFlag + +Simple flags that can be on or off for a railway segment. + +Specifies physical characteristics and can overlap. + +## Values + +- `is_bridge` +- `is_tunnel` +- `is_under_construction` +- `is_abandoned` +- `is_covered` +- `is_passenger` +- `is_freight` +- `is_disused` diff --git a/docs/schema/reference/transportation/rail_flag_rule.md b/docs/schema/reference/transportation/rail_flag_rule.md new file mode 100644 index 000000000..91079046e --- /dev/null +++ b/docs/schema/reference/transportation/rail_flag_rule.md @@ -0,0 +1,10 @@ +# RailFlagRule + +Rail-specific flag rule with geometric scoping only. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `values` | `list<`[`RailFlag`](rail_flag.md)`>` | | +| `between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing RailFlagRule applies to. | diff --git a/docs/schema/reference/transportation/rail_flags.md b/docs/schema/reference/transportation/rail_flags.md new file mode 100644 index 000000000..006556fa6 --- /dev/null +++ b/docs/schema/reference/transportation/rail_flags.md @@ -0,0 +1,6 @@ +# RailFlags (`list`) + +## Constraints + +- `MinLen(min_length=1)` +- `UniqueItemsConstraint` diff --git a/docs/schema/reference/transportation/road_class.md b/docs/schema/reference/transportation/road_class.md new file mode 100644 index 000000000..c3e409f80 --- /dev/null +++ b/docs/schema/reference/transportation/road_class.md @@ -0,0 +1,23 @@ +# RoadClass + +Captures the kind of road and its position in the road network hierarchy. + +## Values + +- `motorway` +- `primary` +- `secondary` +- `tertiary` +- `residential` +- `living_street` +- `trunk` +- `unclassified` +- `service` +- `pedestrian` +- `footway` +- `steps` +- `path` +- `track` +- `cycleway` +- `bridleway` +- `unknown` diff --git a/docs/schema/reference/transportation/road_flag.md b/docs/schema/reference/transportation/road_flag.md new file mode 100644 index 000000000..1f0a76f4a --- /dev/null +++ b/docs/schema/reference/transportation/road_flag.md @@ -0,0 +1,15 @@ +# RoadFlag + +Simple flags that can be on or off for a road segment. + +Specifies physical characteristics and can overlap. + +## Values + +- `is_bridge` +- `is_link` +- `is_tunnel` +- `is_under_construction` +- `is_abandoned` +- `is_covered` +- `is_indoor` diff --git a/docs/schema/reference/transportation/road_flag_rule.md b/docs/schema/reference/transportation/road_flag_rule.md new file mode 100644 index 000000000..7febcc3e5 --- /dev/null +++ b/docs/schema/reference/transportation/road_flag_rule.md @@ -0,0 +1,10 @@ +# RoadFlagRule + +Road-specific flag rule with geometric scoping only. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `values` | `list<`[`RoadFlag`](road_flag.md)`>` | | +| `between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing RoadFlagRule applies to. | diff --git a/docs/schema/reference/transportation/road_flags.md b/docs/schema/reference/transportation/road_flags.md new file mode 100644 index 000000000..b4712e3eb --- /dev/null +++ b/docs/schema/reference/transportation/road_flags.md @@ -0,0 +1,6 @@ +# RoadFlags (`list`) + +## Constraints + +- `MinLen(min_length=1)` +- `UniqueItemsConstraint` diff --git a/docs/schema/reference/transportation/road_surface.md b/docs/schema/reference/transportation/road_surface.md new file mode 100644 index 000000000..51fa5599d --- /dev/null +++ b/docs/schema/reference/transportation/road_surface.md @@ -0,0 +1,13 @@ +# RoadSurface + +Physical surface of the road. + +## Values + +- `unknown` +- `paved` +- `unpaved` +- `gravel` +- `dirt` +- `paving_stones` +- `metal` diff --git a/docs/schema/reference/transportation/route_reference.md b/docs/schema/reference/transportation/route_reference.md new file mode 100644 index 000000000..1fcca6564 --- /dev/null +++ b/docs/schema/reference/transportation/route_reference.md @@ -0,0 +1,14 @@ +# RouteReference + +Route reference with linear referencing support. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `name` | [`StrippedString`](../system/stripped_string.md) (optional) | Full name of the route | +| `network` | [`StrippedString`](../system/stripped_string.md) (optional) | Name of the highway system this route belongs to | +| `ref` | [`StrippedString`](../system/stripped_string.md) (optional) | Code or number used to reference the route | +| `symbol` | [`StrippedString`](../system/stripped_string.md) (optional) | URL or description of route signage | +| `wikidata` | [`WikidataId`](../system/wikidata_id.md) (optional) | | +| `between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing RouteReference applies to. | diff --git a/docs/schema/reference/transportation/routes.md b/docs/schema/reference/transportation/routes.md new file mode 100644 index 000000000..b456ef284 --- /dev/null +++ b/docs/schema/reference/transportation/routes.md @@ -0,0 +1 @@ +# Routes (`list`) diff --git a/docs/schema/reference/transportation/segment.md b/docs/schema/reference/transportation/segment.md new file mode 100644 index 000000000..f8781b2a3 --- /dev/null +++ b/docs/schema/reference/transportation/segment.md @@ -0,0 +1,114 @@ +# Segment + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | +| `bbox` | `bbox` (optional) | An optional bounding box for the feature | +| `geometry` | `geometry` | Segment centerline | +| `theme` | `"transportation"` | | +| `type` | `"segment"` | | +| `version` | [`FeatureVersion`](../core/feature_version.md) | | +| `sources[]` | [`Sources`](../core/sources.md) (list, optional) | | +| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to.

The root document value `""` indicates that this source information applies to the
entire feature, excepting properties (fields) for which a dedicated source information
record exists.

Any other JSON Pointer apart from `""` indicates that this source record provides
dedicated source information for the property at the path in the JSON Pointer. As an
example, the value `"/names/common/en"` indicates that the source information applies to
the English common name of a named feature, while the value `"/geometry"` indicates that
it applies to the feature geometry. | +| `sources[].dataset` | `string` | Name of the dataset where the source data can be found. | +| `sources[].license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name.

This should be a valid SPDX license identifier when available.

If omitted, contact the data provider for more license information. | +| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can
be found.

The format of record identifiers is dataset-specific. | +| `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | +| `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset.

This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | +| `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | +| `subtype` | [`Subtype`](subtype.md) | Broad category of transportation segment. | +| `access_restrictions[]` | [`AccessRules`](access_rules.md) (list, optional) | | +| `access_restrictions[].access_type` | [`AccessType`](access_type.md) | | +| `access_restrictions[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing AccessRestrictionRule applies to. | +| `access_restrictions[].when` | [`AccessRestrictionRule.When`](access_restriction_rule.when.md) (optional) | Scopes for AccessRestrictionRule: Scope.HEADING, Scope.TEMPORAL, Scope.TRAVEL MODE, Scope.PURPOSE OF USE, Scope.RECOGNIZED STATUS and Scope.VEHICLE | +| `access_restrictions[].when.heading` | [`Heading`](../core/scoping/heading.md) (optional) | The heading, either forward or backward, that the containing AccessRestrictionRule applies to. | +| `access_restrictions[].when.during` | [`OpeningHours`](../core/scoping/opening_hours.md) (optional) | The recurring time span, in the OpenStreetMap opening hours format, that the containing AccessRestrictionRule applies to. For the OSM opening hours specification, see https://wiki.openstreetmap.org/wiki/Key:opening_hours/specification. | +| `access_restrictions[].when.mode` | `list<`[`TravelMode`](../core/scoping/travel_mode.md)`>` (optional) | A list of one or more travel modes, such as car, truck, or foot, that the containing AccessRestrictionRule applies to. | +| `access_restrictions[].when.using` | `list<`[`PurposeOfUse`](../core/scoping/purpose_of_use.md)`>` (optional) | A list of one or more usage purposes, such as delivery or arrival at final destination, that the containing AccessRestrictionRule applies to. | +| `access_restrictions[].when.recognized` | `list<`[`RecognizedStatus`](../core/scoping/recognized_status.md)`>` (optional) | A list of one or more recognized status values, such as employee or student, that the containing AccessRestrictionRule applies to. | +| `access_restrictions[].when.vehicle` | `list` (optional) | A list of one or more vehicle parameters that limit the vehicles the containing AccessRestrictionRule applies to. | +| `connectors[]` | `list<`[`ConnectorReference`](connector_reference.md)`>` (optional) | List of connectors which this segment is physically connected to and their relative location. Each connector is a possible routing decision point, meaning it defines a place along the segment in which there is possibility to transition to other segments which share the same connector. | +| `connectors[].connector_id` | [`Id`](../system/ref/id.md) | | +| `connectors[].at` | [`LinearlyReferencedPosition`](../core/scoping/linearly_referenced_position.md) (optional) | The linearly-referenced position on the geometry, specified as a percentage displacement from the start of the geometry, that the containing ConnectorReference applies to. | +| `level_rules[]` | [`LevelRules`](level_rules.md) (list, optional) | | +| `level_rules[].value` | [`Level`](../core/level.md) | | +| `level_rules[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing LevelRule applies to. | +| `routes[]` | [`Routes`](routes.md) (list, optional) | | +| `routes[].name` | [`StrippedString`](../system/stripped_string.md) (optional) | Full name of the route | +| `routes[].network` | [`StrippedString`](../system/stripped_string.md) (optional) | Name of the highway system this route belongs to | +| `routes[].ref` | [`StrippedString`](../system/stripped_string.md) (optional) | Code or number used to reference the route | +| `routes[].symbol` | [`StrippedString`](../system/stripped_string.md) (optional) | URL or description of route signage | +| `routes[].wikidata` | [`WikidataId`](../system/wikidata_id.md) (optional) | | +| `routes[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing RouteReference applies to. | +| `subclass_rules[]` | [`SubclassRules`](subclass_rules.md) (list, optional) | | +| `subclass_rules[].value` | [`Subclass`](subclass.md) | | +| `subclass_rules[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SubclassRule applies to. | +| `names` | [`Names`](../core/names.md) (optional) | | +| `names.primary` | [`StrippedString`](../system/stripped_string.md) | The most commonly used name. | +| `names.common` | [`CommonNames`](../core/common_names.md) (map, optional) | | +| `names.rules[]` | `list<`[`NameRule`](../core/name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | +| `names.rules[].value` | [`StrippedString`](../system/stripped_string.md) | The actual name value. | +| `names.rules[].variant` | [`NameVariant`](../core/name_variant.md) | The name variant for this name rule. | +| `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47
language tag. | +| `names.rules[].perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | | +| `names.rules[].perspectives.mode` | [`PerspectiveMode`](../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | +| `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | +| `names.rules[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | +| `names.rules[].side` | [`Side`](../core/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | +| `class` *(Road)* | [`RoadClass`](road_class.md) | | +| `destinations[]` *(Road)* | [`Destinations`](destinations.md) (list, optional) | | +| `destinations[].from_connector_id` | [`Id`](../system/ref/id.md) | Identifies the point of physical connection on this segment before which the destination sign or marking is visible. | +| `destinations[].to_connector_id` | [`Id`](../system/ref/id.md) | Identifies the point of physical connection on the segment identified by 'to_segment_id' to transition to for reaching the destination(s). | +| `destinations[].to_segment_id` | [`Id`](../system/ref/id.md) | Identifies the segment to transition to reach the destination(s) labeled on the sign or marking. | +| `destinations[].final_heading` | [`Heading`](../core/scoping/heading.md) | Direction of travel on the segment identified by 'to_segment_id' that leads to the destination. | +| `destinations[].labels[]` | `list<`[`DestinationLabels`](destination_labels.md)`>` (optional) | Labeled destinations that can be reached by following the segment. | +| `destinations[].labels[].value` | [`StrippedString`](../system/stripped_string.md) | Names the object that is reached | +| `destinations[].labels[].type` | [`DestinationLabelType`](destination_label_type.md) | | +| `destinations[].symbols` | `list<`[`DestinationSignSymbol`](destination_sign_symbol.md)`>` (optional) | A collection of symbols or icons present on the sign next to current destination label. | +| `destinations[].when` | [`DestinationRule.When`](destination_rule.when.md) (optional) | Scope for DestinationRule: | +| `destinations[].when.heading` | [`Heading`](../core/scoping/heading.md) | The heading, either forward or backward, that the containing DestinationRule applies to. | +| `prohibited_transitions[]` *(Road)* | [`ProhibitedTransitions`](prohibited_transitions.md) (list, optional) | | +| `prohibited_transitions[].sequence[]` | `list<`[`SequenceEntry`](sequence_entry.md)`>` | Ordered sequence of connector/segment pairs that it is prohibited to follow from this segment. | +| `prohibited_transitions[].sequence[].connector_id` | [`Id`](../system/ref/id.md) | Identifies the point of physical connection between the previous segment in the sequence and the segment in this sequence entry. | +| `prohibited_transitions[].sequence[].segment_id` | [`Id`](../system/ref/id.md) | Identifies the segment that the previous segment in the sequence is physically connected to via the sequence entry's connector. | +| `prohibited_transitions[].final_heading` | [`Heading`](../core/scoping/heading.md) | Direction of travel that is prohibited on the destination segment of the sequence. | +| `prohibited_transitions[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing ProhibitedTransitionRule applies to. | +| `prohibited_transitions[].when` | [`ProhibitedTransitionRule.When`](prohibited_transition_rule.when.md) (optional) | Scopes for ProhibitedTransitionRule: Scope.HEADING, Scope.TEMPORAL, Scope.TRAVEL MODE, Scope.PURPOSE OF USE, Scope.RECOGNIZED STATUS and Scope.VEHICLE | +| `prohibited_transitions[].when.heading` | [`Heading`](../core/scoping/heading.md) (optional) | The heading, either forward or backward, that the containing ProhibitedTransitionRule applies to. | +| `prohibited_transitions[].when.during` | [`OpeningHours`](../core/scoping/opening_hours.md) (optional) | The recurring time span, in the OpenStreetMap opening hours format, that the containing ProhibitedTransitionRule applies to. For the OSM opening hours specification, see https://wiki.openstreetmap.org/wiki/Key:opening_hours/specification. | +| `prohibited_transitions[].when.mode` | `list<`[`TravelMode`](../core/scoping/travel_mode.md)`>` (optional) | A list of one or more travel modes, such as car, truck, or foot, that the containing ProhibitedTransitionRule applies to. | +| `prohibited_transitions[].when.using` | `list<`[`PurposeOfUse`](../core/scoping/purpose_of_use.md)`>` (optional) | A list of one or more usage purposes, such as delivery or arrival at final destination, that the containing ProhibitedTransitionRule applies to. | +| `prohibited_transitions[].when.recognized` | `list<`[`RecognizedStatus`](../core/scoping/recognized_status.md)`>` (optional) | A list of one or more recognized status values, such as employee or student, that the containing ProhibitedTransitionRule applies to. | +| `prohibited_transitions[].when.vehicle` | `list` (optional) | A list of one or more vehicle parameters that limit the vehicles the containing ProhibitedTransitionRule applies to. | +| `road_flags[]` *(Road)* | [`RoadFlags`](road_flags.md) (list, optional) | | +| `road_flags[].values` | `list<`[`RoadFlag`](road_flag.md)`>` | | +| `road_flags[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing RoadFlagRule applies to. | +| `road_surface[]` *(Road)* | [`Surfaces`](surfaces.md) (list, optional) | | +| `road_surface[].value` | [`RoadSurface`](road_surface.md) | | +| `road_surface[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SurfaceRule applies to. | +| `speed_limits[]` *(Road)* | [`SpeedLimits`](speed_limits.md) (list, optional) | | +| `speed_limits[].max_speed` | [`Speed`](speed.md) (optional) | | +| `speed_limits[].max_speed.value` | [`SpeedValue`](speed_value.md) | | +| `speed_limits[].max_speed.unit` | [`SpeedUnit`](../core/speed_unit.md) | | +| `speed_limits[].min_speed` | [`Speed`](speed.md) (optional) | | +| `speed_limits[].min_speed.value` | [`SpeedValue`](speed_value.md) | | +| `speed_limits[].min_speed.unit` | [`SpeedUnit`](../core/speed_unit.md) | | +| `speed_limits[].is_max_speed_variable` | `boolean` (optional) | Indicates a variable speed corridor | +| `speed_limits[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SpeedLimitRule applies to. | +| `speed_limits[].when` | [`SpeedLimitRule.When`](speed_limit_rule.when.md) (optional) | Scopes for SpeedLimitRule: Scope.HEADING, Scope.TEMPORAL, Scope.TRAVEL MODE, Scope.PURPOSE OF USE, Scope.RECOGNIZED STATUS and Scope.VEHICLE | +| `speed_limits[].when.heading` | [`Heading`](../core/scoping/heading.md) (optional) | The heading, either forward or backward, that the containing SpeedLimitRule applies to. | +| `speed_limits[].when.during` | [`OpeningHours`](../core/scoping/opening_hours.md) (optional) | The recurring time span, in the OpenStreetMap opening hours format, that the containing SpeedLimitRule applies to. For the OSM opening hours specification, see https://wiki.openstreetmap.org/wiki/Key:opening_hours/specification. | +| `speed_limits[].when.mode` | `list<`[`TravelMode`](../core/scoping/travel_mode.md)`>` (optional) | A list of one or more travel modes, such as car, truck, or foot, that the containing SpeedLimitRule applies to. | +| `speed_limits[].when.using` | `list<`[`PurposeOfUse`](../core/scoping/purpose_of_use.md)`>` (optional) | A list of one or more usage purposes, such as delivery or arrival at final destination, that the containing SpeedLimitRule applies to. | +| `speed_limits[].when.recognized` | `list<`[`RecognizedStatus`](../core/scoping/recognized_status.md)`>` (optional) | A list of one or more recognized status values, such as employee or student, that the containing SpeedLimitRule applies to. | +| `speed_limits[].when.vehicle` | `list` (optional) | A list of one or more vehicle parameters that limit the vehicles the containing SpeedLimitRule applies to. | +| `subclass` *(Road)* | [`Subclass`](subclass.md) (optional) | | +| `width_rules[]` *(Road)* | [`WidthRules`](width_rules.md) (list, optional) | | +| `width_rules[].value` | [`Width`](width.md) | | +| `width_rules[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing WidthRule applies to. | +| `class` *(Rail)* | [`RailClass`](rail_class.md) | | +| `rail_flags[]` *(Rail)* | [`RailFlags`](rail_flags.md) (list, optional) | | +| `rail_flags[].values` | `list<`[`RailFlag`](rail_flag.md)`>` | | +| `rail_flags[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing RailFlagRule applies to. | diff --git a/docs/schema/reference/transportation/sequence_entry.md b/docs/schema/reference/transportation/sequence_entry.md new file mode 100644 index 000000000..f99a527e4 --- /dev/null +++ b/docs/schema/reference/transportation/sequence_entry.md @@ -0,0 +1,10 @@ +# SequenceEntry + +A segment/connector pair in a prohibited transition sequence. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `connector_id` | [`Id`](../system/ref/id.md) | Identifies the point of physical connection between the previous segment in the sequence and the segment in this sequence entry. | +| `segment_id` | [`Id`](../system/ref/id.md) | Identifies the segment that the previous segment in the sequence is physically connected to via the sequence entry's connector. | diff --git a/docs/schema/reference/transportation/speed.md b/docs/schema/reference/transportation/speed.md new file mode 100644 index 000000000..d02683651 --- /dev/null +++ b/docs/schema/reference/transportation/speed.md @@ -0,0 +1,10 @@ +# Speed + +A speed value, i.e. a certain number of distance units travelled per unit time. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `value` | [`SpeedValue`](speed_value.md) | | +| `unit` | [`SpeedUnit`](../core/speed_unit.md) | | diff --git a/docs/schema/reference/transportation/speed_limit_rule.md b/docs/schema/reference/transportation/speed_limit_rule.md new file mode 100644 index 000000000..8c4181260 --- /dev/null +++ b/docs/schema/reference/transportation/speed_limit_rule.md @@ -0,0 +1,23 @@ +# SpeedLimitRule + +An individual speed limit rule. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `max_speed` | [`Speed`](speed.md) (optional) | | +| `max_speed.value` | [`SpeedValue`](speed_value.md) | | +| `max_speed.unit` | [`SpeedUnit`](../core/speed_unit.md) | | +| `min_speed` | [`Speed`](speed.md) (optional) | | +| `min_speed.value` | [`SpeedValue`](speed_value.md) | | +| `min_speed.unit` | [`SpeedUnit`](../core/speed_unit.md) | | +| `is_max_speed_variable` | `boolean` (optional) | Indicates a variable speed corridor | +| `between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SpeedLimitRule applies to. | +| `when` | [`SpeedLimitRule.When`](speed_limit_rule.when.md) (optional) | Scopes for SpeedLimitRule: Scope.HEADING, Scope.TEMPORAL, Scope.TRAVEL MODE, Scope.PURPOSE OF USE, Scope.RECOGNIZED STATUS and Scope.VEHICLE | +| `when.heading` | [`Heading`](../core/scoping/heading.md) (optional) | The heading, either forward or backward, that the containing SpeedLimitRule applies to. | +| `when.during` | [`OpeningHours`](../core/scoping/opening_hours.md) (optional) | The recurring time span, in the OpenStreetMap opening hours format, that the containing SpeedLimitRule applies to. For the OSM opening hours specification, see https://wiki.openstreetmap.org/wiki/Key:opening_hours/specification. | +| `when.mode` | `list<`[`TravelMode`](../core/scoping/travel_mode.md)`>` (optional) | A list of one or more travel modes, such as car, truck, or foot, that the containing SpeedLimitRule applies to. | +| `when.using` | `list<`[`PurposeOfUse`](../core/scoping/purpose_of_use.md)`>` (optional) | A list of one or more usage purposes, such as delivery or arrival at final destination, that the containing SpeedLimitRule applies to. | +| `when.recognized` | `list<`[`RecognizedStatus`](../core/scoping/recognized_status.md)`>` (optional) | A list of one or more recognized status values, such as employee or student, that the containing SpeedLimitRule applies to. | +| `when.vehicle` | `list` (optional) | A list of one or more vehicle parameters that limit the vehicles the containing SpeedLimitRule applies to. | diff --git a/docs/schema/reference/transportation/speed_limit_rule.when.md b/docs/schema/reference/transportation/speed_limit_rule.when.md new file mode 100644 index 000000000..cdadfa4f0 --- /dev/null +++ b/docs/schema/reference/transportation/speed_limit_rule.when.md @@ -0,0 +1,14 @@ +# SpeedLimitRule.When + +Scopes for SpeedLimitRule: Scope.HEADING, Scope.TEMPORAL, Scope.TRAVEL MODE, Scope.PURPOSE OF USE, Scope.RECOGNIZED STATUS and Scope.VEHICLE + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `heading` | [`Heading`](../core/scoping/heading.md) (optional) | The heading, either forward or backward, that the containing SpeedLimitRule applies to. | +| `during` | [`OpeningHours`](../core/scoping/opening_hours.md) (optional) | The recurring time span, in the OpenStreetMap opening hours format, that the containing SpeedLimitRule applies to. For the OSM opening hours specification, see https://wiki.openstreetmap.org/wiki/Key:opening_hours/specification. | +| `mode` | `list<`[`TravelMode`](../core/scoping/travel_mode.md)`>` (optional) | A list of one or more travel modes, such as car, truck, or foot, that the containing SpeedLimitRule applies to. | +| `using` | `list<`[`PurposeOfUse`](../core/scoping/purpose_of_use.md)`>` (optional) | A list of one or more usage purposes, such as delivery or arrival at final destination, that the containing SpeedLimitRule applies to. | +| `recognized` | `list<`[`RecognizedStatus`](../core/scoping/recognized_status.md)`>` (optional) | A list of one or more recognized status values, such as employee or student, that the containing SpeedLimitRule applies to. | +| `vehicle` | `list` (optional) | A list of one or more vehicle parameters that limit the vehicles the containing SpeedLimitRule applies to. | diff --git a/docs/schema/reference/transportation/speed_limits.md b/docs/schema/reference/transportation/speed_limits.md new file mode 100644 index 000000000..1a33781e2 --- /dev/null +++ b/docs/schema/reference/transportation/speed_limits.md @@ -0,0 +1,6 @@ +# SpeedLimits (`list`) + +## Constraints + +- `MinLen(min_length=1)` +- `UniqueItemsConstraint` diff --git a/docs/schema/reference/transportation/speed_value.md b/docs/schema/reference/transportation/speed_value.md new file mode 100644 index 000000000..1afebaafe --- /dev/null +++ b/docs/schema/reference/transportation/speed_value.md @@ -0,0 +1,8 @@ +# SpeedValue (`int32`) + +## Constraints + +- `Ge(ge=1)` +- `Le(le=350)` +- `Ge(ge=-2147483648)` (from [`int32`](../system/primitive/primitives.md)) +- `Le(le=2147483647)` (from [`int32`](../system/primitive/primitives.md)) diff --git a/docs/schema/reference/transportation/subclass.md b/docs/schema/reference/transportation/subclass.md new file mode 100644 index 000000000..4e9db9c32 --- /dev/null +++ b/docs/schema/reference/transportation/subclass.md @@ -0,0 +1,13 @@ +# Subclass + +Refines expected usage of the segment, must not overlap. + +## Values + +- `link` +- `sidewalk` +- `crosswalk` +- `parking_aisle` +- `driveway` +- `alley` +- `cycle_crossing` diff --git a/docs/schema/reference/transportation/subclass_rule.md b/docs/schema/reference/transportation/subclass_rule.md new file mode 100644 index 000000000..c12852a59 --- /dev/null +++ b/docs/schema/reference/transportation/subclass_rule.md @@ -0,0 +1,10 @@ +# SubclassRule + +Set of subclasses scoped along segment. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `value` | [`Subclass`](subclass.md) | | +| `between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SubclassRule applies to. | diff --git a/docs/schema/reference/transportation/subclass_rules.md b/docs/schema/reference/transportation/subclass_rules.md new file mode 100644 index 000000000..538da5e0e --- /dev/null +++ b/docs/schema/reference/transportation/subclass_rules.md @@ -0,0 +1 @@ +# SubclassRules (`list`) diff --git a/docs/schema/reference/transportation/subtype.md b/docs/schema/reference/transportation/subtype.md new file mode 100644 index 000000000..414bc3f02 --- /dev/null +++ b/docs/schema/reference/transportation/subtype.md @@ -0,0 +1,9 @@ +# Subtype + +Transportation segment subtype classification. + +## Values + +- `road` +- `rail` +- `water` diff --git a/docs/schema/reference/transportation/surface_rule.md b/docs/schema/reference/transportation/surface_rule.md new file mode 100644 index 000000000..211492395 --- /dev/null +++ b/docs/schema/reference/transportation/surface_rule.md @@ -0,0 +1,8 @@ +# SurfaceRule + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `value` | [`RoadSurface`](road_surface.md) | | +| `between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SurfaceRule applies to. | diff --git a/docs/schema/reference/transportation/surfaces.md b/docs/schema/reference/transportation/surfaces.md new file mode 100644 index 000000000..af276955a --- /dev/null +++ b/docs/schema/reference/transportation/surfaces.md @@ -0,0 +1,6 @@ +# Surfaces (`list`) + +## Constraints + +- `MinLen(min_length=1)` +- `UniqueItemsConstraint` diff --git a/docs/schema/reference/transportation/width.md b/docs/schema/reference/transportation/width.md new file mode 100644 index 000000000..112052cef --- /dev/null +++ b/docs/schema/reference/transportation/width.md @@ -0,0 +1,5 @@ +# Width (`float64`) + +## Constraints + +- `Gt(gt=0)` diff --git a/docs/schema/reference/transportation/width_rule.md b/docs/schema/reference/transportation/width_rule.md new file mode 100644 index 000000000..c6b3dd92a --- /dev/null +++ b/docs/schema/reference/transportation/width_rule.md @@ -0,0 +1,8 @@ +# WidthRule + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `value` | [`Width`](width.md) | | +| `between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing WidthRule applies to. | diff --git a/docs/schema/reference/transportation/width_rules.md b/docs/schema/reference/transportation/width_rules.md new file mode 100644 index 000000000..a8b8193b2 --- /dev/null +++ b/docs/schema/reference/transportation/width_rules.md @@ -0,0 +1,6 @@ +# WidthRules (`list`) + +## Constraints + +- `MinLen(min_length=1)` +- `UniqueItemsConstraint` From 21e3caa7bd2d0583977f0e45ed7e9d80238975ed Mon Sep 17 00:00:00 2001 From: Seth Fitzsimmons Date: Thu, 19 Feb 2026 21:28:50 -0800 Subject: [PATCH 06/12] Sync schema reference Fix sidebar --- .../reference/addresses/_category_.json | 3 +- docs/schema/reference/addresses/address.md | 6 +- .../reference/addresses/types/_category_.json | 3 + .../addresses/{ => types}/address_level.md | 2 +- docs/schema/reference/base/_category_.json | 3 +- docs/schema/reference/base/bathymetry.md | 6 +- docs/schema/reference/base/depth.md | 7 - docs/schema/reference/base/elevation.md | 7 - docs/schema/reference/base/infrastructure.md | 14 +- docs/schema/reference/base/land.md | 14 +- docs/schema/reference/base/land_cover.md | 6 +- docs/schema/reference/base/land_use.md | 14 +- .../reference/base/types/_category_.json | 3 + docs/schema/reference/base/types/depth.md | 7 + docs/schema/reference/base/types/elevation.md | 7 + .../reference/base/{ => types}/height.md | 0 .../base/{ => types}/infrastructure_class.md | 0 .../{ => types}/infrastructure_subtype.md | 0 .../reference/base/{ => types}/land_class.md | 0 .../base/{ => types}/land_cover_subtype.md | 0 .../base/{ => types}/land_subtype.md | 0 .../base/{ => types}/land_use_class.md | 0 .../base/{ => types}/land_use_subtype.md | 0 .../reference/base/{ => types}/source_tags.md | 0 .../base/{ => types}/surface_material.md | 0 .../reference/base/{ => types}/water_class.md | 0 .../base/{ => types}/water_subtype.md | 0 docs/schema/reference/base/water.md | 10 +- .../reference/buildings/_category_.json | 3 +- docs/schema/reference/buildings/building.md | 16 +- .../reference/buildings/building_part.md | 12 +- .../reference/buildings/types/_category_.json | 3 + .../buildings/{ => types}/building_class.md | 0 .../buildings/{ => types}/building_subtype.md | 0 .../buildings/{ => types}/facade_material.md | 0 .../buildings/{ => types}/roof_material.md | 0 .../buildings/{ => types}/roof_orientation.md | 0 .../buildings/{ => types}/roof_shape.md | 0 docs/schema/reference/core/_category_.json | 3 +- .../reference/divisions/_category_.json | 3 +- .../schema/reference/divisions/admin_level.md | 6 - docs/schema/reference/divisions/division.md | 22 ++- .../reference/divisions/division_area.md | 8 +- .../reference/divisions/division_boundary.md | 8 +- .../reference/divisions/types/_category_.json | 3 + .../reference/divisions/types/admin_level.md | 6 + .../{ => types}/capital_of_division_item.md | 0 .../divisions/{ => types}/division_class.md | 0 .../divisions/{ => types}/division_id.md | 2 +- .../divisions/{ => types}/hierarchy.md | 0 .../divisions/{ => types}/hierarchy_item.md | 2 +- .../divisions/{ => types}/place_type.md | 0 docs/schema/reference/places/_category_.json | 3 +- docs/schema/reference/places/brand.md | 23 --- docs/schema/reference/places/categories.md | 12 -- docs/schema/reference/places/place.md | 12 +- docs/schema/reference/places/taxonomy.md | 13 -- .../reference/places/types/_category_.json | 3 + docs/schema/reference/places/types/brand.md | 23 +++ .../reference/places/types/categories.md | 12 ++ .../places/{ => types}/operating_status.md | 0 .../schema/reference/places/types/taxonomy.md | 13 ++ docs/schema/reference/system/_category_.json | 3 +- .../reference/transportation/_category_.json | 3 +- .../transportation/access_restriction_rule.md | 15 -- .../access_restriction_rule.when.md | 14 -- .../reference/transportation/connector.md | 4 + .../transportation/connector_reference.md | 11 -- .../transportation/destination_rule.md | 16 -- .../transportation/destination_rule.when.md | 9 - .../reference/transportation/level_rule.md | 11 -- .../prohibited_transition_rule.md | 18 -- .../prohibited_transition_rule.when.md | 14 -- .../transportation/rail_flag_rule.md | 10 - .../transportation/road_flag_rule.md | 10 - .../transportation/route_reference.md | 14 -- .../reference/transportation/segment.md | 72 +++---- .../transportation/sequence_entry.md | 10 - .../transportation/speed_limit_rule.md | 23 --- .../transportation/speed_limit_rule.when.md | 14 -- .../reference/transportation/speed_value.md | 8 - .../reference/transportation/subclass_rule.md | 10 - .../reference/transportation/surface_rule.md | 8 - .../transportation/types/_category_.json | 3 + .../types/access_restriction_rule.md | 15 ++ .../types/access_restriction_rule.when.md | 14 ++ .../{ => types}/access_rules.md | 0 .../transportation/{ => types}/access_type.md | 0 .../types/connector_reference.md | 11 ++ .../{ => types}/destination_label_type.md | 0 .../{ => types}/destination_labels.md | 2 +- .../transportation/types/destination_rule.md | 16 ++ .../types/destination_rule.when.md | 9 + .../{ => types}/destination_sign_symbol.md | 0 .../{ => types}/destinations.md | 0 .../transportation/types/level_rule.md | 11 ++ .../transportation/{ => types}/level_rules.md | 0 .../types/prohibited_transition_rule.md | 18 ++ .../types/prohibited_transition_rule.when.md | 14 ++ .../{ => types}/prohibited_transitions.md | 0 .../transportation/{ => types}/rail_class.md | 0 .../transportation/{ => types}/rail_flag.md | 0 .../transportation/types/rail_flag_rule.md | 10 + .../transportation/{ => types}/rail_flags.md | 0 .../transportation/{ => types}/road_class.md | 0 .../transportation/{ => types}/road_flag.md | 0 .../transportation/types/road_flag_rule.md | 10 + .../transportation/{ => types}/road_flags.md | 0 .../{ => types}/road_surface.md | 0 .../transportation/types/route_reference.md | 14 ++ .../transportation/{ => types}/routes.md | 0 .../transportation/types/sequence_entry.md | 10 + .../transportation/{ => types}/speed.md | 2 +- .../transportation/types/speed_limit_rule.md | 23 +++ .../types/speed_limit_rule.when.md | 14 ++ .../{ => types}/speed_limits.md | 0 .../transportation/types/speed_value.md | 8 + .../transportation/{ => types}/subclass.md | 0 .../transportation/types/subclass_rule.md | 10 + .../{ => types}/subclass_rules.md | 0 .../transportation/{ => types}/subtype.md | 0 .../transportation/types/surface_rule.md | 8 + .../transportation/{ => types}/surfaces.md | 0 .../transportation/{ => types}/width.md | 0 .../transportation/types/width_rule.md | 8 + .../transportation/{ => types}/width_rules.md | 0 .../reference/transportation/width_rule.md | 8 - sidebars.js | 181 +----------------- 128 files changed, 473 insertions(+), 566 deletions(-) create mode 100644 docs/schema/reference/addresses/types/_category_.json rename docs/schema/reference/addresses/{ => types}/address_level.md (89%) delete mode 100644 docs/schema/reference/base/depth.md delete mode 100644 docs/schema/reference/base/elevation.md create mode 100644 docs/schema/reference/base/types/_category_.json create mode 100644 docs/schema/reference/base/types/depth.md create mode 100644 docs/schema/reference/base/types/elevation.md rename docs/schema/reference/base/{ => types}/height.md (100%) rename docs/schema/reference/base/{ => types}/infrastructure_class.md (100%) rename docs/schema/reference/base/{ => types}/infrastructure_subtype.md (100%) rename docs/schema/reference/base/{ => types}/land_class.md (100%) rename docs/schema/reference/base/{ => types}/land_cover_subtype.md (100%) rename docs/schema/reference/base/{ => types}/land_subtype.md (100%) rename docs/schema/reference/base/{ => types}/land_use_class.md (100%) rename docs/schema/reference/base/{ => types}/land_use_subtype.md (100%) rename docs/schema/reference/base/{ => types}/source_tags.md (100%) rename docs/schema/reference/base/{ => types}/surface_material.md (100%) rename docs/schema/reference/base/{ => types}/water_class.md (100%) rename docs/schema/reference/base/{ => types}/water_subtype.md (100%) create mode 100644 docs/schema/reference/buildings/types/_category_.json rename docs/schema/reference/buildings/{ => types}/building_class.md (100%) rename docs/schema/reference/buildings/{ => types}/building_subtype.md (100%) rename docs/schema/reference/buildings/{ => types}/facade_material.md (100%) rename docs/schema/reference/buildings/{ => types}/roof_material.md (100%) rename docs/schema/reference/buildings/{ => types}/roof_orientation.md (100%) rename docs/schema/reference/buildings/{ => types}/roof_shape.md (100%) delete mode 100644 docs/schema/reference/divisions/admin_level.md create mode 100644 docs/schema/reference/divisions/types/_category_.json create mode 100644 docs/schema/reference/divisions/types/admin_level.md rename docs/schema/reference/divisions/{ => types}/capital_of_division_item.md (100%) rename docs/schema/reference/divisions/{ => types}/division_class.md (100%) rename docs/schema/reference/divisions/{ => types}/division_id.md (59%) rename docs/schema/reference/divisions/{ => types}/hierarchy.md (100%) rename docs/schema/reference/divisions/{ => types}/hierarchy_item.md (69%) rename docs/schema/reference/divisions/{ => types}/place_type.md (100%) delete mode 100644 docs/schema/reference/places/brand.md delete mode 100644 docs/schema/reference/places/categories.md delete mode 100644 docs/schema/reference/places/taxonomy.md create mode 100644 docs/schema/reference/places/types/_category_.json create mode 100644 docs/schema/reference/places/types/brand.md create mode 100644 docs/schema/reference/places/types/categories.md rename docs/schema/reference/places/{ => types}/operating_status.md (100%) create mode 100644 docs/schema/reference/places/types/taxonomy.md delete mode 100644 docs/schema/reference/transportation/access_restriction_rule.md delete mode 100644 docs/schema/reference/transportation/access_restriction_rule.when.md delete mode 100644 docs/schema/reference/transportation/connector_reference.md delete mode 100644 docs/schema/reference/transportation/destination_rule.md delete mode 100644 docs/schema/reference/transportation/destination_rule.when.md delete mode 100644 docs/schema/reference/transportation/level_rule.md delete mode 100644 docs/schema/reference/transportation/prohibited_transition_rule.md delete mode 100644 docs/schema/reference/transportation/prohibited_transition_rule.when.md delete mode 100644 docs/schema/reference/transportation/rail_flag_rule.md delete mode 100644 docs/schema/reference/transportation/road_flag_rule.md delete mode 100644 docs/schema/reference/transportation/route_reference.md delete mode 100644 docs/schema/reference/transportation/sequence_entry.md delete mode 100644 docs/schema/reference/transportation/speed_limit_rule.md delete mode 100644 docs/schema/reference/transportation/speed_limit_rule.when.md delete mode 100644 docs/schema/reference/transportation/speed_value.md delete mode 100644 docs/schema/reference/transportation/subclass_rule.md delete mode 100644 docs/schema/reference/transportation/surface_rule.md create mode 100644 docs/schema/reference/transportation/types/_category_.json create mode 100644 docs/schema/reference/transportation/types/access_restriction_rule.md create mode 100644 docs/schema/reference/transportation/types/access_restriction_rule.when.md rename docs/schema/reference/transportation/{ => types}/access_rules.md (100%) rename docs/schema/reference/transportation/{ => types}/access_type.md (100%) create mode 100644 docs/schema/reference/transportation/types/connector_reference.md rename docs/schema/reference/transportation/{ => types}/destination_label_type.md (100%) rename docs/schema/reference/transportation/{ => types}/destination_labels.md (67%) create mode 100644 docs/schema/reference/transportation/types/destination_rule.md create mode 100644 docs/schema/reference/transportation/types/destination_rule.when.md rename docs/schema/reference/transportation/{ => types}/destination_sign_symbol.md (100%) rename docs/schema/reference/transportation/{ => types}/destinations.md (100%) create mode 100644 docs/schema/reference/transportation/types/level_rule.md rename docs/schema/reference/transportation/{ => types}/level_rules.md (100%) create mode 100644 docs/schema/reference/transportation/types/prohibited_transition_rule.md create mode 100644 docs/schema/reference/transportation/types/prohibited_transition_rule.when.md rename docs/schema/reference/transportation/{ => types}/prohibited_transitions.md (100%) rename docs/schema/reference/transportation/{ => types}/rail_class.md (100%) rename docs/schema/reference/transportation/{ => types}/rail_flag.md (100%) create mode 100644 docs/schema/reference/transportation/types/rail_flag_rule.md rename docs/schema/reference/transportation/{ => types}/rail_flags.md (100%) rename docs/schema/reference/transportation/{ => types}/road_class.md (100%) rename docs/schema/reference/transportation/{ => types}/road_flag.md (100%) create mode 100644 docs/schema/reference/transportation/types/road_flag_rule.md rename docs/schema/reference/transportation/{ => types}/road_flags.md (100%) rename docs/schema/reference/transportation/{ => types}/road_surface.md (100%) create mode 100644 docs/schema/reference/transportation/types/route_reference.md rename docs/schema/reference/transportation/{ => types}/routes.md (100%) create mode 100644 docs/schema/reference/transportation/types/sequence_entry.md rename docs/schema/reference/transportation/{ => types}/speed.md (78%) create mode 100644 docs/schema/reference/transportation/types/speed_limit_rule.md create mode 100644 docs/schema/reference/transportation/types/speed_limit_rule.when.md rename docs/schema/reference/transportation/{ => types}/speed_limits.md (100%) create mode 100644 docs/schema/reference/transportation/types/speed_value.md rename docs/schema/reference/transportation/{ => types}/subclass.md (100%) create mode 100644 docs/schema/reference/transportation/types/subclass_rule.md rename docs/schema/reference/transportation/{ => types}/subclass_rules.md (100%) rename docs/schema/reference/transportation/{ => types}/subtype.md (100%) create mode 100644 docs/schema/reference/transportation/types/surface_rule.md rename docs/schema/reference/transportation/{ => types}/surfaces.md (100%) rename docs/schema/reference/transportation/{ => types}/width.md (100%) create mode 100644 docs/schema/reference/transportation/types/width_rule.md rename docs/schema/reference/transportation/{ => types}/width_rules.md (100%) delete mode 100644 docs/schema/reference/transportation/width_rule.md diff --git a/docs/schema/reference/addresses/_category_.json b/docs/schema/reference/addresses/_category_.json index 09d1cd2d3..29c13add5 100644 --- a/docs/schema/reference/addresses/_category_.json +++ b/docs/schema/reference/addresses/_category_.json @@ -1,3 +1,4 @@ { - "label": "Addresses" + "label": "Addresses", + "position": 1 } diff --git a/docs/schema/reference/addresses/address.md b/docs/schema/reference/addresses/address.md index bac0eebb9..0947da2c1 100644 --- a/docs/schema/reference/addresses/address.md +++ b/docs/schema/reference/addresses/address.md @@ -1,3 +1,7 @@ +--- +sidebar_position: 1 +--- + # Address Addresses are structured labels for the geographic locations where businesses and individuals @@ -33,7 +37,7 @@ provinces, state, and regions, and similar addressing units are found. | `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | | `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset.

This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | | `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | -| `address_levels[]` | `list<`[`AddressLevel`](address_level.md)`>` (optional) | Names of the sub-country addressing areas the address belongs to, including the city
or locality, in descending order of generality.

The list is sorted so that the highest, or most general, level comes first (*e.g.*,
region) and the lowest, or most particular level, comes last (*e.g.*, city or town).

The number of items in this list and their meaning is country-dependent. For
example, in the United States, we expect two items: the state, and the locality or
municipality within the state. Other countries might have as few as one, or even
three or more.

When a specific level that is required for a country is not known. most likely
because the data provider has not supplied it and we have not derived it from
another source, the list item corresponding to that level must be present, but its
`value` field should be omitted. | +| `address_levels[]` | `list<`[`AddressLevel`](types/address_level.md)`>` (optional) | Names of the sub-country addressing areas the address belongs to, including the city
or locality, in descending order of generality.

The list is sorted so that the highest, or most general, level comes first (*e.g.*,
region) and the lowest, or most particular level, comes last (*e.g.*, city or town).

The number of items in this list and their meaning is country-dependent. For
example, in the United States, we expect two items: the state, and the locality or
municipality within the state. Other countries might have as few as one, or even
three or more.

When a specific level that is required for a country is not known. most likely
because the data provider has not supplied it and we have not derived it from
another source, the list item corresponding to that level must be present, but its
`value` field should be omitted. | | `address_levels[].value` | [`StrippedString`](../system/stripped_string.md) (optional) | | | `country` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) | The country the address belongs to, as an ISO 3166-1 alpha-2 country code. | | `number` | [`StrippedString`](../system/stripped_string.md) (optional) | The house number.

This field does not necessarily contain an integer or even a number. Values such as
"74B", "189 1/2", and "208.5", where the non-integer or non-number part is part of
the house number, not a unit number, are in common use. | diff --git a/docs/schema/reference/addresses/types/_category_.json b/docs/schema/reference/addresses/types/_category_.json new file mode 100644 index 000000000..a3ec08974 --- /dev/null +++ b/docs/schema/reference/addresses/types/_category_.json @@ -0,0 +1,3 @@ +{ + "label": "Types" +} diff --git a/docs/schema/reference/addresses/address_level.md b/docs/schema/reference/addresses/types/address_level.md similarity index 89% rename from docs/schema/reference/addresses/address_level.md rename to docs/schema/reference/addresses/types/address_level.md index dac0c8cd0..458d0b13d 100644 --- a/docs/schema/reference/addresses/address_level.md +++ b/docs/schema/reference/addresses/types/address_level.md @@ -19,4 +19,4 @@ countries and regions, address levels do not necessarily correspond to administr | Name | Type | Description | |-----:|:----:|-------------| -| `value` | [`StrippedString`](../system/stripped_string.md) (optional) | | +| `value` | [`StrippedString`](../../system/stripped_string.md) (optional) | | diff --git a/docs/schema/reference/base/_category_.json b/docs/schema/reference/base/_category_.json index 7c6c55d8d..b6b444780 100644 --- a/docs/schema/reference/base/_category_.json +++ b/docs/schema/reference/base/_category_.json @@ -1,3 +1,4 @@ { - "label": "Base" + "label": "Base", + "position": 2 } diff --git a/docs/schema/reference/base/bathymetry.md b/docs/schema/reference/base/bathymetry.md index ce80b158d..14576239c 100644 --- a/docs/schema/reference/base/bathymetry.md +++ b/docs/schema/reference/base/bathymetry.md @@ -1,3 +1,7 @@ +--- +sidebar_position: 1 +--- + # Bathymetry Bathymetry features provide topographic representations of underwater areas, such as parts of @@ -21,7 +25,7 @@ lake beds or ocean floors. | `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | | `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset.

This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | | `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | -| `depth` | [`Depth`](depth.md) | | +| `depth` | [`Depth`](types/depth.md) | | | `cartography` | [`CartographicHints`](../core/cartographic_hints.md) (optional) | | | `cartography.prominence` | [`Prominence`](../core/prominence.md) (optional) | | | `cartography.min_zoom` | [`MinZoom`](../core/min_zoom.md) (optional) | | diff --git a/docs/schema/reference/base/depth.md b/docs/schema/reference/base/depth.md deleted file mode 100644 index 6cef233a1..000000000 --- a/docs/schema/reference/base/depth.md +++ /dev/null @@ -1,7 +0,0 @@ -# Depth (`int32`) - -## Constraints - -- `Ge(ge=0)` -- `Ge(ge=-2147483648)` (from [`int32`](../system/primitive/primitives.md)) -- `Le(le=2147483647)` (from [`int32`](../system/primitive/primitives.md)) diff --git a/docs/schema/reference/base/elevation.md b/docs/schema/reference/base/elevation.md deleted file mode 100644 index c45058bf1..000000000 --- a/docs/schema/reference/base/elevation.md +++ /dev/null @@ -1,7 +0,0 @@ -# Elevation (`int32`) - -## Constraints - -- `Le(le=9000)` -- `Ge(ge=-2147483648)` (from [`int32`](../system/primitive/primitives.md)) -- `Le(le=2147483647)` (from [`int32`](../system/primitive/primitives.md)) diff --git a/docs/schema/reference/base/infrastructure.md b/docs/schema/reference/base/infrastructure.md index 7942214dd..8b0cc5a89 100644 --- a/docs/schema/reference/base/infrastructure.md +++ b/docs/schema/reference/base/infrastructure.md @@ -1,3 +1,7 @@ +--- +sidebar_position: 1 +--- + # Infrastructure Infrastructure features provide basic information about real-world infrastructure entitites @@ -21,10 +25,10 @@ such as bridges, airports, runways, aerialways, communication towers, and power | `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | | `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset.

This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | | `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | -| `class` | [`InfrastructureClass`](infrastructure_class.md) | | -| `subtype` | [`InfrastructureSubtype`](infrastructure_subtype.md) | | -| `height` | [`Height`](height.md) (optional) | | -| `surface` | [`SurfaceMaterial`](surface_material.md) (optional) | | +| `class` | [`InfrastructureClass`](types/infrastructure_class.md) | | +| `subtype` | [`InfrastructureSubtype`](types/infrastructure_subtype.md) | | +| `height` | [`Height`](types/height.md) (optional) | | +| `surface` | [`SurfaceMaterial`](types/surface_material.md) (optional) | | | `names` | [`Names`](../core/names.md) (optional) | | | `names.primary` | [`StrippedString`](../system/stripped_string.md) | The most commonly used name. | | `names.common` | [`CommonNames`](../core/common_names.md) (map, optional) | | @@ -38,7 +42,7 @@ such as bridges, airports, runways, aerialways, communication towers, and power | `names.rules[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | | `names.rules[].side` | [`Side`](../core/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | | `level` | [`Level`](../core/level.md) (optional) | | -| `source_tags` | [`SourceTags`](source_tags.md) (map, optional) | | +| `source_tags` | [`SourceTags`](types/source_tags.md) (map, optional) | | | `wikidata` | [`WikidataId`](../system/wikidata_id.md) (optional) | | ## Examples diff --git a/docs/schema/reference/base/land.md b/docs/schema/reference/base/land.md index 3667f5911..03e2a2fa6 100644 --- a/docs/schema/reference/base/land.md +++ b/docs/schema/reference/base/land.md @@ -1,3 +1,7 @@ +--- +sidebar_position: 1 +--- + # Land Land features are representations of physical land surfaces. @@ -31,10 +35,10 @@ TODO: Update this description when the relationship to `land_cover` is better un | `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | | `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset.

This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | | `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | -| `class` | [`LandClass`](land_class.md) (optional) | | -| `subtype` | [`LandSubtype`](land_subtype.md) (optional) | | -| `elevation` | [`Elevation`](elevation.md) (optional) | | -| `surface` | [`SurfaceMaterial`](surface_material.md) (optional) | | +| `class` | [`LandClass`](types/land_class.md) (optional) | | +| `subtype` | [`LandSubtype`](types/land_subtype.md) (optional) | | +| `elevation` | [`Elevation`](types/elevation.md) (optional) | | +| `surface` | [`SurfaceMaterial`](types/surface_material.md) (optional) | | | `names` | [`Names`](../core/names.md) (optional) | | | `names.primary` | [`StrippedString`](../system/stripped_string.md) | The most commonly used name. | | `names.common` | [`CommonNames`](../core/common_names.md) (map, optional) | | @@ -48,7 +52,7 @@ TODO: Update this description when the relationship to `land_cover` is better un | `names.rules[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | | `names.rules[].side` | [`Side`](../core/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | | `level` | [`Level`](../core/level.md) (optional) | | -| `source_tags` | [`SourceTags`](source_tags.md) (map, optional) | | +| `source_tags` | [`SourceTags`](types/source_tags.md) (map, optional) | | | `wikidata` | [`WikidataId`](../system/wikidata_id.md) (optional) | | ## Examples diff --git a/docs/schema/reference/base/land_cover.md b/docs/schema/reference/base/land_cover.md index 00c88622d..23c849bfb 100644 --- a/docs/schema/reference/base/land_cover.md +++ b/docs/schema/reference/base/land_cover.md @@ -1,3 +1,7 @@ +--- +sidebar_position: 1 +--- + # LandCover Land cover features indicate the primary natural or artificial surface material covering a land @@ -28,7 +32,7 @@ TODO: Explain relationship to `Land` features. | `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | | `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset.

This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | | `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | -| `subtype` | [`LandCoverSubtype`](land_cover_subtype.md) | | +| `subtype` | [`LandCoverSubtype`](types/land_cover_subtype.md) | | | `cartography` | [`CartographicHints`](../core/cartographic_hints.md) (optional) | | | `cartography.prominence` | [`Prominence`](../core/prominence.md) (optional) | | | `cartography.min_zoom` | [`MinZoom`](../core/min_zoom.md) (optional) | | diff --git a/docs/schema/reference/base/land_use.md b/docs/schema/reference/base/land_use.md index fd6faedc3..fcb21baae 100644 --- a/docs/schema/reference/base/land_use.md +++ b/docs/schema/reference/base/land_use.md @@ -1,3 +1,7 @@ +--- +sidebar_position: 1 +--- + # LandUse Land use features specify the predominant human use of an area of land, for example commercial @@ -26,10 +30,10 @@ TODO: Explain relationship to `Land` features. | `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | | `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset.

This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | | `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | -| `class` | [`LandUseClass`](land_use_class.md) | | -| `subtype` | [`LandUseSubtype`](land_use_subtype.md) | | -| `elevation` | [`Elevation`](elevation.md) (optional) | | -| `surface` | [`SurfaceMaterial`](surface_material.md) (optional) | | +| `class` | [`LandUseClass`](types/land_use_class.md) | | +| `subtype` | [`LandUseSubtype`](types/land_use_subtype.md) | | +| `elevation` | [`Elevation`](types/elevation.md) (optional) | | +| `surface` | [`SurfaceMaterial`](types/surface_material.md) (optional) | | | `names` | [`Names`](../core/names.md) (optional) | | | `names.primary` | [`StrippedString`](../system/stripped_string.md) | The most commonly used name. | | `names.common` | [`CommonNames`](../core/common_names.md) (map, optional) | | @@ -43,7 +47,7 @@ TODO: Explain relationship to `Land` features. | `names.rules[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | | `names.rules[].side` | [`Side`](../core/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | | `level` | [`Level`](../core/level.md) (optional) | | -| `source_tags` | [`SourceTags`](source_tags.md) (map, optional) | | +| `source_tags` | [`SourceTags`](types/source_tags.md) (map, optional) | | | `wikidata` | [`WikidataId`](../system/wikidata_id.md) (optional) | | ## Examples diff --git a/docs/schema/reference/base/types/_category_.json b/docs/schema/reference/base/types/_category_.json new file mode 100644 index 000000000..a3ec08974 --- /dev/null +++ b/docs/schema/reference/base/types/_category_.json @@ -0,0 +1,3 @@ +{ + "label": "Types" +} diff --git a/docs/schema/reference/base/types/depth.md b/docs/schema/reference/base/types/depth.md new file mode 100644 index 000000000..dc5dbecc6 --- /dev/null +++ b/docs/schema/reference/base/types/depth.md @@ -0,0 +1,7 @@ +# Depth (`int32`) + +## Constraints + +- `Ge(ge=0)` +- `Ge(ge=-2147483648)` (from [`int32`](../../system/primitive/primitives.md)) +- `Le(le=2147483647)` (from [`int32`](../../system/primitive/primitives.md)) diff --git a/docs/schema/reference/base/types/elevation.md b/docs/schema/reference/base/types/elevation.md new file mode 100644 index 000000000..882e708b6 --- /dev/null +++ b/docs/schema/reference/base/types/elevation.md @@ -0,0 +1,7 @@ +# Elevation (`int32`) + +## Constraints + +- `Le(le=9000)` +- `Ge(ge=-2147483648)` (from [`int32`](../../system/primitive/primitives.md)) +- `Le(le=2147483647)` (from [`int32`](../../system/primitive/primitives.md)) diff --git a/docs/schema/reference/base/height.md b/docs/schema/reference/base/types/height.md similarity index 100% rename from docs/schema/reference/base/height.md rename to docs/schema/reference/base/types/height.md diff --git a/docs/schema/reference/base/infrastructure_class.md b/docs/schema/reference/base/types/infrastructure_class.md similarity index 100% rename from docs/schema/reference/base/infrastructure_class.md rename to docs/schema/reference/base/types/infrastructure_class.md diff --git a/docs/schema/reference/base/infrastructure_subtype.md b/docs/schema/reference/base/types/infrastructure_subtype.md similarity index 100% rename from docs/schema/reference/base/infrastructure_subtype.md rename to docs/schema/reference/base/types/infrastructure_subtype.md diff --git a/docs/schema/reference/base/land_class.md b/docs/schema/reference/base/types/land_class.md similarity index 100% rename from docs/schema/reference/base/land_class.md rename to docs/schema/reference/base/types/land_class.md diff --git a/docs/schema/reference/base/land_cover_subtype.md b/docs/schema/reference/base/types/land_cover_subtype.md similarity index 100% rename from docs/schema/reference/base/land_cover_subtype.md rename to docs/schema/reference/base/types/land_cover_subtype.md diff --git a/docs/schema/reference/base/land_subtype.md b/docs/schema/reference/base/types/land_subtype.md similarity index 100% rename from docs/schema/reference/base/land_subtype.md rename to docs/schema/reference/base/types/land_subtype.md diff --git a/docs/schema/reference/base/land_use_class.md b/docs/schema/reference/base/types/land_use_class.md similarity index 100% rename from docs/schema/reference/base/land_use_class.md rename to docs/schema/reference/base/types/land_use_class.md diff --git a/docs/schema/reference/base/land_use_subtype.md b/docs/schema/reference/base/types/land_use_subtype.md similarity index 100% rename from docs/schema/reference/base/land_use_subtype.md rename to docs/schema/reference/base/types/land_use_subtype.md diff --git a/docs/schema/reference/base/source_tags.md b/docs/schema/reference/base/types/source_tags.md similarity index 100% rename from docs/schema/reference/base/source_tags.md rename to docs/schema/reference/base/types/source_tags.md diff --git a/docs/schema/reference/base/surface_material.md b/docs/schema/reference/base/types/surface_material.md similarity index 100% rename from docs/schema/reference/base/surface_material.md rename to docs/schema/reference/base/types/surface_material.md diff --git a/docs/schema/reference/base/water_class.md b/docs/schema/reference/base/types/water_class.md similarity index 100% rename from docs/schema/reference/base/water_class.md rename to docs/schema/reference/base/types/water_class.md diff --git a/docs/schema/reference/base/water_subtype.md b/docs/schema/reference/base/types/water_subtype.md similarity index 100% rename from docs/schema/reference/base/water_subtype.md rename to docs/schema/reference/base/types/water_subtype.md diff --git a/docs/schema/reference/base/water.md b/docs/schema/reference/base/water.md index 44e60c4bf..a4e5c73d7 100644 --- a/docs/schema/reference/base/water.md +++ b/docs/schema/reference/base/water.md @@ -1,3 +1,7 @@ +--- +sidebar_position: 1 +--- + # Water Water features represent ocean and inland water bodies. @@ -42,8 +46,8 @@ and `water=*`. | `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | | `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset.

This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | | `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | -| `class` | [`WaterClass`](water_class.md) (optional) | | -| `subtype` | [`WaterSubtype`](water_subtype.md) (optional) | | +| `class` | [`WaterClass`](types/water_class.md) (optional) | | +| `subtype` | [`WaterSubtype`](types/water_subtype.md) (optional) | | | `is_intermittent` | `boolean` (optional) | Whether the water body exists intermittently, not permanently | | `is_salt` | `boolean` (optional) | Whether the water body contains salt water | | `level` | [`Level`](../core/level.md) (optional) | | @@ -59,7 +63,7 @@ and `water=*`. | `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | | `names.rules[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | | `names.rules[].side` | [`Side`](../core/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | -| `source_tags` | [`SourceTags`](source_tags.md) (map, optional) | | +| `source_tags` | [`SourceTags`](types/source_tags.md) (map, optional) | | | `wikidata` | [`WikidataId`](../system/wikidata_id.md) (optional) | | ## Examples diff --git a/docs/schema/reference/buildings/_category_.json b/docs/schema/reference/buildings/_category_.json index d3da24de9..3e85a3e78 100644 --- a/docs/schema/reference/buildings/_category_.json +++ b/docs/schema/reference/buildings/_category_.json @@ -1,3 +1,4 @@ { - "label": "Buildings" + "label": "Buildings", + "position": 3 } diff --git a/docs/schema/reference/buildings/building.md b/docs/schema/reference/buildings/building.md index 04800e85c..c34158e64 100644 --- a/docs/schema/reference/buildings/building.md +++ b/docs/schema/reference/buildings/building.md @@ -1,3 +1,7 @@ +--- +sidebar_position: 1 +--- + # Building Buildings are man-made structures with roofs that exist permanently in one place. @@ -26,8 +30,8 @@ model of the building. | `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | | `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset.

This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | | `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | -| `subtype` | [`BuildingSubtype`](building_subtype.md) (optional) | A broad classification of the current use and purpose of the building.

If the current use of the building no longer accords with the original built
purpose, the current use should be specified. For example, a building built as a
train station but later converted into a shopping mall would have the value
`"commercial"` rather than `"transportation"`. | -| `class` | [`BuildingClass`](building_class.md) (optional) | A more specific classification of the current use and purpose of the building.

If the current use of the building no longer accords with the original built
purpose, the current use should be specified. | +| `subtype` | [`BuildingSubtype`](types/building_subtype.md) (optional) | A broad classification of the current use and purpose of the building.

If the current use of the building no longer accords with the original built
purpose, the current use should be specified. For example, a building built as a
train station but later converted into a shopping mall would have the value
`"commercial"` rather than `"transportation"`. | +| `class` | [`BuildingClass`](types/building_class.md) (optional) | A more specific classification of the current use and purpose of the building.

If the current use of the building no longer accords with the original built
purpose, the current use should be specified. | | `has_parts` | `boolean` (optional) | Whether the building has associated building part features | | `names` | [`Names`](../core/names.md) (optional) | | | `names.primary` | [`StrippedString`](../system/stripped_string.md) | The most commonly used name. | @@ -49,11 +53,11 @@ model of the building. | `min_height` | `float64` (optional) | Altitude above ground where the bottom of the building or building part starts.

If present, this value indicates that the lowest part of the building or building
part starts is above ground level. | | `min_floor` | `int32` (optional) | Start floor of this building or part.

If present, this value indicates that the building or part is "floating" and its
bottom-most floor is above ground level, usually because it is part of a larger
building in which some parts do reach down to ground level. An example is a building
that has an entry road or driveway at ground level into an interior courtyard, where
part of the building bridges above the entry road. This property may sometimes be
populated when `min_height` is missing and in these cases can be used as a proxy for
`min_height`. | | `facade_color` | [`HexColor`](../system/hex_color.md) (optional) | Facade color in `#rgb` or `#rrggbb` hex notation | -| `facade_material` | [`FacadeMaterial`](facade_material.md) (optional) | Outer surface material of the facade | -| `roof_material` | [`RoofMaterial`](roof_material.md) (optional) | Outer surface material of the roof | -| `roof_shape` | [`RoofShape`](roof_shape.md) (optional) | Shape of the roof | +| `facade_material` | [`FacadeMaterial`](types/facade_material.md) (optional) | Outer surface material of the facade | +| `roof_material` | [`RoofMaterial`](types/roof_material.md) (optional) | Outer surface material of the roof | +| `roof_shape` | [`RoofShape`](types/roof_shape.md) (optional) | Shape of the roof | | `roof_direction` | `float64` (optional) | Bearing of the roof ridge line in degrees | -| `roof_orientation` | [`RoofOrientation`](roof_orientation.md) (optional) | Orientation of the roof shape relative to the footprint shape | +| `roof_orientation` | [`RoofOrientation`](types/roof_orientation.md) (optional) | Orientation of the roof shape relative to the footprint shape | | `roof_color` | [`HexColor`](../system/hex_color.md) (optional) | The roof color in `#rgb` or `#rrggbb` hex notation | | `roof_height` | `float64` (optional) | Height of the roof in meters.

This is the distance from the base of the roof to its highest point. | diff --git a/docs/schema/reference/buildings/building_part.md b/docs/schema/reference/buildings/building_part.md index 41de013ca..7c82320b7 100644 --- a/docs/schema/reference/buildings/building_part.md +++ b/docs/schema/reference/buildings/building_part.md @@ -1,3 +1,7 @@ +--- +sidebar_position: 1 +--- + # BuildingPart Building parts represent parts of larger building features. They allow buildings to be modeled @@ -50,11 +54,11 @@ vertical dimension. | `min_height` | `float64` (optional) | Altitude above ground where the bottom of the building or building part starts.

If present, this value indicates that the lowest part of the building or building
part starts is above ground level. | | `min_floor` | `int32` (optional) | Start floor of this building or part.

If present, this value indicates that the building or part is "floating" and its
bottom-most floor is above ground level, usually because it is part of a larger
building in which some parts do reach down to ground level. An example is a building
that has an entry road or driveway at ground level into an interior courtyard, where
part of the building bridges above the entry road. This property may sometimes be
populated when `min_height` is missing and in these cases can be used as a proxy for
`min_height`. | | `facade_color` | [`HexColor`](../system/hex_color.md) (optional) | Facade color in `#rgb` or `#rrggbb` hex notation | -| `facade_material` | [`FacadeMaterial`](facade_material.md) (optional) | Outer surface material of the facade | -| `roof_material` | [`RoofMaterial`](roof_material.md) (optional) | Outer surface material of the roof | -| `roof_shape` | [`RoofShape`](roof_shape.md) (optional) | Shape of the roof | +| `facade_material` | [`FacadeMaterial`](types/facade_material.md) (optional) | Outer surface material of the facade | +| `roof_material` | [`RoofMaterial`](types/roof_material.md) (optional) | Outer surface material of the roof | +| `roof_shape` | [`RoofShape`](types/roof_shape.md) (optional) | Shape of the roof | | `roof_direction` | `float64` (optional) | Bearing of the roof ridge line in degrees | -| `roof_orientation` | [`RoofOrientation`](roof_orientation.md) (optional) | Orientation of the roof shape relative to the footprint shape | +| `roof_orientation` | [`RoofOrientation`](types/roof_orientation.md) (optional) | Orientation of the roof shape relative to the footprint shape | | `roof_color` | [`HexColor`](../system/hex_color.md) (optional) | The roof color in `#rgb` or `#rrggbb` hex notation | | `roof_height` | `float64` (optional) | Height of the roof in meters.

This is the distance from the base of the roof to its highest point. | diff --git a/docs/schema/reference/buildings/types/_category_.json b/docs/schema/reference/buildings/types/_category_.json new file mode 100644 index 000000000..a3ec08974 --- /dev/null +++ b/docs/schema/reference/buildings/types/_category_.json @@ -0,0 +1,3 @@ +{ + "label": "Types" +} diff --git a/docs/schema/reference/buildings/building_class.md b/docs/schema/reference/buildings/types/building_class.md similarity index 100% rename from docs/schema/reference/buildings/building_class.md rename to docs/schema/reference/buildings/types/building_class.md diff --git a/docs/schema/reference/buildings/building_subtype.md b/docs/schema/reference/buildings/types/building_subtype.md similarity index 100% rename from docs/schema/reference/buildings/building_subtype.md rename to docs/schema/reference/buildings/types/building_subtype.md diff --git a/docs/schema/reference/buildings/facade_material.md b/docs/schema/reference/buildings/types/facade_material.md similarity index 100% rename from docs/schema/reference/buildings/facade_material.md rename to docs/schema/reference/buildings/types/facade_material.md diff --git a/docs/schema/reference/buildings/roof_material.md b/docs/schema/reference/buildings/types/roof_material.md similarity index 100% rename from docs/schema/reference/buildings/roof_material.md rename to docs/schema/reference/buildings/types/roof_material.md diff --git a/docs/schema/reference/buildings/roof_orientation.md b/docs/schema/reference/buildings/types/roof_orientation.md similarity index 100% rename from docs/schema/reference/buildings/roof_orientation.md rename to docs/schema/reference/buildings/types/roof_orientation.md diff --git a/docs/schema/reference/buildings/roof_shape.md b/docs/schema/reference/buildings/types/roof_shape.md similarity index 100% rename from docs/schema/reference/buildings/roof_shape.md rename to docs/schema/reference/buildings/types/roof_shape.md diff --git a/docs/schema/reference/core/_category_.json b/docs/schema/reference/core/_category_.json index f4620ea45..5adbbd204 100644 --- a/docs/schema/reference/core/_category_.json +++ b/docs/schema/reference/core/_category_.json @@ -1,3 +1,4 @@ { - "label": "Core" + "label": "Core", + "position": 7 } diff --git a/docs/schema/reference/divisions/_category_.json b/docs/schema/reference/divisions/_category_.json index 18e395b71..51eecd257 100644 --- a/docs/schema/reference/divisions/_category_.json +++ b/docs/schema/reference/divisions/_category_.json @@ -1,3 +1,4 @@ { - "label": "Divisions" + "label": "Divisions", + "position": 4 } diff --git a/docs/schema/reference/divisions/admin_level.md b/docs/schema/reference/divisions/admin_level.md deleted file mode 100644 index 9d49d931b..000000000 --- a/docs/schema/reference/divisions/admin_level.md +++ /dev/null @@ -1,6 +0,0 @@ -# AdminLevel (`uint8`) - -## Constraints - -- `Ge(ge=0)` (from [`uint8`](../system/primitive/primitives.md)) -- `Le(le=255)` (from [`uint8`](../system/primitive/primitives.md)) diff --git a/docs/schema/reference/divisions/division.md b/docs/schema/reference/divisions/division.md index d8c0d350a..e13982b32 100644 --- a/docs/schema/reference/divisions/division.md +++ b/docs/schema/reference/divisions/division.md @@ -1,3 +1,7 @@ +--- +sidebar_position: 1 +--- + # Division Divisions are recognized official or non-official organizations of people as seen @@ -40,15 +44,15 @@ Examples include countries, provinces, cities, towns, neighborhoods, etc. | `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | | `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset.

This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | | `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | -| `subtype` | [`PlaceType`](place_type.md) | | +| `subtype` | [`PlaceType`](types/place_type.md) | | | `country` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) | ISO 3166-1 alpha-2 country code of the country or country-like entity, that this division represents or belongs to.

If the entity this division represents has a country code, the country property contains it. If it does not, the country property contains the country code of the first division encountered by traversing the parent_division_id chain to the root.

For example:
- The country value for the United States is 'US'
- The country value for New York City is 'US'
- The country value for Puerto Rico, a dependency of the US,
is 'PR'.
- The country value for San Juan, Puerto Rico is 'PR'.

If an entity has an internationally-recognized ISO 3166-1 alpha-2 country code, it should always be used. In cases where the schema requires the code but no internationally-recognized code is available, a synthetic code may be used provided it does not conflict with any internationally-recognized codes. | -| `hierarchies[]` | [`Hierarchy`](hierarchy.md) (list) | Hierarchies in which this division participates.

Every division participates in at least one hierarchy. Most participate in only one. Some divisions may participate in more than one hierarchy, for example if they are claimed by different parent divisions from different political perspectives; or if there are other real-world reasons why the division or one of its ancestors has multiple parents.

The first hierarchy in the list is the default hierarchy, and the second-to-last entry in the default hierarchy (if there is such an entry) always corresponds to the `parent_division_id' property. The ordering of hierarchies after the first one is arbitrary. | -| `hierarchies[].division_id` | [`DivisionId`](division_id.md) | | -| `hierarchies[].subtype` | [`PlaceType`](place_type.md) | | +| `hierarchies[]` | [`Hierarchy`](types/hierarchy.md) (list) | Hierarchies in which this division participates.

Every division participates in at least one hierarchy. Most participate in only one. Some divisions may participate in more than one hierarchy, for example if they are claimed by different parent divisions from different political perspectives; or if there are other real-world reasons why the division or one of its ancestors has multiple parents.

The first hierarchy in the list is the default hierarchy, and the second-to-last entry in the default hierarchy (if there is such an entry) always corresponds to the `parent_division_id' property. The ordering of hierarchies after the first one is arbitrary. | +| `hierarchies[].division_id` | [`DivisionId`](types/division_id.md) | | +| `hierarchies[].subtype` | [`PlaceType`](types/place_type.md) | | | `hierarchies[].name` | [`StrippedString`](../system/stripped_string.md) | Primary name of the division | | `parent_division_id` | [`Id`](../system/ref/id.md) (optional) | Division ID of this division's parent division.

Not allowed for top-level divisions (countries) and required for all other divisions.

The default parent division is the parent division as seen from the default political perspective, if there is one, and is otherwise chosen somewhat arbitrarily. The hierarchies property can be used to inspect the exhaustive list of parent divisions. | -| `admin_level` | [`AdminLevel`](admin_level.md) (optional) | | -| `class` | [`DivisionClass`](division_class.md) (optional) | | +| `admin_level` | [`AdminLevel`](types/admin_level.md) (optional) | | +| `class` | [`DivisionClass`](types/division_class.md) (optional) | | | `local_type` | [`CommonNames`](../core/common_names.md) (map, optional) | Local name for the subtype property, optionally localized.

For example, the Canadian province of Quebec has the subtype 'region', but in the local administrative hierarchy it is referred to as a 'province'. Similarly, the Canadian Yukon territory also has subtype 'region', but is locally called a 'territory'.

This property is localized using a standard Overture names structure. So for example, in Switzerland the top-level administrative subdivision corresponding to subtype 'region' is the canton, which is may be translated in each of Switzerland's official languages as, 'canton' in French, 'kanton' in German, 'cantone' in Italian, and 'chantun' in Romansh. | | `region` | [`RegionCode`](../system/region_code.md) (optional) | ISO 3166-2 principal subdivision code of the subdivision-like entity this division represents or belongs to.

If the entity this division represents has a principal subdivision code, the region property contains it. If it does not, the region property contains the principal subdivision code of the first division encountered by traversing the parent_division_id chain to the root.

For example:
- The region value for the United States is omitted.
- The region value for the U.S. state of New York is 'US-NY'.
- The region value for New York City is 'US-NY', which it
inherits from the state of New York.
- The region value for Puerto Rico is 'US-PR'. | | `perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | Political perspectives from which this division is considered to be an accurate representation.

If this property is absent, then this division is not known to be disputed from any political perspective. Consequently, there is only one division feature representing the entire real world entity.

If this property is present, it means the division represents one of several alternative perspectives on the same real-world entity.

There are two modes of perspective:

1. `accepted_by` means the representation of the division is accepted by the listed entities and would be included on a map drawn from their perspective.

2. `disputed_by` means the representation of the division is disputed by the listed entities and would be excluded from a map drawn from their perspective.

When drawing a map from the perspective of a given country, one would start by gathering all the undisputed divisions (with no `perspectives` property), and then adding to that first all divisions explicitly accepted by the country, and second all divisions not explicitly disputed by the country. | @@ -58,9 +62,9 @@ Examples include countries, provinces, cities, towns, neighborhoods, etc. | `norms.driving_side` | [`Side`](../core/scoping/side.md) (optional) | Side of the road on which vehicles drive in the division. | | `population` | `int32` (optional) | Population of the division | | `capital_division_ids` | [`Id`](../system/ref/id.md) (list, optional) | Division IDs of this division's capital divisions. If present, this property will refer to the division IDs of the capital cities, county seats, etc. of a division. | -| `capital_of_divisions[]` | `list<`[`CapitalOfDivisionItem`](capital_of_division_item.md)`>` (optional) | Division IDs and subtypes of divisions this division is a capital of. | -| `capital_of_divisions[].division_id` | [`DivisionId`](division_id.md) | | -| `capital_of_divisions[].subtype` | [`PlaceType`](place_type.md) | | +| `capital_of_divisions[]` | `list<`[`CapitalOfDivisionItem`](types/capital_of_division_item.md)`>` (optional) | Division IDs and subtypes of divisions this division is a capital of. | +| `capital_of_divisions[].division_id` | [`DivisionId`](types/division_id.md) | | +| `capital_of_divisions[].subtype` | [`PlaceType`](types/place_type.md) | | | `wikidata` | [`WikidataId`](../system/wikidata_id.md) (optional) | | ## Examples diff --git a/docs/schema/reference/divisions/division_area.md b/docs/schema/reference/divisions/division_area.md index 6412c7aa9..7d4584038 100644 --- a/docs/schema/reference/divisions/division_area.md +++ b/docs/schema/reference/divisions/division_area.md @@ -1,3 +1,7 @@ +--- +sidebar_position: 1 +--- + # DivisionArea Division areas are polygons that represent the land or maritime area covered by a @@ -38,14 +42,14 @@ belongs to. | `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | | `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset.

This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | | `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | -| `subtype` | [`PlaceType`](place_type.md) | | +| `subtype` | [`PlaceType`](types/place_type.md) | | | `class` | [`AreaClass`](division_area/area_class.md) | | | `is_land` | `boolean` (optional) | A boolean to indicate whether or not the feature geometry represents the land-clipped, non-maritime boundary. The geometry can be used for map rendering, cartographic display, and similar purposes. | | `is_territorial` | `boolean` (optional) | A boolean to indicate whether or not the feature geometry represents Overture's best approximation of this place's maritime boundary. For coastal places, this would tend to include the water area. The geometry can be used for data processing, reverse-geocoding, and similar purposes. | | `division_id` | [`Id`](../system/ref/id.md) | Division ID of the division this area belongs to. | | `country` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) | ISO 3166-1 alpha-2 country code of the division this area belongs to. | | `region` | [`RegionCode`](../system/region_code.md) (optional) | ISO 3166-2 principal subdivision code of the division this area belongs to. | -| `admin_level` | [`AdminLevel`](admin_level.md) (optional) | | +| `admin_level` | [`AdminLevel`](types/admin_level.md) (optional) | | ## Examples diff --git a/docs/schema/reference/divisions/division_boundary.md b/docs/schema/reference/divisions/division_boundary.md index 5dcd6e183..0f1929771 100644 --- a/docs/schema/reference/divisions/division_boundary.md +++ b/docs/schema/reference/divisions/division_boundary.md @@ -1,3 +1,7 @@ +--- +sidebar_position: 1 +--- + # DivisionBoundary Boundaries represent borders between divisions of the same subtype. @@ -22,14 +26,14 @@ Some boundaries may be disputed by the divisions on one or both sides. | `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | | `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset.

This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | | `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | -| `subtype` | [`PlaceType`](place_type.md) | | +| `subtype` | [`PlaceType`](types/place_type.md) | | | `class` | [`BoundaryClass`](division_boundary/boundary_class.md) | | | `is_land` | `boolean` (optional) | A boolean to indicate whether or not the feature geometry represents the
land-clipped, non-maritime boundary. The geometry can be used for map
rendering, cartographic display, and similar purposes. | | `is_territorial` | `boolean` (optional) | A boolean to indicate whether or not the feature geometry represents
Overture's best approximation of this place's maritime boundary. For
coastal places, this would tend to include the water area. The geometry
can be used for data processing, reverse-geocoding, and similar purposes. | | `division_ids` | [`Id`](../system/ref/id.md) (list) | Identifies the two divisions to the left and right, respectively, of the boundary line. The left- and right-hand sides of the boundary are considered from the perspective of a person standing on the line facing in the direction in which the geometry is oriented, i.e. facing toward the end of the line.

The first array element is the Overture ID of the left division. The second element is the Overture ID of the right division. | | `country` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (optional) | ISO 3166-1 alpha-2 country code of the country or country-like
entity that both sides of the boundary share.

This property will be present on boundaries between two regions, counties,
or similar entities within the same country, but will not be present on boundaries
between two countries or country-like entities. | | `region` | [`RegionCode`](../system/region_code.md) (optional) | ISO 3166-2 principal subdivision code of the subdivision-like
entity that both sides of the boundary share.

This property will be present on boundaries between two counties, localadmins
or similar entities within the same principal subdivision, but will not be
present on boundaries between different principal subdivisions or countries. | -| `admin_level` | [`AdminLevel`](admin_level.md) (optional) | | +| `admin_level` | [`AdminLevel`](types/admin_level.md) (optional) | | | `is_disputed` | `boolean` (optional) | Indicator if there are entities disputing this division boundary.
Information about entities disputing this boundary should be included in perspectives
property.

This property should also be true if boundary between two entities is unclear
and this is "best guess". So having it true and no perspectives gives map creators
reason not to fully trust the boundary, but use it if they have no other. | | `perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | Political perspectives from which this division boundary is considered to be an accurate representation.

If this property is absent, then this boundary is not known to be disputed from any political perspective. Consequently, there is only one boundary feature representing the entire real world entity.

If this property is present, it means the boundary represents one of several alternative perspectives on the same real-world entity.

There are two modes of perspective:

1. `accepted_by` means the representation of the boundary is accepted by the listed entities and would be included on a map drawn from their perspective.

2. `disputed_by` means the representation of the boundary is disputed by the listed entities and would be excluded from a map drawn from their perspective.

When drawing a map from the perspective of a given country, one would start by gathering all the undisputed boundary (with no `perspectives` property), and then adding to that first all boundary explicitly accepted by the country, and second all boundary not explicitly disputed by the country. | | `perspectives.mode` | [`PerspectiveMode`](../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | diff --git a/docs/schema/reference/divisions/types/_category_.json b/docs/schema/reference/divisions/types/_category_.json new file mode 100644 index 000000000..a3ec08974 --- /dev/null +++ b/docs/schema/reference/divisions/types/_category_.json @@ -0,0 +1,3 @@ +{ + "label": "Types" +} diff --git a/docs/schema/reference/divisions/types/admin_level.md b/docs/schema/reference/divisions/types/admin_level.md new file mode 100644 index 000000000..f0dc2323d --- /dev/null +++ b/docs/schema/reference/divisions/types/admin_level.md @@ -0,0 +1,6 @@ +# AdminLevel (`uint8`) + +## Constraints + +- `Ge(ge=0)` (from [`uint8`](../../system/primitive/primitives.md)) +- `Le(le=255)` (from [`uint8`](../../system/primitive/primitives.md)) diff --git a/docs/schema/reference/divisions/capital_of_division_item.md b/docs/schema/reference/divisions/types/capital_of_division_item.md similarity index 100% rename from docs/schema/reference/divisions/capital_of_division_item.md rename to docs/schema/reference/divisions/types/capital_of_division_item.md diff --git a/docs/schema/reference/divisions/division_class.md b/docs/schema/reference/divisions/types/division_class.md similarity index 100% rename from docs/schema/reference/divisions/division_class.md rename to docs/schema/reference/divisions/types/division_class.md diff --git a/docs/schema/reference/divisions/division_id.md b/docs/schema/reference/divisions/types/division_id.md similarity index 59% rename from docs/schema/reference/divisions/division_id.md rename to docs/schema/reference/divisions/types/division_id.md index 0b2b9468e..1c8d69ec8 100644 --- a/docs/schema/reference/divisions/division_id.md +++ b/docs/schema/reference/divisions/types/division_id.md @@ -3,5 +3,5 @@ ## Constraints - `MinLen(min_length=1)` -- `MinLen(min_length=1)` (from [`Id`](../system/ref/id.md)) +- `MinLen(min_length=1)` (from [`Id`](../../system/ref/id.md)) - `NoWhitespaceConstraint` diff --git a/docs/schema/reference/divisions/hierarchy.md b/docs/schema/reference/divisions/types/hierarchy.md similarity index 100% rename from docs/schema/reference/divisions/hierarchy.md rename to docs/schema/reference/divisions/types/hierarchy.md diff --git a/docs/schema/reference/divisions/hierarchy_item.md b/docs/schema/reference/divisions/types/hierarchy_item.md similarity index 69% rename from docs/schema/reference/divisions/hierarchy_item.md rename to docs/schema/reference/divisions/types/hierarchy_item.md index 1757cf49d..2fdbc2400 100644 --- a/docs/schema/reference/divisions/hierarchy_item.md +++ b/docs/schema/reference/divisions/types/hierarchy_item.md @@ -8,4 +8,4 @@ One division in a hierarchy. |-----:|:----:|-------------| | `division_id` | [`DivisionId`](division_id.md) | | | `subtype` | [`PlaceType`](place_type.md) | | -| `name` | [`StrippedString`](../system/stripped_string.md) | Primary name of the division | +| `name` | [`StrippedString`](../../system/stripped_string.md) | Primary name of the division | diff --git a/docs/schema/reference/divisions/place_type.md b/docs/schema/reference/divisions/types/place_type.md similarity index 100% rename from docs/schema/reference/divisions/place_type.md rename to docs/schema/reference/divisions/types/place_type.md diff --git a/docs/schema/reference/places/_category_.json b/docs/schema/reference/places/_category_.json index 370ffb08f..69d3715d6 100644 --- a/docs/schema/reference/places/_category_.json +++ b/docs/schema/reference/places/_category_.json @@ -1,3 +1,4 @@ { - "label": "Places" + "label": "Places", + "position": 5 } diff --git a/docs/schema/reference/places/brand.md b/docs/schema/reference/places/brand.md deleted file mode 100644 index 35df2d833..000000000 --- a/docs/schema/reference/places/brand.md +++ /dev/null @@ -1,23 +0,0 @@ -# Brand - -A brand associated with a place. - -A location with multiple brands is modeled as multiple separate places, each with its own brand. - -## Fields - -| Name | Type | Description | -|-----:|:----:|-------------| -| `names` | [`Names`](../core/names.md) (optional) | | -| `names.primary` | [`StrippedString`](../system/stripped_string.md) | The most commonly used name. | -| `names.common` | [`CommonNames`](../core/common_names.md) (map, optional) | | -| `names.rules[]` | `list<`[`NameRule`](../core/name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | -| `names.rules[].value` | [`StrippedString`](../system/stripped_string.md) | The actual name value. | -| `names.rules[].variant` | [`NameVariant`](../core/name_variant.md) | The name variant for this name rule. | -| `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47
language tag. | -| `names.rules[].perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | | -| `names.rules[].perspectives.mode` | [`PerspectiveMode`](../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | -| `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | -| `names.rules[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | -| `names.rules[].side` | [`Side`](../core/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | -| `wikidata` | [`WikidataId`](../system/wikidata_id.md) (optional) | | diff --git a/docs/schema/reference/places/categories.md b/docs/schema/reference/places/categories.md deleted file mode 100644 index 225d9be0f..000000000 --- a/docs/schema/reference/places/categories.md +++ /dev/null @@ -1,12 +0,0 @@ -# Categories - -Categories a place belongs to. - -Complete list is available on GitHub: https://github.com/OvertureMaps/schema/blob/main/docs/schema/concepts/by-theme/places/overture_categories.csv - -## Fields - -| Name | Type | Description | -|-----:|:----:|-------------| -| `primary` | [`SnakeCaseString`](../system/snake_case_string.md) | The primary or main category of the place. | -| `alternate` | [`SnakeCaseString`](../system/snake_case_string.md) (list, optional) | Alternate categories of the place.

Some places might fit into two categories, e.g., a book store and a coffee shop. In
these cases, the primary category can be augmented with additional categories. | diff --git a/docs/schema/reference/places/place.md b/docs/schema/reference/places/place.md index b8e38e6cd..df79a1636 100644 --- a/docs/schema/reference/places/place.md +++ b/docs/schema/reference/places/place.md @@ -1,3 +1,7 @@ +--- +sidebar_position: 1 +--- + # Place Places are point representations of real-world facilities, businesses, services, or amenities. @@ -20,12 +24,12 @@ Places are point representations of real-world facilities, businesses, services, | `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | | `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset.

This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | | `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | -| `operating_status` | [`OperatingStatus`](operating_status.md) | An indication of whether a place is: in continued operation, in a temporary
operating hiatus, or closed permanently.

This is not an indication of opening hours or that the place is open/closed at the
current time-of-day or day-of-week.

When `operating_status` is `"permanently_closed"`, the `confidence` field will be
set to 0. | -| `categories` | [`Categories`](categories.md) (optional) | | +| `operating_status` | [`OperatingStatus`](types/operating_status.md) | An indication of whether a place is: in continued operation, in a temporary
operating hiatus, or closed permanently.

This is not an indication of opening hours or that the place is open/closed at the
current time-of-day or day-of-week.

When `operating_status` is `"permanently_closed"`, the `confidence` field will be
set to 0. | +| `categories` | [`Categories`](types/categories.md) (optional) | | | `categories.primary` | [`SnakeCaseString`](../system/snake_case_string.md) | The primary or main category of the place. | | `categories.alternate` | [`SnakeCaseString`](../system/snake_case_string.md) (list, optional) | Alternate categories of the place.

Some places might fit into two categories, e.g., a book store and a coffee shop. In
these cases, the primary category can be augmented with additional categories. | | `basic_category` | [`SnakeCaseString`](../system/snake_case_string.md) (optional) | The basic level category of a place.

This field classifies places into categories at a level that most people find
intuitive. The full list of possible values it may hold can be found at (TODO).

The basic level category, or simply basic category, is based on a cognitive science
model use in taxonomy and ontology development. The idea is to provide the category
name at the level of generality that is preferred by humans in learning and memory
tasks. This category to be roughly in the middle of the general-to-specific category
hierarchy.

The full list of basic level categories is available at https://docs.overturemaps.org/guides/places/ | -| `taxonomy` | [`Taxonomy`](taxonomy.md) (optional) | A structured representation of the place's category within the Overture taxonomy.

Provides the primary classification, full hierarchy path, and alternate categories. | +| `taxonomy` | [`Taxonomy`](types/taxonomy.md) (optional) | A structured representation of the place's category within the Overture taxonomy.

Provides the primary classification, full hierarchy path, and alternate categories. | | `taxonomy.primary` | [`SnakeCaseString`](../system/snake_case_string.md) | The primary, or most specific, category known about this place.

The `primary` category value must always equal the last or rightmost entry in the `hierarchy` field. | | `taxonomy.hierarchy` | [`SnakeCaseString`](../system/snake_case_string.md) (list) | The full primary hierarchy of categories known for this place, ordered from most general to most specific.
An example hierarchy might be: `["food_and_drink", "restaurant", "casual_eatery", "gas_station_sushi"]`.

The rightmost, or most specific, value in the `hierarchy` must always be equal to the `primary` field.
The basic level category of the place will typically be found in the middle of the primary hierarchy.
The primary hierarchy does not include any of the alternate categories found in the `alternates` field. | | `taxonomy.alternates` | [`SnakeCaseString`](../system/snake_case_string.md) (list, optional) | Unordered list of additional categories that are known for this
place but that are not part of the primary category hierarchy.

Alternate categories allow a more complete picture of the place
to be surfaced when it fits multiple unconnected branches in the
taxonomy. For example a gas station that also sells groceries
might have primary category of "gas_station" with an alternate
of "grocery_store".

Alternate categories are not part of the primary hierarchy or
another alternate category's hierarchy.
In other words, if a category is a parent in the hierarchy of another category,
that category can't be a primary or alternate category itself.

Note as well that this field is an unordered list of extra
categories and does not represent a hierarchy. | @@ -34,7 +38,7 @@ Places are point representations of real-world facilities, businesses, services, | `socials` | `list` (optional) | The social media URLs of the place. | | `emails` | `list` (optional) | The email addresses of the place. | | `phones` | [`PhoneNumber`](../system/phone_number.md) (list, optional) | The phone numbers of the place. | -| `brand` | [`Brand`](brand.md) (optional) | The brand associated with the place. | +| `brand` | [`Brand`](types/brand.md) (optional) | The brand associated with the place. | | `brand.names` | [`Names`](../core/names.md) (optional) | | | `brand.names.primary` | [`StrippedString`](../system/stripped_string.md) | The most commonly used name. | | `brand.names.common` | [`CommonNames`](../core/common_names.md) (map, optional) | | diff --git a/docs/schema/reference/places/taxonomy.md b/docs/schema/reference/places/taxonomy.md deleted file mode 100644 index cc96b103c..000000000 --- a/docs/schema/reference/places/taxonomy.md +++ /dev/null @@ -1,13 +0,0 @@ -# Taxonomy - -A structured representation of the place's category within the Overture taxonomy. - -Provides the primary classification, full hierarchy path, and alternate categories. - -## Fields - -| Name | Type | Description | -|-----:|:----:|-------------| -| `primary` | [`SnakeCaseString`](../system/snake_case_string.md) | The primary, or most specific, category known about this place.

The `primary` category value must always equal the last or rightmost entry in the `hierarchy` field. | -| `hierarchy` | [`SnakeCaseString`](../system/snake_case_string.md) (list) | The full primary hierarchy of categories known for this place, ordered from most general to most specific.
An example hierarchy might be: `["food_and_drink", "restaurant", "casual_eatery", "gas_station_sushi"]`.

The rightmost, or most specific, value in the `hierarchy` must always be equal to the `primary` field.
The basic level category of the place will typically be found in the middle of the primary hierarchy.
The primary hierarchy does not include any of the alternate categories found in the `alternates` field. | -| `alternates` | [`SnakeCaseString`](../system/snake_case_string.md) (list, optional) | Unordered list of additional categories that are known for this
place but that are not part of the primary category hierarchy.

Alternate categories allow a more complete picture of the place
to be surfaced when it fits multiple unconnected branches in the
taxonomy. For example a gas station that also sells groceries
might have primary category of "gas_station" with an alternate
of "grocery_store".

Alternate categories are not part of the primary hierarchy or
another alternate category's hierarchy.
In other words, if a category is a parent in the hierarchy of another category,
that category can't be a primary or alternate category itself.

Note as well that this field is an unordered list of extra
categories and does not represent a hierarchy. | diff --git a/docs/schema/reference/places/types/_category_.json b/docs/schema/reference/places/types/_category_.json new file mode 100644 index 000000000..a3ec08974 --- /dev/null +++ b/docs/schema/reference/places/types/_category_.json @@ -0,0 +1,3 @@ +{ + "label": "Types" +} diff --git a/docs/schema/reference/places/types/brand.md b/docs/schema/reference/places/types/brand.md new file mode 100644 index 000000000..ab6796474 --- /dev/null +++ b/docs/schema/reference/places/types/brand.md @@ -0,0 +1,23 @@ +# Brand + +A brand associated with a place. + +A location with multiple brands is modeled as multiple separate places, each with its own brand. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `names` | [`Names`](../../core/names.md) (optional) | | +| `names.primary` | [`StrippedString`](../../system/stripped_string.md) | The most commonly used name. | +| `names.common` | [`CommonNames`](../../core/common_names.md) (map, optional) | | +| `names.rules[]` | `list<`[`NameRule`](../../core/name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | +| `names.rules[].value` | [`StrippedString`](../../system/stripped_string.md) | The actual name value. | +| `names.rules[].variant` | [`NameVariant`](../../core/name_variant.md) | The name variant for this name rule. | +| `names.rules[].language` | [`LanguageTag`](../../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47
language tag. | +| `names.rules[].perspectives` | [`Perspectives`](../../core/perspectives.md) (optional) | | +| `names.rules[].perspectives.mode` | [`PerspectiveMode`](../../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | +| `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | +| `names.rules[].between` | [`LinearlyReferencedRange`](../../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | +| `names.rules[].side` | [`Side`](../../core/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | +| `wikidata` | [`WikidataId`](../../system/wikidata_id.md) (optional) | | diff --git a/docs/schema/reference/places/types/categories.md b/docs/schema/reference/places/types/categories.md new file mode 100644 index 000000000..b4ab3432b --- /dev/null +++ b/docs/schema/reference/places/types/categories.md @@ -0,0 +1,12 @@ +# Categories + +Categories a place belongs to. + +Complete list is available on GitHub: https://github.com/OvertureMaps/schema/blob/main/docs/schema/concepts/by-theme/places/overture_categories.csv + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `primary` | [`SnakeCaseString`](../../system/snake_case_string.md) | The primary or main category of the place. | +| `alternate` | [`SnakeCaseString`](../../system/snake_case_string.md) (list, optional) | Alternate categories of the place.

Some places might fit into two categories, e.g., a book store and a coffee shop. In
these cases, the primary category can be augmented with additional categories. | diff --git a/docs/schema/reference/places/operating_status.md b/docs/schema/reference/places/types/operating_status.md similarity index 100% rename from docs/schema/reference/places/operating_status.md rename to docs/schema/reference/places/types/operating_status.md diff --git a/docs/schema/reference/places/types/taxonomy.md b/docs/schema/reference/places/types/taxonomy.md new file mode 100644 index 000000000..6bdc8376d --- /dev/null +++ b/docs/schema/reference/places/types/taxonomy.md @@ -0,0 +1,13 @@ +# Taxonomy + +A structured representation of the place's category within the Overture taxonomy. + +Provides the primary classification, full hierarchy path, and alternate categories. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `primary` | [`SnakeCaseString`](../../system/snake_case_string.md) | The primary, or most specific, category known about this place.

The `primary` category value must always equal the last or rightmost entry in the `hierarchy` field. | +| `hierarchy` | [`SnakeCaseString`](../../system/snake_case_string.md) (list) | The full primary hierarchy of categories known for this place, ordered from most general to most specific.
An example hierarchy might be: `["food_and_drink", "restaurant", "casual_eatery", "gas_station_sushi"]`.

The rightmost, or most specific, value in the `hierarchy` must always be equal to the `primary` field.
The basic level category of the place will typically be found in the middle of the primary hierarchy.
The primary hierarchy does not include any of the alternate categories found in the `alternates` field. | +| `alternates` | [`SnakeCaseString`](../../system/snake_case_string.md) (list, optional) | Unordered list of additional categories that are known for this
place but that are not part of the primary category hierarchy.

Alternate categories allow a more complete picture of the place
to be surfaced when it fits multiple unconnected branches in the
taxonomy. For example a gas station that also sells groceries
might have primary category of "gas_station" with an alternate
of "grocery_store".

Alternate categories are not part of the primary hierarchy or
another alternate category's hierarchy.
In other words, if a category is a parent in the hierarchy of another category,
that category can't be a primary or alternate category itself.

Note as well that this field is an unordered list of extra
categories and does not represent a hierarchy. | diff --git a/docs/schema/reference/system/_category_.json b/docs/schema/reference/system/_category_.json index 4c0c931b3..72961fccf 100644 --- a/docs/schema/reference/system/_category_.json +++ b/docs/schema/reference/system/_category_.json @@ -1,3 +1,4 @@ { - "label": "System" + "label": "System", + "position": 8 } diff --git a/docs/schema/reference/transportation/_category_.json b/docs/schema/reference/transportation/_category_.json index 6e81a7f3c..597025adb 100644 --- a/docs/schema/reference/transportation/_category_.json +++ b/docs/schema/reference/transportation/_category_.json @@ -1,3 +1,4 @@ { - "label": "Transportation" + "label": "Transportation", + "position": 6 } diff --git a/docs/schema/reference/transportation/access_restriction_rule.md b/docs/schema/reference/transportation/access_restriction_rule.md deleted file mode 100644 index 1c7d31ce0..000000000 --- a/docs/schema/reference/transportation/access_restriction_rule.md +++ /dev/null @@ -1,15 +0,0 @@ -# AccessRestrictionRule - -## Fields - -| Name | Type | Description | -|-----:|:----:|-------------| -| `access_type` | [`AccessType`](access_type.md) | | -| `between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing AccessRestrictionRule applies to. | -| `when` | [`AccessRestrictionRule.When`](access_restriction_rule.when.md) (optional) | Scopes for AccessRestrictionRule: Scope.HEADING, Scope.TEMPORAL, Scope.TRAVEL MODE, Scope.PURPOSE OF USE, Scope.RECOGNIZED STATUS and Scope.VEHICLE | -| `when.heading` | [`Heading`](../core/scoping/heading.md) (optional) | The heading, either forward or backward, that the containing AccessRestrictionRule applies to. | -| `when.during` | [`OpeningHours`](../core/scoping/opening_hours.md) (optional) | The recurring time span, in the OpenStreetMap opening hours format, that the containing AccessRestrictionRule applies to. For the OSM opening hours specification, see https://wiki.openstreetmap.org/wiki/Key:opening_hours/specification. | -| `when.mode` | `list<`[`TravelMode`](../core/scoping/travel_mode.md)`>` (optional) | A list of one or more travel modes, such as car, truck, or foot, that the containing AccessRestrictionRule applies to. | -| `when.using` | `list<`[`PurposeOfUse`](../core/scoping/purpose_of_use.md)`>` (optional) | A list of one or more usage purposes, such as delivery or arrival at final destination, that the containing AccessRestrictionRule applies to. | -| `when.recognized` | `list<`[`RecognizedStatus`](../core/scoping/recognized_status.md)`>` (optional) | A list of one or more recognized status values, such as employee or student, that the containing AccessRestrictionRule applies to. | -| `when.vehicle` | `list` (optional) | A list of one or more vehicle parameters that limit the vehicles the containing AccessRestrictionRule applies to. | diff --git a/docs/schema/reference/transportation/access_restriction_rule.when.md b/docs/schema/reference/transportation/access_restriction_rule.when.md deleted file mode 100644 index 7bc5299ee..000000000 --- a/docs/schema/reference/transportation/access_restriction_rule.when.md +++ /dev/null @@ -1,14 +0,0 @@ -# AccessRestrictionRule.When - -Scopes for AccessRestrictionRule: Scope.HEADING, Scope.TEMPORAL, Scope.TRAVEL MODE, Scope.PURPOSE OF USE, Scope.RECOGNIZED STATUS and Scope.VEHICLE - -## Fields - -| Name | Type | Description | -|-----:|:----:|-------------| -| `heading` | [`Heading`](../core/scoping/heading.md) (optional) | The heading, either forward or backward, that the containing AccessRestrictionRule applies to. | -| `during` | [`OpeningHours`](../core/scoping/opening_hours.md) (optional) | The recurring time span, in the OpenStreetMap opening hours format, that the containing AccessRestrictionRule applies to. For the OSM opening hours specification, see https://wiki.openstreetmap.org/wiki/Key:opening_hours/specification. | -| `mode` | `list<`[`TravelMode`](../core/scoping/travel_mode.md)`>` (optional) | A list of one or more travel modes, such as car, truck, or foot, that the containing AccessRestrictionRule applies to. | -| `using` | `list<`[`PurposeOfUse`](../core/scoping/purpose_of_use.md)`>` (optional) | A list of one or more usage purposes, such as delivery or arrival at final destination, that the containing AccessRestrictionRule applies to. | -| `recognized` | `list<`[`RecognizedStatus`](../core/scoping/recognized_status.md)`>` (optional) | A list of one or more recognized status values, such as employee or student, that the containing AccessRestrictionRule applies to. | -| `vehicle` | `list` (optional) | A list of one or more vehicle parameters that limit the vehicles the containing AccessRestrictionRule applies to. | diff --git a/docs/schema/reference/transportation/connector.md b/docs/schema/reference/transportation/connector.md index b71b5c2e5..7ce21d767 100644 --- a/docs/schema/reference/transportation/connector.md +++ b/docs/schema/reference/transportation/connector.md @@ -1,3 +1,7 @@ +--- +sidebar_position: 1 +--- + # Connector Connectors create physical connections between segments. diff --git a/docs/schema/reference/transportation/connector_reference.md b/docs/schema/reference/transportation/connector_reference.md deleted file mode 100644 index 000d1d5c0..000000000 --- a/docs/schema/reference/transportation/connector_reference.md +++ /dev/null @@ -1,11 +0,0 @@ -# ConnectorReference - -Contains the GERS ID and relative position between 0 and 1 of a connector feature along the -segment. - -## Fields - -| Name | Type | Description | -|-----:|:----:|-------------| -| `connector_id` | [`Id`](../system/ref/id.md) | | -| `at` | [`LinearlyReferencedPosition`](../core/scoping/linearly_referenced_position.md) (optional) | The linearly-referenced position on the geometry, specified as a percentage displacement from the start of the geometry, that the containing ConnectorReference applies to. | diff --git a/docs/schema/reference/transportation/destination_rule.md b/docs/schema/reference/transportation/destination_rule.md deleted file mode 100644 index 142c35a10..000000000 --- a/docs/schema/reference/transportation/destination_rule.md +++ /dev/null @@ -1,16 +0,0 @@ -# DestinationRule - -## Fields - -| Name | Type | Description | -|-----:|:----:|-------------| -| `from_connector_id` | [`Id`](../system/ref/id.md) | Identifies the point of physical connection on this segment before which the destination sign or marking is visible. | -| `to_connector_id` | [`Id`](../system/ref/id.md) | Identifies the point of physical connection on the segment identified by 'to_segment_id' to transition to for reaching the destination(s). | -| `to_segment_id` | [`Id`](../system/ref/id.md) | Identifies the segment to transition to reach the destination(s) labeled on the sign or marking. | -| `final_heading` | [`Heading`](../core/scoping/heading.md) | Direction of travel on the segment identified by 'to_segment_id' that leads to the destination. | -| `labels[]` | `list<`[`DestinationLabels`](destination_labels.md)`>` (optional) | Labeled destinations that can be reached by following the segment. | -| `labels[].value` | [`StrippedString`](../system/stripped_string.md) | Names the object that is reached | -| `labels[].type` | [`DestinationLabelType`](destination_label_type.md) | | -| `symbols` | `list<`[`DestinationSignSymbol`](destination_sign_symbol.md)`>` (optional) | A collection of symbols or icons present on the sign next to current destination label. | -| `when` | [`DestinationRule.When`](destination_rule.when.md) (optional) | Scope for DestinationRule: | -| `when.heading` | [`Heading`](../core/scoping/heading.md) | The heading, either forward or backward, that the containing DestinationRule applies to. | diff --git a/docs/schema/reference/transportation/destination_rule.when.md b/docs/schema/reference/transportation/destination_rule.when.md deleted file mode 100644 index d500b65c5..000000000 --- a/docs/schema/reference/transportation/destination_rule.when.md +++ /dev/null @@ -1,9 +0,0 @@ -# DestinationRule.When - -Scope for DestinationRule: - -## Fields - -| Name | Type | Description | -|-----:|:----:|-------------| -| `heading` | [`Heading`](../core/scoping/heading.md) | The heading, either forward or backward, that the containing DestinationRule applies to. | diff --git a/docs/schema/reference/transportation/level_rule.md b/docs/schema/reference/transportation/level_rule.md deleted file mode 100644 index 3bba48c39..000000000 --- a/docs/schema/reference/transportation/level_rule.md +++ /dev/null @@ -1,11 +0,0 @@ -# LevelRule - -A single level rule defining the Z-order, i.e. stacking order, applicable within a given scope -on the road segment. - -## Fields - -| Name | Type | Description | -|-----:|:----:|-------------| -| `value` | [`Level`](../core/level.md) | | -| `between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing LevelRule applies to. | diff --git a/docs/schema/reference/transportation/prohibited_transition_rule.md b/docs/schema/reference/transportation/prohibited_transition_rule.md deleted file mode 100644 index 8eeacd20a..000000000 --- a/docs/schema/reference/transportation/prohibited_transition_rule.md +++ /dev/null @@ -1,18 +0,0 @@ -# ProhibitedTransitionRule - -## Fields - -| Name | Type | Description | -|-----:|:----:|-------------| -| `sequence[]` | `list<`[`SequenceEntry`](sequence_entry.md)`>` | Ordered sequence of connector/segment pairs that it is prohibited to follow from this segment. | -| `sequence[].connector_id` | [`Id`](../system/ref/id.md) | Identifies the point of physical connection between the previous segment in the sequence and the segment in this sequence entry. | -| `sequence[].segment_id` | [`Id`](../system/ref/id.md) | Identifies the segment that the previous segment in the sequence is physically connected to via the sequence entry's connector. | -| `final_heading` | [`Heading`](../core/scoping/heading.md) | Direction of travel that is prohibited on the destination segment of the sequence. | -| `between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing ProhibitedTransitionRule applies to. | -| `when` | [`ProhibitedTransitionRule.When`](prohibited_transition_rule.when.md) (optional) | Scopes for ProhibitedTransitionRule: Scope.HEADING, Scope.TEMPORAL, Scope.TRAVEL MODE, Scope.PURPOSE OF USE, Scope.RECOGNIZED STATUS and Scope.VEHICLE | -| `when.heading` | [`Heading`](../core/scoping/heading.md) (optional) | The heading, either forward or backward, that the containing ProhibitedTransitionRule applies to. | -| `when.during` | [`OpeningHours`](../core/scoping/opening_hours.md) (optional) | The recurring time span, in the OpenStreetMap opening hours format, that the containing ProhibitedTransitionRule applies to. For the OSM opening hours specification, see https://wiki.openstreetmap.org/wiki/Key:opening_hours/specification. | -| `when.mode` | `list<`[`TravelMode`](../core/scoping/travel_mode.md)`>` (optional) | A list of one or more travel modes, such as car, truck, or foot, that the containing ProhibitedTransitionRule applies to. | -| `when.using` | `list<`[`PurposeOfUse`](../core/scoping/purpose_of_use.md)`>` (optional) | A list of one or more usage purposes, such as delivery or arrival at final destination, that the containing ProhibitedTransitionRule applies to. | -| `when.recognized` | `list<`[`RecognizedStatus`](../core/scoping/recognized_status.md)`>` (optional) | A list of one or more recognized status values, such as employee or student, that the containing ProhibitedTransitionRule applies to. | -| `when.vehicle` | `list` (optional) | A list of one or more vehicle parameters that limit the vehicles the containing ProhibitedTransitionRule applies to. | diff --git a/docs/schema/reference/transportation/prohibited_transition_rule.when.md b/docs/schema/reference/transportation/prohibited_transition_rule.when.md deleted file mode 100644 index 67edfa4a4..000000000 --- a/docs/schema/reference/transportation/prohibited_transition_rule.when.md +++ /dev/null @@ -1,14 +0,0 @@ -# ProhibitedTransitionRule.When - -Scopes for ProhibitedTransitionRule: Scope.HEADING, Scope.TEMPORAL, Scope.TRAVEL MODE, Scope.PURPOSE OF USE, Scope.RECOGNIZED STATUS and Scope.VEHICLE - -## Fields - -| Name | Type | Description | -|-----:|:----:|-------------| -| `heading` | [`Heading`](../core/scoping/heading.md) (optional) | The heading, either forward or backward, that the containing ProhibitedTransitionRule applies to. | -| `during` | [`OpeningHours`](../core/scoping/opening_hours.md) (optional) | The recurring time span, in the OpenStreetMap opening hours format, that the containing ProhibitedTransitionRule applies to. For the OSM opening hours specification, see https://wiki.openstreetmap.org/wiki/Key:opening_hours/specification. | -| `mode` | `list<`[`TravelMode`](../core/scoping/travel_mode.md)`>` (optional) | A list of one or more travel modes, such as car, truck, or foot, that the containing ProhibitedTransitionRule applies to. | -| `using` | `list<`[`PurposeOfUse`](../core/scoping/purpose_of_use.md)`>` (optional) | A list of one or more usage purposes, such as delivery or arrival at final destination, that the containing ProhibitedTransitionRule applies to. | -| `recognized` | `list<`[`RecognizedStatus`](../core/scoping/recognized_status.md)`>` (optional) | A list of one or more recognized status values, such as employee or student, that the containing ProhibitedTransitionRule applies to. | -| `vehicle` | `list` (optional) | A list of one or more vehicle parameters that limit the vehicles the containing ProhibitedTransitionRule applies to. | diff --git a/docs/schema/reference/transportation/rail_flag_rule.md b/docs/schema/reference/transportation/rail_flag_rule.md deleted file mode 100644 index 91079046e..000000000 --- a/docs/schema/reference/transportation/rail_flag_rule.md +++ /dev/null @@ -1,10 +0,0 @@ -# RailFlagRule - -Rail-specific flag rule with geometric scoping only. - -## Fields - -| Name | Type | Description | -|-----:|:----:|-------------| -| `values` | `list<`[`RailFlag`](rail_flag.md)`>` | | -| `between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing RailFlagRule applies to. | diff --git a/docs/schema/reference/transportation/road_flag_rule.md b/docs/schema/reference/transportation/road_flag_rule.md deleted file mode 100644 index 7febcc3e5..000000000 --- a/docs/schema/reference/transportation/road_flag_rule.md +++ /dev/null @@ -1,10 +0,0 @@ -# RoadFlagRule - -Road-specific flag rule with geometric scoping only. - -## Fields - -| Name | Type | Description | -|-----:|:----:|-------------| -| `values` | `list<`[`RoadFlag`](road_flag.md)`>` | | -| `between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing RoadFlagRule applies to. | diff --git a/docs/schema/reference/transportation/route_reference.md b/docs/schema/reference/transportation/route_reference.md deleted file mode 100644 index 1fcca6564..000000000 --- a/docs/schema/reference/transportation/route_reference.md +++ /dev/null @@ -1,14 +0,0 @@ -# RouteReference - -Route reference with linear referencing support. - -## Fields - -| Name | Type | Description | -|-----:|:----:|-------------| -| `name` | [`StrippedString`](../system/stripped_string.md) (optional) | Full name of the route | -| `network` | [`StrippedString`](../system/stripped_string.md) (optional) | Name of the highway system this route belongs to | -| `ref` | [`StrippedString`](../system/stripped_string.md) (optional) | Code or number used to reference the route | -| `symbol` | [`StrippedString`](../system/stripped_string.md) (optional) | URL or description of route signage | -| `wikidata` | [`WikidataId`](../system/wikidata_id.md) (optional) | | -| `between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing RouteReference applies to. | diff --git a/docs/schema/reference/transportation/segment.md b/docs/schema/reference/transportation/segment.md index f8781b2a3..8f516bdcd 100644 --- a/docs/schema/reference/transportation/segment.md +++ b/docs/schema/reference/transportation/segment.md @@ -1,3 +1,7 @@ +--- +sidebar_position: 1 +--- + # Segment ## Fields @@ -18,32 +22,32 @@ | `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | | `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset.

This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | | `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | -| `subtype` | [`Subtype`](subtype.md) | Broad category of transportation segment. | -| `access_restrictions[]` | [`AccessRules`](access_rules.md) (list, optional) | | -| `access_restrictions[].access_type` | [`AccessType`](access_type.md) | | +| `subtype` | [`Subtype`](types/subtype.md) | Broad category of transportation segment. | +| `access_restrictions[]` | [`AccessRules`](types/access_rules.md) (list, optional) | | +| `access_restrictions[].access_type` | [`AccessType`](types/access_type.md) | | | `access_restrictions[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing AccessRestrictionRule applies to. | -| `access_restrictions[].when` | [`AccessRestrictionRule.When`](access_restriction_rule.when.md) (optional) | Scopes for AccessRestrictionRule: Scope.HEADING, Scope.TEMPORAL, Scope.TRAVEL MODE, Scope.PURPOSE OF USE, Scope.RECOGNIZED STATUS and Scope.VEHICLE | +| `access_restrictions[].when` | [`AccessRestrictionRule.When`](types/access_restriction_rule.when.md) (optional) | Scopes for AccessRestrictionRule: Scope.HEADING, Scope.TEMPORAL, Scope.TRAVEL MODE, Scope.PURPOSE OF USE, Scope.RECOGNIZED STATUS and Scope.VEHICLE | | `access_restrictions[].when.heading` | [`Heading`](../core/scoping/heading.md) (optional) | The heading, either forward or backward, that the containing AccessRestrictionRule applies to. | | `access_restrictions[].when.during` | [`OpeningHours`](../core/scoping/opening_hours.md) (optional) | The recurring time span, in the OpenStreetMap opening hours format, that the containing AccessRestrictionRule applies to. For the OSM opening hours specification, see https://wiki.openstreetmap.org/wiki/Key:opening_hours/specification. | | `access_restrictions[].when.mode` | `list<`[`TravelMode`](../core/scoping/travel_mode.md)`>` (optional) | A list of one or more travel modes, such as car, truck, or foot, that the containing AccessRestrictionRule applies to. | | `access_restrictions[].when.using` | `list<`[`PurposeOfUse`](../core/scoping/purpose_of_use.md)`>` (optional) | A list of one or more usage purposes, such as delivery or arrival at final destination, that the containing AccessRestrictionRule applies to. | | `access_restrictions[].when.recognized` | `list<`[`RecognizedStatus`](../core/scoping/recognized_status.md)`>` (optional) | A list of one or more recognized status values, such as employee or student, that the containing AccessRestrictionRule applies to. | | `access_restrictions[].when.vehicle` | `list` (optional) | A list of one or more vehicle parameters that limit the vehicles the containing AccessRestrictionRule applies to. | -| `connectors[]` | `list<`[`ConnectorReference`](connector_reference.md)`>` (optional) | List of connectors which this segment is physically connected to and their relative location. Each connector is a possible routing decision point, meaning it defines a place along the segment in which there is possibility to transition to other segments which share the same connector. | +| `connectors[]` | `list<`[`ConnectorReference`](types/connector_reference.md)`>` (optional) | List of connectors which this segment is physically connected to and their relative location. Each connector is a possible routing decision point, meaning it defines a place along the segment in which there is possibility to transition to other segments which share the same connector. | | `connectors[].connector_id` | [`Id`](../system/ref/id.md) | | | `connectors[].at` | [`LinearlyReferencedPosition`](../core/scoping/linearly_referenced_position.md) (optional) | The linearly-referenced position on the geometry, specified as a percentage displacement from the start of the geometry, that the containing ConnectorReference applies to. | -| `level_rules[]` | [`LevelRules`](level_rules.md) (list, optional) | | +| `level_rules[]` | [`LevelRules`](types/level_rules.md) (list, optional) | | | `level_rules[].value` | [`Level`](../core/level.md) | | | `level_rules[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing LevelRule applies to. | -| `routes[]` | [`Routes`](routes.md) (list, optional) | | +| `routes[]` | [`Routes`](types/routes.md) (list, optional) | | | `routes[].name` | [`StrippedString`](../system/stripped_string.md) (optional) | Full name of the route | | `routes[].network` | [`StrippedString`](../system/stripped_string.md) (optional) | Name of the highway system this route belongs to | | `routes[].ref` | [`StrippedString`](../system/stripped_string.md) (optional) | Code or number used to reference the route | | `routes[].symbol` | [`StrippedString`](../system/stripped_string.md) (optional) | URL or description of route signage | | `routes[].wikidata` | [`WikidataId`](../system/wikidata_id.md) (optional) | | | `routes[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing RouteReference applies to. | -| `subclass_rules[]` | [`SubclassRules`](subclass_rules.md) (list, optional) | | -| `subclass_rules[].value` | [`Subclass`](subclass.md) | | +| `subclass_rules[]` | [`SubclassRules`](types/subclass_rules.md) (list, optional) | | +| `subclass_rules[].value` | [`Subclass`](types/subclass.md) | | | `subclass_rules[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SubclassRule applies to. | | `names` | [`Names`](../core/names.md) (optional) | | | `names.primary` | [`StrippedString`](../system/stripped_string.md) | The most commonly used name. | @@ -57,58 +61,58 @@ | `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | | `names.rules[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | | `names.rules[].side` | [`Side`](../core/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | -| `class` *(Road)* | [`RoadClass`](road_class.md) | | -| `destinations[]` *(Road)* | [`Destinations`](destinations.md) (list, optional) | | +| `class` *(Road)* | [`RoadClass`](types/road_class.md) | | +| `destinations[]` *(Road)* | [`Destinations`](types/destinations.md) (list, optional) | | | `destinations[].from_connector_id` | [`Id`](../system/ref/id.md) | Identifies the point of physical connection on this segment before which the destination sign or marking is visible. | | `destinations[].to_connector_id` | [`Id`](../system/ref/id.md) | Identifies the point of physical connection on the segment identified by 'to_segment_id' to transition to for reaching the destination(s). | | `destinations[].to_segment_id` | [`Id`](../system/ref/id.md) | Identifies the segment to transition to reach the destination(s) labeled on the sign or marking. | | `destinations[].final_heading` | [`Heading`](../core/scoping/heading.md) | Direction of travel on the segment identified by 'to_segment_id' that leads to the destination. | -| `destinations[].labels[]` | `list<`[`DestinationLabels`](destination_labels.md)`>` (optional) | Labeled destinations that can be reached by following the segment. | +| `destinations[].labels[]` | `list<`[`DestinationLabels`](types/destination_labels.md)`>` (optional) | Labeled destinations that can be reached by following the segment. | | `destinations[].labels[].value` | [`StrippedString`](../system/stripped_string.md) | Names the object that is reached | -| `destinations[].labels[].type` | [`DestinationLabelType`](destination_label_type.md) | | -| `destinations[].symbols` | `list<`[`DestinationSignSymbol`](destination_sign_symbol.md)`>` (optional) | A collection of symbols or icons present on the sign next to current destination label. | -| `destinations[].when` | [`DestinationRule.When`](destination_rule.when.md) (optional) | Scope for DestinationRule: | +| `destinations[].labels[].type` | [`DestinationLabelType`](types/destination_label_type.md) | | +| `destinations[].symbols` | `list<`[`DestinationSignSymbol`](types/destination_sign_symbol.md)`>` (optional) | A collection of symbols or icons present on the sign next to current destination label. | +| `destinations[].when` | [`DestinationRule.When`](types/destination_rule.when.md) (optional) | Scope for DestinationRule: | | `destinations[].when.heading` | [`Heading`](../core/scoping/heading.md) | The heading, either forward or backward, that the containing DestinationRule applies to. | -| `prohibited_transitions[]` *(Road)* | [`ProhibitedTransitions`](prohibited_transitions.md) (list, optional) | | -| `prohibited_transitions[].sequence[]` | `list<`[`SequenceEntry`](sequence_entry.md)`>` | Ordered sequence of connector/segment pairs that it is prohibited to follow from this segment. | +| `prohibited_transitions[]` *(Road)* | [`ProhibitedTransitions`](types/prohibited_transitions.md) (list, optional) | | +| `prohibited_transitions[].sequence[]` | `list<`[`SequenceEntry`](types/sequence_entry.md)`>` | Ordered sequence of connector/segment pairs that it is prohibited to follow from this segment. | | `prohibited_transitions[].sequence[].connector_id` | [`Id`](../system/ref/id.md) | Identifies the point of physical connection between the previous segment in the sequence and the segment in this sequence entry. | | `prohibited_transitions[].sequence[].segment_id` | [`Id`](../system/ref/id.md) | Identifies the segment that the previous segment in the sequence is physically connected to via the sequence entry's connector. | | `prohibited_transitions[].final_heading` | [`Heading`](../core/scoping/heading.md) | Direction of travel that is prohibited on the destination segment of the sequence. | | `prohibited_transitions[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing ProhibitedTransitionRule applies to. | -| `prohibited_transitions[].when` | [`ProhibitedTransitionRule.When`](prohibited_transition_rule.when.md) (optional) | Scopes for ProhibitedTransitionRule: Scope.HEADING, Scope.TEMPORAL, Scope.TRAVEL MODE, Scope.PURPOSE OF USE, Scope.RECOGNIZED STATUS and Scope.VEHICLE | +| `prohibited_transitions[].when` | [`ProhibitedTransitionRule.When`](types/prohibited_transition_rule.when.md) (optional) | Scopes for ProhibitedTransitionRule: Scope.HEADING, Scope.TEMPORAL, Scope.TRAVEL MODE, Scope.PURPOSE OF USE, Scope.RECOGNIZED STATUS and Scope.VEHICLE | | `prohibited_transitions[].when.heading` | [`Heading`](../core/scoping/heading.md) (optional) | The heading, either forward or backward, that the containing ProhibitedTransitionRule applies to. | | `prohibited_transitions[].when.during` | [`OpeningHours`](../core/scoping/opening_hours.md) (optional) | The recurring time span, in the OpenStreetMap opening hours format, that the containing ProhibitedTransitionRule applies to. For the OSM opening hours specification, see https://wiki.openstreetmap.org/wiki/Key:opening_hours/specification. | | `prohibited_transitions[].when.mode` | `list<`[`TravelMode`](../core/scoping/travel_mode.md)`>` (optional) | A list of one or more travel modes, such as car, truck, or foot, that the containing ProhibitedTransitionRule applies to. | | `prohibited_transitions[].when.using` | `list<`[`PurposeOfUse`](../core/scoping/purpose_of_use.md)`>` (optional) | A list of one or more usage purposes, such as delivery or arrival at final destination, that the containing ProhibitedTransitionRule applies to. | | `prohibited_transitions[].when.recognized` | `list<`[`RecognizedStatus`](../core/scoping/recognized_status.md)`>` (optional) | A list of one or more recognized status values, such as employee or student, that the containing ProhibitedTransitionRule applies to. | | `prohibited_transitions[].when.vehicle` | `list` (optional) | A list of one or more vehicle parameters that limit the vehicles the containing ProhibitedTransitionRule applies to. | -| `road_flags[]` *(Road)* | [`RoadFlags`](road_flags.md) (list, optional) | | -| `road_flags[].values` | `list<`[`RoadFlag`](road_flag.md)`>` | | +| `road_flags[]` *(Road)* | [`RoadFlags`](types/road_flags.md) (list, optional) | | +| `road_flags[].values` | `list<`[`RoadFlag`](types/road_flag.md)`>` | | | `road_flags[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing RoadFlagRule applies to. | -| `road_surface[]` *(Road)* | [`Surfaces`](surfaces.md) (list, optional) | | -| `road_surface[].value` | [`RoadSurface`](road_surface.md) | | +| `road_surface[]` *(Road)* | [`Surfaces`](types/surfaces.md) (list, optional) | | +| `road_surface[].value` | [`RoadSurface`](types/road_surface.md) | | | `road_surface[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SurfaceRule applies to. | -| `speed_limits[]` *(Road)* | [`SpeedLimits`](speed_limits.md) (list, optional) | | -| `speed_limits[].max_speed` | [`Speed`](speed.md) (optional) | | -| `speed_limits[].max_speed.value` | [`SpeedValue`](speed_value.md) | | +| `speed_limits[]` *(Road)* | [`SpeedLimits`](types/speed_limits.md) (list, optional) | | +| `speed_limits[].max_speed` | [`Speed`](types/speed.md) (optional) | | +| `speed_limits[].max_speed.value` | [`SpeedValue`](types/speed_value.md) | | | `speed_limits[].max_speed.unit` | [`SpeedUnit`](../core/speed_unit.md) | | -| `speed_limits[].min_speed` | [`Speed`](speed.md) (optional) | | -| `speed_limits[].min_speed.value` | [`SpeedValue`](speed_value.md) | | +| `speed_limits[].min_speed` | [`Speed`](types/speed.md) (optional) | | +| `speed_limits[].min_speed.value` | [`SpeedValue`](types/speed_value.md) | | | `speed_limits[].min_speed.unit` | [`SpeedUnit`](../core/speed_unit.md) | | | `speed_limits[].is_max_speed_variable` | `boolean` (optional) | Indicates a variable speed corridor | | `speed_limits[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SpeedLimitRule applies to. | -| `speed_limits[].when` | [`SpeedLimitRule.When`](speed_limit_rule.when.md) (optional) | Scopes for SpeedLimitRule: Scope.HEADING, Scope.TEMPORAL, Scope.TRAVEL MODE, Scope.PURPOSE OF USE, Scope.RECOGNIZED STATUS and Scope.VEHICLE | +| `speed_limits[].when` | [`SpeedLimitRule.When`](types/speed_limit_rule.when.md) (optional) | Scopes for SpeedLimitRule: Scope.HEADING, Scope.TEMPORAL, Scope.TRAVEL MODE, Scope.PURPOSE OF USE, Scope.RECOGNIZED STATUS and Scope.VEHICLE | | `speed_limits[].when.heading` | [`Heading`](../core/scoping/heading.md) (optional) | The heading, either forward or backward, that the containing SpeedLimitRule applies to. | | `speed_limits[].when.during` | [`OpeningHours`](../core/scoping/opening_hours.md) (optional) | The recurring time span, in the OpenStreetMap opening hours format, that the containing SpeedLimitRule applies to. For the OSM opening hours specification, see https://wiki.openstreetmap.org/wiki/Key:opening_hours/specification. | | `speed_limits[].when.mode` | `list<`[`TravelMode`](../core/scoping/travel_mode.md)`>` (optional) | A list of one or more travel modes, such as car, truck, or foot, that the containing SpeedLimitRule applies to. | | `speed_limits[].when.using` | `list<`[`PurposeOfUse`](../core/scoping/purpose_of_use.md)`>` (optional) | A list of one or more usage purposes, such as delivery or arrival at final destination, that the containing SpeedLimitRule applies to. | | `speed_limits[].when.recognized` | `list<`[`RecognizedStatus`](../core/scoping/recognized_status.md)`>` (optional) | A list of one or more recognized status values, such as employee or student, that the containing SpeedLimitRule applies to. | | `speed_limits[].when.vehicle` | `list` (optional) | A list of one or more vehicle parameters that limit the vehicles the containing SpeedLimitRule applies to. | -| `subclass` *(Road)* | [`Subclass`](subclass.md) (optional) | | -| `width_rules[]` *(Road)* | [`WidthRules`](width_rules.md) (list, optional) | | -| `width_rules[].value` | [`Width`](width.md) | | +| `subclass` *(Road)* | [`Subclass`](types/subclass.md) (optional) | | +| `width_rules[]` *(Road)* | [`WidthRules`](types/width_rules.md) (list, optional) | | +| `width_rules[].value` | [`Width`](types/width.md) | | | `width_rules[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing WidthRule applies to. | -| `class` *(Rail)* | [`RailClass`](rail_class.md) | | -| `rail_flags[]` *(Rail)* | [`RailFlags`](rail_flags.md) (list, optional) | | -| `rail_flags[].values` | `list<`[`RailFlag`](rail_flag.md)`>` | | +| `class` *(Rail)* | [`RailClass`](types/rail_class.md) | | +| `rail_flags[]` *(Rail)* | [`RailFlags`](types/rail_flags.md) (list, optional) | | +| `rail_flags[].values` | `list<`[`RailFlag`](types/rail_flag.md)`>` | | | `rail_flags[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing RailFlagRule applies to. | diff --git a/docs/schema/reference/transportation/sequence_entry.md b/docs/schema/reference/transportation/sequence_entry.md deleted file mode 100644 index f99a527e4..000000000 --- a/docs/schema/reference/transportation/sequence_entry.md +++ /dev/null @@ -1,10 +0,0 @@ -# SequenceEntry - -A segment/connector pair in a prohibited transition sequence. - -## Fields - -| Name | Type | Description | -|-----:|:----:|-------------| -| `connector_id` | [`Id`](../system/ref/id.md) | Identifies the point of physical connection between the previous segment in the sequence and the segment in this sequence entry. | -| `segment_id` | [`Id`](../system/ref/id.md) | Identifies the segment that the previous segment in the sequence is physically connected to via the sequence entry's connector. | diff --git a/docs/schema/reference/transportation/speed_limit_rule.md b/docs/schema/reference/transportation/speed_limit_rule.md deleted file mode 100644 index 8c4181260..000000000 --- a/docs/schema/reference/transportation/speed_limit_rule.md +++ /dev/null @@ -1,23 +0,0 @@ -# SpeedLimitRule - -An individual speed limit rule. - -## Fields - -| Name | Type | Description | -|-----:|:----:|-------------| -| `max_speed` | [`Speed`](speed.md) (optional) | | -| `max_speed.value` | [`SpeedValue`](speed_value.md) | | -| `max_speed.unit` | [`SpeedUnit`](../core/speed_unit.md) | | -| `min_speed` | [`Speed`](speed.md) (optional) | | -| `min_speed.value` | [`SpeedValue`](speed_value.md) | | -| `min_speed.unit` | [`SpeedUnit`](../core/speed_unit.md) | | -| `is_max_speed_variable` | `boolean` (optional) | Indicates a variable speed corridor | -| `between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SpeedLimitRule applies to. | -| `when` | [`SpeedLimitRule.When`](speed_limit_rule.when.md) (optional) | Scopes for SpeedLimitRule: Scope.HEADING, Scope.TEMPORAL, Scope.TRAVEL MODE, Scope.PURPOSE OF USE, Scope.RECOGNIZED STATUS and Scope.VEHICLE | -| `when.heading` | [`Heading`](../core/scoping/heading.md) (optional) | The heading, either forward or backward, that the containing SpeedLimitRule applies to. | -| `when.during` | [`OpeningHours`](../core/scoping/opening_hours.md) (optional) | The recurring time span, in the OpenStreetMap opening hours format, that the containing SpeedLimitRule applies to. For the OSM opening hours specification, see https://wiki.openstreetmap.org/wiki/Key:opening_hours/specification. | -| `when.mode` | `list<`[`TravelMode`](../core/scoping/travel_mode.md)`>` (optional) | A list of one or more travel modes, such as car, truck, or foot, that the containing SpeedLimitRule applies to. | -| `when.using` | `list<`[`PurposeOfUse`](../core/scoping/purpose_of_use.md)`>` (optional) | A list of one or more usage purposes, such as delivery or arrival at final destination, that the containing SpeedLimitRule applies to. | -| `when.recognized` | `list<`[`RecognizedStatus`](../core/scoping/recognized_status.md)`>` (optional) | A list of one or more recognized status values, such as employee or student, that the containing SpeedLimitRule applies to. | -| `when.vehicle` | `list` (optional) | A list of one or more vehicle parameters that limit the vehicles the containing SpeedLimitRule applies to. | diff --git a/docs/schema/reference/transportation/speed_limit_rule.when.md b/docs/schema/reference/transportation/speed_limit_rule.when.md deleted file mode 100644 index cdadfa4f0..000000000 --- a/docs/schema/reference/transportation/speed_limit_rule.when.md +++ /dev/null @@ -1,14 +0,0 @@ -# SpeedLimitRule.When - -Scopes for SpeedLimitRule: Scope.HEADING, Scope.TEMPORAL, Scope.TRAVEL MODE, Scope.PURPOSE OF USE, Scope.RECOGNIZED STATUS and Scope.VEHICLE - -## Fields - -| Name | Type | Description | -|-----:|:----:|-------------| -| `heading` | [`Heading`](../core/scoping/heading.md) (optional) | The heading, either forward or backward, that the containing SpeedLimitRule applies to. | -| `during` | [`OpeningHours`](../core/scoping/opening_hours.md) (optional) | The recurring time span, in the OpenStreetMap opening hours format, that the containing SpeedLimitRule applies to. For the OSM opening hours specification, see https://wiki.openstreetmap.org/wiki/Key:opening_hours/specification. | -| `mode` | `list<`[`TravelMode`](../core/scoping/travel_mode.md)`>` (optional) | A list of one or more travel modes, such as car, truck, or foot, that the containing SpeedLimitRule applies to. | -| `using` | `list<`[`PurposeOfUse`](../core/scoping/purpose_of_use.md)`>` (optional) | A list of one or more usage purposes, such as delivery or arrival at final destination, that the containing SpeedLimitRule applies to. | -| `recognized` | `list<`[`RecognizedStatus`](../core/scoping/recognized_status.md)`>` (optional) | A list of one or more recognized status values, such as employee or student, that the containing SpeedLimitRule applies to. | -| `vehicle` | `list` (optional) | A list of one or more vehicle parameters that limit the vehicles the containing SpeedLimitRule applies to. | diff --git a/docs/schema/reference/transportation/speed_value.md b/docs/schema/reference/transportation/speed_value.md deleted file mode 100644 index 1afebaafe..000000000 --- a/docs/schema/reference/transportation/speed_value.md +++ /dev/null @@ -1,8 +0,0 @@ -# SpeedValue (`int32`) - -## Constraints - -- `Ge(ge=1)` -- `Le(le=350)` -- `Ge(ge=-2147483648)` (from [`int32`](../system/primitive/primitives.md)) -- `Le(le=2147483647)` (from [`int32`](../system/primitive/primitives.md)) diff --git a/docs/schema/reference/transportation/subclass_rule.md b/docs/schema/reference/transportation/subclass_rule.md deleted file mode 100644 index c12852a59..000000000 --- a/docs/schema/reference/transportation/subclass_rule.md +++ /dev/null @@ -1,10 +0,0 @@ -# SubclassRule - -Set of subclasses scoped along segment. - -## Fields - -| Name | Type | Description | -|-----:|:----:|-------------| -| `value` | [`Subclass`](subclass.md) | | -| `between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SubclassRule applies to. | diff --git a/docs/schema/reference/transportation/surface_rule.md b/docs/schema/reference/transportation/surface_rule.md deleted file mode 100644 index 211492395..000000000 --- a/docs/schema/reference/transportation/surface_rule.md +++ /dev/null @@ -1,8 +0,0 @@ -# SurfaceRule - -## Fields - -| Name | Type | Description | -|-----:|:----:|-------------| -| `value` | [`RoadSurface`](road_surface.md) | | -| `between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SurfaceRule applies to. | diff --git a/docs/schema/reference/transportation/types/_category_.json b/docs/schema/reference/transportation/types/_category_.json new file mode 100644 index 000000000..a3ec08974 --- /dev/null +++ b/docs/schema/reference/transportation/types/_category_.json @@ -0,0 +1,3 @@ +{ + "label": "Types" +} diff --git a/docs/schema/reference/transportation/types/access_restriction_rule.md b/docs/schema/reference/transportation/types/access_restriction_rule.md new file mode 100644 index 000000000..7144a6638 --- /dev/null +++ b/docs/schema/reference/transportation/types/access_restriction_rule.md @@ -0,0 +1,15 @@ +# AccessRestrictionRule + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `access_type` | [`AccessType`](access_type.md) | | +| `between` | [`LinearlyReferencedRange`](../../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing AccessRestrictionRule applies to. | +| `when` | [`AccessRestrictionRule.When`](access_restriction_rule.when.md) (optional) | Scopes for AccessRestrictionRule: Scope.HEADING, Scope.TEMPORAL, Scope.TRAVEL MODE, Scope.PURPOSE OF USE, Scope.RECOGNIZED STATUS and Scope.VEHICLE | +| `when.heading` | [`Heading`](../../core/scoping/heading.md) (optional) | The heading, either forward or backward, that the containing AccessRestrictionRule applies to. | +| `when.during` | [`OpeningHours`](../../core/scoping/opening_hours.md) (optional) | The recurring time span, in the OpenStreetMap opening hours format, that the containing AccessRestrictionRule applies to. For the OSM opening hours specification, see https://wiki.openstreetmap.org/wiki/Key:opening_hours/specification. | +| `when.mode` | `list<`[`TravelMode`](../../core/scoping/travel_mode.md)`>` (optional) | A list of one or more travel modes, such as car, truck, or foot, that the containing AccessRestrictionRule applies to. | +| `when.using` | `list<`[`PurposeOfUse`](../../core/scoping/purpose_of_use.md)`>` (optional) | A list of one or more usage purposes, such as delivery or arrival at final destination, that the containing AccessRestrictionRule applies to. | +| `when.recognized` | `list<`[`RecognizedStatus`](../../core/scoping/recognized_status.md)`>` (optional) | A list of one or more recognized status values, such as employee or student, that the containing AccessRestrictionRule applies to. | +| `when.vehicle` | `list` (optional) | A list of one or more vehicle parameters that limit the vehicles the containing AccessRestrictionRule applies to. | diff --git a/docs/schema/reference/transportation/types/access_restriction_rule.when.md b/docs/schema/reference/transportation/types/access_restriction_rule.when.md new file mode 100644 index 000000000..271140743 --- /dev/null +++ b/docs/schema/reference/transportation/types/access_restriction_rule.when.md @@ -0,0 +1,14 @@ +# AccessRestrictionRule.When + +Scopes for AccessRestrictionRule: Scope.HEADING, Scope.TEMPORAL, Scope.TRAVEL MODE, Scope.PURPOSE OF USE, Scope.RECOGNIZED STATUS and Scope.VEHICLE + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `heading` | [`Heading`](../../core/scoping/heading.md) (optional) | The heading, either forward or backward, that the containing AccessRestrictionRule applies to. | +| `during` | [`OpeningHours`](../../core/scoping/opening_hours.md) (optional) | The recurring time span, in the OpenStreetMap opening hours format, that the containing AccessRestrictionRule applies to. For the OSM opening hours specification, see https://wiki.openstreetmap.org/wiki/Key:opening_hours/specification. | +| `mode` | `list<`[`TravelMode`](../../core/scoping/travel_mode.md)`>` (optional) | A list of one or more travel modes, such as car, truck, or foot, that the containing AccessRestrictionRule applies to. | +| `using` | `list<`[`PurposeOfUse`](../../core/scoping/purpose_of_use.md)`>` (optional) | A list of one or more usage purposes, such as delivery or arrival at final destination, that the containing AccessRestrictionRule applies to. | +| `recognized` | `list<`[`RecognizedStatus`](../../core/scoping/recognized_status.md)`>` (optional) | A list of one or more recognized status values, such as employee or student, that the containing AccessRestrictionRule applies to. | +| `vehicle` | `list` (optional) | A list of one or more vehicle parameters that limit the vehicles the containing AccessRestrictionRule applies to. | diff --git a/docs/schema/reference/transportation/access_rules.md b/docs/schema/reference/transportation/types/access_rules.md similarity index 100% rename from docs/schema/reference/transportation/access_rules.md rename to docs/schema/reference/transportation/types/access_rules.md diff --git a/docs/schema/reference/transportation/access_type.md b/docs/schema/reference/transportation/types/access_type.md similarity index 100% rename from docs/schema/reference/transportation/access_type.md rename to docs/schema/reference/transportation/types/access_type.md diff --git a/docs/schema/reference/transportation/types/connector_reference.md b/docs/schema/reference/transportation/types/connector_reference.md new file mode 100644 index 000000000..40d092094 --- /dev/null +++ b/docs/schema/reference/transportation/types/connector_reference.md @@ -0,0 +1,11 @@ +# ConnectorReference + +Contains the GERS ID and relative position between 0 and 1 of a connector feature along the +segment. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `connector_id` | [`Id`](../../system/ref/id.md) | | +| `at` | [`LinearlyReferencedPosition`](../../core/scoping/linearly_referenced_position.md) (optional) | The linearly-referenced position on the geometry, specified as a percentage displacement from the start of the geometry, that the containing ConnectorReference applies to. | diff --git a/docs/schema/reference/transportation/destination_label_type.md b/docs/schema/reference/transportation/types/destination_label_type.md similarity index 100% rename from docs/schema/reference/transportation/destination_label_type.md rename to docs/schema/reference/transportation/types/destination_label_type.md diff --git a/docs/schema/reference/transportation/destination_labels.md b/docs/schema/reference/transportation/types/destination_labels.md similarity index 67% rename from docs/schema/reference/transportation/destination_labels.md rename to docs/schema/reference/transportation/types/destination_labels.md index 83396c3ef..cae29a0b5 100644 --- a/docs/schema/reference/transportation/destination_labels.md +++ b/docs/schema/reference/transportation/types/destination_labels.md @@ -6,5 +6,5 @@ The type of object of the destination label. | Name | Type | Description | |-----:|:----:|-------------| -| `value` | [`StrippedString`](../system/stripped_string.md) | Names the object that is reached | +| `value` | [`StrippedString`](../../system/stripped_string.md) | Names the object that is reached | | `type` | [`DestinationLabelType`](destination_label_type.md) | | diff --git a/docs/schema/reference/transportation/types/destination_rule.md b/docs/schema/reference/transportation/types/destination_rule.md new file mode 100644 index 000000000..38c88c015 --- /dev/null +++ b/docs/schema/reference/transportation/types/destination_rule.md @@ -0,0 +1,16 @@ +# DestinationRule + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `from_connector_id` | [`Id`](../../system/ref/id.md) | Identifies the point of physical connection on this segment before which the destination sign or marking is visible. | +| `to_connector_id` | [`Id`](../../system/ref/id.md) | Identifies the point of physical connection on the segment identified by 'to_segment_id' to transition to for reaching the destination(s). | +| `to_segment_id` | [`Id`](../../system/ref/id.md) | Identifies the segment to transition to reach the destination(s) labeled on the sign or marking. | +| `final_heading` | [`Heading`](../../core/scoping/heading.md) | Direction of travel on the segment identified by 'to_segment_id' that leads to the destination. | +| `labels[]` | `list<`[`DestinationLabels`](destination_labels.md)`>` (optional) | Labeled destinations that can be reached by following the segment. | +| `labels[].value` | [`StrippedString`](../../system/stripped_string.md) | Names the object that is reached | +| `labels[].type` | [`DestinationLabelType`](destination_label_type.md) | | +| `symbols` | `list<`[`DestinationSignSymbol`](destination_sign_symbol.md)`>` (optional) | A collection of symbols or icons present on the sign next to current destination label. | +| `when` | [`DestinationRule.When`](destination_rule.when.md) (optional) | Scope for DestinationRule: | +| `when.heading` | [`Heading`](../../core/scoping/heading.md) | The heading, either forward or backward, that the containing DestinationRule applies to. | diff --git a/docs/schema/reference/transportation/types/destination_rule.when.md b/docs/schema/reference/transportation/types/destination_rule.when.md new file mode 100644 index 000000000..3c2b487d8 --- /dev/null +++ b/docs/schema/reference/transportation/types/destination_rule.when.md @@ -0,0 +1,9 @@ +# DestinationRule.When + +Scope for DestinationRule: + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `heading` | [`Heading`](../../core/scoping/heading.md) | The heading, either forward or backward, that the containing DestinationRule applies to. | diff --git a/docs/schema/reference/transportation/destination_sign_symbol.md b/docs/schema/reference/transportation/types/destination_sign_symbol.md similarity index 100% rename from docs/schema/reference/transportation/destination_sign_symbol.md rename to docs/schema/reference/transportation/types/destination_sign_symbol.md diff --git a/docs/schema/reference/transportation/destinations.md b/docs/schema/reference/transportation/types/destinations.md similarity index 100% rename from docs/schema/reference/transportation/destinations.md rename to docs/schema/reference/transportation/types/destinations.md diff --git a/docs/schema/reference/transportation/types/level_rule.md b/docs/schema/reference/transportation/types/level_rule.md new file mode 100644 index 000000000..0db57092b --- /dev/null +++ b/docs/schema/reference/transportation/types/level_rule.md @@ -0,0 +1,11 @@ +# LevelRule + +A single level rule defining the Z-order, i.e. stacking order, applicable within a given scope +on the road segment. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `value` | [`Level`](../../core/level.md) | | +| `between` | [`LinearlyReferencedRange`](../../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing LevelRule applies to. | diff --git a/docs/schema/reference/transportation/level_rules.md b/docs/schema/reference/transportation/types/level_rules.md similarity index 100% rename from docs/schema/reference/transportation/level_rules.md rename to docs/schema/reference/transportation/types/level_rules.md diff --git a/docs/schema/reference/transportation/types/prohibited_transition_rule.md b/docs/schema/reference/transportation/types/prohibited_transition_rule.md new file mode 100644 index 000000000..5a03e5a15 --- /dev/null +++ b/docs/schema/reference/transportation/types/prohibited_transition_rule.md @@ -0,0 +1,18 @@ +# ProhibitedTransitionRule + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `sequence[]` | `list<`[`SequenceEntry`](sequence_entry.md)`>` | Ordered sequence of connector/segment pairs that it is prohibited to follow from this segment. | +| `sequence[].connector_id` | [`Id`](../../system/ref/id.md) | Identifies the point of physical connection between the previous segment in the sequence and the segment in this sequence entry. | +| `sequence[].segment_id` | [`Id`](../../system/ref/id.md) | Identifies the segment that the previous segment in the sequence is physically connected to via the sequence entry's connector. | +| `final_heading` | [`Heading`](../../core/scoping/heading.md) | Direction of travel that is prohibited on the destination segment of the sequence. | +| `between` | [`LinearlyReferencedRange`](../../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing ProhibitedTransitionRule applies to. | +| `when` | [`ProhibitedTransitionRule.When`](prohibited_transition_rule.when.md) (optional) | Scopes for ProhibitedTransitionRule: Scope.HEADING, Scope.TEMPORAL, Scope.TRAVEL MODE, Scope.PURPOSE OF USE, Scope.RECOGNIZED STATUS and Scope.VEHICLE | +| `when.heading` | [`Heading`](../../core/scoping/heading.md) (optional) | The heading, either forward or backward, that the containing ProhibitedTransitionRule applies to. | +| `when.during` | [`OpeningHours`](../../core/scoping/opening_hours.md) (optional) | The recurring time span, in the OpenStreetMap opening hours format, that the containing ProhibitedTransitionRule applies to. For the OSM opening hours specification, see https://wiki.openstreetmap.org/wiki/Key:opening_hours/specification. | +| `when.mode` | `list<`[`TravelMode`](../../core/scoping/travel_mode.md)`>` (optional) | A list of one or more travel modes, such as car, truck, or foot, that the containing ProhibitedTransitionRule applies to. | +| `when.using` | `list<`[`PurposeOfUse`](../../core/scoping/purpose_of_use.md)`>` (optional) | A list of one or more usage purposes, such as delivery or arrival at final destination, that the containing ProhibitedTransitionRule applies to. | +| `when.recognized` | `list<`[`RecognizedStatus`](../../core/scoping/recognized_status.md)`>` (optional) | A list of one or more recognized status values, such as employee or student, that the containing ProhibitedTransitionRule applies to. | +| `when.vehicle` | `list` (optional) | A list of one or more vehicle parameters that limit the vehicles the containing ProhibitedTransitionRule applies to. | diff --git a/docs/schema/reference/transportation/types/prohibited_transition_rule.when.md b/docs/schema/reference/transportation/types/prohibited_transition_rule.when.md new file mode 100644 index 000000000..2d94b468e --- /dev/null +++ b/docs/schema/reference/transportation/types/prohibited_transition_rule.when.md @@ -0,0 +1,14 @@ +# ProhibitedTransitionRule.When + +Scopes for ProhibitedTransitionRule: Scope.HEADING, Scope.TEMPORAL, Scope.TRAVEL MODE, Scope.PURPOSE OF USE, Scope.RECOGNIZED STATUS and Scope.VEHICLE + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `heading` | [`Heading`](../../core/scoping/heading.md) (optional) | The heading, either forward or backward, that the containing ProhibitedTransitionRule applies to. | +| `during` | [`OpeningHours`](../../core/scoping/opening_hours.md) (optional) | The recurring time span, in the OpenStreetMap opening hours format, that the containing ProhibitedTransitionRule applies to. For the OSM opening hours specification, see https://wiki.openstreetmap.org/wiki/Key:opening_hours/specification. | +| `mode` | `list<`[`TravelMode`](../../core/scoping/travel_mode.md)`>` (optional) | A list of one or more travel modes, such as car, truck, or foot, that the containing ProhibitedTransitionRule applies to. | +| `using` | `list<`[`PurposeOfUse`](../../core/scoping/purpose_of_use.md)`>` (optional) | A list of one or more usage purposes, such as delivery or arrival at final destination, that the containing ProhibitedTransitionRule applies to. | +| `recognized` | `list<`[`RecognizedStatus`](../../core/scoping/recognized_status.md)`>` (optional) | A list of one or more recognized status values, such as employee or student, that the containing ProhibitedTransitionRule applies to. | +| `vehicle` | `list` (optional) | A list of one or more vehicle parameters that limit the vehicles the containing ProhibitedTransitionRule applies to. | diff --git a/docs/schema/reference/transportation/prohibited_transitions.md b/docs/schema/reference/transportation/types/prohibited_transitions.md similarity index 100% rename from docs/schema/reference/transportation/prohibited_transitions.md rename to docs/schema/reference/transportation/types/prohibited_transitions.md diff --git a/docs/schema/reference/transportation/rail_class.md b/docs/schema/reference/transportation/types/rail_class.md similarity index 100% rename from docs/schema/reference/transportation/rail_class.md rename to docs/schema/reference/transportation/types/rail_class.md diff --git a/docs/schema/reference/transportation/rail_flag.md b/docs/schema/reference/transportation/types/rail_flag.md similarity index 100% rename from docs/schema/reference/transportation/rail_flag.md rename to docs/schema/reference/transportation/types/rail_flag.md diff --git a/docs/schema/reference/transportation/types/rail_flag_rule.md b/docs/schema/reference/transportation/types/rail_flag_rule.md new file mode 100644 index 000000000..0e480567c --- /dev/null +++ b/docs/schema/reference/transportation/types/rail_flag_rule.md @@ -0,0 +1,10 @@ +# RailFlagRule + +Rail-specific flag rule with geometric scoping only. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `values` | `list<`[`RailFlag`](rail_flag.md)`>` | | +| `between` | [`LinearlyReferencedRange`](../../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing RailFlagRule applies to. | diff --git a/docs/schema/reference/transportation/rail_flags.md b/docs/schema/reference/transportation/types/rail_flags.md similarity index 100% rename from docs/schema/reference/transportation/rail_flags.md rename to docs/schema/reference/transportation/types/rail_flags.md diff --git a/docs/schema/reference/transportation/road_class.md b/docs/schema/reference/transportation/types/road_class.md similarity index 100% rename from docs/schema/reference/transportation/road_class.md rename to docs/schema/reference/transportation/types/road_class.md diff --git a/docs/schema/reference/transportation/road_flag.md b/docs/schema/reference/transportation/types/road_flag.md similarity index 100% rename from docs/schema/reference/transportation/road_flag.md rename to docs/schema/reference/transportation/types/road_flag.md diff --git a/docs/schema/reference/transportation/types/road_flag_rule.md b/docs/schema/reference/transportation/types/road_flag_rule.md new file mode 100644 index 000000000..c9d6eb9cc --- /dev/null +++ b/docs/schema/reference/transportation/types/road_flag_rule.md @@ -0,0 +1,10 @@ +# RoadFlagRule + +Road-specific flag rule with geometric scoping only. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `values` | `list<`[`RoadFlag`](road_flag.md)`>` | | +| `between` | [`LinearlyReferencedRange`](../../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing RoadFlagRule applies to. | diff --git a/docs/schema/reference/transportation/road_flags.md b/docs/schema/reference/transportation/types/road_flags.md similarity index 100% rename from docs/schema/reference/transportation/road_flags.md rename to docs/schema/reference/transportation/types/road_flags.md diff --git a/docs/schema/reference/transportation/road_surface.md b/docs/schema/reference/transportation/types/road_surface.md similarity index 100% rename from docs/schema/reference/transportation/road_surface.md rename to docs/schema/reference/transportation/types/road_surface.md diff --git a/docs/schema/reference/transportation/types/route_reference.md b/docs/schema/reference/transportation/types/route_reference.md new file mode 100644 index 000000000..ac81ff1b0 --- /dev/null +++ b/docs/schema/reference/transportation/types/route_reference.md @@ -0,0 +1,14 @@ +# RouteReference + +Route reference with linear referencing support. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `name` | [`StrippedString`](../../system/stripped_string.md) (optional) | Full name of the route | +| `network` | [`StrippedString`](../../system/stripped_string.md) (optional) | Name of the highway system this route belongs to | +| `ref` | [`StrippedString`](../../system/stripped_string.md) (optional) | Code or number used to reference the route | +| `symbol` | [`StrippedString`](../../system/stripped_string.md) (optional) | URL or description of route signage | +| `wikidata` | [`WikidataId`](../../system/wikidata_id.md) (optional) | | +| `between` | [`LinearlyReferencedRange`](../../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing RouteReference applies to. | diff --git a/docs/schema/reference/transportation/routes.md b/docs/schema/reference/transportation/types/routes.md similarity index 100% rename from docs/schema/reference/transportation/routes.md rename to docs/schema/reference/transportation/types/routes.md diff --git a/docs/schema/reference/transportation/types/sequence_entry.md b/docs/schema/reference/transportation/types/sequence_entry.md new file mode 100644 index 000000000..6055d2f6d --- /dev/null +++ b/docs/schema/reference/transportation/types/sequence_entry.md @@ -0,0 +1,10 @@ +# SequenceEntry + +A segment/connector pair in a prohibited transition sequence. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `connector_id` | [`Id`](../../system/ref/id.md) | Identifies the point of physical connection between the previous segment in the sequence and the segment in this sequence entry. | +| `segment_id` | [`Id`](../../system/ref/id.md) | Identifies the segment that the previous segment in the sequence is physically connected to via the sequence entry's connector. | diff --git a/docs/schema/reference/transportation/speed.md b/docs/schema/reference/transportation/types/speed.md similarity index 78% rename from docs/schema/reference/transportation/speed.md rename to docs/schema/reference/transportation/types/speed.md index d02683651..6703e2268 100644 --- a/docs/schema/reference/transportation/speed.md +++ b/docs/schema/reference/transportation/types/speed.md @@ -7,4 +7,4 @@ A speed value, i.e. a certain number of distance units travelled per unit time. | Name | Type | Description | |-----:|:----:|-------------| | `value` | [`SpeedValue`](speed_value.md) | | -| `unit` | [`SpeedUnit`](../core/speed_unit.md) | | +| `unit` | [`SpeedUnit`](../../core/speed_unit.md) | | diff --git a/docs/schema/reference/transportation/types/speed_limit_rule.md b/docs/schema/reference/transportation/types/speed_limit_rule.md new file mode 100644 index 000000000..bea587891 --- /dev/null +++ b/docs/schema/reference/transportation/types/speed_limit_rule.md @@ -0,0 +1,23 @@ +# SpeedLimitRule + +An individual speed limit rule. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `max_speed` | [`Speed`](speed.md) (optional) | | +| `max_speed.value` | [`SpeedValue`](speed_value.md) | | +| `max_speed.unit` | [`SpeedUnit`](../../core/speed_unit.md) | | +| `min_speed` | [`Speed`](speed.md) (optional) | | +| `min_speed.value` | [`SpeedValue`](speed_value.md) | | +| `min_speed.unit` | [`SpeedUnit`](../../core/speed_unit.md) | | +| `is_max_speed_variable` | `boolean` (optional) | Indicates a variable speed corridor | +| `between` | [`LinearlyReferencedRange`](../../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SpeedLimitRule applies to. | +| `when` | [`SpeedLimitRule.When`](speed_limit_rule.when.md) (optional) | Scopes for SpeedLimitRule: Scope.HEADING, Scope.TEMPORAL, Scope.TRAVEL MODE, Scope.PURPOSE OF USE, Scope.RECOGNIZED STATUS and Scope.VEHICLE | +| `when.heading` | [`Heading`](../../core/scoping/heading.md) (optional) | The heading, either forward or backward, that the containing SpeedLimitRule applies to. | +| `when.during` | [`OpeningHours`](../../core/scoping/opening_hours.md) (optional) | The recurring time span, in the OpenStreetMap opening hours format, that the containing SpeedLimitRule applies to. For the OSM opening hours specification, see https://wiki.openstreetmap.org/wiki/Key:opening_hours/specification. | +| `when.mode` | `list<`[`TravelMode`](../../core/scoping/travel_mode.md)`>` (optional) | A list of one or more travel modes, such as car, truck, or foot, that the containing SpeedLimitRule applies to. | +| `when.using` | `list<`[`PurposeOfUse`](../../core/scoping/purpose_of_use.md)`>` (optional) | A list of one or more usage purposes, such as delivery or arrival at final destination, that the containing SpeedLimitRule applies to. | +| `when.recognized` | `list<`[`RecognizedStatus`](../../core/scoping/recognized_status.md)`>` (optional) | A list of one or more recognized status values, such as employee or student, that the containing SpeedLimitRule applies to. | +| `when.vehicle` | `list` (optional) | A list of one or more vehicle parameters that limit the vehicles the containing SpeedLimitRule applies to. | diff --git a/docs/schema/reference/transportation/types/speed_limit_rule.when.md b/docs/schema/reference/transportation/types/speed_limit_rule.when.md new file mode 100644 index 000000000..f95806758 --- /dev/null +++ b/docs/schema/reference/transportation/types/speed_limit_rule.when.md @@ -0,0 +1,14 @@ +# SpeedLimitRule.When + +Scopes for SpeedLimitRule: Scope.HEADING, Scope.TEMPORAL, Scope.TRAVEL MODE, Scope.PURPOSE OF USE, Scope.RECOGNIZED STATUS and Scope.VEHICLE + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `heading` | [`Heading`](../../core/scoping/heading.md) (optional) | The heading, either forward or backward, that the containing SpeedLimitRule applies to. | +| `during` | [`OpeningHours`](../../core/scoping/opening_hours.md) (optional) | The recurring time span, in the OpenStreetMap opening hours format, that the containing SpeedLimitRule applies to. For the OSM opening hours specification, see https://wiki.openstreetmap.org/wiki/Key:opening_hours/specification. | +| `mode` | `list<`[`TravelMode`](../../core/scoping/travel_mode.md)`>` (optional) | A list of one or more travel modes, such as car, truck, or foot, that the containing SpeedLimitRule applies to. | +| `using` | `list<`[`PurposeOfUse`](../../core/scoping/purpose_of_use.md)`>` (optional) | A list of one or more usage purposes, such as delivery or arrival at final destination, that the containing SpeedLimitRule applies to. | +| `recognized` | `list<`[`RecognizedStatus`](../../core/scoping/recognized_status.md)`>` (optional) | A list of one or more recognized status values, such as employee or student, that the containing SpeedLimitRule applies to. | +| `vehicle` | `list` (optional) | A list of one or more vehicle parameters that limit the vehicles the containing SpeedLimitRule applies to. | diff --git a/docs/schema/reference/transportation/speed_limits.md b/docs/schema/reference/transportation/types/speed_limits.md similarity index 100% rename from docs/schema/reference/transportation/speed_limits.md rename to docs/schema/reference/transportation/types/speed_limits.md diff --git a/docs/schema/reference/transportation/types/speed_value.md b/docs/schema/reference/transportation/types/speed_value.md new file mode 100644 index 000000000..dd000ba3d --- /dev/null +++ b/docs/schema/reference/transportation/types/speed_value.md @@ -0,0 +1,8 @@ +# SpeedValue (`int32`) + +## Constraints + +- `Ge(ge=1)` +- `Le(le=350)` +- `Ge(ge=-2147483648)` (from [`int32`](../../system/primitive/primitives.md)) +- `Le(le=2147483647)` (from [`int32`](../../system/primitive/primitives.md)) diff --git a/docs/schema/reference/transportation/subclass.md b/docs/schema/reference/transportation/types/subclass.md similarity index 100% rename from docs/schema/reference/transportation/subclass.md rename to docs/schema/reference/transportation/types/subclass.md diff --git a/docs/schema/reference/transportation/types/subclass_rule.md b/docs/schema/reference/transportation/types/subclass_rule.md new file mode 100644 index 000000000..a373fabca --- /dev/null +++ b/docs/schema/reference/transportation/types/subclass_rule.md @@ -0,0 +1,10 @@ +# SubclassRule + +Set of subclasses scoped along segment. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `value` | [`Subclass`](subclass.md) | | +| `between` | [`LinearlyReferencedRange`](../../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SubclassRule applies to. | diff --git a/docs/schema/reference/transportation/subclass_rules.md b/docs/schema/reference/transportation/types/subclass_rules.md similarity index 100% rename from docs/schema/reference/transportation/subclass_rules.md rename to docs/schema/reference/transportation/types/subclass_rules.md diff --git a/docs/schema/reference/transportation/subtype.md b/docs/schema/reference/transportation/types/subtype.md similarity index 100% rename from docs/schema/reference/transportation/subtype.md rename to docs/schema/reference/transportation/types/subtype.md diff --git a/docs/schema/reference/transportation/types/surface_rule.md b/docs/schema/reference/transportation/types/surface_rule.md new file mode 100644 index 000000000..a94f8eb37 --- /dev/null +++ b/docs/schema/reference/transportation/types/surface_rule.md @@ -0,0 +1,8 @@ +# SurfaceRule + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `value` | [`RoadSurface`](road_surface.md) | | +| `between` | [`LinearlyReferencedRange`](../../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SurfaceRule applies to. | diff --git a/docs/schema/reference/transportation/surfaces.md b/docs/schema/reference/transportation/types/surfaces.md similarity index 100% rename from docs/schema/reference/transportation/surfaces.md rename to docs/schema/reference/transportation/types/surfaces.md diff --git a/docs/schema/reference/transportation/width.md b/docs/schema/reference/transportation/types/width.md similarity index 100% rename from docs/schema/reference/transportation/width.md rename to docs/schema/reference/transportation/types/width.md diff --git a/docs/schema/reference/transportation/types/width_rule.md b/docs/schema/reference/transportation/types/width_rule.md new file mode 100644 index 000000000..2f7a46b44 --- /dev/null +++ b/docs/schema/reference/transportation/types/width_rule.md @@ -0,0 +1,8 @@ +# WidthRule + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `value` | [`Width`](width.md) | | +| `between` | [`LinearlyReferencedRange`](../../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing WidthRule applies to. | diff --git a/docs/schema/reference/transportation/width_rules.md b/docs/schema/reference/transportation/types/width_rules.md similarity index 100% rename from docs/schema/reference/transportation/width_rules.md rename to docs/schema/reference/transportation/types/width_rules.md diff --git a/docs/schema/reference/transportation/width_rule.md b/docs/schema/reference/transportation/width_rule.md deleted file mode 100644 index c6b3dd92a..000000000 --- a/docs/schema/reference/transportation/width_rule.md +++ /dev/null @@ -1,8 +0,0 @@ -# WidthRule - -## Fields - -| Name | Type | Description | -|-----:|:----:|-------------| -| `value` | [`Width`](width.md) | | -| `between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing WidthRule applies to. | diff --git a/sidebars.js b/sidebars.js index 301d946e2..910f62a89 100644 --- a/sidebars.js +++ b/sidebars.js @@ -88,186 +88,7 @@ const sidebars = { type: 'category', label: 'Reference', collapsed: true, - items: [ - { - type: 'category', - label: 'Core', - collapsed: true, - items: [ - 'schema/reference/core/names', - 'schema/reference/core/common_names', - 'schema/reference/core/name_variant', - 'schema/reference/core/name_rule', - 'schema/reference/core/perspectives', - 'schema/reference/core/perspective_mode', - 'schema/reference/core/cartographic_hints', - 'schema/reference/core/min_zoom', - 'schema/reference/core/max_zoom', - 'schema/reference/core/prominence', - 'schema/reference/core/sort_key', - { - type: 'category', - label: 'Scoping', - collapsed: true, - items: [ - 'schema/reference/core/scoping/side', - 'schema/reference/core/scoping/linearly_referenced_range', - ], - }, - 'schema/reference/core/sources', - 'schema/reference/core/source_item', - 'schema/reference/core/confidence_score', - 'schema/reference/core/feature_version', - 'schema/reference/core/level', - ], - }, - { - type: 'category', - label: 'System', - collapsed: true, - items: [ - { - type: 'category', - label: 'Primitives', - collapsed: true, - items: [ - 'schema/reference/system/primitive/primitives', - 'schema/reference/system/primitive/geometry', - ], - }, - { - type: 'category', - label: 'References', - collapsed: true, - items: [ - 'schema/reference/system/ref/id', - ], - }, - 'schema/reference/system/country_code_alpha2', - 'schema/reference/system/hex_color', - 'schema/reference/system/json_pointer', - 'schema/reference/system/language_tag', - 'schema/reference/system/phone_number', - 'schema/reference/system/region_code', - 'schema/reference/system/snake_case_string', - 'schema/reference/system/stripped_string', - 'schema/reference/system/wikidata_id', - ], - }, - - { - type: 'category', - label: 'Addresses', - collapsed: true, - items: [ - 'schema/reference/addresses/address', - 'schema/reference/addresses/address_level', - ], - }, - { - type: 'category', - label: 'Base Features', - collapsed: true, - items: [ - 'schema/reference/base/water', - 'schema/reference/base/water_class', - 'schema/reference/base/water_subtype', - 'schema/reference/base/land', - 'schema/reference/base/land_class', - 'schema/reference/base/land_subtype', - 'schema/reference/base/land_use', - 'schema/reference/base/land_use_class', - 'schema/reference/base/land_use_subtype', - 'schema/reference/base/land_cover', - 'schema/reference/base/land_cover_subtype', - 'schema/reference/base/bathymetry', - 'schema/reference/base/depth', - 'schema/reference/base/infrastructure', - 'schema/reference/base/infrastructure_class', - 'schema/reference/base/infrastructure_subtype', - 'schema/reference/base/height', - 'schema/reference/base/elevation', - 'schema/reference/base/source_tags', - 'schema/reference/base/surface_material', - ], - }, - { - type: 'category', - label: 'Buildings', - collapsed: true, - items: [ - 'schema/reference/buildings/building', - 'schema/reference/buildings/building_class', - 'schema/reference/buildings/building_subtype', - 'schema/reference/buildings/building_part', - 'schema/reference/buildings/facade_material', - 'schema/reference/buildings/roof_material', - 'schema/reference/buildings/roof_orientation', - 'schema/reference/buildings/roof_shape', - ], - }, - { - type: 'category', - label: 'Divisions', - collapsed: true, - items: [ - 'schema/reference/divisions/division', - 'schema/reference/divisions/division_class', - { - type: 'category', - label: 'Division', - collapsed: true, - items: [ - 'schema/reference/divisions/division/norms', - ], - }, - 'schema/reference/divisions/capital_of_division_item', - 'schema/reference/divisions/hierarchy', - 'schema/reference/divisions/hierarchy_item', - 'schema/reference/divisions/division_area', - { - type: 'category', - label: 'Division Area', - collapsed: true, - items: [ - 'schema/reference/divisions/division_area/area_class', - ], - }, - 'schema/reference/divisions/division_boundary', - { - type: 'category', - label: 'Division Boundary', - collapsed: true, - items: [ - 'schema/reference/divisions/division_boundary/boundary_class', - ], - }, - 'schema/reference/divisions/admin_level', - 'schema/reference/divisions/division_id', - 'schema/reference/divisions/place_type', - ], - }, - { - type: 'category', - label: 'Places', - collapsed: true, - items: [ - 'schema/reference/places/place', - 'schema/reference/places/brand', - 'schema/reference/places/categories', - 'schema/reference/places/operating_status', - 'schema/reference/places/taxonomy', - ], - }, - { - type: 'category', - label: 'Transportation', - collapsed: true, - items: [ - 'schema/reference/transportation/connector', - ], - }, - ], + items: [{ type: 'autogenerated', dirName: 'schema/reference' }], }, ], }; From 06744ff6244785709f1ae816b889a3bbbdb833bd Mon Sep 17 00:00:00 2001 From: Seth Fitzsimmons Date: Sun, 22 Feb 2026 19:43:34 -0800 Subject: [PATCH 07/12] Sync schema reference Include model-level validation rules --- docs/schema/reference/addresses/address.md | 20 +++--- docs/schema/reference/base/bathymetry.md | 12 ++-- docs/schema/reference/base/infrastructure.md | 34 +++++----- docs/schema/reference/base/land.md | 28 ++++---- docs/schema/reference/base/land_cover.md | 14 ++-- docs/schema/reference/base/land_use.md | 28 ++++---- docs/schema/reference/base/types/depth.md | 6 +- docs/schema/reference/base/types/elevation.md | 6 +- docs/schema/reference/base/types/height.md | 2 +- docs/schema/reference/base/water.md | 26 ++++---- docs/schema/reference/buildings/building.md | 14 ++-- .../reference/buildings/building_part.md | 16 ++--- .../schema/reference/core/confidence_score.md | 4 +- docs/schema/reference/core/feature_version.md | 6 +- docs/schema/reference/core/level.md | 4 +- docs/schema/reference/core/max_zoom.md | 8 +-- docs/schema/reference/core/min_zoom.md | 8 +-- docs/schema/reference/core/prominence.md | 8 +-- .../scoping/linearly_referenced_position.md | 4 +- .../core/scoping/linearly_referenced_range.md | 6 +- docs/schema/reference/core/sort_key.md | 4 +- docs/schema/reference/core/sources.md | 4 +- docs/schema/reference/divisions/division.md | 64 ++++++++++--------- .../reference/divisions/division/norms.md | 9 --- .../reference/divisions/division_area.md | 33 ++++++---- .../reference/divisions/division_boundary.md | 35 ++++++---- .../reference/divisions/types/admin_level.md | 4 +- .../{ => types}/division/_category_.json | 0 .../divisions/types/division/norms.md | 9 +++ .../{ => types}/division_area/_category_.json | 0 .../{ => types}/division_area/area_class.md | 0 .../division_boundary/_category_.json | 0 .../division_boundary/boundary_class.md | 0 .../reference/divisions/types/division_id.md | 6 +- .../reference/divisions/types/hierarchy.md | 4 +- docs/schema/reference/places/place.md | 30 ++++----- .../reference/system/country_code_alpha2.md | 2 +- docs/schema/reference/system/hex_color.md | 2 +- docs/schema/reference/system/json_pointer.md | 2 +- docs/schema/reference/system/language_tag.md | 2 +- docs/schema/reference/system/phone_number.md | 2 +- docs/schema/reference/system/ref/id.md | 4 +- docs/schema/reference/system/region_code.md | 2 +- .../reference/system/snake_case_string.md | 2 +- .../reference/system/stripped_string.md | 2 +- docs/schema/reference/system/wikidata_id.md | 2 +- .../reference/transportation/connector.md | 10 +-- .../types/access_restriction_rule.when.md | 4 ++ .../transportation/types/access_rules.md | 4 +- .../transportation/types/destination_rule.md | 4 ++ .../types/prohibited_transition_rule.when.md | 4 ++ .../transportation/types/rail_flags.md | 4 +- .../transportation/types/road_flags.md | 4 +- .../transportation/types/speed_limit_rule.md | 4 ++ .../types/speed_limit_rule.when.md | 4 ++ .../transportation/types/speed_limits.md | 4 +- .../transportation/types/speed_value.md | 8 +-- .../transportation/types/surfaces.md | 4 +- .../reference/transportation/types/width.md | 2 +- .../transportation/types/width_rules.md | 4 +- 60 files changed, 290 insertions(+), 252 deletions(-) delete mode 100644 docs/schema/reference/divisions/division/norms.md rename docs/schema/reference/divisions/{ => types}/division/_category_.json (100%) create mode 100644 docs/schema/reference/divisions/types/division/norms.md rename docs/schema/reference/divisions/{ => types}/division_area/_category_.json (100%) rename docs/schema/reference/divisions/{ => types}/division_area/area_class.md (100%) rename docs/schema/reference/divisions/{ => types}/division_boundary/_category_.json (100%) rename docs/schema/reference/divisions/{ => types}/division_boundary/boundary_class.md (100%) diff --git a/docs/schema/reference/addresses/address.md b/docs/schema/reference/addresses/address.md index 0947da2c1..08e802e11 100644 --- a/docs/schema/reference/addresses/address.md +++ b/docs/schema/reference/addresses/address.md @@ -50,22 +50,22 @@ provinces, state, and regions, and similar addressing units are found. | Column | Value | |-------:|-------| -| `id` | 416ab01c-d836-4c4f-aedc-2f30941ce94d | -| `geometry` | POINT (-176.5637854 -43.9471955) | -| `theme` | addresses | -| `type` | address | +| `id` | `416ab01c-d836-4c4f-aedc-2f30941ce94d` | +| `geometry` | `POINT (-176.5637854 -43.9471955)` | +| `theme` | `addresses` | +| `type` | `address` | | `version` | `1` | | `sources[0].property` | | -| `sources[0].dataset` | OpenAddresses/LINZ | +| `sources[0].dataset` | `OpenAddresses/LINZ` | | `sources[0].record_id` | `null` | | `sources[0].update_time` | `null` | | `sources[0].confidence` | `null` | | `sources[0].between` | `null` | -| `address_levels[0].value` | Chatham Islands | -| `address_levels[1].value` | Chatham Island | -| `country` | NZ | -| `number` | 54 | +| `address_levels[0].value` | `Chatham Islands` | +| `address_levels[1].value` | `Chatham Island` | +| `country` | `NZ` | +| `number` | `54` | | `postal_city` | `null` | | `postcode` | `null` | -| `street` | Tikitiki Hill Road | +| `street` | `Tikitiki Hill Road` | | `unit` | `null` | diff --git a/docs/schema/reference/base/bathymetry.md b/docs/schema/reference/base/bathymetry.md index 14576239c..fd798904d 100644 --- a/docs/schema/reference/base/bathymetry.md +++ b/docs/schema/reference/base/bathymetry.md @@ -36,14 +36,14 @@ lake beds or ocean floors. | Column | Value | |-------:|-------| -| `id` | 5d40bd6c-db14-5492-b29f-5e25a59032bc | -| `geometry` | MULTIPOLYGON (((-170.71296928 -76.744313428, -170.719841483 -76.757076376, -170.731061124 -76.761566... | -| `theme` | base | -| `type` | bathymetry | +| `id` | `5d40bd6c-db14-5492-b29f-5e25a59032bc` | +| `geometry` | `MULTIPOLYGON (((-170.71296928 -76.744313428, -170.719841483 -76.757076376, -170.731061124 -76.761566...` | +| `theme` | `base` | +| `type` | `bathymetry` | | `version` | `0` | | `sources[0].property` | | -| `sources[0].dataset` | ETOPO/GLOBathy | -| `sources[0].record_id` | 2024-12-09T00:00:00.000Z | +| `sources[0].dataset` | `ETOPO/GLOBathy` | +| `sources[0].record_id` | `2024-12-09T00:00:00.000Z` | | `sources[0].update_time` | `null` | | `sources[0].confidence` | `null` | | `sources[0].between` | `null` | diff --git a/docs/schema/reference/base/infrastructure.md b/docs/schema/reference/base/infrastructure.md index 8b0cc5a89..60a77ec37 100644 --- a/docs/schema/reference/base/infrastructure.md +++ b/docs/schema/reference/base/infrastructure.md @@ -49,29 +49,29 @@ such as bridges, airports, runways, aerialways, communication towers, and power | Column | Value | |-------:|-------| -| `id` | e9e3d506-89c0-3473-8cee-5e5ac6596d6c | -| `geometry` | POINT (-179.9999994 -82.42408) | -| `theme` | base | -| `type` | infrastructure | +| `id` | `e9e3d506-89c0-3473-8cee-5e5ac6596d6c` | +| `geometry` | `POINT (-179.9999994 -82.42408)` | +| `theme` | `base` | +| `type` | `infrastructure` | | `version` | `0` | | `sources[0].property` | | -| `sources[0].dataset` | OpenStreetMap | -| `sources[0].record_id` | n7674174803@2 | -| `sources[0].update_time` | 2023-04-07T17:37:48.000Z | +| `sources[0].dataset` | `OpenStreetMap` | +| `sources[0].record_id` | `n7674174803@2` | +| `sources[0].update_time` | `2023-04-07T17:37:48.000Z` | | `sources[0].confidence` | `null` | | `sources[0].between` | `null` | -| `class` | information | -| `subtype` | pedestrian | +| `class` | `information` | +| `subtype` | `pedestrian` | | `height` | `null` | | `surface` | `null` | -| `names.primary` | 1306 km to South Pole | +| `names.primary` | `1306 km to South Pole` | | `names.common` | `null` | | `names.rules` | `null` | | `level` | `null` | -| `source_tags.description` | 1036 km to South Pole. | -| `source_tags.information` | route_marker | -| `source_tags.note` | The road continue in west side of the map | -| `source_tags.start_date` | 2007 | -| `source_tags.tourism` | information | -| `source_tags.wikipedia` | en:South Pole Traverse | -| `wikidata` | Q800558 | +| `source_tags.description` | `1036 km to South Pole.` | +| `source_tags.information` | `route_marker` | +| `source_tags.note` | `The road continue in west side of the map` | +| `source_tags.start_date` | `2007` | +| `source_tags.tourism` | `information` | +| `source_tags.wikipedia` | `en:South Pole Traverse` | +| `wikidata` | `Q800558` | diff --git a/docs/schema/reference/base/land.md b/docs/schema/reference/base/land.md index 03e2a2fa6..a758ac823 100644 --- a/docs/schema/reference/base/land.md +++ b/docs/schema/reference/base/land.md @@ -59,26 +59,26 @@ TODO: Update this description when the relationship to `land_cover` is better un | Column | Value | |-------:|-------| -| `id` | 70fc3596-a987-3fea-820c-c016c0a2f0da | -| `geometry` | POINT (-178.7 -85.45) | -| `theme` | base | -| `type` | land | +| `id` | `70fc3596-a987-3fea-820c-c016c0a2f0da` | +| `geometry` | `POINT (-178.7 -85.45)` | +| `theme` | `base` | +| `type` | `land` | | `version` | `0` | | `sources[0].property` | | -| `sources[0].dataset` | OpenStreetMap | -| `sources[0].record_id` | n11693475112@1 | -| `sources[0].update_time` | 2024-03-05T09:23:39.000Z | +| `sources[0].dataset` | `OpenStreetMap` | +| `sources[0].record_id` | `n11693475112@1` | +| `sources[0].update_time` | `2024-03-05T09:23:39.000Z` | | `sources[0].confidence` | `null` | | `sources[0].between` | `null` | -| `class` | cliff | -| `subtype` | physical | +| `class` | `cliff` | +| `subtype` | `physical` | | `elevation` | `null` | | `surface` | `null` | -| `names.primary` | Dismal Buttress | +| `names.primary` | `Dismal Buttress` | | `names.common` | `null` | | `names.rules` | `null` | | `level` | `null` | -| `source_tags.natural` | cliff | -| `source_tags.ref:linz:place_id` | 12318 | -| `source_tags.wikipedia` | en:Dismal Buttress | -| `wikidata` | Q5282342 | +| `source_tags.natural` | `cliff` | +| `source_tags.ref:linz:place_id` | `12318` | +| `source_tags.wikipedia` | `en:Dismal Buttress` | +| `wikidata` | `Q5282342` | diff --git a/docs/schema/reference/base/land_cover.md b/docs/schema/reference/base/land_cover.md index 23c849bfb..a385a95dd 100644 --- a/docs/schema/reference/base/land_cover.md +++ b/docs/schema/reference/base/land_cover.md @@ -43,18 +43,18 @@ TODO: Explain relationship to `Land` features. | Column | Value | |-------:|-------| -| `id` | c347312d-012b-5e73-8bd3-a10d04b2981d | -| `geometry` | POLYGON ((-179.99877531181616 65.95172539425603, -179.99740705536922 65.95265577758867, -179.9975172... | -| `theme` | base | -| `type` | land_cover | +| `id` | `c347312d-012b-5e73-8bd3-a10d04b2981d` | +| `geometry` | `POLYGON ((-179.99877531181616 65.95172539425603, -179.99740705536922 65.95265577758867, -179.9975172...` | +| `theme` | `base` | +| `type` | `land_cover` | | `version` | `0` | | `sources[0].property` | | -| `sources[0].dataset` | ESA WorldCover | +| `sources[0].dataset` | `ESA WorldCover` | | `sources[0].record_id` | `null` | -| `sources[0].update_time` | 2024-11-07T00:00:00.000Z | +| `sources[0].update_time` | `2024-11-07T00:00:00.000Z` | | `sources[0].confidence` | `null` | | `sources[0].between` | `null` | -| `subtype` | barren | +| `subtype` | `barren` | | `cartography.prominence` | `null` | | `cartography.min_zoom` | `8` | | `cartography.max_zoom` | `15` | diff --git a/docs/schema/reference/base/land_use.md b/docs/schema/reference/base/land_use.md index fcb21baae..b7902f4e4 100644 --- a/docs/schema/reference/base/land_use.md +++ b/docs/schema/reference/base/land_use.md @@ -54,27 +54,27 @@ TODO: Explain relationship to `Land` features. | Column | Value | |-------:|-------| -| `id` | 1e1f6095-5bd2-3fdb-a422-41351b848e9d | -| `geometry` | POLYGON ((-176.5623454 -43.9567812, -176.5627644 -43.9561272, -176.5626898 -43.9557432, -176.5624297... | -| `theme` | base | -| `type` | land_use | +| `id` | `1e1f6095-5bd2-3fdb-a422-41351b848e9d` | +| `geometry` | `POLYGON ((-176.5623454 -43.9567812, -176.5627644 -43.9561272, -176.5626898 -43.9557432, -176.5624297...` | +| `theme` | `base` | +| `type` | `land_use` | | `version` | `0` | | `sources[0].property` | | -| `sources[0].dataset` | OpenStreetMap | -| `sources[0].record_id` | w56117029@3 | -| `sources[0].update_time` | 2010-04-24T22:35:13.000Z | +| `sources[0].dataset` | `OpenStreetMap` | +| `sources[0].record_id` | `w56117029@3` | +| `sources[0].update_time` | `2010-04-24T22:35:13.000Z` | | `sources[0].confidence` | `null` | | `sources[0].between` | `null` | -| `class` | golf_course | -| `subtype` | golf | +| `class` | `golf_course` | +| `subtype` | `golf` | | `elevation` | `null` | | `surface` | `null` | -| `names.primary` | Chatham Islands Golf Club | +| `names.primary` | `Chatham Islands Golf Club` | | `names.common` | `null` | | `names.rules` | `null` | | `level` | `null` | -| `source_tags.LINZ:source_version` | V16 | -| `source_tags.attribution` | http://wiki.osm.org/wiki/Attribution#LINZ | -| `source_tags.leisure` | golf_course | -| `source_tags.source_ref` | http://www.linz.govt.nz/topography/topo-maps/ | +| `source_tags.LINZ:source_version` | `V16` | +| `source_tags.attribution` | `http://wiki.osm.org/wiki/Attribution#LINZ` | +| `source_tags.leisure` | `golf_course` | +| `source_tags.source_ref` | `http://www.linz.govt.nz/topography/topo-maps/` | | `wikidata` | `null` | diff --git a/docs/schema/reference/base/types/depth.md b/docs/schema/reference/base/types/depth.md index dc5dbecc6..5d1088224 100644 --- a/docs/schema/reference/base/types/depth.md +++ b/docs/schema/reference/base/types/depth.md @@ -2,6 +2,6 @@ ## Constraints -- `Ge(ge=0)` -- `Ge(ge=-2147483648)` (from [`int32`](../../system/primitive/primitives.md)) -- `Le(le=2147483647)` (from [`int32`](../../system/primitive/primitives.md)) +- `≥ 0` +- `≥ -2147483648` (from [`int32`](../../system/primitive/primitives.md)) +- `≤ 2147483647` (from [`int32`](../../system/primitive/primitives.md)) diff --git a/docs/schema/reference/base/types/elevation.md b/docs/schema/reference/base/types/elevation.md index 882e708b6..15e4a34c7 100644 --- a/docs/schema/reference/base/types/elevation.md +++ b/docs/schema/reference/base/types/elevation.md @@ -2,6 +2,6 @@ ## Constraints -- `Le(le=9000)` -- `Ge(ge=-2147483648)` (from [`int32`](../../system/primitive/primitives.md)) -- `Le(le=2147483647)` (from [`int32`](../../system/primitive/primitives.md)) +- `≤ 9000` +- `≥ -2147483648` (from [`int32`](../../system/primitive/primitives.md)) +- `≤ 2147483647` (from [`int32`](../../system/primitive/primitives.md)) diff --git a/docs/schema/reference/base/types/height.md b/docs/schema/reference/base/types/height.md index a6501ae8d..35d410035 100644 --- a/docs/schema/reference/base/types/height.md +++ b/docs/schema/reference/base/types/height.md @@ -2,4 +2,4 @@ ## Constraints -- `Gt(gt=0)` +- `> 0` diff --git a/docs/schema/reference/base/water.md b/docs/schema/reference/base/water.md index a4e5c73d7..cdb46fcb4 100644 --- a/docs/schema/reference/base/water.md +++ b/docs/schema/reference/base/water.md @@ -70,25 +70,25 @@ and `water=*`. | Column | Value | |-------:|-------| -| `id` | 6bbb5fe5-bf26-3efa-b120-0a7079b60840 | -| `geometry` | POINT (-177.031799 -84.934793) | -| `theme` | base | -| `type` | water | +| `id` | `6bbb5fe5-bf26-3efa-b120-0a7079b60840` | +| `geometry` | `POINT (-177.031799 -84.934793)` | +| `theme` | `base` | +| `type` | `water` | | `version` | `0` | | `sources[0].property` | | -| `sources[0].dataset` | OpenStreetMap | -| `sources[0].record_id` | n11109190647@2 | -| `sources[0].update_time` | 2024-02-11T05:52:05.000Z | +| `sources[0].dataset` | `OpenStreetMap` | +| `sources[0].record_id` | `n11109190647@2` | +| `sources[0].update_time` | `2024-02-11T05:52:05.000Z` | | `sources[0].confidence` | `null` | | `sources[0].between` | `null` | -| `class` | cape | -| `subtype` | physical | +| `class` | `cape` | +| `subtype` | `physical` | | `is_intermittent` | `null` | | `is_salt` | `null` | | `level` | `null` | -| `names.primary` | Thanksgiving Point | +| `names.primary` | `Thanksgiving Point` | | `names.common` | `null` | | `names.rules` | `null` | -| `source_tags.natural` | cape | -| `source_tags.ref:linz:place_id` | 13433 | -| `wikidata` | Q33140589 | +| `source_tags.natural` | `cape` | +| `source_tags.ref:linz:place_id` | `13433` | +| `wikidata` | `Q33140589` | diff --git a/docs/schema/reference/buildings/building.md b/docs/schema/reference/buildings/building.md index c34158e64..8283a8af3 100644 --- a/docs/schema/reference/buildings/building.md +++ b/docs/schema/reference/buildings/building.md @@ -65,15 +65,15 @@ model of the building. | Column | Value | |-------:|-------| -| `id` | 148f35b1-7bc1-4180-9280-10d39b13883b | -| `geometry` | POLYGON ((-176.6435004 -43.9938042, -176.6435738 -43.9937107, -176.6437726 -43.9937913, -176.6436992... | -| `theme` | buildings | -| `type` | building | +| `id` | `148f35b1-7bc1-4180-9280-10d39b13883b` | +| `geometry` | `POLYGON ((-176.6435004 -43.9938042, -176.6435738 -43.9937107, -176.6437726 -43.9937913, -176.6436992...` | +| `theme` | `buildings` | +| `type` | `building` | | `version` | `1` | | `sources[0].property` | | -| `sources[0].dataset` | OpenStreetMap | -| `sources[0].record_id` | w519166507@1 | -| `sources[0].update_time` | 2017-08-27T21:39:50.000Z | +| `sources[0].dataset` | `OpenStreetMap` | +| `sources[0].record_id` | `w519166507@1` | +| `sources[0].update_time` | `2017-08-27T21:39:50.000Z` | | `sources[0].confidence` | `null` | | `sources[0].between` | `null` | | `subtype` | `null` | diff --git a/docs/schema/reference/buildings/building_part.md b/docs/schema/reference/buildings/building_part.md index 7c82320b7..1b2821dff 100644 --- a/docs/schema/reference/buildings/building_part.md +++ b/docs/schema/reference/buildings/building_part.md @@ -66,18 +66,18 @@ vertical dimension. | Column | Value | |-------:|-------| -| `id` | 19412d64-51ac-3d6a-ac2f-8a8c8b91bb60 | -| `geometry` | POLYGON ((-73.2462509 -39.8108937, -73.2462755 -39.8109047, -73.246291 -39.8109182, -73.2463022 -39.... | -| `theme` | buildings | -| `type` | building_part | +| `id` | `19412d64-51ac-3d6a-ac2f-8a8c8b91bb60` | +| `geometry` | `POLYGON ((-73.2462509 -39.8108937, -73.2462755 -39.8109047, -73.246291 -39.8109182, -73.2463022 -39....` | +| `theme` | `buildings` | +| `type` | `building_part` | | `version` | `0` | | `sources[0].property` | | -| `sources[0].dataset` | OpenStreetMap | -| `sources[0].record_id` | w223076787@2 | -| `sources[0].update_time` | 2014-10-31T22:55:36.000Z | +| `sources[0].dataset` | `OpenStreetMap` | +| `sources[0].record_id` | `w223076787@2` | +| `sources[0].update_time` | `2014-10-31T22:55:36.000Z` | | `sources[0].confidence` | `null` | | `sources[0].between` | `null` | -| `building_id` | bd663bd4-1844-4d7d-a400-114de051cf49 | +| `building_id` | `bd663bd4-1844-4d7d-a400-114de051cf49` | | `names` | `null` | | `level` | `3` | | `height` | `null` | diff --git a/docs/schema/reference/core/confidence_score.md b/docs/schema/reference/core/confidence_score.md index 3d44c506b..a0b9ed0e0 100644 --- a/docs/schema/reference/core/confidence_score.md +++ b/docs/schema/reference/core/confidence_score.md @@ -2,5 +2,5 @@ ## Constraints -- `Ge(ge=0.0)` -- `Le(le=1.0)` +- `≥ 0.0` +- `≤ 1.0` diff --git a/docs/schema/reference/core/feature_version.md b/docs/schema/reference/core/feature_version.md index b9be91e15..471c6ea56 100644 --- a/docs/schema/reference/core/feature_version.md +++ b/docs/schema/reference/core/feature_version.md @@ -2,6 +2,6 @@ ## Constraints -- `Ge(ge=0)` -- `Ge(ge=-2147483648)` (from [`int32`](../system/primitive/primitives.md)) -- `Le(le=2147483647)` (from [`int32`](../system/primitive/primitives.md)) +- `≥ 0` +- `≥ -2147483648` (from [`int32`](../system/primitive/primitives.md)) +- `≤ 2147483647` (from [`int32`](../system/primitive/primitives.md)) diff --git a/docs/schema/reference/core/level.md b/docs/schema/reference/core/level.md index 6c24bf327..7d373e500 100644 --- a/docs/schema/reference/core/level.md +++ b/docs/schema/reference/core/level.md @@ -2,5 +2,5 @@ ## Constraints -- `Ge(ge=-2147483648)` (from [`int32`](../system/primitive/primitives.md)) -- `Le(le=2147483647)` (from [`int32`](../system/primitive/primitives.md)) +- `≥ -2147483648` (from [`int32`](../system/primitive/primitives.md)) +- `≤ 2147483647` (from [`int32`](../system/primitive/primitives.md)) diff --git a/docs/schema/reference/core/max_zoom.md b/docs/schema/reference/core/max_zoom.md index 66e698851..116c04137 100644 --- a/docs/schema/reference/core/max_zoom.md +++ b/docs/schema/reference/core/max_zoom.md @@ -2,7 +2,7 @@ ## Constraints -- `Ge(ge=0)` -- `Le(le=23)` -- `Ge(ge=-2147483648)` (from [`int32`](../system/primitive/primitives.md)) -- `Le(le=2147483647)` (from [`int32`](../system/primitive/primitives.md)) +- `≥ 0` +- `≤ 23` +- `≥ -2147483648` (from [`int32`](../system/primitive/primitives.md)) +- `≤ 2147483647` (from [`int32`](../system/primitive/primitives.md)) diff --git a/docs/schema/reference/core/min_zoom.md b/docs/schema/reference/core/min_zoom.md index 86d482f02..01b459178 100644 --- a/docs/schema/reference/core/min_zoom.md +++ b/docs/schema/reference/core/min_zoom.md @@ -2,7 +2,7 @@ ## Constraints -- `Ge(ge=0)` -- `Le(le=23)` -- `Ge(ge=-2147483648)` (from [`int32`](../system/primitive/primitives.md)) -- `Le(le=2147483647)` (from [`int32`](../system/primitive/primitives.md)) +- `≥ 0` +- `≤ 23` +- `≥ -2147483648` (from [`int32`](../system/primitive/primitives.md)) +- `≤ 2147483647` (from [`int32`](../system/primitive/primitives.md)) diff --git a/docs/schema/reference/core/prominence.md b/docs/schema/reference/core/prominence.md index 36824b810..874045c45 100644 --- a/docs/schema/reference/core/prominence.md +++ b/docs/schema/reference/core/prominence.md @@ -2,7 +2,7 @@ ## Constraints -- `Ge(ge=1)` -- `Le(le=100)` -- `Ge(ge=-2147483648)` (from [`int32`](../system/primitive/primitives.md)) -- `Le(le=2147483647)` (from [`int32`](../system/primitive/primitives.md)) +- `≥ 1` +- `≤ 100` +- `≥ -2147483648` (from [`int32`](../system/primitive/primitives.md)) +- `≤ 2147483647` (from [`int32`](../system/primitive/primitives.md)) diff --git a/docs/schema/reference/core/scoping/linearly_referenced_position.md b/docs/schema/reference/core/scoping/linearly_referenced_position.md index 04e5dfd21..0db37caf7 100644 --- a/docs/schema/reference/core/scoping/linearly_referenced_position.md +++ b/docs/schema/reference/core/scoping/linearly_referenced_position.md @@ -2,5 +2,5 @@ ## Constraints -- `Ge(ge=0.0)` -- `Le(le=1.0)` +- `≥ 0.0` +- `≤ 1.0` diff --git a/docs/schema/reference/core/scoping/linearly_referenced_range.md b/docs/schema/reference/core/scoping/linearly_referenced_range.md index c8bd48b0e..5e9ef6a6a 100644 --- a/docs/schema/reference/core/scoping/linearly_referenced_range.md +++ b/docs/schema/reference/core/scoping/linearly_referenced_range.md @@ -2,6 +2,6 @@ ## Constraints -- `LinearReferenceRangeConstraint` -- `Ge(ge=0.0)` (from [`LinearlyReferencedPosition`](linearly_referenced_position.md)) -- `Le(le=1.0)` (from [`LinearlyReferencedPosition`](linearly_referenced_position.md)) +- Linear reference range constraint (0.0 to 1.0). (`LinearReferenceRangeConstraint`) +- `≥ 0.0` (from [`LinearlyReferencedPosition`](linearly_referenced_position.md)) +- `≤ 1.0` (from [`LinearlyReferencedPosition`](linearly_referenced_position.md)) diff --git a/docs/schema/reference/core/sort_key.md b/docs/schema/reference/core/sort_key.md index 5f602fb40..c8601d62d 100644 --- a/docs/schema/reference/core/sort_key.md +++ b/docs/schema/reference/core/sort_key.md @@ -2,5 +2,5 @@ ## Constraints -- `Ge(ge=-2147483648)` (from [`int32`](../system/primitive/primitives.md)) -- `Le(le=2147483647)` (from [`int32`](../system/primitive/primitives.md)) +- `≥ -2147483648` (from [`int32`](../system/primitive/primitives.md)) +- `≤ 2147483647` (from [`int32`](../system/primitive/primitives.md)) diff --git a/docs/schema/reference/core/sources.md b/docs/schema/reference/core/sources.md index 151ab3f1c..654b7cc83 100644 --- a/docs/schema/reference/core/sources.md +++ b/docs/schema/reference/core/sources.md @@ -2,5 +2,5 @@ ## Constraints -- `MinLen(min_length=1)` -- `UniqueItemsConstraint` +- `minimum length: 1` +- Ensures all items in a collection are unique. (`UniqueItemsConstraint`) diff --git a/docs/schema/reference/divisions/division.md b/docs/schema/reference/divisions/division.md index e13982b32..db5158ae6 100644 --- a/docs/schema/reference/divisions/division.md +++ b/docs/schema/reference/divisions/division.md @@ -58,7 +58,7 @@ Examples include countries, provinces, cities, towns, neighborhoods, etc. | `perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | Political perspectives from which this division is considered to be an accurate representation.

If this property is absent, then this division is not known to be disputed from any political perspective. Consequently, there is only one division feature representing the entire real world entity.

If this property is present, it means the division represents one of several alternative perspectives on the same real-world entity.

There are two modes of perspective:

1. `accepted_by` means the representation of the division is accepted by the listed entities and would be included on a map drawn from their perspective.

2. `disputed_by` means the representation of the division is disputed by the listed entities and would be excluded from a map drawn from their perspective.

When drawing a map from the perspective of a given country, one would start by gathering all the undisputed divisions (with no `perspectives` property), and then adding to that first all divisions explicitly accepted by the country, and second all divisions not explicitly disputed by the country. | | `perspectives.mode` | [`PerspectiveMode`](../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | | `perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | -| `norms` | [`Norms`](division/norms.md) (optional) | Collects information about local norms and rules within the division that are generally useful for mapping and map-related use cases.

If the norms property or a desired sub-property of the norms property is missing on a division, but at least one of its ancestor divisions has the norms property and the desired sub-property, then the value from the nearest ancestor division may be assumed. | +| `norms` | [`Norms`](types/division/norms.md) (optional) | Collects information about local norms and rules within the division that are generally useful for mapping and map-related use cases.

If the norms property or a desired sub-property of the norms property is missing on a division, but at least one of its ancestor divisions has the norms property and the desired sub-property, then the value from the nearest ancestor division may be assumed. | | `norms.driving_side` | [`Side`](../core/scoping/side.md) (optional) | Side of the road on which vehicles drive in the division. | | `population` | `int32` (optional) | Population of the division | | `capital_division_ids` | [`Id`](../system/ref/id.md) (list, optional) | Division IDs of this division's capital divisions. If present, this property will refer to the division IDs of the capital cities, county seats, etc. of a division. | @@ -67,6 +67,12 @@ Examples include countries, provinces, cities, towns, neighborhoods, etc. | `capital_of_divisions[].subtype` | [`PlaceType`](types/place_type.md) | | | `wikidata` | [`WikidataId`](../system/wikidata_id.md) (optional) | | +## Constraints + +- `admin_level` is required when `subtype` is one of: `county`, `macrocounty`, `region`, `macroregion`, `dependency`, `country` +- `parent_division_id` is required when `subtype` ≠ `country` +- `parent_division_id` is forbidden when `subtype` = `country` + ## Examples | Column | Value | @@ -75,46 +81,46 @@ Examples include countries, provinces, cities, towns, neighborhoods, etc. | `cartography.min_zoom` | `null` | | `cartography.max_zoom` | `null` | | `cartography.sort_key` | `null` | -| `names.primary` | Sia'atoutai | +| `names.primary` | `Sia'atoutai` | | `names.common` | `null` | -| `id` | 350e85f6-68ba-4114-9906-c2844815988b | -| `geometry` | POINT (-175.2551522 -21.1353686) | -| `theme` | divisions | -| `type` | division | +| `id` | `350e85f6-68ba-4114-9906-c2844815988b` | +| `geometry` | `POINT (-175.2551522 -21.1353686)` | +| `theme` | `divisions` | +| `type` | `division` | | `version` | `1` | | `sources[0].property` | | -| `sources[0].dataset` | OpenStreetMap | -| `sources[0].record_id` | n3173231082@4 | -| `sources[0].update_time` | 2014-12-18T09:17:03Z | +| `sources[0].dataset` | `OpenStreetMap` | +| `sources[0].record_id` | `n3173231082@4` | +| `sources[0].update_time` | `2014-12-18T09:17:03Z` | | `sources[0].confidence` | `null` | | `sources[0].between` | `null` | -| `subtype` | locality | -| `country` | TO | -| `hierarchies[0][0].division_id` | fef8748b-0c91-46ad-9f2d-976d8d2de3e9 | -| `hierarchies[0][0].subtype` | country | -| `hierarchies[0][0].name` | Tonga | -| `hierarchies[0][1].division_id` | 4d67561a-2292-41bd-8996-7853d276a42c | -| `hierarchies[0][1].subtype` | region | -| `hierarchies[0][1].name` | Tongatapu | -| `hierarchies[0][2].division_id` | 8730f0cc-d436-4f11-a7d3-49085813ef44 | -| `hierarchies[0][2].subtype` | county | -| `hierarchies[0][2].name` | Vahe Kolomotu'a | -| `hierarchies[0][3].division_id` | 350e85f6-68ba-4114-9906-c2844815988b | -| `hierarchies[0][3].subtype` | locality | -| `hierarchies[0][3].name` | Sia'atoutai | -| `parent_division_id` | 8730f0cc-d436-4f11-a7d3-49085813ef44 | -| `class` | village | -| `local_type.en` | village | -| `region` | TO-04 | +| `subtype` | `locality` | +| `country` | `TO` | +| `hierarchies[0][0].division_id` | `fef8748b-0c91-46ad-9f2d-976d8d2de3e9` | +| `hierarchies[0][0].subtype` | `country` | +| `hierarchies[0][0].name` | `Tonga` | +| `hierarchies[0][1].division_id` | `4d67561a-2292-41bd-8996-7853d276a42c` | +| `hierarchies[0][1].subtype` | `region` | +| `hierarchies[0][1].name` | `Tongatapu` | +| `hierarchies[0][2].division_id` | `8730f0cc-d436-4f11-a7d3-49085813ef44` | +| `hierarchies[0][2].subtype` | `county` | +| `hierarchies[0][2].name` | `Vahe Kolomotu'a` | +| `hierarchies[0][3].division_id` | `350e85f6-68ba-4114-9906-c2844815988b` | +| `hierarchies[0][3].subtype` | `locality` | +| `hierarchies[0][3].name` | `Sia'atoutai` | +| `parent_division_id` | `8730f0cc-d436-4f11-a7d3-49085813ef44` | +| `class` | `village` | +| `local_type.en` | `village` | +| `region` | `TO-04` | | `perspectives` | `null` | | `norms` | `null` | | `population` | `534` | | `capital_division_ids` | `null` | | `capital_of_divisions` | `null` | | `wikidata` | `null` | -| `names.rules[0].variant` | alternate | +| `names.rules[0].variant` | `alternate` | | `names.rules[0].language` | `null` | | `names.rules[0].perspectives` | `null` | -| `names.rules[0].value` | Nafualu | +| `names.rules[0].value` | `Nafualu` | | `names.rules[0].between` | `null` | | `names.rules[0].side` | `null` | diff --git a/docs/schema/reference/divisions/division/norms.md b/docs/schema/reference/divisions/division/norms.md deleted file mode 100644 index ace2d973f..000000000 --- a/docs/schema/reference/divisions/division/norms.md +++ /dev/null @@ -1,9 +0,0 @@ -# Norms - -Local norms and standards. - -## Fields - -| Name | Type | Description | -|-----:|:----:|-------------| -| `driving_side` | [`Side`](../../core/scoping/side.md) (optional) | Side of the road on which vehicles drive in the division. | diff --git a/docs/schema/reference/divisions/division_area.md b/docs/schema/reference/divisions/division_area.md index 7d4584038..e92614cea 100644 --- a/docs/schema/reference/divisions/division_area.md +++ b/docs/schema/reference/divisions/division_area.md @@ -43,7 +43,7 @@ belongs to. | `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset.

This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | | `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | | `subtype` | [`PlaceType`](types/place_type.md) | | -| `class` | [`AreaClass`](division_area/area_class.md) | | +| `class` | [`AreaClass`](types/division_area/area_class.md) | | | `is_land` | `boolean` (optional) | A boolean to indicate whether or not the feature geometry represents the land-clipped, non-maritime boundary. The geometry can be used for map rendering, cartographic display, and similar purposes. | | `is_territorial` | `boolean` (optional) | A boolean to indicate whether or not the feature geometry represents Overture's best approximation of this place's maritime boundary. For coastal places, this would tend to include the water area. The geometry can be used for data processing, reverse-geocoding, and similar purposes. | | `division_id` | [`Id`](../system/ref/id.md) | Division ID of the division this area belongs to. | @@ -51,28 +51,33 @@ belongs to. | `region` | [`RegionCode`](../system/region_code.md) (optional) | ISO 3166-2 principal subdivision code of the division this area belongs to. | | `admin_level` | [`AdminLevel`](types/admin_level.md) (optional) | | +## Constraints + +- Exactly one of `is_land`, `is_territorial` must be `true` +- `admin_level` is required when `subtype` is one of: `county`, `macrocounty`, `region`, `macroregion`, `dependency`, `country` + ## Examples | Column | Value | |-------:|-------| -| `names.primary` | ʻEua | +| `names.primary` | `ʻEua` | | `names.common` | `null` | | `names.rules` | `null` | -| `id` | eb9b112f-ec3c-47f7-b519-6f9f2e6fc2bd | -| `geometry` | MULTIPOLYGON (((-174.9553949 -21.4730179, -174.9514163 -21.4719978, -174.9520108 -21.4681253, -174.9... | -| `theme` | divisions | -| `type` | division_area | +| `id` | `eb9b112f-ec3c-47f7-b519-6f9f2e6fc2bd` | +| `geometry` | `MULTIPOLYGON (((-174.9553949 -21.4730179, -174.9514163 -21.4719978, -174.9520108 -21.4681253, -174.9...` | +| `theme` | `divisions` | +| `type` | `division_area` | | `version` | `2` | | `sources[0].property` | | -| `sources[0].dataset` | OpenStreetMap | -| `sources[0].record_id` | r7247527@3 | -| `sources[0].update_time` | 2020-12-30T18:41:56Z | +| `sources[0].dataset` | `OpenStreetMap` | +| `sources[0].record_id` | `r7247527@3` | +| `sources[0].update_time` | `2020-12-30T18:41:56Z` | | `sources[0].confidence` | `null` | | `sources[0].between` | `null` | -| `subtype` | region | -| `class` | land | +| `subtype` | `region` | +| `class` | `land` | | `is_land` | `true` | | `is_territorial` | `false` | -| `division_id` | 21597af0-b564-463c-a356-42c29e712b7d | -| `country` | TO | -| `region` | TO-01 | +| `division_id` | `21597af0-b564-463c-a356-42c29e712b7d` | +| `country` | `TO` | +| `region` | `TO-01` | diff --git a/docs/schema/reference/divisions/division_boundary.md b/docs/schema/reference/divisions/division_boundary.md index 0f1929771..ad39a8fb7 100644 --- a/docs/schema/reference/divisions/division_boundary.md +++ b/docs/schema/reference/divisions/division_boundary.md @@ -27,7 +27,7 @@ Some boundaries may be disputed by the divisions on one or both sides. | `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset.

This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | | `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | | `subtype` | [`PlaceType`](types/place_type.md) | | -| `class` | [`BoundaryClass`](division_boundary/boundary_class.md) | | +| `class` | [`BoundaryClass`](types/division_boundary/boundary_class.md) | | | `is_land` | `boolean` (optional) | A boolean to indicate whether or not the feature geometry represents the
land-clipped, non-maritime boundary. The geometry can be used for map
rendering, cartographic display, and similar purposes. | | `is_territorial` | `boolean` (optional) | A boolean to indicate whether or not the feature geometry represents
Overture's best approximation of this place's maritime boundary. For
coastal places, this would tend to include the water area. The geometry
can be used for data processing, reverse-geocoding, and similar purposes. | | `division_ids` | [`Id`](../system/ref/id.md) (list) | Identifies the two divisions to the left and right, respectively, of the boundary line. The left- and right-hand sides of the boundary are considered from the perspective of a person standing on the line facing in the direction in which the geometry is oriented, i.e. facing toward the end of the line.

The first array element is the Overture ID of the left division. The second element is the Overture ID of the right division. | @@ -39,33 +39,40 @@ Some boundaries may be disputed by the divisions on one or both sides. | `perspectives.mode` | [`PerspectiveMode`](../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | | `perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | +## Constraints + +- Exactly one of `is_land`, `is_territorial` must be `true` +- `admin_level` is required when `subtype` is one of: `county`, `macrocounty`, `region`, `macroregion`, `dependency`, `country` +- `country` is required when `subtype` ≠ `country` +- `country` is forbidden when `subtype` = `country` + ## Examples | Column | Value | |-------:|-------| -| `id` | 2bdf68e4-860d-3d8c-a472-ccf439a5302a | -| `geometry` | LINESTRING (-147.064823 -15.4231537, -147.0519131 -15.2885069, -147.048482 -15.1511701) | -| `theme` | divisions | -| `type` | division_boundary | +| `id` | `2bdf68e4-860d-3d8c-a472-ccf439a5302a` | +| `geometry` | `LINESTRING (-147.064823 -15.4231537, -147.0519131 -15.2885069, -147.048482 -15.1511701)` | +| `theme` | `divisions` | +| `type` | `division_boundary` | | `version` | `1` | | `sources[0].property` | | -| `sources[0].dataset` | OpenStreetMap | -| `sources[0].record_id` | r6063055@9 | -| `sources[0].update_time` | 2023-07-20T00:28:40Z | +| `sources[0].dataset` | `OpenStreetMap` | +| `sources[0].record_id` | `r6063055@9` | +| `sources[0].update_time` | `2023-07-20T00:28:40Z` | | `sources[0].confidence` | `null` | | `sources[0].between` | `null` | | `sources[1].property` | | -| `sources[1].dataset` | OpenStreetMap | -| `sources[1].record_id` | r6063063@12 | -| `sources[1].update_time` | 2023-07-20T00:28:40Z | +| `sources[1].dataset` | `OpenStreetMap` | +| `sources[1].record_id` | `r6063063@12` | +| `sources[1].update_time` | `2023-07-20T00:28:40Z` | | `sources[1].confidence` | `null` | | `sources[1].between` | `null` | -| `subtype` | county | -| `class` | maritime | +| `subtype` | `county` | +| `class` | `maritime` | | `is_land` | `false` | | `is_territorial` | `true` | | `division_ids` | `[ae266459-63a4-4508-8295-0101e27d039b, d4a6873d-885a-4f2a-bc0f-37e9d9e874e4]` | -| `country` | PF | +| `country` | `PF` | | `region` | `null` | | `is_disputed` | `false` | | `perspectives` | `null` | diff --git a/docs/schema/reference/divisions/types/admin_level.md b/docs/schema/reference/divisions/types/admin_level.md index f0dc2323d..31d708b96 100644 --- a/docs/schema/reference/divisions/types/admin_level.md +++ b/docs/schema/reference/divisions/types/admin_level.md @@ -2,5 +2,5 @@ ## Constraints -- `Ge(ge=0)` (from [`uint8`](../../system/primitive/primitives.md)) -- `Le(le=255)` (from [`uint8`](../../system/primitive/primitives.md)) +- `≥ 0` (from [`uint8`](../../system/primitive/primitives.md)) +- `≤ 255` (from [`uint8`](../../system/primitive/primitives.md)) diff --git a/docs/schema/reference/divisions/division/_category_.json b/docs/schema/reference/divisions/types/division/_category_.json similarity index 100% rename from docs/schema/reference/divisions/division/_category_.json rename to docs/schema/reference/divisions/types/division/_category_.json diff --git a/docs/schema/reference/divisions/types/division/norms.md b/docs/schema/reference/divisions/types/division/norms.md new file mode 100644 index 000000000..366aabbb2 --- /dev/null +++ b/docs/schema/reference/divisions/types/division/norms.md @@ -0,0 +1,9 @@ +# Norms + +Local norms and standards. + +## Fields + +| Name | Type | Description | +|-----:|:----:|-------------| +| `driving_side` | [`Side`](../../../core/scoping/side.md) (optional) | Side of the road on which vehicles drive in the division. | diff --git a/docs/schema/reference/divisions/division_area/_category_.json b/docs/schema/reference/divisions/types/division_area/_category_.json similarity index 100% rename from docs/schema/reference/divisions/division_area/_category_.json rename to docs/schema/reference/divisions/types/division_area/_category_.json diff --git a/docs/schema/reference/divisions/division_area/area_class.md b/docs/schema/reference/divisions/types/division_area/area_class.md similarity index 100% rename from docs/schema/reference/divisions/division_area/area_class.md rename to docs/schema/reference/divisions/types/division_area/area_class.md diff --git a/docs/schema/reference/divisions/division_boundary/_category_.json b/docs/schema/reference/divisions/types/division_boundary/_category_.json similarity index 100% rename from docs/schema/reference/divisions/division_boundary/_category_.json rename to docs/schema/reference/divisions/types/division_boundary/_category_.json diff --git a/docs/schema/reference/divisions/division_boundary/boundary_class.md b/docs/schema/reference/divisions/types/division_boundary/boundary_class.md similarity index 100% rename from docs/schema/reference/divisions/division_boundary/boundary_class.md rename to docs/schema/reference/divisions/types/division_boundary/boundary_class.md diff --git a/docs/schema/reference/divisions/types/division_id.md b/docs/schema/reference/divisions/types/division_id.md index 1c8d69ec8..41c30c504 100644 --- a/docs/schema/reference/divisions/types/division_id.md +++ b/docs/schema/reference/divisions/types/division_id.md @@ -2,6 +2,6 @@ ## Constraints -- `MinLen(min_length=1)` -- `MinLen(min_length=1)` (from [`Id`](../../system/ref/id.md)) -- `NoWhitespaceConstraint` +- `minimum length: 1` +- `minimum length: 1` (from [`Id`](../../system/ref/id.md)) +- Allows only strings that contain no whitespace characters. (`NoWhitespaceConstraint`, pattern: `^\S+$`) diff --git a/docs/schema/reference/divisions/types/hierarchy.md b/docs/schema/reference/divisions/types/hierarchy.md index 08d54721f..284b42783 100644 --- a/docs/schema/reference/divisions/types/hierarchy.md +++ b/docs/schema/reference/divisions/types/hierarchy.md @@ -2,5 +2,5 @@ ## Constraints -- `MinLen(min_length=1)` -- `UniqueItemsConstraint` +- `minimum length: 1` +- Ensures all items in a collection are unique. (`UniqueItemsConstraint`) diff --git a/docs/schema/reference/places/place.md b/docs/schema/reference/places/place.md index df79a1636..4cbbfbe26 100644 --- a/docs/schema/reference/places/place.md +++ b/docs/schema/reference/places/place.md @@ -75,19 +75,19 @@ Places are point representations of real-world facilities, businesses, services, | Column | Value | |-------:|-------| -| `id` | 99003ee6-e75b-4dd6-8a8a-53a5a716c50d | -| `geometry` | POINT (-150.46875 -79.1713346) | -| `theme` | places | -| `type` | place | +| `id` | `99003ee6-e75b-4dd6-8a8a-53a5a716c50d` | +| `geometry` | `POINT (-150.46875 -79.1713346)` | +| `theme` | `places` | +| `type` | `place` | | `version` | `1` | | `sources[0].property` | | -| `sources[0].dataset` | meta | -| `sources[0].record_id` | 107663894904826 | -| `sources[0].update_time` | 2025-06-30T07:00:00.000Z | +| `sources[0].dataset` | `meta` | +| `sources[0].record_id` | `107663894904826` | +| `sources[0].update_time` | `2025-06-30T07:00:00.000Z` | | `sources[0].confidence` | `0.7337175792507205` | | `sources[0].between` | `null` | -| `operating_status` | open | -| `categories.primary` | hotel | +| `operating_status` | `open` | +| `categories.primary` | `hotel` | | `categories.alternate` | `null` | | `confidence` | `0.7337175792507205` | | `websites` | `[https://www.superhotel.co.jp/s_hotels/beppu/]` | @@ -95,14 +95,14 @@ Places are point representations of real-world facilities, businesses, services, | `emails` | `null` | | `phones` | `[+81977009000]` | | `brand.wikidata` | `null` | -| `brand.names.primary` | SUPER HOTEL | +| `brand.names.primary` | `SUPER HOTEL` | | `brand.names.common` | `null` | | `brand.names.rules` | `null` | -| `addresses[0].freeform` | 秋田県横手市駅前町13−8 | -| `addresses[0].locality` | 横手市 | -| `addresses[0].postcode` | 013-0036 | +| `addresses[0].freeform` | `秋田県横手市駅前町13−8` | +| `addresses[0].locality` | `横手市` | +| `addresses[0].postcode` | `013-0036` | | `addresses[0].region` | `null` | -| `addresses[0].country` | JP | -| `names.primary` | スーパーホテル別府駅前 | +| `addresses[0].country` | `JP` | +| `names.primary` | `スーパーホテル別府駅前` | | `names.common` | `null` | | `names.rules` | `null` | diff --git a/docs/schema/reference/system/country_code_alpha2.md b/docs/schema/reference/system/country_code_alpha2.md index 298101271..f72afa05c 100644 --- a/docs/schema/reference/system/country_code_alpha2.md +++ b/docs/schema/reference/system/country_code_alpha2.md @@ -4,4 +4,4 @@ An ISO-3166-1 alpha-2 country code. ## Constraints -- `CountryCodeAlpha2Constraint` +- Allows only ISO 3166-1 alpha-2 country codes. (`CountryCodeAlpha2Constraint`, pattern: `^[A-Z]{2}$`) diff --git a/docs/schema/reference/system/hex_color.md b/docs/schema/reference/system/hex_color.md index 75ade6347..1cfa59db8 100644 --- a/docs/schema/reference/system/hex_color.md +++ b/docs/schema/reference/system/hex_color.md @@ -10,4 +10,4 @@ For example: ## Constraints -- `HexColorConstraint` +- Allows only hexadecimal color codes (e.g., #FF0000 or #FFF). (`HexColorConstraint`, pattern: `^#[0-9A-Fa-f]{3}([0-9A-Fa-f]{3})?$`) diff --git a/docs/schema/reference/system/json_pointer.md b/docs/schema/reference/system/json_pointer.md index ed768b185..c3fe528ac 100644 --- a/docs/schema/reference/system/json_pointer.md +++ b/docs/schema/reference/system/json_pointer.md @@ -14,4 +14,4 @@ For example: ## Constraints -- `JsonPointerConstraint` +- Allows only valid JSON Pointer values (RFC 6901). (`JsonPointerConstraint`) diff --git a/docs/schema/reference/system/language_tag.md b/docs/schema/reference/system/language_tag.md index 80ea9868f..9101775b7 100644 --- a/docs/schema/reference/system/language_tag.md +++ b/docs/schema/reference/system/language_tag.md @@ -15,4 +15,4 @@ For example: ## Constraints -- `LanguageTagConstraint` +- Allows only `BCP-47`_ language tags. (`LanguageTagConstraint`, pattern: `^(?:(?:[A-Za-z]{2,3}(?:-[A-Za-z]{3}){0,3}?)|(?:[A-Za-z]{4,8}))(?:-[A-Za-z]{4})?(?:-[A-Za-z]{2}|[0-9]{3})?(?:-(?:[A-Za-z0-9]{5,8}|[0-9][A-Za-z0-9]{3}))*(?:-[A-WY-Za-wy-z0-9](?:-[A-Za-z0-9]{2,8})+)*$`) diff --git a/docs/schema/reference/system/phone_number.md b/docs/schema/reference/system/phone_number.md index c03453656..0f20cf657 100644 --- a/docs/schema/reference/system/phone_number.md +++ b/docs/schema/reference/system/phone_number.md @@ -4,4 +4,4 @@ An international phone number. ## Constraints -- `PhoneNumberConstraint` +- Constraint for international phone numbers. (`PhoneNumberConstraint`, pattern: `^\+\d{1,3}[\s\-\(\)0-9]+$`) diff --git a/docs/schema/reference/system/ref/id.md b/docs/schema/reference/system/ref/id.md index 2e6ed3b5d..f22773d2c 100644 --- a/docs/schema/reference/system/ref/id.md +++ b/docs/schema/reference/system/ref/id.md @@ -4,5 +4,5 @@ A unique identifier. ## Constraints -- `MinLen(min_length=1)` -- `NoWhitespaceConstraint` +- `minimum length: 1` +- Allows only strings that contain no whitespace characters. (`NoWhitespaceConstraint`, pattern: `^\S+$`) diff --git a/docs/schema/reference/system/region_code.md b/docs/schema/reference/system/region_code.md index 57d8a88f9..b328079e7 100644 --- a/docs/schema/reference/system/region_code.md +++ b/docs/schema/reference/system/region_code.md @@ -4,4 +4,4 @@ An ISO 3166-2 principal subdivision code. ## Constraints -- `RegionCodeConstraint` +- ISO 3166-2 principal subdivision code constraint. (`RegionCodeConstraint`, pattern: `^[A-Z]{2}-[A-Z0-9]{1,3}$`) diff --git a/docs/schema/reference/system/snake_case_string.md b/docs/schema/reference/system/snake_case_string.md index c585cbbef..35563b36a 100644 --- a/docs/schema/reference/system/snake_case_string.md +++ b/docs/schema/reference/system/snake_case_string.md @@ -4,4 +4,4 @@ A string that looks like a snake case identifier, like a Python variable name (* ## Constraints -- `SnakeCaseConstraint` +- Allows only strings that look like snake case identifiers, *e.g.* `"foo_bar"`. (`SnakeCaseConstraint`, pattern: `^[a-z0-9]+(_[a-z0-9]+)*$`) diff --git a/docs/schema/reference/system/stripped_string.md b/docs/schema/reference/system/stripped_string.md index df0d5051d..ee9de1c87 100644 --- a/docs/schema/reference/system/stripped_string.md +++ b/docs/schema/reference/system/stripped_string.md @@ -4,4 +4,4 @@ A string without leading or trailing whitespace. ## Constraints -- `StrippedConstraint` +- Allows only strings that have no leading/trailing whitespace. (`StrippedConstraint`) diff --git a/docs/schema/reference/system/wikidata_id.md b/docs/schema/reference/system/wikidata_id.md index 7de874fb2..b65669d97 100644 --- a/docs/schema/reference/system/wikidata_id.md +++ b/docs/schema/reference/system/wikidata_id.md @@ -8,4 +8,4 @@ A wikidata ID, as found on https://www.wikidata.org/. ## Constraints -- `WikidataIdConstraint` +- Constraint for Wikidata identifiers (Q followed by digits). (`WikidataIdConstraint`, pattern: `^Q\d+$`) diff --git a/docs/schema/reference/transportation/connector.md b/docs/schema/reference/transportation/connector.md index 7ce21d767..c97d5e64f 100644 --- a/docs/schema/reference/transportation/connector.md +++ b/docs/schema/reference/transportation/connector.md @@ -31,13 +31,13 @@ Connectors are compatible with GeoJSON Point features. | Column | Value | |-------:|-------| -| `id` | 39542bee-230f-4b91-b7e5-a9b58e0c59b1 | -| `geometry` | POINT (-176.5472979 -43.9679472) | -| `theme` | transportation | -| `type` | connector | +| `id` | `39542bee-230f-4b91-b7e5-a9b58e0c59b1` | +| `geometry` | `POINT (-176.5472979 -43.9679472)` | +| `theme` | `transportation` | +| `type` | `connector` | | `version` | `1` | | `sources[0].property` | | -| `sources[0].dataset` | OpenStreetMap | +| `sources[0].dataset` | `OpenStreetMap` | | `sources[0].record_id` | `null` | | `sources[0].update_time` | `null` | | `sources[0].confidence` | `null` | diff --git a/docs/schema/reference/transportation/types/access_restriction_rule.when.md b/docs/schema/reference/transportation/types/access_restriction_rule.when.md index 271140743..812717d67 100644 --- a/docs/schema/reference/transportation/types/access_restriction_rule.when.md +++ b/docs/schema/reference/transportation/types/access_restriction_rule.when.md @@ -12,3 +12,7 @@ Scopes for AccessRestrictionRule: Scope.HEADING, Scope.TEMPORAL, Scope.TRAVEL MO | `using` | `list<`[`PurposeOfUse`](../../core/scoping/purpose_of_use.md)`>` (optional) | A list of one or more usage purposes, such as delivery or arrival at final destination, that the containing AccessRestrictionRule applies to. | | `recognized` | `list<`[`RecognizedStatus`](../../core/scoping/recognized_status.md)`>` (optional) | A list of one or more recognized status values, such as employee or student, that the containing AccessRestrictionRule applies to. | | `vehicle` | `list` (optional) | A list of one or more vehicle parameters that limit the vehicles the containing AccessRestrictionRule applies to. | + +## Constraints + +- At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set diff --git a/docs/schema/reference/transportation/types/access_rules.md b/docs/schema/reference/transportation/types/access_rules.md index 602ac286b..140cdb77d 100644 --- a/docs/schema/reference/transportation/types/access_rules.md +++ b/docs/schema/reference/transportation/types/access_rules.md @@ -2,5 +2,5 @@ ## Constraints -- `MinLen(min_length=1)` -- `UniqueItemsConstraint` +- `minimum length: 1` +- Ensures all items in a collection are unique. (`UniqueItemsConstraint`) diff --git a/docs/schema/reference/transportation/types/destination_rule.md b/docs/schema/reference/transportation/types/destination_rule.md index 38c88c015..16de8f78b 100644 --- a/docs/schema/reference/transportation/types/destination_rule.md +++ b/docs/schema/reference/transportation/types/destination_rule.md @@ -14,3 +14,7 @@ | `symbols` | `list<`[`DestinationSignSymbol`](destination_sign_symbol.md)`>` (optional) | A collection of symbols or icons present on the sign next to current destination label. | | `when` | [`DestinationRule.When`](destination_rule.when.md) (optional) | Scope for DestinationRule: | | `when.heading` | [`Heading`](../../core/scoping/heading.md) | The heading, either forward or backward, that the containing DestinationRule applies to. | + +## Constraints + +- At least one of `labels`, `symbols` must be set diff --git a/docs/schema/reference/transportation/types/prohibited_transition_rule.when.md b/docs/schema/reference/transportation/types/prohibited_transition_rule.when.md index 2d94b468e..c470c12f6 100644 --- a/docs/schema/reference/transportation/types/prohibited_transition_rule.when.md +++ b/docs/schema/reference/transportation/types/prohibited_transition_rule.when.md @@ -12,3 +12,7 @@ Scopes for ProhibitedTransitionRule: Scope.HEADING, Scope.TEMPORAL, Scope.TRAVEL | `using` | `list<`[`PurposeOfUse`](../../core/scoping/purpose_of_use.md)`>` (optional) | A list of one or more usage purposes, such as delivery or arrival at final destination, that the containing ProhibitedTransitionRule applies to. | | `recognized` | `list<`[`RecognizedStatus`](../../core/scoping/recognized_status.md)`>` (optional) | A list of one or more recognized status values, such as employee or student, that the containing ProhibitedTransitionRule applies to. | | `vehicle` | `list` (optional) | A list of one or more vehicle parameters that limit the vehicles the containing ProhibitedTransitionRule applies to. | + +## Constraints + +- At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set diff --git a/docs/schema/reference/transportation/types/rail_flags.md b/docs/schema/reference/transportation/types/rail_flags.md index 006556fa6..610b578f0 100644 --- a/docs/schema/reference/transportation/types/rail_flags.md +++ b/docs/schema/reference/transportation/types/rail_flags.md @@ -2,5 +2,5 @@ ## Constraints -- `MinLen(min_length=1)` -- `UniqueItemsConstraint` +- `minimum length: 1` +- Ensures all items in a collection are unique. (`UniqueItemsConstraint`) diff --git a/docs/schema/reference/transportation/types/road_flags.md b/docs/schema/reference/transportation/types/road_flags.md index b4712e3eb..6caaab8e8 100644 --- a/docs/schema/reference/transportation/types/road_flags.md +++ b/docs/schema/reference/transportation/types/road_flags.md @@ -2,5 +2,5 @@ ## Constraints -- `MinLen(min_length=1)` -- `UniqueItemsConstraint` +- `minimum length: 1` +- Ensures all items in a collection are unique. (`UniqueItemsConstraint`) diff --git a/docs/schema/reference/transportation/types/speed_limit_rule.md b/docs/schema/reference/transportation/types/speed_limit_rule.md index bea587891..cd492fb7e 100644 --- a/docs/schema/reference/transportation/types/speed_limit_rule.md +++ b/docs/schema/reference/transportation/types/speed_limit_rule.md @@ -21,3 +21,7 @@ An individual speed limit rule. | `when.using` | `list<`[`PurposeOfUse`](../../core/scoping/purpose_of_use.md)`>` (optional) | A list of one or more usage purposes, such as delivery or arrival at final destination, that the containing SpeedLimitRule applies to. | | `when.recognized` | `list<`[`RecognizedStatus`](../../core/scoping/recognized_status.md)`>` (optional) | A list of one or more recognized status values, such as employee or student, that the containing SpeedLimitRule applies to. | | `when.vehicle` | `list` (optional) | A list of one or more vehicle parameters that limit the vehicles the containing SpeedLimitRule applies to. | + +## Constraints + +- At least one of `max_speed`, `min_speed` must be set diff --git a/docs/schema/reference/transportation/types/speed_limit_rule.when.md b/docs/schema/reference/transportation/types/speed_limit_rule.when.md index f95806758..335f6df3f 100644 --- a/docs/schema/reference/transportation/types/speed_limit_rule.when.md +++ b/docs/schema/reference/transportation/types/speed_limit_rule.when.md @@ -12,3 +12,7 @@ Scopes for SpeedLimitRule: Scope.HEADING, Scope.TEMPORAL, Scope.TRAVEL MODE, Sco | `using` | `list<`[`PurposeOfUse`](../../core/scoping/purpose_of_use.md)`>` (optional) | A list of one or more usage purposes, such as delivery or arrival at final destination, that the containing SpeedLimitRule applies to. | | `recognized` | `list<`[`RecognizedStatus`](../../core/scoping/recognized_status.md)`>` (optional) | A list of one or more recognized status values, such as employee or student, that the containing SpeedLimitRule applies to. | | `vehicle` | `list` (optional) | A list of one or more vehicle parameters that limit the vehicles the containing SpeedLimitRule applies to. | + +## Constraints + +- At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set diff --git a/docs/schema/reference/transportation/types/speed_limits.md b/docs/schema/reference/transportation/types/speed_limits.md index 1a33781e2..2c6bcedf1 100644 --- a/docs/schema/reference/transportation/types/speed_limits.md +++ b/docs/schema/reference/transportation/types/speed_limits.md @@ -2,5 +2,5 @@ ## Constraints -- `MinLen(min_length=1)` -- `UniqueItemsConstraint` +- `minimum length: 1` +- Ensures all items in a collection are unique. (`UniqueItemsConstraint`) diff --git a/docs/schema/reference/transportation/types/speed_value.md b/docs/schema/reference/transportation/types/speed_value.md index dd000ba3d..60c2c3999 100644 --- a/docs/schema/reference/transportation/types/speed_value.md +++ b/docs/schema/reference/transportation/types/speed_value.md @@ -2,7 +2,7 @@ ## Constraints -- `Ge(ge=1)` -- `Le(le=350)` -- `Ge(ge=-2147483648)` (from [`int32`](../../system/primitive/primitives.md)) -- `Le(le=2147483647)` (from [`int32`](../../system/primitive/primitives.md)) +- `≥ 1` +- `≤ 350` +- `≥ -2147483648` (from [`int32`](../../system/primitive/primitives.md)) +- `≤ 2147483647` (from [`int32`](../../system/primitive/primitives.md)) diff --git a/docs/schema/reference/transportation/types/surfaces.md b/docs/schema/reference/transportation/types/surfaces.md index af276955a..3e7803169 100644 --- a/docs/schema/reference/transportation/types/surfaces.md +++ b/docs/schema/reference/transportation/types/surfaces.md @@ -2,5 +2,5 @@ ## Constraints -- `MinLen(min_length=1)` -- `UniqueItemsConstraint` +- `minimum length: 1` +- Ensures all items in a collection are unique. (`UniqueItemsConstraint`) diff --git a/docs/schema/reference/transportation/types/width.md b/docs/schema/reference/transportation/types/width.md index 112052cef..48ea298c8 100644 --- a/docs/schema/reference/transportation/types/width.md +++ b/docs/schema/reference/transportation/types/width.md @@ -2,4 +2,4 @@ ## Constraints -- `Gt(gt=0)` +- `> 0` diff --git a/docs/schema/reference/transportation/types/width_rules.md b/docs/schema/reference/transportation/types/width_rules.md index a8b8193b2..678d3c1ce 100644 --- a/docs/schema/reference/transportation/types/width_rules.md +++ b/docs/schema/reference/transportation/types/width_rules.md @@ -2,5 +2,5 @@ ## Constraints -- `MinLen(min_length=1)` -- `UniqueItemsConstraint` +- `minimum length: 1` +- Ensures all items in a collection are unique. (`UniqueItemsConstraint`) From 9b563cf89bc2d8acf1346bd63853aa057a01151d Mon Sep 17 00:00:00 2001 From: Seth Fitzsimmons Date: Tue, 24 Feb 2026 12:22:06 -0800 Subject: [PATCH 08/12] Sync schema reference Include various minor improvements --- docs/schema/reference/addresses/address.md | 24 ++--- .../addresses/types/address_level.md | 8 +- docs/schema/reference/base/bathymetry.md | 20 ++--- docs/schema/reference/base/infrastructure.md | 24 ++--- docs/schema/reference/base/land.md | 24 ++--- docs/schema/reference/base/land_cover.md | 18 ++-- docs/schema/reference/base/land_use.md | 24 ++--- docs/schema/reference/base/types/depth.md | 10 ++- docs/schema/reference/base/types/elevation.md | 11 ++- docs/schema/reference/base/types/height.md | 10 ++- .../base/types/infrastructure_class.md | 4 + .../base/types/infrastructure_subtype.md | 4 + .../schema/reference/base/types/land_class.md | 4 + .../base/types/land_cover_subtype.md | 4 + .../reference/base/types/land_subtype.md | 4 + .../reference/base/types/land_use_class.md | 4 + .../reference/base/types/land_use_subtype.md | 4 + .../reference/base/types/source_tags.md | 16 +++- .../reference/base/types/surface_material.md | 6 ++ .../reference/base/types/water_class.md | 4 + .../reference/base/types/water_subtype.md | 4 + docs/schema/reference/base/water.md | 22 ++--- docs/schema/reference/buildings/building.md | 26 +++--- .../reference/buildings/building_part.md | 22 ++--- .../buildings/types/building_class.md | 4 + .../buildings/types/building_subtype.md | 4 + .../buildings/types/facade_material.md | 5 ++ .../buildings/types/roof_material.md | 5 ++ .../buildings/types/roof_orientation.md | 5 ++ .../reference/buildings/types/roof_shape.md | 5 ++ .../reference/core/cartographic_hints.md | 16 ++-- docs/schema/reference/core/common_names.md | 9 +- .../schema/reference/core/confidence_score.md | 11 ++- docs/schema/reference/core/feature_version.md | 22 ++++- docs/schema/reference/core/length_unit.md | 6 ++ docs/schema/reference/core/level.md | 16 +++- docs/schema/reference/core/max_zoom.md | 17 +++- docs/schema/reference/core/min_zoom.md | 17 +++- docs/schema/reference/core/name_rule.md | 10 ++- docs/schema/reference/core/name_variant.md | 4 + docs/schema/reference/core/names.md | 20 ++++- .../schema/reference/core/perspective_mode.md | 4 + docs/schema/reference/core/perspectives.md | 8 +- docs/schema/reference/core/prominence.md | 17 +++- docs/schema/reference/core/scoping/heading.md | 9 ++ .../scoping/linearly_referenced_position.md | 11 ++- .../core/scoping/linearly_referenced_range.md | 21 ++++- .../reference/core/scoping/opening_hours.md | 12 ++- .../reference/core/scoping/purpose_of_use.md | 6 ++ .../core/scoping/recognized_status.md | 6 ++ docs/schema/reference/core/scoping/side.md | 5 ++ .../reference/core/scoping/travel_mode.md | 6 ++ .../scoping/vehicle_axle_count_selector.md | 8 +- .../core/scoping/vehicle_height_selector.md | 8 +- .../core/scoping/vehicle_length_selector.md | 8 +- .../core/scoping/vehicle_relation.md | 8 ++ .../core/scoping/vehicle_weight_selector.md | 8 +- .../core/scoping/vehicle_width_selector.md | 8 +- docs/schema/reference/core/sort_key.md | 13 ++- docs/schema/reference/core/source_item.md | 25 +++++- docs/schema/reference/core/sources.md | 24 ++++- docs/schema/reference/core/speed_unit.md | 4 + docs/schema/reference/core/weight_unit.md | 4 + docs/schema/reference/divisions/division.md | 38 ++++---- .../reference/divisions/division_area.md | 22 ++--- .../reference/divisions/division_boundary.md | 26 +++--- .../reference/divisions/types/admin_level.md | 12 ++- .../types/capital_of_division_item.md | 8 +- .../divisions/types/division/norms.md | 6 +- .../types/division_area/area_class.md | 4 + .../types/division_boundary/boundary_class.md | 4 + .../divisions/types/division_class.md | 4 + .../reference/divisions/types/division_id.md | 11 ++- .../reference/divisions/types/hierarchy.md | 12 ++- .../divisions/types/hierarchy_item.md | 9 +- .../reference/divisions/types/place_type.md | 8 ++ docs/schema/reference/places/place.md | 36 ++++---- docs/schema/reference/places/types/brand.md | 12 ++- .../reference/places/types/categories.md | 10 ++- .../places/types/operating_status.md | 4 + .../schema/reference/places/types/taxonomy.md | 10 ++- .../reference/system/country_code_alpha2.md | 12 ++- docs/schema/reference/system/hex_color.md | 9 +- docs/schema/reference/system/json_pointer.md | 10 ++- docs/schema/reference/system/language_tag.md | 13 ++- docs/schema/reference/system/phone_number.md | 8 +- .../reference/system/primitive/geometry.md | 2 +- .../reference/system/primitive/primitives.md | 6 +- docs/schema/reference/system/ref/id.md | 26 +++++- docs/schema/reference/system/region_code.md | 10 ++- .../reference/system/snake_case_string.md | 10 ++- .../reference/system/stripped_string.md | 17 +++- docs/schema/reference/system/wikidata_id.md | 16 +++- .../reference/transportation/connector.md | 10 +-- .../reference/transportation/segment.md | 89 ++++++++++++++----- .../types/access_restriction_rule.md | 7 +- .../types/access_restriction_rule.when.md | 18 ++-- .../transportation/types/access_rules.md | 10 ++- .../transportation/types/access_type.md | 4 + .../types/connector_reference.md | 8 +- .../types/destination_label_type.md | 4 + .../types/destination_labels.md | 6 +- .../transportation/types/destination_rule.md | 11 ++- .../types/destination_rule.when.md | 6 +- .../types/destination_sign_symbol.md | 4 + .../transportation/types/destinations.md | 10 ++- .../transportation/types/level_rule.md | 9 +- .../transportation/types/level_rules.md | 10 ++- .../types/prohibited_transition_rule.md | 7 +- .../types/prohibited_transition_rule.when.md | 18 ++-- .../types/prohibited_transitions.md | 10 ++- .../transportation/types/rail_class.md | 4 + .../transportation/types/rail_flag.md | 4 + .../transportation/types/rail_flag_rule.md | 7 +- .../transportation/types/rail_flags.md | 10 ++- .../transportation/types/road_class.md | 4 + .../transportation/types/road_flag.md | 4 + .../transportation/types/road_flag_rule.md | 7 +- .../transportation/types/road_flags.md | 10 ++- .../transportation/types/road_surface.md | 4 + .../transportation/types/route_reference.md | 9 +- .../reference/transportation/types/routes.md | 10 ++- .../transportation/types/sequence_entry.md | 6 +- .../reference/transportation/types/speed.md | 8 +- .../transportation/types/speed_limit_rule.md | 15 ++-- .../types/speed_limit_rule.when.md | 18 ++-- .../transportation/types/speed_limits.md | 10 ++- .../transportation/types/speed_value.md | 10 ++- .../transportation/types/subclass.md | 5 ++ .../transportation/types/subclass_rule.md | 7 +- .../transportation/types/subclass_rules.md | 10 ++- .../reference/transportation/types/subtype.md | 4 + .../transportation/types/surface_rule.md | 7 +- .../transportation/types/surfaces.md | 10 ++- .../reference/transportation/types/width.md | 8 +- .../transportation/types/width_rule.md | 7 +- .../transportation/types/width_rules.md | 12 ++- 137 files changed, 1202 insertions(+), 324 deletions(-) diff --git a/docs/schema/reference/addresses/address.md b/docs/schema/reference/addresses/address.md index 08e802e11..c46eef15e 100644 --- a/docs/schema/reference/addresses/address.md +++ b/docs/schema/reference/addresses/address.md @@ -13,7 +13,7 @@ as do the names of those parts or fields. The address schema uses a simplified approach to capture the common structure of addresses worldwide while accommodating local variance. The schema is heavily based on the OpenAddresses -(www.openaddresses.io) project. +([www.openaddresses.io](https://www.openaddresses.io)) project. For sub-country administrative levels (and non-administrative levels such as neighborhoods), the schema provides the `address_levels` field. This is where the names of cities and towns, @@ -22,34 +22,34 @@ provinces, state, and regions, and similar addressing units are found. ## Fields | Name | Type | Description | -|-----:|:----:|-------------| +| -----: | :----: | ------------- | | `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | | `bbox` | `bbox` (optional) | An optional bounding box for the feature | | `geometry` | `geometry` | Position of the address. Addresses are point geometries. | | `theme` | `"addresses"` | | | `type` | `"address"` | | | `version` | [`FeatureVersion`](../core/feature_version.md) | | -| `sources[]` | [`Sources`](../core/sources.md) (list, optional) | | -| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to.

The root document value `""` indicates that this source information applies to the
entire feature, excepting properties (fields) for which a dedicated source information
record exists.

Any other JSON Pointer apart from `""` indicates that this source record provides
dedicated source information for the property at the path in the JSON Pointer. As an
example, the value `"/names/common/en"` indicates that the source information applies to
the English common name of a named feature, while the value `"/geometry"` indicates that
it applies to the feature geometry. | +| `sources[]` | [`Sources`](../core/sources.md) (list, optional) | Information about the source data used to assemble the feature. | +| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to.

The root document value `""` indicates that this source information applies to the entire feature, excepting properties (fields) for which a dedicated source information record exists.

Any other JSON Pointer apart from `""` indicates that this source record provides dedicated source information for the property at the path in the JSON Pointer. As an example, the value `"/names/common/en"` indicates that the source information applies to the English common name of a named feature, while the value `"/geometry"` indicates that it applies to the feature geometry. | | `sources[].dataset` | `string` | Name of the dataset where the source data can be found. | | `sources[].license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name.

This should be a valid SPDX license identifier when available.

If omitted, contact the data provider for more license information. | -| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can
be found.

The format of record identifiers is dataset-specific. | +| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can be found.

The format of record identifiers is dataset-specific. | | `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | | `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset.

This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | | `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | -| `address_levels[]` | `list<`[`AddressLevel`](types/address_level.md)`>` (optional) | Names of the sub-country addressing areas the address belongs to, including the city
or locality, in descending order of generality.

The list is sorted so that the highest, or most general, level comes first (*e.g.*,
region) and the lowest, or most particular level, comes last (*e.g.*, city or town).

The number of items in this list and their meaning is country-dependent. For
example, in the United States, we expect two items: the state, and the locality or
municipality within the state. Other countries might have as few as one, or even
three or more.

When a specific level that is required for a country is not known. most likely
because the data provider has not supplied it and we have not derived it from
another source, the list item corresponding to that level must be present, but its
`value` field should be omitted. | -| `address_levels[].value` | [`StrippedString`](../system/stripped_string.md) (optional) | | +| `address_levels[]` | `list<`[`AddressLevel`](types/address_level.md)`>` (optional) | Names of the sub-country addressing areas the address belongs to, including the city or locality, in descending order of generality.

The list is sorted so that the highest, or most general, level comes first (*e.g.*, region) and the lowest, or most particular level, comes last (*e.g.*, city or town).

The number of items in this list and their meaning is country-dependent. For example, in the United States, we expect two items: the state, and the locality or municipality within the state. Other countries might have as few as one, or even three or more.

When a specific level that is required for a country is not known. most likely because the data provider has not supplied it and we have not derived it from another source, the list item corresponding to that level must be present, but its `value` field should be omitted. | +| `address_levels[].value` | [`StrippedString`](../system/stripped_string.md) (optional) | A string without leading or trailing whitespace | | `country` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) | The country the address belongs to, as an ISO 3166-1 alpha-2 country code. | -| `number` | [`StrippedString`](../system/stripped_string.md) (optional) | The house number.

This field does not necessarily contain an integer or even a number. Values such as
"74B", "189 1/2", and "208.5", where the non-integer or non-number part is part of
the house number, not a unit number, are in common use. | -| `postal_city` | [`StrippedString`](../system/stripped_string.md) (optional) | The postal authority designated city name, if applicable.

In some countries or regions, a mailing address may need to specify a different city
name than the city that actually contains the address coordinates. This optional
field can be used to specify the alternate city name to use.

For example:

- The postal city for the US address *716 East County Road, Winchester, Indiana*
is Ridgeville.
- The postal city for the Slovenian address *Tomaj 71, 6221 Tomaj, Slovenia* is
Dutovlje. | +| `number` | [`StrippedString`](../system/stripped_string.md) (optional) | The house number.

This field does not necessarily contain an integer or even a number. Values such as "74B", "189 1/2", and "208.5", where the non-integer or non-number part is part of the house number, not a unit number, are in common use. | +| `postal_city` | [`StrippedString`](../system/stripped_string.md) (optional) | The postal authority designated city name, if applicable.

In some countries or regions, a mailing address may need to specify a different city name than the city that actually contains the address coordinates. This optional field can be used to specify the alternate city name to use.

For example:

- The postal city for the US address *716 East County Road, Winchester, Indiana* is Ridgeville. - The postal city for the Slovenian address *Tomaj 71, 6221 Tomaj, Slovenia* is Dutovlje. | | `postcode` | [`StrippedString`](../system/stripped_string.md) (optional) | The postal code. | -| `street` | [`StrippedString`](../system/stripped_string.md) (optional) | The street name.

The street name can include a type (*e.g.*, "Street" or "St", "Boulevard" or "Blvd",
*etc.*) and a directional (*e.g.*, "NW" or "Northwest", "S" or "Sud"). Both type and
directional, if present, may be either a prefix or a suffix to the primary name.
They may either be fully spelled-out or abbreviated. | -| `unit` | [`StrippedString`](../system/stripped_string.md) (optional) | The secondary address unit designator.

In the case where the primary street address is divided into secondary units, which
may be apartments, floors, or even buildings if the primary street address is a
campus, this field names the specific secondary unit being addressed. | +| `street` | [`StrippedString`](../system/stripped_string.md) (optional) | The street name.

The street name can include a type (*e.g.*, "Street" or "St", "Boulevard" or "Blvd", *etc.*) and a directional (*e.g.*, "NW" or "Northwest", "S" or "Sud"). Both type and directional, if present, may be either a prefix or a suffix to the primary name. They may either be fully spelled-out or abbreviated. | +| `unit` | [`StrippedString`](../system/stripped_string.md) (optional) | The secondary address unit designator.

In the case where the primary street address is divided into secondary units, which may be apartments, floors, or even buildings if the primary street address is a campus, this field names the specific secondary unit being addressed. | ## Examples | Column | Value | -|-------:|-------| +| -------: | ------- | | `id` | `416ab01c-d836-4c4f-aedc-2f30941ce94d` | | `geometry` | `POINT (-176.5637854 -43.9471955)` | | `theme` | `addresses` | diff --git a/docs/schema/reference/addresses/types/address_level.md b/docs/schema/reference/addresses/types/address_level.md index 458d0b13d..5b682acc7 100644 --- a/docs/schema/reference/addresses/types/address_level.md +++ b/docs/schema/reference/addresses/types/address_level.md @@ -18,5 +18,9 @@ countries and regions, address levels do not necessarily correspond to administr ## Fields | Name | Type | Description | -|-----:|:----:|-------------| -| `value` | [`StrippedString`](../../system/stripped_string.md) (optional) | | +| -----: | :----: | ------------- | +| `value` | [`StrippedString`](../../system/stripped_string.md) (optional) | A string without leading or trailing whitespace | + +## Used By + +- [`Address`](../address.md) diff --git a/docs/schema/reference/base/bathymetry.md b/docs/schema/reference/base/bathymetry.md index fd798904d..3b97e4706 100644 --- a/docs/schema/reference/base/bathymetry.md +++ b/docs/schema/reference/base/bathymetry.md @@ -10,32 +10,32 @@ lake beds or ocean floors. ## Fields | Name | Type | Description | -|-----:|:----:|-------------| +| -----: | :----: | ------------- | | `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | | `bbox` | `bbox` (optional) | An optional bounding box for the feature | | `geometry` | `geometry` | Shape of the underwater area, which may be a polygon or multi-polygon. | | `theme` | `"base"` | | | `type` | `"bathymetry"` | | | `version` | [`FeatureVersion`](../core/feature_version.md) | | -| `sources[]` | [`Sources`](../core/sources.md) (list, optional) | | -| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to.

The root document value `""` indicates that this source information applies to the
entire feature, excepting properties (fields) for which a dedicated source information
record exists.

Any other JSON Pointer apart from `""` indicates that this source record provides
dedicated source information for the property at the path in the JSON Pointer. As an
example, the value `"/names/common/en"` indicates that the source information applies to
the English common name of a named feature, while the value `"/geometry"` indicates that
it applies to the feature geometry. | +| `sources[]` | [`Sources`](../core/sources.md) (list, optional) | Information about the source data used to assemble the feature. | +| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to.

The root document value `""` indicates that this source information applies to the entire feature, excepting properties (fields) for which a dedicated source information record exists.

Any other JSON Pointer apart from `""` indicates that this source record provides dedicated source information for the property at the path in the JSON Pointer. As an example, the value `"/names/common/en"` indicates that the source information applies to the English common name of a named feature, while the value `"/geometry"` indicates that it applies to the feature geometry. | | `sources[].dataset` | `string` | Name of the dataset where the source data can be found. | | `sources[].license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name.

This should be a valid SPDX license identifier when available.

If omitted, contact the data provider for more license information. | -| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can
be found.

The format of record identifiers is dataset-specific. | +| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can be found.

The format of record identifiers is dataset-specific. | | `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | | `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset.

This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | | `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | -| `depth` | [`Depth`](types/depth.md) | | +| `depth` | [`Depth`](types/depth.md) | Depth below surface level of the feature in meters. | | `cartography` | [`CartographicHints`](../core/cartographic_hints.md) (optional) | | -| `cartography.prominence` | [`Prominence`](../core/prominence.md) (optional) | | -| `cartography.min_zoom` | [`MinZoom`](../core/min_zoom.md) (optional) | | -| `cartography.max_zoom` | [`MaxZoom`](../core/max_zoom.md) (optional) | | -| `cartography.sort_key` | [`SortKey`](../core/sort_key.md) (optional) | | +| `cartography.prominence` | [`Prominence`](../core/prominence.md) (optional) | Subjective scale of feature significance or importance, with 1 being the least, and 100 being the most, significant.

This value can be used to help drive decisions about how and when to display a feature, and how to treat it relative to neighboring features.

When populated by Overture, this value is derived from various factors including, but not limited to: feature and subtype, population, and capital status. | +| `cartography.min_zoom` | [`MinZoom`](../core/min_zoom.md) (optional) | Recommended minimum tile zoom level in which this feature should be displayed.

It is recommended that the feature be hidden at zoom levels below this value.

Zoom levels follow the Slippy Maps convention, documented in the following references: - https://wiki.openstreetmap.org/wiki/Slippy_map_tilenames - https://www.maptiler.com/google-maps-coordinates-tile-bounds-projection | +| `cartography.max_zoom` | [`MaxZoom`](../core/max_zoom.md) (optional) | Recommended maximum tile zoom level in which this feature should be displayed.

It is recommended that the feature be hidden at zoom levels above this value.

Zoom levels follow the Slippy Maps convention, documented in the following references: - https://wiki.openstreetmap.org/wiki/Slippy_map_tilenames - https://www.maptiler.com/google-maps-coordinates-tile-bounds-projection | +| `cartography.sort_key` | [`SortKey`](../core/sort_key.md) (optional) | Integer indicating the recommended order in which to draw features.

Features with a lower number should be drawn "in front" of features with a higher number. | ## Examples | Column | Value | -|-------:|-------| +| -------: | ------- | | `id` | `5d40bd6c-db14-5492-b29f-5e25a59032bc` | | `geometry` | `MULTIPOLYGON (((-170.71296928 -76.744313428, -170.719841483 -76.757076376, -170.731061124 -76.761566...` | | `theme` | `base` | diff --git a/docs/schema/reference/base/infrastructure.md b/docs/schema/reference/base/infrastructure.md index 60a77ec37..4c4851817 100644 --- a/docs/schema/reference/base/infrastructure.md +++ b/docs/schema/reference/base/infrastructure.md @@ -10,24 +10,24 @@ such as bridges, airports, runways, aerialways, communication towers, and power ## Fields | Name | Type | Description | -|-----:|:----:|-------------| +| -----: | :----: | ------------- | | `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | | `bbox` | `bbox` (optional) | An optional bounding box for the feature | -| `geometry` | `geometry` | Geometry of the infrastructure feature, which may be a point, line string, polygon, or
multi-polygon. | +| `geometry` | `geometry` | Geometry of the infrastructure feature, which may be a point, line string, polygon, or multi-polygon. | | `theme` | `"base"` | | | `type` | `"infrastructure"` | | | `version` | [`FeatureVersion`](../core/feature_version.md) | | -| `sources[]` | [`Sources`](../core/sources.md) (list, optional) | | -| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to.

The root document value `""` indicates that this source information applies to the
entire feature, excepting properties (fields) for which a dedicated source information
record exists.

Any other JSON Pointer apart from `""` indicates that this source record provides
dedicated source information for the property at the path in the JSON Pointer. As an
example, the value `"/names/common/en"` indicates that the source information applies to
the English common name of a named feature, while the value `"/geometry"` indicates that
it applies to the feature geometry. | +| `sources[]` | [`Sources`](../core/sources.md) (list, optional) | Information about the source data used to assemble the feature. | +| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to.

The root document value `""` indicates that this source information applies to the entire feature, excepting properties (fields) for which a dedicated source information record exists.

Any other JSON Pointer apart from `""` indicates that this source record provides dedicated source information for the property at the path in the JSON Pointer. As an example, the value `"/names/common/en"` indicates that the source information applies to the English common name of a named feature, while the value `"/geometry"` indicates that it applies to the feature geometry. | | `sources[].dataset` | `string` | Name of the dataset where the source data can be found. | | `sources[].license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name.

This should be a valid SPDX license identifier when available.

If omitted, contact the data provider for more license information. | -| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can
be found.

The format of record identifiers is dataset-specific. | +| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can be found.

The format of record identifiers is dataset-specific. | | `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | | `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset.

This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | | `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | | `class` | [`InfrastructureClass`](types/infrastructure_class.md) | | | `subtype` | [`InfrastructureSubtype`](types/infrastructure_subtype.md) | | -| `height` | [`Height`](types/height.md) (optional) | | +| `height` | [`Height`](types/height.md) (optional) | Height of the feature in meters. | | `surface` | [`SurfaceMaterial`](types/surface_material.md) (optional) | | | `names` | [`Names`](../core/names.md) (optional) | | | `names.primary` | [`StrippedString`](../system/stripped_string.md) | The most commonly used name. | @@ -35,20 +35,20 @@ such as bridges, airports, runways, aerialways, communication towers, and power | `names.rules[]` | `list<`[`NameRule`](../core/name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | | `names.rules[].value` | [`StrippedString`](../system/stripped_string.md) | The actual name value. | | `names.rules[].variant` | [`NameVariant`](../core/name_variant.md) | The name variant for this name rule. | -| `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47
language tag. | -| `names.rules[].perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | | +| `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 language tag. | +| `names.rules[].perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | Political perspectives from which a named feature is viewed. | | `names.rules[].perspectives.mode` | [`PerspectiveMode`](../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | | `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | | `names.rules[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | | `names.rules[].side` | [`Side`](../core/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | -| `level` | [`Level`](../core/level.md) (optional) | | -| `source_tags` | [`SourceTags`](types/source_tags.md) (map, optional) | | -| `wikidata` | [`WikidataId`](../system/wikidata_id.md) (optional) | | +| `level` | [`Level`](../core/level.md) (optional) | Z-order of the feature where 0 is visual level | +| `source_tags` | [`SourceTags`](types/source_tags.md) (map, optional) | Key/value pairs imported directly from the source data without change.

This field provides access to raw OSM entity tags for features sourced from OpenStreetMap. | +| `wikidata` | [`WikidataId`](../system/wikidata_id.md) (optional) | A wikidata ID, as found on https://www.wikidata.org/ | ## Examples | Column | Value | -|-------:|-------| +| -------: | ------- | | `id` | `e9e3d506-89c0-3473-8cee-5e5ac6596d6c` | | `geometry` | `POINT (-179.9999994 -82.42408)` | | `theme` | `base` | diff --git a/docs/schema/reference/base/land.md b/docs/schema/reference/base/land.md index a758ac823..fa42b1bb9 100644 --- a/docs/schema/reference/base/land.md +++ b/docs/schema/reference/base/land.md @@ -20,24 +20,24 @@ TODO: Update this description when the relationship to `land_cover` is better un ## Fields | Name | Type | Description | -|-----:|:----:|-------------| +| -----: | :----: | ------------- | | `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | | `bbox` | `bbox` (optional) | An optional bounding box for the feature | -| `geometry` | `geometry` | Geometry of the land feature, which may be a point, line string, polygon, or
multi-polygon. | +| `geometry` | `geometry` | Geometry of the land feature, which may be a point, line string, polygon, or multi-polygon. | | `theme` | `"base"` | | | `type` | `"land"` | | | `version` | [`FeatureVersion`](../core/feature_version.md) | | -| `sources[]` | [`Sources`](../core/sources.md) (list, optional) | | -| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to.

The root document value `""` indicates that this source information applies to the
entire feature, excepting properties (fields) for which a dedicated source information
record exists.

Any other JSON Pointer apart from `""` indicates that this source record provides
dedicated source information for the property at the path in the JSON Pointer. As an
example, the value `"/names/common/en"` indicates that the source information applies to
the English common name of a named feature, while the value `"/geometry"` indicates that
it applies to the feature geometry. | +| `sources[]` | [`Sources`](../core/sources.md) (list, optional) | Information about the source data used to assemble the feature. | +| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to.

The root document value `""` indicates that this source information applies to the entire feature, excepting properties (fields) for which a dedicated source information record exists.

Any other JSON Pointer apart from `""` indicates that this source record provides dedicated source information for the property at the path in the JSON Pointer. As an example, the value `"/names/common/en"` indicates that the source information applies to the English common name of a named feature, while the value `"/geometry"` indicates that it applies to the feature geometry. | | `sources[].dataset` | `string` | Name of the dataset where the source data can be found. | | `sources[].license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name.

This should be a valid SPDX license identifier when available.

If omitted, contact the data provider for more license information. | -| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can
be found.

The format of record identifiers is dataset-specific. | +| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can be found.

The format of record identifiers is dataset-specific. | | `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | | `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset.

This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | | `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | | `class` | [`LandClass`](types/land_class.md) (optional) | | | `subtype` | [`LandSubtype`](types/land_subtype.md) (optional) | | -| `elevation` | [`Elevation`](types/elevation.md) (optional) | | +| `elevation` | [`Elevation`](types/elevation.md) (optional) | Elevation above sea level of the feature in meters. | | `surface` | [`SurfaceMaterial`](types/surface_material.md) (optional) | | | `names` | [`Names`](../core/names.md) (optional) | | | `names.primary` | [`StrippedString`](../system/stripped_string.md) | The most commonly used name. | @@ -45,20 +45,20 @@ TODO: Update this description when the relationship to `land_cover` is better un | `names.rules[]` | `list<`[`NameRule`](../core/name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | | `names.rules[].value` | [`StrippedString`](../system/stripped_string.md) | The actual name value. | | `names.rules[].variant` | [`NameVariant`](../core/name_variant.md) | The name variant for this name rule. | -| `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47
language tag. | -| `names.rules[].perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | | +| `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 language tag. | +| `names.rules[].perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | Political perspectives from which a named feature is viewed. | | `names.rules[].perspectives.mode` | [`PerspectiveMode`](../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | | `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | | `names.rules[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | | `names.rules[].side` | [`Side`](../core/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | -| `level` | [`Level`](../core/level.md) (optional) | | -| `source_tags` | [`SourceTags`](types/source_tags.md) (map, optional) | | -| `wikidata` | [`WikidataId`](../system/wikidata_id.md) (optional) | | +| `level` | [`Level`](../core/level.md) (optional) | Z-order of the feature where 0 is visual level | +| `source_tags` | [`SourceTags`](types/source_tags.md) (map, optional) | Key/value pairs imported directly from the source data without change.

This field provides access to raw OSM entity tags for features sourced from OpenStreetMap. | +| `wikidata` | [`WikidataId`](../system/wikidata_id.md) (optional) | A wikidata ID, as found on https://www.wikidata.org/ | ## Examples | Column | Value | -|-------:|-------| +| -------: | ------- | | `id` | `70fc3596-a987-3fea-820c-c016c0a2f0da` | | `geometry` | `POINT (-178.7 -85.45)` | | `theme` | `base` | diff --git a/docs/schema/reference/base/land_cover.md b/docs/schema/reference/base/land_cover.md index a385a95dd..791d46c34 100644 --- a/docs/schema/reference/base/land_cover.md +++ b/docs/schema/reference/base/land_cover.md @@ -17,32 +17,32 @@ TODO: Explain relationship to `Land` features. ## Fields | Name | Type | Description | -|-----:|:----:|-------------| +| -----: | :----: | ------------- | | `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | | `bbox` | `bbox` (optional) | An optional bounding box for the feature | | `geometry` | `geometry` | Shape of the covered land area, which may be a polygon or multi-polygon. | | `theme` | `"base"` | | | `type` | `"land_cover"` | | | `version` | [`FeatureVersion`](../core/feature_version.md) | | -| `sources[]` | [`Sources`](../core/sources.md) (list, optional) | | -| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to.

The root document value `""` indicates that this source information applies to the
entire feature, excepting properties (fields) for which a dedicated source information
record exists.

Any other JSON Pointer apart from `""` indicates that this source record provides
dedicated source information for the property at the path in the JSON Pointer. As an
example, the value `"/names/common/en"` indicates that the source information applies to
the English common name of a named feature, while the value `"/geometry"` indicates that
it applies to the feature geometry. | +| `sources[]` | [`Sources`](../core/sources.md) (list, optional) | Information about the source data used to assemble the feature. | +| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to.

The root document value `""` indicates that this source information applies to the entire feature, excepting properties (fields) for which a dedicated source information record exists.

Any other JSON Pointer apart from `""` indicates that this source record provides dedicated source information for the property at the path in the JSON Pointer. As an example, the value `"/names/common/en"` indicates that the source information applies to the English common name of a named feature, while the value `"/geometry"` indicates that it applies to the feature geometry. | | `sources[].dataset` | `string` | Name of the dataset where the source data can be found. | | `sources[].license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name.

This should be a valid SPDX license identifier when available.

If omitted, contact the data provider for more license information. | -| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can
be found.

The format of record identifiers is dataset-specific. | +| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can be found.

The format of record identifiers is dataset-specific. | | `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | | `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset.

This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | | `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | | `subtype` | [`LandCoverSubtype`](types/land_cover_subtype.md) | | | `cartography` | [`CartographicHints`](../core/cartographic_hints.md) (optional) | | -| `cartography.prominence` | [`Prominence`](../core/prominence.md) (optional) | | -| `cartography.min_zoom` | [`MinZoom`](../core/min_zoom.md) (optional) | | -| `cartography.max_zoom` | [`MaxZoom`](../core/max_zoom.md) (optional) | | -| `cartography.sort_key` | [`SortKey`](../core/sort_key.md) (optional) | | +| `cartography.prominence` | [`Prominence`](../core/prominence.md) (optional) | Subjective scale of feature significance or importance, with 1 being the least, and 100 being the most, significant.

This value can be used to help drive decisions about how and when to display a feature, and how to treat it relative to neighboring features.

When populated by Overture, this value is derived from various factors including, but not limited to: feature and subtype, population, and capital status. | +| `cartography.min_zoom` | [`MinZoom`](../core/min_zoom.md) (optional) | Recommended minimum tile zoom level in which this feature should be displayed.

It is recommended that the feature be hidden at zoom levels below this value.

Zoom levels follow the Slippy Maps convention, documented in the following references: - https://wiki.openstreetmap.org/wiki/Slippy_map_tilenames - https://www.maptiler.com/google-maps-coordinates-tile-bounds-projection | +| `cartography.max_zoom` | [`MaxZoom`](../core/max_zoom.md) (optional) | Recommended maximum tile zoom level in which this feature should be displayed.

It is recommended that the feature be hidden at zoom levels above this value.

Zoom levels follow the Slippy Maps convention, documented in the following references: - https://wiki.openstreetmap.org/wiki/Slippy_map_tilenames - https://www.maptiler.com/google-maps-coordinates-tile-bounds-projection | +| `cartography.sort_key` | [`SortKey`](../core/sort_key.md) (optional) | Integer indicating the recommended order in which to draw features.

Features with a lower number should be drawn "in front" of features with a higher number. | ## Examples | Column | Value | -|-------:|-------| +| -------: | ------- | | `id` | `c347312d-012b-5e73-8bd3-a10d04b2981d` | | `geometry` | `POLYGON ((-179.99877531181616 65.95172539425603, -179.99740705536922 65.95265577758867, -179.9975172...` | | `theme` | `base` | diff --git a/docs/schema/reference/base/land_use.md b/docs/schema/reference/base/land_use.md index b7902f4e4..0be26a223 100644 --- a/docs/schema/reference/base/land_use.md +++ b/docs/schema/reference/base/land_use.md @@ -15,24 +15,24 @@ TODO: Explain relationship to `Land` features. ## Fields | Name | Type | Description | -|-----:|:----:|-------------| +| -----: | :----: | ------------- | | `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | | `bbox` | `bbox` (optional) | An optional bounding box for the feature | -| `geometry` | `geometry` | Geometry of the land use area, which may be a point, line string, polygon, or
multi-polygon. | +| `geometry` | `geometry` | Geometry of the land use area, which may be a point, line string, polygon, or multi-polygon. | | `theme` | `"base"` | | | `type` | `"land_use"` | | | `version` | [`FeatureVersion`](../core/feature_version.md) | | -| `sources[]` | [`Sources`](../core/sources.md) (list, optional) | | -| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to.

The root document value `""` indicates that this source information applies to the
entire feature, excepting properties (fields) for which a dedicated source information
record exists.

Any other JSON Pointer apart from `""` indicates that this source record provides
dedicated source information for the property at the path in the JSON Pointer. As an
example, the value `"/names/common/en"` indicates that the source information applies to
the English common name of a named feature, while the value `"/geometry"` indicates that
it applies to the feature geometry. | +| `sources[]` | [`Sources`](../core/sources.md) (list, optional) | Information about the source data used to assemble the feature. | +| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to.

The root document value `""` indicates that this source information applies to the entire feature, excepting properties (fields) for which a dedicated source information record exists.

Any other JSON Pointer apart from `""` indicates that this source record provides dedicated source information for the property at the path in the JSON Pointer. As an example, the value `"/names/common/en"` indicates that the source information applies to the English common name of a named feature, while the value `"/geometry"` indicates that it applies to the feature geometry. | | `sources[].dataset` | `string` | Name of the dataset where the source data can be found. | | `sources[].license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name.

This should be a valid SPDX license identifier when available.

If omitted, contact the data provider for more license information. | -| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can
be found.

The format of record identifiers is dataset-specific. | +| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can be found.

The format of record identifiers is dataset-specific. | | `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | | `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset.

This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | | `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | | `class` | [`LandUseClass`](types/land_use_class.md) | | | `subtype` | [`LandUseSubtype`](types/land_use_subtype.md) | | -| `elevation` | [`Elevation`](types/elevation.md) (optional) | | +| `elevation` | [`Elevation`](types/elevation.md) (optional) | Elevation above sea level of the feature in meters. | | `surface` | [`SurfaceMaterial`](types/surface_material.md) (optional) | | | `names` | [`Names`](../core/names.md) (optional) | | | `names.primary` | [`StrippedString`](../system/stripped_string.md) | The most commonly used name. | @@ -40,20 +40,20 @@ TODO: Explain relationship to `Land` features. | `names.rules[]` | `list<`[`NameRule`](../core/name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | | `names.rules[].value` | [`StrippedString`](../system/stripped_string.md) | The actual name value. | | `names.rules[].variant` | [`NameVariant`](../core/name_variant.md) | The name variant for this name rule. | -| `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47
language tag. | -| `names.rules[].perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | | +| `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 language tag. | +| `names.rules[].perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | Political perspectives from which a named feature is viewed. | | `names.rules[].perspectives.mode` | [`PerspectiveMode`](../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | | `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | | `names.rules[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | | `names.rules[].side` | [`Side`](../core/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | -| `level` | [`Level`](../core/level.md) (optional) | | -| `source_tags` | [`SourceTags`](types/source_tags.md) (map, optional) | | -| `wikidata` | [`WikidataId`](../system/wikidata_id.md) (optional) | | +| `level` | [`Level`](../core/level.md) (optional) | Z-order of the feature where 0 is visual level | +| `source_tags` | [`SourceTags`](types/source_tags.md) (map, optional) | Key/value pairs imported directly from the source data without change.

This field provides access to raw OSM entity tags for features sourced from OpenStreetMap. | +| `wikidata` | [`WikidataId`](../system/wikidata_id.md) (optional) | A wikidata ID, as found on https://www.wikidata.org/ | ## Examples | Column | Value | -|-------:|-------| +| -------: | ------- | | `id` | `1e1f6095-5bd2-3fdb-a422-41351b848e9d` | | `geometry` | `POLYGON ((-176.5623454 -43.9567812, -176.5627644 -43.9561272, -176.5626898 -43.9557432, -176.5624297...` | | `theme` | `base` | diff --git a/docs/schema/reference/base/types/depth.md b/docs/schema/reference/base/types/depth.md index 5d1088224..f6b96f3ed 100644 --- a/docs/schema/reference/base/types/depth.md +++ b/docs/schema/reference/base/types/depth.md @@ -1,7 +1,15 @@ -# Depth (`int32`) +# Depth + +Depth below surface level of the feature in meters. + +Underlying type: `int32` ## Constraints - `≥ 0` - `≥ -2147483648` (from [`int32`](../../system/primitive/primitives.md)) - `≤ 2147483647` (from [`int32`](../../system/primitive/primitives.md)) + +## Used By + +- [`Bathymetry`](../bathymetry.md) diff --git a/docs/schema/reference/base/types/elevation.md b/docs/schema/reference/base/types/elevation.md index 15e4a34c7..2bfb7d128 100644 --- a/docs/schema/reference/base/types/elevation.md +++ b/docs/schema/reference/base/types/elevation.md @@ -1,7 +1,16 @@ -# Elevation (`int32`) +# Elevation + +Elevation above sea level of the feature in meters. + +Underlying type: `int32` ## Constraints - `≤ 9000` - `≥ -2147483648` (from [`int32`](../../system/primitive/primitives.md)) - `≤ 2147483647` (from [`int32`](../../system/primitive/primitives.md)) + +## Used By + +- [`Land`](../land.md) +- [`LandUse`](../land_use.md) diff --git a/docs/schema/reference/base/types/height.md b/docs/schema/reference/base/types/height.md index 35d410035..6a4b542fb 100644 --- a/docs/schema/reference/base/types/height.md +++ b/docs/schema/reference/base/types/height.md @@ -1,5 +1,13 @@ -# Height (`float64`) +# Height + +Height of the feature in meters. + +Underlying type: `float64` ## Constraints - `> 0` + +## Used By + +- [`Infrastructure`](../infrastructure.md) diff --git a/docs/schema/reference/base/types/infrastructure_class.md b/docs/schema/reference/base/types/infrastructure_class.md index 84482b581..b8cc4043a 100644 --- a/docs/schema/reference/base/types/infrastructure_class.md +++ b/docs/schema/reference/base/types/infrastructure_class.md @@ -170,3 +170,7 @@ The infrastructure class adds detail to the broad classification of `Infrastruct - `water_tower` - `weir` - `zip_line` + +## Used By + +- [`Infrastructure`](../infrastructure.md) diff --git a/docs/schema/reference/base/types/infrastructure_subtype.md b/docs/schema/reference/base/types/infrastructure_subtype.md index 41fe25967..c7432d702 100644 --- a/docs/schema/reference/base/types/infrastructure_subtype.md +++ b/docs/schema/reference/base/types/infrastructure_subtype.md @@ -24,3 +24,7 @@ This broad classification can be refined by `InfrastructureClass`. - `utility` - `waste_management` - `water` + +## Used By + +- [`Infrastructure`](../infrastructure.md) diff --git a/docs/schema/reference/base/types/land_class.md b/docs/schema/reference/base/types/land_class.md index a951e56ce..8c63ddaf1 100644 --- a/docs/schema/reference/base/types/land_class.md +++ b/docs/schema/reference/base/types/land_class.md @@ -48,3 +48,7 @@ The land class adds detail to the broad classification of `LandSubtype`. - `volcano` - `wetland` - `wood` + +## Used By + +- [`Land`](../land.md) diff --git a/docs/schema/reference/base/types/land_cover_subtype.md b/docs/schema/reference/base/types/land_cover_subtype.md index 53cb7a6fe..8a9676ae8 100644 --- a/docs/schema/reference/base/types/land_cover_subtype.md +++ b/docs/schema/reference/base/types/land_cover_subtype.md @@ -14,3 +14,7 @@ Primary or dominant material covering the land. - `snow` - `urban` - `wetland` + +## Used By + +- [`LandCover`](../land_cover.md) diff --git a/docs/schema/reference/base/types/land_subtype.md b/docs/schema/reference/base/types/land_subtype.md index 4a800bd04..9e92c91af 100644 --- a/docs/schema/reference/base/types/land_subtype.md +++ b/docs/schema/reference/base/types/land_subtype.md @@ -19,3 +19,7 @@ This broad classification can be refined by `LandClass`. - `shrub` - `tree` - `wetland` + +## Used By + +- [`Land`](../land.md) diff --git a/docs/schema/reference/base/types/land_use_class.md b/docs/schema/reference/base/types/land_use_class.md index d8f6c0ea6..5c9531d89 100644 --- a/docs/schema/reference/base/types/land_use_class.md +++ b/docs/schema/reference/base/types/land_use_class.md @@ -115,3 +115,7 @@ The land use class adds detail to the broad classification of `LandUseSubtype`. - `winter_sports` - `works` - `zoo` + +## Used By + +- [`LandUse`](../land_use.md) diff --git a/docs/schema/reference/base/types/land_use_subtype.md b/docs/schema/reference/base/types/land_use_subtype.md index b9e0e9b7f..3acc75d21 100644 --- a/docs/schema/reference/base/types/land_use_subtype.md +++ b/docs/schema/reference/base/types/land_use_subtype.md @@ -30,3 +30,7 @@ This broad classification can be refined by `LandUseClass`. - `resource_extraction` - `transportation` - `winter_sports` + +## Used By + +- [`LandUse`](../land_use.md) diff --git a/docs/schema/reference/base/types/source_tags.md b/docs/schema/reference/base/types/source_tags.md index 7d9b04a9e..41f50ae8f 100644 --- a/docs/schema/reference/base/types/source_tags.md +++ b/docs/schema/reference/base/types/source_tags.md @@ -1 +1,15 @@ -# SourceTags (`map`) +# SourceTags + +Key/value pairs imported directly from the source data without change. + +This field provides access to raw OSM entity tags for features sourced from +OpenStreetMap. + +Underlying type: `map` + +## Used By + +- [`Infrastructure`](../infrastructure.md) +- [`Land`](../land.md) +- [`LandUse`](../land_use.md) +- [`Water`](../water.md) diff --git a/docs/schema/reference/base/types/surface_material.md b/docs/schema/reference/base/types/surface_material.md index 9de2d090f..707f5a6a2 100644 --- a/docs/schema/reference/base/types/surface_material.md +++ b/docs/schema/reference/base/types/surface_material.md @@ -28,3 +28,9 @@ Material that makes up the surface of `Infrastructure` and `Land` features. - `unpaved` - `wood` - `woodchips` + +## Used By + +- [`Infrastructure`](../infrastructure.md) +- [`Land`](../land.md) +- [`LandUse`](../land_use.md) diff --git a/docs/schema/reference/base/types/water_class.md b/docs/schema/reference/base/types/water_class.md index 26815e420..def472f93 100644 --- a/docs/schema/reference/base/types/water_class.md +++ b/docs/schema/reference/base/types/water_class.md @@ -41,3 +41,7 @@ The water class adds detail to the broad classification of `WaterSubtype`. - `water` - `water_storage` - `waterfall` + +## Used By + +- [`Water`](../water.md) diff --git a/docs/schema/reference/base/types/water_subtype.md b/docs/schema/reference/base/types/water_subtype.md index bebf36428..987dc1af3 100644 --- a/docs/schema/reference/base/types/water_subtype.md +++ b/docs/schema/reference/base/types/water_subtype.md @@ -18,3 +18,7 @@ This broad classification can be refined using `WaterClass`. - `stream` - `wastewater` - `water` + +## Used By + +- [`Water`](../water.md) diff --git a/docs/schema/reference/base/water.md b/docs/schema/reference/base/water.md index cdb46fcb4..4b7f13988 100644 --- a/docs/schema/reference/base/water.md +++ b/docs/schema/reference/base/water.md @@ -31,18 +31,18 @@ and `water=*`. ## Fields | Name | Type | Description | -|-----:|:----:|-------------| +| -----: | :----: | ------------- | | `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | | `bbox` | `bbox` (optional) | An optional bounding box for the feature | -| `geometry` | `geometry` | Geometry of the water feature, which may be a point, line string, polygon, or
multi-polygon. | +| `geometry` | `geometry` | Geometry of the water feature, which may be a point, line string, polygon, or multi-polygon. | | `theme` | `"base"` | | | `type` | `"water"` | | | `version` | [`FeatureVersion`](../core/feature_version.md) | | -| `sources[]` | [`Sources`](../core/sources.md) (list, optional) | | -| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to.

The root document value `""` indicates that this source information applies to the
entire feature, excepting properties (fields) for which a dedicated source information
record exists.

Any other JSON Pointer apart from `""` indicates that this source record provides
dedicated source information for the property at the path in the JSON Pointer. As an
example, the value `"/names/common/en"` indicates that the source information applies to
the English common name of a named feature, while the value `"/geometry"` indicates that
it applies to the feature geometry. | +| `sources[]` | [`Sources`](../core/sources.md) (list, optional) | Information about the source data used to assemble the feature. | +| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to.

The root document value `""` indicates that this source information applies to the entire feature, excepting properties (fields) for which a dedicated source information record exists.

Any other JSON Pointer apart from `""` indicates that this source record provides dedicated source information for the property at the path in the JSON Pointer. As an example, the value `"/names/common/en"` indicates that the source information applies to the English common name of a named feature, while the value `"/geometry"` indicates that it applies to the feature geometry. | | `sources[].dataset` | `string` | Name of the dataset where the source data can be found. | | `sources[].license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name.

This should be a valid SPDX license identifier when available.

If omitted, contact the data provider for more license information. | -| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can
be found.

The format of record identifiers is dataset-specific. | +| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can be found.

The format of record identifiers is dataset-specific. | | `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | | `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset.

This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | | `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | @@ -50,26 +50,26 @@ and `water=*`. | `subtype` | [`WaterSubtype`](types/water_subtype.md) (optional) | | | `is_intermittent` | `boolean` (optional) | Whether the water body exists intermittently, not permanently | | `is_salt` | `boolean` (optional) | Whether the water body contains salt water | -| `level` | [`Level`](../core/level.md) (optional) | | +| `level` | [`Level`](../core/level.md) (optional) | Z-order of the feature where 0 is visual level | | `names` | [`Names`](../core/names.md) (optional) | | | `names.primary` | [`StrippedString`](../system/stripped_string.md) | The most commonly used name. | | `names.common` | [`CommonNames`](../core/common_names.md) (map, optional) | | | `names.rules[]` | `list<`[`NameRule`](../core/name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | | `names.rules[].value` | [`StrippedString`](../system/stripped_string.md) | The actual name value. | | `names.rules[].variant` | [`NameVariant`](../core/name_variant.md) | The name variant for this name rule. | -| `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47
language tag. | -| `names.rules[].perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | | +| `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 language tag. | +| `names.rules[].perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | Political perspectives from which a named feature is viewed. | | `names.rules[].perspectives.mode` | [`PerspectiveMode`](../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | | `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | | `names.rules[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | | `names.rules[].side` | [`Side`](../core/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | -| `source_tags` | [`SourceTags`](types/source_tags.md) (map, optional) | | -| `wikidata` | [`WikidataId`](../system/wikidata_id.md) (optional) | | +| `source_tags` | [`SourceTags`](types/source_tags.md) (map, optional) | Key/value pairs imported directly from the source data without change.

This field provides access to raw OSM entity tags for features sourced from OpenStreetMap. | +| `wikidata` | [`WikidataId`](../system/wikidata_id.md) (optional) | A wikidata ID, as found on https://www.wikidata.org/ | ## Examples | Column | Value | -|-------:|-------| +| -------: | ------- | | `id` | `6bbb5fe5-bf26-3efa-b120-0a7079b60840` | | `geometry` | `POINT (-177.031799 -84.934793)` | | `theme` | `base` | diff --git a/docs/schema/reference/buildings/building.md b/docs/schema/reference/buildings/building.md index 8283a8af3..b5c35b509 100644 --- a/docs/schema/reference/buildings/building.md +++ b/docs/schema/reference/buildings/building.md @@ -15,23 +15,23 @@ model of the building. ## Fields | Name | Type | Description | -|-----:|:----:|-------------| +| -----: | :----: | ------------- | | `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | | `bbox` | `bbox` (optional) | An optional bounding box for the feature | | `geometry` | `geometry` | The building's footprint or roofprint (if traced from aerial/satellite imagery). | | `theme` | `"buildings"` | | | `type` | `"building"` | | | `version` | [`FeatureVersion`](../core/feature_version.md) | | -| `sources[]` | [`Sources`](../core/sources.md) (list, optional) | | -| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to.

The root document value `""` indicates that this source information applies to the
entire feature, excepting properties (fields) for which a dedicated source information
record exists.

Any other JSON Pointer apart from `""` indicates that this source record provides
dedicated source information for the property at the path in the JSON Pointer. As an
example, the value `"/names/common/en"` indicates that the source information applies to
the English common name of a named feature, while the value `"/geometry"` indicates that
it applies to the feature geometry. | +| `sources[]` | [`Sources`](../core/sources.md) (list, optional) | Information about the source data used to assemble the feature. | +| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to.

The root document value `""` indicates that this source information applies to the entire feature, excepting properties (fields) for which a dedicated source information record exists.

Any other JSON Pointer apart from `""` indicates that this source record provides dedicated source information for the property at the path in the JSON Pointer. As an example, the value `"/names/common/en"` indicates that the source information applies to the English common name of a named feature, while the value `"/geometry"` indicates that it applies to the feature geometry. | | `sources[].dataset` | `string` | Name of the dataset where the source data can be found. | | `sources[].license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name.

This should be a valid SPDX license identifier when available.

If omitted, contact the data provider for more license information. | -| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can
be found.

The format of record identifiers is dataset-specific. | +| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can be found.

The format of record identifiers is dataset-specific. | | `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | | `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset.

This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | | `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | -| `subtype` | [`BuildingSubtype`](types/building_subtype.md) (optional) | A broad classification of the current use and purpose of the building.

If the current use of the building no longer accords with the original built
purpose, the current use should be specified. For example, a building built as a
train station but later converted into a shopping mall would have the value
`"commercial"` rather than `"transportation"`. | -| `class` | [`BuildingClass`](types/building_class.md) (optional) | A more specific classification of the current use and purpose of the building.

If the current use of the building no longer accords with the original built
purpose, the current use should be specified. | +| `subtype` | [`BuildingSubtype`](types/building_subtype.md) (optional) | A broad classification of the current use and purpose of the building.

If the current use of the building no longer accords with the original built purpose, the current use should be specified. For example, a building built as a train station but later converted into a shopping mall would have the value `"commercial"` rather than `"transportation"`. | +| `class` | [`BuildingClass`](types/building_class.md) (optional) | A more specific classification of the current use and purpose of the building.

If the current use of the building no longer accords with the original built purpose, the current use should be specified. | | `has_parts` | `boolean` (optional) | Whether the building has associated building part features | | `names` | [`Names`](../core/names.md) (optional) | | | `names.primary` | [`StrippedString`](../system/stripped_string.md) | The most commonly used name. | @@ -39,19 +39,19 @@ model of the building. | `names.rules[]` | `list<`[`NameRule`](../core/name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | | `names.rules[].value` | [`StrippedString`](../system/stripped_string.md) | The actual name value. | | `names.rules[].variant` | [`NameVariant`](../core/name_variant.md) | The name variant for this name rule. | -| `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47
language tag. | -| `names.rules[].perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | | +| `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 language tag. | +| `names.rules[].perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | Political perspectives from which a named feature is viewed. | | `names.rules[].perspectives.mode` | [`PerspectiveMode`](../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | | `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | | `names.rules[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | | `names.rules[].side` | [`Side`](../core/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | -| `level` | [`Level`](../core/level.md) (optional) | | +| `level` | [`Level`](../core/level.md) (optional) | Z-order of the feature where 0 is visual level | | `height` | `float64` (optional) | Height of the building or part in meters.

This is the distance from the lowest point to the highest point. | -| `is_underground` | `boolean` (optional) | Whether the entire building or part is completely below ground.

The underground flag is useful for display purposes. Buildings and building parts
that are entirely below ground can be styled differently or omitted from the
rendered image.

This flag is conceptually different from the `level` field, which indicates
relative z-ordering and, notably, can be negative even if the building is entirely
above-ground. | +| `is_underground` | `boolean` (optional) | Whether the entire building or part is completely below ground.

The underground flag is useful for display purposes. Buildings and building parts that are entirely below ground can be styled differently or omitted from the rendered image.

This flag is conceptually different from the `level` field, which indicates relative z-ordering and, notably, can be negative even if the building is entirely above-ground. | | `num_floors` | `int32` (optional) | Number of above-ground floors of the building or part. | | `num_floors_underground` | `int32` (optional) | Number of below-ground floors of the building or part. | -| `min_height` | `float64` (optional) | Altitude above ground where the bottom of the building or building part starts.

If present, this value indicates that the lowest part of the building or building
part starts is above ground level. | -| `min_floor` | `int32` (optional) | Start floor of this building or part.

If present, this value indicates that the building or part is "floating" and its
bottom-most floor is above ground level, usually because it is part of a larger
building in which some parts do reach down to ground level. An example is a building
that has an entry road or driveway at ground level into an interior courtyard, where
part of the building bridges above the entry road. This property may sometimes be
populated when `min_height` is missing and in these cases can be used as a proxy for
`min_height`. | +| `min_height` | `float64` (optional) | Altitude above ground where the bottom of the building or building part starts.

If present, this value indicates that the lowest part of the building or building part starts is above ground level. | +| `min_floor` | `int32` (optional) | Start floor of this building or part.

If present, this value indicates that the building or part is "floating" and its bottom-most floor is above ground level, usually because it is part of a larger building in which some parts do reach down to ground level. An example is a building that has an entry road or driveway at ground level into an interior courtyard, where part of the building bridges above the entry road. This property may sometimes be populated when `min_height` is missing and in these cases can be used as a proxy for `min_height`. | | `facade_color` | [`HexColor`](../system/hex_color.md) (optional) | Facade color in `#rgb` or `#rrggbb` hex notation | | `facade_material` | [`FacadeMaterial`](types/facade_material.md) (optional) | Outer surface material of the facade | | `roof_material` | [`RoofMaterial`](types/roof_material.md) (optional) | Outer surface material of the roof | @@ -64,7 +64,7 @@ model of the building. ## Examples | Column | Value | -|-------:|-------| +| -------: | ------- | | `id` | `148f35b1-7bc1-4180-9280-10d39b13883b` | | `geometry` | `POLYGON ((-176.6435004 -43.9938042, -176.6435738 -43.9937107, -176.6437726 -43.9937913, -176.6436992...` | | `theme` | `buildings` | diff --git a/docs/schema/reference/buildings/building_part.md b/docs/schema/reference/buildings/building_part.md index 1b2821dff..c8ec38f08 100644 --- a/docs/schema/reference/buildings/building_part.md +++ b/docs/schema/reference/buildings/building_part.md @@ -18,18 +18,18 @@ vertical dimension. ## Fields | Name | Type | Description | -|-----:|:----:|-------------| +| -----: | :----: | ------------- | | `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | | `bbox` | `bbox` (optional) | An optional bounding box for the feature | | `geometry` | `geometry` | The footprint or roofprint of the building part. | | `theme` | `"buildings"` | | | `type` | `"building_part"` | | | `version` | [`FeatureVersion`](../core/feature_version.md) | | -| `sources[]` | [`Sources`](../core/sources.md) (list, optional) | | -| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to.

The root document value `""` indicates that this source information applies to the
entire feature, excepting properties (fields) for which a dedicated source information
record exists.

Any other JSON Pointer apart from `""` indicates that this source record provides
dedicated source information for the property at the path in the JSON Pointer. As an
example, the value `"/names/common/en"` indicates that the source information applies to
the English common name of a named feature, while the value `"/geometry"` indicates that
it applies to the feature geometry. | +| `sources[]` | [`Sources`](../core/sources.md) (list, optional) | Information about the source data used to assemble the feature. | +| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to.

The root document value `""` indicates that this source information applies to the entire feature, excepting properties (fields) for which a dedicated source information record exists.

Any other JSON Pointer apart from `""` indicates that this source record provides dedicated source information for the property at the path in the JSON Pointer. As an example, the value `"/names/common/en"` indicates that the source information applies to the English common name of a named feature, while the value `"/geometry"` indicates that it applies to the feature geometry. | | `sources[].dataset` | `string` | Name of the dataset where the source data can be found. | | `sources[].license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name.

This should be a valid SPDX license identifier when available.

If omitted, contact the data provider for more license information. | -| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can
be found.

The format of record identifiers is dataset-specific. | +| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can be found.

The format of record identifiers is dataset-specific. | | `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | | `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset.

This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | | `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | @@ -40,19 +40,19 @@ vertical dimension. | `names.rules[]` | `list<`[`NameRule`](../core/name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | | `names.rules[].value` | [`StrippedString`](../system/stripped_string.md) | The actual name value. | | `names.rules[].variant` | [`NameVariant`](../core/name_variant.md) | The name variant for this name rule. | -| `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47
language tag. | -| `names.rules[].perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | | +| `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 language tag. | +| `names.rules[].perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | Political perspectives from which a named feature is viewed. | | `names.rules[].perspectives.mode` | [`PerspectiveMode`](../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | | `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | | `names.rules[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | | `names.rules[].side` | [`Side`](../core/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | -| `level` | [`Level`](../core/level.md) (optional) | | +| `level` | [`Level`](../core/level.md) (optional) | Z-order of the feature where 0 is visual level | | `height` | `float64` (optional) | Height of the building or part in meters.

This is the distance from the lowest point to the highest point. | -| `is_underground` | `boolean` (optional) | Whether the entire building or part is completely below ground.

The underground flag is useful for display purposes. Buildings and building parts
that are entirely below ground can be styled differently or omitted from the
rendered image.

This flag is conceptually different from the `level` field, which indicates
relative z-ordering and, notably, can be negative even if the building is entirely
above-ground. | +| `is_underground` | `boolean` (optional) | Whether the entire building or part is completely below ground.

The underground flag is useful for display purposes. Buildings and building parts that are entirely below ground can be styled differently or omitted from the rendered image.

This flag is conceptually different from the `level` field, which indicates relative z-ordering and, notably, can be negative even if the building is entirely above-ground. | | `num_floors` | `int32` (optional) | Number of above-ground floors of the building or part. | | `num_floors_underground` | `int32` (optional) | Number of below-ground floors of the building or part. | -| `min_height` | `float64` (optional) | Altitude above ground where the bottom of the building or building part starts.

If present, this value indicates that the lowest part of the building or building
part starts is above ground level. | -| `min_floor` | `int32` (optional) | Start floor of this building or part.

If present, this value indicates that the building or part is "floating" and its
bottom-most floor is above ground level, usually because it is part of a larger
building in which some parts do reach down to ground level. An example is a building
that has an entry road or driveway at ground level into an interior courtyard, where
part of the building bridges above the entry road. This property may sometimes be
populated when `min_height` is missing and in these cases can be used as a proxy for
`min_height`. | +| `min_height` | `float64` (optional) | Altitude above ground where the bottom of the building or building part starts.

If present, this value indicates that the lowest part of the building or building part starts is above ground level. | +| `min_floor` | `int32` (optional) | Start floor of this building or part.

If present, this value indicates that the building or part is "floating" and its bottom-most floor is above ground level, usually because it is part of a larger building in which some parts do reach down to ground level. An example is a building that has an entry road or driveway at ground level into an interior courtyard, where part of the building bridges above the entry road. This property may sometimes be populated when `min_height` is missing and in these cases can be used as a proxy for `min_height`. | | `facade_color` | [`HexColor`](../system/hex_color.md) (optional) | Facade color in `#rgb` or `#rrggbb` hex notation | | `facade_material` | [`FacadeMaterial`](types/facade_material.md) (optional) | Outer surface material of the facade | | `roof_material` | [`RoofMaterial`](types/roof_material.md) (optional) | Outer surface material of the roof | @@ -65,7 +65,7 @@ vertical dimension. ## Examples | Column | Value | -|-------:|-------| +| -------: | ------- | | `id` | `19412d64-51ac-3d6a-ac2f-8a8c8b91bb60` | | `geometry` | `POLYGON ((-73.2462509 -39.8108937, -73.2462755 -39.8109047, -73.246291 -39.8109182, -73.2463022 -39....` | | `theme` | `buildings` | diff --git a/docs/schema/reference/buildings/types/building_class.md b/docs/schema/reference/buildings/types/building_class.md index 270c0d92e..7cdc52c0a 100644 --- a/docs/schema/reference/buildings/types/building_class.md +++ b/docs/schema/reference/buildings/types/building_class.md @@ -93,3 +93,7 @@ The building class adds detail to the broad classification of `BuildingSubtype`. - `university` - `warehouse` - `wayside_shrine` + +## Used By + +- [`Building`](../building.md) diff --git a/docs/schema/reference/buildings/types/building_subtype.md b/docs/schema/reference/buildings/types/building_subtype.md index d447a3382..7069cf95e 100644 --- a/docs/schema/reference/buildings/types/building_subtype.md +++ b/docs/schema/reference/buildings/types/building_subtype.md @@ -19,3 +19,7 @@ This broad classification can be refined by `BuildingClass`. - `residential` - `service` - `transportation` + +## Used By + +- [`Building`](../building.md) diff --git a/docs/schema/reference/buildings/types/facade_material.md b/docs/schema/reference/buildings/types/facade_material.md index efcee10ad..13a5a8c41 100644 --- a/docs/schema/reference/buildings/types/facade_material.md +++ b/docs/schema/reference/buildings/types/facade_material.md @@ -15,3 +15,8 @@ The outer surface material of building facade. - `stone` - `timber_framing` - `wood` + +## Used By + +- [`Building`](../building.md) +- [`BuildingPart`](../building_part.md) diff --git a/docs/schema/reference/buildings/types/roof_material.md b/docs/schema/reference/buildings/types/roof_material.md index 66cfb2953..1efc1f022 100644 --- a/docs/schema/reference/buildings/types/roof_material.md +++ b/docs/schema/reference/buildings/types/roof_material.md @@ -18,3 +18,8 @@ The outermost material of the roof. - `tar_paper` - `thatch` - `wood` + +## Used By + +- [`Building`](../building.md) +- [`BuildingPart`](../building_part.md) diff --git a/docs/schema/reference/buildings/types/roof_orientation.md b/docs/schema/reference/buildings/types/roof_orientation.md index 9207b8763..443af22a2 100644 --- a/docs/schema/reference/buildings/types/roof_orientation.md +++ b/docs/schema/reference/buildings/types/roof_orientation.md @@ -9,3 +9,8 @@ The members of this enumeration, `"across"` and `"along"`, are borrowed from the - `across` - The roof ridge runs perpendicular to the longer of the two building edges, parallel to the shorter - `along` - The roof ridge runs parallel to the longer of the two building edges + +## Used By + +- [`Building`](../building.md) +- [`BuildingPart`](../building_part.md) diff --git a/docs/schema/reference/buildings/types/roof_shape.md b/docs/schema/reference/buildings/types/roof_shape.md index ac0176a42..f1271e095 100644 --- a/docs/schema/reference/buildings/types/roof_shape.md +++ b/docs/schema/reference/buildings/types/roof_shape.md @@ -18,3 +18,8 @@ The shape of the roof. - `sawtooth` - `skillion` - `spherical` + +## Used By + +- [`Building`](../building.md) +- [`BuildingPart`](../building_part.md) diff --git a/docs/schema/reference/core/cartographic_hints.md b/docs/schema/reference/core/cartographic_hints.md index 31517c430..33c58438b 100644 --- a/docs/schema/reference/core/cartographic_hints.md +++ b/docs/schema/reference/core/cartographic_hints.md @@ -5,8 +5,14 @@ Cartographic hints for optimal use of Overture features in map-making. ## Fields | Name | Type | Description | -|-----:|:----:|-------------| -| `prominence` | [`Prominence`](prominence.md) (optional) | | -| `min_zoom` | [`MinZoom`](min_zoom.md) (optional) | | -| `max_zoom` | [`MaxZoom`](max_zoom.md) (optional) | | -| `sort_key` | [`SortKey`](sort_key.md) (optional) | | +| -----: | :----: | ------------- | +| `prominence` | [`Prominence`](prominence.md) (optional) | Subjective scale of feature significance or importance, with 1 being the least, and 100 being the most, significant.

This value can be used to help drive decisions about how and when to display a feature, and how to treat it relative to neighboring features.

When populated by Overture, this value is derived from various factors including, but not limited to: feature and subtype, population, and capital status. | +| `min_zoom` | [`MinZoom`](min_zoom.md) (optional) | Recommended minimum tile zoom level in which this feature should be displayed.

It is recommended that the feature be hidden at zoom levels below this value.

Zoom levels follow the Slippy Maps convention, documented in the following references: - https://wiki.openstreetmap.org/wiki/Slippy_map_tilenames - https://www.maptiler.com/google-maps-coordinates-tile-bounds-projection | +| `max_zoom` | [`MaxZoom`](max_zoom.md) (optional) | Recommended maximum tile zoom level in which this feature should be displayed.

It is recommended that the feature be hidden at zoom levels above this value.

Zoom levels follow the Slippy Maps convention, documented in the following references: - https://wiki.openstreetmap.org/wiki/Slippy_map_tilenames - https://www.maptiler.com/google-maps-coordinates-tile-bounds-projection | +| `sort_key` | [`SortKey`](sort_key.md) (optional) | Integer indicating the recommended order in which to draw features.

Features with a lower number should be drawn "in front" of features with a higher number. | + +## Used By + +- [`Bathymetry`](../base/bathymetry.md) +- [`Division`](../divisions/division.md) +- [`LandCover`](../base/land_cover.md) diff --git a/docs/schema/reference/core/common_names.md b/docs/schema/reference/core/common_names.md index 971ddc84a..2d1950d78 100644 --- a/docs/schema/reference/core/common_names.md +++ b/docs/schema/reference/core/common_names.md @@ -1,3 +1,10 @@ -# CommonNames (`map`) +# CommonNames A mapping from language to the most commonly used or recognized name in that language. + +Underlying type: `map<`[`LanguageTag`](../system/language_tag.md)`,`[`StrippedString`](../system/stripped_string.md)`>` + +## Used By + +- [`Division`](../divisions/division.md) +- [`Names`](names.md) diff --git a/docs/schema/reference/core/confidence_score.md b/docs/schema/reference/core/confidence_score.md index a0b9ed0e0..42256524e 100644 --- a/docs/schema/reference/core/confidence_score.md +++ b/docs/schema/reference/core/confidence_score.md @@ -1,6 +1,15 @@ -# ConfidenceScore (`float64`) +# ConfidenceScore + +Confidence score between 0.0 and 1.0 + +Underlying type: `float64` ## Constraints - `≥ 0.0` - `≤ 1.0` + +## Used By + +- [`Place`](../places/place.md) +- [`SourceItem`](source_item.md) diff --git a/docs/schema/reference/core/feature_version.md b/docs/schema/reference/core/feature_version.md index 471c6ea56..969394483 100644 --- a/docs/schema/reference/core/feature_version.md +++ b/docs/schema/reference/core/feature_version.md @@ -1,7 +1,27 @@ -# FeatureVersion (`int32`) +# FeatureVersion + +Underlying type: `int32` ## Constraints - `≥ 0` - `≥ -2147483648` (from [`int32`](../system/primitive/primitives.md)) - `≤ 2147483647` (from [`int32`](../system/primitive/primitives.md)) + +## Used By + +- [`Address`](../addresses/address.md) +- [`Bathymetry`](../base/bathymetry.md) +- [`Building`](../buildings/building.md) +- [`BuildingPart`](../buildings/building_part.md) +- [`Connector`](../transportation/connector.md) +- [`Division`](../divisions/division.md) +- [`DivisionArea`](../divisions/division_area.md) +- [`DivisionBoundary`](../divisions/division_boundary.md) +- [`Infrastructure`](../base/infrastructure.md) +- [`Land`](../base/land.md) +- [`LandCover`](../base/land_cover.md) +- [`LandUse`](../base/land_use.md) +- [`Place`](../places/place.md) +- [`Segment`](../transportation/segment.md) +- [`Water`](../base/water.md) diff --git a/docs/schema/reference/core/length_unit.md b/docs/schema/reference/core/length_unit.md index 7c86b9ab7..44750a380 100644 --- a/docs/schema/reference/core/length_unit.md +++ b/docs/schema/reference/core/length_unit.md @@ -11,3 +11,9 @@ Unit of length. - `cm` - One centimeter in the metric and SI systems - `m` - One meter in the metric and SI systems - `km` - One kilometer in the metric and SI systems + +## Used By + +- [`VehicleHeightSelector`](scoping/vehicle_height_selector.md) +- [`VehicleLengthSelector`](scoping/vehicle_length_selector.md) +- [`VehicleWidthSelector`](scoping/vehicle_width_selector.md) diff --git a/docs/schema/reference/core/level.md b/docs/schema/reference/core/level.md index 7d373e500..dff9ca8a0 100644 --- a/docs/schema/reference/core/level.md +++ b/docs/schema/reference/core/level.md @@ -1,6 +1,20 @@ -# Level (`int32`) +# Level + +Z-order of the feature where 0 is visual level + +Underlying type: `int32` ## Constraints - `≥ -2147483648` (from [`int32`](../system/primitive/primitives.md)) - `≤ 2147483647` (from [`int32`](../system/primitive/primitives.md)) + +## Used By + +- [`Building`](../buildings/building.md) +- [`BuildingPart`](../buildings/building_part.md) +- [`Infrastructure`](../base/infrastructure.md) +- [`Land`](../base/land.md) +- [`LandUse`](../base/land_use.md) +- [`LevelRule`](../transportation/types/level_rule.md) +- [`Water`](../base/water.md) diff --git a/docs/schema/reference/core/max_zoom.md b/docs/schema/reference/core/max_zoom.md index 116c04137..6f06fba07 100644 --- a/docs/schema/reference/core/max_zoom.md +++ b/docs/schema/reference/core/max_zoom.md @@ -1,4 +1,15 @@ -# MaxZoom (`int32`) +# MaxZoom + +Recommended maximum tile zoom level in which this feature should be displayed. + +It is recommended that the feature be hidden at zoom levels above this value. + +Zoom levels follow the Slippy Maps convention, documented in the following +references: +- [https://wiki.openstreetmap.org/wiki/Slippy_map_tilenames](https://wiki.openstreetmap.org/wiki/Slippy_map_tilenames) +- [https://www.maptiler.com/google-maps-coordinates-tile-bounds-projection](https://www.maptiler.com/google-maps-coordinates-tile-bounds-projection) + +Underlying type: `int32` ## Constraints @@ -6,3 +17,7 @@ - `≤ 23` - `≥ -2147483648` (from [`int32`](../system/primitive/primitives.md)) - `≤ 2147483647` (from [`int32`](../system/primitive/primitives.md)) + +## Used By + +- [`CartographicHints`](cartographic_hints.md) diff --git a/docs/schema/reference/core/min_zoom.md b/docs/schema/reference/core/min_zoom.md index 01b459178..f309c1e03 100644 --- a/docs/schema/reference/core/min_zoom.md +++ b/docs/schema/reference/core/min_zoom.md @@ -1,4 +1,15 @@ -# MinZoom (`int32`) +# MinZoom + +Recommended minimum tile zoom level in which this feature should be displayed. + +It is recommended that the feature be hidden at zoom levels below this value. + +Zoom levels follow the Slippy Maps convention, documented in the following +references: +- [https://wiki.openstreetmap.org/wiki/Slippy_map_tilenames](https://wiki.openstreetmap.org/wiki/Slippy_map_tilenames) +- [https://www.maptiler.com/google-maps-coordinates-tile-bounds-projection](https://www.maptiler.com/google-maps-coordinates-tile-bounds-projection) + +Underlying type: `int32` ## Constraints @@ -6,3 +17,7 @@ - `≤ 23` - `≥ -2147483648` (from [`int32`](../system/primitive/primitives.md)) - `≤ 2147483647` (from [`int32`](../system/primitive/primitives.md)) + +## Used By + +- [`CartographicHints`](cartographic_hints.md) diff --git a/docs/schema/reference/core/name_rule.md b/docs/schema/reference/core/name_rule.md index 8f4cb5c97..387bd45e8 100644 --- a/docs/schema/reference/core/name_rule.md +++ b/docs/schema/reference/core/name_rule.md @@ -17,12 +17,16 @@ Examples might include: ## Fields | Name | Type | Description | -|-----:|:----:|-------------| +| -----: | :----: | ------------- | | `value` | [`StrippedString`](../system/stripped_string.md) | The actual name value. | | `variant` | [`NameVariant`](name_variant.md) | The name variant for this name rule. | -| `language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47
language tag. | -| `perspectives` | [`Perspectives`](perspectives.md) (optional) | | +| `language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 language tag. | +| `perspectives` | [`Perspectives`](perspectives.md) (optional) | Political perspectives from which a named feature is viewed. | | `perspectives.mode` | [`PerspectiveMode`](perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | | `perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | | `between` | [`LinearlyReferencedRange`](scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | | `side` | [`Side`](scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | + +## Used By + +- [`Names`](names.md) diff --git a/docs/schema/reference/core/name_variant.md b/docs/schema/reference/core/name_variant.md index 365f505a5..ea9fa475c 100644 --- a/docs/schema/reference/core/name_variant.md +++ b/docs/schema/reference/core/name_variant.md @@ -16,3 +16,7 @@ official documents. other well-known name is not the common name. - `short` - An abbreviated or shortened version of the name, which may be an acronym or some other commonly-used short form. An example is "NYC" for New York City. + +## Used By + +- [`NameRule`](name_rule.md) diff --git a/docs/schema/reference/core/names.md b/docs/schema/reference/core/names.md index 89653b0da..e4e7c9b21 100644 --- a/docs/schema/reference/core/names.md +++ b/docs/schema/reference/core/names.md @@ -5,15 +5,29 @@ Multilingual names container. ## Fields | Name | Type | Description | -|-----:|:----:|-------------| +| -----: | :----: | ------------- | | `primary` | [`StrippedString`](../system/stripped_string.md) | The most commonly used name. | | `common` | [`CommonNames`](common_names.md) (map, optional) | | | `rules[]` | `list<`[`NameRule`](name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | | `rules[].value` | [`StrippedString`](../system/stripped_string.md) | The actual name value. | | `rules[].variant` | [`NameVariant`](name_variant.md) | The name variant for this name rule. | -| `rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47
language tag. | -| `rules[].perspectives` | [`Perspectives`](perspectives.md) (optional) | | +| `rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 language tag. | +| `rules[].perspectives` | [`Perspectives`](perspectives.md) (optional) | Political perspectives from which a named feature is viewed. | | `rules[].perspectives.mode` | [`PerspectiveMode`](perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | | `rules[].perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | | `rules[].between` | [`LinearlyReferencedRange`](scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | | `rules[].side` | [`Side`](scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | + +## Used By + +- [`Brand`](../places/types/brand.md) +- [`Building`](../buildings/building.md) +- [`BuildingPart`](../buildings/building_part.md) +- [`Division`](../divisions/division.md) +- [`DivisionArea`](../divisions/division_area.md) +- [`Infrastructure`](../base/infrastructure.md) +- [`Land`](../base/land.md) +- [`LandUse`](../base/land_use.md) +- [`Place`](../places/place.md) +- [`Segment`](../transportation/segment.md) +- [`Water`](../base/water.md) diff --git a/docs/schema/reference/core/perspective_mode.md b/docs/schema/reference/core/perspective_mode.md index 259473873..af2f597ff 100644 --- a/docs/schema/reference/core/perspective_mode.md +++ b/docs/schema/reference/core/perspective_mode.md @@ -6,3 +6,7 @@ Perspective mode for disputed names. - `accepted_by` - `disputed_by` + +## Used By + +- [`Perspectives`](perspectives.md) diff --git a/docs/schema/reference/core/perspectives.md b/docs/schema/reference/core/perspectives.md index c0df687be..c24d8be71 100644 --- a/docs/schema/reference/core/perspectives.md +++ b/docs/schema/reference/core/perspectives.md @@ -5,6 +5,12 @@ Political perspectives container. ## Fields | Name | Type | Description | -|-----:|:----:|-------------| +| -----: | :----: | ------------- | | `mode` | [`PerspectiveMode`](perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | | `countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | + +## Used By + +- [`Division`](../divisions/division.md) +- [`DivisionBoundary`](../divisions/division_boundary.md) +- [`NameRule`](name_rule.md) diff --git a/docs/schema/reference/core/prominence.md b/docs/schema/reference/core/prominence.md index 874045c45..524ec9790 100644 --- a/docs/schema/reference/core/prominence.md +++ b/docs/schema/reference/core/prominence.md @@ -1,4 +1,15 @@ -# Prominence (`int32`) +# Prominence + +Subjective scale of feature significance or importance, with 1 being the least, and +100 being the most, significant. + +This value can be used to help drive decisions about how and when to display a +feature, and how to treat it relative to neighboring features. + +When populated by Overture, this value is derived from various factors including, +but not limited to: feature and subtype, population, and capital status. + +Underlying type: `int32` ## Constraints @@ -6,3 +17,7 @@ - `≤ 100` - `≥ -2147483648` (from [`int32`](../system/primitive/primitives.md)) - `≤ 2147483647` (from [`int32`](../system/primitive/primitives.md)) + +## Used By + +- [`CartographicHints`](cartographic_hints.md) diff --git a/docs/schema/reference/core/scoping/heading.md b/docs/schema/reference/core/scoping/heading.md index e8dc985dc..e59a4600d 100644 --- a/docs/schema/reference/core/scoping/heading.md +++ b/docs/schema/reference/core/scoping/heading.md @@ -6,3 +6,12 @@ Travel direction along an oriented path: forward or backward. - `forward` - `backward` + +## Used By + +- [`AccessRestrictionRule.When`](../../transportation/types/access_restriction_rule.when.md) +- [`DestinationRule`](../../transportation/types/destination_rule.md) +- [`DestinationRule.When`](../../transportation/types/destination_rule.when.md) +- [`ProhibitedTransitionRule`](../../transportation/types/prohibited_transition_rule.md) +- [`ProhibitedTransitionRule.When`](../../transportation/types/prohibited_transition_rule.when.md) +- [`SpeedLimitRule.When`](../../transportation/types/speed_limit_rule.when.md) diff --git a/docs/schema/reference/core/scoping/linearly_referenced_position.md b/docs/schema/reference/core/scoping/linearly_referenced_position.md index 0db37caf7..605af6ee2 100644 --- a/docs/schema/reference/core/scoping/linearly_referenced_position.md +++ b/docs/schema/reference/core/scoping/linearly_referenced_position.md @@ -1,6 +1,15 @@ -# LinearlyReferencedPosition (`float64`) +# LinearlyReferencedPosition + +Represents a linearly-referenced position between 0% and 100% of the distance along a path such as a road segment or a river center-line segment. + +Underlying type: `float64` ## Constraints - `≥ 0.0` - `≤ 1.0` + +## Used By + +- [`ConnectorReference`](../../transportation/types/connector_reference.md) +- [`LinearlyReferencedRange`](linearly_referenced_range.md) diff --git a/docs/schema/reference/core/scoping/linearly_referenced_range.md b/docs/schema/reference/core/scoping/linearly_referenced_range.md index 5e9ef6a6a..b08f04917 100644 --- a/docs/schema/reference/core/scoping/linearly_referenced_range.md +++ b/docs/schema/reference/core/scoping/linearly_referenced_range.md @@ -1,7 +1,26 @@ -# LinearlyReferencedRange (`list`) +# LinearlyReferencedRange + +Represents a non-empty range of positions along a path as a pair linearly-referenced positions. For example, the pair [0.25, 0.5] represents the range beginning 25% of the distance from the start of the path and ending 50% of the distance from the path + +Underlying type: `list` ## Constraints - Linear reference range constraint (0.0 to 1.0). (`LinearReferenceRangeConstraint`) - `≥ 0.0` (from [`LinearlyReferencedPosition`](linearly_referenced_position.md)) - `≤ 1.0` (from [`LinearlyReferencedPosition`](linearly_referenced_position.md)) + +## Used By + +- [`AccessRestrictionRule`](../../transportation/types/access_restriction_rule.md) +- [`LevelRule`](../../transportation/types/level_rule.md) +- [`NameRule`](../name_rule.md) +- [`ProhibitedTransitionRule`](../../transportation/types/prohibited_transition_rule.md) +- [`RailFlagRule`](../../transportation/types/rail_flag_rule.md) +- [`RoadFlagRule`](../../transportation/types/road_flag_rule.md) +- [`RouteReference`](../../transportation/types/route_reference.md) +- [`SourceItem`](../source_item.md) +- [`SpeedLimitRule`](../../transportation/types/speed_limit_rule.md) +- [`SubclassRule`](../../transportation/types/subclass_rule.md) +- [`SurfaceRule`](../../transportation/types/surface_rule.md) +- [`WidthRule`](../../transportation/types/width_rule.md) diff --git a/docs/schema/reference/core/scoping/opening_hours.md b/docs/schema/reference/core/scoping/opening_hours.md index 89b53e63c..51abc3929 100644 --- a/docs/schema/reference/core/scoping/opening_hours.md +++ b/docs/schema/reference/core/scoping/opening_hours.md @@ -1,4 +1,12 @@ -# OpeningHours (`string`) +# OpeningHours Time span or time spans during which something is open or active, specified in the OpenStreetMap -opening hours specification: https://wiki.openstreetmap.org/wiki/Key:opening_hours/specification. +opening hours specification: [https://wiki.openstreetmap.org/wiki/Key:opening_hours/specification.](https://wiki.openstreetmap.org/wiki/Key:opening_hours/specification.) + +Underlying type: `string` + +## Used By + +- [`AccessRestrictionRule.When`](../../transportation/types/access_restriction_rule.when.md) +- [`ProhibitedTransitionRule.When`](../../transportation/types/prohibited_transition_rule.when.md) +- [`SpeedLimitRule.When`](../../transportation/types/speed_limit_rule.when.md) diff --git a/docs/schema/reference/core/scoping/purpose_of_use.md b/docs/schema/reference/core/scoping/purpose_of_use.md index 7217b49f1..a91e74f92 100644 --- a/docs/schema/reference/core/scoping/purpose_of_use.md +++ b/docs/schema/reference/core/scoping/purpose_of_use.md @@ -10,3 +10,9 @@ location. - `to_deliver` - `to_farm` - `for_forestry` + +## Used By + +- [`AccessRestrictionRule.When`](../../transportation/types/access_restriction_rule.when.md) +- [`ProhibitedTransitionRule.When`](../../transportation/types/prohibited_transition_rule.when.md) +- [`SpeedLimitRule.When`](../../transportation/types/speed_limit_rule.when.md) diff --git a/docs/schema/reference/core/scoping/recognized_status.md b/docs/schema/reference/core/scoping/recognized_status.md index f1fab5de0..52ce0c78c 100644 --- a/docs/schema/reference/core/scoping/recognized_status.md +++ b/docs/schema/reference/core/scoping/recognized_status.md @@ -10,3 +10,9 @@ location. - `as_disabled` - `as_employee` - `as_student` + +## Used By + +- [`AccessRestrictionRule.When`](../../transportation/types/access_restriction_rule.when.md) +- [`ProhibitedTransitionRule.When`](../../transportation/types/prohibited_transition_rule.when.md) +- [`SpeedLimitRule.When`](../../transportation/types/speed_limit_rule.when.md) diff --git a/docs/schema/reference/core/scoping/side.md b/docs/schema/reference/core/scoping/side.md index 8a225537a..bc8390a13 100644 --- a/docs/schema/reference/core/scoping/side.md +++ b/docs/schema/reference/core/scoping/side.md @@ -8,3 +8,8 @@ travel of a person or vehicle. - `left` - On the left relative to the facing direction - `right` - On the right side relative to the facing direction + +## Used By + +- [`NameRule`](../name_rule.md) +- [`Norms`](../../divisions/types/division/norms.md) diff --git a/docs/schema/reference/core/scoping/travel_mode.md b/docs/schema/reference/core/scoping/travel_mode.md index 3a87b8a3d..1a2aa0b55 100644 --- a/docs/schema/reference/core/scoping/travel_mode.md +++ b/docs/schema/reference/core/scoping/travel_mode.md @@ -17,3 +17,9 @@ Some modes represent groups of modes. - `hgv` - `hov` - `emergency` + +## Used By + +- [`AccessRestrictionRule.When`](../../transportation/types/access_restriction_rule.when.md) +- [`ProhibitedTransitionRule.When`](../../transportation/types/prohibited_transition_rule.when.md) +- [`SpeedLimitRule.When`](../../transportation/types/speed_limit_rule.when.md) diff --git a/docs/schema/reference/core/scoping/vehicle_axle_count_selector.md b/docs/schema/reference/core/scoping/vehicle_axle_count_selector.md index 7aa2bf09b..2735ab8b6 100644 --- a/docs/schema/reference/core/scoping/vehicle_axle_count_selector.md +++ b/docs/schema/reference/core/scoping/vehicle_axle_count_selector.md @@ -5,7 +5,13 @@ Selects vehicles based on the number of axles they have. ## Fields | Name | Type | Description | -|-----:|:----:|-------------| +| -----: | :----: | ------------- | | `dimension` | `"axle_count"` | | | `comparison` | [`VehicleRelation`](vehicle_relation.md) | | | `value` | `uint8` | Number of axles on the vehicle | + +## Used By + +- [`AccessRestrictionRule.When`](../../transportation/types/access_restriction_rule.when.md) +- [`ProhibitedTransitionRule.When`](../../transportation/types/prohibited_transition_rule.when.md) +- [`SpeedLimitRule.When`](../../transportation/types/speed_limit_rule.when.md) diff --git a/docs/schema/reference/core/scoping/vehicle_height_selector.md b/docs/schema/reference/core/scoping/vehicle_height_selector.md index 97457df59..450135147 100644 --- a/docs/schema/reference/core/scoping/vehicle_height_selector.md +++ b/docs/schema/reference/core/scoping/vehicle_height_selector.md @@ -5,8 +5,14 @@ Selects vehicles based on their height. ## Fields | Name | Type | Description | -|-----:|:----:|-------------| +| -----: | :----: | ------------- | | `dimension` | `"height"` | | | `comparison` | [`VehicleRelation`](vehicle_relation.md) | | | `value` | `float64` | Vehicle height selection threshold in the given `unit` | | `unit` | [`LengthUnit`](../length_unit.md) | Height unit in which `value` is expressed | + +## Used By + +- [`AccessRestrictionRule.When`](../../transportation/types/access_restriction_rule.when.md) +- [`ProhibitedTransitionRule.When`](../../transportation/types/prohibited_transition_rule.when.md) +- [`SpeedLimitRule.When`](../../transportation/types/speed_limit_rule.when.md) diff --git a/docs/schema/reference/core/scoping/vehicle_length_selector.md b/docs/schema/reference/core/scoping/vehicle_length_selector.md index 1aa23d8a2..b558ca0cc 100644 --- a/docs/schema/reference/core/scoping/vehicle_length_selector.md +++ b/docs/schema/reference/core/scoping/vehicle_length_selector.md @@ -5,8 +5,14 @@ Selects vehicles based on their length. ## Fields | Name | Type | Description | -|-----:|:----:|-------------| +| -----: | :----: | ------------- | | `dimension` | `"length"` | | | `comparison` | [`VehicleRelation`](vehicle_relation.md) | | | `value` | `float64` | Vehicle length selection threshold in the given `unit` | | `unit` | [`LengthUnit`](../length_unit.md) | Length unit in which `value` is expressed | + +## Used By + +- [`AccessRestrictionRule.When`](../../transportation/types/access_restriction_rule.when.md) +- [`ProhibitedTransitionRule.When`](../../transportation/types/prohibited_transition_rule.when.md) +- [`SpeedLimitRule.When`](../../transportation/types/speed_limit_rule.when.md) diff --git a/docs/schema/reference/core/scoping/vehicle_relation.md b/docs/schema/reference/core/scoping/vehicle_relation.md index 38070c276..0ac89eddd 100644 --- a/docs/schema/reference/core/scoping/vehicle_relation.md +++ b/docs/schema/reference/core/scoping/vehicle_relation.md @@ -9,3 +9,11 @@ Relational operator, such as less than or equal to. - `equal` - `less_than` - `less_than_equal` + +## Used By + +- [`VehicleAxleCountSelector`](vehicle_axle_count_selector.md) +- [`VehicleHeightSelector`](vehicle_height_selector.md) +- [`VehicleLengthSelector`](vehicle_length_selector.md) +- [`VehicleWeightSelector`](vehicle_weight_selector.md) +- [`VehicleWidthSelector`](vehicle_width_selector.md) diff --git a/docs/schema/reference/core/scoping/vehicle_weight_selector.md b/docs/schema/reference/core/scoping/vehicle_weight_selector.md index d268ea852..55dc55b8d 100644 --- a/docs/schema/reference/core/scoping/vehicle_weight_selector.md +++ b/docs/schema/reference/core/scoping/vehicle_weight_selector.md @@ -5,8 +5,14 @@ Selects vehicles based on their weight. ## Fields | Name | Type | Description | -|-----:|:----:|-------------| +| -----: | :----: | ------------- | | `dimension` | `"weight"` | | | `comparison` | [`VehicleRelation`](vehicle_relation.md) | | | `value` | `float64` | Vehicle weight selection threshold in the given `unit` | | `unit` | [`WeightUnit`](../weight_unit.md) | Weight unit in which `value` is expressed | + +## Used By + +- [`AccessRestrictionRule.When`](../../transportation/types/access_restriction_rule.when.md) +- [`ProhibitedTransitionRule.When`](../../transportation/types/prohibited_transition_rule.when.md) +- [`SpeedLimitRule.When`](../../transportation/types/speed_limit_rule.when.md) diff --git a/docs/schema/reference/core/scoping/vehicle_width_selector.md b/docs/schema/reference/core/scoping/vehicle_width_selector.md index ada855ed1..bde5ffd65 100644 --- a/docs/schema/reference/core/scoping/vehicle_width_selector.md +++ b/docs/schema/reference/core/scoping/vehicle_width_selector.md @@ -5,8 +5,14 @@ Selects vehicles based on their width. ## Fields | Name | Type | Description | -|-----:|:----:|-------------| +| -----: | :----: | ------------- | | `dimension` | `"width"` | | | `comparison` | [`VehicleRelation`](vehicle_relation.md) | | | `value` | `float64` | Vehicle width selection threshold in the given `unit` | | `unit` | [`LengthUnit`](../length_unit.md) | Width unit in which `value` is expressed | + +## Used By + +- [`AccessRestrictionRule.When`](../../transportation/types/access_restriction_rule.when.md) +- [`ProhibitedTransitionRule.When`](../../transportation/types/prohibited_transition_rule.when.md) +- [`SpeedLimitRule.When`](../../transportation/types/speed_limit_rule.when.md) diff --git a/docs/schema/reference/core/sort_key.md b/docs/schema/reference/core/sort_key.md index c8601d62d..1c1187168 100644 --- a/docs/schema/reference/core/sort_key.md +++ b/docs/schema/reference/core/sort_key.md @@ -1,6 +1,17 @@ -# SortKey (`int32`) +# SortKey + +Integer indicating the recommended order in which to draw features. + +Features with a lower number should be drawn "in front" of features with a higher +number. + +Underlying type: `int32` ## Constraints - `≥ -2147483648` (from [`int32`](../system/primitive/primitives.md)) - `≤ 2147483647` (from [`int32`](../system/primitive/primitives.md)) + +## Used By + +- [`CartographicHints`](cartographic_hints.md) diff --git a/docs/schema/reference/core/source_item.md b/docs/schema/reference/core/source_item.md index 445b88dc0..c4acca0d8 100644 --- a/docs/schema/reference/core/source_item.md +++ b/docs/schema/reference/core/source_item.md @@ -5,11 +5,30 @@ Specifies the source of the data used for a feature or one of its properties. ## Fields | Name | Type | Description | -|-----:|:----:|-------------| -| `property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to.

The root document value `""` indicates that this source information applies to the
entire feature, excepting properties (fields) for which a dedicated source information
record exists.

Any other JSON Pointer apart from `""` indicates that this source record provides
dedicated source information for the property at the path in the JSON Pointer. As an
example, the value `"/names/common/en"` indicates that the source information applies to
the English common name of a named feature, while the value `"/geometry"` indicates that
it applies to the feature geometry. | +| -----: | :----: | ------------- | +| `property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to.

The root document value `""` indicates that this source information applies to the entire feature, excepting properties (fields) for which a dedicated source information record exists.

Any other JSON Pointer apart from `""` indicates that this source record provides dedicated source information for the property at the path in the JSON Pointer. As an example, the value `"/names/common/en"` indicates that the source information applies to the English common name of a named feature, while the value `"/geometry"` indicates that it applies to the feature geometry. | | `dataset` | `string` | Name of the dataset where the source data can be found. | | `license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name.

This should be a valid SPDX license identifier when available.

If omitted, contact the data provider for more license information. | -| `record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can
be found.

The format of record identifiers is dataset-specific. | +| `record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can be found.

The format of record identifiers is dataset-specific. | | `update_time` | `datetime` (optional) | Last update time of the source data record. | | `confidence` | [`ConfidenceScore`](confidence_score.md) (optional) | Confidence value from the source dataset.

This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | | `between` | [`LinearlyReferencedRange`](scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | + +## Used By + +- [`Address`](../addresses/address.md) +- [`Bathymetry`](../base/bathymetry.md) +- [`Building`](../buildings/building.md) +- [`BuildingPart`](../buildings/building_part.md) +- [`Connector`](../transportation/connector.md) +- [`Division`](../divisions/division.md) +- [`DivisionArea`](../divisions/division_area.md) +- [`DivisionBoundary`](../divisions/division_boundary.md) +- [`Infrastructure`](../base/infrastructure.md) +- [`Land`](../base/land.md) +- [`LandCover`](../base/land_cover.md) +- [`LandUse`](../base/land_use.md) +- [`Place`](../places/place.md) +- [`Segment`](../transportation/segment.md) +- [`Water`](../base/water.md) +- [`Sources`](sources.md) diff --git a/docs/schema/reference/core/sources.md b/docs/schema/reference/core/sources.md index 654b7cc83..0908e45f7 100644 --- a/docs/schema/reference/core/sources.md +++ b/docs/schema/reference/core/sources.md @@ -1,6 +1,28 @@ -# Sources (`list`) +# Sources + +Information about the source data used to assemble the feature. + +Underlying type: `list<`[`SourceItem`](source_item.md)`>` ## Constraints - `minimum length: 1` - Ensures all items in a collection are unique. (`UniqueItemsConstraint`) + +## Used By + +- [`Address`](../addresses/address.md) +- [`Bathymetry`](../base/bathymetry.md) +- [`Building`](../buildings/building.md) +- [`BuildingPart`](../buildings/building_part.md) +- [`Connector`](../transportation/connector.md) +- [`Division`](../divisions/division.md) +- [`DivisionArea`](../divisions/division_area.md) +- [`DivisionBoundary`](../divisions/division_boundary.md) +- [`Infrastructure`](../base/infrastructure.md) +- [`Land`](../base/land.md) +- [`LandCover`](../base/land_cover.md) +- [`LandUse`](../base/land_use.md) +- [`Place`](../places/place.md) +- [`Segment`](../transportation/segment.md) +- [`Water`](../base/water.md) diff --git a/docs/schema/reference/core/speed_unit.md b/docs/schema/reference/core/speed_unit.md index 5f655c0f8..acfd44ac0 100644 --- a/docs/schema/reference/core/speed_unit.md +++ b/docs/schema/reference/core/speed_unit.md @@ -6,3 +6,7 @@ Unit of speed. - `mph` - Miles per hour - `km/h` - Kilometers per hour + +## Used By + +- [`Speed`](../transportation/types/speed.md) diff --git a/docs/schema/reference/core/weight_unit.md b/docs/schema/reference/core/weight_unit.md index 652f0cda3..f53cb2977 100644 --- a/docs/schema/reference/core/weight_unit.md +++ b/docs/schema/reference/core/weight_unit.md @@ -11,3 +11,7 @@ Unit of weight. - `g` - One gram in the metric and SI systems - `kg` - One kilogram in the metric and SI systems - `t` - One tonne in the metric and SI systems + +## Used By + +- [`VehicleWeightSelector`](scoping/vehicle_weight_selector.md) diff --git a/docs/schema/reference/divisions/division.md b/docs/schema/reference/divisions/division.md index db5158ae6..3147409d5 100644 --- a/docs/schema/reference/divisions/division.md +++ b/docs/schema/reference/divisions/division.md @@ -12,20 +12,20 @@ Examples include countries, provinces, cities, towns, neighborhoods, etc. ## Fields | Name | Type | Description | -|-----:|:----:|-------------| +| -----: | :----: | ------------- | | `cartography` | [`CartographicHints`](../core/cartographic_hints.md) (optional) | | -| `cartography.prominence` | [`Prominence`](../core/prominence.md) (optional) | | -| `cartography.min_zoom` | [`MinZoom`](../core/min_zoom.md) (optional) | | -| `cartography.max_zoom` | [`MaxZoom`](../core/max_zoom.md) (optional) | | -| `cartography.sort_key` | [`SortKey`](../core/sort_key.md) (optional) | | +| `cartography.prominence` | [`Prominence`](../core/prominence.md) (optional) | Subjective scale of feature significance or importance, with 1 being the least, and 100 being the most, significant.

This value can be used to help drive decisions about how and when to display a feature, and how to treat it relative to neighboring features.

When populated by Overture, this value is derived from various factors including, but not limited to: feature and subtype, population, and capital status. | +| `cartography.min_zoom` | [`MinZoom`](../core/min_zoom.md) (optional) | Recommended minimum tile zoom level in which this feature should be displayed.

It is recommended that the feature be hidden at zoom levels below this value.

Zoom levels follow the Slippy Maps convention, documented in the following references: - https://wiki.openstreetmap.org/wiki/Slippy_map_tilenames - https://www.maptiler.com/google-maps-coordinates-tile-bounds-projection | +| `cartography.max_zoom` | [`MaxZoom`](../core/max_zoom.md) (optional) | Recommended maximum tile zoom level in which this feature should be displayed.

It is recommended that the feature be hidden at zoom levels above this value.

Zoom levels follow the Slippy Maps convention, documented in the following references: - https://wiki.openstreetmap.org/wiki/Slippy_map_tilenames - https://www.maptiler.com/google-maps-coordinates-tile-bounds-projection | +| `cartography.sort_key` | [`SortKey`](../core/sort_key.md) (optional) | Integer indicating the recommended order in which to draw features.

Features with a lower number should be drawn "in front" of features with a higher number. | | `names` | [`Names`](../core/names.md) | | | `names.primary` | [`StrippedString`](../system/stripped_string.md) | The most commonly used name. | | `names.common` | [`CommonNames`](../core/common_names.md) (map, optional) | | | `names.rules[]` | `list<`[`NameRule`](../core/name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | | `names.rules[].value` | [`StrippedString`](../system/stripped_string.md) | The actual name value. | | `names.rules[].variant` | [`NameVariant`](../core/name_variant.md) | The name variant for this name rule. | -| `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47
language tag. | -| `names.rules[].perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | | +| `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 language tag. | +| `names.rules[].perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | Political perspectives from which a named feature is viewed. | | `names.rules[].perspectives.mode` | [`PerspectiveMode`](../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | | `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | | `names.rules[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | @@ -36,25 +36,25 @@ Examples include countries, provinces, cities, towns, neighborhoods, etc. | `theme` | `"divisions"` | | | `type` | `"division"` | | | `version` | [`FeatureVersion`](../core/feature_version.md) | | -| `sources[]` | [`Sources`](../core/sources.md) (list, optional) | | -| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to.

The root document value `""` indicates that this source information applies to the
entire feature, excepting properties (fields) for which a dedicated source information
record exists.

Any other JSON Pointer apart from `""` indicates that this source record provides
dedicated source information for the property at the path in the JSON Pointer. As an
example, the value `"/names/common/en"` indicates that the source information applies to
the English common name of a named feature, while the value `"/geometry"` indicates that
it applies to the feature geometry. | +| `sources[]` | [`Sources`](../core/sources.md) (list, optional) | Information about the source data used to assemble the feature. | +| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to.

The root document value `""` indicates that this source information applies to the entire feature, excepting properties (fields) for which a dedicated source information record exists.

Any other JSON Pointer apart from `""` indicates that this source record provides dedicated source information for the property at the path in the JSON Pointer. As an example, the value `"/names/common/en"` indicates that the source information applies to the English common name of a named feature, while the value `"/geometry"` indicates that it applies to the feature geometry. | | `sources[].dataset` | `string` | Name of the dataset where the source data can be found. | | `sources[].license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name.

This should be a valid SPDX license identifier when available.

If omitted, contact the data provider for more license information. | -| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can
be found.

The format of record identifiers is dataset-specific. | +| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can be found.

The format of record identifiers is dataset-specific. | | `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | | `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset.

This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | | `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | -| `subtype` | [`PlaceType`](types/place_type.md) | | -| `country` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) | ISO 3166-1 alpha-2 country code of the country or country-like entity, that this division represents or belongs to.

If the entity this division represents has a country code, the country property contains it. If it does not, the country property contains the country code of the first division encountered by traversing the parent_division_id chain to the root.

For example:
- The country value for the United States is 'US'
- The country value for New York City is 'US'
- The country value for Puerto Rico, a dependency of the US,
is 'PR'.
- The country value for San Juan, Puerto Rico is 'PR'.

If an entity has an internationally-recognized ISO 3166-1 alpha-2 country code, it should always be used. In cases where the schema requires the code but no internationally-recognized code is available, a synthetic code may be used provided it does not conflict with any internationally-recognized codes. | +| `subtype` | [`PlaceType`](types/place_type.md) | *`admin_level` is required when `subtype` is one of: `county`, `macrocounty`, `region`, `macroregion`, `dependency`, `country`*
*`parent_division_id` is required when `subtype` ≠ `country`*
*`parent_division_id` is forbidden when `subtype` = `country`* | +| `country` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) | ISO 3166-1 alpha-2 country code of the country or country-like entity, that this division represents or belongs to.

If the entity this division represents has a country code, the country property contains it. If it does not, the country property contains the country code of the first division encountered by traversing the parent_division_id chain to the root.

For example: - The country value for the United States is 'US' - The country value for New York City is 'US' - The country value for Puerto Rico, a dependency of the US, is 'PR'. - The country value for San Juan, Puerto Rico is 'PR'.

If an entity has an internationally-recognized ISO 3166-1 alpha-2 country code, it should always be used. In cases where the schema requires the code but no internationally-recognized code is available, a synthetic code may be used provided it does not conflict with any internationally-recognized codes. | | `hierarchies[]` | [`Hierarchy`](types/hierarchy.md) (list) | Hierarchies in which this division participates.

Every division participates in at least one hierarchy. Most participate in only one. Some divisions may participate in more than one hierarchy, for example if they are claimed by different parent divisions from different political perspectives; or if there are other real-world reasons why the division or one of its ancestors has multiple parents.

The first hierarchy in the list is the default hierarchy, and the second-to-last entry in the default hierarchy (if there is such an entry) always corresponds to the `parent_division_id' property. The ordering of hierarchies after the first one is arbitrary. | -| `hierarchies[].division_id` | [`DivisionId`](types/division_id.md) | | +| `hierarchies[].division_id` | [`DivisionId`](types/division_id.md) | ID of the division | | `hierarchies[].subtype` | [`PlaceType`](types/place_type.md) | | | `hierarchies[].name` | [`StrippedString`](../system/stripped_string.md) | Primary name of the division | -| `parent_division_id` | [`Id`](../system/ref/id.md) (optional) | Division ID of this division's parent division.

Not allowed for top-level divisions (countries) and required for all other divisions.

The default parent division is the parent division as seen from the default political perspective, if there is one, and is otherwise chosen somewhat arbitrarily. The hierarchies property can be used to inspect the exhaustive list of parent divisions. | -| `admin_level` | [`AdminLevel`](types/admin_level.md) (optional) | | +| `parent_division_id` | [`Id`](../system/ref/id.md) (optional) | Division ID of this division's parent division.

Not allowed for top-level divisions (countries) and required for all other divisions.

The default parent division is the parent division as seen from the default political perspective, if there is one, and is otherwise chosen somewhat arbitrarily. The hierarchies property can be used to inspect the exhaustive list of parent divisions.
*`parent_division_id` is required when `subtype` ≠ `country`*
*`parent_division_id` is forbidden when `subtype` = `country`* | +| `admin_level` | [`AdminLevel`](types/admin_level.md) (optional) | Integer representing the division's position in its country's administrative hierarchy, where lower numbers correspond to higher level administrative units.
*`admin_level` is required when `subtype` is one of: `county`, `macrocounty`, `region`, `macroregion`, `dependency`, `country`* | | `class` | [`DivisionClass`](types/division_class.md) (optional) | | | `local_type` | [`CommonNames`](../core/common_names.md) (map, optional) | Local name for the subtype property, optionally localized.

For example, the Canadian province of Quebec has the subtype 'region', but in the local administrative hierarchy it is referred to as a 'province'. Similarly, the Canadian Yukon territory also has subtype 'region', but is locally called a 'territory'.

This property is localized using a standard Overture names structure. So for example, in Switzerland the top-level administrative subdivision corresponding to subtype 'region' is the canton, which is may be translated in each of Switzerland's official languages as, 'canton' in French, 'kanton' in German, 'cantone' in Italian, and 'chantun' in Romansh. | -| `region` | [`RegionCode`](../system/region_code.md) (optional) | ISO 3166-2 principal subdivision code of the subdivision-like entity this division represents or belongs to.

If the entity this division represents has a principal subdivision code, the region property contains it. If it does not, the region property contains the principal subdivision code of the first division encountered by traversing the parent_division_id chain to the root.

For example:
- The region value for the United States is omitted.
- The region value for the U.S. state of New York is 'US-NY'.
- The region value for New York City is 'US-NY', which it
inherits from the state of New York.
- The region value for Puerto Rico is 'US-PR'. | +| `region` | [`RegionCode`](../system/region_code.md) (optional) | ISO 3166-2 principal subdivision code of the subdivision-like entity this division represents or belongs to.

If the entity this division represents has a principal subdivision code, the region property contains it. If it does not, the region property contains the principal subdivision code of the first division encountered by traversing the parent_division_id chain to the root.

For example: - The region value for the United States is omitted. - The region value for the U.S. state of New York is 'US-NY'. - The region value for New York City is 'US-NY', which it inherits from the state of New York. - The region value for Puerto Rico is 'US-PR'. | | `perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | Political perspectives from which this division is considered to be an accurate representation.

If this property is absent, then this division is not known to be disputed from any political perspective. Consequently, there is only one division feature representing the entire real world entity.

If this property is present, it means the division represents one of several alternative perspectives on the same real-world entity.

There are two modes of perspective:

1. `accepted_by` means the representation of the division is accepted by the listed entities and would be included on a map drawn from their perspective.

2. `disputed_by` means the representation of the division is disputed by the listed entities and would be excluded from a map drawn from their perspective.

When drawing a map from the perspective of a given country, one would start by gathering all the undisputed divisions (with no `perspectives` property), and then adding to that first all divisions explicitly accepted by the country, and second all divisions not explicitly disputed by the country. | | `perspectives.mode` | [`PerspectiveMode`](../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | | `perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | @@ -63,9 +63,9 @@ Examples include countries, provinces, cities, towns, neighborhoods, etc. | `population` | `int32` (optional) | Population of the division | | `capital_division_ids` | [`Id`](../system/ref/id.md) (list, optional) | Division IDs of this division's capital divisions. If present, this property will refer to the division IDs of the capital cities, county seats, etc. of a division. | | `capital_of_divisions[]` | `list<`[`CapitalOfDivisionItem`](types/capital_of_division_item.md)`>` (optional) | Division IDs and subtypes of divisions this division is a capital of. | -| `capital_of_divisions[].division_id` | [`DivisionId`](types/division_id.md) | | +| `capital_of_divisions[].division_id` | [`DivisionId`](types/division_id.md) | ID of the division | | `capital_of_divisions[].subtype` | [`PlaceType`](types/place_type.md) | | -| `wikidata` | [`WikidataId`](../system/wikidata_id.md) (optional) | | +| `wikidata` | [`WikidataId`](../system/wikidata_id.md) (optional) | A wikidata ID, as found on https://www.wikidata.org/ | ## Constraints @@ -76,7 +76,7 @@ Examples include countries, provinces, cities, towns, neighborhoods, etc. ## Examples | Column | Value | -|-------:|-------| +| -------: | ------- | | `cartography.prominence` | `29` | | `cartography.min_zoom` | `null` | | `cartography.max_zoom` | `null` | diff --git a/docs/schema/reference/divisions/division_area.md b/docs/schema/reference/divisions/division_area.md index e92614cea..f5045f229 100644 --- a/docs/schema/reference/divisions/division_area.md +++ b/docs/schema/reference/divisions/division_area.md @@ -15,15 +15,15 @@ belongs to. ## Fields | Name | Type | Description | -|-----:|:----:|-------------| +| -----: | :----: | ------------- | | `names` | [`Names`](../core/names.md) | | | `names.primary` | [`StrippedString`](../system/stripped_string.md) | The most commonly used name. | | `names.common` | [`CommonNames`](../core/common_names.md) (map, optional) | | | `names.rules[]` | `list<`[`NameRule`](../core/name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | | `names.rules[].value` | [`StrippedString`](../system/stripped_string.md) | The actual name value. | | `names.rules[].variant` | [`NameVariant`](../core/name_variant.md) | The name variant for this name rule. | -| `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47
language tag. | -| `names.rules[].perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | | +| `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 language tag. | +| `names.rules[].perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | Political perspectives from which a named feature is viewed. | | `names.rules[].perspectives.mode` | [`PerspectiveMode`](../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | | `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | | `names.rules[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | @@ -34,22 +34,22 @@ belongs to. | `theme` | `"divisions"` | | | `type` | `"division_area"` | | | `version` | [`FeatureVersion`](../core/feature_version.md) | | -| `sources[]` | [`Sources`](../core/sources.md) (list, optional) | | -| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to.

The root document value `""` indicates that this source information applies to the
entire feature, excepting properties (fields) for which a dedicated source information
record exists.

Any other JSON Pointer apart from `""` indicates that this source record provides
dedicated source information for the property at the path in the JSON Pointer. As an
example, the value `"/names/common/en"` indicates that the source information applies to
the English common name of a named feature, while the value `"/geometry"` indicates that
it applies to the feature geometry. | +| `sources[]` | [`Sources`](../core/sources.md) (list, optional) | Information about the source data used to assemble the feature. | +| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to.

The root document value `""` indicates that this source information applies to the entire feature, excepting properties (fields) for which a dedicated source information record exists.

Any other JSON Pointer apart from `""` indicates that this source record provides dedicated source information for the property at the path in the JSON Pointer. As an example, the value `"/names/common/en"` indicates that the source information applies to the English common name of a named feature, while the value `"/geometry"` indicates that it applies to the feature geometry. | | `sources[].dataset` | `string` | Name of the dataset where the source data can be found. | | `sources[].license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name.

This should be a valid SPDX license identifier when available.

If omitted, contact the data provider for more license information. | -| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can
be found.

The format of record identifiers is dataset-specific. | +| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can be found.

The format of record identifiers is dataset-specific. | | `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | | `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset.

This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | | `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | -| `subtype` | [`PlaceType`](types/place_type.md) | | +| `subtype` | [`PlaceType`](types/place_type.md) | *`admin_level` is required when `subtype` is one of: `county`, `macrocounty`, `region`, `macroregion`, `dependency`, `country`* | | `class` | [`AreaClass`](types/division_area/area_class.md) | | -| `is_land` | `boolean` (optional) | A boolean to indicate whether or not the feature geometry represents the land-clipped, non-maritime boundary. The geometry can be used for map rendering, cartographic display, and similar purposes. | -| `is_territorial` | `boolean` (optional) | A boolean to indicate whether or not the feature geometry represents Overture's best approximation of this place's maritime boundary. For coastal places, this would tend to include the water area. The geometry can be used for data processing, reverse-geocoding, and similar purposes. | +| `is_land` | `boolean` (optional) | A boolean to indicate whether or not the feature geometry represents the land-clipped, non-maritime boundary. The geometry can be used for map rendering, cartographic display, and similar purposes.
*Exactly one of `is_land`, `is_territorial` must be `true`* | +| `is_territorial` | `boolean` (optional) | A boolean to indicate whether or not the feature geometry represents Overture's best approximation of this place's maritime boundary. For coastal places, this would tend to include the water area. The geometry can be used for data processing, reverse-geocoding, and similar purposes.
*Exactly one of `is_land`, `is_territorial` must be `true`* | | `division_id` | [`Id`](../system/ref/id.md) | Division ID of the division this area belongs to. | | `country` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) | ISO 3166-1 alpha-2 country code of the division this area belongs to. | | `region` | [`RegionCode`](../system/region_code.md) (optional) | ISO 3166-2 principal subdivision code of the division this area belongs to. | -| `admin_level` | [`AdminLevel`](types/admin_level.md) (optional) | | +| `admin_level` | [`AdminLevel`](types/admin_level.md) (optional) | Integer representing the division's position in its country's administrative hierarchy, where lower numbers correspond to higher level administrative units.
*`admin_level` is required when `subtype` is one of: `county`, `macrocounty`, `region`, `macroregion`, `dependency`, `country`* | ## Constraints @@ -59,7 +59,7 @@ belongs to. ## Examples | Column | Value | -|-------:|-------| +| -------: | ------- | | `names.primary` | `ʻEua` | | `names.common` | `null` | | `names.rules` | `null` | diff --git a/docs/schema/reference/divisions/division_boundary.md b/docs/schema/reference/divisions/division_boundary.md index ad39a8fb7..976505782 100644 --- a/docs/schema/reference/divisions/division_boundary.md +++ b/docs/schema/reference/divisions/division_boundary.md @@ -11,31 +11,31 @@ Some boundaries may be disputed by the divisions on one or both sides. ## Fields | Name | Type | Description | -|-----:|:----:|-------------| +| -----: | :----: | ------------- | | `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | | `bbox` | `bbox` (optional) | An optional bounding box for the feature | | `geometry` | `geometry` | Boundary line or lines | | `theme` | `"divisions"` | | | `type` | `"division_boundary"` | | | `version` | [`FeatureVersion`](../core/feature_version.md) | | -| `sources[]` | [`Sources`](../core/sources.md) (list, optional) | | -| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to.

The root document value `""` indicates that this source information applies to the
entire feature, excepting properties (fields) for which a dedicated source information
record exists.

Any other JSON Pointer apart from `""` indicates that this source record provides
dedicated source information for the property at the path in the JSON Pointer. As an
example, the value `"/names/common/en"` indicates that the source information applies to
the English common name of a named feature, while the value `"/geometry"` indicates that
it applies to the feature geometry. | +| `sources[]` | [`Sources`](../core/sources.md) (list, optional) | Information about the source data used to assemble the feature. | +| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to.

The root document value `""` indicates that this source information applies to the entire feature, excepting properties (fields) for which a dedicated source information record exists.

Any other JSON Pointer apart from `""` indicates that this source record provides dedicated source information for the property at the path in the JSON Pointer. As an example, the value `"/names/common/en"` indicates that the source information applies to the English common name of a named feature, while the value `"/geometry"` indicates that it applies to the feature geometry. | | `sources[].dataset` | `string` | Name of the dataset where the source data can be found. | | `sources[].license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name.

This should be a valid SPDX license identifier when available.

If omitted, contact the data provider for more license information. | -| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can
be found.

The format of record identifiers is dataset-specific. | +| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can be found.

The format of record identifiers is dataset-specific. | | `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | | `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset.

This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | | `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | -| `subtype` | [`PlaceType`](types/place_type.md) | | +| `subtype` | [`PlaceType`](types/place_type.md) | *`admin_level` is required when `subtype` is one of: `county`, `macrocounty`, `region`, `macroregion`, `dependency`, `country`*
*`country` is required when `subtype` ≠ `country`*
*`country` is forbidden when `subtype` = `country`* | | `class` | [`BoundaryClass`](types/division_boundary/boundary_class.md) | | -| `is_land` | `boolean` (optional) | A boolean to indicate whether or not the feature geometry represents the
land-clipped, non-maritime boundary. The geometry can be used for map
rendering, cartographic display, and similar purposes. | -| `is_territorial` | `boolean` (optional) | A boolean to indicate whether or not the feature geometry represents
Overture's best approximation of this place's maritime boundary. For
coastal places, this would tend to include the water area. The geometry
can be used for data processing, reverse-geocoding, and similar purposes. | +| `is_land` | `boolean` (optional) | A boolean to indicate whether or not the feature geometry represents the land-clipped, non-maritime boundary. The geometry can be used for map rendering, cartographic display, and similar purposes.
*Exactly one of `is_land`, `is_territorial` must be `true`* | +| `is_territorial` | `boolean` (optional) | A boolean to indicate whether or not the feature geometry represents Overture's best approximation of this place's maritime boundary. For coastal places, this would tend to include the water area. The geometry can be used for data processing, reverse-geocoding, and similar purposes.
*Exactly one of `is_land`, `is_territorial` must be `true`* | | `division_ids` | [`Id`](../system/ref/id.md) (list) | Identifies the two divisions to the left and right, respectively, of the boundary line. The left- and right-hand sides of the boundary are considered from the perspective of a person standing on the line facing in the direction in which the geometry is oriented, i.e. facing toward the end of the line.

The first array element is the Overture ID of the left division. The second element is the Overture ID of the right division. | -| `country` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (optional) | ISO 3166-1 alpha-2 country code of the country or country-like
entity that both sides of the boundary share.

This property will be present on boundaries between two regions, counties,
or similar entities within the same country, but will not be present on boundaries
between two countries or country-like entities. | -| `region` | [`RegionCode`](../system/region_code.md) (optional) | ISO 3166-2 principal subdivision code of the subdivision-like
entity that both sides of the boundary share.

This property will be present on boundaries between two counties, localadmins
or similar entities within the same principal subdivision, but will not be
present on boundaries between different principal subdivisions or countries. | -| `admin_level` | [`AdminLevel`](types/admin_level.md) (optional) | | -| `is_disputed` | `boolean` (optional) | Indicator if there are entities disputing this division boundary.
Information about entities disputing this boundary should be included in perspectives
property.

This property should also be true if boundary between two entities is unclear
and this is "best guess". So having it true and no perspectives gives map creators
reason not to fully trust the boundary, but use it if they have no other. | -| `perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | Political perspectives from which this division boundary is considered to be an accurate representation.

If this property is absent, then this boundary is not known to be disputed from any political perspective. Consequently, there is only one boundary feature representing the entire real world entity.

If this property is present, it means the boundary represents one of several alternative perspectives on the same real-world entity.

There are two modes of perspective:

1. `accepted_by` means the representation of the boundary is accepted by the listed entities and would be included on a map drawn from their perspective.

2. `disputed_by` means the representation of the boundary is disputed by the listed entities and would be excluded from a map drawn from their perspective.

When drawing a map from the perspective of a given country, one would start by gathering all the undisputed boundary (with no `perspectives` property), and then adding to that first all boundary explicitly accepted by the country, and second all boundary not explicitly disputed by the country. | +| `country` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (optional) | ISO 3166-1 alpha-2 country code of the country or country-like entity that both sides of the boundary share.

This property will be present on boundaries between two regions, counties, or similar entities within the same country, but will not be present on boundaries between two countries or country-like entities.
*`country` is required when `subtype` ≠ `country`*
*`country` is forbidden when `subtype` = `country`* | +| `region` | [`RegionCode`](../system/region_code.md) (optional) | ISO 3166-2 principal subdivision code of the subdivision-like entity that both sides of the boundary share.

This property will be present on boundaries between two counties, localadmins or similar entities within the same principal subdivision, but will not be present on boundaries between different principal subdivisions or countries. | +| `admin_level` | [`AdminLevel`](types/admin_level.md) (optional) | Integer representing the division's position in its country's administrative hierarchy, where lower numbers correspond to higher level administrative units.
*`admin_level` is required when `subtype` is one of: `county`, `macrocounty`, `region`, `macroregion`, `dependency`, `country`* | +| `is_disputed` | `boolean` (optional) | Indicator if there are entities disputing this division boundary. Information about entities disputing this boundary should be included in perspectives property.

This property should also be true if boundary between two entities is unclear and this is "best guess". So having it true and no perspectives gives map creators reason not to fully trust the boundary, but use it if they have no other. | +| `perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | Political perspectives from which this division boundary is considered to be an accurate representation.

If this property is absent, then this boundary is not known to be disputed from any political perspective. Consequently, there is only one boundary feature representing the entire real world entity.

If this property is present, it means the boundary represents one of several alternative perspectives on the same real-world entity.

There are two modes of perspective:

1. `accepted_by` means the representation of the boundary is accepted by the listed entities and would be included on a map drawn from their perspective.

2. `disputed_by` means the representation of the boundary is disputed by the listed entities and would be excluded from a map drawn from their perspective.

When drawing a map from the perspective of a given country, one would start by gathering all the undisputed boundary (with no `perspectives` property), and then adding to that first all boundary explicitly accepted by the country, and second all boundary not explicitly disputed by the country. | | `perspectives.mode` | [`PerspectiveMode`](../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | | `perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | @@ -49,7 +49,7 @@ Some boundaries may be disputed by the divisions on one or both sides. ## Examples | Column | Value | -|-------:|-------| +| -------: | ------- | | `id` | `2bdf68e4-860d-3d8c-a472-ccf439a5302a` | | `geometry` | `LINESTRING (-147.064823 -15.4231537, -147.0519131 -15.2885069, -147.048482 -15.1511701)` | | `theme` | `divisions` | diff --git a/docs/schema/reference/divisions/types/admin_level.md b/docs/schema/reference/divisions/types/admin_level.md index 31d708b96..7b36f0570 100644 --- a/docs/schema/reference/divisions/types/admin_level.md +++ b/docs/schema/reference/divisions/types/admin_level.md @@ -1,6 +1,16 @@ -# AdminLevel (`uint8`) +# AdminLevel + +Integer representing the division's position in its country's administrative hierarchy, where lower numbers correspond to higher level administrative units. + +Underlying type: `uint8` ## Constraints - `≥ 0` (from [`uint8`](../../system/primitive/primitives.md)) - `≤ 255` (from [`uint8`](../../system/primitive/primitives.md)) + +## Used By + +- [`Division`](../division.md) +- [`DivisionArea`](../division_area.md) +- [`DivisionBoundary`](../division_boundary.md) diff --git a/docs/schema/reference/divisions/types/capital_of_division_item.md b/docs/schema/reference/divisions/types/capital_of_division_item.md index d07d1df32..76f7c2109 100644 --- a/docs/schema/reference/divisions/types/capital_of_division_item.md +++ b/docs/schema/reference/divisions/types/capital_of_division_item.md @@ -5,6 +5,10 @@ One division that has capital. ## Fields | Name | Type | Description | -|-----:|:----:|-------------| -| `division_id` | [`DivisionId`](division_id.md) | | +| -----: | :----: | ------------- | +| `division_id` | [`DivisionId`](division_id.md) | ID of the division | | `subtype` | [`PlaceType`](place_type.md) | | + +## Used By + +- [`Division`](../division.md) diff --git a/docs/schema/reference/divisions/types/division/norms.md b/docs/schema/reference/divisions/types/division/norms.md index 366aabbb2..9f0c43478 100644 --- a/docs/schema/reference/divisions/types/division/norms.md +++ b/docs/schema/reference/divisions/types/division/norms.md @@ -5,5 +5,9 @@ Local norms and standards. ## Fields | Name | Type | Description | -|-----:|:----:|-------------| +| -----: | :----: | ------------- | | `driving_side` | [`Side`](../../../core/scoping/side.md) (optional) | Side of the road on which vehicles drive in the division. | + +## Used By + +- [`Division`](../../division.md) diff --git a/docs/schema/reference/divisions/types/division_area/area_class.md b/docs/schema/reference/divisions/types/division_area/area_class.md index 32640cf3e..22ec4d13a 100644 --- a/docs/schema/reference/divisions/types/division_area/area_class.md +++ b/docs/schema/reference/divisions/types/division_area/area_class.md @@ -6,3 +6,7 @@ Area and boundary class designations. - `land` - `maritime` + +## Used By + +- [`DivisionArea`](../../division_area.md) diff --git a/docs/schema/reference/divisions/types/division_boundary/boundary_class.md b/docs/schema/reference/divisions/types/division_boundary/boundary_class.md index 64f1aebd9..55c0ccaa4 100644 --- a/docs/schema/reference/divisions/types/division_boundary/boundary_class.md +++ b/docs/schema/reference/divisions/types/division_boundary/boundary_class.md @@ -4,3 +4,7 @@ - `land` - `maritime` + +## Used By + +- [`DivisionBoundary`](../../division_boundary.md) diff --git a/docs/schema/reference/divisions/types/division_class.md b/docs/schema/reference/divisions/types/division_class.md index 6975b3d24..ec5489a1a 100644 --- a/docs/schema/reference/divisions/types/division_class.md +++ b/docs/schema/reference/divisions/types/division_class.md @@ -9,3 +9,7 @@ Division-specific class designations. - `town` - `village` - `hamlet` + +## Used By + +- [`Division`](../division.md) diff --git a/docs/schema/reference/divisions/types/division_id.md b/docs/schema/reference/divisions/types/division_id.md index 41c30c504..9dbd2a8f9 100644 --- a/docs/schema/reference/divisions/types/division_id.md +++ b/docs/schema/reference/divisions/types/division_id.md @@ -1,7 +1,16 @@ -# DivisionId (`string`) +# DivisionId + +ID of the division + +Underlying type: `string` ## Constraints - `minimum length: 1` - `minimum length: 1` (from [`Id`](../../system/ref/id.md)) - Allows only strings that contain no whitespace characters. (`NoWhitespaceConstraint`, pattern: `^\S+$`) + +## Used By + +- [`CapitalOfDivisionItem`](capital_of_division_item.md) +- [`HierarchyItem`](hierarchy_item.md) diff --git a/docs/schema/reference/divisions/types/hierarchy.md b/docs/schema/reference/divisions/types/hierarchy.md index 284b42783..98e4cad51 100644 --- a/docs/schema/reference/divisions/types/hierarchy.md +++ b/docs/schema/reference/divisions/types/hierarchy.md @@ -1,6 +1,16 @@ -# Hierarchy (`list`) +# Hierarchy + +A hierarchy of divisions, with the first entry being a country; each subsequent entry, if any, being a division that is a direct child of the previous entry; and the last entry representing the division that contains the hierarchy. + +For example, a hierarchy for the United States is simply [United States]. A hierarchy for the U.S. state of New Hampshire would be [United States, New Hampshire], and a hierarchy for the city of Concord, NH would be [United States, New Hampshire, Merrimack County, Concord]. + +Underlying type: `list<`[`HierarchyItem`](hierarchy_item.md)`>` ## Constraints - `minimum length: 1` - Ensures all items in a collection are unique. (`UniqueItemsConstraint`) + +## Used By + +- [`Division`](../division.md) diff --git a/docs/schema/reference/divisions/types/hierarchy_item.md b/docs/schema/reference/divisions/types/hierarchy_item.md index 2fdbc2400..541a0e70c 100644 --- a/docs/schema/reference/divisions/types/hierarchy_item.md +++ b/docs/schema/reference/divisions/types/hierarchy_item.md @@ -5,7 +5,12 @@ One division in a hierarchy. ## Fields | Name | Type | Description | -|-----:|:----:|-------------| -| `division_id` | [`DivisionId`](division_id.md) | | +| -----: | :----: | ------------- | +| `division_id` | [`DivisionId`](division_id.md) | ID of the division | | `subtype` | [`PlaceType`](place_type.md) | | | `name` | [`StrippedString`](../../system/stripped_string.md) | Primary name of the division | + +## Used By + +- [`Division`](../division.md) +- [`Hierarchy`](hierarchy.md) diff --git a/docs/schema/reference/divisions/types/place_type.md b/docs/schema/reference/divisions/types/place_type.md index b063847af..641bf2996 100644 --- a/docs/schema/reference/divisions/types/place_type.md +++ b/docs/schema/reference/divisions/types/place_type.md @@ -17,3 +17,11 @@ region, locality, etc.) similar to a Who's on First placetype. - `macrohood` - `neighborhood` - `microhood` + +## Used By + +- [`CapitalOfDivisionItem`](capital_of_division_item.md) +- [`Division`](../division.md) +- [`DivisionArea`](../division_area.md) +- [`DivisionBoundary`](../division_boundary.md) +- [`HierarchyItem`](hierarchy_item.md) diff --git a/docs/schema/reference/places/place.md b/docs/schema/reference/places/place.md index 4cbbfbe26..00f7f4063 100644 --- a/docs/schema/reference/places/place.md +++ b/docs/schema/reference/places/place.md @@ -9,31 +9,31 @@ Places are point representations of real-world facilities, businesses, services, ## Fields | Name | Type | Description | -|-----:|:----:|-------------| +| -----: | :----: | ------------- | | `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | | `bbox` | `bbox` (optional) | An optional bounding box for the feature | | `geometry` | `geometry` | Position of the place. Places are point geometries. | | `theme` | `"places"` | | | `type` | `"place"` | | | `version` | [`FeatureVersion`](../core/feature_version.md) | | -| `sources[]` | [`Sources`](../core/sources.md) (list, optional) | | -| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to.

The root document value `""` indicates that this source information applies to the
entire feature, excepting properties (fields) for which a dedicated source information
record exists.

Any other JSON Pointer apart from `""` indicates that this source record provides
dedicated source information for the property at the path in the JSON Pointer. As an
example, the value `"/names/common/en"` indicates that the source information applies to
the English common name of a named feature, while the value `"/geometry"` indicates that
it applies to the feature geometry. | +| `sources[]` | [`Sources`](../core/sources.md) (list, optional) | Information about the source data used to assemble the feature. | +| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to.

The root document value `""` indicates that this source information applies to the entire feature, excepting properties (fields) for which a dedicated source information record exists.

Any other JSON Pointer apart from `""` indicates that this source record provides dedicated source information for the property at the path in the JSON Pointer. As an example, the value `"/names/common/en"` indicates that the source information applies to the English common name of a named feature, while the value `"/geometry"` indicates that it applies to the feature geometry. | | `sources[].dataset` | `string` | Name of the dataset where the source data can be found. | | `sources[].license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name.

This should be a valid SPDX license identifier when available.

If omitted, contact the data provider for more license information. | -| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can
be found.

The format of record identifiers is dataset-specific. | +| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can be found.

The format of record identifiers is dataset-specific. | | `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | | `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset.

This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | | `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | -| `operating_status` | [`OperatingStatus`](types/operating_status.md) | An indication of whether a place is: in continued operation, in a temporary
operating hiatus, or closed permanently.

This is not an indication of opening hours or that the place is open/closed at the
current time-of-day or day-of-week.

When `operating_status` is `"permanently_closed"`, the `confidence` field will be
set to 0. | +| `operating_status` | [`OperatingStatus`](types/operating_status.md) | An indication of whether a place is: in continued operation, in a temporary operating hiatus, or closed permanently.

This is not an indication of opening hours or that the place is open/closed at the current time-of-day or day-of-week.

When `operating_status` is `"permanently_closed"`, the `confidence` field will be set to 0. | | `categories` | [`Categories`](types/categories.md) (optional) | | | `categories.primary` | [`SnakeCaseString`](../system/snake_case_string.md) | The primary or main category of the place. | -| `categories.alternate` | [`SnakeCaseString`](../system/snake_case_string.md) (list, optional) | Alternate categories of the place.

Some places might fit into two categories, e.g., a book store and a coffee shop. In
these cases, the primary category can be augmented with additional categories. | -| `basic_category` | [`SnakeCaseString`](../system/snake_case_string.md) (optional) | The basic level category of a place.

This field classifies places into categories at a level that most people find
intuitive. The full list of possible values it may hold can be found at (TODO).

The basic level category, or simply basic category, is based on a cognitive science
model use in taxonomy and ontology development. The idea is to provide the category
name at the level of generality that is preferred by humans in learning and memory
tasks. This category to be roughly in the middle of the general-to-specific category
hierarchy.

The full list of basic level categories is available at https://docs.overturemaps.org/guides/places/ | +| `categories.alternate` | [`SnakeCaseString`](../system/snake_case_string.md) (list, optional) | Alternate categories of the place.

Some places might fit into two categories, e.g., a book store and a coffee shop. In these cases, the primary category can be augmented with additional categories. | +| `basic_category` | [`SnakeCaseString`](../system/snake_case_string.md) (optional) | The basic level category of a place.

This field classifies places into categories at a level that most people find intuitive. The full list of possible values it may hold can be found at (TODO).

The basic level category, or simply basic category, is based on a cognitive science model use in taxonomy and ontology development. The idea is to provide the category name at the level of generality that is preferred by humans in learning and memory tasks. This category to be roughly in the middle of the general-to-specific category hierarchy.

The full list of basic level categories is available at https://docs.overturemaps.org/guides/places/ | | `taxonomy` | [`Taxonomy`](types/taxonomy.md) (optional) | A structured representation of the place's category within the Overture taxonomy.

Provides the primary classification, full hierarchy path, and alternate categories. | | `taxonomy.primary` | [`SnakeCaseString`](../system/snake_case_string.md) | The primary, or most specific, category known about this place.

The `primary` category value must always equal the last or rightmost entry in the `hierarchy` field. | -| `taxonomy.hierarchy` | [`SnakeCaseString`](../system/snake_case_string.md) (list) | The full primary hierarchy of categories known for this place, ordered from most general to most specific.
An example hierarchy might be: `["food_and_drink", "restaurant", "casual_eatery", "gas_station_sushi"]`.

The rightmost, or most specific, value in the `hierarchy` must always be equal to the `primary` field.
The basic level category of the place will typically be found in the middle of the primary hierarchy.
The primary hierarchy does not include any of the alternate categories found in the `alternates` field. | -| `taxonomy.alternates` | [`SnakeCaseString`](../system/snake_case_string.md) (list, optional) | Unordered list of additional categories that are known for this
place but that are not part of the primary category hierarchy.

Alternate categories allow a more complete picture of the place
to be surfaced when it fits multiple unconnected branches in the
taxonomy. For example a gas station that also sells groceries
might have primary category of "gas_station" with an alternate
of "grocery_store".

Alternate categories are not part of the primary hierarchy or
another alternate category's hierarchy.
In other words, if a category is a parent in the hierarchy of another category,
that category can't be a primary or alternate category itself.

Note as well that this field is an unordered list of extra
categories and does not represent a hierarchy. | -| `confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | A score between 0 and 1 indicating how confident we are that the place exists.

A confidence score of 0 indicates that we are certain the place doesn't exist
anymore and will always be paired with an `operating_status` of
`"permanently_closed"`.

A confidence score of 1 indicates that we are certain the place does exist.

If there is no value for confidence, it means we don't have enough information on
which to estimate our confidence level. | +| `taxonomy.hierarchy` | [`SnakeCaseString`](../system/snake_case_string.md) (list) | The full primary hierarchy of categories known for this place, ordered from most general to most specific. An example hierarchy might be: `["food_and_drink", "restaurant", "casual_eatery", "gas_station_sushi"]`.

The rightmost, or most specific, value in the `hierarchy` must always be equal to the `primary` field. The basic level category of the place will typically be found in the middle of the primary hierarchy. The primary hierarchy does not include any of the alternate categories found in the `alternates` field. | +| `taxonomy.alternates` | [`SnakeCaseString`](../system/snake_case_string.md) (list, optional) | Unordered list of additional categories that are known for this place but that are not part of the primary category hierarchy.

Alternate categories allow a more complete picture of the place to be surfaced when it fits multiple unconnected branches in the taxonomy. For example a gas station that also sells groceries might have primary category of "gas_station" with an alternate of "grocery_store".

Alternate categories are not part of the primary hierarchy or another alternate category's hierarchy. In other words, if a category is a parent in the hierarchy of another category, that category can't be a primary or alternate category itself.

Note as well that this field is an unordered list of extra categories and does not represent a hierarchy. | +| `confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | A score between 0 and 1 indicating how confident we are that the place exists.

A confidence score of 0 indicates that we are certain the place doesn't exist anymore and will always be paired with an `operating_status` of `"permanently_closed"`.

A confidence score of 1 indicates that we are certain the place does exist.

If there is no value for confidence, it means we don't have enough information on which to estimate our confidence level. | | `websites` | `list` (optional) | The websites of the place. | | `socials` | `list` (optional) | The social media URLs of the place. | | `emails` | `list` (optional) | The email addresses of the place. | @@ -45,27 +45,27 @@ Places are point representations of real-world facilities, businesses, services, | `brand.names.rules[]` | `list<`[`NameRule`](../core/name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | | `brand.names.rules[].value` | [`StrippedString`](../system/stripped_string.md) | The actual name value. | | `brand.names.rules[].variant` | [`NameVariant`](../core/name_variant.md) | The name variant for this name rule. | -| `brand.names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47
language tag. | -| `brand.names.rules[].perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | | +| `brand.names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 language tag. | +| `brand.names.rules[].perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | Political perspectives from which a named feature is viewed. | | `brand.names.rules[].perspectives.mode` | [`PerspectiveMode`](../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | | `brand.names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | | `brand.names.rules[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | | `brand.names.rules[].side` | [`Side`](../core/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | -| `brand.wikidata` | [`WikidataId`](../system/wikidata_id.md) (optional) | | +| `brand.wikidata` | [`WikidataId`](../system/wikidata_id.md) (optional) | A wikidata ID, as found on https://www.wikidata.org/ | | `addresses[]` | `list<`[`Address`](../addresses/address.md)`>` (optional) | The address or addresses of the place | | `addresses[].freeform` | `string` (optional) | Free-form address that contains street name, house number and other address info | | `addresses[].locality` | `string` (optional) | City, town, or neighborhood component of the place address | | `addresses[].postcode` | `string` (optional) | Postal code component of the place address | -| `addresses[].region` | [`RegionCode`](../system/region_code.md) (optional) | | -| `addresses[].country` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (optional) | | +| `addresses[].region` | [`RegionCode`](../system/region_code.md) (optional) | An ISO 3166-2 principal subdivision code | +| `addresses[].country` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (optional) | An ISO 3166-1 alpha-2 country code | | `names` | [`Names`](../core/names.md) (optional) | | | `names.primary` | [`StrippedString`](../system/stripped_string.md) | The most commonly used name. | | `names.common` | [`CommonNames`](../core/common_names.md) (map, optional) | | | `names.rules[]` | `list<`[`NameRule`](../core/name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | | `names.rules[].value` | [`StrippedString`](../system/stripped_string.md) | The actual name value. | | `names.rules[].variant` | [`NameVariant`](../core/name_variant.md) | The name variant for this name rule. | -| `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47
language tag. | -| `names.rules[].perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | | +| `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 language tag. | +| `names.rules[].perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | Political perspectives from which a named feature is viewed. | | `names.rules[].perspectives.mode` | [`PerspectiveMode`](../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | | `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | | `names.rules[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | @@ -74,7 +74,7 @@ Places are point representations of real-world facilities, businesses, services, ## Examples | Column | Value | -|-------:|-------| +| -------: | ------- | | `id` | `99003ee6-e75b-4dd6-8a8a-53a5a716c50d` | | `geometry` | `POINT (-150.46875 -79.1713346)` | | `theme` | `places` | diff --git a/docs/schema/reference/places/types/brand.md b/docs/schema/reference/places/types/brand.md index ab6796474..d2680559b 100644 --- a/docs/schema/reference/places/types/brand.md +++ b/docs/schema/reference/places/types/brand.md @@ -7,17 +7,21 @@ A location with multiple brands is modeled as multiple separate places, each wit ## Fields | Name | Type | Description | -|-----:|:----:|-------------| +| -----: | :----: | ------------- | | `names` | [`Names`](../../core/names.md) (optional) | | | `names.primary` | [`StrippedString`](../../system/stripped_string.md) | The most commonly used name. | | `names.common` | [`CommonNames`](../../core/common_names.md) (map, optional) | | | `names.rules[]` | `list<`[`NameRule`](../../core/name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | | `names.rules[].value` | [`StrippedString`](../../system/stripped_string.md) | The actual name value. | | `names.rules[].variant` | [`NameVariant`](../../core/name_variant.md) | The name variant for this name rule. | -| `names.rules[].language` | [`LanguageTag`](../../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47
language tag. | -| `names.rules[].perspectives` | [`Perspectives`](../../core/perspectives.md) (optional) | | +| `names.rules[].language` | [`LanguageTag`](../../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 language tag. | +| `names.rules[].perspectives` | [`Perspectives`](../../core/perspectives.md) (optional) | Political perspectives from which a named feature is viewed. | | `names.rules[].perspectives.mode` | [`PerspectiveMode`](../../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | | `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | | `names.rules[].between` | [`LinearlyReferencedRange`](../../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | | `names.rules[].side` | [`Side`](../../core/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | -| `wikidata` | [`WikidataId`](../../system/wikidata_id.md) (optional) | | +| `wikidata` | [`WikidataId`](../../system/wikidata_id.md) (optional) | A wikidata ID, as found on https://www.wikidata.org/ | + +## Used By + +- [`Place`](../place.md) diff --git a/docs/schema/reference/places/types/categories.md b/docs/schema/reference/places/types/categories.md index b4ab3432b..323ae2998 100644 --- a/docs/schema/reference/places/types/categories.md +++ b/docs/schema/reference/places/types/categories.md @@ -2,11 +2,15 @@ Categories a place belongs to. -Complete list is available on GitHub: https://github.com/OvertureMaps/schema/blob/main/docs/schema/concepts/by-theme/places/overture_categories.csv +Complete list is available on GitHub: [https://github.com/OvertureMaps/schema/blob/main/docs/schema/concepts/by-theme/places/overture_categories.csv](https://github.com/OvertureMaps/schema/blob/main/docs/schema/concepts/by-theme/places/overture_categories.csv) ## Fields | Name | Type | Description | -|-----:|:----:|-------------| +| -----: | :----: | ------------- | | `primary` | [`SnakeCaseString`](../../system/snake_case_string.md) | The primary or main category of the place. | -| `alternate` | [`SnakeCaseString`](../../system/snake_case_string.md) (list, optional) | Alternate categories of the place.

Some places might fit into two categories, e.g., a book store and a coffee shop. In
these cases, the primary category can be augmented with additional categories. | +| `alternate` | [`SnakeCaseString`](../../system/snake_case_string.md) (list, optional) | Alternate categories of the place.

Some places might fit into two categories, e.g., a book store and a coffee shop. In these cases, the primary category can be augmented with additional categories. | + +## Used By + +- [`Place`](../place.md) diff --git a/docs/schema/reference/places/types/operating_status.md b/docs/schema/reference/places/types/operating_status.md index 45e8aa18d..61b17c7fe 100644 --- a/docs/schema/reference/places/types/operating_status.md +++ b/docs/schema/reference/places/types/operating_status.md @@ -13,3 +13,7 @@ place is continuing to operate normally, as opposed to being in an operating hia - `open` - `permanently_closed` - `temporarily_closed` + +## Used By + +- [`Place`](../place.md) diff --git a/docs/schema/reference/places/types/taxonomy.md b/docs/schema/reference/places/types/taxonomy.md index 6bdc8376d..34df6b5b2 100644 --- a/docs/schema/reference/places/types/taxonomy.md +++ b/docs/schema/reference/places/types/taxonomy.md @@ -7,7 +7,11 @@ Provides the primary classification, full hierarchy path, and alternate categori ## Fields | Name | Type | Description | -|-----:|:----:|-------------| +| -----: | :----: | ------------- | | `primary` | [`SnakeCaseString`](../../system/snake_case_string.md) | The primary, or most specific, category known about this place.

The `primary` category value must always equal the last or rightmost entry in the `hierarchy` field. | -| `hierarchy` | [`SnakeCaseString`](../../system/snake_case_string.md) (list) | The full primary hierarchy of categories known for this place, ordered from most general to most specific.
An example hierarchy might be: `["food_and_drink", "restaurant", "casual_eatery", "gas_station_sushi"]`.

The rightmost, or most specific, value in the `hierarchy` must always be equal to the `primary` field.
The basic level category of the place will typically be found in the middle of the primary hierarchy.
The primary hierarchy does not include any of the alternate categories found in the `alternates` field. | -| `alternates` | [`SnakeCaseString`](../../system/snake_case_string.md) (list, optional) | Unordered list of additional categories that are known for this
place but that are not part of the primary category hierarchy.

Alternate categories allow a more complete picture of the place
to be surfaced when it fits multiple unconnected branches in the
taxonomy. For example a gas station that also sells groceries
might have primary category of "gas_station" with an alternate
of "grocery_store".

Alternate categories are not part of the primary hierarchy or
another alternate category's hierarchy.
In other words, if a category is a parent in the hierarchy of another category,
that category can't be a primary or alternate category itself.

Note as well that this field is an unordered list of extra
categories and does not represent a hierarchy. | +| `hierarchy` | [`SnakeCaseString`](../../system/snake_case_string.md) (list) | The full primary hierarchy of categories known for this place, ordered from most general to most specific. An example hierarchy might be: `["food_and_drink", "restaurant", "casual_eatery", "gas_station_sushi"]`.

The rightmost, or most specific, value in the `hierarchy` must always be equal to the `primary` field. The basic level category of the place will typically be found in the middle of the primary hierarchy. The primary hierarchy does not include any of the alternate categories found in the `alternates` field. | +| `alternates` | [`SnakeCaseString`](../../system/snake_case_string.md) (list, optional) | Unordered list of additional categories that are known for this place but that are not part of the primary category hierarchy.

Alternate categories allow a more complete picture of the place to be surfaced when it fits multiple unconnected branches in the taxonomy. For example a gas station that also sells groceries might have primary category of "gas_station" with an alternate of "grocery_store".

Alternate categories are not part of the primary hierarchy or another alternate category's hierarchy. In other words, if a category is a parent in the hierarchy of another category, that category can't be a primary or alternate category itself.

Note as well that this field is an unordered list of extra categories and does not represent a hierarchy. | + +## Used By + +- [`Place`](../place.md) diff --git a/docs/schema/reference/system/country_code_alpha2.md b/docs/schema/reference/system/country_code_alpha2.md index f72afa05c..f159aa6f7 100644 --- a/docs/schema/reference/system/country_code_alpha2.md +++ b/docs/schema/reference/system/country_code_alpha2.md @@ -1,7 +1,17 @@ -# CountryCodeAlpha2 (`string`) +# CountryCodeAlpha2 An ISO-3166-1 alpha-2 country code. +Underlying type: `string` + ## Constraints - Allows only ISO 3166-1 alpha-2 country codes. (`CountryCodeAlpha2Constraint`, pattern: `^[A-Z]{2}$`) + +## Used By + +- [`Address`](../addresses/address.md) +- [`Division`](../divisions/division.md) +- [`DivisionArea`](../divisions/division_area.md) +- [`DivisionBoundary`](../divisions/division_boundary.md) +- [`Perspectives`](../core/perspectives.md) diff --git a/docs/schema/reference/system/hex_color.md b/docs/schema/reference/system/hex_color.md index 1cfa59db8..a22c9c1fb 100644 --- a/docs/schema/reference/system/hex_color.md +++ b/docs/schema/reference/system/hex_color.md @@ -1,4 +1,4 @@ -# HexColor (`string`) +# HexColor A color represented as an #RRGGBB or #RGB hexadecimal string. @@ -8,6 +8,13 @@ For example: - `"#ffa500"` for bright orange 🟧 - `"#000000"` or `"#000"` for black ⬛ +Underlying type: `string` + ## Constraints - Allows only hexadecimal color codes (e.g., #FF0000 or #FFF). (`HexColorConstraint`, pattern: `^#[0-9A-Fa-f]{3}([0-9A-Fa-f]{3})?$`) + +## Used By + +- [`Building`](../buildings/building.md) +- [`BuildingPart`](../buildings/building_part.md) diff --git a/docs/schema/reference/system/json_pointer.md b/docs/schema/reference/system/json_pointer.md index c3fe528ac..b4f4cbb12 100644 --- a/docs/schema/reference/system/json_pointer.md +++ b/docs/schema/reference/system/json_pointer.md @@ -1,10 +1,10 @@ -# JsonPointer (`string`) +# JsonPointer A JSON Pointer As described in `the JSON Pointer specification, RFC-6901`_. -.. _the JSON Pointer specification, RFC-6901: https://rfc-editor.org/rfc/rfc6901.html +.. _the JSON Pointer specification, RFC-6901: [https://rfc-editor.org/rfc/rfc6901.html](https://rfc-editor.org/rfc/rfc6901.html) For example: @@ -12,6 +12,12 @@ For example: - `"/connectors/"` - `"/connectors/0/at"` +Underlying type: `string` + ## Constraints - Allows only valid JSON Pointer values (RFC 6901). (`JsonPointerConstraint`) + +## Used By + +- [`SourceItem`](../core/source_item.md) diff --git a/docs/schema/reference/system/language_tag.md b/docs/schema/reference/system/language_tag.md index 9101775b7..9daab5dbe 100644 --- a/docs/schema/reference/system/language_tag.md +++ b/docs/schema/reference/system/language_tag.md @@ -1,10 +1,10 @@ -# LanguageTag (`string`) +# LanguageTag A BCP-47 language tag. As described in `Tags for Identifying Languages, BCP-47`_. -.. _Tags for Identifying Languages, BCP-47: https://www.rfc-editor.org/rfc/bcp/bcp47.txt +.. _Tags for Identifying Languages, BCP-47: [https://www.rfc-editor.org/rfc/bcp/bcp47.txt](https://www.rfc-editor.org/rfc/bcp/bcp47.txt) For example: @@ -13,6 +13,15 @@ For example: - `"fr-CA"` - `"zh-Hant-TW"` +Underlying type: `string` + ## Constraints - Allows only `BCP-47`_ language tags. (`LanguageTagConstraint`, pattern: `^(?:(?:[A-Za-z]{2,3}(?:-[A-Za-z]{3}){0,3}?)|(?:[A-Za-z]{4,8}))(?:-[A-Za-z]{4})?(?:-[A-Za-z]{2}|[0-9]{3})?(?:-(?:[A-Za-z0-9]{5,8}|[0-9][A-Za-z0-9]{3}))*(?:-[A-WY-Za-wy-z0-9](?:-[A-Za-z0-9]{2,8})+)*$`) + +## Used By + +- [`Division`](../divisions/division.md) +- [`NameRule`](../core/name_rule.md) +- [`Names`](../core/names.md) +- [`CommonNames`](../core/common_names.md) diff --git a/docs/schema/reference/system/phone_number.md b/docs/schema/reference/system/phone_number.md index 0f20cf657..6d326c7db 100644 --- a/docs/schema/reference/system/phone_number.md +++ b/docs/schema/reference/system/phone_number.md @@ -1,7 +1,13 @@ -# PhoneNumber (`string`) +# PhoneNumber An international phone number. +Underlying type: `string` + ## Constraints - Constraint for international phone numbers. (`PhoneNumberConstraint`, pattern: `^\+\d{1,3}[\s\-\(\)0-9]+$`) + +## Used By + +- [`Place`](../places/place.md) diff --git a/docs/schema/reference/system/primitive/geometry.md b/docs/schema/reference/system/primitive/geometry.md index 4a2c82446..25d26fde7 100644 --- a/docs/schema/reference/system/primitive/geometry.md +++ b/docs/schema/reference/system/primitive/geometry.md @@ -5,7 +5,7 @@ Spatial types for representing geographic features. ## Types | Type | Description | -|-----:|-------------| +| -----: | ------------- | | `Geometry` | GeoJSON geometry value (Point, LineString, Polygon, etc.) | | `BBox` | Bounding box as 4 or 6 coordinate values: [west, south, east, north] or [west, south, min-altitude, east, north, max-altitude] | | `GeometryType` | Enumeration of geometry types: `geometry_collection`, `line_string`, `multi_line_string`, `multi_point`, `multi_polygon`, `point`, `polygon` | \ No newline at end of file diff --git a/docs/schema/reference/system/primitive/primitives.md b/docs/schema/reference/system/primitive/primitives.md index 3887c8f9c..8b0415a7d 100644 --- a/docs/schema/reference/system/primitive/primitives.md +++ b/docs/schema/reference/system/primitive/primitives.md @@ -5,7 +5,7 @@ Numeric types used for schema field definitions. ## Integer Types | Type | Range | Description | -|-----:|:-----:|-------------| +| -----: | :-----: | ------------- | | `int8` | -128 to 127 | Portable 8-bit signed integer. | | `int16` | -32,768 to 32,767 | Portable 16-bit signed integer. | | `int32` | -2,147,483,648 to 2,147,483,647 | Portable 32-bit signed integer. | @@ -14,7 +14,7 @@ Numeric types used for schema field definitions. ## Unsigned Integer Types | Type | Range | Description | -|-----:|:-----:|-------------| +| -----: | :-----: | ------------- | | `uint8` | 0 to 255 | Portable 8-bit unsigned integer. | | `uint16` | 0 to 65,535 | Portable 16-bit unsigned integer. | | `uint32` | 0 to 4,294,967,295 | Portable 32-bit unsigned integer. | @@ -22,6 +22,6 @@ Numeric types used for schema field definitions. ## Floating Point Types | Type | Precision | Description | -|-----:|:---------:|-------------| +| -----: | :---------: | ------------- | | `float32` | ~7 decimal digits | Portable IEEE 32-bit floating point number. | | `float64` | ~15 decimal digits | Portable IEEE 64-bit floating point number. | diff --git a/docs/schema/reference/system/ref/id.md b/docs/schema/reference/system/ref/id.md index f22773d2c..6b971a508 100644 --- a/docs/schema/reference/system/ref/id.md +++ b/docs/schema/reference/system/ref/id.md @@ -1,8 +1,32 @@ -# Id (`string`) +# Id A unique identifier. +Underlying type: `string` + ## Constraints - `minimum length: 1` - Allows only strings that contain no whitespace characters. (`NoWhitespaceConstraint`, pattern: `^\S+$`) + +## Used By + +- [`Address`](../../addresses/address.md) +- [`Bathymetry`](../../base/bathymetry.md) +- [`Building`](../../buildings/building.md) +- [`BuildingPart`](../../buildings/building_part.md) +- [`Connector`](../../transportation/connector.md) +- [`ConnectorReference`](../../transportation/types/connector_reference.md) +- [`DestinationRule`](../../transportation/types/destination_rule.md) +- [`Division`](../../divisions/division.md) +- [`DivisionArea`](../../divisions/division_area.md) +- [`DivisionBoundary`](../../divisions/division_boundary.md) +- [`Infrastructure`](../../base/infrastructure.md) +- [`Land`](../../base/land.md) +- [`LandCover`](../../base/land_cover.md) +- [`LandUse`](../../base/land_use.md) +- [`Place`](../../places/place.md) +- [`Segment`](../../transportation/segment.md) +- [`SequenceEntry`](../../transportation/types/sequence_entry.md) +- [`Water`](../../base/water.md) +- [`DivisionId`](../../divisions/types/division_id.md) diff --git a/docs/schema/reference/system/region_code.md b/docs/schema/reference/system/region_code.md index b328079e7..755bb26a9 100644 --- a/docs/schema/reference/system/region_code.md +++ b/docs/schema/reference/system/region_code.md @@ -1,7 +1,15 @@ -# RegionCode (`string`) +# RegionCode An ISO 3166-2 principal subdivision code. +Underlying type: `string` + ## Constraints - ISO 3166-2 principal subdivision code constraint. (`RegionCodeConstraint`, pattern: `^[A-Z]{2}-[A-Z0-9]{1,3}$`) + +## Used By + +- [`Division`](../divisions/division.md) +- [`DivisionArea`](../divisions/division_area.md) +- [`DivisionBoundary`](../divisions/division_boundary.md) diff --git a/docs/schema/reference/system/snake_case_string.md b/docs/schema/reference/system/snake_case_string.md index 35563b36a..de08e7608 100644 --- a/docs/schema/reference/system/snake_case_string.md +++ b/docs/schema/reference/system/snake_case_string.md @@ -1,7 +1,15 @@ -# SnakeCaseString (`string`) +# SnakeCaseString A string that looks like a snake case identifier, like a Python variable name (*e.g.*, `foo_bar`). +Underlying type: `string` + ## Constraints - Allows only strings that look like snake case identifiers, *e.g.* `"foo_bar"`. (`SnakeCaseConstraint`, pattern: `^[a-z0-9]+(_[a-z0-9]+)*$`) + +## Used By + +- [`Categories`](../places/types/categories.md) +- [`Place`](../places/place.md) +- [`Taxonomy`](../places/types/taxonomy.md) diff --git a/docs/schema/reference/system/stripped_string.md b/docs/schema/reference/system/stripped_string.md index ee9de1c87..64220b5f1 100644 --- a/docs/schema/reference/system/stripped_string.md +++ b/docs/schema/reference/system/stripped_string.md @@ -1,7 +1,22 @@ -# StrippedString (`string`) +# StrippedString A string without leading or trailing whitespace. +Underlying type: `string` + ## Constraints - Allows only strings that have no leading/trailing whitespace. (`StrippedConstraint`) + +## Used By + +- [`Address`](../addresses/address.md) +- [`AddressLevel`](../addresses/types/address_level.md) +- [`DestinationLabels`](../transportation/types/destination_labels.md) +- [`Division`](../divisions/division.md) +- [`HierarchyItem`](../divisions/types/hierarchy_item.md) +- [`NameRule`](../core/name_rule.md) +- [`Names`](../core/names.md) +- [`RouteReference`](../transportation/types/route_reference.md) +- [`SourceItem`](../core/source_item.md) +- [`CommonNames`](../core/common_names.md) diff --git a/docs/schema/reference/system/wikidata_id.md b/docs/schema/reference/system/wikidata_id.md index b65669d97..fc75a2d1b 100644 --- a/docs/schema/reference/system/wikidata_id.md +++ b/docs/schema/reference/system/wikidata_id.md @@ -1,11 +1,23 @@ -# WikidataId (`string`) +# WikidataId -A wikidata ID, as found on https://www.wikidata.org/. +A wikidata ID, as found on [https://www.wikidata.org/.](https://www.wikidata.org/.) - `"Q42"` - `"Q11643"` - `"Q116257497"` +Underlying type: `string` + ## Constraints - Constraint for Wikidata identifiers (Q followed by digits). (`WikidataIdConstraint`, pattern: `^Q\d+$`) + +## Used By + +- [`Brand`](../places/types/brand.md) +- [`Division`](../divisions/division.md) +- [`Infrastructure`](../base/infrastructure.md) +- [`Land`](../base/land.md) +- [`LandUse`](../base/land_use.md) +- [`RouteReference`](../transportation/types/route_reference.md) +- [`Water`](../base/water.md) diff --git a/docs/schema/reference/transportation/connector.md b/docs/schema/reference/transportation/connector.md index c97d5e64f..719e42d0e 100644 --- a/docs/schema/reference/transportation/connector.md +++ b/docs/schema/reference/transportation/connector.md @@ -11,18 +11,18 @@ Connectors are compatible with GeoJSON Point features. ## Fields | Name | Type | Description | -|-----:|:----:|-------------| +| -----: | :----: | ------------- | | `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | | `bbox` | `bbox` (optional) | An optional bounding box for the feature | | `geometry` | `geometry` | Position of the connector | | `theme` | `"transportation"` | | | `type` | `"connector"` | | | `version` | [`FeatureVersion`](../core/feature_version.md) | | -| `sources[]` | [`Sources`](../core/sources.md) (list, optional) | | -| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to.

The root document value `""` indicates that this source information applies to the
entire feature, excepting properties (fields) for which a dedicated source information
record exists.

Any other JSON Pointer apart from `""` indicates that this source record provides
dedicated source information for the property at the path in the JSON Pointer. As an
example, the value `"/names/common/en"` indicates that the source information applies to
the English common name of a named feature, while the value `"/geometry"` indicates that
it applies to the feature geometry. | +| `sources[]` | [`Sources`](../core/sources.md) (list, optional) | Information about the source data used to assemble the feature. | +| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to.

The root document value `""` indicates that this source information applies to the entire feature, excepting properties (fields) for which a dedicated source information record exists.

Any other JSON Pointer apart from `""` indicates that this source record provides dedicated source information for the property at the path in the JSON Pointer. As an example, the value `"/names/common/en"` indicates that the source information applies to the English common name of a named feature, while the value `"/geometry"` indicates that it applies to the feature geometry. | | `sources[].dataset` | `string` | Name of the dataset where the source data can be found. | | `sources[].license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name.

This should be a valid SPDX license identifier when available.

If omitted, contact the data provider for more license information. | -| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can
be found.

The format of record identifiers is dataset-specific. | +| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can be found.

The format of record identifiers is dataset-specific. | | `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | | `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset.

This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | | `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | @@ -30,7 +30,7 @@ Connectors are compatible with GeoJSON Point features. ## Examples | Column | Value | -|-------:|-------| +| -------: | ------- | | `id` | `39542bee-230f-4b91-b7e5-a9b58e0c59b1` | | `geometry` | `POINT (-176.5472979 -43.9679472)` | | `theme` | `transportation` | diff --git a/docs/schema/reference/transportation/segment.md b/docs/schema/reference/transportation/segment.md index 8f516bdcd..d2124288e 100644 --- a/docs/schema/reference/transportation/segment.md +++ b/docs/schema/reference/transportation/segment.md @@ -7,23 +7,23 @@ sidebar_position: 1 ## Fields | Name | Type | Description | -|-----:|:----:|-------------| +| -----: | :----: | ------------- | | `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | | `bbox` | `bbox` (optional) | An optional bounding box for the feature | | `geometry` | `geometry` | Segment centerline | | `theme` | `"transportation"` | | | `type` | `"segment"` | | | `version` | [`FeatureVersion`](../core/feature_version.md) | | -| `sources[]` | [`Sources`](../core/sources.md) (list, optional) | | -| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to.

The root document value `""` indicates that this source information applies to the
entire feature, excepting properties (fields) for which a dedicated source information
record exists.

Any other JSON Pointer apart from `""` indicates that this source record provides
dedicated source information for the property at the path in the JSON Pointer. As an
example, the value `"/names/common/en"` indicates that the source information applies to
the English common name of a named feature, while the value `"/geometry"` indicates that
it applies to the feature geometry. | +| `sources[]` | [`Sources`](../core/sources.md) (list, optional) | Information about the source data used to assemble the feature. | +| `sources[].property` | [`JsonPointer`](../system/json_pointer.md) | A JSON Pointer identifying the property (field) that this source information applies to.

The root document value `""` indicates that this source information applies to the entire feature, excepting properties (fields) for which a dedicated source information record exists.

Any other JSON Pointer apart from `""` indicates that this source record provides dedicated source information for the property at the path in the JSON Pointer. As an example, the value `"/names/common/en"` indicates that the source information applies to the English common name of a named feature, while the value `"/geometry"` indicates that it applies to the feature geometry. | | `sources[].dataset` | `string` | Name of the dataset where the source data can be found. | | `sources[].license` | [`StrippedString`](../system/stripped_string.md) (optional) | Source data license name.

This should be a valid SPDX license identifier when available.

If omitted, contact the data provider for more license information. | -| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can
be found.

The format of record identifiers is dataset-specific. | +| `sources[].record_id` | `string` (optional) | Identifies the specific record within the source dataset where the source data can be found.

The format of record identifiers is dataset-specific. | | `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | | `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset.

This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | | `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | | `subtype` | [`Subtype`](types/subtype.md) | Broad category of transportation segment. | -| `access_restrictions[]` | [`AccessRules`](types/access_rules.md) (list, optional) | | +| `access_restrictions[]` | [`AccessRules`](types/access_rules.md) (list, optional) | Rules governing access to this road segment | | `access_restrictions[].access_type` | [`AccessType`](types/access_type.md) | | | `access_restrictions[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing AccessRestrictionRule applies to. | | `access_restrictions[].when` | [`AccessRestrictionRule.When`](types/access_restriction_rule.when.md) (optional) | Scopes for AccessRestrictionRule: Scope.HEADING, Scope.TEMPORAL, Scope.TRAVEL MODE, Scope.PURPOSE OF USE, Scope.RECOGNIZED STATUS and Scope.VEHICLE | @@ -34,19 +34,19 @@ sidebar_position: 1 | `access_restrictions[].when.recognized` | `list<`[`RecognizedStatus`](../core/scoping/recognized_status.md)`>` (optional) | A list of one or more recognized status values, such as employee or student, that the containing AccessRestrictionRule applies to. | | `access_restrictions[].when.vehicle` | `list` (optional) | A list of one or more vehicle parameters that limit the vehicles the containing AccessRestrictionRule applies to. | | `connectors[]` | `list<`[`ConnectorReference`](types/connector_reference.md)`>` (optional) | List of connectors which this segment is physically connected to and their relative location. Each connector is a possible routing decision point, meaning it defines a place along the segment in which there is possibility to transition to other segments which share the same connector. | -| `connectors[].connector_id` | [`Id`](../system/ref/id.md) | | +| `connectors[].connector_id` | [`Id`](../system/ref/id.md) | A unique identifier | | `connectors[].at` | [`LinearlyReferencedPosition`](../core/scoping/linearly_referenced_position.md) (optional) | The linearly-referenced position on the geometry, specified as a percentage displacement from the start of the geometry, that the containing ConnectorReference applies to. | -| `level_rules[]` | [`LevelRules`](types/level_rules.md) (list, optional) | | -| `level_rules[].value` | [`Level`](../core/level.md) | | +| `level_rules[]` | [`LevelRules`](types/level_rules.md) (list, optional) | Defines the Z-order, i.e. stacking order, of the road segment. | +| `level_rules[].value` | [`Level`](../core/level.md) | Z-order of the feature where 0 is visual level | | `level_rules[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing LevelRule applies to. | -| `routes[]` | [`Routes`](types/routes.md) (list, optional) | | +| `routes[]` | [`Routes`](types/routes.md) (list, optional) | Routes this segment belongs to | | `routes[].name` | [`StrippedString`](../system/stripped_string.md) (optional) | Full name of the route | | `routes[].network` | [`StrippedString`](../system/stripped_string.md) (optional) | Name of the highway system this route belongs to | | `routes[].ref` | [`StrippedString`](../system/stripped_string.md) (optional) | Code or number used to reference the route | | `routes[].symbol` | [`StrippedString`](../system/stripped_string.md) (optional) | URL or description of route signage | -| `routes[].wikidata` | [`WikidataId`](../system/wikidata_id.md) (optional) | | +| `routes[].wikidata` | [`WikidataId`](../system/wikidata_id.md) (optional) | A wikidata ID, as found on https://www.wikidata.org/ | | `routes[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing RouteReference applies to. | -| `subclass_rules[]` | [`SubclassRules`](types/subclass_rules.md) (list, optional) | | +| `subclass_rules[]` | [`SubclassRules`](types/subclass_rules.md) (list, optional) | Set of subclasses scoped along segment | | `subclass_rules[].value` | [`Subclass`](types/subclass.md) | | | `subclass_rules[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SubclassRule applies to. | | `names` | [`Names`](../core/names.md) (optional) | | @@ -55,14 +55,14 @@ sidebar_position: 1 | `names.rules[]` | `list<`[`NameRule`](../core/name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | | `names.rules[].value` | [`StrippedString`](../system/stripped_string.md) | The actual name value. | | `names.rules[].variant` | [`NameVariant`](../core/name_variant.md) | The name variant for this name rule. | -| `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47
language tag. | -| `names.rules[].perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | | +| `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 language tag. | +| `names.rules[].perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | Political perspectives from which a named feature is viewed. | | `names.rules[].perspectives.mode` | [`PerspectiveMode`](../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | | `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | | `names.rules[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | | `names.rules[].side` | [`Side`](../core/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | | `class` *(Road)* | [`RoadClass`](types/road_class.md) | | -| `destinations[]` *(Road)* | [`Destinations`](types/destinations.md) (list, optional) | | +| `destinations[]` *(Road)* | [`Destinations`](types/destinations.md) (list, optional) | Describes objects that can be reached by following a transportation segment in the same way those objects are described on signposts or ground writing that a traveller following the segment would observe in the real world. This allows navigation systems to refer to signs and observable writing that a traveller actually sees. | | `destinations[].from_connector_id` | [`Id`](../system/ref/id.md) | Identifies the point of physical connection on this segment before which the destination sign or marking is visible. | | `destinations[].to_connector_id` | [`Id`](../system/ref/id.md) | Identifies the point of physical connection on the segment identified by 'to_segment_id' to transition to for reaching the destination(s). | | `destinations[].to_segment_id` | [`Id`](../system/ref/id.md) | Identifies the segment to transition to reach the destination(s) labeled on the sign or marking. | @@ -73,7 +73,7 @@ sidebar_position: 1 | `destinations[].symbols` | `list<`[`DestinationSignSymbol`](types/destination_sign_symbol.md)`>` (optional) | A collection of symbols or icons present on the sign next to current destination label. | | `destinations[].when` | [`DestinationRule.When`](types/destination_rule.when.md) (optional) | Scope for DestinationRule: | | `destinations[].when.heading` | [`Heading`](../core/scoping/heading.md) | The heading, either forward or backward, that the containing DestinationRule applies to. | -| `prohibited_transitions[]` *(Road)* | [`ProhibitedTransitions`](types/prohibited_transitions.md) (list, optional) | | +| `prohibited_transitions[]` *(Road)* | [`ProhibitedTransitions`](types/prohibited_transitions.md) (list, optional) | Rules preventing transitions from this segment to another segment. | | `prohibited_transitions[].sequence[]` | `list<`[`SequenceEntry`](types/sequence_entry.md)`>` | Ordered sequence of connector/segment pairs that it is prohibited to follow from this segment. | | `prohibited_transitions[].sequence[].connector_id` | [`Id`](../system/ref/id.md) | Identifies the point of physical connection between the previous segment in the sequence and the segment in this sequence entry. | | `prohibited_transitions[].sequence[].segment_id` | [`Id`](../system/ref/id.md) | Identifies the segment that the previous segment in the sequence is physically connected to via the sequence entry's connector. | @@ -86,18 +86,18 @@ sidebar_position: 1 | `prohibited_transitions[].when.using` | `list<`[`PurposeOfUse`](../core/scoping/purpose_of_use.md)`>` (optional) | A list of one or more usage purposes, such as delivery or arrival at final destination, that the containing ProhibitedTransitionRule applies to. | | `prohibited_transitions[].when.recognized` | `list<`[`RecognizedStatus`](../core/scoping/recognized_status.md)`>` (optional) | A list of one or more recognized status values, such as employee or student, that the containing ProhibitedTransitionRule applies to. | | `prohibited_transitions[].when.vehicle` | `list` (optional) | A list of one or more vehicle parameters that limit the vehicles the containing ProhibitedTransitionRule applies to. | -| `road_flags[]` *(Road)* | [`RoadFlags`](types/road_flags.md) (list, optional) | | +| `road_flags[]` *(Road)* | [`RoadFlags`](types/road_flags.md) (list, optional) | Set of boolean attributes applicable to roads. May be specified either as a single flag array of flag values, or as an array of flag rules. | | `road_flags[].values` | `list<`[`RoadFlag`](types/road_flag.md)`>` | | | `road_flags[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing RoadFlagRule applies to. | -| `road_surface[]` *(Road)* | [`Surfaces`](types/surfaces.md) (list, optional) | | +| `road_surface[]` *(Road)* | [`Surfaces`](types/surfaces.md) (list, optional) | Physical surface of the road. May either be specified as a single global value for the segment, or as an array of surface rules. | | `road_surface[].value` | [`RoadSurface`](types/road_surface.md) | | | `road_surface[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SurfaceRule applies to. | -| `speed_limits[]` *(Road)* | [`SpeedLimits`](types/speed_limits.md) (list, optional) | | +| `speed_limits[]` *(Road)* | [`SpeedLimits`](types/speed_limits.md) (list, optional) | Rules governing speed on this road segment | | `speed_limits[].max_speed` | [`Speed`](types/speed.md) (optional) | | -| `speed_limits[].max_speed.value` | [`SpeedValue`](types/speed_value.md) | | +| `speed_limits[].max_speed.value` | [`SpeedValue`](types/speed_value.md) | Speed value | | `speed_limits[].max_speed.unit` | [`SpeedUnit`](../core/speed_unit.md) | | | `speed_limits[].min_speed` | [`Speed`](types/speed.md) (optional) | | -| `speed_limits[].min_speed.value` | [`SpeedValue`](types/speed_value.md) | | +| `speed_limits[].min_speed.value` | [`SpeedValue`](types/speed_value.md) | Speed value | | `speed_limits[].min_speed.unit` | [`SpeedUnit`](../core/speed_unit.md) | | | `speed_limits[].is_max_speed_variable` | `boolean` (optional) | Indicates a variable speed corridor | | `speed_limits[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SpeedLimitRule applies to. | @@ -109,10 +109,55 @@ sidebar_position: 1 | `speed_limits[].when.recognized` | `list<`[`RecognizedStatus`](../core/scoping/recognized_status.md)`>` (optional) | A list of one or more recognized status values, such as employee or student, that the containing SpeedLimitRule applies to. | | `speed_limits[].when.vehicle` | `list` (optional) | A list of one or more vehicle parameters that limit the vehicles the containing SpeedLimitRule applies to. | | `subclass` *(Road)* | [`Subclass`](types/subclass.md) (optional) | | -| `width_rules[]` *(Road)* | [`WidthRules`](types/width_rules.md) (list, optional) | | +| `width_rules[]` *(Road)* | [`WidthRules`](types/width_rules.md) (list, optional) | Edge-to-edge width of the road modeled by this segment, in meters.

Examples: (1) If this segment models a carriageway without sidewalk, this value represents the edge-to-edge width of the carriageway, inclusive of any shoulder. (2) If this segment models a sidewalk by itself, this value represents the edge-to-edge width of the sidewalk. (3) If this segment models a combined sidewalk and carriageway, this value represents the edge-to-edge width inclusive of sidewalk. | | `width_rules[].value` | [`Width`](types/width.md) | | | `width_rules[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing WidthRule applies to. | | `class` *(Rail)* | [`RailClass`](types/rail_class.md) | | -| `rail_flags[]` *(Rail)* | [`RailFlags`](types/rail_flags.md) (list, optional) | | +| `rail_flags[]` *(Rail)* | [`RailFlags`](types/rail_flags.md) (list, optional) | Set of boolean attributes applicable to railways. May be specified either as a single flag array of flag values, or as an array of flag rules. | | `rail_flags[].values` | `list<`[`RailFlag`](types/rail_flag.md)`>` | | | `rail_flags[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing RailFlagRule applies to. | + +## Examples + +| Column | Value | +| -------: | ------- | +| `id` | `1bc62f3b-08b5-42b8-89fe-36f685f60455` | +| `geometry` | `LINESTRING (-176.5636191 -43.954404, -176.5643637 -43.9538145, -176.5647264 -43.9535274, -176.564994...` | +| `theme` | `transportation` | +| `type` | `segment` | +| `version` | `1` | +| `sources[0].property` | | +| `sources[0].dataset` | `OpenStreetMap` | +| `sources[0].record_id` | `w53435546@6` | +| `sources[0].update_time` | `2021-05-03T06:37:03Z` | +| `sources[0].confidence` | `null` | +| `sources[0].between` | `null` | +| `subtype` | `road` | +| `access_restrictions` | `null` | +| `connectors[0].connector_id` | `15b2c131-9137-4add-88c6-2acd3fa61355` | +| `connectors[0].at` | `0.0` | +| `connectors[1].connector_id` | `23ae2702-ef77-4d2e-b39d-77360b696d20` | +| `connectors[1].at` | `0.523536154` | +| `connectors[2].connector_id` | `8e944ce1-4b81-49eb-a823-7d98779c855c` | +| `connectors[2].at` | `1.0` | +| `level_rules` | `null` | +| `routes` | `null` | +| `subclass_rules` | `null` | +| `names.primary` | `Meteorological Lane` | +| `names.common` | `null` | +| `destinations` | `null` | +| `prohibited_transitions` | `null` | +| `road_flags` | `null` | +| `road_surface[0].value` | `gravel` | +| `road_surface[0].between` | `null` | +| `speed_limits` | `null` | +| `subclass` | `null` | +| `width_rules` | `null` | +| `class` | `residential` | +| `rail_flags` | `null` | +| `names.rules[0].variant` | `common` | +| `names.rules[0].language` | `null` | +| `names.rules[0].perspectives` | `null` | +| `names.rules[0].value` | `Meteorological Lane` | +| `names.rules[0].between` | `null` | +| `names.rules[0].side` | `null` | diff --git a/docs/schema/reference/transportation/types/access_restriction_rule.md b/docs/schema/reference/transportation/types/access_restriction_rule.md index 7144a6638..fc27c8d7b 100644 --- a/docs/schema/reference/transportation/types/access_restriction_rule.md +++ b/docs/schema/reference/transportation/types/access_restriction_rule.md @@ -3,7 +3,7 @@ ## Fields | Name | Type | Description | -|-----:|:----:|-------------| +| -----: | :----: | ------------- | | `access_type` | [`AccessType`](access_type.md) | | | `between` | [`LinearlyReferencedRange`](../../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing AccessRestrictionRule applies to. | | `when` | [`AccessRestrictionRule.When`](access_restriction_rule.when.md) (optional) | Scopes for AccessRestrictionRule: Scope.HEADING, Scope.TEMPORAL, Scope.TRAVEL MODE, Scope.PURPOSE OF USE, Scope.RECOGNIZED STATUS and Scope.VEHICLE | @@ -13,3 +13,8 @@ | `when.using` | `list<`[`PurposeOfUse`](../../core/scoping/purpose_of_use.md)`>` (optional) | A list of one or more usage purposes, such as delivery or arrival at final destination, that the containing AccessRestrictionRule applies to. | | `when.recognized` | `list<`[`RecognizedStatus`](../../core/scoping/recognized_status.md)`>` (optional) | A list of one or more recognized status values, such as employee or student, that the containing AccessRestrictionRule applies to. | | `when.vehicle` | `list` (optional) | A list of one or more vehicle parameters that limit the vehicles the containing AccessRestrictionRule applies to. | + +## Used By + +- [`Segment`](../segment.md) +- [`AccessRules`](access_rules.md) diff --git a/docs/schema/reference/transportation/types/access_restriction_rule.when.md b/docs/schema/reference/transportation/types/access_restriction_rule.when.md index 812717d67..7a5c21a1e 100644 --- a/docs/schema/reference/transportation/types/access_restriction_rule.when.md +++ b/docs/schema/reference/transportation/types/access_restriction_rule.when.md @@ -5,14 +5,18 @@ Scopes for AccessRestrictionRule: Scope.HEADING, Scope.TEMPORAL, Scope.TRAVEL MO ## Fields | Name | Type | Description | -|-----:|:----:|-------------| -| `heading` | [`Heading`](../../core/scoping/heading.md) (optional) | The heading, either forward or backward, that the containing AccessRestrictionRule applies to. | -| `during` | [`OpeningHours`](../../core/scoping/opening_hours.md) (optional) | The recurring time span, in the OpenStreetMap opening hours format, that the containing AccessRestrictionRule applies to. For the OSM opening hours specification, see https://wiki.openstreetmap.org/wiki/Key:opening_hours/specification. | -| `mode` | `list<`[`TravelMode`](../../core/scoping/travel_mode.md)`>` (optional) | A list of one or more travel modes, such as car, truck, or foot, that the containing AccessRestrictionRule applies to. | -| `using` | `list<`[`PurposeOfUse`](../../core/scoping/purpose_of_use.md)`>` (optional) | A list of one or more usage purposes, such as delivery or arrival at final destination, that the containing AccessRestrictionRule applies to. | -| `recognized` | `list<`[`RecognizedStatus`](../../core/scoping/recognized_status.md)`>` (optional) | A list of one or more recognized status values, such as employee or student, that the containing AccessRestrictionRule applies to. | -| `vehicle` | `list` (optional) | A list of one or more vehicle parameters that limit the vehicles the containing AccessRestrictionRule applies to. | +| -----: | :----: | ------------- | +| `heading` | [`Heading`](../../core/scoping/heading.md) (optional) | The heading, either forward or backward, that the containing AccessRestrictionRule applies to.
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | +| `during` | [`OpeningHours`](../../core/scoping/opening_hours.md) (optional) | The recurring time span, in the OpenStreetMap opening hours format, that the containing AccessRestrictionRule applies to. For the OSM opening hours specification, see https://wiki.openstreetmap.org/wiki/Key:opening_hours/specification.
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | +| `mode` | `list<`[`TravelMode`](../../core/scoping/travel_mode.md)`>` (optional) | A list of one or more travel modes, such as car, truck, or foot, that the containing AccessRestrictionRule applies to.
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | +| `using` | `list<`[`PurposeOfUse`](../../core/scoping/purpose_of_use.md)`>` (optional) | A list of one or more usage purposes, such as delivery or arrival at final destination, that the containing AccessRestrictionRule applies to.
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | +| `recognized` | `list<`[`RecognizedStatus`](../../core/scoping/recognized_status.md)`>` (optional) | A list of one or more recognized status values, such as employee or student, that the containing AccessRestrictionRule applies to.
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | +| `vehicle` | `list` (optional) | A list of one or more vehicle parameters that limit the vehicles the containing AccessRestrictionRule applies to.
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | ## Constraints - At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set + +## Used By + +- [`AccessRestrictionRule`](access_restriction_rule.md) diff --git a/docs/schema/reference/transportation/types/access_rules.md b/docs/schema/reference/transportation/types/access_rules.md index 140cdb77d..056e870ef 100644 --- a/docs/schema/reference/transportation/types/access_rules.md +++ b/docs/schema/reference/transportation/types/access_rules.md @@ -1,6 +1,14 @@ -# AccessRules (`list`) +# AccessRules + +Rules governing access to this road segment + +Underlying type: `list<`[`AccessRestrictionRule`](access_restriction_rule.md)`>` ## Constraints - `minimum length: 1` - Ensures all items in a collection are unique. (`UniqueItemsConstraint`) + +## Used By + +- [`Segment`](../segment.md) diff --git a/docs/schema/reference/transportation/types/access_type.md b/docs/schema/reference/transportation/types/access_type.md index bfde64889..e77c8ab8a 100644 --- a/docs/schema/reference/transportation/types/access_type.md +++ b/docs/schema/reference/transportation/types/access_type.md @@ -5,3 +5,7 @@ - `allowed` - `denied` - `designated` + +## Used By + +- [`AccessRestrictionRule`](access_restriction_rule.md) diff --git a/docs/schema/reference/transportation/types/connector_reference.md b/docs/schema/reference/transportation/types/connector_reference.md index 40d092094..259cc92fd 100644 --- a/docs/schema/reference/transportation/types/connector_reference.md +++ b/docs/schema/reference/transportation/types/connector_reference.md @@ -6,6 +6,10 @@ segment. ## Fields | Name | Type | Description | -|-----:|:----:|-------------| -| `connector_id` | [`Id`](../../system/ref/id.md) | | +| -----: | :----: | ------------- | +| `connector_id` | [`Id`](../../system/ref/id.md) | A unique identifier | | `at` | [`LinearlyReferencedPosition`](../../core/scoping/linearly_referenced_position.md) (optional) | The linearly-referenced position on the geometry, specified as a percentage displacement from the start of the geometry, that the containing ConnectorReference applies to. | + +## Used By + +- [`Segment`](../segment.md) diff --git a/docs/schema/reference/transportation/types/destination_label_type.md b/docs/schema/reference/transportation/types/destination_label_type.md index c87373948..cf2ccb11f 100644 --- a/docs/schema/reference/transportation/types/destination_label_type.md +++ b/docs/schema/reference/transportation/types/destination_label_type.md @@ -10,3 +10,7 @@ similar. - `route_ref` - `toward_route_ref` - `unknown` + +## Used By + +- [`DestinationLabels`](destination_labels.md) diff --git a/docs/schema/reference/transportation/types/destination_labels.md b/docs/schema/reference/transportation/types/destination_labels.md index cae29a0b5..ec65a4dfc 100644 --- a/docs/schema/reference/transportation/types/destination_labels.md +++ b/docs/schema/reference/transportation/types/destination_labels.md @@ -5,6 +5,10 @@ The type of object of the destination label. ## Fields | Name | Type | Description | -|-----:|:----:|-------------| +| -----: | :----: | ------------- | | `value` | [`StrippedString`](../../system/stripped_string.md) | Names the object that is reached | | `type` | [`DestinationLabelType`](destination_label_type.md) | | + +## Used By + +- [`DestinationRule`](destination_rule.md) diff --git a/docs/schema/reference/transportation/types/destination_rule.md b/docs/schema/reference/transportation/types/destination_rule.md index 16de8f78b..07eca36b3 100644 --- a/docs/schema/reference/transportation/types/destination_rule.md +++ b/docs/schema/reference/transportation/types/destination_rule.md @@ -3,18 +3,23 @@ ## Fields | Name | Type | Description | -|-----:|:----:|-------------| +| -----: | :----: | ------------- | | `from_connector_id` | [`Id`](../../system/ref/id.md) | Identifies the point of physical connection on this segment before which the destination sign or marking is visible. | | `to_connector_id` | [`Id`](../../system/ref/id.md) | Identifies the point of physical connection on the segment identified by 'to_segment_id' to transition to for reaching the destination(s). | | `to_segment_id` | [`Id`](../../system/ref/id.md) | Identifies the segment to transition to reach the destination(s) labeled on the sign or marking. | | `final_heading` | [`Heading`](../../core/scoping/heading.md) | Direction of travel on the segment identified by 'to_segment_id' that leads to the destination. | -| `labels[]` | `list<`[`DestinationLabels`](destination_labels.md)`>` (optional) | Labeled destinations that can be reached by following the segment. | +| `labels[]` | `list<`[`DestinationLabels`](destination_labels.md)`>` (optional) | Labeled destinations that can be reached by following the segment.
*At least one of `labels`, `symbols` must be set* | | `labels[].value` | [`StrippedString`](../../system/stripped_string.md) | Names the object that is reached | | `labels[].type` | [`DestinationLabelType`](destination_label_type.md) | | -| `symbols` | `list<`[`DestinationSignSymbol`](destination_sign_symbol.md)`>` (optional) | A collection of symbols or icons present on the sign next to current destination label. | +| `symbols` | `list<`[`DestinationSignSymbol`](destination_sign_symbol.md)`>` (optional) | A collection of symbols or icons present on the sign next to current destination label.
*At least one of `labels`, `symbols` must be set* | | `when` | [`DestinationRule.When`](destination_rule.when.md) (optional) | Scope for DestinationRule: | | `when.heading` | [`Heading`](../../core/scoping/heading.md) | The heading, either forward or backward, that the containing DestinationRule applies to. | ## Constraints - At least one of `labels`, `symbols` must be set + +## Used By + +- [`Segment`](../segment.md) +- [`Destinations`](destinations.md) diff --git a/docs/schema/reference/transportation/types/destination_rule.when.md b/docs/schema/reference/transportation/types/destination_rule.when.md index 3c2b487d8..9b0b063fa 100644 --- a/docs/schema/reference/transportation/types/destination_rule.when.md +++ b/docs/schema/reference/transportation/types/destination_rule.when.md @@ -5,5 +5,9 @@ Scope for DestinationRule: ## Fields | Name | Type | Description | -|-----:|:----:|-------------| +| -----: | :----: | ------------- | | `heading` | [`Heading`](../../core/scoping/heading.md) | The heading, either forward or backward, that the containing DestinationRule applies to. | + +## Used By + +- [`DestinationRule`](destination_rule.md) diff --git a/docs/schema/reference/transportation/types/destination_sign_symbol.md b/docs/schema/reference/transportation/types/destination_sign_symbol.md index c24b52d2f..ec81dbe19 100644 --- a/docs/schema/reference/transportation/types/destination_sign_symbol.md +++ b/docs/schema/reference/transportation/types/destination_sign_symbol.md @@ -25,3 +25,7 @@ similar. - `camp_site` - `interchange` - `restrooms` + +## Used By + +- [`DestinationRule`](destination_rule.md) diff --git a/docs/schema/reference/transportation/types/destinations.md b/docs/schema/reference/transportation/types/destinations.md index 9c6437ebf..d2c434eb6 100644 --- a/docs/schema/reference/transportation/types/destinations.md +++ b/docs/schema/reference/transportation/types/destinations.md @@ -1 +1,9 @@ -# Destinations (`list`) +# Destinations + +Describes objects that can be reached by following a transportation segment in the same way those objects are described on signposts or ground writing that a traveller following the segment would observe in the real world. This allows navigation systems to refer to signs and observable writing that a traveller actually sees. + +Underlying type: `list<`[`DestinationRule`](destination_rule.md)`>` + +## Used By + +- [`Segment`](../segment.md) diff --git a/docs/schema/reference/transportation/types/level_rule.md b/docs/schema/reference/transportation/types/level_rule.md index 0db57092b..52c92f556 100644 --- a/docs/schema/reference/transportation/types/level_rule.md +++ b/docs/schema/reference/transportation/types/level_rule.md @@ -6,6 +6,11 @@ on the road segment. ## Fields | Name | Type | Description | -|-----:|:----:|-------------| -| `value` | [`Level`](../../core/level.md) | | +| -----: | :----: | ------------- | +| `value` | [`Level`](../../core/level.md) | Z-order of the feature where 0 is visual level | | `between` | [`LinearlyReferencedRange`](../../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing LevelRule applies to. | + +## Used By + +- [`Segment`](../segment.md) +- [`LevelRules`](level_rules.md) diff --git a/docs/schema/reference/transportation/types/level_rules.md b/docs/schema/reference/transportation/types/level_rules.md index d6214f982..f95284be6 100644 --- a/docs/schema/reference/transportation/types/level_rules.md +++ b/docs/schema/reference/transportation/types/level_rules.md @@ -1 +1,9 @@ -# LevelRules (`list`) +# LevelRules + +Defines the Z-order, i.e. stacking order, of the road segment. + +Underlying type: `list<`[`LevelRule`](level_rule.md)`>` + +## Used By + +- [`Segment`](../segment.md) diff --git a/docs/schema/reference/transportation/types/prohibited_transition_rule.md b/docs/schema/reference/transportation/types/prohibited_transition_rule.md index 5a03e5a15..26377b0bd 100644 --- a/docs/schema/reference/transportation/types/prohibited_transition_rule.md +++ b/docs/schema/reference/transportation/types/prohibited_transition_rule.md @@ -3,7 +3,7 @@ ## Fields | Name | Type | Description | -|-----:|:----:|-------------| +| -----: | :----: | ------------- | | `sequence[]` | `list<`[`SequenceEntry`](sequence_entry.md)`>` | Ordered sequence of connector/segment pairs that it is prohibited to follow from this segment. | | `sequence[].connector_id` | [`Id`](../../system/ref/id.md) | Identifies the point of physical connection between the previous segment in the sequence and the segment in this sequence entry. | | `sequence[].segment_id` | [`Id`](../../system/ref/id.md) | Identifies the segment that the previous segment in the sequence is physically connected to via the sequence entry's connector. | @@ -16,3 +16,8 @@ | `when.using` | `list<`[`PurposeOfUse`](../../core/scoping/purpose_of_use.md)`>` (optional) | A list of one or more usage purposes, such as delivery or arrival at final destination, that the containing ProhibitedTransitionRule applies to. | | `when.recognized` | `list<`[`RecognizedStatus`](../../core/scoping/recognized_status.md)`>` (optional) | A list of one or more recognized status values, such as employee or student, that the containing ProhibitedTransitionRule applies to. | | `when.vehicle` | `list` (optional) | A list of one or more vehicle parameters that limit the vehicles the containing ProhibitedTransitionRule applies to. | + +## Used By + +- [`Segment`](../segment.md) +- [`ProhibitedTransitions`](prohibited_transitions.md) diff --git a/docs/schema/reference/transportation/types/prohibited_transition_rule.when.md b/docs/schema/reference/transportation/types/prohibited_transition_rule.when.md index c470c12f6..1ecd80cdf 100644 --- a/docs/schema/reference/transportation/types/prohibited_transition_rule.when.md +++ b/docs/schema/reference/transportation/types/prohibited_transition_rule.when.md @@ -5,14 +5,18 @@ Scopes for ProhibitedTransitionRule: Scope.HEADING, Scope.TEMPORAL, Scope.TRAVEL ## Fields | Name | Type | Description | -|-----:|:----:|-------------| -| `heading` | [`Heading`](../../core/scoping/heading.md) (optional) | The heading, either forward or backward, that the containing ProhibitedTransitionRule applies to. | -| `during` | [`OpeningHours`](../../core/scoping/opening_hours.md) (optional) | The recurring time span, in the OpenStreetMap opening hours format, that the containing ProhibitedTransitionRule applies to. For the OSM opening hours specification, see https://wiki.openstreetmap.org/wiki/Key:opening_hours/specification. | -| `mode` | `list<`[`TravelMode`](../../core/scoping/travel_mode.md)`>` (optional) | A list of one or more travel modes, such as car, truck, or foot, that the containing ProhibitedTransitionRule applies to. | -| `using` | `list<`[`PurposeOfUse`](../../core/scoping/purpose_of_use.md)`>` (optional) | A list of one or more usage purposes, such as delivery or arrival at final destination, that the containing ProhibitedTransitionRule applies to. | -| `recognized` | `list<`[`RecognizedStatus`](../../core/scoping/recognized_status.md)`>` (optional) | A list of one or more recognized status values, such as employee or student, that the containing ProhibitedTransitionRule applies to. | -| `vehicle` | `list` (optional) | A list of one or more vehicle parameters that limit the vehicles the containing ProhibitedTransitionRule applies to. | +| -----: | :----: | ------------- | +| `heading` | [`Heading`](../../core/scoping/heading.md) (optional) | The heading, either forward or backward, that the containing ProhibitedTransitionRule applies to.
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | +| `during` | [`OpeningHours`](../../core/scoping/opening_hours.md) (optional) | The recurring time span, in the OpenStreetMap opening hours format, that the containing ProhibitedTransitionRule applies to. For the OSM opening hours specification, see https://wiki.openstreetmap.org/wiki/Key:opening_hours/specification.
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | +| `mode` | `list<`[`TravelMode`](../../core/scoping/travel_mode.md)`>` (optional) | A list of one or more travel modes, such as car, truck, or foot, that the containing ProhibitedTransitionRule applies to.
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | +| `using` | `list<`[`PurposeOfUse`](../../core/scoping/purpose_of_use.md)`>` (optional) | A list of one or more usage purposes, such as delivery or arrival at final destination, that the containing ProhibitedTransitionRule applies to.
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | +| `recognized` | `list<`[`RecognizedStatus`](../../core/scoping/recognized_status.md)`>` (optional) | A list of one or more recognized status values, such as employee or student, that the containing ProhibitedTransitionRule applies to.
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | +| `vehicle` | `list` (optional) | A list of one or more vehicle parameters that limit the vehicles the containing ProhibitedTransitionRule applies to.
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | ## Constraints - At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set + +## Used By + +- [`ProhibitedTransitionRule`](prohibited_transition_rule.md) diff --git a/docs/schema/reference/transportation/types/prohibited_transitions.md b/docs/schema/reference/transportation/types/prohibited_transitions.md index 9a9c5bfc1..2a4a5179e 100644 --- a/docs/schema/reference/transportation/types/prohibited_transitions.md +++ b/docs/schema/reference/transportation/types/prohibited_transitions.md @@ -1 +1,9 @@ -# ProhibitedTransitions (`list`) +# ProhibitedTransitions + +Rules preventing transitions from this segment to another segment. + +Underlying type: `list<`[`ProhibitedTransitionRule`](prohibited_transition_rule.md)`>` + +## Used By + +- [`Segment`](../segment.md) diff --git a/docs/schema/reference/transportation/types/rail_class.md b/docs/schema/reference/transportation/types/rail_class.md index fe284a6de..c43bb6a6a 100644 --- a/docs/schema/reference/transportation/types/rail_class.md +++ b/docs/schema/reference/transportation/types/rail_class.md @@ -12,3 +12,7 @@ Captures the kind of rail segment. - `subway` - `tram` - `unknown` + +## Used By + +- [`Segment`](../segment.md) diff --git a/docs/schema/reference/transportation/types/rail_flag.md b/docs/schema/reference/transportation/types/rail_flag.md index 031d04948..9316a8129 100644 --- a/docs/schema/reference/transportation/types/rail_flag.md +++ b/docs/schema/reference/transportation/types/rail_flag.md @@ -14,3 +14,7 @@ Specifies physical characteristics and can overlap. - `is_passenger` - `is_freight` - `is_disused` + +## Used By + +- [`RailFlagRule`](rail_flag_rule.md) diff --git a/docs/schema/reference/transportation/types/rail_flag_rule.md b/docs/schema/reference/transportation/types/rail_flag_rule.md index 0e480567c..e582a342d 100644 --- a/docs/schema/reference/transportation/types/rail_flag_rule.md +++ b/docs/schema/reference/transportation/types/rail_flag_rule.md @@ -5,6 +5,11 @@ Rail-specific flag rule with geometric scoping only. ## Fields | Name | Type | Description | -|-----:|:----:|-------------| +| -----: | :----: | ------------- | | `values` | `list<`[`RailFlag`](rail_flag.md)`>` | | | `between` | [`LinearlyReferencedRange`](../../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing RailFlagRule applies to. | + +## Used By + +- [`Segment`](../segment.md) +- [`RailFlags`](rail_flags.md) diff --git a/docs/schema/reference/transportation/types/rail_flags.md b/docs/schema/reference/transportation/types/rail_flags.md index 610b578f0..3760d311c 100644 --- a/docs/schema/reference/transportation/types/rail_flags.md +++ b/docs/schema/reference/transportation/types/rail_flags.md @@ -1,6 +1,14 @@ -# RailFlags (`list`) +# RailFlags + +Set of boolean attributes applicable to railways. May be specified either as a single flag array of flag values, or as an array of flag rules. + +Underlying type: `list<`[`RailFlagRule`](rail_flag_rule.md)`>` ## Constraints - `minimum length: 1` - Ensures all items in a collection are unique. (`UniqueItemsConstraint`) + +## Used By + +- [`Segment`](../segment.md) diff --git a/docs/schema/reference/transportation/types/road_class.md b/docs/schema/reference/transportation/types/road_class.md index c3e409f80..d18b7735a 100644 --- a/docs/schema/reference/transportation/types/road_class.md +++ b/docs/schema/reference/transportation/types/road_class.md @@ -21,3 +21,7 @@ Captures the kind of road and its position in the road network hierarchy. - `cycleway` - `bridleway` - `unknown` + +## Used By + +- [`Segment`](../segment.md) diff --git a/docs/schema/reference/transportation/types/road_flag.md b/docs/schema/reference/transportation/types/road_flag.md index 1f0a76f4a..a2448e725 100644 --- a/docs/schema/reference/transportation/types/road_flag.md +++ b/docs/schema/reference/transportation/types/road_flag.md @@ -13,3 +13,7 @@ Specifies physical characteristics and can overlap. - `is_abandoned` - `is_covered` - `is_indoor` + +## Used By + +- [`RoadFlagRule`](road_flag_rule.md) diff --git a/docs/schema/reference/transportation/types/road_flag_rule.md b/docs/schema/reference/transportation/types/road_flag_rule.md index c9d6eb9cc..126fa0c18 100644 --- a/docs/schema/reference/transportation/types/road_flag_rule.md +++ b/docs/schema/reference/transportation/types/road_flag_rule.md @@ -5,6 +5,11 @@ Road-specific flag rule with geometric scoping only. ## Fields | Name | Type | Description | -|-----:|:----:|-------------| +| -----: | :----: | ------------- | | `values` | `list<`[`RoadFlag`](road_flag.md)`>` | | | `between` | [`LinearlyReferencedRange`](../../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing RoadFlagRule applies to. | + +## Used By + +- [`Segment`](../segment.md) +- [`RoadFlags`](road_flags.md) diff --git a/docs/schema/reference/transportation/types/road_flags.md b/docs/schema/reference/transportation/types/road_flags.md index 6caaab8e8..03ecb0157 100644 --- a/docs/schema/reference/transportation/types/road_flags.md +++ b/docs/schema/reference/transportation/types/road_flags.md @@ -1,6 +1,14 @@ -# RoadFlags (`list`) +# RoadFlags + +Set of boolean attributes applicable to roads. May be specified either as a single flag array of flag values, or as an array of flag rules. + +Underlying type: `list<`[`RoadFlagRule`](road_flag_rule.md)`>` ## Constraints - `minimum length: 1` - Ensures all items in a collection are unique. (`UniqueItemsConstraint`) + +## Used By + +- [`Segment`](../segment.md) diff --git a/docs/schema/reference/transportation/types/road_surface.md b/docs/schema/reference/transportation/types/road_surface.md index 51fa5599d..6ac837769 100644 --- a/docs/schema/reference/transportation/types/road_surface.md +++ b/docs/schema/reference/transportation/types/road_surface.md @@ -11,3 +11,7 @@ Physical surface of the road. - `dirt` - `paving_stones` - `metal` + +## Used By + +- [`SurfaceRule`](surface_rule.md) diff --git a/docs/schema/reference/transportation/types/route_reference.md b/docs/schema/reference/transportation/types/route_reference.md index ac81ff1b0..e7878cb21 100644 --- a/docs/schema/reference/transportation/types/route_reference.md +++ b/docs/schema/reference/transportation/types/route_reference.md @@ -5,10 +5,15 @@ Route reference with linear referencing support. ## Fields | Name | Type | Description | -|-----:|:----:|-------------| +| -----: | :----: | ------------- | | `name` | [`StrippedString`](../../system/stripped_string.md) (optional) | Full name of the route | | `network` | [`StrippedString`](../../system/stripped_string.md) (optional) | Name of the highway system this route belongs to | | `ref` | [`StrippedString`](../../system/stripped_string.md) (optional) | Code or number used to reference the route | | `symbol` | [`StrippedString`](../../system/stripped_string.md) (optional) | URL or description of route signage | -| `wikidata` | [`WikidataId`](../../system/wikidata_id.md) (optional) | | +| `wikidata` | [`WikidataId`](../../system/wikidata_id.md) (optional) | A wikidata ID, as found on https://www.wikidata.org/ | | `between` | [`LinearlyReferencedRange`](../../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing RouteReference applies to. | + +## Used By + +- [`Segment`](../segment.md) +- [`Routes`](routes.md) diff --git a/docs/schema/reference/transportation/types/routes.md b/docs/schema/reference/transportation/types/routes.md index b456ef284..72143b256 100644 --- a/docs/schema/reference/transportation/types/routes.md +++ b/docs/schema/reference/transportation/types/routes.md @@ -1 +1,9 @@ -# Routes (`list`) +# Routes + +Routes this segment belongs to + +Underlying type: `list<`[`RouteReference`](route_reference.md)`>` + +## Used By + +- [`Segment`](../segment.md) diff --git a/docs/schema/reference/transportation/types/sequence_entry.md b/docs/schema/reference/transportation/types/sequence_entry.md index 6055d2f6d..859b96c5c 100644 --- a/docs/schema/reference/transportation/types/sequence_entry.md +++ b/docs/schema/reference/transportation/types/sequence_entry.md @@ -5,6 +5,10 @@ A segment/connector pair in a prohibited transition sequence. ## Fields | Name | Type | Description | -|-----:|:----:|-------------| +| -----: | :----: | ------------- | | `connector_id` | [`Id`](../../system/ref/id.md) | Identifies the point of physical connection between the previous segment in the sequence and the segment in this sequence entry. | | `segment_id` | [`Id`](../../system/ref/id.md) | Identifies the segment that the previous segment in the sequence is physically connected to via the sequence entry's connector. | + +## Used By + +- [`ProhibitedTransitionRule`](prohibited_transition_rule.md) diff --git a/docs/schema/reference/transportation/types/speed.md b/docs/schema/reference/transportation/types/speed.md index 6703e2268..26ffb1c2e 100644 --- a/docs/schema/reference/transportation/types/speed.md +++ b/docs/schema/reference/transportation/types/speed.md @@ -5,6 +5,10 @@ A speed value, i.e. a certain number of distance units travelled per unit time. ## Fields | Name | Type | Description | -|-----:|:----:|-------------| -| `value` | [`SpeedValue`](speed_value.md) | | +| -----: | :----: | ------------- | +| `value` | [`SpeedValue`](speed_value.md) | Speed value | | `unit` | [`SpeedUnit`](../../core/speed_unit.md) | | + +## Used By + +- [`SpeedLimitRule`](speed_limit_rule.md) diff --git a/docs/schema/reference/transportation/types/speed_limit_rule.md b/docs/schema/reference/transportation/types/speed_limit_rule.md index cd492fb7e..7072694ea 100644 --- a/docs/schema/reference/transportation/types/speed_limit_rule.md +++ b/docs/schema/reference/transportation/types/speed_limit_rule.md @@ -5,12 +5,12 @@ An individual speed limit rule. ## Fields | Name | Type | Description | -|-----:|:----:|-------------| -| `max_speed` | [`Speed`](speed.md) (optional) | | -| `max_speed.value` | [`SpeedValue`](speed_value.md) | | +| -----: | :----: | ------------- | +| `max_speed` | [`Speed`](speed.md) (optional) | *At least one of `max_speed`, `min_speed` must be set* | +| `max_speed.value` | [`SpeedValue`](speed_value.md) | Speed value | | `max_speed.unit` | [`SpeedUnit`](../../core/speed_unit.md) | | -| `min_speed` | [`Speed`](speed.md) (optional) | | -| `min_speed.value` | [`SpeedValue`](speed_value.md) | | +| `min_speed` | [`Speed`](speed.md) (optional) | *At least one of `max_speed`, `min_speed` must be set* | +| `min_speed.value` | [`SpeedValue`](speed_value.md) | Speed value | | `min_speed.unit` | [`SpeedUnit`](../../core/speed_unit.md) | | | `is_max_speed_variable` | `boolean` (optional) | Indicates a variable speed corridor | | `between` | [`LinearlyReferencedRange`](../../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SpeedLimitRule applies to. | @@ -25,3 +25,8 @@ An individual speed limit rule. ## Constraints - At least one of `max_speed`, `min_speed` must be set + +## Used By + +- [`Segment`](../segment.md) +- [`SpeedLimits`](speed_limits.md) diff --git a/docs/schema/reference/transportation/types/speed_limit_rule.when.md b/docs/schema/reference/transportation/types/speed_limit_rule.when.md index 335f6df3f..33328ad6b 100644 --- a/docs/schema/reference/transportation/types/speed_limit_rule.when.md +++ b/docs/schema/reference/transportation/types/speed_limit_rule.when.md @@ -5,14 +5,18 @@ Scopes for SpeedLimitRule: Scope.HEADING, Scope.TEMPORAL, Scope.TRAVEL MODE, Sco ## Fields | Name | Type | Description | -|-----:|:----:|-------------| -| `heading` | [`Heading`](../../core/scoping/heading.md) (optional) | The heading, either forward or backward, that the containing SpeedLimitRule applies to. | -| `during` | [`OpeningHours`](../../core/scoping/opening_hours.md) (optional) | The recurring time span, in the OpenStreetMap opening hours format, that the containing SpeedLimitRule applies to. For the OSM opening hours specification, see https://wiki.openstreetmap.org/wiki/Key:opening_hours/specification. | -| `mode` | `list<`[`TravelMode`](../../core/scoping/travel_mode.md)`>` (optional) | A list of one or more travel modes, such as car, truck, or foot, that the containing SpeedLimitRule applies to. | -| `using` | `list<`[`PurposeOfUse`](../../core/scoping/purpose_of_use.md)`>` (optional) | A list of one or more usage purposes, such as delivery or arrival at final destination, that the containing SpeedLimitRule applies to. | -| `recognized` | `list<`[`RecognizedStatus`](../../core/scoping/recognized_status.md)`>` (optional) | A list of one or more recognized status values, such as employee or student, that the containing SpeedLimitRule applies to. | -| `vehicle` | `list` (optional) | A list of one or more vehicle parameters that limit the vehicles the containing SpeedLimitRule applies to. | +| -----: | :----: | ------------- | +| `heading` | [`Heading`](../../core/scoping/heading.md) (optional) | The heading, either forward or backward, that the containing SpeedLimitRule applies to.
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | +| `during` | [`OpeningHours`](../../core/scoping/opening_hours.md) (optional) | The recurring time span, in the OpenStreetMap opening hours format, that the containing SpeedLimitRule applies to. For the OSM opening hours specification, see https://wiki.openstreetmap.org/wiki/Key:opening_hours/specification.
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | +| `mode` | `list<`[`TravelMode`](../../core/scoping/travel_mode.md)`>` (optional) | A list of one or more travel modes, such as car, truck, or foot, that the containing SpeedLimitRule applies to.
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | +| `using` | `list<`[`PurposeOfUse`](../../core/scoping/purpose_of_use.md)`>` (optional) | A list of one or more usage purposes, such as delivery or arrival at final destination, that the containing SpeedLimitRule applies to.
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | +| `recognized` | `list<`[`RecognizedStatus`](../../core/scoping/recognized_status.md)`>` (optional) | A list of one or more recognized status values, such as employee or student, that the containing SpeedLimitRule applies to.
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | +| `vehicle` | `list` (optional) | A list of one or more vehicle parameters that limit the vehicles the containing SpeedLimitRule applies to.
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | ## Constraints - At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set + +## Used By + +- [`SpeedLimitRule`](speed_limit_rule.md) diff --git a/docs/schema/reference/transportation/types/speed_limits.md b/docs/schema/reference/transportation/types/speed_limits.md index 2c6bcedf1..ee56f981c 100644 --- a/docs/schema/reference/transportation/types/speed_limits.md +++ b/docs/schema/reference/transportation/types/speed_limits.md @@ -1,6 +1,14 @@ -# SpeedLimits (`list`) +# SpeedLimits + +Rules governing speed on this road segment + +Underlying type: `list<`[`SpeedLimitRule`](speed_limit_rule.md)`>` ## Constraints - `minimum length: 1` - Ensures all items in a collection are unique. (`UniqueItemsConstraint`) + +## Used By + +- [`Segment`](../segment.md) diff --git a/docs/schema/reference/transportation/types/speed_value.md b/docs/schema/reference/transportation/types/speed_value.md index 60c2c3999..8b4983f6b 100644 --- a/docs/schema/reference/transportation/types/speed_value.md +++ b/docs/schema/reference/transportation/types/speed_value.md @@ -1,4 +1,8 @@ -# SpeedValue (`int32`) +# SpeedValue + +Speed value + +Underlying type: `int32` ## Constraints @@ -6,3 +10,7 @@ - `≤ 350` - `≥ -2147483648` (from [`int32`](../../system/primitive/primitives.md)) - `≤ 2147483647` (from [`int32`](../../system/primitive/primitives.md)) + +## Used By + +- [`Speed`](speed.md) diff --git a/docs/schema/reference/transportation/types/subclass.md b/docs/schema/reference/transportation/types/subclass.md index 4e9db9c32..f91d5d42e 100644 --- a/docs/schema/reference/transportation/types/subclass.md +++ b/docs/schema/reference/transportation/types/subclass.md @@ -11,3 +11,8 @@ Refines expected usage of the segment, must not overlap. - `driveway` - `alley` - `cycle_crossing` + +## Used By + +- [`Segment`](../segment.md) +- [`SubclassRule`](subclass_rule.md) diff --git a/docs/schema/reference/transportation/types/subclass_rule.md b/docs/schema/reference/transportation/types/subclass_rule.md index a373fabca..0a3787835 100644 --- a/docs/schema/reference/transportation/types/subclass_rule.md +++ b/docs/schema/reference/transportation/types/subclass_rule.md @@ -5,6 +5,11 @@ Set of subclasses scoped along segment. ## Fields | Name | Type | Description | -|-----:|:----:|-------------| +| -----: | :----: | ------------- | | `value` | [`Subclass`](subclass.md) | | | `between` | [`LinearlyReferencedRange`](../../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SubclassRule applies to. | + +## Used By + +- [`Segment`](../segment.md) +- [`SubclassRules`](subclass_rules.md) diff --git a/docs/schema/reference/transportation/types/subclass_rules.md b/docs/schema/reference/transportation/types/subclass_rules.md index 538da5e0e..a8322e9e1 100644 --- a/docs/schema/reference/transportation/types/subclass_rules.md +++ b/docs/schema/reference/transportation/types/subclass_rules.md @@ -1 +1,9 @@ -# SubclassRules (`list`) +# SubclassRules + +Set of subclasses scoped along segment + +Underlying type: `list<`[`SubclassRule`](subclass_rule.md)`>` + +## Used By + +- [`Segment`](../segment.md) diff --git a/docs/schema/reference/transportation/types/subtype.md b/docs/schema/reference/transportation/types/subtype.md index 414bc3f02..e24c2f7e4 100644 --- a/docs/schema/reference/transportation/types/subtype.md +++ b/docs/schema/reference/transportation/types/subtype.md @@ -7,3 +7,7 @@ Transportation segment subtype classification. - `road` - `rail` - `water` + +## Used By + +- [`Segment`](../segment.md) diff --git a/docs/schema/reference/transportation/types/surface_rule.md b/docs/schema/reference/transportation/types/surface_rule.md index a94f8eb37..e750bdabd 100644 --- a/docs/schema/reference/transportation/types/surface_rule.md +++ b/docs/schema/reference/transportation/types/surface_rule.md @@ -3,6 +3,11 @@ ## Fields | Name | Type | Description | -|-----:|:----:|-------------| +| -----: | :----: | ------------- | | `value` | [`RoadSurface`](road_surface.md) | | | `between` | [`LinearlyReferencedRange`](../../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SurfaceRule applies to. | + +## Used By + +- [`Segment`](../segment.md) +- [`Surfaces`](surfaces.md) diff --git a/docs/schema/reference/transportation/types/surfaces.md b/docs/schema/reference/transportation/types/surfaces.md index 3e7803169..f1294e726 100644 --- a/docs/schema/reference/transportation/types/surfaces.md +++ b/docs/schema/reference/transportation/types/surfaces.md @@ -1,6 +1,14 @@ -# Surfaces (`list`) +# Surfaces + +Physical surface of the road. May either be specified as a single global value for the segment, or as an array of surface rules. + +Underlying type: `list<`[`SurfaceRule`](surface_rule.md)`>` ## Constraints - `minimum length: 1` - Ensures all items in a collection are unique. (`UniqueItemsConstraint`) + +## Used By + +- [`Segment`](../segment.md) diff --git a/docs/schema/reference/transportation/types/width.md b/docs/schema/reference/transportation/types/width.md index 48ea298c8..c7e6d5ec4 100644 --- a/docs/schema/reference/transportation/types/width.md +++ b/docs/schema/reference/transportation/types/width.md @@ -1,5 +1,11 @@ -# Width (`float64`) +# Width + +Underlying type: `float64` ## Constraints - `> 0` + +## Used By + +- [`WidthRule`](width_rule.md) diff --git a/docs/schema/reference/transportation/types/width_rule.md b/docs/schema/reference/transportation/types/width_rule.md index 2f7a46b44..a794e8157 100644 --- a/docs/schema/reference/transportation/types/width_rule.md +++ b/docs/schema/reference/transportation/types/width_rule.md @@ -3,6 +3,11 @@ ## Fields | Name | Type | Description | -|-----:|:----:|-------------| +| -----: | :----: | ------------- | | `value` | [`Width`](width.md) | | | `between` | [`LinearlyReferencedRange`](../../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing WidthRule applies to. | + +## Used By + +- [`Segment`](../segment.md) +- [`WidthRules`](width_rules.md) diff --git a/docs/schema/reference/transportation/types/width_rules.md b/docs/schema/reference/transportation/types/width_rules.md index 678d3c1ce..92537325a 100644 --- a/docs/schema/reference/transportation/types/width_rules.md +++ b/docs/schema/reference/transportation/types/width_rules.md @@ -1,6 +1,16 @@ -# WidthRules (`list`) +# WidthRules + +Edge-to-edge width of the road modeled by this segment, in meters. + +Examples: (1) If this segment models a carriageway without sidewalk, this value represents the edge-to-edge width of the carriageway, inclusive of any shoulder. (2) If this segment models a sidewalk by itself, this value represents the edge-to-edge width of the sidewalk. (3) If this segment models a combined sidewalk and carriageway, this value represents the edge-to-edge width inclusive of sidewalk. + +Underlying type: `list<`[`WidthRule`](width_rule.md)`>` ## Constraints - `minimum length: 1` - Ensures all items in a collection are unique. (`UniqueItemsConstraint`) + +## Used By + +- [`Segment`](../segment.md) From 25ea593ec342ef2f8478fbec1e5868161c3cc049 Mon Sep 17 00:00:00 2001 From: Seth Fitzsimmons Date: Tue, 24 Feb 2026 12:44:20 -0800 Subject: [PATCH 09/12] Fix syntax error --- sidebars.js | 1 - 1 file changed, 1 deletion(-) diff --git a/sidebars.js b/sidebars.js index d678e232c..068e37735 100644 --- a/sidebars.js +++ b/sidebars.js @@ -51,7 +51,6 @@ const sidebars = { 'examples/wherobots', ], }, - { { type: 'category', label: 'Data Guides', From d7a616098bce631f602c44e3b1d45b81ced35598 Mon Sep 17 00:00:00 2001 From: Jennings Anderson Date: Tue, 24 Feb 2026 15:31:07 -0800 Subject: [PATCH 10/12] One sidebar for them all. --- docusaurus.config.js | 6 ------ sidebars.js | 5 +---- 2 files changed, 1 insertion(+), 10 deletions(-) diff --git a/docusaurus.config.js b/docusaurus.config.js index 482ea1dd9..0054259f2 100644 --- a/docusaurus.config.js +++ b/docusaurus.config.js @@ -143,12 +143,6 @@ const config = { position: 'left', label: 'Docs', }, - { - type: 'docSidebar', - sidebarId: 'schema', - position: 'left', - label: 'Schema Reference', - }, { to: 'blog', label: 'Blog', diff --git a/sidebars.js b/sidebars.js index 068e37735..4f99998a3 100644 --- a/sidebars.js +++ b/sidebars.js @@ -127,12 +127,9 @@ const sidebars = { }, 'attribution', 'release-calendar', - ], - schema: [ - 'schema/index', { type: 'category', - label: 'Reference', + label: 'Schema Reference', collapsed: true, items: [{ type: 'autogenerated', dirName: 'schema/reference' }], }, From 9a3d849e75f496680f171dc7b8c9be359cfbfa2c Mon Sep 17 00:00:00 2001 From: Jennings Anderson Date: Tue, 24 Feb 2026 16:11:24 -0800 Subject: [PATCH 11/12] Fixing links and build warnings --- .markdownlint.json | 14 +- blog/2024-04-21-welcome.mdx | 7 +- blog/2024-04-22-beta-release.mdx | 51 +- blog/2024-05-16-land-cover.mdx | 42 +- blog/2024-07-24-explore-site.mdx | 13 +- blog/2024-08-15-preview-august-release.mdx | 7 +- blog/2024-10-21-preview-october-release.mdx | 51 +- blog/2024-12-18-transportation-to-ga.mdx | 15 +- blog/2025-05-21-release-notes.mdx | 488 ++++++++++++-------- blog/2025-06-25-release-notes.mdx | 29 +- blog/2025-09-24-release-notes.mdx | 43 +- blog/2026-02-11-stac.mdx | 43 +- blog/authors.yml | 4 + docs/gers/bridge-files.mdx | 59 +-- docs/getting-data/duckdb.mdx | 2 +- docs/getting-data/index.mdx | 62 +-- docs/guides/transportation/overview.mdx | 4 +- docs/introduction.mdx | 25 +- docs/release-calendar.mdx | 104 +++-- docs/schema/index.md | 32 +- docusaurus.config.js | 8 +- package.json | 3 +- sidebars.js | 4 + 23 files changed, 613 insertions(+), 497 deletions(-) create mode 100644 blog/authors.yml diff --git a/.markdownlint.json b/.markdownlint.json index 00830b6f0..3e43da3a4 100644 --- a/.markdownlint.json +++ b/.markdownlint.json @@ -1,9 +1,17 @@ { "default": true, + "MD001": false, + "MD003": false, + "MD010": false, "MD013": false, - "MD033": false, - "MD041": false, "MD024": { "siblings_only": true - } + }, + "MD025": false, + "MD029": false, + "MD033": false, + "MD036": false, + "MD040": false, + "MD041": false, + "MD046": false } diff --git a/blog/2024-04-21-welcome.mdx b/blog/2024-04-21-welcome.mdx index 1ccfd41b2..5b99372f2 100644 --- a/blog/2024-04-21-welcome.mdx +++ b/blog/2024-04-21-welcome.mdx @@ -1,16 +1,15 @@ --- title: Welcome to the Overture Maps engineering blog! -authors: - name: Dana Bauer - title: Technical Product Manager, Overture Maps - email: dana@overturemaps.org +authors: dana --- Welcome to the Overture Maps engineering blog! We're excited to tell the technical stories behind this big, exciting, ambitious, intensely collaborative project we’ve been [working on for more than a year](https://overturemaps.org/looking-forward-to-2024/). The engineers building Overture Maps are eager to connect with our developer community. In the posts we publish in the coming months, you’ll hear from team members who work at Amazon, Meta, Microsoft, TomTom, Esri, Development Seed, Precisely, and more. + + And we’d like to hear from you: [feedback and contributions](https://github.com/OvertureMaps/data/discussions) from folks working with our data and schema are crucial to our success. Thanks for joining us on this journey. We’re glad you’re here. diff --git a/blog/2024-04-22-beta-release.mdx b/blog/2024-04-22-beta-release.mdx index 61660763d..24389418a 100644 --- a/blog/2024-04-22-beta-release.mdx +++ b/blog/2024-04-22-beta-release.mdx @@ -1,69 +1,75 @@ --- title: Exploring our beta release description: Highlights from Overture Maps beta release -authors: - name: Dana Bauer - title: Technical Product Manager, Overture Maps - email: dana@overturemaps.org +authors: dana tags: - tools - geoparquet --- + import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; -Last week Overture Maps [announced the beta release](https://overturemaps.org/overture-maps-foundation-releases-beta-of-its-first-open-map-dataset/) of our schema and data. After months of hard work and steady improvements, we are nearing production-level stability. In a series of posts over the next few weeks -- starting with this one -- we’ll unpack the highlights and improvements you'll see in this release and beyond. +Last week Overture Maps [announced the beta release](https://overturemaps.org/overture-maps-foundation-releases-beta-of-its-first-open-map-dataset/) of our schema and data. After months of hard work and steady improvements, we are nearing production-level stability. In a series of posts over the next few weeks -- starting with this one -- we’ll unpack the highlights and improvements you'll see in this release and beyond. ## Making geospatial fast + The first thing you'll notice is how much faster you can [pull Overture Maps data out of the cloud](https://docs.overturemaps.org/getting-data/locally/). We made this possible by working closely with open-source collaborators on the repartitioning and [spatial optimization](https://cloudnativegeo.org/blog/2024/03/coming-soon-geoparquet-1.1/) of our GeoParquet files. Meanwhile, our friends at DuckDB, one of our favorite SQL tools, [added a feature](https://github.com/duckdb/duckdb/pull/10314) that improves the performance of queries with bounding boxes.
-Query speeds have improved significantly from our February release to the April beta release. This example compares DuckDB queries for buildings in Philadelphia. [See here for more information about our performance testing](https://github.com/opengeospatial/geoparquet/discussions/188#discussioncomment-8909348). + + Query speeds have improved significantly from our February release to the April beta release. This + example compares DuckDB queries for buildings in Philadelphia. [See here for more information + about our performance + testing](https://github.com/opengeospatial/geoparquet/discussions/188#discussioncomment-8909348). + ``` - SELECT + SELECT * - FROM + FROM read_parquet('s3://overturemaps-us-west-2/release/2024-02-15-alpha.0/theme=buildings/type=building/*', filename=true, hive_partitioning=1) - WHERE + WHERE bbox.minx > -75.60154 AND bbox.maxx < -74.955763 AND bbox.miny > 39.867004 AND bbox.maxy < 40.137992; ``` - 820,915 buildings + 820,915 buildings ~120s - + ``` - SELECT + SELECT * - FROM + FROM read_parquet('s3://overturemaps-us-west-2/release/2024-04-16-beta.0/theme=buildings/type=building/*', filename=true, hive_partitioning=1) - WHERE + WHERE bbox.xmin > -75.60154 AND bbox.xmax < -74.955763 AND bbox.ymin > 39.867004 AND bbox.ymax < 40.137992 ``` - 852,487 buildings + 852,487 buildings ~25s +
-We're continuing to make things faster and easier for users. Along with the folks at Development Seed, an [Overture Maps Foundation member](https://overturemaps.org/about/members/), we're [building special tools for Overture Maps data on top of lonboard](https://developmentseed.org/lonboard/latest/examples/overture-maps/), their Python library for visualizing large geospatial datasets in Jupyter. And recently our friends at Wherobots [took a comprehensive look](https://wherobots.com/overture-maps-data-cloud-native-geoparquet-apache-sedona/) at how our use of GeoParquet makes querying and analyzing our data with Apache Sedona very efficient. +We're continuing to make things faster and easier for users. Along with the folks at Development Seed, an [Overture Maps Foundation member](https://overturemaps.org/about/members/), we're [building special tools for Overture Maps data on top of lonboard](https://developmentseed.org/lonboard/latest/examples/overture-maps/), their Python library for visualizing large geospatial datasets in Jupyter. And recently our friends at Wherobots [took a comprehensive look](https://wherobots.com/overture-maps-data-cloud-native-geoparquet-apache-sedona/) at how our use of GeoParquet makes querying and analyzing our data with Apache Sedona very efficient. As you can see, we're moving forward with the community to iterate on data, software, and specifications with the shared goal of making geospatial **_fast_**. ## Easier-to-use schema + Another highlight of the beta release is the transition to an easier-to-use schema for our administrative boundary data. We first [explored this idea](https://github.com/OvertureMaps/schema/discussions/117) with the Overture Maps community in February, and after two short months of work, the [new divisions schema and data](https://docs.overturemaps.org/guides/divisions/) are ready to go. Here's a query to `divisions` that grabs geometries for all the countries in the world: ``` @@ -71,9 +77,8 @@ SELECT * FROM read_parquet('s3://overturemaps-us-west-2/release/2024-04-16-beta.0/theme=divisions/type=division_area/*', filename=true, hive_partitioning=1) WHERE subtype = 'country'; ``` - - You can see that the `divisions` query above is much simpler than a comparable query to `admins`: +You can see that the `divisions` query above is much simpler than a comparable query to `admins`: ``` WITH admins AS ( @@ -87,14 +92,14 @@ WITH admins AS ( ON country_area.locality_id = country_locality.id WHERE country_locality.locality_type = 'country'; -``` +``` -We plan to [deprecate admins](https://docs.overturemaps.org/release-notes/) by the July release. In the meantime, both `admins` and `divisions` will be available to users. +We plan to [deprecate admins](https://docs.overturemaps.org/release-notes/) by the July release. In the meantime, both `admins` and `divisions` will be available to users. ## Bridges, islands, waterfalls, and more! + We added more rich detail to our `base` layer in this release, including an `infrastructure` type with familiar features from [Facebook’s Daylight map distribution](https://daylightmap.org/). We also added new subtypes and classes for the `land`, `land_use`, and `water` feature types. You'll find a comprehensive listing of the subtypes and classes for each feature type in our [schema reference docs](https://docs.overturemaps.org/schema/reference/base/infrastructure). Ready to make your own map? We have a [tutorial to help you get started](https://docs.overturemaps.org/examples/build-a-map/#13/47.6/-122.33/0/45). - -## Stay tuned for more highlights -We'll be back soon with more posts that explore our path from the beta release to production. In the meantime, we invite you to [get started with our data](https://docs.overturemaps.org/getting-data/) and share with us your [comments and feedback](https://github.com/OvertureMaps/data/discussions). +## Stay tuned for more highlights +We'll be back soon with more posts that explore our path from the beta release to production. In the meantime, we invite you to [get started with our data](https://docs.overturemaps.org/getting-data/) and share with us your [comments and feedback](https://github.com/OvertureMaps/data/discussions). diff --git a/blog/2024-05-16-land-cover.mdx b/blog/2024-05-16-land-cover.mdx index b33866916..61b38d48a 100644 --- a/blog/2024-05-16-land-cover.mdx +++ b/blog/2024-05-16-land-cover.mdx @@ -1,9 +1,6 @@ --- title: Land cover is live -authors: - name: Dana Bauer - title: Technical Product Manager, Overture Maps - email: dana@overturemaps.org +authors: dana tags: - base --- @@ -16,7 +13,7 @@ import useBaseUrl from '@docusaurus/useBaseUrl'; ## Mapmakers rejoice! -The [May release](https://docs.overturemaps.org/release/latest) of Overture Maps includes new high-resolution land cover data *and* new cartographic schema properties. +The [May release](https://docs.overturemaps.org/release/latest) of Overture Maps includes new high-resolution land cover data _and_ new cartographic schema properties. @@ -26,20 +23,19 @@ Our May release also includes [schema properties](https://docs.overturemaps.org/ ## Exploring land cover -In the notebook example below, we'll show you how to extract, process, and visualize land cover data for an area of interest using [lonboard](https://developmentseed.org/lonboard/latest/) and the [Overture Maps Python command-line tool](https://github.com/OvertureMaps/overturemaps-py). We recommend that you consult [this example](https://developmentseed.org/lonboard/latest/examples/overture-maps/ ) in the lonboard docs to better understand the methods used here. You can view and download the complete notebook on [Notebook Sharing Space](https://notebooksharing.space/view/b63f6b3dda1da99c45caf53284fbc508aaae0a43480b43bb0316db636c5e6677). - +In the notebook example below, we'll show you how to extract, process, and visualize land cover data for an area of interest using [lonboard](https://developmentseed.org/lonboard/latest/) and the [Overture Maps Python command-line tool](https://github.com/OvertureMaps/overturemaps-py). We recommend that you consult [this example](https://developmentseed.org/lonboard/latest/examples/overture-maps/) in the lonboard docs to better understand the methods used here. You can view and download the complete notebook on [Notebook Sharing Space](https://notebooksharing.space/view/b63f6b3dda1da99c45caf53284fbc508aaae0a43480b43bb0316db636c5e6677). ![land cover](/img/blog/notebook-overture-lc.png) - To follow along, you'll need to have [JupyterLab or Jupyter Notebook](https://jupyter.org/) running and the following dependencies installed: - - [lonboard](https://developmentseed.org/lonboard/latest/#install) - - [overturemaps-py](https://github.com/OvertureMaps/overturemaps-py) - - [pandas](https://pandas.pydata.org/) - - [GeoPandas](https://geopandas.org/en/stable/index.html) - - [Shapely](https://shapely.readthedocs.io/en/stable/index.html) +To follow along, you'll need to have [JupyterLab or Jupyter Notebook](https://jupyter.org/) running and the following dependencies installed: +- [lonboard](https://developmentseed.org/lonboard/latest/#install) +- [overturemaps-py](https://github.com/OvertureMaps/overturemaps-py) +- [pandas](https://pandas.pydata.org/) +- [GeoPandas](https://geopandas.org/en/stable/index.html) +- [Shapely](https://shapely.readthedocs.io/en/stable/index.html) -``` python +```python import pandas as pd import geopandas as gpd import overturemaps @@ -48,28 +44,28 @@ from lonboard import Map, PolygonLayer from lonboard.colormap import apply_categorical_cmap ``` -``` python +```python # specify bounding box bbox = -78.6429, 39.463, -73.7806, 41.6242 ``` -``` python +```python # read in Overture Maps land_cover data type table = overturemaps.record_batch_reader("land_cover", bbox).read_all() table = table.combine_chunks() ``` -``` python +```python # convert to dataframe df = table.to_pandas() ``` -``` python +```python # filter for higher resolution land_cover features df_h = df[df.cartography.apply(lambda x: x['min_zoom'] == 8)] ``` -``` python +```python # create color map for land_cover subtypes, loosely based on natural-color palette: https://www.shadedrelief.com/shelton/c.html color_map = { "urban": [167, 162, 186], @@ -85,12 +81,12 @@ color_map = { } ``` -``` python +```python # apply color map to land_cover subtypes colors = apply_categorical_cmap(df_h.subtype, color_map) ``` -``` python +```python # dataframe to geodataframe, set crs gdf = gpd.GeoDataFrame( df_h, @@ -99,7 +95,7 @@ gdf = gpd.GeoDataFrame( ) ``` -``` python +```python # create map layer layer = PolygonLayer.from_geopandas( gdf= gdf[['id','subtype', 'cartography', 'geometry']].reset_index(drop=True), @@ -108,7 +104,7 @@ layer = PolygonLayer.from_geopandas( ) ``` -``` python +```python #render map view_state = { "longitude": -76.2, diff --git a/blog/2024-07-24-explore-site.mdx b/blog/2024-07-24-explore-site.mdx index 1c3ac9ebe..a04d6e257 100644 --- a/blog/2024-07-24-explore-site.mdx +++ b/blog/2024-07-24-explore-site.mdx @@ -1,9 +1,6 @@ --- title: Exploring Overture data, no SQL required -authors: - name: Dana Bauer - title: Technical Product Manager, Overture Maps - email: dana@overturemaps.org +authors: dana tags: - tools --- @@ -17,7 +14,13 @@ Overture has launched a new browser-based tool to give users a no-code option to
- Checking out "Lion Crushing a Serpent" in Philadelphia's Rittenhouse Park + + Checking out{' '} + + "Lion Crushing a Serpent" + {' '} + in Philadelphia's Rittenhouse Park +
diff --git a/blog/2024-08-15-preview-august-release.mdx b/blog/2024-08-15-preview-august-release.mdx index 4f99e3f28..594c86435 100644 --- a/blog/2024-08-15-preview-august-release.mdx +++ b/blog/2024-08-15-preview-august-release.mdx @@ -1,9 +1,6 @@ --- -title: What to expect in Overture’s August release -authors: - name: Dana Bauer - title: Technical Product Manager, Overture Maps - email: dana@overturemaps.org +title: What to expect in Overture's August release +authors: dana tags: - addresses - base diff --git a/blog/2024-10-21-preview-october-release.mdx b/blog/2024-10-21-preview-october-release.mdx index 3ce29ddab..4be6355c5 100644 --- a/blog/2024-10-21-preview-october-release.mdx +++ b/blog/2024-10-21-preview-october-release.mdx @@ -1,52 +1,47 @@ --- -title: What to expect in Overture’s October release -authors: - name: Dana Bauer - title: Technical Product Manager, Overture Maps - email: dana@overturemaps.org +title: What to expect in Overture's October release +authors: dana tags: - addresses - buildings --- -This week Overture is [releasing](https://docs.overturemaps.org/release/latest/) datasets that include new -addresses across ten countries, new road features in Saudi Arabia and Italy from TomTom, +This week Overture is [releasing](https://docs.overturemaps.org/release/latest/) datasets that include new +addresses across ten countries, new road features in Saudi Arabia and Italy from TomTom, and new building height data from Microsoft and Esri Community Maps contributors. Here's a preview of what you'll find in our October release. - ## Addresses around the world | ![H3 cells addresses](/img/blog/address-coverage-h3-october.png) | -|:--:| -| *H3 coverage map of Overture addresses* | +| :--------------------------------------------------------------: | +| _H3 coverage map of Overture addresses_ | -In July, Overture [launched](https://docs.overturemaps.org/release/2024-07-22.0/#new-theme-addresses) our addresses theme -with 200 million features in 14 countries. Since then, -we’ve added data for ten additional countries, bringing the total feature count to over 344 million. +In July, Overture [launched](https://docs.overturemaps.org/release/2024-07-22.0/#new-theme-addresses) our addresses theme +with 200 million features in 14 countries. Since then, +we’ve added data for ten additional countries, bringing the total feature count to over 344 million. We’re building on great work by the open data community, including folks on the [OpenAddresses](https://openaddresses.io/) -and [AddressForAll](https://www.addressforall.org/en/) projects. - -And now we're excited to include another new source of open data for addresses in the U.S. Previously, Overture pulled all address data -in the United States from the [Department of Transportation’s National -Address Database (NAD)](https://www.transportation.gov/gis/national-address-database). -Over the September and October releases, we developed a cut-and-replace workflow to swap NAD data in New York City -with data from [NYC Open Data](https://opendata.cityofnewyork.us/). Local data FTW! This is a process -we will continue to refine so that we can more +and [AddressForAll](https://www.addressforall.org/en/) projects. + +And now we're excited to include another new source of open data for addresses in the U.S. Previously, Overture pulled all address data +in the United States from the [Department of Transportation’s National +Address Database (NAD)](https://www.transportation.gov/gis/national-address-database). +Over the September and October releases, we developed a cut-and-replace workflow to swap NAD data in New York City +with data from [NYC Open Data](https://opendata.cityofnewyork.us/). Local data FTW! This is a process +we will continue to refine so that we can more easily fold in new data across all [Overture themes](https://docs.overturemaps.org/guides/). ## Roads and building heights | ![TomTom roads](/img/blog/roads-tomtom-october.png) | -|:--:| -| *Roads from TomTom in Italy and Saudi Arabia* | +| :-------------------------------------------------: | +| _Roads from TomTom in Italy and Saudi Arabia_ | -Also in the October release, you’ll find new data from [TomTom](https://www.tomtom.com/), representing more than 30,000 kilometers of roads in Saudi Arabia -and Italy. We also added new building height data from both Microsoft and [Esri Community Maps contributors](https://communitymaps.arcgis.com/home/). -These updates highlight Overture’s goal to improve data quality and coverage by incorporating new data into each release, +Also in the October release, you’ll find new data from [TomTom](https://www.tomtom.com/), representing more than 30,000 kilometers of roads in Saudi Arabia +and Italy. We also added new building height data from both Microsoft and [Esri Community Maps contributors](https://communitymaps.arcgis.com/home/). +These updates highlight Overture’s goal to improve data quality and coverage by incorporating new data into each release, with a focus on [data sources](https://docs.overturemaps.org/attribution/) that have permissive open-source licenses. -Please [reach out to us on GitHub](https://github.com/OvertureMaps/data/discussions) with questions and feedback about our data. +Please [reach out to us on GitHub](https://github.com/OvertureMaps/data/discussions) with questions and feedback about our data. If you have a suggestion for a new dataset or if you have data you'd like to contribute, you can email us at **data AT overturemaps.org**. We’d love to hear from you. - diff --git a/blog/2024-12-18-transportation-to-ga.mdx b/blog/2024-12-18-transportation-to-ga.mdx index 9ee76f1a6..97399a4d3 100644 --- a/blog/2024-12-18-transportation-to-ga.mdx +++ b/blog/2024-12-18-transportation-to-ga.mdx @@ -1,9 +1,6 @@ --- title: Transportation theme navigates to GA -authors: - name: Dana Bauer - title: Technical Product Manager, Overture Maps - email: dana@overturemaps.org +authors: dana tags: - transportation - tools @@ -35,25 +32,25 @@ Here are some specific ways you can help: 1. Examine Overture transportation data in your areas of interest and compare it to local sources of data. Bonus: combine transportation data with Overture places, buildings, and base data to make a map. Here are some suggestions for downloading data using [Overture's Python CLI](https://docs.overturemaps.org/getting-data/overturemaps-py/). Philadelphia area + ``` overturemaps download --bbox=-75.8264,39.7032,-74.5213,40.444 -f geoparquet --type=segment -o overture-segments-philadelphia.geoparquet ``` Riyadh Province, Saudia Arabia + ``` overturemaps download --bbox=38.97,21.33,48.66,25.98 -f geoparquet --type=segment -o overture-segments-riyadh.geoparquet ``` Campobasso, Italy + ``` overturemaps download --bbox=13.8152,40.8473,15.6336,42.0773 -f geoparquet --type=segment -o overture-segments-campobasso.geoparquet ``` -2. Test our [transportation spitter tool](https://github.com/OvertureMaps/transportation-splitter) and help us improve it. PRs are welcome! +2. Test our [transportation spitter tool](https://github.com/OvertureMaps/transportation-splitter) and help us improve it. PRs are welcome! 3. Feed our data into a routing engine and let us know how it goes. Paul Ramsey from Crunchy Data shared [a vehicle routing example using PostGIS and Overture data](https://www.crunchydata.com/blog/vehicle-routing-with-postgis-and-overture-data). We'd like to see our users trying [Valhalla](https://valhalla.github.io/valhalla/) and [Graphhopper](https://github.com/graphhopper/graphhopper-maps) too. We are considering building a native Overture router and/or adding support to an existing open source router, such as Valhalla and Grasshopper, so that Overture consumers can easily use transportation data out of the box. -4. Reach out to us at community@overturemaps.org if you have a specific use case that you'd like to discuss with us. - - - +4. Reach out to us at community@overturemaps.org if you have a specific use case that you'd like to discuss with us. diff --git a/blog/2025-05-21-release-notes.mdx b/blog/2025-05-21-release-notes.mdx index cb49b61b9..35b1f3996 100644 --- a/blog/2025-05-21-release-notes.mdx +++ b/blog/2025-05-21-release-notes.mdx @@ -3,22 +3,25 @@ title: 2025-05-21 release notes tags: - releases --- + import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; import QueryBuilder from '@site/src/components/queryBuilder'; ## Overview -**The `2025-05-21.0` release of Overture data and `v1.9.0` of the Overture schema are now available.** This month we added [PinMeTo](/attribution/#places) as a new data provider for `places`, improved the taxonomy of the `categories` property, added new data sources for `addresses`, and fixed bugs. Also in this release, we're introducing bridge files and announcing a major change to how we generate GERS IDs starting with the June release. +**The `2025-05-21.0` release of Overture data and `v1.9.0` of the Overture schema are now available.** This month we added [PinMeTo](/attribution/#places) as a new data provider for `places`, improved the taxonomy of the `categories` property, added new data sources for `addresses`, and fixed bugs. Also in this release, we're introducing bridge files and announcing a major change to how we generate GERS IDs starting with the June release. The datasets are available as GeoParquet files stored on both AWS and Azure. The release paths are: #### Microsoft Azure: + ``` wasbs://release@overturemapswestus2.blob.core.windows.net/2025-05-21.0 ``` #### Amazon S3: + ``` s3://overturemaps-us-west-2/release/2025-05-21.0 ``` @@ -38,23 +41,23 @@ You can find the latest bridge files here, partitioned by dataset, theme, and ty ``` wasbs://bridgefiles@overturemapswestus2.blob.core.windows.net/2025-05-21.0 ``` + ``` s3://overturemaps-us-west-2/bridgefiles/2025-05-21.0 ``` ## GERS IDs will become UUIDs in June -In next month's release (late June), Overture is standardizing the [`id` property](/schema/#top-level-properties) across all themes by adopting [UUIDs](https://www.rfc-editor.org/rfc/rfc9562.html), stored as strings. +In next month's release (late June), Overture is standardizing the [`id` property](/schema/#top-level-properties) across all themes by adopting [UUIDs](https://www.rfc-editor.org/rfc/rfc9562.html), stored as strings. -Currently the structure of our IDs varies slightly across datasets, with some themes embedding metadata (e.g. [H3](https://h3geo.org/)) in the `id` property. The new UUIDs will be randomly-generated identifiers with no encoded information. Moving to UUIDs enables consistent ID generation and registration across our data pipelines, which is necessary for the successful implementation of [GERS](/gers). +Currently the structure of our IDs varies slightly across datasets, with some themes embedding metadata (e.g. [H3](https://h3geo.org/)) in the `id` property. The new UUIDs will be randomly-generated identifiers with no encoded information. Moving to UUIDs enables consistent ID generation and registration across our data pipelines, which is necessary for the successful implementation of [GERS](/gers). This is a **one-time** breaking change for our ID system. We plan to support our users by providing a file that maps the old IDs to the new UUIDs. - ## Theme-specific updates :::info -The base, buildings, divisions, places, and transportation themes are in GA. The addresses theme is in alpha. +The base, buildings, divisions, places, and transportation themes are in GA. The addresses theme is in alpha. ::: ### Addresses @@ -62,25 +65,37 @@ The base, buildings, divisions, places, and transportation themes are in GA. The - added new data sources for Waupaca County, WI and Sierra County, CA - added a new data source for Italy that will replace the existing regional/municipal datasets - - - - - - - - - - - - - - - - - - - +
addeddata_changedremovedunchanged
address446,766,6720429,683,7810
+ + + + + + + + + + + + + + + + + +
+ added + + data_changed + + removed + + unchanged +
+ + address + + 446,766,6720429,683,7810
### Base @@ -88,60 +103,92 @@ The base, buildings, divisions, places, and transportation themes are in GA. The - improved coverage of state park, forest, and taxiline `class` values - improved processing of `bathymetry` geometries - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
addeddata_changedremovedunchanged
bathymetry060,05703
infrastructure122,924,1520121,608,8050
land65,191,767064,726,0060
land_cover000123,302,114
land_use49,625,405049,366,0150
water57,802,549056,753,2690
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ added + + data_changed + + removed + + unchanged +
+ + bathymetry + + 060,05703
+ + infrastructure + + 122,924,1520121,608,8050
+ + land + + 65,191,767064,726,0060
+ + land_cover + + 000123,302,114
+ + land_use + + 49,625,405049,366,0150
+ + water + + 57,802,549056,753,2690
### Buildings @@ -149,73 +196,108 @@ The base, buildings, divisions, places, and transportation themes are in GA. The - fixed an issue with duplicate IDs on IGN Spain buildings - added `names` property to the `building_part` type - - - - - - - - - - - - - - - - - - - - - - - - - - +
addeddata_changedremovedunchanged
building16,659,00710,851,8878,205,1432,594,721,648
building_part86,7133,184,6228,94945,816
+ + + + + + + + + + + + + + + + + + + + + + + + +
+ added + + data_changed + + removed + + unchanged +
+ + building + + 16,659,00710,851,8878,205,1432,594,721,648
+ + building_part + + 86,7133,184,6228,94945,816
- ### Divisions -- generated the point geometries for the `division` type from OpenStreetMap nodes instead of using centroids calculated from of `division_area` polygons +- generated the point geometries for the `division` type from OpenStreetMap nodes instead of using centroids calculated from of `division_area` polygons - fixed a bug in `capital_of_divisions` ID assignments - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
addeddata_changedremovedunchanged
division40,068263,44016,2384,090,114
division_area19,58257,07711,716947,086
division_boundary4752,8954484,330
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ added + + data_changed + + removed + + unchanged +
+ + division + + 40,068263,44016,2384,090,114
+ + division_area + + 19,58257,07711,716947,086
+ + division_boundary + + 4752,8954484,330
### Places @@ -224,60 +306,87 @@ The base, buildings, divisions, places, and transportation themes are in GA. The - improved the taxonomy of the `categories` property by fixing inconsistencies in the hierarchy - made improvements to the data matching tools - - - - - - - - - - - - - - - - - - - +
addeddata_changedremovedunchanged
place6,490,35318,049,06610,853,00437,142,400
+ + + + + + + + + + + + + + + + + +
+ added + + data_changed + + removed + + unchanged +
+ + place + + 6,490,35318,049,06610,853,00437,142,400
### Transportation -- released the same data that was in the `2025-04-23.0` release; stats reflect changes from `2025-03-19.1` to `2025-04-23.0` - - - - - - - - - - - - - - - - - - - - - - - - - - - +- released the same data that was in the `2025-04-23.0` release; stats reflect changes from `2025-03-19.1` to `2025-04-23.0` + +
addeddata_changedremovedunchanged
segment01,592,2511319,936,718
connector000375,247,444
+ + + + + + + + + + + + + + + + + + + + + + + + +
+ added + + data_changed + + removed + + unchanged +
+ + segment + + 01,592,2511319,936,718
+ + connector + + 000375,247,444
- ## Data changelog The data changelog captures any changes in Overture features between this release and the previous release. The changelog is available as Parquet files — partitioned by theme, type, and change type — at the following locations on Azure and AWS: @@ -285,6 +394,7 @@ The data changelog captures any changes in Overture features between this releas ``` wasbs://changelog@overturemapswestus2.blob.core.windows.net/2025-05-21.0 ``` + ``` s3://overturemaps-us-west-2/changelog/2025-05-21.0 ``` @@ -293,8 +403,8 @@ You can find more information about [the data changelog in our documentation](ht ## Schema changelog -The changelog for Overture schema `v1.9.0` is [here](https://github.com/OvertureMaps/schema/releases/tag/v1.9.0). +The changelog for Overture schema `v1.9.0` is [here](https://github.com/OvertureMaps/schema/releases/tag/v1.9.0). -## Attribution +## Attribution You'll find information about attribution and licensing [here](/attribution). diff --git a/blog/2025-06-25-release-notes.mdx b/blog/2025-06-25-release-notes.mdx index 12e84ed22..a29f97808 100644 --- a/blog/2025-06-25-release-notes.mdx +++ b/blog/2025-06-25-release-notes.mdx @@ -3,6 +3,7 @@ title: 2025-06-25 release notes tags: - releases --- + import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; import QueryBuilder from '@site/src/components/queryBuilder'; @@ -16,27 +17,31 @@ The datasets and release artifacts are available as GeoParquet files stored on b ### Release data **Microsoft Azure:** + ``` az://overturemapswestus2.blob.core.windows.net/release/2025-06-25.0/ ``` **Amazon S3:** + ``` s3://overturemaps-us-west-2/release/2025-06-25.0/ ``` + ### Data changelog No changelog for the June release - ### Bridge files **Microsoft Azure:** + ``` az://overturemapswestus2.blob.core.windows.net/bridgefiles/2025-06-25.0/ ``` **Amazon S3:** + ``` s3://overturemaps-us-west-2/bridgefiles/2025-06-25.0/ ``` @@ -44,24 +49,24 @@ s3://overturemaps-us-west-2/bridgefiles/2025-06-25.0/ ### GERS Registry **Microsoft Azure:** + ``` az://overturemapswestus2.blob.core.windows.net/registry/ ``` **Amazon S3:** + ``` s3://overturemaps-us-west-2/registry/ ``` - - You can access the datasets by following the process outlined [here](/getting-data). We encourage you to ask questions and provide feedback on the Overture Maps [Discussion forum on GitHub](https://github.com/orgs/OvertureMaps/discussions). You can also file issues and report bugs in our [data](https://github.com/OvertureMaps/data/issues) and [schema](https://github.com/OvertureMaps/schema/issues) repositories. If you have a suggestion for a new dataset or if you have data you'd like to contribute to Overture, you can email us at data@overturemaps.org. We’d love to hear from you. ## What's new? Big changes to GERS. -In this release, Overture has standardized the [`id` property](/schema/#top-level-properties) across all themes by adopting [UUIDs](https://www.rfc-editor.org/rfc/rfc9562.html), stored as strings. This is a **one-time** breaking change for our ID system. For this release only, we are offering Parquet files, partioned by `theme` and `type` that map the old May IDs to the new June UUIDs. You can find that file here: `s3://overturemaps-extras-us-west-2/june_to_may_id_mapping/`. +In this release, Overture has standardized the [`id` property](/schema/#top-level-properties) across all themes by adopting [UUIDs](https://www.rfc-editor.org/rfc/rfc9562.html), stored as strings. This is a **one-time** breaking change for our ID system. For this release only, we are offering Parquet files, partioned by `theme` and `type` that map the old May IDs to the new June UUIDs. You can find that file here: `s3://overturemaps-extras-us-west-2/june_to_may_id_mapping/`. Overture is now producing [bridge files](https://docs.overturemaps.org/gers/bridge-files/) with each release. You can find the latest bridge files here, partitioned by `dataset`, `theme`, and `type`: @@ -102,14 +107,13 @@ The base, buildings, divisions, places, and transportation themes are in GA. The - added new Greenland data source: OpenAddresses/Asiaq, Greenland Survey - added new Singapore data source: OpenAddresses/Singapore Land Authority - added several new data sources in the United States - - Clarke County, GA: OpenAddresses/GA/Athens-Clarke County GIS - - State of Minnesota: OpenAddresses/MN/Department of Public Safety - - State of Colorado: OpenAddresses/CO/Governor's Office of Information Technology - - Lackawanna County, PA: OpenAddresses/PA/City of Scranton GIS + - Clarke County, GA: OpenAddresses/GA/Athens-Clarke County GIS + - State of Minnesota: OpenAddresses/MN/Department of Public Safety + - State of Colorado: OpenAddresses/CO/Governor's Office of Information Technology + - Lackawanna County, PA: OpenAddresses/PA/City of Scranton GIS - made improvements to existing Mexico and Australia address data - made improvements to existing US data and Australia address data - ### Base - increased number of features with `names` property populated with data @@ -117,8 +121,8 @@ The base, buildings, divisions, places, and transportation themes are in GA. The - addded all upstream source tages from OSM to the `source_tags` property ### Buildings - - added a new data provider: City of Vancouver, CA +- added a new data provider: City of Vancouver, CA ### Divisions @@ -139,7 +143,7 @@ The base, buildings, divisions, places, and transportation themes are in GA. The ## Data changelog :::note -Because of the switch to GERS UUIDs this month, we are not release a changelog. See below for paths to the May changelog, with relies on the "old" GERS IDs. For the June release only, we are offering Parquet files, partioned by `theme` and `type` that map the old May IDs to the new June UUIDs. You can find that file here: `s3://overturemaps-extras-us-west-2/june_to_may_id_mapping/`. +Because of the switch to GERS UUIDs this month, we are not release a changelog. See below for paths to the May changelog, with relies on the "old" GERS IDs. For the June release only, we are offering Parquet files, partioned by `theme` and `type` that map the old May IDs to the new June UUIDs. You can find that file here: `s3://overturemaps-extras-us-west-2/june_to_may_id_mapping/`. ::: @@ -149,7 +153,9 @@ The [data changelog](https://docs.overturemaps.org/gers/changelog/) captures any az://overturemapswestus2.blob.core.windows.net/changelog/2025-06-25.0/ ``` + s3://overturemaps-us-west-2/changelog/2025-06-25.0/ + ``` You can find more information about [the data changelog in our documentation](https://docs.overturemaps.org/gers/changelog/). @@ -161,3 +167,4 @@ The changelog for Overture schema `v1.10.0` is [here](https://github.com/Overtur ## Attribution You'll find information about attribution and licensing [here](/attribution). +``` diff --git a/blog/2025-09-24-release-notes.mdx b/blog/2025-09-24-release-notes.mdx index 1fc1c58bf..b1a809b12 100644 --- a/blog/2025-09-24-release-notes.mdx +++ b/blog/2025-09-24-release-notes.mdx @@ -3,6 +3,7 @@ title: 2025-09-24 release notes tags: - releases --- + import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; import QueryBuilder from '@site/src/components/queryBuilder'; @@ -11,43 +12,48 @@ import QueryBuilder from '@site/src/components/queryBuilder'; With the September release, Overture is implementing a data retention policy for publicly-available data releases. #### What's changing: + - Data releases will be publicly available for a maximum of 60 days (approximately two monthly releases) - Data files will be automatically removed from public distribution after this period using cloud storage lifecycle policies #### What remains available: + - The most recent two monthly data releases (last 60 days) - Versioned changelogs and bridgefiles for all releases - GERS registry - Release notes from all past releases #### Why we're implementing this: + This policy ensures compliance with data protection regulations, including GDPR "right to be forgotten" requirements. You can find complete details about our release schedule and policies on the [releases](https://docs.overturemaps.org/release-calendar/) page in the Overture documentation. Questions? Comments? Please contribute to [this thread on our GitHub Discussions forum](https://github.com/orgs/OvertureMaps/discussions/422) or reach out to us at info@overturemaps.org. ::: - ## Overview -**The `2025-09-24.0` release of Overture data and `v1.12.0` of the Overture schema are now available.** The datasets and release artifacts are available as GeoParquet files stored on both AWS and Azure. There are several data updates and (minor) breaking schema changes in this release. +**The `2025-09-24.0` release of Overture data and `v1.12.0` of the Overture schema are now available.** The datasets and release artifacts are available as GeoParquet files stored on both AWS and Azure. There are several data updates and (minor) breaking schema changes in this release. ## What's new? ### New POIs from Foursquare Open Source Places -This release adds approximately 6 million new POIs from Foursquare Open Source Places (FSQ OS Places) to grow the coverage of our data. We selected these records as POIs not previously included in Overture. We plan to add more Foursquare data as our validation models mature. +This release adds approximately 6 million new POIs from Foursquare Open Source Places (FSQ OS Places) to grow the coverage of our data. We selected these records as POIs not previously included in Overture. We plan to add more Foursquare data as our validation models mature. You can find the original source for FSQ OS Places [here](https://opensource.foursquare.com/os-places/). #### Overture places is now a multi-license dataset Previously all places data was under a CDLA license, but in this release each place has a license based on its source property: + - Foursquare-sourced data is licensed under [Apache 2.0](https://www.apache.org/licenses/LICENSE-2.0). - Data from other sources remains licensed under [CDLA 2.0](https://cdla.dev/permissive-2-0/). -Note that all Foursquare-sourced data is single sourced, meaning we do not blend its attributes with any other sources. + Note that all Foursquare-sourced data is single sourced, meaning we do not blend its attributes with any other sources. #### License requirements + If you use, modify, or redistribute the Foursquare data, you must: + - Provide a copy of the Apache 2.0 license. - State that you changed the files and include the date of any changes. - Preserve attribution notices from the source NOTICE file, including at minimum: `Copyright 2024 Foursquare Labs, Inc. All rights reserved.` @@ -55,17 +61,18 @@ If you use, modify, or redistribute the Foursquare data, you must: More information on license requirements and data usage is available on Foursquare’s [website](https://docs.foursquare.com/data-products/docs/access-fsq-os-places). General information on Overture licensing is available in the [licensing and attribution section](https://docs.overturemaps.org/attribution/) of Overture's documentation. #### How to filter for CDLA-only data + To create a purely CDLA-licensed dataset, filter out all records where the source property is “Foursquare”. -### New schema properties +### New schema properties -This month we added a new `license` sub-property within the `sources` property to more clearly link entities to the licensing information for their source data. This change affects all Overture themes, as `sources` is [a top-level property](https://docs.overturemaps.org/schema/#top-level-properties) in the Overture schema. +This month we added a new `license` sub-property within the `sources` property to more clearly link entities to the licensing information for their source data. This change affects all Overture themes, as `sources` is [a top-level property](https://docs.overturemaps.org/schema/reference/#top-level-properties) in the Overture schema. In the places theme, we added a new `operating_status` property, with all values set to "open". In future releases, we plan to update this property with data that indicates whether a place is "open", "permanently_closed", or "temporarily_closed". ### Signal "patches" -About a million POIs in our places theme now have a signal "patch" that determines the calculation of the score in the `confidence` property. POIs enhanced by these patches have "SparkGeo-confidence-conflation" in the `sources` property. +About a million POIs in our places theme now have a signal "patch" that determines the calculation of the score in the `confidence` property. POIs enhanced by these patches have "SparkGeo-confidence-conflation" in the `sources` property. ## Getting the data @@ -76,35 +83,41 @@ The paths are: ### Release data **Microsoft Azure:** + ``` az://overturemapswestus2.blob.core.windows.net/release/2025-09-24.0/ ``` **Amazon S3:** + ``` s3://overturemaps-us-west-2/release/2025-09-24.0/ ``` + ### Data changelog **Microsoft Azure:** + ``` az://overturemapswestus2.blob.core.windows.net/changelog/2025-09-24.0/ ``` **Amazon S3:** + ``` s3://overturemaps-us-west-2/changelog/2025-09-24.0/ ``` - ### Bridge files **Microsoft Azure:** + ``` az://overturemapswestus2.blob.core.windows.net/bridgefiles/2025-09-24.0/ ``` **Amazon S3:** + ``` s3://overturemaps-us-west-2/bridgefiles/2025-09-24.0/ ``` @@ -112,30 +125,29 @@ s3://overturemaps-us-west-2/bridgefiles/2025-09-24.0/ ### GERS Registry **Microsoft Azure:** + ``` az://overturemapswestus2.blob.core.windows.net/registry/ ``` **Amazon S3:** + ``` s3://overturemaps-us-west-2/registry/ ``` - - ## Theme-specific updates :::info -The base, buildings, divisions, places, and transportation themes are in GA. The addresses theme is in alpha. +The base, buildings, divisions, places, and transportation themes are in GA. The addresses theme is in alpha. ::: ### Addresses - added a new `license` property within `sources` - ### Base - added a new `license` property within `sources` and populated with applicable license information @@ -144,7 +156,6 @@ The base, buildings, divisions, places, and transportation themes are in GA. The - added a new `license` property within `sources` and populated with applicable license information for Microsoft and OSM features. - ### Divisions - added a new `license` property within `sources` and populated with applicable license information @@ -153,7 +164,7 @@ The base, buildings, divisions, places, and transportation themes are in GA. The - added LINZ-sourced localities and neighborhoods in New Zealand -- mapped OSM features with an admin_level=7 tag in Argentina to `localadmin` +- mapped OSM features with an admin_level=7 tag in Argentina to `localadmin` - fixed `local_type` for geoBoundaries-sourced counties @@ -165,11 +176,10 @@ The base, buildings, divisions, places, and transportation themes are in GA. The - added a new `operating_status` property, indicating the operating status of a place ("open", "permanently_closed", "temporarily_closed"); set all values to "open" for the September release. -- added six million POIs from Foursquare +- added six million POIs from Foursquare - implemented signal “patches” to dynamically update `confidence` property based on signals - ### Transportation - added a new `license` property within `sources` and populated with applicable license information @@ -178,7 +188,6 @@ The base, buildings, divisions, places, and transportation themes are in GA. The - made significant additions to the data in Italy, Portugal, Mexico, Egypt, Sweden, Indonesia - ## Schema changelog The changelog for Overture schema `v1.12.0` is [here](https://github.com/OvertureMaps/schema/releases). diff --git a/blog/2026-02-11-stac.mdx b/blog/2026-02-11-stac.mdx index 87d8ac25d..23943e387 100644 --- a/blog/2026-02-11-stac.mdx +++ b/blog/2026-02-11-stac.mdx @@ -1,19 +1,14 @@ --- title: Overture Has Fully Embraced STAC -authors: - name: Dana Bauer - title: Technical Product Manager, Overture Maps - email: dana@overturemaps.org +authors: dana tags: - tools --- - Over the past few releases, the Overture engineering team has gone from generating a [STAC catalog](https://stacspec.org/en) as an ad hoc release artifact to making STAC the backbone of our tooling. Now our [Python client](https://github.com/OvertureMaps/overturemaps-py), [Explorer](https://explore.overturemaps.org/), internal QA tools, and data pipelines all use [Overture STAC](https://stac.overturemaps.org/) to stay in sync with the latest release. We did this to improve our own workflows, but we think it'll make things easier for everyone. Here's our STAC, from the top. https://stac.overturemaps.org/. - ```json { "type": "Catalog", @@ -41,7 +36,8 @@ Here's our STAC, from the top. https://stac.overturemaps.org/. } ], "latest": "2026-01-21.0", - ``` +``` + :::danger[Shoutout!] Huge thanks to Ben Clark for getting Overture started on our STAC journey back in 2024. Watch [his talk on STACing GeoParquet](https://youtu.be/FWQz7H99qEs?si=membEVd0JarkKmbn) at the 2025 Cloud Native Geospatial Forum. And thanks to Jennings Anderson for fully realizing Overture's STAC vision and getting us where we are today. @@ -54,19 +50,18 @@ Huge thanks to Ben Clark for getting Overture started on our STAC journey back i Many of the [examples in our docs](https://docs.overturemaps.org/getting-data/) instruct users to sip or gulp Overture data directly from our public cloud buckets, at very long endpoints like `s3://overturemaps-us-west-2/release/2026-01-21.0/theme=buildings/type=building/*.parquet`. -(*Not so long ago Paul Ramsey [wrote](https://www.crunchydata.com/blog/vehicle-routing-with-postgis-and-overture-data) that the trickiest part of accessing Overture data was figuring out how to construct the endpoint. **Noted.***) +(\*Not so long ago Paul Ramsey [wrote](https://www.crunchydata.com/blog/vehicle-routing-with-postgis-and-overture-data) that the trickiest part of accessing Overture data was figuring out how to construct the endpoint. **Noted.\***) Using well-structured files on cloud storage as a de facto API for data distribution isn't new. It's actually one of the most important ideas in cloud-native geospatial. Back in 2014, when the AWS open data team [put Landsat imagery on S3](https://radiant.earth/blog/2023/03/the-naive-origins-of-the-cloud-optimized-geotiff/), they didn't build any custom tooling. No servers. They made well-structured data available on public cloud storage and let people have at it over HTTP. This principle is what makes [Cloud Optimized GeoTIFFs](https://cogeo.org/) work for raster imagery, [PMTiles](https://protomaps.com/) for map tiles, and [GeoParquet](https://geoparquet.org/) for vector map data. The storage endpoint is the API. -For Overture, this means tools like [DuckDB](https://til.simonwillison.net/overture-maps/overture-maps-parquet) can query gigabytes of data because Parquet's Hive-style partitioning (`theme=buildings/type=building/*.parquet`) and built-in row group statistics let query engines skip irrelevant files and irrelevant chunks within files. Users can quickly download megabytes. They don't have to drink the ocean to get the data they want. +For Overture, this means tools like [DuckDB](https://til.simonwillison.net/overture-maps/overture-maps-parquet) can query gigabytes of data because Parquet's Hive-style partitioning (`theme=buildings/type=building/*.parquet`) and built-in row group statistics let query engines skip irrelevant files and irrelevant chunks within files. Users can quickly download megabytes. They don't have to drink the ocean to get the data they want. -The pattern works best with stable endpoints. Things break when endpoints change unpredictably. Overture releases monthly, partitions data by theme and type, and divides its global datasets across multiple Parquet files. All of these factors go into the construction of the S3 and Azure paths. Hardcode a path today, and it's stale in few weeks. We knew this was a pain point for users, but we expected people to build their own solutions around it. Like the AWS team back in 2014, our philosophy was: *give people the data and get out of the way.* +The pattern works best with stable endpoints. Things break when endpoints change unpredictably. Overture releases monthly, partitions data by theme and type, and divides its global datasets across multiple Parquet files. All of these factors go into the construction of the S3 and Azure paths. Hardcode a path today, and it's stale in few weeks. We knew this was a pain point for users, but we expected people to build their own solutions around it. Like the AWS team back in 2014, our philosophy was: _give people the data and get out of the way._ -Not everyone was happy about this. Many users have asked Overture to provide APIs (and SDKs, mostly to handle the complexity of our schema). We did build overturemaps-py, our Python client, to abstract from those long endpoints, but even early versions of that tool had a hardcoded path to the data and required a manual update after each release. +Not everyone was happy about this. Many users have asked Overture to provide APIs (and SDKs, mostly to handle the complexity of our schema). We did build overturemaps-py, our Python client, to abstract from those long endpoints, but even early versions of that tool had a hardcoded path to the data and required a manual update after each release. Internally, the pressure to build better tooling came from a different direction. As we [migrated more data pipelines](https://overturemaps.org/blog/2025/overture-maps-building-platform-agnostic-infrastructure-a-collaboration-story/) from member company infrastructure onto Overture infrastructure, we needed better solutions for keeping things in sync across themes and releases. STAC has helped tremendously. It also lets us access metadata to speed up queries and requests. And because it's the same catalog we publish externally, it solves a lot of user pain points too. - ## This Makes Your Life Easier Too (We Hope!) If you've ever hardcoded an S3 path to Overture data and had it break when we released a new version, we're sorry. Try using Overture STAC. The catalog rebuilds daily directly from our production environment. Instead of checking our [release notes](https://docs.overturemaps.org/blog/tags/releases/) or guessing at paths, query the catalog directly to get the latest release: @@ -87,13 +82,13 @@ Even better, create a variable to use the latest release endpoint in all your qu SET VARIABLE latest = (SELECT latest FROM 'https://stac.overturemaps.org/catalog.json'); SELECT * FROM read_parquet( - 's3://overturemaps-us-west-2/release/' - || getvariable('latest') + 's3://overturemaps-us-west-2/release/' + || getvariable('latest') || '/theme=addresses/type=address/*' ) LIMIT 10; ``` -Your scripts stay stable even as the underlying data and cloud storage endpoints update. +Your scripts stay stable even as the underlying data and cloud storage endpoints update. ## Explore the Metadata @@ -146,11 +141,10 @@ base: land_cover: 123,302,114 features land_use: 53,037,060 features water: 63,442,033 features - ``` +``` Now let's dig into the metadata for the `building` type: - ```python import pystac @@ -192,8 +186,7 @@ You can even fetch the bounding boxes and AWS and Azure paths to individual Parq bbox: [-67.5002494, -30.937648, -50.6249127, -22.4999315] aws: https://overturemaps-us-west-2.s3.us-west-2.amazonaws.com/release/2026-01-21.0/theme=buildings/type=building/part-00002-47160ab1-2f19-4475-89f8-cc1348df69a6-c000.zstd.parquet azure: https://overturemapswestus2.blob.core.windows.net/release/2026-01-21.0/theme=buildings/type=building/part-00002-47160ab1-2f19-4475-89f8-cc1348df69a6-c000.zstd.parquet - ``` - +``` ## GERS Registry Manifest @@ -207,23 +200,21 @@ The catalog also includes the [GERS registry](https://docs.overturemaps.org/gers ... ] ``` -Since GERS IDs sort lexicographically, hex character by hex character, the [Python CLI](https://github.com/OvertureMaps/overturemaps-py?tab=readme-ov-file#gers-uuid) can check this manifest to find exactly which file contains a GERS ID of interest. It's one small JSON fetch instead of checking every file. +Since GERS IDs sort lexicographically, hex character by hex character, the [Python CLI](https://github.com/OvertureMaps/overturemaps-py?tab=readme-ov-file#gers-uuid) can check this manifest to find exactly which file contains a GERS ID of interest. It's one small JSON fetch instead of checking every file. ## What's Next Many of the tools I mention in this post are in active development in public GitHub repositories. We welcome your comments, questions, and contributions: - - https://github.com/OvertureMaps/stac — STAC - - https://github.com/OvertureMaps/overturemaps-py — Python CLI - - https://github.com/OvertureMaps/explore-site — Explorer - +- https://github.com/OvertureMaps/stac — STAC +- https://github.com/OvertureMaps/overturemaps-py — Python CLI +- https://github.com/OvertureMaps/explore-site — Explorer You can also build your own thing with Overture STAC. Here's a [tiny website I made](https://danabauer.github.io/overture-latest/) to share at meetups and conferences. It answers a question I consistently get from users: what's the latest Overture release? You can grab the source code [here](https://github.com/danabauer/overture-latest). :::tip[Talk to us] -We want to hear about your experience using Overture Maps. Share your ideas and questions on our [GitHub Discussion Forum](https://github.com/orgs/OvertureMaps/discussions) or reach out to us at community@overturemaps.org. +We want to hear about your experience using Overture Maps. Share your ideas and questions on our [GitHub Discussion Forum](https://github.com/orgs/OvertureMaps/discussions) or reach out to us at community@overturemaps.org. ::: - diff --git a/blog/authors.yml b/blog/authors.yml new file mode 100644 index 000000000..0677605bd --- /dev/null +++ b/blog/authors.yml @@ -0,0 +1,4 @@ +dana: + name: Dana Bauer + title: Technical Product Manager, Overture Maps + email: dana@overturemaps.org diff --git a/docs/gers/bridge-files.mdx b/docs/gers/bridge-files.mdx index 6ce565734..ae53760ba 100644 --- a/docs/gers/bridge-files.mdx +++ b/docs/gers/bridge-files.mdx @@ -1,21 +1,24 @@ --- title: Bridge Files --- + import QueryBuilder from '@site/src/components/queryBuilder'; -With each data release, Overture generates **bridge files** that connect GERS IDs to the IDs from the [source data](/attribution). These files are a key component of GERS and offer two critical capabilities: reverse lookup of source features and insight into Overture's conflation process. +With each data release, Overture generates **bridge files** that connect GERS IDs to the IDs from the [source data](/attribution). These files are a key component of GERS and offer two critical capabilities: reverse lookup of source features and insight into Overture's conflation process. Here's how to get the bridge files: -| Provider | Location | -| ----------- | -------- | -| Amazon S3 | `s3://overturemaps-us-west-2/bridgefiles/` | +| Provider | Location | +| ---------------------------- | ------------------------------------------------------------------------- | +| Amazon S3 | `s3://overturemaps-us-west-2/bridgefiles/` | | Microsoft Azure Blob Storage | `https://overturemapswestus2.blob.core.windows.net/bridgefiles/` | -The latest Overture data `` is: +The latest Overture data `` is: + + :::note -Currently, Overture only generates bridge files for these source datasets: Esri Community Maps, geoBoundaries, Instituto Geográfico Nacional (España), Meta Places, Microsoft Places, OpenStreetMap, PinMeTo. +Currently, Overture only generates bridge files for these source datasets: Esri Community Maps, geoBoundaries, Instituto Geográfico Nacional (España), Meta Places, Microsoft Places, OpenStreetMap, PinMeTo. ::: ## Partitioning and schema @@ -55,20 +58,18 @@ Bridge files are released as Parquet files, partitioned by `dataset`, `theme`, a ``` - The bridge file schema includes the following columns: -| Column | Data type | Description | -| ---- | ---- | ---- | -| `id` | string | represents the GERS ID and is populated from the id column in the Overture data schema | -| `record_id` | string | represents the id of the feature as it is in the source data provider (e.g. n2757802019@9) and is populated by parsing the sources column in the Overture data schema | -| `update_time` | string | represents the time the feature or dataset was updated, depending on the data provider; also populated by parsing the sources column in the Overture schema | -| `dataset` | string | represents the name of the dataset the feature has been provided in; also populated by parsing the sources column in the Overture data schema | -| `theme` | string | represents the theme the feature is a part of, provided by the creator of the bridge file itself | -| `type` | string | represents the type of the feature, either derived from the data or provided by the creator of the bridge file | -| `between` | array | represents the portion of the normalized length of the GERS feature the dataset way takes, represented by a range between 0 and 1 -| `dataset_between` | array | represents the portion of the normalized length of the dataset way the GERS feature takes, represented by a range between 0 and 1 | - +| Column | Data type | Description | +| ----------------- | --------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `id` | string | represents the GERS ID and is populated from the id column in the Overture data schema | +| `record_id` | string | represents the id of the feature as it is in the source data provider (e.g. n2757802019@9) and is populated by parsing the sources column in the Overture data schema | +| `update_time` | string | represents the time the feature or dataset was updated, depending on the data provider; also populated by parsing the sources column in the Overture schema | +| `dataset` | string | represents the name of the dataset the feature has been provided in; also populated by parsing the sources column in the Overture data schema | +| `theme` | string | represents the theme the feature is a part of, provided by the creator of the bridge file itself | +| `type` | string | represents the type of the feature, either derived from the data or provided by the creator of the bridge file | +| `between` | array | represents the portion of the normalized length of the GERS feature the dataset way takes, represented by a range between 0 and 1 | +| `dataset_between` | array | represents the portion of the normalized length of the dataset way the GERS feature takes, represented by a range between 0 and 1 | ## Example: examining the source data for the `building` dataset @@ -87,9 +88,9 @@ bbox.xmin > -117.048198 AND bbox.xmax < -117.044608 You'll notice the table has 4367 `building` features. Now let's look at the `building` count by data source: ```sql -SELECT +SELECT sources[1].dataset AS source, - count(*) + count(*) FROM border_buildings GROUP BY source; ``` @@ -106,7 +107,7 @@ GROUP BY source; └────────────────────────┴──────────────┘ ``` -Now we'll use the latest bridge file to find additional information about data in the Overture corpus that didn't make it into the release. We'll join the table we created from the release data with the bridge file data to create a new table that has detailed view of the source mappings. _Remember: we only have bridge files for Esri Community Maps data and OpenStreetMap data._ +Now we'll use the latest bridge file to find additional information about data in the Overture corpus that didn't make it into the release. We'll join the table we created from the release data with the bridge file data to create a new table that has detailed view of the source mappings. _Remember: we only have bridge files for Esri Community Maps data and OpenStreetMap data._ ```sql CREATE TABLE IF NOT EXISTS border_buildings_corpus AS @@ -116,7 +117,7 @@ CREATE TABLE IF NOT EXISTS border_buildings_corpus AS record_id AS dataset_record_id FROM border_buildings -JOIN +JOIN read_parquet('s3://overturemaps-us-west-2/bridgefiles/2025-05-21.0/dataset=*/theme=buildings/type=building/*') bridge ON border_buildings.id = bridge.id ORDER BY border_buildings.id, bridge.dataset); @@ -127,11 +128,11 @@ You might notice this new table created from our join has only 2,021 records com - Multiple sources per building: a single Overture building may be conflated from multiple source datasets - One-to-many mapping: each source contribution gets its own bridge file record -Let's dig into this a bit more. We can identify the `building` features in the release that have multiple source mappings. +Let's dig into this a bit more. We can identify the `building` features in the release that have multiple source mappings. ```sql -- Identify buildings conflated from multiple sources -SELECT gers_id, +SELECT gers_id, COUNT(DISTINCT dataset) as source_count, STRING_AGG(DISTINCT dataset, ', ') as datasets FROM border_buildings_corpus @@ -162,15 +163,15 @@ There are 70 buildings with that are mapped to two data sources. Here's a snippe Let's pull out one example: -| gers_id | dataset | dataset_record_id | update_time | -| ---- | ---- | ---- | ---- | +| gers_id | dataset | dataset_record_id | update_time | +| -------------------------------- | ------------------- | ---------------------- | ------------------------ | | 08b29a4c428ebfff02002b827866f466 | Esri Community Maps | esri_ChulaVistaCA13510 | 2024-10-15T00:00:00.000Z | -| 08b29a4c428ebfff02002b827866f466 | OpenStreetMap | w1182486582@1 | 2023-06-16T14:22:10.000Z | +| 08b29a4c428ebfff02002b827866f466 | OpenStreetMap | w1182486582@1 | 2023-06-16T14:22:10.000Z | -This shows that building `08b29a4c428ebfff02002b827866f466` was created by a conflation process that included data from OpenStreetMap (way 1182486582, version 1) and Esri Community Maps (esri_ChulaVistaCA13510). The conflation process _may_ have included other data sources that have not been mapped to GERS and released as bridge files. +This shows that building `08b29a4c428ebfff02002b827866f466` was created by a conflation process that included data from OpenStreetMap (way 1182486582, version 1) and Esri Community Maps (esri*ChulaVistaCA13510). The conflation process \_may* have included other data sources that have not been mapped to GERS and released as bridge files. ## Next steps + - Examine the source data for building `08b29a4c428ebfff02002b827866f466` by looking up the OSM ID in [OpenStreetMap](https://www.openstreetmap.org/) - Explore the other components of GERS: registry, [changelog](../changelog), and [reference map](https://explore.overturemaps.org/#15/38.90678/-77.03649) - Follow our [GERS tutorial](../gers-tutorial) - diff --git a/docs/getting-data/duckdb.mdx b/docs/getting-data/duckdb.mdx index 97dd732e1..12940eec8 100644 --- a/docs/getting-data/duckdb.mdx +++ b/docs/getting-data/duckdb.mdx @@ -35,7 +35,7 @@ Download all pizza restaurants in New York City as a `GeoJSON` file. -See the [places schema](/schema/reference/places/place) to learn more about each attribute or the [common schema concepts](/schema/concepts/names/) to better understand `names.primary` from `names.common`. +See the [places schema](/schema/reference/places/place) to learn more about each attribute or the [common schema concepts](/schema/reference/core/names) to better understand `names.primary` from `names.common`. diff --git a/docs/getting-data/index.mdx b/docs/getting-data/index.mdx index b34918f24..4e0b5f8af 100644 --- a/docs/getting-data/index.mdx +++ b/docs/getting-data/index.mdx @@ -7,68 +7,76 @@ import MadridBuildings from '!!raw-loader!@site/src/queries/duckdb/buildings_mad ## Official Overture sources -The Overture Maps Foundation provides free access to its data on Amazon S3 and Microsoft Azure Blob Storage, with no account registration or credentials required. +The Overture Maps Foundation provides free access to its data on Amazon S3 and Microsoft Azure Blob Storage, with no account registration or credentials required. -| Provider | Location | -| ----------- | -------- | -| Amazon S3 | `s3://overturemaps-us-west-2/release/` | +| Provider | Location | +| ---------------------------- | --------------------------------------------------------------------- | +| Amazon S3 | `s3://overturemaps-us-west-2/release/` | | Microsoft Azure Blob Storage | `https://overturemapswestus2.blob.core.windows.net/release/` | -The latest Overture data `` is: +The latest Overture data `` is: + + ### Getting only the data you want The base paths above point to all of the data in a particular Overture release, about 500 GigaBytes (GB) worth. Overture partitions the data by `theme` and `type`; specifying those directories in your path will significantly narrow the universe of data you are trying to access. For example, here's the S3 path to the `infrastructure` feature type in the `base` theme: - - + Let's break down the components in that path: -- ``: Overture releases data monthly — following a date-based versioning scheme in the format `yyyy-mm-dd.x` —and maintains an archive of releases on Amazon S3 and Azure Blob Storage -- ``: one of Overture's six data themes — addresses, base, buildings, divisions, places, and transportation — and the first level of partitioning of the data +- ``: Overture releases data monthly — following a date-based versioning scheme in the format `yyyy-mm-dd.x` —and maintains an archive of releases on Amazon S3 and Azure Blob Storage +- ``: one of Overture's six data themes — addresses, base, buildings, divisions, places, and transportation — and the first level of partitioning of the data - ``: a feature type within a theme, e.g. infrastructure within base, and the second level of partitioning of the data | - `*.parquet`: the file type Overture uses to store and deliver the data, the `*` indicates you want all of the Parquet files in a particular directory ### Parquet files -Overture distributes its data as [GeoParquet](https://geoparquet.org/) files, a column-oriented spatial data format that is a backwards-compatible extension of [Apache Parquet](https://parquet.apache.org/). Parquet (and GeoParquet) is optimized for cloud-native queries, which means you can efficiently fetch chunks of the data from cloud storage. Instead of extracting one huge data file containing a planet's worth of data, you can scan across the many GeoParquet files in each `type` directory and pull only the data you need. To learn more about GeoParquet, you can consult [this guide](https://guide.cloudnativegeo.org/geoparquet/) from the Cloud Native Geospatial Forum. - +Overture distributes its data as [GeoParquet](https://geoparquet.org/) files, a column-oriented spatial data format that is a backwards-compatible extension of [Apache Parquet](https://parquet.apache.org/). Parquet (and GeoParquet) is optimized for cloud-native queries, which means you can efficiently fetch chunks of the data from cloud storage. Instead of extracting one huge data file containing a planet's worth of data, you can scan across the many GeoParquet files in each `type` directory and pull only the data you need. To learn more about GeoParquet, you can consult [this guide](https://guide.cloudnativegeo.org/geoparquet/) from the Cloud Native Geospatial Forum. ## Quickstart Let's go back to the example above with the infrastructure map data. Now that you know the correct path, how do you actually query and download the data? Below are a few examples to get you started quickly. -### AWS CLI +### AWS CLI You can install the [AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html) to download the Parquet files from S3 at the command line. Set `` to a local directory path to download the files, or to an `s3://` path you control to copy them into your S3 bucket. In this example, you can use the AWS CLI to download all nine Parquet files, about one GB of data, in the `infrastructure` feature type to the current working directory on your local drive. - - + Here's another example with the AWS CLI, this time extracting all of the data for the `building` feature type: - - + This will download 200 GeoParquet files containing all of the `building` feature type data around the world — that's more than 230 GB of data! :::tip -If you'd like to query the data directly on the AWS platform, please read our documentation about setting up an Overture data catalog on [Athena](athena-aws). You'll need an AWS account secured with a credit card. +If you'd like to query the data directly on the AWS platform, please read our documentation about setting up an Overture data catalog on [Athena](athena-aws). You'll need an AWS account secured with a credit card. ::: - ### AzCopy + You can download the files from Azure Blob Storage directly using [Azure Storage Explorer](https://azure.microsoft.com/en-us/products/storage/storage-explorer/) or by installing Microsoft's [AzCopy](https://learn.microsoft.com/en-us/azure/storage/common/storage-use-azcopy-v10?toc=%2Fazure%2Fstorage%2Fblobs%2Ftoc.json&bc=%2Fazure%2Fstorage%2Fblobs%2Fbreadcrumb%2Ftoc.json#download-azcopy) command-line tool. Here's how you would use the`azcopy` command to grab all of the `place` data: - - + :::tip -You can read more about querying with the data directly in [Azure using Synapse](synapse-azure). You'll need an account backed by a credit card to do this. +You can read more about querying with the data directly in [Azure using Synapse](synapse-azure). You'll need an account backed by a credit card to do this. ::: ### DuckDB @@ -83,16 +91,15 @@ Alternatively, you can put your query in a SQL file and run `duckdb -f query.sql ### Python CLI -Overture also offers its own [Python CLI](overturemaps-py) for downloading data at the command line. +Overture also offers its own [Python CLI](overturemaps-py) for downloading data at the command line. ``` $ overturemaps download --bbox=-75,40,-73,41 -f geojson --type=building -o nyc_buildings.geojson ``` - ## Data mirrors -In addition to the official sources maintained by the Overture Maps Foundation, several *friends of Overture* are maintaining mirrors of the data on these platforms: +In addition to the official sources maintained by the Overture Maps Foundation, several _friends of Overture_ are maintaining mirrors of the data on these platforms: - [Bigquery](data-mirrors/bigquery) - [Databricks](data-mirrors/databricks) @@ -101,7 +108,4 @@ In addition to the official sources maintained by the Overture Maps Foundation, - [Snowflake](data-mirrors/snowflake) - [Wherobots](data-mirrors/wherobots) - - - -These are community-maintained resources. These mirrors may offer different access patterns, additional tooling, or other platform-specific benefits. Please consult the documentation for details. \ No newline at end of file +These are community-maintained resources. These mirrors may offer different access patterns, additional tooling, or other platform-specific benefits. Please consult the documentation for details. diff --git a/docs/guides/transportation/overview.mdx b/docs/guides/transportation/overview.mdx index 7de8873e1..13831d8a1 100644 --- a/docs/guides/transportation/overview.mdx +++ b/docs/guides/transportation/overview.mdx @@ -32,7 +32,7 @@ You might use the Overture transportation data for: - **geocoding:** getting the coordinates of street intersections (geocodes) or the street intersection near specific coordinates (reverse geocodes). -This guide is an overview of the transportation data. To dig into the details of the schema, see the [schema concepts for transportation](/schema/concepts/by-theme/transportation) and the reference documentation for the [segment](/schema/reference/transportation/segment) and [connector](/schema/reference/transportation/connector) feature types. +This guide is an overview of the transportation data. To dig into the details of the schema, see the reference documentation for the [segment](/schema/reference/transportation/segment) and [connector](/schema/reference/transportation/connector) feature types. ## Dataset description @@ -231,7 +231,7 @@ This example selects all the segments that that connect to the example id. |:--:| | *Conceptual diagram of the splitter tool output. The numbers following 1234@ represent start_lr and end_lr values.* | -The [transportation-spitter tool](https://github.com/OvertureMaps/transportation-splitter) transforms Overture road data into simpler sub segments. It will optionally divide features at each connector point and at each change of a [scoped based property](/schema/concepts/scoping-rules/), depending on configuration. Depending on your needs and map stack, the resulting dataset may be easier to manipulate than the original Overture data as each segment will only have connections at either end and have one set of properties for its entire length. +The [transportation-spitter tool](https://github.com/OvertureMaps/transportation-splitter) transforms Overture road data into simpler sub segments. It will optionally divide features at each connector point and at each change of a [scoped based property](/schema/reference/core/scoping/linearly_referenced_range), depending on configuration. Depending on your needs and map stack, the resulting dataset may be easier to manipulate than the original Overture data as each segment will only have connections at either end and have one set of properties for its entire length. Since a GERS ID will no longer be unique with this output, the resulting data will have two additional columns: `start_lr` and `end_lr` which are linear references describing which section of the orginal feature this new segment comes from. diff --git a/docs/introduction.mdx b/docs/introduction.mdx index 060a3e320..cd8568da1 100644 --- a/docs/introduction.mdx +++ b/docs/introduction.mdx @@ -4,22 +4,22 @@ slug: / title: Introduction --- -Welcome! Overture provides free and open map data normalized to [one schema](schema). Our [six data "themes"](guides) — [addresses](guides/addresses), [buildings](guides/buildings), [base](guides/base), [divisions](guides/divisions), [places](guides/places), and [transportation](guides/transportation) — contain nearly 4.2 billion features and will continue to expand in size and scale. The data we use to build our datasets comes from many sources, including OpenStreetMap, Meta, Microsoft, Esri, OpenAddresses, and [more](attribution). +Welcome! Overture provides free and open map data normalized to [one schema](/schema). Our [six data "themes"](guides) — [addresses](guides/addresses), [buildings](guides/buildings), [base](guides/base), [divisions](guides/divisions), [places](guides/places), and [transportation](guides/transportation) — contain nearly 4.2 billion features and will continue to expand in size and scale. The data we use to build our datasets comes from many sources, including OpenStreetMap, Meta, Microsoft, Esri, OpenAddresses, and [more](attribution). -In this documentation, you'll find [instructions](getting-data) for accessing and handling Overture's large datasets, [reference material](schema/reference) to help you understand the Overture schema, comprehensive [guides](guides) to working with the many themes and types of Overture data, and [hands-on examples](examples) using data wrangling, analysis, and visualization tools you know and love. Want to see what our community has been building? Check out the [community projects](community) section of our documentation for inspiration. +In this documentation, you'll find [instructions](getting-data) for accessing and handling Overture's large datasets, [reference material](/schema) to help you understand the Overture schema, comprehensive [guides](guides) to working with the many themes and types of Overture data, and [hands-on examples](examples) using data wrangling, analysis, and visualization tools you know and love. Want to see what our community has been building? Check out the [community projects](community) section of our documentation for inspiration. ## Overture data We release our data monthly as [cloud-native GeoParquet](https://guide.cloudnativegeo.org/geoparquet/) files, partitioned by theme and type. Each data theme contains one or more feature types: -| Theme | Feature types | -| ----- | ------------- | -| [Addresses](guides/addresses) | address | -| [Base](guides/base) | bathymetry, infrastructure, land, land_cover, land_use, water | -| [Buildings](guides/buildings) | building, building_part | -| [Divisions](guides/divisions) | division, division_area, division_boundary | -| [Places](guides/places) | place | -| [Transportation](guides/transportation) | segment, connector | +| Theme | Feature types | +| --------------------------------------- | ------------------------------------------------------------- | +| [Addresses](guides/addresses) | address | +| [Base](guides/base) | bathymetry, infrastructure, land, land_cover, land_use, water | +| [Buildings](guides/buildings) | building, building_part | +| [Divisions](guides/divisions) | division, division_area, division_boundary | +| [Places](guides/places) | place | +| [Transportation](guides/transportation) | segment, connector |
Theme-type mapping as JSON @@ -43,15 +43,14 @@ type_theme_map = { "water": "base" } ``` -
- + You'll find the GeoParquet column definitions for each feature type in our data [guides](guides). ## Overture schema -Although we release our data as GeoParquet, the Overture schema is defined by the [JSON](https://json-schema.org/) schema, and [GeoJSON](https://geojson.org/) is used as the canonical geospatial format. GeoJSON provides us with a mental model and language to express data constructions in the [schema](https://schema.overturemaps.org/schema.yaml). In our [schema reference docs](schema), we describe key schema concepts for each theme and definitions and examples for each feature type. +In our [schema reference docs](/schema), we describe key schema concepts for each theme and definitions and examples for each feature type. ## Vision diff --git a/docs/release-calendar.mdx b/docs/release-calendar.mdx index c31a7747e..ad6411114 100644 --- a/docs/release-calendar.mdx +++ b/docs/release-calendar.mdx @@ -8,82 +8,84 @@ This page provides information about Overture's data and schema releases, includ ## Current release -The latest Overture data release is: . +The latest Overture data release is: + + ## Release schedule Our planned release schedule is below. Release dates and schema versions are subject to change. -| Date | Data version | Schema version | -| ----- | ----- | ----- | -| 18 February 2026 | [`2026-02-18.0`](https://docs.overturemaps.org/blog/2026/02/18/release-notes/) |[`v1.16.0`](https://github.com/OvertureMaps/schema/releases/tag/v1.16.0) | -| 18 March 2026* | `2026-03-18.0` | TBD | - +| Date | Data version | Schema version | +| ---------------- | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------ | +| 18 February 2026 | [`2026-02-18.0`](https://docs.overturemaps.org/blog/2026/02/18/release-notes/) | [`v1.16.0`](https://github.com/OvertureMaps/schema/releases/tag/v1.16.0) | +| 18 March 2026\* | `2026-03-18.0` | TBD | -*quarterly major breaking change release +\*quarterly major breaking change release ## Versioning and schema changes ### Versioning -Overture uses a three-component `..` version number, i.e. `v1.1.0`, that effectively follows the [semantic versioning specification](https://semver.org/spec/v2.0.0.html). In general, a “major” change is expected to have a larger impact on data consumers, while a “minor” change is expected to have a lesser impact. Our monthly data releases are tagged with the date of the release, in the format `yyyy-mm-dd.x`, with x indicating a patch or hotfix to the data. +Overture uses a three-component `..` version number, i.e. `v1.1.0`, that effectively follows the [semantic versioning specification](https://semver.org/spec/v2.0.0.html). In general, a “major” change is expected to have a larger impact on data consumers, while a “minor” change is expected to have a lesser impact. Our monthly data releases are tagged with the date of the release, in the format `yyyy-mm-dd.x`, with x indicating a patch or hotfix to the data. ### Minor schema changes -Minor schema changes may occur in any month, meaning that the next monthly data release may follow a new schema version that contains minor schema changes. We typically do not announce minor changes in advance unless they are part of an overarching schema update that involves related major changes. Minor changes include: -- adding feature types; -- adding top-level properties (columns); -- adding nested properties; -- changing constraints on property values either by relaxing or tightening them, e.g. adding or subtracting allowed values for enumerated value properties such as `class`. +Minor schema changes may occur in any month, meaning that the next monthly data release may follow a new schema version that contains minor schema changes. We typically do not announce minor changes in advance unless they are part of an overarching schema update that involves related major changes. Minor changes include: + +- adding feature types; +- adding top-level properties (columns); +- adding nested properties; +- changing constraints on property values either by relaxing or tightening them, e.g. adding or subtracting allowed values for enumerated value properties such as `class`. ### Major schema changes -Major schema changes will only occur once per quarter, during the designated **major change months of March, June, September, and December**. We will strive to announce upcoming major changes as far in advance as possible, along with the reasons behind the change. If there are no major changes in a designated major change month, the schema version for that month’s release will reflect minor changes or no changes. Major changes include: +Major schema changes will only occur once per quarter, during the designated **major change months of March, June, September, and December**. We will strive to announce upcoming major changes as far in advance as possible, along with the reasons behind the change. If there are no major changes in a designated major change month, the schema version for that month’s release will reflect minor changes or no changes. Major changes include: + - deleting feature types; -- deleting top-level properties (columns); +- deleting top-level properties (columns); - deleting nested properties; -- changing data types, e.g. an integer value to a structured object. +- changing data types, e.g. an integer value to a structured object. ## Data retention policy Overture maintains publicly available data releases for a maximum of 60 days (two monthly releases) to comply with data protection regulations, including GDPR "right to be forgotten" requirements. Files are automatically removed from public distribution after this period using cloud storage lifecycle policies on AWS and Azure. Versioned changelogs and bridgefiles remain publicly available for all releases where they were provided. Release notes from past releases also remain publicly available. - ## Release history -Overture has been releasing data monthly since October 2023. Past releases are listed below. Only the last two months of releases available in our public buckets on AWS and Azure. The release notes for all past releases are available at the links below. +Overture has been releasing data monthly since October 2023. Past releases are listed below. Only the last two months of releases available in our public buckets on AWS and Azure. The release notes for all past releases are available at the links below. -| Date | Data version | Schema version | -| ----- | ----- | ----- | -| 18 February 2026 | [`2026-02-18.0`](https://docs.overturemaps.org/blog/2026/02/18/release-notes/) |[`v1.16.0`](https://github.com/OvertureMaps/schema/releases/tag/v1.16.0) | -| 21 January 2026 | [`2026-01-21.0`](https://docs.overturemaps.org/blog/2026/01/21/release-notes/) | [`v1.15.0`](https://github.com/OvertureMaps/schema/releases/tag/v1.15.0) | -| 17 December 2025 | [`2025-12-17.0`](https://docs.overturemaps.org/blog/2025/12/17/release-notes/) | [`v1.15.0`](https://github.com/OvertureMaps/schema/releases/tag/v1.15.0) | -| 19 November 2025 | [`2025-11-19.0`](https://docs.overturemaps.org/blog/2025/11/19/release-notes/) | [`v1.14.0`](https://github.com/OvertureMaps/schema/releases/tag/v1.14.0) | -| 22 October 2025 | [`2025-10-22.0`](https://docs.overturemaps.org/blog/2025/10/22/release-notes/) | [`v1.13.0`](https://github.com/OvertureMaps/schema/releases/tag/v1.13.0) | +| Date | Data version | Schema version | +| ----------------- | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------ | +| 18 February 2026 | [`2026-02-18.0`](https://docs.overturemaps.org/blog/2026/02/18/release-notes/) | [`v1.16.0`](https://github.com/OvertureMaps/schema/releases/tag/v1.16.0) | +| 21 January 2026 | [`2026-01-21.0`](https://docs.overturemaps.org/blog/2026/01/21/release-notes/) | [`v1.15.0`](https://github.com/OvertureMaps/schema/releases/tag/v1.15.0) | +| 17 December 2025 | [`2025-12-17.0`](https://docs.overturemaps.org/blog/2025/12/17/release-notes/) | [`v1.15.0`](https://github.com/OvertureMaps/schema/releases/tag/v1.15.0) | +| 19 November 2025 | [`2025-11-19.0`](https://docs.overturemaps.org/blog/2025/11/19/release-notes/) | [`v1.14.0`](https://github.com/OvertureMaps/schema/releases/tag/v1.14.0) | +| 22 October 2025 | [`2025-10-22.0`](https://docs.overturemaps.org/blog/2025/10/22/release-notes/) | [`v1.13.0`](https://github.com/OvertureMaps/schema/releases/tag/v1.13.0) | | 24 September 2025 | [`2025-09-24.0`](https://docs.overturemaps.org/blog/2025/09/24/release-notes/) | [`v1.12.0`](https://github.com/OvertureMaps/schema/releases/tag/v1.12.0) | -| 20 August 2025 | [`2025-08-20.0`](https://docs.overturemaps.org/blog/2025/08/20/release-notes/) | [`v1.11.0`](https://github.com/OvertureMaps/schema/releases/tag/v1.11.0) | -| 23 July 2025 | [`2025-07-23.0`](https://docs.overturemaps.org/blog/2025/07/23/release-notes/) | [`v1.11.0`](https://github.com/OvertureMaps/schema/releases/tag/v1.11.0) | -| 25 June 2025 | [`2025-06-25.0`](https://docs.overturemaps.org/blog/2025/06/25/release-notes/) | [`v1.10.0`](https://github.com/OvertureMaps/schema/releases/tag/v1.10.0)| -| 21 May 2025 | [`2025-05-21.0`](https://docs.overturemaps.org/blog/2025/05/21/release-notes/) | [`v1.9.0`](https://github.com/OvertureMaps/schema/releases/tag/v1.9.0) | -| 23 April 2025 | [`2025-04-23.0`](https://docs.overturemaps.org/blog/2025/04/23/release-notes/) | [`v1.8.0`](https://github.com/OvertureMaps/schema/releases/tag/v1.8.0) | -| 20 March 2025 | [`2025-03-19.1`](https://docs.overturemaps.org/blog/2025/03/19/release-notes/) | [`v1.7.0`](https://github.com/OvertureMaps/schema/releases/tag/v1.7.0) | -| 19 March 2025 | [`2025-03-19.0`](https://docs.overturemaps.org/blog/2025/03/19/release-notes/) | [`v1.7.0`](https://github.com/OvertureMaps/schema/releases/tag/v1.7.0) | -| 19 February 2025 | [`2025-02-19.0`](https://docs.overturemaps.org/blog/2025/02/19/release-notes/) | [`v1.6.0`](https://github.com/OvertureMaps/schema/releases/tag/v1.6.0) | -| 22 January 2025 | [`2025-01-22.0`](https://docs.overturemaps.org/blog/2025/01/22/release-notes/)| [`v1.5.0`](https://github.com/OvertureMaps/schema/releases/tag/v1.5.0) | -| 18 December 2024 | [`2024-12-18.0`](https://docs.overturemaps.org/blog/2024-12-18.0/) | [`v1.4.0`](https://github.com/OvertureMaps/schema/releases/tag/v1.4.0) | -| 13 November 2024 | [`2024-11-13.0`](https://docs.overturemaps.org/blog/2024-11-13.0/) | [`v1.3.0`](https://github.com/OvertureMaps/schema/releases/tag/v1.3.0) | -| 23 October 2024 | [`2024-10-23.0`](https://docs.overturemaps.org/blog/2024-10-23.0/) | [`v1.2.0`](https://github.com/OvertureMaps/schema/releases/tag/v1.2.0) | -| 18 September 2024 | [`2024-09-18.0`](https://docs.overturemaps.org/blog/2024-09-18.0/) | [`v1.1.0`](https://github.com/OvertureMaps/schema/releases/tag/v1.1.0) | -| 20 August 2024 | [`2024-08-20.0`](https://docs.overturemaps.org/blog/2024-08-20.0/) | [`v1.1.0`](https://github.com/OvertureMaps/schema/releases/tag/v1.1.0) | -| 22 July 2024 | [`2024-07-22.0`](https://docs.overturemaps.org/blog/2024-07-22.0/) | [`v1.0.0`](https://github.com/OvertureMaps/schema/releases/tag/v1.0.0) | -| 24 June 2024 | `2024-06-13-beta.1` | `v0.12.0-beta` | -| 13 June 2024 | `2024-06-13-beta.0` | `v0.12.0-beta` | -| 16 May 2024 | `2024-05-16-beta.0` | `v0.11.0-beta` | -| 16 April 2024 | `2024-04-16-beta.0` | `v0.10.0-beta` | -| 12 March 2024 | `2024-03-12-alpha.0` | `v0.9.0` | -| 15 February 2024 | `2024-02-15-alpha.0` | `v0.8.0` | -| 17 January 2024 | `2024-01-17-alpha.0` | `v0.7.0` | -| 14 December 2023 | `2023-12-14-alpha.0` | `v0.7.0` | -| 14 November 2023 | `2023-11-14-alpha.0` | `v0.6.0` | -| 19 October 2023 | `2023-10-19-alpha.0` | `v0.5.0`| -| 26 July 2023 | `2023-07-26-alpha.0` | `v0.4.0` | +| 20 August 2025 | [`2025-08-20.0`](https://docs.overturemaps.org/blog/2025/08/20/release-notes/) | [`v1.11.0`](https://github.com/OvertureMaps/schema/releases/tag/v1.11.0) | +| 23 July 2025 | [`2025-07-23.0`](https://docs.overturemaps.org/blog/2025/07/23/release-notes/) | [`v1.11.0`](https://github.com/OvertureMaps/schema/releases/tag/v1.11.0) | +| 25 June 2025 | [`2025-06-25.0`](https://docs.overturemaps.org/blog/2025/06/25/release-notes/) | [`v1.10.0`](https://github.com/OvertureMaps/schema/releases/tag/v1.10.0) | +| 21 May 2025 | [`2025-05-21.0`](https://docs.overturemaps.org/blog/2025/05/21/release-notes/) | [`v1.9.0`](https://github.com/OvertureMaps/schema/releases/tag/v1.9.0) | +| 23 April 2025 | [`2025-04-23.0`](https://docs.overturemaps.org/blog/2025/04/23/release-notes/) | [`v1.8.0`](https://github.com/OvertureMaps/schema/releases/tag/v1.8.0) | +| 20 March 2025 | [`2025-03-19.1`](https://docs.overturemaps.org/blog/2025/03/19/release-notes/) | [`v1.7.0`](https://github.com/OvertureMaps/schema/releases/tag/v1.7.0) | +| 19 March 2025 | [`2025-03-19.0`](https://docs.overturemaps.org/blog/2025/03/19/release-notes/) | [`v1.7.0`](https://github.com/OvertureMaps/schema/releases/tag/v1.7.0) | +| 19 February 2025 | [`2025-02-19.0`](https://docs.overturemaps.org/blog/2025/02/19/release-notes/) | [`v1.6.0`](https://github.com/OvertureMaps/schema/releases/tag/v1.6.0) | +| 22 January 2025 | [`2025-01-22.0`](https://docs.overturemaps.org/blog/2025/01/22/release-notes/) | [`v1.5.0`](https://github.com/OvertureMaps/schema/releases/tag/v1.5.0) | +| 18 December 2024 | [`2024-12-18.0`](https://docs.overturemaps.org/blog/2024-12-18.0/) | [`v1.4.0`](https://github.com/OvertureMaps/schema/releases/tag/v1.4.0) | +| 13 November 2024 | [`2024-11-13.0`](https://docs.overturemaps.org/blog/2024-11-13.0/) | [`v1.3.0`](https://github.com/OvertureMaps/schema/releases/tag/v1.3.0) | +| 23 October 2024 | [`2024-10-23.0`](https://docs.overturemaps.org/blog/2024-10-23.0/) | [`v1.2.0`](https://github.com/OvertureMaps/schema/releases/tag/v1.2.0) | +| 18 September 2024 | [`2024-09-18.0`](https://docs.overturemaps.org/blog/2024-09-18.0/) | [`v1.1.0`](https://github.com/OvertureMaps/schema/releases/tag/v1.1.0) | +| 20 August 2024 | [`2024-08-20.0`](https://docs.overturemaps.org/blog/2024-08-20.0/) | [`v1.1.0`](https://github.com/OvertureMaps/schema/releases/tag/v1.1.0) | +| 22 July 2024 | [`2024-07-22.0`](https://docs.overturemaps.org/blog/2024-07-22.0/) | [`v1.0.0`](https://github.com/OvertureMaps/schema/releases/tag/v1.0.0) | +| 24 June 2024 | `2024-06-13-beta.1` | `v0.12.0-beta` | +| 13 June 2024 | `2024-06-13-beta.0` | `v0.12.0-beta` | +| 16 May 2024 | `2024-05-16-beta.0` | `v0.11.0-beta` | +| 16 April 2024 | `2024-04-16-beta.0` | `v0.10.0-beta` | +| 12 March 2024 | `2024-03-12-alpha.0` | `v0.9.0` | +| 15 February 2024 | `2024-02-15-alpha.0` | `v0.8.0` | +| 17 January 2024 | `2024-01-17-alpha.0` | `v0.7.0` | +| 14 December 2023 | `2023-12-14-alpha.0` | `v0.7.0` | +| 14 November 2023 | `2023-11-14-alpha.0` | `v0.6.0` | +| 19 October 2023 | `2023-10-19-alpha.0` | `v0.5.0` | +| 26 July 2023 | `2023-07-26-alpha.0` | `v0.4.0` | diff --git a/docs/schema/index.md b/docs/schema/index.md index 8af8f0990..6e6fd50ae 100644 --- a/docs/schema/index.md +++ b/docs/schema/index.md @@ -1,29 +1,18 @@ --- -title: Overview +title: Schema Reference slug: /schema - -# This page is available at docs.overturemaps.org/schema --- + import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; +import DocCardList from '@theme/DocCardList'; -### Top-level properties + -In the Overture schema, all features have a unique `id` called a [GERS ID](https://docs.overturemaps.org/gers/), a `geometry` object that follows the OGC geometry specification, and other top-level properties. +## Top-level properties -
-**GeoParquet columns for top-level Overture properties** -| column_name | column_type | description | -| --- | --- | --- | -| **id** | *string* | an Overture feature's unique id, part of the Global Entity Reference System (GERS) | -| **geometry** | *binary* | well-known binary (WKB) representation of the feature geometry | -| **bbox** | *struct\* | area defined by two longitudes and two latitudes: latitude is a decimal number between -90.0 and 90.0; longitude is a decimal number between -180.0 and 180.0. | -| **theme** | *string* | one of six Overture data themes | -| **type** | *string* | one of 14 Overture feature types | -| **version** | *int32* | version number of the feature, incremented in each Overture release where the geometry or attributes of this feature changed | -| **sources** | *list\\>\>* | array of source information for the properties of a given feature | -
+In the Overture schema, all features have a unique `id` called a [GERS ID](https://docs.overturemaps.org/gers/), a `geometry` object that follows the OGC geometry specification, and other top-level properties. ### Other key schema properties @@ -47,9 +36,6 @@ Boolean properties have a prefix verb "is" or "has" in a way that grammatically ### Measurements - - Measurements of real-world objects and features follow [The International System of Units (SI)](https://www.bipm.org/en/publications/si-brochure): heights, widths, lengths, etc. In the Overture schema, these values are provided as scalar numeric value without units such as feet or meters. Overture does this to maximize consistency and predictability. Quantities specified in regulatory rules, norms and customs follow local specifications wherever possible. In the schema, these values are provided as two-element arrays where the first element is the scalar numeric value and the second value is the units. Overture uses local units of measurement: feet in the United States and meters in the EU, for example. The exact unit is confirmed in the specification of the property but is not repeated in the data. @@ -61,9 +47,3 @@ All quantities that relate to posted or ordinance regulations and restrictions a ### Opening hours and validity periods Opening hours and the time frame during which time dependent properties are applicable are indicated following the [OSM Opening Hours specification](https://wiki.openstreetmap.org/wiki/Key:opening_hours/specification). - - diff --git a/docusaurus.config.js b/docusaurus.config.js index 0054259f2..8d8751689 100644 --- a/docusaurus.config.js +++ b/docusaurus.config.js @@ -66,9 +66,13 @@ const config = { organizationName: 'OvertureMaps', // Usually your GitHub org/user name. projectName: 'docs', // Usually your repo name. - onBrokenLinks: 'warn', + onBrokenLinks: 'throw', - onBrokenMarkdownLinks: 'warn', + markdown: { + hooks: { + onBrokenMarkdownLinks: 'throw', + }, + }, trailingSlash: true, diff --git a/package.json b/package.json index 316fd3ace..45f37a92f 100644 --- a/package.json +++ b/package.json @@ -14,7 +14,8 @@ "write-heading-ids": "docusaurus write-heading-ids", "lint": "eslint .", "lint:fix": "eslint . --fix", - "lint:md": "markdownlint docs/**/*.md --ignore node_modules", + "lint:md": "markdownlint 'docs/**/*.md' 'docs/**/*.mdx' 'blog/**/*.md' 'blog/**/*.mdx' --ignore node_modules", + "lint:md:fix": "markdownlint 'docs/**/*.md' 'docs/**/*.mdx' 'blog/**/*.md' 'blog/**/*.mdx' --ignore node_modules --fix", "format": "prettier --write .", "format:check": "prettier --check .", "typecheck": "tsc --noEmit" diff --git a/sidebars.js b/sidebars.js index 4f99998a3..91909bc73 100644 --- a/sidebars.js +++ b/sidebars.js @@ -130,6 +130,10 @@ const sidebars = { { type: 'category', label: 'Schema Reference', + link: { + type: 'doc', + id: 'schema/index', + }, collapsed: true, items: [{ type: 'autogenerated', dirName: 'schema/reference' }], }, From 145341203caf307ced96457615e9868a59cf539b Mon Sep 17 00:00:00 2001 From: Dana Bauer Date: Wed, 25 Feb 2026 19:35:17 -0500 Subject: [PATCH 12/12] sidebar and structural changes to support new schema doc work --- docs/examples/index.mdx | 23 ++++++++-- docs/gers/index.mdx | 2 + docs/getting-data/data-mirrors/index.mdx | 24 ++++++++++ docs/getting-data/index.mdx | 1 + docs/guides/addresses/overview.mdx | 8 ++-- docs/guides/base/overview.mdx | 4 +- docs/guides/buildings/overview.mdx | 4 +- docs/guides/divisions/overview.mdx | 3 +- docs/guides/index.mdx | 15 ++++--- docs/guides/places/overview.mdx | 3 ++ docs/guides/places/taxonomy.mdx | 3 ++ docs/guides/transportation/overview.mdx | 3 +- docs/schema/index.md | 56 +++++++++++++----------- sidebars.js | 30 +++++-------- 14 files changed, 116 insertions(+), 63 deletions(-) create mode 100644 docs/getting-data/data-mirrors/index.mdx diff --git a/docs/examples/index.mdx b/docs/examples/index.mdx index b41826e9a..363b5adba 100644 --- a/docs/examples/index.mdx +++ b/docs/examples/index.mdx @@ -1,9 +1,26 @@ --- +id: index +slug: /examples title: Examples +sidebar_label: Overview +description: Overture Maps data examples +pagination_label: Examples --- -Work with Overture data using the tools you know and love. +# Examples -import DocCardList from '@theme/DocCardList'; +Work with Overture Maps data using the tools and platforms you already know. These examples show how to access, query, visualize, and analyze Overture data across a range of environments. - +- **[CARTO](/examples/CARTO)** +- **[Fused](/examples/fused)** +- **[Kepler.gl](/examples/kepler-gl)** +- **[Lonboard](/examples/lonboard)** +- **[Build a Map](/examples/build-a-map)** +- **[Pandas](/examples/pandas)** +- **[Overture Tiles](/examples/overture-tiles)** +- **[QGIS](/examples/QGIS)** +- **[Rapid](/examples/rapid)** +- **[Spark](/examples/spark)** +- **[Wherobots](/examples/wherobots)** + +Have an example you'd like to share? We welcome contributions: [open a pull request](https://github.com/OvertureMaps/docs/pulls) or [start a discussion](https://github.com/OvertureMaps/data/discussions) on GitHub. diff --git a/docs/gers/index.mdx b/docs/gers/index.mdx index a71aabeab..41813f10f 100644 --- a/docs/gers/index.mdx +++ b/docs/gers/index.mdx @@ -1,6 +1,8 @@ --- title: What is GERS? slug: /gers +sidebar_label: Overview +pagination_label: GERS Overview --- import QueryBuilder from '@site/src/components/queryBuilder'; diff --git a/docs/getting-data/data-mirrors/index.mdx b/docs/getting-data/data-mirrors/index.mdx new file mode 100644 index 000000000..9a513a79b --- /dev/null +++ b/docs/getting-data/data-mirrors/index.mdx @@ -0,0 +1,24 @@ +--- +title: Data Mirrors +sidebar_label: Overview +pagination_label: Data Mirrors Overview +--- + +# Data Mirrors + +In addition to the official Overture sources on Amazon S3 and Microsoft Azure Blob Storage, several Overture Maps Foundation members and partners maintain mirrors of the data on cloud platforms. These mirrors let you access Overture data directly in your preferred cloud environment. + +The mirrors are updated with each monthly Overture release, though there may be a slight delay from the official release date. The schema and structure of the data are maintained as close to the original as possible. + +| Platform | Maintained by | Access | +| --- | --- | --- | +| [BigQuery](/getting-data/data-mirrors/bigquery) | CARTO | Google Cloud Public Dataset Program | +| [Databricks](/getting-data/data-mirrors/databricks) | CARTO | Databricks Marketplace | +| [Fused](/getting-data/data-mirrors/fused) | Fused | Source Cooperative via Fused UDFs | +| [Snowflake](/getting-data/data-mirrors/snowflake) | CARTO | Snowflake Data Marketplace | +| [Wherobots](/getting-data/data-mirrors/wherobots) | Wherobots | Wherobots Spatial Catalog | + +:::note +These are community-maintained resources. The official distribution on S3 and Azure remains the source of record. +::: + diff --git a/docs/getting-data/index.mdx b/docs/getting-data/index.mdx index 4e0b5f8af..0ee85a6f2 100644 --- a/docs/getting-data/index.mdx +++ b/docs/getting-data/index.mdx @@ -1,5 +1,6 @@ --- title: Accessing the Data +sidebar_label: Overview --- import QueryBuilder from '@site/src/components/queryBuilder'; diff --git a/docs/guides/addresses/overview.mdx b/docs/guides/addresses/overview.mdx index 4289e4dc0..94e836c97 100644 --- a/docs/guides/addresses/overview.mdx +++ b/docs/guides/addresses/overview.mdx @@ -2,8 +2,10 @@ title: Overview description: A collection of global address points slug: /guides/addresses/ +pagination_label: Addresses Overview --- +# Addresses Guide import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; import QueryBuilder from '@site/src/components/queryBuilder'; @@ -13,9 +15,9 @@ import AddressCounts from '!!raw-loader!@site/src/queries/duckdb/addresses_count import AddressesNZExport from '!!raw-loader!@site/src/queries/duckdb/addresses_nz_export.sql'; import UtahAddresses from '!!raw-loader!@site/src/queries/duckdb/addresses_utah.sql'; -## Overview - -_Note: This theme is currently in Alpha. We invite the Overture community to test the addresses schema and data and offer feedback via the [data](https://github.com/OvertureMaps/data/issues) and [schema](https://github.com/OvertureMaps/schema/issues) repos._ +:::note +This theme is currently in Alpha. We invite the Overture community to test the addresses schema and data and offer feedback via the [data](https://github.com/OvertureMaps/data/issues) and [schema](https://github.com/OvertureMaps/schema/issues) repos. +::: Overture maintains over 446 million address point entities. Data in the address theme is derived from over 175 sources, many distributed by [OpenAddresses](https://openaddresses.io/) and [AddressForAll](https://www.addressforall.org/en/), but also includes open data from the [City of New York](https://data.cityofnewyork.us/City-Government/NYC-Address-Points/g6pj-hd8k), the [U.S. Department of Transportation](https://www.transportation.gov/gis/national-address-database), and various public agencies. diff --git a/docs/guides/base/overview.mdx b/docs/guides/base/overview.mdx index cc6f87e58..323dd4680 100644 --- a/docs/guides/base/overview.mdx +++ b/docs/guides/base/overview.mdx @@ -2,13 +2,15 @@ title: Overview description: Bathymetry, Infrastructure, Land, Landuse, Landcover, and Water features. slug: /guides/base/ +pagination_label: Base Overview --- import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; import QueryBuilder from '@site/src/components/queryBuilder'; -## Overview +# Base Guide + The Overture Maps base theme provides the land, water, infrastructure, and bathymetry features that are necessary to render a complete basemap. The majority of these features come from OpenStreetMap. We classify OSM features into *type*, *subtype*, and *class* based on their tags. The land and ocean polygons are derived from the [Daylight Coastlines](https://daylightmap.org/coastlines.html). The theme includes six feature types: diff --git a/docs/guides/buildings/overview.mdx b/docs/guides/buildings/overview.mdx index 2afdf2f43..2264ddf01 100644 --- a/docs/guides/buildings/overview.mdx +++ b/docs/guides/buildings/overview.mdx @@ -2,14 +2,14 @@ title: Overview description: 2.6 billion buildings and counting slug: /guides/buildings/ +pagination_label: Buildings Overview --- import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; import QueryBuilder from '@site/src/components/queryBuilder'; import ThemedImage from '@theme/ThemedImage'; import useBaseUrl from '@docusaurus/useBaseUrl'; import BuildingsMap from '@site/src/components/buildings-map'; -# Guide to Overture Buildings +# Buildings Guide -## Overview The Overture Maps buildings theme describes human-made structures with roofs or interior spaces that are permanently or semi-permanently in one place (source: [OSM building definition](https://wiki.openstreetmap.org/wiki/Key:building)). Overture's goal is to provide the world's most comprehensive set of building structures compiled from the best available open data sources, covering all the world's buildings. The theme includes two feature types: diff --git a/docs/guides/divisions/overview.mdx b/docs/guides/divisions/overview.mdx index 997181614..27d1f2983 100644 --- a/docs/guides/divisions/overview.mdx +++ b/docs/guides/divisions/overview.mdx @@ -2,6 +2,7 @@ title: Overview description: Global administrative data, from microhoods to countries slug: /guides/divisions/ +pagination_label: Divisions Overview --- import Tabs from '@theme/Tabs'; @@ -21,7 +22,7 @@ import SubTypeCountsUSMXCA from '!!raw-loader!@site/src/queries/duckdb/divisions import DenmarkLocalityNeighborhood from '!!raw-loader!@site/src/queries/duckdb/divisions_denmark_locality_neighborhood.sql'; import PhillyPlaces from '!!raw-loader!@site/src/queries/duckdb/divisions_philly_places.sql'; -## Overview +# Divisions Guide The Overture divisions theme has three feature types: `division`, `division_area`, and `division_boundary`. diff --git a/docs/guides/index.mdx b/docs/guides/index.mdx index 1a66a5e76..2b488f8e4 100644 --- a/docs/guides/index.mdx +++ b/docs/guides/index.mdx @@ -3,17 +3,18 @@ id: index slug: /guides/ title: Guides sidebar_label: Overview -description: Overture Maps data theme documentation +description: Overture Maps guides --- -import DocCardList from '@theme/DocCardList'; import useBaseUrl from '@docusaurus/useBaseUrl'; - - - -## Data Theme Guides +# Guides **View Theme Definitions Table →** - \ No newline at end of file +- **[Addresses](/guides/addresses)** +- **[Base](/guides/base)** +- **[Buildings](/guides/buildings)** +- **[Divisions](/guides/divisions)** +- **[Places](/guides/places)** +- **[Transportation](/guides/transportation)** \ No newline at end of file diff --git a/docs/guides/places/overview.mdx b/docs/guides/places/overview.mdx index 2f7407b8f..79455e69c 100644 --- a/docs/guides/places/overview.mdx +++ b/docs/guides/places/overview.mdx @@ -2,6 +2,7 @@ title: Overview description: Points of interest around the world slug: /guides/places/ +pagination_label: Places Overview --- import Tabs from '@theme/Tabs'; @@ -16,6 +17,8 @@ import ConflateOSMQuery from '!!raw-loader!@site/src/queries/duckdb/places_confl import PlacesInBuildingsQuery from '!!raw-loader!@site/src/queries/duckdb/places_in_buildings.sql'; +# Places Guide + The Overture places theme has one feature type, called `place`, and contains more than 64 million point representations of real-world entities: schools, businesses, hospitals, religious organizations, landmarks, mountain peaks, and much more. | ![Overture places theme coverage](/img/places/places-coverage-h3-feb.png) | diff --git a/docs/guides/places/taxonomy.mdx b/docs/guides/places/taxonomy.mdx index f0c1432ac..21c2d4182 100644 --- a/docs/guides/places/taxonomy.mdx +++ b/docs/guides/places/taxonomy.mdx @@ -1,8 +1,11 @@ --- title: Taxonomy description: How we organize categories of places +pagination_label: Places Taxonomy --- +# Places Taxonomy + Recently, Overture introduced new `basic_category` and `taxonomy` properties for places data. These new properties are designed to better categorize location entities such as businesses, landmarks, and attractions and facilitate search, display, and navigation in map applications. With these changes, Overture is embarking on an iterative process to address known issues with the original `categories` property, including structural inconsistencies, naming ambiguity, and coverage gaps. We are implementing taxonomy design best practices to improve granularity and ease of use. :::tip diff --git a/docs/guides/transportation/overview.mdx b/docs/guides/transportation/overview.mdx index 13831d8a1..bbeb36059 100644 --- a/docs/guides/transportation/overview.mdx +++ b/docs/guides/transportation/overview.mdx @@ -2,6 +2,7 @@ title: Overview description: Global road, rail, and water transportation data slug: /guides/transportation/ +pagination_label: Transportation Overview --- import Tabs from '@theme/Tabs'; @@ -13,7 +14,7 @@ import Routes from '!!raw-loader!@site/src/queries/duckdb/transportation_routes. import SpeedLimits from '!!raw-loader!@site/src/queries/athena/transportation_speed_limits.sql'; import ConnectingSegments from '!!raw-loader!@site/src/queries/athena/transportation_connecting_segments.sql'; -## Overview +# Transportation Guide import DocCardList from '@theme/DocCardList'; diff --git a/docs/schema/index.md b/docs/schema/index.md index 6e6fd50ae..a7270de53 100644 --- a/docs/schema/index.md +++ b/docs/schema/index.md @@ -1,49 +1,55 @@ --- +id: index +slug: /schema/ title: Schema Reference -slug: /schema +sidebar_label: Overview +description: Pydantic schemas for Overture Maps data +pagination_label: Schema Reference --- -import CodeBlock from '@theme/CodeBlock'; -import Tabs from '@theme/Tabs'; -import TabItem from '@theme/TabItem'; -import DocCardList from '@theme/DocCardList'; +# Overture Maps Schema {#top-level-properties} - +:::note +This section has been recently updated to reflect changes in our schema modeling. We welcome your feedback in [GitHub Discussions](https://github.com/OvertureMaps/data/discussions). +::: -## Top-level properties -In the Overture schema, all features have a unique `id` called a [GERS ID](https://docs.overturemaps.org/gers/), a `geometry` object that follows the OGC geometry specification, and other top-level properties. +The Overture Maps schema defines the structure, properties, and constraints for all features across six themes: addresses, base, buildings, divisions, places, and transportation. The reference pages in this section document the theme-based and shared modules in the schema. -### Other key schema properties +The schema is authored as [Pydantic](https://docs.pydantic.dev/) models and the reference documentation is generated from those models. The source code lives in the [OvertureMaps/schema](https://github.com/OvertureMaps/schema) repository on GitHub. -Most but not all of the feature types in the Overture schema require data for the `names`, `subtype`, and `class` properties. The `names` property is complex enough to have its own schema. +## Why Use Pydantic to Define Data Schemas? -### Properties may be specific to a feature type +This project addresses a fundamental challenge in data consumption: bridging the semantic gap between raw data and human understanding while enabling machine-actionable workflows. -Some properties in the Overture schema are only populated with data for specific feature types. For example, the `place` feature type must include data for the `categories` property, as required by the schema. The `division_area` and `address` feature types require the `country` property to be populated with ISO 3166-1 alpha-2 country codes. The `segment` feature type in the transportation theme is the only feature type that includes data for a complex set of properties that describe roads. The reference section of this documentation digs into the details of these complexities. +## Why Schema at All: Beyond Raw Data -## Schema conventions +Take a column like `pop_2020`. Is it total population? Population density per square kilometer? Working-age population? Without a schema, you're left sampling values and guessing from column names. -### Notations +Compare this to OpenStreetMap's approach: features use well-known key/value pairs like `building=residential` or `addr:housenumber=42` that have semantic meaning and can be looked up on the OSM wiki. This creates a step toward a schema — shared vocabulary with documented semantics used across a vast dataset. However, OSM tags remain free-form: multiple valid ways to express the same concept, no built-in validation, and complex downstream validation because of undocumented keys that might have meaning to someone, somewhere. A schema provides the structured alternative: explicit types, clear validation rules, and semantic meaning that both humans and systems can rely on. -#### Snake case +Data files containing only column names and values aren't fully documented. External metadata files typically focus on how data was collected and encoded, not on semantic meaning or validation rules. Data consumers struggle to understand what datasets contain and which columns they need for their goals. -We use snake case instead of camel case for all property names, string enumeration members, and string-valued enumeration equivalents. We do this because of case sensitivity and transformation issues in different databases and query engines. For example, Athena/Trino downcases everything, so text string splits in camel case property names get lost; in contrast, snake case passes through without issues. +## Why Pydantic Over JSON Schema: Solving Multiple Problems -#### Booleans +We initially chose JSON Schema because it aligned with our mental model and promised to solve our problems as we understood them. But JSON Schema surfaced several pain points: -Boolean properties have a prefix verb "is" or "has" in a way that grammatically makes sense, e.g. `has_street_lights=true` and `is_accessible=false`. +- **Authoring difficulty:** Hard to write correctly, difficult to verify, limited IDE support, no refactoring capabilities +- **Tooling gaps:** Generic tools can't tailor output for specific applications like ours +- **Development friction:** Schema changes required manual coordination across multiple artifacts -### Measurements +Pydantic addresses these systematically: author in Python with full IDE support, generate tailored documentation, and automatically produce the specific artifacts each workflow needs. Pydantic can also produce JSON Schema, so any application that requires it can use it while we gain all the Python benefits during authoring. -Measurements of real-world objects and features follow [The International System of Units (SI)](https://www.bipm.org/en/publications/si-brochure): heights, widths, lengths, etc. In the Overture schema, these values are provided as scalar numeric value without units such as feet or meters. Overture does this to maximize consistency and predictability. +## The Result: Faster Understanding, Higher Quality -Quantities specified in regulatory rules, norms and customs follow local specifications wherever possible. In the schema, these values are provided as two-element arrays where the first element is the scalar numeric value and the second value is the units. Overture uses local units of measurement: feet in the United States and meters in the EU, for example. The exact unit is confirmed in the specification of the property but is not repeated in the data. +Instead of spending time deciphering what columns mean and whether data matches expectations, users can focus on their actual goals: analysis, visualization, integration. Quality improves because validation happens automatically rather than through manual inspection. -### Regulations and restrictions +The fundamental approach — human-readable authoring that generates machine-actionable outputs — has broader applications beyond Overture and geospatial data. We hope others will adapt these patterns for linking with Overture data or modeling their own domains entirely. -All quantities that relate to posted or ordinance regulations and restrictions are expressed in the same units as used in the regulation. The unit is explicitly included with the property in the data. +## Schema Modules -### Opening hours and validity periods +Browse the schema reference in the sidebar. Modules are organized by theme and shared components: -Opening hours and the time frame during which time dependent properties are applicable are indicated following the [OSM Opening Hours specification](https://wiki.openstreetmap.org/wiki/Key:opening_hours/specification). +**Themes:** Addresses, Base, Buildings, Divisions, Places, Transportation + +**Shared:** Core (names, sources, cartographic hints), System (country codes, language tags, geometry primitives) \ No newline at end of file diff --git a/sidebars.js b/sidebars.js index 91909bc73..bfb976b36 100644 --- a/sidebars.js +++ b/sidebars.js @@ -5,12 +5,9 @@ const sidebars = { { type: 'category', label: 'Getting Started', - link: { - type: 'doc', - id: 'getting-data/index' - }, collapsed: true, items: [ + 'getting-data/index', 'getting-data/duckdb', 'getting-data/overturemaps-py', 'getting-data/athena-aws', @@ -20,6 +17,7 @@ const sidebars = { label: 'Data Mirrors', collapsed: true, items: [ + 'getting-data/data-mirrors/index', 'getting-data/data-mirrors/bigquery', 'getting-data/data-mirrors/databricks', 'getting-data/data-mirrors/fused', @@ -32,12 +30,9 @@ const sidebars = { { type: 'category', label: 'Examples', - link: { - type: 'doc', - id: 'examples/index', - }, collapsed: true, items: [ + 'examples/index', 'examples/CARTO', 'examples/fused', 'examples/kepler-gl', @@ -53,13 +48,10 @@ const sidebars = { }, { type: 'category', - label: 'Data Guides', - link: { - type: 'doc', - id: 'guides/index', - }, + label: 'Guides', collapsed: true, items: [ + 'guides/index', { type: 'category', label: 'Addresses', @@ -122,7 +114,6 @@ const sidebars = { 'gers/changelog', 'gers/registry', 'gers/gers-tutorial', - 'gers/gers-demonstrations', ], }, 'attribution', @@ -130,13 +121,12 @@ const sidebars = { { type: 'category', label: 'Schema Reference', - link: { - type: 'doc', - id: 'schema/index', - }, collapsed: true, - items: [{ type: 'autogenerated', dirName: 'schema/reference' }], + items: [ + 'schema/index', + { type: 'autogenerated', dirName: 'schema/reference' }, + ], }, ], }; -module.exports = sidebars; +module.exports = sidebars; \ No newline at end of file