@honua/react 0.0.20-alpha.0 → 0.1.0-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 (89) hide show
  1. package/contract/index.d.ts +2 -0
  2. package/contract/index.d.ts.map +1 -1
  3. package/contract/index.js +1 -0
  4. package/contract/pmtiles.d.ts +162 -0
  5. package/contract/pmtiles.d.ts.map +1 -0
  6. package/contract/pmtiles.js +155 -0
  7. package/contract/source.d.ts +24 -0
  8. package/contract/source.d.ts.map +1 -1
  9. package/contract/source.js +115 -8
  10. package/contract/types.d.ts +31 -2
  11. package/contract/types.d.ts.map +1 -1
  12. package/contract/types.js +8 -0
  13. package/core/auth/client-credentials-provider.d.ts +51 -0
  14. package/core/auth/client-credentials-provider.d.ts.map +1 -0
  15. package/core/auth/client-credentials-provider.js +115 -0
  16. package/core/auth/credential-store.d.ts +52 -0
  17. package/core/auth/credential-store.d.ts.map +1 -0
  18. package/core/auth/credential-store.js +82 -0
  19. package/core/auth/index.d.ts +23 -0
  20. package/core/auth/index.d.ts.map +1 -0
  21. package/core/auth/index.js +20 -0
  22. package/core/auth/oauth2-provider.d.ts +114 -0
  23. package/core/auth/oauth2-provider.d.ts.map +1 -0
  24. package/core/auth/oauth2-provider.js +408 -0
  25. package/core/auth/pkce.d.ts +25 -0
  26. package/core/auth/pkce.d.ts.map +1 -0
  27. package/core/auth/pkce.js +46 -0
  28. package/core/auth/static-providers.d.ts +20 -0
  29. package/core/auth/static-providers.d.ts.map +1 -0
  30. package/core/auth/static-providers.js +26 -0
  31. package/core/auth/token-endpoint.d.ts +40 -0
  32. package/core/auth/token-endpoint.d.ts.map +1 -0
  33. package/core/auth/token-endpoint.js +133 -0
  34. package/core/auth/types.d.ts +144 -0
  35. package/core/auth/types.d.ts.map +1 -0
  36. package/core/auth/types.js +8 -0
  37. package/core/client.d.ts +31 -1
  38. package/core/client.d.ts.map +1 -1
  39. package/core/client.js +52 -0
  40. package/core/errors.d.ts +33 -1
  41. package/core/errors.d.ts.map +1 -1
  42. package/core/errors.js +20 -0
  43. package/core/geoparquet-sql.d.ts +162 -0
  44. package/core/geoparquet-sql.d.ts.map +1 -0
  45. package/core/geoparquet-sql.js +333 -0
  46. package/core/ogc-endpoint-layout.d.ts +70 -0
  47. package/core/ogc-endpoint-layout.d.ts.map +1 -0
  48. package/core/ogc-endpoint-layout.js +173 -0
  49. package/core/ogc-features.d.ts.map +1 -1
  50. package/core/ogc-features.js +32 -17
  51. package/core/stac-static.d.ts +51 -0
  52. package/core/stac-static.d.ts.map +1 -0
  53. package/core/stac-static.js +195 -0
  54. package/core/stac.d.ts +12 -0
  55. package/core/stac.d.ts.map +1 -1
  56. package/core/stac.js +45 -15
  57. package/core/surfaces.d.ts +13 -0
  58. package/core/surfaces.d.ts.map +1 -1
  59. package/core/surfaces.js +58 -11
  60. package/core/types.d.ts +49 -0
  61. package/core/types.d.ts.map +1 -1
  62. package/core/wfs-capabilities.d.ts +10 -0
  63. package/core/wfs-capabilities.d.ts.map +1 -1
  64. package/core/wfs-capabilities.js +14 -2
  65. package/core/wfs.d.ts +13 -0
  66. package/core/wfs.d.ts.map +1 -1
  67. package/core/wfs.js +25 -5
  68. package/esri-compat/identity-manager.d.ts +43 -0
  69. package/esri-compat/identity-manager.d.ts.map +1 -1
  70. package/esri-compat/identity-manager.js +131 -1
  71. package/esri-compat/oauth-info.d.ts +15 -0
  72. package/esri-compat/oauth-info.d.ts.map +1 -1
  73. package/esri-compat/oauth-info.js +27 -0
  74. package/package.json +6 -1
  75. package/runtime/index.d.ts +2 -2
  76. package/runtime/index.d.ts.map +1 -1
  77. package/runtime/index.js +1 -4
  78. package/runtime/load-package.d.ts.map +1 -1
  79. package/runtime/load-package.js +8 -0
  80. package/runtime/map-package-validation.d.ts +0 -13
  81. package/runtime/map-package-validation.d.ts.map +1 -1
  82. package/runtime/map-package-validation.js +0 -12
  83. package/runtime/map-package.d.ts +1 -1
  84. package/runtime/map-package.d.ts.map +1 -1
  85. package/runtime/pmtiles-protocol.d.ts +77 -0
  86. package/runtime/pmtiles-protocol.d.ts.map +1 -0
  87. package/runtime/pmtiles-protocol.js +120 -0
  88. package/runtime/source-bridge.d.ts.map +1 -1
  89. package/runtime/source-bridge.js +27 -0
