@honua/react 0.0.20-alpha.0 → 0.1.1-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 (363) hide show
  1. package/contract/discovery.d.ts +231 -0
  2. package/contract/discovery.d.ts.map +1 -0
  3. package/contract/discovery.js +554 -0
  4. package/contract/edit-sketch.d.ts +8 -0
  5. package/contract/edit-sketch.d.ts.map +1 -1
  6. package/contract/edit-sketch.js +15 -0
  7. package/contract/edit-snapping.d.ts +160 -0
  8. package/contract/edit-snapping.d.ts.map +1 -0
  9. package/contract/edit-snapping.js +675 -0
  10. package/contract/generated/projjson-v0.7-crs-validator.d.ts +35 -0
  11. package/contract/generated/projjson-v0.7-crs-validator.d.ts.map +1 -0
  12. package/contract/generated/projjson-v0.7-crs-validator.js +3941 -0
  13. package/contract/index.d.ts +12 -1
  14. package/contract/index.d.ts.map +1 -1
  15. package/contract/index.js +4 -0
  16. package/contract/pmtiles.d.ts +193 -0
  17. package/contract/pmtiles.d.ts.map +1 -0
  18. package/contract/pmtiles.js +195 -0
  19. package/contract/protocol-module.d.ts +70 -0
  20. package/contract/protocol-module.d.ts.map +1 -0
  21. package/contract/protocol-module.js +1 -0
  22. package/contract/schema-envelope.d.ts +26 -0
  23. package/contract/schema-envelope.d.ts.map +1 -0
  24. package/contract/schema-envelope.js +25 -0
  25. package/contract/schema.d.ts +582 -0
  26. package/contract/schema.d.ts.map +1 -0
  27. package/contract/schema.js +2483 -0
  28. package/contract/source-capability-support.d.ts +6 -0
  29. package/contract/source-capability-support.d.ts.map +1 -0
  30. package/contract/source-capability-support.js +154 -0
  31. package/contract/source.d.ts +57 -15
  32. package/contract/source.d.ts.map +1 -1
  33. package/contract/source.js +368 -65
  34. package/contract/types.d.ts +171 -6
  35. package/contract/types.d.ts.map +1 -1
  36. package/contract/types.js +14 -14
  37. package/core/auth/client-credentials-provider.d.ts +51 -0
  38. package/core/auth/client-credentials-provider.d.ts.map +1 -0
  39. package/core/auth/client-credentials-provider.js +115 -0
  40. package/core/auth/credential-store.d.ts +52 -0
  41. package/core/auth/credential-store.d.ts.map +1 -0
  42. package/core/auth/credential-store.js +82 -0
  43. package/core/auth/index.d.ts +23 -0
  44. package/core/auth/index.d.ts.map +1 -0
  45. package/core/auth/index.js +20 -0
  46. package/core/auth/oauth2-provider.d.ts +114 -0
  47. package/core/auth/oauth2-provider.d.ts.map +1 -0
  48. package/core/auth/oauth2-provider.js +408 -0
  49. package/core/auth/pkce.d.ts +25 -0
  50. package/core/auth/pkce.d.ts.map +1 -0
  51. package/core/auth/pkce.js +46 -0
  52. package/core/auth/static-providers.d.ts +20 -0
  53. package/core/auth/static-providers.d.ts.map +1 -0
  54. package/core/auth/static-providers.js +26 -0
  55. package/core/auth/token-endpoint.d.ts +40 -0
  56. package/core/auth/token-endpoint.d.ts.map +1 -0
  57. package/core/auth/token-endpoint.js +133 -0
  58. package/core/auth/types.d.ts +144 -0
  59. package/core/auth/types.d.ts.map +1 -0
  60. package/core/auth/types.js +8 -0
  61. package/core/bounded-json.d.ts +4 -0
  62. package/core/bounded-json.d.ts.map +1 -0
  63. package/core/bounded-json.js +38 -0
  64. package/core/cache-state.d.ts +9 -0
  65. package/core/cache-state.d.ts.map +1 -1
  66. package/core/cache-state.js +10 -0
  67. package/core/capabilities-xml.d.ts +33 -0
  68. package/core/capabilities-xml.d.ts.map +1 -0
  69. package/core/capabilities-xml.js +331 -0
  70. package/core/client.d.ts +35 -2
  71. package/core/client.d.ts.map +1 -1
  72. package/core/client.js +167 -29
  73. package/core/error-classifications.d.ts +153 -0
  74. package/core/error-classifications.d.ts.map +1 -0
  75. package/core/error-classifications.js +140 -0
  76. package/core/error-code-registry.d.ts +158 -0
  77. package/core/error-code-registry.d.ts.map +1 -0
  78. package/core/error-code-registry.js +143 -0
  79. package/core/error-envelope.d.ts +68 -0
  80. package/core/error-envelope.d.ts.map +1 -0
  81. package/core/error-envelope.js +357 -0
  82. package/core/errors.d.ts +73 -25
  83. package/core/errors.d.ts.map +1 -1
  84. package/core/errors.js +113 -46
  85. package/core/geoparquet-sql.d.ts +190 -0
  86. package/core/geoparquet-sql.d.ts.map +1 -0
  87. package/core/geoparquet-sql.js +368 -0
  88. package/core/odata-key-path.d.ts +12 -0
  89. package/core/odata-key-path.d.ts.map +1 -0
  90. package/core/odata-key-path.js +28 -0
  91. package/core/odata-write-codec.d.ts +66 -0
  92. package/core/odata-write-codec.d.ts.map +1 -0
  93. package/core/odata-write-codec.js +1083 -0
  94. package/core/odata.d.ts +59 -7
  95. package/core/odata.d.ts.map +1 -1
  96. package/core/odata.js +431 -99
  97. package/core/ogc-endpoint-layout.d.ts +70 -0
  98. package/core/ogc-endpoint-layout.d.ts.map +1 -0
  99. package/core/ogc-endpoint-layout.js +173 -0
  100. package/core/ogc-features.d.ts.map +1 -1
  101. package/core/ogc-features.js +35 -17
  102. package/core/ogc-maps.d.ts +7 -0
  103. package/core/ogc-maps.d.ts.map +1 -1
  104. package/core/ogc-maps.js +46 -7
  105. package/core/ogc-processes.d.ts +2 -1
  106. package/core/ogc-processes.d.ts.map +1 -1
  107. package/core/ogc-processes.js +33 -5
  108. package/core/ogc-records.d.ts +9 -0
  109. package/core/ogc-records.d.ts.map +1 -1
  110. package/core/ogc-records.js +78 -29
  111. package/core/ogc-tiles.d.ts +10 -1
  112. package/core/ogc-tiles.d.ts.map +1 -1
  113. package/core/ogc-tiles.js +56 -17
  114. package/core/path-utils.d.ts +9 -0
  115. package/core/path-utils.d.ts.map +1 -1
  116. package/core/path-utils.js +19 -0
  117. package/core/protocol-transport.d.ts +1 -0
  118. package/core/protocol-transport.d.ts.map +1 -1
  119. package/core/request-pipeline.d.ts.map +1 -1
  120. package/core/request-pipeline.js +1 -1
  121. package/core/spatial-filter.d.ts +8 -4
  122. package/core/spatial-filter.d.ts.map +1 -1
  123. package/core/spatial-filter.js +206 -16
  124. package/core/stac-static.d.ts +55 -0
  125. package/core/stac-static.d.ts.map +1 -0
  126. package/core/stac-static.js +386 -0
  127. package/core/stac.d.ts +12 -0
  128. package/core/stac.d.ts.map +1 -1
  129. package/core/stac.js +45 -15
  130. package/core/surfaces.d.ts +13 -0
  131. package/core/surfaces.d.ts.map +1 -1
  132. package/core/surfaces.js +127 -16
  133. package/core/types.d.ts +174 -7
  134. package/core/types.d.ts.map +1 -1
  135. package/core/wfs-capabilities.d.ts +12 -0
  136. package/core/wfs-capabilities.d.ts.map +1 -1
  137. package/core/wfs-capabilities.js +22 -3
  138. package/core/wfs.d.ts +13 -0
  139. package/core/wfs.d.ts.map +1 -1
  140. package/core/wfs.js +35 -5
  141. package/core/wms-capabilities.d.ts +56 -84
  142. package/core/wms-capabilities.d.ts.map +1 -1
  143. package/core/wms-capabilities.js +212 -509
  144. package/core/wmts-capabilities.d.ts +62 -62
  145. package/core/wmts-capabilities.d.ts.map +1 -1
  146. package/core/wmts-capabilities.js +224 -371
  147. package/esri-compat/editor.d.ts +8 -0
  148. package/esri-compat/editor.d.ts.map +1 -1
  149. package/esri-compat/editor.js +13 -0
  150. package/esri-compat/feature-layer.d.ts +2 -0
  151. package/esri-compat/feature-layer.d.ts.map +1 -1
  152. package/esri-compat/feature-layer.js +1 -0
  153. package/esri-compat/identity-manager.d.ts +43 -0
  154. package/esri-compat/identity-manager.d.ts.map +1 -1
  155. package/esri-compat/identity-manager.js +131 -1
  156. package/esri-compat/layer-list.d.ts +11 -0
  157. package/esri-compat/layer-list.d.ts.map +1 -1
  158. package/esri-compat/layer-list.js +49 -0
  159. package/esri-compat/legend.d.ts +10 -0
  160. package/esri-compat/legend.d.ts.map +1 -1
  161. package/esri-compat/legend.js +27 -0
  162. package/esri-compat/oauth-info.d.ts +15 -0
  163. package/esri-compat/oauth-info.d.ts.map +1 -1
  164. package/esri-compat/oauth-info.js +27 -0
  165. package/esri-compat/portal.d.ts +197 -0
  166. package/esri-compat/portal.d.ts.map +1 -0
  167. package/esri-compat/portal.js +251 -0
  168. package/esri-compat/renderer-objects.d.ts +40 -0
  169. package/esri-compat/renderer-objects.d.ts.map +1 -0
  170. package/esri-compat/renderer-objects.js +62 -0
  171. package/esri-compat/sketch.d.ts +43 -0
  172. package/esri-compat/sketch.d.ts.map +1 -1
  173. package/esri-compat/sketch.js +46 -0
  174. package/esri-compat/snapping.d.ts +43 -0
  175. package/esri-compat/snapping.d.ts.map +1 -0
  176. package/esri-compat/snapping.js +45 -0
  177. package/esri-compat/url.d.ts.map +1 -1
  178. package/esri-compat/url.js +1 -1
  179. package/esri-compat/widget-host.d.ts +84 -0
  180. package/esri-compat/widget-host.d.ts.map +1 -0
  181. package/esri-compat/widget-host.js +159 -0
  182. package/filter-registry/index.d.ts +145 -0
  183. package/filter-registry/index.d.ts.map +1 -0
  184. package/filter-registry/index.js +531 -0
  185. package/generated-app/errors.d.ts +18 -2
  186. package/generated-app/errors.d.ts.map +1 -1
  187. package/generated-app/errors.js +44 -11
  188. package/map/automatic-mount-integration.d.ts +134 -0
  189. package/map/automatic-mount-integration.d.ts.map +1 -0
  190. package/map/automatic-mount-integration.js +305 -0
  191. package/map/automatic-source-strategy.d.ts +125 -0
  192. package/map/automatic-source-strategy.d.ts.map +1 -0
  193. package/map/automatic-source-strategy.js +494 -0
  194. package/map/data-to-map-bridge.d.ts +293 -0
  195. package/map/data-to-map-bridge.d.ts.map +1 -0
  196. package/map/data-to-map-bridge.js +817 -0
  197. package/map/geojson-projection.d.ts +33 -0
  198. package/map/geojson-projection.d.ts.map +1 -0
  199. package/map/geojson-projection.js +118 -0
  200. package/map/index.d.ts +14 -0
  201. package/map/index.d.ts.map +1 -1
  202. package/map/index.js +8 -0
  203. package/map/raster-source-spec.d.ts +30 -0
  204. package/map/raster-source-spec.d.ts.map +1 -0
  205. package/map/raster-source-spec.js +190 -0
  206. package/map/raster-source-strategy.d.ts +65 -0
  207. package/map/raster-source-strategy.d.ts.map +1 -0
  208. package/map/raster-source-strategy.js +232 -0
  209. package/map/source-to-maplibre.d.ts +91 -0
  210. package/map/source-to-maplibre.d.ts.map +1 -0
  211. package/map/source-to-maplibre.js +454 -0
  212. package/map/temporal-playback.d.ts +139 -0
  213. package/map/temporal-playback.d.ts.map +1 -0
  214. package/map/temporal-playback.js +247 -0
  215. package/package.json +19 -1
  216. package/query-planner/canonical.d.ts +7 -0
  217. package/query-planner/canonical.d.ts.map +1 -0
  218. package/query-planner/canonical.js +145 -0
  219. package/query-planner/cql2-json.d.ts +17 -0
  220. package/query-planner/cql2-json.d.ts.map +1 -0
  221. package/query-planner/cql2-json.js +646 -0
  222. package/query-planner/diagnostics.d.ts +35 -0
  223. package/query-planner/diagnostics.d.ts.map +1 -0
  224. package/query-planner/diagnostics.js +373 -0
  225. package/query-planner/duckdb.d.ts +79 -0
  226. package/query-planner/duckdb.d.ts.map +1 -0
  227. package/query-planner/duckdb.js +758 -0
  228. package/query-planner/execution-context.d.ts +5 -0
  229. package/query-planner/execution-context.d.ts.map +1 -0
  230. package/query-planner/execution-context.js +50 -0
  231. package/query-planner/executor.d.ts +5 -0
  232. package/query-planner/executor.d.ts.map +1 -0
  233. package/query-planner/executor.js +223 -0
  234. package/query-planner/geoservices.d.ts +91 -0
  235. package/query-planner/geoservices.d.ts.map +1 -0
  236. package/query-planner/geoservices.js +667 -0
  237. package/query-planner/grpc.d.ts +100 -0
  238. package/query-planner/grpc.d.ts.map +1 -0
  239. package/query-planner/grpc.js +736 -0
  240. package/query-planner/index.d.ts +44 -0
  241. package/query-planner/index.d.ts.map +1 -0
  242. package/query-planner/index.js +30 -0
  243. package/query-planner/ir.d.ts +20 -0
  244. package/query-planner/ir.d.ts.map +1 -0
  245. package/query-planner/ir.js +417 -0
  246. package/query-planner/local-aggregate.d.ts +5 -0
  247. package/query-planner/local-aggregate.d.ts.map +1 -0
  248. package/query-planner/local-aggregate.js +126 -0
  249. package/query-planner/odata.d.ts +48 -0
  250. package/query-planner/odata.d.ts.map +1 -0
  251. package/query-planner/odata.js +662 -0
  252. package/query-planner/ogc-compiler.d.ts +55 -0
  253. package/query-planner/ogc-compiler.d.ts.map +1 -0
  254. package/query-planner/ogc-compiler.js +480 -0
  255. package/query-planner/ogc-features.d.ts +53 -0
  256. package/query-planner/ogc-features.d.ts.map +1 -0
  257. package/query-planner/ogc-features.js +617 -0
  258. package/query-planner/planner.d.ts +17 -0
  259. package/query-planner/planner.d.ts.map +1 -0
  260. package/query-planner/planner.js +818 -0
  261. package/query-planner/resource.d.ts +94 -0
  262. package/query-planner/resource.d.ts.map +1 -0
  263. package/query-planner/resource.js +526 -0
  264. package/query-planner/semantic-canonical.d.ts +15 -0
  265. package/query-planner/semantic-canonical.d.ts.map +1 -0
  266. package/query-planner/semantic-canonical.js +62 -0
  267. package/query-planner/semantic-compat.d.ts +10 -0
  268. package/query-planner/semantic-compat.d.ts.map +1 -0
  269. package/query-planner/semantic-compat.js +35 -0
  270. package/query-planner/semantic-compiler.d.ts +64 -0
  271. package/query-planner/semantic-compiler.d.ts.map +1 -0
  272. package/query-planner/semantic-compiler.js +81 -0
  273. package/query-planner/semantic-literals.d.ts +30 -0
  274. package/query-planner/semantic-literals.d.ts.map +1 -0
  275. package/query-planner/semantic-literals.js +133 -0
  276. package/query-planner/semantic-types.d.ts +265 -0
  277. package/query-planner/semantic-types.d.ts.map +1 -0
  278. package/query-planner/semantic-types.js +1 -0
  279. package/query-planner/semantic.d.ts +54 -0
  280. package/query-planner/semantic.d.ts.map +1 -0
  281. package/query-planner/semantic.js +1421 -0
  282. package/query-planner/types.d.ts +560 -0
  283. package/query-planner/types.d.ts.map +1 -0
  284. package/query-planner/types.js +49 -0
  285. package/query-planner/wfs-semantic.d.ts +58 -0
  286. package/query-planner/wfs-semantic.d.ts.map +1 -0
  287. package/query-planner/wfs-semantic.js +547 -0
  288. package/query-planner/wfs.d.ts +6 -0
  289. package/query-planner/wfs.d.ts.map +1 -0
  290. package/query-planner/wfs.js +71 -0
  291. package/react/external-map.d.ts +67 -0
  292. package/react/external-map.d.ts.map +1 -0
  293. package/react/external-map.js +63 -0
  294. package/react/honua-map.d.ts.map +1 -1
  295. package/react/honua-map.js +3 -2
  296. package/react/honua-source-layer.d.ts +110 -0
  297. package/react/honua-source-layer.d.ts.map +1 -0
  298. package/react/honua-source-layer.js +101 -0
  299. package/react/hooks.d.ts +28 -0
  300. package/react/hooks.d.ts.map +1 -1
  301. package/react/hooks.js +26 -4
  302. package/react/index.d.ts +8 -0
  303. package/react/index.d.ts.map +1 -1
  304. package/react/index.js +5 -0
  305. package/react/query-cache.d.ts +26 -4
  306. package/react/query-cache.d.ts.map +1 -1
  307. package/react/query-cache.js +51 -8
  308. package/react/selection.d.ts +177 -0
  309. package/react/selection.d.ts.map +1 -0
  310. package/react/selection.js +0 -0
  311. package/react/use-mounted-source.d.ts +69 -0
  312. package/react/use-mounted-source.d.ts.map +1 -0
  313. package/react/use-mounted-source.js +346 -0
  314. package/runtime/edit-snapping.d.ts +107 -0
  315. package/runtime/edit-snapping.d.ts.map +1 -0
  316. package/runtime/edit-snapping.js +190 -0
  317. package/runtime/errors.d.ts +3 -2
  318. package/runtime/errors.d.ts.map +1 -1
  319. package/runtime/errors.js +19 -2
  320. package/runtime/index.d.ts +8 -2
  321. package/runtime/index.d.ts.map +1 -1
  322. package/runtime/index.js +4 -4
  323. package/runtime/load-package.d.ts.map +1 -1
  324. package/runtime/load-package.js +8 -0
  325. package/runtime/map-package-validation.d.ts +0 -13
  326. package/runtime/map-package-validation.d.ts.map +1 -1
  327. package/runtime/map-package-validation.js +0 -12
  328. package/runtime/map-package.d.ts +1 -1
  329. package/runtime/map-package.d.ts.map +1 -1
  330. package/runtime/maplibre-renderer.d.ts +41 -0
  331. package/runtime/maplibre-renderer.d.ts.map +1 -0
  332. package/runtime/maplibre-renderer.js +322 -0
  333. package/runtime/pmtiles-protocol.d.ts +77 -0
  334. package/runtime/pmtiles-protocol.d.ts.map +1 -0
  335. package/runtime/pmtiles-protocol.js +120 -0
  336. package/runtime/query-tiles.d.ts +2 -1
  337. package/runtime/query-tiles.d.ts.map +1 -1
  338. package/runtime/query-tiles.js +6 -2
  339. package/runtime/source-bridge.d.ts +4 -4
  340. package/runtime/source-bridge.d.ts.map +1 -1
  341. package/runtime/source-bridge.js +36 -56
  342. package/runtime/style-interactions.d.ts +3 -2
  343. package/runtime/style-interactions.d.ts.map +1 -1
  344. package/runtime/style-interactions.js +11 -3
  345. package/runtime/terra-draw-sketch.d.ts +275 -0
  346. package/runtime/terra-draw-sketch.d.ts.map +1 -0
  347. package/runtime/terra-draw-sketch.js +404 -0
  348. package/source-capability-registry.d.ts +1 -0
  349. package/source-capability-registry.js +1 -0
  350. package/source-capability-types.d.ts +186 -0
  351. package/source-capability-types.js +7 -0
  352. package/style/index.d.ts +2 -0
  353. package/style/index.d.ts.map +1 -1
  354. package/style/index.js +2 -0
  355. package/style/renderers.d.ts +326 -0
  356. package/style/renderers.d.ts.map +1 -0
  357. package/style/renderers.js +517 -0
  358. package/webmap/convert-renderer.d.ts +24 -3
  359. package/webmap/convert-renderer.d.ts.map +1 -1
  360. package/webmap/convert-renderer.js +93 -112
  361. package/webmap/index.d.ts +1 -1
  362. package/webmap/index.d.ts.map +1 -1
  363. package/webmap/index.js +1 -1
