@lssm/example.workflow-system 0.0.0-canary-20251217062139 → 0.0.0-canary-20251217060834
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/dist/approval/approval.contracts.d.ts +134 -134
- package/dist/approval/approval.contracts.js +1 -1
- package/dist/approval/approval.enum.d.ts +3 -3
- package/dist/approval/approval.enum.js +1 -1
- package/dist/approval/approval.event.d.ts +32 -32
- package/dist/approval/approval.event.js +1 -1
- package/dist/approval/approval.schema.d.ts +24 -24
- package/dist/approval/approval.schema.js +1 -1
- package/dist/docs/workflow-system.docblock.js +1 -1
- package/dist/entities/approval.d.ts +36 -36
- package/dist/entities/approval.js +1 -1
- package/dist/entities/index.d.ts +127 -127
- package/dist/entities/instance.d.ts +47 -47
- package/dist/entities/instance.js +1 -1
- package/dist/entities/step.d.ts +32 -32
- package/dist/entities/step.js +1 -1
- package/dist/entities/workflow.d.ts +23 -23
- package/dist/entities/workflow.js +1 -1
- package/dist/index.d.ts +3 -0
- package/dist/instance/instance.contracts.d.ts +256 -256
- package/dist/instance/instance.contracts.js +1 -1
- package/dist/instance/instance.enum.d.ts +2 -2
- package/dist/instance/instance.enum.js +1 -1
- package/dist/instance/instance.event.d.ts +87 -87
- package/dist/instance/instance.event.js +1 -1
- package/dist/instance/instance.schema.d.ts +54 -54
- package/dist/instance/instance.schema.js +1 -1
- package/dist/workflow/workflow.contracts.d.ts +246 -246
- package/dist/workflow/workflow.contracts.js +1 -1
- package/dist/workflow/workflow.enum.d.ts +5 -5
- package/dist/workflow/workflow.enum.js +1 -1
- package/dist/workflow/workflow.event.d.ts +32 -32
- package/dist/workflow/workflow.event.js +1 -1
- package/dist/workflow/workflow.schema.d.ts +63 -63
- package/dist/workflow/workflow.schema.js +1 -1
- package/package.json +11 -11
- package/dist/libs/contracts/dist/capabilities/openbanking.js +0 -1
- package/dist/libs/contracts/dist/client/index.js +0 -1
- package/dist/libs/contracts/dist/client/react/feature-render.js +0 -1
- package/dist/libs/contracts/dist/client/react/form-render.js +0 -1
- package/dist/libs/contracts/dist/client/react/index.js +0 -1
- package/dist/libs/contracts/dist/contract-registry/index.js +0 -1
- package/dist/libs/contracts/dist/contract-registry/schemas.js +0 -1
- package/dist/libs/contracts/dist/docs/PUBLISHING.docblock.js +0 -76
- package/dist/libs/contracts/dist/docs/accessibility_wcag_compliance_specs.docblock.js +0 -350
- package/dist/libs/contracts/dist/docs/index.js +0 -1
- package/dist/libs/contracts/dist/docs/presentations.js +0 -1
- package/dist/libs/contracts/dist/docs/registry.js +0 -1
- package/dist/libs/contracts/dist/docs/tech/PHASE_1_QUICKSTART.docblock.js +0 -383
- package/dist/libs/contracts/dist/docs/tech/PHASE_2_AI_NATIVE_OPERATIONS.docblock.js +0 -68
- package/dist/libs/contracts/dist/docs/tech/PHASE_3_AUTO_EVOLUTION.docblock.js +0 -140
- package/dist/libs/contracts/dist/docs/tech/PHASE_4_PERSONALIZATION_ENGINE.docblock.js +0 -86
- package/dist/libs/contracts/dist/docs/tech/PHASE_5_ZERO_TOUCH_OPERATIONS.docblock.js +0 -1
- package/dist/libs/contracts/dist/docs/tech/auth/better-auth-nextjs.docblock.js +0 -58
- package/dist/libs/contracts/dist/docs/tech/contracts/openapi-export.docblock.js +0 -38
- package/dist/libs/contracts/dist/docs/tech/lifecycle-stage-system.docblock.js +0 -213
- package/dist/libs/contracts/dist/docs/tech/llm/llm-integration.docblock.js +0 -289
- package/dist/libs/contracts/dist/docs/tech/mcp-endpoints.docblock.js +0 -1
- package/dist/libs/contracts/dist/docs/tech/presentation-runtime.docblock.js +0 -1
- package/dist/libs/contracts/dist/docs/tech/schema/README.docblock.js +0 -262
- package/dist/libs/contracts/dist/docs/tech/studio/learning-events.docblock.js +0 -1
- package/dist/libs/contracts/dist/docs/tech/studio/learning-journeys.docblock.js +0 -57
- package/dist/libs/contracts/dist/docs/tech/studio/platform-admin-panel.docblock.js +0 -63
- package/dist/libs/contracts/dist/docs/tech/studio/project-access-teams.docblock.js +0 -36
- package/dist/libs/contracts/dist/docs/tech/studio/project-routing.docblock.js +0 -1
- package/dist/libs/contracts/dist/docs/tech/studio/sandbox-unlogged.docblock.js +0 -20
- package/dist/libs/contracts/dist/docs/tech/studio/team-invitations.docblock.js +0 -65
- package/dist/libs/contracts/dist/docs/tech/studio/workspace-ops.docblock.js +0 -1
- package/dist/libs/contracts/dist/docs/tech/studio/workspaces.docblock.js +0 -41
- package/dist/libs/contracts/dist/docs/tech/telemetry-ingest.docblock.js +0 -122
- package/dist/libs/contracts/dist/docs/tech/templates/runtime.docblock.js +0 -1
- package/dist/libs/contracts/dist/docs/tech/vscode-extension.docblock.js +0 -68
- package/dist/libs/contracts/dist/docs/tech/workflows/overview.docblock.js +0 -1
- package/dist/libs/contracts/dist/events.js +0 -1
- package/dist/libs/contracts/dist/experiments/evaluator.js +0 -1
- package/dist/libs/contracts/dist/index.js +0 -1
- package/dist/libs/contracts/dist/install.js +0 -1
- package/dist/libs/contracts/dist/integrations/contracts.js +0 -1
- package/dist/libs/contracts/dist/integrations/index.js +0 -1
- package/dist/libs/contracts/dist/integrations/openbanking/contracts/accounts.js +0 -1
- package/dist/libs/contracts/dist/integrations/openbanking/contracts/balances.js +0 -1
- package/dist/libs/contracts/dist/integrations/openbanking/contracts/index.js +0 -1
- package/dist/libs/contracts/dist/integrations/openbanking/contracts/transactions.js +0 -1
- package/dist/libs/contracts/dist/integrations/openbanking/models.js +0 -1
- package/dist/libs/contracts/dist/integrations/openbanking/telemetry.js +0 -1
- package/dist/libs/contracts/dist/integrations/providers/elevenlabs.js +0 -1
- package/dist/libs/contracts/dist/integrations/providers/gcs-storage.js +0 -1
- package/dist/libs/contracts/dist/integrations/providers/gmail.js +0 -1
- package/dist/libs/contracts/dist/integrations/providers/google-calendar.js +0 -1
- package/dist/libs/contracts/dist/integrations/providers/index.js +0 -1
- package/dist/libs/contracts/dist/integrations/providers/mistral.js +0 -1
- package/dist/libs/contracts/dist/integrations/providers/postmark.js +0 -1
- package/dist/libs/contracts/dist/integrations/providers/powens.js +0 -1
- package/dist/libs/contracts/dist/integrations/providers/qdrant.js +0 -1
- package/dist/libs/contracts/dist/integrations/providers/registry.js +0 -1
- package/dist/libs/contracts/dist/integrations/providers/stripe.js +0 -1
- package/dist/libs/contracts/dist/integrations/providers/twilio-sms.js +0 -1
- package/dist/libs/contracts/dist/jsonschema.js +0 -1
- package/dist/libs/contracts/dist/knowledge/contracts.js +0 -1
- package/dist/libs/contracts/dist/knowledge/index.js +0 -1
- package/dist/libs/contracts/dist/knowledge/spaces/email-threads.js +0 -1
- package/dist/libs/contracts/dist/knowledge/spaces/financial-docs.js +0 -1
- package/dist/libs/contracts/dist/knowledge/spaces/financial-overview.js +0 -1
- package/dist/libs/contracts/dist/knowledge/spaces/index.js +0 -1
- package/dist/libs/contracts/dist/knowledge/spaces/product-canon.js +0 -1
- package/dist/libs/contracts/dist/knowledge/spaces/support-faq.js +0 -1
- package/dist/libs/contracts/dist/knowledge/spaces/uploaded-docs.js +0 -1
- package/dist/libs/contracts/dist/llm/exporters.js +0 -1
- package/dist/libs/contracts/dist/llm/index.js +0 -1
- package/dist/libs/contracts/dist/llm/prompts.js +0 -1
- package/dist/libs/contracts/dist/onboarding-base.js +0 -1
- package/dist/libs/contracts/dist/openapi.js +0 -1
- package/dist/libs/contracts/dist/ownership.js +0 -1
- package/dist/libs/contracts/dist/presentations.js +0 -1
- package/dist/libs/contracts/dist/presentations.v2.js +0 -1
- package/dist/libs/contracts/dist/prompt.js +0 -1
- package/dist/libs/contracts/dist/promptRegistry.js +0 -1
- package/dist/libs/contracts/dist/regenerator/index.js +0 -1
- package/dist/libs/contracts/dist/regenerator/service.js +0 -1
- package/dist/libs/contracts/dist/registry.js +0 -1
- package/dist/libs/contracts/dist/resources.js +0 -1
- package/dist/libs/contracts/dist/schema/dist/EnumType.js +0 -1
- package/dist/libs/contracts/dist/schema/dist/FieldType.js +0 -1
- package/dist/libs/contracts/dist/schema/dist/ScalarTypeEnum.js +0 -1
- package/dist/libs/contracts/dist/schema/dist/SchemaModel.js +0 -1
- package/dist/libs/contracts/dist/schema/dist/entity/defineEntity.js +0 -1
- package/dist/libs/contracts/dist/schema/dist/entity/index.js +0 -1
- package/dist/libs/contracts/dist/schema/dist/entity/types.js +0 -1
- package/dist/libs/contracts/dist/schema/dist/index.js +0 -1
- package/dist/libs/contracts/dist/server/graphql-pothos.js +0 -1
- package/dist/libs/contracts/dist/server/index.js +0 -1
- package/dist/libs/contracts/dist/server/mcp/createMcpServer.js +0 -1
- package/dist/libs/contracts/dist/server/mcp/registerPresentations.js +0 -1
- package/dist/libs/contracts/dist/server/mcp/registerPrompts.js +0 -1
- package/dist/libs/contracts/dist/server/mcp/registerResources.js +0 -1
- package/dist/libs/contracts/dist/server/mcp/registerTools.js +0 -1
- package/dist/libs/contracts/dist/server/provider-mcp.js +0 -1
- package/dist/libs/contracts/dist/server/rest-elysia.js +0 -1
- package/dist/libs/contracts/dist/server/rest-express.js +0 -1
- package/dist/libs/contracts/dist/server/rest-generic.js +0 -1
- package/dist/libs/contracts/dist/server/rest-next-app.js +0 -1
- package/dist/libs/contracts/dist/server/rest-next-pages.js +0 -1
- package/dist/libs/contracts/dist/spec.js +0 -1
- package/dist/libs/contracts/dist/telemetry/index.js +0 -1
- package/dist/libs/contracts/dist/telemetry/tracker.js +0 -1
- package/dist/libs/contracts/dist/tests/index.js +0 -1
- package/dist/libs/contracts/dist/tests/runner.js +0 -1
- package/dist/libs/contracts/dist/workflow/index.js +0 -1
- package/dist/libs/contracts/dist/workflow/runner.js +0 -1
- package/dist/libs/schema/dist/EnumType.js +0 -1
- package/dist/libs/schema/dist/FieldType.js +0 -1
- package/dist/libs/schema/dist/ScalarTypeEnum.js +0 -1
- package/dist/libs/schema/dist/SchemaModel.js +0 -1
- package/dist/libs/schema/dist/entity/defineEntity.js +0 -1
- package/dist/libs/schema/dist/entity/index.js +0 -1
- package/dist/libs/schema/dist/entity/types.js +0 -1
- package/dist/libs/schema/dist/index.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{ApprovalDecisionEnum as e,ApprovalStatusEnum as t}from"./approval.enum.js";import{ApprovalCommentModel as n,ApprovalRequestModel as r}from"./approval.schema.js";import{ScalarTypeEnum as i,defineSchemaModel as a}from"@lssm/lib.schema";import{defineCommand as o,defineQuery as s}from"@lssm/lib.contracts/spec";const c=[`@example.workflow-system`],l=o({meta:{name:`workflow.approval.decide`,version:1,stability:`stable`,owners:[...c],tags:[`workflow`,`approval`,`decision`],description:`Submit an approval decision (approve/reject).`,goal:`Allow approvers to make decisions on requests.`,context:`Approval inbox, workflow detail.`},io:{input:a({name:`ApproveRejectInput`,fields:{requestId:{type:i.String_unsecure(),isOptional:!1},decision:{type:e,isOptional:!1},comment:{type:i.String_unsecure(),isOptional:!0},data:{type:i.JSON(),isOptional:!0}}}),output:r},policy:{auth:`user`},sideEffects:{emits:[{name:`workflow.approval.decided`,version:1,when:`Decision is made`,payload:r}],audit:[`workflow.approval.decided`]}}),u=o({meta:{name:`workflow.approval.delegate`,version:1,stability:`stable`,owners:[...c],tags:[`workflow`,`approval`,`delegate`],description:`Delegate an approval request to another user.`,goal:`Allow approvers to pass approval to others.`,context:`Approval inbox.`},io:{input:a({name:`DelegateInput`,fields:{requestId:{type:i.String_unsecure(),isOptional:!1},delegateTo:{type:i.String_unsecure(),isOptional:!1},reason:{type:i.String_unsecure(),isOptional:!0}}}),output:r},policy:{auth:`user`},sideEffects:{emits:[{name:`workflow.approval.delegated`,version:1,when:`Approval is delegated`,payload:r}],audit:[`workflow.approval.delegated`]}}),d=o({meta:{name:`workflow.approval.comment.add`,version:1,stability:`stable`,owners:[...c],tags:[`workflow`,`approval`,`comment`],description:`Add a comment to an approval request.`,goal:`Allow discussion on approval requests.`,context:`Approval detail view.`},io:{input:a({name:`AddCommentInput`,fields:{requestId:{type:i.String_unsecure(),isOptional:!1},content:{type:i.NonEmptyString(),isOptional:!1},isInternal:{type:i.Boolean(),isOptional:!0}}}),output:n},policy:{auth:`user`},sideEffects:{emits:[{name:`workflow.approval.comment.added`,version:1,when:`Comment is added`,payload:n}]}}),f=s({meta:{name:`workflow.approval.list.mine`,version:1,stability:`stable`,owners:[...c],tags:[`workflow`,`approval`,`list`,`inbox`],description:`List approval requests assigned to current user.`,goal:`Show pending approvals in user inbox.`,context:`Approval inbox, dashboard widget.`},io:{input:a({name:`ListMyApprovalsInput`,fields:{status:{type:t,isOptional:!0},limit:{type:i.Int_unsecure(),isOptional:!0,defaultValue:20},offset:{type:i.Int_unsecure(),isOptional:!0,defaultValue:0}}}),output:a({name:`ListMyApprovalsOutput`,fields:{requests:{type:r,isArray:!0,isOptional:!1},total:{type:i.Int_unsecure(),isOptional:!1},pendingCount:{type:i.Int_unsecure(),isOptional:!1}}})},policy:{auth:`user`}}),p=s({meta:{name:`workflow.approval.get`,version:1,stability:`stable`,owners:[...c],tags:[`workflow`,`approval`,`get`],description:`Get an approval request with details.`,goal:`View approval request details.`,context:`Approval detail view.`},io:{input:a({name:`GetApprovalInput`,fields:{requestId:{type:i.String_unsecure(),isOptional:!1}}}),output:r},policy:{auth:`user`}});export{d as AddApprovalCommentContract,u as DelegateApprovalContract,p as GetApprovalContract,f as ListMyApprovalsContract,l as SubmitDecisionContract};
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import * as
|
|
1
|
+
import * as _lssm_lib_schema533 from "@lssm/lib.schema";
|
|
2
2
|
|
|
3
3
|
//#region src/approval/approval.enum.d.ts
|
|
4
4
|
/**
|
|
5
5
|
* Approval status enum.
|
|
6
6
|
*/
|
|
7
|
-
declare const ApprovalStatusEnum:
|
|
7
|
+
declare const ApprovalStatusEnum: _lssm_lib_schema533.EnumType<[string, string, string, string, string, string, string]>;
|
|
8
8
|
/**
|
|
9
9
|
* Approval decision enum.
|
|
10
10
|
*/
|
|
11
|
-
declare const ApprovalDecisionEnum:
|
|
11
|
+
declare const ApprovalDecisionEnum: _lssm_lib_schema533.EnumType<[string, string, string, string, string]>;
|
|
12
12
|
//#endregion
|
|
13
13
|
export { ApprovalDecisionEnum, ApprovalStatusEnum };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{defineEnum as e}from"@lssm/lib.schema";const t=e(`ApprovalStatus`,[`PENDING`,`APPROVED`,`REJECTED`,`DELEGATED`,`ESCALATED`,`WITHDRAWN`,`EXPIRED`]),n=e(`ApprovalDecision`,[`APPROVE`,`REJECT`,`REQUEST_CHANGES`,`DELEGATE`,`ABSTAIN`]);export{n as ApprovalDecisionEnum,t as ApprovalStatusEnum};
|
|
@@ -1,128 +1,128 @@
|
|
|
1
|
-
import * as
|
|
2
|
-
import * as
|
|
1
|
+
import * as _lssm_lib_schema588 from "@lssm/lib.schema";
|
|
2
|
+
import * as _lssm_lib_contracts20 from "@lssm/lib.contracts";
|
|
3
3
|
|
|
4
4
|
//#region src/approval/approval.event.d.ts
|
|
5
5
|
/**
|
|
6
6
|
* ApprovalRequestedEvent - An approval has been requested.
|
|
7
7
|
*/
|
|
8
|
-
declare const ApprovalRequestedEvent:
|
|
8
|
+
declare const ApprovalRequestedEvent: _lssm_lib_contracts20.EventSpec<_lssm_lib_schema588.SchemaModel<{
|
|
9
9
|
requestId: {
|
|
10
|
-
type:
|
|
10
|
+
type: _lssm_lib_schema588.FieldType<string, string>;
|
|
11
11
|
isOptional: false;
|
|
12
12
|
};
|
|
13
13
|
instanceId: {
|
|
14
|
-
type:
|
|
14
|
+
type: _lssm_lib_schema588.FieldType<string, string>;
|
|
15
15
|
isOptional: false;
|
|
16
16
|
};
|
|
17
17
|
workflowKey: {
|
|
18
|
-
type:
|
|
18
|
+
type: _lssm_lib_schema588.FieldType<string, string>;
|
|
19
19
|
isOptional: false;
|
|
20
20
|
};
|
|
21
21
|
approverId: {
|
|
22
|
-
type:
|
|
22
|
+
type: _lssm_lib_schema588.FieldType<string, string>;
|
|
23
23
|
isOptional: false;
|
|
24
24
|
};
|
|
25
25
|
approverRole: {
|
|
26
|
-
type:
|
|
26
|
+
type: _lssm_lib_schema588.FieldType<string, string>;
|
|
27
27
|
isOptional: true;
|
|
28
28
|
};
|
|
29
29
|
title: {
|
|
30
|
-
type:
|
|
30
|
+
type: _lssm_lib_schema588.FieldType<string, string>;
|
|
31
31
|
isOptional: false;
|
|
32
32
|
};
|
|
33
33
|
dueAt: {
|
|
34
|
-
type:
|
|
34
|
+
type: _lssm_lib_schema588.FieldType<Date, string>;
|
|
35
35
|
isOptional: true;
|
|
36
36
|
};
|
|
37
37
|
timestamp: {
|
|
38
|
-
type:
|
|
38
|
+
type: _lssm_lib_schema588.FieldType<Date, string>;
|
|
39
39
|
isOptional: false;
|
|
40
40
|
};
|
|
41
41
|
}>>;
|
|
42
42
|
/**
|
|
43
43
|
* ApprovalDecidedEvent - An approval decision has been made.
|
|
44
44
|
*/
|
|
45
|
-
declare const ApprovalDecidedEvent:
|
|
45
|
+
declare const ApprovalDecidedEvent: _lssm_lib_contracts20.EventSpec<_lssm_lib_schema588.SchemaModel<{
|
|
46
46
|
requestId: {
|
|
47
|
-
type:
|
|
47
|
+
type: _lssm_lib_schema588.FieldType<string, string>;
|
|
48
48
|
isOptional: false;
|
|
49
49
|
};
|
|
50
50
|
instanceId: {
|
|
51
|
-
type:
|
|
51
|
+
type: _lssm_lib_schema588.FieldType<string, string>;
|
|
52
52
|
isOptional: false;
|
|
53
53
|
};
|
|
54
54
|
decision: {
|
|
55
|
-
type:
|
|
55
|
+
type: _lssm_lib_schema588.FieldType<string, string>;
|
|
56
56
|
isOptional: false;
|
|
57
57
|
};
|
|
58
58
|
decidedBy: {
|
|
59
|
-
type:
|
|
59
|
+
type: _lssm_lib_schema588.FieldType<string, string>;
|
|
60
60
|
isOptional: false;
|
|
61
61
|
};
|
|
62
62
|
comment: {
|
|
63
|
-
type:
|
|
63
|
+
type: _lssm_lib_schema588.FieldType<string, string>;
|
|
64
64
|
isOptional: true;
|
|
65
65
|
};
|
|
66
66
|
timestamp: {
|
|
67
|
-
type:
|
|
67
|
+
type: _lssm_lib_schema588.FieldType<Date, string>;
|
|
68
68
|
isOptional: false;
|
|
69
69
|
};
|
|
70
70
|
}>>;
|
|
71
71
|
/**
|
|
72
72
|
* ApprovalDelegatedEvent - An approval has been delegated.
|
|
73
73
|
*/
|
|
74
|
-
declare const ApprovalDelegatedEvent:
|
|
74
|
+
declare const ApprovalDelegatedEvent: _lssm_lib_contracts20.EventSpec<_lssm_lib_schema588.SchemaModel<{
|
|
75
75
|
requestId: {
|
|
76
|
-
type:
|
|
76
|
+
type: _lssm_lib_schema588.FieldType<string, string>;
|
|
77
77
|
isOptional: false;
|
|
78
78
|
};
|
|
79
79
|
instanceId: {
|
|
80
|
-
type:
|
|
80
|
+
type: _lssm_lib_schema588.FieldType<string, string>;
|
|
81
81
|
isOptional: false;
|
|
82
82
|
};
|
|
83
83
|
fromUserId: {
|
|
84
|
-
type:
|
|
84
|
+
type: _lssm_lib_schema588.FieldType<string, string>;
|
|
85
85
|
isOptional: false;
|
|
86
86
|
};
|
|
87
87
|
toUserId: {
|
|
88
|
-
type:
|
|
88
|
+
type: _lssm_lib_schema588.FieldType<string, string>;
|
|
89
89
|
isOptional: false;
|
|
90
90
|
};
|
|
91
91
|
reason: {
|
|
92
|
-
type:
|
|
92
|
+
type: _lssm_lib_schema588.FieldType<string, string>;
|
|
93
93
|
isOptional: true;
|
|
94
94
|
};
|
|
95
95
|
timestamp: {
|
|
96
|
-
type:
|
|
96
|
+
type: _lssm_lib_schema588.FieldType<Date, string>;
|
|
97
97
|
isOptional: false;
|
|
98
98
|
};
|
|
99
99
|
}>>;
|
|
100
100
|
/**
|
|
101
101
|
* ApprovalEscalatedEvent - An approval has been escalated.
|
|
102
102
|
*/
|
|
103
|
-
declare const ApprovalEscalatedEvent:
|
|
103
|
+
declare const ApprovalEscalatedEvent: _lssm_lib_contracts20.EventSpec<_lssm_lib_schema588.SchemaModel<{
|
|
104
104
|
requestId: {
|
|
105
|
-
type:
|
|
105
|
+
type: _lssm_lib_schema588.FieldType<string, string>;
|
|
106
106
|
isOptional: false;
|
|
107
107
|
};
|
|
108
108
|
instanceId: {
|
|
109
|
-
type:
|
|
109
|
+
type: _lssm_lib_schema588.FieldType<string, string>;
|
|
110
110
|
isOptional: false;
|
|
111
111
|
};
|
|
112
112
|
escalationLevel: {
|
|
113
|
-
type:
|
|
113
|
+
type: _lssm_lib_schema588.FieldType<number, number>;
|
|
114
114
|
isOptional: false;
|
|
115
115
|
};
|
|
116
116
|
escalatedTo: {
|
|
117
|
-
type:
|
|
117
|
+
type: _lssm_lib_schema588.FieldType<string, string>;
|
|
118
118
|
isOptional: false;
|
|
119
119
|
};
|
|
120
120
|
reason: {
|
|
121
|
-
type:
|
|
121
|
+
type: _lssm_lib_schema588.FieldType<string, string>;
|
|
122
122
|
isOptional: false;
|
|
123
123
|
};
|
|
124
124
|
timestamp: {
|
|
125
|
-
type:
|
|
125
|
+
type: _lssm_lib_schema588.FieldType<Date, string>;
|
|
126
126
|
isOptional: false;
|
|
127
127
|
};
|
|
128
128
|
}>>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{ScalarTypeEnum as e}from"@lssm/lib.schema";import{defineEvent as t,defineSchemaModel as n}from"@lssm/lib.contracts";const r=n({name:`ApprovalRequestedEventPayload`,description:`Payload when approval is requested`,fields:{requestId:{type:e.String_unsecure(),isOptional:!1},instanceId:{type:e.String_unsecure(),isOptional:!1},workflowKey:{type:e.String_unsecure(),isOptional:!1},approverId:{type:e.String_unsecure(),isOptional:!1},approverRole:{type:e.String_unsecure(),isOptional:!0},title:{type:e.String_unsecure(),isOptional:!1},dueAt:{type:e.DateTime(),isOptional:!0},timestamp:{type:e.DateTime(),isOptional:!1}}}),i=n({name:`ApprovalDecidedEventPayload`,description:`Payload when approval decision is made`,fields:{requestId:{type:e.String_unsecure(),isOptional:!1},instanceId:{type:e.String_unsecure(),isOptional:!1},decision:{type:e.String_unsecure(),isOptional:!1},decidedBy:{type:e.String_unsecure(),isOptional:!1},comment:{type:e.String_unsecure(),isOptional:!0},timestamp:{type:e.DateTime(),isOptional:!1}}}),a=n({name:`ApprovalDelegatedEventPayload`,description:`Payload when approval is delegated`,fields:{requestId:{type:e.String_unsecure(),isOptional:!1},instanceId:{type:e.String_unsecure(),isOptional:!1},fromUserId:{type:e.String_unsecure(),isOptional:!1},toUserId:{type:e.String_unsecure(),isOptional:!1},reason:{type:e.String_unsecure(),isOptional:!0},timestamp:{type:e.DateTime(),isOptional:!1}}}),o=n({name:`ApprovalEscalatedEventPayload`,description:`Payload when approval is escalated`,fields:{requestId:{type:e.String_unsecure(),isOptional:!1},instanceId:{type:e.String_unsecure(),isOptional:!1},escalationLevel:{type:e.Int_unsecure(),isOptional:!1},escalatedTo:{type:e.String_unsecure(),isOptional:!1},reason:{type:e.String_unsecure(),isOptional:!1},timestamp:{type:e.DateTime(),isOptional:!1}}}),s=t({name:`workflow.approval.requested`,version:1,description:`An approval has been requested.`,payload:r}),c=t({name:`workflow.approval.decided`,version:1,description:`An approval decision has been made.`,payload:i}),l=t({name:`workflow.approval.delegated`,version:1,description:`An approval has been delegated.`,payload:a}),u=t({name:`workflow.approval.escalated`,version:1,description:`An approval has been escalated.`,payload:o});export{c as ApprovalDecidedEvent,l as ApprovalDelegatedEvent,u as ApprovalEscalatedEvent,s as ApprovalRequestedEvent};
|
|
@@ -1,97 +1,97 @@
|
|
|
1
|
-
import * as
|
|
1
|
+
import * as _lssm_lib_schema618 from "@lssm/lib.schema";
|
|
2
2
|
|
|
3
3
|
//#region src/approval/approval.schema.d.ts
|
|
4
4
|
/**
|
|
5
5
|
* An approval request.
|
|
6
6
|
*/
|
|
7
|
-
declare const ApprovalRequestModel:
|
|
7
|
+
declare const ApprovalRequestModel: _lssm_lib_schema618.SchemaModel<{
|
|
8
8
|
id: {
|
|
9
|
-
type:
|
|
9
|
+
type: _lssm_lib_schema618.FieldType<string, string>;
|
|
10
10
|
isOptional: false;
|
|
11
11
|
};
|
|
12
12
|
workflowInstanceId: {
|
|
13
|
-
type:
|
|
13
|
+
type: _lssm_lib_schema618.FieldType<string, string>;
|
|
14
14
|
isOptional: false;
|
|
15
15
|
};
|
|
16
16
|
stepExecutionId: {
|
|
17
|
-
type:
|
|
17
|
+
type: _lssm_lib_schema618.FieldType<string, string>;
|
|
18
18
|
isOptional: false;
|
|
19
19
|
};
|
|
20
20
|
approverId: {
|
|
21
|
-
type:
|
|
21
|
+
type: _lssm_lib_schema618.FieldType<string, string>;
|
|
22
22
|
isOptional: false;
|
|
23
23
|
};
|
|
24
24
|
approverRole: {
|
|
25
|
-
type:
|
|
25
|
+
type: _lssm_lib_schema618.FieldType<string, string>;
|
|
26
26
|
isOptional: true;
|
|
27
27
|
};
|
|
28
28
|
title: {
|
|
29
|
-
type:
|
|
29
|
+
type: _lssm_lib_schema618.FieldType<string, string>;
|
|
30
30
|
isOptional: false;
|
|
31
31
|
};
|
|
32
32
|
description: {
|
|
33
|
-
type:
|
|
33
|
+
type: _lssm_lib_schema618.FieldType<string, string>;
|
|
34
34
|
isOptional: true;
|
|
35
35
|
};
|
|
36
36
|
status: {
|
|
37
|
-
type:
|
|
37
|
+
type: _lssm_lib_schema618.EnumType<[string, string, string, string, string, string, string]>;
|
|
38
38
|
isOptional: false;
|
|
39
39
|
};
|
|
40
40
|
decision: {
|
|
41
|
-
type:
|
|
41
|
+
type: _lssm_lib_schema618.EnumType<[string, string, string, string, string]>;
|
|
42
42
|
isOptional: true;
|
|
43
43
|
};
|
|
44
44
|
decisionComment: {
|
|
45
|
-
type:
|
|
45
|
+
type: _lssm_lib_schema618.FieldType<string, string>;
|
|
46
46
|
isOptional: true;
|
|
47
47
|
};
|
|
48
48
|
decidedAt: {
|
|
49
|
-
type:
|
|
49
|
+
type: _lssm_lib_schema618.FieldType<Date, string>;
|
|
50
50
|
isOptional: true;
|
|
51
51
|
};
|
|
52
52
|
dueAt: {
|
|
53
|
-
type:
|
|
53
|
+
type: _lssm_lib_schema618.FieldType<Date, string>;
|
|
54
54
|
isOptional: true;
|
|
55
55
|
};
|
|
56
56
|
contextSnapshot: {
|
|
57
|
-
type:
|
|
57
|
+
type: _lssm_lib_schema618.FieldType<unknown, unknown>;
|
|
58
58
|
isOptional: true;
|
|
59
59
|
};
|
|
60
60
|
sequenceOrder: {
|
|
61
|
-
type:
|
|
61
|
+
type: _lssm_lib_schema618.FieldType<number, number>;
|
|
62
62
|
isOptional: false;
|
|
63
63
|
};
|
|
64
64
|
createdAt: {
|
|
65
|
-
type:
|
|
65
|
+
type: _lssm_lib_schema618.FieldType<Date, string>;
|
|
66
66
|
isOptional: false;
|
|
67
67
|
};
|
|
68
68
|
}>;
|
|
69
69
|
/**
|
|
70
70
|
* A comment on an approval.
|
|
71
71
|
*/
|
|
72
|
-
declare const ApprovalCommentModel:
|
|
72
|
+
declare const ApprovalCommentModel: _lssm_lib_schema618.SchemaModel<{
|
|
73
73
|
id: {
|
|
74
|
-
type:
|
|
74
|
+
type: _lssm_lib_schema618.FieldType<string, string>;
|
|
75
75
|
isOptional: false;
|
|
76
76
|
};
|
|
77
77
|
approvalRequestId: {
|
|
78
|
-
type:
|
|
78
|
+
type: _lssm_lib_schema618.FieldType<string, string>;
|
|
79
79
|
isOptional: false;
|
|
80
80
|
};
|
|
81
81
|
authorId: {
|
|
82
|
-
type:
|
|
82
|
+
type: _lssm_lib_schema618.FieldType<string, string>;
|
|
83
83
|
isOptional: false;
|
|
84
84
|
};
|
|
85
85
|
content: {
|
|
86
|
-
type:
|
|
86
|
+
type: _lssm_lib_schema618.FieldType<string, string>;
|
|
87
87
|
isOptional: false;
|
|
88
88
|
};
|
|
89
89
|
isInternal: {
|
|
90
|
-
type:
|
|
90
|
+
type: _lssm_lib_schema618.FieldType<boolean, boolean>;
|
|
91
91
|
isOptional: false;
|
|
92
92
|
};
|
|
93
93
|
createdAt: {
|
|
94
|
-
type:
|
|
94
|
+
type: _lssm_lib_schema618.FieldType<Date, string>;
|
|
95
95
|
isOptional: false;
|
|
96
96
|
};
|
|
97
97
|
}>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{ApprovalDecisionEnum as e,ApprovalStatusEnum as t}from"./approval.enum.js";import{ScalarTypeEnum as n,defineSchemaModel as r}from"@lssm/lib.schema";const i=r({name:`ApprovalRequestModel`,description:`An approval request`,fields:{id:{type:n.String_unsecure(),isOptional:!1},workflowInstanceId:{type:n.String_unsecure(),isOptional:!1},stepExecutionId:{type:n.String_unsecure(),isOptional:!1},approverId:{type:n.String_unsecure(),isOptional:!1},approverRole:{type:n.String_unsecure(),isOptional:!0},title:{type:n.String_unsecure(),isOptional:!1},description:{type:n.String_unsecure(),isOptional:!0},status:{type:t,isOptional:!1},decision:{type:e,isOptional:!0},decisionComment:{type:n.String_unsecure(),isOptional:!0},decidedAt:{type:n.DateTime(),isOptional:!0},dueAt:{type:n.DateTime(),isOptional:!0},contextSnapshot:{type:n.JSON(),isOptional:!0},sequenceOrder:{type:n.Int_unsecure(),isOptional:!1},createdAt:{type:n.DateTime(),isOptional:!1}}}),a=r({name:`ApprovalCommentModel`,description:`A comment on an approval`,fields:{id:{type:n.String_unsecure(),isOptional:!1},approvalRequestId:{type:n.String_unsecure(),isOptional:!1},authorId:{type:n.String_unsecure(),isOptional:!1},content:{type:n.String_unsecure(),isOptional:!1},isInternal:{type:n.Boolean(),isOptional:!1},createdAt:{type:n.DateTime(),isOptional:!1}}});export{a as ApprovalCommentModel,i as ApprovalRequestModel};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{registerDocBlocks as e}from"@lssm/lib.contracts/docs";e([{id:`docs.examples.workflow-system`,title:`Workflow / Approval System`,summary:`Reference app showing state-machine driven approvals with RBAC, audit trail, notifications, and jobs.`,kind:`reference`,visibility:`public`,route:`/docs/examples/workflow-system`,tags:[`workflow`,`approval`,`state-machine`,`rbac`],body:`## Entities
|
|
2
2
|
|
|
3
3
|
- WorkflowDefinition, WorkflowStep, WorkflowInstance, Approval.
|
|
4
4
|
- State machine expressed in \`src/state-machine\` with allowed transitions and role gates.
|
|
@@ -1,57 +1,57 @@
|
|
|
1
|
-
import * as
|
|
1
|
+
import * as _lssm_lib_schema641 from "@lssm/lib.schema";
|
|
2
2
|
|
|
3
3
|
//#region src/entities/approval.d.ts
|
|
4
4
|
/**
|
|
5
5
|
* Approval status enum.
|
|
6
6
|
*/
|
|
7
|
-
declare const ApprovalStatusEnum:
|
|
7
|
+
declare const ApprovalStatusEnum: _lssm_lib_schema641.EntityEnumDef;
|
|
8
8
|
/**
|
|
9
9
|
* Approval decision enum.
|
|
10
10
|
*/
|
|
11
|
-
declare const ApprovalDecisionEnum:
|
|
11
|
+
declare const ApprovalDecisionEnum: _lssm_lib_schema641.EntityEnumDef;
|
|
12
12
|
/**
|
|
13
13
|
* ApprovalRequest entity - a request for approval from a user.
|
|
14
14
|
*
|
|
15
15
|
* Created when a workflow reaches an APPROVAL step. Multiple requests
|
|
16
16
|
* may be created depending on the approval mode.
|
|
17
17
|
*/
|
|
18
|
-
declare const ApprovalRequestEntity:
|
|
19
|
-
id:
|
|
20
|
-
workflowInstanceId:
|
|
21
|
-
stepExecutionId:
|
|
22
|
-
approverId:
|
|
23
|
-
approverRole:
|
|
24
|
-
title:
|
|
25
|
-
description:
|
|
26
|
-
status:
|
|
27
|
-
decision:
|
|
28
|
-
decisionComment:
|
|
29
|
-
decidedAt:
|
|
30
|
-
delegatedTo:
|
|
31
|
-
delegationReason:
|
|
32
|
-
escalationLevel:
|
|
33
|
-
escalatedAt:
|
|
34
|
-
dueAt:
|
|
35
|
-
reminderSentAt:
|
|
36
|
-
contextSnapshot:
|
|
37
|
-
sequenceOrder:
|
|
38
|
-
createdAt:
|
|
39
|
-
updatedAt:
|
|
40
|
-
workflowInstance:
|
|
41
|
-
stepExecution:
|
|
18
|
+
declare const ApprovalRequestEntity: _lssm_lib_schema641.EntitySpec<{
|
|
19
|
+
id: _lssm_lib_schema641.EntityScalarField;
|
|
20
|
+
workflowInstanceId: _lssm_lib_schema641.EntityScalarField;
|
|
21
|
+
stepExecutionId: _lssm_lib_schema641.EntityScalarField;
|
|
22
|
+
approverId: _lssm_lib_schema641.EntityScalarField;
|
|
23
|
+
approverRole: _lssm_lib_schema641.EntityScalarField;
|
|
24
|
+
title: _lssm_lib_schema641.EntityScalarField;
|
|
25
|
+
description: _lssm_lib_schema641.EntityScalarField;
|
|
26
|
+
status: _lssm_lib_schema641.EntityEnumField;
|
|
27
|
+
decision: _lssm_lib_schema641.EntityEnumField;
|
|
28
|
+
decisionComment: _lssm_lib_schema641.EntityScalarField;
|
|
29
|
+
decidedAt: _lssm_lib_schema641.EntityScalarField;
|
|
30
|
+
delegatedTo: _lssm_lib_schema641.EntityScalarField;
|
|
31
|
+
delegationReason: _lssm_lib_schema641.EntityScalarField;
|
|
32
|
+
escalationLevel: _lssm_lib_schema641.EntityScalarField;
|
|
33
|
+
escalatedAt: _lssm_lib_schema641.EntityScalarField;
|
|
34
|
+
dueAt: _lssm_lib_schema641.EntityScalarField;
|
|
35
|
+
reminderSentAt: _lssm_lib_schema641.EntityScalarField;
|
|
36
|
+
contextSnapshot: _lssm_lib_schema641.EntityScalarField;
|
|
37
|
+
sequenceOrder: _lssm_lib_schema641.EntityScalarField;
|
|
38
|
+
createdAt: _lssm_lib_schema641.EntityScalarField;
|
|
39
|
+
updatedAt: _lssm_lib_schema641.EntityScalarField;
|
|
40
|
+
workflowInstance: _lssm_lib_schema641.EntityRelationField;
|
|
41
|
+
stepExecution: _lssm_lib_schema641.EntityRelationField;
|
|
42
42
|
}>;
|
|
43
43
|
/**
|
|
44
44
|
* ApprovalComment entity - comments on approval requests.
|
|
45
45
|
*/
|
|
46
|
-
declare const ApprovalCommentEntity:
|
|
47
|
-
id:
|
|
48
|
-
approvalRequestId:
|
|
49
|
-
authorId:
|
|
50
|
-
content:
|
|
51
|
-
isInternal:
|
|
52
|
-
createdAt:
|
|
53
|
-
updatedAt:
|
|
54
|
-
approvalRequest:
|
|
46
|
+
declare const ApprovalCommentEntity: _lssm_lib_schema641.EntitySpec<{
|
|
47
|
+
id: _lssm_lib_schema641.EntityScalarField;
|
|
48
|
+
approvalRequestId: _lssm_lib_schema641.EntityScalarField;
|
|
49
|
+
authorId: _lssm_lib_schema641.EntityScalarField;
|
|
50
|
+
content: _lssm_lib_schema641.EntityScalarField;
|
|
51
|
+
isInternal: _lssm_lib_schema641.EntityScalarField;
|
|
52
|
+
createdAt: _lssm_lib_schema641.EntityScalarField;
|
|
53
|
+
updatedAt: _lssm_lib_schema641.EntityScalarField;
|
|
54
|
+
approvalRequest: _lssm_lib_schema641.EntityRelationField;
|
|
55
55
|
}>;
|
|
56
56
|
//#endregion
|
|
57
57
|
export { ApprovalCommentEntity, ApprovalDecisionEnum, ApprovalRequestEntity, ApprovalStatusEnum };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{defineEntity as e,defineEntityEnum as t,field as n,index as r}from"@lssm/lib.schema";const i=t({name:`ApprovalStatus`,values:[`PENDING`,`APPROVED`,`REJECTED`,`DELEGATED`,`ESCALATED`,`WITHDRAWN`,`EXPIRED`],schema:`workflow`,description:`Status of an approval request.`}),a=t({name:`ApprovalDecision`,values:[`APPROVE`,`REJECT`,`REQUEST_CHANGES`,`DELEGATE`,`ABSTAIN`],schema:`workflow`,description:`Possible approval decisions.`}),o=e({name:`ApprovalRequest`,description:`A pending approval request for a workflow step.`,schema:`workflow`,map:`approval_request`,fields:{id:n.id({description:`Unique approval request ID`}),workflowInstanceId:n.foreignKey(),stepExecutionId:n.foreignKey(),approverId:n.foreignKey({description:`User requested to approve`}),approverRole:n.string({isOptional:!0,description:`Role of the approver`}),title:n.string({description:`Approval request title`}),description:n.string({isOptional:!0}),status:n.enum(`ApprovalStatus`,{default:`PENDING`}),decision:n.enum(`ApprovalDecision`,{isOptional:!0}),decisionComment:n.string({isOptional:!0,description:`Comment explaining decision`}),decidedAt:n.dateTime({isOptional:!0}),delegatedTo:n.string({isOptional:!0,description:`User delegated to`}),delegationReason:n.string({isOptional:!0}),escalationLevel:n.int({default:0,description:`Current escalation level`}),escalatedAt:n.dateTime({isOptional:!0}),dueAt:n.dateTime({isOptional:!0,description:`When approval is due`}),reminderSentAt:n.dateTime({isOptional:!0}),contextSnapshot:n.json({isOptional:!0,description:`Snapshot of relevant data for review`}),sequenceOrder:n.int({default:0,description:`Order in approval chain`}),createdAt:n.createdAt(),updatedAt:n.updatedAt(),workflowInstance:n.belongsTo(`WorkflowInstance`,[`workflowInstanceId`],[`id`],{onDelete:`Cascade`}),stepExecution:n.belongsTo(`StepExecution`,[`stepExecutionId`],[`id`])},indexes:[r.on([`approverId`,`status`]),r.on([`workflowInstanceId`,`status`]),r.on([`stepExecutionId`]),r.on([`status`,`dueAt`]),r.on([`createdAt`])],enums:[i,a]}),s=e({name:`ApprovalComment`,description:`A comment on an approval request.`,schema:`workflow`,map:`approval_comment`,fields:{id:n.id(),approvalRequestId:n.foreignKey(),authorId:n.foreignKey(),content:n.string({description:`Comment text`}),isInternal:n.boolean({default:!1,description:`Internal note vs public comment`}),createdAt:n.createdAt(),updatedAt:n.updatedAt(),approvalRequest:n.belongsTo(`ApprovalRequest`,[`approvalRequestId`],[`id`],{onDelete:`Cascade`})},indexes:[r.on([`approvalRequestId`,`createdAt`])]});export{s as ApprovalCommentEntity,a as ApprovalDecisionEnum,o as ApprovalRequestEntity,i as ApprovalStatusEnum};
|