openxiangda-contracts 2.78.0 → 2.81.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (172) hide show
  1. package/dist/ai.d.ts +321 -21
  2. package/dist/ai.d.ts.map +1 -1
  3. package/dist/ai.js +37 -14
  4. package/dist/ai.js.map +1 -1
  5. package/dist/application-agent.d.ts +540 -0
  6. package/dist/application-agent.d.ts.map +1 -0
  7. package/dist/application-agent.js +98 -0
  8. package/dist/application-agent.js.map +1 -0
  9. package/dist/browser.d.ts +15 -0
  10. package/dist/browser.d.ts.map +1 -1
  11. package/dist/browser.js +14 -0
  12. package/dist/browser.js.map +1 -1
  13. package/dist/cli.d.ts +5 -0
  14. package/dist/cli.d.ts.map +1 -1
  15. package/dist/data-field-validation.js +26 -23
  16. package/dist/data-field-validation.js.map +1 -1
  17. package/dist/field-value-schemas.d.ts +2 -1427
  18. package/dist/field-value-schemas.d.ts.map +1 -1
  19. package/dist/field-value-schemas.js +2 -261
  20. package/dist/field-value-schemas.js.map +1 -1
  21. package/dist/index.d.ts +13 -0
  22. package/dist/index.d.ts.map +1 -1
  23. package/dist/index.js +13 -0
  24. package/dist/index.js.map +1 -1
  25. package/dist/native-compiler/address-value.d.ts +13 -0
  26. package/dist/native-compiler/address-value.d.ts.map +1 -0
  27. package/dist/native-compiler/address-value.js +70 -0
  28. package/dist/native-compiler/address-value.js.map +1 -0
  29. package/dist/native-compiler/application-agent.d.ts +39 -0
  30. package/dist/native-compiler/application-agent.d.ts.map +1 -0
  31. package/dist/native-compiler/application-agent.js +344 -0
  32. package/dist/native-compiler/application-agent.js.map +1 -0
  33. package/dist/native-compiler/cascade-value.d.ts +6 -0
  34. package/dist/native-compiler/cascade-value.d.ts.map +1 -0
  35. package/dist/native-compiler/cascade-value.js +47 -0
  36. package/dist/native-compiler/cascade-value.js.map +1 -0
  37. package/dist/native-compiler/compiler.d.ts +1 -1
  38. package/dist/native-compiler/compiler.d.ts.map +1 -1
  39. package/dist/native-compiler/compiler.js +85 -56
  40. package/dist/native-compiler/compiler.js.map +1 -1
  41. package/dist/native-compiler/data-field.d.ts +3 -0
  42. package/dist/native-compiler/data-field.d.ts.map +1 -1
  43. package/dist/native-compiler/data-field.js +10 -2
  44. package/dist/native-compiler/data-field.js.map +1 -1
  45. package/dist/native-compiler/declaration-capacity.d.ts +3 -0
  46. package/dist/native-compiler/declaration-capacity.d.ts.map +1 -1
  47. package/dist/native-compiler/declaration-capacity.js +1 -1
  48. package/dist/native-compiler/declaration-capacity.js.map +1 -1
  49. package/dist/native-compiler/field-value-schemas.d.ts +1428 -0
  50. package/dist/native-compiler/field-value-schemas.d.ts.map +1 -0
  51. package/dist/native-compiler/field-value-schemas.js +262 -0
  52. package/dist/native-compiler/field-value-schemas.js.map +1 -0
  53. package/dist/native-compiler/index.cjs +4 -4
  54. package/dist/native-compiler/index.d.ts +17 -0
  55. package/dist/native-compiler/index.d.ts.map +1 -1
  56. package/dist/native-compiler/index.js +4 -4
  57. package/dist/native-compiler/resource-query.d.ts +21 -0
  58. package/dist/native-compiler/resource-query.d.ts.map +1 -0
  59. package/dist/native-compiler/resource-query.js +154 -0
  60. package/dist/native-compiler/resource-query.js.map +1 -0
  61. package/dist/native-compiler/workflow-approval-empty.d.ts +1 -1
  62. package/dist/native-compiler/workflow-approval-empty.d.ts.map +1 -1
  63. package/dist/native-compiler/workflow-approval-empty.js +1 -1
  64. package/dist/native-compiler/workflow-approval-empty.js.map +1 -1
  65. package/dist/native-compiler/workflow-authoring.d.ts +24 -0
  66. package/dist/native-compiler/workflow-authoring.d.ts.map +1 -0
  67. package/dist/native-compiler/workflow-authoring.js +84 -0
  68. package/dist/native-compiler/workflow-authoring.js.map +1 -0
  69. package/dist/native-compiler/workflow-business-step.d.ts +13 -2
  70. package/dist/native-compiler/workflow-business-step.d.ts.map +1 -1
  71. package/dist/native-compiler/workflow-business-step.js +31 -6
  72. package/dist/native-compiler/workflow-business-step.js.map +1 -1
  73. package/dist/native-compiler/workflow-completion-deadline.d.ts +1 -0
  74. package/dist/native-compiler/workflow-completion-deadline.d.ts.map +1 -1
  75. package/dist/native-compiler/workflow-completion-deadline.js +1 -1
  76. package/dist/native-compiler/workflow-completion-deadline.js.map +1 -1
  77. package/dist/native-compiler/workflow-correction.d.ts +1 -0
  78. package/dist/native-compiler/workflow-correction.d.ts.map +1 -1
  79. package/dist/native-compiler/workflow-correction.js +5 -4
  80. package/dist/native-compiler/workflow-correction.js.map +1 -1
  81. package/dist/native-compiler/workflow-designer.d.ts +134 -0
  82. package/dist/native-compiler/workflow-designer.d.ts.map +1 -0
  83. package/dist/native-compiler/workflow-designer.js +407 -0
  84. package/dist/native-compiler/workflow-designer.js.map +1 -0
  85. package/dist/native-compiler/workflow-events.d.ts +8 -0
  86. package/dist/native-compiler/workflow-events.d.ts.map +1 -0
  87. package/dist/native-compiler/workflow-events.js +53 -0
  88. package/dist/native-compiler/workflow-events.js.map +1 -0
  89. package/dist/native-compiler/workflow-expression.d.ts +4 -0
  90. package/dist/native-compiler/workflow-expression.d.ts.map +1 -0
  91. package/dist/native-compiler/workflow-expression.js +47 -0
  92. package/dist/native-compiler/workflow-expression.js.map +1 -0
  93. package/dist/native-compiler/workflow-graph.d.ts +16 -1
  94. package/dist/native-compiler/workflow-graph.d.ts.map +1 -1
  95. package/dist/native-compiler/workflow-graph.js +27 -5
  96. package/dist/native-compiler/workflow-graph.js.map +1 -1
  97. package/dist/native-compiler/workflow-handle.d.ts +4 -0
  98. package/dist/native-compiler/workflow-handle.d.ts.map +1 -0
  99. package/dist/native-compiler/workflow-handle.js +20 -0
  100. package/dist/native-compiler/workflow-handle.js.map +1 -0
  101. package/dist/native-compiler/workflow-initiator-approval.d.ts +1 -0
  102. package/dist/native-compiler/workflow-initiator-approval.d.ts.map +1 -1
  103. package/dist/native-compiler/workflow-initiator-approval.js +1 -1
  104. package/dist/native-compiler/workflow-initiator-approval.js.map +1 -1
  105. package/dist/native-compiler/workflow-node-administration.d.ts +12 -1
  106. package/dist/native-compiler/workflow-node-administration.d.ts.map +1 -1
  107. package/dist/native-compiler/workflow-node-administration.js +66 -14
  108. package/dist/native-compiler/workflow-node-administration.js.map +1 -1
  109. package/dist/native-compiler/workflow-parallel.d.ts +69 -0
  110. package/dist/native-compiler/workflow-parallel.d.ts.map +1 -0
  111. package/dist/native-compiler/workflow-parallel.js +178 -0
  112. package/dist/native-compiler/workflow-parallel.js.map +1 -0
  113. package/dist/native-compiler/workflow-platform-notify.d.ts +41 -0
  114. package/dist/native-compiler/workflow-platform-notify.d.ts.map +1 -0
  115. package/dist/native-compiler/workflow-platform-notify.js +49 -0
  116. package/dist/native-compiler/workflow-platform-notify.js.map +1 -0
  117. package/dist/native-compiler/workflow-reminders.d.ts +11 -0
  118. package/dist/native-compiler/workflow-reminders.d.ts.map +1 -0
  119. package/dist/native-compiler/workflow-reminders.js +12 -0
  120. package/dist/native-compiler/workflow-reminders.js.map +1 -0
  121. package/dist/native-compiler/workflow-return-eligibility.d.ts +8 -0
  122. package/dist/native-compiler/workflow-return-eligibility.d.ts.map +1 -0
  123. package/dist/native-compiler/workflow-return-eligibility.js +32 -0
  124. package/dist/native-compiler/workflow-return-eligibility.js.map +1 -0
  125. package/dist/native-compiler/workflow-return-policy.d.ts +20 -0
  126. package/dist/native-compiler/workflow-return-policy.d.ts.map +1 -0
  127. package/dist/native-compiler/workflow-return-policy.js +37 -0
  128. package/dist/native-compiler/workflow-return-policy.js.map +1 -0
  129. package/dist/native-compiler/workflow-role-union.d.ts +5 -1
  130. package/dist/native-compiler/workflow-role-union.d.ts.map +1 -1
  131. package/dist/native-compiler/workflow-role-union.js +1 -1
  132. package/dist/native-compiler/workflow-role-union.js.map +1 -1
  133. package/dist/native-compiler/workflow-schema-constants.d.ts +5 -0
  134. package/dist/native-compiler/workflow-schema-constants.d.ts.map +1 -0
  135. package/dist/native-compiler/workflow-schema-constants.js +5 -0
  136. package/dist/native-compiler/workflow-schema-constants.js.map +1 -0
  137. package/dist/native-compiler/workflow-schema.d.ts +1634 -0
  138. package/dist/native-compiler/workflow-schema.d.ts.map +1 -0
  139. package/dist/native-compiler/workflow-schema.js +519 -0
  140. package/dist/native-compiler/workflow-schema.js.map +1 -0
  141. package/dist/native-compiler/workflow-source-sync.d.ts +109 -0
  142. package/dist/native-compiler/workflow-source-sync.d.ts.map +1 -0
  143. package/dist/native-compiler/workflow-source-sync.js +116 -0
  144. package/dist/native-compiler/workflow-source-sync.js.map +1 -0
  145. package/dist/native-compiler/workflow-supervisor-chain.d.ts +16 -0
  146. package/dist/native-compiler/workflow-supervisor-chain.d.ts.map +1 -0
  147. package/dist/native-compiler/workflow-supervisor-chain.js +44 -0
  148. package/dist/native-compiler/workflow-supervisor-chain.js.map +1 -0
  149. package/dist/native-compiler/workflow-task-page.js +1 -1
  150. package/dist/native-compiler/workflow-task-page.js.map +1 -1
  151. package/dist/native-version.d.ts +7 -0
  152. package/dist/native-version.d.ts.map +1 -1
  153. package/dist/native-version.js +7 -0
  154. package/dist/native-version.js.map +1 -1
  155. package/dist/native.d.ts +10 -0
  156. package/dist/native.d.ts.map +1 -1
  157. package/dist/native.js.map +1 -1
  158. package/dist/references.d.ts +4 -0
  159. package/dist/references.d.ts.map +1 -1
  160. package/dist/schemas.d.ts +1485 -1088
  161. package/dist/schemas.d.ts.map +1 -1
  162. package/dist/schemas.js +33 -449
  163. package/dist/schemas.js.map +1 -1
  164. package/dist/types.d.ts +48 -12
  165. package/dist/types.d.ts.map +1 -1
  166. package/dist/types.js +4 -42
  167. package/dist/types.js.map +1 -1
  168. package/dist/workflow-summary.d.ts +1 -1
  169. package/dist/workflow-summary.d.ts.map +1 -1
  170. package/dist/workflow-summary.js +2 -1
  171. package/dist/workflow-summary.js.map +1 -1
  172. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workflow-schema.d.ts","sourceRoot":"","sources":["../../src/native-compiler/workflow-schema.ts"],"names":[],"mappings":"AAwDA,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0BjC,CAAC;AA6KX,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwL3B,CAAC;AAEX,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkFxB,CAAC"}
