@lssm/example.workflow-system 1.41.1 → 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 (123) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +3 -0
  3. package/dist/approval/approval.enum.d.ts +14 -0
  4. package/dist/approval/approval.enum.d.ts.map +1 -0
  5. package/dist/approval/approval.enum.js +29 -1
  6. package/dist/approval/approval.enum.js.map +1 -0
  7. package/dist/approval/approval.event.d.ts +131 -0
  8. package/dist/approval/approval.event.d.ts.map +1 -0
  9. package/dist/approval/approval.event.js +220 -1
  10. package/dist/approval/approval.event.js.map +1 -0
  11. package/dist/approval/approval.handler.d.ts +23 -0
  12. package/dist/approval/approval.handler.d.ts.map +1 -0
  13. package/dist/approval/approval.handler.js +72 -1
  14. package/dist/approval/approval.handler.js.map +1 -0
  15. package/dist/approval/approval.operations.d.ts +535 -0
  16. package/dist/approval/approval.operations.d.ts.map +1 -0
  17. package/dist/approval/approval.operations.js +345 -0
  18. package/dist/approval/approval.operations.js.map +1 -0
  19. package/dist/approval/approval.schema.d.ts +100 -0
  20. package/dist/approval/approval.schema.d.ts.map +1 -0
  21. package/dist/approval/approval.schema.js +110 -1
  22. package/dist/approval/approval.schema.js.map +1 -0
  23. package/dist/approval/index.d.ts +5 -0
  24. package/dist/approval/index.js +6 -1
  25. package/dist/docs/index.d.ts +1 -0
  26. package/dist/docs/index.js +1 -1
  27. package/dist/docs/workflow-system.docblock.d.ts +1 -0
  28. package/dist/docs/workflow-system.docblock.js +61 -5
  29. package/dist/docs/workflow-system.docblock.js.map +1 -0
  30. package/dist/entities/approval.d.ts +58 -0
  31. package/dist/entities/approval.d.ts.map +1 -0
  32. package/dist/entities/approval.js +128 -1
  33. package/dist/entities/approval.js.map +1 -0
  34. package/dist/entities/index.d.ts +139 -0
  35. package/dist/entities/index.d.ts.map +1 -0
  36. package/dist/entities/index.js +32 -1
  37. package/dist/entities/index.js.map +1 -0
  38. package/dist/entities/instance.d.ts +69 -0
  39. package/dist/entities/instance.d.ts.map +1 -0
  40. package/dist/entities/instance.js +168 -1
  41. package/dist/entities/instance.js.map +1 -0
  42. package/dist/entities/step.d.ts +50 -0
  43. package/dist/entities/step.d.ts.map +1 -0
  44. package/dist/entities/step.js +135 -1
  45. package/dist/entities/step.js.map +1 -0
  46. package/dist/entities/workflow.d.ts +41 -0
  47. package/dist/entities/workflow.d.ts.map +1 -0
  48. package/dist/entities/workflow.js +102 -1
  49. package/dist/entities/workflow.js.map +1 -0
  50. package/dist/example.d.ts +40 -0
  51. package/dist/example.d.ts.map +1 -0
  52. package/dist/example.js +51 -1
  53. package/dist/example.js.map +1 -0
  54. package/dist/index.d.ts +21 -0
  55. package/dist/index.js +21 -1
  56. package/dist/instance/index.d.ts +5 -0
  57. package/dist/instance/index.js +6 -1
  58. package/dist/instance/instance.enum.d.ts +10 -0
  59. package/dist/instance/instance.enum.d.ts.map +1 -0
  60. package/dist/instance/instance.enum.js +20 -1
  61. package/dist/instance/instance.enum.js.map +1 -0
  62. package/dist/instance/instance.event.d.ts +356 -0
  63. package/dist/instance/instance.event.d.ts.map +1 -0
  64. package/dist/instance/instance.event.js +293 -1
  65. package/dist/instance/instance.event.js.map +1 -0
  66. package/dist/instance/instance.handler.d.ts +27 -0
  67. package/dist/instance/instance.handler.d.ts.map +1 -0
  68. package/dist/instance/instance.handler.js +94 -1
  69. package/dist/instance/instance.handler.js.map +1 -0
  70. package/dist/instance/instance.operations.d.ts +1024 -0
  71. package/dist/instance/instance.operations.d.ts.map +1 -0
  72. package/dist/instance/instance.operations.js +464 -0
  73. package/dist/instance/instance.operations.js.map +1 -0
  74. package/dist/instance/instance.schema.d.ts +223 -0
  75. package/dist/instance/instance.schema.d.ts.map +1 -0
  76. package/dist/instance/instance.schema.js +172 -1
  77. package/dist/instance/instance.schema.js.map +1 -0
  78. package/dist/presentations/index.d.ts +64 -0
  79. package/dist/presentations/index.d.ts.map +1 -0
  80. package/dist/presentations/index.js +337 -1
  81. package/dist/presentations/index.js.map +1 -0
  82. package/dist/shared/index.d.ts +3 -0
  83. package/dist/shared/index.js +3 -1
  84. package/dist/shared/mock-data.d.ts +19 -0
  85. package/dist/shared/mock-data.d.ts.map +1 -0
  86. package/dist/shared/mock-data.js +12 -1
  87. package/dist/shared/mock-data.js.map +1 -0
  88. package/dist/shared/types.d.ts +81 -0
  89. package/dist/shared/types.d.ts.map +1 -0
  90. package/dist/state-machine/index.d.ts +148 -0
  91. package/dist/state-machine/index.d.ts.map +1 -0
  92. package/dist/state-machine/index.js +158 -1
  93. package/dist/state-machine/index.js.map +1 -0
  94. package/dist/workflow/index.d.ts +5 -0
  95. package/dist/workflow/index.js +6 -1
  96. package/dist/workflow/workflow.enum.d.ts +22 -0
  97. package/dist/workflow/workflow.enum.d.ts.map +1 -0
  98. package/dist/workflow/workflow.enum.js +47 -1
  99. package/dist/workflow/workflow.enum.js.map +1 -0
  100. package/dist/workflow/workflow.event.d.ts +135 -0
  101. package/dist/workflow/workflow.event.d.ts.map +1 -0
  102. package/dist/workflow/workflow.event.js +150 -1
  103. package/dist/workflow/workflow.event.js.map +1 -0
  104. package/dist/workflow/workflow.handler.d.ts +29 -0
  105. package/dist/workflow/workflow.handler.d.ts.map +1 -0
  106. package/dist/workflow/workflow.handler.js +66 -1
  107. package/dist/workflow/workflow.handler.js.map +1 -0
  108. package/dist/workflow/workflow.operations.d.ts +1011 -0
  109. package/dist/workflow/workflow.operations.d.ts.map +1 -0
  110. package/dist/workflow/workflow.operations.js +345 -0
  111. package/dist/workflow/workflow.operations.js.map +1 -0
  112. package/dist/workflow/workflow.schema.d.ts +265 -0
  113. package/dist/workflow/workflow.schema.d.ts.map +1 -0
  114. package/dist/workflow/workflow.schema.js +249 -1
  115. package/dist/workflow/workflow.schema.js.map +1 -0
  116. package/dist/workflow-system.feature.d.ts +12 -0
  117. package/dist/workflow-system.feature.d.ts.map +1 -0
  118. package/dist/workflow-system.feature.js +339 -1
  119. package/dist/workflow-system.feature.js.map +1 -0
  120. package/package.json +56 -49
  121. package/dist/approval/approval.contracts.js +0 -1
  122. package/dist/instance/instance.contracts.js +0 -1
  123. package/dist/workflow/workflow.contracts.js +0 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lssm/example.workflow-system",