@@ -17,6 +17,8 @@
17
17
  import type { HonuaClient } from "../core/client.js";
18
18
  import type { SpatialFilter } from "../core/spatial-filter.js";
19
19
  import type { HonuaExtent, HonuaFieldInfo, HonuaServerCompatibilityFeature, HonuaTypedFeature } from "../core/types.js";
20
+ import type { CapabilityId, CapabilityProfile } from "../source-capability-types.js";
21
+ import type { SourceSchemaV2Envelope } from "./schema-envelope.js";
20
22
  /**
21
23
  * Canonical protocol identifiers. Spatial / tabular protocols served
22
24
  * behind a `Source` come first, with the shared canonical gRPC
@@ -34,7 +36,7 @@ import type { HonuaExtent, HonuaFieldInfo, HonuaServerCompatibilityFeature, Honu
34
36
  * escape hatch — every cross-protocol request shape goes through one
35
37
  * vocabulary even when the underlying protocol is utility-only.
36
38
  */
37
- export type Protocol = "grpc" | "geoservices-feature-service" | "geoservices-map-service" | "geoservices-image-service" | "geoservices-geometry-service" | "geoservices-gp-service" | "ogc-features" | "ogc-tiles" | "ogc-maps" | "ogc-records" | "stac" | "wfs" | "wms" | "wmts" | "odata" | "maplibre-vector" | "maplibre-raster" | "maplibre-geojson";
39
+ export type Protocol = "grpc" | "geoservices-feature-service" | "geoservices-map-service" | "geoservices-image-service" | "geoservices-geometry-service" | "geoservices-gp-service" | "ogc-features" | "ogc-tiles" | "ogc-maps" | "ogc-records" | "stac" | "wfs" | "wms" | "wmts" | "odata" | "pmtiles" | "geoparquet" | "maplibre-vector" | "maplibre-raster" | "maplibre-geojson";
38
40
  /** All protocol identifiers, in declaration order. */
