@honua/react 0.1.4-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.
Files changed (157) hide show
  1. package/contract/types.d.ts +1 -1
  2. package/contract/types.d.ts.map +1 -1
  3. package/contract/types.js +4 -0
  4. package/control-plane/admin-client.d.ts +87 -0
  5. package/control-plane/admin-client.d.ts.map +1 -0
  6. package/control-plane/admin-client.js +169 -0
  7. package/control-plane/client.d.ts.map +1 -1
  8. package/control-plane/client.js +21 -3
  9. package/control-plane/commands/catalog.d.ts +133 -0
  10. package/control-plane/commands/catalog.d.ts.map +1 -0
  11. package/control-plane/commands/catalog.js +353 -0
  12. package/control-plane/commands/errors.d.ts +96 -0
  13. package/control-plane/commands/errors.d.ts.map +1 -0
  14. package/control-plane/commands/errors.js +130 -0
  15. package/control-plane/commands/identity.d.ts +71 -0
  16. package/control-plane/commands/identity.d.ts.map +1 -0
  17. package/control-plane/commands/identity.js +0 -0
  18. package/control-plane/commands/index.d.ts +39 -0
  19. package/control-plane/commands/index.d.ts.map +1 -0
  20. package/control-plane/commands/index.js +34 -0
  21. package/control-plane/commands/runtime.d.ts +146 -0
  22. package/control-plane/commands/runtime.d.ts.map +1 -0
  23. package/control-plane/commands/runtime.js +318 -0
  24. package/control-plane/commands/types.d.ts +226 -0
  25. package/control-plane/commands/types.d.ts.map +1 -0
  26. package/control-plane/commands/types.js +30 -0
  27. package/control-plane/commands/validate.d.ts +27 -0
  28. package/control-plane/commands/validate.d.ts.map +1 -0
  29. package/control-plane/commands/validate.js +132 -0
  30. package/control-plane/generated/admin-api.d.ts +30263 -0
  31. package/control-plane/generated/admin-api.d.ts.map +1 -0
  32. package/control-plane/generated/admin-api.js +5 -0
  33. package/control-plane/generated/admin-operations.d.ts +4053 -0
  34. package/control-plane/generated/admin-operations.d.ts.map +1 -0
  35. package/control-plane/generated/admin-operations.js +820 -0
  36. package/control-plane/index.d.ts +11 -0
  37. package/control-plane/index.d.ts.map +1 -1
  38. package/control-plane/index.js +8 -0
  39. package/control-plane/types.d.ts +14 -0
  40. package/control-plane/types.d.ts.map +1 -1
  41. package/core/client.d.ts +6 -0
  42. package/core/client.d.ts.map +1 -1
  43. package/core/client.js +12 -10
  44. package/core/credential-redaction.d.ts +163 -0
  45. package/core/credential-redaction.d.ts.map +1 -0
  46. package/core/credential-redaction.js +389 -0
  47. package/core/error-classifications.d.ts +32 -0
  48. package/core/error-classifications.d.ts.map +1 -1
  49. package/core/error-classifications.js +32 -0
  50. package/core/error-code-registry.d.ts +33 -1
  51. package/core/error-code-registry.d.ts.map +1 -1
  52. package/core/error-code-registry.js +32 -0
  53. package/core/errors.d.ts +1 -1
  54. package/core/errors.d.ts.map +1 -1
  55. package/core/geoparquet-sql.d.ts +1 -1
  56. package/core/geoparquet-sql.js +2 -2
  57. package/core/grpc-adapter.d.ts +2 -2
  58. package/core/grpc-adapter.d.ts.map +1 -1
  59. package/core/grpc-adapter.js +30 -6
  60. package/core/job-run-errors.d.ts +10 -0
  61. package/core/job-run-errors.d.ts.map +1 -0
  62. package/core/job-run-errors.js +14 -0
  63. package/core/job-run-lifecycle.d.ts +34 -0
  64. package/core/job-run-lifecycle.d.ts.map +1 -0
  65. package/core/job-run-lifecycle.js +193 -0
  66. package/core/ogc-processes.d.ts +38 -31
  67. package/core/ogc-processes.d.ts.map +1 -1
  68. package/core/ogc-processes.js +123 -173
  69. package/core/process-runner.js +15 -100
  70. package/core/stac.d.ts +2 -1
  71. package/core/stac.d.ts.map +1 -1
  72. package/core/stac.js +29 -11
  73. package/core/surfaces.d.ts +2 -8
  74. package/core/surfaces.d.ts.map +1 -1
  75. package/core/surfaces.js +21 -112
  76. package/core/types.d.ts +22 -8
  77. package/core/types.d.ts.map +1 -1
  78. package/gen/geospatial/v1/common_pb.d.ts +514 -0
  79. package/gen/geospatial/v1/common_pb.d.ts.map +1 -0
  80. package/gen/geospatial/v1/common_pb.js +335 -0
  81. package/gen/geospatial/v1/execution_types_pb.d.ts +1186 -0
  82. package/gen/geospatial/v1/execution_types_pb.d.ts.map +1 -0
  83. package/gen/geospatial/v1/execution_types_pb.js +396 -0
  84. package/gen/geospatial/v1/feature_service_pb.d.ts +403 -0
  85. package/gen/geospatial/v1/feature_service_pb.d.ts.map +1 -0
  86. package/gen/geospatial/v1/feature_service_pb.js +47 -0
  87. package/gen/geospatial/v1/index.d.ts +5 -0
  88. package/gen/geospatial/v1/index.d.ts.map +1 -0
  89. package/gen/geospatial/v1/index.js +9 -0
  90. package/gen/geospatial/v1/spatial_types_pb.d.ts +285 -0
  91. package/gen/geospatial/v1/spatial_types_pb.d.ts.map +1 -0
  92. package/gen/geospatial/v1/spatial_types_pb.js +58 -0
  93. package/gen/geospatial/v1/workspace_artifact_types_pb.d.ts +379 -0
  94. package/gen/geospatial/v1/workspace_artifact_types_pb.d.ts.map +1 -0
  95. package/gen/geospatial/v1/workspace_artifact_types_pb.js +151 -0
  96. package/generated-app/projection.d.ts.map +1 -1
  97. package/generated-app/projection.js +10 -1
  98. package/interactions/declarative-contract.d.ts +149 -0
  99. package/interactions/declarative-contract.d.ts.map +1 -0
  100. package/interactions/declarative-contract.js +293 -0
  101. package/interactions/declarative.d.ts +198 -0
  102. package/interactions/declarative.d.ts.map +1 -0
  103. package/interactions/declarative.js +470 -0
  104. package/interactions/feature-state.d.ts +7 -0
  105. package/interactions/feature-state.d.ts.map +1 -1
  106. package/interactions/feature-state.js +10 -2
  107. package/map/maplibre-target.js +1 -1
  108. package/package.json +2 -2
  109. package/query-planner/grpc.d.ts +4 -4
  110. package/query-planner/grpc.d.ts.map +1 -1
  111. package/query-planner/grpc.js +11 -11
  112. package/query-planner/types.d.ts +4 -4
  113. package/query-planner/types.d.ts.map +1 -1
  114. package/realtime/sse.d.ts.map +1 -1
  115. package/realtime/sse.js +7 -1
  116. package/runtime/errors.d.ts +1 -1
  117. package/runtime/errors.d.ts.map +1 -1
  118. package/runtime/errors.js +2 -0
  119. package/runtime/generated/map-package-schema-meta.d.ts +11 -0
  120. package/runtime/generated/map-package-schema-meta.d.ts.map +1 -0
  121. package/runtime/generated/map-package-schema-meta.js +12 -0
  122. package/runtime/generated/map-package-schema-validator.d.ts +16 -0
  123. package/runtime/generated/map-package-schema-validator.d.ts.map +1 -0
  124. package/runtime/generated/map-package-schema-validator.js +1422 -0
  125. package/runtime/index.d.ts +5 -1
  126. package/runtime/index.d.ts.map +1 -1
  127. package/runtime/index.js +6 -0
  128. package/runtime/map-package-export.d.ts +151 -0
  129. package/runtime/map-package-export.d.ts.map +1 -0
  130. package/runtime/map-package-export.js +636 -0
  131. package/runtime/map-package-validation.d.ts +21 -1
  132. package/runtime/map-package-validation.d.ts.map +1 -1
  133. package/runtime/map-package-validation.js +132 -95
  134. package/runtime/map-package.d.ts +80 -0
  135. package/runtime/map-package.d.ts.map +1 -1
  136. package/runtime/style-compose.d.ts.map +1 -1
  137. package/runtime/style-compose.js +78 -9
  138. package/studio/chart-spec.d.ts +6 -6
  139. package/studio/chart-spec.d.ts.map +1 -1
  140. package/studio/chart-spec.js +6 -6
  141. package/studio/index.d.ts +17 -7
  142. package/studio/index.d.ts.map +1 -1
  143. package/studio/index.js +15 -5
  144. package/studio/lifecycle-client.d.ts +262 -22
  145. package/studio/lifecycle-client.d.ts.map +1 -1
  146. package/studio/lifecycle-client.js +524 -24
  147. package/studio/lifecycle-errors.d.ts +8 -2
  148. package/studio/lifecycle-errors.d.ts.map +1 -1
  149. package/studio/lifecycle-errors.js +6 -1
  150. package/studio/lifecycle-types.d.ts +228 -8
  151. package/studio/lifecycle-types.d.ts.map +1 -1
  152. package/studio/publication-status.d.ts +55 -0
  153. package/studio/publication-status.d.ts.map +1 -0
  154. package/studio/publication-status.js +103 -0
  155. package/gen/honua/v1/feature_service_pb.d.ts +0 -918
  156. package/gen/honua/v1/feature_service_pb.d.ts.map +0 -1
  157. package/gen/honua/v1/feature_service_pb.js +0 -375