3
- "version": "1.41.1",
3
+ "version": "1.42.2",
4
4
  "description": "Workflow and approval system example for ContractSpec - State machine with role-based transitions",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",
@@ -8,7 +8,7 @@
8
8
  "scripts": {
9
9
  "publish:pkg": "bun publish --tolerate-republish --ignore-scripts --verbose",
10
10
  "publish:pkg:canary": "bun publish:pkg --tag canary",
11
- "build": "bun build:bundle && bun build:types",
11
+ "build": "bun build:types && bun build:bundle",
12
12
  "build:bundle": "tsdown",
13
13
  "build:types": "tsc --noEmit",
14
14
  "dev": "bun build:bundle --watch",
@@ -18,55 +18,55 @@
18
18
  "lint:check": "eslint src"
19
19
  },
20
20
  "dependencies": {
21
- "@lssm/lib.schema": "1.41.1",
22
- "@lssm/lib.contracts": "1.41.1",
23
- "@lssm/lib.bus": "1.41.1",
24
- "@lssm/lib.identity-rbac": "1.41.1",
25
- "@lssm/lib.feature-flags": "1.41.1",
26
- "@lssm/lib.jobs": "1.41.1",
27
- "@lssm/module.audit-trail": "1.41.1",
28
- "@lssm/module.notifications": "1.41.1",
21
+ "@lssm/lib.schema": "1.42.2",
22
+ "@lssm/lib.contracts": "1.42.2",
23
+ "@lssm/lib.bus": "1.42.2",
24
+ "@lssm/lib.identity-rbac": "1.42.2",
25
+ "@lssm/lib.feature-flags": "1.42.2",
26
+ "@lssm/lib.jobs": "1.42.2",
27
+ "@lssm/module.audit-trail": "1.42.2",
28
+ "@lssm/module.notifications": "1.42.2",
29
29
  "zod": "^4.1.13"
30
30
  },