39
41
  export declare const PROTOCOLS: readonly Protocol[];
40
42
  /**
@@ -47,7 +49,7 @@ export declare const PROTOCOLS: readonly Protocol[];
47
49
  *
48
50
  * Keep this list aligned with `docs/protocol-capability-matrix.md`.
49
51
  */
50
- export type Capability = "query" | "queryAggregate" | "spatialAggregate" | "queryExtent" | "queryObjectIds" | "queryRelated" | "applyEdits" | "attachments" | "render" | "tiles" | "sql" | "stream" | "pbf" | "connect" | "image" | "geometry" | "geoprocess" | "processes";
52
+ export type Capability = "query" | "queryAggregate" | "spatialAggregate" | "queryExtent" | "queryObjectIds" | "queryRelated" | "applyEdits" | "attachments" | "render" | "tiles" | "sql" | "stream" | "pbf" | "image" | "geometry" | "geoprocess" | "processes";
51
53
  /** All capability identifiers, in declaration order. */
52
54
  export declare const CAPABILITIES: readonly Capability[];
53
55
  /**
@@ -110,6 +112,26 @@ export declare const PROTOCOL_DEFAULT_CAPABILITIES: Readonly<Record<Protocol, Ca
110
112
  export type SourceId = string;
111
113
  export type DatasetId = string;
112
114
  export type FeatureId = number | string;
115
+ /**
116
+ * Validated raster request binding selected during WMS / WMTS discovery.
117
+ *
118
+ * The binding keeps the service identity in {@link SourceLocator.url} while
119
+ * carrying the exact same-origin operation URL or ResourceURL template that
120
+ * the existing MapLibre raster projection must execute. Callers constructing
121
+ * descriptors manually may omit it and retain the canonical Honua endpoint
122
+ * conventions.
123
+ */
124
+ export type RasterRequestBinding = {
125
+ readonly kind: "wms-kvp";
126
+ readonly url: string;
127
+ readonly format: string;
128
+ } | {
129
+ readonly kind: "wmts-kvp" | "wmts-template";
130
+ readonly url: string;
131
+ readonly format: string;
132
+ /** Exact matrix identifier pattern, with `{z}` as the MapLibre zoom token. */
133
+ readonly tileMatrixTemplate: string;
134
+ };
113
135
  /**
114
136
  * Protocol-specific endpoint information. Field-compatible with the server
115
137
  * `SourceBinding.locator` shape documented in
@@ -125,10 +147,50 @@ export interface SourceLocator {
125
147
  layerId?: number;
126
148
  /** OGC API Features / Tiles / Maps collection identifier, or Records catalog id. */
