@honua/app-platform 0.1.7-beta.0 → 0.1.10-beta.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/control-plane/admin-client.d.ts +89 -0
- package/control-plane/admin-client.d.ts.map +1 -0
- package/control-plane/admin-client.js +200 -0
- package/control-plane/client.d.ts +1 -1
- package/control-plane/client.d.ts.map +1 -1
- package/control-plane/client.js +145 -11
- package/control-plane/commands/catalog.d.ts +133 -0
- package/control-plane/commands/catalog.d.ts.map +1 -0
- package/control-plane/commands/catalog.js +365 -0
- package/control-plane/commands/errors.d.ts +96 -0
- package/control-plane/commands/errors.d.ts.map +1 -0
- package/control-plane/commands/errors.js +130 -0
- package/control-plane/commands/identity.d.ts +71 -0
- package/control-plane/commands/identity.d.ts.map +1 -0
- package/control-plane/commands/identity.js +0 -0
- package/control-plane/commands/index.d.ts +39 -0
- package/control-plane/commands/index.d.ts.map +1 -0
- package/control-plane/commands/index.js +34 -0
- package/control-plane/commands/runtime.d.ts +146 -0
- package/control-plane/commands/runtime.d.ts.map +1 -0
- package/control-plane/commands/runtime.js +330 -0
- package/control-plane/commands/types.d.ts +228 -0
- package/control-plane/commands/types.d.ts.map +1 -0
- package/control-plane/commands/types.js +30 -0
- package/control-plane/commands/validate.d.ts +27 -0
- package/control-plane/commands/validate.d.ts.map +1 -0
- package/control-plane/commands/validate.js +132 -0
- package/control-plane/generated/admin-api.d.ts +30265 -0
- package/control-plane/generated/admin-api.d.ts.map +1 -0
- package/control-plane/generated/admin-api.js +5 -0
- package/control-plane/generated/admin-operations.d.ts +4053 -0
- package/control-plane/generated/admin-operations.d.ts.map +1 -0
- package/control-plane/generated/admin-operations.js +820 -0
- package/control-plane/index.d.ts +11 -0
- package/control-plane/index.d.ts.map +1 -1
- package/control-plane/index.js +8 -0
- package/control-plane/types.d.ts +14 -0
- package/control-plane/types.d.ts.map +1 -1
- package/controls/catalog.d.ts.map +1 -1
- package/controls/catalog.js +12 -1
- package/controls/qualification.d.ts.map +1 -1
- package/controls/qualification.js +71 -8
- package/core/client.d.ts.map +1 -1
- package/core/client.js +29 -31
- package/core/credential-redaction.d.ts +163 -0
- package/core/credential-redaction.d.ts.map +1 -0
- package/core/credential-redaction.js +389 -0
- package/core/error-classifications.d.ts +15 -0
- package/core/error-classifications.d.ts.map +1 -1
- package/core/error-classifications.js +15 -0
- package/core/error-code-registry.d.ts +15 -0
- package/core/error-code-registry.d.ts.map +1 -1
- package/core/error-code-registry.js +15 -0
- package/core/error-envelope.d.ts +31 -0
- package/core/error-envelope.d.ts.map +1 -1
- package/core/error-envelope.js +11 -0
- package/core/errors.d.ts +15 -3
- package/core/errors.d.ts.map +1 -1
- package/core/errors.js +254 -2
- package/core/geometry-input-sr.d.ts +3 -0
- package/core/geometry-input-sr.d.ts.map +1 -0
- package/core/geometry-input-sr.js +28 -0
- package/core/geoservices.d.ts.map +1 -1
- package/core/geoservices.js +33 -6
- package/core/grpc-adapter.d.ts +2 -2
- package/core/grpc-adapter.d.ts.map +1 -1
- package/core/grpc-adapter.js +41 -9
- package/core/job-run-errors.d.ts +10 -0
- package/core/job-run-errors.d.ts.map +1 -0
- package/core/job-run-errors.js +14 -0
- package/core/job-run-lifecycle.d.ts +34 -0
- package/core/job-run-lifecycle.d.ts.map +1 -0
- package/core/job-run-lifecycle.js +193 -0
- package/core/ogc-processes.d.ts +38 -31
- package/core/ogc-processes.d.ts.map +1 -1
- package/core/ogc-processes.js +123 -173
- package/core/pbf-decoder.d.ts.map +1 -1
- package/core/pbf-decoder.js +16 -4
- package/core/process-runner.js +15 -100
- package/core/protocol-transport.d.ts +6 -1
- package/core/protocol-transport.d.ts.map +1 -1
- package/core/request-pipeline.d.ts +6 -3
- package/core/request-pipeline.d.ts.map +1 -1
- package/core/request-pipeline.js +28 -11
- package/core/spatial-filter.d.ts +4 -4
- package/core/spatial-filter.d.ts.map +1 -1
- package/core/spatial-filter.js +7 -7
- package/core/surfaces.d.ts +2 -8
- package/core/surfaces.d.ts.map +1 -1
- package/core/surfaces.js +21 -112
- package/core/types.d.ts +21 -9
- package/core/types.d.ts.map +1 -1
- package/custom-elements.json +341 -0
- package/esri-compat/class-breaks-renderer.d.ts +2 -0
- package/esri-compat/class-breaks-renderer.d.ts.map +1 -1
- package/esri-compat/class-breaks-renderer.js +7 -0
- package/esri-compat/controls.d.ts +10 -1
- package/esri-compat/controls.d.ts.map +1 -1
- package/esri-compat/controls.js +86 -2
- package/esri-compat/directions.d.ts +35 -0
- package/esri-compat/directions.d.ts.map +1 -1
- package/esri-compat/directions.js +153 -2
- package/esri-compat/expand.d.ts +1 -0
- package/esri-compat/expand.d.ts.map +1 -1
- package/esri-compat/expand.js +61 -0
- package/esri-compat/feature-layer.d.ts +29 -4
- package/esri-compat/feature-layer.d.ts.map +1 -1
- package/esri-compat/feature-layer.js +335 -13
- package/esri-compat/geometry-engine.d.ts +4 -0
- package/esri-compat/geometry-engine.d.ts.map +1 -1
- package/esri-compat/geometry-engine.js +8 -1
- package/esri-compat/graphic.d.ts +7 -4
- package/esri-compat/graphic.d.ts.map +1 -1
- package/esri-compat/legend.d.ts +2 -1
- package/esri-compat/legend.d.ts.map +1 -1
- package/esri-compat/legend.js +15 -0
- package/esri-compat/map-view-mount.d.ts +48 -0
- package/esri-compat/map-view-mount.d.ts.map +1 -0
- package/esri-compat/map-view-mount.js +344 -0
- package/esri-compat/map-view.d.ts +38 -6
- package/esri-compat/map-view.d.ts.map +1 -1
- package/esri-compat/map-view.js +467 -33
- package/esri-compat/portal.d.ts +2 -0
- package/esri-compat/portal.d.ts.map +1 -1
- package/esri-compat/portal.js +7 -2
- package/esri-compat/renderer-objects.d.ts +7 -2
- package/esri-compat/renderer-objects.d.ts.map +1 -1
- package/esri-compat/renderer-objects.js +16 -5
- package/esri-compat/route-layer.d.ts +8 -0
- package/esri-compat/route-layer.d.ts.map +1 -1
- package/esri-compat/route-layer.js +24 -4
- package/esri-compat/route-task.d.ts +5 -1
- package/esri-compat/route-task.d.ts.map +1 -1
- package/esri-compat/route-task.js +119 -7
- package/esri-compat/scene-view.d.ts.map +1 -1
- package/esri-compat/scene-view.js +1 -0
- package/esri-compat/search.d.ts +2 -1
- package/esri-compat/search.d.ts.map +1 -1
- package/esri-compat/search.js +52 -2
- package/esri-compat/unique-value-renderer.d.ts +2 -0
- package/esri-compat/unique-value-renderer.d.ts.map +1 -1
- package/esri-compat/unique-value-renderer.js +7 -0
- package/esri-compat/web-map.d.ts +10 -0
- package/esri-compat/web-map.d.ts.map +1 -1
- package/esri-compat/web-map.js +102 -0
- package/gen/geospatial/v1/common_pb.d.ts +514 -0
- package/gen/geospatial/v1/common_pb.d.ts.map +1 -0
- package/gen/geospatial/v1/common_pb.js +335 -0
- package/gen/geospatial/v1/execution_types_pb.d.ts +1186 -0
- package/gen/geospatial/v1/execution_types_pb.d.ts.map +1 -0
- package/gen/geospatial/v1/execution_types_pb.js +396 -0
- package/gen/geospatial/v1/feature_service_pb.d.ts +403 -0
- package/gen/geospatial/v1/feature_service_pb.d.ts.map +1 -0
- package/gen/geospatial/v1/feature_service_pb.js +47 -0
- package/gen/geospatial/v1/index.d.ts +5 -0
- package/gen/geospatial/v1/index.d.ts.map +1 -0
- package/gen/geospatial/v1/index.js +9 -0
- package/gen/geospatial/v1/spatial_types_pb.d.ts +285 -0
- package/gen/geospatial/v1/spatial_types_pb.d.ts.map +1 -0
- package/gen/geospatial/v1/spatial_types_pb.js +58 -0
- package/gen/geospatial/v1/workspace_artifact_types_pb.d.ts +379 -0
- package/gen/geospatial/v1/workspace_artifact_types_pb.d.ts.map +1 -0
- package/gen/geospatial/v1/workspace_artifact_types_pb.js +151 -0
- package/generated-app/projection.d.ts.map +1 -1
- package/generated-app/projection.js +10 -1
- package/geocoding/index.d.ts +1 -0
- package/geocoding/index.d.ts.map +1 -1
- package/geocoding/index.js +18 -8
- package/geocoding/provider-http.d.ts.map +1 -1
- package/geocoding/provider-http.js +3 -1
- package/map/webmap-maplibre.d.ts +2 -1
- package/map/webmap-maplibre.d.ts.map +1 -1
- package/map/webmap-maplibre.js +3 -0
- package/operate/client.d.ts +11 -1
- package/operate/client.d.ts.map +1 -1
- package/operate/client.js +39 -2
- package/operate/index.d.ts +1 -1
- package/operate/index.d.ts.map +1 -1
- package/operate/types.d.ts +40 -6
- package/operate/types.d.ts.map +1 -1
- package/package.json +6 -4
- package/query-planner/geoservices.d.ts.map +1 -1
- package/query-planner/geoservices.js +2 -0
- package/query-planner/grpc.d.ts +4 -4
- package/query-planner/grpc.d.ts.map +1 -1
- package/query-planner/grpc.js +11 -11
- package/query-planner/types.d.ts +6 -4
- package/query-planner/types.d.ts.map +1 -1
- package/realtime/honua-server.d.ts +4 -0
- package/realtime/honua-server.d.ts.map +1 -1
- package/realtime/honua-server.js +10 -0
- package/realtime/resumable.js +9 -0
- package/realtime/types.d.ts +8 -0
- package/realtime/types.d.ts.map +1 -1
- package/runtime/errors.d.ts +1 -1
- package/runtime/errors.d.ts.map +1 -1
- package/runtime/errors.js +2 -0
- package/runtime/generated/map-package-schema-meta.d.ts +11 -0
- package/runtime/generated/map-package-schema-meta.d.ts.map +1 -0
- package/runtime/generated/map-package-schema-meta.js +12 -0
- package/runtime/generated/map-package-schema-validator.d.ts +16 -0
- package/runtime/generated/map-package-schema-validator.d.ts.map +1 -0
- package/runtime/generated/map-package-schema-validator.js +1422 -0
- package/runtime/index.d.ts +5 -1
- package/runtime/index.d.ts.map +1 -1
- package/runtime/index.js +6 -0
- package/runtime/map-package-export.d.ts +151 -0
- package/runtime/map-package-export.d.ts.map +1 -0
- package/runtime/map-package-export.js +636 -0
- package/runtime/map-package-validation.d.ts +21 -1
- package/runtime/map-package-validation.d.ts.map +1 -1
- package/runtime/map-package-validation.js +132 -95
- package/runtime/map-package.d.ts +80 -0
- package/runtime/map-package.d.ts.map +1 -1
- package/scene-workspace/cesium-adapter.d.ts +8 -8
- package/scene-workspace/cesium-adapter.d.ts.map +1 -1
- package/scene-workspace/cesium-adapter.js +31 -18
- package/scene-workspace/index.d.ts +2 -2
- package/scene-workspace/index.d.ts.map +1 -1
- package/scene-workspace/index.js +1 -1
- package/scene-workspace/maplibre-state-sync.d.ts.map +1 -1
- package/scene-workspace/maplibre-state-sync.js +35 -3
- package/scene-workspace/primitives.d.ts +37 -5
- package/scene-workspace/primitives.d.ts.map +1 -1
- package/scene-workspace/primitives.js +55 -18
- package/scene-workspace/source-to-cesium.js +1 -1
- package/scene-workspace/state-sync-port-kit.d.ts +1 -1
- package/scene-workspace/state-sync-port-kit.d.ts.map +1 -1
- package/studio/capability-manifest.d.ts +10 -0
- package/studio/capability-manifest.d.ts.map +1 -1
- package/studio/capability-manifest.js +38 -0
- package/studio/chart-spec.d.ts +6 -6
- package/studio/chart-spec.d.ts.map +1 -1
- package/studio/chart-spec.js +6 -6
- package/studio/command-adapter.d.ts +35 -0
- package/studio/command-adapter.d.ts.map +1 -0
- package/studio/command-adapter.js +36 -0
- package/studio/generated/studio-api.d.ts +1062 -0
- package/studio/generated/studio-api.d.ts.map +1 -0
- package/studio/generated/studio-api.js +4 -0
- package/studio/index.d.ts +25 -13
- package/studio/index.d.ts.map +1 -1
- package/studio/index.js +21 -10
- package/studio/lifecycle-client.d.ts +262 -22
- package/studio/lifecycle-client.d.ts.map +1 -1
- package/studio/lifecycle-client.js +543 -24
- package/studio/lifecycle-errors.d.ts +8 -2
- package/studio/lifecycle-errors.d.ts.map +1 -1
- package/studio/lifecycle-errors.js +6 -1
- package/studio/lifecycle-types.d.ts +237 -38
- package/studio/lifecycle-types.d.ts.map +1 -1
- package/studio/lifecycle-types.js +5 -12
- package/studio/publication-status.d.ts +55 -0
- package/studio/publication-status.d.ts.map +1 -0
- package/studio/publication-status.js +103 -0
- package/studio/types.d.ts +37 -7
- package/studio/types.d.ts.map +1 -1
- package/studio/types.js +5 -3
- package/studio/validate.d.ts.map +1 -1
- package/studio/validate.js +104 -7
- package/style/renderers.d.ts +6 -1
- package/style/renderers.d.ts.map +1 -1
- package/style/renderers.js +11 -6
- package/style/visual-variables.d.ts +43 -0
- package/style/visual-variables.d.ts.map +1 -0
- package/style/visual-variables.js +183 -0
- package/web-components/application-context.d.ts +186 -0
- package/web-components/application-context.d.ts.map +1 -0
- package/web-components/application-context.js +429 -0
- package/web-components/elements.d.ts +10 -1
- package/web-components/elements.d.ts.map +1 -1
- package/web-components/elements.js +187 -7
- package/web-components/export-redaction.d.ts +11 -102
- package/web-components/export-redaction.d.ts.map +1 -1
- package/web-components/export-redaction.js +7 -260
- package/web-components/feature-editor-offline.d.ts +32 -0
- package/web-components/feature-editor-offline.d.ts.map +1 -0
- package/web-components/feature-editor-offline.js +115 -0
- package/web-components/feature-editor-workflow.d.ts +85 -22
- package/web-components/feature-editor-workflow.d.ts.map +1 -1
- package/web-components/feature-editor-workflow.js +240 -0
- package/web-components/feature-editor.d.ts +20 -6
- package/web-components/feature-editor.d.ts.map +1 -1
- package/web-components/feature-editor.js +159 -7
- package/web-components/feature-inspection.d.ts +287 -0
- package/web-components/feature-inspection.d.ts.map +1 -0
- package/web-components/feature-inspection.js +1464 -0
- package/web-components/feature-mutation.d.ts +77 -0
- package/web-components/feature-mutation.d.ts.map +1 -0
- package/web-components/feature-mutation.js +137 -0
- package/web-components/feature-table-engine.d.ts +94 -4
- package/web-components/feature-table-engine.d.ts.map +1 -1
- package/web-components/feature-table-engine.js +365 -18
- package/web-components/feature-table-view.d.ts +35 -1
- package/web-components/feature-table-view.d.ts.map +1 -1
- package/web-components/feature-table-view.js +128 -12
- package/web-components/index.d.ts +16 -7
- package/web-components/index.d.ts.map +1 -1
- package/web-components/index.js +9 -2
- package/web-components/map-pointer-claim.d.ts +24 -0
- package/web-components/map-pointer-claim.d.ts.map +1 -0
- package/web-components/map-pointer-claim.js +40 -0
- package/web-components/maplibre-renderer.d.ts.map +1 -1
- package/web-components/maplibre-renderer.js +5 -1
- package/web-components/measurement-units.d.ts +88 -0
- package/web-components/measurement-units.d.ts.map +1 -0
- package/web-components/measurement-units.js +278 -0
- package/web-components/measurement.d.ts +75 -4
- package/web-components/measurement.d.ts.map +1 -1
- package/web-components/measurement.js +227 -28
- package/web-components/types.d.ts +58 -3
- package/web-components/types.d.ts.map +1 -1
- package/webmap/convert-layer.d.ts +2 -1
- package/webmap/convert-layer.d.ts.map +1 -1
- package/webmap/convert-layer.js +20 -3
- package/webmap/convert-renderer.d.ts +10 -3
- package/webmap/convert-renderer.d.ts.map +1 -1
- package/webmap/convert-renderer.js +190 -36
- package/webmap/index.d.ts +1 -0
- package/webmap/index.d.ts.map +1 -1
- package/webmap/parse.d.ts +2 -1
- package/webmap/parse.d.ts.map +1 -1
- package/webmap/parse.js +1 -1
- package/gen/honua/v1/feature_service_pb.d.ts +0 -918
- package/gen/honua/v1/feature_service_pb.d.ts.map +0 -1
- package/gen/honua/v1/feature_service_pb.js +0 -375
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"feature-table-view.d.ts","sourceRoot":"","sources":["../../../src/web-components/feature-table-view.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EACL,KAAK,yBAAyB,EAC9B,KAAK,sBAAsB,EAC3B,KAAK,sBAAsB,EAC3B,KAAK,0BAA0B,EAC/B,KAAK,+BAA+B,EAEpC,KAAK,yBAAyB,EAC9B,KAAK,sBAAsB,EAC3B,KAAK,uBAAuB,EAK7B,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EAAwB,sBAAsB,EAAE,MAAM,YAAY,CAAC;AAE/E,uFAAuF;AACvF,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,yDAAyD;IACzD,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;CAC/B;AAED,sEAAsE;AACtE,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,sBAAsB,CAAC;IACvC,QAAQ,CAAC,OAAO,EAAE,SAAS,+BAA+B,EAAE,CAAC;IAC7D,QAAQ,CAAC,IAAI,EAAE,SAAS,wBAAwB,EAAE,CAAC;IACnD,QAAQ,CAAC,MAAM,EAAE,uBAAuB,CAAC;IACzC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,IAAI,EAAE,SAAS,QAAQ,EAAE,CAAC;IACnC,QAAQ,CAAC,KAAK,CAAC,EAAE,sBAAsB,CAAC;IACxC,QAAQ,CAAC,SAAS,EAAE,SAAS,yBAAyB,EAAE,CAAC;IACzD,mEAAmE;IACnE,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"feature-table-view.d.ts","sourceRoot":"","sources":["../../../src/web-components/feature-table-view.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,6 +16,8 @@
|
|
|
16
16
|
* @module
|
|
17
17
|
*/
|
|
18
18
|
import { describeFeatureTableCount, featureTableAriaRowCount, featureTableAriaSort, formatFeatureTableCell, } from "./feature-table-engine.js";
|
|
19
|
+
const EMPTY_RESOLVED_COLUMNS = Object.freeze([]);
|
|
20
|
+
const COLUMNS_HIDDEN_LABEL = "No visible columns — choose at least one column to show.";
|
|
19
21
|
/** Human/screen-reader summary of the table's lifecycle state. */
|
|
20
22
|
export function describeFeatureTableState(state, count, message, messages) {
|
|
21
23
|
if (messages?.state)
|
|
@@ -45,12 +47,30 @@ export function describeFeatureTableState(state, count, message, messages) {
|
|
|
45
47
|
}
|
|
46
48
|
/** Project an engine snapshot onto the renderer's view model. */
|
|
47
49
|
export function featureTableViewModel(snapshot, options = {}) {
|
|
48
|
-
|
|
50
|
+
// An empty `renderedColumns` has two unrelated causes. A horizontal window
|
|
51
|
+
// that landed outside the visible set is a virtualization artifact, and
|
|
52
|
+
// falling back to the first declared column keeps the grid readable. Every
|
|
53
|
+
// column unchecked is a deliberate choice, and rendering column 0 anyway
|
|
54
|
+
// contradicted the checkbox that reported it hidden -- the values stayed on
|
|
55
|
+
// screen while `totalColumnCount` said zero. That case gets a real
|
|
56
|
+
// no-column state instead.
|
|
57
|
+
const columnsHidden = snapshot.columns.length > 0 && snapshot.visibleColumns.length === 0;
|
|
58
|
+
const columns = columnsHidden
|
|
59
|
+
? EMPTY_RESOLVED_COLUMNS
|
|
60
|
+
: snapshot.renderedColumns.length > 0
|
|
61
|
+
? snapshot.renderedColumns
|
|
62
|
+
: snapshot.columns.slice(0, 1);
|
|
49
63
|
const rows = snapshot.rows.map((row, offset) => row ? viewRow(row, columns, snapshot.selection) : placeholderRow(snapshot.window.startIndex + offset, columns));
|
|
50
64
|
return Object.freeze({
|
|
51
65
|
label: options.label ?? options.messages?.label ?? "Features",
|
|
52
66
|
state: snapshot.state,
|
|
53
67
|
columns,
|
|
68
|
+
totalColumnCount: snapshot.visibleColumns.length,
|
|
69
|
+
columnWindow: snapshot.columnWindow,
|
|
70
|
+
columnWidth: options.columnWidth ?? 160,
|
|
71
|
+
columnControls: Object.freeze(snapshot.columns
|
|
72
|
+
.slice(0, snapshot.budgets.maxFields)
|
|
73
|
+
.map((column) => ({ field: column.field, label: column.label, visible: column.visible }))),
|
|
54
74
|
rows: Object.freeze(rows),
|
|
55
75
|
window: snapshot.window,
|
|
56
76
|
ariaRowCount: featureTableAriaRowCount(snapshot.count),
|
|
@@ -59,8 +79,11 @@ export function featureTableViewModel(snapshot, options = {}) {
|
|
|
59
79
|
sort: snapshot.sort,
|
|
60
80
|
...(snapshot.focus ? { focus: snapshot.focus } : {}),
|
|
61
81
|
conflicts: snapshot.conflicts,
|
|
82
|
+
workBadges: featureTableWorkBadges(snapshot.evidence),
|
|
62
83
|
rowHeight: options.rowHeight ?? 32,
|
|
63
84
|
busy: snapshot.state === "loading",
|
|
85
|
+
columnsHidden,
|
|
86
|
+
...(columnsHidden ? { columnsHiddenLabel: options.messages?.columnsHidden ?? COLUMNS_HIDDEN_LABEL } : {}),
|
|
64
87
|
});
|
|
65
88
|
}
|
|
66
89
|
/**
|
|
@@ -90,6 +113,10 @@ export function legacyFeatureTableViewModel(model, options = {}) {
|
|
|
90
113
|
label: options.label ?? options.messages?.label ?? "Features",
|
|
91
114
|
state,
|
|
92
115
|
columns,
|
|
116
|
+
totalColumnCount: columns.length,
|
|
117
|
+
columnWindow: Object.freeze({ startIndex: 0, endIndex: columns.length }),
|
|
118
|
+
columnWidth: 160,
|
|
119
|
+
columnControls: Object.freeze([]),
|
|
93
120
|
rows: Object.freeze(rows),
|
|
94
121
|
window: Object.freeze({ startIndex: 0, endIndex: rows.length }),
|
|
95
122
|
ariaRowCount: featureTableAriaRowCount(count),
|
|
@@ -97,10 +124,39 @@ export function legacyFeatureTableViewModel(model, options = {}) {
|
|
|
97
124
|
statusLabel: describeFeatureTableState(state, count, undefined, options.messages),
|
|
98
125
|
sort: Object.freeze([]),
|
|
99
126
|
conflicts: Object.freeze([]),
|
|
127
|
+
workBadges: Object.freeze([]),
|
|
100
128
|
rowHeight: options.rowHeight ?? 32,
|
|
101
129
|
busy: model.status === "loading",
|
|
130
|
+
// The legacy single-page model has no column controls, so there is no way
|
|
131
|
+
// to hide every column from it.
|
|
132
|
+
columnsHidden: false,
|
|
102
133
|
});
|
|
103
134
|
}
|
|
135
|
+
/**
|
|
136
|
+
* Collapse accepted-plan work into compact, accessible execution diagnostics.
|
|
137
|
+
* The labels never infer pushdown: a tier appears only when the engine's
|
|
138
|
+
* evidence names work that actually ran there.
|
|
139
|
+
*/
|
|
140
|
+
export function featureTableWorkBadges(evidence) {
|
|
141
|
+
const badges = [];
|
|
142
|
+
for (const tier of ["server", "worker", "client"]) {
|
|
143
|
+
// Remote execution is a user-facing claim, so expose it only when an
|
|
144
|
+
// accepted plan identifies itself. Without a plan the query still runs,
|
|
145
|
+
// but the grid has no evidence to distinguish server pushdown from an
|
|
146
|
+
// adapter fallback and must not guess.
|
|
147
|
+
if (tier === "server" && evidence.planId === undefined)
|
|
148
|
+
continue;
|
|
149
|
+
const work = evidence.work.filter((item) => item.tier === tier);
|
|
150
|
+
if (work.length === 0)
|
|
151
|
+
continue;
|
|
152
|
+
badges.push(Object.freeze({
|
|
153
|
+
tier,
|
|
154
|
+
label: `${tier[0]?.toUpperCase()}${tier.slice(1)} · ${work.length}`,
|
|
155
|
+
detail: work.map((item) => `${item.concern}: ${item.detail}`).join("; "),
|
|
156
|
+
}));
|
|
157
|
+
}
|
|
158
|
+
return Object.freeze(badges);
|
|
159
|
+
}
|
|
104
160
|
function legacyState(status, partial) {
|
|
105
161
|
if (status === "error")
|
|
106
162
|
return "error";
|
|
@@ -173,7 +229,9 @@ export function featureTableFocusMoveForKey(key, modifiers = {}) {
|
|
|
173
229
|
* height still reflects the known total (REQ-002).
|
|
174
230
|
*/
|
|
175
231
|
export function featureTableGridHtml(model) {
|
|
176
|
-
const columnCount = Math.max(1, model.
|
|
232
|
+
const columnCount = Math.max(1, model.totalColumnCount);
|
|
233
|
+
const leadingColumns = model.columnWindow.startIndex * model.columnWidth;
|
|
234
|
+
const trailingColumns = Math.max(0, model.totalColumnCount - model.columnWindow.endIndex) * model.columnWidth;
|
|
177
235
|
const leading = model.window.startIndex * model.rowHeight;
|
|
178
236
|
const knownRows = model.ariaRowCount > 0 ? model.ariaRowCount - 1 : model.window.endIndex;
|
|
179
237
|
const trailing = Math.max(0, (knownRows - model.window.endIndex) * model.rowHeight);
|
|
@@ -184,12 +242,31 @@ export function featureTableGridHtml(model) {
|
|
|
184
242
|
<style>
|
|
185
243
|
[data-leading] { height: ${leading}px; }
|
|
186
244
|
[data-trailing] { height: ${trailing}px; }
|
|
245
|
+
[data-column-leading] { min-width: ${leadingColumns}px; width: ${leadingColumns}px; }
|
|
246
|
+
[data-column-trailing] { min-width: ${trailingColumns}px; width: ${trailingColumns}px; }
|
|
247
|
+
[data-grid] { --honua-ft-column-width: ${model.columnWidth}px; }
|
|
187
248
|
</style>
|
|
188
249
|
<section class="table-panel" part="panel">
|
|
189
250
|
<div class="table-panel__bar">
|
|
190
251
|
<h2 id="honua-ft-label">${escapeHtml(model.label)}</h2>
|
|
191
252
|
<span class="count" data-count>${escapeHtml(model.countLabel)}</span>
|
|
192
253
|
</div>
|
|
254
|
+
${model.workBadges.length > 0
|
|
255
|
+
? `<ul class="work-badges" aria-label="Query execution" data-work-badges>${model.workBadges
|
|
256
|
+
.map((badge) => `<li data-work-tier="${badge.tier}" aria-label="${escapeAttribute(`${badge.label}: ${badge.detail}`)}" title="${escapeAttribute(badge.detail)}">${escapeHtml(badge.label)}</li>`)
|
|
257
|
+
.join("")}</ul>`
|
|
258
|
+
: ""}
|
|
259
|
+
${model.columnControls.length > 0
|
|
260
|
+
? `<details class="column-controls" data-column-controls>
|
|
261
|
+
<summary>Columns</summary>
|
|
262
|
+
<fieldset>
|
|
263
|
+
<legend class="visually-hidden">Visible columns</legend>
|
|
264
|
+
${model.columnControls
|
|
265
|
+
.map((column) => `<label><input type="checkbox" data-column-field="${escapeAttribute(column.field)}" ${column.visible ? "checked" : ""}> ${escapeHtml(column.label)}</label>`)
|
|
266
|
+
.join("")}
|
|
267
|
+
</fieldset>
|
|
268
|
+
</details>`
|
|
269
|
+
: ""}
|
|
193
270
|
<p class="status" data-status role="status" aria-live="polite">${escapeHtml(statusText(model))}</p>
|
|
194
271
|
<div class="table-wrap" data-scroller>
|
|
195
272
|
<div class="spacer" data-leading></div>
|
|
@@ -203,12 +280,16 @@ export function featureTableGridHtml(model) {
|
|
|
203
280
|
>
|
|
204
281
|
<thead>
|
|
205
282
|
<tr role="row" aria-rowindex="1">
|
|
283
|
+
${leadingColumns > 0 && !model.columnsHidden ? '<th role="presentation" aria-hidden="true" data-column-leading></th>' : ""}
|
|
284
|
+
${model.columnsHidden
|
|
285
|
+
? `<th role="columnheader" scope="col" aria-colindex="1" data-columns-hidden>${escapeHtml(columnsHiddenText(model))}</th>`
|
|
286
|
+
: ""}
|
|
206
287
|
${model.columns
|
|
207
288
|
.map((column, index) => `
|
|
208
289
|
<th
|
|
209
290
|
role="columnheader"
|
|
210
291
|
scope="col"
|
|
211
|
-
aria-colindex="${index + 1}"
|
|
292
|
+
aria-colindex="${model.columnWindow.startIndex + index + 1}"
|
|
212
293
|
aria-sort="${featureTableAriaSort(column.field, model.sort)}"
|
|
213
294
|
data-field="${escapeAttribute(column.field)}"
|
|
214
295
|
>
|
|
@@ -217,14 +298,20 @@ export function featureTableGridHtml(model) {
|
|
|
217
298
|
: escapeHtml(column.label)}
|
|
218
299
|
</th>`)
|
|
219
300
|
.join("")}
|
|
301
|
+
${trailingColumns > 0 && !model.columnsHidden ? '<th role="presentation" aria-hidden="true" data-column-trailing></th>' : ""}
|
|
220
302
|
</tr>
|
|
221
303
|
</thead>
|
|
222
304
|
<tbody>
|
|
223
|
-
${
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
305
|
+
${
|
|
306
|
+
// Rows without columns have no cells to render, so a hidden-all
|
|
307
|
+
// grid states why it is empty rather than emitting cell-less rows.
|
|
308
|
+
model.columnsHidden
|
|
309
|
+
? `<tr role="row"><td role="gridcell" colspan="${columnCount}" class="empty">${escapeHtml(columnsHiddenText(model))}</td></tr>`
|
|
310
|
+
: model.rows.length === 0
|
|
311
|
+
? `<tr role="row"><td role="gridcell" colspan="${columnCount}" class="empty">${escapeHtml(model.statusLabel)}</td></tr>`
|
|
312
|
+
: model.rows
|
|
313
|
+
.map((row, rowOffset) => bodyRowHtml(row, rowOffset, model, focusedRow, focusedField, hasFocus))
|
|
314
|
+
.join("")}
|
|
228
315
|
</tbody>
|
|
229
316
|
</table>
|
|
230
317
|
<div class="spacer" data-trailing></div>
|
|
@@ -252,6 +339,7 @@ function bodyRowHtml(row, rowOffset, model, focusedRow, focusedField, hasFocus)
|
|
|
252
339
|
${row.placeholder ? "" : `data-source-id="${escapeAttribute(row.sourceId)}"`}
|
|
253
340
|
${row.placeholder ? "" : `data-feature-id="${escapeAttribute(row.featureId)}"`}
|
|
254
341
|
>
|
|
342
|
+
${model.columnWindow.startIndex > 0 ? '<td role="presentation" aria-hidden="true" data-column-leading></td>' : ""}
|
|
255
343
|
${row.cells
|
|
256
344
|
.map((cell, cellIndex) => {
|
|
257
345
|
const column = model.columns[cellIndex];
|
|
@@ -265,19 +353,24 @@ function bodyRowHtml(row, rowOffset, model, focusedRow, focusedField, hasFocus)
|
|
|
265
353
|
// the exact cell that had it.
|
|
266
354
|
return `<td
|
|
267
355
|
role="gridcell"
|
|
268
|
-
aria-colindex="${cellIndex + 1}"
|
|
356
|
+
aria-colindex="${model.columnWindow.startIndex + cellIndex + 1}"
|
|
269
357
|
tabindex="${roving ? "0" : "-1"}"
|
|
270
358
|
data-cell-key="${escapeAttribute(`${row.key}::${field}`)}"
|
|
271
359
|
data-field="${escapeAttribute(field)}"
|
|
272
360
|
>${escapeHtml(cell)}</td>`;
|
|
273
361
|
})
|
|
274
362
|
.join("")}
|
|
363
|
+
${model.columnWindow.endIndex < model.totalColumnCount ? '<td role="presentation" aria-hidden="true" data-column-trailing></td>' : ""}
|
|
275
364
|
</tr>`;
|
|
276
365
|
}
|
|
366
|
+
function columnsHiddenText(model) {
|
|
367
|
+
return model.columnsHiddenLabel ?? COLUMNS_HIDDEN_LABEL;
|
|
368
|
+
}
|
|
277
369
|
function statusText(model) {
|
|
370
|
+
const base = model.columnsHidden ? `${model.statusLabel}. ${columnsHiddenText(model)}` : model.statusLabel;
|
|
278
371
|
if (model.conflicts.length === 0)
|
|
279
|
-
return
|
|
280
|
-
return `${
|
|
372
|
+
return base;
|
|
373
|
+
return `${base}. ${model.conflicts.map((conflict) => conflict.message).join(" ")}`;
|
|
281
374
|
}
|
|
282
375
|
/** Grid styles layered on top of the kit's shared `tableStyles()`. */
|
|
283
376
|
export function featureTableGridStyles() {
|
|
@@ -286,8 +379,31 @@ export function featureTableGridStyles() {
|
|
|
286
379
|
.table-panel__bar { gap: 8px; min-width: 0; }
|
|
287
380
|
.table-panel__bar h2 { min-width: 0; overflow-wrap: anywhere; }
|
|
288
381
|
.table-wrap { max-width: 100%; overflow-x: auto; overflow-y: auto; }
|
|
289
|
-
.table-wrap table { min-width: 100%; width:
|
|
382
|
+
.table-wrap table { min-width: 100%; width: max-content; }
|
|
383
|
+
[role="columnheader"]:not([role="presentation"]), [role="gridcell"] { min-width: var(--honua-ft-column-width); }
|
|
290
384
|
.table-panel__bar .count { color: var(--honua-ui-muted); font-variant-numeric: tabular-nums; }
|
|
385
|
+
.work-badges {
|
|
386
|
+
display: flex;
|
|
387
|
+
flex-wrap: wrap;
|
|
388
|
+
gap: 4px;
|
|
389
|
+
list-style: none;
|
|
390
|
+
margin: 0;
|
|
391
|
+
padding-block: 0 4px;
|
|
392
|
+
padding-inline: 10px;
|
|
393
|
+
}
|
|
394
|
+
.work-badges li {
|
|
395
|
+
background: var(--honua-ui-surface);
|
|
396
|
+
border: 1px solid var(--honua-ui-border);
|
|
397
|
+
border-radius: 999px;
|
|
398
|
+
color: var(--honua-ui-muted);
|
|
399
|
+
font-size: 0.75rem;
|
|
400
|
+
padding-block: 2px;
|
|
401
|
+
padding-inline: 7px;
|
|
402
|
+
}
|
|
403
|
+
.column-controls { padding-block: 0 4px; padding-inline: 10px; }
|
|
404
|
+
.column-controls fieldset { border: 0; display: flex; flex-wrap: wrap; gap: 8px; margin: 4px 0 0; padding: 0; }
|
|
405
|
+
.column-controls label { align-items: center; display: inline-flex; gap: 4px; }
|
|
406
|
+
.visually-hidden { clip: rect(0 0 0 0); clip-path: inset(50%); height: 1px; overflow: hidden; position: absolute; white-space: nowrap; width: 1px; }
|
|
291
407
|
.status {
|
|
292
408
|
color: var(--honua-ui-muted);
|
|
293
409
|
margin: 0;
|
|
@@ -31,6 +31,10 @@
|
|
|
31
31
|
* — the surface may change in any minor release prior to `1.0.0`.
|
|
32
32
|
* @module
|
|
33
33
|
*/
|
|
34
|
+
export { HONUA_APPLICATION_COMPONENT_CONVENTIONS, HONUA_APPLICATION_CONTEXT_VERSION, createHonuaApplicationContext, mountHonuaApplication, presentHonuaApplicationStatus, registerHonuaApplicationComponents, } from "./application-context.js";
|
|
35
|
+
export type { CreateHonuaApplicationContextOptions, HonuaApplicationAuthorization, HonuaApplicationBinding, HonuaApplicationContext, HonuaApplicationContextChangeEvent, HonuaApplicationContextChangedKey, HonuaApplicationContextParticipant, HonuaApplicationContextSnapshot, HonuaApplicationContextUpdate, HonuaApplicationDiagnostic, HonuaApplicationDiagnosticSeverity, HonuaApplicationDirection, HonuaApplicationFreshness, HonuaApplicationLocalePack, HonuaApplicationRealtimeDelta, HonuaApplicationStatus, HonuaApplicationStatusPresentation, HonuaApplicationThemeTokens, HonuaApplicationTimeState, HonuaMountedApplication, MountHonuaApplicationOptions, } from "./application-context.js";
|
|
36
|
+
export { HonuaFeatureInspectionElement, createHonuaFeatureInspection, createHonuaFeatureInspectionFromApplicationContext, defineHonuaFeatureInspection, formatHonuaInspectionValue, sanitizeHonuaInspectionHref, sanitizeHonuaInspectionRichText, } from "./feature-inspection.js";
|
|
37
|
+
export type { CreateHonuaFeatureInspectionFromApplicationContextOptions, CreateHonuaFeatureInspectionOptions, HonuaFeatureInspectionAttachment, HonuaFeatureInspectionAttachmentPageRequest, HonuaFeatureInspectionBoundedPage, HonuaFeatureInspectionBudgets, HonuaFeatureInspectionCandidate, HonuaFeatureInspectionController, HonuaFeatureInspectionDiagnostic, HonuaFeatureInspectionDiagnosticCode, HonuaFeatureInspectionExternalLinkDefinition, HonuaFeatureInspectionFeature, HonuaFeatureInspectionField, HonuaFeatureInspectionLink, HonuaFeatureInspectionMessages, HonuaFeatureInspectionOrigin, HonuaFeatureInspectionPage, HonuaFeatureInspectionPresentation, HonuaFeatureInspectionRealtimeUpdate, HonuaFeatureInspectionRelationship, HonuaFeatureInspectionRelationshipDefinition, HonuaFeatureInspectionRelationshipPageRequest, HonuaFeatureInspectionRelationshipPageResult, HonuaFeatureInspectionSearchResult, HonuaFeatureInspectionSearchState, HonuaFeatureInspectionSelectionAdapter, HonuaFeatureInspectionSnapshot, HonuaFeatureInspectionStatus, } from "./feature-inspection.js";
|
|
34
38
|
export { HonuaInMemoryWebComponentController, createHonuaWebComponentController, createHonuaWebComponentControllerFromRuntime, layersFromMapPackage, legendFromMapPackage, } from "./controller.js";
|
|
35
39
|
export { HONUA_COMPONENT_CATALOG, describeDeprecatedComponentImport, getCanonicalComponentCatalogEntry, getComponentCatalogEntriesForTag, getComponentCatalogEntry, listComponentCatalogEntries, listDeprecatedComponentImports, } from "../controls/catalog.js";
|
|
36
40
|
export type { HonuaComponentCatalogEntry, HonuaComponentSource, HonuaComponentSupportTier, HonuaDeprecatedComponentDiagnostic, } from "../controls/catalog.js";
|
|
@@ -39,6 +43,7 @@ export type { HonuaComponentCatalogId, HonuaComponentRegistrationOptions, HonuaC
|
|
|
39
43
|
export { HonuaActionPanelElement, HonuaBasemapControlElement, HonuaBookmarksElement, HonuaChartElement, HonuaEditorElement, HonuaFeatureTableElement, HonuaLayerListElement, HonuaLegendElement, HonuaLocateControlElement, HonuaMapElement, HonuaMapStatusElement, HonuaMeasureControlElement, HonuaPrintExportElement, HonuaSearchElement, HonuaSketchControlElement, defineHonuaWebComponent, defineHonuaWebComponents, honuaExportKindFromFormat, } from "./elements.js";
|
|
40
44
|
export type { HonuaFeatureTableConflictDetail } from "./elements.js";
|
|
41
45
|
export { HonuaMeasurementElement, defineHonuaMeasurement } from "./measurement.js";
|
|
46
|
+
export { convertArea, convertDistance, formatAreaValue, formatDistanceValue, planarArea, planarLength, } from "./measurement-units.js";
|
|
42
47
|
export { HonuaTimeSliderElement, defineHonuaTimeSlider } from "./time-slider.js";
|
|
43
48
|
export { HONUA_EXPORT_KINDS, HonuaExportError, approximateHonuaScaleLabel, assertHonuaExportProvenanceComplete, assertHonuaExportReady, buildHonuaExportProvenance, createBrowserPrintExportAdapter, createHonuaExportAdapter, runHonuaExport, } from "./export.js";
|
|
44
49
|
export type { BuildHonuaExportProvenanceOptions, CreateHonuaExportAdapterOptions, HonuaExportAdapter, HonuaExportCapabilities, HonuaExportContext, HonuaExportKind, HonuaExportOwnership, HonuaExportPayload, HonuaExportProvenance, HonuaExportRequest, HonuaExportResult, HonuaExportStatus, HonuaPrintWindowLike, HonuaSnapshotCanvasLike, HonuaSnapshotSource, } from "./export.js";
|
|
@@ -46,17 +51,21 @@ export { HONUA_EXPORT_REDACTED, HONUA_EXPORT_STATE_SCHEMA, HonuaExportSafetyErro
|
|
|
46
51
|
export type { HonuaExportEndpointProjection, HonuaExportRedaction, HonuaExportRedactionReason, HonuaExportStateSanitizationResult, HonuaSanitizedExportFilter, HonuaSanitizedExportLayer, HonuaSanitizedExportLegendItem, HonuaSanitizedExportSelection, HonuaSanitizedExportSource, HonuaSanitizedExportState, SanitizeHonuaExportFilenameOptions, SanitizeHonuaExportStateOptions, } from "./export-redaction.js";
|
|
47
52
|
export { HONUA_COMPONENT_QUALIFICATION_DATA_VERSION, HONUA_COMPONENT_QUALIFICATION_GATES, HONUA_COMPONENT_QUALIFICATION_STATUSES, describeComponentQualificationGate, getComponentQualification, isComponentProductionQualified, listOpenQualificationGates, listComponentQualifications, summarizeComponentQualification, } from "../controls/qualification.js";
|
|
48
53
|
export type { HonuaComponentQualification, HonuaComponentQualificationGate, HonuaComponentQualificationGateId, HonuaComponentQualificationRequirement, HonuaComponentQualificationStatus, HonuaComponentQualificationSummary, HonuaComponentQualificationCell, } from "../controls/qualification.js";
|
|
49
|
-
export { DEFAULT_FEATURE_TABLE_BUDGETS, createHonuaFeatureTable, describeFeatureTableCount, explorationClauseToFilterClause, filterClauseToExplorationClause, featureTableAriaRowCount, featureTableAriaSort, featureTablePageCacheKey, featureTableRowKey, featureTableWindow, featureTableWorkByTier, formatFeatureTableCell, linkFeatureTableToExploration, } from "./feature-table-engine.js";
|
|
50
|
-
export type { CreateHonuaFeatureTableOptions, HonuaFeatureTable, HonuaFeatureTableBudgetKind, HonuaFeatureTableBudgetLedger, HonuaFeatureTableBudgets, HonuaFeatureTableColumn, HonuaFeatureTableColumnType, HonuaFeatureTableConflict, HonuaFeatureTableConflictCode, HonuaFeatureTableCount, HonuaFeatureTableCountEvidence, HonuaFeatureTableExport, HonuaFeatureTableExportRequest, HonuaFeatureTableFocus, HonuaFeatureTableFocusMove, HonuaFeatureTablePageIdentity, HonuaFeatureTablePaging, HonuaFeatureTablePagingMode, HonuaFeatureTablePlanner, HonuaFeatureTableQueryEvidence, HonuaFeatureTableQuerySource, HonuaFeatureTableRealtimeDiff, HonuaFeatureTableRealtimeOutcome, HonuaFeatureTableResolvedColumn, HonuaFeatureTableRow, HonuaFeatureTableRowKey, HonuaFeatureTableScrollMetrics, HonuaFeatureTableSnapshot, HonuaFeatureTableState, HonuaFeatureTableWindow, HonuaFeatureTableWorkConcern, HonuaFeatureTableWorkItem, HonuaFeatureTableWorkTier, LinkFeatureTableToExplorationOptions, } from "./feature-table-engine.js";
|
|
51
|
-
export { describeFeatureTableState, featureTableFocusMoveForKey, featureTableGridHtml, featureTableGridStyles, featureTableViewModel, legacyFeatureTableViewModel, } from "./feature-table-view.js";
|
|
52
|
-
export type { HonuaFeatureTableMessages, HonuaFeatureTableViewModel, HonuaFeatureTableViewRow, } from "./feature-table-view.js";
|
|
54
|
+
export { DEFAULT_FEATURE_TABLE_BUDGETS, createHonuaFeatureTable, describeFeatureTableCount, explorationClauseToFilterClause, filterClauseToExplorationClause, featureTableAriaRowCount, featureTableAriaSort, featureTableColumnWindow, featureTablePageCacheKey, featureTableRowKey, featureTableWindow, featureTableWorkByTier, formatFeatureTableCell, linkFeatureTableToExploration, } from "./feature-table-engine.js";
|
|
55
|
+
export type { CreateHonuaFeatureTableOptions, HonuaFeatureTable, HonuaFeatureTableBudgetKind, HonuaFeatureTableBudgetLedger, HonuaFeatureTableBudgets, HonuaFeatureTableColumn, HonuaFeatureTableColumnScrollMetrics, HonuaFeatureTableColumnWindow, HonuaFeatureTableColumnType, HonuaFeatureTableConflict, HonuaFeatureTableConflictCode, HonuaFeatureTableCount, HonuaFeatureTableCountEvidence, HonuaFeatureTableExport, HonuaFeatureTableExportAuthorization, HonuaFeatureTableExportAuthorizationContext, HonuaFeatureTableExportProvenance, HonuaFeatureTableExportRequest, HonuaFeatureTableFocus, HonuaFeatureTableFocusMove, HonuaFeatureTablePageIdentity, HonuaFeatureTablePaging, HonuaFeatureTablePagingMode, HonuaFeatureTablePlanner, HonuaFeatureTableQueryEvidence, HonuaFeatureTableQuerySource, HonuaFeatureTableRealtimeDiff, HonuaFeatureTableRealtimeOutcome, HonuaFeatureTableResolvedColumn, HonuaFeatureTableRow, HonuaFeatureTableRowKey, HonuaFeatureTableScrollMetrics, HonuaFeatureTableSnapshot, HonuaFeatureTableState, HonuaFeatureTableSecureExport, HonuaFeatureTableSecureExportAdapter, HonuaFeatureTableSecureExportRequest, HonuaFeatureTableAggregation, HonuaFeatureTableViewportMode, HonuaFeatureTableWindow, HonuaFeatureTableWorkConcern, HonuaFeatureTableWorkItem, HonuaFeatureTableWorkTier, LinkFeatureTableToExplorationOptions, } from "./feature-table-engine.js";
|
|
56
|
+
export { describeFeatureTableState, featureTableFocusMoveForKey, featureTableGridHtml, featureTableGridStyles, featureTableWorkBadges, featureTableViewModel, legacyFeatureTableViewModel, } from "./feature-table-view.js";
|
|
57
|
+
export type { HonuaFeatureTableMessages, HonuaFeatureTableColumnControl, HonuaFeatureTableViewModel, HonuaFeatureTableViewRow, HonuaFeatureTableWorkBadge, } from "./feature-table-view.js";
|
|
53
58
|
export { HonuaFeatureEditorElement, defineHonuaFeatureEditor } from "./feature-editor.js";
|
|
54
|
-
export type { HonuaFeatureEditChangeDetail, HonuaFeatureEditCommitDetail } from "./feature-editor.js";
|
|
59
|
+
export type { HonuaFeatureEditChangeDetail, HonuaFeatureEditCommitDetail, HonuaFeatureEditOfflineConflictDetail, } from "./feature-editor.js";
|
|
55
60
|
export { HonuaFeatureEditorWorkflow, createFeatureEditorWorkflow } from "./feature-editor-workflow.js";
|
|
56
|
-
export type { HonuaFeatureEditorCommit, HonuaFeatureEditorConflict, HonuaFeatureEditorConflictChoice, HonuaFeatureEditorExternalChangeOutcome, HonuaFeatureEditorFailure, HonuaFeatureEditorIdentity, HonuaFeatureEditorOptions, HonuaFeatureEditorSketchState, HonuaFeatureEditorSnapshot, HonuaFeatureEditorStatus, } from "./feature-editor-workflow.js";
|
|
61
|
+
export type { HonuaFeatureEditorCommit, HonuaFeatureEditorConflict, HonuaFeatureEditorConflictChoice, HonuaFeatureEditorDraftSummary, HonuaFeatureEditorExternalChangeOutcome, HonuaFeatureEditorFailure, HonuaFeatureEditorIdentity, HonuaFeatureEditorOfflineState, HonuaFeatureEditorOptions, HonuaFeatureEditorPreflight, HonuaFeatureEditorPreflightBlocker, HonuaFeatureEditorPreflightIssue, HonuaFeatureEditorSketchState, HonuaFeatureEditorSnapshot, HonuaFeatureEditorStatus, } from "./feature-editor-workflow.js";
|
|
62
|
+
export { HonuaFeatureEditorOfflineError, offlineStateFromQueuedEdit, queueHonuaFeatureEditorDraft, reconcileHonuaFeatureEditorOfflineEdit, resolveHonuaFeatureEditorOfflineConflict, } from "./feature-editor-offline.js";
|
|
63
|
+
export type { HonuaFeatureEditorOfflineErrorCode, QueueHonuaFeatureEditorDraftOptions, QueueHonuaFeatureEditorDraftResult, } from "./feature-editor-offline.js";
|
|
64
|
+
export { HONUA_FEATURE_MUTATION_RECEIPT_KIND, HONUA_FEATURE_MUTATION_RECEIPT_VERSION, createHonuaFeatureMutationReceipt, createHonuaFeatureMutationReconciler, } from "./feature-mutation.js";
|
|
65
|
+
export type { CreateHonuaFeatureMutationReceiptInput, HonuaFeatureMutationInvalidationTarget, HonuaFeatureMutationOperation, HonuaFeatureMutationParticipant, HonuaFeatureMutationReceipt, HonuaFeatureMutationReconciler, HonuaFeatureMutationReconciliationFailure, HonuaFeatureMutationReconciliationResult, } from "./feature-mutation.js";
|
|
57
66
|
export { buildEditorFormModel, coerceEditorFieldValue, editorControlKind, editorDomainFromSchema, editorFieldInputValue, editorFieldsFromSchema, editorOperationAvailability, hiddenEditorFieldNames, redactEditorAttachment, resolveActiveEditorSubtype, resolveEditorFields, resolveEditorOperations, } from "./feature-editor-model.js";
|
|
58
67
|
export type { BuildEditorFormModelInput, HonuaEditorAttachmentDraft, HonuaEditorAttachmentMutationLike, HonuaEditorCapabilityDecisionLike, HonuaEditorChoice, HonuaEditorControlKind, HonuaEditorFieldControl, HonuaEditorFormModel, HonuaEditorOperation, HonuaEditorOperationAvailability, HonuaEditorOperationOverride, HonuaEditorOperationOverrides, HonuaEditorSchemaDomainLike, HonuaEditorSchemaFieldLike, HonuaEditorSubtype, HonuaEditorSubtypeConfig, HonuaEditorSubtypeFieldOverride, HonuaEditorUnavailableCode, ResolveEditorOperationsInput, } from "./feature-editor-model.js";
|
|
59
68
|
export { bindEditorSketch, createTerraDrawEditorSketch, editorSnappingOptions } from "./feature-editor-sketch.js";
|
|
60
69
|
export type { CreateTerraDrawEditorSketchOptions, HonuaEditorSketchAdapter, HonuaEditorSketchOptions, HonuaEditorSnappingOptions, } from "./feature-editor-sketch.js";
|
|
61
|
-
export type { HonuaActionDetail, HonuaActionPanelAction, HonuaActionPanelMessages, HonuaBasemapChangeDetail, HonuaBasemapControlMessages, HonuaBookmark, HonuaBookmarkChangeDetail, HonuaBookmarksMessages, CreateHonuaWebComponentControllerOptions, HonuaChartDatum, HonuaChartModel, HonuaChartMessages, HonuaComponentStatus, HonuaControllerReadyDetail, HonuaControllerStateListener, HonuaControllerSubscription, HonuaEditCapabilities, HonuaEditChangeDetail, HonuaEditRequest, HonuaEditorMessages, HonuaEditorModel, HonuaExportDetail, HonuaFeatureRecord, HonuaFeatureEditorMessages, HonuaFeatureStateEntry, HonuaFeatureStateTarget, HonuaFeatureTableModel, HonuaFilterChangeDetail, HonuaFilterState, HonuaFullscreenChangeDetail, HonuaGeocodeSelectDetail, HonuaLayerListMessages, HonuaLayerModel, HonuaLayerOpacityChangeDetail, HonuaLayerOrderChangeDetail, HonuaLayerVisibilityChangeDetail, HonuaLegendItem, HonuaLegendMessages, HonuaLocateControlMessages, HonuaLocateChangeDetail, HonuaMapMessages, HonuaMapStatusMessages, HonuaMapClickDetail, HonuaMapErrorDetail, HonuaMapHoverDetail, HonuaMapInteractionDetail, HonuaMapInteractionPoint, HonuaMapReadyDetail, HonuaMeasureChangeDetail, HonuaMeasureControlMessages, HonuaMeasureMode, HonuaMeasurementMessages, HonuaPrintExportMessages, HonuaMeasureProvider, HonuaMeasureResult, HonuaMeasurementMap, HonuaQueryFeaturesOptions, HonuaSearchDetail, HonuaSearchMessages, HonuaSearchGeocodeCandidate, HonuaSearchGeocodeSuggestion, HonuaSearchGeocoderLike, HonuaSearchOptions, HonuaSearchResult, HonuaSelectionChangeDetail, HonuaSelectionState, HonuaSketchChangeDetail, HonuaSketchControlMessages, HonuaSketchMode, HonuaSketchProvider, HonuaSketchResult, HonuaTimeChangeDetail, HonuaTimePlaybackChangeDetail, HonuaTimeSliderMessages, HonuaTimeSliderPlayback, HonuaTimeSliderWindow, HonuaViewportChangeDetail, HonuaViewportState, HonuaWebComponentController, HonuaWebComponentRuntimeLike, HonuaWebComponentState, } from "./types.js";
|
|
70
|
+
export type { HonuaActionDetail, HonuaActionPanelAction, HonuaActionPanelMessages, HonuaBasemapChangeDetail, HonuaBasemapControlMessages, HonuaBookmark, HonuaBookmarkChangeDetail, HonuaBookmarksMessages, CreateHonuaWebComponentControllerOptions, HonuaChartDatum, HonuaChartModel, HonuaChartMessages, HonuaComponentStatus, HonuaControllerReadyDetail, HonuaControllerStateListener, HonuaControllerSubscription, HonuaEditCapabilities, HonuaEditChangeDetail, HonuaEditRequest, HonuaEditorMessages, HonuaEditorModel, HonuaExportDetail, HonuaFeatureRecord, HonuaFeatureEditorMessages, HonuaFeatureStateEntry, HonuaFeatureStateTarget, HonuaFeatureTableModel, HonuaFilterChangeDetail, HonuaFilterState, HonuaFullscreenChangeDetail, HonuaGeocodeSelectDetail, HonuaLayerListMessages, HonuaLayerModel, HonuaLayerOpacityChangeDetail, HonuaLayerOrderChangeDetail, HonuaLayerVisibilityChangeDetail, HonuaLegendItem, HonuaLegendMessages, HonuaLocateControlMessages, HonuaLocateChangeDetail, HonuaMapMessages, HonuaMapStatusMessages, HonuaMapClickDetail, HonuaMapErrorDetail, HonuaMapHoverDetail, HonuaMapInteractionDetail, HonuaMapInteractionPoint, HonuaMapReadyDetail, HonuaMeasureAreaUnit, HonuaMeasureChangeDetail, HonuaMeasureControlMessages, HonuaMeasureDistanceUnit, HonuaMeasureFidelity, HonuaMeasureInvalidReason, HonuaMeasureMode, HonuaMeasurePlanarCrs, HonuaMeasurementMessages, HonuaPrintExportMessages, HonuaMeasureProvider, HonuaMeasureResult, HonuaMeasurementMap, HonuaQueryFeaturesOptions, HonuaSearchDetail, HonuaSearchMessages, HonuaSearchGeocodeCandidate, HonuaSearchGeocodeSuggestion, HonuaSearchGeocoderLike, HonuaSearchOptions, HonuaSearchResult, HonuaSelectionChangeDetail, HonuaSelectionState, HonuaSketchChangeDetail, HonuaSketchControlMessages, HonuaSketchMode, HonuaSketchProvider, HonuaSketchResult, HonuaTimeChangeDetail, HonuaTimePlaybackChangeDetail, HonuaTimeSliderMessages, HonuaTimeSliderPlayback, HonuaTimeSliderWindow, HonuaViewportChangeDetail, HonuaViewportState, HonuaWebComponentController, HonuaWebComponentRuntimeLike, HonuaWebComponentState, } from "./types.js";
|
|
62
71
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/web-components/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/web-components/index.ts"],"names":[],"mappings":"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"}
|
package/web-components/index.js
CHANGED
|
@@ -40,11 +40,16 @@ import { defineHonuaWebComponents } from "./elements.js";
|
|
|
40
40
|
// point, so the observable behavior — importing this module registers all 16
|
|
41
41
|
// tags when a `customElements` registry is present — is unchanged.
|
|
42
42
|
defineHonuaWebComponents();
|
|
43
|
+
// Supported application shell (issue #1297).
|
|
44
|
+
export { HONUA_APPLICATION_COMPONENT_CONVENTIONS, HONUA_APPLICATION_CONTEXT_VERSION, createHonuaApplicationContext, mountHonuaApplication, presentHonuaApplicationStatus, registerHonuaApplicationComponents, } from "./application-context.js";
|
|
45
|
+
// Supported feature inspection workflow (issue #1298).
|
|
46
|
+
export { HonuaFeatureInspectionElement, createHonuaFeatureInspection, createHonuaFeatureInspectionFromApplicationContext, defineHonuaFeatureInspection, formatHonuaInspectionValue, sanitizeHonuaInspectionHref, sanitizeHonuaInspectionRichText, } from "./feature-inspection.js";
|
|
43
47
|
export { HonuaInMemoryWebComponentController, createHonuaWebComponentController, createHonuaWebComponentControllerFromRuntime, layersFromMapPackage, legendFromMapPackage, } from "./controller.js";
|
|
44
48
|
export { HONUA_COMPONENT_CATALOG, describeDeprecatedComponentImport, getCanonicalComponentCatalogEntry, getComponentCatalogEntriesForTag, getComponentCatalogEntry, listComponentCatalogEntries, listDeprecatedComponentImports, } from "../controls/catalog.js";
|
|
45
49
|
export { HonuaComponentCatalogError, createComponentRegistry, registerAllComponents, registerComponent, registerComponents, } from "../controls/registry.js";
|
|
46
50
|
export { HonuaActionPanelElement, HonuaBasemapControlElement, HonuaBookmarksElement, HonuaChartElement, HonuaEditorElement, HonuaFeatureTableElement, HonuaLayerListElement, HonuaLegendElement, HonuaLocateControlElement, HonuaMapElement, HonuaMapStatusElement, HonuaMeasureControlElement, HonuaPrintExportElement, HonuaSearchElement, HonuaSketchControlElement, defineHonuaWebComponent, defineHonuaWebComponents, honuaExportKindFromFormat, } from "./elements.js";
|
|
47
51
|
export { HonuaMeasurementElement, defineHonuaMeasurement } from "./measurement.js";
|
|
52
|
+
export { convertArea, convertDistance, formatAreaValue, formatDistanceValue, planarArea, planarLength, } from "./measurement-units.js";
|
|
48
53
|
// ── time slider over the temporal playback controller (issue #959) ───────
|
|
49
54
|
export { HonuaTimeSliderElement, defineHonuaTimeSlider } from "./time-slider.js";
|
|
50
55
|
// ── secure export contract (issue #683) ──────────────────────────────────
|
|
@@ -53,10 +58,12 @@ export { HONUA_EXPORT_REDACTED, HONUA_EXPORT_STATE_SCHEMA, HonuaExportSafetyErro
|
|
|
53
58
|
// ── production qualification matrix (issue #683) ─────────────────────────
|
|
54
59
|
export { HONUA_COMPONENT_QUALIFICATION_DATA_VERSION, HONUA_COMPONENT_QUALIFICATION_GATES, HONUA_COMPONENT_QUALIFICATION_STATUSES, describeComponentQualificationGate, getComponentQualification, isComponentProductionQualified, listOpenQualificationGates, listComponentQualifications, summarizeComponentQualification, } from "../controls/qualification.js";
|
|
55
60
|
// Bounded production feature table (issue #681).
|
|
56
|
-
export { DEFAULT_FEATURE_TABLE_BUDGETS, createHonuaFeatureTable, describeFeatureTableCount, explorationClauseToFilterClause, filterClauseToExplorationClause, featureTableAriaRowCount, featureTableAriaSort, featureTablePageCacheKey, featureTableRowKey, featureTableWindow, featureTableWorkByTier, formatFeatureTableCell, linkFeatureTableToExploration, } from "./feature-table-engine.js";
|
|
57
|
-
export { describeFeatureTableState, featureTableFocusMoveForKey, featureTableGridHtml, featureTableGridStyles, featureTableViewModel, legacyFeatureTableViewModel, } from "./feature-table-view.js";
|
|
61
|
+
export { DEFAULT_FEATURE_TABLE_BUDGETS, createHonuaFeatureTable, describeFeatureTableCount, explorationClauseToFilterClause, filterClauseToExplorationClause, featureTableAriaRowCount, featureTableAriaSort, featureTableColumnWindow, featureTablePageCacheKey, featureTableRowKey, featureTableWindow, featureTableWorkByTier, formatFeatureTableCell, linkFeatureTableToExploration, } from "./feature-table-engine.js";
|
|
62
|
+
export { describeFeatureTableState, featureTableFocusMoveForKey, featureTableGridHtml, featureTableGridStyles, featureTableWorkBadges, featureTableViewModel, legacyFeatureTableViewModel, } from "./feature-table-view.js";
|
|
58
63
|
// ── production-tier feature editor (issue #680) ──────────────────────────
|
|
59
64
|
export { HonuaFeatureEditorElement, defineHonuaFeatureEditor } from "./feature-editor.js";
|
|
60
65
|
export { HonuaFeatureEditorWorkflow, createFeatureEditorWorkflow } from "./feature-editor-workflow.js";
|
|
66
|
+
export { HonuaFeatureEditorOfflineError, offlineStateFromQueuedEdit, queueHonuaFeatureEditorDraft, reconcileHonuaFeatureEditorOfflineEdit, resolveHonuaFeatureEditorOfflineConflict, } from "./feature-editor-offline.js";
|
|
67
|
+
export { HONUA_FEATURE_MUTATION_RECEIPT_KIND, HONUA_FEATURE_MUTATION_RECEIPT_VERSION, createHonuaFeatureMutationReceipt, createHonuaFeatureMutationReconciler, } from "./feature-mutation.js";
|
|
61
68
|
export { buildEditorFormModel, coerceEditorFieldValue, editorControlKind, editorDomainFromSchema, editorFieldInputValue, editorFieldsFromSchema, editorOperationAvailability, hiddenEditorFieldNames, redactEditorAttachment, resolveActiveEditorSubtype, resolveEditorFields, resolveEditorOperations, } from "./feature-editor-model.js";
|
|
62
69
|
export { bindEditorSketch, createTerraDrawEditorSketch, editorSnappingOptions } from "./feature-editor-sketch.js";
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Map pointer claims (issue #1419): lets a component that turns map clicks
|
|
3
|
+
* into its own input — `<honua-measurement>` placing vertices — tell the
|
|
4
|
+
* kit's renderer that those clicks are not feature selections.
|
|
5
|
+
*
|
|
6
|
+
* Without a claim, every vertex click that lands on a feature would also run
|
|
7
|
+
* `controller.selectFeature` and dispatch `honua-selection-change`, silently
|
|
8
|
+
* rewriting the shared selection a table, inspector, or editor is bound to.
|
|
9
|
+
* With one, the renderer still dispatches `honua-map-click` but leaves the
|
|
10
|
+
* shared selection exactly as it was.
|
|
11
|
+
*
|
|
12
|
+
* Claims are keyed by the map object in a `WeakMap`, so a claim never keeps a
|
|
13
|
+
* removed map (or its owner) alive, and releasing is idempotent.
|
|
14
|
+
*
|
|
15
|
+
* @module
|
|
16
|
+
*/
|
|
17
|
+
/**
|
|
18
|
+
* Claims pointer input on `map` for `owner`. Returns a release function;
|
|
19
|
+
* calling it more than once is a no-op.
|
|
20
|
+
*/
|
|
21
|
+
export declare function claimMapPointer(map: object, owner: object): () => void;
|
|
22
|
+
/** Whether any component currently claims pointer input on `map`. */
|
|
23
|
+
export declare function isMapPointerClaimed(map: unknown): boolean;
|
|
24
|
+
//# sourceMappingURL=map-pointer-claim.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"map-pointer-claim.d.ts","sourceRoot":"","sources":["../../../src/web-components/map-pointer-claim.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAIH;;;GAGG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,IAAI,CAUtE;AAED,qEAAqE;AACrE,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAGzD"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Map pointer claims (issue #1419): lets a component that turns map clicks
|
|
3
|
+
* into its own input — `<honua-measurement>` placing vertices — tell the
|
|
4
|
+
* kit's renderer that those clicks are not feature selections.
|
|
5
|
+
*
|
|
6
|
+
* Without a claim, every vertex click that lands on a feature would also run
|
|
7
|
+
* `controller.selectFeature` and dispatch `honua-selection-change`, silently
|
|
8
|
+
* rewriting the shared selection a table, inspector, or editor is bound to.
|
|
9
|
+
* With one, the renderer still dispatches `honua-map-click` but leaves the
|
|
10
|
+
* shared selection exactly as it was.
|
|
11
|
+
*
|
|
12
|
+
* Claims are keyed by the map object in a `WeakMap`, so a claim never keeps a
|
|
13
|
+
* removed map (or its owner) alive, and releasing is idempotent.
|
|
14
|
+
*
|
|
15
|
+
* @module
|
|
16
|
+
*/
|
|
17
|
+
const claims = new WeakMap();
|
|
18
|
+
/**
|
|
19
|
+
* Claims pointer input on `map` for `owner`. Returns a release function;
|
|
20
|
+
* calling it more than once is a no-op.
|
|
21
|
+
*/
|
|
22
|
+
export function claimMapPointer(map, owner) {
|
|
23
|
+
const owners = claims.get(map) ?? new Set();
|
|
24
|
+
owners.add(owner);
|
|
25
|
+
claims.set(map, owners);
|
|
26
|
+
return () => {
|
|
27
|
+
const current = claims.get(map);
|
|
28
|
+
if (!current)
|
|
29
|
+
return;
|
|
30
|
+
current.delete(owner);
|
|
31
|
+
if (current.size === 0)
|
|
32
|
+
claims.delete(map);
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
/** Whether any component currently claims pointer input on `map`. */
|
|
36
|
+
export function isMapPointerClaimed(map) {
|
|
37
|
+
if (typeof map !== "object" || map === null)
|
|
38
|
+
return false;
|
|
39
|
+
return (claims.get(map)?.size ?? 0) > 0;
|
|
40
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"maplibre-renderer.d.ts","sourceRoot":"","sources":["../../../src/web-components/maplibre-renderer.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"maplibre-renderer.d.ts","sourceRoot":"","sources":["../../../src/web-components/maplibre-renderer.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGrD,OAAO,KAAK,EAGV,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EACnB,0BAA0B,EAC1B,yBAAyB,EACzB,2BAA2B,EAC3B,4BAA4B,EAC5B,sBAAsB,EACvB,MAAM,YAAY,CAAC;AAqCpB,MAAM,WAAW,4BAA4B,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IACvE,SAAS,EAAE,WAAW,CAAC;IACvB,SAAS,IAAI,WAAW,GAAG,SAAS,CAAC;IACrC,aAAa,IAAI,2BAA2B,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC;IAC5D,OAAO,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IAC9C,OAAO,CAAC,MAAM,EAAE,mBAAmB,GAAG,IAAI,CAAC;IAC3C,UAAU,CAAC,MAAM,EAAE,yBAAyB,GAAG,IAAI,CAAC;IACpD,OAAO,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IAC9C,OAAO,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IAC9C,WAAW,CAAC,MAAM,EAAE,0BAA0B,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;CAC1D;AAED,qBAAa,qBAAqB,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;;gBAgBzC,OAAO,EAAE,4BAA4B,CAAC,CAAC,CAAC;IAI3D,IAAW,GAAG,IAAI,OAAO,GAAG,SAAS,CAEpC;IAED,IAAW,OAAO,IAAI,4BAA4B,CAAC,CAAC,CAAC,GAAG,SAAS,CAEhE;IAEY,UAAU,CAAC,KAAK,EAAE,sBAAsB,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAkBjE,UAAU,IAAI,IAAI;CAuX1B"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { isMapPointerClaimed } from "./map-pointer-claim.js";
|
|
1
2
|
export class HonuaMapLibreRenderer {
|
|
2
3
|
#options;
|
|
3
4
|
#interactionHandles = [];
|
|
@@ -237,7 +238,10 @@ export class HonuaMapLibreRenderer {
|
|
|
237
238
|
originalEvent: event.originalEvent,
|
|
238
239
|
};
|
|
239
240
|
this.#options.onClick(detail);
|
|
240
|
-
|
|
241
|
+
// A component using clicks as its own input (e.g. measurement
|
|
242
|
+
// vertices) claims the map pointer; its clicks must not rewrite the
|
|
243
|
+
// shared selection other components are bound to (#1419).
|
|
244
|
+
if (featureId === undefined || isMapPointerClaimed(runtime.map))
|
|
241
245
|
return;
|
|
242
246
|
const selection = {
|
|
243
247
|
sourceId,
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Unit conversion, display formatting, and planar (Euclidean, flat-earth)
|
|
3
|
+
* math for `<honua-measurement>` (issue #1419).
|
|
4
|
+
*
|
|
5
|
+
* All conversion and formatting here operates on the canonical SI value
|
|
6
|
+
* already stored on `HonuaMeasureResult` (meters / square meters) — never on
|
|
7
|
+
* a previously rounded display string — so switching `unit`/`areaUnit`/
|
|
8
|
+
* `precision` at runtime always reformats the same full-precision number.
|
|
9
|
+
*
|
|
10
|
+
* `planarLength` / `planarArea` intentionally do not depend on `proj4`
|
|
11
|
+
* (`@honua/geometry`'s `project`): pulling that in would add proj4 as a
|
|
12
|
+
* static import of every `<honua-measurement>` consumer's bundle (the
|
|
13
|
+
* `/web-components` and `/controls` entrypoints), well past their gzip
|
|
14
|
+
* budgets, for a fidelity mode most apps never enable. Instead this uses the
|
|
15
|
+
* same equirectangular (meters-per-degree-of-latitude/longitude) flat-earth
|
|
16
|
+
* approximation `MeasurementCompat` already ships in `src/esri-compat/
|
|
17
|
+
* measurement.ts` — accurate for the local-extent sketches this widget draws,
|
|
18
|
+
* and proven parity math rather than a new approach.
|
|
19
|
+
*
|
|
20
|
+
* @module
|
|
21
|
+
*/
|
|
22
|
+
import type { HonuaMeasureAreaUnit, HonuaMeasureDistanceUnit, HonuaMeasurePlanarCrs } from "./types.js";
|
|
23
|
+
type LngLat = readonly [number, number];
|
|
24
|
+
/** Converts a distance already in meters into `unit`. */
|
|
25
|
+
export declare function convertDistance(meters: number, unit: Exclude<HonuaMeasureDistanceUnit, "auto">): number;
|
|
26
|
+
/** Converts an area already in square meters into `unit`. */
|
|
27
|
+
export declare function convertArea(squareMeters: number, unit: Exclude<HonuaMeasureAreaUnit, "auto">): number;
|
|
28
|
+
/**
|
|
29
|
+
* Formats a canonical meters value for display. `precision` overrides the
|
|
30
|
+
* unit's default decimal digits; `unit` overrides magnitude-based auto-scaling.
|
|
31
|
+
*/
|
|
32
|
+
export declare function formatDistanceValue(meters: number, unit: HonuaMeasureDistanceUnit, precision?: number): string;
|
|
33
|
+
/**
|
|
34
|
+
* Formats a canonical square-meters value for display. `precision` overrides
|
|
35
|
+
* the unit's default decimal digits; `unit` overrides magnitude-based
|
|
36
|
+
* auto-scaling.
|
|
37
|
+
*/
|
|
38
|
+
export declare function formatAreaValue(squareMeters: number, unit: HonuaMeasureAreaUnit, precision?: number): string;
|
|
39
|
+
/** Distance units `<honua-measurement>` accepts, including `"auto"`. */
|
|
40
|
+
export declare const HONUA_MEASURE_DISTANCE_UNITS: readonly HonuaMeasureDistanceUnit[];
|
|
41
|
+
/** Area units `<honua-measurement>` accepts, including `"auto"`. */
|
|
42
|
+
export declare const HONUA_MEASURE_AREA_UNITS: readonly HonuaMeasureAreaUnit[];
|
|
43
|
+
/** Planar frames `<honua-measurement>` accepts for `fidelity: "planar"`. */
|
|
44
|
+
export declare const HONUA_MEASURE_PLANAR_CRS: readonly HonuaMeasurePlanarCrs[];
|
|
45
|
+
/**
|
|
46
|
+
* Whether a position is a usable WGS84 vertex: finite, with latitude inside
|
|
47
|
+
* `[-90, 90]`. Longitude may exceed ±180 — MapLibre reports clicks on a world
|
|
48
|
+
* copy that way — and is unwrapped before any planar math.
|
|
49
|
+
*/
|
|
50
|
+
export declare function isValidMeasureVertex(position: readonly number[]): boolean;
|
|
51
|
+
/**
|
|
52
|
+
* Shifts each longitude by whole turns so consecutive vertices are never more
|
|
53
|
+
* than 180° apart. A sketch crossing the antimeridian (179° → -179°) is then
|
|
54
|
+
* measured the short way, matching what the geodesic ops already do, instead
|
|
55
|
+
* of across 358° of flat map.
|
|
56
|
+
*/
|
|
57
|
+
export declare function unwrapLongitudes(positions: readonly LngLat[]): LngLat[];
|
|
58
|
+
/**
|
|
59
|
+
* Euclidean length of a line, in meters of the planar frame `crs`:
|
|
60
|
+
*
|
|
61
|
+
* - `"local"` (default): a flat-earth approximation centered on the vertices'
|
|
62
|
+
* mean latitude, matching `MeasurementCompat`'s approximation.
|
|
63
|
+
* - `"EPSG:3857"`: spherical Web Mercator, the projected CRS MapLibre renders
|
|
64
|
+
* in. Its meters are not scale-corrected, so lengths grow by `sec(latitude)`
|
|
65
|
+
* away from the equator — which is what an app mirroring ArcGIS planar
|
|
66
|
+
* measurement on a Web Mercator view expects.
|
|
67
|
+
*
|
|
68
|
+
* Unlike the geodesic `length` op in `@honua/geometry`, this never follows
|
|
69
|
+
* the great circle. Longitudes are unwrapped first, so an antimeridian
|
|
70
|
+
* crossing is measured the short way.
|
|
71
|
+
*/
|
|
72
|
+
export declare function planarLength(positions: readonly LngLat[], crs?: HonuaMeasurePlanarCrs): number;
|
|
73
|
+
/**
|
|
74
|
+
* Euclidean (shoelace) area of a ring, in square meters of the planar frame
|
|
75
|
+
* `crs` (see {@link planarLength}). `positions` need not be closed; the first
|
|
76
|
+
* vertex is implicitly repeated to close the ring.
|
|
77
|
+
*/
|
|
78
|
+
export declare function planarArea(positions: readonly LngLat[], crs?: HonuaMeasurePlanarCrs): number;
|
|
79
|
+
/**
|
|
80
|
+
* Whether the closed ring through `positions` crosses itself (a "bow tie").
|
|
81
|
+
* Such a ring has no single enclosed area: the shoelace and geodesic sums
|
|
82
|
+
* cancel the lobes against each other, so reporting their result would be a
|
|
83
|
+
* confident wrong number. Touching at a shared vertex of adjacent edges is
|
|
84
|
+
* not a crossing; collinear overlap of non-adjacent edges is.
|
|
85
|
+
*/
|
|
86
|
+
export declare function ringSelfIntersects(positions: readonly LngLat[]): boolean;
|
|
87
|
+
export {};
|
|
88
|
+
//# sourceMappingURL=measurement-units.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"measurement-units.d.ts","sourceRoot":"","sources":["../../../src/web-components/measurement-units.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,KAAK,EAAE,oBAAoB,EAAE,wBAAwB,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAExG,KAAK,MAAM,GAAG,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAsCxC,yDAAyD;AACzD,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,wBAAwB,EAAE,MAAM,CAAC,GAAG,MAAM,CAEvG;AAED,6DAA6D;AAC7D,wBAAgB,WAAW,CAAC,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,oBAAoB,EAAE,MAAM,CAAC,GAAG,MAAM,CAErG;AA6BD;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,wBAAwB,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAK9G;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,oBAAoB,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAK5G;AAED,wEAAwE;AACxE,eAAO,MAAM,4BAA4B,EAAE,SAAS,wBAAwB,EAG3E,CAAC;AAEF,oEAAoE;AACpE,eAAO,MAAM,wBAAwB,EAAE,SAAS,oBAAoB,EAGnE,CAAC;AAEF,4EAA4E;AAC5E,eAAO,MAAM,wBAAwB,EAAE,SAAS,qBAAqB,EAA2B,CAAC;AAwBjG;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAUzE;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,EAAE,CAYvE;AAiBD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,YAAY,CAAC,SAAS,EAAE,SAAS,MAAM,EAAE,EAAE,GAAG,GAAE,qBAA+B,GAAG,MAAM,CAWvG;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,SAAS,EAAE,SAAS,MAAM,EAAE,EAAE,GAAG,GAAE,qBAA+B,GAAG,MAAM,CAYrG;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAgBxE"}
|