@lssm/example.personalization 1.41.0 → 1.42.2

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 (102) hide show
  1. package/.turbo/turbo-build$colon$bundle.log +132 -0
  2. package/.turbo/turbo-build.log +128 -12
  3. package/CHANGELOG.md +43 -0
  4. package/LICENSE +21 -0
  5. package/dist/behavior-tracking.d.ts +5 -0
  6. package/dist/behavior-tracking.d.ts.map +1 -0
  7. package/dist/behavior-tracking.js +48 -1
  8. package/dist/behavior-tracking.js.map +1 -0
  9. package/dist/docs/index.d.ts +1 -0
  10. package/dist/docs/index.js +1 -1
  11. package/dist/docs/personalization.docblock.d.ts +1 -0
  12. package/dist/docs/personalization.docblock.js +29 -8
  13. package/dist/docs/personalization.docblock.js.map +1 -0
  14. package/dist/example.d.ts +34 -0
  15. package/dist/example.d.ts.map +1 -0
  16. package/dist/example.js +39 -1
  17. package/dist/example.js.map +1 -0
  18. package/dist/index.d.ts +5 -0
  19. package/dist/index.js +7 -1
  20. package/dist/libs/contracts/src/app-config/lifecycle.d.ts +1 -0
  21. package/dist/libs/contracts/src/app-config/runtime.d.ts +13 -0
  22. package/dist/libs/contracts/src/app-config/spec.d.ts +8 -0
  23. package/dist/libs/contracts/src/capabilities/capabilities.d.ts +12 -0
  24. package/dist/libs/contracts/src/capabilities/capabilities.d.ts.map +1 -0
  25. package/dist/libs/contracts/src/capabilities/index.d.ts +2 -0
  26. package/dist/libs/contracts/src/capabilities/openbanking.d.ts +1 -0
  27. package/dist/libs/contracts/src/data-views/data-views.d.ts +4 -0
  28. package/dist/libs/contracts/src/data-views/index.d.ts +3 -0
  29. package/dist/libs/contracts/src/data-views/query-generator.d.ts +1 -0
  30. package/dist/libs/contracts/src/data-views/runtime.d.ts +1 -0
  31. package/dist/libs/contracts/src/docs/accessibility_wcag_compliance_specs.docblock.d.ts +1 -0
  32. package/dist/libs/contracts/src/docs/index.d.ts +23 -0
  33. package/dist/libs/contracts/src/docs/presentations.d.ts +2 -0
  34. package/dist/libs/contracts/src/docs/registry.d.ts +10 -0
  35. package/dist/libs/contracts/src/docs/registry.d.ts.map +1 -0
  36. package/dist/libs/contracts/src/docs/tech/auth/better-auth-nextjs.docblock.d.ts +1 -0
  37. package/dist/libs/contracts/src/docs/tech/contracts/openapi-export.docblock.d.ts +1 -0
  38. package/dist/libs/contracts/src/docs/tech/lifecycle-stage-system.docblock.d.ts +1 -0
  39. package/dist/libs/contracts/src/docs/tech/llm/llm-integration.docblock.d.ts +1 -0
  40. package/dist/libs/contracts/src/docs/tech/mcp-endpoints.docblock.d.ts +1 -0
  41. package/dist/libs/contracts/src/docs/tech/presentation-runtime.docblock.d.ts +1 -0
  42. package/dist/libs/contracts/src/docs/tech/schema/README.docblock.d.ts +1 -0
  43. package/dist/libs/contracts/src/docs/tech/studio/learning-events.docblock.d.ts +1 -0
  44. package/dist/libs/contracts/src/docs/tech/studio/learning-journeys.docblock.d.ts +1 -0
  45. package/dist/libs/contracts/src/docs/tech/studio/platform-admin-panel.docblock.d.ts +1 -0
  46. package/dist/libs/contracts/src/docs/tech/studio/project-access-teams.docblock.d.ts +1 -0
  47. package/dist/libs/contracts/src/docs/tech/studio/project-routing.docblock.d.ts +1 -0
  48. package/dist/libs/contracts/src/docs/tech/studio/sandbox-unlogged.docblock.d.ts +1 -0
  49. package/dist/libs/contracts/src/docs/tech/studio/team-invitations.docblock.d.ts +1 -0
  50. package/dist/libs/contracts/src/docs/tech/studio/workspace-ops.docblock.d.ts +1 -0
  51. package/dist/libs/contracts/src/docs/tech/studio/workspaces.docblock.d.ts +1 -0
  52. package/dist/libs/contracts/src/docs/tech/telemetry-ingest.docblock.d.ts +1 -0
  53. package/dist/libs/contracts/src/docs/tech/templates/runtime.docblock.d.ts +1 -0
  54. package/dist/libs/contracts/src/docs/tech/vscode-extension.docblock.d.ts +1 -0
  55. package/dist/libs/contracts/src/docs/tech/workflows/overview.docblock.d.ts +1 -0
  56. package/dist/libs/contracts/src/events.d.ts +4 -0
  57. package/dist/libs/contracts/src/experiments/spec-resolver.d.ts +4 -0
  58. package/dist/libs/contracts/src/experiments/spec.d.ts +12 -0
  59. package/dist/libs/contracts/src/experiments/spec.d.ts.map +1 -0
  60. package/dist/libs/contracts/src/features.d.ts +19 -0
  61. package/dist/libs/contracts/src/features.d.ts.map +1 -0
  62. package/dist/libs/contracts/src/install.d.ts +7 -0
  63. package/dist/libs/contracts/src/integrations/connection.d.ts +1 -0
  64. package/dist/libs/contracts/src/integrations/spec.d.ts +2 -0
  65. package/dist/libs/contracts/src/knowledge/spec.d.ts +2 -0
  66. package/dist/libs/contracts/src/operations/index.d.ts +2 -0
  67. package/dist/libs/contracts/src/operations/operation.d.ts +6 -0
  68. package/dist/libs/contracts/src/operations/registry.d.ts +6 -0
  69. package/dist/libs/contracts/src/ownership.d.ts +61 -0
  70. package/dist/libs/contracts/src/ownership.d.ts.map +1 -0
  71. package/dist/libs/contracts/src/policy/registry.d.ts +2 -0
  72. package/dist/libs/contracts/src/policy/spec.d.ts +1 -0
  73. package/dist/libs/contracts/src/presentations/index.d.ts +3 -0
  74. package/dist/libs/contracts/src/presentations/presentations.d.ts +2 -0
  75. package/dist/libs/contracts/src/presentations/registry.d.ts +2 -0
  76. package/dist/libs/contracts/src/presentations/transform-engine.d.ts +2 -0
  77. package/dist/libs/contracts/src/registry-utils.d.ts +1 -0
  78. package/dist/libs/contracts/src/registry.d.ts +3 -0
  79. package/dist/libs/contracts/src/resources.d.ts +2 -0
  80. package/dist/libs/contracts/src/telemetry/anomaly.d.ts +2 -0
  81. package/dist/libs/contracts/src/telemetry/index.d.ts +3 -0
  82. package/dist/libs/contracts/src/telemetry/spec.d.ts +1 -0
  83. package/dist/libs/contracts/src/telemetry/tracker.d.ts +2 -0
  84. package/dist/libs/contracts/src/tests/spec.d.ts +1 -0
  85. package/dist/libs/contracts/src/themes.d.ts +1 -0
  86. package/dist/libs/contracts/src/types.d.ts +5 -0
  87. package/dist/libs/contracts/src/workflow/spec.d.ts +89 -0
  88. package/dist/libs/contracts/src/workflow/spec.d.ts.map +1 -0
  89. package/dist/overlay-customization.d.ts +5 -0
  90. package/dist/overlay-customization.d.ts.map +1 -0
  91. package/dist/overlay-customization.js +50 -1
  92. package/dist/overlay-customization.js.map +1 -0
  93. package/dist/workflow-extension.d.ts +8 -0
  94. package/dist/workflow-extension.d.ts.map +1 -0
  95. package/dist/workflow-extension.js +67 -1
  96. package/dist/workflow-extension.js.map +1 -0
  97. package/package.json +29 -19
  98. package/src/behavior-tracking.ts +3 -1
  99. package/src/overlay-customization.ts +3 -1
  100. package/src/workflow-extension.ts +7 -4
  101. package/tsconfig.json +8 -2
  102. package/tsconfig.tsbuildinfo +0 -1