127
149
  collectionId?: string | number;
150
+ /**
151
+ * OGC API / STAC endpoint-layout discovery mode.
152
+ *
153
+ * - `honua-facade` (default) addresses Honua Server's fixed facade paths
154
+ * (`/ogc/features/...`, `/stac/...`) with zero discovery round-trips.
155
+ * - `ogc-api` (OGC API Features/Records) / `stac-api` (STAC) treat
156
+ * `url` as the service root and discover collection / item / search
157
+ * paths from the landing page links (spec-driven, backend-agnostic).
158
+ * - `auto` probes the facade first and falls back to discovery.
159
+ * - `stac-static` (STAC only) reads a static `catalog.json` tree by
160
+ * following `child` / `item` links.
161
+ *
162
+ * Existing Honua-Server callers omit this field and see no behaviour
163
+ * change.
164
+ */
165
+ layout?: "honua-facade" | "ogc-api" | "auto" | "stac-api" | "stac-static";
166
+ /**
167
+ * Execution guardrails for a `stac-static` source. `connect()` records the
168
+ * exact normalized discovery policy here so later `Source.query()` calls
169
+ * cannot traverse a broader tree than the one that was admitted. Manually
170
+ * constructed static-STAC sources use the same conservative defaults.
171
+ */
172
+ stacStatic?: {
173
+ readonly maxDocuments: number;
174
+ readonly maxDepth: number;
175
+ readonly maxLinksPerDocument: number;
176
+ readonly maxAssets: number;
177
+ readonly maxAssetProbes: number;
178
+ readonly maxDocumentBytes: number;
179
+ };
180
+ /**
181
+ * Raw endpoint path prefix for the OGC API Tiles / Maps / Records / Processes
182
+ * families when the service is a third-party root discovered by `connect()`
183
+ * rather than the Honua facade. Defaults (when omitted) to the family's
184
+ * facade prefix (`/ogc/tiles`, `/ogc/maps`, `/ogc/records`, `/ogc/processes`).
185
+ * OGC API Features and STAC instead use {@link SourceLocator.layout}.
186
+ */
187
+ basePath?: string;
128
188
  /** OGC API Tiles tile-matrix-set identifier (e.g. `WebMercatorQuad`). */