@@ -249,36 +249,116 @@ export interface StudioVersionComparison {
249
249
  readonly [extra: string]: unknown;
250
250
  }
251
251
  /**
252
- * `pending` is reserved for later asynchronous publication execution and is
253
- * not emitted by the API service today.
252
+ * The six canonical publication-proposal lifecycle states a Studio
253
+ * publication proposal walks through, exactly as named in the server's
254
+ * publication workflow:
255
+ *
256
+ * - `AwaitingApproval` — the proposal is persisted and queued for a
257
+ * *separate* approving principal. Non-terminal.
258
+ * - `Approved` — an approver (never the proposer — see the module doc on
259
+ * {@link HonuaStudioPublicationRequestsClient}) cleared the proposal.
260
+ * Non-terminal: publication has not executed yet.
261
+ * - `Executing` — the publication operation is running. Non-terminal.
262
+ * - `Active` — the publication is live. **The only state that carries a final
263
+ * publication URL.**
264
+ * - `Rejected` — an approver declined the proposal. Terminal, not successful.
265
+ * - `Failed` — execution failed after approval. Terminal, not successful.
266
+ *
267
+ * @experimental
268
+ */
269
+ export type StudioPublicationLifecycleState = "AwaitingApproval" | "Approved" | "Executing" | "Active" | "Rejected" | "Failed";
270
+ /**
271
+ * `StudioPublicationRequest.status` as it arrives on the wire.
272
+ *
273
+ * Carries the six canonical {@link StudioPublicationLifecycleState} values
274
+ * plus the three legacy values the synchronous API service emitted before the
275
+ * proposal workflow shipped (`accepted`/`rejected` decided inline, `pending`
276
+ * reserved for asynchronous execution). The union stays open to
277
+ * `(string & {})` so a state this SDK release does not know about still
278
+ * round-trips instead of crashing the client — but an unrecognized value is
279
+ * never treated as terminal and never as success. Normalize with
280
+ * {@link normalizeStudioPublicationStatus} rather than comparing strings.
281
+ *
282
+ * @experimental
254
283
  */