@@ -0,0 +1,519 @@
1
+ import { DATA_RESOURCE_MAX_FIELDS } from './data-capacity.js';
2
+ import { workflowAssignmentRoutingPolicySchema } from './workflow-assignment-routing.js';
3
+ import { workflowRoleCodesSchema } from './workflow-role-union.js';
4
+ import { WORKFLOW_CONFIGURABLE_OPERATIONS } from './workflow-node-administration.js';
5
+ import { WORKFLOW_DEFINITION_SCHEMA_VERSION, WORKFLOW_BINDING_SCHEMA_VERSION, WORKFLOW_SUMMARY_MAX_FIELDS } from './workflow-schema-constants.js';
6
+ const nonEmptyString = { type: 'string', minLength: 1 };
7
+ const dataFieldCode = { type: 'string', pattern: '^[A-Za-z][A-Za-z0-9_]{0,62}$' };
8
+ /** Workflow document shape is pure; protocol and platform consumers share this one owner. */
9
+ const workflowExpressionSchema = {
10
+ type: "object",
11
+ required: ["op"],
12
+ properties: {
13
+ op: {
14
+ enum: [
15
+ "literal",
16
+ "path",
17
+ "eq",
18
+ "neq",
19
+ "gt",
20
+ "gte",
21
+ "lt",
22
+ "lte",
23
+ "in",
24
+ "contains",
25
+ "and",
26
+ "or",
27
+ "not",
28
+ "exists",
29
+ ],
30
+ },
31
+ value: {},
32
+ path: { type: "string", pattern: "^[A-Za-z][A-Za-z0-9_.]{0,254}$" },
33
+ left: { type: "object" },
34
+ right: { type: "object" },
35
+ values: { type: "array", minItems: 1, items: { type: "object" } },
36
+ },
37
+ };
38
+ const workflowCcNodeSchema = {
39
+ type: 'object', additionalProperties: false,
40
+ required: ['id', 'kind', 'title', 'binding', 'next', 'emptyPolicy'],
41
+ properties: {
42
+ id: nonEmptyString, kind: { const: 'cc' }, title: nonEmptyString,
43
+ binding: nonEmptyString, next: nonEmptyString,
44
+ emptyPolicy: { enum: ['block', 'skip'] }, notify: { type: 'boolean' },
45
+ administration: {
46
+ type: 'object', additionalProperties: false,
47
+ properties: {
48
+ assigneeProviders: { type: 'array', minItems: 1, maxItems: 3, uniqueItems: true, items: { enum: ['fixed_users', 'app_role', 'app_role_in_scope'] } },
49
+ },
50
+ },
51
+ },
52
+ };
53
+ const workflowReminderSchema = { type: 'object', additionalProperties: false, required: ['afterSeconds', 'everySeconds', 'max', 'to'], properties: { afterSeconds: { type: 'integer', minimum: 1, maximum: 2592000 }, everySeconds: { type: 'integer', minimum: 1, maximum: 2592000 }, max: { type: 'integer', minimum: 1, maximum: 10 }, to: { type: 'array', minItems: 1, maxItems: 1, items: { const: 'handlers' } } } };
54
+ export const workflowBusinessStepNodeSchema = {
55
+ type: 'object', additionalProperties: false,
56
+ required: ['id', 'kind', 'title', 'next', 'handler', 'inputSchema', 'outputSchema', 'inputs'],
57
+ properties: {
58
+ id: nonEmptyString, kind: { const: 'action' }, title: nonEmptyString, next: nonEmptyString,
59
+ handler: {
60
+ type: 'object', additionalProperties: false, required: ['code', 'version', 'mode'],
61
+ properties: { code: { type: 'string', pattern: '^[a-z][a-z0-9-]{0,100}$' }, version: { type: 'integer', minimum: 1, maximum: 1_000_000 }, mode: { enum: ['pure', 'reconciled-effect'] }, dataTransaction: { const: true } },
62
+ allOf: [{ if: { required: ['dataTransaction'] }, then: { properties: { mode: { const: 'reconciled-effect' } } } }],
63
+ },
64
+ notification: { type: 'object', additionalProperties: false, required: ['template', 'recipients'], properties: {
65
+ template: { const: 'workflow_message' }, recipients: { oneOf: [
66
+ { type: 'object', additionalProperties: false, required: ['provider'], properties: { provider: { const: 'initiator' } } },
67
+ { type: 'object', additionalProperties: false, required: ['provider', 'users'], properties: { provider: { const: 'fixed_users' }, users: { type: 'array', minItems: 1, maxItems: 50, uniqueItems: true, items: { type: 'string', minLength: 1, maxLength: 255 } } } },
68
+ { type: 'object', additionalProperties: false, required: ['provider', 'roleCode'], properties: { provider: { const: 'app_role' }, roleCode: nonEmptyString } },
69
+ { type: 'object', additionalProperties: false, required: ['provider', 'inputPath'], properties: { provider: { const: 'form_field_users' }, inputPath: nonEmptyString } },
70
+ ] },
71
+ } },
72
+ inputSchema: { type: 'object' }, outputSchema: { type: 'object' },
73
+ inputs: { type: 'object', maxProperties: 32, additionalProperties: {
74
+ oneOf: [
75
+ { type: 'object', additionalProperties: false, required: ['source', 'path'], properties: { source: { const: 'fact' }, path: { type: 'string', minLength: 1, maxLength: 256 } } },
76
+ { type: 'object', additionalProperties: false, required: ['source', 'value'], properties: { source: { const: 'literal' }, value: {} } },
77
+ ],
78
+ } },
79
+ },
80
+ };
81
+ const workflowReturnPolicySchema = {
82
+ type: 'object', additionalProperties: false, required: ['targets'], properties: {
83
+ targets: { type: 'array', maxItems: 20, items: {
84
+ type: 'object', additionalProperties: false, required: ['nodeId', 'routes', 'defaultRoute'],
85
+ properties: { nodeId: nonEmptyString, routes: { type: 'array', minItems: 1, maxItems: 2, uniqueItems: true, items: { enum: ['replay', 'resume'] } }, defaultRoute: { enum: ['replay', 'resume'] } },
86
+ } },
87
+ },
88
+ };
89
+ const workflowNodeSchema = {
90
+ oneOf: [
91
+ {
92
+ type: 'object', additionalProperties: false,
93
+ required: ['id', 'kind', 'title', 'binding', 'mode', 'next', 'allowedOperations', 'requiredOperations'],
94
+ properties: {
95
+ id: nonEmptyString, kind: { const: 'handle' }, title: nonEmptyString, reminders: workflowReminderSchema,
96
+ binding: nonEmptyString, mode: { enum: ['single', 'any', 'all', 'sequence'] },
97
+ next: nonEmptyString, emptyPolicy: { const: 'block' },
98
+ taskPageCode: { type: 'string', pattern: '^[A-Za-z][A-Za-z0-9_-]{0,63}$' },
99
+ allowedOperations: { type: 'array', uniqueItems: true, items: { enum: ['complete', 'save_form', 'return', 'transfer', 'delegate'] } },
100
+ requiredOperations: { type: 'array', uniqueItems: true, items: { enum: ['complete', 'save_form', 'return', 'transfer', 'delegate'] } },
101
+ returnPolicy: workflowReturnPolicySchema,
102
+ returnTargets: { type: 'array', items: nonEmptyString, uniqueItems: true },
103
+ operationPolicy: { type: 'object', additionalProperties: false, properties: Object.fromEntries(['complete', 'save_form', 'return', 'transfer', 'delegate'].map(operation => [operation, {
104
+ type: 'object', additionalProperties: false, minProperties: 1,
105
+ properties: { label: { type: 'string', minLength: 1, maxLength: 40 },
106
+ ...(operation !== 'save_form' ? { opinion: { enum: ['none', 'optional', 'required'] }, minimumOpinion: { enum: ['none', 'optional', 'required'] } } : {}),
107
+ ...(operation === 'complete' ? { commentRequired: { type: 'boolean' } } : {}),
108
+ ...(['return', 'transfer', 'delegate'].includes(operation) ? { reasonRequired: { type: 'boolean' } } : {}) },
109
+ }])) },
110
+ administration: { type: 'object', additionalProperties: false, properties: {
111
+ modes: { type: 'array', uniqueItems: true, minItems: 1, maxItems: 4, items: { enum: ['single', 'any', 'all', 'sequence'] } },
112
+ assigneeProviders: { type: 'array', uniqueItems: true, minItems: 1, maxItems: 3, items: { enum: ['fixed_users', 'app_role', 'app_role_in_scope'] } },
113
+ operations: { type: 'array', uniqueItems: true, minItems: 1, maxItems: 5, items: { enum: ['complete', 'save_form', 'return', 'transfer', 'delegate'] } },
114
+ } },
115
+ fieldPolicy: { type: 'object', additionalProperties: false, properties: { default: { enum: ['hidden', 'readonly', 'edit', 'edit_required'] }, fields: { type: 'object', additionalProperties: { enum: ['hidden', 'readonly', 'edit', 'edit_required'] } } } },
116
+ },
117
+ },
118
+ {
119
+ type: "object",
120
+ additionalProperties: false,
121
+ required: [
122
+ "id",
123
+ "kind",
124
+ "title",
125
+ "binding",
126
+ "mode",
127
+ "onApprove",
128
+ "onReject",
129
+ ],
130
+ properties: {
131
+ id: nonEmptyString,
132
+ kind: { const: "approval" },
133
+ reminders: workflowReminderSchema,
134
+ title: nonEmptyString,
135
+ binding: nonEmptyString,
136
+ mode: { enum: ["single", "any", "all", "sequence"] },
137
+ emptyPolicy: { enum: ["block", "skip"] },
138
+ initiatorApprovalPolicy: { enum: ["manual", "auto_approve"] },
139
+ completionDeadline: {
140
+ type: 'object', additionalProperties: false, required: ['afterSeconds', 'action'],
141
+ properties: { afterSeconds: { type: 'integer', minimum: 1, maximum: 2592000 }, action: { const: 'approve' } },
142
+ },
143
+ onApprove: nonEmptyString,
144
+ onReject: nonEmptyString,
145
+ taskPageCode: { type: 'string', pattern: '^[A-Za-z][A-Za-z0-9_-]{0,63}$' },
146
+ operationPolicy: {
147
+ type: 'object', additionalProperties: false,
148
+ properties: Object.fromEntries(WORKFLOW_CONFIGURABLE_OPERATIONS.map(operation => [operation, {
149
+ type: 'object', additionalProperties: false, minProperties: 1,
150
+ properties: {
151
+ label: { type: 'string', minLength: 1, maxLength: 40, pattern: '^(?!.*[\\u0000-\\u001f\\u007f])(?=.*\\S).*$' },
152
+ ...(operation !== 'save_form' ? { opinion: { enum: ['none', 'optional', 'required'] }, minimumOpinion: { enum: ['none', 'optional', 'required'] } } : {}),
153
+ ...(['complete', 'approve', 'reject'].includes(operation) ? { commentRequired: { type: 'boolean' } } : {}),
154
+ ...(['transfer', 'delegate', 'add_assignee', 'return'].includes(operation) ? { reasonRequired: { type: 'boolean' } } : {}),
155
+ },
156
+ }])),
157
+ },
158
+ administration: {
159
+ type: 'object', additionalProperties: false,
160
+ properties: {
161
+ modes: { type: 'array', minItems: 1, maxItems: 4, uniqueItems: true, items: { enum: ['single', 'any', 'all', 'sequence'] } },
162
+ assigneeProviders: { type: 'array', minItems: 1, maxItems: 3, uniqueItems: true, items: { enum: ['fixed_users', 'app_role', 'app_role_in_scope'] } },
163
+ operations: { type: 'array', minItems: 1, maxItems: 8, uniqueItems: true, items: { enum: [...WORKFLOW_CONFIGURABLE_OPERATIONS] } },
164
+ },
165
+ },
166
+ requiredOperations: { type: 'array', minItems: 1, maxItems: 7, uniqueItems: true, items: { enum: [...WORKFLOW_CONFIGURABLE_OPERATIONS] } },
167
+ allowedOperations: {
168
+ type: "array",
169
+ uniqueItems: true,
170
+ items: {
171
+ enum: [
172
+ "approve",
173
+ "reject",
174
+ "return",
175
+ "transfer",
176
+ "delegate",
177
+ "add_assignee",
178
+ "resubmit",
179
+ "save_form",
180
+ "admin_reassign",
181
+ "admin_override",
182
+ ],
183
+ },
184
+ },
185
+ returnPolicy: workflowReturnPolicySchema,
186
+ returnTargets: {
187
+ type: "array",
188
+ uniqueItems: true,
189
+ items: nonEmptyString,
190
+ },
191
+ fieldPolicy: {
192
+ type: "object",
193
+ additionalProperties: false,
194
+ properties: {
195
+ default: {
196
+ enum: ["hidden", "readonly", "edit", "edit_required"],
197
+ },
198
+ fields: {
199
+ type: "object",
200
+ additionalProperties: {
201
+ enum: ["hidden", "readonly", "edit", "edit_required"],
202
+ },
203
+ },
204
+ },
205
+ },
206
+ },
207
+ },
208
+ {
209
+ type: "object",
210
+ additionalProperties: false,
211
+ required: ["id", "kind", "branches", "otherwise"],
212
+ properties: {
213
+ id: nonEmptyString,
214
+ kind: { const: "condition" },
215
+ title: { type: "string" },
216
+ branches: {
217
+ type: "array",
218
+ minItems: 1,
219
+ items: {
220
+ type: "object",
221
+ additionalProperties: false,
222
+ required: ["when", "target"],
223
+ properties: {
224
+ when: workflowExpressionSchema,
225
+ target: nonEmptyString,
226
+ label: { type: "string" },
227
+ },
228
+ },
229
+ },
230
+ otherwise: nonEmptyString,
231
+ },
232
+ },
233
+ {
234
+ type: "object",
235
+ additionalProperties: false,
236
+ required: ["id", "kind", "title", "outcome"],
237
+ properties: {
238
+ id: nonEmptyString,
239
+ kind: { const: "end" },
240
+ title: nonEmptyString,
241
+ outcome: nonEmptyString,
242
+ },
243
+ },
244
+ workflowCcNodeSchema,
245
+ workflowBusinessStepNodeSchema,
246
+ { type: 'object', additionalProperties: false, required: ['id', 'kind', 'title', 'taskPageCode', 'next'],
247
+ properties: { id: nonEmptyString, kind: { const: 'correction' }, title: nonEmptyString, reminders: workflowReminderSchema,
248
+ taskPageCode: { type: 'string', pattern: '^[A-Za-z][A-Za-z0-9_-]{0,63}$' }, next: nonEmptyString } },
249
+ ],
250
+ };
251
+ export const workflowDefinitionSchema = {
252
+ $id: WORKFLOW_DEFINITION_SCHEMA_VERSION,
253
+ type: "object",
254
+ additionalProperties: false,
255
+ required: [
256
+ "schemaVersion",
257
+ "code",
258
+ "title",
259
+ "acceptedCommandDeactivationPolicy",
260
+ "subject",
261
+ "startAt",
262
+ "inputSchema",
263
+ "nodes",
264
+ ],
265
+ properties: {
266
+ schemaVersion: { const: WORKFLOW_DEFINITION_SCHEMA_VERSION },
267
+ authoring: {
268
+ type: 'object', additionalProperties: false, properties: {
269
+ businessSteps: { type: 'array', maxItems: 100, items: {
270
+ type: 'object', additionalProperties: false, required: ['title', 'handler', 'inputSchema', 'outputSchema'],
271
+ properties: { title: { type: 'string', minLength: 1, maxLength: 160 },
272
+ handler: { type: 'object', additionalProperties: false, required: ['code', 'version', 'mode'], properties: { code: { type: 'string', pattern: '^[a-z][a-z0-9_-]{0,127}$' }, version: { type: 'integer', minimum: 1 }, mode: { enum: ['pure', 'reconciled-effect'] }, dataTransaction: { const: true } } },
273
+ inputSchema: { type: 'object' }, outputSchema: { type: 'object' } }
274
+ } }
275
+ }
276
+ },
277
+ code: { type: "string", pattern: "^[A-Za-z][A-Za-z0-9_-]{0,127}$" },
278
+ title: nonEmptyString,
279
+ launchPreflight: {
280
+ type: 'object', additionalProperties: false, required: ['requiredApprovalNodes'],
281
+ properties: { requiredApprovalNodes: { type: 'array', minItems: 1, maxItems: 20, uniqueItems: true,
282
+ items: { type: 'string', pattern: '^[A-Za-z][A-Za-z0-9_-]{0,127}$' } } },
283
+ },
284
+ approvedDelegation: {
285
+ type: 'object', additionalProperties: false,
286
+ required: ['confirmationNodeId', 'confirmer', 'requestsField', 'maxRequests'],
287
+ properties: {
288
+ confirmationNodeId: { type: 'string', pattern: '^[A-Za-z][A-Za-z0-9_-]{0,127}$' },
289
+ confirmer: { enum: ['initiator', 'delegate'] },
290
+ requestsField: { type: 'string', pattern: '^[A-Za-z][A-Za-z0-9_]{0,62}$' },
291
+ maxRequests: { type: 'integer', minimum: 1, maximum: 500 },
292
+ },
293
+ },
294
+ commandHandlers: {
295
+ type: 'object', additionalProperties: false, minProperties: 1,
296
+ properties: Object.fromEntries(['approve', 'reject', 'withdraw', 'resubmit'].map(command => [command, {
297
+ type: 'object', additionalProperties: false, required: ['operationCode'],
298
+ properties: { operationCode: { type: 'string', pattern: '^[a-z][a-z0-9]*(?:[-_.][a-z0-9]+)*$' },
299
+ ...(command === 'approve' ? { transitionPolicy: { const: 'workflow' } } : {}),
300
+ ...(command === 'resubmit' ? { derivedSubjectFields: { type: 'array', minItems: 1, maxItems: 32, uniqueItems: true,
301
+ items: { type: 'string', pattern: '^[A-Za-z][A-Za-z0-9_]{0,62}$' } } } : {}) },
302
+ }])),
303
+ },
304
+ taskPages: {
305
+ type: 'object', minProperties: 1, maxProperties: 16,
306
+ propertyNames: { pattern: '^[A-Za-z][A-Za-z0-9_-]{0,63}$' },
307
+ additionalProperties: {
308
+ type: 'object', additionalProperties: false, required: ['title', 'fields'],
309
+ properties: {
310
+ title: { type: 'string', minLength: 1, maxLength: 160 },
311
+ fields: {
312
+ type: 'array', minItems: 1, maxItems: DATA_RESOURCE_MAX_FIELDS,
313
+ items: {
314
+ type: 'object', additionalProperties: false, required: ['code'],
315
+ properties: {
316
+ code: { type: 'string', pattern: '^[A-Za-z][A-Za-z0-9_]{0,62}$' },
317
+ readonly: { type: 'boolean' }, required: { type: 'boolean' },
318
+ visibleWhen: workflowExpressionSchema, requiredWhen: workflowExpressionSchema,
319
+ },
320
+ },
321
+ },
322
+ },
323
+ },
324
+ },
325
+ acceptedCommandDeactivationPolicy: {
326
+ enum: ["finish-pinned", "cancel-on-deactivate"],
327
+ },
328
+ rejectionNotification: {
329
+ type: 'object', additionalProperties: false,
330
+ required: ['recipient', 'title', 'summary'],
331
+ properties: {
332
+ recipient: { const: 'record_last_modifier' },
333
+ title: { type: 'string', minLength: 1, maxLength: 160, pattern: '\\S' },
334
+ summary: { type: 'string', minLength: 1, maxLength: 500, pattern: '\\S' },
335
+ },
336
+ },
337
+ instanceCommands: {
338
+ type: "object",
339
+ additionalProperties: false,
340
+ minProperties: 1,
341
+ properties: {
342
+ withdraw: {
343
+ type: "object",
344
+ additionalProperties: false,
345
+ minProperties: 1,
346
+ properties: {
347
+ beforeFact: { type: "string", pattern: "^[A-Za-z][A-Za-z0-9_]{0,62}$" },
348
+ reasonRequired: { type: "boolean" },
349
+ },
350
+ },
351
+ terminate: {
352
+ type: "object",
353
+ additionalProperties: false,
354
+ required: ["capability"],
355
+ properties: {
356
+ capability: { type: "string", maxLength: 255, pattern: "^app:[a-z][a-z0-9]*(?:-[a-z0-9]+)*:[A-Za-z0-9:._-]+$" },
357
+ beforeFact: { type: "string", pattern: "^[A-Za-z][A-Za-z0-9_]{0,62}$" },
358
+ },
359
+ },
360
+ },
361
+ },
362
+ subject: {
363
+ type: "object",
364
+ additionalProperties: false,
365
+ required: ["resourceCode", "factProjection", "summaryFields"],
366
+ properties: {
367
+ resourceCode: {
368
+ type: "string",
369
+ pattern: "^[a-z][a-z0-9]*(?:-[a-z0-9]+)*$",
370
+ },
371
+ factProjection: {
372
+ type: "object",
373
+ minProperties: 1,
374
+ maxProperties: 64,
375
+ propertyNames: {
376
+ pattern: "^[A-Za-z][A-Za-z0-9_.]{0,127}$",
377
+ },
378
+ additionalProperties: {
379
+ type: "string",
380
+ pattern: "^[A-Za-z][A-Za-z0-9_]{0,62}$",
381
+ },
382
+ },
383
+ summaryFields: {
384
+ type: "array",
385
+ maxItems: WORKFLOW_SUMMARY_MAX_FIELDS,
386
+ uniqueItems: true,
387
+ items: dataFieldCode,
388
+ },
389
+ },
390
+ },
391
+ startAt: nonEmptyString,
392
+ inputSchema: {
393
+ type: "object",
394
+ required: ["type", "additionalProperties"],
395
+ properties: {
396
+ type: { const: "object" },
397
+ additionalProperties: { const: false },
398
+ },
399
+ },
400
+ organizationContext: {
401
+ type: "object",
402
+ additionalProperties: false,
403
+ properties: {
404
+ department: {
405
+ type: "object",
406
+ additionalProperties: false,
407
+ required: ["source"],
408
+ properties: {
409
+ source: {
410
+ enum: [
411
+ "none",
412
+ "user_primary_department",
413
+ "choose_if_multiple",
414
+ "always_choose",
415
+ "fixed",
416
+ "from_input",
417
+ "from_role_scope",
418
+ ],
419
+ },
420
+ required: { type: "boolean" },
421
+ value: { type: "string" },
422
+ path: { type: "string" },
423
+ dimension: { type: "string" },
424
+ },
425
+ },
426
+ },
427
+ },
428
+ nodes: {
429
+ type: "object",
430
+ minProperties: 1,
431
+ maxProperties: 200,
432
+ additionalProperties: workflowNodeSchema,
433
+ },
434
+ },
435
+ };
436
+ export const workflowBindingSchema = {
437
+ $id: WORKFLOW_BINDING_SCHEMA_VERSION,
438
+ type: "object",
439
+ additionalProperties: false,
440
+ required: ["schemaVersion", "workflowCode", "bindings"],
441
+ properties: {
442
+ schemaVersion: { const: WORKFLOW_BINDING_SCHEMA_VERSION },
443
+ workflowCode: nonEmptyString,
444
+ bindings: {
445
+ type: "object",
446
+ maxProperties: 200,
447
+ additionalProperties: {
448
+ type: "object",
449
+ additionalProperties: false,
450
+ required: ["provider"],
451
+ allOf: [{
452
+ if: { required: ['roleCodes'] },
453
+ then: { properties: { provider: { enum: ['app_role', 'app_role_in_scope'] } }, not: { anyOf: [{ required: ['roleCode'] }, { required: ['candidateField'] }] } },
454
+ }, {
455
+ if: { required: ['candidateField'] },
456
+ then: {
457
+ required: ['inputPath'],
458
+ properties: { provider: { const: 'form_field_users' } },
459
+ not: { anyOf: [{ required: ['roleCode'] }, { required: ['scope'] }, { required: ['routing'] }] },
460
+ },
461
+ }, {
462
+ if: { required: ['selectedInputPath'] },
463
+ then: { properties: { provider: { enum: ['app_role', 'app_role_in_scope'] } },
464
+ anyOf: [{ required: ['roleCode'] }, { required: ['roleCodes'] }],
465
+ not: { anyOf: [{ required: ['candidateField'] }, { required: ['inputPath'] }, { required: ['routing'] }] } },
466
+ }],
467
+ properties: {
468
+ provider: {
469
+ enum: [
470
+ "fixed_users",
471
+ "initiator",
472
+ "input_users",
473
+ "form_field_users",
474
+ "department_supervisor",
475
+ "supervisor_chain",
476
+ "app_role",
477
+ "app_role_in_scope",
478
+ "business_relation",
479
+ "previous_node_actor",
480
+ "initiator_select",
481
+ "application_provider",
482
+ ],
483
+ },
484
+ users: { type: "array", uniqueItems: true, items: nonEmptyString },
485
+ inputPath: { type: "string" },
486
+ selectedInputPath: { type: "string", maxLength: 255, pattern: "^[A-Za-z][A-Za-z0-9_-]*(?:\\.[A-Za-z][A-Za-z0-9_-]*)*$" },
487
+ candidateField: dataFieldCode,
488
+ from: { oneOf: [{ const: 'initiator' }, { type: 'object', additionalProperties: false, required: ['field'], properties: { field: { type: 'string', maxLength: 255 } } }] },
489
+ until: { oneOf: [{ const: 'top' }, { type: 'object', additionalProperties: false, required: ['level'], properties: { level: { type: 'integer', minimum: 1, maximum: 20 } } }, { type: 'object', additionalProperties: false, required: ['roleCode'], properties: { roleCode: nonEmptyString } }] },
490
+ continuous: { type: 'boolean' }, missing: { enum: ['skip_level', 'block'] },
491
+ departmentIdFrom: { type: "string" },
492
+ level: { type: "integer", minimum: 1, maximum: 20 },
493
+ fallbackToAncestorSupervisor: { type: "boolean" },
494
+ roleCode: { type: "string" },
495
+ roleCodes: workflowRoleCodesSchema,
496
+ scope: {
497
+ type: "object",
498
+ additionalProperties: false,
499
+ required: ["dimension"],
500
+ properties: {
501
+ dimension: nonEmptyString,
502
+ valueFrom: { type: "string" },
503
+ value: { type: "string" },
504
+ },
505
+ },
506
+ relationCode: { type: "string" },
507
+ resourceCode: { type: "string" },
508
+ resourceIdFrom: { type: "string" },
509
+ providerCode: { type: "string" },
510
+ min: { type: "integer", minimum: 1, maximum: 200 },
511
+ max: { type: "integer", minimum: 1, maximum: 200 },
512
+ delegatable: { type: "boolean" },
513
+ routing: workflowAssignmentRoutingPolicySchema,
514
+ },
515
+ },
516
+ },
517
+ },
518
+ };
519
+ //# sourceMappingURL=workflow-schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workflow-schema.js","sourceRoot":"","sources":["../../src/native-compiler/workflow-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAAE,qCAAqC,EAAE,MAAM,kCAAkC,CAAC;AACzF,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,EAAE,gCAAgC,EAAE,MAAM,mCAAmC,CAAC;AACrF,OAAO,EAAE,kCAAkC,EAAE,+BAA+B,EAAE,2BAA2B,EAAE,MAAM,gCAAgC,CAAC;AAClJ,MAAM,cAAc,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,EAAW,CAAC;AACjE,MAAM,aAAa,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,8BAA8B,EAAW,CAAC;AAE3F,6FAA6F;AAC7F,MAAM,wBAAwB,GAAG;IAC/B,IAAI,EAAE,QAAQ;IACd,QAAQ,EAAE,CAAC,IAAI,CAAC;IAChB,UAAU,EAAE;QACV,EAAE,EAAE;YACF,IAAI,EAAE;gBACJ,SAAS;gBACT,MAAM;gBACN,IAAI;gBACJ,KAAK;gBACL,IAAI;gBACJ,KAAK;gBACL,IAAI;gBACJ,KAAK;gBACL,IAAI;gBACJ,UAAU;gBACV,KAAK;gBACL,IAAI;gBACJ,KAAK;gBACL,QAAQ;aACT;SACF;QACD,KAAK,EAAE,EAAE;QACT,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,gCAAgC,EAAE;QACnE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QACxB,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QACzB,MAAM,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;KAClE;CACO,CAAC;AAEX,MAAM,oBAAoB,GAAG;IAC3B,IAAI,EAAE,QAAQ,EAAE,oBAAoB,EAAE,KAAK;IAC3C,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,aAAa,CAAC;IACnE,UAAU,EAAE;QACV,EAAE,EAAE,cAAc,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,cAAc;QAChE,OAAO,EAAE,cAAc,EAAE,IAAI,EAAE,cAAc;QAC7C,WAAW,EAAE,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;QACrE,cAAc,EAAE;YACd,IAAI,EAAE,QAAQ,EAAE,oBAAoB,EAAE,KAAK;YAC3C,UAAU,EAAE;gBACV,iBAAiB,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,aAAa,EAAE,UAAU,EAAE,mBAAmB,CAAC,EAAE,EAAE;aACrJ;SACF;KACF;CACO,CAAC;AAEX,MAAM,sBAAsB,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,oBAAoB,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,cAAc,EAAC,cAAc,EAAC,KAAK,EAAC,IAAI,CAAC,EAAE,UAAU,EAAE,EAAE,YAAY,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,YAAY,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,EAAE,EAAE,CAAC;AACzZ,MAAM,CAAC,MAAM,8BAA8B,GAAG;IAC5C,IAAI,EAAE,QAAQ,EAAE,oBAAoB,EAAE,KAAK;IAC3C,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,cAAc,EAAE,QAAQ,CAAC;IAC7F,UAAU,EAAE;QACV,EAAE,EAAE,cAAc,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAE,cAAc,EAAE,IAAI,EAAE,cAAc;QAC1F,OAAO,EAAE;YACP,IAAI,EAAE,QAAQ,EAAE,oBAAoB,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,CAAC;YAClF,UAAU,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,yBAAyB,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,EAAE,mBAAmB,CAAC,EAAE,EAAE,eAAe,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;YAC3N,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,iBAAiB,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,UAAU,EAAE,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,mBAAmB,EAAE,EAAE,EAAE,EAAE,CAAC;SACnH;QACD,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,oBAAoB,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,UAAU,EAAC,YAAY,CAAC,EAAE,UAAU,EAAE;gBAC5G,QAAQ,EAAE,EAAE,KAAK,EAAE,kBAAkB,EAAE,EAAE,UAAU,EAAE,EAAE,KAAK,EAAE;wBAC5D,EAAE,IAAI,EAAE,QAAQ,EAAE,oBAAoB,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,UAAU,CAAC,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,EAAE;wBACzH,EAAE,IAAI,EAAE,QAAQ,EAAE,oBAAoB,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,UAAU,EAAC,OAAO,CAAC,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE;wBACpQ,EAAE,IAAI,EAAE,QAAQ,EAAE,oBAAoB,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,UAAU,EAAC,UAAU,CAAC,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,cAAc,EAAE,EAAE;wBAC7J,EAAE,IAAI,EAAE,QAAQ,EAAE,oBAAoB,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,UAAU,EAAC,WAAW,CAAC,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAE,kBAAkB,EAAE,EAAE,SAAS,EAAE,cAAc,EAAE,EAAE;qBACxK,EAAE;aACJ,EAAE;QACH,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QACjE,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,aAAa,EAAE,EAAE,EAAE,oBAAoB,EAAE;gBACjE,KAAK,EAAE;oBACL,EAAE,IAAI,EAAE,QAAQ,EAAE,oBAAoB,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC,EAAE,UAAU,EAAE,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,GAAG,EAAE,EAAE,EAAE;oBAChL,EAAE,IAAI,EAAE,QAAQ,EAAE,oBAAoB,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC,EAAE,UAAU,EAAE,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE;iBACxI;aACF,EAAE;KACJ;CACO,CAAC;AAEX,MAAM,0BAA0B,GAAG;IACjC,IAAI,EAAE,QAAQ,EAAE,oBAAoB,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,SAAS,CAAC,EAAE,UAAU,EAAE;QAC9E,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE;gBAC7C,IAAI,EAAE,QAAQ,EAAE,oBAAoB,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAC,QAAQ,EAAC,cAAc,CAAC;gBACzF,UAAU,EAAE,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,QAAQ,EAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,YAAY,EAAE,EAAE,IAAI,EAAE,CAAC,QAAQ,EAAC,QAAQ,CAAC,EAAE,EAAE;aAClM,EAAE;KACJ;CACF,CAAC;AACF,MAAM,kBAAkB,GAAG;IACzB,KAAK,EAAE;QACL;YACE,IAAI,EAAE,QAAQ,EAAE,oBAAoB,EAAE,KAAK;YAC3C,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,mBAAmB,EAAE,oBAAoB,CAAC;YACvG,UAAU,EAAE;gBACV,EAAE,EAAE,cAAc,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,sBAAsB;gBACvG,OAAO,EAAE,cAAc,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,CAAC,EAAE;gBAC7E,IAAI,EAAE,cAAc,EAAE,WAAW,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE;gBACrD,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,+BAA+B,EAAE;gBAC1E,iBAAiB,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,UAAU,EAAE,WAAW,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,CAAC,EAAE,EAAE;gBACrI,kBAAkB,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,UAAU,EAAE,WAAW,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,CAAC,EAAE,EAAE;gBACtI,YAAY,EAAE,0BAA0B;gBACxC,aAAa,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,IAAI,EAAE;gBAC1E,eAAe,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,oBAAoB,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC,UAAU,EAAC,WAAW,EAAC,QAAQ,EAAC,UAAU,EAAC,UAAU,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,SAAS,EAAE;4BAClL,IAAI,EAAE,QAAQ,EAAE,oBAAoB,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC;4BAC7D,UAAU,EAAE,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE;gCAClE,GAAG,CAAC,SAAS,KAAK,WAAW,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,EAAC,UAAU,EAAC,UAAU,CAAC,EAAE,EAAE,cAAc,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,EAAC,UAAU,EAAC,UAAU,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gCACrJ,GAAG,CAAC,SAAS,KAAK,UAAU,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gCAC7E,GAAG,CAAC,CAAC,QAAQ,EAAC,UAAU,EAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE;yBAC7G,CAAC,CAAC,CAAC,EAAE;gBACN,cAAc,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,oBAAoB,EAAE,KAAK,EAAE,UAAU,EAAE;wBACzE,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,QAAQ,EAAC,KAAK,EAAC,KAAK,EAAC,UAAU,CAAC,EAAE,EAAE;wBACzH,iBAAiB,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,aAAa,EAAC,UAAU,EAAC,mBAAmB,CAAC,EAAE,EAAE;wBAClJ,UAAU,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,UAAU,EAAC,WAAW,EAAC,QAAQ,EAAC,UAAU,EAAC,UAAU,CAAC,EAAE,EAAE;qBACrJ,EAAE;gBACH,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,oBAAoB,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,CAAC,QAAQ,EAAC,UAAU,EAAC,MAAM,EAAC,eAAe,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,oBAAoB,EAAE,EAAE,IAAI,EAAE,CAAC,QAAQ,EAAC,UAAU,EAAC,MAAM,EAAC,eAAe,CAAC,EAAE,EAAE,EAAE,EAAE;aACxP;SACF;QACD;YACE,IAAI,EAAE,QAAQ;YACd,oBAAoB,EAAE,KAAK;YAC3B,QAAQ,EAAE;gBACR,IAAI;gBACJ,MAAM;gBACN,OAAO;gBACP,SAAS;gBACT,MAAM;gBACN,WAAW;gBACX,UAAU;aACX;YACD,UAAU,EAAE;gBACV,EAAE,EAAE,cAAc;gBAClB,IAAI,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE;gBAC3B,SAAS,EAAE,sBAAsB;gBACjC,KAAK,EAAE,cAAc;gBACrB,OAAO,EAAE,cAAc;gBACvB,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,CAAC,EAAE;gBACpD,WAAW,EAAE,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE;gBACxC,uBAAuB,EAAE,EAAE,IAAI,EAAE,CAAC,QAAQ,EAAE,cAAc,CAAC,EAAE;gBAC7D,kBAAkB,EAAE;oBAClB,IAAI,EAAE,QAAQ,EAAE,oBAAoB,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,cAAc,EAAE,QAAQ,CAAC;oBACjF,UAAU,EAAE,EAAE,YAAY,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE;iBAC9G;gBACD,SAAS,EAAE,cAAc;gBACzB,QAAQ,EAAE,cAAc;gBACxB,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,+BAA+B,EAAE;gBAC1E,eAAe,EAAE;oBACf,IAAI,EAAE,QAAQ,EAAE,oBAAoB,EAAE,KAAK;oBAC3C,UAAU,EAAE,MAAM,CAAC,WAAW,CAAC,gCAAgC,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,SAAS,EAAE;4BAC3F,IAAI,EAAE,QAAQ,EAAE,oBAAoB,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC;4BAC7D,UAAU,EAAE;gCACV,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,OAAO,EAAE,6CAA6C,EAAE;gCAC9G,GAAG,CAAC,SAAS,KAAK,WAAW,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,UAAU,CAAC,EAAE,EAAE,cAAc,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,UAAU,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gCACzJ,GAAG,CAAC,CAAC,UAAU,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gCAC1G,GAAG,CAAC,CAAC,UAAU,EAAE,UAAU,EAAE,cAAc,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;6BAC3H;yBACF,CAAC,CAAC,CAAC;iBACL;gBACD,cAAc,EAAE;oBACd,IAAI,EAAE,QAAQ,EAAE,oBAAoB,EAAE,KAAK;oBAC3C,UAAU,EAAE;wBACV,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,CAAC,EAAE,EAAE;wBAC5H,iBAAiB,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,aAAa,EAAE,UAAU,EAAE,mBAAmB,CAAC,EAAE,EAAE;wBACpJ,UAAU,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,GAAG,gCAAgC,CAAC,EAAE,EAAE;qBACnI;iBACF;gBACD,kBAAkB,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,GAAG,gCAAgC,CAAC,EAAE,EAAE;gBAC1I,iBAAiB,EAAE;oBACjB,IAAI,EAAE,OAAO;oBACb,WAAW,EAAE,IAAI;oBACjB,KAAK,EAAE;wBACL,IAAI,EAAE;4BACJ,SAAS;4BACT,QAAQ;4BACR,QAAQ;4BACR,UAAU;4BACV,UAAU;4BACV,cAAc;4BACd,UAAU;4BACV,WAAW;4BACX,gBAAgB;4BAChB,gBAAgB;yBACjB;qBACF;iBACF;gBACD,YAAY,EAAE,0BAA0B;gBACxC,aAAa,EAAE;oBACb,IAAI,EAAE,OAAO;oBACb,WAAW,EAAE,IAAI;oBACjB,KAAK,EAAE,cAAc;iBACtB;gBACD,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,oBAAoB,EAAE,KAAK;oBAC3B,UAAU,EAAE;wBACV,OAAO,EAAE;4BACP,IAAI,EAAE,CAAC,QAAQ,EAAE,UAAU,EAAE,MAAM,EAAE,eAAe,CAAC;yBACtD;wBACD,MAAM,EAAE;4BACN,IAAI,EAAE,QAAQ;4BACd,oBAAoB,EAAE;gCACpB,IAAI,EAAE,CAAC,QAAQ,EAAE,UAAU,EAAE,MAAM,EAAE,eAAe,CAAC;6BACtD;yBACF;qBACF;iBACF;aACF;SACF;QACD;YACE,IAAI,EAAE,QAAQ;YACd,oBAAoB,EAAE,KAAK;YAC3B,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,WAAW,CAAC;YACjD,UAAU,EAAE;gBACV,EAAE,EAAE,cAAc;gBAClB,IAAI,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE;gBAC5B,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBACzB,QAAQ,EAAE;oBACR,IAAI,EAAE,OAAO;oBACb,QAAQ,EAAE,CAAC;oBACX,KAAK,EAAE;wBACL,IAAI,EAAE,QAAQ;wBACd,oBAAoB,EAAE,KAAK;wBAC3B,QAAQ,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC;wBAC5B,UAAU,EAAE;4BACV,IAAI,EAAE,wBAAwB;4BAC9B,MAAM,EAAE,cAAc;4BACtB,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;yBAC1B;qBACF;iBACF;gBACD,SAAS,EAAE,cAAc;aAC1B;SACF;QACD;YACE,IAAI,EAAE,QAAQ;YACd,oBAAoB,EAAE,KAAK;YAC3B,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,CAAC;YAC5C,UAAU,EAAE;gBACV,EAAE,EAAE,cAAc;gBAClB,IAAI,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE;gBACtB,KAAK,EAAE,cAAc;gBACrB,OAAO,EAAE,cAAc;aACxB;SACF;QACD,oBAAoB;QACpB,8BAA8B;QAC9B,EAAE,IAAI,EAAE,QAAQ,EAAE,oBAAoB,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,CAAC;YACtG,UAAU,EAAE,EAAE,EAAE,EAAE,cAAc,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,sBAAsB;gBACvH,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,+BAA+B,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,EAAE;KACzG;CACO,CAAC;AAEX,MAAM,CAAC,MAAM,wBAAwB,GAAG;IACtC,GAAG,EAAE,kCAAkC;IACvC,IAAI,EAAE,QAAQ;IACd,oBAAoB,EAAE,KAAK;IAC3B,QAAQ,EAAE;QACR,eAAe;QACf,MAAM;QACN,OAAO;QACP,mCAAmC;QACnC,SAAS;QACT,SAAS;QACT,aAAa;QACb,OAAO;KACR;IACD,UAAU,EAAE;QACV,aAAa,EAAE,EAAE,KAAK,EAAE,kCAAkC,EAAE;QAC5D,SAAS,EAAE;YACT,IAAI,EAAE,QAAQ,EAAE,oBAAoB,EAAE,KAAK,EAAE,UAAU,EAAE;gBACvD,aAAa,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,EAAE,KAAK,EAAE;wBACpD,IAAI,EAAE,QAAQ,EAAE,oBAAoB,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,cAAc,CAAC;wBAC1G,UAAU,EAAE,EAAE,KAAK,EAAE,EAAC,IAAI,EAAC,QAAQ,EAAC,SAAS,EAAC,CAAC,EAAC,SAAS,EAAC,GAAG,EAAC;4BAC5D,OAAO,EAAE,EAAC,IAAI,EAAC,QAAQ,EAAC,oBAAoB,EAAC,KAAK,EAAC,QAAQ,EAAC,CAAC,MAAM,EAAC,SAAS,EAAC,MAAM,CAAC,EAAC,UAAU,EAAC,EAAC,IAAI,EAAC,EAAC,IAAI,EAAC,QAAQ,EAAC,OAAO,EAAC,0BAA0B,EAAC,EAAC,OAAO,EAAC,EAAC,IAAI,EAAC,SAAS,EAAC,OAAO,EAAC,CAAC,EAAC,EAAC,IAAI,EAAC,EAAC,IAAI,EAAC,CAAC,MAAM,EAAC,mBAAmB,CAAC,EAAC,EAAC,eAAe,EAAC,EAAC,KAAK,EAAC,IAAI,EAAC,EAAC,EAAC;4BACpQ,WAAW,EAAE,EAAC,IAAI,EAAC,QAAQ,EAAC,EAAE,YAAY,EAAE,EAAC,IAAI,EAAC,QAAQ,EAAC,EAAE;qBAChE,EAAE;aACJ;SACF;QACD,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,gCAAgC,EAAE;QACnE,KAAK,EAAE,cAAc;QACrB,eAAe,EAAE;YACf,IAAI,EAAE,QAAQ,EAAE,oBAAoB,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,uBAAuB,CAAC;YAChF,UAAU,EAAE,EAAE,qBAAqB,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,WAAW,EAAE,IAAI;oBAChG,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,gCAAgC,EAAE,EAAE,EAAE;SAC3E;QACD,kBAAkB,EAAE;YAClB,IAAI,EAAE,QAAQ,EAAE,oBAAoB,EAAE,KAAK;YAC3C,QAAQ,EAAE,CAAC,oBAAoB,EAAE,WAAW,EAAE,eAAe,EAAE,aAAa,CAAC;YAC7E,UAAU,EAAE;gBACV,kBAAkB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,gCAAgC,EAAE;gBACjF,SAAS,EAAE,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,UAAU,CAAC,EAAE;gBAC9C,aAAa,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,8BAA8B,EAAE;gBAC1E,WAAW,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE;aAC3D;SACF;QACD,eAAe,EAAE;YACf,IAAI,EAAE,QAAQ,EAAE,oBAAoB,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC;YAC7D,UAAU,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,OAAO,EAAE;oBACpG,IAAI,EAAE,QAAQ,EAAE,oBAAoB,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,eAAe,CAAC;oBACxE,UAAU,EAAE,EAAE,aAAa,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,qCAAqC,EAAE;wBAC7F,GAAG,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBAC7E,GAAG,CAAC,OAAO,KAAK,UAAU,CAAC,CAAC,CAAC,EAAE,oBAAoB,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,WAAW,EAAE,IAAI;gCAChH,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,8BAA8B,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE;iBACnF,CAAC,CAAC,CAAC;SACL;QACD,SAAS,EAAE;YACT,IAAI,EAAE,QAAQ,EAAE,aAAa,EAAE,CAAC,EAAE,aAAa,EAAE,EAAE;YACnD,aAAa,EAAE,EAAE,OAAO,EAAE,+BAA+B,EAAE;YAC3D,oBAAoB,EAAE;gBACpB,IAAI,EAAE,QAAQ,EAAE,oBAAoB,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC;gBAC1E,UAAU,EAAE;oBACV,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,GAAG,EAAE;oBACvD,MAAM,EAAE;wBACN,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAE,QAAQ,EAAE,wBAAwB;wBAC9D,KAAK,EAAE;4BACL,IAAI,EAAE,QAAQ,EAAE,oBAAoB,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,MAAM,CAAC;4BAC/D,UAAU,EAAE;gCACV,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,8BAA8B,EAAE;gCACjE,QAAQ,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;gCAC5D,WAAW,EAAE,wBAAwB,EAAE,YAAY,EAAE,wBAAwB;6BAC9E;yBACF;qBACF;iBACF;aACF;SACF;QACD,iCAAiC,EAAE;YACjC,IAAI,EAAE,CAAC,eAAe,EAAE,sBAAsB,CAAC;SAChD;QACD,qBAAqB,EAAE;YACrB,IAAI,EAAE,QAAQ,EAAE,oBAAoB,EAAE,KAAK;YAC3C,QAAQ,EAAE,CAAC,WAAW,EAAE,OAAO,EAAE,SAAS,CAAC;YAC3C,UAAU,EAAE;gBACV,SAAS,EAAE,EAAE,KAAK,EAAE,sBAAsB,EAAE;gBAC5C,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE;gBACvE,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE;aAC1E;SACF;QACD,gBAAgB,EAAE;YAChB,IAAI,EAAE,QAAQ;YACd,oBAAoB,EAAE,KAAK;YAC3B,aAAa,EAAE,CAAC;YAChB,UAAU,EAAE;gBACV,QAAQ,EAAE;oBACR,IAAI,EAAE,QAAQ;oBACd,oBAAoB,EAAE,KAAK;oBAC3B,aAAa,EAAE,CAAC;oBAChB,UAAU,EAAE;wBACV,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,8BAA8B,EAAE;wBACvE,cAAc,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;qBACpC;iBACF;gBACD,SAAS,EAAE;oBACT,IAAI,EAAE,QAAQ;oBACd,oBAAoB,EAAE,KAAK;oBAC3B,QAAQ,EAAE,CAAC,YAAY,CAAC;oBACxB,UAAU,EAAE;wBACV,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,EAAE,OAAO,EAAE,sDAAsD,EAAE;wBAC/G,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,8BAA8B,EAAE;qBACxE;iBACF;aACF;SACF;QACD,OAAO,EAAE;YACP,IAAI,EAAE,QAAQ;YACd,oBAAoB,EAAE,KAAK;YAC3B,QAAQ,EAAE,CAAC,cAAc,EAAE,gBAAgB,EAAE,eAAe,CAAC;YAC7D,UAAU,EAAE;gBACV,YAAY,EAAE;oBACZ,IAAI,EAAE,QAAQ;oBACd,OAAO,EAAE,iCAAiC;iBAC3C;gBACD,cAAc,EAAE;oBACd,IAAI,EAAE,QAAQ;oBACd,aAAa,EAAE,CAAC;oBAChB,aAAa,EAAE,EAAE;oBACjB,aAAa,EAAE;wBACb,OAAO,EAAE,gCAAgC;qBAC1C;oBACD,oBAAoB,EAAE;wBACpB,IAAI,EAAE,QAAQ;wBACd,OAAO,EAAE,8BAA8B;qBACxC;iBACF;gBACD,aAAa,EAAE;oBACb,IAAI,EAAE,OAAO;oBACb,QAAQ,EAAE,2BAA2B;oBACrC,WAAW,EAAE,IAAI;oBACjB,KAAK,EAAE,aAAa;iBACrB;aACF;SACF;QACD,OAAO,EAAE,cAAc;QACvB,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,CAAC,MAAM,EAAE,sBAAsB,CAAC;YAC1C,UAAU,EAAE;gBACV,IAAI,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE;gBACzB,oBAAoB,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE;aACvC;SACF;QACD,mBAAmB,EAAE;YACnB,IAAI,EAAE,QAAQ;YACd,oBAAoB,EAAE,KAAK;YAC3B,UAAU,EAAE;gBACV,UAAU,EAAE;oBACV,IAAI,EAAE,QAAQ;oBACd,oBAAoB,EAAE,KAAK;oBAC3B,QAAQ,EAAE,CAAC,QAAQ,CAAC;oBACpB,UAAU,EAAE;wBACV,MAAM,EAAE;4BACN,IAAI,EAAE;gCACJ,MAAM;gCACN,yBAAyB;gCACzB,oBAAoB;gCACpB,eAAe;gCACf,OAAO;gCACP,YAAY;gCACZ,iBAAiB;6BAClB;yBACF;wBACD,QAAQ,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;wBAC7B,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;wBACzB,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;wBACxB,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;qBAC9B;iBACF;aACF;SACF;QACD,KAAK,EAAE;YACL,IAAI,EAAE,QAAQ;YACd,aAAa,EAAE,CAAC;YAChB,aAAa,EAAE,GAAG;YAClB,oBAAoB,EAAE,kBAAkB;SACzC;KACF;CACO,CAAC;AAEX,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,GAAG,EAAE,+BAA+B;IACpC,IAAI,EAAE,QAAQ;IACd,oBAAoB,EAAE,KAAK;IAC3B,QAAQ,EAAE,CAAC,eAAe,EAAE,cAAc,EAAE,UAAU,CAAC;IACvD,UAAU,EAAE;QACV,aAAa,EAAE,EAAE,KAAK,EAAE,+BAA+B,EAAE;QACzD,YAAY,EAAE,cAAc;QAC5B,QAAQ,EAAE;YACR,IAAI,EAAE,QAAQ;YACd,aAAa,EAAE,GAAG;YAClB,oBAAoB,EAAE;gBACpB,IAAI,EAAE,QAAQ;gBACd,oBAAoB,EAAE,KAAK;gBAC3B,QAAQ,EAAE,CAAC,UAAU,CAAC;gBACtB,KAAK,EAAE,CAAC;wBACN,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,WAAW,CAAC,EAAE;wBAC/B,IAAI,EAAE,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,CAAC,UAAU,EAAE,mBAAmB,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,UAAU,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,gBAAgB,CAAC,EAAE,CAAC,EAAE,EAAE;qBAChK,EAAE;wBACD,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,gBAAgB,CAAC,EAAE;wBACpC,IAAI,EAAE;4BACJ,QAAQ,EAAE,CAAC,WAAW,CAAC;4BACvB,UAAU,EAAE,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAE,kBAAkB,EAAE,EAAE;4BACvD,GAAG,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,UAAU,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE;yBACjG;qBACF,EAAE;wBACD,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,mBAAmB,CAAC,EAAE;wBACvC,IAAI,EAAE,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,CAAC,UAAU,EAAE,mBAAmB,CAAC,EAAE,EAAE;4BAC3E,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,UAAU,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC;4BAChE,GAAG,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,gBAAgB,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,WAAW,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,EAAE;qBAC/G,CAAC;gBACF,UAAU,EAAE;oBACV,QAAQ,EAAE;wBACR,IAAI,EAAE;4BACJ,aAAa;4BACb,WAAW;4BACX,aAAa;4BACb,kBAAkB;4BAClB,uBAAuB;4BACvB,kBAAkB;4BAClB,UAAU;4BACV,mBAAmB;4BACnB,mBAAmB;4BACnB,qBAAqB;4BACrB,kBAAkB;4BAClB,sBAAsB;yBACvB;qBACF;oBACD,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,EAAE,cAAc,EAAE;oBAClE,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAC7B,iBAAiB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,EAAE,OAAO,EAAE,wDAAwD,EAAE;oBACxH,cAAc,EAAE,aAAa;oBAC7B,IAAI,EAAE,EAAE,KAAK,EAAE,CAAC,EAAC,KAAK,EAAC,WAAW,EAAC,EAAC,EAAC,IAAI,EAAC,QAAQ,EAAC,oBAAoB,EAAC,KAAK,EAAC,QAAQ,EAAC,CAAC,OAAO,CAAC,EAAC,UAAU,EAAC,EAAC,KAAK,EAAC,EAAC,IAAI,EAAC,QAAQ,EAAC,SAAS,EAAC,GAAG,EAAC,EAAC,EAAC,CAAC,EAAE;oBACrJ,KAAK,EAAE,EAAE,KAAK,EAAE,CAAC,EAAC,KAAK,EAAC,KAAK,EAAC,EAAC,EAAC,IAAI,EAAC,QAAQ,EAAC,oBAAoB,EAAC,KAAK,EAAC,QAAQ,EAAC,CAAC,OAAO,CAAC,EAAC,UAAU,EAAC,EAAC,KAAK,EAAC,EAAC,IAAI,EAAC,SAAS,EAAC,OAAO,EAAC,CAAC,EAAC,OAAO,EAAC,EAAE,EAAC,EAAC,EAAC,EAAC,EAAC,IAAI,EAAC,QAAQ,EAAC,oBAAoB,EAAC,KAAK,EAAC,QAAQ,EAAC,CAAC,UAAU,CAAC,EAAC,UAAU,EAAC,EAAC,QAAQ,EAAC,cAAc,EAAC,EAAC,CAAC,EAAE;oBAC9P,UAAU,EAAE,EAAE,IAAI,EAAC,SAAS,EAAE,EAAE,OAAO,EAAE,EAAC,IAAI,EAAC,CAAC,YAAY,EAAC,OAAO,CAAC,EAAC;oBACtE,gBAAgB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACpC,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE;oBACnD,4BAA4B,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;oBACjD,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAC5B,SAAS,EAAE,uBAAuB;oBAClC,KAAK,EAAE;wBACL,IAAI,EAAE,QAAQ;wBACd,oBAAoB,EAAE,KAAK;wBAC3B,QAAQ,EAAE,CAAC,WAAW,CAAC;wBACvB,UAAU,EAAE;4BACV,SAAS,EAAE,cAAc;4BACzB,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;4BAC7B,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;yBAC1B;qBACF;oBACD,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAChC,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAChC,cAAc,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAClC,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAChC,GAAG,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE;oBAClD,GAAG,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE;oBAClD,WAAW,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;oBAChC,OAAO,EAAE,qCAAqC;iBAC/C;aACF;SACF;KACF;CACO,CAAC"}