129
189
  tileMatrixSetId?: string;
130
190
  /** OGC API Maps / Tiles style identifier for styled-output endpoints. */
131
191
  styleId?: string;
192
+ /** Exact, capability-reviewed raster operation selected by `connect()`. */
193
+ raster?: RasterRequestBinding;
132
194
  /** WFS / WMS type-name identifier. */
133
195
  typeName?: string;
134
196
  /**
@@ -156,6 +218,39 @@ export interface SourceLocator {
156
218
  entitySet?: string;
157
219
  /** GP Service task identifier (for `geoservices-gp-service`). */
158
220
  taskName?: string;
221
+ /**
222
+ * GeoParquet source addressing. `url` carries the primary file or a
223
+ * hive-partitioned glob (e.g. an Overture theme prefix ending in
224
+ * `/**\/*.parquet`); `urls` lists multiple files read as one relation via
225
+ * `read_parquet([...])`. `geometryColumn` pins the geometry column when the
226
+ * file lacks GeoParquet `geo` metadata (Parquet-native GEOMETRY/GEOGRAPHY).
227
+ */
228
+ geoparquet?: {
229
+ /** Additional files unioned with `url` via `read_parquet([...])`. */
230
+ urls?: readonly string[];
231
+ /** Explicit geometry column name (overrides metadata detection). */
232
+ geometryColumn?: string;
233
+ /**
234
+ * Physical geometry encoding (`wkb` GeoParquet BLOB, `native` Parquet
235
+ * GEOMETRY/GEOGRAPHY, `geojson` string, or a GeoParquet 1.1 native
236
+ * single-geometry `geoarrow-*` encoding — see `GeometryEncoding` in
237
+ * `core/geoparquet-sql.ts`, mirrored here by value to keep this contract
238
+ * module dependency-free of any protocol-specific compiler). Read by the
239
+ * deterministic query planner (`@honua/sdk-js/query-planner`) to compile
240
+ * DuckDB SQL without a profiling round-trip. Defaults to `wkb`.
241
+ */
242
+ geometryEncoding?: "wkb" | "native" | "geojson" | "geoarrow-point" | "geoarrow-linestring" | "geoarrow-polygon" | "geoarrow-multipoint" | "geoarrow-multilinestring" | "geoarrow-multipolygon";
243
+ /**
244
+ * Optional GeoParquet 1.1 bbox-covering struct column (e.g. `bbox`) used by
245
+ * the query planner to push an envelope filter down to row-group pruning.
246
+ */
247
+ bboxColumn?: string;
248
+ /**
249
+ * Coordinate dimensions physically stored by a `geoarrow-*`
250
+ * `geometryEncoding`. Meaningful only for those encodings.
251
+ */
252
+ nativeDimensions?: "xy" | "xyz";
253
+ };
159
254
  }
160
255
  /** Optional schema description; mirrors `HonuaLayerMetadata.fields`. */