31
31
  "devDependencies": {
32
- "@lssm/tool.typescript": "1.41.1",
33
- "@lssm/tool.tsdown": "1.41.1",
32
+ "@lssm/tool.typescript": "1.42.2",
33
+ "@lssm/tool.tsdown": "1.42.2",
34
34
  "typescript": "^5.9.3"
35
35
  },
36
36
  "exports": {
37
- ".": "./src/index.ts",
38
- "./approval": "./src/approval/index.ts",
39
- "./approval/approval.contracts": "./src/approval/approval.contracts.ts",
40
- "./approval/approval.enum": "./src/approval/approval.enum.ts",
41
- "./approval/approval.event": "./src/approval/approval.event.ts",
42
- "./approval/approval.handler": "./src/approval/approval.handler.ts",
43
- "./approval/approval.schema": "./src/approval/approval.schema.ts",
44
- "./docs": "./src/docs/index.ts",
45
- "./docs/workflow-system.docblock": "./src/docs/workflow-system.docblock.ts",
46
- "./entities": "./src/entities/index.ts",
47
- "./entities/approval": "./src/entities/approval.ts",
48
- "./entities/instance": "./src/entities/instance.ts",
49
- "./entities/step": "./src/entities/step.ts",
50
- "./entities/workflow": "./src/entities/workflow.ts",
51
- "./example": "./src/example.ts",
52
- "./instance": "./src/instance/index.ts",
53
- "./instance/instance.contracts": "./src/instance/instance.contracts.ts",
54
- "./instance/instance.enum": "./src/instance/instance.enum.ts",
55
- "./instance/instance.event": "./src/instance/instance.event.ts",
56
- "./instance/instance.handler": "./src/instance/instance.handler.ts",
57
- "./instance/instance.schema": "./src/instance/instance.schema.ts",
58
- "./presentations": "./src/presentations/index.ts",
59
- "./shared": "./src/shared/index.ts",
60
- "./shared/mock-data": "./src/shared/mock-data.ts",
61
- "./shared/types": "./src/shared/types.ts",
62
- "./state-machine": "./src/state-machine/index.ts",
63
- "./workflow": "./src/workflow/index.ts",
64
- "./workflow-system.feature": "./src/workflow-system.feature.ts",
65
- "./workflow/workflow.contracts": "./src/workflow/workflow.contracts.ts",
66
- "./workflow/workflow.enum": "./src/workflow/workflow.enum.ts",
67
- "./workflow/workflow.event": "./src/workflow/workflow.event.ts",
68
- "./workflow/workflow.handler": "./src/workflow/workflow.handler.ts",
69
- "./workflow/workflow.schema": "./src/workflow/workflow.schema.ts",
37
+ ".": "./dist/index.js",
38
+ "./approval": "./dist/approval/index.js",
39
+ "./approval/approval.enum": "./dist/approval/approval.enum.js",
40
+ "./approval/approval.event": "./dist/approval/approval.event.js",
41
+ "./approval/approval.handler": "./dist/approval/approval.handler.js",
42
+ "./approval/approval.operations": "./dist/approval/approval.operations.js",
43
+ "./approval/approval.schema": "./dist/approval/approval.schema.js",
44
+ "./docs": "./dist/docs/index.js",
45
+ "./docs/workflow-system.docblock": "./dist/docs/workflow-system.docblock.js",
46
+ "./entities": "./dist/entities/index.js",
47
+ "./entities/approval": "./dist/entities/approval.js",
48
+ "./entities/instance": "./dist/entities/instance.js",
49
+ "./entities/step": "./dist/entities/step.js",
50
+ "./entities/workflow": "./dist/entities/workflow.js",
51
+ "./example": "./dist/example.js",
52
+ "./instance": "./dist/instance/index.js",
53
+ "./instance/instance.enum": "./dist/instance/instance.enum.js",
54
+ "./instance/instance.event": "./dist/instance/instance.event.js",
55
+ "./instance/instance.handler": "./dist/instance/instance.handler.js",
56
+ "./instance/instance.operations": "./dist/instance/instance.operations.js",
57
+ "./instance/instance.schema": "./dist/instance/instance.schema.js",
58
+ "./presentations": "./dist/presentations/index.js",
59
+ "./shared": "./dist/shared/index.js",
60
+ "./shared/mock-data": "./dist/shared/mock-data.js",
61
+ "./shared/types": "./dist/shared/types.js",
62
+ "./state-machine": "./dist/state-machine/index.js",
63
+ "./workflow": "./dist/workflow/index.js",
64
+ "./workflow-system.feature": "./dist/workflow-system.feature.js",
65
+ "./workflow/workflow.enum": "./dist/workflow/workflow.enum.js",
66
+ "./workflow/workflow.event": "./dist/workflow/workflow.event.js",
67
+ "./workflow/workflow.handler": "./dist/workflow/workflow.handler.js",
68
+ "./workflow/workflow.operations": "./dist/workflow/workflow.operations.js",
69
+ "./workflow/workflow.schema": "./dist/workflow/workflow.schema.js",
70
70
  "./*": "./*"
71
71
  },