@@ -0,0 +1,133 @@
1
+ /**
2
+ * Shared helpers for talking to an OAuth2 token endpoint and turning responses
3
+ * into {@link StoredCredential}s. Used by both the PKCE and client-credentials
4
+ * providers.
5
+ *
6
+ * @packageDocumentation
7
+ */
8
+ import { HonuaAuthError } from "../errors.js";
9
+ /**
10
+ * Project a {@link StoredCredential} into the {@link HonuaAuthCredentials} shape
11
+ * the client attaches to requests. Non-`Bearer` token types are emitted as a
12
+ * full `Authorization` value; the expiry drives the client's own refresh skew.
13
+ */
14
+ export function toHonuaCredentials(credential) {
15
+ const result = {};
16
+ if (credential.tokenType && credential.tokenType.toLowerCase() !== "bearer") {
17
+ result.authorization = `${credential.tokenType} ${credential.accessToken}`;
18
+ }
19
+ else {
20
+ result.bearerToken = credential.accessToken;
21
+ }
22
+ if (credential.expiresAt !== undefined) {
23
+ result.expiresAt = credential.expiresAt;
24
+ }
25
+ return result;
26
+ }
27
+ /** Resolve `serviceKey`, defaulting to `${clientId}@${endpoint origin}`. */
28
+ export function resolveServiceKey(serviceKey, clientId, endpoint) {
29
+ if (serviceKey) {
30
+ return serviceKey;
31
+ }
32
+ let origin = endpoint;
33
+ try {
34
+ origin = new URL(endpoint).origin;
35
+ }
36
+ catch {
37
+ // Non-absolute endpoint (tests) — fall back to the raw string.
38
+ }
39
+ return `${clientId}@${origin}`;
40
+ }
41
+ /** Default clock-skew tolerance (ms) applied to credential expiry checks. */
42
+ export const DEFAULT_CLOCK_SKEW_MS = 60_000;
43
+ /** True when a credential is missing or within `skewMs` of (or past) expiry. */
44
+ export function isCredentialExpiring(credential, skewMs) {
45
+ if (!credential) {
46
+ return true;
47
+ }
48
+ if (credential.expiresAt === undefined) {
49
+ return false;
50
+ }
51
+ return credential.expiresAt - Date.now() <= skewMs;
52
+ }
53
+ /** Map a token response into a {@link StoredCredential} (clock-skew tolerant). */
54
+ export function credentialFromTokenResponse(response, previous) {
55
+ const credential = {
56
+ accessToken: response.access_token,
57
+ };
58
+ if (response.token_type) {
59
+ credential.tokenType = response.token_type;
60
+ }
61
+ // Some authorization servers omit a rotated refresh token on refresh; keep
62
+ // the previous one so silent refresh keeps working (RFC 6749 §6).
63
+ const refreshToken = response.refresh_token ?? previous?.refreshToken;
64
+ if (refreshToken) {
65
+ credential.refreshToken = refreshToken;
66
+ }
67
+ if (typeof response.expires_in === "number" && Number.isFinite(response.expires_in)) {
68
+ credential.expiresAt = Date.now() + response.expires_in * 1000;
69
+ }
70
+ const scope = response.scope ?? previous?.scope;
71
+ if (scope) {
72
+ credential.scope = scope;
73
+ }
74
+ if (response.id_token) {
75
+ credential.idToken = response.id_token;
76
+ }
77
+ return credential;
78
+ }
79
+ /**
80
+ * POST an `application/x-www-form-urlencoded` grant to the token endpoint and
81
+ * return the parsed {@link StoredCredential}.
82
+ *
83
+ * Errors are normalized to {@link HonuaAuthError}: an `invalid_grant` OAuth
84
+ * error (expired/revoked/invalid grant → re-auth needed) maps to code
85
+ * `invalid_grant`; every other transport/HTTP/parse failure maps to
86
+ * `refresh_failed` (transient, retry may succeed).
87
+ */
88
+ export async function requestToken(options) {
89
+ const body = new URLSearchParams(options.params);
90
+ let response;
91
+ try {
92
+ response = await options.fetchFn(options.tokenEndpoint, {
93
+ method: "POST",
94
+ headers: {
95
+ "Content-Type": "application/x-www-form-urlencoded",
96
+ Accept: "application/json",
97
+ },
98
+ body: body.toString(),
99
+ ...(options.signal ? { signal: options.signal } : {}),
100
+ });
101
+ }
102
+ catch (cause) {
103
+ throw new HonuaAuthError("refresh_failed", "Token request failed at the transport layer.", { cause });
104
+ }
105
+ const text = await response.text();
106
+ let payload;
107
+ try {
108
+ payload = text ? JSON.parse(text) : {};
109
+ }
110
+ catch (cause) {
111
+ throw new HonuaAuthError("refresh_failed", `Token endpoint returned a non-JSON response (HTTP ${response.status}).`, {
112
+ cause,
113
+ });
114
+ }
115
+ if (!response.ok) {
116
+ const oauthError = isObject(payload) && typeof payload.error === "string" ? payload.error : undefined;
117
+ const description = isObject(payload) && typeof payload.error_description === "string" ? payload.error_description : undefined;
118
+ const message = `Token endpoint rejected the grant (HTTP ${response.status}${oauthError ? `, ${oauthError}` : ""})${description ? `: ${description}` : ""}`;
119
+ if (oauthError === "invalid_grant") {
120
+ throw new HonuaAuthError("invalid_grant", message, { cause: payload });
121
+ }
122
+ throw new HonuaAuthError("refresh_failed", message, { cause: payload });
123
+ }
124
+ if (!isObject(payload) || typeof payload.access_token !== "string") {
125
+ throw new HonuaAuthError("refresh_failed", "Token endpoint response is missing an access_token.", {
126
+ cause: payload,
127
+ });
128
+ }
129
+ return credentialFromTokenResponse(payload, options.previous);
130
+ }
131
+ function isObject(value) {
132
+ return typeof value === "object" && value !== null;
133
+ }
@@ -0,0 +1,144 @@
1
+ /**
2
+ * Shared types for the built-in {@link HonuaAuthProvider} implementations
3
+ * (`oauth2`, `clientCredentials`, `apiKeyAuth`, `bearerTokenAuth`) and the
4
+ * pluggable {@link CredentialStore}.
5
+ *
6
+ * @packageDocumentation
7
+ */
8
+ import type { HonuaAuthError } from "../errors.js";
9
+ /**
10
+ * A persisted OAuth2 credential. Access/refresh tokens plus expiry are stored
11
+ * in a {@link CredentialStore}; the SDK only ever attaches `accessToken` as a
12
+ * bearer credential and uses `refreshToken`/`expiresAt` to drive silent
13
+ * refresh.
14
+ */
15
+ export interface StoredCredential {
16
+ /** The bearer access token attached to outgoing requests. */
17
+ accessToken: string;
18
+ /** Token type from the token response; defaults to `Bearer`. */
19
+ tokenType?: string;
20
+ /** Refresh token, when the authorization server issued one. */
21
+ refreshToken?: string;
22
+ /** Absolute expiry as epoch milliseconds (from `expires_in`). */
23
+ expiresAt?: number;
24
+ /** Granted scope string, if the token response narrowed it. */
25
+ scope?: string;
26
+ /** OpenID Connect ID token, when present (never sent to resource servers). */
27
+ idToken?: string;
28
+ }
29
+ /**
30
+ * Pluggable credential persistence. The default is an in-memory store scoped to
31
+ * the provider instance. Browser adapters (`sessionStorageCredentialStore`,
32
+ * `localStorageCredentialStore`) are explicit opt-in because Web Storage is
33
+ * readable by any script on the origin (XSS exfiltration risk) — see
34
+ * `docs/auth.md`.
35
+ *
36
+ * Keys are namespaced per origin/service by the provider so tokens for one
37
+ * service are never returned for another.
38
+ */
39
+ export interface CredentialStore {
40
+ get(key: string): StoredCredential | undefined | Promise<StoredCredential | undefined>;
41
+ set(key: string, value: StoredCredential): void | Promise<void>;
42
+ delete(key: string): void | Promise<void>;
43
+ }
44
+ /** Lifecycle events emitted by the OAuth2 / client-credentials providers. */
45
+ export type HonuaAuthEvent = {
46
+ type: "signed-in";
47
+ credential: StoredCredential;
48
+ } | {
49
+ type: "token-refreshed";
50
+ credential: StoredCredential;
51
+ } | {
52
+ type: "refresh-failed";
53
+ error: HonuaAuthError;
54
+ } | {
55
+ type: "signed-out";
56
+ };
57
+ /** Listener registered with `provider.on(...)`. */
58
+ export type HonuaAuthEventListener = (event: HonuaAuthEvent) => void;
59
+ /** Handle returned by `provider.on(...)`; call `remove()` to unsubscribe. */
60
+ export interface HonuaAuthEventHandle {
61
+ remove(): void;
62
+ }
63
+ /** Interactive sign-in mode for the OAuth2 authorization-code + PKCE flow. */
64
+ export type OAuth2SignInMode = "redirect" | "popup";
65
+ /**
66
+ * Configuration for the OAuth2 authorization-code + PKCE provider produced by
67
+ * {@link oauth2}. Only WebCrypto is used for PKCE (Node ≥20 exposes
68
+ * `globalThis.crypto`); no new hard dependencies are introduced.
69
+ */
70
+ export interface OAuth2Config {
71
+ /** Authorization endpoint (where the browser is redirected to sign in). */
72
+ authorizationEndpoint: string;
73
+ /** Token endpoint (code exchange + refresh). */
74
+ tokenEndpoint: string;
75
+ /** Public client identifier. */
76
+ clientId: string;
77
+ /** Registered redirect URI that receives the authorization `code`+`state`. */
78
+ redirectUri: string;
79
+ /** Requested scopes. */
80
+ scopes?: readonly string[];
81
+ /** Interactive mode. Defaults to `redirect`. */
82
+ mode?: OAuth2SignInMode;
83
+ /**
84
+ * Credential store. Defaults to an in-memory store. Scoped per
85
+ * origin/service via {@link OAuth2Config.serviceKey}.
86
+ */
87
+ store?: CredentialStore;
88
+ /**
89
+ * Stable key that scopes stored credentials to this service. Defaults to
90
+ * `${clientId}@${origin of tokenEndpoint}` so tokens are never shared across
91
+ * services or origins.
92
+ */
93
+ serviceKey?: string;
94
+ /**
95
+ * Clock-skew tolerance in milliseconds. A credential is treated as expiring
96
+ * this long before its real expiry so a refresh happens before requests fail.
97
+ * Defaults to 60_000.
98
+ */
99
+ clockSkewMs?: number;
100
+ /** Optional revocation endpoint (RFC 7009) called on `signOut()`. */
101
+ revocationEndpoint?: string;
102
+ /** Extra query params appended to the authorization request. */
103
+ extraAuthorizationParams?: Record<string, string>;
104
+ /** Extra body params appended to token/refresh requests. */
105
+ extraTokenParams?: Record<string, string>;
106
+ /** Popup window features string (popup mode). */
107
+ popupFeatures?: string;
108
+ /** Override `fetch` (Node/tests). Defaults to `globalThis.fetch`. */
109
+ fetchFn?: typeof fetch;
110
+ /**
111
+ * Window used for redirect/popup + transaction persistence. Defaults to
112
+ * `globalThis.window`. Injectable for tests / non-DOM hosts.
113
+ */
114
+ windowRef?: Window;
115
+ /** Auth lifecycle listener. */
116
+ onEvent?: HonuaAuthEventListener;
117
+ }
118
+ /**
119
+ * Configuration for the OAuth2 client-credentials provider produced by
120
+ * {@link clientCredentials}. Intended for confidential Node clients — the
121
+ * client secret must never ship to a browser.
122
+ */
123
+ export interface ClientCredentialsConfig {
124
+ tokenEndpoint: string;
125
+ clientId: string;
126
+ clientSecret: string;
127
+ scopes?: readonly string[];
128
+ store?: CredentialStore;
129
+ serviceKey?: string;
130
+ clockSkewMs?: number;
131
+ extraTokenParams?: Record<string, string>;
132
+ fetchFn?: typeof fetch;
133
+ onEvent?: HonuaAuthEventListener;
134
+ }
135
+ /** Raw OAuth2 token endpoint response shape (RFC 6749 §5.1). */
136
+ export interface OAuth2TokenResponse {
137
+ access_token: string;
138
+ token_type?: string;
139
+ expires_in?: number;
140
+ refresh_token?: string;
141
+ scope?: string;
142
+ id_token?: string;
143
+ }
144
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/core/auth/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Shared types for the built-in {@link HonuaAuthProvider} implementations
3
+ * (`oauth2`, `clientCredentials`, `apiKeyAuth`, `bearerTokenAuth`) and the
4
+ * pluggable {@link CredentialStore}.
5
+ *
6
+ * @packageDocumentation
7
+ */
8
+ export {};
package/core/client.d.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  import { type HonuaMetadataRequestOptions } from "./cache-state.js";
2
2
  import { HonuaOdataEntitySet } from "./odata.js";
