@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.
Files changed (326) hide show
  1. package/control-plane/admin-client.d.ts +89 -0
  2. package/control-plane/admin-client.d.ts.map +1 -0
  3. package/control-plane/admin-client.js +200 -0
  4. package/control-plane/client.d.ts +1 -1
  5. package/control-plane/client.d.ts.map +1 -1
  6. package/control-plane/client.js +145 -11
  7. package/control-plane/commands/catalog.d.ts +133 -0
  8. package/control-plane/commands/catalog.d.ts.map +1 -0
  9. package/control-plane/commands/catalog.js +365 -0
  10. package/control-plane/commands/errors.d.ts +96 -0
  11. package/control-plane/commands/errors.d.ts.map +1 -0
  12. package/control-plane/commands/errors.js +130 -0
  13. package/control-plane/commands/identity.d.ts +71 -0
  14. package/control-plane/commands/identity.d.ts.map +1 -0
  15. package/control-plane/commands/identity.js +0 -0
  16. package/control-plane/commands/index.d.ts +39 -0
  17. package/control-plane/commands/index.d.ts.map +1 -0
  18. package/control-plane/commands/index.js +34 -0
  19. package/control-plane/commands/runtime.d.ts +146 -0
  20. package/control-plane/commands/runtime.d.ts.map +1 -0
  21. package/control-plane/commands/runtime.js +330 -0
  22. package/control-plane/commands/types.d.ts +228 -0
  23. package/control-plane/commands/types.d.ts.map +1 -0
  24. package/control-plane/commands/types.js +30 -0
  25. package/control-plane/commands/validate.d.ts +27 -0
  26. package/control-plane/commands/validate.d.ts.map +1 -0
  27. package/control-plane/commands/validate.js +132 -0
  28. package/control-plane/generated/admin-api.d.ts +30265 -0
  29. package/control-plane/generated/admin-api.d.ts.map +1 -0
  30. package/control-plane/generated/admin-api.js +5 -0
  31. package/control-plane/generated/admin-operations.d.ts +4053 -0
  32. package/control-plane/generated/admin-operations.d.ts.map +1 -0
  33. package/control-plane/generated/admin-operations.js +820 -0
  34. package/control-plane/index.d.ts +11 -0
  35. package/control-plane/index.d.ts.map +1 -1
  36. package/control-plane/index.js +8 -0
  37. package/control-plane/types.d.ts +14 -0
  38. package/control-plane/types.d.ts.map +1 -1
  39. package/controls/catalog.d.ts.map +1 -1
  40. package/controls/catalog.js +12 -1
  41. package/controls/qualification.d.ts.map +1 -1
  42. package/controls/qualification.js +71 -8
  43. package/core/client.d.ts.map +1 -1
  44. package/core/client.js +29 -31
  45. package/core/credential-redaction.d.ts +163 -0
  46. package/core/credential-redaction.d.ts.map +1 -0
  47. package/core/credential-redaction.js +389 -0
  48. package/core/error-classifications.d.ts +15 -0
  49. package/core/error-classifications.d.ts.map +1 -1
  50. package/core/error-classifications.js +15 -0
  51. package/core/error-code-registry.d.ts +15 -0
  52. package/core/error-code-registry.d.ts.map +1 -1
  53. package/core/error-code-registry.js +15 -0
  54. package/core/error-envelope.d.ts +31 -0
  55. package/core/error-envelope.d.ts.map +1 -1
  56. package/core/error-envelope.js +11 -0
  57. package/core/errors.d.ts +15 -3
  58. package/core/errors.d.ts.map +1 -1
  59. package/core/errors.js +254 -2
  60. package/core/geometry-input-sr.d.ts +3 -0
  61. package/core/geometry-input-sr.d.ts.map +1 -0
  62. package/core/geometry-input-sr.js +28 -0
  63. package/core/geoservices.d.ts.map +1 -1
  64. package/core/geoservices.js +33 -6
  65. package/core/grpc-adapter.d.ts +2 -2
  66. package/core/grpc-adapter.d.ts.map +1 -1
  67. package/core/grpc-adapter.js +41 -9
  68. package/core/job-run-errors.d.ts +10 -0
  69. package/core/job-run-errors.d.ts.map +1 -0
  70. package/core/job-run-errors.js +14 -0
  71. package/core/job-run-lifecycle.d.ts +34 -0
  72. package/core/job-run-lifecycle.d.ts.map +1 -0
  73. package/core/job-run-lifecycle.js +193 -0
  74. package/core/ogc-processes.d.ts +38 -31
  75. package/core/ogc-processes.d.ts.map +1 -1
  76. package/core/ogc-processes.js +123 -173
  77. package/core/pbf-decoder.d.ts.map +1 -1
  78. package/core/pbf-decoder.js +16 -4
  79. package/core/process-runner.js +15 -100
  80. package/core/protocol-transport.d.ts +6 -1
  81. package/core/protocol-transport.d.ts.map +1 -1
  82. package/core/request-pipeline.d.ts +6 -3
  83. package/core/request-pipeline.d.ts.map +1 -1
  84. package/core/request-pipeline.js +28 -11
  85. package/core/spatial-filter.d.ts +4 -4
  86. package/core/spatial-filter.d.ts.map +1 -1
  87. package/core/spatial-filter.js +7 -7
  88. package/core/surfaces.d.ts +2 -8
  89. package/core/surfaces.d.ts.map +1 -1
  90. package/core/surfaces.js +21 -112
  91. package/core/types.d.ts +21 -9
  92. package/core/types.d.ts.map +1 -1
  93. package/custom-elements.json +341 -0
  94. package/esri-compat/class-breaks-renderer.d.ts +2 -0
  95. package/esri-compat/class-breaks-renderer.d.ts.map +1 -1
  96. package/esri-compat/class-breaks-renderer.js +7 -0
  97. package/esri-compat/controls.d.ts +10 -1
  98. package/esri-compat/controls.d.ts.map +1 -1
  99. package/esri-compat/controls.js +86 -2
  100. package/esri-compat/directions.d.ts +35 -0
  101. package/esri-compat/directions.d.ts.map +1 -1
  102. package/esri-compat/directions.js +153 -2
  103. package/esri-compat/expand.d.ts +1 -0
  104. package/esri-compat/expand.d.ts.map +1 -1
  105. package/esri-compat/expand.js +61 -0
  106. package/esri-compat/feature-layer.d.ts +29 -4
  107. package/esri-compat/feature-layer.d.ts.map +1 -1
  108. package/esri-compat/feature-layer.js +335 -13
  109. package/esri-compat/geometry-engine.d.ts +4 -0
  110. package/esri-compat/geometry-engine.d.ts.map +1 -1
  111. package/esri-compat/geometry-engine.js +8 -1
  112. package/esri-compat/graphic.d.ts +7 -4
  113. package/esri-compat/graphic.d.ts.map +1 -1
  114. package/esri-compat/legend.d.ts +2 -1
  115. package/esri-compat/legend.d.ts.map +1 -1
  116. package/esri-compat/legend.js +15 -0
  117. package/esri-compat/map-view-mount.d.ts +48 -0
  118. package/esri-compat/map-view-mount.d.ts.map +1 -0
  119. package/esri-compat/map-view-mount.js +344 -0
  120. package/esri-compat/map-view.d.ts +38 -6
  121. package/esri-compat/map-view.d.ts.map +1 -1
  122. package/esri-compat/map-view.js +467 -33
  123. package/esri-compat/portal.d.ts +2 -0
  124. package/esri-compat/portal.d.ts.map +1 -1
  125. package/esri-compat/portal.js +7 -2
  126. package/esri-compat/renderer-objects.d.ts +7 -2
  127. package/esri-compat/renderer-objects.d.ts.map +1 -1
  128. package/esri-compat/renderer-objects.js +16 -5
  129. package/esri-compat/route-layer.d.ts +8 -0
  130. package/esri-compat/route-layer.d.ts.map +1 -1
  131. package/esri-compat/route-layer.js +24 -4
  132. package/esri-compat/route-task.d.ts +5 -1
  133. package/esri-compat/route-task.d.ts.map +1 -1
  134. package/esri-compat/route-task.js +119 -7
  135. package/esri-compat/scene-view.d.ts.map +1 -1
  136. package/esri-compat/scene-view.js +1 -0
  137. package/esri-compat/search.d.ts +2 -1
  138. package/esri-compat/search.d.ts.map +1 -1
  139. package/esri-compat/search.js +52 -2
  140. package/esri-compat/unique-value-renderer.d.ts +2 -0
  141. package/esri-compat/unique-value-renderer.d.ts.map +1 -1
  142. package/esri-compat/unique-value-renderer.js +7 -0
  143. package/esri-compat/web-map.d.ts +10 -0
  144. package/esri-compat/web-map.d.ts.map +1 -1
  145. package/esri-compat/web-map.js +102 -0
  146. package/gen/geospatial/v1/common_pb.d.ts +514 -0
  147. package/gen/geospatial/v1/common_pb.d.ts.map +1 -0
  148. package/gen/geospatial/v1/common_pb.js +335 -0
  149. package/gen/geospatial/v1/execution_types_pb.d.ts +1186 -0
  150. package/gen/geospatial/v1/execution_types_pb.d.ts.map +1 -0
  151. package/gen/geospatial/v1/execution_types_pb.js +396 -0
  152. package/gen/geospatial/v1/feature_service_pb.d.ts +403 -0
  153. package/gen/geospatial/v1/feature_service_pb.d.ts.map +1 -0
  154. package/gen/geospatial/v1/feature_service_pb.js +47 -0
  155. package/gen/geospatial/v1/index.d.ts +5 -0
  156. package/gen/geospatial/v1/index.d.ts.map +1 -0
  157. package/gen/geospatial/v1/index.js +9 -0
  158. package/gen/geospatial/v1/spatial_types_pb.d.ts +285 -0
  159. package/gen/geospatial/v1/spatial_types_pb.d.ts.map +1 -0
  160. package/gen/geospatial/v1/spatial_types_pb.js +58 -0
  161. package/gen/geospatial/v1/workspace_artifact_types_pb.d.ts +379 -0
  162. package/gen/geospatial/v1/workspace_artifact_types_pb.d.ts.map +1 -0
  163. package/gen/geospatial/v1/workspace_artifact_types_pb.js +151 -0
  164. package/generated-app/projection.d.ts.map +1 -1
  165. package/generated-app/projection.js +10 -1
  166. package/geocoding/index.d.ts +1 -0
  167. package/geocoding/index.d.ts.map +1 -1
  168. package/geocoding/index.js +18 -8
  169. package/geocoding/provider-http.d.ts.map +1 -1
  170. package/geocoding/provider-http.js +3 -1
  171. package/map/webmap-maplibre.d.ts +2 -1
  172. package/map/webmap-maplibre.d.ts.map +1 -1
  173. package/map/webmap-maplibre.js +3 -0
  174. package/operate/client.d.ts +11 -1
  175. package/operate/client.d.ts.map +1 -1
  176. package/operate/client.js +39 -2
  177. package/operate/index.d.ts +1 -1
  178. package/operate/index.d.ts.map +1 -1
  179. package/operate/types.d.ts +40 -6
  180. package/operate/types.d.ts.map +1 -1
  181. package/package.json +6 -4
  182. package/query-planner/geoservices.d.ts.map +1 -1
  183. package/query-planner/geoservices.js +2 -0
  184. package/query-planner/grpc.d.ts +4 -4
  185. package/query-planner/grpc.d.ts.map +1 -1
  186. package/query-planner/grpc.js +11 -11
  187. package/query-planner/types.d.ts +6 -4
  188. package/query-planner/types.d.ts.map +1 -1
  189. package/realtime/honua-server.d.ts +4 -0
  190. package/realtime/honua-server.d.ts.map +1 -1
  191. package/realtime/honua-server.js +10 -0
  192. package/realtime/resumable.js +9 -0
  193. package/realtime/types.d.ts +8 -0
  194. package/realtime/types.d.ts.map +1 -1
  195. package/runtime/errors.d.ts +1 -1
  196. package/runtime/errors.d.ts.map +1 -1
  197. package/runtime/errors.js +2 -0
  198. package/runtime/generated/map-package-schema-meta.d.ts +11 -0
  199. package/runtime/generated/map-package-schema-meta.d.ts.map +1 -0
  200. package/runtime/generated/map-package-schema-meta.js +12 -0
  201. package/runtime/generated/map-package-schema-validator.d.ts +16 -0
  202. package/runtime/generated/map-package-schema-validator.d.ts.map +1 -0
  203. package/runtime/generated/map-package-schema-validator.js +1422 -0
  204. package/runtime/index.d.ts +5 -1
  205. package/runtime/index.d.ts.map +1 -1
  206. package/runtime/index.js +6 -0
  207. package/runtime/map-package-export.d.ts +151 -0
  208. package/runtime/map-package-export.d.ts.map +1 -0
  209. package/runtime/map-package-export.js +636 -0
  210. package/runtime/map-package-validation.d.ts +21 -1
  211. package/runtime/map-package-validation.d.ts.map +1 -1
  212. package/runtime/map-package-validation.js +132 -95
  213. package/runtime/map-package.d.ts +80 -0
  214. package/runtime/map-package.d.ts.map +1 -1
  215. package/scene-workspace/cesium-adapter.d.ts +8 -8
  216. package/scene-workspace/cesium-adapter.d.ts.map +1 -1
  217. package/scene-workspace/cesium-adapter.js +31 -18
  218. package/scene-workspace/index.d.ts +2 -2
  219. package/scene-workspace/index.d.ts.map +1 -1
  220. package/scene-workspace/index.js +1 -1
  221. package/scene-workspace/maplibre-state-sync.d.ts.map +1 -1
  222. package/scene-workspace/maplibre-state-sync.js +35 -3
  223. package/scene-workspace/primitives.d.ts +37 -5
  224. package/scene-workspace/primitives.d.ts.map +1 -1
  225. package/scene-workspace/primitives.js +55 -18
  226. package/scene-workspace/source-to-cesium.js +1 -1
  227. package/scene-workspace/state-sync-port-kit.d.ts +1 -1
  228. package/scene-workspace/state-sync-port-kit.d.ts.map +1 -1
  229. package/studio/capability-manifest.d.ts +10 -0
  230. package/studio/capability-manifest.d.ts.map +1 -1
  231. package/studio/capability-manifest.js +38 -0
  232. package/studio/chart-spec.d.ts +6 -6
  233. package/studio/chart-spec.d.ts.map +1 -1
  234. package/studio/chart-spec.js +6 -6
  235. package/studio/command-adapter.d.ts +35 -0
  236. package/studio/command-adapter.d.ts.map +1 -0
  237. package/studio/command-adapter.js +36 -0
  238. package/studio/generated/studio-api.d.ts +1062 -0
  239. package/studio/generated/studio-api.d.ts.map +1 -0
  240. package/studio/generated/studio-api.js +4 -0
  241. package/studio/index.d.ts +25 -13
  242. package/studio/index.d.ts.map +1 -1
  243. package/studio/index.js +21 -10
  244. package/studio/lifecycle-client.d.ts +262 -22
  245. package/studio/lifecycle-client.d.ts.map +1 -1
  246. package/studio/lifecycle-client.js +543 -24
  247. package/studio/lifecycle-errors.d.ts +8 -2
  248. package/studio/lifecycle-errors.d.ts.map +1 -1
  249. package/studio/lifecycle-errors.js +6 -1
  250. package/studio/lifecycle-types.d.ts +237 -38
  251. package/studio/lifecycle-types.d.ts.map +1 -1
  252. package/studio/lifecycle-types.js +5 -12
  253. package/studio/publication-status.d.ts +55 -0
  254. package/studio/publication-status.d.ts.map +1 -0
  255. package/studio/publication-status.js +103 -0
  256. package/studio/types.d.ts +37 -7
  257. package/studio/types.d.ts.map +1 -1
  258. package/studio/types.js +5 -3
  259. package/studio/validate.d.ts.map +1 -1
  260. package/studio/validate.js +104 -7
  261. package/style/renderers.d.ts +6 -1
  262. package/style/renderers.d.ts.map +1 -1
  263. package/style/renderers.js +11 -6
  264. package/style/visual-variables.d.ts +43 -0
  265. package/style/visual-variables.d.ts.map +1 -0
  266. package/style/visual-variables.js +183 -0
  267. package/web-components/application-context.d.ts +186 -0
  268. package/web-components/application-context.d.ts.map +1 -0
  269. package/web-components/application-context.js +429 -0
  270. package/web-components/elements.d.ts +10 -1
  271. package/web-components/elements.d.ts.map +1 -1
  272. package/web-components/elements.js +187 -7
  273. package/web-components/export-redaction.d.ts +11 -102
  274. package/web-components/export-redaction.d.ts.map +1 -1
  275. package/web-components/export-redaction.js +7 -260
  276. package/web-components/feature-editor-offline.d.ts +32 -0
  277. package/web-components/feature-editor-offline.d.ts.map +1 -0
  278. package/web-components/feature-editor-offline.js +115 -0
  279. package/web-components/feature-editor-workflow.d.ts +85 -22
  280. package/web-components/feature-editor-workflow.d.ts.map +1 -1
  281. package/web-components/feature-editor-workflow.js +240 -0
  282. package/web-components/feature-editor.d.ts +20 -6
  283. package/web-components/feature-editor.d.ts.map +1 -1
  284. package/web-components/feature-editor.js +159 -7
  285. package/web-components/feature-inspection.d.ts +287 -0
  286. package/web-components/feature-inspection.d.ts.map +1 -0
  287. package/web-components/feature-inspection.js +1464 -0
  288. package/web-components/feature-mutation.d.ts +77 -0
  289. package/web-components/feature-mutation.d.ts.map +1 -0
  290. package/web-components/feature-mutation.js +137 -0
  291. package/web-components/feature-table-engine.d.ts +94 -4
  292. package/web-components/feature-table-engine.d.ts.map +1 -1
  293. package/web-components/feature-table-engine.js +365 -18
  294. package/web-components/feature-table-view.d.ts +35 -1
  295. package/web-components/feature-table-view.d.ts.map +1 -1
  296. package/web-components/feature-table-view.js +128 -12
  297. package/web-components/index.d.ts +16 -7
  298. package/web-components/index.d.ts.map +1 -1
  299. package/web-components/index.js +9 -2
  300. package/web-components/map-pointer-claim.d.ts +24 -0
  301. package/web-components/map-pointer-claim.d.ts.map +1 -0
  302. package/web-components/map-pointer-claim.js +40 -0
  303. package/web-components/maplibre-renderer.d.ts.map +1 -1
  304. package/web-components/maplibre-renderer.js +5 -1
  305. package/web-components/measurement-units.d.ts +88 -0
  306. package/web-components/measurement-units.d.ts.map +1 -0
  307. package/web-components/measurement-units.js +278 -0
  308. package/web-components/measurement.d.ts +75 -4
  309. package/web-components/measurement.d.ts.map +1 -1
  310. package/web-components/measurement.js +227 -28
  311. package/web-components/types.d.ts +58 -3
  312. package/web-components/types.d.ts.map +1 -1
  313. package/webmap/convert-layer.d.ts +2 -1
  314. package/webmap/convert-layer.d.ts.map +1 -1
  315. package/webmap/convert-layer.js +20 -3
  316. package/webmap/convert-renderer.d.ts +10 -3
  317. package/webmap/convert-renderer.d.ts.map +1 -1
  318. package/webmap/convert-renderer.js +190 -36
  319. package/webmap/index.d.ts +1 -0
  320. package/webmap/index.d.ts.map +1 -1
  321. package/webmap/parse.d.ts +2 -1
  322. package/webmap/parse.d.ts.map +1 -1
  323. package/webmap/parse.js +1 -1
  324. package/gen/honua/v1/feature_service_pb.d.ts +0 -918
  325. package/gen/honua/v1/feature_service_pb.d.ts.map +0 -1
  326. 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":"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"}
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
- const columns = snapshot.visibleColumns.length > 0 ? snapshot.visibleColumns : snapshot.columns;
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.columns.length);
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
- ${model.rows.length === 0
224
- ? `<tr role="row"><td role="gridcell" colspan="${columnCount}" class="empty">${escapeHtml(model.statusLabel)}</td></tr>`
225
- : model.rows
226
- .map((row, rowOffset) => bodyRowHtml(row, rowOffset, model, focusedRow, focusedField, hasFocus))
227
- .join("")}
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 model.statusLabel;
280
- return `${model.statusLabel}. ${model.conflicts.map((conflict) => conflict.message).join(" ")}`;
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: 100%; }
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":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/web-components/index.ts"],"names":[],"mappings":"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"}
@@ -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;AAErD,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;CAoX1B"}
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
- if (featureId === undefined)
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"}