@honua/app-platform 0.1.2-beta.0 → 0.1.7-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 (400) hide show
  1. package/app/index.d.ts.map +1 -1
  2. package/app/index.js +4 -0
  3. package/collaboration/client.d.ts.map +1 -1
  4. package/connect-url-safety.d.ts +53 -0
  5. package/connect-url-safety.js +189 -0
  6. package/contract/discovery.d.ts +34 -0
  7. package/contract/discovery.d.ts.map +1 -1
  8. package/contract/index.d.ts +7 -5
  9. package/contract/index.d.ts.map +1 -1
  10. package/contract/index.js +3 -2
  11. package/contract/pmtiles.d.ts +10 -1
  12. package/contract/pmtiles.d.ts.map +1 -1
  13. package/contract/pmtiles.js +10 -2
  14. package/contract/protocol-module.d.ts +84 -9
  15. package/contract/protocol-module.d.ts.map +1 -1
  16. package/contract/query-filter-fes.d.ts +18 -0
  17. package/contract/query-filter-fes.d.ts.map +1 -0
  18. package/contract/query-filter-fes.js +122 -0
  19. package/contract/query-filter.d.ts +300 -0
  20. package/contract/query-filter.d.ts.map +1 -0
  21. package/contract/query-filter.js +883 -0
  22. package/contract/schema.d.ts +12 -0
  23. package/contract/schema.d.ts.map +1 -1
  24. package/contract/schema.js +34 -0
  25. package/contract/source-capability-support.d.ts.map +1 -1
  26. package/contract/source-capability-support.js +15 -3
  27. package/contract/source.d.ts +45 -25
  28. package/contract/source.d.ts.map +1 -1
  29. package/contract/source.js +719 -479
  30. package/contract/types.d.ts +88 -19
  31. package/contract/types.d.ts.map +1 -1
  32. package/contract/types.js +4 -0
  33. package/contract/widget-source.d.ts.map +1 -1
  34. package/controls/basemap-switcher.d.ts +19 -11
  35. package/controls/basemap-switcher.d.ts.map +1 -1
  36. package/controls/basemap-switcher.js +58 -25
  37. package/controls/catalog.d.ts +105 -0
  38. package/controls/catalog.d.ts.map +1 -0
  39. package/controls/catalog.js +341 -0
  40. package/controls/element-utils.d.ts +9 -0
  41. package/controls/element-utils.d.ts.map +1 -1
  42. package/controls/element-utils.js +17 -0
  43. package/controls/index.d.ts +29 -8
  44. package/controls/index.d.ts.map +1 -1
  45. package/controls/index.js +26 -8
  46. package/controls/layer-list.d.ts +13 -5
  47. package/controls/layer-list.d.ts.map +1 -1
  48. package/controls/layer-list.js +72 -15
  49. package/controls/legend.d.ts +32 -5
  50. package/controls/legend.d.ts.map +1 -1
  51. package/controls/legend.js +95 -25
  52. package/controls/qualification.d.ts +152 -0
  53. package/controls/qualification.d.ts.map +1 -0
  54. package/controls/qualification.js +1265 -0
  55. package/controls/registry.d.ts +104 -0
  56. package/controls/registry.d.ts.map +1 -0
  57. package/controls/registry.js +150 -0
  58. package/controls/swipe-control.d.ts +6 -1
  59. package/controls/swipe-control.d.ts.map +1 -1
  60. package/controls/swipe-control.js +82 -20
  61. package/core/client.d.ts +51 -21
  62. package/core/client.d.ts.map +1 -1
  63. package/core/client.js +234 -54
  64. package/core/error-classifications.d.ts +23 -0
  65. package/core/error-classifications.d.ts.map +1 -1
  66. package/core/error-classifications.js +23 -0
  67. package/core/error-code-registry.d.ts +24 -1
  68. package/core/error-code-registry.d.ts.map +1 -1
  69. package/core/error-code-registry.js +23 -0
  70. package/core/error-envelope.js +2 -0
  71. package/core/errors.d.ts +2 -2
  72. package/core/errors.d.ts.map +1 -1
  73. package/core/errors.js +1 -1
  74. package/core/geoparquet-sql.d.ts +69 -5
  75. package/core/geoparquet-sql.d.ts.map +1 -1
  76. package/core/geoparquet-sql.js +327 -10
  77. package/core/odata-write-codec.d.ts.map +1 -1
  78. package/core/odata-write-codec.js +0 -1
  79. package/core/odata.d.ts +6 -0
  80. package/core/odata.d.ts.map +1 -1
  81. package/core/odata.js +6 -1
  82. package/core/ogc-processes.d.ts +182 -25
  83. package/core/ogc-processes.d.ts.map +1 -1
  84. package/core/ogc-processes.js +602 -30
  85. package/core/process-runner.d.ts +8 -1
  86. package/core/process-runner.d.ts.map +1 -1
  87. package/core/process-runner.js +1 -0
  88. package/core/protocol-transport.d.ts +2 -0
  89. package/core/protocol-transport.d.ts.map +1 -1
  90. package/core/stac.d.ts +32 -0
  91. package/core/stac.d.ts.map +1 -1
  92. package/core/stac.js +158 -23
  93. package/core/surfaces.d.ts.map +1 -1
  94. package/core/surfaces.js +273 -68
  95. package/core/types.d.ts +138 -11
  96. package/core/types.d.ts.map +1 -1
  97. package/core/wfs-axis-order.d.ts +18 -0
  98. package/core/wfs-axis-order.d.ts.map +1 -0
  99. package/core/wfs-axis-order.js +108 -0
  100. package/core/wfs-capabilities.d.ts +65 -24
  101. package/core/wfs-capabilities.d.ts.map +1 -1
  102. package/core/wfs-capabilities.js +237 -27
  103. package/core/wfs-filter.d.ts +26 -3
  104. package/core/wfs-filter.d.ts.map +1 -1
  105. package/core/wfs-filter.js +48 -53
  106. package/core/wfs-protocol-error.d.ts +12 -0
  107. package/core/wfs-protocol-error.d.ts.map +1 -0
  108. package/core/wfs-protocol-error.js +13 -0
  109. package/core/wfs.d.ts +53 -1
  110. package/core/wfs.d.ts.map +1 -1
  111. package/core/wfs.js +251 -29
  112. package/core/wms-feature-info.d.ts +92 -0
  113. package/core/wms-feature-info.d.ts.map +1 -0
  114. package/core/wms-feature-info.js +285 -0
  115. package/core/wms.d.ts +9 -0
  116. package/core/wms.d.ts.map +1 -1
  117. package/core/wms.js +17 -5
  118. package/esri-compat/event-bus.d.ts +20 -0
  119. package/esri-compat/event-bus.d.ts.map +1 -1
  120. package/esri-compat/feature-filter.d.ts +46 -1
  121. package/esri-compat/feature-filter.d.ts.map +1 -1
  122. package/esri-compat/feature-filter.js +49 -0
  123. package/esri-compat/geojson-layer.d.ts +4 -2
  124. package/esri-compat/geojson-layer.d.ts.map +1 -1
  125. package/esri-compat/geojson-layer.js +4 -2
  126. package/esri-compat/identity-manager.js +2 -2
  127. package/esri-compat/imagery-layer.d.ts +2 -1
  128. package/esri-compat/imagery-layer.d.ts.map +1 -1
  129. package/esri-compat/imagery-layer.js +2 -1
  130. package/esri-compat/layer-list.d.ts +8 -1
  131. package/esri-compat/layer-list.d.ts.map +1 -1
  132. package/esri-compat/layer-list.js +11 -4
  133. package/esri-compat/legend.d.ts.map +1 -1
  134. package/esri-compat/legend.js +1 -1
  135. package/esri-compat/locator.d.ts +297 -0
  136. package/esri-compat/locator.d.ts.map +1 -0
  137. package/esri-compat/locator.js +579 -0
  138. package/esri-compat/map-image-layer.d.ts.map +1 -1
  139. package/esri-compat/map-view.d.ts.map +1 -1
  140. package/esri-compat/map-view.js +1 -1
  141. package/esri-compat/scene-view.d.ts.map +1 -1
  142. package/esri-compat/time-slider.d.ts +29 -0
  143. package/esri-compat/time-slider.d.ts.map +1 -1
  144. package/esri-compat/time-slider.js +117 -0
  145. package/esri-compat/wfs-layer.d.ts +2 -1
  146. package/esri-compat/wfs-layer.d.ts.map +1 -1
  147. package/esri-compat/wfs-layer.js +2 -1
  148. package/esri-compat/widget-host.d.ts +42 -6
  149. package/esri-compat/widget-host.d.ts.map +1 -1
  150. package/esri-compat/widget-host.js +99 -10
  151. package/generated-app/projection.d.ts.map +1 -1
  152. package/generated-app/runtime.d.ts.map +1 -1
  153. package/interactions/declarative-contract.d.ts +149 -0
  154. package/interactions/declarative-contract.d.ts.map +1 -0
  155. package/interactions/declarative-contract.js +293 -0
  156. package/interactions/declarative.d.ts +198 -0
  157. package/interactions/declarative.d.ts.map +1 -0
  158. package/interactions/declarative.js +470 -0
  159. package/interactions/feature-state.d.ts +7 -0
  160. package/interactions/feature-state.d.ts.map +1 -1
  161. package/interactions/feature-state.js +10 -2
  162. package/map/data-to-map-bridge.d.ts +1 -1
  163. package/map/data-to-map-bridge.d.ts.map +1 -1
  164. package/map/data-to-map-bridge.js +1 -2
  165. package/map/honua-map.d.ts.map +1 -1
  166. package/map/honua-map.js +1 -1
  167. package/map/index.d.ts +2 -0
  168. package/map/index.d.ts.map +1 -1
  169. package/map/index.js +2 -0
  170. package/map/maplibre-target.js +1 -1
  171. package/map/realtime-reconciliation-adapter.d.ts +98 -0
  172. package/map/realtime-reconciliation-adapter.d.ts.map +1 -0
  173. package/map/realtime-reconciliation-adapter.js +84 -0
  174. package/map/temporal-playback.d.ts +25 -0
  175. package/map/temporal-playback.d.ts.map +1 -1
  176. package/map/temporal-playback.js +29 -1
  177. package/operator/workspace/workspace.d.ts.map +1 -1
  178. package/operator/workspace/workspace.js +0 -2
  179. package/package.json +4 -3
  180. package/query-planner/canonical-filter.d.ts +30 -0
  181. package/query-planner/canonical-filter.d.ts.map +1 -0
  182. package/query-planner/canonical-filter.js +30 -0
  183. package/query-planner/columnar-plan.d.ts +63 -0
  184. package/query-planner/columnar-plan.d.ts.map +1 -0
  185. package/query-planner/columnar-plan.js +94 -0
  186. package/query-planner/diagnostics.d.ts +3 -3
  187. package/query-planner/diagnostics.d.ts.map +1 -1
  188. package/query-planner/diagnostics.js +17 -4
  189. package/query-planner/duckdb.d.ts.map +1 -1
  190. package/query-planner/duckdb.js +16 -2
  191. package/query-planner/execution-context.d.ts.map +1 -1
  192. package/query-planner/execution-context.js +3 -1
  193. package/query-planner/executor.d.ts.map +1 -1
  194. package/query-planner/executor.js +7 -1
  195. package/query-planner/geoservices.d.ts.map +1 -1
  196. package/query-planner/geoservices.js +24 -5
  197. package/query-planner/grpc.d.ts.map +1 -1
  198. package/query-planner/grpc.js +29 -5
  199. package/query-planner/index.d.ts +20 -5
  200. package/query-planner/index.d.ts.map +1 -1
  201. package/query-planner/index.js +16 -3
  202. package/query-planner/ir.d.ts +6 -1
  203. package/query-planner/ir.d.ts.map +1 -1
  204. package/query-planner/ir.js +63 -1
  205. package/query-planner/odata-protocol-module.d.ts +54 -0
  206. package/query-planner/odata-protocol-module.d.ts.map +1 -0
  207. package/query-planner/odata-protocol-module.js +199 -0
  208. package/query-planner/odata-v1.d.ts +23 -0
  209. package/query-planner/odata-v1.d.ts.map +1 -0
  210. package/query-planner/odata-v1.js +202 -0
  211. package/query-planner/odata.d.ts +0 -3
  212. package/query-planner/odata.d.ts.map +1 -1
  213. package/query-planner/odata.js +0 -143
  214. package/query-planner/ogc-features.d.ts.map +1 -1
  215. package/query-planner/ogc-features.js +23 -1
  216. package/query-planner/planner.d.ts +2 -2
  217. package/query-planner/planner.d.ts.map +1 -1
  218. package/query-planner/planner.js +146 -27
  219. package/query-planner/representation.d.ts +59 -0
  220. package/query-planner/representation.d.ts.map +1 -0
  221. package/query-planner/representation.js +140 -0
  222. package/query-planner/types.d.ts +153 -3
  223. package/query-planner/types.d.ts.map +1 -1
  224. package/query-planner/wfs-protocol-module.d.ts +57 -0
  225. package/query-planner/wfs-protocol-module.d.ts.map +1 -0
  226. package/query-planner/wfs-protocol-module.js +731 -0
  227. package/query-planner/wfs-v1.d.ts +41 -0
  228. package/query-planner/wfs-v1.d.ts.map +1 -0
  229. package/query-planner/wfs-v1.js +366 -0
  230. package/query-planner/wfs.d.ts +1 -3
  231. package/query-planner/wfs.d.ts.map +1 -1
  232. package/query-planner/wfs.js +1 -70
  233. package/realtime/checkpoint-store.d.ts +206 -0
  234. package/realtime/checkpoint-store.d.ts.map +1 -0
  235. package/realtime/checkpoint-store.js +504 -0
  236. package/realtime/honua-server.d.ts +8 -0
  237. package/realtime/honua-server.d.ts.map +1 -1
  238. package/realtime/honua-server.js +123 -14
  239. package/realtime/index.d.ts +4 -0
  240. package/realtime/index.d.ts.map +1 -1
  241. package/realtime/index.js +2 -0
  242. package/realtime/reconciliation.d.ts +245 -0
  243. package/realtime/reconciliation.d.ts.map +1 -0
  244. package/realtime/reconciliation.js +377 -0
  245. package/realtime/resumable-transport.d.ts.map +1 -1
  246. package/realtime/sse.d.ts.map +1 -1
  247. package/realtime/sse.js +7 -1
  248. package/realtime/websocket.d.ts.map +1 -1
  249. package/realtime/wire.d.ts +2 -1
  250. package/realtime/wire.d.ts.map +1 -1
  251. package/realtime/wire.js +24 -8
  252. package/replica-sync/errors.d.ts +19 -1
  253. package/replica-sync/errors.d.ts.map +1 -1
  254. package/replica-sync/errors.js +16 -0
  255. package/replica-sync/geoservices.d.ts +260 -0
  256. package/replica-sync/geoservices.d.ts.map +1 -0
  257. package/replica-sync/geoservices.js +1093 -0
  258. package/replica-sync/index.d.ts +5 -1
  259. package/replica-sync/index.d.ts.map +1 -1
  260. package/replica-sync/index.js +3 -1
  261. package/replica-sync/transport-conformance.d.ts +58 -0
  262. package/replica-sync/transport-conformance.d.ts.map +1 -0
  263. package/replica-sync/transport-conformance.js +265 -0
  264. package/replica-sync/types.d.ts +22 -0
  265. package/replica-sync/types.d.ts.map +1 -1
  266. package/runtime/index.d.ts +6 -2
  267. package/runtime/index.d.ts.map +1 -1
  268. package/runtime/index.js +3 -1
  269. package/runtime/load-package.d.ts +24 -0
  270. package/runtime/load-package.d.ts.map +1 -1
  271. package/runtime/load-package.js +45 -1
  272. package/runtime/maplibre-renderer.d.ts +11 -0
  273. package/runtime/maplibre-renderer.d.ts.map +1 -1
  274. package/runtime/maplibre-renderer.js +32 -7
  275. package/runtime/offline-region-protocol.d.ts +73 -0
  276. package/runtime/offline-region-protocol.d.ts.map +1 -0
  277. package/runtime/offline-region-protocol.js +63 -0
  278. package/runtime/offline-region-style.d.ts +78 -0
  279. package/runtime/offline-region-style.d.ts.map +1 -0
  280. package/runtime/offline-region-style.js +147 -0
  281. package/runtime/pmtiles-protocol.d.ts +7 -8
  282. package/runtime/pmtiles-protocol.d.ts.map +1 -1
  283. package/runtime/pmtiles-protocol.js +19 -66
  284. package/runtime/protocol-registry.d.ts +55 -0
  285. package/runtime/protocol-registry.d.ts.map +1 -0
  286. package/runtime/protocol-registry.js +103 -0
  287. package/runtime/runtime.d.ts +2 -0
  288. package/runtime/runtime.d.ts.map +1 -1
  289. package/runtime/runtime.js +6 -1
  290. package/runtime/style-compose.d.ts.map +1 -1
  291. package/runtime/style-compose.js +78 -9
  292. package/scene-workspace/analysis-widgets.d.ts +4 -2
  293. package/scene-workspace/analysis-widgets.d.ts.map +1 -1
  294. package/scene-workspace/analysis-widgets.js +4 -2
  295. package/scene-workspace/camera-correspondence.d.ts +151 -0
  296. package/scene-workspace/camera-correspondence.d.ts.map +1 -0
  297. package/scene-workspace/camera-correspondence.js +220 -0
  298. package/scene-workspace/cesium-adapter.d.ts +230 -29
  299. package/scene-workspace/cesium-adapter.d.ts.map +1 -1
  300. package/scene-workspace/cesium-adapter.js +741 -56
  301. package/scene-workspace/cesium-mount.d.ts +205 -0
  302. package/scene-workspace/cesium-mount.d.ts.map +1 -0
  303. package/scene-workspace/cesium-mount.js +392 -0
  304. package/scene-workspace/cesium-scene-owner.d.ts +160 -0
  305. package/scene-workspace/cesium-scene-owner.d.ts.map +1 -0
  306. package/scene-workspace/cesium-scene-owner.js +205 -0
  307. package/scene-workspace/cesium-state-sync.d.ts +101 -0
  308. package/scene-workspace/cesium-state-sync.d.ts.map +1 -0
  309. package/scene-workspace/cesium-state-sync.js +432 -0
  310. package/scene-workspace/cesium-time.d.ts +346 -0
  311. package/scene-workspace/cesium-time.d.ts.map +1 -0
  312. package/scene-workspace/cesium-time.js +403 -0
  313. package/scene-workspace/index.d.ts +42 -10
  314. package/scene-workspace/index.d.ts.map +1 -1
  315. package/scene-workspace/index.js +32 -7
  316. package/scene-workspace/maplibre-state-sync.d.ts +112 -0
  317. package/scene-workspace/maplibre-state-sync.d.ts.map +1 -0
  318. package/scene-workspace/maplibre-state-sync.js +400 -0
  319. package/scene-workspace/primitives.d.ts +237 -3
  320. package/scene-workspace/primitives.d.ts.map +1 -1
  321. package/scene-workspace/primitives.js +1087 -17
  322. package/scene-workspace/scene-discovery.d.ts +5 -2
  323. package/scene-workspace/scene-discovery.d.ts.map +1 -1
  324. package/scene-workspace/scene-discovery.js +5 -2
  325. package/scene-workspace/scene-view.d.ts +5 -2
  326. package/scene-workspace/scene-view.d.ts.map +1 -1
  327. package/scene-workspace/scene-view.js +5 -2
  328. package/scene-workspace/source-to-cesium.d.ts +141 -8
  329. package/scene-workspace/source-to-cesium.d.ts.map +1 -1
  330. package/scene-workspace/source-to-cesium.js +497 -72
  331. package/scene-workspace/state-sync-port-kit.d.ts +156 -0
  332. package/scene-workspace/state-sync-port-kit.d.ts.map +1 -0
  333. package/scene-workspace/state-sync-port-kit.js +319 -0
  334. package/scene-workspace/state-sync.d.ts +34 -1
  335. package/scene-workspace/state-sync.d.ts.map +1 -1
  336. package/scene-workspace/state-sync.js +48 -0
  337. package/scene-workspace/types.d.ts +8 -0
  338. package/scene-workspace/types.d.ts.map +1 -1
  339. package/scene-workspace/types.js +2 -0
  340. package/scene-workspace/workspace.d.ts +12 -1
  341. package/scene-workspace/workspace.d.ts.map +1 -1
  342. package/scene-workspace/workspace.js +13 -0
  343. package/studio/index.d.ts +24 -7
  344. package/studio/index.d.ts.map +1 -1
  345. package/studio/index.js +21 -7
  346. package/studio/lifecycle-client.d.ts +164 -0
  347. package/studio/lifecycle-client.d.ts.map +1 -0
  348. package/studio/lifecycle-client.js +299 -0
  349. package/studio/lifecycle-errors.d.ts +91 -0
  350. package/studio/lifecycle-errors.d.ts.map +1 -0
  351. package/studio/lifecycle-errors.js +77 -0
  352. package/studio/lifecycle-types.d.ts +321 -0
  353. package/studio/lifecycle-types.d.ts.map +1 -0
  354. package/studio/lifecycle-types.js +22 -0
  355. package/web-components/controller.d.ts.map +1 -1
  356. package/web-components/csp-styles.d.ts +6 -0
  357. package/web-components/csp-styles.d.ts.map +1 -0
  358. package/web-components/csp-styles.js +53 -0
  359. package/web-components/elements.d.ts +158 -2
  360. package/web-components/elements.d.ts.map +1 -1
  361. package/web-components/elements.js +1302 -215
  362. package/web-components/export-redaction.d.ts +252 -0
  363. package/web-components/export-redaction.d.ts.map +1 -0
  364. package/web-components/export-redaction.js +588 -0
  365. package/web-components/export.d.ts +417 -0
  366. package/web-components/export.d.ts.map +1 -0
  367. package/web-components/export.js +719 -0
  368. package/web-components/feature-editor-model.d.ts +265 -0
  369. package/web-components/feature-editor-model.d.ts.map +1 -0
  370. package/web-components/feature-editor-model.js +438 -0
  371. package/web-components/feature-editor-sketch.d.ts +125 -0
  372. package/web-components/feature-editor-sketch.d.ts.map +1 -0
  373. package/web-components/feature-editor-sketch.js +194 -0
  374. package/web-components/feature-editor-workflow.d.ts +286 -0
  375. package/web-components/feature-editor-workflow.d.ts.map +1 -0
  376. package/web-components/feature-editor-workflow.js +889 -0
  377. package/web-components/feature-editor.d.ts +83 -0
  378. package/web-components/feature-editor.d.ts.map +1 -0
  379. package/web-components/feature-editor.js +829 -0
  380. package/web-components/feature-table-engine.d.ts +465 -0
  381. package/web-components/feature-table-engine.d.ts.map +1 -0
  382. package/web-components/feature-table-engine.js +1360 -0
  383. package/web-components/feature-table-view.d.ts +95 -0
  384. package/web-components/feature-table-view.d.ts.map +1 -0
  385. package/web-components/feature-table-view.js +343 -0
  386. package/web-components/index.d.ts +34 -3
  387. package/web-components/index.d.ts.map +1 -1
  388. package/web-components/index.js +35 -2
  389. package/web-components/maplibre-renderer.d.ts.map +1 -1
  390. package/web-components/maplibre-renderer.js +13 -4
  391. package/web-components/measurement.d.ts +3 -1
  392. package/web-components/measurement.d.ts.map +1 -1
  393. package/web-components/measurement.js +62 -18
  394. package/web-components/time-slider.d.ts +122 -0
  395. package/web-components/time-slider.d.ts.map +1 -0
  396. package/web-components/time-slider.js +740 -0
  397. package/web-components/types.d.ts +310 -0
  398. package/web-components/types.d.ts.map +1 -1
  399. package/webmap/convert-label.js +0 -1
  400. package/webmap/convert-symbol.d.ts.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../../src/generated-app/runtime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../../src/generated-app/runtime.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,149 @@
