@honua/react 0.1.7-beta.0 → 0.1.9-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.
- package/control-plane/admin-client.d.ts +87 -0
- package/control-plane/admin-client.d.ts.map +1 -0
- package/control-plane/admin-client.js +169 -0
- package/control-plane/client.d.ts.map +1 -1
- package/control-plane/client.js +21 -3
- package/control-plane/commands/catalog.d.ts +133 -0
- package/control-plane/commands/catalog.d.ts.map +1 -0
- package/control-plane/commands/catalog.js +353 -0
- package/control-plane/commands/errors.d.ts +96 -0
- package/control-plane/commands/errors.d.ts.map +1 -0
- package/control-plane/commands/errors.js +130 -0
- package/control-plane/commands/identity.d.ts +71 -0
- package/control-plane/commands/identity.d.ts.map +1 -0
- package/control-plane/commands/identity.js +0 -0
- package/control-plane/commands/index.d.ts +39 -0
- package/control-plane/commands/index.d.ts.map +1 -0
- package/control-plane/commands/index.js +34 -0
- package/control-plane/commands/runtime.d.ts +146 -0
- package/control-plane/commands/runtime.d.ts.map +1 -0
- package/control-plane/commands/runtime.js +318 -0
- package/control-plane/commands/types.d.ts +226 -0
- package/control-plane/commands/types.d.ts.map +1 -0
- package/control-plane/commands/types.js +30 -0
- package/control-plane/commands/validate.d.ts +27 -0
- package/control-plane/commands/validate.d.ts.map +1 -0
- package/control-plane/commands/validate.js +132 -0
- package/control-plane/generated/admin-api.d.ts +30263 -0
- package/control-plane/generated/admin-api.d.ts.map +1 -0
- package/control-plane/generated/admin-api.js +5 -0
- package/control-plane/generated/admin-operations.d.ts +4053 -0
- package/control-plane/generated/admin-operations.d.ts.map +1 -0
- package/control-plane/generated/admin-operations.js +820 -0
- package/control-plane/index.d.ts +11 -0
- package/control-plane/index.d.ts.map +1 -1
- package/control-plane/index.js +8 -0
- package/control-plane/types.d.ts +14 -0
- package/control-plane/types.d.ts.map +1 -1
- package/core/client.js +1 -1
- package/core/credential-redaction.d.ts +163 -0
- package/core/credential-redaction.d.ts.map +1 -0
- package/core/credential-redaction.js +389 -0
- package/core/error-classifications.d.ts +15 -0
- package/core/error-classifications.d.ts.map +1 -1
- package/core/error-classifications.js +15 -0
- package/core/error-code-registry.d.ts +15 -0
- package/core/error-code-registry.d.ts.map +1 -1
- package/core/error-code-registry.js +15 -0
- package/core/grpc-adapter.d.ts +2 -2
- package/core/grpc-adapter.d.ts.map +1 -1
- package/core/grpc-adapter.js +30 -6
- package/core/job-run-errors.d.ts +10 -0
- package/core/job-run-errors.d.ts.map +1 -0
- package/core/job-run-errors.js +14 -0
- package/core/job-run-lifecycle.d.ts +34 -0
- package/core/job-run-lifecycle.d.ts.map +1 -0
- package/core/job-run-lifecycle.js +193 -0
- package/core/ogc-processes.d.ts +38 -31
- package/core/ogc-processes.d.ts.map +1 -1
- package/core/ogc-processes.js +123 -173
- package/core/process-runner.js +15 -100
- package/core/surfaces.d.ts +2 -8
- package/core/surfaces.d.ts.map +1 -1
- package/core/surfaces.js +21 -112
- package/core/types.d.ts +7 -6
- package/core/types.d.ts.map +1 -1
- package/gen/geospatial/v1/common_pb.d.ts +514 -0
- package/gen/geospatial/v1/common_pb.d.ts.map +1 -0
- package/gen/geospatial/v1/common_pb.js +335 -0
- package/gen/geospatial/v1/execution_types_pb.d.ts +1186 -0
- package/gen/geospatial/v1/execution_types_pb.d.ts.map +1 -0
- package/gen/geospatial/v1/execution_types_pb.js +396 -0
- package/gen/geospatial/v1/feature_service_pb.d.ts +403 -0
- package/gen/geospatial/v1/feature_service_pb.d.ts.map +1 -0
- package/gen/geospatial/v1/feature_service_pb.js +47 -0
- package/gen/geospatial/v1/index.d.ts +5 -0
- package/gen/geospatial/v1/index.d.ts.map +1 -0
- package/gen/geospatial/v1/index.js +9 -0
- package/gen/geospatial/v1/spatial_types_pb.d.ts +285 -0
- package/gen/geospatial/v1/spatial_types_pb.d.ts.map +1 -0
- package/gen/geospatial/v1/spatial_types_pb.js +58 -0
- package/gen/geospatial/v1/workspace_artifact_types_pb.d.ts +379 -0
- package/gen/geospatial/v1/workspace_artifact_types_pb.d.ts.map +1 -0
- package/gen/geospatial/v1/workspace_artifact_types_pb.js +151 -0
- package/generated-app/projection.d.ts.map +1 -1
- package/generated-app/projection.js +10 -1
- package/package.json +2 -2
- package/query-planner/grpc.d.ts +4 -4
- package/query-planner/grpc.d.ts.map +1 -1
- package/query-planner/grpc.js +11 -11
- package/query-planner/types.d.ts +4 -4
- package/query-planner/types.d.ts.map +1 -1
- package/runtime/errors.d.ts +1 -1
- package/runtime/errors.d.ts.map +1 -1
- package/runtime/errors.js +2 -0
- package/runtime/generated/map-package-schema-meta.d.ts +11 -0
- package/runtime/generated/map-package-schema-meta.d.ts.map +1 -0
- package/runtime/generated/map-package-schema-meta.js +12 -0
- package/runtime/generated/map-package-schema-validator.d.ts +16 -0
- package/runtime/generated/map-package-schema-validator.d.ts.map +1 -0
- package/runtime/generated/map-package-schema-validator.js +1422 -0
- package/runtime/index.d.ts +5 -1
- package/runtime/index.d.ts.map +1 -1
- package/runtime/index.js +6 -0
- package/runtime/map-package-export.d.ts +151 -0
- package/runtime/map-package-export.d.ts.map +1 -0
- package/runtime/map-package-export.js +636 -0
- package/runtime/map-package-validation.d.ts +21 -1
- package/runtime/map-package-validation.d.ts.map +1 -1
- package/runtime/map-package-validation.js +132 -95
- package/runtime/map-package.d.ts +80 -0
- package/runtime/map-package.d.ts.map +1 -1
- package/studio/chart-spec.d.ts +6 -6
- package/studio/chart-spec.d.ts.map +1 -1
- package/studio/chart-spec.js +6 -6
- package/studio/index.d.ts +17 -7
- package/studio/index.d.ts.map +1 -1
- package/studio/index.js +15 -5
- package/studio/lifecycle-client.d.ts +262 -22
- package/studio/lifecycle-client.d.ts.map +1 -1
- package/studio/lifecycle-client.js +524 -24
- package/studio/lifecycle-errors.d.ts +8 -2
- package/studio/lifecycle-errors.d.ts.map +1 -1
- package/studio/lifecycle-errors.js +6 -1
- package/studio/lifecycle-types.d.ts +228 -8
- package/studio/lifecycle-types.d.ts.map +1 -1
- package/studio/publication-status.d.ts +55 -0
- package/studio/publication-status.d.ts.map +1 -0
- package/studio/publication-status.js +103 -0
- package/gen/honua/v1/feature_service_pb.d.ts +0 -918
- package/gen/honua/v1/feature_service_pb.d.ts.map +0 -1
- package/gen/honua/v1/feature_service_pb.js +0 -375
package/control-plane/index.d.ts
CHANGED
|
@@ -6,12 +6,23 @@
|
|
|
6
6
|
* tokens, workspaces, connections, and sharing, with typed handoff through
|
|
7
7
|
* MapPackage locators and SourceDescriptor-compatible shapes.
|
|
8
8
|
*
|
|
9
|
+
* It also owns the shared application-command layer (`./commands/index.js`):
|
|
10
|
+
* one typed, idempotent command set that the CLI, MCP, Studio, and direct JS
|
|
11
|
+
* all dispatch through, so no surface reimplements domain sequencing or
|
|
12
|
+
* authorization policy.
|
|
13
|
+
*
|
|
9
14
|
* @experimental This entrypoint is not yet covered by the SDK's semver contract
|
|
10
15
|
* — the surface may change in any minor release prior to `1.0.0`.
|
|
11
16
|
* @module
|
|
12
17
|
*/
|
|
13
18
|
export { HonuaApiTokensClient, HonuaConnectionsClient, HonuaControlPlaneClient, HonuaControlPlaneJobHandle, HonuaHostedMapsClient, HonuaImportsClient, HonuaMapPackagesClient, HonuaSharingClient, HonuaWorkspacesClient, createHonuaControlPlane, } from "./client.js";
|
|
14
19
|
export type { HonuaControlPlaneClientOptions } from "./client.js";
|
|
20
|
+
export * from "./commands/index.js";
|
|
21
|
+
export { HonuaAdminApiError, HonuaAdminClient, createHonuaAdminClient, } from "./admin-client.js";
|
|
22
|
+
export type { AdminClientOptions, AdminOperationContentType, AdminOperationRequest, AdminOperationRequestBody, AdminOperationResponse, AdminOperationResult, } from "./admin-client.js";
|
|
23
|
+
export { ADMIN_API_BASE_PATH, ADMIN_API_OPERATION_COUNT, ADMIN_API_SERVER_SHA, ADMIN_API_SPEC_SHA256, ADMIN_MCP_CONTRACT_SERVER_SHA, ADMIN_MCP_CONTRACT_REVIEW_SERVER_SHA, ADMIN_MCP_CONTRACT_STATUS, ADMIN_MCP_COVERAGE_SHA256, ADMIN_MCP_EXCLUDED_OPERATION_COUNT, ADMIN_MCP_EXCLUDED_OPERATIONS, ADMIN_MCP_EXCLUSION_ROSTER_SHA256, ADMIN_MCP_PUBLISHED_TOOL_NAMES, ADMIN_OPERATIONS, ADMIN_PUBLISHED_OPERATION_COUNT, ADMIN_RELEASE_CONTRACT_COMPATIBLE, ADMIN_RELEASE_CONTRACT_STATUS, ADMIN_RELEASE_OPERATION_COUNT, ADMIN_RELEASE_SERVER_SHA, MCP_DEFAULT_STATIC_TOOL_COUNT, MCP_DEFAULT_TOTAL_TOOL_COUNT, } from "./generated/admin-operations.js";
|
|
24
|
+
export type { AdminMcpExcludedOperation, AdminMcpPublishedToolName, AdminOperationDescriptor, AdminOperationId, } from "./generated/admin-operations.js";
|
|
25
|
+
export type { components as AdminApiComponents, operations as AdminApiOperations } from "./generated/admin-api.js";
|
|
15
26
|
export type { StudioCapabilityManifest } from "../studio/capability-manifest.js";
|
|
16
27
|
export { HONUA_CAPABILITY_MANIFEST_PATH, HONUA_CONTROL_PLANE_BASE_PATH } from "./types.js";
|
|
17
28
|
export type { HonuaApiToken, HonuaApiTokenCreateRequest, HonuaCapabilityManifestOptions, HonuaConnectionSummary, HonuaControlPlaneCapability, HonuaControlPlaneJob, HonuaControlPlaneJobStatus, HonuaControlPlaneLinks, HonuaControlPlaneListOptions, HonuaControlPlanePage, HonuaControlPlaneRawRequest, HonuaControlPlaneRequestOptions, HonuaControlPlaneResult, HonuaControlPlaneSourceDescriptor, HonuaControlPlaneSuccess, HonuaControlPlaneUnsupported, HonuaCreateHostedMapRequest, HonuaEntityValidators, HonuaHostedMap, HonuaHostedMapSummary, HonuaImportCreateRequest, HonuaMapPackageSummary, HonuaProblemDetails, HonuaPublishMapPackageRequest, HonuaPublishMapPackageResponse, HonuaShareRequest, HonuaShareResponse, HonuaUpdateHostedMapRequest, HonuaWorkspaceSummary, } from "./types.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/control-plane/index.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/control-plane/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EACL,oBAAoB,EACpB,sBAAsB,EACtB,uBAAuB,EACvB,0BAA0B,EAC1B,qBAAqB,EACrB,kBAAkB,EAClB,sBAAsB,EACtB,kBAAkB,EAClB,qBAAqB,EACrB,uBAAuB,GACxB,MAAM,aAAa,CAAC;AACrB,YAAY,EAAE,8BAA8B,EAAE,MAAM,aAAa,CAAC;AAClE,cAAc,qBAAqB,CAAC;AACpC,OAAO,EACL,kBAAkB,EAClB,gBAAgB,EAChB,sBAAsB,GACvB,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EACV,kBAAkB,EAClB,yBAAyB,EACzB,qBAAqB,EACrB,yBAAyB,EACzB,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,mBAAmB,EACnB,yBAAyB,EACzB,oBAAoB,EACpB,qBAAqB,EACrB,6BAA6B,EAC7B,oCAAoC,EACpC,yBAAyB,EACzB,yBAAyB,EACzB,kCAAkC,EAClC,6BAA6B,EAC7B,iCAAiC,EACjC,8BAA8B,EAC9B,gBAAgB,EAChB,+BAA+B,EAC/B,iCAAiC,EACjC,6BAA6B,EAC7B,6BAA6B,EAC7B,wBAAwB,EACxB,6BAA6B,EAC7B,4BAA4B,GAC7B,MAAM,iCAAiC,CAAC;AACzC,YAAY,EACV,yBAAyB,EACzB,yBAAyB,EACzB,wBAAwB,EACxB,gBAAgB,GACjB,MAAM,iCAAiC,CAAC;AACzC,YAAY,EAAE,UAAU,IAAI,kBAAkB,EAAE,UAAU,IAAI,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AACnH,YAAY,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AACjF,OAAO,EAAE,8BAA8B,EAAE,6BAA6B,EAAE,MAAM,YAAY,CAAC;AAC3F,YAAY,EACV,aAAa,EACb,0BAA0B,EAC1B,8BAA8B,EAC9B,sBAAsB,EACtB,2BAA2B,EAC3B,oBAAoB,EACpB,0BAA0B,EAC1B,sBAAsB,EACtB,4BAA4B,EAC5B,qBAAqB,EACrB,2BAA2B,EAC3B,+BAA+B,EAC/B,uBAAuB,EACvB,iCAAiC,EACjC,wBAAwB,EACxB,4BAA4B,EAC5B,2BAA2B,EAC3B,qBAAqB,EACrB,cAAc,EACd,qBAAqB,EACrB,wBAAwB,EACxB,sBAAsB,EACtB,mBAAmB,EACnB,6BAA6B,EAC7B,8BAA8B,EAC9B,iBAAiB,EACjB,kBAAkB,EAClB,2BAA2B,EAC3B,qBAAqB,GACtB,MAAM,YAAY,CAAC"}
|
package/control-plane/index.js
CHANGED
|
@@ -6,9 +6,17 @@
|
|
|
6
6
|
* tokens, workspaces, connections, and sharing, with typed handoff through
|
|
7
7
|
* MapPackage locators and SourceDescriptor-compatible shapes.
|
|
8
8
|
*
|
|
9
|
+
* It also owns the shared application-command layer (`./commands/index.js`):
|
|
10
|
+
* one typed, idempotent command set that the CLI, MCP, Studio, and direct JS
|
|
11
|
+
* all dispatch through, so no surface reimplements domain sequencing or
|
|
12
|
+
* authorization policy.
|
|
13
|
+
*
|
|
9
14
|
* @experimental This entrypoint is not yet covered by the SDK's semver contract
|
|
10
15
|
* — the surface may change in any minor release prior to `1.0.0`.
|
|
11
16
|
* @module
|
|
12
17
|
*/
|
|
13
18
|
export { HonuaApiTokensClient, HonuaConnectionsClient, HonuaControlPlaneClient, HonuaControlPlaneJobHandle, HonuaHostedMapsClient, HonuaImportsClient, HonuaMapPackagesClient, HonuaSharingClient, HonuaWorkspacesClient, createHonuaControlPlane, } from "./client.js";
|
|
19
|
+
export * from "./commands/index.js";
|
|
20
|
+
export { HonuaAdminApiError, HonuaAdminClient, createHonuaAdminClient, } from "./admin-client.js";
|
|
21
|
+
export { ADMIN_API_BASE_PATH, ADMIN_API_OPERATION_COUNT, ADMIN_API_SERVER_SHA, ADMIN_API_SPEC_SHA256, ADMIN_MCP_CONTRACT_SERVER_SHA, ADMIN_MCP_CONTRACT_REVIEW_SERVER_SHA, ADMIN_MCP_CONTRACT_STATUS, ADMIN_MCP_COVERAGE_SHA256, ADMIN_MCP_EXCLUDED_OPERATION_COUNT, ADMIN_MCP_EXCLUDED_OPERATIONS, ADMIN_MCP_EXCLUSION_ROSTER_SHA256, ADMIN_MCP_PUBLISHED_TOOL_NAMES, ADMIN_OPERATIONS, ADMIN_PUBLISHED_OPERATION_COUNT, ADMIN_RELEASE_CONTRACT_COMPATIBLE, ADMIN_RELEASE_CONTRACT_STATUS, ADMIN_RELEASE_OPERATION_COUNT, ADMIN_RELEASE_SERVER_SHA, MCP_DEFAULT_STATIC_TOOL_COUNT, MCP_DEFAULT_TOTAL_TOOL_COUNT, } from "./generated/admin-operations.js";
|
|
14
22
|
export { HONUA_CAPABILITY_MANIFEST_PATH, HONUA_CONTROL_PLANE_BASE_PATH } from "./types.js";
|
package/control-plane/types.d.ts
CHANGED
|
@@ -42,6 +42,20 @@ export type HonuaControlPlaneResult<T> = HonuaControlPlaneSuccess<T> | HonuaCont
|
|
|
42
42
|
export interface HonuaControlPlaneRequestOptions {
|
|
43
43
|
readonly signal?: AbortSignal;
|
|
44
44
|
readonly headers?: HeadersInit;
|
|
45
|
+
/**
|
|
46
|
+
* Sent as the `Idempotency-Key` request header. Lets a retried mutation
|
|
47
|
+
* collapse to one server-side effect. The shared command layer
|
|
48
|
+
* (`./commands/index.js`) derives one deterministically from the command id,
|
|
49
|
+
* the canonicalized input, and the tenant so the same logical request is
|
|
50
|
+
* idempotent across the CLI, MCP, Studio, and direct JS.
|
|
51
|
+
*/
|
|
52
|
+
readonly idempotencyKey?: string;
|
|
53
|
+
/**
|
|
54
|
+
* Sent as the `If-Match` request header — the optimistic-concurrency
|
|
55
|
+
* validator from a prior {@link HonuaEntityValidators}. An explicit
|
|
56
|
+
* `headers` entry of the same name still wins.
|
|
57
|
+
*/
|
|
58
|
+
readonly ifMatch?: string;
|
|
45
59
|
}
|
|
46
60
|
export interface HonuaControlPlaneListOptions extends HonuaControlPlaneRequestOptions {
|
|
47
61
|
readonly cursor?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/control-plane/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAClG,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAClE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAE3D,eAAO,MAAM,6BAA6B,EAAG,eAAwB,CAAC;AAEtE;;;;GAIG;AACH,eAAO,MAAM,8BAA8B,EAAG,+BAAwC,CAAC;AAEvF,MAAM,MAAM,2BAA2B,GACnC,aAAa,GACb,cAAc,GACd,SAAS,GACT,YAAY,GACZ,YAAY,GACZ,aAAa,GACb,SAAS,GACT,cAAc,GACd,KAAK,CAAC;AAEV,yEAAyE;AACzE,MAAM,WAAW,8BAA+B,SAAQ,+BAA+B;IACrF,oFAAoF;IACpF,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,8DAA8D;IAC9D,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAAC;IACpD,QAAQ,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC;CACnC;AAED,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,SAAS,EAAE,KAAK,CAAC;IAC1B,QAAQ,CAAC,UAAU,EAAE,2BAA2B,CAAC;IACjD,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,CAAC,EAAE,mBAAmB,CAAC;CACxC;AAED,MAAM,WAAW,wBAAwB,CAAC,CAAC;IACzC,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;CACnB;AAED,MAAM,MAAM,uBAAuB,CAAC,CAAC,IAAI,wBAAwB,CAAC,CAAC,CAAC,GAAG,4BAA4B,CAAC;AAEpG,MAAM,WAAW,+BAA+B;IAC9C,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;IAC9B,QAAQ,CAAC,OAAO,CAAC,EAAE,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/control-plane/types.ts"],"names":[],"mappings":"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"}
|
package/core/client.js
CHANGED
|
@@ -311,7 +311,7 @@ export class HonuaClient {
|
|
|
311
311
|
initPromise = Promise.all([
|
|
312
312
|
import("@connectrpc/connect"),
|
|
313
313
|
import("@connectrpc/connect-web"),
|
|
314
|
-
import("../gen/
|
|
314
|
+
import("../gen/geospatial/v1/feature_service_pb.js"),
|
|
315
315
|
]).then(([{ createClient }, { createGrpcWebTransport }, { FeatureService }]) => {
|
|
316
316
|
const transport = createGrpcWebTransport(this.connectTransportOptions());
|
|
317
317
|
this.connectClient = createClient(FeatureService, transport);
|
|
@@ -0,0 +1,163 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Credential-recognition and redaction primitives shared by every Honua export
|
|
3
|
+
* pipeline.
|
|
4
|
+
*
|
|
5
|
+
* These were extracted verbatim from `src/web-components/export-redaction.ts`
|
|
6
|
+
* (issue #683) when the runtime's portable MapPackage export (#1426) needed the
|
|
7
|
+
* same scanner. There must be exactly one credential recognizer in this SDK: a
|
|
8
|
+
* second copy would drift, and the copy that drifts is the one that leaks. The
|
|
9
|
+
* web-components module re-exports every symbol below so its published surface
|
|
10
|
+
* is unchanged, and keeps the app-platform-specific state projection that
|
|
11
|
+
* layers on top of these primitives.
|
|
12
|
+
*
|
|
13
|
+
* This module lives in `src/core` rather than `src/web-components` because
|
|
14
|
+
* `src/runtime` ships in the stable-tier `@honua/sdk` split package while
|
|
15
|
+
* `src/web-components` ships in `@honua/app-platform`; the runtime cannot
|
|
16
|
+
* reach across that boundary (`scripts/prepare-split-packages.mjs`).
|
|
17
|
+
*
|
|
18
|
+
* Deliberately dependency-free apart from the SDK's shared error base: no
|
|
19
|
+
* `node:crypto`, no DOM, no renderer. Safe in a browser, a worker, or an SSR
|
|
20
|
+
* render pass.
|
|
21
|
+
*
|
|
22
|
+
* @module
|
|
23
|
+
*/
|
|
24
|
+
import { HonuaSdkError } from "./error-envelope.js";
|
|
25
|
+
/** Placeholder substituted for any value the export pipeline refuses to emit. */
|
|
26
|
+
export declare const HONUA_EXPORT_REDACTED = "[REDACTED]";
|
|
27
|
+
/** Why a value was withheld from an export. */
|
|
28
|
+
export type HonuaExportRedactionReason =
|
|
29
|
+
/** The property name itself named a credential (`token`, `apiKey`, `cookie`, ...). */
|
|
30
|
+
"sensitive-key"
|
|
31
|
+
/** A URL carried a signature, SAS, or token query parameter, or embedded userinfo. */
|
|
32
|
+
| "signed-url"
|
|
33
|
+
/** A free-text value matched a credential shape (bearer token, JWT, provider key, ...). */
|
|
34
|
+
| "credential-pattern"
|
|
35
|
+
/** A request-header map was dropped because it is not on the export allowlist. */
|
|
36
|
+
| "private-header"
|
|
37
|
+
/** OAuth/authorization scope, audience, tenant, or grant detail. */
|
|
38
|
+
| "authorization-scope"
|
|
39
|
+
/** A source explicitly marked as not exportable by the plan or the source itself. */
|
|
40
|
+
| "non-exportable-source"
|
|
41
|
+
/**
|
|
42
|
+
* A pointer to where the artifact is hosted or published (`links`, `href`,
|
|
43
|
+
* `publicationUrl`, `embedUrl`, ...). Not a secret — a claim. An exporter
|
|
44
|
+
* that cannot tell whether the thing it is exporting was ever persisted or
|
|
45
|
+
* published must not carry a URL that says it was.
|
|
46
|
+
*/
|
|
47
|
+
| "publication-pointer"
|
|
48
|
+
/** A value could not be represented safely (unserializable, cyclic, over budget). */
|
|
49
|
+
| "unsupported-value";
|
|
50
|
+
/** One withheld value, addressed by its path in the sanitized document. */
|
|
51
|
+
export interface HonuaExportRedaction {
|
|
52
|
+
/** Dotted/bracketed path in the *sanitized* document, e.g. `sources[0].endpoint`. */
|
|
53
|
+
readonly path: string;
|
|
54
|
+
readonly reason: HonuaExportRedactionReason;
|
|
55
|
+
}
|
|
56
|
+
/** Thrown when the export pipeline cannot produce a provably credential-free artifact. */
|
|
57
|
+
export declare class HonuaExportSafetyError extends HonuaSdkError {
|
|
58
|
+
readonly reason: HonuaExportRedactionReason | "assertion";
|
|
59
|
+
constructor(message: string, reason?: HonuaExportRedactionReason | "assertion");
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Redacts credential material from arbitrary human-readable text: adapter
|
|
63
|
+
* error messages, titles, status strings, log lines, event detail messages.
|
|
64
|
+
*
|
|
65
|
+
* Percent-encoded payloads are decoded (twice, bounded) before matching so a
|
|
66
|
+
* `%42earer%20abc` style evasion cannot slip a token past the scan; the
|
|
67
|
+
* returned string is the redacted *decoded* form when decoding changed
|
|
68
|
+
* anything, because emitting the still-encoded original would defeat the
|
|
69
|
+
* point.
|
|
70
|
+
*/
|
|
71
|
+
export declare function redactHonuaExportText(value: string): string;
|
|
72
|
+
/** Whether `value` still looks like it carries credential material. */
|
|
73
|
+
export declare function containsCredentialMaterial(value: string): boolean;
|
|
74
|
+
/**
|
|
75
|
+
* Fail-closed assertion for finished export payloads (REQ-002). Throws
|
|
76
|
+
* {@link HonuaExportSafetyError} rather than scrubbing, because reaching this
|
|
77
|
+
* point with credential material means an earlier layer is broken.
|
|
78
|
+
*/
|
|
79
|
+
export declare function assertCredentialFreeExportText(value: string, label: string): void;
|
|
80
|
+
/**
|
|
81
|
+
* Extracts runs of printable ASCII from a binary buffer, joined by newlines.
|
|
82
|
+
*
|
|
83
|
+
* This is the `strings(1)` idea, and it exists because "binary" is not a
|
|
84
|
+
* security boundary. A PNG `tEXt`/`iTXt` chunk, a JPEG `COM` marker, PDF
|
|
85
|
+
* metadata or an embedded XMP packet, an EXIF `UserComment`, a ZIP comment —
|
|
86
|
+
* all carry plainly readable text inside a buffer that will never decode as
|
|
87
|
+
* UTF-8 as a whole. Scanning only whole-buffer-decodable artifacts would let a
|
|
88
|
+
* token ride out inside any of them.
|
|
89
|
+
*
|
|
90
|
+
* Runs shorter than {@link MIN_PRINTABLE_RUN} are dropped: they are the
|
|
91
|
+
* incidental byte values that fall in the ASCII range inside compressed data,
|
|
92
|
+
* and keeping them would produce noise without ever forming a credential.
|
|
93
|
+
*/
|
|
94
|
+
export declare function extractPrintableRuns(bytes: Uint8Array, start?: number, end?: number): string;
|
|
95
|
+
/**
|
|
96
|
+
* Fail-closed credential scan over a binary artifact (REQ-002).
|
|
97
|
+
*
|
|
98
|
+
* Scans in bounded chunks with an overlap, so an arbitrarily large artifact
|
|
99
|
+
* costs bounded memory while a token that straddles a chunk boundary is still
|
|
100
|
+
* caught. Throws {@link HonuaExportSafetyError} on a hit, like the text scan —
|
|
101
|
+
* a credential surviving to this point means an earlier layer is broken, and
|
|
102
|
+
* emitting the bytes anyway is the one outcome that cannot be walked back.
|
|
103
|
+
*/
|
|
104
|
+
export declare function assertCredentialFreeExportBytes(bytes: Uint8Array, label: string): void;
|
|
105
|
+
/** Result of reducing an endpoint URL to its exportable form. */
|
|
106
|
+
export interface HonuaExportEndpointProjection {
|
|
107
|
+
/** `scheme://host[:port]/path` with query, fragment, and userinfo removed, or `undefined` when nothing is safe to emit. */
|
|
108
|
+
readonly endpoint: string | undefined;
|
|
109
|
+
readonly reason?: HonuaExportRedactionReason;
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* Reduces a source URL to `origin + pathname`, always dropping the query
|
|
113
|
+
* string and fragment.
|
|
114
|
+
*
|
|
115
|
+
* Query strings are where every practical map-service credential lives (Esri
|
|
116
|
+
* `?token=`, Azure SAS `?sv=...&sig=`, S3/GCS presigned `?X-Amz-Signature=`,
|
|
117
|
+
* tile-provider `?api_key=`), and a partial per-parameter allowlist has to be
|
|
118
|
+
* right about every provider forever. Dropping the whole query is the only
|
|
119
|
+
* rule that is right by construction; the origin+path that remains is what an
|
|
120
|
+
* attribution/provenance block legitimately needs.
|
|
121
|
+
*
|
|
122
|
+
* Non-HTTP(S) schemes (`data:`, `blob:`, `file:`), URLs with embedded
|
|
123
|
+
* `user:password@` userinfo, and unparseable strings yield no endpoint at all.
|
|
124
|
+
*/
|
|
125
|
+
export declare function projectExportEndpoint(url: string): HonuaExportEndpointProjection;
|
|
126
|
+
/** Result of removing credential material from a URL while keeping it usable. */
|
|
127
|
+
export interface HonuaUrlCredentialStrip {
|
|
128
|
+
/** The URL with credentials removed, or `undefined` when nothing is safe to emit. */
|
|
129
|
+
readonly url: string | undefined;
|
|
130
|
+
readonly reason?: HonuaExportRedactionReason;
|
|
131
|
+
}
|
|
132
|
+
/**
|
|
133
|
+
* Removes credential material from a URL while leaving the URL *functional*.
|
|
134
|
+
*
|
|
135
|
+
* This is the counterpart to {@link projectExportEndpoint}, not a replacement
|
|
136
|
+
* for it. `projectExportEndpoint` reduces a URL to origin+path for a
|
|
137
|
+
* provenance/attribution block, where the query is never needed and dropping
|
|
138
|
+
* all of it is right by construction. That rule cannot be used on a URL the
|
|
139
|
+
* artifact still has to *fetch*: an OGC WMS `GetMap` request, an Esri
|
|
140
|
+
* `?f=json` endpoint, and a tile template with `?format=pbf` all carry their
|
|
141
|
+
* operation in the query string, and a portable map that lost it would import
|
|
142
|
+
* as a map that no longer renders.
|
|
143
|
+
*
|
|
144
|
+
* So this function removes exactly what is credential-bearing — `user:pass@`
|
|
145
|
+
* userinfo, and query parameters whose *name* reads as a secret or a
|
|
146
|
+
* signature — and then re-scans the remainder, refusing to emit anything that
|
|
147
|
+
* still looks like it carries a token. Non-HTTP(S) schemes are refused
|
|
148
|
+
* outright; `data:` payloads are handled by the caller, which can bound and
|
|
149
|
+
* scan the decoded bytes with {@link assertCredentialFreeExportBytes}.
|
|
150
|
+
*/
|
|
151
|
+
export declare function stripCredentialsFromUrl(url: string): HonuaUrlCredentialStrip;
|
|
152
|
+
/**
|
|
153
|
+
* Filters a header map down to the export allowlist, recording every drop.
|
|
154
|
+
* Exposed so adapters can prove — in their own tests — that no `Authorization`,
|
|
155
|
+
* `Cookie`, or provider-specific key header rides along with export metadata.
|
|
156
|
+
*/
|
|
157
|
+
export declare function sanitizeHonuaExportHeaders(headers: Readonly<Record<string, string>> | undefined): {
|
|
158
|
+
headers: Readonly<Record<string, string>>;
|
|
159
|
+
redactions: readonly HonuaExportRedaction[];
|
|
160
|
+
};
|
|
161
|
+
/** Whether a property name is refused outright by the export pipeline. */
|
|
162
|
+
export declare function isSensitiveExportKey(name: string): boolean;
|
|
163
|
+
//# sourceMappingURL=credential-redaction.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"credential-redaction.d.ts","sourceRoot":"","sources":["../../../src/core/credential-redaction.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,iFAAiF;AACjF,eAAO,MAAM,qBAAqB,eAAe,CAAC;AAElD,+CAA+C;AAC/C,MAAM,MAAM,0BAA0B;AACpC,sFAAsF;AACpF,eAAe;AACjB,sFAAsF;GACpF,YAAY;AACd,2FAA2F;GACzF,oBAAoB;AACtB,kFAAkF;GAChF,gBAAgB;AAClB,oEAAoE;GAClE,qBAAqB;AACvB,qFAAqF;GACnF,uBAAuB;AACzB;;;;;GAKG;GACD,qBAAqB;AACvB,qFAAqF;GACnF,mBAAmB,CAAC;AAExB,2EAA2E;AAC3E,MAAM,WAAW,oBAAoB;IACnC,qFAAqF;IACrF,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,0BAA0B,CAAC;CAC7C;AAED,0FAA0F;AAC1F,qBAAa,sBAAuB,SAAQ,aAAa;IACvD,SAAgB,MAAM,EAAE,0BAA0B,GAAG,WAAW,CAAC;gBAE9C,OAAO,EAAE,MAAM,EAAE,MAAM,GAAE,0BAA0B,GAAG,WAAyB;CAKnG;AA4FD;;;;;;;;;GASG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAO3D;AAED,uEAAuE;AACvE,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAEjE;AAED;;;;GAIG;AACH,wBAAgB,8BAA8B,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAOjF;AAgBD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,UAAU,EAAE,KAAK,SAAI,EAAE,GAAG,SAAmB,GAAG,MAAM,CAiBjG;AAED;;;;;;;;GAQG;AACH,wBAAgB,+BAA+B,CAAC,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAStF;AAID,iEAAiE;AACjE,MAAM,WAAW,6BAA6B;IAC5C,2HAA2H;IAC3H,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;IACtC,QAAQ,CAAC,MAAM,CAAC,EAAE,0BAA0B,CAAC;CAC9C;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,6BAA6B,CAiChF;AAED,iFAAiF;AACjF,MAAM,WAAW,uBAAuB;IACtC,qFAAqF;IACrF,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,QAAQ,CAAC,MAAM,CAAC,EAAE,0BAA0B,CAAC;CAC9C;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,MAAM,GAAG,uBAAuB,CA4D5E;AAuBD;;;;GAIG;AACH,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAAG,SAAS,GAAG;IACjG,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAC1C,UAAU,EAAE,SAAS,oBAAoB,EAAE,CAAC;CAC7C,CAoBA;AAED,0EAA0E;AAC1E,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAE1D"}
|