@honua/app-platform 0.0.20-alpha.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 (840) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +11 -0
  3. package/app/index.d.ts +164 -0
  4. package/app/index.d.ts.map +1 -0
  5. package/app/index.js +424 -0
  6. package/app-controller/controller.d.ts +425 -0
  7. package/app-controller/controller.d.ts.map +1 -0
  8. package/app-controller/controller.js +1173 -0
  9. package/app-controller/index.d.ts +14 -0
  10. package/app-controller/index.d.ts.map +1 -0
  11. package/app-controller/index.js +12 -0
  12. package/app-workspace/index.d.ts +421 -0
  13. package/app-workspace/index.d.ts.map +1 -0
  14. package/app-workspace/index.js +722 -0
  15. package/collaboration/client.d.ts +40 -0
  16. package/collaboration/client.d.ts.map +1 -0
  17. package/collaboration/client.js +299 -0
  18. package/collaboration/errors.d.ts +15 -0
  19. package/collaboration/errors.d.ts.map +1 -0
  20. package/collaboration/errors.js +17 -0
  21. package/collaboration/fixture.d.ts +41 -0
  22. package/collaboration/fixture.d.ts.map +1 -0
  23. package/collaboration/fixture.js +362 -0
  24. package/collaboration/index.d.ts +18 -0
  25. package/collaboration/index.d.ts.map +1 -0
  26. package/collaboration/index.js +14 -0
  27. package/collaboration/types.d.ts +240 -0
  28. package/collaboration/types.d.ts.map +1 -0
  29. package/collaboration/types.js +1 -0
  30. package/contract/analytics-sources.d.ts +149 -0
  31. package/contract/analytics-sources.d.ts.map +1 -0
  32. package/contract/analytics-sources.js +235 -0
  33. package/contract/edit-session.d.ts +203 -0
  34. package/contract/edit-session.d.ts.map +1 -0
  35. package/contract/edit-session.js +760 -0
  36. package/contract/edit-sketch.d.ts +91 -0
  37. package/contract/edit-sketch.d.ts.map +1 -0
  38. package/contract/edit-sketch.js +281 -0
  39. package/contract/index.d.ts +63 -0
  40. package/contract/index.d.ts.map +1 -0
  41. package/contract/index.js +52 -0
  42. package/contract/jobs.d.ts +149 -0
  43. package/contract/jobs.d.ts.map +1 -0
  44. package/contract/jobs.js +40 -0
  45. package/contract/pmtiles.d.ts +162 -0
  46. package/contract/pmtiles.d.ts.map +1 -0
  47. package/contract/pmtiles.js +155 -0
  48. package/contract/source.d.ts +447 -0
  49. package/contract/source.d.ts.map +1 -0
  50. package/contract/source.js +3909 -0
  51. package/contract/spatial-aggregation.d.ts +336 -0
  52. package/contract/spatial-aggregation.d.ts.map +1 -0
  53. package/contract/spatial-aggregation.js +298 -0
  54. package/contract/temporal.d.ts +455 -0
  55. package/contract/temporal.d.ts.map +1 -0
  56. package/contract/temporal.js +146 -0
  57. package/contract/tiles.d.ts +370 -0
  58. package/contract/tiles.d.ts.map +1 -0
  59. package/contract/tiles.js +519 -0
  60. package/contract/types.d.ts +694 -0
  61. package/contract/types.d.ts.map +1 -0
  62. package/contract/types.js +183 -0
  63. package/contract/widget-source.d.ts +205 -0
  64. package/contract/widget-source.d.ts.map +1 -0
  65. package/contract/widget-source.js +1473 -0
  66. package/control-plane/client.d.ts +95 -0
  67. package/control-plane/client.d.ts.map +1 -0
  68. package/control-plane/client.js +374 -0
  69. package/control-plane/index.d.ts +18 -0
  70. package/control-plane/index.d.ts.map +1 -0
  71. package/control-plane/index.js +14 -0
  72. package/control-plane/types.d.ts +233 -0
  73. package/control-plane/types.d.ts.map +1 -0
  74. package/control-plane/types.js +7 -0
  75. package/controls/basemap-style-binding.d.ts +54 -0
  76. package/controls/basemap-style-binding.d.ts.map +1 -0
  77. package/controls/basemap-style-binding.js +199 -0
  78. package/controls/basemap-switcher.d.ts +95 -0
  79. package/controls/basemap-switcher.d.ts.map +1 -0
  80. package/controls/basemap-switcher.js +379 -0
  81. package/controls/element-utils.d.ts +48 -0
  82. package/controls/element-utils.d.ts.map +1 -0
  83. package/controls/element-utils.js +78 -0
  84. package/controls/index.d.ts +33 -0
  85. package/controls/index.d.ts.map +1 -0
  86. package/controls/index.js +30 -0
  87. package/controls/layer-list.d.ts +98 -0
  88. package/controls/layer-list.d.ts.map +1 -0
  89. package/controls/layer-list.js +375 -0
  90. package/controls/legend-derive.d.ts +53 -0
  91. package/controls/legend-derive.d.ts.map +1 -0
  92. package/controls/legend-derive.js +196 -0
  93. package/controls/legend.d.ts +104 -0
  94. package/controls/legend.d.ts.map +1 -0
  95. package/controls/legend.js +381 -0
  96. package/controls/swipe-control.d.ts +80 -0
  97. package/controls/swipe-control.d.ts.map +1 -0
  98. package/controls/swipe-control.js +368 -0
  99. package/controls/types.d.ts +227 -0
  100. package/controls/types.d.ts.map +1 -0
  101. package/controls/types.js +11 -0
  102. package/core/auth/client-credentials-provider.d.ts +51 -0
  103. package/core/auth/client-credentials-provider.d.ts.map +1 -0
  104. package/core/auth/client-credentials-provider.js +115 -0
  105. package/core/auth/credential-store.d.ts +52 -0
  106. package/core/auth/credential-store.d.ts.map +1 -0
  107. package/core/auth/credential-store.js +82 -0
  108. package/core/auth/index.d.ts +23 -0
  109. package/core/auth/index.d.ts.map +1 -0
  110. package/core/auth/index.js +20 -0
  111. package/core/auth/oauth2-provider.d.ts +114 -0
  112. package/core/auth/oauth2-provider.d.ts.map +1 -0
  113. package/core/auth/oauth2-provider.js +408 -0
  114. package/core/auth/pkce.d.ts +25 -0
  115. package/core/auth/pkce.d.ts.map +1 -0
  116. package/core/auth/pkce.js +46 -0
  117. package/core/auth/static-providers.d.ts +20 -0
  118. package/core/auth/static-providers.d.ts.map +1 -0
  119. package/core/auth/static-providers.js +26 -0
  120. package/core/auth/token-endpoint.d.ts +40 -0
  121. package/core/auth/token-endpoint.d.ts.map +1 -0
  122. package/core/auth/token-endpoint.js +133 -0
  123. package/core/auth/types.d.ts +144 -0
  124. package/core/auth/types.d.ts.map +1 -0
  125. package/core/auth/types.js +8 -0
  126. package/core/batch.d.ts +37 -0
  127. package/core/batch.d.ts.map +1 -0
  128. package/core/batch.js +79 -0
  129. package/core/cache-state.d.ts +79 -0
  130. package/core/cache-state.d.ts.map +1 -0
  131. package/core/cache-state.js +87 -0
  132. package/core/client.d.ts +607 -0
  133. package/core/client.d.ts.map +1 -0
  134. package/core/client.js +1716 -0
  135. package/core/compatibility.d.ts +18 -0
  136. package/core/compatibility.d.ts.map +1 -0
  137. package/core/compatibility.js +245 -0
  138. package/core/errors.d.ts +139 -0
  139. package/core/errors.d.ts.map +1 -0
  140. package/core/errors.js +176 -0
  141. package/core/esri-geojson.d.ts +66 -0
  142. package/core/esri-geojson.d.ts.map +1 -0
  143. package/core/esri-geojson.js +363 -0
  144. package/core/geoparquet-sql.d.ts +162 -0
  145. package/core/geoparquet-sql.d.ts.map +1 -0
  146. package/core/geoparquet-sql.js +333 -0
  147. package/core/geoservices.d.ts +34 -0
  148. package/core/geoservices.d.ts.map +1 -0
  149. package/core/geoservices.js +434 -0
  150. package/core/grpc-adapter.d.ts +23 -0
  151. package/core/grpc-adapter.d.ts.map +1 -0
  152. package/core/grpc-adapter.js +688 -0
  153. package/core/odata.d.ts +347 -0
  154. package/core/odata.d.ts.map +1 -0
  155. package/core/odata.js +913 -0
  156. package/core/ogc-conformance.d.ts +35 -0
  157. package/core/ogc-conformance.d.ts.map +1 -0
  158. package/core/ogc-conformance.js +134 -0
  159. package/core/ogc-endpoint-layout.d.ts +70 -0
  160. package/core/ogc-endpoint-layout.d.ts.map +1 -0
  161. package/core/ogc-endpoint-layout.js +173 -0
  162. package/core/ogc-features.d.ts +23 -0
  163. package/core/ogc-features.d.ts.map +1 -0
  164. package/core/ogc-features.js +129 -0
  165. package/core/ogc-maps.d.ts +49 -0
  166. package/core/ogc-maps.d.ts.map +1 -0
  167. package/core/ogc-maps.js +126 -0
  168. package/core/ogc-processes.d.ts +118 -0
  169. package/core/ogc-processes.d.ts.map +1 -0
  170. package/core/ogc-processes.js +423 -0
  171. package/core/ogc-records.d.ts +75 -0
  172. package/core/ogc-records.d.ts.map +1 -0
  173. package/core/ogc-records.js +251 -0
  174. package/core/ogc-tiles.d.ts +125 -0
  175. package/core/ogc-tiles.d.ts.map +1 -0
  176. package/core/ogc-tiles.js +183 -0
  177. package/core/path-utils.d.ts +69 -0
  178. package/core/path-utils.d.ts.map +1 -0
  179. package/core/path-utils.js +123 -0
  180. package/core/pbf-decoder.d.ts +39 -0
  181. package/core/pbf-decoder.d.ts.map +1 -0
  182. package/core/pbf-decoder.js +702 -0
  183. package/core/process-runner.d.ts +104 -0
  184. package/core/process-runner.d.ts.map +1 -0
  185. package/core/process-runner.js +315 -0
  186. package/core/protocol-transport.d.ts +76 -0
  187. package/core/protocol-transport.d.ts.map +1 -0
  188. package/core/protocol-transport.js +15 -0
  189. package/core/query-builder.d.ts +261 -0
  190. package/core/query-builder.d.ts.map +1 -0
  191. package/core/query-builder.js +538 -0
  192. package/core/request-pipeline.d.ts +88 -0
  193. package/core/request-pipeline.d.ts.map +1 -0
  194. package/core/request-pipeline.js +273 -0
  195. package/core/spatial-filter.d.ts +93 -0
  196. package/core/spatial-filter.d.ts.map +1 -0
  197. package/core/spatial-filter.js +153 -0
  198. package/core/stac-static.d.ts +51 -0
  199. package/core/stac-static.d.ts.map +1 -0
  200. package/core/stac-static.js +195 -0
  201. package/core/stac.d.ts +67 -0
  202. package/core/stac.d.ts.map +1 -0
  203. package/core/stac.js +259 -0
  204. package/core/surfaces.d.ts +540 -0
  205. package/core/surfaces.d.ts.map +1 -0
  206. package/core/surfaces.js +1964 -0
  207. package/core/terrain-elevation.d.ts +114 -0
  208. package/core/terrain-elevation.d.ts.map +1 -0
  209. package/core/terrain-elevation.js +150 -0
  210. package/core/types.d.ts +1404 -0
  211. package/core/types.d.ts.map +1 -0
  212. package/core/types.js +13 -0
  213. package/core/wfs-capabilities.d.ts +153 -0
  214. package/core/wfs-capabilities.d.ts.map +1 -0
  215. package/core/wfs-capabilities.js +490 -0
  216. package/core/wfs-filter.d.ts +118 -0
  217. package/core/wfs-filter.d.ts.map +1 -0
  218. package/core/wfs-filter.js +634 -0
  219. package/core/wfs.d.ts +232 -0
  220. package/core/wfs.d.ts.map +1 -0
  221. package/core/wfs.js +426 -0
  222. package/core/wire-shared.d.ts +32 -0
  223. package/core/wire-shared.d.ts.map +1 -0
  224. package/core/wire-shared.js +76 -0
  225. package/core/wms-axis.d.ts +36 -0
  226. package/core/wms-axis.d.ts.map +1 -0
  227. package/core/wms-axis.js +73 -0
  228. package/core/wms-capabilities.d.ts +110 -0
  229. package/core/wms-capabilities.d.ts.map +1 -0
  230. package/core/wms-capabilities.js +559 -0
  231. package/core/wms-types.d.ts +128 -0
  232. package/core/wms-types.d.ts.map +1 -0
  233. package/core/wms-types.js +32 -0
  234. package/core/wms.d.ts +144 -0
  235. package/core/wms.d.ts.map +1 -0
  236. package/core/wms.js +338 -0
  237. package/core/wmts-capabilities.d.ts +82 -0
  238. package/core/wmts-capabilities.d.ts.map +1 -0
  239. package/core/wmts-capabilities.js +402 -0
  240. package/core/wmts.d.ts +103 -0
  241. package/core/wmts.d.ts.map +1 -0
  242. package/core/wmts.js +332 -0
  243. package/core/xml-text.d.ts +20 -0
  244. package/core/xml-text.d.ts.map +1 -0
  245. package/core/xml-text.js +85 -0
  246. package/esri-compat/basemap-gallery.d.ts +38 -0
  247. package/esri-compat/basemap-gallery.d.ts.map +1 -0
  248. package/esri-compat/basemap-gallery.js +159 -0
  249. package/esri-compat/basemap-layer-list.d.ts +35 -0
  250. package/esri-compat/basemap-layer-list.d.ts.map +1 -0
  251. package/esri-compat/basemap-layer-list.js +139 -0
  252. package/esri-compat/basemap.d.ts +32 -0
  253. package/esri-compat/basemap.d.ts.map +1 -0
  254. package/esri-compat/basemap.js +84 -0
  255. package/esri-compat/bookmarks.d.ts +36 -0
  256. package/esri-compat/bookmarks.d.ts.map +1 -0
  257. package/esri-compat/bookmarks.js +108 -0
  258. package/esri-compat/class-breaks-renderer.d.ts +50 -0
  259. package/esri-compat/class-breaks-renderer.d.ts.map +1 -0
  260. package/esri-compat/class-breaks-renderer.js +164 -0
  261. package/esri-compat/color.d.ts +22 -0
  262. package/esri-compat/color.d.ts.map +1 -0
  263. package/esri-compat/color.js +106 -0
  264. package/esri-compat/controls.d.ts +174 -0
  265. package/esri-compat/controls.d.ts.map +1 -0
  266. package/esri-compat/controls.js +479 -0
  267. package/esri-compat/coordinate-conversion.d.ts +41 -0
  268. package/esri-compat/coordinate-conversion.d.ts.map +1 -0
  269. package/esri-compat/coordinate-conversion.js +125 -0
  270. package/esri-compat/directions.d.ts +45 -0
  271. package/esri-compat/directions.d.ts.map +1 -0
  272. package/esri-compat/directions.js +123 -0
  273. package/esri-compat/editor.d.ts +47 -0
  274. package/esri-compat/editor.d.ts.map +1 -0
  275. package/esri-compat/editor.js +170 -0
  276. package/esri-compat/esri-config.d.ts +16 -0
  277. package/esri-compat/esri-config.d.ts.map +1 -0
  278. package/esri-compat/esri-config.js +23 -0
  279. package/esri-compat/esri-request.d.ts +17 -0
  280. package/esri-compat/esri-request.d.ts.map +1 -0
  281. package/esri-compat/esri-request.js +127 -0
  282. package/esri-compat/event-bus.d.ts +106 -0
  283. package/esri-compat/event-bus.d.ts.map +1 -0
  284. package/esri-compat/event-bus.js +90 -0
  285. package/esri-compat/expand.d.ts +36 -0
  286. package/esri-compat/expand.d.ts.map +1 -0
  287. package/esri-compat/expand.js +97 -0
  288. package/esri-compat/extent.d.ts +43 -0
  289. package/esri-compat/extent.d.ts.map +1 -0
  290. package/esri-compat/extent.js +140 -0
  291. package/esri-compat/feature-filter.d.ts +55 -0
  292. package/esri-compat/feature-filter.d.ts.map +1 -0
  293. package/esri-compat/feature-filter.js +109 -0
  294. package/esri-compat/feature-form.d.ts +64 -0
  295. package/esri-compat/feature-form.d.ts.map +1 -0
  296. package/esri-compat/feature-form.js +137 -0
  297. package/esri-compat/feature-layer.d.ts +173 -0
  298. package/esri-compat/feature-layer.d.ts.map +1 -0
  299. package/esri-compat/feature-layer.js +661 -0
  300. package/esri-compat/feature-set.d.ts +32 -0
  301. package/esri-compat/feature-set.d.ts.map +1 -0
  302. package/esri-compat/feature-set.js +80 -0
  303. package/esri-compat/feature-table.d.ts +141 -0
  304. package/esri-compat/feature-table.d.ts.map +1 -0
  305. package/esri-compat/feature-table.js +500 -0
  306. package/esri-compat/feature-templates.d.ts +41 -0
  307. package/esri-compat/feature-templates.d.ts.map +1 -0
  308. package/esri-compat/feature-templates.js +97 -0
  309. package/esri-compat/feature.d.ts +33 -0
  310. package/esri-compat/feature.d.ts.map +1 -0
  311. package/esri-compat/feature.js +83 -0
  312. package/esri-compat/geojson-layer.d.ts +86 -0
  313. package/esri-compat/geojson-layer.d.ts.map +1 -0
  314. package/esri-compat/geojson-layer.js +191 -0
  315. package/esri-compat/geometry-engine.d.ts +107 -0
  316. package/esri-compat/geometry-engine.d.ts.map +1 -0
  317. package/esri-compat/geometry-engine.js +266 -0
  318. package/esri-compat/graphic.d.ts +46 -0
  319. package/esri-compat/graphic.d.ts.map +1 -0
  320. package/esri-compat/graphic.js +103 -0
  321. package/esri-compat/graphics-layer.d.ts +49 -0
  322. package/esri-compat/graphics-layer.d.ts.map +1 -0
  323. package/esri-compat/graphics-layer.js +185 -0
  324. package/esri-compat/group-layer.d.ts +48 -0
  325. package/esri-compat/group-layer.d.ts.map +1 -0
  326. package/esri-compat/group-layer.js +212 -0
  327. package/esri-compat/identify.d.ts +71 -0
  328. package/esri-compat/identify.d.ts.map +1 -0
  329. package/esri-compat/identify.js +299 -0
  330. package/esri-compat/identity-manager.d.ts +74 -0
  331. package/esri-compat/identity-manager.d.ts.map +1 -0
  332. package/esri-compat/identity-manager.js +245 -0
  333. package/esri-compat/imagery-layer.d.ts +78 -0
  334. package/esri-compat/imagery-layer.d.ts.map +1 -0
  335. package/esri-compat/imagery-layer.js +167 -0
  336. package/esri-compat/label-class.d.ts +31 -0
  337. package/esri-compat/label-class.d.ts.map +1 -0
  338. package/esri-compat/label-class.js +102 -0
  339. package/esri-compat/layer-list.d.ts +77 -0
  340. package/esri-compat/layer-list.d.ts.map +1 -0
  341. package/esri-compat/layer-list.js +342 -0
  342. package/esri-compat/legend.d.ts +53 -0
  343. package/esri-compat/legend.d.ts.map +1 -0
  344. package/esri-compat/legend.js +254 -0
  345. package/esri-compat/map-image-layer.d.ts +162 -0
  346. package/esri-compat/map-image-layer.d.ts.map +1 -0
  347. package/esri-compat/map-image-layer.js +709 -0
  348. package/esri-compat/map-view.d.ts +323 -0
  349. package/esri-compat/map-view.d.ts.map +1 -0
  350. package/esri-compat/map-view.js +1175 -0
  351. package/esri-compat/map.d.ts +47 -0
  352. package/esri-compat/map.d.ts.map +1 -0
  353. package/esri-compat/map.js +209 -0
  354. package/esri-compat/measurement-2d.d.ts +61 -0
  355. package/esri-compat/measurement-2d.d.ts.map +1 -0
  356. package/esri-compat/measurement-2d.js +184 -0
  357. package/esri-compat/measurement.d.ts +45 -0
  358. package/esri-compat/measurement.d.ts.map +1 -0
  359. package/esri-compat/measurement.js +193 -0
  360. package/esri-compat/oauth-info.d.ts +50 -0
  361. package/esri-compat/oauth-info.d.ts.map +1 -0
  362. package/esri-compat/oauth-info.js +142 -0
  363. package/esri-compat/picture-marker-symbol.d.ts +35 -0
  364. package/esri-compat/picture-marker-symbol.d.ts.map +1 -0
  365. package/esri-compat/picture-marker-symbol.js +126 -0
  366. package/esri-compat/point.d.ts +31 -0
  367. package/esri-compat/point.d.ts.map +1 -0
  368. package/esri-compat/point.js +102 -0
  369. package/esri-compat/polygon.d.ts +31 -0
  370. package/esri-compat/polygon.d.ts.map +1 -0
  371. package/esri-compat/polygon.js +107 -0
  372. package/esri-compat/polyline.d.ts +31 -0
  373. package/esri-compat/polyline.d.ts.map +1 -0
  374. package/esri-compat/polyline.js +107 -0
  375. package/esri-compat/popup-template.d.ts +55 -0
  376. package/esri-compat/popup-template.d.ts.map +1 -0
  377. package/esri-compat/popup-template.js +128 -0
  378. package/esri-compat/popup.d.ts +54 -0
  379. package/esri-compat/popup.d.ts.map +1 -0
  380. package/esri-compat/popup.js +312 -0
  381. package/esri-compat/print.d.ts +47 -0
  382. package/esri-compat/print.d.ts.map +1 -0
  383. package/esri-compat/print.js +105 -0
  384. package/esri-compat/query.d.ts +58 -0
  385. package/esri-compat/query.d.ts.map +1 -0
  386. package/esri-compat/query.js +128 -0
  387. package/esri-compat/reactive-utils.d.ts +24 -0
  388. package/esri-compat/reactive-utils.d.ts.map +1 -0
  389. package/esri-compat/reactive-utils.js +193 -0
  390. package/esri-compat/request.d.ts +41 -0
  391. package/esri-compat/request.d.ts.map +1 -0
  392. package/esri-compat/request.js +253 -0
  393. package/esri-compat/route-layer.d.ts +59 -0
  394. package/esri-compat/route-layer.d.ts.map +1 -0
  395. package/esri-compat/route-layer.js +223 -0
  396. package/esri-compat/route-task.d.ts +88 -0
  397. package/esri-compat/route-task.d.ts.map +1 -0
  398. package/esri-compat/route-task.js +225 -0
  399. package/esri-compat/scene-view.d.ts +41 -0
  400. package/esri-compat/scene-view.d.ts.map +1 -0
  401. package/esri-compat/scene-view.js +68 -0
  402. package/esri-compat/search.d.ts +112 -0
  403. package/esri-compat/search.d.ts.map +1 -0
  404. package/esri-compat/search.js +820 -0
  405. package/esri-compat/simple-fill-symbol.d.ts +27 -0
  406. package/esri-compat/simple-fill-symbol.d.ts.map +1 -0
  407. package/esri-compat/simple-fill-symbol.js +85 -0
  408. package/esri-compat/simple-line-symbol.d.ts +27 -0
  409. package/esri-compat/simple-line-symbol.d.ts.map +1 -0
  410. package/esri-compat/simple-line-symbol.js +85 -0
  411. package/esri-compat/simple-marker-symbol.d.ts +29 -0
  412. package/esri-compat/simple-marker-symbol.d.ts.map +1 -0
  413. package/esri-compat/simple-marker-symbol.js +92 -0
  414. package/esri-compat/simple-renderer.d.ts +29 -0
  415. package/esri-compat/simple-renderer.d.ts.map +1 -0
  416. package/esri-compat/simple-renderer.js +92 -0
  417. package/esri-compat/sketch.d.ts +64 -0
  418. package/esri-compat/sketch.d.ts.map +1 -0
  419. package/esri-compat/sketch.js +227 -0
  420. package/esri-compat/spatial-reference.d.ts +31 -0
  421. package/esri-compat/spatial-reference.d.ts.map +1 -0
  422. package/esri-compat/spatial-reference.js +102 -0
  423. package/esri-compat/swipe.d.ts +34 -0
  424. package/esri-compat/swipe.d.ts.map +1 -0
  425. package/esri-compat/swipe.js +93 -0
  426. package/esri-compat/table-list.d.ts +36 -0
  427. package/esri-compat/table-list.d.ts.map +1 -0
  428. package/esri-compat/table-list.js +126 -0
  429. package/esri-compat/text-symbol.d.ts +37 -0
  430. package/esri-compat/text-symbol.d.ts.map +1 -0
  431. package/esri-compat/text-symbol.js +123 -0
  432. package/esri-compat/tile-layer.d.ts +52 -0
  433. package/esri-compat/tile-layer.d.ts.map +1 -0
  434. package/esri-compat/tile-layer.js +168 -0
  435. package/esri-compat/time-slider.d.ts +70 -0
  436. package/esri-compat/time-slider.d.ts.map +1 -0
  437. package/esri-compat/time-slider.js +208 -0
  438. package/esri-compat/track.d.ts +51 -0
  439. package/esri-compat/track.d.ts.map +1 -0
  440. package/esri-compat/track.js +174 -0
  441. package/esri-compat/unique-value-renderer.d.ts +41 -0
  442. package/esri-compat/unique-value-renderer.d.ts.map +1 -0
  443. package/esri-compat/unique-value-renderer.js +127 -0
  444. package/esri-compat/url.d.ts +13 -0
  445. package/esri-compat/url.d.ts.map +1 -0
  446. package/esri-compat/url.js +68 -0
  447. package/esri-compat/vector-tile-layer.d.ts +47 -0
  448. package/esri-compat/vector-tile-layer.d.ts.map +1 -0
  449. package/esri-compat/vector-tile-layer.js +130 -0
  450. package/esri-compat/web-map.d.ts +14 -0
  451. package/esri-compat/web-map.d.ts.map +1 -0
  452. package/esri-compat/web-map.js +24 -0
  453. package/esri-compat/wfs-layer.d.ts +64 -0
  454. package/esri-compat/wfs-layer.d.ts.map +1 -0
  455. package/esri-compat/wfs-layer.js +145 -0
  456. package/esri-compat/wms-layer.d.ts +76 -0
  457. package/esri-compat/wms-layer.d.ts.map +1 -0
  458. package/esri-compat/wms-layer.js +157 -0
  459. package/exploration/context.d.ts +25 -0
  460. package/exploration/context.d.ts.map +1 -0
  461. package/exploration/context.js +396 -0
  462. package/exploration/index.d.ts +27 -0
  463. package/exploration/index.d.ts.map +1 -0
  464. package/exploration/index.js +24 -0
  465. package/exploration/presets.d.ts +27 -0
  466. package/exploration/presets.d.ts.map +1 -0
  467. package/exploration/presets.js +114 -0
  468. package/exploration/reducer.d.ts +23 -0
  469. package/exploration/reducer.d.ts.map +1 -0
  470. package/exploration/reducer.js +332 -0
  471. package/exploration/selection.d.ts +25 -0
  472. package/exploration/selection.d.ts.map +1 -0
  473. package/exploration/selection.js +34 -0
  474. package/exploration/selectors.d.ts +56 -0
  475. package/exploration/selectors.d.ts.map +1 -0
  476. package/exploration/selectors.js +110 -0
  477. package/exploration/types.d.ts +294 -0
  478. package/exploration/types.d.ts.map +1 -0
  479. package/exploration/types.js +33 -0
  480. package/expr/expression.d.ts +457 -0
  481. package/expr/expression.d.ts.map +1 -0
  482. package/expr/expression.js +663 -0
  483. package/expr/index.d.ts +32 -0
  484. package/expr/index.d.ts.map +1 -0
  485. package/expr/index.js +30 -0
  486. package/filter-registry/index.d.ts +145 -0
  487. package/filter-registry/index.d.ts.map +1 -0
  488. package/filter-registry/index.js +531 -0
  489. package/gen/honua/v1/feature_service_pb.d.ts +918 -0
  490. package/gen/honua/v1/feature_service_pb.d.ts.map +1 -0
  491. package/gen/honua/v1/feature_service_pb.js +375 -0
  492. package/generated-app/errors.d.ts +41 -0
  493. package/generated-app/errors.d.ts.map +1 -0
  494. package/generated-app/errors.js +41 -0
  495. package/generated-app/index.d.ts +17 -0
  496. package/generated-app/index.d.ts.map +1 -0
  497. package/generated-app/index.js +12 -0
  498. package/generated-app/manifest.d.ts +183 -0
  499. package/generated-app/manifest.d.ts.map +1 -0
  500. package/generated-app/manifest.js +14 -0
  501. package/generated-app/projection.d.ts +44 -0
  502. package/generated-app/projection.d.ts.map +1 -0
  503. package/generated-app/projection.js +234 -0
  504. package/generated-app/runtime.d.ts +215 -0
  505. package/generated-app/runtime.d.ts.map +1 -0
  506. package/generated-app/runtime.js +1196 -0
  507. package/geocoding/index.d.ts +106 -0
  508. package/geocoding/index.d.ts.map +1 -0
  509. package/geocoding/index.js +278 -0
  510. package/interactions/detail-model.d.ts +54 -0
  511. package/interactions/detail-model.d.ts.map +1 -0
  512. package/interactions/detail-model.js +105 -0
  513. package/interactions/exploration-bindings.d.ts +120 -0
  514. package/interactions/exploration-bindings.d.ts.map +1 -0
  515. package/interactions/exploration-bindings.js +218 -0
  516. package/interactions/feature-state.d.ts +144 -0
  517. package/interactions/feature-state.d.ts.map +1 -0
  518. package/interactions/feature-state.js +169 -0
  519. package/interactions/hit-test.d.ts +112 -0
  520. package/interactions/hit-test.d.ts.map +1 -0
  521. package/interactions/hit-test.js +291 -0
  522. package/interactions/index.d.ts +31 -0
  523. package/interactions/index.d.ts.map +1 -0
  524. package/interactions/index.js +24 -0
  525. package/interactions/share-state.d.ts +36 -0
  526. package/interactions/share-state.d.ts.map +1 -0
  527. package/interactions/share-state.js +123 -0
  528. package/map/feature-service-adapter.d.ts +138 -0
  529. package/map/feature-service-adapter.d.ts.map +1 -0
  530. package/map/feature-service-adapter.js +279 -0
  531. package/map/honua-map.d.ts +203 -0
  532. package/map/honua-map.d.ts.map +1 -0
  533. package/map/honua-map.js +347 -0
  534. package/map/index.d.ts +27 -0
  535. package/map/index.d.ts.map +1 -0
  536. package/map/index.js +22 -0
  537. package/map/maplibre-target.d.ts +103 -0
  538. package/map/maplibre-target.d.ts.map +1 -0
  539. package/map/maplibre-target.js +164 -0
  540. package/map/webmap-maplibre.d.ts +60 -0
  541. package/map/webmap-maplibre.d.ts.map +1 -0
  542. package/map/webmap-maplibre.js +212 -0
  543. package/operate/client.d.ts +94 -0
  544. package/operate/client.d.ts.map +1 -0
  545. package/operate/client.js +361 -0
  546. package/operate/index.d.ts +22 -0
  547. package/operate/index.d.ts.map +1 -0
  548. package/operate/index.js +19 -0
  549. package/operate/types.d.ts +397 -0
  550. package/operate/types.d.ts.map +1 -0
  551. package/operate/types.js +17 -0
  552. package/operator/client.d.ts +60 -0
  553. package/operator/client.d.ts.map +1 -0
  554. package/operator/client.js +20 -0
  555. package/operator/controllers/approval.d.ts +52 -0
  556. package/operator/controllers/approval.d.ts.map +1 -0
  557. package/operator/controllers/approval.js +123 -0
  558. package/operator/controllers/base.d.ts +27 -0
  559. package/operator/controllers/base.d.ts.map +1 -0
  560. package/operator/controllers/base.js +53 -0
  561. package/operator/controllers/builder-workspace.d.ts +55 -0
  562. package/operator/controllers/builder-workspace.d.ts.map +1 -0
  563. package/operator/controllers/builder-workspace.js +108 -0
  564. package/operator/controllers/chat.d.ts +61 -0
  565. package/operator/controllers/chat.d.ts.map +1 -0
  566. package/operator/controllers/chat.js +154 -0
  567. package/operator/controllers/clarification.d.ts +52 -0
  568. package/operator/controllers/clarification.d.ts.map +1 -0
  569. package/operator/controllers/clarification.js +121 -0
  570. package/operator/controllers/execution.d.ts +60 -0
  571. package/operator/controllers/execution.d.ts.map +1 -0
  572. package/operator/controllers/execution.js +286 -0
  573. package/operator/controllers/index.d.ts +23 -0
  574. package/operator/controllers/index.d.ts.map +1 -0
  575. package/operator/controllers/index.js +15 -0
  576. package/operator/controllers/map-workspace.d.ts +85 -0
  577. package/operator/controllers/map-workspace.d.ts.map +1 -0
  578. package/operator/controllers/map-workspace.js +296 -0
  579. package/operator/controllers/plan-review.d.ts +66 -0
  580. package/operator/controllers/plan-review.d.ts.map +1 -0
  581. package/operator/controllers/plan-review.js +124 -0
  582. package/operator/errors.d.ts +62 -0
  583. package/operator/errors.d.ts.map +1 -0
  584. package/operator/errors.js +75 -0
  585. package/operator/i18n/index.d.ts +10 -0
  586. package/operator/i18n/index.d.ts.map +1 -0
  587. package/operator/i18n/index.js +8 -0
  588. package/operator/i18n/messages.d.ts +19 -0
  589. package/operator/i18n/messages.d.ts.map +1 -0
  590. package/operator/i18n/messages.js +54 -0
  591. package/operator/index.d.ts +19 -0
  592. package/operator/index.d.ts.map +1 -0
  593. package/operator/index.js +15 -0
  594. package/operator/telemetry.d.ts +26 -0
  595. package/operator/telemetry.d.ts.map +1 -0
  596. package/operator/telemetry.js +9 -0
  597. package/operator/theming/index.d.ts +12 -0
  598. package/operator/theming/index.d.ts.map +1 -0
  599. package/operator/theming/index.js +9 -0
  600. package/operator/theming/provider.d.ts +27 -0
  601. package/operator/theming/provider.d.ts.map +1 -0
  602. package/operator/theming/provider.js +26 -0
  603. package/operator/theming/tokens.d.ts +28 -0
  604. package/operator/theming/tokens.d.ts.map +1 -0
  605. package/operator/theming/tokens.js +65 -0
  606. package/operator/workspace/events.d.ts +70 -0
  607. package/operator/workspace/events.d.ts.map +1 -0
  608. package/operator/workspace/events.js +9 -0
  609. package/operator/workspace/index.d.ts +12 -0
  610. package/operator/workspace/index.d.ts.map +1 -0
  611. package/operator/workspace/index.js +8 -0
  612. package/operator/workspace/types.d.ts +178 -0
  613. package/operator/workspace/types.d.ts.map +1 -0
  614. package/operator/workspace/types.js +47 -0
  615. package/operator/workspace/workspace.d.ts +58 -0
  616. package/operator/workspace/workspace.d.ts.map +1 -0
  617. package/operator/workspace/workspace.js +339 -0
  618. package/package.json +105 -0
  619. package/realtime/exploration.d.ts +16 -0
  620. package/realtime/exploration.d.ts.map +1 -0
  621. package/realtime/exploration.js +32 -0
  622. package/realtime/honua-server.d.ts +123 -0
  623. package/realtime/honua-server.d.ts.map +1 -0
  624. package/realtime/honua-server.js +188 -0
  625. package/realtime/index.d.ts +20 -0
  626. package/realtime/index.d.ts.map +1 -0
  627. package/realtime/index.js +14 -0
  628. package/realtime/projections.d.ts +30 -0
  629. package/realtime/projections.d.ts.map +1 -0
  630. package/realtime/projections.js +51 -0
  631. package/realtime/reducer.d.ts +14 -0
  632. package/realtime/reducer.d.ts.map +1 -0
  633. package/realtime/reducer.js +351 -0
  634. package/realtime/sse.d.ts +23 -0
  635. package/realtime/sse.d.ts.map +1 -0
  636. package/realtime/sse.js +143 -0
  637. package/realtime/store.d.ts +18 -0
  638. package/realtime/store.d.ts.map +1 -0
  639. package/realtime/store.js +63 -0
  640. package/realtime/types.d.ts +190 -0
  641. package/realtime/types.d.ts.map +1 -0
  642. package/realtime/types.js +10 -0
  643. package/replica-sync/client.d.ts +32 -0
  644. package/replica-sync/client.d.ts.map +1 -0
  645. package/replica-sync/client.js +52 -0
  646. package/replica-sync/errors.d.ts +22 -0
  647. package/replica-sync/errors.d.ts.map +1 -0
  648. package/replica-sync/errors.js +29 -0
  649. package/replica-sync/fixture.d.ts +40 -0
  650. package/replica-sync/fixture.d.ts.map +1 -0
  651. package/replica-sync/fixture.js +364 -0
  652. package/replica-sync/index.d.ts +22 -0
  653. package/replica-sync/index.d.ts.map +1 -0
  654. package/replica-sync/index.js +17 -0
  655. package/replica-sync/types.d.ts +270 -0
  656. package/replica-sync/types.d.ts.map +1 -0
  657. package/replica-sync/types.js +13 -0
  658. package/runtime/diff.d.ts +31 -0
  659. package/runtime/diff.d.ts.map +1 -0
  660. package/runtime/diff.js +143 -0
  661. package/runtime/errors.d.ts +40 -0
  662. package/runtime/errors.d.ts.map +1 -0
  663. package/runtime/errors.js +35 -0
  664. package/runtime/index.d.ts +59 -0
  665. package/runtime/index.d.ts.map +1 -0
  666. package/runtime/index.js +40 -0
  667. package/runtime/legend.d.ts +23 -0
  668. package/runtime/legend.d.ts.map +1 -0
  669. package/runtime/legend.js +38 -0
  670. package/runtime/load-package.d.ts +125 -0
  671. package/runtime/load-package.d.ts.map +1 -0
  672. package/runtime/load-package.js +272 -0
  673. package/runtime/map-package-fetch.d.ts +107 -0
  674. package/runtime/map-package-fetch.d.ts.map +1 -0
  675. package/runtime/map-package-fetch.js +336 -0
  676. package/runtime/map-package-realtime.d.ts +169 -0
  677. package/runtime/map-package-realtime.d.ts.map +1 -0
  678. package/runtime/map-package-realtime.js +350 -0
  679. package/runtime/map-package-validation.d.ts +30 -0
  680. package/runtime/map-package-validation.d.ts.map +1 -0
  681. package/runtime/map-package-validation.js +257 -0
  682. package/runtime/map-package-watch.d.ts +78 -0
  683. package/runtime/map-package-watch.d.ts.map +1 -0
  684. package/runtime/map-package-watch.js +695 -0
  685. package/runtime/map-package.d.ts +167 -0
  686. package/runtime/map-package.d.ts.map +1 -0
  687. package/runtime/map-package.js +15 -0
  688. package/runtime/ogc-styles.d.ts +110 -0
  689. package/runtime/ogc-styles.d.ts.map +1 -0
  690. package/runtime/ogc-styles.js +195 -0
  691. package/runtime/pmtiles-protocol.d.ts +77 -0
  692. package/runtime/pmtiles-protocol.d.ts.map +1 -0
  693. package/runtime/pmtiles-protocol.js +120 -0
  694. package/runtime/popups.d.ts +62 -0
  695. package/runtime/popups.d.ts.map +1 -0
  696. package/runtime/popups.js +95 -0
  697. package/runtime/query-tiles.d.ts +217 -0
  698. package/runtime/query-tiles.d.ts.map +1 -0
  699. package/runtime/query-tiles.js +801 -0
  700. package/runtime/runtime.d.ts +243 -0
  701. package/runtime/runtime.d.ts.map +1 -0
  702. package/runtime/runtime.js +1147 -0
  703. package/runtime/source-bridge.d.ts +99 -0
  704. package/runtime/source-bridge.d.ts.map +1 -0
  705. package/runtime/source-bridge.js +428 -0
  706. package/runtime/style-compose.d.ts +46 -0
  707. package/runtime/style-compose.d.ts.map +1 -0
  708. package/runtime/style-compose.js +144 -0
  709. package/runtime/style-interactions.d.ts +141 -0
  710. package/runtime/style-interactions.d.ts.map +1 -0
  711. package/runtime/style-interactions.js +574 -0
  712. package/runtime/style-spec-validation.d.ts +23 -0
  713. package/runtime/style-spec-validation.d.ts.map +1 -0
  714. package/runtime/style-spec-validation.js +357 -0
  715. package/scene-workspace/analysis-widgets.d.ts +334 -0
  716. package/scene-workspace/analysis-widgets.d.ts.map +1 -0
  717. package/scene-workspace/analysis-widgets.js +424 -0
  718. package/scene-workspace/cesium-adapter.d.ts +438 -0
  719. package/scene-workspace/cesium-adapter.d.ts.map +1 -0
  720. package/scene-workspace/cesium-adapter.js +493 -0
  721. package/scene-workspace/index.d.ts +21 -0
  722. package/scene-workspace/index.d.ts.map +1 -0
  723. package/scene-workspace/index.js +14 -0
  724. package/scene-workspace/primitives.d.ts +162 -0
  725. package/scene-workspace/primitives.d.ts.map +1 -0
  726. package/scene-workspace/primitives.js +255 -0
  727. package/scene-workspace/scene-discovery.d.ts +196 -0
  728. package/scene-workspace/scene-discovery.d.ts.map +1 -0
  729. package/scene-workspace/scene-discovery.js +228 -0
  730. package/scene-workspace/scene-view.d.ts +209 -0
  731. package/scene-workspace/scene-view.d.ts.map +1 -0
  732. package/scene-workspace/scene-view.js +267 -0
  733. package/scene-workspace/types.d.ts +229 -0
  734. package/scene-workspace/types.d.ts.map +1 -0
  735. package/scene-workspace/types.js +23 -0
  736. package/scene-workspace/workspace.d.ts +13 -0
  737. package/scene-workspace/workspace.d.ts.map +1 -0
  738. package/scene-workspace/workspace.js +391 -0
  739. package/share/denial.d.ts +78 -0
  740. package/share/denial.d.ts.map +1 -0
  741. package/share/denial.js +61 -0
  742. package/share/embed-token.d.ts +71 -0
  743. package/share/embed-token.d.ts.map +1 -0
  744. package/share/embed-token.js +99 -0
  745. package/share/index.d.ts +35 -0
  746. package/share/index.d.ts.map +1 -0
  747. package/share/index.js +30 -0
  748. package/share/open-data.d.ts +114 -0
  749. package/share/open-data.d.ts.map +1 -0
  750. package/share/open-data.js +81 -0
  751. package/share/types.d.ts +163 -0
  752. package/share/types.d.ts.map +1 -0
  753. package/share/types.js +17 -0
  754. package/studio/capability-manifest.d.ts +285 -0
  755. package/studio/capability-manifest.d.ts.map +1 -0
  756. package/studio/capability-manifest.js +59 -0
  757. package/studio/chart-spec.d.ts +85 -0
  758. package/studio/chart-spec.d.ts.map +1 -0
  759. package/studio/chart-spec.js +106 -0
  760. package/studio/index.d.ts +34 -0
  761. package/studio/index.d.ts.map +1 -0
  762. package/studio/index.js +27 -0
  763. package/studio/provenance.d.ts +131 -0
  764. package/studio/provenance.d.ts.map +1 -0
  765. package/studio/provenance.js +39 -0
  766. package/studio/publish.d.ts +64 -0
  767. package/studio/publish.d.ts.map +1 -0
  768. package/studio/publish.js +13 -0
  769. package/studio/types.d.ts +278 -0
  770. package/studio/types.d.ts.map +1 -0
  771. package/studio/types.js +71 -0
  772. package/studio/validate.d.ts +45 -0
  773. package/studio/validate.d.ts.map +1 -0
  774. package/studio/validate.js +255 -0
  775. package/studio/validation.d.ts +112 -0
  776. package/studio/validation.d.ts.map +1 -0
  777. package/studio/validation.js +42 -0
  778. package/style/factory.d.ts +30 -0
  779. package/style/factory.d.ts.map +1 -0
  780. package/style/factory.js +61 -0
  781. package/style/index.d.ts +25 -0
  782. package/style/index.d.ts.map +1 -0
  783. package/style/index.js +24 -0
  784. package/style/specification.d.ts +203 -0
  785. package/style/specification.d.ts.map +1 -0
  786. package/style/specification.js +178 -0
  787. package/style/wms-wmts-resolvers.d.ts +38 -0
  788. package/style/wms-wmts-resolvers.d.ts.map +1 -0
  789. package/style/wms-wmts-resolvers.js +92 -0
  790. package/web-components/controller.d.ts +39 -0
  791. package/web-components/controller.d.ts.map +1 -0
  792. package/web-components/controller.js +640 -0
  793. package/web-components/elements.d.ts +210 -0
  794. package/web-components/elements.d.ts.map +1 -0
  795. package/web-components/elements.js +1651 -0
  796. package/web-components/index.d.ts +24 -0
  797. package/web-components/index.d.ts.map +1 -0
  798. package/web-components/index.js +22 -0
  799. package/web-components/maplibre-renderer.d.ts +22 -0
  800. package/web-components/maplibre-renderer.d.ts.map +1 -0
  801. package/web-components/maplibre-renderer.js +474 -0
  802. package/web-components/types.d.ts +397 -0
  803. package/web-components/types.d.ts.map +1 -0
  804. package/web-components/types.js +1 -0
  805. package/webmap/contract.d.ts +28 -0
  806. package/webmap/contract.d.ts.map +1 -0
  807. package/webmap/contract.js +130 -0
  808. package/webmap/convert-basemap.d.ts +17 -0
  809. package/webmap/convert-basemap.d.ts.map +1 -0
  810. package/webmap/convert-basemap.js +78 -0
  811. package/webmap/convert-extent.d.ts +17 -0
  812. package/webmap/convert-extent.d.ts.map +1 -0
  813. package/webmap/convert-extent.js +114 -0
  814. package/webmap/convert-label.d.ts +13 -0
  815. package/webmap/convert-label.d.ts.map +1 -0
  816. package/webmap/convert-label.js +125 -0
  817. package/webmap/convert-layer.d.ts +22 -0
  818. package/webmap/convert-layer.d.ts.map +1 -0
  819. package/webmap/convert-layer.js +181 -0
  820. package/webmap/convert-popup.d.ts +34 -0
  821. package/webmap/convert-popup.d.ts.map +1 -0
  822. package/webmap/convert-popup.js +68 -0
  823. package/webmap/convert-renderer.d.ts +17 -0
  824. package/webmap/convert-renderer.d.ts.map +1 -0
  825. package/webmap/convert-renderer.js +161 -0
  826. package/webmap/convert-symbol.d.ts +17 -0
  827. package/webmap/convert-symbol.d.ts.map +1 -0
  828. package/webmap/convert-symbol.js +122 -0
  829. package/webmap/index.d.ts +44 -0
  830. package/webmap/index.d.ts.map +1 -0
  831. package/webmap/index.js +33 -0
  832. package/webmap/parse.d.ts +25 -0
  833. package/webmap/parse.d.ts.map +1 -0
  834. package/webmap/parse.js +83 -0
  835. package/webmap/types.d.ts +264 -0
  836. package/webmap/types.d.ts.map +1 -0
  837. package/webmap/types.js +13 -0
  838. package/webmap/warnings.d.ts +30 -0
  839. package/webmap/warnings.d.ts.map +1 -0
  840. package/webmap/warnings.js +37 -0