1
+ /**
2
+ * The declarative interaction vocabulary from the open geospatial MCP
3
+ * standard (geospatial-mcp ADR-0030, `spec/schemas/common/interactions.schema.json`).
4
+ *
5
+ * This module owns ONLY the data shapes, the standard's closed sets, and the
6
+ * pure validation rules — no binding, no DOM, no imports — so the same rules
7
+ * can be reused by the agent-tool vocabulary (`@honua/sdk-js/agent-tools`'
8
+ * `bindInteraction` verb) without dragging the compiler
9
+ * (`./declarative.js`) and its exploration primitives into that bundle.
10
+ *
11
+ * The normative rules encoded here:
12
+ *
13
+ * - **Closed event set** — `featureSelect`/`featureHover` (layer sources),
14
+ * `selection` (widget sources), `change` (control sources),
15
+ * `viewportChange` (map source). Extending it requires a standard ADR.
16
+ * - **Closed verb set** — `setFilter`, `setViewport`, `selectFeature`,
17
+ * `runWidgetQuery`, `setVisibility`. Verbs mutate presentation/exploration
18
+ * state only, never source records.
19
+ * - **Arguments are static JSON plus `$event.*` path substitution.** There is
20
+ * no expression language: no arithmetic, no conditionals, no function
21
+ * calls. A string that starts with `$event` MUST be a well-formed
22
+ * `$event.<segment>[.<segment>…]` path.
23
+ * - **Unique ids** within one interactions block.
24
+ * - **Fan-out cap** — at most {@link HONUA_INTERACTION_FANOUT_CAP} (8,
25
+ * the standard's RECOMMENDED cap) interactions may share one
26
+ * (`on.ref`, `on.event`) pair. Blocks over the cap are rejected, never
27
+ * truncated.
28
+ *
29
+ * Reference resolution ("does `layer:parcels` exist in this document?") is a
30
+ * validation-gate responsibility the standard deliberately leaves to the
31
+ * host; the compiler in `./declarative.js` performs it against the concrete
32
+ * components it is handed.
33
+ *
34
+ * @module
35
+ */
36
+ /** Closed event vocabulary (`$defs/eventName`). */
37
+ export declare const HONUA_INTERACTION_EVENTS: readonly ["featureSelect", "featureHover", "selection", "change", "viewportChange"];
38
+ export type HonuaInteractionEvent = (typeof HONUA_INTERACTION_EVENTS)[number];
39
+ /** Closed action-verb vocabulary (`$defs/actionVerb`). */
40
+ export declare const HONUA_INTERACTION_VERBS: readonly ["setFilter", "setViewport", "selectFeature", "runWidgetQuery", "setVisibility"];
41
+ export type HonuaInteractionVerb = (typeof HONUA_INTERACTION_VERBS)[number];
42
+ /** Component-reference kinds addressable by an interaction (`$defs/componentRef`). */
43
+ export declare const HONUA_INTERACTION_REF_KINDS: readonly ["map", "layer", "widget", "control"];
44
+ export type HonuaInteractionRefKind = (typeof HONUA_INTERACTION_REF_KINDS)[number];
45
+ /** `map` | `layer:{id}` | `widget:{id}` | `control:{id}`. */
46
+ export type HonuaInteractionRef = string;
47
+ /**
48
+ * The standard's RECOMMENDED per-(`on.ref`, `on.event`) fan-out cap. A block
49
+ * that exceeds it is rejected whole rather than truncated.
50
+ */
51
+ export declare const HONUA_INTERACTION_FANOUT_CAP = 8;
52
+ /** The `$event.` prefix that marks the only dynamic element of an argument value. */
53
+ export declare const HONUA_INTERACTION_EVENT_PATH_PREFIX = "$event.";
54
+ /** One declarative event→action binding (`$defs/interaction`). */
55
+ export interface HonuaInteraction {
56
+ readonly id: string;
57
+ readonly on: {
58
+ readonly ref: HonuaInteractionRef;
59
+ readonly event: HonuaInteractionEvent;
60
+ };
61
+ readonly do: {
62
+ readonly ref: HonuaInteractionRef;
63
+ readonly verb: HonuaInteractionVerb;
64
+ readonly args?: Readonly<Record<string, unknown>>;
65
+ };
66
+ /** Authored-but-inactive binding; retained in the document, skipped at dispatch. */
67
+ readonly disabled?: boolean;
68
+ }
69
+ /** One grid placement (`$defs/layoutItem`); presentation metadata only. */
70
+ export interface HonuaInteractionLayoutItem {
71
+ readonly ref: HonuaInteractionRef;
72
+ readonly x: number;
73
+ readonly y: number;
74
+ readonly w: number;
75
+ readonly h: number;
76
+ }
77
+ /** The standard's presentation-only `layout` block. */
78
+ export interface HonuaInteractionLayout {
79
+ readonly grid?: {
80
+ readonly columns?: number;
81
+ };
82
+ readonly items?: ReadonlyArray<HonuaInteractionLayoutItem>;
83
+ }
84
+ /** A parsed component reference. */
85
+ export interface HonuaParsedInteractionRef {
86
+ readonly kind: HonuaInteractionRefKind;
87
+ /** Absent only for `kind: "map"`. */
88
+ readonly id?: string;
89
+ }
90
+ export type HonuaInteractionIssueCode = "invalid-shape" | "duplicate-id" | "unknown-event" | "unknown-verb" | "invalid-ref" | "invalid-event-path" | "fan-out-exceeded";
91
+ /** One validation failure. Never carries argument values — only structural detail. */
92
+ export interface HonuaInteractionIssue {
93
+ readonly code: HonuaInteractionIssueCode;
94
+ /** The offending interaction's id, when it could be read. */
95
+ readonly interactionId?: string;
96
+ /** Dotted path into the interaction object, e.g. `do.args.value`. */
97
+ readonly path: string;
98
+ readonly message: string;
99
+ }
100
+ /** True for a syntactically valid `map` | `layer:{id}` | `widget:{id}` | `control:{id}` reference. */
101
+ export declare function isHonuaInteractionRef(value: unknown): value is HonuaInteractionRef;
102
+ /** Splits a component reference into its kind and id. Returns `undefined` for a malformed reference. */
103
+ export declare function parseHonuaInteractionRef(ref: string): HonuaParsedInteractionRef | undefined;
104
+ export declare function isHonuaInteractionEvent(value: unknown): value is HonuaInteractionEvent;
105
+ export declare function isHonuaInteractionVerb(value: unknown): value is HonuaInteractionVerb;
106
+ /**
107
+ * True when a string value is a `$event.*` substitution path. A string that
108
+ * starts with `$event` but is not a well-formed path (`"$event"`,
109
+ * `"$event."`, `"$eventfoo"`) is NOT a path — it is a validation failure,
110
+ * caught by {@link validateHonuaInteraction}.
111
+ */
112
+ export declare function isHonuaInteractionEventPath(value: string): boolean;
113
+ /**
114
+ * Reads the value at a `$event.a.b` path out of an event payload. Returns
115
+ * `undefined` when any segment is missing — there is no error channel and no
116
+ * default, matching the standard's "substitution, not expression" posture.
117
+ */
118
+ export declare function readHonuaInteractionEventPath(payload: unknown, path: string): unknown;
119
+ /**
120
+ * Substitutes every `$event.*` string in `args` with the value at that path
121
+ * in `payload`, recursing through nested objects and arrays. Non-string
122
+ * values and strings without the prefix are copied through unchanged — this
123
+ * is the whole of the dynamic surface.
124
+ */
125
+ export declare function resolveHonuaInteractionArgs(args: Readonly<Record<string, unknown>> | undefined, payload: unknown): Readonly<Record<string, unknown>>;
126
+ /**
127
+ * Validates ONE interaction against the standard's schema-level rules
128
+ * (shape, closed sets, reference grammar, `$event.*` argument discipline).
129
+ * Fan-out and id uniqueness are block-level rules — see
130
+ * {@link validateHonuaInteractions}.
131
+ */
132
+ export declare function validateHonuaInteraction(value: unknown, path?: string): ReadonlyArray<HonuaInteractionIssue>;
133
+ export interface ValidateHonuaInteractionsOptions {
134
+ /** Per-(`on.ref`, `on.event`) fan-out cap. @default 8 (the standard's RECOMMENDED value) */
135
+ readonly fanOutCap?: number;
136
+ }
137
+ export interface HonuaInteractionValidation {
138
+ readonly ok: boolean;
139
+ readonly issues: ReadonlyArray<HonuaInteractionIssue>;
140
+ }
141
+ /**
142
+ * Validates a whole `interactions` block: every member's schema-level rules
143
+ * plus the two block-level ones (unique ids, fan-out cap). Disabled
144
+ * interactions are validated like any other — they are retained in the
145
+ * document, only skipped at dispatch — but they do NOT count toward the
146
+ * fan-out cap, which bounds live dispatch work.
147
+ */
148
+ export declare function validateHonuaInteractions(interactions: unknown, options?: ValidateHonuaInteractionsOptions): HonuaInteractionValidation;
149
+ //# sourceMappingURL=declarative-contract.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"declarative-contract.d.ts","sourceRoot":"","sources":["../../../src/interactions/declarative-contract.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,293 @@
1
+ /**
2
+ * The declarative interaction vocabulary from the open geospatial MCP
3
+ * standard (geospatial-mcp ADR-0030, `spec/schemas/common/interactions.schema.json`).
4
+ *
5
+ * This module owns ONLY the data shapes, the standard's closed sets, and the
6
+ * pure validation rules — no binding, no DOM, no imports — so the same rules
7
+ * can be reused by the agent-tool vocabulary (`@honua/sdk-js/agent-tools`'
8
+ * `bindInteraction` verb) without dragging the compiler
9
+ * (`./declarative.js`) and its exploration primitives into that bundle.
10
+ *
11
+ * The normative rules encoded here:
12
+ *
13
+ * - **Closed event set** — `featureSelect`/`featureHover` (layer sources),
14
+ * `selection` (widget sources), `change` (control sources),
15
+ * `viewportChange` (map source). Extending it requires a standard ADR.
16
+ * - **Closed verb set** — `setFilter`, `setViewport`, `selectFeature`,
17
+ * `runWidgetQuery`, `setVisibility`. Verbs mutate presentation/exploration
18
+ * state only, never source records.
19
+ * - **Arguments are static JSON plus `$event.*` path substitution.** There is
20
+ * no expression language: no arithmetic, no conditionals, no function
21
+ * calls. A string that starts with `$event` MUST be a well-formed
22
+ * `$event.<segment>[.<segment>…]` path.
23
+ * - **Unique ids** within one interactions block.
24
+ * - **Fan-out cap** — at most {@link HONUA_INTERACTION_FANOUT_CAP} (8,
25
+ * the standard's RECOMMENDED cap) interactions may share one
26
+ * (`on.ref`, `on.event`) pair. Blocks over the cap are rejected, never
27
+ * truncated.
28
+ *
29
+ * Reference resolution ("does `layer:parcels` exist in this document?") is a
30
+ * validation-gate responsibility the standard deliberately leaves to the
31
+ * host; the compiler in `./declarative.js` performs it against the concrete
32
+ * components it is handed.
33
+ *
34
+ * @module
35
+ */
36
+ /** Closed event vocabulary (`$defs/eventName`). */
37
+ export const HONUA_INTERACTION_EVENTS = [
38
+ "featureSelect",
39
+ "featureHover",
40
+ "selection",
41
+ "change",
42
+ "viewportChange",
43
+ ];
44
+ /** Closed action-verb vocabulary (`$defs/actionVerb`). */
45
+ export const HONUA_INTERACTION_VERBS = [
46
+ "setFilter",
47
+ "setViewport",
48
+ "selectFeature",
49
+ "runWidgetQuery",
50
+ "setVisibility",
51
+ ];
52
+ /** Component-reference kinds addressable by an interaction (`$defs/componentRef`). */
53
+ export const HONUA_INTERACTION_REF_KINDS = ["map", "layer", "widget", "control"];
54
+ /**
55
+ * The standard's RECOMMENDED per-(`on.ref`, `on.event`) fan-out cap. A block
56
+ * that exceeds it is rejected whole rather than truncated.
57
+ */
58
+ export const HONUA_INTERACTION_FANOUT_CAP = 8;
59
+ /** The `$event.` prefix that marks the only dynamic element of an argument value. */
60
+ export const HONUA_INTERACTION_EVENT_PATH_PREFIX = "$event.";
61
+ const REF_PATTERN = /^(map|layer:.+|widget:.+|control:.+)$/;
62
+ const EVENT_PATH_PATTERN = /^\$event(\.[^.\s]+)+$/;
63
+ function isRecord(value) {
64
+ return typeof value === "object" && value !== null && !Array.isArray(value);
65
+ }
66
+ /** True for a syntactically valid `map` | `layer:{id}` | `widget:{id}` | `control:{id}` reference. */
67
+ export function isHonuaInteractionRef(value) {
68
+ return typeof value === "string" && REF_PATTERN.test(value);
69
+ }
70
+ /** Splits a component reference into its kind and id. Returns `undefined` for a malformed reference. */
71
+ export function parseHonuaInteractionRef(ref) {
72
+ if (ref === "map")
73
+ return { kind: "map" };
74
+ const separator = ref.indexOf(":");
75
+ if (separator <= 0)
76
+ return undefined;
77
+ const kind = ref.slice(0, separator);
78
+ const id = ref.slice(separator + 1);
79
+ if (id.length === 0)
80
+ return undefined;
81
+ if (kind !== "layer" && kind !== "widget" && kind !== "control")
82
+ return undefined;
83
+ return { kind, id };
84
+ }
85
+ export function isHonuaInteractionEvent(value) {
86
+ return typeof value === "string" && HONUA_INTERACTION_EVENTS.includes(value);
87
+ }
88
+ export function isHonuaInteractionVerb(value) {
89
+ return typeof value === "string" && HONUA_INTERACTION_VERBS.includes(value);
90
+ }
91
+ /**
92
+ * True when a string value is a `$event.*` substitution path. A string that
93
+ * starts with `$event` but is not a well-formed path (`"$event"`,
94
+ * `"$event."`, `"$eventfoo"`) is NOT a path — it is a validation failure,
95
+ * caught by {@link validateHonuaInteraction}.
96
+ */
97
+ export function isHonuaInteractionEventPath(value) {
98
+ return EVENT_PATH_PATTERN.test(value);
99
+ }
100
+ /**
101
+ * Reads the value at a `$event.a.b` path out of an event payload. Returns
102
+ * `undefined` when any segment is missing — there is no error channel and no
103
+ * default, matching the standard's "substitution, not expression" posture.
104
+ */
105
+ export function readHonuaInteractionEventPath(payload, path) {
106
+ const segments = path.slice("$event".length).split(".").filter(Boolean);
107
+ let current = payload;
108
+ for (const segment of segments) {
109
+ if (Array.isArray(current)) {
110
+ const index = Number(segment);
111
+ if (!Number.isInteger(index))
112
+ return undefined;
113
+ current = current[index];
114
+ continue;
115
+ }
116
+ if (!isRecord(current))
117
+ return undefined;
118
+ current = current[segment];
119
+ }
120
+ return current;
121
+ }
122
+ /**
123
+ * Substitutes every `$event.*` string in `args` with the value at that path
124
+ * in `payload`, recursing through nested objects and arrays. Non-string
125
+ * values and strings without the prefix are copied through unchanged — this
126
+ * is the whole of the dynamic surface.
127
+ */
128
+ export function resolveHonuaInteractionArgs(args, payload) {
129
+ if (!args)
130
+ return {};
131
+ return substitute(args, payload);
132
+ }
133
+ function substitute(value, payload) {
134
+ if (typeof value === "string") {
135
+ return value.startsWith(HONUA_INTERACTION_EVENT_PATH_PREFIX)
136
+ ? readHonuaInteractionEventPath(payload, value)
137
+ : value;
138
+ }
139
+ if (Array.isArray(value))
140
+ return value.map((entry) => substitute(entry, payload));
141
+ if (isRecord(value)) {
142
+ const next = {};
143
+ for (const [key, child] of Object.entries(value))
144
+ next[key] = substitute(child, payload);
145
+ return next;
146
+ }
147
+ return value;
148
+ }
149
+ /**
150
+ * Validates ONE interaction against the standard's schema-level rules
151
+ * (shape, closed sets, reference grammar, `$event.*` argument discipline).
152
+ * Fan-out and id uniqueness are block-level rules — see
153
+ * {@link validateHonuaInteractions}.
154
+ */
155
+ export function validateHonuaInteraction(value, path = "interaction") {
156
+ const issues = [];
157
+ if (!isRecord(value)) {
158
+ return [{ code: "invalid-shape", path, message: "An interaction must be a JSON object." }];
159
+ }
160
+ const interactionId = typeof value.id === "string" ? value.id : undefined;
161
+ const issue = (code, field, message) => {
162
+ issues.push({ code, ...(interactionId ? { interactionId } : {}), path: `${path}.${field}`, message });
163
+ };
164
+ if (typeof value.id !== "string" || value.id.length === 0 || value.id.length > 200) {
165
+ issue("invalid-shape", "id", "`id` must be a non-empty string of at most 200 characters.");
166
+ }
167
+ if (value.disabled !== undefined && typeof value.disabled !== "boolean") {
168
+ issue("invalid-shape", "disabled", "`disabled` must be a boolean when present.");
169
+ }
170
+ if (!isRecord(value.on)) {
171
+ issue("invalid-shape", "on", "`on` must be an object with `ref` and `event`.");
172
+ }
173
+ else {
174
+ if (!isHonuaInteractionRef(value.on.ref)) {
175
+ issue("invalid-ref", "on.ref", "`on.ref` must be `map`, `layer:{id}`, `widget:{id}`, or `control:{id}`.");
176
+ }
177
+ if (!isHonuaInteractionEvent(value.on.event)) {
178
+ issue("unknown-event", "on.event", `\`on.event\` must be one of: ${HONUA_INTERACTION_EVENTS.join(", ")}.`);
179
+ }
180
+ for (const key of Object.keys(value.on)) {
181
+ if (key !== "ref" && key !== "event") {
182
+ issue("invalid-shape", `on.${key}`, "`on` accepts only `ref` and `event`.");
183
+ }
184
+ }
185
+ }
186
+ if (!isRecord(value.do)) {
187
+ issue("invalid-shape", "do", "`do` must be an object with `ref` and `verb`.");
188
+ }
189
+ else {
190
+ if (!isHonuaInteractionRef(value.do.ref)) {
191
+ issue("invalid-ref", "do.ref", "`do.ref` must be `map`, `layer:{id}`, `widget:{id}`, or `control:{id}`.");
192
+ }
193
+ if (!isHonuaInteractionVerb(value.do.verb)) {
194
+ issue("unknown-verb", "do.verb", `\`do.verb\` must be one of: ${HONUA_INTERACTION_VERBS.join(", ")}.`);
195
+ }
196
+ if (value.do.args !== undefined) {
197
+ if (!isRecord(value.do.args)) {
198
+ issue("invalid-shape", "do.args", "`do.args` must be a JSON object when present.");
199
+ }
200
+ else {
201
+ collectEventPathIssues(value.do.args, `${path}.do.args`, interactionId, issues);
202
+ }
203
+ }
204
+ for (const key of Object.keys(value.do)) {
205
+ if (key !== "ref" && key !== "verb" && key !== "args") {
206
+ issue("invalid-shape", `do.${key}`, "`do` accepts only `ref`, `verb`, and `args`.");
207
+ }
208
+ }
209
+ }
210
+ for (const key of Object.keys(value)) {
211
+ if (key !== "id" && key !== "on" && key !== "do" && key !== "disabled") {
212
+ issue("invalid-shape", key, "An interaction accepts only `id`, `on`, `do`, and `disabled`.");
213
+ }
214
+ }
215
+ return issues;
216
+ }
217
+ function collectEventPathIssues(value, path, interactionId, issues) {
218
+ if (typeof value === "string") {
219
+ if (value.startsWith("$event") && !isHonuaInteractionEventPath(value)) {
220
+ issues.push({
221
+ code: "invalid-event-path",
222
+ ...(interactionId ? { interactionId } : {}),
223
+ path,
224
+ message: "A `$event` argument must be a `$event.<path>` substitution — the vocabulary has no expression language.",
225
+ });
226
+ }
227
+ return;
228
+ }
229
+ if (Array.isArray(value)) {
230
+ value.forEach((entry, index) => collectEventPathIssues(entry, `${path}[${index}]`, interactionId, issues));
231
+ return;
232
+ }
233
+ if (isRecord(value)) {
234
+ for (const [key, child] of Object.entries(value)) {
235
+ collectEventPathIssues(child, `${path}.${key}`, interactionId, issues);
236
+ }
237
+ }
238
+ }
239
+ /**
240
+ * Validates a whole `interactions` block: every member's schema-level rules
241
+ * plus the two block-level ones (unique ids, fan-out cap). Disabled
242
+ * interactions are validated like any other — they are retained in the
243
+ * document, only skipped at dispatch — but they do NOT count toward the
244
+ * fan-out cap, which bounds live dispatch work.
245
+ */
246
+ export function validateHonuaInteractions(interactions, options = {}) {
247
+ const cap = options.fanOutCap ?? HONUA_INTERACTION_FANOUT_CAP;
248
+ if (!Array.isArray(interactions)) {
249
+ return {
250
+ ok: false,
251
+ issues: [{ code: "invalid-shape", path: "interactions", message: "`interactions` must be an array." }],
252
+ };
253
+ }
254
+ const issues = [];
255
+ const seenIds = new Set();
256
+ const fanOut = new Map();
257
+ interactions.forEach((interaction, index) => {
258
+ const path = `interactions[${index}]`;
259
+ issues.push(...validateHonuaInteraction(interaction, path));
260
+ if (!isRecord(interaction))
261
+ return;
262
+ const id = typeof interaction.id === "string" ? interaction.id : undefined;
263
+ if (id !== undefined) {
264
+ if (seenIds.has(id)) {
265
+ issues.push({
266
+ code: "duplicate-id",
267
+ interactionId: id,
268
+ path: `${path}.id`,
269
+ message: `Interaction id "${id}" is declared more than once in this block.`,
270
+ });
271
+ }
272
+ seenIds.add(id);
273
+ }
274
+ if (interaction.disabled === true)
275
+ return;
276
+ const on = isRecord(interaction.on) ? interaction.on : undefined;
277
+ if (!isHonuaInteractionRef(on?.ref) || !isHonuaInteractionEvent(on?.event))
278
+ return;
279
+ const key = `${on.ref}${on.event}`;
280
+ fanOut.set(key, (fanOut.get(key) ?? 0) + 1);
281
+ });
282
+ for (const [key, count] of fanOut) {
283
+ if (count <= cap)
284
+ continue;
285
+ const [ref, event] = key.split("");
286
+ issues.push({
287
+ code: "fan-out-exceeded",
288
+ path: "interactions",
289
+ message: `${count} interactions share (${ref}, ${event}); the fan-out cap is ${cap}. The block is rejected, not truncated.`,
290
+ });
291
+ }
292
+ return { ok: issues.length === 0, issues };
293
+ }