255
- export type StudioPublicationRequestStatus = "accepted" | "rejected" | "pending" | (string & {});
284
+ export type StudioPublicationRequestStatus = StudioPublicationLifecycleState | "accepted" | "rejected" | "pending" | (string & {});
285
+ /**
286
+ * The five distinct identifiers a publication proposal joins together, each
287
+ * addressing a different system:
288
+ *
289
+ * - `operationInstanceId` — the server-side publication operation instance.
290
+ * - `proposalId` — the governance proposal awaiting a separate approver.
291
+ * - `proposalUri` — the addressable location of that proposal. This is the
292
+ * *proposal* resource, never the published artifact; the final publication
293
+ * URL is {@link StudioPublicationRequest.publicationUrl} and appears only at
294
+ * `Active`.
295
+ * - `auditId` — the immutable audit-log entry for the submission.
296
+ * - `correlationId` — the caller-visible correlation id threaded through
297
+ * telemetry for the whole submit/approve/execute chain.
298
+ *
299
+ * All five are optional: a deployment that has not enabled the proposal
300
+ * workflow returns only the ones it produces. Every one that *is* returned is
301
+ * preserved verbatim end to end by this client.
302
+ *
303
+ * @experimental
304
+ */
305
+ export interface StudioPublicationIdentifiers {
306
+ readonly operationInstanceId?: string;
307
+ readonly proposalId?: string;
308
+ readonly proposalUri?: string;
309
+ readonly auditId?: string;
310
+ readonly correlationId?: string;
311
+ }
256
312
  /**
257
313
  * `POST /content-items/{itemId}/versions/{versionId}/publish-requests`
258
314
  * request body. `intent` overrides the version envelope's
259
315
  * `publicationIntent` when supplied; an invalid override fails with `400`
260
316
  * before a request is persisted. `warningAcknowledgment` is optional audit
261
317
  * text for `warning`-status versions.
318
+ *
319
+ * `contentHash` pins the exact immutable version bytes being proposed, and
320
+ * `idempotencyKey` gives the submission a stable identity so a retried or
321
+ * replayed submit resolves to the same proposal instead of creating a second
322
+ * one.
323
+ *
324
+ * A submission body may **not** carry approval or policy-override fields —
325
+ * see {@link HonuaStudioPublicationRequestsClient.create}, which rejects them
326
+ * client-side before any request is sent.
262
327
  */