72
72
  "module": "./dist/index.js",
@@ -79,7 +79,7 @@
79
79
  "exports": {
80
80
  ".": "./dist/index.js",
81
81
  "./approval": "./dist/approval/index.js",
82
- "./approval/approval.contracts": "./dist/approval/approval.contracts.js",
82
+ "./approval/approval.contracts": "./dist/approval/approval.operations.js",
83
83
  "./approval/approval.enum": "./dist/approval/approval.enum.js",
84
84
  "./approval/approval.event": "./dist/approval/approval.event.js",
85
85
  "./approval/approval.handler": "./dist/approval/approval.handler.js",
@@ -93,7 +93,7 @@
93
93
  "./entities/workflow": "./dist/entities/workflow.js",
94
94
  "./example": "./dist/example.js",
95
95
  "./instance": "./dist/instance/index.js",
96
- "./instance/instance.contracts": "./dist/instance/instance.contracts.js",
96
+ "./instance/instance.contracts": "./dist/instance/instance.operations.js",
97
97
  "./instance/instance.enum": "./dist/instance/instance.enum.js",
98
98
  "./instance/instance.event": "./dist/instance/instance.event.js",
99
99
  "./instance/instance.handler": "./dist/instance/instance.handler.js",
@@ -105,12 +105,19 @@
105
105
  "./state-machine": "./dist/state-machine/index.js",
106
106
  "./workflow": "./dist/workflow/index.js",
107
107
  "./workflow-system.feature": "./dist/workflow-system.feature.js",
108
- "./workflow/workflow.contracts": "./dist/workflow/workflow.contracts.js",
108
+ "./workflow/workflow.contracts": "./dist/workflow/workflow.operations.js",
109
109
  "./workflow/workflow.enum": "./dist/workflow/workflow.enum.js",
110
110
  "./workflow/workflow.event": "./dist/workflow/workflow.event.js",
111
111
  "./workflow/workflow.handler": "./dist/workflow/workflow.handler.js",
112
112
  "./workflow/workflow.schema": "./dist/workflow/workflow.schema.js",
113
113
  "./*": "./*"
114
- }
114
+ },
115
+ "registry": "https://registry.npmjs.org/"
116
+ },
117
+ "license": "MIT",
118
+ "repository": {
119
+ "type": "git",
120
+ "url": "https://github.com/lssm-tech/contractspec.git",
121
+ "directory": "packages/examples/workflow-system"
115
122
  }
116
123
  }
