@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.
- package/.turbo/turbo-build$colon$bundle.log +132 -0
- package/.turbo/turbo-build.log +128 -12
- package/CHANGELOG.md +43 -0
- package/LICENSE +21 -0
- package/dist/behavior-tracking.d.ts +5 -0
- package/dist/behavior-tracking.d.ts.map +1 -0
- package/dist/behavior-tracking.js +48 -1
- package/dist/behavior-tracking.js.map +1 -0
- package/dist/docs/index.d.ts +1 -0
- package/dist/docs/index.js +1 -1
- package/dist/docs/personalization.docblock.d.ts +1 -0
- package/dist/docs/personalization.docblock.js +29 -8
- package/dist/docs/personalization.docblock.js.map +1 -0
- package/dist/example.d.ts +34 -0
- package/dist/example.d.ts.map +1 -0
- package/dist/example.js +39 -1
- package/dist/example.js.map +1 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.js +7 -1
- package/dist/libs/contracts/src/app-config/lifecycle.d.ts +1 -0
- package/dist/libs/contracts/src/app-config/runtime.d.ts +13 -0
- package/dist/libs/contracts/src/app-config/spec.d.ts +8 -0
- package/dist/libs/contracts/src/capabilities/capabilities.d.ts +12 -0
- package/dist/libs/contracts/src/capabilities/capabilities.d.ts.map +1 -0
- package/dist/libs/contracts/src/capabilities/index.d.ts +2 -0
- package/dist/libs/contracts/src/capabilities/openbanking.d.ts +1 -0
- package/dist/libs/contracts/src/data-views/data-views.d.ts +4 -0
- package/dist/libs/contracts/src/data-views/index.d.ts +3 -0
- package/dist/libs/contracts/src/data-views/query-generator.d.ts +1 -0
- package/dist/libs/contracts/src/data-views/runtime.d.ts +1 -0
- package/dist/libs/contracts/src/docs/accessibility_wcag_compliance_specs.docblock.d.ts +1 -0
- package/dist/libs/contracts/src/docs/index.d.ts +23 -0
- package/dist/libs/contracts/src/docs/presentations.d.ts +2 -0
- package/dist/libs/contracts/src/docs/registry.d.ts +10 -0
- package/dist/libs/contracts/src/docs/registry.d.ts.map +1 -0
- package/dist/libs/contracts/src/docs/tech/auth/better-auth-nextjs.docblock.d.ts +1 -0
- package/dist/libs/contracts/src/docs/tech/contracts/openapi-export.docblock.d.ts +1 -0
- package/dist/libs/contracts/src/docs/tech/lifecycle-stage-system.docblock.d.ts +1 -0
- package/dist/libs/contracts/src/docs/tech/llm/llm-integration.docblock.d.ts +1 -0
- package/dist/libs/contracts/src/docs/tech/mcp-endpoints.docblock.d.ts +1 -0
- package/dist/libs/contracts/src/docs/tech/presentation-runtime.docblock.d.ts +1 -0
- package/dist/libs/contracts/src/docs/tech/schema/README.docblock.d.ts +1 -0
- package/dist/libs/contracts/src/docs/tech/studio/learning-events.docblock.d.ts +1 -0
- package/dist/libs/contracts/src/docs/tech/studio/learning-journeys.docblock.d.ts +1 -0
- package/dist/libs/contracts/src/docs/tech/studio/platform-admin-panel.docblock.d.ts +1 -0
- package/dist/libs/contracts/src/docs/tech/studio/project-access-teams.docblock.d.ts +1 -0
- package/dist/libs/contracts/src/docs/tech/studio/project-routing.docblock.d.ts +1 -0
- package/dist/libs/contracts/src/docs/tech/studio/sandbox-unlogged.docblock.d.ts +1 -0
- package/dist/libs/contracts/src/docs/tech/studio/team-invitations.docblock.d.ts +1 -0
- package/dist/libs/contracts/src/docs/tech/studio/workspace-ops.docblock.d.ts +1 -0
- package/dist/libs/contracts/src/docs/tech/studio/workspaces.docblock.d.ts +1 -0
- package/dist/libs/contracts/src/docs/tech/telemetry-ingest.docblock.d.ts +1 -0
- package/dist/libs/contracts/src/docs/tech/templates/runtime.docblock.d.ts +1 -0
- package/dist/libs/contracts/src/docs/tech/vscode-extension.docblock.d.ts +1 -0
- package/dist/libs/contracts/src/docs/tech/workflows/overview.docblock.d.ts +1 -0
- package/dist/libs/contracts/src/events.d.ts +4 -0
- package/dist/libs/contracts/src/experiments/spec-resolver.d.ts +4 -0
- package/dist/libs/contracts/src/experiments/spec.d.ts +12 -0
- package/dist/libs/contracts/src/experiments/spec.d.ts.map +1 -0
- package/dist/libs/contracts/src/features.d.ts +19 -0
- package/dist/libs/contracts/src/features.d.ts.map +1 -0
- package/dist/libs/contracts/src/install.d.ts +7 -0
- package/dist/libs/contracts/src/integrations/connection.d.ts +1 -0
- package/dist/libs/contracts/src/integrations/spec.d.ts +2 -0
- package/dist/libs/contracts/src/knowledge/spec.d.ts +2 -0
- package/dist/libs/contracts/src/operations/index.d.ts +2 -0
- package/dist/libs/contracts/src/operations/operation.d.ts +6 -0
- package/dist/libs/contracts/src/operations/registry.d.ts +6 -0
- package/dist/libs/contracts/src/ownership.d.ts +61 -0
- package/dist/libs/contracts/src/ownership.d.ts.map +1 -0
- package/dist/libs/contracts/src/policy/registry.d.ts +2 -0
- package/dist/libs/contracts/src/policy/spec.d.ts +1 -0
- package/dist/libs/contracts/src/presentations/index.d.ts +3 -0
- package/dist/libs/contracts/src/presentations/presentations.d.ts +2 -0
- package/dist/libs/contracts/src/presentations/registry.d.ts +2 -0
- package/dist/libs/contracts/src/presentations/transform-engine.d.ts +2 -0
- package/dist/libs/contracts/src/registry-utils.d.ts +1 -0
- package/dist/libs/contracts/src/registry.d.ts +3 -0
- package/dist/libs/contracts/src/resources.d.ts +2 -0
- package/dist/libs/contracts/src/telemetry/anomaly.d.ts +2 -0
- package/dist/libs/contracts/src/telemetry/index.d.ts +3 -0
- package/dist/libs/contracts/src/telemetry/spec.d.ts +1 -0
- package/dist/libs/contracts/src/telemetry/tracker.d.ts +2 -0
- package/dist/libs/contracts/src/tests/spec.d.ts +1 -0
- package/dist/libs/contracts/src/themes.d.ts +1 -0
- package/dist/libs/contracts/src/types.d.ts +5 -0
- package/dist/libs/contracts/src/workflow/spec.d.ts +89 -0
- package/dist/libs/contracts/src/workflow/spec.d.ts.map +1 -0
- package/dist/overlay-customization.d.ts +5 -0
- package/dist/overlay-customization.d.ts.map +1 -0
- package/dist/overlay-customization.js +50 -1
- package/dist/overlay-customization.js.map +1 -0
- package/dist/workflow-extension.d.ts +8 -0
- package/dist/workflow-extension.d.ts.map +1 -0
- package/dist/workflow-extension.js +67 -1
- package/dist/workflow-extension.js.map +1 -0
- package/package.json +29 -19
- package/src/behavior-tracking.ts +3 -1
- package/src/overlay-customization.ts +3 -1
- package/src/workflow-extension.ts +7 -4
- package/tsconfig.json +8 -2
- package/tsconfig.tsbuildinfo +0 -1
|
@@ -1 +1,67 @@
|
|
|
1
|
-
import{LogLevel
|
|
1
|
+
import { LogLevel, Logger } from "@lssm/lib.logger";
|
|
2
|
+
import { StabilityEnum } from "@lssm/lib.contracts";
|
|
3
|
+
import { WorkflowComposer } from "@lssm/lib.workflow-composer";
|
|
4
|
+
|
|
5
|
+
//#region src/workflow-extension.ts
|
|
6
|
+
const logger = new Logger({
|
|
7
|
+
level: process.env.NODE_ENV === "production" ? LogLevel.INFO : LogLevel.DEBUG,
|
|
8
|
+
environment: process.env.NODE_ENV || "development",
|
|
9
|
+
enableColors: process.env.NODE_ENV !== "production"
|
|
10
|
+
});
|
|
11
|
+
const BaseWorkflow = {
|
|
12
|
+
meta: {
|
|
13
|
+
key: "billing.invoiceApproval",
|
|
14
|
+
version: 1,
|
|
15
|
+
title: "Invoice Approval",
|
|
16
|
+
owners: [],
|
|
17
|
+
tags: [],
|
|
18
|
+
description: "",
|
|
19
|
+
domain: "billing",
|
|
20
|
+
stability: StabilityEnum.Stable
|
|
21
|
+
},
|
|
22
|
+
definition: {
|
|
23
|
+
steps: [{
|
|
24
|
+
id: "validate-invoice",
|
|
25
|
+
type: "automation",
|
|
26
|
+
label: "Validate Invoice"
|
|
27
|
+
}, {
|
|
28
|
+
id: "final-approval",
|
|
29
|
+
type: "human",
|
|
30
|
+
label: "Final Approval"
|
|
31
|
+
}],
|
|
32
|
+
transitions: [{
|
|
33
|
+
from: "validate-invoice",
|
|
34
|
+
to: "final-approval"
|
|
35
|
+
}]
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
function composeTenantWorkflowExample() {
|
|
39
|
+
const composer = new WorkflowComposer();
|
|
40
|
+
composer.register({
|
|
41
|
+
workflow: "billing.invoiceApproval",
|
|
42
|
+
tenantId: "acme",
|
|
43
|
+
customSteps: [{
|
|
44
|
+
after: "validate-invoice",
|
|
45
|
+
inject: {
|
|
46
|
+
id: "acme-legal",
|
|
47
|
+
type: "human",
|
|
48
|
+
label: "ACME Legal Review"
|
|
49
|
+
},
|
|
50
|
+
transitionTo: "final-approval"
|
|
51
|
+
}]
|
|
52
|
+
});
|
|
53
|
+
return composer.compose({
|
|
54
|
+
base: BaseWorkflow,
|
|
55
|
+
tenantId: "acme"
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
function logTenantWorkflowSteps(workflow) {
|
|
59
|
+
logger.info("Tenant workflow composed", {
|
|
60
|
+
workflow: workflow.meta.key,
|
|
61
|
+
steps: workflow.definition.steps.map((step) => step.id)
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
//#endregion
|
|
66
|
+
export { composeTenantWorkflowExample, logTenantWorkflowSteps };
|
|
67
|
+
//# sourceMappingURL=workflow-extension.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workflow-extension.js","names":["BaseWorkflow: WorkflowSpec"],"sources":["../src/workflow-extension.ts"],"sourcesContent":["import { StabilityEnum } from '@lssm/lib.contracts';\nimport type { WorkflowSpec } from '@lssm/lib.contracts/workflow/spec';\nimport { WorkflowComposer } from '@lssm/lib.workflow-composer';\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\nconst BaseWorkflow: WorkflowSpec = {\n meta: {\n key: 'billing.invoiceApproval',\n version: 1,\n title: 'Invoice Approval',\n owners: [],\n tags: [],\n description: '',\n domain: 'billing',\n stability: StabilityEnum.Stable,\n },\n definition: {\n steps: [\n { id: 'validate-invoice', type: 'automation', label: 'Validate Invoice' },\n { id: 'final-approval', type: 'human', label: 'Final Approval' },\n ],\n transitions: [{ from: 'validate-invoice', to: 'final-approval' }],\n },\n};\n\nexport function composeTenantWorkflowExample(): WorkflowSpec {\n const composer = new WorkflowComposer();\n composer.register({\n workflow: 'billing.invoiceApproval',\n tenantId: 'acme',\n customSteps: [\n {\n after: 'validate-invoice',\n inject: {\n id: 'acme-legal',\n type: 'human',\n label: 'ACME Legal Review',\n },\n transitionTo: 'final-approval',\n },\n ],\n });\n\n return composer.compose({\n base: BaseWorkflow,\n tenantId: 'acme',\n });\n}\n\nexport function logTenantWorkflowSteps(workflow: WorkflowSpec): void {\n logger.info('Tenant workflow composed', {\n workflow: workflow.meta.key,\n steps: workflow.definition.steps.map((step) => step.id),\n });\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,MAAMA,eAA6B;CACjC,MAAM;EACJ,KAAK;EACL,SAAS;EACT,OAAO;EACP,QAAQ,EAAE;EACV,MAAM,EAAE;EACR,aAAa;EACb,QAAQ;EACR,WAAW,cAAc;EAC1B;CACD,YAAY;EACV,OAAO,CACL;GAAE,IAAI;GAAoB,MAAM;GAAc,OAAO;GAAoB,EACzE;GAAE,IAAI;GAAkB,MAAM;GAAS,OAAO;GAAkB,CACjE;EACD,aAAa,CAAC;GAAE,MAAM;GAAoB,IAAI;GAAkB,CAAC;EAClE;CACF;AAED,SAAgB,+BAA6C;CAC3D,MAAM,WAAW,IAAI,kBAAkB;AACvC,UAAS,SAAS;EAChB,UAAU;EACV,UAAU;EACV,aAAa,CACX;GACE,OAAO;GACP,QAAQ;IACN,IAAI;IACJ,MAAM;IACN,OAAO;IACR;GACD,cAAc;GACf,CACF;EACF,CAAC;AAEF,QAAO,SAAS,QAAQ;EACtB,MAAM;EACN,UAAU;EACX,CAAC;;AAGJ,SAAgB,uBAAuB,UAA8B;AACnE,QAAO,KAAK,4BAA4B;EACtC,UAAU,SAAS,KAAK;EACxB,OAAO,SAAS,WAAW,MAAM,KAAK,SAAS,KAAK,GAAG;EACxD,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,22 +1,24 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@lssm/example.personalization",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.42.2",
|
|
4
4
|
"description": "Personalization examples: behavior tracking, overlay customization, workflow extension.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
7
7
|
"types": "./dist/index.d.ts",
|
|
8
8
|
"exports": {
|
|
9
|
-
".": "./
|
|
10
|
-
"./behavior-tracking": "./
|
|
11
|
-
"./docs": "./
|
|
12
|
-
"./docs/personalization.docblock": "./
|
|
13
|
-
"./example": "./
|
|
14
|
-
"./overlay-customization": "./
|
|
15
|
-
"./workflow-extension": "./
|
|
9
|
+
".": "./dist/index.js",
|
|
10
|
+
"./behavior-tracking": "./dist/behavior-tracking.js",
|
|
11
|
+
"./docs": "./dist/docs/index.js",
|
|
12
|
+
"./docs/personalization.docblock": "./dist/docs/personalization.docblock.js",
|
|
13
|
+
"./example": "./dist/example.js",
|
|
14
|
+
"./overlay-customization": "./dist/overlay-customization.js",
|
|
15
|
+
"./workflow-extension": "./dist/workflow-extension.js",
|
|
16
16
|
"./*": "./*"
|
|
17
17
|
},
|
|
18
18
|
"scripts": {
|
|
19
|
-
"
|
|
19
|
+
"publish:pkg": "bun publish --tolerate-republish --ignore-scripts --verbose",
|
|
20
|
+
"publish:pkg:canary": "bun publish:pkg --tag canary",
|
|
21
|
+
"build": "bun build:types && bun build:bundle",
|
|
20
22
|
"build:bundle": "tsdown",
|
|
21
23
|
"build:types": "tsc --noEmit",
|
|
22
24
|
"dev": "bun build:bundle --watch",
|
|
@@ -27,16 +29,17 @@
|
|
|
27
29
|
"test": "bun test"
|
|
28
30
|
},
|
|
29
31
|
"dependencies": {
|
|
30
|
-
"@lssm/lib.personalization": "
|
|
31
|
-
"@lssm/lib.overlay-engine": "
|
|
32
|
-
"@lssm/lib.workflow-composer": "
|
|
33
|
-
"@lssm/lib.
|
|
34
|
-
"@lssm/lib.
|
|
32
|
+
"@lssm/lib.personalization": "1.42.2",
|
|
33
|
+
"@lssm/lib.overlay-engine": "1.42.2",
|
|
34
|
+
"@lssm/lib.workflow-composer": "1.42.2",
|
|
35
|
+
"@lssm/lib.schema": "1.42.2",
|
|
36
|
+
"@lssm/lib.contracts": "1.42.2",
|
|
37
|
+
"@lssm/lib.logger": "1.42.2"
|
|
35
38
|
},
|
|
36
39
|
"devDependencies": {
|
|
37
|
-
"@lssm/tool.tsdown": "
|
|
38
|
-
"@lssm/tool.typescript": "
|
|
39
|
-
"tsdown": "^0.
|
|
40
|
+
"@lssm/tool.tsdown": "1.42.2",
|
|
41
|
+
"@lssm/tool.typescript": "1.42.2",
|
|
42
|
+
"tsdown": "^0.18.3",
|
|
40
43
|
"typescript": "^5.9.3"
|
|
41
44
|
},
|
|
42
45
|
"publishConfig": {
|
|
@@ -50,7 +53,14 @@
|
|
|
50
53
|
"./overlay-customization": "./dist/overlay-customization.js",
|
|
51
54
|
"./workflow-extension": "./dist/workflow-extension.js",
|
|
52
55
|
"./*": "./*"
|
|
53
|
-
}
|
|
56
|
+
},
|
|
57
|
+
"registry": "https://registry.npmjs.org/"
|
|
54
58
|
},
|
|
55
|
-
"module": "./dist/index.js"
|
|
59
|
+
"module": "./dist/index.js",
|
|
60
|
+
"license": "MIT",
|
|
61
|
+
"repository": {
|
|
62
|
+
"type": "git",
|
|
63
|
+
"url": "https://github.com/lssm-tech/contractspec.git",
|
|
64
|
+
"directory": "packages/examples/personalization"
|
|
65
|
+
}
|
|
56
66
|
}
|
package/src/behavior-tracking.ts
CHANGED
|
@@ -5,7 +5,9 @@ import { Logger, LogLevel } from '@lssm/lib.logger';
|
|
|
5
5
|
|
|
6
6
|
const logger = new Logger({
|
|
7
7
|
level: process.env.NODE_ENV === 'production' ? LogLevel.INFO : LogLevel.DEBUG,
|
|
8
|
-
environment:
|
|
8
|
+
environment:
|
|
9
|
+
(process.env.NODE_ENV as 'production' | 'development' | 'test') ||
|
|
10
|
+
'development',
|
|
9
11
|
enableColors: process.env.NODE_ENV !== 'production',
|
|
10
12
|
});
|
|
11
13
|
|
|
@@ -5,7 +5,9 @@ import { Logger, LogLevel } from '@lssm/lib.logger';
|
|
|
5
5
|
|
|
6
6
|
const logger = new Logger({
|
|
7
7
|
level: process.env.NODE_ENV === 'production' ? LogLevel.INFO : LogLevel.DEBUG,
|
|
8
|
-
environment:
|
|
8
|
+
environment:
|
|
9
|
+
(process.env.NODE_ENV as 'production' | 'development' | 'test') ||
|
|
10
|
+
'development',
|
|
9
11
|
enableColors: process.env.NODE_ENV !== 'production',
|
|
10
12
|
});
|
|
11
13
|
|
|
@@ -1,23 +1,26 @@
|
|
|
1
|
+
import { StabilityEnum } from '@lssm/lib.contracts';
|
|
1
2
|
import type { WorkflowSpec } from '@lssm/lib.contracts/workflow/spec';
|
|
2
3
|
import { WorkflowComposer } from '@lssm/lib.workflow-composer';
|
|
3
4
|
import { Logger, LogLevel } from '@lssm/lib.logger';
|
|
4
5
|
|
|
5
6
|
const logger = new Logger({
|
|
6
7
|
level: process.env.NODE_ENV === 'production' ? LogLevel.INFO : LogLevel.DEBUG,
|
|
7
|
-
environment:
|
|
8
|
+
environment:
|
|
9
|
+
(process.env.NODE_ENV as 'production' | 'development' | 'test') ||
|
|
10
|
+
'development',
|
|
8
11
|
enableColors: process.env.NODE_ENV !== 'production',
|
|
9
12
|
});
|
|
10
13
|
|
|
11
14
|
const BaseWorkflow: WorkflowSpec = {
|
|
12
15
|
meta: {
|
|
13
|
-
|
|
16
|
+
key: 'billing.invoiceApproval',
|
|
14
17
|
version: 1,
|
|
15
18
|
title: 'Invoice Approval',
|
|
16
19
|
owners: [],
|
|
17
20
|
tags: [],
|
|
18
21
|
description: '',
|
|
19
22
|
domain: 'billing',
|
|
20
|
-
stability:
|
|
23
|
+
stability: StabilityEnum.Stable,
|
|
21
24
|
},
|
|
22
25
|
definition: {
|
|
23
26
|
steps: [
|
|
@@ -54,7 +57,7 @@ export function composeTenantWorkflowExample(): WorkflowSpec {
|
|
|
54
57
|
|
|
55
58
|
export function logTenantWorkflowSteps(workflow: WorkflowSpec): void {
|
|
56
59
|
logger.info('Tenant workflow composed', {
|
|
57
|
-
workflow: workflow.meta.
|
|
60
|
+
workflow: workflow.meta.key,
|
|
58
61
|
steps: workflow.definition.steps.map((step) => step.id),
|
|
59
62
|
});
|
|
60
63
|
}
|
package/tsconfig.json
CHANGED
|
@@ -3,8 +3,14 @@
|
|
|
3
3
|
"include": ["src"],
|
|
4
4
|
"exclude": ["node_modules", "dist"],
|
|
5
5
|
"compilerOptions": {
|
|
6
|
-
"
|
|
7
|
-
"
|
|
6
|
+
"outDir": "dist",
|
|
7
|
+
"paths": {
|
|
8
|
+
"@lssm/lib.personalization/*": ["../../libs/personalization/src/*"],
|
|
9
|
+
"@lssm/lib.contracts/*": ["../../libs/contracts/src/*"],
|
|
10
|
+
"@lssm/lib.contracts": ["../../libs/contracts/src/index.ts"],
|
|
11
|
+
"@lssm/lib.overlay-engine/*": ["../../libs/overlay-engine/src/*"],
|
|
12
|
+
"@lssm/lib.overlay-engine": ["../../libs/overlay-engine/src/index.ts"]
|
|
13
|
+
}
|
|
8
14
|
}
|
|
9
15
|
}
|
|
10
16
|
|