@@ -0,0 +1,13 @@
1
+ import "../capabilities/index.js";
2
+ import "../policy/spec.js";
3
+ import "../telemetry/spec.js";
4
+ import "../experiments/spec.js";
5
+ import "../data-views/index.js";
6
+ import "../policy/registry.js";
7
+ import "../themes.js";
8
+ import "../integrations/spec.js";
9
+ import "../integrations/connection.js";
10
+ import "../knowledge/spec.js";
11
+ import "./spec.js";
12
+ import "../features.js";
13
+ import "../workflow/spec.js";
@@ -0,0 +1,8 @@
1
+ import "../ownership.js";
2
+ import "../capabilities/index.js";
3
+ import "../policy/spec.js";
4
+ import "../experiments/spec.js";
5
+ import "../themes.js";
6
+ import "../integrations/spec.js";
7
+ import "./lifecycle.js";
8
+ import "../features.js";
@@ -0,0 +1,12 @@
1
+ import "../docs/registry.js";
2
+ import "../ownership.js";
3
+
4
+ //#region ../../libs/contracts/src/capabilities/capabilities.d.ts
5
+
6
+ interface CapabilityRef {
7
+ key: string;
8
+ version: number;
9
+ }
10
+ //#endregion
11
+ export { CapabilityRef };
12
+ //# sourceMappingURL=capabilities.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"capabilities.d.ts","names":[],"sources":["../../../../../../../libs/contracts/src/capabilities/capabilities.ts"],"sourcesContent":[],"mappings":";;;;;UAqCiB,aAAA"}
@@ -0,0 +1,2 @@
1
+ import { CapabilityRef } from "./capabilities.js";
2
+ import "./openbanking.js";
@@ -0,0 +1 @@
1
+ import "./index.js";
@@ -0,0 +1,4 @@
1
+ import "../ownership.js";
2
+ import "../registry-utils.js";
3
+ import "../experiments/spec.js";
4
+ import "../features.js";
@@ -0,0 +1,3 @@
1
+ import "./data-views.js";
2
+ import "./query-generator.js";
3
+ import "./runtime.js";
@@ -0,0 +1 @@
1
+ import "./index.js";
@@ -0,0 +1 @@
1
+ import "./index.js";
@@ -0,0 +1,23 @@
1
+ import "./presentations.js";
2
+ import { DocId } from "./registry.js";
3
+ import "./accessibility_wcag_compliance_specs.docblock.js";
4
+ import "./tech/lifecycle-stage-system.docblock.js";
5
+ import "./tech/presentation-runtime.docblock.js";
6
+ import "./tech/auth/better-auth-nextjs.docblock.js";
7
+ import "./tech/schema/README.docblock.js";
8
+ import "./tech/templates/runtime.docblock.js";
9
+ import "./tech/workflows/overview.docblock.js";
10
+ import "./tech/mcp-endpoints.docblock.js";
11
+ import "./tech/vscode-extension.docblock.js";
12
+ import "./tech/telemetry-ingest.docblock.js";
13
+ import "./tech/contracts/openapi-export.docblock.js";
14
+ import "./tech/studio/workspaces.docblock.js";
15
+ import "./tech/studio/sandbox-unlogged.docblock.js";
16
+ import "./tech/studio/workspace-ops.docblock.js";
17
+ import "./tech/studio/project-routing.docblock.js";
18
+ import "./tech/studio/platform-admin-panel.docblock.js";
19
+ import "./tech/studio/learning-events.docblock.js";
20
+ import "./tech/studio/learning-journeys.docblock.js";
21
+ import "./tech/studio/project-access-teams.docblock.js";
22
+ import "./tech/studio/team-invitations.docblock.js";
23
+ import "./tech/llm/llm-integration.docblock.js";
@@ -0,0 +1,2 @@
1
+ import "../presentations/presentations.js";
2
+ import "../ownership.js";
@@ -0,0 +1,10 @@
1
+ import "../presentations/presentations.js";
2
+ import "./presentations.js";
3
+
4
+ //#region ../../libs/contracts/src/docs/registry.d.ts
5
+ type DocId = string & {
6
+ __docId: true;
7
+ };
8
+ //#endregion
9
+ export { DocId };
10
+ //# sourceMappingURL=registry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry.d.ts","names":[],"sources":["../../../../../../../libs/contracts/src/docs/registry.ts"],"sourcesContent":[],"mappings":";;;;KASY,KAAA;EAAA,OAAA,EAAK,IAAA"}
@@ -0,0 +1 @@
1
+ import "../../index.js";
@@ -0,0 +1 @@
1
+ import "../../index.js";
@@ -0,0 +1 @@
1
+ import "../index.js";
@@ -0,0 +1 @@
1
+ import "../../index.js";
@@ -0,0 +1 @@
1
+ import "../../index.js";
@@ -0,0 +1 @@
1
+ import "../../index.js";
@@ -0,0 +1 @@
1
+ import "../../index.js";
@@ -0,0 +1 @@
1
+ import "../../index.js";
@@ -0,0 +1 @@
1
+ import "../../index.js";
@@ -0,0 +1 @@
1
+ import "../../index.js";
@@ -0,0 +1 @@
1
+ import "../index.js";
@@ -0,0 +1 @@
1
+ import "../../index.js";
@@ -0,0 +1 @@
1
+ import "../index.js";
@@ -0,0 +1 @@
1
+ import "../../index.js";
@@ -0,0 +1,4 @@
1
+ import "./docs/registry.js";
2
+ import "./ownership.js";
3
+ import "./registry.js";
4
+ import "@lssm/lib.schema";
@@ -0,0 +1,4 @@
1
+ import "../operations/index.js";
2
+ import "../resources.js";
3
+ import "../types.js";
4
+ import "@lssm/lib.schema";
@@ -0,0 +1,12 @@
1
+ import "../ownership.js";
2
+ import "../policy/spec.js";
3
+ import "../telemetry/spec.js";
4
+
5
+ //#region ../../libs/contracts/src/experiments/spec.d.ts
6
+ interface ExperimentRef {
7
+ key: string;
8
+ version?: number;
9
+ }
10
+ //#endregion
11
+ export { ExperimentRef };
12
+ //# sourceMappingURL=spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"spec.d.ts","names":[],"sources":["../../../../../../../libs/contracts/src/experiments/spec.ts"],"sourcesContent":[],"mappings":";;;;;UAMiB,aAAA;EAAA,GAAA,EAAA,MAAA"}
@@ -0,0 +1,19 @@
1
+ import "./presentations/presentations.js";
2
+ import "./ownership.js";
3
+ import "./registry-utils.js";
4
+ import "./capabilities/index.js";
5
+ import "./experiments/spec.js";
6
+ import "./operations/index.js";
7
+ import "./operations/registry.js";
8
+ import "./presentations/index.js";
9
+
10
+ //#region ../../libs/contracts/src/features.d.ts
11
+ interface OpRef {
12
+ /** Operation key (Operationspec.meta.key). */
13
+ key: string;
14
+ /** Operation version (OperationSpec.meta.version). */
15
+ version: number;
16
+ }
17
+ //#endregion
18
+ export { OpRef };
19
+ //# sourceMappingURL=features.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"features.d.ts","names":[],"sources":["../../../../../../libs/contracts/src/features.ts"],"sourcesContent":[],"mappings":";;;;;;;;;;UAkBiB,KAAA;;;EAAA"}
@@ -0,0 +1,7 @@
1
+ import "./operations/index.js";
2
+ import "./resources.js";
3
+ import "./types.js";
4
+ import "./events.js";
5
+ import "./operations/registry.js";
6
+ import "@lssm/lib.schema";
7
+ import "zod";
@@ -0,0 +1 @@
1
+ import "./spec.js";
@@ -0,0 +1,2 @@
1
+ import "../ownership.js";
2
+ import "../capabilities/index.js";
@@ -0,0 +1,2 @@
1
+ import "../ownership.js";
2
+ import "../policy/spec.js";
@@ -0,0 +1,2 @@
1
+ import "./operation.js";
2
+ import "./registry.js";
@@ -0,0 +1,6 @@
1
+ import "../ownership.js";
2
+ import "../policy/spec.js";
3
+ import "../resources.js";
4
+ import "../events.js";
5
+ import "../tests/spec.js";
6
+ import "@lssm/lib.schema";
@@ -0,0 +1,6 @@
1
+ import "../registry-utils.js";
2
+ import "../resources.js";
3
+ import "../types.js";
4
+ import "./operation.js";
5
+ import "../install.js";
6
+ import "@lssm/lib.schema";
@@ -0,0 +1,61 @@
1
+ import { DocId } from "./docs/registry.js";
2
+ import "./docs/index.js";
3
+
4
+ //#region ../../libs/contracts/src/ownership.d.ts
5
+ declare const StabilityEnum: {
6
+ readonly Idea: "idea";
7
+ readonly InCreation: "in_creation";
8
+ readonly Experimental: "experimental";
9
+ readonly Beta: "beta";
10
+ readonly Stable: "stable";
11
+ readonly Deprecated: "deprecated";
12
+ };
13
+ type Stability = (typeof StabilityEnum)[keyof typeof StabilityEnum];
14
+ declare const OwnersEnum: {
15
+ readonly PlatformCore: "platform.core";
16
+ readonly PlatformSigil: "platform.sigil";
17
+ readonly PlatformMarketplace: "platform.marketplace";
18
+ readonly PlatformMessaging: "platform.messaging";
19
+ readonly PlatformContent: "platform.content";
20
+ readonly PlatformFeatureFlags: "platform.featureflags";
21
+ readonly PlatformFinance: "platform.finance";
22
+ };
23
+ type Owner = (typeof OwnersEnum)[keyof typeof OwnersEnum] | (string & {});
24
+ declare const TagsEnum: {
25
+ readonly Spots: "spots";
26
+ readonly Collectivity: "collectivity";
27
+ readonly Marketplace: "marketplace";
28
+ readonly Sellers: "sellers";
29
+ readonly Auth: "auth";
30
+ readonly Login: "login";
31
+ readonly Signup: "signup";
32
+ readonly Guide: "guide";
33
+ readonly Docs: "docs";
34
+ readonly I18n: "i18n";
35
+ readonly Incident: "incident";
36
+ readonly Automation: "automation";
37
+ readonly Hygiene: "hygiene";
38
+ };
39
+ type Tag = (typeof TagsEnum)[keyof typeof TagsEnum] | (string & {});
40
+ interface OwnerShipMeta {
41
+ /** Breaking changes => bump version */
42
+ version: number;
43
+ /** Fully-qualified spec key (e.g., "sigil.beginSignup") */
44
+ key: string;
45
+ /** Human-friendly spec title (e.g., "Signup begin") */
46
+ title?: string;
47
+ /** Short human-friendly summary */
48
+ description: string;
49
+ domain?: string;
50
+ /** Lifecycle marker for comms & tooling */
51
+ stability: Stability;
52
+ /** Owners for CODEOWNERS / on-call / approvals */
53
+ owners: Owner[];
54
+ /** Search tags, grouping, docs navigation */
55
+ tags: Tag[];
56
+ /** Doc block(s) for this operation. */
57
+ docId?: DocId[];
58
+ }
59
+ //#endregion
60
+ export { OwnerShipMeta };
61
+ //# sourceMappingURL=ownership.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ownership.d.ts","names":[],"sources":["../../../../../../libs/contracts/src/ownership.ts"],"sourcesContent":[],"mappings":";;;;cAIa;;;EAAA,SAAA,YAOH,EAAA,cAAA;EACE,SAAA,IAAS,EAAA,MAAA;EAGR,SAAA,MAQH,EAAA,QAAA;EACE,SAAK,UAAA,EACL,YAAyB;AAMrC,CAAA;AAeY,KAlCA,SAAA,GAkCc,CAAA,OAlCM,aAkCyB,CAAA,CAAA,MAAA,OAlCG,aAkCH,CAAA;AAIxC,cAnCJ,UAmCiB,EAAA;EAWjB,SAAA,YAAA,EAAA,eAAA;EAEH,SAAA,aAAA,EAAA,gBAAA;EAEF,SAAA,mBAAA,EAAA,sBAAA;EAGE,SAAA,iBAAA,EAAA,oBAAA;EAAK,SAAA,eAAA,EAAA,kBAAA;;;;KA5CH,KAAA,WACA,yBAAyB;cAMxB;;;;;;;;;;;;;;;KAeD,GAAA,WAAc,uBAAuB;UAIhC,aAAA;;;;;;;;;;;aAWJ;;UAEH;;QAEF;;UAGE"}
@@ -0,0 +1,2 @@
1
+ import "./spec.js";
2
+ import "../registry.js";
@@ -0,0 +1 @@
1
+ import "../ownership.js";
@@ -0,0 +1,3 @@
1
+ import "./presentations.js";
2
+ import "./transform-engine.js";
3
+ import "./registry.js";
@@ -0,0 +1,2 @@
1
+ import "../ownership.js";
2
+ import "@lssm/lib.schema";
@@ -0,0 +1,2 @@
1
+ import "./presentations.js";
2
+ import "../registry.js";
@@ -0,0 +1,2 @@
1
+ import "./presentations.js";
2
+ import "react";
@@ -0,0 +1 @@
1
+ import "./ownership.js";
@@ -0,0 +1,3 @@
1
+ import "./ownership.js";
2
+ import "./registry-utils.js";
3
+ import "./types.js";
@@ -0,0 +1,2 @@
1
+ import "./ownership.js";
2
+ import "zod";
@@ -0,0 +1,2 @@
1
+ import "./spec.js";
2
+ import "./tracker.js";
@@ -0,0 +1,3 @@
1
+ import "./spec.js";
2
+ import "./anomaly.js";
3
+ import "./tracker.js";
@@ -0,0 +1 @@
1
+ import "../ownership.js";
@@ -0,0 +1,2 @@
1
+ import "./spec.js";
2
+ import "./anomaly.js";
@@ -0,0 +1 @@
1
+ import "../ownership.js";
@@ -0,0 +1 @@
1
+ import "./ownership.js";
@@ -0,0 +1,5 @@
1
+ import "./policy/spec.js";
2
+ import "./telemetry/index.js";
3
+ import "./app-config/runtime.js";
4
+ import "./experiments/spec-resolver.js";
5
+ import "./events.js";
@@ -0,0 +1,89 @@
1
+ import { OwnerShipMeta } from "../ownership.js";
2
+ import "../registry-utils.js";
3
+ import { CapabilityRef } from "../capabilities/capabilities.js";
4
+ import "../capabilities/index.js";
5
+ import { ExperimentRef } from "../experiments/spec.js";
6
+ import { OpRef } from "../features.js";
7
+
8
+ //#region ../../libs/contracts/src/workflow/spec.d.ts
9
+ /**
10
+ * Reference to a form spec declared in {@link FormRegistry}.
11
+ */
12
+ interface FormRef {
13
+ key: string;
14
+ version: number;
15
+ }
16
+ type StepType = 'human' | 'automation' | 'decision';
17
+ type GuardConditionKind = 'policy' | 'expression';
18
+ interface GuardCondition {
19
+ type: GuardConditionKind;
20
+ /** Policy name or expression string depending on the type. */
21
+ value: string;
22
+ }
23
+ interface RetryPolicy {
24
+ maxAttempts: number;
25
+ backoff: 'linear' | 'exponential';
26
+ delayMs: number;
27
+ /** Optional max delay cap for exponential backoff. */
28
+ maxDelayMs?: number;
29
+ }
30
+ interface StepAction {
31
+ /** Operation executed for automation steps. */
32
+ operation?: OpRef;
33
+ /** Form rendered for human input steps. */
34
+ form?: FormRef;
35
+ }
36
+ interface Step {
37
+ id: string;
38
+ type: StepType;
39
+ label: string;
40
+ description?: string;
41
+ action?: StepAction;
42
+ guard?: GuardCondition;
43
+ timeoutMs?: number;
44
+ retry?: RetryPolicy;
45
+ /** Integration slot identifiers required before this step can execute. */
46
+ requiredIntegrations?: string[];
47
+ /** Capabilities that must be enabled for this step to execute. */
48
+ requiredCapabilities?: CapabilityRef[];
49
+ }
50
+ interface Transition {
51
+ from: string;
52
+ to: string;
53
+ label?: string;
54
+ /** Expression evaluated against workflow data (e.g., `data.approved === true`). */
55
+ condition?: string;
56
+ }
57
+ interface SLA {
58
+ totalDurationMs?: number;
59
+ stepDurationMs?: Record<string, number>;
60
+ }
61
+ interface CompensationStep {
62
+ stepId: string;
63
+ operation: OpRef;
64
+ description?: string;
65
+ }
66
+ interface CompensationStrategy {
67
+ trigger?: 'on_failure' | 'manual';
68
+ steps: CompensationStep[];
69
+ }
70
+ interface WorkflowDefinition {
71
+ steps: Step[];
72
+ transitions: Transition[];
73
+ /** Optional explicit entry step. Defaults to the first step when omitted. */
74
+ entryStepId?: string;
75
+ sla?: SLA;
76
+ compensation?: CompensationStrategy;
77
+ }
78
+ type WorkflowMeta = OwnerShipMeta;
79
+ interface WorkflowSpec {
80
+ meta: WorkflowMeta;
81
+ definition: WorkflowDefinition;
82
+ policy?: {
83
+ flags?: string[];
84
+ };
85
+ experiments?: ExperimentRef[];
86
+ }
87
+ //#endregion
88
+ export { WorkflowSpec };
89
+ //# sourceMappingURL=spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"spec.d.ts","names":[],"sources":["../../../../../../../libs/contracts/src/workflow/spec.ts"],"sourcesContent":[],"mappings":";;;;;;;;;;;UASiB,OAAA;EAAA,GAAA,EAAA,MAAO;EAKZ,OAAA,EAAA,MAAQ;AASpB;AAEiB,KAXL,QAAA,GAWmB,OAAA,GACvB,YAAA,GAAA,UAAkB;AAaT,KAhBL,kBAAA,GAkBE,QAEL,GAAO,YAAA;AAGC,UArBA,cAAA,CAqBI;EAEb,IAAA,EAtBA,kBAsBA;EAGG;EACD,KAAA,EAAA,MAAA;;AAMe,UA3BR,WAAA,CA2BQ;EAAa,WAAA,EAAA,MAAA;EAGrB,OAAA,EAAA,QAAU,GAAA,aAAA;EAQV,OAAG,EAAA,MAAA;EAKH;EAMA,UAAA,CAAA,EAAA,MAAA;AAKjB;AACS,UA/CQ,UAAA,CA+CR;EACM;EAGP,SAAA,CAAA,EAjDM,KAiDN;EACS;EAAoB,IAAA,CAAA,EAhD5B,OAgD4B;AAGrC;AAEiB,UAlDA,IAAA,CAkDY;EACrB,EAAA,EAAA,MAAA;EACM,IAAA,EAlDN,QAkDM;EAEE,KAAA,EAAA,MAAA;EAAa,WAAA,CAAA,EAAA,MAAA;WAjDlB;UACD;;UAEA;;;;yBAIe;;UAGR,UAAA;;;;;;;UAQA,GAAA;;mBAEE;;UAGF,gBAAA;;aAEJ;;;UAII,oBAAA;;SAER;;UAGQ,kBAAA;SACR;eACM;;;QAGP;iBACS;;KAGL,YAAA,GAAe;UAEV,YAAA;QACT;cACM;;;;gBAEE"}
@@ -0,0 +1,5 @@
1
+ //#region src/overlay-customization.d.ts
2
+ declare function runOverlayCustomizationExample(): Promise<void>;
3
+ //#endregion
4
+ export { runOverlayCustomizationExample };
5
+ //# sourceMappingURL=overlay-customization.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"overlay-customization.d.ts","names":[],"sources":["../src/overlay-customization.ts"],"sourcesContent":[],"mappings":";iBAasB,8BAAA,CAAA,GAAkC"}
@@ -1 +1,50 @@
1
- import{LogLevel as e,Logger as t}from"@lssm/lib.logger";import{defineOverlay as n}from"@lssm/lib.overlay-engine/spec";import{signOverlay as r}from"@lssm/lib.overlay-engine/signer";import{OverlayEngine as i,OverlayRegistry as a}from"@lssm/lib.overlay-engine";const o=new t({level:process.env.NODE_ENV===`production`?e.INFO:e.DEBUG,environment:process.env.NODE_ENV||`development`,enableColors:process.env.NODE_ENV!==`production`});async function s(){let e=new a({allowUnsigned:!0}),t=new i({registry:e}),s=await r(n({overlayId:`demo-overlay`,version:`1.0.0`,appliesTo:{capability:`billing.createOrder`,tenantId:`demo`},modifications:[{type:`hideField`,field:`internalNotes`},{type:`renameLabel`,field:`customerReference`,newLabel:`PO Number`}]}),process.env.PRIVATE_KEY_PEM??``);e.register(s);let c=t.apply({target:{fields:[{key:`customerReference`,label:`Customer Reference`,visible:!0},{key:`internalNotes`,label:`Internal Notes`,visible:!0}]},capability:`billing.createOrder`,tenantId:`demo`});o.info(`Overlay applied`,{fields:c.target.fields})}export{s as runOverlayCustomizationExample};
1
+ import { LogLevel, Logger } from "@lssm/lib.logger";
2
+ import { defineOverlay } from "@lssm/lib.overlay-engine/spec";
3
+ import { signOverlay } from "@lssm/lib.overlay-engine/signer";
4
+ import { OverlayEngine, OverlayRegistry } from "@lssm/lib.overlay-engine";
5
+
6
+ //#region src/overlay-customization.ts
7
+ const logger = new Logger({
8
+ level: process.env.NODE_ENV === "production" ? LogLevel.INFO : LogLevel.DEBUG,
9
+ environment: process.env.NODE_ENV || "development",
10
+ enableColors: process.env.NODE_ENV !== "production"
11
+ });
12
+ async function runOverlayCustomizationExample() {
13
+ const registry = new OverlayRegistry({ allowUnsigned: true });
14
+ const engine = new OverlayEngine({ registry });
15
+ const signed = await signOverlay(defineOverlay({
16
+ overlayId: "demo-overlay",
17
+ version: "1.0.0",
18
+ appliesTo: {
19
+ capability: "billing.createOrder",
20
+ tenantId: "demo"
21
+ },
22
+ modifications: [{
23
+ type: "hideField",
24
+ field: "internalNotes"
25
+ }, {
26
+ type: "renameLabel",
27
+ field: "customerReference",
28
+ newLabel: "PO Number"
29
+ }]
30
+ }), process.env.PRIVATE_KEY_PEM ?? "");
31
+ registry.register(signed);
32
+ const result = engine.apply({
33
+ target: { fields: [{
34
+ key: "customerReference",
35
+ label: "Customer Reference",
36
+ visible: true
37
+ }, {
38
+ key: "internalNotes",
39
+ label: "Internal Notes",
40
+ visible: true
41
+ }] },
42
+ capability: "billing.createOrder",
43
+ tenantId: "demo"
44
+ });
45
+ logger.info("Overlay applied", { fields: result.target.fields });
46
+ }
47
+
48
+ //#endregion
49
+ export { runOverlayCustomizationExample };
50
+ //# sourceMappingURL=overlay-customization.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"overlay-customization.js","names":[],"sources":["../src/overlay-customization.ts"],"sourcesContent":["import { defineOverlay } from '@lssm/lib.overlay-engine/spec';\nimport { signOverlay } from '@lssm/lib.overlay-engine/signer';\nimport { OverlayEngine, OverlayRegistry } from '@lssm/lib.overlay-engine';\nimport { Logger, LogLevel } from '@lssm/lib.logger';\n\nconst logger = new Logger({\n level: process.env.NODE_ENV === 'production' ? LogLevel.INFO : LogLevel.DEBUG,\n environment:\n (process.env.NODE_ENV as 'production' | 'development' | 'test') ||\n 'development',\n enableColors: process.env.NODE_ENV !== 'production',\n});\n\nexport async function runOverlayCustomizationExample(): Promise<void> {\n const registry = new OverlayRegistry({ allowUnsigned: true });\n const engine = new OverlayEngine({ registry });\n\n const overlay = defineOverlay({\n overlayId: 'demo-overlay',\n version: '1.0.0',\n appliesTo: {\n capability: 'billing.createOrder',\n tenantId: 'demo',\n },\n modifications: [\n { type: 'hideField', field: 'internalNotes' },\n {\n type: 'renameLabel',\n field: 'customerReference',\n newLabel: 'PO Number',\n },\n ],\n });\n\n const signed = await signOverlay(overlay, process.env.PRIVATE_KEY_PEM ?? '');\n registry.register(signed);\n\n const result = engine.apply({\n target: {\n fields: [\n {\n key: 'customerReference',\n label: 'Customer Reference',\n visible: true,\n },\n { key: 'internalNotes', label: 'Internal Notes', visible: true },\n ],\n },\n capability: 'billing.createOrder',\n tenantId: 'demo',\n });\n\n logger.info('Overlay applied', { fields: result.target.fields });\n}\n"],"mappings":";;;;;;AAKA,MAAM,SAAS,IAAI,OAAO;CACxB,OAAO,QAAQ,IAAI,aAAa,eAAe,SAAS,OAAO,SAAS;CACxE,aACG,QAAQ,IAAI,YACb;CACF,cAAc,QAAQ,IAAI,aAAa;CACxC,CAAC;AAEF,eAAsB,iCAAgD;CACpE,MAAM,WAAW,IAAI,gBAAgB,EAAE,eAAe,MAAM,CAAC;CAC7D,MAAM,SAAS,IAAI,cAAc,EAAE,UAAU,CAAC;CAmB9C,MAAM,SAAS,MAAM,YAjBL,cAAc;EAC5B,WAAW;EACX,SAAS;EACT,WAAW;GACT,YAAY;GACZ,UAAU;GACX;EACD,eAAe,CACb;GAAE,MAAM;GAAa,OAAO;GAAiB,EAC7C;GACE,MAAM;GACN,OAAO;GACP,UAAU;GACX,CACF;EACF,CAAC,EAEwC,QAAQ,IAAI,mBAAmB,GAAG;AAC5E,UAAS,SAAS,OAAO;CAEzB,MAAM,SAAS,OAAO,MAAM;EAC1B,QAAQ,EACN,QAAQ,CACN;GACE,KAAK;GACL,OAAO;GACP,SAAS;GACV,EACD;GAAE,KAAK;GAAiB,OAAO;GAAkB,SAAS;GAAM,CACjE,EACF;EACD,YAAY;EACZ,UAAU;EACX,CAAC;AAEF,QAAO,KAAK,mBAAmB,EAAE,QAAQ,OAAO,OAAO,QAAQ,CAAC"}
@@ -0,0 +1,8 @@
1
+ import { WorkflowSpec } from "./libs/contracts/src/workflow/spec.js";
2
+
3
+ //#region src/workflow-extension.d.ts
4
+ declare function composeTenantWorkflowExample(): WorkflowSpec;
5
+ declare function logTenantWorkflowSteps(workflow: WorkflowSpec): void;
6
+ //#endregion
7
+ export { composeTenantWorkflowExample, logTenantWorkflowSteps };
8
+ //# sourceMappingURL=workflow-extension.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workflow-extension.d.ts","names":[],"sources":["../src/workflow-extension.ts"],"sourcesContent":[],"mappings":";;;iBAiCgB,4BAAA,CAAA,GAAgC;iBAwBhC,sBAAA,WAAiC"}