@@ -1 +0,0 @@
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 +0,0 @@
1
- import{InstanceStatusEnum as e}from"./instance.enum.js";import{StartWorkflowInputModel as t,TransitionInputModel as n,TransitionResultModel as r,WorkflowInstanceModel as i}from"./instance.schema.js";import{ScalarTypeEnum as a,defineSchemaModel as o}from"@lssm/lib.schema";import{defineCommand as s,defineQuery as c}from"@lssm/lib.contracts/spec";const l=[`@example.workflow-system`],u=s({meta:{name:`workflow.instance.start`,version:1,stability:`stable`,owners:[...l],tags:[`workflow`,`instance`,`start`],description:`Start a new workflow instance.`,goal:`Initiate a workflow for a business process.`,context:`Order creation, request submission, etc.`},io:{input:t,output:i},policy:{auth:`user`},sideEffects:{emits:[{name:`workflow.instance.started`,version:1,when:`Workflow starts`,payload:i},{name:`workflow.step.entered`,version:1,when:`First step entered`,payload:i}],audit:[`workflow.instance.started`]}}),d=s({meta:{name:`workflow.instance.transition`,version:1,stability:`stable`,owners:[...l],tags:[`workflow`,`instance`,`transition`,`state-machine`],description:`Transition a workflow instance to the next step.`,goal:`Move workflow forward based on action.`,context:`Task completion, approval decisions.`},io:{input:n,output:r},policy:{auth:`user`},sideEffects:{emits:[{name:`workflow.step.exited`,version:1,when:`Step is exited`,payload:i},{name:`workflow.step.entered`,version:1,when:`New step is entered`,payload:i},{name:`workflow.instance.completed`,version:1,when:`Workflow reaches end`,payload:i}],audit:[`workflow.instance.transitioned`]}}),f=s({meta:{name:`workflow.instance.pause`,version:1,stability:`stable`,owners:[...l],tags:[`workflow`,`instance`,`pause`],description:`Pause a running workflow instance.`,goal:`Temporarily halt workflow execution.`,context:`Administrative action, emergency stop.`},io:{input:o({name:`PauseResumeInput`,fields:{instanceId:{type:a.String_unsecure(),isOptional:!1},reason:{type:a.String_unsecure(),isOptional:!0}}}),output:i},policy:{auth:`user`},sideEffects:{emits:[{name:`workflow.instance.paused`,version:1,when:`Workflow is paused`,payload:i}],audit:[`workflow.instance.paused`]}}),p=s({meta:{name:`workflow.instance.resume`,version:1,stability:`stable`,owners:[...l],tags:[`workflow`,`instance`,`resume`],description:`Resume a paused workflow instance.`,goal:`Continue workflow execution.`,context:`Administrative action.`},io:{input:o({name:`PauseResumeInput`,fields:{instanceId:{type:a.String_unsecure(),isOptional:!1},reason:{type:a.String_unsecure(),isOptional:!0}}}),output:i},policy:{auth:`user`},sideEffects:{emits:[{name:`workflow.instance.resumed`,version:1,when:`Workflow is resumed`,payload:i}],audit:[`workflow.instance.resumed`]}}),m=s({meta:{name:`workflow.instance.cancel`,version:1,stability:`stable`,owners:[...l],tags:[`workflow`,`instance`,`cancel`],description:`Cancel a workflow instance.`,goal:`Terminate workflow without completion.`,context:`User request, system cancellation.`},io:{input:o({name:`CancelWorkflowInput`,fields:{instanceId:{type:a.String_unsecure(),isOptional:!1},reason:{type:a.String_unsecure(),isOptional:!1}}}),output:i},policy:{auth:`user`},sideEffects:{emits:[{name:`workflow.instance.cancelled`,version:1,when:`Workflow is cancelled`,payload:i}],audit:[`workflow.instance.cancelled`]}}),h=c({meta:{name:`workflow.instance.list`,version:1,stability:`stable`,owners:[...l],tags:[`workflow`,`instance`,`list`],description:`List workflow instances with filtering.`,goal:`Browse and search running workflows.`,context:`Dashboard, monitoring.`},io:{input:o({name:`ListInstancesInput`,fields:{workflowKey:{type:a.String_unsecure(),isOptional:!0},status:{type:e,isOptional:!0},referenceType:{type:a.String_unsecure(),isOptional:!0},referenceId:{type:a.String_unsecure(),isOptional:!0},triggeredBy:{type:a.String_unsecure(),isOptional:!0},limit:{type:a.Int_unsecure(),isOptional:!0,defaultValue:20},offset:{type:a.Int_unsecure(),isOptional:!0,defaultValue:0}}}),output:o({name:`ListInstancesOutput`,fields:{instances:{type:i,isArray:!0,isOptional:!1},total:{type:a.Int_unsecure(),isOptional:!1}}})},policy:{auth:`user`}}),g=c({meta:{name:`workflow.instance.get`,version:1,stability:`stable`,owners:[...l],tags:[`workflow`,`instance`,`get`],description:`Get a workflow instance with details.`,goal:`View workflow instance details.`,context:`Instance detail view.`},io:{input:o({name:`GetInstanceInput`,fields:{instanceId:{type:a.String_unsecure(),isOptional:!1}}}),output:i},policy:{auth:`user`}});export{m as CancelWorkflowContract,g as GetInstanceContract,h as ListInstancesContract,f as PauseWorkflowContract,p as ResumeWorkflowContract,u as StartWorkflowContract,d as TransitionWorkflowContract};
@@ -1 +0,0 @@
1
- import{WorkflowStatusEnum as e}from"./workflow.enum.js";import{AddStepInputModel as t,CreateWorkflowInputModel as n,UpdateWorkflowInputModel as r,WorkflowDefinitionModel as i,WorkflowStepModel as a}from"./workflow.schema.js";import{ScalarTypeEnum as o,defineSchemaModel as s}from"@lssm/lib.schema";import{defineCommand as c,defineQuery as l}from"@lssm/lib.contracts/spec";const u=[`@example.workflow-system`],d=c({meta:{name:`workflow.definition.create`,version:1,stability:`stable`,owners:[...u],tags:[`workflow`,`definition`,`create`],description:`Create a new workflow definition.`,goal:`Allow users to define new workflow blueprints.`,context:`Workflow designer, admin panel.`},io:{input:n,output:i},policy:{auth:`user`},sideEffects:{emits:[{name:`workflow.definition.created`,version:1,when:`Workflow is created`,payload:i}],audit:[`workflow.definition.created`]}}),f=c({meta:{name:`workflow.definition.update`,version:1,stability:`stable`,owners:[...u],tags:[`workflow`,`definition`,`update`],description:`Update an existing workflow definition.`,goal:`Allow users to modify workflow blueprints.`,context:`Workflow designer.`},io:{input:r,output:i},policy:{auth:`user`},sideEffects:{emits:[{name:`workflow.definition.updated`,version:1,when:`Workflow is updated`,payload:i}],audit:[`workflow.definition.updated`]}}),p=c({meta:{name:`workflow.step.add`,version:1,stability:`stable`,owners:[...u],tags:[`workflow`,`step`,`add`],description:`Add a step to a workflow definition.`,goal:`Build workflow structure step by step.`,context:`Workflow designer.`},io:{input:t,output:a},policy:{auth:`user`},sideEffects:{emits:[{name:`workflow.step.added`,version:1,when:`Step is added`,payload:a}],audit:[`workflow.step.added`]}}),m=c({meta:{name:`workflow.definition.publish`,version:1,stability:`stable`,owners:[...u],tags:[`workflow`,`definition`,`publish`],description:`Publish a workflow definition to make it available for use.`,goal:`Activate workflow for production use.`,context:`Workflow designer, deployment.`},io:{input:s({name:`PublishWorkflowInput`,fields:{workflowId:{type:o.String_unsecure(),isOptional:!1}}}),output:i},policy:{auth:`user`},sideEffects:{emits:[{name:`workflow.definition.published`,version:1,when:`Workflow is published`,payload:i}],audit:[`workflow.definition.published`]}}),h=l({meta:{name:`workflow.definition.list`,version:1,stability:`stable`,owners:[...u],tags:[`workflow`,`definition`,`list`],description:`List workflow definitions with filtering.`,goal:`Browse and search available workflows.`,context:`Workflow list, search.`},io:{input:s({name:`ListWorkflowsInput`,fields:{status:{type:e,isOptional:!0},search:{type:o.String_unsecure(),isOptional:!0},limit:{type:o.Int_unsecure(),isOptional:!0,defaultValue:20},offset:{type:o.Int_unsecure(),isOptional:!0,defaultValue:0}}}),output:s({name:`ListWorkflowsOutput`,fields:{workflows:{type:i,isArray:!0,isOptional:!1},total:{type:o.Int_unsecure(),isOptional:!1}}})},policy:{auth:`user`}}),g=l({meta:{name:`workflow.definition.get`,version:1,stability:`stable`,owners:[...u],tags:[`workflow`,`definition`,`get`],description:`Get a workflow definition with all steps.`,goal:`View workflow details.`,context:`Workflow designer, detail view.`},io:{input:s({name:`GetWorkflowInput`,fields:{workflowId:{type:o.String_unsecure(),isOptional:!1}}}),output:i},policy:{auth:`user`}});export{p as AddStepContract,d as CreateWorkflowContract,g as GetWorkflowContract,h as ListWorkflowsContract,m as PublishWorkflowContract,f as UpdateWorkflowContract};