263
328
  export interface StudioPublicationRequestInput {
264
329
  readonly intent?: StudioPublicationIntent;
265
330
  readonly warningAcknowledgment?: string;
331
+ readonly contentHash?: string;
332
+ readonly idempotencyKey?: string;
333
+ readonly correlationId?: string;
266
334
  readonly [extra: string]: unknown;
267
335
  }
268
336
  /**
269
- * A persisted publication request. Versions whose captured validation status
270
- * is `invalid` still produce a durable request with `status: "rejected"` and
271
- * do not move the published pointer; `valid`/`warning` versions are
272
- * `"accepted"` and do move it.
337
+ * A persisted publication request (proposal).
338
+ *
339
+ * Under the legacy synchronous behaviour, versions whose captured validation
340
+ * status is `invalid` still produce a durable request with
341
+ * `status: "rejected"` and do not move the published pointer, while
342
+ * `valid`/`warning` versions are `"accepted"` and do move it. Under the
343
+ * proposal workflow the request starts at `AwaitingApproval` and is walked to
344
+ * a terminal state by {@link HonuaStudioPublicationRequestsClient.poll}.
345
+ *
346
+ * `publicationUrl` is meaningful **only** when the status normalizes to
347
+ * `Active`; the client never surfaces it from any other state, even if a
348
+ * server sends one.
273
349
  */