161
256
  export interface SourceSchema {
@@ -195,6 +290,24 @@ export interface SourceDescriptor {
195
290
  locator: SourceLocator;
196
291
  capabilities: Capabilities;
197
292
  schema?: SourceSchema;
293
+ /**
294
+ * Identity envelope for an experimental vendor-neutral schema projected
295
+ * alongside legacy `schema`. Use `@honua/sdk-js/source-schema` to validate
296
+ * and inspect the complete schema value.
297
+ */
298
+ schemaV2?: SourceSchemaV2Envelope;
299
+ /**
300
+ * Evaluated, immutable capability truth for this source. When present it is
301
+ * authoritative over the legacy `capabilities` set; the set is retained as
302
+ * a derived compatibility view for built-in capability identifiers.
303
+ *
304
+ * Profiles must be produced or parsed by
305
+ * `@honua/sdk-js/source-capabilities` and match both this descriptor's
306
+ * `schemaV2` fingerprint and its canonical protocol endpoint identity.
307
+ * Protocol discovery attaches them in the focused capability-aware
308
+ * connection path.
309
+ */
310
+ capabilityProfile?: CapabilityProfile;
198
311
  analytics?: SourceAnalyticsCapabilities;
199
312
  attribution?: string;
200
313
  }
@@ -269,7 +382,7 @@ export interface AggregationMetric {
269
382
  * or the corresponding WFS / OData request.
270
383
  *
271
384
  * `spatialFilter` is a `SpatialFilter` produced by the spatial-filter builders
272
- * (`envelope`, `point`, `polygon`, `buffer`, …), not an inline literal.
385
+ * (`envelope`, `point`, `polygon`, `bufferEnvelope`, …), not an inline literal.
273
386
  *
274
387
  * @example
275
388
  * ```ts
@@ -286,7 +399,15 @@ export interface AggregationMetric {
286
399
  * ```
287
400
  */
288
401
  export interface Query<_T = Record<string, unknown>> {
289
- /** Logical filter expression. SQL-92 WHERE for GeoServices, CQL2 for OGC. */
402
+ /**
403
+ * Source-native filter text retained for v1 compatibility. Its language is
404
+ * selected by the source adapter (for example GeoServices SQL-92, CQL2 text,
405
+ * OData, or DuckDB SQL) and is never protocol neutral.
406
+ *
407
+ * @deprecated Build a typed semantic filter through
408
+ * `@honua/sdk-js/query-planner`; use `legacyWhereToNativeFilter` only while
409
+ * migrating existing protocol-bound text.
410
+ */
290
411
  where?: string;
291
412
  /** Spatial constraint. Reuses `core/spatial-filter.ts`. */
292
413
  spatialFilter?: SpatialFilter;
@@ -413,6 +534,12 @@ export interface RelatedQuery {
413
534
  relationshipId: number;
414
535
  /** Source feature ids whose related records to return. */
415
536
  sourceIds: ReadonlyArray<FeatureId>;
537
+ /**
538
+ * Source-native related-record filter text retained for compatibility.
539
+ *
540
+ * @deprecated Use the typed protocol adapter escape hatch until semantic
541
+ * related-record filtering is available.
542
+ */
416
543
  where?: string;
417
544
  outFields?: readonly string[];
418
545
  returnGeometry?: boolean;
@@ -441,6 +568,12 @@ export interface AttachmentInfo {
441
568
  export interface AttachmentQuery {
442
569
  /** Optional caller-supplied parent ids. Empty = all matching `where`. */
443
570
  parentIds?: ReadonlyArray<FeatureId>;
571
+ /**
572
+ * Source-native attachment filter text retained for compatibility.
573
+ *
574
+ * @deprecated Use the typed protocol adapter escape hatch until semantic
575
+ * attachment filtering is available.
576
+ */
444
577
  where?: string;
445
578
  signal?: AbortSignal;
446
579
  }
@@ -515,7 +648,7 @@ export interface MapBinding {
515
648
  * narrows the typed escape hatch to one of these without forcing callers
516
649
  * to cast through `unknown`.
517
650
  */
518
- export type AdapterKind = "geoservices-feature-service" | "geoservices-map-service" | "geoservices-map-layer" | "geoservices-image-service" | "geoservices-geometry-service" | "geoservices-gp-service" | "ogc-features" | "ogc-tiles" | "ogc-maps" | "ogc-records" | "ogc-processes" | "stac" | "wfs" | "wms" | "wms-layer" | "wmts" | "wmts-layer" | "wmts-tileset" | "odata";
651
+ export type AdapterKind = "geoservices-feature-service" | "geoservices-map-service" | "geoservices-map-layer" | "geoservices-image-service" | "geoservices-geometry-service" | "geoservices-gp-service" | "ogc-features" | "ogc-tiles" | "ogc-maps" | "ogc-records" | "ogc-processes" | "stac" | "wfs" | "wms" | "wms-layer" | "wmts" | "wmts-layer" | "wmts-tileset" | "odata" | "pmtiles" | "geoparquet";
519
652
  /**
520
653
  * Compile-time map from `AdapterKind` → underlying class instance. Adapter
521
654
  * tickets extend this map by augmenting the `AdapterTypeMap` interface in
@@ -592,6 +725,37 @@ export interface Source<T = Record<string, unknown>> {
592
725
  */
593
726
  adapter<K extends AdapterKind>(kind: K): AdapterFor<K> | undefined;
594
727
  }
728
+ declare const supportedSourceCapability: unique symbol;
729
+ /**
730
+ * Nominal proof carried only after a successful literal `source.supports()`
731
+ * check. The invariant marker prevents a check of a dynamic capability union
732
+ * from being mistaken for proof of any one member while allowing independent
733
+ * literal checks to accumulate safely.
734
+ */
735
+ interface SupportedSourceCapability<C extends CapabilityId> {
736
+ readonly [supportedSourceCapability]: {
737
+ readonly accepts: (capability: C) => void;
738
+ readonly capability: C;
739
+ };
740
+ }
741
+ /**
742
+ * Runtime `Source` returned by `Dataset.source()` and `connect().source()`.
743
+ *
744
+ * A v2 profile, when attached, is the authoritative truth. Legacy sources
745
+ * without a profile continue to answer built-in checks from their existing
746
+ * `ReadonlySet` and return `false` for extension identifiers.
747
+ */
748
+ export interface CapabilityAwareSource<T = Record<string, unknown>> extends Source<T> {
749
+ readonly capabilityProfile?: CapabilityProfile;
750
+ /**
751
+ * Test effective support and narrow this source for a literal capability.
752
+ * Only the exact `"supported"` effective state passes; unknown, disabled,
753
+ * unavailable, and authorization states all fail closed.
754
+ */
755
+ supports<const C extends CapabilityId>(capability: C): this is this & SupportedSourceCapability<C>;
756
+ }
757
+ /** A source proven to support `C` by a successful `source.supports(C)` check. */
758
+ export type SourceWithCapability<T, C extends CapabilityId> = CapabilityAwareSource<T> & SupportedSourceCapability<C>;
595
759
  /**
596
760
  * Logical grouping of one or more sources sharing identity and (optionally)
597
761
  * a field schema. `Dataset` is the canonical entry point: `createDataset`
@@ -611,7 +775,7 @@ export interface Dataset {
611
775
  readonly client: HonuaClient;
612
776
  readonly sourceDescriptors: ReadonlyArray<SourceDescriptor>;
613
777
  /** Get a `Source` handle by id. Returns `undefined` if not registered. */
614
- source<T = Record<string, unknown>>(id: SourceId): Source<T> | undefined;
778
+ source<T = Record<string, unknown>>(id: SourceId): CapabilityAwareSource<T> | undefined;
615
779
  /** Iterate registered source ids, in registration order. */
616
780
  sourceIds(): readonly SourceId[];
617
781
  /**
@@ -662,4 +826,5 @@ export interface CreateDatasetOptions {
662
826
  */
663
827
  resolveSource?: SourceResolver;
664
828
  }
829
+ export {};
665
830
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/contract/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/contract/types.ts"],"names":[],"mappings":"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"}
package/contract/types.js CHANGED
@@ -31,6 +31,8 @@ export const PROTOCOLS = [
31
31
  "wms",
32
32
  "wmts",
33
33
  "odata",
34
+ "pmtiles",
35
+ "geoparquet",
34
36
  "maplibre-vector",
35
37
  "maplibre-raster",
36
38
  "maplibre-geojson",
@@ -50,7 +52,6 @@ export const CAPABILITIES = [
50
52
  "sql",
51
53
  "stream",
52
54
  "pbf",
53
- "connect",
54
55
  "image",
55
56
  "geometry",
56
57
  "geoprocess",
@@ -136,7 +137,6 @@ export const PROTOCOL_DEFAULT_CAPABILITIES = {
136
137
  "sql",
137
138
  "stream",
138
139
  "pbf",
139
- "connect",
140
140
  ]),
141
141
  "geoservices-map-service": capabilities([
142
142
  "query",
@@ -149,17 +149,9 @@ export const PROTOCOL_DEFAULT_CAPABILITIES = {
149
149
  "sql",
150
150
  "stream",
151
151
  ]),
152
- "geoservices-image-service": capabilities([
153
- "query",
154
- "queryExtent",
155
- "queryObjectIds",
156
- "image",
157
- "render",
158
- "tiles",
159
- "connect",
160
- ]),
161
- "geoservices-geometry-service": capabilities(["geometry", "connect"]),
162
- "geoservices-gp-service": capabilities(["geoprocess", "connect"]),
152
+ "geoservices-image-service": capabilities(["query", "queryExtent", "queryObjectIds", "image", "render", "tiles"]),
153
+ "geoservices-geometry-service": capabilities(["geometry"]),
154
+ "geoservices-gp-service": capabilities(["geoprocess"]),
163
155
  "ogc-features": capabilities(["query", "queryObjectIds", "applyEdits", "stream"]),
164
156
  "ogc-tiles": capabilities(["render", "tiles"]),
165
157
  "ogc-maps": capabilities(["render"]),
@@ -169,7 +161,15 @@ export const PROTOCOL_DEFAULT_CAPABILITIES = {
169
161
  wms: capabilities(["render", "tiles", "query"]),
170
162
  wmts: capabilities(["render", "tiles"]),
171
163
  odata: capabilities(["query", "queryObjectIds", "stream", "applyEdits"]),
164
+ // PMTiles archives are a single immutable tile store (raster or vector).
165
+ // They are tiles-only: the canonical query family throws
166
+ // `HonuaCapabilityNotSupportedError`; archive metadata is inspected via
167
+ // `Source.protocol("pmtiles").describe()`.
168
+ pmtiles: capabilities(["tiles"]),
169
+ geoparquet: capabilities(["query", "queryAggregate", "stream"]),
172
170
  "maplibre-vector": capabilities(["render", "tiles"]),
173
171
  "maplibre-raster": capabilities(["render", "tiles"]),
174
- "maplibre-geojson": capabilities(["render"]),
172
+ // Reserved/recognized protocol token only: inline MapPackage GeoJSON is supported,
173
+ // but descriptor-to-runtime support for maplibre-geojson is not implemented.
174
+ "maplibre-geojson": capabilities([]),
175
175
  };
@@ -0,0 +1,51 @@
1
+ /**
2
+ * OAuth2 client-credentials provider (RFC 6749 §4.4).
3
+ *
4
+ * For confidential **Node/server** clients only — the `clientSecret` must never
5
+ * ship to a browser. There is no interactive step; tokens are fetched from the
6
+ * token endpoint on demand and refreshed by re-requesting the grant when they
7
+ * expire (client-credentials grants do not issue refresh tokens). Refresh is
8
+ * single-flight so N concurrent requests share one token-endpoint round-trip.
9
+ *
10
+ * @packageDocumentation
11
+ */
12
+ import type { HonuaAuthCredentials, HonuaAuthProviderContext } from "../types.js";
13
+ import type { ClientCredentialsConfig, HonuaAuthEventListener } from "./types.js";
14
+ /** OAuth2 client-credentials provider. Construct via {@link clientCredentials}. */
15
+ export declare class ClientCredentialsProvider {
16
+ private readonly config;
17
+ private readonly store;
18
+ private readonly serviceKey;
19
+ private readonly clockSkewMs;
20
+ private readonly fetchFn;
21
+ private readonly listeners;
22
+ private refreshInFlight;
23
+ constructor(config: ClientCredentialsConfig);
24
+ /** {@link HonuaAuthProvider.getCredentials}: fetch/refresh a bearer token. */
25
+ getCredentials(context?: HonuaAuthProviderContext): Promise<HonuaAuthCredentials | undefined>;
26
+ /** Drop the cached token; the next call re-requests the grant. */
27
+ signOut(): Promise<void>;
28
+ on(listener: HonuaAuthEventListener): {
29
+ remove(): void;
30
+ };
31
+ private fetchSingleFlight;
32
+ private fetchToken;
33
+ private emit;
34
+ }
35
+ /**
36
+ * Create an OAuth2 client-credentials {@link HonuaAuthProvider} for Node/server
37
+ * use. Do not use in a browser — the client secret would be exposed.
38
+ *
39
+ * @example
40
+ * ```ts
41
+ * import { clientCredentials } from "@honua/sdk-js/auth";
42
+ * const auth = clientCredentials({
43
+ * tokenEndpoint: "https://idp.example/token",
44
+ * clientId: process.env.CLIENT_ID!,
45
+ * clientSecret: process.env.CLIENT_SECRET!,
46
+ * scopes: ["honua.read"],
47
+ * });
48
+ * ```
49
+ */
50
+ export declare function clientCredentials(config: ClientCredentialsConfig): ClientCredentialsProvider;
51
+ //# sourceMappingURL=client-credentials-provider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client-credentials-provider.d.ts","sourceRoot":"","sources":["../../../../src/core/auth/client-credentials-provider.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,oBAAoB,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC;AAUlF,OAAO,KAAK,EACV,uBAAuB,EAGvB,sBAAsB,EAEvB,MAAM,YAAY,CAAC;AAEpB,mFAAmF;AACnF,qBAAa,yBAAyB;IACpC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA0B;IACjD,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAkB;IACxC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;IACrC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAe;IACvC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAqC;IAC/D,OAAO,CAAC,eAAe,CAAwC;gBAE5C,MAAM,EAAE,uBAAuB;IAWlD,8EAA8E;IACjE,cAAc,CACzB,OAAO,GAAE,wBAAoE,GAC5E,OAAO,CAAC,oBAAoB,GAAG,SAAS,CAAC;IAS5C,kEAAkE;IACrD,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAM9B,EAAE,CAAC,QAAQ,EAAE,sBAAsB,GAAG;QAAE,MAAM,IAAI,IAAI,CAAA;KAAE;IAS/D,OAAO,CAAC,iBAAiB;YAaX,UAAU;IAmBxB,OAAO,CAAC,IAAI;CASb;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,uBAAuB,GAAG,yBAAyB,CAE5F"}
@@ -0,0 +1,115 @@
1
+ /**
2
+ * OAuth2 client-credentials provider (RFC 6749 §4.4).
3
+ *
4
+ * For confidential **Node/server** clients only — the `clientSecret` must never
5
+ * ship to a browser. There is no interactive step; tokens are fetched from the
6
+ * token endpoint on demand and refreshed by re-requesting the grant when they
7
+ * expire (client-credentials grants do not issue refresh tokens). Refresh is
8
+ * single-flight so N concurrent requests share one token-endpoint round-trip.
9
+ *
10
+ * @packageDocumentation
11
+ */
12
+ // HonuaAuthCredentials is the declared return type of getCredentials.
13
+ import { InMemoryCredentialStore } from "./credential-store.js";
14
+ import { DEFAULT_CLOCK_SKEW_MS, isCredentialExpiring, requestToken, resolveServiceKey, toHonuaCredentials, } from "./token-endpoint.js";
15
+ /** OAuth2 client-credentials provider. Construct via {@link clientCredentials}. */
16
+ export class ClientCredentialsProvider {
17
+ config;
18
+ store;
19
+ serviceKey;
20
+ clockSkewMs;
21
+ fetchFn;
22
+ listeners = new Set();
23
+ refreshInFlight;
24
+ constructor(config) {
25
+ this.config = config;
26
+ this.store = config.store ?? new InMemoryCredentialStore();
27
+ this.serviceKey = resolveServiceKey(config.serviceKey, config.clientId, config.tokenEndpoint);
28
+ this.clockSkewMs = config.clockSkewMs ?? DEFAULT_CLOCK_SKEW_MS;
29
+ this.fetchFn = (config.fetchFn ?? fetch).bind(globalThis);
30
+ if (config.onEvent) {
31
+ this.listeners.add(config.onEvent);
32
+ }
33
+ }
34
+ /** {@link HonuaAuthProvider.getCredentials}: fetch/refresh a bearer token. */
35
+ async getCredentials(context = { reason: "manual", forceRefresh: false }) {
36
+ const current = await this.store.get(this.serviceKey);
37
+ if (!context.forceRefresh && current && !isCredentialExpiring(current, this.clockSkewMs)) {
38
+ return toHonuaCredentials(current);
39
+ }
40
+ const fetched = await this.fetchSingleFlight();
41
+ return toHonuaCredentials(fetched);
42
+ }
43
+ /** Drop the cached token; the next call re-requests the grant. */
44
+ async signOut() {
45
+ await this.store.delete(this.serviceKey);
46
+ this.refreshInFlight = undefined;
47
+ this.emit({ type: "signed-out" });
48
+ }
49
+ on(listener) {
50
+ this.listeners.add(listener);
51
+ return {
52
+ remove: () => {
53
+ this.listeners.delete(listener);
54
+ },
55
+ };
56
+ }
57
+ fetchSingleFlight() {
58
+ if (this.refreshInFlight) {
59
+ return this.refreshInFlight;
60
+ }
61
+ const inFlight = this.fetchToken().finally(() => {
62
+ if (this.refreshInFlight === inFlight) {
63
+ this.refreshInFlight = undefined;
64
+ }
65
+ });
66
+ this.refreshInFlight = inFlight;
67
+ return inFlight;
68
+ }
69
+ async fetchToken() {
70
+ const previous = await this.store.get(this.serviceKey);
71
+ const credential = await requestToken({
72
+ fetchFn: this.fetchFn,
73
+ tokenEndpoint: this.config.tokenEndpoint,
74
+ params: {
75
+ grant_type: "client_credentials",
76
+ client_id: this.config.clientId,
77
+ client_secret: this.config.clientSecret,
78
+ ...(this.config.scopes && this.config.scopes.length > 0 ? { scope: this.config.scopes.join(" ") } : {}),
79
+ ...this.config.extraTokenParams,
80
+ },
81
+ previous,
82
+ });
83
+ await this.store.set(this.serviceKey, credential);
84
+ this.emit({ type: previous ? "token-refreshed" : "signed-in", credential });
85
+ return credential;
86
+ }
87
+ emit(event) {
88
+ for (const listener of this.listeners) {
89
+ try {
90
+ listener(event);
91
+ }
92
+ catch {
93
+ // Listener errors must not break the auth flow.
94
+ }
95
+ }
96
+ }
97
+ }
98
+ /**
99
+ * Create an OAuth2 client-credentials {@link HonuaAuthProvider} for Node/server
100
+ * use. Do not use in a browser — the client secret would be exposed.
101
+ *
102
+ * @example
103
+ * ```ts
104
+ * import { clientCredentials } from "@honua/sdk-js/auth";
105
+ * const auth = clientCredentials({
106
+ * tokenEndpoint: "https://idp.example/token",
107
+ * clientId: process.env.CLIENT_ID!,
108
+ * clientSecret: process.env.CLIENT_SECRET!,
109
+ * scopes: ["honua.read"],
110
+ * });
111
+ * ```
112
+ */
113
+ export function clientCredentials(config) {
114
+ return new ClientCredentialsProvider(config);
115
+ }
@@ -0,0 +1,52 @@
1
+ /**
2
+ * {@link CredentialStore} implementations.
3
+ *
4
+ * - {@link InMemoryCredentialStore} — the default. Tokens live only in the JS
5
+ * heap and vanish on reload; nothing else on the origin can read them.
6
+ * - {@link sessionStorageCredentialStore} / {@link localStorageCredentialStore}
7
+ * — explicit opt-in Web Storage adapters. Web Storage is readable by **any**
8
+ * script executing on the origin, so a single XSS bug can exfiltrate every
9
+ * stored token. Only enable them when you understand and accept that risk
10
+ * (see `docs/auth.md` → "Storage & security"). `localStorage` additionally
11
+ * persists across tabs/restarts, widening the exposure window.
12
+ *
13
+ * @packageDocumentation
14
+ */
15
+ import type { CredentialStore, StoredCredential } from "./types.js";
16
+ /**
17
+ * Default credential store. Holds credentials in a process-local `Map` — never
18
+ * serialized, never shared across origins, cleared on reload.
19
+ */
20
+ export declare class InMemoryCredentialStore implements CredentialStore {
21
+ private readonly entries;
22
+ get(key: string): StoredCredential | undefined;
23
+ set(key: string, value: StoredCredential): void;
24
+ delete(key: string): void;
25
+ }
26
+ /** Minimal Web Storage surface (`sessionStorage` / `localStorage`). */
27
+ interface WebStorageLike {
28
+ getItem(key: string): string | null;
29
+ setItem(key: string, value: string): void;
30
+ removeItem(key: string): void;
31
+ }
32
+ interface WebStorageCredentialStoreOptions {
33
+ /**
34
+ * Storage instance to use. Defaults to the matching global
35
+ * (`sessionStorage` / `localStorage`) resolved lazily.
36
+ */
37
+ storage?: WebStorageLike;
38
+ /** Key prefix for stored entries. Defaults to `honua.auth`. */
39
+ namespace?: string;
40
+ }
41
+ /**
42
+ * `sessionStorage`-backed credential store (per-tab, cleared when the tab
43
+ * closes). Opt-in: see the module-level security note before using it.
44
+ */
45
+ export declare function sessionStorageCredentialStore(options?: WebStorageCredentialStoreOptions): CredentialStore;
46
+ /**
47
+ * `localStorage`-backed credential store (persists across tabs and restarts).
48
+ * Highest-risk option — opt-in only. See the module-level security note.
49
+ */
50
+ export declare function localStorageCredentialStore(options?: WebStorageCredentialStoreOptions): CredentialStore;
51
+ export {};
52
+ //# sourceMappingURL=credential-store.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"credential-store.d.ts","sourceRoot":"","sources":["../../../../src/core/auth/credential-store.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEpE;;;GAGG;AACH,qBAAa,uBAAwB,YAAW,eAAe;IAC7D,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAuC;IAExD,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS;IAI9C,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,gBAAgB,GAAG,IAAI;IAI/C,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;CAGjC;AAED,uEAAuE;AACvE,UAAU,cAAc;IACtB,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IACpC,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1C,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;CAC/B;AAED,UAAU,gCAAgC;IACxC;;;OAGG;IACH,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,+DAA+D;IAC/D,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AA+CD;;;GAGG;AACH,wBAAgB,6BAA6B,CAAC,OAAO,GAAE,gCAAqC,GAAG,eAAe,CAE7G;AAED;;;GAGG;AACH,wBAAgB,2BAA2B,CAAC,OAAO,GAAE,gCAAqC,GAAG,eAAe,CAE3G"}