@@ -0,0 +1,493 @@
1
+ /**
2
+ * Cesium 3D `SceneRuntimeAdapter` for the renderer-neutral scene workspace.
3
+ *
4
+ * This module deliberately keeps the camera-state mapping pure and free of any
5
+ * static Cesium import so that 2D-only consumers never pay the CesiumJS bundle
6
+ * cost. The CesiumJS runtime is only pulled in lazily (`await import("cesium")`)
7
+ * when a live {@link CesiumSceneRuntimeTarget} is actually driven.
8
+ *
9
+ * As of honua-server#1197 the adapter renders Honua 3D content end-to-end:
10
+ * 3D-Tiles tilesets (add/remove/visibility), terrain providers (quantized-mesh
11
+ * via `CesiumTerrainProvider`, with vertical exaggeration), and glTF/GLB model
12
+ * layers placed with heading/pitch/roll + scale. It also resolves a picked
13
+ * 3D-Tiles feature's attributes (batch properties / `EXT_structural_metadata`).
14
+ *
15
+ * The provider wiring is still kept Cesium-mockable: every CesiumJS symbol the
16
+ * adapter touches is read off the lazily-imported module, so the wiring is
17
+ * exercised against a `vi.mock("cesium")` stub without a live WebGL `Viewer`.
18
+ *
19
+ * @experimental Part of the experimental `scene-workspace` surface; not yet
20
+ * covered by the SDK's semver contract prior to `1.0.0`.
21
+ * @module
22
+ */
23
+ import { createSceneRuntimeAdapter, diagnoseScenePrimitives, summarizeDiagnosticStatus, } from "./primitives.js";
24
+ /**
25
+ * Capabilities advertised by the Cesium adapter. Unlike the MapLibre 2.5D
26
+ * adapter, Cesium is a true globe renderer: full 3D camera with
27
+ * heading/pitch/roll/height, terrain across the common elevation protocols, and
28
+ * model layers for 3D Tiles / glTF / I3S / point clouds.
29
+ */
30
+ export const CESIUM_SCENE_CAPABILITIES = {
31
+ renderer: "cesium",
32
+ camera: true,
33
+ ground: true,
34
+ terrain: {
35
+ protocols: ["quantized-mesh", "terrain-rgb", "raster-dem", "image-service", "custom"],
36
+ supportsExaggeration: true,
37
+ },
38
+ extrusion: true,
39
+ modelLayer: {
40
+ // glTF/glb single models and 3D Tiles tilesets (incl. point clouds) are
41
+ // rendered live by this adapter as of #1197. I3S scene layers remain
42
+ // declared-capable (Cesium can consume them) but Honua's server does not yet
43
+ // emit i3s model-layer primitives, so they fall through to diagnostics only.
44
+ formats: ["gltf", "glb", "3d-tiles", "i3s"],
45
+ },
46
+ sceneLayerMetadata: true,
47
+ };
48
+ const DEG2RAD = Math.PI / 180;
49
+ const RAD2DEG = 180 / Math.PI;
50
+ function toRadians(degrees) {
51
+ return degrees * DEG2RAD;
52
+ }
53
+ function toDegrees(radians) {
54
+ return radians * RAD2DEG;
55
+ }
56
+ /**
57
+ * Map a renderer-neutral {@link SceneCameraState} (degrees + metres) onto a
58
+ * Cesium `setView` description (degrees destination + radian orientation).
59
+ *
60
+ * Heading/pitch/roll default to Cesium's own defaults — heading 0 (north),
61
+ * pitch -90 (looking straight down), roll 0 — when the workspace omits them.
62
+ */
63
+ export function cameraStateToCesiumView(camera) {
64
+ return {
65
+ destination: {
66
+ longitude: camera.longitude,
67
+ latitude: camera.latitude,
68
+ height: camera.height,
69
+ },
70
+ orientation: {
71
+ heading: toRadians(camera.heading ?? 0),
72
+ pitch: toRadians(camera.pitch ?? -90),
73
+ roll: toRadians(camera.roll ?? 0),
74
+ },
75
+ };
76
+ }
77
+ /**
78
+ * Read a live (or mocked) Cesium camera back into a renderer-neutral
79
+ * {@link SceneCameraState}. This is the inverse of
80
+ * {@link cameraStateToCesiumView} and is the load-bearing half of the
81
+ * camera-state round-trip through the workspace.
82
+ */
83
+ export function cesiumCameraToSceneState(camera) {
84
+ return {
85
+ longitude: toDegrees(camera.positionCartographic.longitude),
86
+ latitude: toDegrees(camera.positionCartographic.latitude),
87
+ height: camera.positionCartographic.height,
88
+ heading: normalizeAngleDegrees(toDegrees(camera.heading)),
89
+ pitch: toDegrees(camera.pitch),
90
+ roll: toDegrees(camera.roll),
91
+ };
92
+ }
93
+ /**
94
+ * Apply a {@link SceneCameraState} to a live (or mocked) Cesium camera.
95
+ *
96
+ * The destination is left as degrees + height on the `setView` call; a live
97
+ * adapter (see {@link applyCesiumScenePrimitives}) converts it to a
98
+ * `Cartesian3` via the lazily-loaded Cesium module before calling `setView`.
99
+ * Tests can pass a mock camera and assert the orientation (in radians) directly.
100
+ */
101
+ export function applyCameraStateToCesiumCamera(camera, state, toCartesian = (longitude, latitude, height) => ({
102
+ longitude,
103
+ latitude,
104
+ height,
105
+ })) {
106
+ const view = cameraStateToCesiumView(state);
107
+ camera.setView({
108
+ destination: toCartesian(view.destination.longitude, view.destination.latitude, view.destination.height),
109
+ orientation: view.orientation,
110
+ });
111
+ }
112
+ /**
113
+ * Normalize a heading in degrees into the `[0, 360)` range so a round-trip
114
+ * through Cesium (which wraps headings) compares cleanly. Pitch and roll are
115
+ * left untouched because Cesium keeps them in their natural signed ranges.
116
+ */
117
+ function normalizeAngleDegrees(degrees) {
118
+ if (!Number.isFinite(degrees))
119
+ return degrees;
120
+ const wrapped = degrees % 360;
121
+ return wrapped < 0 ? wrapped + 360 : wrapped;
122
+ }
123
+ /**
124
+ * Resolve the scale factor for a model layer. The primitive allows a uniform
125
+ * number or a per-axis triple; Cesium `Model.fromGltfAsync` takes a single
126
+ * uniform `scale`, so a triple collapses to its first finite component (with a
127
+ * sane `1` fallback). Non-finite / non-positive values fall back to `1`.
128
+ */
129
+ export function resolveCesiumModelScale(scale) {
130
+ const candidate = Array.isArray(scale) ? scale[0] : scale;
131
+ return typeof candidate === "number" && Number.isFinite(candidate) && candidate > 0 ? candidate : 1;
132
+ }
133
+ /**
134
+ * Map a {@link SceneModelLayerPrimitive} onto a renderer-neutral
135
+ * {@link CesiumModelPlacement} (degrees + metres position, radian orientation,
136
+ * uniform scale). Pure so the placement math is unit-testable without Cesium.
137
+ *
138
+ * `position` defaults to lon/lat 0 at height 0; `rotation` (degrees, in the
139
+ * workspace contract) defaults to heading/pitch/roll 0.
140
+ */
141
+ export function modelLayerToCesiumPlacement(primitive) {
142
+ const [longitude = 0, latitude = 0, height = 0] = primitive.position ?? [];
143
+ const [heading = 0, pitch = 0, roll = 0] = primitive.rotation ?? [];
144
+ return {
145
+ position: { longitude, latitude, height: height ?? 0 },
146
+ orientation: { heading: toRadians(heading), pitch: toRadians(pitch), roll: toRadians(roll) },
147
+ scale: resolveCesiumModelScale(primitive.scale),
148
+ };
149
+ }
150
+ /**
151
+ * Lazily import the CesiumJS runtime. Kept in its own function so the dynamic
152
+ * `import("cesium")` is the *only* reference to the package in `src/`, which is
153
+ * what keeps Cesium out of the 2D bundle.
154
+ */
155
+ async function loadCesium() {
156
+ return (await import("cesium"));
157
+ }
158
+ /**
159
+ * Build a Cesium `Matrix4` model matrix from a {@link CesiumModelPlacement}
160
+ * using the supplied (lazily-loaded) Cesium module. Position becomes an
161
+ * east-north-up fixed frame at the placement origin, then a uniform scale is
162
+ * folded in. Isolated so the live adapter and tests share one path.
163
+ */
164
+ function placementToModelMatrix(cesium, placement) {
165
+ const origin = cesium.Cartesian3.fromDegrees(placement.position.longitude, placement.position.latitude, placement.position.height);
166
+ const hpr = new cesium.HeadingPitchRoll(placement.orientation.heading, placement.orientation.pitch, placement.orientation.roll);
167
+ const frame = cesium.Transforms.headingPitchRollToFixedFrame(origin, hpr);
168
+ return placement.scale === 1 ? frame : cesium.Matrix4.multiplyByUniformScale(frame, placement.scale, frame);
169
+ }
170
+ /**
171
+ * Read the `honua_style` descriptor off a tileset's (or tileset.json's)
172
+ * `extras`, if present and well-formed. Returns `undefined` when the tileset
173
+ * carries no Honua styling metadata (the common case for plain tilesets), so
174
+ * the auto-apply path can no-op silently.
175
+ */
176
+ export function readHonua3DStyleDescriptor(extras) {
177
+ if (extras === null || typeof extras !== "object")
178
+ return undefined;
179
+ const candidate = extras.honua_style;
180
+ if (candidate === null || typeof candidate !== "object")
181
+ return undefined;
182
+ const descriptor = candidate;
183
+ if (descriptor.encoding !== "3d-tiles-styling")
184
+ return undefined;
185
+ if (typeof descriptor.uri !== "string" || descriptor.uri.trim() === "")
186
+ return undefined;
187
+ return {
188
+ encoding: "3d-tiles-styling",
189
+ version: typeof descriptor.version === "string" ? descriptor.version : "1.0",
190
+ uri: descriptor.uri,
191
+ };
192
+ }
193
+ /**
194
+ * Resolve a sidecar `uri` (relative, per the contract) against the
195
+ * `tileset.json` URL it was advertised in. Falls back to returning the raw
196
+ * `uri` unchanged when `tilesetUrl` is not a parseable absolute/base URL (e.g.
197
+ * a bare relative path in a test), which keeps a plain `fetch` workable.
198
+ */
199
+ export function resolveHonua3DStyleUri(uri, tilesetUrl) {
200
+ try {
201
+ return new URL(uri, tilesetUrl).toString();
202
+ }
203
+ catch {
204
+ return uri;
205
+ }
206
+ }
207
+ /**
208
+ * Fetch + parse the `style.json` sidecar at `styleUrl`.
209
+ *
210
+ * The sidecar is a STATIC asset served next to `tileset.json` (not a Honua API
211
+ * call), so it is fetched with a plain global `fetch` rather than routed
212
+ * through the SDK's authenticated request path — this keeps the styling module
213
+ * free of a client dependency and mirrors how Cesium itself loads tileset
214
+ * assets. A custom `fetchImpl` can be injected (tests pass a mock).
215
+ */
216
+ export async function fetchHonua3DStyleSpec(styleUrl, fetchImpl = fetch.bind(globalThis)) {
217
+ const response = await fetchImpl(styleUrl);
218
+ if (!response.ok) {
219
+ throw new Error(`Failed to fetch Honua 3D style "${styleUrl}": ${response.status} ${response.statusText}`);
220
+ }
221
+ return (await response.json());
222
+ }
223
+ /**
224
+ * Discover and load the Honua 3D styling spec advertised by a tileset.
225
+ *
226
+ * Reads `extras.honua_style` (off either a loaded `Cesium3DTileset` or a parsed
227
+ * tileset.json `extras` object), resolves the sidecar `uri` against
228
+ * `tilesetUrl`, and fetches the `style.json`. Returns `undefined` when the
229
+ * tileset advertises no Honua styling, so callers can treat "no style" as a
230
+ * silent no-op rather than an error.
231
+ */
232
+ export async function loadHonua3DStyle(extras, tilesetUrl, fetchImpl = fetch.bind(globalThis)) {
233
+ const descriptor = readHonua3DStyleDescriptor(extras);
234
+ if (!descriptor)
235
+ return undefined;
236
+ const styleUrl = resolveHonua3DStyleUri(descriptor.uri, tilesetUrl);
237
+ return fetchHonua3DStyleSpec(styleUrl, fetchImpl);
238
+ }
239
+ /**
240
+ * Build a Cesium `Cesium3DTileStyle` options object from a spec, including only
241
+ * the blocks (`color` / `show`) that are present. The spec's blocks are already
242
+ * `Cesium3DTileStyle`-shaped, so they are passed through verbatim. Pure (no
243
+ * Cesium import) so the block-selection logic is unit-testable.
244
+ */
245
+ export function honua3DStyleToCesiumStyleOptions(spec) {
246
+ const options = {};
247
+ if (spec.style.color)
248
+ options.color = spec.style.color;
249
+ if (spec.style.show)
250
+ options.show = spec.style.show;
251
+ return options;
252
+ }
253
+ /**
254
+ * Apply a Honua 3D styling spec to a tileset by constructing a
255
+ * `Cesium3DTileStyle` (only from the present `color` / `show` blocks) and
256
+ * assigning it to `tileset.style`. Lazily loads Cesium the same way the rest of
257
+ * the adapter does, so no static `import("cesium")` leaks into the 2D bundle.
258
+ *
259
+ * When the spec carries neither a `color` nor a `show` block, the tileset's
260
+ * `style` is left untouched (nothing to apply).
261
+ */
262
+ export async function applyHonua3DStyle(tileset, spec, cesium) {
263
+ const options = honua3DStyleToCesiumStyleOptions(spec);
264
+ if (Object.keys(options).length === 0)
265
+ return;
266
+ const mod = cesium ?? (await loadCesium());
267
+ tileset.style = new mod.Cesium3DTileStyle(options);
268
+ }
269
+ /**
270
+ * Programmatic override for a tileset's styling: apply a (typically
271
+ * server-discovered, but possibly hand-authored) {@link Honua3DStyleSpec} to a
272
+ * live tileset. Thin alias over {@link applyHonua3DStyle} that reads as an
273
+ * intentional manual set at the call site.
274
+ */
275
+ export function setTilesetStyle(tileset, spec, cesium) {
276
+ return applyHonua3DStyle(tileset, spec, cesium);
277
+ }
278
+ /**
279
+ * Discover and apply the server's attribute-driven styling to an already-loaded
280
+ * tileset, if it advertises any (`extras.honua_style`). Returns the applied
281
+ * spec (or `undefined` when the tileset carries no Honua styling). Used by
282
+ * {@link addCesium3DTileset}'s auto-apply path and exposed for callers that
283
+ * load a tileset themselves.
284
+ */
285
+ export async function applyTilesetServerStyle(tileset, tilesetUrl, cesium, fetchImpl = fetch.bind(globalThis)) {
286
+ const spec = await loadHonua3DStyle(tileset.extras, tilesetUrl, fetchImpl);
287
+ if (!spec)
288
+ return undefined;
289
+ await applyHonua3DStyle(tileset, spec, cesium);
290
+ return spec;
291
+ }
292
+ /**
293
+ * Materialize a 3D-Tiles tileset from a model-layer primitive and add it to the
294
+ * scene's primitive collection, returning a handle for later visibility /
295
+ * teardown. Exported so consumers (and tests) can drive a single tileset.
296
+ *
297
+ * If the loaded tileset advertises the server's attribute-driven styling
298
+ * contract (`extras.honua_style`, honua-server#1206) the sidecar style is
299
+ * fetched and applied automatically (honua-server#1206). Pass
300
+ * `{ applyServerStyle: false }` to skip that and style the tileset manually via
301
+ * {@link setTilesetStyle}. A tileset without `honua_style` is added unchanged
302
+ * (no fetch), so existing callers are unaffected.
303
+ */
304
+ export async function addCesium3DTileset(scene, primitive, cesium, options = {}) {
305
+ const mod = cesium ?? (await loadCesium());
306
+ const tileset = await mod.Cesium3DTileset.fromUrl(primitive.uri);
307
+ if (primitive.position) {
308
+ tileset.modelMatrix = placementToModelMatrix(mod, modelLayerToCesiumPlacement(primitive));
309
+ }
310
+ if (options.applyServerStyle !== false) {
311
+ await applyTilesetServerStyle(tileset, primitive.uri, mod, options.fetchImpl ?? fetch.bind(globalThis));
312
+ }
313
+ scene.primitives.add(tileset);
314
+ return makeLayerHandle(scene, primitive.id, tileset, "model-layer", primitive.format);
315
+ }
316
+ /**
317
+ * Materialize a glTF/GLB model from a model-layer primitive, placing it at the
318
+ * primitive's position/rotation/scale, and add it to the scene. Returns a
319
+ * handle for visibility / teardown.
320
+ */
321
+ export async function addCesiumModel(scene, primitive, cesium) {
322
+ const mod = cesium ?? (await loadCesium());
323
+ const placement = modelLayerToCesiumPlacement(primitive);
324
+ // `placementToModelMatrix` already folds the uniform scale into the model
325
+ // matrix (alongside translation + rotation). Cesium applies `Model.scale` on
326
+ // top of `modelMatrix`, so passing it here too would square the scale
327
+ // (requested 3 → rendered 9). Apply it exactly once, via the matrix.
328
+ const model = await mod.Model.fromGltfAsync({
329
+ url: primitive.uri,
330
+ modelMatrix: placementToModelMatrix(mod, placement),
331
+ });
332
+ scene.primitives.add(model);
333
+ return makeLayerHandle(scene, primitive.id, model, "model-layer", primitive.format);
334
+ }
335
+ /**
336
+ * Wire a terrain provider from an elevation-source primitive onto the scene.
337
+ *
338
+ * `quantized-mesh` maps to `CesiumTerrainProvider.fromUrl` natively. `terrain-rgb`
339
+ * / `raster-dem` (Mapbox/Terrarium-encoded raster DEM tiles) are treated the
340
+ * same way: Cesium consumes a quantized-mesh-style endpoint at `url`, so we wire
341
+ * the provider when a `url` is present and otherwise leave the globe on its
342
+ * default ellipsoid (the diagnostic already flags a missing url). Exaggeration
343
+ * is applied via the scene's `verticalExaggeration`.
344
+ */
345
+ export async function applyCesiumTerrain(scene, primitive, cesium) {
346
+ const url = typeof primitive.url === "string" && primitive.url.trim() !== "" ? primitive.url : undefined;
347
+ if (primitive.exaggeration !== undefined && Number.isFinite(primitive.exaggeration)) {
348
+ scene.verticalExaggeration = primitive.exaggeration;
349
+ }
350
+ if (!url)
351
+ return undefined;
352
+ const mod = cesium ?? (await loadCesium());
353
+ const provider = await mod.CesiumTerrainProvider.fromUrl(url);
354
+ scene.terrainProvider = provider;
355
+ return {
356
+ id: primitive.id,
357
+ kind: "elevation-source",
358
+ setVisible() {
359
+ /* terrain is always on once set; visibility is a no-op for the provider. */
360
+ },
361
+ remove() {
362
+ // Only tear down if *this* handle's provider is still the active one. If a
363
+ // newer elevation source has since replaced `scene.terrainProvider`,
364
+ // removing this (now-stale) handle must be a no-op so we don't clobber the
365
+ // active terrain/exaggeration.
366
+ if (scene.terrainProvider !== provider)
367
+ return;
368
+ scene.terrainProvider = undefined;
369
+ scene.verticalExaggeration = 1;
370
+ },
371
+ };
372
+ }
373
+ function makeLayerHandle(scene, id, primitive, kind, format) {
374
+ return {
375
+ id,
376
+ kind,
377
+ format,
378
+ setVisible(visible) {
379
+ primitive.show = visible;
380
+ },
381
+ remove() {
382
+ if (scene.primitives.contains(primitive))
383
+ scene.primitives.remove(primitive);
384
+ },
385
+ };
386
+ }
387
+ /**
388
+ * Resolve the attributes of a picked 3D-Tiles feature.
389
+ *
390
+ * Cesium returns a `Cesium3DTileFeature` from `scene.pick(...)` for tileset
391
+ * hits; its batch-table / `EXT_structural_metadata` properties are read via
392
+ * `getPropertyIds()` + `getProperty(id)`. Anything else (terrain, a glTF model
393
+ * primitive, empty space) yields `undefined`. Pure given a picked object, so it
394
+ * is unit-testable with a plain stub.
395
+ */
396
+ export function resolvePickedFeatureAttributes(picked) {
397
+ if (picked === null || typeof picked !== "object")
398
+ return undefined;
399
+ const feature = picked;
400
+ if (typeof feature.getPropertyIds !== "function" || typeof feature.getProperty !== "function")
401
+ return undefined;
402
+ const attributes = {};
403
+ for (const propertyId of feature.getPropertyIds()) {
404
+ attributes[propertyId] = feature.getProperty(propertyId);
405
+ }
406
+ return attributes;
407
+ }
408
+ /**
409
+ * Pick a 3D-Tiles feature at the given window position and return its
410
+ * attributes (or `undefined` for a miss / non-feature hit). Convenience wrapper
411
+ * over `scene.pick` + {@link resolvePickedFeatureAttributes} for identify flows.
412
+ */
413
+ export function pickCesiumFeatureAttributes(scene, windowPosition) {
414
+ if (typeof scene.pick !== "function")
415
+ return undefined;
416
+ return resolvePickedFeatureAttributes(scene.pick(windowPosition));
417
+ }
418
+ /**
419
+ * Apply scene primitives to a live Cesium target.
420
+ *
421
+ * As of #1197 this lands the full 3D stack against `target.scene`:
422
+ * - `camera` → `Camera.setView` (via the lazily-loaded `Cartesian3`).
423
+ * - `elevation-source` → `scene.terrainProvider` + `verticalExaggeration`.
424
+ * - `model-layer` (`3d-tiles`) → `Cesium3DTileset.fromUrl` added to
425
+ * `scene.primitives`; (`gltf`/`glb`) → `Model.fromGltfAsync` placed by
426
+ * position/rotation/scale.
427
+ *
428
+ * Returns the diagnostics plus the live layer handles keyed by primitive id so
429
+ * callers can toggle visibility / tear layers down. Layer rendering is skipped
430
+ * (gracefully) when no `scene` is attached or when a primitive diagnoses as
431
+ * unsupported. I3S model layers and extrusions are declared-capable but not yet
432
+ * materialized here (no Honua server primitives emit them); point clouds ride
433
+ * the 3D-Tiles path and are gated on server ingest (honua-server#1201).
434
+ */
435
+ export async function applyCesiumScenePrimitives(target, primitives, _state) {
436
+ const diagnostics = diagnoseScenePrimitives(primitives, CESIUM_SCENE_CAPABILITIES);
437
+ const cesium = await loadCesium();
438
+ const toCartesian = (longitude, latitude, height) => cesium.Cartesian3.fromDegrees(longitude, latitude, height);
439
+ const unsupportedIds = new Set(diagnostics.filter((diagnostic) => diagnostic.status === "unsupported").map((diagnostic) => diagnostic.primitiveId));
440
+ const layers = new Map();
441
+ const scene = target.scene;
442
+ for (const primitive of primitives) {
443
+ if (primitive.kind === "camera") {
444
+ applyCameraStateToCesiumCamera(target.camera, primitive.camera, toCartesian);
445
+ continue;
446
+ }
447
+ if (!scene || unsupportedIds.has(primitive.id))
448
+ continue;
449
+ if (primitive.kind === "elevation-source") {
450
+ const handle = await applyCesiumTerrain(scene, primitive, cesium);
451
+ if (handle)
452
+ layers.set(handle.id, handle);
453
+ continue;
454
+ }
455
+ if (primitive.kind === "model-layer") {
456
+ if (primitive.format === "3d-tiles") {
457
+ layers.set(primitive.id, await addCesium3DTileset(scene, primitive, cesium));
458
+ }
459
+ else if (primitive.format === "gltf" || primitive.format === "glb") {
460
+ layers.set(primitive.id, await addCesiumModel(scene, primitive, cesium));
461
+ }
462
+ // i3s / obj / custom: declared-capable but not materialized here.
463
+ }
464
+ }
465
+ return {
466
+ status: summarizeDiagnosticStatus(diagnostics),
467
+ diagnostics,
468
+ layers,
469
+ };
470
+ }
471
+ /**
472
+ * Create a {@link SceneRuntimeAdapter} backed by CesiumJS.
473
+ *
474
+ * When `options.target` (a live Cesium `Viewer`/`Scene` surface — a `camera`
475
+ * plus an optional `scene`) is supplied, `apply` drives the live globe: camera
476
+ * sync plus, when a `scene` is attached, terrain providers, 3D-Tiles tilesets,
477
+ * and glTF/GLB model layers (#1197). Without a target the adapter still
478
+ * diagnoses primitives against Cesium's true-3D capabilities — useful for
479
+ * migration analysis before a viewer exists. CesiumJS itself is only imported
480
+ * lazily when `apply` runs.
481
+ */
482
+ export function createCesiumSceneAdapter(options = {}) {
483
+ const { id = "cesium-scene", target } = options;
484
+ return createSceneRuntimeAdapter({
485
+ id,
486
+ capabilities: CESIUM_SCENE_CAPABILITIES,
487
+ ...(target
488
+ ? {
489
+ apply: (primitives, state) => applyCesiumScenePrimitives(target, primitives, state),
490
+ }
491
+ : {}),
492
+ });
493
+ }
@@ -0,0 +1,21 @@
1
+ /**
2
+ * `@honua/sdk-js/scene-workspace` — framework-neutral 3D scene workspace state.
3
+ *
4
+ * @experimental This entrypoint is not yet covered by the SDK's semver contract
5
+ * — the surface may change in any minor release prior to `1.0.0`.
6
+ * @module
7
+ */
8
+ export { createSceneWorkspace, emptySceneWorkspaceState, reduceSceneWorkspaceState, sceneWorkspaceIntentFromAdapterEvent, selectSceneDiagnosticsByStatus, selectSceneEvidenceForFeature, selectScenePrimitivesByKind, selectSceneVisibleLayers, } from "./workspace.js";
9
+ export { MAPLIBRE_SCENE_CAPABILITIES, applyMapLibreScenePrimitives, createMapLibreSceneAdapter, createSceneRuntimeAdapter, diagnoseScenePrimitive, diagnoseScenePrimitives, summarizeDiagnosticStatus, toMapLibreExtrusionLayer, toMapLibreTerrainPatch, } from "./primitives.js";
10
+ export { CESIUM_SCENE_CAPABILITIES, addCesium3DTileset, addCesiumModel, applyCameraStateToCesiumCamera, applyCesiumScenePrimitives, applyCesiumTerrain, applyHonua3DStyle, applyTilesetServerStyle, cameraStateToCesiumView, cesiumCameraToSceneState, createCesiumSceneAdapter, fetchHonua3DStyleSpec, honua3DStyleToCesiumStyleOptions, loadHonua3DStyle, modelLayerToCesiumPlacement, pickCesiumFeatureAttributes, readHonua3DStyleDescriptor, resolveCesiumModelScale, resolveHonua3DStyleUri, resolvePickedFeatureAttributes, setTilesetStyle, } from "./cesium-adapter.js";
11
+ export type { AddCesium3DTilesetOptions, CesiumCameraLike, CesiumCameraView, CesiumHeadingPitchRollRadians, CesiumLayerHandle, CesiumModelLike, CesiumModelPlacement, CesiumPrimitiveCollectionLike, CesiumSceneLike, CesiumSceneRuntimeTarget, CesiumTilesetLike, Honua3DStyleConditions, Honua3DStyleDescriptor, Honua3DStyleSpec, } from "./cesium-adapter.js";
12
+ export { buildElevationProfilePath, buildLineOfSightBody, buildViewshedBody, formatMeasurementLabel, haversineMeters, measureScenePositions, pathLengthMeters, positionsToWktLineString, renderElevationProfilePolyline, renderLineOfSight, renderMeasurement, renderViewshed, requestElevationProfile, requestLineOfSight, requestViewshed, slantDistanceMeters, sphericalPolygonAreaSquareMeters, } from "./analysis-widgets.js";
13
+ export type { CesiumEntityCollectionLike, ElevationProfileRequest, ElevationProfileResult, ElevationProfileSample, LineOfSightRequest, LineOfSightResult, SceneAnalysisCesiumModule, SceneAnalysisOverlay, SceneAnalysisPosition, SceneAnalysisRequestExecutor, SceneMeasurement, ViewshedRequest, ViewshedResult, ViewshedSample, } from "./analysis-widgets.js";
14
+ export { getScene, listScenes, normalizeScene, resolveSceneTilesetUrl, sceneCameraPrimitive, sceneLayerStates, sceneTerrainPrimitive, sceneTilesetPrimitive, sceneToRuntimePrimitives, sceneViewpointBookmarks, } from "./scene-discovery.js";
15
+ export type { HonuaScene, SceneDiscoveryRequestExecutor, SceneExtent3D, SceneViewpoint, } from "./scene-discovery.js";
16
+ export { SceneView } from "./scene-view.js";
17
+ export type { SceneViewEvent, SceneViewEventListener, SceneViewOptions, SceneViewRequestExecutor, } from "./scene-view.js";
18
+ export { SCENE_WORKSPACE_SLICES } from "./types.js";
19
+ export type { MapLibreExtrusionLayerSpecification, MapLibreSceneRuntimeTarget, MapLibreTerrainOptions, MapLibreTerrainPatch, MapLibreTerrainSourceSpecification, SceneCacheMetadata, SceneCameraPrimitive, SceneElevationSourcePrimitive, SceneElevationSourceProtocol, SceneExtrusionPrimitive, SceneExtrusionValue, SceneGroundPrimitive, SceneLayerMetadataPrimitive, SceneModelFormat, SceneModelLayerPrimitive, ScenePrimitiveApplyResult, ScenePrimitiveDiagnostic, ScenePrimitiveDiagnosticSeverity, ScenePrimitiveStatus, SceneRendererKind, SceneRuntimeAdapter, SceneRuntimeCapabilities, SceneRuntimePrimitive, SceneRuntimePrimitiveKind, } from "./primitives.js";
20
+ export type { SceneBookmark, SceneCameraState, SceneDetailState, SceneEvidenceReference, SceneLayerState, SceneRealtimeState, SceneTimelineState, SceneWorkspace, SceneWorkspaceAdapterEvent, SceneWorkspaceChangeEvent, SceneWorkspaceHistoryEntry, SceneWorkspaceIntent, SceneWorkspaceListener, SceneWorkspaceSlice, SceneWorkspaceSnapshot, SceneWorkspaceState, SceneWorkspaceUnsubscribe, } from "./types.js";
21
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/scene-workspace/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EACL,oBAAoB,EACpB,wBAAwB,EACxB,yBAAyB,EACzB,oCAAoC,EACpC,8BAA8B,EAC9B,6BAA6B,EAC7B,2BAA2B,EAC3B,wBAAwB,GACzB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,2BAA2B,EAC3B,4BAA4B,EAC5B,0BAA0B,EAC1B,yBAAyB,EACzB,sBAAsB,EACtB,uBAAuB,EACvB,yBAAyB,EACzB,wBAAwB,EACxB,sBAAsB,GACvB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,yBAAyB,EACzB,kBAAkB,EAClB,cAAc,EACd,8BAA8B,EAC9B,0BAA0B,EAC1B,kBAAkB,EAClB,iBAAiB,EACjB,uBAAuB,EACvB,uBAAuB,EACvB,wBAAwB,EACxB,wBAAwB,EACxB,qBAAqB,EACrB,gCAAgC,EAChC,gBAAgB,EAChB,2BAA2B,EAC3B,2BAA2B,EAC3B,0BAA0B,EAC1B,uBAAuB,EACvB,sBAAsB,EACtB,8BAA8B,EAC9B,eAAe,GAChB,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EACV,yBAAyB,EACzB,gBAAgB,EAChB,gBAAgB,EAChB,6BAA6B,EAC7B,iBAAiB,EACjB,eAAe,EACf,oBAAoB,EACpB,6BAA6B,EAC7B,eAAe,EACf,wBAAwB,EACxB,iBAAiB,EACjB,sBAAsB,EACtB,sBAAsB,EACtB,gBAAgB,GACjB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,yBAAyB,EACzB,oBAAoB,EACpB,iBAAiB,EACjB,sBAAsB,EACtB,eAAe,EACf,qBAAqB,EACrB,gBAAgB,EAChB,wBAAwB,EACxB,8BAA8B,EAC9B,iBAAiB,EACjB,iBAAiB,EACjB,cAAc,EACd,uBAAuB,EACvB,kBAAkB,EAClB,eAAe,EACf,mBAAmB,EACnB,gCAAgC,GACjC,MAAM,uBAAuB,CAAC;AAC/B,YAAY,EACV,0BAA0B,EAC1B,uBAAuB,EACvB,sBAAsB,EACtB,sBAAsB,EACtB,kBAAkB,EAClB,iBAAiB,EACjB,yBAAyB,EACzB,oBAAoB,EACpB,qBAAqB,EACrB,4BAA4B,EAC5B,gBAAgB,EAChB,eAAe,EACf,cAAc,EACd,cAAc,GACf,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,QAAQ,EACR,UAAU,EACV,cAAc,EACd,sBAAsB,EACtB,oBAAoB,EACpB,gBAAgB,EAChB,qBAAqB,EACrB,qBAAqB,EACrB,wBAAwB,EACxB,uBAAuB,GACxB,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EACV,UAAU,EACV,6BAA6B,EAC7B,aAAa,EACb,cAAc,GACf,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,YAAY,EACV,cAAc,EACd,sBAAsB,EACtB,gBAAgB,EAChB,wBAAwB,GACzB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AACpD,YAAY,EACV,mCAAmC,EACnC,0BAA0B,EAC1B,sBAAsB,EACtB,oBAAoB,EACpB,kCAAkC,EAClC,kBAAkB,EAClB,oBAAoB,EACpB,6BAA6B,EAC7B,4BAA4B,EAC5B,uBAAuB,EACvB,mBAAmB,EACnB,oBAAoB,EACpB,2BAA2B,EAC3B,gBAAgB,EAChB,wBAAwB,EACxB,yBAAyB,EACzB,wBAAwB,EACxB,gCAAgC,EAChC,oBAAoB,EACpB,iBAAiB,EACjB,mBAAmB,EACnB,wBAAwB,EACxB,qBAAqB,EACrB,yBAAyB,GAC1B,MAAM,iBAAiB,CAAC;AACzB,YAAY,EACV,aAAa,EACb,gBAAgB,EAChB,gBAAgB,EAChB,sBAAsB,EACtB,eAAe,EACf,kBAAkB,EAClB,kBAAkB,EAClB,cAAc,EACd,0BAA0B,EAC1B,yBAAyB,EACzB,0BAA0B,EAC1B,oBAAoB,EACpB,sBAAsB,EACtB,mBAAmB,EACnB,sBAAsB,EACtB,mBAAmB,EACnB,yBAAyB,GAC1B,MAAM,YAAY,CAAC"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * `@honua/sdk-js/scene-workspace` — framework-neutral 3D scene workspace state.
3
+ *
4
+ * @experimental This entrypoint is not yet covered by the SDK's semver contract
5
+ * — the surface may change in any minor release prior to `1.0.0`.
6
+ * @module
7
+ */
8
+ export { createSceneWorkspace, emptySceneWorkspaceState, reduceSceneWorkspaceState, sceneWorkspaceIntentFromAdapterEvent, selectSceneDiagnosticsByStatus, selectSceneEvidenceForFeature, selectScenePrimitivesByKind, selectSceneVisibleLayers, } from "./workspace.js";
9
+ export { MAPLIBRE_SCENE_CAPABILITIES, applyMapLibreScenePrimitives, createMapLibreSceneAdapter, createSceneRuntimeAdapter, diagnoseScenePrimitive, diagnoseScenePrimitives, summarizeDiagnosticStatus, toMapLibreExtrusionLayer, toMapLibreTerrainPatch, } from "./primitives.js";
10
+ export { CESIUM_SCENE_CAPABILITIES, addCesium3DTileset, addCesiumModel, applyCameraStateToCesiumCamera, applyCesiumScenePrimitives, applyCesiumTerrain, applyHonua3DStyle, applyTilesetServerStyle, cameraStateToCesiumView, cesiumCameraToSceneState, createCesiumSceneAdapter, fetchHonua3DStyleSpec, honua3DStyleToCesiumStyleOptions, loadHonua3DStyle, modelLayerToCesiumPlacement, pickCesiumFeatureAttributes, readHonua3DStyleDescriptor, resolveCesiumModelScale, resolveHonua3DStyleUri, resolvePickedFeatureAttributes, setTilesetStyle, } from "./cesium-adapter.js";
11
+ export { buildElevationProfilePath, buildLineOfSightBody, buildViewshedBody, formatMeasurementLabel, haversineMeters, measureScenePositions, pathLengthMeters, positionsToWktLineString, renderElevationProfilePolyline, renderLineOfSight, renderMeasurement, renderViewshed, requestElevationProfile, requestLineOfSight, requestViewshed, slantDistanceMeters, sphericalPolygonAreaSquareMeters, } from "./analysis-widgets.js";
12
+ export { getScene, listScenes, normalizeScene, resolveSceneTilesetUrl, sceneCameraPrimitive, sceneLayerStates, sceneTerrainPrimitive, sceneTilesetPrimitive, sceneToRuntimePrimitives, sceneViewpointBookmarks, } from "./scene-discovery.js";
13
+ export { SceneView } from "./scene-view.js";
14
+ export { SCENE_WORKSPACE_SLICES } from "./types.js";