274
- export interface StudioPublicationRequest {
350
+ export interface StudioPublicationRequest extends StudioPublicationIdentifiers {
275
351
  readonly requestId: string;
276
352
  readonly itemId: string;
277
353
  readonly versionId: string;
278
354
  readonly status: StudioPublicationRequestStatus;
279
355
  readonly intent?: StudioPublicationIntent;
356
+ readonly contentHash?: string;
357
+ readonly publicationUrl?: string;
358
+ readonly reason?: string;
280
359
  readonly createdAt?: string;
281
360
  readonly createdBy?: string;
361
+ readonly updatedAt?: string;
282
362
  readonly [extra: string]: unknown;
283
363
  }
284
364
  /**
@@ -318,4 +398,144 @@ export interface StudioRollbackRequest {
318
398
  readonly createdBy?: string;
319
399
  readonly [extra: string]: unknown;
320
400
  }
401
+ /**
402
+ * A Studio content item's *derived* lifecycle state, as computed by the server
403
+ * from the item's pointers:
404
+ *
405
+ * - `draft` — no immutable version has been saved yet (`currentVersionId` is
406
+ * absent);
407
+ * - `current` — a saved version exists but is not published;
408
+ * - `published` — `publishedVersionId` is set.
409
+ *
410
+ * This is deliberately distinct from a joined publication's *route* lifecycle
411
+ * ({@link StudioPublicationRouteLifecycle}), which describes the Content
412
+ * Publication Registry route rather than the Studio item.
413
+ *
414
+ * @experimental
415
+ */
416
+ export type StudioContentItemState = "draft" | "current" | "published";
417
+ /**
418
+ * The route lifecycle a joined Content Publication Registry publication
419
+ * reports. Kept open (`string & {}`) because the registry owns this vocabulary
420
+ * and may add values without a Studio change.
421
+ *
422
+ * @experimental
423
+ */
424
+ export type StudioPublicationRouteLifecycle = "active" | "suspended" | "archived" | (string & {});
425
+ /**
426
+ * The publication-registry lifecycle badge joined onto a
427
+ * {@link StudioContentItemListRow} (REQ-004), so a content browser can render
428
+ * lifecycle state without one extra call per row.
429
+ *
430
+ * The registry has no foreign key back to Studio: the join uses the convention
431
+ * that a publication's `sourceContentId` equals the Studio `itemId`. The badge
432
+ * therefore reflects the *route's* current state, which can be newer than the
433
+ * version Studio considers current or published, and is absent entirely when
434
+ * no publication references the item.
435
+ *
436
+ * @experimental
437
+ */
438
+ export interface StudioContentItemPublicationBadge {
439
+ readonly publicationId: string;
440
+ readonly routeSlug: string;
441
+ readonly routePath: string;
442
+ readonly lifecycle: StudioPublicationRouteLifecycle;
443
+ readonly activeRevision: number;
444
+ readonly updatedAt: string;
445
+ readonly [extra: string]: unknown;
446
+ }
447
+ /**
448
+ * One row of `GET /content-items`. This is a *summary* projection, not a full
449
+ * content item: it deliberately carries no envelope. Fetch
450
+ * `contentVersions.get(itemId, versionId)` for package content.
451
+ *
452
+ * @experimental
453
+ */
454
+ export interface StudioContentItemListRow {
455
+ readonly itemId: string;
456
+ readonly packageKey: string;
457
+ readonly workspaceId?: string;
458
+ readonly family: HonuaStudioPackageFamily | (string & {});
459
+ readonly state: StudioContentItemState | (string & {});
460
+ readonly currentVersionId?: string;
461
+ readonly publishedVersionId?: string;
462
+ /** Recorded owner (honua-server#3001). Absent for an ownerless legacy row. */
463
+ readonly ownerId?: string;
464
+ readonly createdBy?: string;
465
+ readonly updatedBy?: string;
466
+ readonly createdAt: string;
467
+ readonly updatedAt: string;
468
+ readonly publication?: StudioContentItemPublicationBadge;
469
+ readonly [extra: string]: unknown;
470
+ }
471
+ /**
472
+ * A page of an opaque keyset-paginated Studio listing.
473
+ *
474
+ * `total` counts every row matching the query across *all* pages, not the page
475
+ * length. `nextCursor` is the opaque cursor to pass back as `cursor` for the
476
+ * following page; on the last page the server sends `null`, and its
477
+ * source-generated JSON context omits `null` properties, so it arrives as
478
+ * either `null` or absent — treat both as "no more pages" (which is exactly
479
+ * what {@link isStudioListExhausted} does).
480
+ *
481
+ * @experimental
482
+ */
483
+ export interface StudioListPage<TItem> {
484
+ readonly items: readonly TItem[];
485
+ readonly total: number;
486
+ readonly nextCursor?: string | null;
487
+ readonly [extra: string]: unknown;
488
+ }
489
+ /** `GET /content-items` response. @experimental */
490
+ export type StudioContentItemListResponse = StudioListPage<StudioContentItemListRow>;
491
+ /**
492
+ * `GET /package-drafts` response. Rows are full {@link StudioPackageDraft}
493
+ * objects — identical to `GET /package-drafts/{draftId}` — and carry no
494
+ * publication badge: drafts are mutable and pre-publication by definition.
495
+ *
496
+ * @experimental
497
+ */
498
+ export type StudioPackageDraftListResponse = StudioListPage<StudioPackageDraft>;
499
+ /**
500
+ * Query filters shared by `GET /content-items` and `GET /package-drafts`.
501
+ *
502
+ * `family` accepts one family or several; several are sent as the server's
503
+ * comma-separated form (`family=map,dashboard`). An unknown family is rejected
504
+ * by the server with `400`.
505
+ *
506
+ * `q` is a case-insensitive substring match against `packageKey` only — there
507
+ * is no full-text index in this slice.
508
+ *
509
+ * `owner` is an exact match against the recorded owner. Note that with
510
+ * `Studio:EndUserAuthorization:Enabled` on, the server **forces** a non-admin
511
+ * caller's effective owner filter to their own resolved id and ignores this
512
+ * value; it is honored as supplied only for admins, or while that flag is off.
513
+ *
514
+ * @experimental
515
+ */
516
+ export interface StudioListFilterOptions {
517
+ readonly family?: (HonuaStudioPackageFamily | (string & {})) | readonly (HonuaStudioPackageFamily | (string & {}))[];
518
+ readonly workspaceId?: string;
519
+ readonly owner?: string;
520
+ readonly q?: string;
521
+ /** Opaque cursor from a previous page's `nextCursor`. Never construct one by hand. */
522
+ readonly cursor?: string;
523
+ /**
524
+ * Page size. The server defaults to
525
+ * {@link HONUA_STUDIO_LIST_DEFAULT_LIMIT} and caps at
526
+ * {@link HONUA_STUDIO_LIST_MAX_LIMIT}.
527
+ */
528
+ readonly limit?: number;
529
+ }
530
+ /** `GET /package-drafts` filters. @experimental */
531
+ export type StudioPackageDraftListOptions = StudioListFilterOptions;
532
+ /**
533
+ * `GET /content-items` filters — the shared set plus `state`, a filter over
534
+ * the derived lifecycle state. Several states are sent comma-separated.
535
+ *
536
+ * @experimental
537
+ */
538
+ export interface StudioContentItemListOptions extends StudioListFilterOptions {
539
+ readonly state?: (StudioContentItemState | (string & {})) | readonly (StudioContentItemState | (string & {}))[];
540
+ }
321
541
  //# sourceMappingURL=lifecycle-types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"lifecycle-types.d.ts","sourceRoot":"","sources":["../../../src/studio/lifecycle-types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lifecycle-types.d.ts","sourceRoot":"","sources":["../../../src/studio/lifecycle-types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,55 @@
1
+ /**
2
+ * The publication-proposal state machine shared by
3
+ * {@link HonuaStudioPublicationRequestsClient} and any caller that renders
4
+ * proposal status itself.
5
+ *
6
+ * A Studio publication proposal walks `AwaitingApproval → Approved →
7
+ * Executing → Active`, and can leave the walk at `Rejected` (an approver
8
+ * declined) or `Failed` (execution failed after approval). Only `Active`
9
+ * means published.
10
+ *
11
+ * Two invariants are load-bearing and are asserted by the tests:
12
+ *
13
+ * 1. **A status this SDK release does not recognize is never terminal and
14
+ * never successful.** A future server state must stall a poll until its
15
+ * bound is reached, not be mistaken for a finished — let alone a
16
+ * successful — publication.
17
+ * 2. **A final publication URL exists only at `Active`.** `Rejected` and
18
+ * `Failed` are terminal *without* a URL, and {@link studioPublicationUrl}
19
+ * refuses to surface a `publicationUrl` that a misbehaving server attaches
20
+ * to any non-`Active` state.
21
+ *
22
+ * @module
23
+ */
24
+ import type { StudioPublicationLifecycleState, StudioPublicationRequest, StudioPublicationRequestStatus } from "./lifecycle-types.js";
25
+ /** Every canonical publication-proposal state, in lifecycle order. */
26
+ export declare const STUDIO_PUBLICATION_LIFECYCLE_STATES: readonly ["AwaitingApproval", "Approved", "Executing", "Active", "Rejected", "Failed"];
27
+ /**
28
+ * Resolve a wire status to its canonical {@link StudioPublicationLifecycleState},
29
+ * or `undefined` when this SDK release does not recognize it.
30
+ *
31
+ * Recognition is case- and separator-insensitive, and covers the legacy
32
+ * synchronous `accepted`/`rejected`/`pending` values. `undefined` is the
33
+ * deliberate signal for "unknown": callers must treat it as neither terminal
34
+ * nor successful.
35
+ */
36
+ export declare function normalizeStudioPublicationStatus(status: StudioPublicationRequestStatus | undefined): StudioPublicationLifecycleState | undefined;
37
+ /**
38
+ * True only for `Active`, `Rejected` and `Failed`. An unrecognized status is
39
+ * **not** terminal — a poll must keep waiting (up to its bound) rather than
40
+ * declare a state it cannot interpret finished.
41
+ */
42
+ export declare function isStudioPublicationTerminal(status: StudioPublicationRequestStatus | undefined): boolean;
43
+ /**
44
+ * True only for `Active` — the single successful terminal state. `Rejected`
45
+ * and `Failed` are terminal but not successful, and an unrecognized status is
46
+ * never successful.
47
+ */
48
+ export declare function isStudioPublicationActive(status: StudioPublicationRequestStatus | undefined): boolean;
49
+ /**
50
+ * The proposal's final publication URL, and `undefined` from every state
51
+ * other than `Active` — including a non-`Active` proposal that carries a
52
+ * `publicationUrl` field anyway.
53
+ */
54
+ export declare function studioPublicationUrl(request: StudioPublicationRequest | undefined): string | undefined;
55
+ //# sourceMappingURL=publication-status.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"publication-status.d.ts","sourceRoot":"","sources":["../../../src/studio/publication-status.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,KAAK,EACV,+BAA+B,EAC/B,wBAAwB,EACxB,8BAA8B,EAC/B,MAAM,sBAAsB,CAAC;AAE9B,sEAAsE;AACtE,eAAO,MAAM,mCAAmC,wFAOe,CAAC;AAoChE;;;;;;;;GAQG;AACH,wBAAgB,gCAAgC,CAC9C,MAAM,EAAE,8BAA8B,GAAG,SAAS,GACjD,+BAA+B,GAAG,SAAS,CAG7C;AAED;;;;GAIG;AACH,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,8BAA8B,GAAG,SAAS,GAAG,OAAO,CAGvG;AAED;;;;GAIG;AACH,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,8BAA8B,GAAG,SAAS,GAAG,OAAO,CAErG;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,wBAAwB,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAMtG"}
@@ -0,0 +1,103 @@
1
+ /**
2
+ * The publication-proposal state machine shared by
3
+ * {@link HonuaStudioPublicationRequestsClient} and any caller that renders
4
+ * proposal status itself.
5
+ *
6
+ * A Studio publication proposal walks `AwaitingApproval → Approved →
7
+ * Executing → Active`, and can leave the walk at `Rejected` (an approver
8
+ * declined) or `Failed` (execution failed after approval). Only `Active`
9
+ * means published.
10
+ *
11
+ * Two invariants are load-bearing and are asserted by the tests:
12
+ *
13
+ * 1. **A status this SDK release does not recognize is never terminal and
14
+ * never successful.** A future server state must stall a poll until its
15
+ * bound is reached, not be mistaken for a finished — let alone a
16
+ * successful — publication.
17
+ * 2. **A final publication URL exists only at `Active`.** `Rejected` and
18
+ * `Failed` are terminal *without* a URL, and {@link studioPublicationUrl}
19
+ * refuses to surface a `publicationUrl` that a misbehaving server attaches
20
+ * to any non-`Active` state.
21
+ *
22
+ * @module
23
+ */
24
+ /** Every canonical publication-proposal state, in lifecycle order. */
25
+ export const STUDIO_PUBLICATION_LIFECYCLE_STATES = [
26
+ "AwaitingApproval",
27
+ "Approved",
28
+ "Executing",
29
+ "Active",
30
+ "Rejected",
31
+ "Failed",
32
+ ];
33
+ /** Terminal states — the proposal will not change again. Only `Active` is a success. */
34
+ const TERMINAL_STATES = new Set([
35
+ "Active",
36
+ "Rejected",
37
+ "Failed",
38
+ ]);
39
+ function comparisonForm(value) {
40
+ return value.toLowerCase().replace(/[-_\s]/g, "");
41
+ }
42
+ /**
43
+ * Canonical state keyed by its comparison form (lower-cased with `-`/`_`/
44
+ * whitespace removed), so `AwaitingApproval`, `awaitingApproval`,
45
+ * `awaiting-approval` and `awaiting_approval` all resolve identically.
46
+ *
47
+ * The three legacy synchronous values map onto the canonical walk:
48
+ * `accepted` was emitted only once the published pointer had already moved
49
+ * (so it is `Active`), `rejected` is `Rejected`, and `pending` — documented as
50
+ * "reserved for later asynchronous publication execution" — is `Executing`.
51
+ * Both `pending` and `Executing` are non-terminal, so a legacy deployment
52
+ * polls to the same outcome either way.
53
+ */
54
+ const STATE_BY_COMPARISON_FORM = new Map([
55
+ ...STUDIO_PUBLICATION_LIFECYCLE_STATES.map((state) => [comparisonForm(state), state]),
56
+ ["accepted", "Active"],
57
+ ["pending", "Executing"],
58
+ ]);
59
+ /**
60
+ * Resolve a wire status to its canonical {@link StudioPublicationLifecycleState},
61
+ * or `undefined` when this SDK release does not recognize it.
62
+ *
63
+ * Recognition is case- and separator-insensitive, and covers the legacy
64
+ * synchronous `accepted`/`rejected`/`pending` values. `undefined` is the
65
+ * deliberate signal for "unknown": callers must treat it as neither terminal
66
+ * nor successful.
67
+ */
68
+ export function normalizeStudioPublicationStatus(status) {
69
+ if (typeof status !== "string" || status.length === 0)
70
+ return undefined;
71
+ return STATE_BY_COMPARISON_FORM.get(comparisonForm(status));
72
+ }
73
+ /**
74
+ * True only for `Active`, `Rejected` and `Failed`. An unrecognized status is
75
+ * **not** terminal — a poll must keep waiting (up to its bound) rather than
76
+ * declare a state it cannot interpret finished.
77
+ */
78
+ export function isStudioPublicationTerminal(status) {
79
+ const state = normalizeStudioPublicationStatus(status);
80
+ return state !== undefined && TERMINAL_STATES.has(state);
81
+ }
82
+ /**
83
+ * True only for `Active` — the single successful terminal state. `Rejected`
84
+ * and `Failed` are terminal but not successful, and an unrecognized status is
85
+ * never successful.
86
+ */
87
+ export function isStudioPublicationActive(status) {
88
+ return normalizeStudioPublicationStatus(status) === "Active";
89
+ }
90
+ /**
91
+ * The proposal's final publication URL, and `undefined` from every state
92
+ * other than `Active` — including a non-`Active` proposal that carries a
93
+ * `publicationUrl` field anyway.
94
+ */
95
+ export function studioPublicationUrl(request) {
96
+ if (request === undefined)
97
+ return undefined;
98
+ if (!isStudioPublicationActive(request.status))
99
+ return undefined;
100
+ return typeof request.publicationUrl === "string" && request.publicationUrl.length > 0
101
+ ? request.publicationUrl
102
+ : undefined;
103
+ }