3
+ import { type OgcApiLayoutMode } from "./ogc-endpoint-layout.js";
3
4
  import { HonuaOgcMaps } from "./ogc-maps.js";
4
5
  import { HonuaOgcProcesses } from "./ogc-processes.js";
5
6
  import { HonuaOgcRecords } from "./ogc-records.js";
@@ -8,7 +9,7 @@ import { type HonuaProcessRunner } from "./process-runner.js";
8
9
  import type { GeospatialGrpcProcessClient, HonuaProcessAdapter } from "./process-runner.js";
9
10
  import { HonuaStacSearch } from "./stac.js";
10
11
  import { HonuaFeatureLayer, HonuaGeometryService, HonuaGeoprocessingService, HonuaImageService, HonuaMapLayer, HonuaMapService, HonuaOgcFeatures, HonuaService } from "./surfaces.js";
11
- import type { ApplyEditsRequest, ExportMapRequest, HonuaApplyEditsResponse, HonuaAuthCredentials, HonuaAuthRefreshReason, HonuaAuthRevocationContext, HonuaClientOptions, HonuaCompatibilityRequest, HonuaExportMapResponse, HonuaFeature, HonuaFindResponse, HonuaIdentifyResponse, HonuaLayerMetadata, HonuaLegendResponse, HonuaOgcCollectionMetadata, HonuaOgcCollectionsResponse, HonuaOgcConformanceResponse, HonuaOgcFeatureCollectionResponse, HonuaOgcFeatureResponse, HonuaOgcLandingResponse, HonuaOgcMapImageResponse, HonuaOgcProcessDescription, HonuaOgcProcessJobAccepted, HonuaOgcProcessJobResults, HonuaOgcProcessJobStatus, HonuaOgcProcessesResponse, HonuaOgcQueryablesResponse, HonuaOgcRecordResponse, HonuaOgcRecordsResponse, HonuaOgcTileMatrixSet, HonuaOgcTileMatrixSetsResponse, HonuaOgcTileResponse, HonuaOgcTilesetMetadata, HonuaOgcTilesetsResponse, HonuaQueryResponse, HonuaRawRequest, HonuaRelatedRecordsResponse, HonuaServerCompatibility, HonuaServerCompatibilityFeature, HonuaServerCompatibilityStatus, HonuaServiceMetadata, HonuaServicesResponse, HonuaStacItemCollectionResponse, HonuaStacItemResponse, HonuaStacLandingResponse, MapFindRequest, MapIdentifyRequest, MapLayerQueryRequest, MapLegendRequest, MapRelatedRecordsRequest, MigrationInventoryScanRequest, MigrationSourceInventoryArtifact, OgcCollectionRequest, OgcCreateItemRequest, OgcDeleteItemRequest, OgcItemRequest, OgcItemsRequest, OgcMapImageRequest, OgcMetadataRequest, OgcPatchItemRequest, OgcProcessExecuteRequest, OgcRecordItemRequest, OgcRecordRawItemRequest, OgcRecordsRawSearchRequest, OgcRecordsSearchRequest, OgcReplaceItemRequest, OgcTileRequest, OgcTilesetRequest, OgcTilesetsRequest, QueryFeaturesRequest, QueryMethod, QueryRelatedRecordsRequest, StacSearchRequest } from "./types.js";
12
+ import type { ApplyEditsRequest, ExportMapRequest, HonuaApplyEditsResponse, HonuaAuthCredentials, HonuaAuthRefreshReason, HonuaAuthRevocationContext, HonuaClientOptions, HonuaCompatibilityRequest, HonuaExportMapResponse, HonuaFeature, HonuaFindResponse, HonuaIdentifyResponse, HonuaLayerMetadata, HonuaLegendResponse, HonuaOgcCollectionMetadata, HonuaOgcCollectionsResponse, HonuaOgcConformanceResponse, HonuaOgcFeatureCollectionResponse, HonuaOgcFeatureResponse, HonuaOgcLandingResponse, HonuaOgcMapImageResponse, HonuaOgcProcessDescription, HonuaOgcProcessJobAccepted, HonuaOgcProcessJobResults, HonuaOgcProcessJobStatus, HonuaOgcProcessesResponse, HonuaOgcQueryablesResponse, HonuaOgcRecordResponse, HonuaOgcRecordsResponse, HonuaOgcTileMatrixSet, HonuaOgcTileMatrixSetsResponse, HonuaOgcTileResponse, HonuaOgcTilesetMetadata, HonuaOgcTilesetsResponse, HonuaQueryResponse, HonuaRawRequest, HonuaRelatedRecordsResponse, HonuaServerCompatibility, HonuaServerCompatibilityFeature, HonuaServerCompatibilityStatus, HonuaServiceMetadata, HonuaServicesResponse, HonuaStacItemCollectionResponse, HonuaStacItemResponse, HonuaStacLandingResponse, MapFindRequest, MapIdentifyRequest, MapLayerQueryRequest, MapLegendRequest, MapRelatedRecordsRequest, MigrationInventoryScanRequest, MigrationSourceInventoryArtifact, OgcCollectionRequest, OgcCreateItemRequest, OgcDeleteItemRequest, OgcEndpointLayout, OgcItemRequest, OgcItemsRequest, OgcMapImageRequest, OgcMetadataRequest, OgcPatchItemRequest, OgcProcessExecuteRequest, OgcRecordItemRequest, OgcRecordRawItemRequest, OgcRecordsRawSearchRequest, OgcRecordsSearchRequest, OgcReplaceItemRequest, OgcTileRequest, OgcTilesetRequest, OgcTilesetsRequest, QueryFeaturesRequest, QueryMethod, QueryRelatedRecordsRequest, StacSearchRequest } from "./types.js";
12
13
  import { HonuaWfs } from "./wfs.js";
13
14
  import type { WmsCapabilities } from "./wms-capabilities.js";
14
15
  import type { HonuaWmsFeatureInfoResponse, HonuaWmsImageResponse, HonuaWmtsFeatureInfoResponse, HonuaWmtsTileResponse, WmsFeatureInfoRequest, WmsLegendRequest, WmsMapRequest, WmtsFeatureInfoRequest, WmtsTileRequest } from "./wms-types.js";
@@ -90,6 +91,7 @@ export declare class HonuaClient {
90
91
  private authRefreshPromise;
91
92
  private connectClient;
92
93
  private readonly metadataCache;
94
+ private readonly ogcLayoutCache;
93
95
  /**
94
96
  * Create a new `HonuaClient`.
95
97
  *
@@ -169,6 +171,24 @@ export declare class HonuaClient {
169
171
  * keeps the result in memory only; callers own durable and secure storage.
170
172
  */
171
173
  refreshAuthCredentials(reason?: HonuaAuthRefreshReason): Promise<HonuaAuthCredentials | undefined>;
174
+ /**
175
+ * Resolve the auth headers the client would attach to an outgoing request
176
+ * right now, refreshing provider credentials first if they are expiring.
177
+ *
178
+ * Transports that build their own connection outside the REST/gRPC pipeline —
179
+ * notably realtime SSE streams, which must re-authenticate on every
180
+ * (re)connect so a refreshed token is picked up after a drop — call this per
181
+ * connect to obtain fresh credentials. Returns an empty object when no
182
+ * credentials are configured.
183
+ */
184
+ getAuthHeaders(): Promise<Record<string, string>>;
185
+ /**
186
+ * Resolve just the current bearer/authorization token value (without the
187
+ * `Bearer ` scheme prefix when a plain bearer token is configured), or
188
+ * `undefined` if none. Convenience for realtime transports that must carry the
189
+ * token as a query parameter (native `EventSource` cannot set headers).
190
+ */
191
+ getAuthToken(): Promise<string | undefined>;
172
192
  /** Drop cached provider credentials without calling a revocation endpoint. */
173
193
  clearAuthCredentials(): void;
174
194
  /**
@@ -346,6 +366,16 @@ export declare class HonuaClient {
346
366
  private setMetadataCacheEntry;
347
367
  getLayerMetadata(serviceId: string, layerId: number, options?: HonuaMetadataRequestOptions): Promise<HonuaLayerMetadata>;
348
368
  getFeatureServiceMetadata(serviceId: string, options?: HonuaMetadataRequestOptions): Promise<HonuaServiceMetadata>;
369
+ /**
370
+ * Resolve (and memoize) the OGC API Features endpoint layout for the
371
+ * given discovery `mode`. `honua-facade` (default) returns the fixed
372
+ * `/ogc/features/...` fast path with no network access; `ogc-api` and
373
+ * `auto` discover the layout from the server's landing page per OGC API
374
+ * - Common so the same typed surface works against pygeoapi / ldproxy /
375
+ * GeoServer. Discovery is cached per mode for the life of the client
376
+ * (the layout is a function of the fixed `baseUrl`).
377
+ */
378
+ resolveOgcFeaturesLayout(mode?: OgcApiLayoutMode): Promise<OgcEndpointLayout>;
349
379
  getOgcFeaturesLanding(request?: OgcMetadataRequest): Promise<HonuaOgcLandingResponse>;
350
380
  getOgcFeaturesConformance(request?: OgcMetadataRequest): Promise<HonuaOgcConformanceResponse>;
351
381
  listOgcCollections(request?: OgcMetadataRequest): Promise<HonuaOgcCollectionsResponse>;
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/core/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/core/client.ts"],"names":[],"mappings":"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"}
package/core/client.js CHANGED
@@ -3,6 +3,7 @@ import { HONUA_MINIMUM_SUPPORTED_SERVER_VERSION, MINIMUM_SUPPORTED_SERVER_RELEAS
3
3
  import { HonuaHttpError, HonuaNetworkError, HonuaTimeoutError } from "./errors.js";
4
4
  import { applyEdits, exportMap, findMap, getFeatureServiceMetadata, getLayerMetadata, getMapLayerMetadata, getMapLegend, getMapServiceMetadata, identifyMap, listServices, queryFeaturesRest, queryMapLayer, queryMapRelatedRecords, queryRelatedRecords, } from "./geoservices.js";
5
5
  import { HonuaOdataEntitySet } from "./odata.js";
6
+ import { honuaFacadeFeaturesLayout, resolveOgcEndpointLayout } from "./ogc-endpoint-layout.js";
6
7
  import { createOgcItem, deleteOgcItem, getOgcCollection, getOgcFeaturesConformance, getOgcFeaturesLanding, getOgcItem, getOgcQueryables, listOgcCollections, listOgcItems, patchOgcItem, replaceOgcItem, } from "./ogc-features.js";
7
8
  import { HonuaOgcMaps, getOgcMapImage, getOgcMapsConformance, getOgcMapsLanding } from "./ogc-maps.js";
8
9
  import { HonuaOgcProcesses, cancelOgcProcessJob, executeOgcProcess, getOgcProcess, getOgcProcessJob, getOgcProcessJobResults, getOgcProcessesConformance, getOgcProcessesLanding, listOgcProcesses, } from "./ogc-processes.js";
@@ -171,6 +172,7 @@ export class HonuaClient {
171
172
  authRefreshPromise;
172
173
  connectClient;
173
174
  metadataCache = new Map();
175
+ ogcLayoutCache = new Map();
174
176
  /**
175
177
  * Create a new `HonuaClient`.
176
178
  *
@@ -391,6 +393,33 @@ export class HonuaClient {
391
393
  });
392
394
  return cached?.credentials;
393
395
  }
396
+ /**
397
+ * Resolve the auth headers the client would attach to an outgoing request
398
+ * right now, refreshing provider credentials first if they are expiring.
399
+ *
400
+ * Transports that build their own connection outside the REST/gRPC pipeline —
401
+ * notably realtime SSE streams, which must re-authenticate on every
402
+ * (re)connect so a refreshed token is picked up after a drop — call this per
403
+ * connect to obtain fresh credentials. Returns an empty object when no
404
+ * credentials are configured.
405
+ */
406
+ async getAuthHeaders() {
407
+ return this.composeHeaders();
408
+ }
409
+ /**
410
+ * Resolve just the current bearer/authorization token value (without the
411
+ * `Bearer ` scheme prefix when a plain bearer token is configured), or
412
+ * `undefined` if none. Convenience for realtime transports that must carry the
413
+ * token as a query parameter (native `EventSource` cannot set headers).
414
+ */
415
+ async getAuthToken() {
416
+ const headers = await this.composeHeaders();
417
+ const authorization = headers.Authorization ?? headers.authorization;
418
+ if (authorization) {
419
+ return authorization.startsWith("Bearer ") ? authorization.slice("Bearer ".length) : authorization;
420
+ }
421
+ return headers["X-API-Key"] ?? headers["x-api-key"];
422
+ }
394
423
  /** Drop cached provider credentials without calling a revocation endpoint. */
395
424
  clearAuthCredentials() {
396
425
  this.authCredentialsCache = undefined;
@@ -882,6 +911,29 @@ export class HonuaClient {
882
911
  async getFeatureServiceMetadata(serviceId, options = {}) {
883
912
  return getFeatureServiceMetadata(this.protocolTransport, serviceId, options);
884
913
  }
914
+ /**
915
+ * Resolve (and memoize) the OGC API Features endpoint layout for the
916
+ * given discovery `mode`. `honua-facade` (default) returns the fixed
917
+ * `/ogc/features/...` fast path with no network access; `ogc-api` and
918
+ * `auto` discover the layout from the server's landing page per OGC API
919
+ * - Common so the same typed surface works against pygeoapi / ldproxy /
920
+ * GeoServer. Discovery is cached per mode for the life of the client
921
+ * (the layout is a function of the fixed `baseUrl`).
922
+ */
923
+ resolveOgcFeaturesLayout(mode = "honua-facade") {
924
+ if (mode === "honua-facade")
925
+ return Promise.resolve(honuaFacadeFeaturesLayout());
926
+ let cached = this.ogcLayoutCache.get(mode);
927
+ if (!cached) {
928
+ cached = resolveOgcEndpointLayout(this.protocolTransport, mode).catch((err) => {
929
+ // Allow a later retry after a transient discovery failure.
930
+ this.ogcLayoutCache.delete(mode);
931
+ throw err;
932
+ });
933
+ this.ogcLayoutCache.set(mode, cached);
934
+ }
935
+ return cached;
936
+ }
885
937
  async getOgcFeaturesLanding(request = {}) {
886
938
  return getOgcFeaturesLanding(this.protocolTransport, request);
887
939
  }
package/core/errors.d.ts CHANGED
@@ -77,6 +77,38 @@ export declare class HonuaCapabilityNotSupportedError extends Error {
77
77
  readonly sourceId: string | undefined;
78
78
  constructor(capability: string, protocol: string, sourceId?: string);
79
79
  }
80
+ /**
81
+ * Cause codes for {@link HonuaAuthError}. They classify *why* an auth flow
82
+ * could not produce a usable credential so callers can branch without parsing
83
+ * message strings:
84
+ *
85
+ * - `interaction_required` — no cached credential and no way to obtain one
86
+ * silently (no refresh token, or the refresh token is gone). The app must
87
+ * start an interactive sign-in (`oauth2(...).signIn()`).
88
+ * - `refresh_failed` — a silent refresh attempt failed for a transient reason
89
+ * (network/5xx/timeout at the token endpoint). Retrying later may succeed.
90
+ * - `invalid_grant` — the authorization server rejected the grant
91
+ * (`error: "invalid_grant"`): the refresh token or authorization code is
92
+ * expired/revoked/invalid. The stored credential is cleared and interactive
93
+ * sign-in is required.
94
+ */
95
+ export type HonuaAuthErrorCode = "interaction_required" | "refresh_failed" | "invalid_grant";
96
+ /**
97
+ * Thrown by the auth providers (`oauth2`, `clientCredentials`, …) when a
98
+ * credential cannot be produced. Branch on `.code` (see {@link HonuaAuthErrorCode})
99
+ * to decide whether to start interactive sign-in, retry the refresh later, or
100
+ * surface the failure to the user. The underlying transport/parse failure, when
101
+ * present, is preserved on `.cause`.
102
+ *
103
+ * @see [`docs/errors.md`](../../docs/errors.md)
104
+ */
105
+ export declare class HonuaAuthError extends Error {
106
+ readonly code: HonuaAuthErrorCode;
107
+ readonly cause: unknown;
108
+ constructor(code: HonuaAuthErrorCode, message: string, options?: {
109
+ cause?: unknown;
110
+ });
111
+ }
80
112
  /**
81
113
  * Thrown when an `ExplorationContext` operation is invalid — for example,
82
114
  * dispatching an intent against a context that has been disposed, restoring
@@ -101,7 +133,7 @@ export declare class HonuaWfsExceptionError extends Error {
101
133
  constructor(exceptionCode: string, message: string, locator?: string);
102
134
  }
103
135
  /** All Honua SDK error types that can be discriminated with `instanceof`. */
104
- export type HonuaError = HonuaHttpError | HonuaTimeoutError | HonuaNetworkError | HonuaAbortError | HonuaGrpcError | HonuaCapabilityNotSupportedError | HonuaExplorationContextError | HonuaWfsExceptionError | HonuaJobFailedError | HonuaWmsCapabilitiesParseError | HonuaWmtsCapabilitiesParseError;
136
+ export type HonuaError = HonuaHttpError | HonuaTimeoutError | HonuaNetworkError | HonuaAbortError | HonuaGrpcError | HonuaAuthError | HonuaCapabilityNotSupportedError | HonuaExplorationContextError | HonuaWfsExceptionError | HonuaJobFailedError | HonuaWmsCapabilitiesParseError | HonuaWmtsCapabilitiesParseError;
105
137
  /** Type guard that narrows any value to one of the Honua SDK error types. */
106
138
  export declare function isHonuaError(error: unknown): error is HonuaError;
107
139
  //# sourceMappingURL=errors.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../src/core/errors.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAEH,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,8BAA8B,EAAE,MAAM,uBAAuB,CAAC;AACvE,OAAO,EAAE,+BAA+B,EAAE,MAAM,wBAAwB,CAAC;AAEzE;;;;;;GAMG;AACH,qBAAa,cAAe,SAAQ,KAAK;IACvC,SAAgB,UAAU,EAAE,MAAM,CAAC;IACnC,SAAgB,IAAI,EAAE,OAAO,CAAC;gBAEX,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO;CAMtE;AAED,4DAA4D;AAC5D,qBAAa,iBAAkB,SAAQ,KAAK;IAC1C,SAAgB,SAAS,EAAE,MAAM,CAAC;gBAEf,SAAS,EAAE,MAAM;CAKrC;AAED,kFAAkF;AAClF,qBAAa,iBAAkB,SAAQ,KAAK;IAC1C,SAAyB,KAAK,EAAE,OAAO,CAAC;gBAErB,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO;CAKnD;AAED,0EAA0E;AAC1E,qBAAa,eAAgB,SAAQ,KAAK;gBACrB,OAAO,SAAwB;CAInD;AAED,kFAAkF;AAClF,qBAAa,cAAe,SAAQ,KAAK;IACvC,SAAgB,IAAI,EAAE,MAAM,CAAC;IAC7B,SAAgB,OAAO,EAAE,OAAO,CAAC;gBAEd,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO;CAMpE;AAED;;;;;;GAMG;AACH,qBAAa,gCAAiC,SAAQ,KAAK;IACzD,SAAgB,UAAU,EAAE,MAAM,CAAC;IACnC,SAAgB,QAAQ,EAAE,MAAM,CAAC;IACjC,SAAgB,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;gBAE1B,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM;CAW3E;AAED;;;;;GAKG;AACH,qBAAa,4BAA6B,SAAQ,KAAK;IACrD,SAAgB,IAAI,EAAE,MAAM,CAAC;gBAEV,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;CAKjD;AAED;;;;;;;GAOG;AACH,qBAAa,sBAAuB,SAAQ,KAAK;IAC/C,SAAgB,aAAa,EAAE,MAAM,CAAC;IACtC,SAAgB,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;gBAEzB,aAAa,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM;CAU5E;AAED,6EAA6E;AAC7E,MAAM,MAAM,UAAU,GAClB,cAAc,GACd,iBAAiB,GACjB,iBAAiB,GACjB,eAAe,GACf,cAAc,GACd,gCAAgC,GAChC,4BAA4B,GAC5B,sBAAsB,GACtB,mBAAmB,GACnB,8BAA8B,GAC9B,+BAA+B,CAAC;AAEpC,6EAA6E;AAC7E,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,UAAU,CAchE"}
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../src/core/errors.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAEH,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,8BAA8B,EAAE,MAAM,uBAAuB,CAAC;AACvE,OAAO,EAAE,+BAA+B,EAAE,MAAM,wBAAwB,CAAC;AAEzE;;;;;;GAMG;AACH,qBAAa,cAAe,SAAQ,KAAK;IACvC,SAAgB,UAAU,EAAE,MAAM,CAAC;IACnC,SAAgB,IAAI,EAAE,OAAO,CAAC;gBAEX,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO;CAMtE;AAED,4DAA4D;AAC5D,qBAAa,iBAAkB,SAAQ,KAAK;IAC1C,SAAgB,SAAS,EAAE,MAAM,CAAC;gBAEf,SAAS,EAAE,MAAM;CAKrC;AAED,kFAAkF;AAClF,qBAAa,iBAAkB,SAAQ,KAAK;IAC1C,SAAyB,KAAK,EAAE,OAAO,CAAC;gBAErB,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO;CAKnD;AAED,0EAA0E;AAC1E,qBAAa,eAAgB,SAAQ,KAAK;gBACrB,OAAO,SAAwB;CAInD;AAED,kFAAkF;AAClF,qBAAa,cAAe,SAAQ,KAAK;IACvC,SAAgB,IAAI,EAAE,MAAM,CAAC;IAC7B,SAAgB,OAAO,EAAE,OAAO,CAAC;gBAEd,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO;CAMpE;AAED;;;;;;GAMG;AACH,qBAAa,gCAAiC,SAAQ,KAAK;IACzD,SAAgB,UAAU,EAAE,MAAM,CAAC;IACnC,SAAgB,QAAQ,EAAE,MAAM,CAAC;IACjC,SAAgB,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;gBAE1B,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM;CAW3E;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,MAAM,kBAAkB,GAAG,sBAAsB,GAAG,gBAAgB,GAAG,eAAe,CAAC;AAE7F;;;;;;;;GAQG;AACH,qBAAa,cAAe,SAAQ,KAAK;IACvC,SAAgB,IAAI,EAAE,kBAAkB,CAAC;IACzC,SAAyB,KAAK,EAAE,OAAO,CAAC;gBAErB,IAAI,EAAE,kBAAkB,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE;QAAE,KAAK,CAAC,EAAE,OAAO,CAAA;KAAO;CAMhG;AAED;;;;;GAKG;AACH,qBAAa,4BAA6B,SAAQ,KAAK;IACrD,SAAgB,IAAI,EAAE,MAAM,CAAC;gBAEV,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;CAKjD;AAED;;;;;;;GAOG;AACH,qBAAa,sBAAuB,SAAQ,KAAK;IAC/C,SAAgB,aAAa,EAAE,MAAM,CAAC;IACtC,SAAgB,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;gBAEzB,aAAa,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM;CAU5E;AAED,6EAA6E;AAC7E,MAAM,MAAM,UAAU,GAClB,cAAc,GACd,iBAAiB,GACjB,iBAAiB,GACjB,eAAe,GACf,cAAc,GACd,cAAc,GACd,gCAAgC,GAChC,4BAA4B,GAC5B,sBAAsB,GACtB,mBAAmB,GACnB,8BAA8B,GAC9B,+BAA+B,CAAC;AAEpC,6EAA6E;AAC7E,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,UAAU,CAehE"}
package/core/errors.js CHANGED
@@ -106,6 +106,25 @@ export class HonuaCapabilityNotSupportedError extends Error {
106
106
  this.sourceId = sourceId;
107
107
  }
108
108
  }
109
+ /**
110
+ * Thrown by the auth providers (`oauth2`, `clientCredentials`, …) when a
111
+ * credential cannot be produced. Branch on `.code` (see {@link HonuaAuthErrorCode})
112
+ * to decide whether to start interactive sign-in, retry the refresh later, or
113
+ * surface the failure to the user. The underlying transport/parse failure, when
114
+ * present, is preserved on `.cause`.
115
+ *
116
+ * @see [`docs/errors.md`](../../docs/errors.md)
117
+ */
118
+ export class HonuaAuthError extends Error {
119
+ code;
120
+ cause;
121
+ constructor(code, message, options = {}) {
122
+ super(message);
123
+ this.name = "HonuaAuthError";
124
+ this.code = code;
125
+ this.cause = options.cause;
126
+ }
127
+ }
109
128
  /**
110
129
  * Thrown when an `ExplorationContext` operation is invalid — for example,
111
130
  * dispatching an intent against a context that has been disposed, restoring
@@ -147,6 +166,7 @@ export function isHonuaError(error) {
147
166
  error instanceof HonuaNetworkError ||
148
167
  error instanceof HonuaAbortError ||
149
168
  error instanceof HonuaGrpcError ||
169
+ error instanceof HonuaAuthError ||
150
170
  error instanceof HonuaCapabilityNotSupportedError ||
151
171
  error instanceof HonuaExplorationContextError ||
152
172
  error instanceof HonuaWfsExceptionError ||